using System;
using System.Data;
using System.Data.SqlClient;
using System.Web;
using System.IO;
using System.Collections;
using System.Text.RegularExpressions;
using System.Text;

namespace UUN
{
    /// <summary>
    /// 编译Club/UserHead2.aspx文件
    /// </summary>
    public class 编译扩展_Club_UserHead2 : 编译扩展接口
    {
        private SqlConnection 连接;
        private HttpContext HC;
        private 编译器 编译器;

        public 编译扩展_Club_UserHead2(SqlConnection 连接, HttpContext HC, 编译器 编译器)
        {
            this.连接 = 连接;
            this.HC = HC;
            this.编译器 = 编译器;
        }

        #region 编译扩展接口 成员

        public string 开始执行代码()
        {
            编译器.方法库 += @"
	private void 更换头像提交()
	{
		int ID=Convert.ToInt32(Request.QueryString[""ID""]);
		Hashtable 头像=常用.SQL_获取(new SqlCommand(""SELECT [头像地址],[头像性别],[需要积分] FROM [""+程序.数据表前缀+""社区_头像] WHERE [ID]=""+ID,访问.连接));
		if(头像==null)
			throw new Exception(""头像不存在"");

		SqlCommand 语句=new SqlCommand(""SELECT [ID] FROM [""+程序.数据表前缀+""社区_用户_头像] WHERE [图片位置]=@图片位置 AND [用户ID]=""+访问.用户[""ID""],访问.连接);
		语句.Parameters.Add(""@图片位置"",SqlDbType.NVarChar).Value=头像[""头像地址""].ToString();
		SqlDataReader 读取=语句.ExecuteReader();
		bool 是否存在=读取.HasRows;
		读取.Close();

		if(是否存在)
			throw new Exception(""您已经拥有了此头像"");

		new 用户(this.Context,访问.连接).扣除积分(Convert.ToInt32(访问.用户[""ID""]),
			Convert.ToInt32(头像[""需要积分""]),
			false,"""");

		int ZGID=常用.SQL_最高ID(访问.连接,程序.数据表前缀+""社区_用户_头像"");
		语句=new SqlCommand(""INSERT INTO [""+程序.数据表前缀+""社区_用户_头像]([ID],[用户ID],[用户昵称],[图片位置],[创建时间])""+
			""VALUES(@ID,@用户ID,@用户昵称,@图片位置,@创建时间)"",访问.连接);
		语句.Parameters.Add(""@ID"",SqlDbType.Int).Value=ZGID;
		语句.Parameters.Add(""@用户ID"",SqlDbType.Int).Value=Convert.ToInt32(访问.用户[""ID""]);
		语句.Parameters.Add(""@用户昵称"",SqlDbType.NVarChar).Value=访问.用户[""昵称""].ToString();
		语句.Parameters.Add(""@图片位置"",SqlDbType.NVarChar).Value=头像[""头像地址""].ToString();
		语句.Parameters.Add(""@创建时间"",SqlDbType.DateTime).Value=DateTime.Now;
		语句.ExecuteNonQuery();
	}
";
            return @"
	访问.验证会员();
	更换头像提交();
";
        }

        public string 编译公共标签(string 代码)
        {
            return "";
        }

        public string 编译模板方法(string 方法名称, string[] 属性数组)
        {
            return "";
        }

        public string 结束执行代码()
        {
            return "";
        }

        #endregion
    }
}