示例#1
0
        public static HtmlBuilder Breadcrumb(
            this HtmlBuilder hb, SiteSettings ss, long siteId, bool _using)
        {
            if (!Sessions.LoggedIn() || !_using)
            {
                return(hb);
            }
            var controller = Url.RouteData("controller").ToLower();

            switch (controller)
            {
            case "admins":
                return(Breadcrumb(hb, controller));

            case "depts":
                return(Breadcrumb(hb, controller, Displays.Depts()));

            case "groups":
                return(Permissions.CanManageTenant()
                        ? Breadcrumb(hb, controller, Displays.Groups())
                        : Breadcrumb(hb));

            case "users":
                return(Permissions.CanManageTenant()
                        ? Breadcrumb(hb, controller, Displays.Users())
                        : Breadcrumb(hb));

            case "items":
            case "permissions":
                return(hb.Breadcrumb(siteId));

            default:
                return(hb);
            }
        }
 public static ErrorData OnRestoring(Context context, SiteSettings ss, bool api = false)
 {
     if (api)
     {
         if ((!Parameters.Api.Enabled ||
              context.ContractSettings.Api == false ||
              context.UserSettings?.AllowApi(context: context) == false))
         {
             return(new ErrorData(type: Error.Types.InvalidRequest));
         }
         if (context.InvalidJsonData)
         {
             return(new ErrorData(type: Error.Types.InvalidJsonData));
         }
     }
     if (ss.LockedTable())
     {
         return(new ErrorData(
                    type: Error.Types.LockedTable,
                    data: new string[]
         {
             ss.LockedTableUser.Name,
             ss.LockedTableTime.DisplayValue.ToString(context.CultureInfo())
         }));
     }
     return(Permissions.CanManageTenant(context: context)
         ? new ErrorData(type: Error.Types.None)
         : new ErrorData(type: Error.Types.HasNotPermission));
 }
        /// <summary>
        /// Fixed:
        /// </summary>
        public static Error.Types OnAddingMailAddress(
            SiteSettings ss,
            UserModel userModel,
            string mailAddress,
            out string data)
        {
            var error = MailAddressValidators.BadMailAddress(mailAddress, out data);

            if (!DefinitionAccessor.Parameters.Service.ShowProfiles)
            {
                return(Error.Types.InvalidRequest);
            }
            if (error.Has())
            {
                return(error);
            }
            if (mailAddress.Trim() == string.Empty)
            {
                return(Error.Types.InputMailAddress);
            }
            if (!Permissions.CanManageTenant() && !userModel.Self())
            {
                return(Error.Types.HasNotPermission);
            }
            return(Error.Types.None);
        }
        /// <summary>
        /// Fixed:
        /// </summary>
        public static ErrorData OnAddingMailAddress(
            Context context,
            UserModel userModel,
            string mailAddress,
            out string data)
        {
            var errorData = MailAddressValidators.BadMailAddress(
                context: context,
                addresses: mailAddress,
                data: out data);

            if (!Parameters.Service.ShowProfiles)
            {
                return(new ErrorData(type: Error.Types.InvalidRequest));
            }
            if (errorData.Type.Has())
            {
                return(errorData);
            }
            if (mailAddress.Trim() == string.Empty)
            {
                return(new ErrorData(type: Error.Types.InputMailAddress));
            }
            if (!Permissions.CanManageTenant(context: context) &&
                !userModel.Self(context: context))
            {
                return(new ErrorData(type: Error.Types.HasNotPermission));
            }
            return(new ErrorData(type: Error.Types.None));
        }
示例#5
0
 public static string Initialize(Context context)
 {
     if (Permissions.CanManageTenant(context: context))
     {
         Initializer.SetParameters();
     }
     return("[]");
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 public static ErrorData OnEntry(Context context, SiteSettings ss)
 {
     return
         (context.UserSettings?.AllowGroupAdministration(context: context) == true ||
          Permissions.CanManageTenant(context: context)
                 ? new ErrorData(type: Error.Types.None)
                 : new ErrorData(type: Error.Types.HasNotPermission));
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 public static Error.Types OnEntry(SiteSettings ss)
 {
     return
         (Sessions.UserSettings().DisableGroupAdmin != true ||
          Permissions.CanManageTenant()
             ? Error.Types.None
             : Error.Types.HasNotPermission);
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 public static Error.Types OnEntry(Context context, SiteSettings ss)
 {
     return
         (context.UserSettings?.DisableGroupAdmin != true ||
          Permissions.CanManageTenant(context: context)
                 ? Error.Types.None
                 : Error.Types.HasNotPermission);
 }
示例#9
0
        public static string AdminsIndex(this HtmlBuilder hb, Context context)
        {
            if (!Permissions.CanManageTenant(context: context))
            {
                return(HtmlTemplates.Error(
                           context: context,
                           errorType: Error.Types.HasNotPermission));
            }
            var ss = new SiteSettings();

            return(hb.Template(
                       context: context,
                       ss: ss,
                       view: null,
                       methodType: Pleasanter.Models.BaseModel.MethodTypes.NotSet,
                       title: Displays.Admin(context: context),
                       verType: Versions.VerTypes.Latest,
                       useNavigationMenu: false,
                       action: () => hb
                       .Nav(css: "cf", action: () => hb
                            .Ul(css: "nav-sites", action: () => hb
                                .Li(css: "nav-site", action: () => hb
                                    .A(
                                        attributes: new HtmlAttributes()
                                        .Href(Locations.Index(
                                                  context: context,
                                                  controller: "Depts")),
                                        action: () => hb
                                        .Div(action: () => hb
                                             .Text(Displays.Depts(context: context)))
                                        .StackStyles()))
                                .Li(css: "nav-site", action: () => hb
                                    .A(
                                        attributes: new HtmlAttributes()
                                        .Href(Locations.Index(
                                                  context: context,
                                                  controller: "Groups")),
                                        action: () => hb
                                        .Div(action: () => hb
                                             .Text(Displays.Groups(context: context)))
                                        .StackStyles()))
                                .Li(css: "nav-site", action: () => hb
                                    .A(
                                        attributes: new HtmlAttributes()
                                        .Href(Locations.Index(
                                                  context: context,
                                                  controller: "Users")),
                                        action: () => hb
                                        .Div(action: () => hb
                                             .Text(Displays.Users(context: context)))
                                        .StackStyles()))))
                       .MainCommands(
                           context: context,
                           ss: ss,
                           siteId: 0,
                           verType: Versions.VerTypes.Latest))
                   .ToString());
        }
示例#10
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public static Error.Types OnDeletingTenantImage(Context context, SiteSettings ss)
 {
     if (!Permissions.CanManageTenant(context) &&
         context.UserSettings?.EnableManageTenant != true)
     {
         return(Error.Types.HasNotPermission);
     }
     return(Error.Types.None);
 }
示例#11
0
 public static Error.Types OnRestoring()
 {
     if (!DefinitionAccessor.Parameters.Service.ShowProfiles)
     {
         return(Error.Types.InvalidRequest);
     }
     return(Permissions.CanManageTenant()
         ? Error.Types.None
         : Error.Types.HasNotPermission);
 }
示例#12
0
 public static Error.Types OnRestoring(Context context, bool api = false)
 {
     if (api && (context.ContractSettings.Api == false || !Parameters.Api.Enabled))
     {
         return(Error.Types.InvalidRequest);
     }
     return(Permissions.CanManageTenant(context: context)
         ? Error.Types.None
         : Error.Types.HasNotPermission);
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 public static ErrorData OnPasswordResetting(Context context)
 {
     if (!Parameters.Service.ShowProfiles)
     {
         return(new ErrorData(type: Error.Types.InvalidRequest));
     }
     if (!Permissions.CanManageTenant(context: context))
     {
         return(new ErrorData(type: Error.Types.HasNotPermission));
     }
     return(new ErrorData(type: Error.Types.None));
 }
 public static ErrorData OnRestoring(Context context, bool api = false)
 {
     if (api && (context.ContractSettings.Api == false || !Parameters.Api.Enabled))
     {
         return(new ErrorData(type: Error.Types.InvalidRequest));
     }
     if (!Parameters.Service.ShowProfiles)
     {
         return(new ErrorData(type: Error.Types.InvalidRequest));
     }
     return(Permissions.CanManageTenant(context: context)
         ? new ErrorData(type: Error.Types.None)
         : new ErrorData(type: Error.Types.HasNotPermission));
 }
 public static ErrorData OnRestoring(Context context, SiteSettings ss, bool api = false)
 {
     if (api)
     {
         if ((context.ContractSettings.Api == false || !Parameters.Api.Enabled))
         {
             return(new ErrorData(type: Error.Types.InvalidRequest));
         }
         if (context.InvalidJsonData)
         {
             return(new ErrorData(type: Error.Types.InvalidJsonData));
         }
     }
     return(Permissions.CanManageTenant(context: context)
         ? new ErrorData(type: Error.Types.None)
         : new ErrorData(type: Error.Types.HasNotPermission));
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 private static GridData GetGridData(SiteSettings ss, View view, int offset = 0)
 {
     return(new GridData(
                ss: ss,
                view: view,
                where : Rds.GroupsWhere()
                .TenantId(Sessions.TenantId())
                .GroupId_In(sub: Rds.SelectGroupMembers(
                                distinct: true,
                                column: Rds.GroupMembersColumn().GroupId(),
                                where : Permissions.GroupMembersWhere()),
                            _using: !Permissions.CanManageTenant()),
                offset: offset,
                pageSize: ss.GridPageSize.ToInt(),
                countRecord: true,
                aggregations: ss.Aggregations));
 }
        public static HtmlBuilder Breadcrumb(
            this HtmlBuilder hb, SiteSettings ss, long siteId, bool _using)
        {
            if (!Sessions.LoggedIn() || !_using)
            {
                return(hb);
            }
            var controller = Routes.Controller();

            switch (controller)
            {
            case "admins":
                return(Breadcrumb(hb, controller));

            case "depts":
                return(Breadcrumb(hb, controller, Displays.Depts()));

            case "groups":
                return(Permissions.CanManageTenant()
                        ? Breadcrumb(hb, controller, Displays.Groups())
                        : Breadcrumb(hb));

            case "users":
                switch (Routes.Action())
                {
                case "editapi":
                    return(hb.Breadcrumb(new Dictionary <string, string>
                    {
                        { Locations.Get("Users", "EditApi"), Displays.ApiSettings() }
                    }));

                default:
                    return(Permissions.CanManageTenant()
                                ? Breadcrumb(hb, controller, Displays.Users())
                                : Breadcrumb(hb));
                }

            case "items":
            case "permissions":
                return(hb.Breadcrumb(siteId));

            default:
                return(hb);
            }
        }
示例#18
0
 /// <summary>
 /// Fixed:
 /// </summary>
 private static GroupCollection GroupCollection(
     SiteSettings ss, View view, int offset = 0)
 {
     return(new GroupCollection(
                ss: ss,
                column: GridSqlColumnCollection(ss),
                where : view.Where(ss: ss, where : Rds.GroupsWhere()
                                   .TenantId(Sessions.TenantId())
                                   .GroupId_In(
                                       sub: Rds.SelectGroupMembers(
                                           distinct: true,
                                           column: Rds.GroupMembersColumn().GroupId(),
                                           where : Permissions.GroupMembersWhere()),
                                       _using: !Permissions.CanManageTenant())),
                orderBy: view.OrderBy(ss, Rds.GroupsOrderBy()
                                      .UpdatedTime(SqlOrderBy.Types.desc)),
                offset: offset,
                pageSize: ss.GridPageSize.ToInt(),
                countRecord: true,
                aggregations: ss.Aggregations));
 }
示例#19
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public static ErrorData OnEntry(Context context, SiteSettings ss, bool api = false)
 {
     if (api)
     {
         if ((!Parameters.Api.Enabled ||
              context.ContractSettings.Api == false ||
              context.UserSettings?.AllowApi(context: context) == false))
         {
             return(new ErrorData(type: Error.Types.InvalidRequest));
         }
         if (context.InvalidJsonData)
         {
             return(new ErrorData(type: Error.Types.InvalidJsonData));
         }
         return(new ErrorData(type: Error.Types.None));
     }
     return(context.UserSettings?.AllowGroupAdministration(context: context) == true ||
            Permissions.CanManageTenant(context: context)
             ? new ErrorData(type: Error.Types.None)
             : new ErrorData(type: Error.Types.HasNotPermission));
 }
示例#20
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public static Error.Types OnUploadingTenantImage(
     Context context, SiteSettings ss, byte[] bin)
 {
     if (!Permissions.CanManageTenant(context) &&
         context.UserSettings?.EnableManageTenant != true)
     {
         return(Error.Types.HasNotPermission);
     }
     if (bin == null)
     {
         return(Error.Types.SelectFile);
     }
     try
     {
         System.Drawing.Image.FromStream(new System.IO.MemoryStream(bin));
     }
     catch (System.Exception)
     {
         return(Error.Types.IncorrectFileFormat);
     }
     return(Error.Types.None);
 }
 public static ErrorData OnRestoring(Context context, SiteSettings ss, bool api = false)
 {
     if (api)
     {
         if ((!Parameters.Api.Enabled ||
              context.ContractSettings.Api == false ||
              context.UserSettings?.AllowApi(context: context) == false))
         {
             return(new ErrorData(type: Error.Types.InvalidRequest));
         }
         if (context.InvalidJsonData)
         {
             return(new ErrorData(type: Error.Types.InvalidJsonData));
         }
     }
     if (!Parameters.Service.ShowProfiles && !context.HasPrivilege)
     {
         return(new ErrorData(type: Error.Types.InvalidRequest));
     }
     return(Permissions.CanManageTenant(context: context)
         ? new ErrorData(type: Error.Types.None)
         : new ErrorData(type: Error.Types.HasNotPermission));
 }
示例#22
0
 private static HtmlBuilder SettingsMenu(
     this HtmlBuilder hb, SiteSettings ss, long siteId)
 {
     return(hb.Ul(id: "SettingsMenu", css: "menu", action: () => hb
                  .Li(
                      action: () => hb
                      .A(
                          href: Locations.ItemEdit(siteId),
                          action: () => hb
                          .Span(css: "ui-icon ui-icon-gear")
                          .Text(text: Displays.SiteSettings())),
                      _using: siteId != 0 && ss.CanManageSite(site: true))
                  .Li(
                      action: () => hb
                      .A(
                          href: Locations.Index("Depts"),
                          action: () => hb
                          .Span(css: "ui-icon ui-icon-gear")
                          .Text(text: Displays.DeptAdmin())),
                      _using: Permissions.CanManageTenant())
                  .Li(
                      action: () => hb
                      .A(
                          href: Locations.Index("Groups"),
                          action: () => hb
                          .Span(css: "ui-icon ui-icon-gear")
                          .Text(text: Displays.GroupAdmin())))
                  .Li(
                      action: () => hb
                      .A(
                          href: Locations.Index("Users"),
                          action: () => hb
                          .Span(css: "ui-icon ui-icon-gear")
                          .Text(text: Displays.UserAdmin())),
                      _using: Permissions.CanManageTenant())));
 }
示例#23
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public static Error.Types OnEntry(IContext context, SiteSettings ss)
 {
     return(Permissions.CanManageTenant(context: context)
         ? Error.Types.None
         : Error.Types.HasNotPermission);
 }
 public static ErrorData OnRestoring(Context context)
 {
     return(Permissions.CanManageTenant(context: context)
         ? new ErrorData(type: Error.Types.None)
         : new ErrorData(type: Error.Types.HasNotPermission));
 }
        private static bool Using(
            Context context,
            SiteSettings ss,
            string referenceType,
            long siteId,
            NavigationMenu menu)
        {
            var canManageGroups = context.UserSettings?.AllowGroupAdministration(context: context) == true;
            var canCreateGroups = context.UserSettings?.AllowGroupCreation(context: context) == true;
            var canManageSite   = siteId != 0 && context.CanManageSite(
                ss: ss,
                site: true);
            var canManageDepts         = Permissions.CanManageTenant(context: context);
            var canManageUsers         = Permissions.CanManageUser(context: context);
            var canManageRegistrations = Permissions.CanManageRegistrations(context: context);
            var canManageTenants       = Permissions.CanManageTenant(context: context) ||
                                         context.UserSettings?.EnableManageTenant == true;
            var canManageTrashBox = CanManageTrashBox(
                context: context,
                ss: ss);
            var canUseApi     = context.UserSettings?.AllowApi(context: context) == true;
            var canUnlockSite = ss.LockedTable() &&
                                ss.LockedTableUser.Id == context.UserId;

            switch (menu.MenuId)
            {
            case "NewMenu":
                return(ss.ReferenceType == "Sites" && context.Action == "index"
                        ? context.CanManageSite(ss: ss)
                        : ss.ReferenceType == "Groups"
                            ? canCreateGroups
                            : context.CanCreate(ss: ss) &&
                       ss.ReferenceType != "Wikis" &&
                       context.Action != "trashbox");

            case "ViewModeMenu":
                return(Def.ViewModeDefinitionCollection
                       .Any(o => o.ReferenceType == referenceType));

            case "SettingsMenu":
                return(canManageSite ||
                       canManageDepts ||
                       canManageGroups ||
                       canManageUsers ||
                       canUnlockSite);

            case "SettingsMenu_SiteSettings":
                return(canManageSite);

            case "SettingsMenu_DeptAdmin":
                return(canManageDepts);

            case "SettingsMenu_GroupAdmin":
                return(canManageGroups);

            case "SettingsMenu_UserAdmin":
                return(canManageUsers);

            case "SettingsMenu_Registrations":
                return(canManageRegistrations);

            case "SettingsMenu_TrashBox":
                return(canManageTrashBox);

            case "SettingsMenu_TenantAdmin":
                return(canManageTenants);

            case "SettingsMenu_ImportSitePackage":
                return(Parameters.SitePackage.Import &&
                       canManageSite &&
                       ss.IsSite(context: context) &&
                       ss.ReferenceType == "Sites" ||
                       (context.Controller == "items" &&
                        ss.SiteId == 0 &&
                        context.UserSettings?.AllowCreationAtTopSite(context: context) == true));

            case "SettingsMenu_ExportSitePackage":
                return(Parameters.SitePackage.Export &&
                       canManageSite &&
                       ss.IsSite(context: context));

            case "AccountMenu_ShowStartGuide":
                return(context.UserSettings?.ShowStartGuideAvailable(context: context) == true);

            case "AccountMenu_EditProfile":
                return(Parameters.Service.ShowProfiles);

            case "AccountMenu_ChangePassword":
                return(Parameters.Service.ShowChangePassword);

            case "AccountMenu_ApiSettings":
                return(Parameters.Api.Enabled &&
                       context.ContractSettings.Api != false &&
                       canUseApi);

            case "LockTableMenu_LockTable":
            case "LockTableMenu_ForceUnlockTable":
                return(canManageSite &&
                       ss.AllowLockTable == true);

            case "LockTableMenu_UnlockTable":
                return(ss.AllowLockTable == true);

            case "AccountMenu_Responsive":
                return(context.Mobile);

            default:
                return(true);
            }
        }
示例#26
0
        public static HtmlBuilder Breadcrumb(
            this HtmlBuilder hb, Context context, SiteSettings ss, View view, bool _using)
        {
            if ((!context.Authenticated && !context.Publish) || !_using)
            {
                return(hb);
            }
            switch (context.Controller)
            {
            case "admins":
                return(Breadcrumb(
                           hb: hb,
                           context: context,
                           ss: ss,
                           controller: context.Controller));

            case "depts":
                return(Breadcrumb(
                           hb: hb,
                           context: context,
                           ss: ss,
                           controller: context.Controller,
                           display: Displays.Depts(context: context)));

            case "tenants":
                return(Permissions.CanManageTenant(context: context)
                        ? Breadcrumb(
                           hb: hb,
                           context: context,
                           ss: ss,
                           controller: context.Controller,
                           display: Displays.Tenants(context: context),
                           action: "Edit")
                        : (context.UserSettings?.EnableManageTenant == true)
                            ? BreadcrumbWithoutAdmins(
                           hb: hb,
                           context: context,
                           ss: ss,
                           controller: context.Controller,
                           display: Displays.Tenants(context: context),
                           action: "Edit")
                            : Breadcrumb(
                           hb: hb,
                           context: context,
                           ss: ss));

            case "groups":
                return(Permissions.CanManageTenant(context: context)
                        ? Breadcrumb(
                           hb: hb,
                           context: context,
                           ss: ss,
                           controller: context.Controller,
                           display: Displays.Groups(context: context))
                        : Breadcrumb(
                           hb: hb,
                           context: context,
                           ss: ss));

            case "users":
                switch (context.Action)
                {
                case "editapi":
                    return(hb.Breadcrumb(
                               context: context,
                               ss: ss,
                               data: new Dictionary <string, string>
                    {
                        {
                            Locations.Get(
                                context: context,
                                parts: new string[]
                            {
                                "Users",
                                "EditApi"
                            }),
                            Displays.ApiSettings(context: context)
                        }
                    }));

                default:
                    return(Permissions.CanManageTenant(context: context)
                                ? Breadcrumb(
                               hb: hb,
                               context: context,
                               ss: ss,
                               controller: context.Controller,
                               display: Displays.Users(context: context))
                                : Breadcrumb(
                               hb: hb,
                               context: context,
                               ss: ss));
                }

            case "registrations":
                return(Permissions.CanManageTenant(context: context)
                        ? Breadcrumb(
                           hb: hb,
                           context: context,
                           ss: ss,
                           controller: context.Controller,
                           display: Displays.Registrations(context: context))
                        : Breadcrumb(
                           hb: hb,
                           context: context,
                           ss: ss));

            case "publishes":
            case "items":
                return(hb
                       .CopyDirectUrlToClipboard(
                           context: context,
                           view: view)
                       .Breadcrumb(
                           context: context,
                           ss: ss));

            case "permissions":
                return(hb.Breadcrumb(context: context, ss: ss));

            default:
                return(hb);
            }
        }
示例#27
0
        private static HtmlBuilder NavigationMenu(
            this HtmlBuilder hb,
            Context context,
            SiteSettings ss,
            long siteId,
            string referenceType,
            bool useNavigationMenu)
        {
            var canManageGroups   = Sessions.UserSettings().DisableGroupAdmin != true;
            var canManageSite     = siteId != 0 && context.CanManageSite(ss: ss, site: true);
            var canManageDepts    = Permissions.CanManageTenant(context: context);
            var canManageUsers    = Permissions.CanManageTenant(context: context);
            var canManageTrashBox = CanManageTrashBox(context: context, ss: ss);

            return(hb.Ul(
                       id: "NavigationMenu",
                       action: () => hb
                       .Li(
                           action: () => hb
                           .Div(action: () => hb
                                .A(
                                    href: NewHref(context: context, ss: ss),
                                    attributes: SiteIndex(context: context, ss: ss)
                                        ? new HtmlAttributes()
                                    .OnClick("$p.templates($(this));")
                                    .DataAction("Templates")
                                    .DataMethod("post")
                                        : null,
                                    action: () => hb
                                    .Span(css: "ui-icon ui-icon-plus")
                                    .Text(text: Displays.New()))),
                           _using: ss.ReferenceType == "Sites" && context.Action == "index"
                            ? context.CanManageSite(ss: ss)
                            : context.CanCreate(ss: ss) &&
                           ss.ReferenceType != "Wikis" &&
                           context.Action != "trashbox")
                       .Li(
                           css: "sub-menu",
                           action: () => hb
                           .Div(
                               attributes: new HtmlAttributes().DataId("ViewModeMenu"),
                               action: () => hb
                               .Span(css: "ui-icon ui-icon-triangle-1-e")
                               .Text(text: Displays.View()))
                           .ViewModeMenu(context: context, ss: ss),
                           _using: Def.ViewModeDefinitionCollection
                           .Any(o => o.ReferenceType == referenceType))
                       .Li(
                           css: "sub-menu",
                           action: () => hb
                           .Div(
                               attributes: new HtmlAttributes().DataId("SettingsMenu"),
                               action: () => hb
                               .Span(css: "ui-icon ui-icon-gear")
                               .Text(text: Displays.Manage()))
                           .SettingsMenu(
                               ss: ss,
                               siteId: siteId,
                               canManageSite: canManageSite,
                               canManageDepts: canManageDepts,
                               canManageGroups: canManageGroups,
                               canManageUsers: canManageUsers,
                               canManageTrashBox: canManageTrashBox),
                           _using:
                           canManageSite ||
                           canManageDepts ||
                           canManageGroups ||
                           canManageUsers)
                       .Li(
                           css: "sub-menu",
                           action: () => hb
                           .Div(
                               attributes: new HtmlAttributes().DataId("AccountMenu"),
                               action: () => hb
                               .Span(css: "ui-icon ui-icon-person")
                               .Text(text: SiteInfo.UserName(
                                         context: context,
                                         userId: context.UserId)))
                           .AccountMenu(context: context))));
        }
示例#28
0
 /// <summary>
 /// Fixed:
 /// </summary>
 public static Error.Types OnEntry(SiteSettings ss)
 {
     return(Permissions.CanManageTenant()
         ? Error.Types.None
         : Error.Types.HasNotPermission);
 }
 /// <summary>
 /// Fixed:
 /// </summary>
 public static ErrorData OnEntry(Context context, SiteSettings ss)
 {
     return(Permissions.CanManageTenant(context: context)
         ? new ErrorData(type: Error.Types.None)
         : new ErrorData(type: Error.Types.HasNotPermission));
 }
 public static Error.Types OnRestoring()
 {
     return(Permissions.CanManageTenant()
         ? Error.Types.None
         : Error.Types.HasNotPermission);
 }