Index: temp/trunk/data/downloads/module/mdl_epsilon/card.php
===================================================================
--- temp/trunk/data/downloads/module/mdl_epsilon/card.php	(revision 8234)
+++ temp/trunk/data/downloads/module/mdl_epsilon/card.php	(revision 8235)
@@ -46,7 +46,4 @@
 $arrPayment = $objQuery->getall("SELECT module_id, memo01, memo02, memo03, memo04, memo05, memo06, memo07, memo08, memo09, memo10 FROM dtb_payment WHERE payment_id = ? ", array($arrData["payment_id"]));
 
-// ¥Ç¡¼¥¿Á÷¿®ÀèCGI
-$order_url = $arrPayment[0]["memo02"];
-
 // trans_code¤ËÃÍ¤¬¤¢¤ê³î¤Ä¡¢Àµ¾ï½ªÎ»¤Î¤È¤­¤Ï¥ª¡¼¥À¡¼³ÎÇ§¤ò¹Ô¤¦¡£
 if($_GET["result"] == "1"){
@@ -71,41 +68,58 @@
 }
 
-// Á÷¿®¥Ç¡¼¥¿À¸À®
-$arrData = array(
-	'contract_code' => $arrPayment[0]["memo01"],						// ·ÀÌó¥³¡¼¥É
-	'user_id' => $arrData["customer_id"],								// ¥æ¡¼¥¶ID
-	'user_name' => $arrData["order_name01"].$arrData["order_name02"],	// ¥æ¡¼¥¶Ì¾
-	'user_mail_add' => $arrData["order_email"],							// ¥á¡¼¥ë¥¢¥É¥ì¥¹
-	'order_number' => $arrData["order_id"],								// ¥ª¡¼¥À¡¼ÈÖ¹æ
-	'item_code' => $arrMainProduct["product_code"],						// ¾¦ÉÊ¥³¡¼¥É(ÂåÉ½)
-	'item_name' => $arrMainProduct["name"],								// ¾¦ÉÊÌ¾(ÂåÉ½)
-	'item_price' => $arrData["payment_total"],							// ¾¦ÉÊ²Á³Ê(ÀÇ¹þ¤ßÁí³Û)
-	'st_code' => $arrPayment[0]["memo04"],								// ·èºÑ¶èÊ¬
-	'mission_code' => '1',												// ²Ý¶â¶èÊ¬(¸ÇÄê)
-	'process_code' => '1',												// ½èÍý¶èÊ¬(¸ÇÄê)
-	'xml' => '1',														// ±þÅú·Á¼°(¸ÇÄê)
-	'memo1' => ECCUBE_PAYMENT . "_" . date("YmdHis"),					// Í½È÷01
-	'memo2' => ''														// Í½È÷02
-);
-
 // ¥Ç¡¼¥¿Á÷¿®
-$arrXML = sfPostPaymentData($order_url, $arrData);
-
-// ¥¨¥é¡¼¤¬¤¢¤ë¤«¥Á¥§¥Ã¥¯¤¹¤ë
-$err_code = sfGetXMLValue($arrXML,'RESULT','ERR_CODE');
-
-if($err_code != "") {
-	$err_detail = sfGetXMLValue($arrXML,'RESULT','ERR_DETAIL');
-	sfprintr($err_code . ":" . $err_detail);
-	sfDispSiteError(FREE_ERROR_MSG, "", true, "¹ØÆþ½èÍýÃæ¤Ë°Ê²¼¤Î¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£<br /><br /><br />¡¦" . $err_detail . "<br /><br /><br />¤³¤Î¼êÂ³¤­¤ÏÌµ¸ú¤È¤Ê¤ê¤Þ¤·¤¿¡£");
-} else {
-	// Àµ¾ï¤Ê¿ä°Ü¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯
-	$objSiteSess->setRegistFlag();
-	
-	$url = sfGetXMLValue($arrXML,'RESULT','REDIRECT');
-	header("Location: " . $url);
-}
+lfSendCredit();
 
 //---------------------------------------------------------------------------------------------------------------------------------------------------------
 
+// ¥Ç¡¼¥¿Á÷¿®½èÍý
+function lfSendCredit(){
+	global $arrPayment;
+	global $arrData;
+	global $arrMainProduct;
+	
+	// ¥Ç¡¼¥¿Á÷¿®ÀèCGI
+	$order_url = $arrPayment[0]["memo02"];
+	
+	// Á÷¿®¥Ç¡¼¥¿À¸À®
+	$arrData = array(
+		'contract_code' => $arrPayment[0]["memo01"],						// ·ÀÌó¥³¡¼¥É
+		'user_id' => $arrData["customer_id"],								// ¥æ¡¼¥¶ID
+		'user_name' => $arrData["order_name01"].$arrData["order_name02"],	// ¥æ¡¼¥¶Ì¾
+		'user_mail_add' => $arrData["order_email"],							// ¥á¡¼¥ë¥¢¥É¥ì¥¹
+		'order_number' => $arrData["order_id"],								// ¥ª¡¼¥À¡¼ÈÖ¹æ
+		'item_code' => $arrMainProduct["product_code"],						// ¾¦ÉÊ¥³¡¼¥É(ÂåÉ½)
+		'item_name' => $arrMainProduct["name"],								// ¾¦ÉÊÌ¾(ÂåÉ½)
+		'item_price' => $arrData["payment_total"],							// ¾¦ÉÊ²Á³Ê(ÀÇ¹þ¤ßÁí³Û)
+		'st_code' => $arrPayment[0]["memo04"],								// ·èºÑ¶èÊ¬
+		'mission_code' => '1',												// ²Ý¶â¶èÊ¬(¸ÇÄê)
+		'process_code' => '1',												// ½èÍý¶èÊ¬(¸ÇÄê)
+		'xml' => '1',														// ±þÅú·Á¼°(¸ÇÄê)
+		'memo1' => ECCUBE_PAYMENT . "_" . date("YmdHis"),					// Í½È÷01
+		'memo2' => ''														// Í½È÷02
+	);
+	
+	// ¥Ç¡¼¥¿Á÷¿®
+	$arrXML = sfPostPaymentData($order_url, $arrData);
+	
+	// ¥¨¥é¡¼¤¬¤¢¤ë¤«¥Á¥§¥Ã¥¯¤¹¤ë
+	$err_code = sfGetXMLValue($arrXML,'RESULT','ERR_CODE');
+	
+	if($err_code != "") {
+		$err_detail = sfGetXMLValue($arrXML,'RESULT','ERR_DETAIL');
+		sfprintr($err_code . ":" . $err_detail);
+		if($err_code == "909"){
+			$arrPayment[0]["memo04"] = "10000-0000-00000";
+			lfSendCredit();
+		}
+		sfDispSiteError(FREE_ERROR_MSG, "", true, "¹ØÆþ½èÍýÃæ¤Ë°Ê²¼¤Î¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿¡£<br /><br /><br />¡¦" . $err_detail . "<br /><br /><br />¤³¤Î¼êÂ³¤­¤ÏÌµ¸ú¤È¤Ê¤ê¤Þ¤·¤¿¡£");
+	} else {
+		// Àµ¾ï¤Ê¿ä°Ü¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯
+		$objSiteSess->setRegistFlag();
+		
+		$url = sfGetXMLValue($arrXML,'RESULT','REDIRECT');
+		header("Location: " . $url);
+	}
+}
+
 ?>
