📄 advertisement.cs
字号:
namespace PowerEasy.AD
{
using PowerEasy.Common;
using PowerEasy.Components;
using PowerEasy.Enumerations;
using PowerEasy.IDal.AD;
using PowerEasy.Model.AD;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.Web;
public sealed class Advertisement
{
private static readonly IAdvertisement dal = DataAccess.CreateAdvertisement();
private Advertisement()
{
}
public static DataActionState Add(AdvertisementInfo advertisementInfo)
{
DataActionState unknown = DataActionState.Unknown;
EncodeAdvertisementInfo(advertisementInfo);
if (dal.Add(advertisementInfo))
{
unknown = DataActionState.Successed;
}
return unknown;
}
public static bool CancelPassed(string id)
{
bool flag = false;
if (!string.IsNullOrEmpty(id))
{
flag = dal.CancelPassedAdvertisement(id);
}
return flag;
}
public static bool CopyAdvertisement(string id)
{
bool flag = false;
if (!string.IsNullOrEmpty(id))
{
flag = dal.CopyAdvertisement(DataConverter.CLng(id));
}
return flag;
}
private static void DecodeAdvertisementInfo(AdvertisementInfo advertisementInfo)
{
advertisementInfo.ADName = DataSecurity.HtmlDecode(advertisementInfo.ADName);
advertisementInfo.ADIntro = DataSecurity.HtmlDecode(advertisementInfo.ADIntro);
advertisementInfo.ImgUrl = DataSecurity.HtmlDecode(advertisementInfo.ImgUrl);
advertisementInfo.LinkAlt = DataSecurity.HtmlDecode(advertisementInfo.LinkAlt);
advertisementInfo.LinkUrl = DataSecurity.HtmlDecode(advertisementInfo.LinkUrl);
advertisementInfo.Setting = DataSecurity.HtmlDecode(advertisementInfo.Setting);
advertisementInfo.ZoneId = DataSecurity.HtmlDecode(advertisementInfo.ZoneId);
}
public static bool Delete(string id)
{
bool flag = false;
if (DataValidator.IsValidId(id))
{
flag = dal.Delete(id);
}
return flag;
}
private static void EncodeAdvertisementInfo(AdvertisementInfo advertisementInfo)
{
advertisementInfo.ADName = DataSecurity.HtmlEncode(advertisementInfo.ADName);
advertisementInfo.ADIntro = DataSecurity.HtmlEncode(advertisementInfo.ADIntro);
advertisementInfo.ImgUrl = DataSecurity.HtmlEncode(advertisementInfo.ImgUrl);
advertisementInfo.LinkAlt = DataSecurity.HtmlEncode(advertisementInfo.LinkAlt);
advertisementInfo.LinkUrl = DataSecurity.HtmlEncode(advertisementInfo.LinkUrl);
advertisementInfo.Setting = DataSecurity.HtmlEncode(advertisementInfo.Setting);
advertisementInfo.ZoneId = DataSecurity.HtmlEncode(advertisementInfo.ZoneId);
}
public static string GetAdContent(AdvertisementInfo advertisementInfo)
{
StringBuilder builder2;
StringBuilder builder = new StringBuilder();
switch (advertisementInfo.ADType)
{
case 1:
{
builder2 = new StringBuilder();
builder2.Append("<img src=\"");
string imgUrl = advertisementInfo.ImgUrl;
if ((!imgUrl.StartsWith("/") && !imgUrl.StartsWith("~/")) && (!imgUrl.StartsWith("http", StringComparison.CurrentCultureIgnoreCase) && !imgUrl.StartsWith("https", StringComparison.CurrentCultureIgnoreCase)))
{
builder2.Append(VirtualPathUtility.AppendTrailingSlash(HttpContext.Current.Request.ApplicationPath));
builder2.Append(VirtualPathUtility.AppendTrailingSlash(SiteConfig.SiteOption.UploadDir));
builder2.Append(imgUrl);
break;
}
if (HttpContext.Current.Request.ApplicationPath.Length == 1)
{
builder2.Append(imgUrl);
}
else
{
builder2.Append(HttpContext.Current.Request.ApplicationPath);
builder2.Append(imgUrl);
}
break;
}
case 2:
builder.Append("<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\"");
if (advertisementInfo.ImgWidth > 0)
{
builder.Append(" width=\"");
builder.Append(advertisementInfo.ImgWidth);
builder.Append("\"");
}
if (advertisementInfo.ImgHeight > 0)
{
builder.Append(" height=\"");
builder.Append(advertisementInfo.ImgHeight);
builder.Append("\"");
}
builder.Append("><param name=\"movie\" value=\"");
builder.Append(VirtualPathUtility.AppendTrailingSlash(HttpContext.Current.Request.ApplicationPath));
builder.Append(VirtualPathUtility.AppendTrailingSlash(SiteConfig.SiteOption.UploadDir));
builder.Append(advertisementInfo.ImgUrl);
builder.Append("\">");
if (advertisementInfo.FlashWmode == 1)
{
builder.Append("<param name=\"wmode\" value=\"transparent\">");
}
builder.Append("<param name=\"quality\" value=\"autohigh\">");
builder.Append("<embed src=\"");
builder.Append(VirtualPathUtility.AppendTrailingSlash(HttpContext.Current.Request.ApplicationPath));
builder.Append(VirtualPathUtility.AppendTrailingSlash(SiteConfig.SiteOption.UploadDir));
builder.Append(advertisementInfo.ImgUrl);
builder.Append("\" quality=\"autohigh\" pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\"");
if (advertisementInfo.FlashWmode == 1)
{
builder.Append(" wmode=\"transparent\" ");
}
if (advertisementInfo.ImgWidth > 0)
{
builder.Append(" width=\"");
builder.Append(advertisementInfo.ImgWidth);
builder.Append("\"");
}
if (advertisementInfo.ImgHeight > 0)
{
builder.Append(" height=\"");
builder.Append(advertisementInfo.ImgHeight);
builder.Append("\"");
}
builder.Append("></embed></object>");
goto Label_0428;
case 3:
builder.Append(advertisementInfo.ADIntro);
goto Label_0428;
case 4:
builder.Append(advertisementInfo.ADIntro);
goto Label_0428;
case 5:
builder.Append("<iframe id=\"AD_");
builder.Append(advertisementInfo.ADId);
builder.Append("\" marginwidth=0 marginheight=0 hspace=0 vspace=0 frameborder=0 scrolling=no width=100% height=100% src=\"");
builder.Append(advertisementInfo.ADIntro);
builder.Append("\">AD</iframe>");
goto Label_0428;
default:
goto Label_0428;
}
builder2.Append("\"");
if (advertisementInfo.ImgWidth > 0)
{
builder2.Append(" width=\"");
builder2.Append(advertisementInfo.ImgWidth);
builder2.Append("\"");
}
if (advertisementInfo.ImgHeight > 0)
{
builder2.Append(" height=\"");
builder2.Append(advertisementInfo.ImgHeight);
builder2.Append("\"");
}
builder2.Append(" border=\"0\"></img>");
if (!string.IsNullOrEmpty(advertisementInfo.LinkUrl))
{
builder.Append("<a href=\"");
builder.Append(advertisementInfo.LinkUrl);
builder.Append("\"");
if (advertisementInfo.LinkTarget == 0)
{
builder.Append(" target=\"_self\"");
}
else
{
builder.Append(" target=\"_blank\"");
}
builder.Append(" title=\"");
builder.Append(advertisementInfo.LinkAlt);
builder.Append("\"");
builder.Append(">");
builder.Append(builder2.ToString());
builder.Append("</a>");
}
else
{
builder = builder2;
}
Label_0428:
return builder.ToString();
}
public static IList<AdvertisementInfo> GetADList(int zoneId)
{
return dal.GetADList(zoneId);
}
public static ArrayList GetADType()
{
ArrayList list = new ArrayList();
list.Add("图片");
list.Add("动画");
list.Add("文本");
list.Add("代码");
list.Add("页面");
return list;
}
public static AdvertisementInfo GetAdvertisementById(int id)
{
return GetAdvertisementById(id, true);
}
public static AdvertisementInfo GetAdvertisementById(int id, bool isDecode)
{
AdvertisementInfo advertisementById = dal.GetAdvertisementById(id);
if (isDecode)
{
DecodeAdvertisementInfo(advertisementById);
}
return advertisementById;
}
public static IList<AdvertisementInfo> GetAdvertisementList(int startRowIndex, int maximumRows, int zoneId, ADSearchType listType, string keyword)
{
keyword = DataSecurity.HtmlEncode(keyword);
return dal.GetAdvertisementList(startRowIndex, maximumRows, zoneId, listType, keyword);
}
public static IList<AdvertisementInfo> GetAdvertisementListByZoneId(int zoneId)
{
return dal.GetAdvertisementList(0, 0, zoneId, ADSearchType.Zone, null);
}
public static int GetTotalOfAdvertisements(int zoneId, ADSearchType listType, string keyword)
{
return dal.GetTotalOfAdvertisements();
}
public static bool Passed(string id)
{
bool flag = false;
if (!string.IsNullOrEmpty(id))
{
flag = dal.PassedAdvertisement(id);
}
return flag;
}
public static DataActionState Update(AdvertisementInfo advertisementInfo)
{
DataActionState unknown = DataActionState.Unknown;
EncodeAdvertisementInfo(advertisementInfo);
if (dal.Update(advertisementInfo))
{
unknown = DataActionState.Successed;
}
return unknown;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -