コード例 #1
0
        public static string GetFullUserName(UserInfo userInfo, DisplayUserNameFormat format, bool withHtmlEncode)
        {
            if (userInfo == null)
            {
                return(string.Empty);
            }
            if (!userInfo.ID.Equals(Guid.Empty) && !CoreContext.UserManager.UserExists(userInfo.ID))
            {
                try
                {
                    var resourceType     = Type.GetType("Resources.Resource, ASC.Web.Studio");
                    var resourceProperty = resourceType.GetProperty("ProfileRemoved", BindingFlags.Static | BindingFlags.Public);
                    var resourceValue    = (string)resourceProperty.GetValue(null);

                    return(string.IsNullOrEmpty(resourceValue) ? RemovedProfileName : resourceValue);
                }
                catch (Exception)
                {
                    return(RemovedProfileName);
                }
            }
            var result = UserFormatter.GetUserName(userInfo, format);

            return(withHtmlEncode ? result.HtmlEncode() : result);
        }
コード例 #2
0
        private static string GetUserDisplayFormat(DisplayUserNameFormat format)
        {
            if (!forceFormatChecked)
            {
                forceFormat = ConfigurationManager.AppSettings["core.user-display-format"];
                if (String.IsNullOrEmpty(forceFormat))
                {
                    forceFormat = null;
                }
                forceFormatChecked = true;
            }
            if (forceFormat != null)
            {
                return(forceFormat);
            }
            var culture = Thread.CurrentThread.CurrentCulture.Name;
            Dictionary <DisplayUserNameFormat, string> formats = null;

            if (!DisplayFormats.TryGetValue(culture, out formats))
            {
                var twoletter = Thread.CurrentThread.CurrentCulture.TwoLetterISOLanguageName;
                if (!DisplayFormats.TryGetValue(twoletter, out formats))
                {
                    formats = DisplayFormats["default"];
                }
            }
            return(formats[format]);
        }
コード例 #3
0
 public static string GetUserName(UserInfo userInfo, DisplayUserNameFormat format)
 {
     if (userInfo == null)
     {
         throw new ArgumentNullException("userInfo");
     }
     return(string.Format(GetUserDisplayFormat(format), userInfo.FirstName, userInfo.LastName));
 }
コード例 #4
0
 public static string GetFullUserName(UserInfo userInfo, DisplayUserNameFormat format, bool withHtmlEncode)
 {
     if (userInfo == null)
     {
         return string.Empty;
     }
     if (!userInfo.ID.Equals(Guid.Empty) && !CoreContext.UserManager.UserExists(userInfo.ID))
     {
         return RemovedProfileName;
     }
     var result = UserFormatter.GetUserName(userInfo, format);
     return withHtmlEncode ? result.HtmlEncode() : result;
 }
コード例 #5
0
 public static string GetFullUserName(UserInfo userInfo, DisplayUserNameFormat format, bool withHtmlEncode)
 {
     if (userInfo == null)
     {
         return string.Empty;
     }
     if (!userInfo.ID.Equals(Guid.Empty) && !CoreContext.UserManager.UserExists(userInfo.ID))
     {
         return "profile removed";
     }
     var result = UserFormatter.GetUserName(userInfo, format);
     return withHtmlEncode ? result.HtmlEncode() : result;
 }
コード例 #6
0
        public string GetFullUserName(UserInfo userInfo, DisplayUserNameFormat format, bool withHtmlEncode)
        {
            if (userInfo == null)
            {
                return(string.Empty);
            }
            if (!userInfo.ID.Equals(Guid.Empty) && !UserManager.UserExists(userInfo))
            {
                return("profile removed");
            }
            var result = UserFormatter.GetUserName(userInfo, format);

            return(withHtmlEncode ? HtmlEncode(result) : result);
        }
コード例 #7
0
        public static string GetFullUserName(UserInfo userInfo, DisplayUserNameFormat format, bool withHtmlEncode)
        {
            if (userInfo == null || userInfo.ID.Equals(Common.Security.Authorizing.Constants.Demo.ID))
            {
                return("Demo");
            }
            if (!userInfo.ID.Equals(Guid.Empty) && !CoreContext.UserManager.UserExists(userInfo.ID))
            {
                return("profile removed");
            }
            var result = UserFormatter.GetUserName(userInfo, format);

            return(withHtmlEncode ? result.HtmlEncode() : result);
        }
コード例 #8
0
        public static int Compare(UserInfo x, UserInfo y, DisplayUserNameFormat format)
        {
            if (x == null && y == null)
            {
                return(0);
            }
            if (x == null && y != null)
            {
                return(-1);
            }
            if (x != null && y == null)
            {
                return(+1);
            }

            var result = 0;

            if (format == DisplayUserNameFormat.Default)
            {
                format = GetUserDisplayDefaultOrder();
            }
            if (format == DisplayUserNameFormat.FirstLast)
            {
                result = String.Compare(x.FirstName, y.FirstName, true);
                if (result == 0)
                {
                    result = String.Compare(x.LastName, y.LastName, true);
                }
            }
            else
            {
                result = String.Compare(x.LastName, y.LastName, true);
                if (result == 0)
                {
                    result = String.Compare(x.FirstName, y.FirstName, true);
                }
            }
            return(result);
        }
コード例 #9
0
 public UserFormatter(DisplayUserNameFormat format)
 {
     this.format = format;
 }
コード例 #10
0
ファイル: UserFormatter.cs プロジェクト: ONLYOFFICE/AppServer
 public UserFormatter(IConfiguration configuration)
 {
     format        = DisplayUserNameFormat.Default;
     Configuration = configuration;
     UserNameRegex = new Regex(Configuration["core:username:regex"] ?? "");
 }