Index: temp/trunk/data/class/SC_CustomerList.php
===================================================================
--- temp/trunk/data/class/SC_CustomerList.php	(revision 1870)
+++ temp/trunk/data/class/SC_CustomerList.php	(revision 1892)
@@ -17,4 +17,5 @@
 			$regdate_col = 'dtb_customer.update_date';
 		}
+		
 		if($mode == "customer") {
 			// ´ÉÍý¼Ô¥Ú¡¼¥¸¸ÜµÒ¸¡º÷¤Î¾ì¹ç²¾ÅÐÏ¿²ñ°÷¤â¸¡º÷
@@ -23,5 +24,5 @@
 			$regdate_col = 'dtb_customer.update_date';
 		}
-		
+				
 		// ¥á¡¼¥ë¥Þ¥¬¥¸¥ó¤Î¾ì¹ç		
 		if($mode == "magazine") {
@@ -41,10 +42,8 @@
 					// ¥á¥ë¥Þ¥¬ÅÐÏ¿
 					case '2':
-						// dtb_customer_mail¤Ë¤Î¤ßÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¥ì¥³¡¼¥É¤òÃê½Ð
-						$tmp_where.= "customer_id IS NULL ";
+						$tmp_where.= "customer_id IS NULL";
 						break;
 					// CSVÅÐÏ¿
 					case '3':
-						// dtb_customer_mail¤Ë¤Î¤ßÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¥ì¥³¡¼¥É¤òÃê½Ð
 						$tmp_where.= "customer_id IS NULL";
 						break;
@@ -64,39 +63,39 @@
 				
 		// ¸ÜµÒID
-		if ( strlen($this->arrSql['search_customer_id']) > 0 ) {
+		if ( strlen($this->arrSql['customer_id']) > 0 ) {
 			$this->setWhere( "customer_id =  ?" );
-			$this->arrVal[] = $this->arrSql['search_customer_id'];
+			$this->arrVal[] = $this->arrSql['customer_id'];
 		}
 		
 		// Ì¾Á°
-		if ( strlen($this->arrSql['search_name']) > 0 ) {
+		if ( strlen($this->arrSql['name']) > 0 ) {
 			$this->setWhere("(name01 || name02 LIKE ?)" );
-			$searchName = $this->addSearchStr($this->arrSql['search_name']);
-			$this->arrVal[] = ereg_replace("[ ¡¡]+","",$searchName);
+			$searchName = $this->addSearchStr($this->arrSql['name']);
+			$this->arrVal[] = mb_ereg_replace("[ ¡¡]+","",$searchName);
 		}
 
 		//¡¡Ì¾Á°¡Ê¥«¥Ê¡Ë
-		if ( strlen($this->arrSql['search_kana']) > 0 ) {
+		if ( strlen($this->arrSql['kana']) > 0 ) {
 			$this->setWhere("(kana01 || kana02 LIKE ?)");
-			$searchKana = $this->addSearchStr($this->arrSql['search_kana']);
-			$this->arrVal[] = ereg_replace("[ ¡¡]+","",$searchKana);
+			$searchKana = $this->addSearchStr($this->arrSql['kana']);
+			$this->arrVal[] = mb_ereg_replace("[ ¡¡]+","",$searchKana);
 		}
 		
 		//¡¡ÅÔÆ»ÉÜ¸©
-		if ( strlen($this->arrSql['search_pref']) > 0 ) {
+		if ( strlen($this->arrSql['pref']) > 0 ) {
 			$this->setWhere( "pref = ?" );
-			$this->arrVal[] = $this->arrSql['search_pref'];
+			$this->arrVal[] = $this->arrSql['pref'];
 		}
 
 		//¡¡ÅÅÏÃÈÖ¹æ
-		if ( is_numeric( $this->arrSql['search_tel'] ) ) {
+		if ( is_numeric( $this->arrSql['tel'] ) ) {
 			$this->setWhere( "(tel01 || tel02 || tel03 LIKE ?)" );
-			$searchTel = $this->addSearchStr($this->arrSql['search_tel']);
+			$searchTel = $this->addSearchStr($this->arrSql['tel']);
 			$this->arrVal[] = ereg_replace("-", "", $searchTel);
 		}
 		
 		//¡¡À­ÊÌ
-		if ( is_array( $this->arrSql['search_sex'] ) ){
-			$arrSexVal = $this->setItemTerm( $this->arrSql['search_sex'] ,"sex" );
+		if ( is_array( $this->arrSql['sex'] ) ){
+			$arrSexVal = $this->setItemTerm( $this->arrSql['sex'] ,"sex" );
 			foreach ($arrSexVal as $data) {
 				$this->arrVal[] = $data;
@@ -105,9 +104,9 @@
 
 		//¡¡¿¦¶È
-		if ( is_array( $this->arrSql['search_job'] ) ){
-			if ( in_array("ÉÔÌÀ", $this->arrSql['search_job'] ) ) {
-				$arrJobVal = $this->setItemTermWithNull( $this->arrSql['search_job'] ,"job" );
+		if ( is_array( $this->arrSql['job'] ) ){
+			if ( in_array("ÉÔÌÀ", $this->arrSql['job'] ) ) {
+				$arrJobVal = $this->setItemTermWithNull( $this->arrSql['job'] ,"job" );
 			} else {
-				$arrJobVal = $this->setItemTerm( $this->arrSql['search_job'] ,"job" );
+				$arrJobVal = $this->setItemTerm( $this->arrSql['job'] ,"job" );
 			}
 			if (is_array($arrJobVal)) {
@@ -119,15 +118,34 @@
 
 		//¡¡E-MAIL
-		if ( strlen($this->arrSql['search_email']) > 0 ) {
-			$this->setWhere( "email ILIKE ? " );
-			$searchEmail = $this->addSearchStr($this->arrSql['search_email']);
-			$this->arrVal[] = $searchEmail;
-		}
-
+		if (strlen($this->arrSql['email']) > 0) {
+			//¥«¥ó¥Þ¶èÀÚ¤ê¤ÇÊ£¿ô¤Î¾ò·ï»ØÄê²ÄÇ½¤Ë
+			$this->arrSql['email'] = explode(",", $this->arrSql['email']);
+			$sql_where = "";
+			foreach($this->arrSql['email'] as $val) {
+				$val = trim($val);
+				//¸¡º÷¾ò·ï¤ò´Þ¤Þ¤Ê¤¤
+				if($this->arrSql['not_emailinc'] == '1') {
+					if($sql_where == "") {
+						$sql_where .= "email NOT ILIKE ? ";
+					} else {
+						$sql_where .= "AND email NOT ILIKE ? ";
+					}
+				} else {				
+					if($sql_where == "") {
+						$sql_where .= "email ILIKE ? ";
+					} else {
+						$sql_where .= "OR email ILIKE ? ";
+					}
+				}
+				$searchEmail = $this->addSearchStr($val);
+				$this->arrVal[] = $searchEmail;
+			}
+			$this->setWhere($sql_where);
+		}
 		//¡¡HTML-mail
 		if ( $mode == 'magazine' ){
-			if ( strlen($this->arrSql['search_htmlmail']) > 0 ) {
+			if ( strlen($this->arrSql['htmlmail']) > 0 ) {
 				$this->setWhere( " mail_flag = ? ");
-				$this->arrVal[] = $this->arrSql['search_htmlmail'];
+				$this->arrVal[] = $this->arrSql['htmlmail'];
 			} else {
 				$this->setWhere( " (mail_flag = 1 or mail_flag = 2) ");
@@ -136,6 +154,6 @@
 		
 		// ¹ØÆþ¶â³Û»ØÄê
-		if( is_numeric( $this->arrSql["search_buy_total_from"] ) || is_numeric( $this->arrSql["search_buy_total_to"] ) ) {
-			$arrBuyTotal = $this->selectRange($this->arrSql["search_buy_total_from"], $this->arrSql["search_buy_total_to"], "buy_total");
+		if( is_numeric( $this->arrSql["buy_total_from"] ) || is_numeric( $this->arrSql["buy_total_to"] ) ) {
+			$arrBuyTotal = $this->selectRange($this->arrSql["buy_total_from"], $this->arrSql["buy_total_to"], "buy_total");
 			foreach ($arrBuyTotal as $data1) {
 				$this->arrVal[] = $data1;
@@ -144,6 +162,6 @@
 
 		// ¹ØÆþ²ó¿ô»ØÄê
-		if( is_numeric( $this->arrSql["search_buy_times_from"] ) || is_numeric( $this->arrSql["search_buy_times_to"] ) ) {
-			$arrBuyTimes = $this->selectRange($this->arrSql["search_buy_times_from"], $this->arrSql["search_buy_times_to"], "buy_times");
+		if( is_numeric( $this->arrSql["buy_times_from"] ) || is_numeric( $this->arrSql["buy_times_to"] ) ) {
+			$arrBuyTimes = $this->selectRange($this->arrSql["buy_times_from"], $this->arrSql["buy_times_to"], "buy_times");
 			foreach ($arrBuyTimes as $data2) {
 				$this->arrVal[] = $data2;
@@ -152,9 +170,9 @@
 		
 		// ÃÂÀ¸Æü´ü´Ö»ØÄê
-		if ( (strlen($this->arrSql['search_b_start_year']) > 0 && strlen($this->arrSql['search_b_start_month']) > 0 && strlen($this->arrSql['search_b_start_day']) > 0) ||
-			  strlen($this->arrSql['search_b_end_year']) > 0 && strlen($this->arrSql['search_b_end_month']) > 0 && strlen($this->arrSql['search_b_end_day']) > 0) {
-
-			$arrBirth = $this->selectTermRange($this->arrSql['search_b_start_year'], $this->arrSql['search_b_start_month'], $this->arrSql['search_b_start_day']
-					  , $this->arrSql['search_b_end_year'], $this->arrSql['search_b_end_month'], $this->arrSql['search_b_end_day'], "birth");
+		if ( (strlen($this->arrSql['b_start_year']) > 0 && strlen($this->arrSql['b_start_month']) > 0 && strlen($this->arrSql['b_start_day']) > 0) ||
+			  strlen($this->arrSql['b_end_year']) > 0 && strlen($this->arrSql['b_end_month']) > 0 && strlen($this->arrSql['b_end_day']) > 0) {
+
+			$arrBirth = $this->selectTermRange($this->arrSql['b_start_year'], $this->arrSql['b_start_month'], $this->arrSql['b_start_day']
+					  , $this->arrSql['b_end_year'], $this->arrSql['b_end_month'], $this->arrSql['b_end_day'], "birth");
 			if (is_array($arrBirth)) {
 				foreach ($arrBirth as $data3) {
@@ -163,17 +181,17 @@
 			}
 		}
-
+				
 		// ÃÂÀ¸·î¤Î¸¡º÷
-		if (is_numeric($this->arrSql["search_birth_month"])) {
+		if (is_numeric($this->arrSql["birth_month"])) {
 			$this->setWhere(" EXTRACT(month from birth) = ?");  
-			$this->arrVal[] = $this->arrSql["search_birth_month"];
-		}
-
+			$this->arrVal[] = $this->arrSql["birth_month"];
+		}
+			
 		// ÅÐÏ¿´ü´Ö»ØÄê
-		if ( (strlen($this->arrSql['search_start_year']) > 0 && strlen($this->arrSql['search_start_month']) > 0 && strlen($this->arrSql['search_start_day']) > 0 ) || 
-				(strlen($this->arrSql['search_end_year']) > 0 && strlen($this->arrSql['search_end_month']) >0 && strlen($this->arrSql['search_end_day']) > 0) ) {
-
-			$arrRegistTime = $this->selectTermRange($this->arrSql['search_start_year'], $this->arrSql['search_start_month'], $this->arrSql['search_start_day']
-							, $this->arrSql['search_end_year'], $this->arrSql['search_end_month'], $this->arrSql['search_end_day'], $regdate_col);
+		if ( (strlen($this->arrSql['start_year']) > 0 && strlen($this->arrSql['start_month']) > 0 && strlen($this->arrSql['start_day']) > 0 ) || 
+				(strlen($this->arrSql['end_year']) > 0 && strlen($this->arrSql['end_month']) >0 && strlen($this->arrSql['end_day']) > 0) ) {
+
+			$arrRegistTime = $this->selectTermRange($this->arrSql['start_year'], $this->arrSql['start_month'], $this->arrSql['start_day']
+							, $this->arrSql['end_year'], $this->arrSql['end_month'], $this->arrSql['end_day'], $regdate_col);
 			if (is_array($arrRegistTime)) {
 				foreach ($arrRegistTime as $data4) {
@@ -182,10 +200,10 @@
 			}
 		}
-
+			
 		// ºÇ½ª¹ØÆþÆü»ØÄê
-		if ( (strlen($this->arrSql['search_buy_start_year']) > 0 && strlen($this->arrSql['search_buy_start_month']) > 0 && strlen($this->arrSql['search_buy_start_day']) > 0 ) || 
-				(strlen($this->arrSql['search_buy_end_year']) > 0 && strlen($this->arrSql['search_buy_end_month']) >0 && strlen($this->arrSql['search_buy_end_day']) > 0) ) {
-			$arrRegistTime = $this->selectTermRange($this->arrSql['search_buy_start_year'], $this->arrSql['search_buy_start_month'], $this->arrSql['search_buy_start_day']
-							, $this->arrSql['search_buy_end_year'], $this->arrSql['search_buy_end_month'], $this->arrSql['search_buy_end_day'], "last_buy_date");
+		if ( (strlen($this->arrSql['buy_start_year']) > 0 && strlen($this->arrSql['buy_start_month']) > 0 && strlen($this->arrSql['buy_start_day']) > 0 ) || 
+				(strlen($this->arrSql['buy_end_year']) > 0 && strlen($this->arrSql['buy_end_month']) >0 && strlen($this->arrSql['buy_end_day']) > 0) ) {
+			$arrRegistTime = $this->selectTermRange($this->arrSql['buy_start_year'], $this->arrSql['buy_start_month'], $this->arrSql['buy_start_day']
+							, $this->arrSql['buy_end_year'], $this->arrSql['buy_end_month'], $this->arrSql['buy_end_day'], "last_buy_date");
 			if (is_array($arrRegistTime)) {
 				foreach ($arrRegistTime as $data4) {
@@ -196,21 +214,21 @@
 		
 		//¹ØÆþ¾¦ÉÊ¥³¡¼¥É
-		if ( strlen($this->arrSql['search_buy_product_code']) > 0 ) {
+		if ( strlen($this->arrSql['buy_product_code']) > 0 ) {
 			$this->setWhere( "customer_id IN (SELECT customer_id FROM dtb_order WHERE order_id IN (SELECT order_id FROM dtb_order_detail WHERE product_code LIKE ? ))");
-			$search_buyproduct_code = $this->addSearchStr($this->arrSql['search_buy_product_code']);
+			$search_buyproduct_code = $this->addSearchStr($this->arrSql['buy_product_code']);
 			$this->arrVal[] = $search_buyproduct_code;
 		}
 
 		//¹ØÆþ¾¦ÉÊÌ¾¾Î
-		if ( strlen($this->arrSql['search_buy_product_name']) > 0 ) {
+		if ( strlen($this->arrSql['buy_product_name']) > 0 ) {
 			$this->setWhere( "customer_id IN (SELECT customer_id FROM dtb_order WHERE order_id IN (SELECT order_id FROM dtb_order_detail WHERE product_name LIKE ? ))");
-			$search_buyproduct_name = $this->addSearchStr($this->arrSql['search_buy_product_name']);
+			$search_buyproduct_name = $this->addSearchStr($this->arrSql['buy_product_name']);
 			$this->arrVal[] = $search_buyproduct_name;
 		}
 		
 		//¥«¥Æ¥´¥ê¡¼¤òÁªÂò¤·¤Æ¤¤¤ë¾ì¹ç¤Î¤ß¹Ê¹þ¸¡º÷¤ò¹Ô¤¦
-		if ( strlen($this->arrSql['search_category_id']) != ""){
+		if ( strlen($this->arrSql['category_id']) != ""){
 			//¥«¥Æ¥´¥ê¡¼¤Ç¹Ê¹þ¸¡º÷¤ò¹Ô¤¦SQLÊ¸À¸À®
-			list($tmp_where, $tmp_arrval) = sfGetCatWhere(sfManualEscape($this->arrSql['search_category_id']));
+			list($tmp_where, $tmp_arrval) = sfGetCatWhere(sfManualEscape($this->arrSql['category_id']));
 
 			//¥«¥Æ¥´¥ê¡¼¤Ç¹Ê¹þ¤ß¤¬²ÄÇ½¤Î¾ì¹ç
@@ -220,4 +238,10 @@
 			}
 		}
+		//¡¡·ÈÂÓÅÅÏÃÈÖ¹æ
+		if ( is_numeric( $this->arrSql['cell'] ) ) {
+			$this->setWhere( "(cell01 || cell02 || cell03 LIKE ?)" );
+			$searchTel = $this->addSearchStr($this->arrSql['cell']);
+			$this->arrVal[] = ereg_replace("-", "", $searchTel);
+		}
 
 		$this->setOrder( "customer_id DESC" );
@@ -231,5 +255,5 @@
 
 	function getListMailMagazine() {
-		$this->select = "SELECT customer_id,name01,name02,kana01,kana02,sex,email,tel01,tel02,tel03,pref, mail_flag FROM dtb_customer_mail LEFT OUTER JOIN dtb_customer USING(email)";
+		$this->select = "SELECT customer_id,name01,name02,kana01,kana02,sex,email,tel01,tel02,tel03,pref, mail_flag, other_data, other_flag FROM dtb_customer_mail LEFT OUTER JOIN dtb_customer USING(email)";
 		return $this->getSql(0);	
 	}
@@ -241,5 +265,5 @@
 	//¹ØÆþ¾¦ÉÊ¥³¡¼¥É¸¡º÷ÍÑSQL
 	function getBuyList(){
-		$this->select = "SELECT A.customer_id, A.name01, A.name02, A.kana01, A.kana02, A.sex, A.email, A.tel01, A.tel02, A.tel03, A.pref, A.mail_flag, B.order_email, B.order_id, C.product_code 
+		$this->select = "SELECT A.customer_id, A.name01, A.name02, A.kana01, A.kana02, A.sex, A.email, A.tel01, A.tel02, A.tel03, A.pref, A.mail_flag, A.other_flag, A.other_data, B.order_email, B.order_id, C.product_code 
 						FROM (dtb_customer LEFT OUTER JOIN dtb_customer_mail USING (email)) AS A LEFT OUTER JOIN dtb_order AS B ON 
 						A.email=B.order_email LEFT OUTER JOIN dtb_order_detail AS C ON B.order_id = C.order_id";
@@ -269,6 +293,4 @@
 		return array($this->where, $this->arrVal);
 	}
-	
 }
-
 ?>
