Example #1
0
        public static List <Common.Menu> GetMenusOfDesktop(string domainName, Business.Desktop desktop)
        {
            try
            {
                lstMenu.Clear();
                Business.DomainMenu     domainMenuController = new Business.DomainMenu();
                Business.DomainMenuType menuType;

                DataTable domainInfo     = Facade.Domain.GetDomainInfo(domainName);
                DataTable dataTableMenus = domainMenuController.GetMenusOfDesktop(Helper.GetGuid(domainInfo.Rows[0]["Guid"]), desktop);

                foreach (DataRow row in dataTableMenus.Rows)
                {
                    var menu = new Common.Menu();

                    menuType = (Business.DomainMenuType)Helper.GetInt(row["Type"]);
                    switch (menuType)
                    {
                    case Business.DomainMenuType.ExternalUrl:
                        menu.Type     = (int)menuType;
                        menu.Path     = row["Link"].ToString();
                        menu.Title    = row["Title"].ToString();
                        menu.Target   = Helper.GetInt(row["TargetType"]) == (int)Business.DomainNameTargetType.BlankPage ? "_blank" : "_self";
                        menu.Children = new List <Common.Menu>();
                        menu.Location = Helper.GetInt(row["Location"]);
                        lstMenu.Add(menu);
                        break;

                    case Business.DomainMenuType.DataCenter:
                        DataTable dataTableDataMenu = Facade.Data.GetMenusOfDataCenter(Helper.GetGuid(row["DataCenterGuid"]));
                        DataView  dataViewMenu      = dataTableDataMenu.DefaultView;
                        dataViewMenu.RowFilter = string.Format("ParentGuid='{0}'", Guid.Empty);
                        DataTable dataTableParent = dataViewMenu.ToTable();

                        foreach (DataRow rowData in dataTableParent.Rows)
                        {
                            var menu1 = new Common.Menu();
                            menu1.Path   = Helper.GetString(rowData["Content"]).Length > 0 ? string.Format("/{0}{1}/{2}", (int)Business.ContentType.Menu, rowData["ID"].ToString(), rowData["Title"]) : "#";
                            menu1.Title  = rowData["Title"].ToString();
                            menu1.Type   = (int)menuType;
                            menu1.Target = "_self";

                            menu1.Children = GenerateDataMenu(dataTableDataMenu, Helper.GetGuid(row["Guid"]), (Business.DefaultPages)Helper.GetInt(domainInfo.Rows[0]["DefaultPage"]));
                            menu1.Location = Helper.GetInt(row["Location"]);
                            lstMenu.Add(menu1);
                        }
                        break;
                    }
                }

                return(lstMenu);
            }
            catch { return(lstMenu); }
        }
Example #2
0
        public static string GetMenusOfDesktop(string domainName, Business.Desktop desktop, Business.DomainMenuLocation menuLocation)
        {
            try
            {
                Business.DomainMenu domainMenuController = new Business.DomainMenu();
                string        target;
                StringBuilder menus          = new StringBuilder();
                DataTable     domainInfo     = Facade.Domain.GetDomainInfo(domainName);
                DataTable     dataTableMenus = domainMenuController.GetMenusOfDesktop(Helper.GetGuid(domainInfo.Rows[0]["Guid"]), desktop);

                foreach (DataRow dataRowMenu in dataTableMenus.Rows)
                {
                    Business.DomainMenuType       menuType   = (Business.DomainMenuType)Helper.GetInt(dataRowMenu["Type"]);
                    Business.DomainNameTargetType targetType = (Business.DomainNameTargetType)(Helper.GetInt(dataRowMenu["TargetType"]));
                    target = string.Empty;

                    switch (targetType)
                    {
                    case Business.DomainNameTargetType.SelfPage:
                        target = "_self";
                        break;

                    case Business.DomainNameTargetType.BlankPage:
                        target = "_blank";
                        break;
                    }

                    Business.DomainMenuLocation location = (Business.DomainMenuLocation)Helper.GetInt(dataRowMenu["Location"]);
                    if (location == menuLocation)
                    {
                        switch (menuType)
                        {
                        case Business.DomainMenuType.ExternalUrl:
                            menus.Append(string.Format(@"<li><a target='{0}' href='{1}'>{2}</a></li>"
                                                       , target
                                                       , Helper.GetString(dataRowMenu["Link"])
                                                       , Helper.GetString(dataRowMenu["Title"])));
                            break;

                        case Business.DomainMenuType.DataCenter:
                            DataTable dataTableDataMenu = Facade.Data.GetMenusOfDataCenter(Helper.GetGuid(dataRowMenu["DataCenterGuid"]));
                            menus.Append(GenerateMenu(dataTableDataMenu, (Business.DefaultPages)Helper.GetInt(domainInfo.Rows[0]["DefaultPage"])));
                            break;
                        }
                    }
                }

                return(menus.ToString());
            }
            catch { return(string.Empty); }
        }
Example #3
0
 public DataTable GetDomainMenu(Guid domainGuid, Business.DataLocation location, Business.Desktop desktop)
 {
     return(base.FetchSPDataTable("GetDomainMenu",
                                  "@DomainGuid", domainGuid,
                                  "@Location", (int)location,
                                  "@Desktop", (int)desktop));
 }
Example #4
0
 public static void GetDomainInfo(string domainName, out Business.Desktop desktop, out Business.DefaultPages defaultPage, out Business.Theme theme)
 {
     Business.Domain domainController = new Business.Domain();
     domainController.GetDomainInfo(domainName, out desktop, out defaultPage, out theme);
 }
Example #5
0
 public static DataTable GetContent(string domainName, Business.DataLocation location, Business.Desktop desktop)
 {
     try
     {
         Business.Domain domainController = new Business.Domain();
         return(domainController.GetContent(domainName, location, desktop));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }