Example #1
0
        /// <summary>
        /// 初始化
        /// </summary>
        /// <param name="e"></param>
        override protected void OnInit(EventArgs e)
        {
            base.OnInit(e);

            GeneralConfigInfo config  = GeneralConfigs.GetConfig();
            string            bgcolor = DNTRequest.GetQueryString("bgcolor").Trim();
            int textcolor             = DNTRequest.GetQueryInt("textcolor", 1);

            string[] bgcolorArray = bgcolor.Split(',');

            Color bg = Color.White;

            if (bgcolorArray.Length == 1 && bgcolor != string.Empty)
            {
                bg = Utils.ToColor(bgcolor);
            }
            else if (bgcolorArray.Length == 3 && Utils.IsNumericArray(bgcolorArray))
            {
                bg = Color.FromArgb(Utils.StrToInt(bgcolorArray[0], 255), Utils.StrToInt(bgcolorArray[1], 255), Utils.StrToInt(bgcolorArray[2], 255));
            }

            CookiesHelper.FailNoDomainCoolie("CheckCode");

            OnlineUserInfo  oui       = OnlineUsers.UpdateInfo(config.Passwordkey, config.Onlinetimeout);
            string          checkCode = oui.Verifycode;
            VerifyImageInfo verifyimg = VerifyImageProvider.GetInstance(config.VerifyImageAssemly).GenerateImage(checkCode, 120, 60, bg, textcolor);

            //用于验证
            CookiesHelper.AddNoDomainCoolie("CheckCode", checkCode, 1);
            Bitmap image = verifyimg.Image;

            System.Web.HttpContext.Current.Response.ContentType = verifyimg.ContentType;
            image.Save(this.Response.OutputStream, verifyimg.ImageFormat);
        }
Example #2
0
        protected override void ShowPage()
        {
            CookiesHelper.FailNoDomainCoolie("CheckCode");
            string checkCode = CreateCode(4);

            //用于验证
            CookiesHelper.AddNoDomainCoolie("CheckCode", checkCode, 1);
            CreateImages(checkCode);
        }
Example #3
0
        protected override void ShowPage()
        {
            pagetitle = "投票";
            //修正请求页数中可能的错误
            pageid = pageid < 1 ? 1 : pageid;
            aid    = DNTRequest.GetInt("aid", 0);
            uid    = DNTRequest.GetInt("uid", 0);
            Attachments.UpdateAttachmentviewnum(aid);

            dr_vote = Attachments.GetVotelistByUid(aid, uid, pageid, 1, ref totalvote).Tables[0].Rows[0];

            //获取总页数
            pagecount = totalvote % 1 == 0 ? totalvote / 1 : totalvote / 1 + 1;
            pagecount = pagecount == 0 ? 1 : pagecount;

            pageid = pageid > pagecount ? pagecount : pageid;

            //得到页码链接
            pagenumbers = Utils.GetPageNumbers(pageid, pagecount, string.Format("vote.aspx{0}", string.Format("?uid={0}", uid)), 8);

            //如果是POST提交...
            if (ispost)
            {
                string checkCode = CookiesHelper.GetCookieValue("CheckCode");
                if (checkCode.Equals(DNTRequest.GetString("vcode")))
                {
                    aid = DNTRequest.GetInt("hidaid", 0);
                    if (Attachments.UpdatePicVote(aid, DNTRequest.GetString("txt_comment")) > 0)
                    {
                        aid     = 0;
                        dr_vote = Attachments.GetVotelistByUid(aid, uid, pageid, 1, ref totalvote).Tables[0].Rows[0];
                        CookiesHelper.AddNoDomainCoolie("userIP", "IPaddress", CookiesHelper.GetCookieValue("IPaddress"), 60 * 24);
                        errormessage = "投票成功,谢谢您的参与!";
                    }
                    else
                    {
                        errormessage = "投票失败!";
                    }
                }
                else
                {
                    errormessage = "验证码错误!";
                }
            }
        }
Example #4
0
        public bool IsPostBack     = true; //是否首次加载
        #endregion
        protected override void ShowPage()
        {
            pagetitle = "投票";

            //修正请求页数中可能的错误
            pageid = pageid < 1 ? 1 : pageid;
            aid    = DNTRequest.GetInt("aid", 0);
            uid    = DNTRequest.GetInt("uid", 0);
            Attachments.UpdateAttachmentviewnum(aid);

            DataSet ds = Attachments.GetVotelistByUid(aid, uid, pageid, 1, ref totalvote);

            if (ds != null && ds.Tables.Count > 0 & ds.Tables[0].Rows.Count > 0)
            {
                dr_vote = ds.Tables[0].Rows[0];
            }
            else
            {
                SetUrl("taohua_xianzi.aspx");
                SetMetaRefresh();
                AddErrLine("没有信息可读取!");
                return;
            }
            //获取总页数
            pagecount = totalvote % 1 == 0 ? totalvote / 1 : totalvote / 1 + 1;
            pagecount = pagecount == 0 ? 1 : pagecount;

            pageid = pageid > pagecount ? pagecount : pageid;

            prepage = pageid - 1;
            nexpage = pageid + 1;

            prepage = prepage == 0 ? 1 : prepage;
            prepage = prepage > pagecount ? pagecount : prepage;

            nexpage = nexpage == 0 ? 1 : nexpage;
            nexpage = nexpage > pagecount ? pagecount : nexpage;

            //得到页码链接
            pagenumbers = Utils.GetPageNumbers(pageid, pagecount, string.Format("taohuavote.aspx{0}", string.Format("?uid={0}", uid)), 8);

            //如果是POST提交...
            if (ispost)
            {
                DateTime begin = DateTime.Parse(Discuz.Common.ConfigOperator.ConfigReadValue("startvotetime"));
                DateTime end   = DateTime.Parse(Discuz.Common.ConfigOperator.ConfigReadValue("endvotetime")).AddDays(1);
                if (DateTime.Now < begin || end < DateTime.Now)
                {
                    SetUrl("taohua_xianzi.aspx");
                    SetMetaRefresh();
                    AddErrLine("投票时间为:" + begin.ToString("yyyy年MM月dd日") + "到" + end.AddDays(-1).ToString("yyyy年MM月dd日"));
                    return;
                }
                else
                {
                    string     UserIP    = HttpContext.Current.Request.UserHostAddress.ToString();
                    HttpCookie oldCookie = HttpContext.Current.Request.Cookies["userIP"];
                    if (oldCookie == null)
                    {
                        //定义新的Cookie对象
                        HttpCookie newCookie = new HttpCookie("IPaddress");
                        newCookie.Expires = DateTime.Now.AddMinutes(5);
                        //添加新的Cookie变量IPaddress,值为UserIP
                        newCookie.Value = UserIP;
                        //将变量写入Cookie文件中
                        HttpContext.Current.Response.AppendCookie(newCookie);
                    }
                    else
                    {
                        string userIP = oldCookie.Values["IPaddress"];
                        if (UserIP.Trim() == userIP.Trim())
                        {
                            SetUrl("taohua_xianzi.aspx");
                            SetMetaRefresh();
                            AddErrLine("一个IP地址只能投一次票,谢谢您的参与!");
                            return;
                        }
                        else
                        {
                            //定义新的Cookie对象
                            HttpCookie newCookie = new HttpCookie("IPaddress");
                            newCookie.Expires = DateTime.Now.AddMinutes(5);
                            //添加新的Cookie变量IPaddress,值为UserIP
                            newCookie.Value = UserIP;
                            //将变量写入Cookie文件中
                            HttpContext.Current.Response.AppendCookie(newCookie);
                        }
                    }

                    //string checkCode = CookiesHelper.GetCookieValue("CheckCode");
                    //if (checkCode.Equals(DNTRequest.GetString("vcode")))
                    //{
                    aid = DNTRequest.GetInt("hidaid", 0);
                    if (Attachments.UpdatePicVote(aid, DNTRequest.GetString("txt_comment")) > 0)
                    {
                        //aid = 0;
                        //dr_vote = Attachments.GetVotelistByUid(aid, uid, pageid, 1, ref totalvote).Tables[0].Rows[0];
                        CookiesHelper.AddNoDomainCoolie("userIP", "IPaddress", CookiesHelper.GetCookieValue("IPaddress"), 60 * 24);
                        AddMsgLine("投票成功,谢谢您的参与!");
                        //SetUrl(forumpath + "taohuavote.aspx" + HttpContext.Current.Request.Url.PathAndQuery.Substring(HttpContext.Current.Request.Url.PathAndQuery.IndexOf("?")) + "&aid=" + aid);
                        SetUrl(forumpath + "taohuavote.aspx?uid=" + uid + "&aid=" + aid);
                        SetMetaRefresh();
                        SetShowBackLink(false);
                    }
                    else
                    {
                        AddErrLine("投票失败,请稍后重试!");
                        SetUrl("taohua_xianzi.aspx");
                        SetMetaRefresh(5);
                        SetShowBackLink(true);
                    }
                    //}
                    //else
                    //{
                    //    errormessage = "验证码错误!";
                    //}
                }
            }
        }
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";
            Request  = context.Request;
            Response = context.Response;
            switch (Request["operType"])
            {
            case "verifyvote":
                DateTime begin = DateTime.Parse(Discuz.Common.ConfigOperator.ConfigReadValue("startvotetime"));
                DateTime end   = DateTime.Parse(Discuz.Common.ConfigOperator.ConfigReadValue("endvotetime")).AddDays(1);
                if (DateTime.Now < begin)
                {
                    Response.Write("{\"result\":\"0\",\"msg\":\"投票太早了,投票时间为:" + begin.ToString("yyyy年MM月dd日") + "到" + end.AddDays(-1).ToString("yyyy年MM月dd日") + "\"}");
                }
                else if (end < DateTime.Now)
                {
                    Response.Write("{\"result\":\"0\",\"msg\":\"投票来晚了,投票时间为:" + begin.ToString("yyyy年MM月dd日") + "到" + end.AddDays(-1).ToString("yyyy年MM月dd日") + "\"}");
                }
                else
                {
                    //判断指定的IP是否已投过票了,如果已经投过了,则弹出提示对话框
                    string     UserIP    = Request.UserHostAddress.ToString();
                    HttpCookie oldCookie = Request.Cookies["userIP"];
                    if (oldCookie == null)
                    {
                        //定义新的Cookie对象
                        HttpCookie newCookie = new HttpCookie("IPaddress");
                        newCookie.Expires = DateTime.Now.AddMinutes(5);
                        //添加新的Cookie变量IPaddress,值为UserIP
                        newCookie.Value = UserIP;
                        //将变量写入Cookie文件中
                        Response.AppendCookie(newCookie);
                        Response.Write("{\"result\":\"1\"}");
                    }
                    else
                    {
                        string userIP = oldCookie.Values["IPaddress"];
                        if (UserIP.Trim() == userIP.Trim())
                        {
                            Response.Write("{\"result\":\"0\",\"msg\":\"一个IP地址只能投一次票,谢谢您的参与!\"}");
                        }
                        else
                        {
                            //定义新的Cookie对象
                            HttpCookie newCookie = new HttpCookie("IPaddress");
                            newCookie.Expires = DateTime.Now.AddMinutes(5);
                            //添加新的Cookie变量IPaddress,值为UserIP
                            newCookie.Value = UserIP;
                            //将变量写入Cookie文件中
                            Response.AppendCookie(newCookie);
                            Response.Write("{\"result\":\"1\"}");
                        }
                    }
                }
                break;

            case "vote":
                if (Attachments.UpdatePicVote(int.Parse(Request["Aid"]), string.Empty) > 0)
                {
                    CookiesHelper.AddNoDomainCoolie("userIP", "IPaddress", CookiesHelper.GetCookieValue("IPaddress"), 60 * 24);
                    Response.Write("{\"result\":\"1\",\"msg\":\"投票成功,谢谢您的参与!\"}");
                }
                else
                {
                    Response.Write("{\"result\":\"0\",\"msg\":\"投票失败,请稍后重试!\"}");
                }

                break;
            }
        }