private static string ParseDateTime(IAttributes attributes, NameValueCollection pageScripts, TableStyleInfo styleInfo, StringBuilder extraBuilder) { if (styleInfo.Additional.IsValidate) { extraBuilder.Append( $@"<span id=""{styleInfo.AttributeName}_msg"" style=""color:red;display:none;"">*</span><script>event_observe('{styleInfo.AttributeName}', 'blur', checkAttributeValue);</script>"); } var selectedValue = attributes.GetString(styleInfo.AttributeName); var dateTime = selectedValue == Current ? DateTime.Now : TranslateUtils.ToDateTime(selectedValue); if (pageScripts != null) { pageScripts["calendar"] = $@"<script type=""text/javascript"" src=""{SiteServerAssets.GetUrl(SiteServerAssets.DatePicker.Js)}""></script>"; } var value = string.Empty; if (dateTime > DateUtils.SqlMinValue) { value = DateUtils.GetDateAndTimeString(dateTime, EDateFormatType.Day, ETimeFormatType.LongTime); } return($@"<input id=""{styleInfo.AttributeName}"" name=""{styleInfo.AttributeName}"" type=""text"" class=""form-control"" value=""{value}"" onfocus=""{SiteServerAssets.DatePicker.OnFocus}"" style=""width: 180px"" />"); }
protected override void Render(HtmlTextWriter writer) { var controllerUrl = ApiRouteUEditor.GetUrl(ApiManager.InnerApiUrl, 0); var editorUrl = SiteServerAssets.GetUrl("ueditor"); if (string.IsNullOrEmpty(Height) || Height == "0") { Height = "280"; } if (string.IsNullOrEmpty(Width) || Width == "0") { Width = "100%"; } var builder = new StringBuilder(); builder.Append( $@"<script type=""text/javascript"">window.UEDITOR_HOME_URL = ""{editorUrl}/"";window.UEDITOR_CONTROLLER_URL = ""{controllerUrl}"";</script><script type=""text/javascript"" src=""{editorUrl}/editor_config.js""></script><script type=""text/javascript"" src=""{editorUrl}/ueditor_all_min.js""></script>"); builder.Append($@" <textarea id=""{ClientID}"" name=""{ClientID}"" style=""display:none"">{HttpUtility.HtmlEncode(Text)}</textarea> <script type=""text/javascript""> $(function(){{ UE.getEditor('{ClientID}', {UEditorUtils.ConfigValues}); $('#{ClientID}').show(); }}); </script>"); writer.Write(builder); }
public static string ParseTextEditor(IAttributes attributes, string attributeName, SiteInfo siteInfo, NameValueCollection pageScripts, StringBuilder extraBuilder) { var value = attributes.GetString(attributeName); value = ContentUtility.TextEditorContentDecode(siteInfo, value, true); value = UEditorUtils.TranslateToHtml(value); value = StringUtils.HtmlEncode(value); var controllerUrl = ApiRouteUEditor.GetUrl(ApiManager.InnerApiUrl, siteInfo.Id); var editorUrl = SiteServerAssets.GetUrl("ueditor"); if (pageScripts["uEditor"] == null) { extraBuilder.Append( $@"<script type=""text/javascript"">window.UEDITOR_HOME_URL = ""{editorUrl}/"";window.UEDITOR_CONTROLLER_URL = ""{controllerUrl}"";</script><script type=""text/javascript"" src=""{editorUrl}/editor_config.js""></script><script type=""text/javascript"" src=""{editorUrl}/ueditor_all_min.js""></script>"); } pageScripts["uEditor"] = string.Empty; extraBuilder.Append($@" <script type=""text/javascript""> $(function(){{ UE.getEditor('{attributeName}', {UEditorUtils.ConfigValues}); $('#{attributeName}').show(); }}); </script>"); return($@"<textarea id=""{attributeName}"" name=""{attributeName}"" style=""display:none"">{value}</textarea>"); }
public static string GetInsertAudioScript(string attributeName, string playUrl, SiteInfo siteInfo) { if (string.IsNullOrEmpty(playUrl)) { return(string.Empty); } var dict = new Dictionary <string, string> { { StlPlayer.PlayUrl, playUrl }, { StlPlayer.IsAutoPlay, siteInfo.Additional.ConfigUEditorAudioIsAutoPlay.ToString() }, { "style", "width: 400px; height: 40px;" } }; return(GetInsertHtmlScript(attributeName, $@"<img class=""siteserver-stl-audio"" src=""{SiteServerAssets.GetUrl("ueditor/audio-clip.png")}"" {TranslateUtils.ToAttributesString(dict)} />")); }
protected override void Render(HtmlTextWriter writer) { var code = string.Empty; if (!string.IsNullOrEmpty(Type)) { if (Type.Trim().ToLower() == "jquery") { code = $@"<script language=""javascript"" src=""{SiteServerAssets.GetUrl(SiteServerAssets.JQuery.Js)}""></script>"; } else if (Type.Trim().ToLower() == "ajaxupload") { code = $@"<script language=""javascript"" src=""{SiteServerAssets.GetUrl(SiteServerAssets.AjaxUpload.Js)}""></script>"; } else if (Type.Trim().ToLower() == "bootstrap") { var cssUrl = SiteServerAssets.GetUrl(SiteServerAssets.Bootstrap.Css); var jsUrl = SiteServerAssets.GetUrl(SiteServerAssets.Bootstrap.Js); code = $@" <link rel=""stylesheet"" type=""text/css"" href=""{cssUrl}""> <script language=""javascript"" src=""{jsUrl}""></script> "; } else if (Type.Trim().ToLower() == "calendar") { code = $@"<script language=""javascript"" src=""{SiteServerAssets.GetUrl(SiteServerAssets.DatePicker.Js)}""></script>"; } else if (Type.Trim().ToLower() == "toastr") { code = $@"<link rel=""stylesheet"" type=""text/css"" href=""{SiteServerAssets.GetUrl(SiteServerAssets.Toastr.Css)}""><script language=""javascript"" src=""{SiteServerAssets.GetUrl(SiteServerAssets.Toastr.Js)}""></script>"; } else if (Type.Trim().ToLower() == "layer") { code = $@"<script language=""javascript"" src=""{SiteServerAssets.GetUrl(SiteServerAssets.Layer.Js)}""></script>"; } } writer.Write(code); }
/// <summary> /// Generates the HTML markup for the Next/Prev navigation bar /// </summary> /// <param name="cell"></param> private void BuildNextPrevUi(TableCell cell) { var isValidPage = (CurrentPageIndex >= 0 && CurrentPageIndex <= TotalPages - 1); var canMoveBack = (CurrentPageIndex > 0); var canMoveForward = (CurrentPageIndex < TotalPages - 1); // 首页 var enabled = isValidPage && canMoveBack; var firstImage = new Image { ToolTip = FirstText }; var firstText = new Label { Text = FirstText }; if (enabled) { firstImage.ImageUrl = SiteServerAssets.GetUrl(SiteServerAssets.Arrow.First); var link = new HyperLink(); link.Style.Add("text-decoration", "none"); link.NavigateUrl = GetNavigationUrl(1); if (!string.IsNullOrEmpty(EnabledCssClass)) { link.CssClass = EnabledCssClass; } link.Controls.Add(firstImage); link.Controls.Add(new LiteralControl(" ")); link.Controls.Add(firstText); cell.Controls.Add(link); } else { firstImage.ImageUrl = SiteServerAssets.GetUrl(SiteServerAssets.Arrow.FirstDisabled); cell.Controls.Add(firstImage); cell.Controls.Add(new LiteralControl(" ")); if (!string.IsNullOrEmpty(DisabledCssClass)) { firstText.CssClass = DisabledCssClass; } else { firstText.Style.Add("color", "gray"); } cell.Controls.Add(firstText); } cell.Controls.Add(new LiteralControl(" ")); // 上一页 var prevImage = new Image { ToolTip = PrevText }; var prevText = new Label { Text = PrevText }; if (enabled) { prevImage.ImageUrl = SiteServerAssets.GetUrl(SiteServerAssets.Arrow.Previous); var link = new HyperLink(); link.Style.Add("text-decoration", "none"); link.NavigateUrl = GetNavigationUrl(CurrentPageIndex); if (!string.IsNullOrEmpty(EnabledCssClass)) { link.CssClass = EnabledCssClass; } link.Controls.Add(prevImage); link.Controls.Add(new LiteralControl(" ")); link.Controls.Add(prevText); cell.Controls.Add(link); } else { prevImage.ImageUrl = SiteServerAssets.GetUrl(SiteServerAssets.Arrow.PreviousDisabled); cell.Controls.Add(prevImage); cell.Controls.Add(new LiteralControl(" ")); if (!string.IsNullOrEmpty(DisabledCssClass)) { prevText.CssClass = DisabledCssClass; } else { prevText.Style.Add("color", "gray"); } cell.Controls.Add(prevText); } cell.Controls.Add(new LiteralControl(" ")); // 下一页 enabled = isValidPage && canMoveForward; var nextImage = new Image { ToolTip = NextText }; var nextText = new Label { Text = NextText }; if (enabled) { nextImage.ImageUrl = SiteServerAssets.GetUrl(SiteServerAssets.Arrow.Next); var link = new HyperLink(); link.Style.Add("text-decoration", "none"); link.NavigateUrl = GetNavigationUrl(CurrentPageIndex + 2); if (!string.IsNullOrEmpty(EnabledCssClass)) { link.CssClass = EnabledCssClass; } link.Controls.Add(nextImage); link.Controls.Add(new LiteralControl(" ")); link.Controls.Add(nextText); cell.Controls.Add(link); } else { nextImage.ImageUrl = SiteServerAssets.GetUrl(SiteServerAssets.Arrow.NextDisabled); cell.Controls.Add(nextImage); cell.Controls.Add(new LiteralControl(" ")); if (!string.IsNullOrEmpty(DisabledCssClass)) { nextText.CssClass = DisabledCssClass; } else { nextText.Style.Add("color", "gray"); } cell.Controls.Add(nextText); } cell.Controls.Add(new LiteralControl(" ")); // 末页 var lastImage = new Image { ToolTip = LastText }; var lastText = new Label { Text = LastText }; if (enabled) { lastImage.ImageUrl = SiteServerAssets.GetUrl(SiteServerAssets.Arrow.Last); var link = new HyperLink(); link.Style.Add("text-decoration", "none"); link.NavigateUrl = GetNavigationUrl(TotalPages); if (!string.IsNullOrEmpty(EnabledCssClass)) { link.CssClass = EnabledCssClass; } link.Controls.Add(lastImage); link.Controls.Add(new LiteralControl(" ")); link.Controls.Add(lastText); cell.Controls.Add(link); } else { lastImage.ImageUrl = SiteServerAssets.GetUrl(SiteServerAssets.Arrow.LastDisabled); cell.Controls.Add(lastImage); cell.Controls.Add(new LiteralControl(" ")); if (!string.IsNullOrEmpty(DisabledCssClass)) { lastText.CssClass = DisabledCssClass; } else { lastText.Style.Add("color", "gray"); } cell.Controls.Add(lastText); } //显示总记录数 if (TotalPages > 0) { cell.Controls.Add(new LiteralControl(" ")); var totalPagesText = new Label(); lastText.Text = $@" ( 共{TotalCount}条 )"; cell.Controls.Add(totalPagesText); } }
protected override void OnLoad(EventArgs e) { if (Page != null) { if (!Page.ClientScript.IsStartupScriptRegistered("DateTimeTextBox_Calendar")) { Page.ClientScript.RegisterStartupScript(GetType(), "DateTimeTextBox_Calendar", $@"<script language=""javascript"" src=""{SiteServerAssets.GetUrl(SiteServerAssets.DatePicker.Js)}""></script>"); } } base.OnLoad(e); }
public static string GetScript(SiteInfo siteInfo, ELoadingType loadingType, string contentModelPluginId, NameValueCollection additional) { var script = @" <script language=""JavaScript""> function getTreeLevel(e) { var length = 0; if (e){ if (e.tagName == 'TR') { length = parseInt(e.getAttribute('treeItemLevel')); } } return length; } function getTrElement(element){ if (!element) return; for (element = element.parentNode;;){ if (element != null && element.tagName == 'TR'){ break; }else{ element = element.parentNode; } } return element; } function getImgClickableElementByTr(element){ if (!element || element.tagName != 'TR') return; var img = null; if (element.childNodes){ var imgCol = element.getElementsByTagName('IMG'); if (imgCol){ for (x=0;x<imgCol.length;x++){ if (imgCol.item(x).getAttribute('isOpen')){ img = imgCol.item(x); break; } } } } return img; } var activeTrElement = null; function fontWeightLink(element){ if (activeTrElement) { activeTrElement.setAttribute('class', ''); } activeTrElement = getTrElement(element); if (activeTrElement) { activeTrElement.setAttribute('class', 'table-active'); } } function unSelectRow(tr) { tr = $(tr); var cb = tr.find('input:checkbox:first'); if (cb.length === 0) return; var checked = cb.is(':checked'); cb[0].checked = false; tr.removeClass('table-active'); } var completedChannelId = null; function displayChildren(img){ if (!img) return; var tr = getTrElement(img); var isToOpen = img.getAttribute('isOpen') == 'false'; var isByAjax = img.getAttribute('isAjax') == 'true'; var channelId = img.getAttribute('id'); if (img && img.getAttribute('isOpen') != null){ if (img.getAttribute('isOpen') == 'false'){ img.setAttribute('isOpen', 'true'); img.setAttribute('src', '{iconMinusUrl}'); }else{ img.setAttribute('isOpen', 'false'); img.setAttribute('src', '{iconPlusUrl}'); } } if (isToOpen && isByAjax) { var div = document.createElement('div'); div.innerHTML = ""<img align='absmiddle' width='30' height='12' border='0' src='{iconLoadingUrl}' />""; img.parentNode.appendChild(div); $(div).addClass('loading'); loadingChannels(tr, img, div, channelId); } else { var level = getTreeLevel(tr); var collection = new Array(); var index = 0; for ( var e = tr.nextSibling; e != null ; e = e.nextSibling) { if (e && e.tagName && e.tagName == 'TR'){ var currentLevel = getTreeLevel(e); if (currentLevel <= level) break; if(e.style.display == '') { e.style.display = 'none'; unSelectRow(e); }else{ if (currentLevel != level + 1) continue; e.style.display = ''; var imgClickable = getImgClickableElementByTr(e); if (imgClickable){ if (imgClickable.getAttribute('isOpen') && imgClickable.getAttribute('isOpen') =='true'){ imgClickable.setAttribute('isOpen', 'false'); imgClickable.setAttribute('src', '{iconPlusUrl}'); collection[index] = imgClickable; index++; } } } } } if (index > 0){ for (i=0;i<=index;i++){ displayChildren(collection[i]); } } } } "; script += $@" function loadingChannels(tr, img, div, channelId){{ var url = '{AjaxOtherService.GetGetLoadingChannelsUrl()}'; var pars = '{AjaxOtherService.GetGetLoadingChannelsParameters(siteInfo.Id, contentModelPluginId, loadingType, additional)}&parentID=' + channelId; jQuery.post(url, pars, function(data, textStatus) {{ $($.parseHTML(data)).insertAfter($(tr)); img.setAttribute('isAjax', 'false'); img.parentNode.removeChild(div); }}); completedChannelId = channelId; }} function loadingChannelsOnLoad(paths){{ if (paths && paths.length > 0){{ var channelIds = paths.split(','); var channelId = channelIds[0]; var img = $('#' + channelId); if (img.attr('isOpen') == 'false'){{ displayChildren(img[0]); if (completedChannelId && completedChannelId == channelId){{ if (paths.indexOf(',') != -1){{ paths = paths.substring(paths.indexOf(',') + 1); setTimeout(""loadingChannelsOnLoad('"" + paths + ""')"", 1000); }} }} }} }} }} </script> "; var treeDirectoryUrl = SiteServerAssets.GetIconUrl("tree"); script = script.Replace("{iconEmptyUrl}", PageUtils.Combine(treeDirectoryUrl, "empty.gif")); script = script.Replace("{iconMinusUrl}", PageUtils.Combine(treeDirectoryUrl, "minus.png")); script = script.Replace("{iconPlusUrl}", PageUtils.Combine(treeDirectoryUrl, "plus.png")); script = script.Replace("{iconLoadingUrl}", SiteServerAssets.GetUrl("layer/skin/default/xubox_loading0.gif")); return(script); }
public static string GetInsertVideoScript(string attributeName, string playUrl, string imageUrl, SiteInfo siteInfo) { if (string.IsNullOrEmpty(playUrl)) { return(string.Empty); } var dict = new Dictionary <string, string> { { StlPlayer.PlayUrl, playUrl }, { StlPlayer.IsAutoPlay, siteInfo.Additional.ConfigUEditorVideoIsAutoPlay.ToString() }, { StlPlayer.PlayBy, siteInfo.Additional.ConfigUEditorVideoPlayBy }, { "style", "width: 333px; height: 333px;" } }; if (siteInfo.Additional.ConfigUEditorVideoIsImageUrl && !string.IsNullOrEmpty(imageUrl)) { dict.Add(StlPlayer.ImageUrl, imageUrl); } if (siteInfo.Additional.ConfigUEditorVideoIsWidth) { dict.Add(StlPlayer.Width, siteInfo.Additional.ConfigUEditorVideoWidth.ToString()); } if (siteInfo.Additional.ConfigUEditorVideoIsHeight) { dict.Add(StlPlayer.Height, siteInfo.Additional.ConfigUEditorVideoHeight.ToString()); } return(GetInsertHtmlScript(attributeName, $@"<img class=""siteserver-stl-player"" src=""{SiteServerAssets.GetUrl("ueditor/video-clip.png")}"" {TranslateUtils.ToAttributesString(dict)} />")); }