84 lines
3.3 KiB
C#
84 lines
3.3 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Web;
|
||
using WeiSha.Common;
|
||
using Song.ServiceInterfaces;
|
||
using VTemplate.Engine;
|
||
using Song.Entities;
|
||
namespace Song.Site
|
||
{
|
||
/// <summary>
|
||
/// 留言板列表页
|
||
/// </summary>
|
||
public class MessageBoards : BasePage
|
||
{
|
||
//当前课程id
|
||
private int couid = WeiSha.Common.Request.QueryString["couid"].Int32 ?? 0;
|
||
//提交的信息
|
||
private string msg = WeiSha.Common.Request.Form["msg"].String;
|
||
protected override void InitPageTemplate(HttpContext context)
|
||
{
|
||
this.Document.SetValue("couid", couid);
|
||
if (!string.IsNullOrWhiteSpace(msg))
|
||
{
|
||
Song.Entities.Accounts student = this.Account;
|
||
if (student != null)
|
||
{
|
||
Song.Entities.MessageBoard mb = new MessageBoard();
|
||
mb.Ac_ID = student.Ac_ID;
|
||
mb.Ac_Name = student.Ac_Name;
|
||
mb.Ac_Photo = student.Ac_Photo;
|
||
mb.Mb_Content = msg;
|
||
mb.Cou_ID = couid;
|
||
mb.Mb_IsTheme = true;
|
||
Business.Do<IMessageBoard>().ThemeAdd(mb);
|
||
}
|
||
}
|
||
//留言板列表
|
||
Tag noTag = this.Document.GetChildTagById("MessageBoard");
|
||
if (noTag != null)
|
||
{
|
||
//每页多少条记录
|
||
int size = int.Parse(noTag.Attributes.GetValue("size", "10"));
|
||
//简介的输出长度
|
||
int introlen = int.Parse(noTag.Attributes.GetValue("introlen", "200"));
|
||
int index = WeiSha.Common.Request.QueryString["index"].Int32 ?? 1;
|
||
int sum = 0;
|
||
Song.Entities.MessageBoard[] msgBoards = Business.Do<IMessageBoard>().ThemePager(Organ.Org_ID, couid, false, true, "", size, index, out sum);
|
||
foreach (Song.Entities.MessageBoard no in msgBoards)
|
||
{
|
||
if (string.IsNullOrWhiteSpace(no.Mb_Title))
|
||
no.Mb_Title = ReplaceHtmlTag(no.Mb_Title, introlen);
|
||
}
|
||
this.Document.SetValue("msgBoards", msgBoards);
|
||
//总页数
|
||
int pageSum = (int)Math.Ceiling((double)sum / (double)size);
|
||
int[] pageAmount = new int[pageSum];
|
||
for (int i = 0; i < pageAmount.Length; i++)
|
||
pageAmount[i] = i + 1;
|
||
this.Document.SetValue("pageAmount", pageAmount);
|
||
this.Document.SetValue("pageIndex", index);
|
||
this.Document.SetValue("pageSize", size);
|
||
}
|
||
}
|
||
/// <summary>
|
||
/// 去除HTML标签,并返回指定长度
|
||
/// </summary>
|
||
/// <param name="html"></param>
|
||
/// <param name="length"></param>
|
||
/// <returns></returns>
|
||
public string ReplaceHtmlTag(string html, int length = 0)
|
||
{
|
||
if (string.IsNullOrWhiteSpace(html)) return html;
|
||
string strText = System.Text.RegularExpressions.Regex.Replace(html, "<[^>]+>", "");
|
||
strText = System.Text.RegularExpressions.Regex.Replace(strText, "&[^;]+;", "");
|
||
|
||
if (length > 0 && strText.Length > length)
|
||
return strText.Substring(0, length);
|
||
|
||
return strText;
|
||
}
|
||
|
||
}
|
||
} |