// Upload file to the server private void UploadFile(HttpContext context) { var statuses = new List <Resource_FilesStatus>(); var headers = context.Request.Headers; String a = WebHelper.GetStringParam(context.Request, "type", ""); if (!String.IsNullOrEmpty(a) && a == "DELETE") { DeleteFile(context); } else { if (string.IsNullOrEmpty(headers["X-File-Name"])) { UploadWholeFile(context, statuses); } else { UploadPartialFile(headers["X-File-Name"], context, statuses); } WriteJsonIframeSafe(context, statuses); } }
/// <summary> /// 获取当前验证引擎语言文件的URL /// </summary> /// <returns></returns> public String ViewValidationEngineLanguage() { String VEL = String.Format("{0}Resource/js/jquery.validationEngine-en.js?cdv={1}", ModulePath, CrmVersion); String language = WebHelper.GetStringParam(Request, "language", PortalSettings.DefaultLanguage).ToLower();; if (!String.IsNullOrEmpty(language) && language != "en-us") { //先判断这个语言文件是否存在 String webJS = String.Format("{0}Resource/plugins/validation/jquery.validationEngine-{1}.js", ModulePath, language); String serverJS = MapPath(webJS); if (File.Exists(serverJS)) { VEL = String.Format("{0}?cdv={1}", webJS, CrmVersion); } else if (language.IndexOf("-") >= 0) { String lTemp = language.Remove(language.IndexOf("-")); webJS = String.Format("{0}Resource/plugins/validation/jquery.validationEngine-{1}.js", ModulePath, lTemp); serverJS = MapPath(webJS); if (File.Exists(serverJS)) { VEL = String.Format("{0}?cdv={1}", webJS, CrmVersion); } } } return(VEL); }
/// <summary> /// 绑定左边子菜单 /// </summary> public String BindLeftMenuBySubmenu(List <MenuTabItem> TokenItems, out Boolean is_active) { System.Text.StringBuilder sb = new System.Text.StringBuilder(); is_active = false; sb.Append("<ul class=\"sub-menu\">").AppendLine(); foreach (MenuTabItem item in TokenItems) { String active_class = String.Empty; if (item.Token.ToLower() == Token.ToLower() || (!String.IsNullOrEmpty(ActiveMenuTab.Link) && ActiveMenuTab.Link.ToLower() == item.Token.ToLower())) { is_active = true; active_class = "active open"; } if (item.Visible) { if (!item.IsAdministrator || IsAdministrator) { String language = WebHelper.GetStringParam(Request, "language", PortalSettings.DefaultLanguage); String item_url = String.Format("{0}Index_Manager.aspx?PortalId={1}&TabId={2}&ModuleId={3}&Token={4}&language={5}{6}", ModulePath, PortalId, TabId, ModuleId, item.Token, language, ConvertParameter(item.Parameter));; String item_icon = string.IsNullOrEmpty(item.Icon) ? "" : String.Format("<i class=\"{0}\"></i>", item.Icon); sb.AppendFormat("<li class=\"{0}\">", active_class).AppendLine(); sb.AppendFormat("<a href=\"{0}\">{1} <span class=\"title\"> {2} </span> </a>", item_url, item_icon, ViewMenuText(item)).AppendLine(); sb.Append("</li>").AppendLine(); } } } sb.Append("</ul>").AppendLine(); return(sb.ToString()); }
/// <summary> /// 获取当前空间的值 /// </summary> /// <returns></returns> public String GetValue() { if (!String.IsNullOrEmpty(FieldItem.ListContent)) { String defaultType = WebHelper.leftx(FieldItem.ListContent, 1).ToUpper(); if (!String.IsNullOrEmpty(defaultType)) { //ShowHideControl(defaultType); } } String UrlLink = String.Empty; if (WebHelper.GetIntParam(Request, rblUrlLink.UniqueID, 1) == (Int32)EnumUrlControls.Page || ShowDefault == "P") { UrlLink = String.Format("TabID={0}", WebHelper.GetStringParam(Request, ddlUrlLink.UniqueID, "")); } else if (WebHelper.GetIntParam(Request, rblUrlLink.UniqueID, 1) == (Int32)EnumUrlControls.Files || ShowDefault == "F") { UrlLink = WebHelper.GetStringParam(Request, hfUrlLink.UniqueID, ""); } else { UrlLink = WebHelper.GetStringParam(Request, txtUrlLink.UniqueID, ""); } return(UrlLink); }
/// <summary> /// 缩略图的生成 /// </summary> private void PushThumbnail() { //根据ID查询出缩略的方式 Int32 ItemID = WebHelper.GetIntParam(Request, "ID", 0); Int32 Width = WebHelper.GetIntParam(Request, "width", 200); Int32 height = WebHelper.GetIntParam(Request, "height", 200); String Mode = WebHelper.GetStringParam(Request, "mode", "AUTO"); String PhotoType = WebHelper.GetStringParam(Request, "Type", "p").ToLower(); String ImagePath = MapPath(String.Format("{0}/Resource/images/no_image.png", TemplateSourceDirectory)); if (ItemID > 0) { DNNGo_DNNGalleryPro_Slider ContentItem = DNNGo_DNNGalleryPro_Slider.FindByID(ItemID); if (ContentItem != null && ContentItem.ID > 0) { //if (PhotoType == "p") // ImagePath = ViewLinkUrl(ContentItem.Picture, ContentItem.PortalId); //else // ImagePath = ViewLinkUrl(ContentItem.Thumbnails, ContentItem.PortalId); } } GenerateThumbnail.PushThumbnail(Server.UrlDecode(ImagePath), Width, height, Mode); }
public string xUrl(string KeyName, string KeyValue, string ControlKey, params string[] AdditionalParameters) { System.Text.StringBuilder sb = new System.Text.StringBuilder(); String language = WebHelper.GetStringParam(Request, "language", PortalSettings.DefaultLanguage); sb.AppendFormat("{0}Index_Manager.aspx?PortalId={1}&TabId={2}&ModuleId={3}&language={4}", ModulePath, PortalId, TabId, ModuleId, language); string key = ControlKey; if (string.IsNullOrEmpty(key)) { sb.AppendFormat("&Token={0}", xUrlToken()); } else { sb.AppendFormat("&Token={0}", key); } if (!string.IsNullOrEmpty(KeyName) && !string.IsNullOrEmpty(KeyValue)) { sb.AppendFormat("&{0}={1}", KeyName, KeyValue); } if (AdditionalParameters != null && AdditionalParameters.Length > 0) { foreach (String parameter in AdditionalParameters) { sb.AppendFormat("&{0}", parameter); } } return(sb.ToString()); }
/// <summary> /// 状态应用按钮事件 /// </summary> protected void btnApply_Click(object sender, EventArgs e) { try { Int32 Status = WebHelper.GetIntParam(Request, ddlStatus.UniqueID, -1); if (Status >= 0) { string Checkbox_Value = WebHelper.GetStringParam(Request, "Checkbox", ""); string[] Checkbox_Value_Array = Checkbox_Value.Split(','); Int32 IDX = 0; mTips.IsPostBack = true; for (int i = 0; i < Checkbox_Value_Array.Length; i++) { if (Int32.TryParse(Checkbox_Value_Array[i], out IDX)) { DNNGo_DNNGalleryPro_Files Multimedia = DNNGo_DNNGalleryPro_Files.FindByKeyForEdit(IDX); if (Multimedia != null && Multimedia.ID > 0) { //if (Multimedia.Status == (Int32)EnumFileStatus.Recycle && Status == (Int32)EnumFileStatus.Recycle) //{ //要删除实际的文件 String DeletePath = Server.MapPath(GetPhotoPath(Multimedia.FilePath)); if (Multimedia.Delete() > 0) { //删除文件 if (File.Exists(DeletePath)) { File.Delete(DeletePath); } //操作成功 mTips.LoadMessage("DeleteMediaLibrarySuccess", EnumTips.Success, this, new String[] { Multimedia.FileName }); } else { //操作失败 mTips.LoadMessage("DeleteMediaLibraryError", EnumTips.Success, this, new String[] { Multimedia.FileName }); } //} //else //{ // Multimedia.Status = Status; // if (Multimedia.Update() > 0) // { // } //} } } } BindDataList(); } } catch (Exception ex) { ProcessModuleLoadException(ex); } }
/// <summary> /// 绑定左菜单 /// </summary> public void BindLeftMenu() { if (InitMenuTabCollection != null && InitMenuTabCollection.Count > 0) { List <MenuTabItem> TokenItems = InitMenuTabCollection.ToList(); System.Text.StringBuilder sb = new System.Text.StringBuilder(); for (int i = 0; i < TokenItems.Count; i++) { if (String.IsNullOrEmpty(TokenItems[i].Parent) && TokenItems[i].Visible) { MenuTabItem item = TokenItems[i]; if (!item.IsAdministrator || IsAdministrator) { String ChildHtml = String.Empty; bool is_active = false; bool is_Child = false; List <MenuTabItem> ChildList = InitMenuTabCollection.FindByParent(TokenItems[i].Token); if (ChildList.Count > 0) { ChildHtml = BindLeftMenuBySubmenu(ChildList, out is_active); is_Child = true; } if (item.Token.ToLower() == Token.ToLower() || (!String.IsNullOrEmpty(ActiveMenuTab.Link) && ActiveMenuTab.Link.ToLower() == item.Token.ToLower())) { is_active = true; } String active_class = is_active ? "active open" : ""; String language = WebHelper.GetStringParam(Request, "language", PortalSettings.DefaultLanguage); String item_url = (ChildList != null && ChildList.Count > 0) || String.IsNullOrEmpty(item.Src) ? "javascript:;" : String.Format("{0}Index_Manager.aspx?PortalId={1}&TabId={2}&ModuleId={3}&Token={4}&language={5}{6}", ModulePath, PortalId, TabId, ModuleId, item.Token, language, ConvertParameter(item.Parameter));; String item_icon = string.IsNullOrEmpty(item.Icon) ? "" : String.Format("<i class=\"{0}\"></i>", item.Icon); sb.AppendFormat("<li class=\"{0}\">", active_class).AppendLine(); sb.AppendFormat("<a href=\"{0}\">{1} <span class=\"title\"> {2} </span> <span class=\"selected\"></span>", item_url, item_icon, ViewMenuText(item)); if (is_Child) { sb.Append("<i class=\"icon-arrow\"></i> "); } sb.Append("</a>").AppendLine(); sb.Append(ChildHtml).AppendLine(); sb.Append("</li>").AppendLine(); } } } liLeftMenu.Text = sb.ToString(); } }
/// <summary> /// 返回 /// </summary> protected void cmdReturn_Click(object sender, EventArgs e) { try { String ReturnUrl = WebHelper.GetStringParam(Request, "ReturnUrl", ""); Response.Redirect(ReturnUrl, false); } catch (Exception exc) { } }
/// <summary> /// 获取Form传值 /// </summary> /// <param name="fieldItem"></param> /// <returns></returns> public static String GetWebFormValue(SettingEntity fieldItem, BaseModule bpm) { String WebFormValue = String.Empty; //创建控件的Name和ID ControlHelper ControlItem = new ControlHelper(bpm.ModuleId); String ControlName = ControlItem.ViewControlName(fieldItem); String ControlID = ControlItem.ViewControlID(fieldItem); if (fieldItem.ControlType == EnumControlType.CheckBox.ToString()) { WebFormValue = WebHelper.GetStringParam(HttpContext.Current.Request, ControlName, ""); WebFormValue = !String.IsNullOrEmpty(WebFormValue) && WebFormValue == "on" ? "true" : "false"; } else if (fieldItem.ControlType == EnumControlType.FileUpload.ToString()) { HttpPostedFile hpFile = HttpContext.Current.Request.Files[ControlName]; if (hpFile != null && hpFile.ContentLength > 0) { WebFormValue = String.Format("Url://{0}", FileSystemUtils.UploadFile(hpFile, bpm)); //存放到目录中,并返回 } } else if (fieldItem.ControlType == EnumControlType.Urls.ToString()) { String ClientName = GetRichUrlsName(fieldItem); if (bpm.ModuleContext.Items.Contains(ClientName)) { WebFormValue = Convert.ToString(bpm.ModuleContext.Items[ClientName]); } } else if (fieldItem.ControlType == EnumControlType.DateTimePicker.ToString() && fieldItem.IsTime) { WebFormValue = WebHelper.GetStringParam(HttpContext.Current.Request, ControlName, ""); if (!String.IsNullOrEmpty(WebFormValue)) { //判断是否需要把日期转换成带时区的 DateTime oTime = xUserTime.LocalTime(); string[] expectedFormats = { "G", "g", "f", "F" }; if (DateTime.TryParseExact(WebFormValue, "MM/dd/yyyy HH:mm:ss", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out oTime)) { WebFormValue = xUserTime.ServerTime(oTime).ToString("MM/dd/yyyy HH:mm:ss", new CultureInfo("en-US", false)); } } } else { WebFormValue = WebHelper.GetStringParam(HttpContext.Current.Request, ControlName, ""); } return(WebFormValue); }
/// <summary> /// 状态应用按钮事件 /// </summary> protected void btnApply_Click(object sender, EventArgs e) { try { Int32 Status = WebHelper.GetIntParam(Request, ddlStatus.UniqueID, -1); if (Status >= 0) { string Checkbox_Value = WebHelper.GetStringParam(Request, "Checkbox", ""); string[] Checkbox_Value_Array = Checkbox_Value.Split(','); Int32 IDX = 0; for (int i = 0; i < Checkbox_Value_Array.Length; i++) { if (Int32.TryParse(Checkbox_Value_Array[i], out IDX)) { DNNGo_DNNGalleryPro_Slider Article = DNNGo_DNNGalleryPro_Slider.FindByKeyForEdit(IDX); if (Article != null && Article.ID > 0) { if (Article.Status == (Int32)EnumStatus.RecycleBin && Status == (Int32)EnumStatus.RecycleBin) { if (Article.Delete() > 0) { //删除相关的的层 DNNGo_DNNGalleryPro_Layer.Deletes(Article); } } else { Article.Status = Status; if (Article.Update() > 0) { } } } } } BindDataList(); mTips.IsPostBack = true; mTips.LoadMessage("ApplyStatusSuccess", EnumTips.Success, this, new String[] { EnumHelper.GetEnumTextVal(Status, typeof(EnumStatus)) }); } } catch (Exception ex) { ProcessModuleLoadException(ex); } }
/// <summary> /// 排序列表 /// </summary> public void LayerListSort() { Int32 ReturnString = 0; Int32 SliderID = WebHelper.GetIntParam(Request, "SliderID", 0); if (SliderID > 0) { String SortList = WebHelper.GetStringParam(Request, "json", ""); if (!String.IsNullOrEmpty(SortList)) { JavaScriptSerializer jsSerializer = new JavaScriptSerializer(); try { object[] Sorts = jsSerializer.DeserializeObject(SortList) as object[]; if (Sorts != null && Sorts.Length > 0) { foreach (object so in Sorts) { Dictionary <string, object> SortDict = so as Dictionary <string, object>; if (SortDict != null && SortDict.Count == 2) { String setClause = String.Format(" {0} = {1} ", DNNGo_DNNGalleryPro_Layer._.Sort, SortDict[DNNGo_DNNGalleryPro_Layer._.Sort]); String whereClause = String.Format(" {0} = {1} ", DNNGo_DNNGalleryPro_Layer._.ID, SortDict[DNNGo_DNNGalleryPro_Layer._.ID]); ReturnString += DNNGo_DNNGalleryPro_Layer.Update(setClause, whereClause); } } } } catch { } } } Response.Clear(); Response.Write(ReturnString); Response.End(); }
/// <summary> /// 状态应用按钮事件 /// </summary> protected void btnApply_Click(object sender, EventArgs e) { try { Int32 Status = WebHelper.GetIntParam(Request, ddlStatus.UniqueID, -1); if (Status >= 0) { string Checkbox_Value = WebHelper.GetStringParam(Request, "Checkbox", ""); string[] Checkbox_Value_Array = Checkbox_Value.Split(','); Int32 IDX = 0; for (int i = 0; i < Checkbox_Value_Array.Length; i++) { if (Int32.TryParse(Checkbox_Value_Array[i], out IDX)) { DNNGo_DNNGalleryPro_Group item = DNNGo_DNNGalleryPro_Group.FindByKeyForEdit(IDX); if (item != null && item.ID > 0) { mTips.IsPostBack = true; if (item.Delete() > 0) { //mTips.LoadMessage("DeleteCategorySuccess", EnumTips.Success, this, new String[] { item.ContentText }); } else { //mTips.LoadMessage("DeleteCategoryError", EnumTips.Success, this, new String[] { item.ContentText }); } } } } BindDataList(); } } catch (Exception ex) { ProcessModuleLoadException(ex); } }
/// <Description> /// 保存文章 /// </Description> /// <param name="ArticleStatus">文章状态(为-1的时候取选项的值)</param> private Int32 SaveDataItem(Int32 ArticleStatus, ref DNNGo_DNNGalleryPro_Slider Article) { int ResultArticle = 0; Article = SliderItem; //数字更新 Article.Heats = WebHelper.GetIntParam(Request, txtHeatNumber.UniqueID, 0); Article.Clicks = WebHelper.GetIntParam(Request, txtDownloadNumber.UniqueID, 0); //权限 Article.Per_AllUsers = cbPermissionsAllUsers.Checked ? 0 : 1; String textStr, idStr = String.Empty; WebHelper.GetSelected(cblPermissionsRoles, out textStr, out idStr); Article.Per_Roles = idStr; //文章的发布状态 Article.Status = Convert.ToInt32(ddlArticleStatus.Items[ddlArticleStatus.SelectedIndex].Value); //设置属性 SetItemSettings(ref Article); Article.Extension = SetExtensionSettings(); //更新项 Article.LastIP = WebHelper.UserHost; Article.LastTime = xUserTime.UtcTime(); Article.LastUser = UserId; //发布状态和时间 DateTime oTime = xUserTime.LocalTime(); string[] expectedFormats = { "G", "g", "f", "F" }; string StartDate = WebHelper.GetStringParam(Request, txtStartDate.UniqueID, oTime.ToString("MM/dd/yyyy")); string StartTime = WebHelper.GetStringParam(Request, txtStartTime.UniqueID, oTime.ToString("hh:mm tt")); if (DateTime.TryParseExact(String.Format("{0} {1}", StartDate, StartTime), "MM/dd/yyyy hh:mm tt", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out oTime)) { if (oTime.Second == 0) { oTime = oTime.AddSeconds(DateTime.Now.Second); //补秒 } Article.StartTime = oTime; } //发布状态和时间 DateTime EndTime = xUserTime.LocalTime().AddYears(10); string DisableDate = WebHelper.GetStringParam(Request, txtDisableDate.UniqueID, EndTime.ToString("MM/dd/yyyy")); string DisableTime = WebHelper.GetStringParam(Request, txtDisableTime.UniqueID, EndTime.ToString("hh:mm tt")); if (DateTime.TryParseExact(String.Format("{0} {1}", DisableDate, DisableTime), "MM/dd/yyyy hh:mm tt", new CultureInfo("en-US", false), DateTimeStyles.AllowWhiteSpaces, out EndTime)) { if (EndTime.Second == 0) { EndTime = EndTime.AddSeconds(DateTime.Now.Second); //补秒 } Article.EndTime = EndTime; } //创建用户改为可以选择 //Article.CreateUser = WebHelper.GetIntParam(Request, txtCreateUser.UniqueID, UserId); if (ArticleStatus == -1)//如果没有指定状态就取控件的 { Article.Status = WebHelper.GetIntParam(Request, ddlArticleStatus.UniqueID, (Int32)EnumStatus.Activated); } else { Article.Status = ArticleStatus; } if (Article.ID > 0) { //更新 ResultArticle = Article.Update(); } else { //新增 Article.CreateTime = xUserTime.UtcTime(); Article.CreateUser = UserId; Article.ModuleId = ModuleId; Article.PortalId = PortalId; QueryParam Sqp = new QueryParam(); Sqp.ReturnFields = Sqp.Orderfld = DNNGo_DNNGalleryPro_Slider._.Sort; Sqp.OrderType = 1; Sqp.Where.Add(new SearchParam(DNNGo_DNNGalleryPro_Slider._.ModuleId, ModuleId, SearchType.Equal)); Article.Sort = Convert.ToInt32(DNNGo_DNNGalleryPro_Slider.FindScalar(Sqp)) + 2; Article.ID = ResultArticle = Article.Insert(); } if (ResultArticle > 0) { if (divGroups.Visible) { //更新分类项 String Categorys = WebHelper.GetStringParam(Request, String.Format("post$groups${0}", ModuleId), ""); ManagedThreadPool.QueueUserWorkItem(new WaitCallback(ThreadUpdateGroups), new KeyValueEntity(Article.ID.ToString(), Categorys)); } ////操作成功 //mTips.LoadMessage("SaveArticleSuccess", EnumTips.Success, this, new String[] { Article.Title }); ////操作成功需要跳转到首页 //Response.Redirect(xUrl("Posts")); } else { //mTips.IsPostBack = false; ////操作失败 //mTips.LoadMessage("SaveArticleError", EnumTips.Success, this, new String[] { Article.Title }); ////操作失败就留在本页面 } return(ResultArticle); }
/// <summary> /// Layer列表的HTML生成 /// </summary> public void PushAjaxSliders() { EffectDBEntity EffectDB = Setting_EffectDB; QueryParam qp = new QueryParam(); qp.OrderType = 0; qp.PageIndex = WebHelper.GetIntParam(Request, "PageIndex", 2); if (qp.PageIndex <= 1) { qp.PageSize = WebHelper.GetIntParam(Request, "FirstScreen", 10); if (qp.PageSize <= 0) { qp.PageSize = WebHelper.GetIntParam(Request, "LoadDisplay", 10); } } else { qp.PageSize = WebHelper.GetIntParam(Request, "LoadDisplay", 10); qp.FirstScreen = WebHelper.GetIntParam(Request, "FirstScreen", 10); } qp.Where.Add(new SearchParam(DNNGo_DNNGalleryPro_Slider._.ModuleId, Settings_ModuleID, SearchType.Equal)); qp.Where.Add(new SearchParam(DNNGo_DNNGalleryPro_Slider._.Status, (Int32)EnumStatus.Activated, SearchType.Equal)); Int32 Search_GroupID = WebHelper.GetIntParam(HttpContext.Current.Request, "GroupID", 0); if (Search_GroupID > 0) { qp.Where.Add(new SearchParam(DNNGo_DNNGalleryPro_Slider._.ID, DNNGo_DNNGalleryPro_Slider_Group.BuilderArticleIDs(Search_GroupID), SearchType.In)); } int RecordCount = 0; List <DNNGo_DNNGalleryPro_Slider> SliderList = new List <DNNGo_DNNGalleryPro_Slider>(); Int32 Sortby = Settings_Sortby; String Orderfld = WebHelper.GetStringParam(Request, "Order", ""); Int32 OrderType = WebHelper.GetIntParam(Request, "OrderBy", -1); if (!String.IsNullOrEmpty(Orderfld)) { if (Orderfld.ToLower() == "title") { Sortby = OrderType == 1 ? (Int32)EnumSortby.Title_Desc : (Int32)EnumSortby.Title; } else if (Orderfld.ToLower() == "starttime") { Sortby = OrderType == 1 ? (Int32)EnumSortby.Time_Desc : (Int32)EnumSortby.Time; } } if (Sortby == (Int32)EnumSortby.Time) { qp.Orderfld = DNNGo_DNNGalleryPro_Slider._.StartTime; SliderList = DNNGo_DNNGalleryPro_Slider.FindAll(qp, out RecordCount); } else if (Sortby == (Int32)EnumSortby.Time_Desc) { qp.OrderType = 1; qp.Orderfld = DNNGo_DNNGalleryPro_Slider._.StartTime; SliderList = DNNGo_DNNGalleryPro_Slider.FindAll(qp, out RecordCount); } else if (Sortby == (Int32)EnumSortby.Title) { qp.Orderfld = DNNGo_DNNGalleryPro_Slider._.Title; SliderList = DNNGo_DNNGalleryPro_Slider.FindAll(qp, out RecordCount); } else if (Sortby == (Int32)EnumSortby.Title_Desc) { qp.OrderType = 1; qp.Orderfld = DNNGo_DNNGalleryPro_Slider._.Title; SliderList = DNNGo_DNNGalleryPro_Slider.FindAll(qp, out RecordCount); } else if (Sortby == (Int32)EnumSortby.Random) { qp.Orderfld = " newid() "; SliderList = DNNGo_DNNGalleryPro_Slider.FindRandomAll(qp, out RecordCount); } else { qp.Orderfld = DNNGo_DNNGalleryPro_Slider._.Sort; SliderList = DNNGo_DNNGalleryPro_Slider.FindAll(qp, out RecordCount); } if (qp.Pages < qp.PageIndex) //索引数大于总页面数时不返回记录 { SliderList = new List <DNNGo_DNNGalleryPro_Slider>(); } Dictionary <String, Object> jsonSliders = new Dictionary <string, Object>(); TemplateFormat xf = new TemplateFormat(); foreach (var SliderItem in SliderList) { int index = SliderList.IndexOf(SliderItem); //index 为索引值 Dictionary <String, Object> jsonSlider = new Dictionary <String, Object>(); jsonSlider.Add("ID", SliderItem.ID); jsonSlider.Add("Sort", SliderItem.Sort); jsonSlider.Add("CreateTime", SliderItem.CreateTime); jsonSlider.Add("StartTime", SliderItem.StartTime); jsonSlider.Add("EndTime", SliderItem.EndTime); jsonSlider.Add("CreateTimeUS", SliderItem.CreateTime.ToString("MM/dd/yyy HH:mm:ss")); jsonSlider.Add("StartTimeUS", SliderItem.StartTime.ToString("MM/dd/yyy HH:mm:ss")); jsonSlider.Add("EndTimeUS", SliderItem.EndTime.ToString("MM/dd/yyy HH:mm:ss")); jsonSlider.Add("Status", SliderItem.Status == 1 ? "checked=\"checked\"" : ""); jsonSlider.Add("Pages", qp.Pages); foreach (var SliderSetting in Setting_SliderSettingDB) { String SliderName = SliderSetting.Name; String SliderValue = xf.ViewSliderSettingT <String>(SliderItem, SliderName, SliderSetting.DefaultValue); if (SliderSetting.ControlType == EnumControlType.Urls.ToString()) { jsonSlider.Add(SliderName, ViewLinkUrl(SliderValue, false)); } else { jsonSlider.Add(SliderName, SliderValue); } } //加载分组 if (EffectDB.Groups) { jsonSlider.Add("Groups", xf.ToGroups(SliderItem)); } //取出Layers数据 if (EffectDB.Layers) { Dictionary <String, Object> jsonLayers = new Dictionary <String, Object>(); List <DNNGo_DNNGalleryPro_Layer> LayerList = SliderItem.LayerList; if (LayerList != null && LayerList.Count > 0) { foreach (var Layer in LayerList) { int indexLayer = LayerList.IndexOf(Layer); Dictionary <String, Object> jsonLayer = new Dictionary <String, Object>(); foreach (var LayerSetting in Setting_LayerSettingDB) { String LayerName = LayerSetting.Name; String LayerValue = xf.ViewLayerSettingT <String>(Layer, LayerName, LayerSetting.DefaultValue); if (LayerSetting.ControlType == EnumControlType.Urls.ToString()) { jsonLayer.Add(LayerName, ViewLinkUrl(LayerValue, false)); } else { jsonLayer.Add(LayerName, LayerValue); } } jsonLayer.Add("ID", Layer.ID); jsonLayer.Add("Sort", Layer.Sort); jsonLayer.Add("Clicks", Layer.Clicks); jsonLayer.Add("Views", Layer.Views); jsonLayer.Add("Heats", Layer.Heats); jsonLayer.Add("CreateTime", Layer.CreateTime); jsonLayers.Add((10000 - indexLayer).ToString(), jsonLayer); } } jsonSlider.Add("Layers", jsonLayers); } //取出扩展项 Dictionary <String, Object> jsonExtension = new Dictionary <String, Object>(); if (!String.IsNullOrEmpty(SliderItem.Extension)) { List <KeyValueEntity> ExtensionSettings = ConvertTo.Deserialize <List <KeyValueEntity> >(SliderItem.Extension); foreach (KeyValueEntity kv in ExtensionSettings) { if (!jsonExtension.ContainsKey(kv.Key)) { jsonExtension.Add(kv.Key, kv.Value); } } } jsonSlider.Add("Extensions", jsonExtension); jsonSliders.Add(index.ToString(), jsonSlider); } //转换数据为json JavaScriptSerializer jsSerializer = new JavaScriptSerializer(); Response.Clear(); Response.Write(jsSerializer.Serialize(jsonSliders)); Response.End(); }
/// <summary> /// 媒体库文件下载 /// </summary> public void FileDownLoads() { Int32 SliderID = WebHelper.GetIntParam(Request, "SliderID", 0); Int32 LayerID = WebHelper.GetIntParam(Request, "LayerID", 0); String SettingName = WebHelper.GetStringParam(Request, "SettingName", ""); if (!String.IsNullOrEmpty(SettingName)) { String SettingValue = String.Empty; DNNGo_DNNGalleryPro_Slider SliderItem = new DNNGo_DNNGalleryPro_Slider(); if (LayerID > 0) { DNNGo_DNNGalleryPro_Layer LayerItem = DNNGo_DNNGalleryPro_Layer.FindByKeyForEdit(LayerID); if (LayerItem != null && LayerItem.ID > 0) { SliderItem = DNNGo_DNNGalleryPro_Slider.FindByKeyForEdit(SliderID); if (SliderItem != null && SliderItem.ID > 0) { //背景下载技术 SliderItem.Clicks += 1; SliderItem.Update(); } //层下载技术 LayerItem.Clicks += 1; LayerItem.Update(); //取出层中的下载链接 SettingValue = ViewLayerSettingT <String>(LayerItem, SettingName, ""); } else { //没有找到文件记录 } } else if (SliderID > 0) { SliderItem = DNNGo_DNNGalleryPro_Slider.FindByKeyForEdit(SliderID); if (SliderItem != null && SliderItem.ID > 0) { SliderItem.Clicks += 1; SliderItem.Update(); //取出背景中的下载链接 SettingValue = ViewSliderSettingT <String>(SliderItem, SettingName, ""); } } if (!String.IsNullOrEmpty(SettingValue)) { String DownLoadUrl = HttpUtility.UrlDecode(ViewLinkUrl(SettingValue, false)); if (!String.IsNullOrEmpty(DownLoadUrl)) { //记录下载信息到日志表里面***暂时忽略 if (SettingValue.IndexOf("MediaID=", StringComparison.CurrentCultureIgnoreCase) == 0) { String ServerPath = MapPath(DownLoadUrl); if (false) { FileSystemUtils.DownloadFile(ServerPath, Path.GetFileName(ServerPath));//下载媒体库中的文件 } else { Response.Redirect(DownLoadUrl); } } else { Response.Redirect(DownLoadUrl);//除了媒体库中的文件,其他一律跳转 } } else { //下载链接不存在 } } else { //没有取到下载链接 } } else { //没有找到文件参数 } }
private void DeliverFile(HttpContext context) { DNNGo_DNNGalleryPro_Files DataItem = DNNGo_DNNGalleryPro_Files.FindByKeyForEdit(WebHelper.GetStringParam(context.Request, "PhotoID", "0")); if (DataItem != null && DataItem.ID > 0) { String Picture = GetPhotoPath(DataItem); if (!String.IsNullOrEmpty(Picture) && File.Exists(context.Server.MapPath(Picture))) { context.Response.AddHeader("Content-Disposition", "attachment; filename=\"" + DataItem.FileName + "\""); context.Response.ContentType = "application/octet-stream"; context.Response.ClearContent(); context.Response.WriteFile(context.Server.MapPath(Picture)); } else { context.Response.StatusCode = 404; } } else { context.Response.StatusCode = 404; } //var filename = context.Request["PhotoID"]; //var filePath = StorageRoot + filename; //if (File.Exists(filePath)) { // context.Response.AddHeader("Content-Disposition", "attachment; filename=\"" + filename + "\""); // context.Response.ContentType = "application/octet-stream"; // context.Response.ClearContent(); // context.Response.WriteFile(filePath); //} else // context.Response.StatusCode = 404; }