Index: branches/dev/data/class/SC_CartSession.php
===================================================================
--- branches/dev/data/class/SC_CartSession.php	(revision 13453)
+++ branches/dev/data/class/SC_CartSession.php	(revision 14108)
@@ -173,5 +173,5 @@
 	
 	// ¥«¡¼¥È¤Ø¤Î¾¦ÉÊÄÉ²Ã
-	function addProduct($id, $quantity) {
+	function addProduct($id, $quantity, $is_campaign) {
 		$find = false;
 		$max = $this->getMax();
@@ -182,4 +182,5 @@
 				if(strlen($val) <= INT_LEN) {
 					$_SESSION[$this->key][$i]['quantity']+= $quantity;
+                    if($is_campaign) $_SESSION[$this->key][$i]['is_campaign'] = $is_campaign;
 				}
 				$find = true;
@@ -190,4 +191,5 @@
 			$_SESSION[$this->key][$max+1]['quantity'] = $quantity;
 			$_SESSION[$this->key][$max+1]['cart_no'] = $this->getNextCartID();
+            if($is_campaign) $_SESSION[$this->key][$max+1]['is_campaign'] = $is_campaign;
 		}
 	}
@@ -323,4 +325,17 @@
 	}
     
+    /**
+     * ¥«¡¼¥È¤ÎÃæ¤Î¥­¥ã¥ó¥Ú¡¼¥ó¾¦ÉÊ¤Î¥Á¥§¥Ã¥¯
+     * @param void
+     * @return boolean True:¥­¥ã¥ó¥Ú¡¼¥ó¾¦ÉÊÍ­¤ê False:¥­¥ã¥ó¥Ú¡¼¥ó¾¦ÉÊÌµ¤·
+     */
+	function chkCampaign(){
+		$max = $this->getMax();
+		for($i = 0; $i <= $max; $i++) {
+			if($_SESSION[$this->key][$i]['is_campaign']) return true;
+		}
+        
+		return false;
+	}    
 
 }
