Beispiel #1
0
 public static string GetTemplateListBoxOptionsCache(bool topMenu)
 {
     lock (lockHelper)
     {
         var    key1 = CacheKeys.FORUM_UI_TEMPLATE_LIST_BOX_OPTIONS_FOR_FORUMINDEX;
         var    key2 = CacheKeys.FORUM_UI_TEMPLATE_LIST_BOX_OPTIONS;
         string text = topMenu ? XCache.Retrieve <String>(key1) : XCache.Retrieve <String>(key2);
         if (text.IsNullOrEmpty())
         {
             var sb = new StringBuilder();
             //var validTemplateList = Templates.GetValidTemplateList();
             foreach (var tmp in Template.GetValids())
             {
                 if (topMenu)
                 {
                     sb.AppendFormat("<li><a onclick=\"window.location.href='{0}showtemplate.aspx?templateid={1}';return false;\" href=\"###\"><i style=\"background: url(&quot;templates/{2}/about.png&quot;) no-repeat scroll 0% 0% transparent;\">&nbsp;</i><span>{3}</span><em></em></a></li>", BaseConfigs.GetForumPath, tmp.ID, tmp.Directory, tmp.Name.Trim());
                 }
                 else
                 {
                     sb.AppendFormat("<li><a onclick=\"window.location.href='{0}showtemplate.aspx?templateid={1}';return false;\" href=\"###\">{2}</a></li>", BaseConfigs.GetForumPath, tmp.ID, tmp.Name.Trim());
                 }
             }
             text = sb.ToString();
             XCache.Add(topMenu ? key1 : key2, text);
             //validTemplateList.Dispose();
         }
         return(text);
     }
 }
Beispiel #2
0
        public List <Post> GetUserPostCountList(int topNumber, DateType dateType, int dateNum)
        {
            var list = XCache.Retrieve <List <Post> >("/Aggregation/UserPostCountList");

            if (list == null)
            {
                list = Post.GetUserPostCountList(topNumber, dateType, (dateNum > 1) ? dateNum : 1);
                XCache.Add("/UserPostCountList", list, 120);
            }
            return(list);
        }
Beispiel #3
0
        //public DataTable GetUserList(int topNumber, string orderBy)
        //{
        //    var cacheService = XCache.Current;
        //    DataTable dataTable = XCache.Retrieve<DataTable>("/Aggregation/Users_" + orderBy + "List");
        //    if (dataTable == null)
        //    {
        //        dataTable = BBX.Forum.Users.GetUserList(topNumber, 1, orderBy, "desc");
        //        XCache.Add("/Aggregation/Users_" + orderBy + "List", dataTable, 300);
        //    }
        //    return dataTable;
        //}

        public EntityList <Post> GetLastPostList(int fid, int count)
        {
            var cacheService = XCache.Current;
            var list         = XCache.Retrieve <EntityList <Post> >("/Aggregation/lastpostList_" + fid);

            if (list == null)
            {
                //list = DatabaseProvider.GetInstance().GetLastPostList(fid, count, TableList.CurrentTableName, BBX.Forum.Forums.GetVisibleForum());
                list = Post.GetLastPostList(fid, count);
                XCache.Add("/Aggregation/lastpostList_" + fid, list, 300);
            }
            return(list);
        }
Beispiel #4
0
        public List <IXForum> GetHotForumList(int topNumber, string orderby, int fid)
        {
            orderby = ((String.IsNullOrEmpty(orderby)) ? "posts" : orderby);
            var cacheService = XCache.Current;
            var list         = XCache.Retrieve <List <IXForum> >("/Aggregation/HotForumList");

            if (list == null)
            {
                list = XForum.GetWebSiteAggHotForumList((topNumber <= 0) ? 10 : topNumber, orderby, fid);
                XCache.Add("/Aggregation/HotForumList", list, 300);
            }
            return(list);
        }
Beispiel #5
0
        //public static string GetSmiliesCache()
        //{
        //    string text = XCache.Retrieve<String>(CacheKeys.FORUM_UI_SMILIES_LIST);
        //    if (text.IsNullOrEmpty())
        //    {
        //        var sb = new StringBuilder();
        //        //DataTable smiliesListDataTable = BBX.Data.Smilies.GetSmiliesListDataTable();
        //        var list = Smilie.FindAllWithCache();
        //        foreach (var sm in list)
        //        {
        //            if (sm.Type != 0) continue;

        //            sb.AppendFormat("'{0}': [\r\n", sm.Code.Trim().Replace("'", "\\'"));
        //            bool flag = false;
        //            foreach (var sm2 in list)
        //            {
        //                if (sm2.Type == sm.ID)
        //                {
        //                    sb.Append("{'code' : '");
        //                    sb.Append(sm2.Code.Trim().Replace("'", "\\'"));
        //                    sb.Append("', 'url' : '");
        //                    sb.Append(sm2.Url.Trim().Replace("'", "\\'"));
        //                    sb.Append("'},\r\n");
        //                    flag = true;
        //                }
        //            }
        //            if (sb.Length > 0 && flag)
        //            {
        //                sb.Remove(sb.Length - 3, 3);
        //            }
        //            sb.Append("\r\n],\r\n");
        //        }
        //        sb.Remove(sb.Length - 3, 3);
        //        text = sb.ToString();
        //        XCache.Add(CacheKeys.FORUM_UI_SMILIES_LIST, text);
        //    }
        //    return text;
        //}

        //public static string GetSmiliesFirstPageCache()
        //{
        //	string text = XCache.Retrieve<String>("/Forum/UI/SmiliesListFirstPage");
        //	if (text.IsNullOrEmpty())
        //	{
        //		var sb = new StringBuilder();
        //		//DataTable smiliesListDataTable = BBX.Data.Smilies.GetSmiliesListDataTable();
        //		var list = Smilie.FindAllWithCache();
        //		foreach (var sm in list)
        //		{
        //			if (sm.Type != 0) continue;

        //			sb.AppendFormat("'{0}': [\r\n", sm.Code.Trim().Replace("'", "\\'"));
        //			bool flag = false;
        //			int num = 0;
        //			foreach (var sm2 in list)
        //			{
        //				if (sm2.Type == sm.ID && num < 16)
        //				{
        //					sb.Append("{'code' : '");
        //					sb.Append(sm2.Code.Trim().Replace("'", "\\'"));
        //					sb.Append("', 'url' : '");
        //					sb.Append(sm2.Url.Trim().Replace("'", "\\'"));
        //					sb.Append("'},\r\n");
        //					flag = true;
        //					num++;
        //				}
        //			}
        //			if (sb.Length > 0 && flag)
        //			{
        //				sb.Remove(sb.Length - 3, 3);
        //			}
        //			sb.Append("\r\n],\r\n");
        //			break;
        //		}
        //		sb.Remove(sb.Length - 3, 3);
        //		text = sb.ToString();
        //		XCache.Add("/Forum/UI/SmiliesListFirstPage", text);
        //	}
        //	return text;
        //}

        //public static DataTable GetSmilieTypesCache()
        //{
        //    DataTable dataTable = XCache.Retrieve<DataTable>("/Forum/UI/SmiliesTypeList");
        //    if (dataTable == null || dataTable.Rows.Count == 0)
        //    {
        //        dataTable = BBX.Data.Smilies.GetSmiliesTypes();
        //        XCache.Add("/Forum/UI/SmiliesTypeList", dataTable);
        //    }
        //    return dataTable;
        //}

        public static string GetCustomEditButtonList()
        {
            string result;

            lock (lockHelper)
            {
                string text = XCache.Retrieve <String>(CacheKeys.FORUM_UI_CUSTOM_EDIT_BUTTON_LIST);
                if (text == null)
                {
                    var sb = new StringBuilder();
                    //var customEditButtonList = DatabaseProvider.GetInstance().GetCustomEditButtonList();
                    var customEditButtonList = BbCode.FindAllByAvailable(1);
                    //try
                    //{
                    foreach (var bb in customEditButtonList)
                    //while (customEditButtonList.Read())
                    {
                        sb.AppendFormat(",'{0}':['", Utils.ReplaceStrToScript(bb.Tag));
                        sb.Append(Utils.ReplaceStrToScript(bb.Tag));
                        sb.Append("','");
                        sb.Append(Utils.ReplaceStrToScript(bb.Icon));
                        sb.Append("','");
                        sb.Append(Utils.ReplaceStrToScript(bb.Explanation));
                        sb.Append("',['");
                        sb.Append(Utils.ReplaceStrToScript(bb.ParamsDescript).Replace(",", "','"));
                        sb.Append("'],['");
                        sb.Append(Utils.ReplaceStrToScript(bb.ParamsDefValue).Replace(",", "','"));
                        sb.Append("'],");
                        sb.Append(Utils.ReplaceStrToScript(bb.Params + ""));
                        sb.Append("]");
                    }
                    if (sb.Length > 0)
                    {
                        sb.Remove(0, 1);
                    }
                    text = Utils.ClearBR(sb.ToString());
                    XCache.Add(CacheKeys.FORUM_UI_CUSTOM_EDIT_BUTTON_LIST, text);
                    //}
                    //finally
                    //{
                    //	customEditButtonList.Close();
                    //}
                }
                result = text;
            }
            return(result);
        }
Beispiel #6
0
        public static string GetSmiliesCache()
        {
            string text = XCache.Retrieve <String>(CacheKeys.FORUM_UI_SMILIES_LIST);

            if (text.IsNullOrEmpty())
            {
                var sb = new StringBuilder();
                //DataTable smiliesListDataTable = BBX.Data.Smilies.GetSmiliesListDataTable();
                var list = Smilie.FindAllWithCache();
                foreach (var sm in list)
                {
                    if (sm.Type != 0)
                    {
                        continue;
                    }

                    sb.AppendFormat("'{0}': [\r\n", sm.Code.Trim().Replace("'", "\\'"));
                    bool flag = false;
                    foreach (var sm2 in list)
                    {
                        if (sm2.Type == sm.ID)
                        {
                            sb.Append("{'code' : '");
                            sb.Append(sm2.Code.Trim().Replace("'", "\\'"));
                            sb.Append("', 'url' : '");
                            sb.Append(sm2.Url.Trim().Replace("'", "\\'"));
                            sb.Append("'},\r\n");
                            flag = true;
                        }
                    }
                    if (sb.Length > 0 && flag)
                    {
                        sb.Remove(sb.Length - 3, 3);
                    }
                    sb.Append("\r\n],\r\n");
                }
                sb.Remove(sb.Length - 3, 3);
                text = sb.ToString();
                XCache.Add(CacheKeys.FORUM_UI_SMILIES_LIST, text);
            }
            return(text);
        }