📄 mybloglist.cs
字号:
//------------------------------------------------------------------------------
// <copyright company="Telligent Systems">
// Copyright (c) Telligent Systems Corporation. All rights reserved.
// </copyright>
//------------------------------------------------------------------------------
using System;
using System.Collections;
using System.Web.UI.WebControls;
using CommunityServer.Blogs.Components;
using CommunityServer.Components;
using CommunityServer.Controls;
namespace CommunityServer.Blogs.Controls
{
public class MyBlogList : WeblogTemplatedWebControl
{
RepeaterPlusNone blogList;
BlogUrls urls;
public MyBlogList()
{
}
protected override void OnLoad(EventArgs e)
{
if( !Page.IsPostBack || !EnableViewState )
{
DataBind();
}
base.OnLoad (e);
}
protected override void AttachChildControls()
{
blogList = FindControl("RepeaterBlogList") as RepeaterPlusNone;
if(blogList != null)
{
blogList.ItemDataBound += new RepeaterItemEventHandler(blogList_ItemDataBound);
blogList.NoneItemsDataBound += new RepeaterItemEventHandler(blogList_NoneItemsDataBound);
}
}
public override void DataBind()
{
base.DataBind();
if ( blogList != null )
{
//Get Blogs
ArrayList blogs = Weblogs.GetWeblogs(false,true,false);
blogList.DataSource = Sections.FilterByAccessControl(blogs,Permission.Post);
blogList.DataBind();
}
}
private void blogList_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
Weblog b = e.Item.DataItem as Weblog;
if( b == null)
return;
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
HyperLink BlogTitle = e.Item.FindControl("BlogTitle") as HyperLink;
if(BlogTitle != null) {
BlogTitle.Text = b.Name;
BlogTitle.NavigateUrl = BlogUrls.Instance().HomePage(b.ApplicationKey);
}
Literal BlogDesc = e.Item.FindControl("BlogDesc") as Literal;
if(BlogDesc != null)
BlogDesc.Text = b.Description;
urls = BlogUrls.Instance();
SetLink(e.Item, "Manage", urls.AdminSettings_ReturnUrl(b.ApplicationKey, "blog_myblogs", ""), ResourceManager.GetString( "MyWeblogs_Manage" ));
SetLink(e.Item, "PostList", urls.AdminContentList(b.ApplicationKey,BlogPostType.Post), ResourceManager.GetString( "MyWeblogs_Posts" ));
SetLink(e.Item, "ArticleList", urls.AdminContentList(b.ApplicationKey,BlogPostType.Article), ResourceManager.GetString( "MyWeblogs_Articles" ));
SetLink(e.Item, "LinkList", urls.AdminLinks(b.ApplicationKey), ResourceManager.GetString( "MyWeblogs_Links" ));
SetLink(e.Item, "FeedBack", urls.AdminFeedback(b.ApplicationKey), ResourceManager.GetString( "MyWeblogs_Feedback" ));
}
}
private void SetLink(RepeaterItem e, string id, string link, string text)
{
HyperLink l = e.FindControl(id) as HyperLink;
if(l != null)
{
l.NavigateUrl = link;
l.Text = text;
}
}
private void blogList_NoneItemsDataBound(object sender, RepeaterItemEventArgs e)
{
Literal noneLabel = (Literal)e.Item.FindControl( "NoneLabel" );
if(CSContext.Current.User.IsBlogAdministrator)
noneLabel.Text = ResourceManager.GetString( "MyWeblogs_NoItemsAdmin" );
else
noneLabel.Text = ResourceManager.GetString( "MyWeblogs_NoItemsUser" );
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -