62,265
社区成员
发帖
与我相关
我的任务
分享
/// <summary>
/// 栏目导航
/// </summary>
/// <returns></returns>
public string Analyse_ClassNavi()
{
//获取栏目ID
string str_ClassID = this.GetParamValue("FS:ClassID");
//获取导航样式
string str_NaviCSS = this.GetParamValue("FS:NaviCSS");
//获取分隔符
string str_NaviChar = this.GetParamValue("FS:NaviChar");
string str_Mapp = this.GetParamValue("FS:Mapp");
//如果导航样式不为空
if (str_NaviCSS != null)
{
str_NaviCSS = "class=\"" + str_NaviCSS + "\"";
}
string pcid = "";
int P = 0;
//如果栏目ID不为空&&栏目ID不为-1&&栏目ID不为0,即栏目ID为具体哪个栏目
if (str_ClassID != null && str_ClassID != "-1" && str_ClassID!="0")
{
pcid = str_ClassID;
P = 1;
}
//如果栏目ID不是具体哪个栏目,当前栏目不为空时
else if (this.Param_CurrentClassID != null)
{
if (str_ClassID == "0")
{
//获取栏目当前ID
pcid = this.Param_CurrentClassID;
P = 1;
}
}
string str_Navi = string.Empty;
string str_gNaviChar = string.Empty;
IList<PubClassInfo> list = CommonData.NewsClass;
if (list != null && list.Count > 0)
{
int jm = 0;
foreach (PubClassInfo info in list)
{
if (jm == 0)
{
str_gNaviChar = string.Empty;
}
else
{
str_gNaviChar = str_NaviChar;
}
if (P == 0)
{
string str_url = "";
if (info.IsURL == 1)
{
str_url = info.URLaddress;
}
else
{
str_url = getClassURL(info.isDelPoint, info.ClassID, info.SavePath, info.SaveClassframe, info.ClassSaveRule);
}
str_Navi += " <li>" + str_gNaviChar + " <a href=\"" + str_url + "\" " + str_NaviCSS + ">" + newLine;
str_Navi += " " + info.ClassCName + "</a>";
str_Navi += " </li>" + newLine;
}
else
{
if (info.ParentID.ToLower().Trim() == pcid.ToLower().Trim() && info.SiteID == Param_SiteID)
{
string str_url = "";
if (info.IsURL == 1)
{
str_url = info.URLaddress;
}
else
{
str_url = getClassURL(info.isDelPoint, info.ClassID, info.SavePath, info.SaveClassframe, info.ClassSaveRule);
}
str_Navi += " <li>" + str_gNaviChar + " <a href=\"" + str_url + "\" " + str_NaviCSS + ">" + newLine;
str_Navi += " " + info.ClassCName + "</a>";
str_Navi += " </li>" + newLine;
}
}
jm++;
}
}
return str_Navi;
}
public class CommonData
{
public static Foosun.DALFactory.IPublish DalPublish = DataAccess.CreatePublish();
public static IList<PubClassInfo> NewsClass = new List<PubClassInfo>();
public static IList<PubSpecialInfo> NewsSpecial = new List<PubSpecialInfo>();
public static IList<PubCHClassInfo> CHClass = new List<PubCHClassInfo>();
public static IList<PubCHSpecialInfo> CHSpecial = new List<PubCHSpecialInfo>();
/// <summary>
/// 取得网站域名的根目录(绝对路径及相对路径)
/// </summary>
public static string SiteDomain;
public static string getUrl()
{
string flg = "";
string dirdumm = Foosun.Config.UIConfig.dirDumm;
if (dirdumm.Trim() != string.Empty)
{
dirdumm = "/" + dirdumm;
}
string linkType = Foosun.Common.Public.readparamConfig("linkTypeConfig");
string sitedomain = Foosun.Common.Public.readparamConfig("siteDomain");
if (linkType == "1")
{
if (sitedomain.IndexOf("http://") > -1) { flg = sitedomain + dirdumm; }
else { flg = "http://" + sitedomain + dirdumm; }
}
else { flg = dirdumm; }
//rd.Close();
return flg;
}
/// <summary>
/// 初始化数据函数
/// </summary>
/// <param name="cn"></param>
public static void Initialize()
{
SiteDomain = getUrl();
NewsClass.Clear();
NewsSpecial.Clear();
NewsClass = CommonData.DalPublish.GetClassList();
CHClass = CommonData.DalPublish.GetCHClassList();
NewsSpecial = CommonData.DalPublish.GetSpecialList();
CHSpecial = CommonData.DalPublish.GetCHSpecialList();
}
/// <summary>
/// 取得栏目的相关信息,必须是没有放在回收站中的
/// </summary>
public static PubClassInfo GetClassById(string classid)
{
foreach (PubClassInfo cl in NewsClass)
{
if (cl.ClassID.Equals(classid))
return cl;
}
return null;
}
/// <summary>
/// 取得频道栏目的相关信息
/// </summary>
public static PubCHClassInfo GetCHClassById(int ID)
{
foreach (PubCHClassInfo ccl in CHClass)
{
if (ccl.Id.Equals(ID))
return ccl;
}
return null;
}
/// <summary>
/// 取得专题的相关信息,必须是没有放在回收站中的
/// </summary>
public static PubSpecialInfo GetSpecial(string specialid)
{
foreach (PubSpecialInfo sp in NewsSpecial)
{
if (sp.SpecialID.Equals(specialid))
return sp;
}
return null;
}
/// <summary>
/// 取得专题的相关信息,必须是没有放在回收站中的
/// </summary>
public static PubCHSpecialInfo GetCHSpecial(int ID)
{
foreach (PubCHSpecialInfo sp in CHSpecial)
{
if (sp.Id.Equals(ID))
return sp;
}
return null;
}
public static string getNewsURLFormID(string NewsID, string DataLib)
{
string URLSTR = "";
string ReadType = Foosun.Common.Public.readparamConfig("ReviewType");
IDataReader rd = DalPublish.GetNewsInfoAndClassInfo(NewsID, DataLib);
if (rd.Read())
{
if (rd["NewsType"].ToString() == "2")
{
URLSTR = rd["URLaddress"].ToString();
}
else
{
if (rd["isDelPoint"].ToString() != "0")
{
URLSTR = "/Content.aspx?id=" + NewsID;
}
else
{
if (ReadType == "1")
{
URLSTR = "/Content.aspx?id=" + NewsID;
}
else
{
URLSTR = rd["SavePath1"].ToString() + "/" + rd["SaveClassframe"] + "/" + rd["SavePath"].ToString() + "/" + rd["FileName"].ToString() + rd["FileEXName"].ToString();
}
}
URLSTR = URLSTR.Replace("//", "/");
URLSTR = getUrl() + URLSTR;
}
}
rd.Close();
return URLSTR;
}
/// <summary>
/// 取得栏目访问地址
/// </summary>
/// <param name="SavePath">栏目保存路径</param>
/// <param name="ClassSaveRule">栏目保存规则</param>
/// <returns>返回访问地址</returns>
public static string getClassURL(int isDelPoint, string ClassID, string SavePath, string SaveClassframe, string ClassSaveRule)
{
CommonData.Initialize();
string tmstr = "";
if (Foosun.Common.Public.readparamConfig("ReviewType") == "1")
{
tmstr = "/list.aspx?id=" + ClassID;
}
else
{
if (isDelPoint != 0)
{
tmstr = "/list.aspx?id=" + ClassID;
}
else
{
tmstr = "/" + SavePath + "/" + SaveClassframe + "/" + ClassSaveRule;
}
}
return CommonData.SiteDomain + tmstr.Replace("//", "/");
}
/// <summary>
/// 取得新闻访问地址
/// </summary>
/// <param name="SavePath">新闻保存路径</param>
/// <param name="FileName">新闻文件名</param>
/// <param name="SaveClassframe">栏目存储新闻的规则</param>
/// <param name="FileEXName">新闻文件名后缀</param>
/// <returns>返回新闻访问地址</returns>
public static string getNewsURL(string isDelPoint, string NewsID, string SavePath, string SaveClassframe, string FileName, string FileEXName)
{
CommonData.Initialize();
string str_temppath = "";
if (Foosun.Common.Public.readparamConfig("ReviewType") == "1")
{
str_temppath = "/content.aspx?id=" + NewsID;
}
else
{
if (isDelPoint != "0")
{
str_temppath = "/content.aspx?id=" + NewsID;
}
else
{
str_temppath = "/" + SaveClassframe + "/" + SavePath + "/" + FileName + FileEXName;
}
}
str_temppath = CommonData.SiteDomain + str_temppath.Replace("//", "/");
return str_temppath;
}
/// <summary>
/// 取得栏目访问地址
/// </summary>
/// <param name="ClassID">栏目编号</param>
/// <returns>返回访问地址</returns>
public static string getClassURL(string ClassID)
{
CommonData.Initialize();
Foosun.Model.PubClassInfo pci = CommonData.GetClassById(ClassID);
return CommonData.getClassURL(pci.isDelPoint, pci.ClassID, pci.SavePath, pci.SaveClassframe, pci.ClassSaveRule);
}
}
/// <summary>
/// 新闻栏目常用信息类
/// </summary>
public class PubClassInfo
{
public int Id;
public string ClassID = string.Empty;
public string ClassCName = string.Empty;
public string ClassEName = string.Empty;
public string ParentID = string.Empty;
public int IsURL;
public string URLaddress = string.Empty;
public string ClassTemplet = string.Empty;
public string SavePath = string.Empty;
public string SaveClassframe = string.Empty;
public string ClassSaveRule = string.Empty;
public string ClassIndexRule = string.Empty;
public string SiteID = string.Empty;
public int NaviShowtf;
public string NaviPIC = string.Empty;
public string NaviContent = string.Empty;
public string MetaKeywords = string.Empty;
public string MetaDescript = string.Empty;
public int isDelPoint;
public int Gpoint;
public int iPoint;
public string GroupNumber = string.Empty;
public string NaviPosition = string.Empty;
public string NewsPosition = string.Empty;
public int isPage;
public string PageContent = string.Empty;
}