Example #1
0
        public QzoneConnectContext(String callback = null)
        {
            var cfg = BaseConfigInfo.Current;

            if (String.IsNullOrEmpty(callback))
            {
                callback = cfg.Forumpath;
            }
            Callback = callback;

            Config = QzoneConnectConfigInfo.Current;

            var context = HttpContext.Current;
            var req     = context.Request;

            _redirect = String.Format("{0}://{1}{2}", req.Url.Scheme, req.Url.Host, cfg.Forumpath + Config.QzoneConnectPage + HttpUtility.UrlEncode("?act=access&callback=" + callback));

            var _rnd = new Random();

            _state = _rnd.Next(100000, 999999).ToString();

            Current = this;

            //var uid = ForumUtils.GetCookie("userid").ToInt(-1);
            Token = QzoneConnectToken.FindByUid(ForumUtils.GetCookie("userid").ToInt());
        }
Example #2
0
        private bool SaveUserAvatar(QzoneConnectContext userConnectInfo)
        {
            //string text = Avatars.FormatUid(userConnectInfo.Token.Uid.ToString());
            //string fi = string.Format("{0}avatars/upload/{1}/{2}/{3}/{4}_avatar_", new object[]
            //{
            //    BaseConfigs.GetForumPath,
            //    text.Substring(0, 3),
            //    text.Substring(3, 2),
            //    text.Substring(5, 2),
            //    text.Substring(7, 2)
            //});
            //fi = Utils.GetMapPath(fi);
            var pf = Avatars.FormatPathPrefix(userConnectInfo.Token.Uid.ToString());
            var fi = Utils.GetMapPath(BaseConfigs.GetForumPath.CombinePath(pf));
            //string url = string.Format("http://avatar.connect.discuz.qq.com/{0}/{1}", DiscuzCloudConfigInfo.Current.Connectappid, userConnectInfo.OpenId);
            var url = "";

            if (String.IsNullOrEmpty(url))
            {
                return(false);
            }

            if (!Directory.Exists(fi))
            {
                Utils.CreateDir(fi);
            }
            if (!Thumbnail.MakeRemoteThumbnailImage(url, fi + "large.jpg", 200, 200))
            {
                return(false);
            }

            var image = Image.FromFile(fi + "large.jpg");

            if ((double)image.Width * 0.8 <= 130.0)
            {
                Thumbnail.MakeThumbnailImage(fi + "large.jpg", fi + "medium.jpg", (int)((double)image.Width * 0.8), (int)((double)image.Height * 0.8));
                Thumbnail.MakeThumbnailImage(fi + "large.jpg", fi + "small.jpg", (int)((double)image.Width * 0.6), (int)((double)image.Height * 0.6));
            }
            else
            {
                Thumbnail.MakeThumbnailImage(fi + "large.jpg", fi + "medium.jpg", (int)((double)image.Width * 0.5), (int)((double)image.Height * 0.5));
                Thumbnail.MakeThumbnailImage(fi + "large.jpg", fi + "small.jpg", (int)((double)image.Width * 0.3), (int)((double)image.Height * 0.3));
            }
            try
            {
                image.Dispose();
            }
            catch { }
            //if (FTPs.GetForumAvatarInfo.Allowupload == 1)
            //{
            //    var fTPs = new FTPs();
            //    //string path = string.Format("/avatars/upload/{0}/{1}/{2}/", text.Substring(0, 3), text.Substring(3, 2), text.Substring(5, 2));
            //    var path = "/" + Avatars.FormatPathPrefix(pf);
            //    fTPs.UpLoadFile(path, fi + "large.jpg", FTPs.FTPUploadEnum.ForumAvatar);
            //    fTPs.UpLoadFile(path, fi + "medium.jpg", FTPs.FTPUploadEnum.ForumAvatar);
            //    fTPs.UpLoadFile(path, fi + "small.jpg", FTPs.FTPUploadEnum.ForumAvatar);
            //}
            return(true);
        }
Example #3
0
 public void AsyncGetAvatar(QzoneConnectContext userConnectInfo)
 {
     this.getAvatar_asyncCallback = new QZoneAvatar.GetUserQZoneAvatar(this.SaveUserAvatar);
     this.getAvatar_asyncCallback.BeginInvoke(userConnectInfo, null, null);
 }
Example #4
0
 /// <summary>取消绑定</summary>
 public void UnbindToken()
 {
     Token   = null;
     Current = null;
 }