Пример #1
0
		public void SetStatus(StatusImageType type)
        {
            switch (type)
            {
                case StatusImageType.Completed:
                    pbStatus.Image = Properties.Resources.synchronised;
                    pbAjaxLoader.Visible = false;
                    pbStatus.Visible = true;
                    break;
                case StatusImageType.InProgress:
                    pbStatus.Visible = false;
                    pbAjaxLoader.Visible = true;
                    break;
                case StatusImageType.Error:
                    pbStatus.Image = Properties.Resources.critical_error;
                    pbAjaxLoader.Visible = false;
                    pbStatus.Visible = true;
                    break;
				case StatusImageType.Waiting:
            		pbStatus.Visible = false;
            		pbAjaxLoader.Visible = false;
            		break;
            }
        }
Пример #2
0
 public static void RenderUsersPresence(string userID, string userName, string uniqueID, bool showStatusImage, bool showUserIcon, bool showUserName, StatusImageType statusImageType, string userIconUrl, UserIMAddressCollection uiec, HtmlTextWriter writer, bool accountDisabled = false)
 {
     writer.Write(GetUsersPresenceHtml(userID, userName, uniqueID, showStatusImage, showUserIcon, showUserName, statusImageType, userIconUrl, uiec, accountDisabled));
 }
Пример #3
0
        /// <summary>
        /// 得到当前显示用户状态的Html
        /// </summary>
        /// <param name="userID">用户ID</param>
        /// <param name="userName">用户的显示名称</param>
        /// <param name="uniqueID"></param>
        /// <param name="showStatusImage">是否显示状态图标</param>
        /// <param name="showUserIcon">是否显示用户图标</param>
        /// <param name="showUserName">是否显示用户名称</param>
        /// <param name="statusImageType">状态图片类型</param>
        /// <param name="userIconUrl">用户图片路径</param>
        /// <param name="uiec">用户扩展信息的结构</param>
        /// <returns></returns>
        public static string GetUsersPresenceHtml(string userID, string userName, string uniqueID, bool showStatusImage,
                                                  bool showUserIcon, bool showUserName, StatusImageType statusImageType, string userIconUrl, UserIMAddressCollection uiec, bool accountDisabled = false)
        {
            StringBuilder strB = new StringBuilder();

            if (string.IsNullOrEmpty(userID) == false)
            {
                if (showStatusImage)
                {
                    HtmlGenericControl imageDiv = new HtmlGenericControl("div");
                    //imageDiv.Style["position"] = "relative";

                    var userIconContainerCss = "";
                    var userIconCss          = "";
                    if (statusImageType == StatusImageType.Ball)
                    {
                        imageDiv.Attributes["class"] = "uc-ball";
                    }
                    else if (statusImageType == StatusImageType.ShortBar)
                    {
                        imageDiv.Attributes["class"] = "uc-bar36";
                        userIconContainerCss         = "uc-user-container-short";
                        userIconCss = "icon";
                    }
                    else if (statusImageType == StatusImageType.LongBar)
                    {
                        imageDiv.Attributes["class"] = "uc-bar52";
                        userIconContainerCss         = "uc-user-container-long";
                        userIconCss = "icon";
                    }

                    HtmlImage image = new HtmlImage();
                    image.Src = ControlResources.UCStatusUrl;

                    if (accountDisabled)
                    {
                        image.Alt = Translator.Translate(Define.DefaultCulture, "用户账号禁用");
                        image.Attributes["class"] = "uc-blocked"; //禁用
                    }
                    else
                    {
                        image.Alt = Translator.Translate(Define.DefaultCulture, "无联机状态信息");
                        image.Attributes["class"]           = "uc-hdr"; //默认
                        image.Attributes["ShowOfflinePawn"] = "true";
                        UserIMAddress extendInfo = uiec.Find(uie => uie.UserID == userID);

                        if (extendInfo != null)
                        {
                            image.Attributes["sip"] = NormalizeIMAddress(extendInfo.IMAddress);
                        }

                        image.ID = string.Format("{0},type=sip", uniqueID);
                        image.Attributes["name"] = "imnmark";
                    }

                    imageDiv.Controls.Add(image);

                    strB.Append(WebControlUtility.GetControlHtml(imageDiv));

                    if (showUserIcon)
                    {
                        HtmlGenericControl userIconDiv = new HtmlGenericControl("div");
                        //userIconDiv.Style["position"] = "relative";
                        userIconDiv.Attributes["class"] = userIconContainerCss;

                        var subDiv = new HtmlGenericControl("div");
                        subDiv.Attributes["class"] = userIconCss;

                        var img = new HtmlImage();
                        img.Src    = userIconUrl;
                        img.Border = 0;

                        subDiv.Controls.Add(img);
                        userIconDiv.Controls.Add(subDiv);
                        if (showUserName)
                        {
                            HtmlGenericControl nameSpan = new HtmlGenericControl("span");
                            nameSpan.InnerText = userName;
                            userIconDiv.Controls.Add(nameSpan);
                        }
                        //nameSpan.Attributes["class"] = "imnStatusText";

                        strB.Append(WebControlUtility.GetControlHtml(userIconDiv));
                    }
                }

                if (statusImageType == StatusImageType.Ball && showUserName)
                {
                    HtmlGenericControl span = new HtmlGenericControl("span");
                    //span.Style["padding-left"] = "16px";
                    span.InnerText           = userName;
                    span.Attributes["class"] = "imnStatusText";

                    strB.Append(WebControlUtility.GetControlHtml(span));
                }
            }

            return(strB.ToString());
        }
Пример #4
0
        /// <summary>
        /// 得到用户状态的Html。会从当前的上下文中获取用户的SIP地址
        /// </summary>
        /// <param name="userID"></param>
        /// <param name="userName"></param>
        /// <param name="uniqueID"></param>
        /// <param name="showStatusImage"></param>
        /// <param name="showUserIcon"></param>
        /// <param name="showUserName"></param>
        /// <param name="statusImageType"></param>
        /// <param name="userIconUrl"></param>
        /// <returns></returns>
        public static string GetUsersPresenceHtml(string userID, string userName, string uniqueID, bool showStatusImage,
                                                  bool showUserIcon, bool showUserName, StatusImageType statusImageType, string userIconUrl)
        {
            UserIMAddress uie = UserExtendInfo.Find(u => u.UserID == userID);

            if (uie == null)
            {
                UserExtendInfo.CopyFrom(UserOUControlSettings.GetConfig().UserOUControlQuery.QueryUsersIMAddress(userID));
            }
            else
            {
                UserExtendInfo.Add(uie);
            }

            return(GetUsersPresenceHtml(userID, userName, uniqueID, true, showUserIcon, showUserName, statusImageType, userIconUrl, UserExtendInfo));
        }
Пример #5
0
 public static void RenderUsersPresence(string userID, string userName, string uniqueID, bool showStatusImage, bool showUserIcon, bool showUserName, StatusImageType statusImageType, string userIconUrl, UserIMAddressCollection uiec, HtmlTextWriter writer, bool accountDisabled = false)
 {
     writer.Write(GetUsersPresenceHtml(userID, userName, uniqueID, showStatusImage, showUserIcon, showUserName, statusImageType, userIconUrl, uiec, accountDisabled));
 }
Пример #6
0
        /// <summary>
        /// 得到当前显示用户状态的Html
        /// </summary>
        /// <param name="userID">用户ID</param>
        /// <param name="userName">用户的显示名称</param>
        /// <param name="uniqueID"></param>
        /// <param name="showStatusImage">是否显示状态图标</param>
        /// <param name="showUserIcon">是否显示用户图标</param>
        /// <param name="showUserName">是否显示用户名称</param>
        /// <param name="statusImageType">状态图片类型</param>
        /// <param name="userIconUrl">用户图片路径</param>
        /// <param name="uiec">用户扩展信息的结构</param>
        /// <returns></returns>
        public static string GetUsersPresenceHtml(string userID, string userName, string uniqueID, bool showStatusImage,
            bool showUserIcon, bool showUserName, StatusImageType statusImageType, string userIconUrl, UserIMAddressCollection uiec, bool accountDisabled = false)
        {
            StringBuilder strB = new StringBuilder();

            if (string.IsNullOrEmpty(userID) == false)
            {
                if (showStatusImage)
                {
                    HtmlGenericControl imageDiv = new HtmlGenericControl("div");
                    //imageDiv.Style["position"] = "relative";

                    var userIconContainerCss = "";
                    var userIconCss = "";
                    if (statusImageType == StatusImageType.Ball)
                    {
                        imageDiv.Attributes["class"] = "uc-ball";
                    }
                    else if (statusImageType == StatusImageType.ShortBar)
                    {
                        imageDiv.Attributes["class"] = "uc-bar36";
                        userIconContainerCss = "uc-user-container-short";
                        userIconCss = "icon";
                    }
                    else if (statusImageType == StatusImageType.LongBar)
                    {
                        imageDiv.Attributes["class"] = "uc-bar52";
                        userIconContainerCss = "uc-user-container-long";
                        userIconCss = "icon";
                    }

                    HtmlImage image = new HtmlImage();
                    image.Src = ControlResources.UCStatusUrl;

                    if (accountDisabled)
                    {
                        image.Alt = Translator.Translate(Define.DefaultCulture, "用户账号禁用");
                        image.Attributes["class"] = "uc-blocked"; //禁用
                    }
                    else
                    {
                        image.Alt = Translator.Translate(Define.DefaultCulture, "无联机状态信息");
                        image.Attributes["class"] = "uc-hdr"; //默认
                        image.Attributes["ShowOfflinePawn"] = "true";
                        UserIMAddress extendInfo = uiec.Find(uie => uie.UserID == userID);

                        if (extendInfo != null)
                            image.Attributes["sip"] = NormalizeIMAddress(extendInfo.IMAddress);

                        image.ID = string.Format("{0},type=sip", uniqueID);
                        image.Attributes["name"] = "imnmark";
                    }

                    imageDiv.Controls.Add(image);

                    strB.Append(WebControlUtility.GetControlHtml(imageDiv));

                    if (showUserIcon)
                    {
                        HtmlGenericControl userIconDiv = new HtmlGenericControl("div");
                        //userIconDiv.Style["position"] = "relative";
                        userIconDiv.Attributes["class"] = userIconContainerCss;

                        var subDiv = new HtmlGenericControl("div");
                        subDiv.Attributes["class"] = userIconCss;

                        var img = new HtmlImage();
                        img.Src = userIconUrl;
                        img.Border = 0;

                        subDiv.Controls.Add(img);
                        userIconDiv.Controls.Add(subDiv);
                        if (showUserName)
                        {
                            HtmlGenericControl nameSpan = new HtmlGenericControl("span");
                            nameSpan.InnerText = userName;
                            userIconDiv.Controls.Add(nameSpan);
                        }
                        //nameSpan.Attributes["class"] = "imnStatusText";

                        strB.Append(WebControlUtility.GetControlHtml(userIconDiv));
                    }
                }

                if (statusImageType == StatusImageType.Ball && showUserName)
                {
                    HtmlGenericControl span = new HtmlGenericControl("span");
                    //span.Style["padding-left"] = "16px";
                    span.InnerText = userName;
                    span.Attributes["class"] = "imnStatusText";

                    strB.Append(WebControlUtility.GetControlHtml(span));
                }
            }

            return strB.ToString();
        }
Пример #7
0
        /// <summary>
        /// 得到用户状态的Html。会从当前的上下文中获取用户的SIP地址
        /// </summary>
        /// <param name="userID"></param>
        /// <param name="userName"></param>
        /// <param name="uniqueID"></param>
        /// <param name="showStatusImage"></param>
        /// <param name="showUserIcon"></param>
        /// <param name="showUserName"></param>
        /// <param name="statusImageType"></param>
        /// <param name="userIconUrl"></param>
        /// <returns></returns>
        public static string GetUsersPresenceHtml(string userID, string userName, string uniqueID, bool showStatusImage,
            bool showUserIcon, bool showUserName, StatusImageType statusImageType, string userIconUrl)
        {
            UserIMAddress uie = UserExtendInfo.Find(u => u.UserID == userID);

            if (uie == null)
                UserExtendInfo.CopyFrom(UserOUControlSettings.GetConfig().UserOUControlQuery.QueryUsersIMAddress(userID));
            else
                UserExtendInfo.Add(uie);

            return GetUsersPresenceHtml(userID, userName, uniqueID, true, showUserIcon, showUserName, statusImageType, userIconUrl, UserExtendInfo);
        }