Пример #1
0
 public static string GetAttachmentsDirectory()
 {
     return(PageUtility.ResolveUrl(Common.Helpers.ConfigurationHelper.GetConfigurationValue(configFile, "AttachmentsDirectory")));
 }
Пример #2
0
        void rptMultipleContents_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            var resourceInfo = e.Item.DataItem as KeywordResourceInfo;

            var ltlImageUrl  = e.Item.FindControl("ltlImageUrl") as Literal;
            var ltlTitle     = e.Item.FindControl("ltlTitle") as Literal;
            var ltlEditUrl   = e.Item.FindControl("ltlEditUrl") as Literal;
            var ltlDeleteUrl = e.Item.FindControl("ltlDeleteUrl") as Literal;

            if (string.IsNullOrEmpty(resourceInfo.ImageUrl))
            {
                ltlImageUrl.Text = @"<i class=""appmsg_thumb default"">缩略图</i>";
            }
            else
            {
                ltlImageUrl.Text =
                    $@"<img class=""js_appmsg_thumb appmsg_thumb"" style=""max-width:78px;max-height:78px;display:block"" src=""{PageUtility
                        .ParseNavigationUrl(PublishmentSystemInfo, resourceInfo.ImageUrl)}"">";
            }
            ltlTitle.Text = $@"<a href=""javascript:;"">{resourceInfo.Title}</a>";

            ltlEditUrl.Text =
                $@"<a class=""icon18_common edit_gray js_edit"" href=""{PageKeywordResourceAdd.GetRedirectUrl(
                    PublishmentSystemId, _keywordId, resourceInfo.ResourceId, e.Item.ItemIndex + 2, false)}"" target=""resource"">&nbsp;&nbsp;</a>";

            ltlDeleteUrl.Text =
                $@"<a class=""icon18_common del_gray js_del"" href=""{GetRedirectUrl(
                    PublishmentSystemId, _keywordId, 0, false)}&deleteResource=true&deleteResourceID={resourceInfo
                    .ResourceId}"">&nbsp;&nbsp;</a>";
        }
Пример #3
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string guildLimit  = PageUtility.GetQueryString(Request, "Guild", "null");
            string playerLimit = PageUtility.GetQueryString(Request, "player", "null");

            var realm = RealmControl.Realm;

            string breadCrumbCommon = "";

            if (guildLimit != "null")
            {
                playerLimit = "null";
                this.Title  = "Boss records for " + guildLimit + " | RaidStats";

                breadCrumbCommon = PageUtility.BreadCrumb_AddHome()
                                   + PageUtility.BreadCrumb_AddRealm(realm)
                                   + PageUtility.BreadCrumb_AddLink("RaidList.aspx?Guild=" + guildLimit, guildLimit);

                m_BossListInfoHTML = new MvcHtmlString("<h1>Raid Bosses for " + guildLimit + "</h1>"
                                                       + "<p>Top DPS, HPS and fastest kill times are listed below for the different bosses</p>"
                                                       + "<p>Note that this does only show data from the guild " + guildLimit + ".<br />If you want to see for all guilds click " + PageUtility.CreateLink("BossList.aspx?realm=" + RealmPlayersServer.StaticValues.ConvertRealmParam(realm), "here") + "</p>");
            }
            else if (playerLimit != "null")
            {
                this.Title = "Boss records for " + playerLimit + " | RaidStats";

                breadCrumbCommon = PageUtility.BreadCrumb_AddHome()
                                   + PageUtility.BreadCrumb_AddRealm(realm)
                                   + PageUtility.BreadCrumb_AddLink("PlayerOverview.aspx?realm=" + RealmPlayersServer.StaticValues.ConvertRealmParam(realm) + "&player=" + playerLimit, playerLimit);

                m_BossListInfoHTML = new MvcHtmlString("<h1>Raid Boss records for " + playerLimit + "</h1>"
                                                       + "<p>Top DPS, HPS and fastest kill times are listed below for the different bosses</p>"
                                                       + "<p>Note that this does only show data for player " + playerLimit + ".<br />If you want to see for all players on the realm click " + PageUtility.CreateLink("BossList.aspx?realm=" + RealmPlayersServer.StaticValues.ConvertRealmParam(realm), "here") + "</p>");
            }
            else
            {
                this.Title = "Boss records | RaidStats";

                breadCrumbCommon = PageUtility.BreadCrumb_AddHome()
                                   + PageUtility.BreadCrumb_AddRealm(realm);

                m_BossListInfoHTML = new MvcHtmlString("<h1>Raid Bosses</h1>"
                                                       + "<p>Top DPS, HPS and fastest kill times are listed below for the different bosses</p>");
            }

            if (ClassControl.HasClassLimits() == true)
            {
                string colorClasses = ClassControl.GetColorClassesStr();
                string breadCrumb   = breadCrumbCommon + PageUtility.BreadCrumb_AddThisPageWithout("Bosses", Request, "ClassLimit");

                if (ClassControl.HasFactionLimits() == true)
                {
                    breadCrumb += PageUtility.BreadCrumb_AddFinish("vs " + colorClasses);
                    breadCrumb += PageUtility.BreadCrumb_AddFinish("Only " + ClassControl.GetColorFactionStr());
                }
                else
                {
                    breadCrumb += PageUtility.BreadCrumb_AddFinish("vs " + colorClasses);
                }
                m_BreadCrumbHTML = new MvcHtmlString(breadCrumb);
            }
            else
            {
                if (ClassControl.HasFactionLimits() == true)
                {
                    m_BreadCrumbHTML = new MvcHtmlString(breadCrumbCommon
                                                         + PageUtility.BreadCrumb_AddThisPageWithout("Bosses", Request, "FactionLimit")
                                                         + PageUtility.BreadCrumb_AddFinish("Only " + ClassControl.GetColorFactionStr()));
                }
                else
                {
                    m_BreadCrumbHTML = new MvcHtmlString(breadCrumbCommon
                                                         + PageUtility.BreadCrumb_AddFinish("Bosses"));
                }
            }

            m_TableHeadHTML = new MvcHtmlString(
                PageUtility.CreateTableRow("",
                                           PageUtility.CreateTableColumnHead("Instance") +
                                           PageUtility.CreateTableColumnHead("Boss") +
                                           PageUtility.CreateTableColumnHead("Top DPS") +
                                           PageUtility.CreateTableColumnHead("Top HPS") +
                                           PageUtility.CreateTableColumnHead("Fastest Kill") +
                                           PageUtility.CreateTableColumnHead("Kill Count")));

            DateTime earliestCompatibleDate = new DateTime(2013, 10, 23, 0, 0, 0);
            var      realmDB = ApplicationInstance.Instance.GetRealmDB(VF_RealmPlayersDatabase.WowRealm.Emerald_Dream);
            //var raidCollection = ApplicationInstance.Instance.GetRaidCollection();

            var summaryDatabase = ApplicationInstance.Instance.GetSummaryDatabase();

            if (summaryDatabase == null)
            {
                return;
            }

            IEnumerable <VF_RaidDamageDatabase.Models.PurgedPlayer> purgePlayers = ApplicationInstance.Instance.GetPurgedPlayers(realm);

            var classLimits   = ClassControl.GetClassLimits();
            var factionLimits = ClassControl.GetFactionLimits();

            string tableBody = "";

            foreach (var boss in BossInformation.BossFights)
            {
                var bossFights = summaryDatabase.GetHSElligibleBossFights(boss.Key, realm, guildLimit == "null" ? null : guildLimit, playerLimit == "null" ? null : playerLimit, purgePlayers);
                if (bossFights.Count > 0)
                {
                    //averagePrecision /= bossFights.Count;
                    Tuple <string, int>    fastestKill = new Tuple <string, int>("", int.MaxValue);
                    Tuple <string, double> topDPS      = new Tuple <string, double>("", 0.0);
                    Tuple <string, double> topHPS      = new Tuple <string, double>("", 0.0);
                    foreach (var fight in bossFights)
                    {
                        if (realmDB.Realm != fight.CacheRaid.CacheGroup.Realm)
                        {
                            realmDB = ApplicationInstance.Instance.GetRealmDB(fight.CacheRaid.CacheGroup.Realm);
                        }
                        //if (fight.DataDetails.FightPrecision < averagePrecision - 0.05)
                        //    continue;
                        if (fight.FightDuration < fastestKill.Item2)
                        {
                            fastestKill = new Tuple <string, int>(
                                PageUtility.CreateLink("FightOverview.aspx?Raid=" + fight.CacheRaid.UniqueRaidID
                                                       + "&Fight=" + fight.StartDateTime.ToString("ddHHmmss"), fight.FightDuration.ToString() + " seconds")
                                , fight.FightDuration);
                        }

                        var unitsData = fight.PlayerFightData;//.GetFilteredPlayerUnitsData(true, realmDB.RD_GetPlayerIdentifier);
                        Tuple <string, int> topDmg  = new Tuple <string, int>("", 0);
                        Tuple <string, int> topHeal = new Tuple <string, int>("", 0);
                        foreach (var unit in unitsData)
                        {
                            if (unit.Item2.Damage > topDmg.Item2)
                            {
                                var playerName = unit.Item1;
                                if (playerName == "Unknown")
                                {
                                    continue;
                                }
                                if (playerLimit != "null" && playerLimit != playerName)
                                {
                                    continue;
                                }
                                if (BossInformation.BossFights.ContainsKey(playerName) == true)
                                {
                                    continue;
                                }

                                var playerData = realmDB.RD_FindPlayer(playerName, fight);
                                if (playerData != null && (classLimits == null || classLimits.Contains(playerData.Character.Class)) &&
                                    (factionLimits == null || factionLimits.Contains(StaticValues.GetFaction(playerData.Character.Race))))
                                {
                                    topDmg = new Tuple <string, int>(unit.Item1, unit.Item2.Damage);
                                }
                            }
                            if (unit.Item2.EffectiveHeal > topHeal.Item2)
                            {
                                var playerName = unit.Item1;
                                if (playerName == "Unknown")
                                {
                                    continue;
                                }
                                if (playerLimit != "null" && playerLimit != playerName)
                                {
                                    continue;
                                }
                                if (BossInformation.BossFights.ContainsKey(playerName) == true)
                                {
                                    continue;
                                }

                                var playerData = realmDB.RD_FindPlayer(playerName, fight);
                                if (playerData != null && (classLimits == null || classLimits.Contains(playerData.Character.Class)) &&
                                    (factionLimits == null || factionLimits.Contains(StaticValues.GetFaction(playerData.Character.Race))))
                                {
                                    topHeal = new Tuple <string, int>(unit.Item1, unit.Item2.EffectiveHeal);
                                }
                            }
                        }
                        double topThisDPS = (double)topDmg.Item2 / (double)fight.FightDuration;
                        double topThisHPS = (double)topHeal.Item2 / (double)fight.FightDuration;
                        if (topThisDPS > topDPS.Item2)
                        {
                            topDPS = new Tuple <string, double>(PageUtility.CreateLink_RaidStats_Player(topDmg.Item1, realmDB.Realm
                                                                                                        , PageUtility.CreateColorCodedName(topDmg.Item1, realmDB.GetPlayer(topDmg.Item1).Character.Class))
                                                                + "(" + PageUtility.CreateLink("FightOverview.aspx?Raid=" + fight.CacheRaid.UniqueRaidID
                                                                                               + "&Fight=" + fight.StartDateTime.ToString("ddHHmmss")
                                                                                               , topThisDPS.ToStringDot("0.0")) + ")", topThisDPS);
                        }
                        if (topThisHPS > topHPS.Item2)
                        {
                            topHPS = new Tuple <string, double>(PageUtility.CreateLink_RaidStats_Player(topHeal.Item1, realmDB.Realm
                                                                                                        , PageUtility.CreateColorCodedName(topHeal.Item1, realmDB.GetPlayer(topHeal.Item1).Character.Class))
                                                                + "(" + PageUtility.CreateLink("FightOverview.aspx?Raid=" + fight.CacheRaid.UniqueRaidID
                                                                                               + "&Fight=" + fight.StartDateTime.ToString("ddHHmmss")
                                                                                               , topThisHPS.ToStringDot("0.0")) + ")", topThisHPS);
                        }
                    }
                    int killCount = bossFights.Count((_Value) => { return(_Value.AttemptType == VF_RDDatabase.AttemptType.KillAttempt); });

                    tableBody += PageUtility.CreateTableRow("", PageUtility.CreateTableColumn(PageUtility.CreateImage(StaticValues._RaidInstanceImages[boss.Value]) + boss.Value) +
                                                            PageUtility.CreateTableColumn(PageUtility.CreateLink("FightOverallOverview.aspx?FightName=" + boss.Key + (guildLimit != "null" ? "&Guild=" + guildLimit : "") + (playerLimit != "null" ? "&realm=" + StaticValues.ConvertRealmParam(realm) + "&PlayerLimit=" + playerLimit : ""), boss.Key)) +
                                                            PageUtility.CreateTableColumn(topDPS.Item1) +
                                                            PageUtility.CreateTableColumn(topHPS.Item1) +
                                                            PageUtility.CreateTableColumn(fastestKill.Item1) +
                                                            PageUtility.CreateTableColumn(killCount.ToString()));
                }
            }
            m_TableBodyHTML = new MvcHtmlString(tableBody);
        }
 private void SetSelectedMonth()
 {
     PageUtility.SetSelectedValue(CCExpiresMonth, CCPaymentMethodModel.CCMonth);
 }
    public override void Initialize()
    {
        PanelError.Visible = false;

        if (this.CCPaymentMethodModel == null)
        {
            return;
        }

        PopulateMonth();
        PopulateYear();

        PanelError.Visible = false;

        this.CCNameOnCard.Text = string.Empty;
        this.CCExpiresMonth.ClearSelection();
        this.CCExpiresYear.ClearSelection();
        this.CCNumber.Text          = string.Empty;
        this.CCSecurityCode.Text    = string.Empty;
        this.CCIssueNumber.Text     = string.Empty;
        this.HFCreditCardType.Value = string.Empty;

        string javascript = String.Format("javascript:setCreditCardType(event,'{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}');",
                                          this.HFCreditCardType.ClientID,
                                          this.ImageCardTypeVisa.ClientID,
                                          this.ImageCardTypeMastercard.ClientID,
                                          this.ImageCardTypeDiscover.ClientID,
                                          this.ImageCardTypeAmex.ClientID,
                                          this.ImageCardTypeSolo.ClientID,
                                          this.ImageCardTypeMaestro.ClientID,
                                          this.CCIssueNumber.ClientID,
                                          this.CCSecurityCode.ClientID,
                                          this.CCNumber.ClientID);

        this.CCNumber.Attributes.Add("onkeydown", "javascript:captureKeyPress(event);");
        this.CCNumber.Attributes.Add("onkeyup", javascript);        //IE7/8 does not support oninput

        SetCardTypeImageOpacity();

        if (!PageUtility.IsAsyncPostBackForControl(this, ConfigurationProvider.DefaultProvider.ScriptManagerId))
        {
            PanelChooseWalletOrNewCard.Visible = false;

            AspDotNetStorefrontGateways.Processors.AuthorizeNet authorizeNet = new AspDotNetStorefrontGateways.Processors.AuthorizeNet();
            if (authorizeNet.IsCimEnabled)
            {
                if (this.Model.AccountModel.IsRegistered &&
                    GatewayAuthorizeNet.DataUtility.GetPaymentProfiles(Int32.Parse(this.Model.AccountModel.AccountId), this.Model.AccountModel.Email).Any())
                {
                    PanelChooseWalletOrNewCard.Visible = true;

                    PanelWallet.Visible        = WalletSelected;
                    PanelCreditDetails.Visible = !WalletSelected;

                    RadioButtonNewCard.Checked = !WalletSelected;
                    RadioButtonWallet.Checked  = WalletSelected;
                }
                else
                {
                    PanelCreditDetails.Visible = true;
                    RadioButtonNewCard.Checked = true;
                    PanelSelectWallet.Visible  = false;
                    RadioButtonWallet.Checked  = false;
                }
            }
        }
    }
Пример #6
0
        private static string ParseImpl(XmlNode node, PageInfo pageInfo, ContextInfo contextInfo, string channelIndex, string channelName, string groupChannel, string groupChannelNot, bool isShowChildren, string styleName, string menuWidth, string menuHeight, string xPosition, string yPosition, string childMenuDisplay, string childMenuWidth, string childMenuHeight, string target)
        {
            string parsedContent;

            var channelId = StlCacheManager.NodeId.GetNodeIdByChannelIdOrChannelIndexOrChannelName(pageInfo.PublishmentSystemId, contextInfo.ChannelId, channelIndex, channelName);
            var nodeInfo  = NodeManager.GetNodeInfo(pageInfo.PublishmentSystemId, channelId);

            var innerHtml = nodeInfo.NodeName.Trim();

            if (!string.IsNullOrEmpty(node.InnerXml))
            {
                var innerBuilder = new StringBuilder(node.InnerXml);
                StlParserManager.ParseInnerContent(innerBuilder, pageInfo, contextInfo);
                innerHtml = innerBuilder.ToString();
            }

            var nodeInfoArrayList = new ArrayList();//需要显示的栏目列表

            var childNodeIdList = DataProvider.NodeDao.GetNodeIdListByScopeType(nodeInfo, EScopeType.Children, groupChannel, groupChannelNot);

            if (childNodeIdList != null && childNodeIdList.Count > 0)
            {
                foreach (int childNodeId in childNodeIdList)
                {
                    var theNodeInfo = NodeManager.GetNodeInfo(pageInfo.PublishmentSystemId, childNodeId);
                    nodeInfoArrayList.Add(theNodeInfo);
                }
            }

            if (nodeInfoArrayList.Count == 0)
            {
                parsedContent = innerHtml;
            }
            else
            {
                var menuDisplayId         = DataProvider.MenuDisplayDao.GetMenuDisplayIdByName(pageInfo.PublishmentSystemId, styleName);
                var menuDisplayInfo       = menuDisplayId == 0 ? DataProvider.MenuDisplayDao.GetDefaultMenuDisplayInfo(pageInfo.PublishmentSystemId) : DataProvider.MenuDisplayDao.GetMenuDisplayInfo(menuDisplayId);
                var level2MenuDisplayInfo = menuDisplayInfo;
                if (isShowChildren && !string.IsNullOrEmpty(childMenuDisplay))
                {
                    var childMenuDisplayId = DataProvider.MenuDisplayDao.GetMenuDisplayIdByName(pageInfo.PublishmentSystemId, childMenuDisplay);
                    level2MenuDisplayInfo = childMenuDisplayId == 0 ? DataProvider.MenuDisplayDao.GetDefaultMenuDisplayInfo(pageInfo.PublishmentSystemId) : DataProvider.MenuDisplayDao.GetMenuDisplayInfo(childMenuDisplayId);
                }

                if (string.IsNullOrEmpty(menuWidth))
                {
                    menuWidth = menuDisplayInfo.MenuWidth.ToString();
                }
                if (string.IsNullOrEmpty(menuHeight))
                {
                    menuHeight = menuDisplayInfo.MenuItemHeight.ToString();
                }
                if (string.IsNullOrEmpty(xPosition))
                {
                    xPosition = menuDisplayInfo.XPosition;
                }
                if (string.IsNullOrEmpty(yPosition))
                {
                    yPosition = menuDisplayInfo.YPosition;
                }
                if (string.IsNullOrEmpty(childMenuWidth))
                {
                    childMenuWidth = level2MenuDisplayInfo.MenuWidth.ToString();
                }
                if (string.IsNullOrEmpty(childMenuHeight))
                {
                    childMenuHeight = level2MenuDisplayInfo.MenuItemHeight.ToString();
                }

                var createMenuString = string.Empty;

                var menuId = pageInfo.UniqueId;

                parsedContent =
                    $@"<span name=""mm_link_{menuId}"" id=""mm_link_{menuId}"" onmouseover=""MM_showMenu(window.mm_menu_{menuId},{xPosition},{yPosition},null,'mm_link_{menuId}');"" onmouseout=""MM_startTimeout();"">{innerHtml}</span>";

                var menuBuilder       = new StringBuilder();
                var level2MenuBuilder = new StringBuilder();


                foreach (NodeInfo theNodeInfo in nodeInfoArrayList)
                {
                    var isLevel2Exist = false;
                    var level2MenuId  = 0;

                    if (isShowChildren)
                    {
                        var level2NodeInfoArrayList = new ArrayList();

                        var level2NodeIdList = DataProvider.NodeDao.GetNodeIdListByScopeType(theNodeInfo, EScopeType.Children, groupChannel, groupChannelNot);
                        if (level2NodeIdList != null && level2NodeIdList.Count > 0)
                        {
                            foreach (int level2NodeId in level2NodeIdList)
                            {
                                var level2NodeInfo = NodeManager.GetNodeInfo(pageInfo.PublishmentSystemId, level2NodeId);
                                level2NodeInfoArrayList.Add(level2NodeInfo);
                            }

                            if (level2NodeInfoArrayList.Count > 0)
                            {
                                isLevel2Exist = true;
                                var level2ChildMenuBuilder = new StringBuilder();
                                level2MenuId = pageInfo.UniqueId;

                                foreach (NodeInfo level2NodeInfo in level2NodeInfoArrayList)
                                {
                                    var level2NodeUrl = PageUtility.GetChannelUrl(pageInfo.PublishmentSystemInfo, level2NodeInfo);
                                    if (PageUtils.UnclickedUrl.Equals(level2NodeUrl))
                                    {
                                        level2ChildMenuBuilder.Append(
                                            $@"  mm_menu_{level2MenuId}.addMenuItem(""{level2NodeInfo.NodeName.Trim()}"", ""location='{level2NodeUrl}'"");");
                                    }
                                    else
                                    {
                                        if (!string.IsNullOrEmpty(target))
                                        {
                                            if (target.ToLower().Equals("_blank"))
                                            {
                                                level2ChildMenuBuilder.Append(
                                                    $@"  mm_menu_{level2MenuId}.addMenuItem(""{level2NodeInfo.NodeName
                                                        .Trim()}"", ""window.open('{level2NodeUrl}', '_blank');"");");
                                            }
                                            else
                                            {
                                                level2ChildMenuBuilder.Append(
                                                    $@"  mm_menu_{level2MenuId}.addMenuItem(""{level2NodeInfo.NodeName
                                                        .Trim()}"", ""location='{level2NodeUrl}', '{target}'"");");
                                            }
                                        }
                                        else
                                        {
                                            level2ChildMenuBuilder.Append(
                                                $@"  mm_menu_{level2MenuId}.addMenuItem(""{level2NodeInfo.NodeName.Trim()}"", ""location='{level2NodeUrl}'"");");
                                        }
                                    }
                                }

                                string level2CreateMenuString = $@"
  window.mm_menu_{level2MenuId} = new Menu('{theNodeInfo.NodeName.Trim()}',{childMenuWidth},{childMenuHeight},'{level2MenuDisplayInfo
                                    .FontFamily}',{level2MenuDisplayInfo.FontSize},'{level2MenuDisplayInfo.FontColor}','{level2MenuDisplayInfo
                                    .FontColorHilite}','{level2MenuDisplayInfo.MenuItemBgColor}','{level2MenuDisplayInfo
                                    .MenuHiliteBgColor}','{level2MenuDisplayInfo.MenuItemHAlign}','{level2MenuDisplayInfo
                                    .MenuItemVAlign}',{level2MenuDisplayInfo.MenuItemPadding},{level2MenuDisplayInfo
                                    .MenuItemSpacing},{level2MenuDisplayInfo.HideTimeout},-5,7,true,{level2MenuDisplayInfo
                                    .MenuBgOpaque},{level2MenuDisplayInfo.Vertical},{level2MenuDisplayInfo
                                    .MenuItemIndent},true,true);
  {level2ChildMenuBuilder}
  mm_menu_{level2MenuId}.fontWeight='{level2MenuDisplayInfo.FontWeight}';
  mm_menu_{level2MenuId}.fontStyle='{level2MenuDisplayInfo.FontStyle}';
  mm_menu_{level2MenuId}.hideOnMouseOut={level2MenuDisplayInfo.HideOnMouseOut};
  mm_menu_{level2MenuId}.bgColor='{level2MenuDisplayInfo.BgColor}';
  mm_menu_{level2MenuId}.menuBorder={level2MenuDisplayInfo.MenuBorder};
  mm_menu_{level2MenuId}.menuLiteBgColor='{level2MenuDisplayInfo.MenuLiteBgColor}';
  mm_menu_{level2MenuId}.menuBorderBgColor='{level2MenuDisplayInfo.MenuBorderBgColor}';
";
                                level2MenuBuilder.Append(level2CreateMenuString);
                            }
                        }
                    }

                    string menuName;
                    if (isLevel2Exist)
                    {
                        menuName = "mm_menu_" + level2MenuId;
                    }
                    else
                    {
                        menuName = "\"" + theNodeInfo.NodeName.Trim() + "\"";
                    }

                    var nodeUrl = PageUtility.GetChannelUrl(pageInfo.PublishmentSystemInfo, theNodeInfo);
                    if (PageUtils.UnclickedUrl.Equals(nodeUrl))
                    {
                        menuBuilder.Append($@"  mm_menu_{menuId}.addMenuItem({menuName}, ""location='{nodeUrl}'"");");
                    }
                    else
                    {
                        if (!string.IsNullOrEmpty(target))
                        {
                            menuBuilder.Append(
                                target.ToLower().Equals("_blank")
                                    ? $@"  mm_menu_{menuId}.addMenuItem({menuName}, ""window.open('{nodeUrl}', '_blank');"");"
                                    : $@"  mm_menu_{menuId}.addMenuItem({menuName}, ""location='{nodeUrl}', '{target}'"");");
                        }
                        else
                        {
                            menuBuilder.Append($@"  mm_menu_{menuId}.addMenuItem({menuName}, ""location='{nodeUrl}'"");");
                        }
                    }
                }

                var childMenuIcon = string.Empty;
                if (!string.IsNullOrEmpty(menuDisplayInfo.ChildMenuIcon))
                {
                    childMenuIcon = PageUtility.ParseNavigationUrl(pageInfo.PublishmentSystemInfo, menuDisplayInfo.ChildMenuIcon);
                }
                createMenuString += $@"
  if (window.mm_menu_{menuId}) return;
  {level2MenuBuilder}
  window.mm_menu_{menuId} = new Menu('root',{menuWidth},{menuHeight},'{menuDisplayInfo.FontFamily}',{menuDisplayInfo
                    .FontSize},'{menuDisplayInfo.FontColor}','{menuDisplayInfo.FontColorHilite}','{menuDisplayInfo
                    .MenuItemBgColor}','{menuDisplayInfo.MenuHiliteBgColor}','{menuDisplayInfo.MenuItemHAlign}','{menuDisplayInfo
                    .MenuItemVAlign}',{menuDisplayInfo.MenuItemPadding},{menuDisplayInfo.MenuItemSpacing},{menuDisplayInfo
                    .HideTimeout},-5,7,true,{menuDisplayInfo.MenuBgOpaque},{menuDisplayInfo.Vertical},{menuDisplayInfo
                    .MenuItemIndent},true,true);
  {menuBuilder}
  mm_menu_{menuId}.fontWeight='{menuDisplayInfo.FontWeight}';
  mm_menu_{menuId}.fontStyle='{menuDisplayInfo.FontStyle}';
  mm_menu_{menuId}.hideOnMouseOut={menuDisplayInfo.HideOnMouseOut};
  mm_menu_{menuId}.bgColor='{menuDisplayInfo.BgColor}';
  mm_menu_{menuId}.menuBorder={menuDisplayInfo.MenuBorder};
  mm_menu_{menuId}.menuLiteBgColor='{menuDisplayInfo.MenuLiteBgColor}';
  mm_menu_{menuId}.menuBorderBgColor='{menuDisplayInfo.MenuBorderBgColor}';
  mm_menu_{menuId}.childMenuIcon = ""{childMenuIcon}"";

//NEXT
";

                var scriptBuilder = new StringBuilder();

                string functionHead =
                    $@"<script src=""{SiteFilesAssets.GetUrl(pageInfo.ApiUrl, SiteFilesAssets.MmMenu.Js)}""></script>
<script>
//HEAD
function siteserverLoadMenus() {{";
                const string functionFoot = @"
//FOOT
}
</script>
<script>siteserverLoadMenus();writeMenus();</script>";
                //取得已经保存的js
                var existScript = string.Empty;
                if (pageInfo.IsPageScriptsExists(PageInfo.JsAcMenuScripts, true))
                {
                    existScript = pageInfo.GetPageScripts(PageInfo.JsAcMenuScripts, true);
                }
                if (string.IsNullOrEmpty(existScript) || existScript.IndexOf("//HEAD", StringComparison.Ordinal) < 0)
                {
                    scriptBuilder.Append(functionHead);
                }
                scriptBuilder.Append(createMenuString);
                //scriptBuilder.Append(writeMenuString);
                if (string.IsNullOrEmpty(existScript) || existScript.IndexOf("//FOOT", StringComparison.Ordinal) < 0)
                {
                    scriptBuilder.Append(functionFoot);
                }
                if (!string.IsNullOrEmpty(existScript) && existScript.IndexOf("//NEXT", StringComparison.Ordinal) >= 0)
                {
                    existScript = existScript.Replace("//NEXT", scriptBuilder.ToString());
                    pageInfo.SetPageScripts(PageInfo.JsAcMenuScripts, existScript, true);
                }
                else
                {
                    pageInfo.SetPageScripts(PageInfo.JsAcMenuScripts, scriptBuilder.ToString(), true);
                }
            }

            return(parsedContent);
        }
Пример #7
0
        internal static string Parse(string stlEntity, PageInfo pageInfo, ContextInfo contextInfo)
        {
            var parsedContent = string.Empty;

            try
            {
                var entityName    = StlParserUtility.GetNameFromEntity(stlEntity);
                var channelIndex  = StlParserUtility.GetValueFromEntity(stlEntity);
                var attributeName = entityName.Substring(9, entityName.Length - 10);

                var upLevel   = 0;
                var topLevel  = -1;
                var channelId = contextInfo.ChannelId;
                if (!string.IsNullOrEmpty(channelIndex))
                {
                    //channelId = DataProvider.ChannelDao.GetIdByIndexName(pageInfo.SiteId, channelIndex);
                    channelId = Node.GetIdByIndexName(pageInfo.SiteId, channelIndex);
                    if (channelId == 0)
                    {
                        channelId = contextInfo.ChannelId;
                    }
                }

                if (attributeName.ToLower().StartsWith("up") && attributeName.IndexOf(".", StringComparison.Ordinal) != -1)
                {
                    if (attributeName.ToLower().StartsWith("up."))
                    {
                        upLevel = 1;
                    }
                    else
                    {
                        var upLevelStr = attributeName.Substring(2, attributeName.IndexOf(".", StringComparison.Ordinal) - 2);
                        upLevel = TranslateUtils.ToInt(upLevelStr);
                    }
                    topLevel      = -1;
                    attributeName = attributeName.Substring(attributeName.IndexOf(".", StringComparison.Ordinal) + 1);
                }
                else if (attributeName.ToLower().StartsWith("top") && attributeName.IndexOf(".", StringComparison.Ordinal) != -1)
                {
                    if (attributeName.ToLower().StartsWith("top."))
                    {
                        topLevel = 1;
                    }
                    else
                    {
                        var topLevelStr = attributeName.Substring(3, attributeName.IndexOf(".", StringComparison.Ordinal) - 3);
                        topLevel = TranslateUtils.ToInt(topLevelStr);
                    }
                    upLevel       = 0;
                    attributeName = attributeName.Substring(attributeName.IndexOf(".", StringComparison.Ordinal) + 1);
                }

                var nodeInfo = ChannelManager.GetChannelInfo(pageInfo.SiteId, StlDataUtility.GetChannelIdByLevel(pageInfo.SiteId, channelId, upLevel, topLevel));

                if (StringUtils.EqualsIgnoreCase(ChannelId, attributeName))//栏目ID
                {
                    parsedContent = nodeInfo.Id.ToString();
                }
                else if (StringUtils.EqualsIgnoreCase(Title, attributeName) || StringUtils.EqualsIgnoreCase(ChannelName, attributeName))//栏目名称
                {
                    parsedContent = nodeInfo.ChannelName;
                }
                else if (StringUtils.EqualsIgnoreCase(ChannelIndex, attributeName))//栏目索引
                {
                    parsedContent = nodeInfo.IndexName;
                }
                else if (StringUtils.EqualsIgnoreCase(Content, attributeName))//栏目正文
                {
                    parsedContent = ContentUtility.TextEditorContentDecode(pageInfo.SiteInfo, nodeInfo.Content, pageInfo.IsLocal);
                }
                else if (StringUtils.EqualsIgnoreCase(NavigationUrl, attributeName))//栏目链接地址
                {
                    parsedContent = PageUtility.GetChannelUrl(pageInfo.SiteInfo, nodeInfo, pageInfo.IsLocal);
                }
                else if (StringUtils.EqualsIgnoreCase(ImageUrl, attributeName))//栏目图片地址
                {
                    parsedContent = nodeInfo.ImageUrl;

                    if (!string.IsNullOrEmpty(parsedContent))
                    {
                        parsedContent = PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, parsedContent, pageInfo.IsLocal);
                    }
                }
                else if (StringUtils.EqualsIgnoreCase(AddDate, attributeName))//栏目添加日期
                {
                    parsedContent = DateUtils.Format(nodeInfo.AddDate, string.Empty);
                }
                else if (StringUtils.EqualsIgnoreCase(DirectoryName, attributeName))//生成文件夹名称
                {
                    parsedContent = PathUtils.GetDirectoryName(nodeInfo.FilePath, true);
                }
                else if (StringUtils.EqualsIgnoreCase(Group, attributeName))//栏目组别
                {
                    parsedContent = nodeInfo.GroupNameCollection;
                }
                else if (StringUtils.StartsWithIgnoreCase(attributeName, StlParserUtility.ItemIndex) && contextInfo.ItemContainer?.ChannelItem != null)
                {
                    parsedContent = StlParserUtility.ParseItemIndex(contextInfo.ItemContainer.ChannelItem.ItemIndex, attributeName, contextInfo).ToString();
                }
                else if (StringUtils.EqualsIgnoreCase(ChannelAttribute.Keywords, attributeName))//栏目组别
                {
                    parsedContent = nodeInfo.Keywords;
                }
                else if (StringUtils.EqualsIgnoreCase(ChannelAttribute.Description, attributeName))//栏目组别
                {
                    parsedContent = nodeInfo.Description;
                }
                else
                {
                    //var styleInfo = TableStyleManager.GetTableStyleInfo(ETableStyle.Channel, DataProvider.ChannelDao.TableName, attributeName, RelatedIdentities.GetChannelRelatedIdentities(pageInfo.SiteId, nodeInfo.ChannelId));
                    //parsedContent = InputParserUtility.GetContentByTableStyle(parsedContent, ",", pageInfo.SiteInfo, ETableStyle.Channel, styleInfo, string.Empty, null, string.Empty, true);

                    if (nodeInfo.Additional.Count > 0)
                    {
                        var styleInfo = TableStyleManager.GetTableStyleInfo(DataProvider.ChannelDao.TableName, attributeName, RelatedIdentities.GetChannelRelatedIdentities(pageInfo.SiteId, nodeInfo.Id));
                        // 如果 styleInfo.TableStyleId <= 0,表示此字段已经被删除了,不需要再显示值了 ekun008
                        if (styleInfo.Id > 0)
                        {
                            parsedContent = GetValue(attributeName, nodeInfo.Additional, false, styleInfo.DefaultValue);
                            if (!string.IsNullOrEmpty(parsedContent))
                            {
                                if (InputTypeUtils.EqualsAny(styleInfo.InputType, InputType.Image, InputType.File))
                                {
                                    parsedContent = PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, parsedContent, pageInfo.IsLocal);
                                }
                                else
                                {
                                    parsedContent = InputParserUtility.GetContentByTableStyle(parsedContent, null, pageInfo.SiteInfo, styleInfo, string.Empty, null, string.Empty, true);
                                }
                            }
                        }
                    }
                }
            }
            catch
            {
                // ignored
            }

            return(parsedContent);
        }
Пример #8
0
        private static string ParseImpl(PageInfo pageInfo, ContextInfo contextInfo, HtmlSelect selectControl, bool isChannel, string channelIndex, string channelName, int upLevel, int topLevel, string scopeTypeString, string groupChannel, string groupChannelNot, string groupContent, string groupContentNot, string tags, string order, int totalNum, int titleWordNum, string where, string queryString, bool isTop, bool isTopExists, bool isRecommend, bool isRecommendExists, bool isHot, bool isHotExists, bool isColor, bool isColorExists, string displayTitle, bool openWin)
        {
            EScopeType scopeType;

            if (!string.IsNullOrEmpty(scopeTypeString))
            {
                scopeType = EScopeTypeUtils.GetEnumType(scopeTypeString);
            }
            else
            {
                scopeType = isChannel ? EScopeType.Children : EScopeType.Self;
            }

            var orderByString = isChannel ? StlDataUtility.GetChannelOrderByString(pageInfo.SiteId, order, ETaxisType.OrderByTaxis) : StlDataUtility.GetContentOrderByString(pageInfo.SiteId, order, ETaxisType.OrderByTaxisDesc);

            var channelId = StlDataUtility.GetChannelIdByLevel(pageInfo.SiteId, contextInfo.ChannelId, upLevel, topLevel);

            channelId = StlDataUtility.GetChannelIdByChannelIdOrChannelIndexOrChannelName(pageInfo.SiteId, channelId, channelIndex, channelName);

            var channel = ChannelManager.GetChannelInfo(pageInfo.SiteId, channelId);

            var uniqueId = "Select_" + pageInfo.UniqueId;

            selectControl.ID = uniqueId;

            string scriptHtml;

            if (openWin)
            {
                scriptHtml = $@"
<script language=""javascript"" type=""text/javascript"">
<!--
function {uniqueId}_jumpMenu(targ,selObj)
{"{"} //v3.0
window.open(selObj.options[selObj.selectedIndex].value);
selObj.selectedIndex=0;
{"}"}
//-->
</script>";
                selectControl.Attributes.Add("onChange", $"{uniqueId}_jumpMenu('parent',this)");
            }
            else
            {
                scriptHtml =
                    $"<script language=\"JavaScript\">function {uniqueId}_jumpMenu(targ,selObj,restore){{eval(targ+\".location=\'\"+selObj.options[selObj.selectedIndex].value+\"\'\");if (restore) selObj.selectedIndex=0;}}</script>";
                selectControl.Attributes.Add("onChange", $"{uniqueId}_jumpMenu('self',this,0)");
            }
            if (!string.IsNullOrEmpty(displayTitle))
            {
                var listitem = new ListItem(displayTitle, PageUtils.UnclickedUrl)
                {
                    Selected = true
                };
                selectControl.Items.Add(listitem);
            }

            if (isChannel)
            {
                var channelIdList = StlDataUtility.GetChannelIdList(pageInfo.SiteId, channel.Id, orderByString, scopeType, groupChannel, groupChannelNot, false, false, totalNum, where);

                if (channelIdList != null && channelIdList.Count > 0)
                {
                    foreach (var channelIdInSelect in channelIdList)
                    {
                        var nodeInfo = ChannelManager.GetChannelInfo(pageInfo.SiteId, channelIdInSelect);

                        if (nodeInfo != null)
                        {
                            var title = StringUtils.MaxLengthText(nodeInfo.ChannelName, titleWordNum);
                            var url   = PageUtility.GetChannelUrl(pageInfo.SiteInfo, nodeInfo, pageInfo.IsLocal);
                            if (!string.IsNullOrEmpty(queryString))
                            {
                                url = PageUtils.AddQueryString(url, queryString);
                            }
                            var listitem = new ListItem(title, url);
                            selectControl.Items.Add(listitem);
                        }
                    }
                }
            }
            else
            {
                var minContentInfoList = StlDataUtility.GetMinContentInfoList(pageInfo.SiteInfo, channelId, contextInfo.ContentId, groupContent, groupContentNot, tags, false, false, false, false, false, false, false, 1, totalNum, orderByString, isTopExists, isTop, isRecommendExists, isRecommend, isHotExists, isHot, isColorExists, isColor, where, scopeType, groupChannel, groupChannelNot, null);

                if (minContentInfoList != null)
                {
                    foreach (var minContentInfo in minContentInfoList)
                    {
                        var contentInfo = ContentManager.GetContentInfo(pageInfo.SiteInfo, minContentInfo.ChannelId, minContentInfo.Id);
                        var title       = StringUtils.MaxLengthText(contentInfo.Title, titleWordNum);
                        var url         = PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo, false);
                        if (!string.IsNullOrEmpty(queryString))
                        {
                            url = PageUtils.AddQueryString(url, queryString);
                        }
                        selectControl.Items.Add(new ListItem(title, url));
                    }
                    //foreach (var dataItem in dataSource)
                    //{
                    //    var contentInfo = new BackgroundContentInfo(dataItem);
                    //    if (contentInfo != null)
                    //    {
                    //        var title = StringUtils.MaxLengthText(contentInfo.Title, titleWordNum);
                    //        var url = PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo);
                    //        if (!string.IsNullOrEmpty(queryString))
                    //        {
                    //            url = PageUtils.AddQueryString(url, queryString);
                    //        }
                    //        var listitem = new ListItem(title, url);
                    //        selectControl.Items.Add(listitem);
                    //    }
                    //}
                }
            }

            return(scriptHtml + ControlUtils.GetControlRenderHtml(selectControl));
        }
Пример #9
0
    /// <summary>
    /// 开始UDBSSO功能
    /// </summary>
    protected void BeginUDBSSO()
    {
        StringBuilder strMsg = new StringBuilder();
        Int32         Result = ErrorDefinition.BT_IError_Result_UnknowError_Code;
        String        ErrMsg = ErrorDefinition.BT_IError_Result_UnknowError_Msg;

        try
        {
            #region 获取参数并验证

            SPID      = Request["SPID"];
            ReturnUrl = Request["ReturnUrl"] == null ? String.Empty : Request["ReturnUrl"];
            PassportLoginResponseValue = Request["PassportLoginResponse"];
            strMsg.AppendFormat("从门户过来【验证参数,DateTime:{0}】:SPID:{1},PassportLoginResponse:{2},ReturnUrl:{3}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), SPID, PassportLoginResponseValue, ReturnUrl);


            UDBKey = System.Configuration.ConfigurationManager.AppSettings["UdbKey"];

            //解析PassportLoginResponseValue
            String[] tempArray = PassportLoginResponseValue.Split('$');
            DesSsDeviceNo = tempArray[0];
            String   tempStr     = CryptographyUtil.Decrypt(tempArray[1], UDBKey);
            String[] digestArray = tempStr.Split('$');
            Result    = Convert.ToInt32(digestArray[0]);
            UDBTicket = digestArray[1];
            String timeStamp = digestArray[2];
            String digest    = digestArray[3];

            String newDigest = CryptographyUtil.ToBase64String(CryptographyUtil.Hash(Result + DesSsDeviceNo + UDBTicket + timeStamp));
            strMsg.AppendFormat(",DesSsDeviceNo:{0},Result:{1},UDBTicket{2},timeStamp:{3},digest:{4},newDigest:{5}\r\n", DesSsDeviceNo, Result, UDBTicket, timeStamp, digest, newDigest);
            if (!digest.Equals(newDigest))
            {
                //digest不吻合,失败
                strMsg.AppendFormat(",ErrMsg:{0}", "digest有误不匹配");
                Redirect("ErrMsg", "digest有误不匹配");
            }
            if (Result != 0)
            {
                //失败,则返回
                strMsg.AppendFormat(",ErrMsg:{0}", "返回Ticket失败");
                Redirect("ErrMsg", "返回Ticket失败");
            }

            #endregion

            #region 根据UDBTkcket到UDB查询用户信息

            strMsg.Append("【开始查询信息】:");

            UDBAccountInfo accountInfo = new UDBAccountInfo();

            //根据UDBTicket到UDB查询用户信息
            //Result = _UDBMBoss.AccountInfoCheck("3500000000408201", "3500000000408201", UDBTicket, UDBKey, out accountInfo, out ErrMsg);
            Result = _UDBMBoss.AccountInfoQuery("3500000000408201", "3500000000408201", UDBTicket, UDBKey, out accountInfo, out ErrMsg);
            accountInfo.SourceSPID = UDBConstDefinition.DefaultInstance.UDBSPID;
            strMsg.AppendFormat(",Result:{0},UserID:{1},UserIDType:{2},UserType:{3},PUserID:{4},Alias:{5},UserIDStatus:{6},UserIDSsStatus:{7},Description:{8},ProvinceID:{9},NumFlag:{10}\r\n",
                                Result, accountInfo.UserID, accountInfo.UserIDType, accountInfo.UserType, accountInfo.PUserID, accountInfo.Alias, accountInfo.UserIDStatus, accountInfo.UserIDSsStatus, accountInfo.Description, accountInfo.ProvinceID, accountInfo.NumFlag);
            if (Result == 0)
            {
                String CustID, OuterID, Status, CustType, CustLevel, RealName, UserName, NickName, CertificateCode, CertificateType, Sex, Email, EnterpriseID, ProvinceID, AreaID, RegistrationSource;
                //检测对应用户是否在号百系统,不在,则注册进来
                strMsg.Append("【开始注册到号百】:");
                Result = UserRegistry.getUserRegistryUDB(accountInfo, out CustID, out ErrMsg);
                strMsg.AppendFormat("Result:{0},CustID:{1}\r\n", Result, CustID);

                //注册成功
                if (Result == 0)
                {
                    Result = CustBasicInfo.getCustInfo(SPID, CustID, out ErrMsg, out OuterID, out Status, out CustType, out CustLevel, out RealName,
                                                       out UserName, out NickName, out CertificateCode, out CertificateType, out Sex, out Email, out EnterpriseID, out ProvinceID,
                                                       out AreaID, out RegistrationSource);
                    if (Result != 0)
                    {
                        strMsg.Append(",ErrMsg:客户不存在" + CustID);
                        //客户不存在
                        Redirect("ErrMsg", "客户不存在");
                    }


                    //登录tab写入cookie
                    PageUtility.SetCookie("LoginTabCookie", "UDBTab", 8760);

                    //生成Ticket
                    String ticket = CommonBizRules.CreateTicket();

                    Result = CIPTicketManager.insertCIPTicket(ticket, SPID, CustID, RealName, UserName, NickName, OuterID, "UDBTicket", accountInfo.UserID, UDBBusiness.ConvertAuthenType(accountInfo.NumFlag), out ErrMsg);
                    strMsg.AppendFormat("【生成ticket】:Result:{0},Ticket:{1},ReturnUrl:{2}", Result, ticket, ReturnUrl);
                    if (Result != 0)
                    {
                        strMsg.Append(",ErrMsg:Ticket生成失败" + ticket);
                        Redirect("ErrMsg", "Ticket生成失败");
                    }
                    strMsg.Append(",Message:生成ticket成功,返回业务系统");


                    Response.Redirect("QuickLogin1.aspx?LoginTicket=" + ticket + "&ReturnUrl=" + ReturnUrl);
                }
                else
                {
                    strMsg.Append(",ErrMsg:用户注册到号百失败");
                    Redirect("ErrMsg", "用户注册到号百失败" + ErrMsg);
                }
            }
            else if (Result == 5)
            {
                strMsg.Append(",ErrMsg:用户已删除");
                Redirect("ErrMsg", "用户已删除");
            }
            else
            {
                strMsg.Append(",ErrMsg:查询用户信息失败");
                Redirect("ErrMsg", "查询用户信息失败");
            }

            #endregion
        }
        catch (Exception ex)
        {
            strMsg.AppendFormat(",ErrMsg:{0}", ex.Message);
        }
        finally
        {
            WriteLog(strMsg.ToString());
        }
    }
Пример #10
0
        /// <summary>
        /// Populates dropdown fields with corresponding selections.
        /// </summary>
        private void BindControl()
        {
            using (ProjectTrackerContainer context = new ProjectTrackerContainer())
            {
                IDictionary <int, string> dropDownSource = new Dictionary <int, string>();

                //ddlBioStat
                //if (Page.User.IsInRole("Admin"))
                //{
                //    dropDownSource = context.BioStats
                //                    .OrderBy(b => b.Name)
                //                    .ToDictionary(c => c.Id, c => c.Name);

                //    PageUtility.BindDropDownList(ddlBiostat, dropDownSource, "--- Select All ---");
                //}
                //else
                //{
                //    var biostat = context.BioStats.FirstOrDefault(b => b.LogonId == Page.User.Identity.Name);

                //    if (biostat != null)
                //    {
                //        dropDownSource.Add(biostat.Id, biostat.Name);

                //        PageUtility.BindDropDownList(ddlBiostat, dropDownSource, null);
                //    }
                //}
                dropDownSource = context.BioStats
                                 .OrderBy(b => b.Name)
                                 .ToDictionary(c => c.Id, c => c.Name);

                PageUtility.BindDropDownList(ddlBiostat, dropDownSource, "--- Select All ---");

                dropDownSource = context.BioStats
                                 //.Where(b => b.EndDate > currentDate)
                                 .OrderBy(b => b.Name)
                                 .ToDictionary(c => c.Id, c => c.Name);

                //PageUtility.BindDropDownList(ddlBiostat, dropDownSource, "--- Select All ---");
                PageUtility.BindDropDownList(ddlMember, dropDownSource, "--- Select All ---");

                dropDownSource = context.BiostatReports
                                 .Where(b => b.ReportType == "TimeEntry")
                                 .OrderBy(b => b.Id)
                                 .ToDictionary(c => c.Id, c => c.ReportName);

                PageUtility.BindDropDownList(ddlReport, dropDownSource, "--- Select Report ---");

                int biostatId;
                Int32.TryParse(ddlBiostat.SelectedValue, out biostatId);
                if (biostatId > 0)
                {
                    dropDownSource = context.ProjectBioStats
                                     .Where(p => p.BioStats_Id == biostatId)
                                     .OrderByDescending(d => d.Project.Id)
                                     .Select(x => new { x.Project.Id, FullName = (x.Project.Id + " " + x.Project.Title).Substring(0, 99) })
                                     .Distinct()
                                     .ToDictionary(c => c.Id, c => c.FullName);
                }
                else
                {
                    dropDownSource = context.Project2
                                     .Where(p => p.Id > 0)
                                     .OrderByDescending(d => d.Id)
                                     .Select(x => new { x.Id, FullName = (x.Id + " " + x.Title).Substring(0, 99) })
                                     .ToDictionary(c => c.Id, c => c.FullName);
                }
                PageUtility.BindDropDownList(ddlProject, dropDownSource, "--- Select All ---");


                dropDownSource = context.PublishStatus
                                 .Where(p => p.Id > 0)
                                 .OrderBy(d => d.Id)
                                 .ToDictionary(c => c.Id, c => c.Name);
                PageUtility.BindDropDownList(ddlPaperStatus, dropDownSource, string.Empty);

                /*Added "Funding Source" dropdown*/
                dropDownSource = context.ProjectField
                                 .Where(p => p.IsFundingSource == true)
                                 .ToDictionary(c => c.Id, c => c.Name);
                PageUtility.BindDropDownList(ddlFundingSource, dropDownSource, string.Empty);

                dropDownSource.Clear();
                dropDownSource.Add(new KeyValuePair <int, string>(1, "Small"));
                dropDownSource.Add(new KeyValuePair <int, string>(2, "Large"));
                PageUtility.BindDropDownList(ddlServiceType, dropDownSource, "--- Select All ---");

                dropDownSource.Clear();
                for (int i = 1; i <= 10; i++)
                {
                    dropDownSource.Add(new KeyValuePair <int, string>(i, i.ToString()));
                }
                PageUtility.BindDropDownList(ddlThreshold, dropDownSource, "default");

                dropDownSource = context.JabsomAffils
                                 .Where(a => a.Type != "Other" && a.Type != "Degree" && a.Type != "Unknown" && a.Name != "Other")
                                 .OrderBy(a => a.Name)
                                 .ToDictionary(c => c.Id, c => c.Name);
                var affilsJson = dropDownSource.Select(x => new { Id = x.Key, Name = x.Value });
                textAreaAffil.Value = Newtonsoft.Json.JsonConvert.SerializeObject(affilsJson);

                dropDownSource = context.AcademicField.Where(f => f.Category == "AcademicType").OrderBy(f => f.DisplayOrder).ToDictionary(c => c.Id, c => c.Name);
                PageUtility.BindDropDownList(ddlAcademicType, dropDownSource, string.Empty);
            }
        }
Пример #11
0
    private void SetPageType()
    {
        if (PAGE_TYPE.Equals("P"))
        {
            SetMenuControl(false, false, false);

            IPrjRefID = GetRequestByInt("PRJ_REF_ID", 0);
            PRJ_TYPE  = GetRequest("PRJ_TYPE", "");

            if (IPrjRefID > 0)
            {
                PageUtility.FindByValueDropDownList(ddlPrjType, this.IPrjRefID.ToString());
            }

            Biz_Prj_Info      objPrjInfo = new Biz_Prj_Info(IPrjRefID);
            Biz_Com_Code_Info objComCode = new Biz_Com_Code_Info();

            DataSet   ds = objComCode.GetProjectType(0);
            DataRow[] dr = ds.Tables[0].Select("ETC_CODE='" + PRJ_TYPE + "'");

            //ddlPrjType.Visible = false;
            //ddlPrjName.Visible = false;
            iBtnSearch.Visible = false;

            lblPrjTypeName.Visible = true;
            lblPrjName.Visible     = true;
            ImgClose.Visible       = true;

            lblPrjName.Text     = objPrjInfo.IPrj_Name;
            lblPrjTypeName.Text = dr[0].ItemArray[3].ToString(); //CODE_NAME
            BindGanttChart(IPrjRefID);

            pnlPrjInfo.Visible   = true;
            pnlPrjSearch.Visible = false;
        }
        else
        {
            pnlPrjInfo.Visible   = false;
            pnlPrjSearch.Visible = true;
            BindGanttChart(IPrjRefID);
        }

        // 프로젝트 책임자 또는 사업구성원이 아닐경우
        Biz_Prj_Info     objPrj = new Biz_Prj_Info(this.IPrjRefID);
        Biz_Prj_Resource objRes = new Biz_Prj_Resource(this._iPrjRefID, gUserInfo.Emp_Ref_ID);

        if (!objPrj.IsOwnerEmpIDYN(gUserInfo.Emp_Ref_ID, this.IPrjRefID) ||
            (objRes == null))
        {
            _readOnlyYN = "Y";
        }
        else if (objPrj.IsOwnerEmpIDYN(gUserInfo.Emp_Ref_ID, this.IPrjRefID) && objPrj.IComplete_YN == "Y")
        {
            _readOnlyYN = "Y";
        }
        else if (this.PAGE_TYPE == "N")
        {
            _readOnlyYN = "N";
        }
        else
        {
            _readOnlyYN = "N";
        }

        Biz_Prj_Schedule objSch = new Biz_Prj_Schedule();

        lblPROCEED_RATE.Text    = objSch.GetTotalRate(this.IPrjRefID, 0).ToString();
        lblActualEDate.Text     = (objPrj.IActual_End_Date == DBNull.Value)   ? "" : Convert.ToDateTime(objPrj.IActual_End_Date).ToShortDateString();
        lblActualSDate.Text     = (objPrj.IActual_Start_Date == DBNull.Value) ? "" : Convert.ToDateTime(objPrj.IActual_Start_Date).ToShortDateString();
        lblplanEDate.Text       = (objPrj.IPlan_End_Date == DBNull.Value)     ? "" : Convert.ToDateTime(objPrj.IPlan_End_Date).ToShortDateString();
        lblplanSDate.Text       = (objPrj.IPlan_Start_Date == DBNull.Value)   ? "" : Convert.ToDateTime(objPrj.IPlan_Start_Date).ToShortDateString();
        lblOWNER_DEPT_NAME.Text = objPrj.IOwner_Dept_Name;
        lblOWNER_EMP_NAME.Text  = objPrj.IOwner_Emp_Name;

        PageUtility.FindByValueDropDownList(ddlPRIORITY, objPrj.IPriority);
        lblPRIORITY.Text = PageUtility.GetByTextDropDownList(ddlPRIORITY);

        lblTOTAL_BUDGET.Text  = objPrj.ITotal_Budget.ToString();
        lblREF_STG.Text       = objPrj.IRef_Stg;
        lblEFFECTIVENESS.Text = objPrj.IEffectiveness;
        lblRANGE.Text         = objPrj.IRange;
        lblPRJ_TYPE.Text      = PageUtility.GetByTextDropDownList(ddlPrjType);
    }
Пример #12
0
 private void SelectScopeTreeView(string nodeValue)
 {
     PageUtility.SelectTreeNodeByNodeValue(this.ScopeTreeView, nodeValue);
 }
Пример #13
0
        private void AddJavaScript()
        {
            var script = ScrudJavaScriptHelper.GetScript(this.KeyColumn, this.CustomFormUrl);

            PageUtility.ExecuteJavaScript("scrudScript", script, this.Page);
        }
Пример #14
0
 public static string GetUndoUploadServiceUrl()
 {
     return(PageUtility.ResolveUrl(Common.Helpers.ConfigurationHelper.GetConfigurationValue(configFile, "UndoUploadServiceUrl")));
 }
Пример #15
0
        private static string GenerateSummaryForInstance(VF_RDDatabase.PlayerSummary _PlayerSummary, PlayerData _Player, string _Instance, VF_RealmPlayersDatabase.WowRealm _Realm, string _GuildLimit = null)
        {
            string realmStr = RealmPlayersServer.StaticValues.ConvertRealmParam(_Realm);

            System.Text.StringBuilder page = new System.Text.StringBuilder("");

            int bossesData = 0;

            foreach (var boss in BossInformation.BossesInInstanceNoOptional[_Instance])
            {
                if (_PlayerSummary.PlayerBossStats.ContainsKey(boss) == false)
                {
                    continue;
                }

                if (bossesData == 0)
                {
                    page.Append("<table class='table'><thead><tr><th>Boss</th><th>DPS #Rank</th><th>HPS #Rank</th><th>Average DPS</th><th>Average HPS</th><th>Top DPS</th><th>Top HPS</th><th>Kill Count</th></thead><tbody>");
                }
                ++bossesData;

                List <VF_RDDatabase.PlayerFightData> dpsSamplesUsed = null;
                List <VF_RDDatabase.PlayerFightData> hpsSamplesUsed = null;

                var playerBossData = _PlayerSummary.PlayerBossStats[boss];
                if (playerBossData.m_PlayerFightDatas.Count < 3 || (_Instance != "Molten Core" && playerBossData.m_PlayerFightDatas.Count < 4))
                {
                    return("");
                }
                playerBossData.GetAverageDPS(5, 6, 3, out dpsSamplesUsed);
                playerBossData.GetAverageEffectiveHPS(5, 6, 3, out hpsSamplesUsed);

                float bwlBossDPS          = 0.0f;
                float bwlBossHPS          = 0.0f;
                var   bwlBossDataSet      = AverageOverview.GenerateAverageDataSet(boss, null, null, _Realm, _GuildLimit);
                var   bwlBossDPSRank      = GetDPSRank(bwlBossDataSet, _PlayerSummary.Name, out bwlBossDPS);
                var   bwlBossDPSRankClass = GetDPSRank(bwlBossDataSet, _PlayerSummary.Name, out bwlBossDPS, (PlayerData _Character) => { return(_Character.Character.Class == _Player.Character.Class); });
                var   bwlBossHPSRank      = GetHPSRank(bwlBossDataSet, _PlayerSummary.Name, out bwlBossHPS);
                var   bwlBossHPSRankClass = GetHPSRank(bwlBossDataSet, _PlayerSummary.Name, out bwlBossHPS, (PlayerData _Character) => { return(_Character.Character.Class == _Player.Character.Class); });
                //page += "<h5>" + boss + "</h5>";
                //page += "DPS Rank: #" + bwlBossDPSRank + " with DPS " + bwlBossDPS.ToStringDot("0.0");

                string dpsSamplesStr = "";

                if (dpsSamplesUsed.Count > 0)
                {
                    dpsSamplesStr = " (";

                    for (int i = 0; i < dpsSamplesUsed.Count; ++i)
                    {
                        dpsSamplesStr += PageUtility.CreateLink_FightOverview(dpsSamplesUsed[i].CacheBossFight, dpsSamplesUsed[i].DPS.ToStringDot("0.0")) + ", ";
                    }
                    dpsSamplesStr  = dpsSamplesStr.Substring(0, dpsSamplesStr.Length - 2);
                    dpsSamplesStr += ")";
                }

                string hpsSamplesStr = "";
                if (hpsSamplesUsed.Count > 0)
                {
                    hpsSamplesStr = " (";

                    for (int i = 0; i < hpsSamplesUsed.Count; ++i)
                    {
                        hpsSamplesStr += PageUtility.CreateLink_FightOverview(hpsSamplesUsed[i].CacheBossFight, hpsSamplesUsed[i].EffectiveHPS.ToStringDot("0.0")) + ", ";
                    }
                    hpsSamplesStr  = hpsSamplesStr.Substring(0, hpsSamplesStr.Length - 2);
                    hpsSamplesStr += ")";
                }

                page.Append("<tr>");
                page.Append("<td>" + boss + "</td>");
                if (bwlBossDPS != 0.0f || bwlBossHPS != 0.0f)
                {
                    page.Append("<td>" + PageUtility.CreateLink("AverageOverview.aspx?Boss=" + boss + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name, PageUtility.CreateColorString("#" + bwlBossDPSRank, RPColor.Red)) + " / ");
                    page.Append(PageUtility.CreateLink("AverageOverview.aspx?Boss=" + boss + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name + "&ClassLimit=" + ClassControl.GetClassLimitStr(_Player.Character.Class), PageUtility.CreateColorString("#" + bwlBossDPSRankClass, _Player.Character.Class)) + "</td>");
                    page.Append("<td>" + PageUtility.CreateLink("AverageOverview.aspx?Boss=" + boss + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name, PageUtility.CreateColorString("#" + bwlBossHPSRank, RPColor.Green)) + " / ");
                    page.Append(PageUtility.CreateLink("AverageOverview.aspx?Boss=" + boss + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name + "&ClassLimit=" + ClassControl.GetClassLimitStr(_Player.Character.Class), PageUtility.CreateColorString("#" + bwlBossHPSRankClass, _Player.Character.Class)) + "</td>");
                }
                else
                {
                    page.Append("<td>#??(inactive)</td>");
                    page.Append("<td>#??(inactive)</td>");
                }
                page.Append("<td>" + PageUtility.CreateLink("AverageOverview.aspx?Boss=" + boss + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name, PageUtility.CreateColorString(bwlBossDPS.ToStringDot("0.0"), RPColor.Red))
                            + dpsSamplesStr
                            + "</td>");
                page.Append("<td>" + PageUtility.CreateLink("AverageOverview.aspx?Boss=" + boss + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name, PageUtility.CreateColorString(bwlBossHPS.ToStringDot("0.0"), RPColor.Green))
                            + hpsSamplesStr
                            + "</td>");
                page.Append("<td>" + PageUtility.CreateLink("FightOverallOverview.aspx?FightName=" + boss + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name, "view") + "</td>");
                page.Append("<td>" + PageUtility.CreateLink("FightOverallOverview.aspx?FightName=" + boss + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name, "view") + "</td>");
                page.Append("<td>" + _PlayerSummary.AttendedFights.Count((_Value) => _Value.BossName == boss) + "</td>");
                page.Append("</tr>");
            }
            if (bossesData == 0)
            {
                return("");
            }
            else if (bossesData > 0)
            {
                page.Append("</tbody></table>");
            }

            string averagePageData = "<p><h3>Active Ranking in " + _Instance + "</h3>";

            {
                var bwlDataSet = AverageOverview.GenerateAverageDataSet(_Instance, null, null, _Realm, _GuildLimit);

                float  bwlDPS          = 0.0f;
                string bwlDPSRank      = GetDPSRank(bwlDataSet, _PlayerSummary.Name, out bwlDPS).ToString();
                string bwlDPSRankClass = GetDPSRank(bwlDataSet, _PlayerSummary.Name, out bwlDPS, (PlayerData _Character) => { return(_Character.Character.Class == _Player.Character.Class); }).ToString();


                float  bwlHPS          = 0.0f;
                string bwlHPSRank      = GetHPSRank(bwlDataSet, _PlayerSummary.Name, out bwlHPS).ToString();
                string bwlHPSRankClass = GetHPSRank(bwlDataSet, _PlayerSummary.Name, out bwlHPS, (PlayerData _Character) => { return(_Character.Character.Class == _Player.Character.Class); }).ToString();

                if (bwlDPS != 0.0f || bwlHPS != 0.0f)
                {
                    string bossIdentifierStr = BossesControl.MC_ALL;
                    if (_Instance == "Molten Core")
                    {
                        bossIdentifierStr = BossesControl.MC_ALL;
                    }
                    else if (_Instance == "Blackwing Lair")
                    {
                        bossIdentifierStr = BossesControl.BWL_ALL;
                    }
                    else if (_Instance == "Ahn'Qiraj Temple")
                    {
                        bossIdentifierStr = BossesControl.AQ40_ALL;
                    }
                    else if (_Instance == "Naxxramas - All Quarters")
                    {
                        bossIdentifierStr = BossesControl.NAXX_ALL_QUARTERS;
                    }

                    bwlDPSRank = PageUtility.CreateLink("Ranking.aspx?Bosses=" + bossIdentifierStr + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name, PageUtility.CreateColorString("#" + bwlDPSRank, RPColor.Red));
                    bwlHPSRank = PageUtility.CreateLink("Ranking.aspx?Bosses=" + bossIdentifierStr + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name, PageUtility.CreateColorString("#" + bwlHPSRank, RPColor.Green));

                    bwlDPSRankClass = PageUtility.CreateLink("Ranking.aspx?Bosses=" + bossIdentifierStr + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name + "&ClassLimit=" + ClassControl.GetClassLimitStr(_Player.Character.Class)
                                                             , PageUtility.CreateColorString("#" + bwlDPSRankClass, _Player.Character.Class));
                    bwlHPSRankClass = PageUtility.CreateLink("Ranking.aspx?Bosses=" + bossIdentifierStr + "&realm=" + realmStr + "&andplayer=" + _PlayerSummary.Name + "&ClassLimit=" + ClassControl.GetClassLimitStr(_Player.Character.Class)
                                                             , PageUtility.CreateColorString("#" + bwlHPSRankClass, _Player.Character.Class));


                    averagePageData += "<h5>DPS Rank: " + bwlDPSRank + " / " + bwlDPSRankClass + " with DPS " + bwlDPS.ToStringDot("0.0") + "</h5>";
                    averagePageData += "<h5>HPS Rank: " + bwlHPSRank + " / " + bwlHPSRankClass + " with HPS " + bwlHPS.ToStringDot("0.0") + "</h5>";
                }
                else
                {
                    averagePageData += "<h5>DPS Rank: #??(inactive)</h5>";
                    averagePageData += "<h5>HPS Rank: #??(inactive)</h5>";
                }
            }

            return(averagePageData + page.ToString());
        }
Пример #16
0
    protected void iBtnSave_2_Click(object sender, ImageClickEventArgs e)
    {
        UltraGridRow    row;
        CheckBox        cBoxHome_YN_Org;
        CheckBox        cBoxHeader_YN_Org;
        CheckBox        cBoxContent_YN_Org;
        DropDownList    ddlPosition_Org;
        TemplatedColumn home_yn_col;
        TemplatedColumn header_yn_col;
        TemplatedColumn content_yn_col;
        TemplatedColumn position_col;
        int             est_dept_ref_id = 0;
        string          ynStr           = "N";

        Biz_DeptTypeInfo      deptTypeInfo     = new Biz_DeptTypeInfo();
        Biz_EstDeptOrgDetails estDeptOrgDetail = new Biz_EstDeptOrgDetails();

        IDbConnection conn = DbAgentHelper.CreateDbConnection();

        conn.Open();
        IDbTransaction trx = conn.BeginTransaction();

        try
        {
            // 드릴다운 사용 안할 때
            if (rtlDrildownYN.SelectedValue.Equals("0"))
            {
                if (TreeView1.Nodes.Count > 0)
                {
                    est_dept_ref_id = int.Parse(TreeView1.Nodes[0].Value);
                }
                else
                {
                    ltrScript.Text = JSHelper.GetAlertScript("조직정보가 없습니다.", false);
                    return;
                }

                ynStr = "Y";
                estDeptOrgDetail.RemoveEstDeptOrgDetail(conn, trx, PageUtility.GetIntByValueDropDownList(ddlEstTermInfo), 0, 0);
            }
            else // 드릴다운 사용
            {
                if (TreeView1.SelectedNode != null)
                {
                    est_dept_ref_id = int.Parse(TreeView1.SelectedValue);
                    estDeptOrgDetail.ModifyEstDeptOrgDetail(conn, trx, PageUtility.GetIntByValueDropDownList(ddlEstTermInfo), "N");
                    estDeptOrgDetail.RemoveEstDeptOrgDetail(conn, trx, PageUtility.GetIntByValueDropDownList(ddlEstTermInfo), est_dept_ref_id, 0);
                }
                else
                {
                    ltrScript.Text = JSHelper.GetAlertScript("드릴다운 방식으로 하실 때에는 조직 부서를 선택하셔야 합니다.", false);
                    return;
                }

                ynStr = TypeUtility.GetBooleanToYN(cBoxEstDeptTopYN.Checked);
            }

            for (int i = 0; i < UltraWebGrid1.Rows.Count; i++)
            {
                row = UltraWebGrid1.Rows[i];

                home_yn_col    = (TemplatedColumn)row.Band.Columns.FromKey("HOME_YN_ORG");
                header_yn_col  = (TemplatedColumn)row.Band.Columns.FromKey("HEADER_YN_ORG");
                content_yn_col = (TemplatedColumn)row.Band.Columns.FromKey("CONTENT_YN_ORG");
                position_col   = (TemplatedColumn)row.Band.Columns.FromKey("POSITION_ORG");

                cBoxHome_YN_Org    = (CheckBox)((CellItem)home_yn_col.CellItems[row.BandIndex]).FindControl("cBoxHome_YN_Org");
                cBoxHeader_YN_Org  = (CheckBox)((CellItem)header_yn_col.CellItems[row.BandIndex]).FindControl("cBoxHeader_YN_Org");
                cBoxContent_YN_Org = (CheckBox)((CellItem)content_yn_col.CellItems[row.BandIndex]).FindControl("cBoxContent_YN_Org");
                ddlPosition_Org    = (DropDownList)((CellItem)position_col.CellItems[row.BandIndex]).FindControl("ddlPosition_Org");

                estDeptOrgDetail.AddEstDeptOrgDetail(conn
                                                     , trx
                                                     , PageUtility.GetIntByValueDropDownList(ddlEstTermInfo)
                                                     , est_dept_ref_id
                                                     , int.Parse(row.Cells.FromKey("TYPE_REF_ID").Value.ToString())
                                                     , TypeUtility.GetBooleanToYN(cBoxHome_YN_Org.Checked)
                                                     , TypeUtility.GetBooleanToYN(cBoxHeader_YN_Org.Checked)
                                                     , TypeUtility.GetBooleanToYN(cBoxContent_YN_Org.Checked)
                                                     , ynStr
                                                     , int.Parse(ddlPosition_Org.SelectedValue)
                                                     , gUserInfo.Emp_Ref_ID);

                if (cBoxHome_YN_Org.Checked ||
                    cBoxHeader_YN_Org.Checked)
                {
                    ddlPosition_Org.Enabled = true;
                }
                else
                {
                    ddlPosition_Org.Enabled = false;
                }
            }

            trx.Commit();

            ltrScript.Text = JSHelper.GetAlertScript("정상적으로 저장되었습니다.", false);
        }
        catch (Exception ex)
        {
            trx.Rollback();
            conn.Close();
        }
        finally
        {
            conn.Close();
        }
    }
Пример #17
0
        protected void Page_Load(object sender, EventArgs e)
        {
            string playerStr = PageUtility.GetQueryString(Request, "player");
            var    realm     = PageUtility.GetQueryRealm(Request);

            if (realm == VF_RealmPlayersDatabase.WowRealm.Unknown)
            {
                return;
            }

            string guildLimit = PageUtility.GetQueryString(Request, "GuildLimit", null);

            string rankingDetailsInstance = PageUtility.GetQueryString(Request, "RankDetailInstance", null);

            this.Title       = playerStr + " @ " + RealmPlayersServer.StaticValues.ConvertRealmParam(realm) + " | RaidStats";
            m_BreadCrumbHTML = new MvcHtmlString(PageUtility.BreadCrumb_AddHome()
                                                 + PageUtility.BreadCrumb_AddFinish(realm.ToString())
                                                 + PageUtility.BreadCrumb_AddFinish(playerStr));

            var summaryDatabase = ApplicationInstance.Instance.GetSummaryDatabase();

            if (summaryDatabase == null)
            {
                return;
            }

            var currPlayerSummary = summaryDatabase.GetPlayerSummary(playerStr, realm);

            if (currPlayerSummary == null || currPlayerSummary.PlayerBossStats == null || currPlayerSummary.PlayerBossStats.Count == 0)
            {
                return;
            }

            var realmPlayer = ApplicationInstance.Instance.GetRealmPlayer(playerStr, realm);

            System.Text.StringBuilder pageBuilder = new System.Text.StringBuilder(10000);
            pageBuilder.Append("<h1>" + realmPlayer.Name + "</h1>");
            pageBuilder.Append("<h4>Character profile: " + PageUtility.CreateLink_Armory_Player_Colored(realmPlayer) + "</h4>");

            pageBuilder.Append("<h4>Attended raids in groups</h4>");

            var orderedBossFights = currPlayerSummary.AttendedFights.OrderByDescending((_Value) => _Value.EndDateTime);
            List <VF_RDDatabase.Raid> attendedRaids = new List <VF_RDDatabase.Raid>();

            foreach (var attendedBossFight in orderedBossFights)
            {
                attendedRaids.AddUnique(attendedBossFight.CacheRaid);
            }
            List <string> groupsAttended = new List <string>();

            attendedRaids.ForEach((_Value) => groupsAttended.AddUnique(_Value.CacheGroup.GroupName));
            foreach (var group in groupsAttended)
            {
                var raidsInGroup = attendedRaids.Where((_Value) => _Value.CacheGroup.GroupName == group); //Sorted, last raid attended is the first in list!
                var factionColor = PageUtility.GetFactionTextColor(raidsInGroup.First().CacheGroup.GetFaction(ApplicationInstance.Instance.GetRealmDB));

                pageBuilder.Append(PageUtility.CreateLink_GuildRaidList_FactionColored(group, factionColor) + "(" + raidsInGroup.Count() + " raids between " + raidsInGroup.Last().RaidStartDate.ToDateStr() + " and " + raidsInGroup.First().RaidEndDate.ToDateStr() + ")<br/>");

                //foreach (var raid in raidsInGroup)
                //{
                //    pageBuilder.Append(PageUtility.CreateLink_RaidOverview(raid, raid.RaidStartDate.ToString("yyyy-MM-dd")) + ", ");
                //}
                //pageBuilder.Append("<br/>");
            }

            pageBuilder.Append("<h4><a href='BossList.aspx?realm=" + RealmPlayersServer.StaticValues.ConvertRealmParam(realmPlayer.Realm) + "&player=" + realmPlayer.Name + "'>Best boss performances</a></h4>");
            //pageBuilder.Append("<p><h3>vs Everything</h3>");
            //var averageAll = AverageOverview.GenerateAverageDataSet("All", null, null, realm, guildLimit);
            //float averageDPS, averageHPS;
            //var dpsRank = GetDPSRank(averageAll, realmPlayer.Name, out averageDPS);
            //var hpsRank = GetHPSRank(averageAll, realmPlayer.Name, out averageHPS);
            //pageBuilder.Append("<h4>Average DPS rank: " + PageUtility.CreateLink("AverageOverview.aspx?Instance=All&realm=" + RealmPlayersServer.StaticValues.ConvertRealmParam(realmPlayer.Realm) + "&andplayer=" + realmPlayer.Name, "#" + dpsRank) + " with DPS " + averageDPS.ToStringDot("0.0") + "</h4>");
            //pageBuilder.Append("<h4>Average HPS rank: " + PageUtility.CreateLink("AverageOverview.aspx?Instance=All&realm=" + RealmPlayersServer.StaticValues.ConvertRealmParam(realmPlayer.Realm) + "&andplayer=" + realmPlayer.Name, "#" + hpsRank) + " with HPS " + averageHPS.ToStringDot("0.0") + "</h4>");
            //pageBuilder.Append("</p>");
            //pageBuilder.Append("<br />");

            pageBuilder.Append("<br>");
            var    realmProgress   = GetRealmProgress(realm);
            string instanceSummary = "";

            if (rankingDetailsInstance == "Naxxramas" || (rankingDetailsInstance != "" && instanceSummary == "" && (int)realmProgress >= (int)VF_RealmPlayersDatabase.WowInstance.Naxxramas))
            {
                instanceSummary = GenerateSummaryForInstance(currPlayerSummary, realmPlayer, "Naxxramas - All Quarters", realm, guildLimit);
            }
            else
            {
                pageBuilder.Append("<h4><a href='" + PageUtility.CreateUrlWithNewQueryValue(this.Request, "RankDetailInstance", "Naxxramas") + "'>Ranking for Naxxramas</a></h4>");
            }
            if (rankingDetailsInstance == "AQ40" || (rankingDetailsInstance != "" && instanceSummary == "" && (int)realmProgress >= (int)VF_RealmPlayersDatabase.WowInstance.Temple_Of_Ahn_Qiraj))
            {
                instanceSummary = GenerateSummaryForInstance(currPlayerSummary, realmPlayer, "Ahn'Qiraj Temple", realm, guildLimit);
            }
            else
            {
                pageBuilder.Append("<h4><a href='" + PageUtility.CreateUrlWithNewQueryValue(this.Request, "RankDetailInstance", "AQ40") + "'>Ranking for AQ40</a></h4>");
            }
            if (rankingDetailsInstance == "BWL" || (rankingDetailsInstance != "" && instanceSummary == "" && (int)realmProgress >= (int)VF_RealmPlayersDatabase.WowInstance.Blackwing_Lair))
            {
                instanceSummary = GenerateSummaryForInstance(currPlayerSummary, realmPlayer, "Blackwing Lair", realm, guildLimit);
            }
            else
            {
                pageBuilder.Append("<h4><a href='" + PageUtility.CreateUrlWithNewQueryValue(this.Request, "RankDetailInstance", "BWL") + "'>Ranking for BWL</a></h4>");
            }
            if (rankingDetailsInstance == "MC" || (rankingDetailsInstance != "" && instanceSummary == ""))
            {
                instanceSummary = GenerateSummaryForInstance(currPlayerSummary, realmPlayer, "Molten Core", realm, guildLimit);
            }
            else
            {
                pageBuilder.Append("<h4><a href='" + PageUtility.CreateUrlWithNewQueryValue(this.Request, "RankDetailInstance", "MC") + "'>Ranking for MC</a></h4>");
            }
            if (rankingDetailsInstance == "ZG" || instanceSummary == "")
            {
                instanceSummary = GenerateSummaryForInstance(currPlayerSummary, realmPlayer, "Zul'Gurub", realm, guildLimit);
            }


            pageBuilder.Append(instanceSummary);

            /////////////////////////////////////////////
            pageBuilder.Append("<h2>Attended raids</h2>");
            foreach (var attendedRaid in attendedRaids)
            {
                pageBuilder.Append(PageUtility.CreateLink_RaidOverview(attendedRaid, attendedRaid.RaidInstance + " @ " + attendedRaid.RaidStartDate) + "<br/>");
            }

            //pageBuilder.Append("<h2>Average Performance vs</h2>");
            //foreach (var bossData in currPlayerSummary.PlayerBossStats)
            //{
            //    if (bossData.Value.GetSamplesCount() < 3)
            //        continue;
            //    List<VF_RDDatabase.PlayerFightData> dpsSamplesUsed = null;
            //    List<VF_RDDatabase.PlayerFightData> hpsSamplesUsed = null;
            //    List<VF_RDDatabase.PlayerFightData> deathSamplesUsed = null;
            //    float averageDPS = bossData.Value.GetAverageDPS(5, 6, 3, out dpsSamplesUsed);
            //    float averageEffectiveHPS = bossData.Value.GetAverageEffectiveHPS(5, 6, 3, out hpsSamplesUsed);
            //    float averageRawHPS = bossData.Value.GetAverageRawHPS(5, 6, 3);
            //    float averageDeaths = bossData.Value.GetAverageDeaths(5, 6, 3, out deathSamplesUsed);

            //    pageBuilder.Append("<h3>" + bossData.Key + ":</h3>");
            //    if (averageDPS > 100 || averageEffectiveHPS < 20)
            //    {
            //        pageBuilder.Append("<br/>DPS(<font color='#ff0000'>" + averageDPS.ToStringDot("0.0") + "</font>) Samples(");
            //        foreach (var dpsSample in dpsSamplesUsed)
            //        {
            //            pageBuilder.Append(PageUtility.CreateLink_FightOverview(dpsSample.CacheBossFight, dpsSample.CacheBossFight.StartDateTime.ToString("yyyy-MM-dd")) + ", ");
            //        }
            //        pageBuilder.Length = pageBuilder.Length - 2;
            //        pageBuilder.Append(")");
            //    }
            //    if(averageEffectiveHPS >= 20)
            //    {
            //        pageBuilder.Append("<br/>Effective HPS(<font color='#ff0000'>" + averageEffectiveHPS.ToStringDot("0.0") + "</font>) Samples(");
            //        foreach (var hpsSample in hpsSamplesUsed)
            //        {
            //            pageBuilder.Append(PageUtility.CreateLink_FightOverview(hpsSample.CacheBossFight, hpsSample.CacheBossFight.StartDateTime.ToString("yyyy-MM-dd")) + ", ");
            //        }
            //        pageBuilder.Length = pageBuilder.Length - 2;
            //        pageBuilder.Append(")");
            //    }
            //    pageBuilder.Append("<br/>Deaths(<font color='#ff0000'>" + averageDeaths.ToStringDot("0%") + "</font>) Samples(");
            //    foreach (var deathSample in deathSamplesUsed)
            //    {
            //        pageBuilder.Append(PageUtility.CreateLink_FightOverview(deathSample.CacheBossFight, deathSample.CacheBossFight.StartDateTime.ToString("yyyy-MM-dd")) + ", ");
            //    }
            //    pageBuilder.Length = pageBuilder.Length - 2;
            //    pageBuilder.Append(")<br/>");
            //}

            m_PageHTML = new MvcHtmlString(pageBuilder.ToString());
        }
Пример #18
0
    protected void UltraWebGrid1_InitializeRow(object sender, RowEventArgs e)
    {
        DataRowView drw = (DataRowView)e.Data;

        CheckBox        cBoxHome_YN_Org;
        CheckBox        cBoxHeader_YN_Org;
        CheckBox        cBoxContent_YN_Org;
        DropDownList    ddlPosition_Org;
        TemplatedColumn home_yn_col;
        TemplatedColumn header_yn_col;
        TemplatedColumn content_yn_col;
        TemplatedColumn position_col;

        home_yn_col    = (TemplatedColumn)e.Row.Band.Columns.FromKey("HOME_YN_ORG");
        header_yn_col  = (TemplatedColumn)e.Row.Band.Columns.FromKey("HEADER_YN_ORG");
        content_yn_col = (TemplatedColumn)e.Row.Band.Columns.FromKey("CONTENT_YN_ORG");
        position_col   = (TemplatedColumn)e.Row.Band.Columns.FromKey("POSITION_ORG");

        cBoxHome_YN_Org    = (CheckBox)((CellItem)home_yn_col.CellItems[e.Row.BandIndex]).FindControl("cBoxHome_YN_Org");
        cBoxHeader_YN_Org  = (CheckBox)((CellItem)header_yn_col.CellItems[e.Row.BandIndex]).FindControl("cBoxHeader_YN_Org");
        cBoxContent_YN_Org = (CheckBox)((CellItem)content_yn_col.CellItems[e.Row.BandIndex]).FindControl("cBoxContent_YN_Org");
        ddlPosition_Org    = (DropDownList)((CellItem)position_col.CellItems[e.Row.BandIndex]).FindControl("ddlPosition_Org");

        if (drw["HOME_YN_ORG"].ToString() == "Y")
        {
            cBoxHome_YN_Org.Checked = true;
        }
        else
        {
            cBoxHome_YN_Org.Checked = false;
        }

        if (drw["HEADER_YN_ORG"].ToString() == "Y")
        {
            cBoxHeader_YN_Org.Checked = true;
        }
        else
        {
            cBoxHeader_YN_Org.Checked = false;
        }

        if (drw["CONTENT_YN_ORG"].ToString() == "Y")
        {
            cBoxContent_YN_Org.Checked = true;
        }
        else
        {
            cBoxContent_YN_Org.Checked = false;
        }

        PageUtility.FindByValueDropDownList(ddlPosition_Org, drw["POSITION_ORG"].ToString());

        cBoxHome_YN_Org.Attributes.Add("onclick", string.Format("CheckCtrl('{0}', '{1}', '{2}', '{3}', '{4}')", cBoxHome_YN_Org.ClientID, cBoxHome_YN_Org.ClientID, cBoxHeader_YN_Org.ClientID, cBoxContent_YN_Org.ClientID, ddlPosition_Org.ClientID));
        cBoxHeader_YN_Org.Attributes.Add("onclick", string.Format("CheckCtrl('{0}', '{1}', '{2}', '{3}', '{4}')", cBoxHeader_YN_Org.ClientID, cBoxHome_YN_Org.ClientID, cBoxHeader_YN_Org.ClientID, cBoxContent_YN_Org.ClientID, ddlPosition_Org.ClientID));
        cBoxContent_YN_Org.Attributes.Add("onclick", string.Format("CheckCtrl('{0}', '{1}', '{2}', '{3}', '{4}')", cBoxContent_YN_Org.ClientID, cBoxHome_YN_Org.ClientID, cBoxHeader_YN_Org.ClientID, cBoxContent_YN_Org.ClientID, ddlPosition_Org.ClientID));

        if (cBoxHome_YN_Org.Checked ||
            cBoxHeader_YN_Org.Checked)
        {
            ddlPosition_Org.Enabled = true;
        }
        else
        {
            ddlPosition_Org.Enabled = false;
        }
    }
Пример #19
0
    protected void NextButton_Click(object sender, EventArgs e)
    {
        string startPeriod = ((TextBox)(this.UCPeriodBegin.FindControl("txtDate"))).Text.Trim();
        string endPeriod   = ((TextBox)(this.UCPeriodEnd.FindControl("txtDate"))).Text.Trim();

        if (startPeriod == string.Empty)
        {
            PageUtility.ShowModelDlg(this, "请选择起始费用期间!");
            return;
        }
        if (endPeriod == string.Empty)
        {
            PageUtility.ShowModelDlg(this, "请选择截止费用期间!");
            return;
        }
        DateTime dtstartPeriod = DateTime.Parse(startPeriod.Substring(0, 4) + "-" + startPeriod.Substring(4, 2) + "-01");
        DateTime dtendPeriod   = DateTime.Parse(endPeriod.Substring(0, 4) + "-" + endPeriod.Substring(4, 2) + "-01");

        if (dtstartPeriod > dtendPeriod)
        {
            PageUtility.ShowModelDlg(this, "起始费用期间大于截止费用期间!");
            return;
        }
        MasterDataBLL bll = new MasterDataBLL();

        if (dtstartPeriod.AddMonths(-3).Year != dtendPeriod.AddMonths(-3).Year)
        {
            PageUtility.ShowModelDlg(this, "起始和截止费用期间必须在同一财年内!");
            return;
        }
        if (!bll.IsValidApplyYear(dtstartPeriod.AddMonths(-3).Year))
        {
            PageUtility.ShowModelDlg(this, "不允许申请本财年项目,请联系财务部!");
            return;
        }

        if (this.CustomerDDL.SelectedValue == null || this.CustomerDDL.SelectedValue == string.Empty)
        {
            PageUtility.ShowModelDlg(this, "请选择客户!");
            return;
        }

        if (this.SubCategoryDDL.SelectedValue == "0")
        {
            PageUtility.ShowModelDlg(this, "请选择费用小类!");
            return;
        }

        ERS.ExpenseSubCategoryRow subCategory = bll.GetExpenseSubCategoryById(int.Parse(this.SubCategoryDDL.SelectedValue));
        //检查如果是返利,只能填写一个月的
        if (subCategory.PageType == (int)SystemEnums.PageType.RebateApply)
        {
            if (dtstartPeriod.Year != dtendPeriod.Year || dtstartPeriod.Month != dtendPeriod.Month)
            {
                PageUtility.ShowModelDlg(this, "返利申请不能跨月!");
                return;
            }
            if (new SalesApplyBLL().GetRebateApplyCountByParameter(int.Parse(this.CustomerDDL.SelectedValue), dtstartPeriod.Year, dtstartPeriod.Month, int.Parse(this.SubCategoryDDL.SelectedValue)) > 0)
            {
                PageUtility.ShowModelDlg(this, "系统中已经存在该客户的返利申请,返利申请每月只能申请一次!");
                return;
            }
        }
        switch (subCategory.PageType)
        {
        case (int)SystemEnums.PageType.PromotionApply:
            this.Response.Redirect("~/SalesForm/SalesPromotionApply.aspx?CustomerID=" + this.CustomerDDL.SelectedValue + "&ExpenseSubCategoryID=" + this.SubCategoryDDL.SelectedValue + "&BeginPeriod=" + dtstartPeriod.ToShortDateString() + "&EndPeriod=" + dtendPeriod.ToShortDateString() + "&PromotionPriceType=" + this.PromotionPriceTypeDDL.SelectedValue);
            break;

        case (int)SystemEnums.PageType.GeneralApply:
            this.Response.Redirect("~/SalesForm/SalesGeneralApply.aspx?CustomerID=" + this.CustomerDDL.SelectedValue + "&ExpenseSubCategoryID=" + this.SubCategoryDDL.SelectedValue + "&BeginPeriod=" + dtstartPeriod.ToShortDateString() + "&EndPeriod=" + dtendPeriod.ToShortDateString());
            break;

        case (int)SystemEnums.PageType.RebateApply:
            this.Response.Redirect("~/SalesForm/SalesRebateApply.aspx?CustomerID=" + this.CustomerDDL.SelectedValue + "&ExpenseSubCategoryID=" + this.SubCategoryDDL.SelectedValue + "&BeginPeriod=" + dtstartPeriod.ToShortDateString() + "&EndPeriod=" + dtendPeriod.ToShortDateString());
            break;
        }
    }
Пример #20
0
    public void SetKpiStatus()
    {
        lblYmd.Text = "주요지표현황 ( " + PageUtility.GetByTextDropDownList(ddlMonthInfo) + " 월 현재 )";

        Biz_Bsc_Kpi_Dashboard objKpi = new Biz_Bsc_Kpi_Dashboard();
        DataSet rDs   = objKpi.GetDashBoardKpiList(this.IEstTermRefID);
        DataSet actDs = new DataSet();

        string  sKpiNm  = "";
        string  sUnitNm = "";
        decimal dTarget = 0;
        decimal dResult = 0;
        double  dAVRate = 0;
        string  sColT   = (this.ISumType == "MS") ? "TARGET_MS" : "TARGET_TS";
        string  sColR   = (this.ISumType == "MS") ? "RESULT_MS" : "RESULT_TS";
        string  sColA   = (this.ISumType == "MS") ? "ACHV_RATE_MS" : "ACHV_RATE_TS";

        if (rDs.Tables.Count > 0)
        {
            iRow = rDs.Tables[0].Rows.Count;
            for (int i = 0; i < iPageSize; i++)
            {
                if (i < iRow)
                {
                    this.IKpiRefID = int.Parse(rDs.Tables[0].Rows[i]["KPI_REF_ID"].ToString());
                    sKpiNm         = rDs.Tables[0].Rows[i]["KPI_NAME"].ToString();
                    sUnitNm        = rDs.Tables[0].Rows[i]["UNIT_NAME"].ToString();
                    actDs          = objKpi.GetDashBoardForKpiAnalysis(this.IEstTermRefID, this.IKpiRefID, this.IYmd, this.IYmd, this.ISumType);

                    if (actDs.Tables.Count > 0)
                    {
                        if (actDs.Tables[0].Rows.Count > 0)
                        {
                            dTarget = decimal.Parse(actDs.Tables[0].Rows[0][sColT].ToString());
                            dResult = decimal.Parse(actDs.Tables[0].Rows[0][sColR].ToString());
                            dAVRate = double.Parse(actDs.Tables[0].Rows[0][sColA].ToString());
                        }
                    }
                }
                else
                {
                    sKpiNm  = "-";
                    sUnitNm = "-";
                    dTarget = 0;
                    dResult = 0;
                    dAVRate = 0;
                }

                switch (i)
                {
                case 0:
                    lblKpiName1.Text   = sKpiNm;
                    txtTarget1.Value   = dTarget;
                    txtResult1.Value   = dResult;
                    lblTargetUNm1.Text = sUnitNm;
                    lblResultUNm1.Text = sUnitNm;
                    this.SetGuageLayout2(GaugeKPI1, GAUGE_COLOR_TYPE.TYPE1, dAVRate);
                    break;

                case 1:
                    lblKpiName2.Text   = sKpiNm;
                    txtTarget2.Value   = dTarget;
                    txtResult2.Value   = dResult;
                    lblTargetUNm2.Text = sUnitNm;
                    lblResultUNm2.Text = sUnitNm;
                    this.SetGuageLayout2(GaugeKPI2, GAUGE_COLOR_TYPE.TYPE2, dAVRate);
                    break;

                case 2:
                    lblKpiName3.Text   = sKpiNm;
                    txtTarget3.Value   = dTarget;
                    txtResult3.Value   = dResult;
                    lblTargetUNm3.Text = sUnitNm;
                    lblResultUNm3.Text = sUnitNm;
                    this.SetGuageLayout2(GaugeKPI3, GAUGE_COLOR_TYPE.TYPE3, dAVRate);
                    break;

                case 3:
                    lblKpiName4.Text   = sKpiNm;
                    txtTarget4.Value   = dTarget;
                    txtResult4.Value   = dResult;
                    lblTargetUNm4.Text = sUnitNm;
                    lblResultUNm4.Text = sUnitNm;
                    this.SetGuageLayout2(GaugeKPI4, GAUGE_COLOR_TYPE.TYPE2, dAVRate);
                    break;

                default:
                    break;
                }
            }
        }
    }
Пример #21
0
        private static string ParseImpl(PageInfo pageInfo, ContextInfo contextInfo, string leftText, string rightText, string formatString, string no, string separator, int startIndex, int length, int wordNum, string ellipsis, string replace, string to, bool isClearTags, string isReturnToBrStr, bool isLower, bool isUpper, bool isOriginal, string type, ContentInfo contentInfo, int contentId)
        {
            if (contentInfo == null)
            {
                return(string.Empty);
            }

            var parsedContent = string.Empty;

            if (string.IsNullOrEmpty(type))
            {
                type = ContentAttribute.Title.ToLower();
            }

            var isReturnToBr = false;

            if (string.IsNullOrEmpty(isReturnToBrStr))
            {
                if (BackgroundContentAttribute.Summary.ToLower().Equals(type))
                {
                    isReturnToBr = true;
                }
            }
            else
            {
                isReturnToBr = TranslateUtils.ToBool(isReturnToBrStr, true);
            }

            if (isOriginal)
            {
                if (contentInfo.ReferenceId > 0 && contentInfo.SourceId > 0 && contentInfo.GetString(ContentAttribute.TranslateContentType) == ETranslateContentType.Reference.ToString())
                {
                    var targetChannelId = contentInfo.SourceId;
                    //var targetSiteId = DataProvider.ChannelDao.GetSiteId(targetChannelId);
                    var targetSiteId   = StlChannelCache.GetSiteId(targetChannelId);
                    var targetSiteInfo = SiteManager.GetSiteInfo(targetSiteId);
                    var targetNodeInfo = ChannelManager.GetChannelInfo(targetSiteId, targetChannelId);

                    //var targetContentInfo = DataProvider.ContentDao.GetContentInfo(tableStyle, tableName, contentInfo.ReferenceId);
                    var targetContentInfo = ContentManager.GetContentInfo(targetSiteInfo, targetNodeInfo, contentInfo.ReferenceId);
                    if (targetContentInfo != null && targetContentInfo.ChannelId > 0)
                    {
                        //标题可以使用自己的
                        targetContentInfo.Title = contentInfo.Title;
                        contentInfo             = targetContentInfo;
                    }
                }
            }

            if (!string.IsNullOrEmpty(formatString))
            {
                formatString = formatString.Trim();
                if (!formatString.StartsWith("{0"))
                {
                    formatString = "{0:" + formatString;
                }
                if (!formatString.EndsWith("}"))
                {
                    formatString = formatString + "}";
                }
            }

            if (contentId != 0)
            {
                if (ContentAttribute.Title.ToLower().Equals(type))
                {
                    var nodeInfo          = ChannelManager.GetChannelInfo(pageInfo.SiteId, contentInfo.ChannelId);
                    var relatedIdentities = TableStyleManager.GetRelatedIdentities(nodeInfo);
                    var tableName         = ChannelManager.GetTableName(pageInfo.SiteInfo, nodeInfo);

                    var styleInfo = TableStyleManager.GetTableStyleInfo(tableName, type, relatedIdentities);
                    parsedContent = InputParserUtility.GetContentByTableStyle(contentInfo.Title, separator, pageInfo.SiteInfo, styleInfo, formatString, contextInfo.Attributes, contextInfo.InnerHtml, false);
                    parsedContent = InputTypeUtils.ParseString(styleInfo.InputType, parsedContent, replace, to, startIndex, length, wordNum, ellipsis, isClearTags, isReturnToBr, isLower, isUpper, formatString);

                    if (!isClearTags && !string.IsNullOrEmpty(contentInfo.GetString(ContentAttribute.GetFormatStringAttributeName(ContentAttribute.Title))))
                    {
                        parsedContent = ContentUtility.FormatTitle(contentInfo.GetString(ContentAttribute.GetFormatStringAttributeName(ContentAttribute.Title)), parsedContent);
                    }

                    if (pageInfo.SiteInfo.Additional.IsContentTitleBreakLine)
                    {
                        parsedContent = parsedContent.Replace("  ", !contextInfo.IsInnerElement ? "<br />" : string.Empty);
                    }
                }
                else if (BackgroundContentAttribute.Summary.ToLower().Equals(type))
                {
                    parsedContent = InputTypeUtils.ParseString(InputType.TextArea, contentInfo.GetString(BackgroundContentAttribute.Summary), replace, to, startIndex, length, wordNum, ellipsis, isClearTags, isReturnToBr, isLower, isUpper, formatString);
                }
                else if (BackgroundContentAttribute.Content.ToLower().Equals(type))
                {
                    parsedContent = ContentUtility.TextEditorContentDecode(pageInfo.SiteInfo, contentInfo.GetString(BackgroundContentAttribute.Content), pageInfo.IsLocal);

                    if (isClearTags)
                    {
                        parsedContent = StringUtils.StripTags(parsedContent);
                    }

                    if (!string.IsNullOrEmpty(replace))
                    {
                        parsedContent = StringUtils.Replace(replace, parsedContent, to);
                    }

                    if (wordNum > 0 && !string.IsNullOrEmpty(parsedContent))
                    {
                        parsedContent = StringUtils.MaxLengthText(parsedContent, wordNum, ellipsis);
                    }

                    if (!string.IsNullOrEmpty(formatString))
                    {
                        parsedContent = string.Format(formatString, parsedContent);
                    }
                }
                else if (ContentAttribute.PageContent.ToLower().Equals(type))
                {
                    //if (contextInfo.IsInnerElement)
                    // {
                    parsedContent = ContentUtility.TextEditorContentDecode(pageInfo.SiteInfo, contentInfo.GetString(BackgroundContentAttribute.Content), pageInfo.IsLocal);

                    if (isClearTags)
                    {
                        parsedContent = StringUtils.StripTags(parsedContent);
                    }

                    if (!string.IsNullOrEmpty(replace))
                    {
                        parsedContent = StringUtils.Replace(replace, parsedContent, to);
                    }

                    if (wordNum > 0 && !string.IsNullOrEmpty(parsedContent))
                    {
                        parsedContent = StringUtils.MaxLengthText(parsedContent, wordNum, ellipsis);
                    }

                    if (!string.IsNullOrEmpty(formatString))
                    {
                        parsedContent = string.Format(formatString, parsedContent);
                    }
                }
                else if (ContentAttribute.AddDate.ToLower().Equals(type))
                {
                    parsedContent = DateUtils.Format(contentInfo.AddDate, formatString);
                }
                else if (ContentAttribute.LastEditDate.ToLower().Equals(type))
                {
                    parsedContent = DateUtils.Format(contentInfo.LastEditDate, formatString);
                }
                else if (BackgroundContentAttribute.ImageUrl.ToLower().Equals(type))
                {
                    if (no == "all")
                    {
                        var sbParsedContent = new StringBuilder();
                        //第一条
                        sbParsedContent.Append(contextInfo.IsStlEntity
                            ? PageUtility.ParseNavigationUrl(pageInfo.SiteInfo,
                                                             contentInfo.GetString(BackgroundContentAttribute.ImageUrl), pageInfo.IsLocal)
                            : InputParserUtility.GetImageOrFlashHtml(pageInfo.SiteInfo,
                                                                     contentInfo.GetString(BackgroundContentAttribute.ImageUrl),
                                                                     contextInfo.Attributes, false));
                        //第n条
                        var extendAttributeName = ContentAttribute.GetExtendAttributeName(BackgroundContentAttribute.ImageUrl);
                        var extendValues        = contentInfo.GetString(extendAttributeName);
                        if (!string.IsNullOrEmpty(extendValues))
                        {
                            foreach (var extendValue in TranslateUtils.StringCollectionToStringList(extendValues))
                            {
                                var newExtendValue = extendValue;
                                sbParsedContent.Append(contextInfo.IsStlEntity
                                    ? PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, newExtendValue, pageInfo.IsLocal)
                                    : InputParserUtility.GetImageOrFlashHtml(pageInfo.SiteInfo,
                                                                             newExtendValue, contextInfo.Attributes, false));
                            }
                        }

                        parsedContent = sbParsedContent.ToString();
                    }
                    else
                    {
                        var num = TranslateUtils.ToInt(no, 0);
                        if (num <= 1)
                        {
                            parsedContent = contextInfo.IsStlEntity ? PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, contentInfo.GetString(BackgroundContentAttribute.ImageUrl), pageInfo.IsLocal) : InputParserUtility.GetImageOrFlashHtml(pageInfo.SiteInfo, contentInfo.GetString(BackgroundContentAttribute.ImageUrl), contextInfo.Attributes, false);
                        }
                        else
                        {
                            var extendAttributeName = ContentAttribute.GetExtendAttributeName(BackgroundContentAttribute.ImageUrl);
                            var extendValues        = contentInfo.GetString(extendAttributeName);
                            if (!string.IsNullOrEmpty(extendValues))
                            {
                                var index = 2;
                                foreach (var extendValue in TranslateUtils.StringCollectionToStringList(extendValues))
                                {
                                    var newExtendValue = extendValue;
                                    if (index == num)
                                    {
                                        parsedContent = contextInfo.IsStlEntity ? PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, newExtendValue, pageInfo.IsLocal) : InputParserUtility.GetImageOrFlashHtml(pageInfo.SiteInfo, newExtendValue, contextInfo.Attributes, false);
                                        break;
                                    }
                                    index++;
                                }
                            }
                        }
                    }
                }
                else if (BackgroundContentAttribute.VideoUrl.ToLower().Equals(type))
                {
                    if (no == "all")
                    {
                        var sbParsedContent = new StringBuilder();
                        //第一条
                        sbParsedContent.Append(InputParserUtility.GetVideoHtml(pageInfo.SiteInfo, contentInfo.GetString(BackgroundContentAttribute.VideoUrl), contextInfo.Attributes, contextInfo.IsStlEntity));

                        //第n条
                        var extendAttributeName = ContentAttribute.GetExtendAttributeName(BackgroundContentAttribute.VideoUrl);
                        var extendValues        = contentInfo.GetString(extendAttributeName);
                        if (!string.IsNullOrEmpty(extendValues))
                        {
                            foreach (string extendValue in TranslateUtils.StringCollectionToStringList(extendValues))
                            {
                                sbParsedContent.Append(InputParserUtility.GetVideoHtml(pageInfo.SiteInfo, extendValue, contextInfo.Attributes, contextInfo.IsStlEntity));
                            }
                        }

                        parsedContent = sbParsedContent.ToString();
                    }
                    else
                    {
                        var num = TranslateUtils.ToInt(no, 0);
                        if (num <= 1)
                        {
                            parsedContent = InputParserUtility.GetVideoHtml(pageInfo.SiteInfo, contentInfo.GetString(BackgroundContentAttribute.VideoUrl), contextInfo.Attributes, contextInfo.IsStlEntity);
                        }
                        else
                        {
                            var extendAttributeName = ContentAttribute.GetExtendAttributeName(BackgroundContentAttribute.VideoUrl);
                            var extendValues        = contentInfo.GetString(extendAttributeName);
                            if (!string.IsNullOrEmpty(extendValues))
                            {
                                var index = 2;
                                foreach (string extendValue in TranslateUtils.StringCollectionToStringList(extendValues))
                                {
                                    if (index == num)
                                    {
                                        parsedContent = InputParserUtility.GetVideoHtml(pageInfo.SiteInfo, extendValue, contextInfo.Attributes, contextInfo.IsStlEntity);
                                        break;
                                    }
                                    index++;
                                }
                            }
                        }
                    }
                }
                else if (BackgroundContentAttribute.FileUrl.ToLower().Equals(type))
                {
                    if (no == "all")
                    {
                        var sbParsedContent = new StringBuilder();
                        if (contextInfo.IsStlEntity)
                        {
                            //第一条
                            sbParsedContent.Append(contentInfo.GetString(BackgroundContentAttribute.FileUrl));
                            //第n条
                            var extendAttributeName = ContentAttribute.GetExtendAttributeName(BackgroundContentAttribute.FileUrl);
                            var extendValues        = contentInfo.GetString(extendAttributeName);
                            if (!string.IsNullOrEmpty(extendValues))
                            {
                                foreach (string extendValue in TranslateUtils.StringCollectionToStringList(extendValues))
                                {
                                    sbParsedContent.Append(extendValue);
                                }
                            }
                        }
                        else
                        {
                            //第一条
                            sbParsedContent.Append(InputParserUtility.GetFileHtmlWithCount(pageInfo.SiteInfo, contentInfo.ChannelId, contentInfo.Id, contentInfo.GetString(BackgroundContentAttribute.FileUrl), contextInfo.Attributes, contextInfo.InnerHtml, false));
                            //第n条
                            var extendAttributeName = ContentAttribute.GetExtendAttributeName(BackgroundContentAttribute.FileUrl);
                            var extendValues        = contentInfo.GetString(extendAttributeName);
                            if (!string.IsNullOrEmpty(extendValues))
                            {
                                foreach (string extendValue in TranslateUtils.StringCollectionToStringList(extendValues))
                                {
                                    sbParsedContent.Append(InputParserUtility.GetFileHtmlWithCount(pageInfo.SiteInfo, contentInfo.ChannelId, contentInfo.Id, extendValue, contextInfo.Attributes, contextInfo.InnerHtml, false));
                                }
                            }
                        }

                        parsedContent = sbParsedContent.ToString();
                    }
                    else
                    {
                        var num = TranslateUtils.ToInt(no, 0);
                        if (contextInfo.IsStlEntity)
                        {
                            if (num <= 1)
                            {
                                parsedContent = contentInfo.GetString(BackgroundContentAttribute.FileUrl);
                            }
                            else
                            {
                                var extendAttributeName = ContentAttribute.GetExtendAttributeName(BackgroundContentAttribute.FileUrl);
                                var extendValues        = contentInfo.GetString(extendAttributeName);
                                if (!string.IsNullOrEmpty(extendValues))
                                {
                                    var index = 2;
                                    foreach (string extendValue in TranslateUtils.StringCollectionToStringList(extendValues))
                                    {
                                        if (index == num)
                                        {
                                            parsedContent = extendValue;
                                            break;
                                        }
                                        index++;
                                    }
                                }
                            }

                            if (!string.IsNullOrEmpty(parsedContent))
                            {
                                parsedContent = PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, parsedContent, pageInfo.IsLocal);
                            }
                        }
                        else
                        {
                            if (num <= 1)
                            {
                                parsedContent = InputParserUtility.GetFileHtmlWithCount(pageInfo.SiteInfo, contentInfo.ChannelId, contentInfo.Id, contentInfo.GetString(BackgroundContentAttribute.FileUrl), contextInfo.Attributes, contextInfo.InnerHtml, false);
                            }
                            else
                            {
                                var extendAttributeName = ContentAttribute.GetExtendAttributeName(BackgroundContentAttribute.FileUrl);
                                var extendValues        = contentInfo.GetString(extendAttributeName);
                                if (!string.IsNullOrEmpty(extendValues))
                                {
                                    var index = 2;
                                    foreach (string extendValue in TranslateUtils.StringCollectionToStringList(extendValues))
                                    {
                                        if (index == num)
                                        {
                                            parsedContent = InputParserUtility.GetFileHtmlWithCount(pageInfo.SiteInfo, contentInfo.ChannelId, contentInfo.Id, extendValue, contextInfo.Attributes, contextInfo.InnerHtml, false);
                                            break;
                                        }
                                        index++;
                                    }
                                }
                            }
                        }
                    }
                }
                else if (ContentAttribute.NavigationUrl.ToLower().Equals(type))
                {
                    parsedContent = PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo, pageInfo.IsLocal);
                }
                else if (ContentAttribute.Tags.ToLower().Equals(type))
                {
                    parsedContent = contentInfo.Tags;
                }
                else if (StringUtils.StartsWithIgnoreCase(type, StlParserUtility.ItemIndex) && contextInfo.ItemContainer?.ContentItem != null)
                {
                    var itemIndex = StlParserUtility.ParseItemIndex(contextInfo.ItemContainer.ContentItem.ItemIndex, type, contextInfo);
                    parsedContent = !string.IsNullOrEmpty(formatString) ? string.Format(formatString, itemIndex) : itemIndex.ToString();
                }
                else if (ContentAttribute.AddUserName.ToLower().Equals(type))
                {
                    if (!string.IsNullOrEmpty(contentInfo.AddUserName))
                    {
                        parsedContent = contentInfo.AddUserName;
                    }
                }
                else
                {
                    var nodeInfo = ChannelManager.GetChannelInfo(pageInfo.SiteId, contentInfo.ChannelId);

                    if (contentInfo.ContainsKey(type))
                    {
                        if (!StringUtils.ContainsIgnoreCase(ContentAttribute.AllAttributes.Value, type))
                        {
                            var relatedIdentities = TableStyleManager.GetRelatedIdentities(nodeInfo);
                            var tableName         = ChannelManager.GetTableName(pageInfo.SiteInfo, nodeInfo);
                            var styleInfo         = TableStyleManager.GetTableStyleInfo(tableName, type, relatedIdentities);

                            //styleInfo.IsVisible = false 表示此字段不需要显示 styleInfo.TableStyleId = 0 不能排除,因为有可能是直接辅助表字段没有添加显示样式
                            var num = TranslateUtils.ToInt(no);
                            parsedContent = InputParserUtility.GetContentByTableStyle(contentInfo, separator, pageInfo.SiteInfo, styleInfo, formatString, num, contextInfo.Attributes, contextInfo.InnerHtml, false);
                            parsedContent = InputTypeUtils.ParseString(styleInfo.InputType, parsedContent, replace, to, startIndex, length, wordNum, ellipsis, isClearTags, isReturnToBr, isLower, isUpper, formatString);
                        }
                        else
                        {
                            parsedContent = contentInfo.GetString(type);
                            parsedContent = InputTypeUtils.ParseString(InputType.Text, parsedContent, replace, to, startIndex, length, wordNum, ellipsis, isClearTags, isReturnToBr, isLower, isUpper, formatString);
                        }
                    }
                }

                if (!string.IsNullOrEmpty(parsedContent))
                {
                    parsedContent = leftText + parsedContent + rightText;
                }
            }

            return(parsedContent);
        }
Пример #22
0
 void ddlEstTermInfo_SelectedIndexChanged(object sender, EventArgs e)
 {
     WebCommon.SetTermMonthDropDownList(ddlMonthInfo, PageUtility.GetIntByValueDropDownList(ddlEstTermInfo));
 }
 private void SetSelectedYear()
 {
     PageUtility.SetSelectedValue(CCExpiresYear, CCPaymentMethodModel.CCYear);
 }
Пример #24
0
    /// <summary>
    /// 开始UDBSSO功能
    /// </summary>
    protected void BeginUDBSSO()
    {
        StringBuilder strMsg = new StringBuilder();
        Int32         Result = ErrorDefinition.BT_IError_Result_UnknowError_Code;
        String        ErrMsg = ErrorDefinition.BT_IError_Result_UnknowError_Msg;

        try
        {
            #region 获取参数并验证

            SPID = Request["SPID"];
            String temp_ReturnUrl = Request["ReturnUrl"] == null ? String.Empty : Request["ReturnUrl"];
            PassportLoginResponseValue = Request["PassportLoginResponse"];
            strMsg.AppendFormat("【验证参数,DateTime:{0}】:SPID:{1},PassportLoginResponse:{2},temp_ReturnUrl:{3}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), SPID, PassportLoginResponseValue, temp_ReturnUrl);
            //根据SPID查询应用系统对应的UDBSPID信息
            UDBSPInfoBO _udbspinfo_bo     = new UDBSPInfoBO();
            UDBSPInfo   _udbspinfo_entity = _udbspinfo_bo.GetBySPID(SPID);
            if (_udbspinfo_entity != null)
            {
                UDBSPID   = _udbspinfo_entity.UDBSPID;
                UDBKey    = _udbspinfo_entity.UDBKey;
                ReturnUrl = _udbspinfo_entity.RedirectUrl;
            }
            else
            {
                UDBSPID   = UDBConstDefinition.DefaultInstance.BesttoneUDBSPID;
                UDBKey    = UDBConstDefinition.DefaultInstance.BesttoneUDBKey;
                ReturnUrl = UDBConstDefinition.DefaultInstance.UDBLoginSuccessRedirectUrl;
            }

            if (String.IsNullOrEmpty(ReturnUrl))
            {
                //其他业务系统的Ticket解析页面是不固定的,通过参数ReturnUrl传递
                ReturnUrl = temp_ReturnUrl;
            }
            else
            {
                //针对精品商城,精品商城的Ticket解析页面是固定的,是配在数据库中,而此时参数ReturnUrl及为最终认证成功的跳转页面
                if (!String.IsNullOrEmpty(temp_ReturnUrl))
                {
                    if (ReturnUrl.IndexOf('?') >= 0)
                    {
                        ReturnUrl += "&ReturnUrl=" + HttpUtility.UrlEncode(temp_ReturnUrl);
                    }
                    else
                    {
                        ReturnUrl += "?ReturnUrl=" + HttpUtility.UrlEncode(temp_ReturnUrl);
                    }
                }
            }

            strMsg.AppendFormat(",ReturnUrl:{0}", ReturnUrl);

            //根据客户信息平台的SPID,获取在客户信息平台的key
            SPInfoManager spInfo = new SPInfoManager();
            Object        SPData = spInfo.GetSPData(this.Context, "SPData");
            key = spInfo.GetPropertyBySPID(SPID, "SecretKey", SPData);

            //解析PassportLoginResponseValue
            String[] tempArray = PassportLoginResponseValue.Split('$');
            DesSsDeviceNo = tempArray[0];
            String   tempStr     = CryptographyUtil.Decrypt(tempArray[1], UDBKey);
            String[] digestArray = tempStr.Split('$');
            Result    = Convert.ToInt32(digestArray[0]);
            UDBTicket = digestArray[1];
            String timeStamp = digestArray[2];
            String digest    = digestArray[3];

            String newDigest = CryptographyUtil.ToBase64String(CryptographyUtil.Hash(Result + DesSsDeviceNo + UDBTicket + timeStamp));
            strMsg.AppendFormat(",DesSsDeviceNo:{0},Result:{1},UDBTicket{2},timeStamp:{3},digest:{4},newDigest:{5}\r\n", DesSsDeviceNo, Result, UDBTicket, timeStamp, digest, newDigest);
            if (!digest.Equals(newDigest))
            {
                //digest不吻合,失败
                strMsg.AppendFormat(",ErrMsg:{0}", "digest有误不匹配");
                Redirect("ErrMsg", "digest有误不匹配");
            }
            if (Result != 0)
            {
                //失败,则返回
                strMsg.AppendFormat(",ErrMsg:{0}", "返回Ticket失败");
                Redirect("ErrMsg", "返回Ticket失败");
            }

            #endregion

            #region 根据UDBTkcket到UDB查询用户信息

            strMsg.Append("【开始查询信息】:");

            UDBAccountInfo accountInfo = new UDBAccountInfo();

            //根据UDBTicket到UDB查询用户信息
            Result = _UDBMBoss.AccountInfoQuery(UDBSPID, UDBSPID, UDBTicket, UDBKey, out accountInfo, out ErrMsg);
            accountInfo.SourceSPID = UDBConstDefinition.DefaultInstance.UDBSPID;
            strMsg.AppendFormat(",Result:{0},UserID:{1},UserIDType:{2},UserType:{3},PUserID:{4},Alias:{5},UserIDStatus:{6},UserIDSsStatus:{7},Description:{8},ProvinceID:{9},NumFlag:{10}\r\n",
                                Result, accountInfo.UserID, accountInfo.UserIDType, accountInfo.UserType, accountInfo.PUserID, accountInfo.Alias, accountInfo.UserIDStatus, accountInfo.UserIDSsStatus, accountInfo.Description, accountInfo.ProvinceID, accountInfo.NumFlag);

            if (Result == 0)
            {
                String CustID, OuterID, Status, CustType, CustLevel, RealName, UserName, NickName, CertificateCode, CertificateType, Sex, Email, EnterpriseID, ProvinceID, AreaID, RegistrationSource;
                //检测对应用户是否在号百系统,不在,则注册进来
                strMsg.Append("【开始注册到号百】:");
                Result = UserRegistry.getUserRegistryUDB(accountInfo, out CustID, out ErrMsg);
                strMsg.AppendFormat("Result:{0},CustID:{1}\r\n", Result, CustID);

                //注册成功
                if (Result == 0)
                {
                    Result = CustBasicInfo.getCustInfo(SPID, CustID, out ErrMsg, out OuterID, out Status, out CustType, out CustLevel, out RealName,
                                                       out UserName, out NickName, out CertificateCode, out CertificateType, out Sex, out Email, out EnterpriseID, out ProvinceID,
                                                       out AreaID, out RegistrationSource);
                    if (Result != 0)
                    {
                        strMsg.Append(",ErrMsg:客户不存在" + CustID);
                        //客户不存在
                        Redirect("ErrMsg", "客户不存在");
                    }
                    //生成token
                    UserToken UT             = new UserToken();
                    String    userTokenValue = UT.GenerateUserToken(CustID, RealName, UserName, NickName, OuterID, CustType, accountInfo.UserID, UDBBusiness.ConvertAuthenType(accountInfo.NumFlag), key, out ErrMsg);
                    String    CookieName     = ConfigurationManager.AppSettings["CookieName"];
                    PageUtility.SetCookie(CookieName, userTokenValue, this.Page);

                    //生成Ticket
                    String ticket = CommonBizRules.CreateTicket();
                    Result = CIPTicketManager.insertCIPTicket(ticket, SPID, CustID, RealName, UserName, NickName, OuterID, "UDBTicket", accountInfo.UserID, UDBBusiness.ConvertAuthenType(accountInfo.NumFlag), out ErrMsg);
                    strMsg.AppendFormat("【生成ticket】:Result:{0},Ticket:{1}", Result, ticket);
                    if (Result != 0)
                    {
                        strMsg.Append(",ErrMsg:Ticket生成失败" + ticket);
                        Redirect("ErrMsg", "Ticket生成失败");
                    }
                    strMsg.Append(",Message:生成ticket成功,返回业务系统");
                    Redirect("Ticket", ticket);
                }
                else
                {
                    strMsg.Append(",ErrMsg:用户注册到号百失败");
                    Redirect("ErrMsg", "用户注册到号百失败" + ErrMsg);
                }
            }
            else if (Result == 5)
            {
                strMsg.Append(",ErrMsg:用户已删除");
                Redirect("ErrMsg", "用户已删除");
            }
            else
            {
                strMsg.Append(",ErrMsg:查询用户信息失败");
                Redirect("ErrMsg", "查询用户信息失败");
            }

            #endregion
        }
        catch (Exception ex)
        {
            strMsg.AppendFormat(",ErrMsg:{0}", ex.Message);
        }
        finally
        {
            WriteLog(strMsg.ToString());
        }
    }
Пример #25
0
        private static string ParseImpl(PageInfo pageInfo, ContextInfo contextInfo, HtmlGenericControl genericControl, string channelIndex, string channelName, EScopeType scopeType, string groupChannel, string groupChannelNot, string groupContent, string groupContentNot, string tags, string orderByString, int startNum, int totalNum, bool isShowText, string isTopText, int titleWordNum, string where, bool isTop, bool isTopExists, bool isRecommend, bool isRecommendExists, bool isHot, bool isHotExists, bool isColor, bool isColorExists, string theme, int imageWidth, int imageHeight, int textHeight, string bgColor)
        {
            var parsedContent = string.Empty;

            var channelId = StlDataUtility.GetChannelIdByChannelIdOrChannelIndexOrChannelName(pageInfo.SiteId, contextInfo.ChannelId, channelIndex, channelName);

            var dataSource = StlDataUtility.GetContentsDataSource(pageInfo.SiteInfo, channelId, 0, groupContent, groupContentNot, tags, true, true, false, false, false, false, false, startNum, totalNum, orderByString, isTopExists, isTop, isRecommendExists, isRecommend, isHotExists, isHot, isColorExists, isColor, where, scopeType, groupChannel, groupChannelNot, null);

            if (dataSource != null)
            {
                if (StringUtils.EqualsIgnoreCase(theme, ThemeStyle2))
                {
                    pageInfo.AddPageBodyCodeIfNotExists(PageInfo.Const.JsAcSwfObject);

                    var imageUrls       = new StringCollection();
                    var navigationUrls  = new StringCollection();
                    var titleCollection = new StringCollection();

                    foreach (var dataItem in dataSource.Tables[0].Rows)
                    {
                        var contentInfo = new ContentInfo(dataItem);
                        var imageUrl    = contentInfo.GetString(BackgroundContentAttribute.ImageUrl);

                        if (!string.IsNullOrEmpty(imageUrl))
                        {
                            if (imageUrl.ToLower().EndsWith(".jpg") || imageUrl.ToLower().EndsWith(".jpeg") || imageUrl.ToLower().EndsWith(".png") || imageUrl.ToLower().EndsWith(".pneg"))
                            {
                                titleCollection.Add(StringUtils.ToJsString(PageUtils.UrlEncode(StringUtils.MaxLengthText(StringUtils.StripTags(contentInfo.Title), titleWordNum))));
                                navigationUrls.Add(PageUtils.UrlEncode(PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo, pageInfo.IsLocal)));
                                imageUrls.Add(PageUtils.UrlEncode(PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, imageUrl, pageInfo.IsLocal)));
                            }
                        }
                    }

                    //foreach (var dataItem in dataSource)
                    //{
                    //    var contentInfo = new BackgroundContentInfo(dataItem);
                    //    if (!string.IsNullOrEmpty(contentInfo?.ImageUrl))
                    //    {
                    //        if (contentInfo.ImageUrl.ToLower().EndsWith(".jpg") || contentInfo.ImageUrl.ToLower().EndsWith(".jpeg") || contentInfo.ImageUrl.ToLower().EndsWith(".png") || contentInfo.ImageUrl.ToLower().EndsWith(".pneg"))
                    //        {
                    //            titleCollection.Add(StringUtils.ToJsString(PageUtils.UrlEncode(StringUtils.MaxLengthText(StringUtils.StripTags(contentInfo.Title), titleWordNum))));
                    //            navigationUrls.Add(PageUtils.UrlEncode(PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo)));
                    //            imageUrls.Add(PageUtils.UrlEncode(PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, contentInfo.ImageUrl)));
                    //        }
                    //    }
                    //}

                    if (string.IsNullOrEmpty(bgColor))
                    {
                        bgColor = "0xDADADA";
                    }
                    else
                    {
                        bgColor = bgColor.TrimStart('#');
                        if (!bgColor.StartsWith("0x"))
                        {
                            bgColor = "0x" + bgColor;
                        }
                    }

                    if (string.IsNullOrEmpty(isTopText))
                    {
                        isTopText = "0";
                    }
                    else
                    {
                        isTopText = (TranslateUtils.ToBool(isTopText)) ? "0" : "1";
                    }

                    var uniqueId     = "FocusViewer_" + pageInfo.UniqueId;
                    var paramBuilder = new StringBuilder();
                    paramBuilder.Append(
                        $@"so_{uniqueId}.addParam(""quality"", ""high"");").Append(StringUtils.Constants.ReturnAndNewline);
                    paramBuilder.Append(
                        $@"so_{uniqueId}.addParam(""wmode"", ""transparent"");").Append(StringUtils.Constants.ReturnAndNewline);
                    paramBuilder.Append(
                        $@"so_{uniqueId}.addParam(""menu"", ""false"");").Append(StringUtils.Constants.ReturnAndNewline);
                    paramBuilder.Append(
                        $@"so_{uniqueId}.addParam(""FlashVars"", ""bcastr_file=""+files_uniqueID+""&bcastr_link=""+links_uniqueID+""&bcastr_title=""+texts_uniqueID+""&AutoPlayTime=5&TitleBgPosition={isTopText}&TitleBgColor={bgColor}&BtnDefaultColor={bgColor}"");").Append(StringUtils.Constants.ReturnAndNewline);

                    string scriptHtml = $@"
<div id=""flashcontent_{uniqueId}""></div>
<script type=""text/javascript"">
var files_uniqueID='{TranslateUtils.ObjectCollectionToString(imageUrls, "|")}';
var links_uniqueID='{TranslateUtils.ObjectCollectionToString(navigationUrls, "|")}';
var texts_uniqueID='{TranslateUtils.ObjectCollectionToString(titleCollection, "|")}';

var so_{uniqueId} = new SWFObject(""{SiteFilesAssets.GetUrl(pageInfo.ApiUrl, SiteFilesAssets.Flashes.Bcastr)}"", ""flash_{uniqueId}"", ""{imageWidth}"", ""{imageHeight}"", ""7"", """");
{paramBuilder}
so_{uniqueId}.write(""flashcontent_{uniqueId}"");
</script>
";
                    scriptHtml = scriptHtml.Replace("uniqueID", uniqueId);

                    parsedContent = scriptHtml;
                }
                else if (StringUtils.EqualsIgnoreCase(theme, ThemeStyle3))
                {
                    pageInfo.AddPageBodyCodeIfNotExists(PageInfo.Const.JsAcSwfObject);

                    var imageUrls       = new StringCollection();
                    var navigationUrls  = new StringCollection();
                    var titleCollection = new StringCollection();

                    foreach (var dataItem in dataSource.Tables[0].Rows)
                    {
                        var contentInfo = new ContentInfo(dataItem);
                        var imageUrl    = contentInfo.GetString(BackgroundContentAttribute.ImageUrl);

                        if (!string.IsNullOrEmpty(imageUrl))
                        {
                            if (imageUrl.ToLower().EndsWith(".jpg") || imageUrl.ToLower().EndsWith(".jpeg") || imageUrl.ToLower().EndsWith(".png") || imageUrl.ToLower().EndsWith(".pneg"))
                            {
                                titleCollection.Add(StringUtils.ToJsString(PageUtils.UrlEncode(StringUtils.MaxLengthText(StringUtils.StripTags(contentInfo.Title), titleWordNum))));
                                navigationUrls.Add(PageUtils.UrlEncode(PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo, pageInfo.IsLocal)));
                                imageUrls.Add(PageUtils.UrlEncode(PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, imageUrl, pageInfo.IsLocal)));
                            }
                        }
                    }

                    //foreach (var dataItem in dataSource)
                    //{
                    //    var contentInfo = new BackgroundContentInfo(dataItem);
                    //    if (!string.IsNullOrEmpty(contentInfo?.ImageUrl))
                    //    {
                    //        if (contentInfo.ImageUrl.ToLower().EndsWith(".jpg") || contentInfo.ImageUrl.ToLower().EndsWith(".jpeg") || contentInfo.ImageUrl.ToLower().EndsWith(".png") || contentInfo.ImageUrl.ToLower().EndsWith(".pneg"))
                    //        {
                    //            titleCollection.Add(StringUtils.ToJsString(PageUtils.UrlEncode(StringUtils.MaxLengthText(StringUtils.StripTags(contentInfo.Title), titleWordNum))));
                    //            navigationUrls.Add(PageUtils.UrlEncode(PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo)));
                    //            imageUrls.Add(PageUtils.UrlEncode(PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, contentInfo.ImageUrl)));
                    //        }
                    //    }
                    //}

                    var uniqueId     = "FocusViewer_" + pageInfo.UniqueId;
                    var paramBuilder = new StringBuilder();
                    paramBuilder.Append($@"so_{uniqueId}.addParam(""quality"", ""high"");").Append(StringUtils.Constants.ReturnAndNewline);
                    paramBuilder.Append($@"so_{uniqueId}.addParam(""wmode"", ""transparent"");").Append(StringUtils.Constants.ReturnAndNewline);
                    paramBuilder.Append($@"so_{uniqueId}.addParam(""allowFullScreen"", ""true"");").Append(StringUtils.Constants.ReturnAndNewline);
                    paramBuilder.Append($@"so_{uniqueId}.addParam(""allowScriptAccess"", ""always"");").Append(StringUtils.Constants.ReturnAndNewline);
                    paramBuilder.Append($@"so_{uniqueId}.addParam(""menu"", ""false"");").Append(StringUtils.Constants.ReturnAndNewline);
                    paramBuilder.Append(
                        $@"so_{uniqueId}.addParam(""flashvars"", ""pw={imageWidth}&ph={imageHeight}&Times=4000&sizes=14&umcolor=16777215&btnbg=12189697&txtcolor=16777215&urls=""+urls_uniqueID+""&imgs=""+imgs_uniqueID+""&titles=""+titles_uniqueID);").Append(StringUtils.Constants.ReturnAndNewline);

                    string scriptHtml = $@"
<div id=""flashcontent_{uniqueId}""></div>
<script type=""text/javascript"">
var urls_uniqueID='{TranslateUtils.ObjectCollectionToString(navigationUrls, "|")}';
var imgs_uniqueID='{TranslateUtils.ObjectCollectionToString(imageUrls, "|")}';
var titles_uniqueID='{TranslateUtils.ObjectCollectionToString(titleCollection, "|")}';

var so_{uniqueId} = new SWFObject(""{SiteFilesAssets.GetUrl(pageInfo.ApiUrl, SiteFilesAssets.Flashes.Ali)}"", ""flash_{uniqueId}"", ""{imageWidth}"", ""{imageHeight}"", ""7"", """");
{paramBuilder}
so_{uniqueId}.write(""flashcontent_{uniqueId}"");
</script>
";
                    scriptHtml = scriptHtml.Replace("uniqueID", uniqueId);

                    parsedContent = scriptHtml;
                }
                else if (StringUtils.EqualsIgnoreCase(theme, ThemeStyle4))
                {
                    var imageUrls      = new StringCollection();
                    var navigationUrls = new StringCollection();

                    foreach (var dataItem in dataSource.Tables[0].Rows)
                    {
                        var contentInfo = new ContentInfo(dataItem);
                        var imageUrl    = contentInfo.GetString(BackgroundContentAttribute.ImageUrl);

                        if (!string.IsNullOrEmpty(imageUrl))
                        {
                            navigationUrls.Add(PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo, pageInfo.IsLocal));
                            imageUrls.Add(PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, imageUrl, pageInfo.IsLocal));
                        }
                    }

                    //foreach (var dataItem in dataSource)
                    //{
                    //    var contentInfo = new BackgroundContentInfo(dataItem);
                    //    if (!string.IsNullOrEmpty(contentInfo?.ImageUrl))
                    //    {
                    //        navigationUrls.Add(PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo));
                    //        imageUrls.Add(PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, contentInfo.ImageUrl));
                    //    }
                    //}

                    var imageBuilder = new StringBuilder();
                    var numBuilder   = new StringBuilder();

                    imageBuilder.Append($@"
<div style=""display:block""><a href=""{navigationUrls[0]}"" target=""_blank""><img src=""{imageUrls[0]}"" width=""{imageWidth}"" height=""{imageHeight}"" border=""0"" onMouseOver=""fv_clearAuto();"" onMouseOut=""fv_setAuto()"" /></a></div>
");

                    if (navigationUrls.Count > 1)
                    {
                        for (var i = 1; i < navigationUrls.Count; i++)
                        {
                            imageBuilder.Append($@"
<div style=""display:none""><a href=""{navigationUrls[i]}"" target=""_blank""><img src=""{imageUrls[i]}"" width=""{imageWidth}"" height=""{imageHeight}"" border=""0"" onMouseOver=""fv_clearAuto();"" onMouseOut=""fv_setAuto()"" /></a></div>
");
                        }
                    }

                    numBuilder.Append(@"
<td width=""18"" height=""16"" class=""fv_bigon"" onmouseover=""fv_clearAuto();fv_Mea(0);"" onmouseout=""fv_setAuto()"">1</td>
");

                    if (navigationUrls.Count > 1)
                    {
                        for (var i = 1; i < navigationUrls.Count; i++)
                        {
                            numBuilder.Append($@"
<td width=""18"" class=""fv_bigoff"" onmouseover=""fv_clearAuto();fv_Mea({i});"" onmouseout=""fv_setAuto()"">{i + 1}</td>
");
                        }
                    }

                    var bgUrl = PageUtility.ParseNavigationUrl(pageInfo.SiteInfo,
                                                               "@/images/focusviewerbg.png", pageInfo.IsLocal);
                    string scriptHtml = $@"
<style type=""text/css"">
.fv_adnum{{ position:absolute; z-index:1005; width:{imageWidth - 24}px; height:24px; padding:5px 3px 0 0; left:21px; top:{imageHeight -
                                                                                                                                                                                                  29}px; }}
.fv_bigon{{ background:#E59948; font-family:Arial; color:#fff; font-size:12px; text-align:center; cursor:pointer}}
.fv_bigoff{{ background:#7DCABD; font-family:Arial; color:#fff; font-size:12px; text-align:center; cursor:pointer}}
</style>
<div style=""position:relative; left:0; top:0; width:{imageWidth}px; height:{imageHeight}px; background:#000"">
	<div id=""fv_filbox"" style=""position:absolute; z-index:999; left:0; top:0; width:{imageWidth}px; height:{imageHeight}px; filter:progid:DXImageTransform.Microsoft.Fade( duration=0.5,overlap=1.0 );"">
		{imageBuilder}
    </div>
    <div class=""fv_adnum"" style=""background:url({bgUrl}) no-repeat !important; background:none ;filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, src='{bgUrl}')""></div>
    <div class=""fv_adnum"">
        <table border=""0"" cellspacing=""1"" cellpadding=""0"" align=""right"" id=""fv_num"">
          <tr>
            {numBuilder}
          </tr>
        </table>
    </div>
</div>
<script language=""javascript""> 
    var fv_n=0;
    var fv_nums={navigationUrls.Count};
    var fv_showNum = document.getElementById(""fv_num"");
    var is_IE=(navigator.appName==""Microsoft Internet Explorer"");
    function fv_Mea(value){{
        fv_n=value;
        for(var i=0;i<fv_nums;i++)
            if(value==i){{
                fv_showNum.getElementsByTagName(""td"")[i].setAttribute('className', 'fv_bigon');
                fv_showNum.getElementsByTagName(""td"")[i].setAttribute('class', 'fv_bigon');
            }}
            else{{	
                fv_showNum.getElementsByTagName(""td"")[i].setAttribute('className', 'fv_bigoff');
                fv_showNum.getElementsByTagName(""td"")[i].setAttribute('class', 'fv_bigoff');
            }}
        var divs = document.getElementById(""fv_filbox"").getElementsByTagName(""div""); 
		if (is_IE){{
            document.getElementById(""fv_filbox"").filters[0].Apply();
		}}
		for(i=0;i<fv_nums;i++)i==value?divs[i].style.display=""block"":divs[i].style.display=""none"";
		if (is_IE){{
			document.getElementById(""fv_filbox"").filters[0].play();
		}}
    }}
    function fv_clearAuto(){{clearInterval(autoStart)}}
    function fv_setAuto(){{autoStart=setInterval(""auto(fv_n)"", 5000)}}
    function auto(){{
        fv_n++;
        if(fv_n>(fv_nums-1))fv_n=0;
        fv_Mea(fv_n);
    }}
    fv_setAuto(); 
</script>
";

                    parsedContent = scriptHtml.Replace("fv_", $"fv{pageInfo.UniqueId}_");
                }
                else
                {
                    var imageUrls       = new StringCollection();
                    var navigationUrls  = new StringCollection();
                    var titleCollection = new StringCollection();

                    foreach (var dataItem in dataSource.Tables[0].Rows)
                    {
                        var contentInfo = new ContentInfo(dataItem);
                        var imageUrl    = contentInfo.GetString(BackgroundContentAttribute.ImageUrl);

                        if (!string.IsNullOrEmpty(imageUrl))
                        {
                            //这里使用png图片不管用
                            //||contentInfo.ImageUrl.ToLower().EndsWith(".png")||contentInfo.ImageUrl.ToLower().EndsWith(".pneg")
                            if (imageUrl.ToLower().EndsWith(".jpg") || imageUrl.ToLower().EndsWith(".jpeg"))
                            {
                                titleCollection.Add(StringUtils.ToJsString(PageUtils.UrlEncode(StringUtils.MaxLengthText(StringUtils.StripTags(contentInfo.Title), titleWordNum))));
                                navigationUrls.Add(PageUtils.UrlEncode(PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo, pageInfo.IsLocal)));
                                imageUrls.Add(PageUtils.UrlEncode(PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, imageUrl, pageInfo.IsLocal)));
                            }
                        }
                    }

                    //foreach (var dataItem in dataSource)
                    //{
                    //    var contentInfo = new BackgroundContentInfo(dataItem);
                    //    if (!string.IsNullOrEmpty(contentInfo?.ImageUrl))
                    //    {
                    //        //这里使用png图片不管用
                    //        //||contentInfo.ImageUrl.ToLower().EndsWith(".png")||contentInfo.ImageUrl.ToLower().EndsWith(".pneg")
                    //        if (contentInfo.ImageUrl.ToLower().EndsWith(".jpg") || contentInfo.ImageUrl.ToLower().EndsWith(".jpeg"))
                    //        {
                    //            titleCollection.Add(StringUtils.ToJsString(PageUtils.UrlEncode(StringUtils.MaxLengthText(StringUtils.StripTags(contentInfo.Title), titleWordNum))));
                    //            navigationUrls.Add(PageUtils.UrlEncode(PageUtility.GetContentUrl(pageInfo.SiteInfo, contentInfo)));
                    //            imageUrls.Add(PageUtils.UrlEncode(PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, contentInfo.ImageUrl)));
                    //        }
                    //    }
                    //}

                    if (string.IsNullOrEmpty(bgColor))
                    {
                        bgColor = "#DADADA";
                    }
                    var titles = string.Empty;
                    if (isShowText == false)
                    {
                        textHeight = 0;
                    }
                    else
                    {
                        titles = TranslateUtils.ObjectCollectionToString(titleCollection, "|");
                    }
                    var uniqueId = "FocusViewer_" + pageInfo.UniqueId;
                    genericControl.ID        = uniqueId;
                    genericControl.InnerHtml = "&nbsp;";
                    var    divHtml    = ControlUtils.GetControlRenderHtml(genericControl);
                    string scriptHtml = $@"
<script type=""text/javascript"" src=""{SiteFilesAssets.GetUrl(pageInfo.ApiUrl, SiteFilesAssets.BaiRongFlash.Js)}""></script>
<SCRIPT language=javascript type=""text/javascript"">
	<!--
	
	var uniqueID_focus_width={imageWidth}
	var uniqueID_focus_height={imageHeight}
	var uniqueID_text_height={textHeight}
	var uniqueID_swf_height = uniqueID_focus_height + uniqueID_text_height
	
	var uniqueID_pics='{TranslateUtils.ObjectCollectionToString(imageUrls, "|")}'
	var uniqueID_links='{TranslateUtils.ObjectCollectionToString(navigationUrls, "|")}'
	var uniqueID_texts='{titles}'
	
	var uniqueID_FocusFlash = new bairongFlash(""{SiteFilesAssets.GetUrl(pageInfo.ApiUrl, SiteFilesAssets.Flashes.FocusViewer)}"", ""focusflash"", uniqueID_focus_width, uniqueID_swf_height, ""7"", ""{bgColor}"", false, ""High"");
	uniqueID_FocusFlash.addParam(""allowScriptAccess"", ""sameDomain"");
	uniqueID_FocusFlash.addParam(""menu"", ""false"");
	uniqueID_FocusFlash.addParam(""wmode"", ""transparent"");

	uniqueID_FocusFlash.addVariable(""pics"", uniqueID_pics);
	uniqueID_FocusFlash.addVariable(""links"", uniqueID_links);
	uniqueID_FocusFlash.addVariable(""texts"", uniqueID_texts);
	uniqueID_FocusFlash.addVariable(""borderwidth"", uniqueID_focus_width);
	uniqueID_FocusFlash.addVariable(""borderheight"", uniqueID_focus_height);
	uniqueID_FocusFlash.addVariable(""textheight"", uniqueID_text_height);
	uniqueID_FocusFlash.write(""uniqueID"");
	
	//-->
</SCRIPT>
";
                    scriptHtml = scriptHtml.Replace("uniqueID", uniqueId);

                    parsedContent = divHtml + scriptHtml;
                }
            }

            return(parsedContent);
        }
Пример #26
0
    private void BindGrid()
    {
        UltraWebGrid1.Clear();
        UltraWebGrid1.DataSource = _questionItems.GetQuestionItem("", "", PageUtility.GetByValueDropDownList(ddlQObjID));
        UltraWebGrid1.DataBind();

        if (!Page.ClientScript.IsStartupScriptRegistered(Page.GetType(), "Search"))
        {
            Page.ClientScript.RegisterStartupScript(Page.GetType(), "Search", string.Format("<script>GetDataSet('GetDataSet.aspx','ddlQSbjID','Q_SBJ_NAME','Q_SBJ_ID', 'Survey', 'B', '{0}');"
                                                                                            + "document.forms[0].ddlQSbjID.value={1}; </script>"
                                                                                            , PageUtility.GetByValueDropDownList(ddlQObjID), 0));
        }
    }
Пример #27
0
        public void Page_Load(object sender, EventArgs e)
        {
            if (IsForbidden)
            {
                return;
            }

            PageUtils.CheckRequestParameter("PublishmentSystemId");
            _keywordId  = Body.GetQueryInt("keywordID");
            _resourceId = Body.GetQueryInt("resourceID");
            _isSingle   = TranslateUtils.ToBool(Body.GetQueryString("isSingle"));

            if (Request.QueryString["deleteResource"] != null)
            {
                var deleteResourceId = TranslateUtils.ToInt(Request.QueryString["deleteResourceID"]);

                try
                {
                    DataProviderWx.KeywordResourceDao.Delete(deleteResourceId);
                    SuccessDeleteMessage();
                }
                catch (Exception ex)
                {
                    FailDeleteMessage(ex);
                }
            }

            if (!IsPostBack)
            {
                var pageTitle = _keywordId == 0 ? "添加关键词图文回复" : "修改关键词图文回复";
                LtlPageTitle.Text = pageTitle;

                BreadCrumb(AppManager.WeiXin.LeftMenu.IdAccounts, AppManager.WeiXin.LeftMenu.Function.IdImageReply, pageTitle, AppManager.WeiXin.Permission.WebSite.ImageReply);
                PhSingle.Visible   = _isSingle;
                PhMultiple.Visible = !_isSingle;

                if (_isSingle)
                {
                    var resourceInfo = new KeywordResourceInfo();

                    resourceInfo.ResourceId          = 0;
                    resourceInfo.PublishmentSystemId = PublishmentSystemId;
                    resourceInfo.KeywordId           = _keywordId;
                    resourceInfo.Title          = "标题";
                    resourceInfo.ImageUrl       = string.Empty;
                    resourceInfo.Summary        = string.Empty;
                    resourceInfo.ResourceType   = EResourceType.Content;
                    resourceInfo.IsShowCoverPic = true;
                    resourceInfo.Content        = string.Empty;
                    resourceInfo.NavigationUrl  = string.Empty;
                    resourceInfo.ChannelId      = 0;
                    resourceInfo.ContentId      = 0;
                    resourceInfo.Taxis          = 0;

                    if (_resourceId > 0)
                    {
                        resourceInfo = DataProviderWx.KeywordResourceDao.GetResourceInfo(_resourceId);
                    }
                    LtlSingleTitle.Text = $@"<a href=""javascript:;"">{resourceInfo.Title}</a>";
                    if (string.IsNullOrEmpty(resourceInfo.ImageUrl))
                    {
                        LtlSingleImageUrl.Text = @"<i class=""appmsg_thumb default"">封面图片</i>";
                    }
                    else
                    {
                        LtlSingleImageUrl.Text =
                            $@"<img class=""js_appmsg_thumb"" src=""{PageUtility.ParseNavigationUrl(
                                PublishmentSystemInfo, resourceInfo.ImageUrl)}"">";
                    }
                    LtlSingleSummary.Text = MPUtils.GetSummary(resourceInfo.Summary, resourceInfo.Content);
                }
                else
                {
                    var resourceInfoList = DataProviderWx.KeywordResourceDao.GetResourceInfoList(_keywordId);

                    var resourceInfo = new KeywordResourceInfo();

                    resourceInfo.ResourceId          = 0;
                    resourceInfo.PublishmentSystemId = PublishmentSystemId;
                    resourceInfo.KeywordId           = _keywordId;
                    resourceInfo.Title          = "标题";
                    resourceInfo.ImageUrl       = string.Empty;
                    resourceInfo.Summary        = string.Empty;
                    resourceInfo.ResourceType   = EResourceType.Content;
                    resourceInfo.IsShowCoverPic = true;
                    resourceInfo.Content        = string.Empty;
                    resourceInfo.NavigationUrl  = string.Empty;
                    resourceInfo.ChannelId      = 0;
                    resourceInfo.ContentId      = 0;
                    resourceInfo.Taxis          = 0;

                    if (resourceInfoList.Count <= 1)
                    {
                        resourceInfoList.Add(resourceInfo);
                    }

                    if (resourceInfoList.Count > 1)
                    {
                        resourceInfo = resourceInfoList[0];
                        resourceInfoList.Remove(resourceInfo);
                    }

                    LtlMultipleTitle.Text = $@"<a href=""javascript:;"">{resourceInfo.Title}</a>";

                    if (string.IsNullOrEmpty(resourceInfo.ImageUrl))
                    {
                        LtlMultipleImageUrl.Text = @"<i class=""appmsg_thumb default"">封面图片</i>";
                    }
                    else
                    {
                        LtlMultipleImageUrl.Text =
                            $@"<img class=""js_appmsg_thumb"" src=""{PageUtility.ParseNavigationUrl(
                                PublishmentSystemInfo, resourceInfo.ImageUrl)}"">";
                    }
                    LtlMultipleEditUrl.Text =
                        $@"<a class=""icon18_common edit_gray js_edit"" href=""{PageKeywordResourceAdd.GetRedirectUrl(
                            PublishmentSystemId, _keywordId, resourceInfo.ResourceId, 1, false)}"" target=""resource"">&nbsp;&nbsp;</a>";

                    RptMultipleContents.DataSource     = resourceInfoList;
                    RptMultipleContents.ItemDataBound += rptMultipleContents_ItemDataBound;
                    RptMultipleContents.DataBind();

                    LtlItemEditUrl.Text =
                        $@"<a class=""icon18_common edit_gray js_edit"" href=""{PageKeywordResourceAdd.GetRedirectUrl(
                            PublishmentSystemId, _keywordId, 0, resourceInfoList.Count + 2, false)}"" target=""resource"">&nbsp;&nbsp;</a>";
                }

                LtlIFrame.Text =
                    $@"<iframe frameborder=""0"" id=""resource"" name=""resource"" width=""100%"" height=""1300"" src=""{PageKeywordResourceAdd
                        .GetRedirectUrl(PublishmentSystemId, _keywordId, _resourceId, 1, _isSingle)}"" scrolling=""no""></iframe>";
            }
        }
Пример #28
0
        private static string ParseImpl(PageInfo pageInfo, ContextInfo contextInfo, string type, string playUrl, bool isAutoPlay, bool isPreLoad, bool isLoop)
        {
            var contentId = contextInfo.ContentId;

            if (string.IsNullOrEmpty(playUrl))
            {
                if (contentId != 0)//获取内容视频
                {
                    if (contextInfo.ContentInfo == null)
                    {
                        //playUrl = DataProvider.ContentDao.GetValue(pageInfo.SiteInfo.AuxiliaryTableForContent, contentId, type);
                        playUrl = Content.GetValue(pageInfo.SiteInfo.TableName, contentId, type);
                        if (string.IsNullOrEmpty(playUrl))
                        {
                            if (!StringUtils.EqualsIgnoreCase(type, BackgroundContentAttribute.VideoUrl))
                            {
                                //playUrl = DataProvider.ContentDao.GetValue(pageInfo.SiteInfo.AuxiliaryTableForContent, contentId, BackgroundContentAttribute.VideoUrl);
                                playUrl = Content.GetValue(pageInfo.SiteInfo.TableName, contentId, BackgroundContentAttribute.VideoUrl);
                            }
                        }
                        if (string.IsNullOrEmpty(playUrl))
                        {
                            if (!StringUtils.EqualsIgnoreCase(type, BackgroundContentAttribute.FileUrl))
                            {
                                //playUrl = DataProvider.ContentDao.GetValue(pageInfo.SiteInfo.AuxiliaryTableForContent, contentId, BackgroundContentAttribute.FileUrl);
                                playUrl = Content.GetValue(pageInfo.SiteInfo.TableName, contentId, BackgroundContentAttribute.FileUrl);
                            }
                        }
                    }
                    else
                    {
                        playUrl = contextInfo.ContentInfo.GetString(type);
                        if (string.IsNullOrEmpty(playUrl))
                        {
                            playUrl = contextInfo.ContentInfo.GetString(BackgroundContentAttribute.VideoUrl);
                        }
                        if (string.IsNullOrEmpty(playUrl))
                        {
                            playUrl = contextInfo.ContentInfo.GetString(BackgroundContentAttribute.FileUrl);
                        }
                    }
                }
            }

            if (string.IsNullOrEmpty(playUrl))
            {
                return(string.Empty);
            }

            playUrl = PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, playUrl, pageInfo.IsLocal);

            // 如果是实体标签,则只返回数字
            if (contextInfo.IsCurlyBrace)
            {
                return(playUrl);
            }
            else
            {
                pageInfo.AddPageBodyCodeIfNotExists(PageInfo.Const.Jquery);
                pageInfo.AddPageBodyCodeIfNotExists(PageInfo.Const.JsAcMediaElement);

                return($@"
<audio src=""{playUrl}"" {(isAutoPlay ? "autoplay" : string.Empty)} {(isPreLoad ? string.Empty : @"preload=""none""")} {(isLoop ? "loop" : string.Empty)}>
    <object width=""460"" height=""40"" type=""application/x-shockwave-flash"" data=""{SiteFilesAssets.GetUrl(pageInfo.ApiUrl, SiteFilesAssets.MediaElement.Swf)}"">
        <param name=""movie"" value=""{SiteFilesAssets.GetUrl(pageInfo.ApiUrl, SiteFilesAssets.MediaElement.Swf)}"" />
        <param name=""flashvars"" value=""controls=true&file={playUrl}"" />
    </object>
</audio>
<script>$('audio').mediaelementplayer();</script>
");
            }
        }
Пример #29
0
        internal static string Parse(string stlEntity, PageInfo pageInfo, ContextInfo contextInfo)
        {
            var parsedContent = string.Empty;

            try
            {
                var entityName    = StlParserUtility.GetNameFromEntity(stlEntity);
                var attributeName = entityName.Substring(5, entityName.Length - 6);

                if (StringUtils.EqualsIgnoreCase(PoweredBy, attributeName))//支持信息
                {
                    parsedContent = @"Powered by <a href=""http://www.siteserver.cn"" target=""_blank"">网站管理平台</a>";
                }
                else if (StringUtils.EqualsIgnoreCase(RootUrl, attributeName))//系统根目录地址
                {
                    parsedContent = PageUtils.ParseConfigRootUrl("~");
                    if (!string.IsNullOrEmpty(parsedContent))
                    {
                        parsedContent = parsedContent.TrimEnd('/');
                    }
                }
                else if (StringUtils.EqualsIgnoreCase(ApiUrl, attributeName))//API地址
                {
                    parsedContent = pageInfo.ApiUrl.TrimEnd('/');
                }
                else if (StringUtils.EqualsIgnoreCase(SiteId, attributeName))//ID
                {
                    parsedContent = pageInfo.SiteId.ToString();
                }
                else if (StringUtils.EqualsIgnoreCase(SiteName, attributeName))//名称
                {
                    parsedContent = pageInfo.SiteInfo.SiteName;
                }
                else if (StringUtils.EqualsIgnoreCase(SiteUrl, attributeName))//域名地址
                {
                    parsedContent = PageUtility.GetSiteUrl(pageInfo.SiteInfo, pageInfo.IsLocal).TrimEnd('/');
                }
                else if (StringUtils.EqualsIgnoreCase(SiteDir, attributeName))//文件夹
                {
                    parsedContent = pageInfo.SiteInfo.SiteDir;
                }
                else if (StringUtils.EqualsIgnoreCase(CurrentUrl, attributeName))//当前页地址
                {
                    parsedContent = StlParserUtility.GetStlCurrentUrl(pageInfo.SiteInfo, contextInfo.ChannelId, contextInfo.ContentId, contextInfo.ContentInfo, pageInfo.TemplateInfo.TemplateType, pageInfo.TemplateInfo.Id, pageInfo.IsLocal);
                }
                else if (StringUtils.EqualsIgnoreCase(ChannelUrl, attributeName))//栏目页地址
                {
                    parsedContent = PageUtility.GetChannelUrl(pageInfo.SiteInfo, ChannelManager.GetChannelInfo(pageInfo.SiteId, contextInfo.ChannelId), pageInfo.IsLocal);
                }
                else if (StringUtils.EqualsIgnoreCase(HomeUrl, attributeName))//用户中心地址
                {
                    parsedContent = PageUtils.GetHomeUrl(string.Empty).TrimEnd('/');
                }
                else if (StringUtils.EqualsIgnoreCase(LoginUrl, attributeName))
                {
                    var returnUrl = StlParserUtility.GetStlCurrentUrl(pageInfo.SiteInfo, contextInfo.ChannelId, contextInfo.ContentId, contextInfo.ContentInfo, pageInfo.TemplateInfo.TemplateType, pageInfo.TemplateInfo.Id, pageInfo.IsLocal);
                    parsedContent = PageUtils.GetHomeUrl($"pages/login.html?returnUrl={PageUtils.UrlEncode(returnUrl)}");
                }
                else if (StringUtils.EqualsIgnoreCase(LogoutUrl, attributeName))
                {
                    var returnUrl = StlParserUtility.GetStlCurrentUrl(pageInfo.SiteInfo, contextInfo.ChannelId, contextInfo.ContentId, contextInfo.ContentInfo, pageInfo.TemplateInfo.TemplateType, pageInfo.TemplateInfo.Id, pageInfo.IsLocal);
                    parsedContent = PageUtils.GetHomeUrl($"pages/logout.html?returnUrl={PageUtils.UrlEncode(returnUrl)}");
                }
                else if (StringUtils.EqualsIgnoreCase(RegisterUrl, attributeName))
                {
                    var returnUrl = StlParserUtility.GetStlCurrentUrl(pageInfo.SiteInfo, contextInfo.ChannelId, contextInfo.ContentId, contextInfo.ContentInfo, pageInfo.TemplateInfo.TemplateType, pageInfo.TemplateInfo.Id, pageInfo.IsLocal);
                    parsedContent = PageUtils.GetHomeUrl($"pages/register.html?returnUrl={PageUtils.UrlEncode(returnUrl)}");
                }
                else if (StringUtils.StartsWithIgnoreCase(attributeName, "TableFor"))//
                {
                    if (StringUtils.EqualsIgnoreCase(attributeName, "TableForContent"))
                    {
                        parsedContent = pageInfo.SiteInfo.TableName;
                    }
                }
                else if (StringUtils.StartsWithIgnoreCase(attributeName, "Site"))//
                {
                    parsedContent = pageInfo.SiteInfo.Additional.GetString(attributeName.Substring(4));
                }
                else if (pageInfo.Parameters != null && pageInfo.Parameters.ContainsKey(attributeName))
                {
                    pageInfo.Parameters.TryGetValue(attributeName, out parsedContent);
                }
                else
                {
                    if (pageInfo.SiteInfo.Additional.ContainsKey(attributeName))
                    {
                        parsedContent = pageInfo.SiteInfo.Additional.GetString(attributeName);

                        if (!string.IsNullOrEmpty(parsedContent))
                        {
                            var styleInfo = TableStyleManager.GetTableStyleInfo(DataProvider.SiteDao.TableName, attributeName, TableStyleManager.GetRelatedIdentities(pageInfo.SiteId));

                            // 如果 styleInfo.TableStyleId <= 0,表示此字段已经被删除了,不需要再显示值了 ekun008
                            if (styleInfo.Id > 0)
                            {
                                parsedContent = InputTypeUtils.EqualsAny(styleInfo.InputType, InputType.Image,
                                                                         InputType.File)
                                    ? PageUtility.ParseNavigationUrl(pageInfo.SiteInfo, parsedContent,
                                                                     pageInfo.IsLocal)
                                    : InputParserUtility.GetContentByTableStyle(parsedContent, string.Empty,
                                                                                pageInfo.SiteInfo, styleInfo, string.Empty, null, string.Empty,
                                                                                true);
                            }
                            else
                            { // 如果字段已经被删除或不再显示了,则此字段的值为空。有时虚拟字段值不会清空
                                parsedContent = string.Empty;
                            }
                        }
                    }
                }
            }
            catch
            {
                // ignored
            }

            return(parsedContent);
        }
Пример #30
0
    //private string GetChartQuery()
    //{
    //    string sQuery = "";

    //    sQuery += GetDefaultQuery();

    //    return sQuery;
    //}

    private string GetDefaultQuery(string sGubun)
    {
        string sYear  = PageUtility.GetByValueDropDownList(ddlYear);
        string sMonth = PageUtility.GetByValueDropDownList(ddlMonth);
        string sGong  = PageUtility.GetByValueDropDownList(ddlGong);
        string sItem  = PageUtility.GetByValueDropDownList(ddlItem);

        string sQuery = "";

        sQuery += "SELECT a.v_Year + a.v_Month + a.v_Day v_YMD,                                         \n";
        sQuery += "       a.v_Day,                                                                      \n";
        sQuery += "       a.ITMJ_CD,                                                                                \n";
        sQuery += "       a.ITMJ_NAME,                                                                              \n";
        sQuery += "       a.v_JgoQty                                                                                \n";
        sQuery += "  FROM (                                                                                         \n";
        sQuery += "       SELECT CONVERT(VARCHAR, a.Year) v_Year,                                                   \n";
        sQuery += "              CASE WHEN a.Month < 10 THEN '0' + CONVERT(VARCHAR, a.Month)                        \n";
        sQuery += "                                     ELSE CONVERT(VARCHAR, a.Month)                              \n";
        sQuery += "              END v_Month,                                                                       \n";
        sQuery += "              CASE WHEN a.DayNumberOfMonth < 10 THEN '0' + CONVERT(VARCHAR, a.DayNumberOfMonth)  \n";
        sQuery += "                                                ELSE CONVERT(VARCHAR, a.DayNumberOfMonth)        \n";
        sQuery += "              END v_Day,                                                                         \n";
        sQuery += "              b.ITMJ_CD,                                                                         \n";
        sQuery += "              b.ITMJ_NAME,                                                                       \n";
        sQuery += "              SUM(c.JGO_QTY) v_JgoQty                                                            \n";
        sQuery += "         FROM D_TIME_ILJA a,                                                                     \n";
        sQuery += "              D_ITEM_JAEGO b,                                                                              \n";
        sQuery += "              CA_FT_JAEGO  c                                                                     \n";
        sQuery += "        WHERE c.TIME_IDX = a.TM_IDX                                                              \n";
        sQuery += "          AND c.ITEM_IDX = b.ITMJ_IDX                                                             \n";
        sQuery += "          AND a.Year = " + sYear + "  -- 년                                                      \n";
        sQuery += "          AND a.Month= " + Convert.ToInt32(sMonth) + "     -- 월                                 \n";
        sQuery += "          AND a.DayNumberOfMonth between 1 and 31    -- 일                                       \n";
        if (sGubun == "일일")
        {
            if (sItem != "")
            {
                sQuery += "          AND b.ITMJ_CD = " + sItem + " -- item                                                             \n";
            }
            if (sGong != "")
            {
                sQuery += "          AND c.GONG_IDX = " + sGong + " -- 공장                                                              \n";
            }
        }
        else
        {
            if (sGong != "")
            {
                sQuery += "          AND c.GONG_IDX = " + sGong + " -- 공장                                                              \n";
            }
        }
        sQuery += "        GROUP by                                                                                 \n";
        sQuery += "              a.Year,                                                                            \n";
        sQuery += "              a.Month,                                                                           \n";
        sQuery += "              a.DayNumberOfMonth,                                                                \n";
        sQuery += "              b.ITMJ_CD,                                                                         \n";
        sQuery += "              b.ITMJ_NAME                                                                        \n";
        sQuery += "       ) a                                                                                       \n";

        return(sQuery);
    }