Пример #1
0
    public void Display_Move(EkEnumeration.FolderType containerType)
    {
        if (containerType == Ektron.Cms.Common.EkEnumeration.FolderType.Catalog)
            {

                Display_MoveEntries();
            }
            else
            {

                Display_MoveContentByCategory();
            }
    }
Пример #2
0
    /// <summary>
    /// Returns a (filtered) list of sub-folders for the specified folder.
    /// </summary>
    /// <param name="folderID">ID of folder</param>
    /// <param name="recursive">True if folder list should be recursive retrieved</param>
    /// <param name="orderBy">Field to order list by</param>
    /// <returns>A (filtered) list of sub-folders for the specified folder</returns>
    public IEnumerable<FolderData> GetFilteredChildFolders(long folderID, bool recursive, EkEnumeration.FolderOrderBy orderBy)
    {
        List<FolderData> filteredFolders = new List<FolderData>();

        IEnumerable<FolderData> allChildFolders = contentAPI.GetChildFolders(folderID, recursive, orderBy);
        if (allChildFolders != null)
        {
            foreach (FolderData folder in contentAPI.GetChildFolders(folderID, recursive, orderBy))
            {
                if (showSpecialFolders ||
                    folder.FolderType == (int)EkEnumeration.FolderType.Content ||
                    folder.FolderType == (int)EkEnumeration.FolderType.Root)
                {
                    filteredFolders.Add(folder);
                }
            }
        }

        return filteredFolders;
    }
Пример #3
0
            public NStateMenu(CMSIDTypes.menu_id menu_id, ref EkEnumeration.CMSMenuItemType targettype, ref CMSIDTypes.menuitem_id targetid)
            {
                ExceptionSource = this.GetType().ToString();

                Ektron.Cms.Controls.Menu motemp = new Ektron.Cms.Controls.Menu();
                motemp.CacheInterval = 60;
                motemp.DefaultMenuID = menu_id.val;
                motemp.Fill();
                CommonConstructor(motemp, targettype, targetid);
            }
Пример #4
0
 /// <summary>
 /// Returns page icons for different types of the Locale taxonomies.
 /// </summary>
 /// <param name="type">ek enumeration of the type of the content for locale.</param>
 /// <param name="subType">ek enumeration of the sub type of the content for locale.</param>
 /// <returns>content icon for the differnet types of locale taxonomies.</returns>
 private string GetTypeIcon(int type, EkEnumeration.CMSContentSubtype subType)
 {
     if (type == EkEnumeration.CMSObjectTypes.User.GetHashCode() && this.m_ObjectType == EkEnumeration.CMSObjectTypes.User)
     {
         return UserIcon;
     }
     else if (type == 2 && this.m_ObjectType == EkEnumeration.CMSObjectTypes.Content)
     {
         return FormsIcon;
     }
     else if (type == 1)
     {
         if ((subType == EkEnumeration.CMSContentSubtype.PageBuilderData | subType == EkEnumeration.CMSContentSubtype.PageBuilderMasterData))
         {
             return pageIcon;
         }
         return ContentIcon;
     }
     else
     {
         return null;
     }
 }
Пример #5
0
 public string GetTypeFriendlyName(EkEnumeration.CMSObjectTypes type, long id)
 {
     string typeName = String.Empty;
     switch (type)
     {
         case EkEnumeration.CMSObjectTypes.TaxonomyNode:
             typeName = "Taxonomy";
             break;
         case EkEnumeration.CMSObjectTypes.Folder:
             typeName = "Catalog";
             break;
         case EkEnumeration.CMSObjectTypes.CatalogEntry:
             EntryData entryData;
             Commerce.CatalogEntryApi catalogEntryApi = new Commerce.CatalogEntryApi();
             entryData = catalogEntryApi.GetItem(id);
             switch (entryData.EntryType)
             {
                 case EkEnumeration.CatalogEntryType.Bundle:
                     typeName = "Bundle";
                     break;
                 case EkEnumeration.CatalogEntryType.ComplexProduct:
                     typeName = "Complex Product";
                     break;
                 case EkEnumeration.CatalogEntryType.Kit:
                     typeName = "Kit";
                     break;
                 case EkEnumeration.CatalogEntryType.Product:
                     typeName = "Product";
                     break;
                 case EkEnumeration.CatalogEntryType.SubscriptionProduct:
                     typeName = "Subscription";
                     break;
             }
             break;
     }
     return typeName;
 }
 protected EkEnumeration.KPIPeriod GetPeriod(string rawValue, EkEnumeration.KPIPeriod defaultPeriod)
 {
     try {
         if (!String.IsNullOrEmpty(rawValue))
             return (EkEnumeration.KPIPeriod)Enum.Parse(typeof(EkEnumeration.KPIPeriod), rawValue, true);
     }
     catch { }
     return defaultPeriod;
 }
Пример #7
0
 private string GetObjectTypeString(EkEnumeration.CustomPropertyObjectType objectType)
 {
     return m_refMsg.GetMessage((string)("CmsObjectType" + objectType.ToString()));
 }
Пример #8
0
    private string OutputFolders(int level, long parent, EkEnumeration.FolderTreeType FolderType)
    {
        Ektron.Cms.Common.EkEnumeration.FolderDestinationType[] DestType = new Ektron.Cms.Common.EkEnumeration.FolderDestinationType[1];
        string[] Link = new string[1];
        string[] DestName = new string[1];
        string[] ExtParams = new string[1];
        System.String result = "";
        Ektron.Cms.Content.EkContent objContentRef;
        try
        {
            objContentRef = m_refAPI.EkContentRef;
            if (FolderType == EkEnumeration.FolderTreeType.Content)
            {
                DestType[0] = EkEnumeration.FolderDestinationType.Frame; //EkContent.FolderDestinationType.Frame
                Link[0] = "content.aspx?action=ViewContentByCategory&id=";
                DestName[0] = "ek_main";
                ExtParams[0] = "";
                result = objContentRef.OutputFolders(level, parent, ref DestType, ref Link, ref DestName, ref ExtParams, ref m_hashAllFolders, EkEnumeration.FolderTreeType.Content);

            }
            else if (FolderType == EkEnumeration.FolderTreeType.Library)
            {
                DestType[0] = EkEnumeration.FolderDestinationType.Frame;
                Link[0] = "library.aspx?action=ViewLibraryByCategory&id=";
                DestName[0] = "ek_main";
                ExtParams[0] = "";
                result = objContentRef.OutputFolders(level, parent, ref DestType, ref Link, ref DestName, ref ExtParams, ref m_hashAllFolders, EkEnumeration.FolderTreeType.Library);
            }
        }
        catch (Exception)
        {
            result = "";
        }
        return (result);
    }
Пример #9
0
 public static string GetProductImage(EkEnumeration.CatalogEntryType entryType, string applicationImagePath)
 {
     string productImage = applicationImagePath;
     if (entryType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.Bundle)
     {
         productImage += "images/ui/icons/package.png";
     }
     else if (entryType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.ComplexProduct)
     {
         productImage += "images/ui/icons/bricks.png";
     }
     else if (entryType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.Kit)
     {
         productImage += "images/ui/icons/bulletGreen.png";
     }
     else if (entryType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.SubscriptionProduct)
     {
         productImage += "images/ui/icons/bookGreen.png";
     }
     else
     {
         productImage += "images/ui/icons/brick.png";
     }
     return productImage;
 }
Пример #10
0
 protected bool IsFolderDisabled(EkEnumeration.FolderType folderType)
 {
     bool disabled = true;
     if (folderType == EkEnumeration.FolderType.Catalog && _Mode == Mode.Folder)
     {
         disabled = false;
     }
     return disabled;
 }
Пример #11
0
        protected string GetProductIcon(EkEnumeration.CatalogEntryType entryType)
        {
            string productImage;
            if (entryType == Common.EkEnumeration.CatalogEntryType.Bundle)
            {
                productImage = m_refContentApi.ApplicationPath + "images/ui/icons/package.png";
            }
            else if (entryType == Common.EkEnumeration.CatalogEntryType.ComplexProduct)
            {
                productImage = m_refContentApi.ApplicationPath + "images/ui/icons/bricks.png";
            }
            else if (entryType == Common.EkEnumeration.CatalogEntryType.Kit)
            {
                productImage = m_refContentApi.ApplicationPath + "images/ui/icons/box.png";
            }
            else if (entryType == Common.EkEnumeration.CatalogEntryType.SubscriptionProduct)
            {
                productImage = m_refContentApi.ApplicationPath + "images/ui/icons/bookGreen.png";
            }
            else
            {
                productImage = m_refContentApi.ApplicationPath + "images/ui/icons/brick.png";
            }

            return productImage;
        }
Пример #12
0
 protected string GetFolderIcon(long folderId, EkEnumeration.FolderType folderType, long parentId)
 {
     if (folderId == parentId)
     {
         return GetAppImgPath() + "folderbackup_1.gif";
     }
     else
     {
         if (folderType == EkEnumeration.FolderType.DiscussionBoard)
         {
             return GetAppImgPath() + "menu/users2.gif";
         }
         else if (folderType == EkEnumeration.FolderType.Blog)
         {
             return GetAppImgPath() + "menu/pen_blue.gif";
         }
         else if (folderType == EkEnumeration.FolderType.Community)
         {
             return GetAppImgPath() + "menu/house2.gif";
         }
         else if (folderType == EkEnumeration.FolderType.Catalog)
         {
             return GetAppImgPath() + "commerce/catalogclosed_1.gif";
         }
         else
         {
             return GetAppImgPath() + "folderclosed_1.gif";
         }
     }
 }
Пример #13
0
 protected string GetFolderCssClass(EkEnumeration.FolderType folderType)
 {
     string CssClass = string.Empty;
     if (folderType == EkEnumeration.FolderType.Catalog)
     {
         CssClass = "catalogFolder";
     }
     return CssClass;
 }
Пример #14
0
 public static string CMSMenuItemTargetToString(EkEnumeration.CMSMenuItemTarget ItemTarget)
 {
     string ItemTargetStr = "_self";
     if (ItemTarget == Ektron.Cms.Common.EkEnumeration.CMSMenuItemTarget.Self)
     {
         ItemTargetStr = "_self";
     }
     else if (ItemTarget == Ektron.Cms.Common.EkEnumeration.CMSMenuItemTarget.Popup)
     {
         ItemTargetStr = "_blank";
     }
     else if (ItemTarget == Ektron.Cms.Common.EkEnumeration.CMSMenuItemTarget.Top)
     {
         ItemTargetStr = "_top";
     }
     else if (ItemTarget == Ektron.Cms.Common.EkEnumeration.CMSMenuItemTarget.Parent)
     {
         ItemTargetStr = "_parent";
     }
     return (ItemTargetStr);
 }
Пример #15
0
            public NStateMenu(ref Ektron.Cms.Controls.Menu menuObject, ref EkEnumeration.CMSMenuItemType targettype, ref CMSIDTypes.menuitem_id targetid)
            {
                ExceptionSource = this.GetType().ToString();

                CommonConstructor(menuObject, targettype, targetid);
            }
Пример #16
0
 public static bool ValidateUserRole(EkEnumeration.CmsRoleIds roleId, bool redirect)
 {
     ContentAPI cApi = new ContentAPI();
     if (!cApi.IsARoleMember(roleId))
     {
         if (redirect)
             System.Web.HttpContext.Current.Response.Redirect(cApi.AppPath + "login.aspx?fromLnkPg=1", false);
         return false;
     }
     return true;
 }
Пример #17
0
    public static string GetFolderImage(EkEnumeration.FolderType type, string applicationImagePath)
    {
        string imageURL = applicationImagePath;

        if (type == Ektron.Cms.Common.EkEnumeration.FolderType.Community)
        {

            imageURL += "images/ui/icons/folderCommunity.png";
        }
        else if (type == Ektron.Cms.Common.EkEnumeration.FolderType.Catalog)
        {

            imageURL += "images/ui/icons/folderGreen.png";
        }
        else
        {

            imageURL += "images/ui/icons/folder.png";
        }

        return imageURL;
    }
Пример #18
0
 public string GetProductTypeName(EkEnumeration.CatalogEntryType subType)
 {
     string localizedType = "";
     if (subType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.Bundle)
     {
         localizedType = "Bundle";
     }
     else if (subType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.ComplexProduct)
     {
         localizedType = "Complex Product";
     }
     else if (subType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.Kit)
     {
         localizedType = "Kit";
     }
     else if (subType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.Product)
     {
         localizedType = "Product";
     }
     else if (subType == Ektron.Cms.Common.EkEnumeration.CatalogEntryType.SubscriptionProduct)
     {
         localizedType = "Subscription";
     }
     return localizedType;
 }
Пример #19
0
 public string GetProductIcon(EkEnumeration.CatalogEntryType type, string applicationImagePath)
 {
     return "<img src=\"" + Utilities.GetProductImage(type, applicationImagePath) + "\"  alt=\"Content\">" + "&nbsp;&nbsp;";
 }
Пример #20
0
 public bool IsExportTranslationSupportedForContentType(EkEnumeration.CMSContentType ContentType)
 {
     return (ContentType == EkEnumeration.CMSContentType.Content || ContentType == EkEnumeration.CMSContentType.Forms || ContentType == EkEnumeration.CMSContentType.Assets || ContentType == EkEnumeration.CMSContentType.Multimedia || ContentType == EkEnumeration.CMSContentType.NonLibraryContent || ((EkConstants.ManagedAsset_Min <= (int)ContentType && (int)ContentType <= EkConstants.ManagedAsset_Max)) || ContentType == EkEnumeration.CMSContentType.CatalogEntry);
 }
Пример #21
0
 public string GetProductImage(EkEnumeration.CatalogEntryType entryType)
 {
     return Utilities.GetProductImage(entryType, (string)m_WorkAreaBase.AppImgPath);
 }
Пример #22
0
 public string GetEditAnchor(long Id, int Type, bool bFromApproval, EkEnumeration.CMSContentSubtype subType)
 {
     return GetEditAnchor(Id, Type, bFromApproval, subType, false);
 }
Пример #23
0
    protected string BuildPeriodSelector(string indicator, string type, EkEnumeration.KPIPeriod period)
    {
        System.Text.StringBuilder sb = new System.Text.StringBuilder();
        string nameId = _periodClientIdPrefix + type + "_" + indicator;
        sb.Append("<select class='kpiPeriod' name='" + nameId + "' onchange='" + GetClientClickScript(nameId) + "' >" + Environment.NewLine);

        foreach (EkEnumeration.KPIPeriod kpiperiod in Enum.GetValues(typeof(EkEnumeration.KPIPeriod))) {
            sb.Append("<option ");
            if (period == kpiperiod) {
                sb.Append("selected='selected' ");
            }

            sb.Append("value='" + kpiperiod.ToString() + "' ");
            sb.Append(">" + GetLocalizedEnumName(kpiperiod) + "</option>" + Environment.NewLine);
        }

        sb.Append("</select>" + Environment.NewLine);
        return sb.ToString();
    }
Пример #24
0
    public string GetEditAnchor(long Id, int Type, bool bFromApproval, EkEnumeration.CMSContentSubtype subType, bool isPrimary)
    {
        string result = "";
        string SRC = "";
        string str;
        string backStr;
        if (Type == 3333)
        {
            return GetCatalogEditAnchor(Id, Type, bFromApproval, isPrimary);
        }
        else if (Type == 1)
        {
            if (bFromApproval)
            {
                backStr = "back_file=approval.aspx";
            }
            else
            {
                backStr = "back_file=content.aspx";
            }
        }
        else
        {
            backStr = "back_file=cmsform.aspx";
        }
        str = System.Web.HttpContext.Current.Request.QueryString["action"];
        if (str.Length > 0)
        {
            backStr = backStr + "&back_action=" + str;
        }

        if (bFromApproval)
        {
            if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.Request.QueryString["page"]))
            {
                str = System.Web.HttpContext.Current.Request.QueryString["page"];
                if (str.Length > 0)
                {
                    backStr = backStr + "&back_page=" + str;
                }
            }
        }

        if (!bFromApproval)
        {
            if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.Request.QueryString["folder_id"]))
            {
                str = System.Web.HttpContext.Current.Request.QueryString["folder_id"];
                if (str.Length > 0)
                {
                    backStr = backStr + "&back_folder_id=" + str + "&folderid=" + str;
                }
            }
            else if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.Request.QueryString["folderid"]))
            {
                str = System.Web.HttpContext.Current.Request.QueryString["folderid"];
                if (str.Length > 0)
                {
                    backStr = backStr + "&back_folder_id=" + str + "&folderid=" + str;
                }
            }
        }

        if (Type == 1)
        {
            if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.Request.QueryString["id"]))
            {
                str = System.Web.HttpContext.Current.Request.QueryString["id"];
                if (str.Length > 0)
                {
                    backStr = backStr + "&back_id=" + str;
                }
            }
        }
        else
        {
            if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.Request.QueryString["form_id"]))
            {
                str = System.Web.HttpContext.Current.Request.QueryString["form_id"];
                if (str.Length > 0)
                {
                    backStr = backStr + "&back_form_id=" + str;
                }
            }
        }

        if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.Request.QueryString["callerpage"]))
        {
            str = AntiXss.UrlEncode(System.Web.HttpContext.Current.Request.QueryString["callerpage"]);
            if (str.Length > 0)
            {
                backStr = backStr + "&back_callerpage=" + str;
            }
        }

        if (!string.IsNullOrEmpty(System.Web.HttpContext.Current.Request.QueryString["origurl"]))
        {
            str = System.Web.HttpContext.Current.Request.QueryString["origurl"];
            if (str.Length > 0)
            {
                backStr = backStr + "&back_origurl=" + EkFunctions.UrlEncode(str);
            }
        }

        str = ContentLanguage.ToString();
        if (str.Length > 0)
        {
            backStr = backStr + "&back_LangType=" + str + "&rnd=" + System.Convert.ToInt32(Conversion.Int((10 * VBMath.Rnd()) + 1));
        }

        SRC = (string)("edit.aspx?close=false&LangType=" + ContentLanguage + "&id=" + Id + "&type=update&" + backStr);
        if (bFromApproval)
        {
            SRC += "&pullapproval=true";
        }
        if (subType == EkEnumeration.CMSContentSubtype.PageBuilderData)
        {
            SRC += "&menuItemType=editproperties";
        }
        // Fixed #15583 - using FF, new window opens up when editing the form
        result = GetButtonEventsWCaption(m_refAPI.AppPath + "images/UI/Icons/contentEdit.png", "#", m_refMsg.GetMessage("alt edit button text"), m_refMsg.GetMessage("btn edit"), "OnClick=\"javascript:if(undefined != top.document.getElementById(\'ek_main\')){top.document.getElementById(\'ek_main\').src=\'" + SRC + "\';return false;} else {location.href =\'" + SRC + "\';return false;}\"" + ",\'EDIT\',790,580,1,1);return false;\"", EditButtonCssClass, isPrimary);
        return (result);
    }
Пример #25
0
    private string GetLocalizedEnumName(EkEnumeration.KPIPeriod kpiPeriod)
    {
        string key = String.Empty;
        switch (kpiPeriod) {
            case EkEnumeration.KPIPeriod.Today:
                key = "today";
                break;

            case EkEnumeration.KPIPeriod.Yesterday:
                key = "lbl yesterday";
                break;

            case EkEnumeration.KPIPeriod.SameDayLastWeek:
                key = "lbl same day last week";
                break;

            case EkEnumeration.KPIPeriod.SameDayLastMonth:
                key = "lbl same day last month";
                break;

            case EkEnumeration.KPIPeriod.SameDayLastQuarter:
                key = "lbl same day last quarter";
                break;

            case EkEnumeration.KPIPeriod.SameDayLastYear:
                key = "lbl same day last year";
                break;

            case EkEnumeration.KPIPeriod.ThisWeek:
                key = "lbl this week";
                break;

            case EkEnumeration.KPIPeriod.LastWeek:
                key = "lbl last week";
                break;

            case EkEnumeration.KPIPeriod.LastWeekToDate:
                key = "lbl last week to date";
                break;

            case EkEnumeration.KPIPeriod.ThisMonth:
                key = "lbl this month";
                break;

            case EkEnumeration.KPIPeriod.LastMonth:
                key = "lbl last month";
                break;

            case EkEnumeration.KPIPeriod.LastMonthToDate:
                key = "lbl last month to date";
                break;

            case EkEnumeration.KPIPeriod.SameMonthLastQuarter:
                key = "lbl same month last quarter";
                break;

            case EkEnumeration.KPIPeriod.SameMonthLastYear:
                key = "lbl same month last year";
                break;

            case EkEnumeration.KPIPeriod.ThisYear:
                key = "lbl this year";
                break;

            case EkEnumeration.KPIPeriod.LastYear:
                key = "lbl last year";
                break;

            case EkEnumeration.KPIPeriod.LastYearToDate:
                key = "lbl last year to date";
                break;
        }
        return GetMessage(key);
    }
Пример #26
0
    /// <summary>
    /// Returns the appropriate message for the specified CustomPropertyStyleType.
    /// </summary>
    /// <param name="type">Custom property style type</param>
    /// <returns>Message for the specified CustomPropertyStyleType</returns>
    public string GetDisplayTypeDescription(EkEnumeration.CustomPropertyStyleType type)
    {
        string message = string.Empty;

        switch (type)
        {
            case EkEnumeration.CustomPropertyStyleType.SingleSelect:
                message = _messageHelper.GetMessage("custom prop single value");
                break;
            case EkEnumeration.CustomPropertyStyleType.MultiSelect:
                message = _messageHelper.GetMessage("custom prop list value");
                break;
            default:
                throw new InvalidOperationException("No message available for the specified type: " + type.ToString());
        }

        return message;
    }
Пример #27
0
    private string GetSortStr(ReportingProperty prop, EkEnumeration.OrderByDirection order)
    {
        string s = GetPropertyIndex(prop).ToString();

        if (order == EkEnumeration.OrderByDirection.Descending)
            s += "-";

        return s;
    }
Пример #28
0
 private string GetCmsObjectTypeName(EkEnumeration.CustomPropertyObjectType type)
 {
     return _siteApi.EkMsgRef.GetMessage(CmsObjectTypePrefix + type.ToString());
 }
Пример #29
0
    private void Util_AddProductTypeItems(EkEnumeration.CatalogEntryType EntryClass)
    {
        switch (this.m_sPageAction)
            {

                case "addproducttype":
                    drp_type.Visible = true;
                    drp_type.Items.Add(new ListItem(m_refMsg.GetMessage("lbl commerce product"), EkEnumeration.CatalogEntryType.Product.ToString()));
                    drp_type.Items.Add(new ListItem(m_refMsg.GetMessage("lbl catalog kit"), EkEnumeration.CatalogEntryType.Kit.ToString()));
                    drp_type.Items.Add(new ListItem(m_refMsg.GetMessage("lbl commerce bundle"), EkEnumeration.CatalogEntryType.Bundle.ToString()));
                    drp_type.Items.Add(new ListItem(m_refMsg.GetMessage("lbl commerce subscription"), EkEnumeration.CatalogEntryType.SubscriptionProduct.ToString()));
                    break;

                default: // edit and view
                    drp_type.Visible = false;

                    if (EntryClass == EkEnumeration.CatalogEntryType.Product)
                    {
                        litType.Text = m_refMsg.GetMessage("lbl commerce product");
                    }
                    if (EntryClass == EkEnumeration.CatalogEntryType.Kit)
                    {
                        litType.Text = m_refMsg.GetMessage("lbl catalog kit");
                    }
                    if (EntryClass == EkEnumeration.CatalogEntryType.Bundle)
                    {
                        litType.Text = m_refMsg.GetMessage("lbl commerce bundle");
                    }
                    if (EntryClass == EkEnumeration.CatalogEntryType.SubscriptionProduct)
                    {
                        litType.Text = m_refMsg.GetMessage("lbl commerce subscription");
                    }
                    break;
            }
    }
Пример #30
0
 public static bool ValidateUserRole(EkEnumeration.CmsRoleIds roleId)
 {
     return ValidateUserRole(roleId, true);
 }