using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

namespace DTable_App.register
{
	/// <summary>
	/// userlogin 的摘要说明。
	/// </summary>
	public class userlogin : System.Web.UI.Page
	{
		private void Page_Load(object sender, System.EventArgs e)
		{
			// 在此处放置用户代码以初始化页面
			string stryhm=sharecode.GetFormValue("yhm");
			string strmm=sharecode.GetFormValue("mm");
			string stryzm=sharecode.GetFormValue("yzm");
			string strls=sharecode.GetFormValue("ls");
			if(stryhm.Length <5)
			{
					Page.Response.Write("<script language=javascript>alert('用户名不能少于5个字符');</script>");
				Page.Response.End();
			}
			if(stryhm.Length>25)
			{
				Page.Response.Write("<script language=javascript>alert('用户名不能多于25个字符');</script>");
				Page.Response.End();

			}
			if(strmm.Length!=32)//如果密码不是读入的cookies的密码,就验证
			{
				if(strmm.Length<5)
				{
					Page.Response.Write("<script language=javascript>alert('密码不能少于5个字符');</script>");
					Page.Response.End();
				}
				if(strmm.Length>25)
				{
					Page.Response.Write("<script language=javascript>alert('密码不能多于5个字符');</script>");
					Page.Response.End();

				}
			}
			string strthisyzm=sharecode.GetCookieValue("login_yzm"); //session实在不稳定

			
			/*
			if(strthisyzm!=stryzm && sharecode.GetQueryStringValue("type")=="")//为什么首页登录过来的验证码自己会变?
			{
				Page.Response.Write("<script language=javascript>alert('请刷新页面再进行登录:thisyzm:" + strthisyzm + " yzm:" + stryzm + "' );</script>");
				Page.Response.End();

			}
			*/
			if(!sharecode.CheckUserLogin(stryhm,strmm)) 
			{
				Page.Response.Write("<script language=javascript>alert('该用户不存在或密码错误');</script>");
				Page.Response.End();

			}
			System.Web.HttpContext.Current.Session["login_yzm"]=null;

			if(strls!="0")//如果要保存密码
			{
				Page.Response.Cookies[sharecode.strUserNameCookieName].Value=stryhm;//写入用户名
				Page.Response.Cookies[sharecode.strUserNameCookieName].Expires =System.DateTime.Now.AddDays(int.Parse(strls));//设置用户名的存活期限
				if(strmm.Length!=32)//如果密码不是32位的,就需要md5编码
				{
					Page.Response.Cookies[sharecode.strPassWordCookieName].Value =System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strmm,"md5");
					
				}
				else//不编码密码
				{
					Page.Response.Cookies[sharecode.strPassWordCookieName].Value=strmm;
				}

				Page.Response.Cookies[sharecode.strPassWordCookieName].Expires =System.DateTime.Now.AddDays(int.Parse(strls));//写入密码的存活期
 
			}
			if(sharecode.GetQueryStringValue("type")=="default")
			{
				Page.Response.Write("<script language=javascript>parent.document.all.logintable.style.display='none';parent.document.all.welcome.innerText='欢迎[" + stryhm + "]';</script>");
			}
			else
			{
				Page.Response.Write("<script language=javascript>parent.document.all.logintable.style.display='none';parent.document.all.submitaddnew.disabled=false;parent.document.all.field5.value='" + sharecode.GetSessionValue(sharecode.strUserSName) + "';parent.document.all.field1.focus();</script>");
			}
			Page.Response.End();

		}

		#region Web 窗体设计器生成的代码
		override protected void OnInit(EventArgs e)
		{
			//
			// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
			//
			InitializeComponent();
			base.OnInit(e);
		}
		
		/// <summary>
		/// 设计器支持所需的方法 - 不要使用代码编辑器修改
		/// 此方法的内容。
		/// </summary>
		private void InitializeComponent()
		{    
			this.Load += new System.EventHandler(this.Page_Load);

		}
		#endregion
	}
}
