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/BlackFriends_Add2.aspx文件
    /// </summary>
    public class 编译扩展_Club_BlackFriends_Add2 : 编译扩展接口
    {
        private SqlConnection 连接;
        private HttpContext HC;
        private 编译器 编译器;

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

        #region 编译扩展接口 成员

        public string 开始执行代码()
        {
            编译器.方法库 += @"
		private void 增加加黑会员()
		{
			int ID=Convert.ToInt32(Request.Form[""userid""]);
			Hashtable 用户=常用.SQL_获取(new SqlCommand(""SELECT [昵称] FROM [""+程序.数据表前缀+""社区_用户_用户] WHERE [用户类型]='会员' AND [ID]=""+ID,访问.连接));
			if(用户==null)
				throw new Exception(""用户不存在"");
			SqlCommand 语句=new SqlCommand(""SELECT [ID] FROM [""+程序.数据表前缀+""社区_好友_黑名单] WHERE [会员ID]=""+访问.用户[""ID""]+"" AND [对方ID]=""+ID,访问.连接);
			SqlDataReader 读取=语句.ExecuteReader();
			bool 是否存在=读取.HasRows;
			读取.Close();

			if(是否存在)
				throw new Exception(""你已加黑对方"");

			int ZGID=常用.SQL_最高ID(访问.连接,程序.数据表前缀+""社区_好友_黑名单"");
			语句=new SqlCommand(""INSERT INTO [""+程序.数据表前缀+""社区_好友_黑名单]([ID],[会员ID],[对方ID],[对方昵称],[创建时间])""+
				""VALUES(@ID,@会员ID,@对方ID,@对方昵称,@创建时间)"",访问.连接);
			语句.Parameters.Add(""@ID"",SqlDbType.Int).Value=ZGID;
			语句.Parameters.Add(""@会员ID"",SqlDbType.Int).Value=Convert.ToInt32(访问.用户[""ID""]);
			语句.Parameters.Add(""@对方ID"",SqlDbType.Int).Value=ID;
			语句.Parameters.Add(""@对方昵称"",SqlDbType.NVarChar).Value=Convert.ToString(用户[""昵称""]);
			语句.Parameters.Add(""@创建时间"",SqlDbType.DateTime).Value=DateTime.Now;
			语句.ExecuteNonQuery();
		}
";
            return @"
		访问.验证会员();
		增加加黑会员();
";
        }

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

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

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

        #endregion
    }
}