source: temp/trunk/html/shopping/deliv.php @ 4608

Revision 4608, 10.6 KB checked in by kakinaka, 20 years ago (diff)

blank

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1<?php
2require_once("../require.php");
3
4class LC_Page {
5    var $arrSession;
6    var $tpl_mode;
7    var $arrAddr;
8    function LC_Page() {
9        $this->tpl_mainpage = 'shopping/deliv.tpl';
10        $this->tpl_css = '/css/layout/shopping/index.css';
11        global $arrPref;
12        $this->arrPref = $arrPref;
13        $this->tpl_title = "¤ªÆÏ¤±Àè»ØÄê";      // ¥¿¥¤¥È¥ë
14
15        /*
16         session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç
17         ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£
18         private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£
19        */
20        session_cache_limiter('private-no-expire');     
21
22    }
23}
24
25$objPage = new LC_Page();
26$objView = new SC_SiteView();
27$objSiteSess = new SC_SiteSession();
28$objCartSess = new SC_CartSession();
29$objCustomer = new SC_Customer();
30// ¥¯¥Ã¥­¡¼´ÉÍý¥¯¥é¥¹
31$objCookie = new SC_Cookie(COOKIE_EXPIRE);
32// ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹
33$objFormParam = new SC_FormParam();
34// ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½
35lfInitParam();
36// POSTÃͤμèÆÀ
37$objFormParam->setParam($_POST);
38
39$objLoginFormParam = new SC_FormParam();    // ¥í¥°¥¤¥ó¥Õ¥©¡¼¥àÍÑ
40lfInitLoginFormParam();                     // ½é´üÀßÄê
41$objLoginFormParam->setParam($_POST);       // POSTÃͤμèÆÀ
42
43// ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯
44$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess);
45$objPage->tpl_uniqid = $uniqid;
46
47// ¥í¥°¥¤¥ó¥Á¥§¥Ã¥¯
48if($_POST['mode'] != 'login' && !$objCustomer->isLoginSuccess()) {
49    // ÉÔÀµ¥¢¥¯¥»¥¹¤È¤ß¤Ê¤¹
50    sfDispSiteError(CUSTOMER_ERROR);
51}
52
53switch($_POST['mode']) {
54case 'login':
55    $objLoginFormParam->toLower('login_email');
56    $objPage->arrErr = $objLoginFormParam->checkError();
57    $arrForm =  $objLoginFormParam->getHashArray();
58    // ¥¯¥Ã¥­¡¼ÊݸȽÄê
59    if($arrForm['login_memory'] == "1" && $arrForm['login_email'] != "") {
60        $objCookie->setCookie('login_email', $_POST['login_email']);
61    } else {
62        $objCookie->setCookie('login_email', '');
63    }
64
65    if(count($objPage->arrErr) == 0) {
66        // ¥í¥°¥¤¥óȽÄê
67        if(!$objCustomer->getCustomerDataFromEmailPass($arrForm['login_pass'], $arrForm['login_email'])) {
68            // ²¾ÅÐÏ¿¤ÎȽÄê
69            $objQuery = new SC_Query;
70            $where = "email = ? AND status = 1 AND del_flg = 0";
71            $ret = $objQuery->count("dtb_customer", $where, array($arrForm['login_email']));
72           
73            if($ret > 0) {
74                sfDispSiteError(TEMP_LOGIN_ERROR);
75            } else {
76                sfDispSiteError(SITE_LOGIN_ERROR);
77            }
78        }
79    } else {
80        // ¥í¥°¥¤¥ó¥Ú¡¼¥¸¤ËÌá¤ë
81        header("Location: " . URL_SHOP_TOP);
82        exit;   
83    }
84    break;
85// ºï½ü
86case 'delete':
87    if (sfIsInt($_POST['other_deliv_id'])) {
88        $objQuery = new SC_Query();
89        $where = "other_deliv_id = ?";
90        $arrRet = $objQuery->delete("dtb_other_deliv", $where, array($_POST['other_deliv_id']));
91        $objFormParam->setValue('select_addr_id', '');
92    }
93    break;
94// ²ñ°÷ÅÐÏ¿½»½ê¤ËÁ÷¤ë
95case 'customer_addr':
96    // ¤ªÆÏ¤±À褬¥Á¥§¥Ã¥¯¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¹¹¿·½èÍý¤ò¹Ô¤¦
97    if ($_POST['deli'] != "") {
98        // ²ñ°÷¾ðÊó¤Î½»½ê¤ò¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Ë½ñ¤­¹þ¤à
99        lfRegistDelivData($uniqid, $objCustomer);
100        // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯
101        $objSiteSess->setRegistFlag();
102        // ¤ª»Ùʧ¤¤ÊýË¡ÁªÂò¥Ú¡¼¥¸¤Ø°Üư
103        header("Location: " . URL_SHOP_PAYMENT);
104        exit;
105    }else{
106        // ¥¨¥é¡¼¤òÊÖ¤¹
107        $arrErr['deli'] = '¢¨ ¤ªÆÏ¤±Àè¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤¡£';
108    }
109    break;
110   
111// ÅÐÏ¿ºÑ¤ß¤ÎÊ̤ΤªÆÏ¤±Àè¤ËÁ÷¤ë
112case 'other_addr':
113    // ¤ªÆÏ¤±À褬¥Á¥§¥Ã¥¯¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¹¹¿·½èÍý¤ò¹Ô¤¦
114    if ($_POST['deli'] != "") {
115        if (sfIsInt($_POST['other_deliv_id'])) {
116            // ÅÐÏ¿ºÑ¤ß¤ÎÊ̤ΤªÆÏ¤±Àè¤ò¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Ë½ñ¤­¹þ¤à
117            lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['other_deliv_id']);
118            // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯
119            $objSiteSess->setRegistFlag();
120            // ¤ª»Ùʧ¤¤ÊýË¡ÁªÂò¥Ú¡¼¥¸¤Ø°Üư
121            header("Location: " . URL_SHOP_PAYMENT);
122            exit;
123        }
124    }else{
125        // ¥¨¥é¡¼¤òÊÖ¤¹
126        $arrErr['deli'] = '¢¨ ¤ªÆÏ¤±Àè¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤¡£';
127    }
128    break;
129
130/*
131// Ê̤ΤªÆÏ¤±Àè¤ò»ØÄê
132case 'new_addr':
133    // ÆþÎÏÃͤÎÊÑ´¹
134    $objFormParam->convParam();
135    $objPage->arrErr = lfCheckError($arrRet);
136    // ÆþÎÏ¥¨¥é¡¼¤Ê¤·
137    if(count($objPage->arrErr) == 0) {
138        // DB¤Ø¤ªÆÏ¤±Àè¤òÅÐÏ¿
139        lfRegistNewAddrData($uniqid, $objCustomer);
140        // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯
141        $objSiteSess->setRegistFlag();
142        // ¤ª»Ùʧ¤¤ÊýË¡ÁªÂò¥Ú¡¼¥¸¤Ø°Üư
143        header("Location: " . URL_SHOP_PAYMENT);
144        exit;       
145    }
146    break;
147*/
148
149// Á°¤Î¥Ú¡¼¥¸¤ËÌá¤ë
150case 'return':
151    // ³Îǧ¥Ú¡¼¥¸¤Ø°Üư
152    header("Location: " . URL_CART_TOP);
153    exit;
154    break;
155default:
156    $objQuery = new SC_Query();
157    $where = "order_temp_id = ?";
158    $arrRet = $objQuery->select("*", "dtb_order_temp", $where, array($uniqid));
159    $objFormParam->setParam($arrRet[0]);
160    break;
161}
162
163/** ɽ¼¨½èÍý **/
164
165// ²ñ°÷ÅÐÏ¿½»½ê¤Î¼èÆÀ
166$col = "name01, name02, pref, addr01, addr02";
167$where = "customer_id = ?";
168$objQuery = new SC_Query();
169$arrCustomerAddr = $objQuery->select($col, "dtb_customer", $where, array($_SESSION['customer']['customer_id']));
170// Ê̤ΤªÆÏ¤±Àè½»½ê¤Î¼èÆÀ
171$col = "other_deliv_id, name01, name02, pref, addr01, addr02";
172$objQuery->setorder("other_deliv_id DESC");
173$objOtherAddr = $objQuery->select($col, "dtb_other_deliv", $where, array($_SESSION['customer']['customer_id']));
174$objPage->arrAddr = $arrCustomerAddr;
175$cnt = 1;
176foreach($objOtherAddr as $val) {
177    $objPage->arrAddr[$cnt] = $val;
178    $cnt++;
179}
180
181// ÆþÎÏÃͤμèÆÀ
182$objPage->arrForm = $objFormParam->getFormParamList();
183$objPage->arrErr = $arrErr;
184$objView->assignobj($objPage);
185$objView->display(SITE_FRAME);
186//--------------------------------------------------------------------------------------------------------------------------
187/* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */
188function lfInitParam() {
189    global $objFormParam;
190    $objFormParam->addParam("¤ªÌ¾Á°1", "deliv_name01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
191    $objFormParam->addParam("¤ªÌ¾Á°2", "deliv_name02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
192    $objFormParam->addParam("¥Õ¥ê¥¬¥Ê1", "deliv_kana01", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
193    $objFormParam->addParam("¥Õ¥ê¥¬¥Ê2", "deliv_kana02", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
194    $objFormParam->addParam("Í¹ÊØÈÖ¹æ1", "deliv_zip01", ZIP01_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK"));
195    $objFormParam->addParam("Í¹ÊØÈÖ¹æ2", "deliv_zip02", ZIP02_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK"));
196    $objFormParam->addParam("ÅÔÆ»Éܸ©", "deliv_pref", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK"));
197    $objFormParam->addParam("½»½ê1", "deliv_addr01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
198    $objFormParam->addParam("½»½ê2", "deliv_addr02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
199    $objFormParam->addParam("ÅÅÏÃÈÖ¹æ1", "deliv_tel01", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));
200    $objFormParam->addParam("ÅÅÏÃÈÖ¹æ2", "deliv_tel02", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));
201    $objFormParam->addParam("ÅÅÏÃÈÖ¹æ3", "deliv_tel03", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK"));
202}
203
204function lfInitLoginFormParam() {
205    global $objLoginFormParam;
206    $objLoginFormParam->addParam("µ­²±¤¹¤ë", "login_memory", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"));
207    $objLoginFormParam->addParam("¥á¡¼¥ë¥¢¥É¥ì¥¹", "login_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));
208    $objLoginFormParam->addParam("¥Ñ¥¹¥ï¡¼¥É", "login_pass", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK"));
209}
210
211/* DB¤Ø¥Ç¡¼¥¿¤ÎÅÐÏ¿ */
212function lfRegistNewAddrData($uniqid, $objCustomer) {
213    global $objFormParam;
214    $arrRet = $objFormParam->getHashArray();
215    $sqlval = $objFormParam->getDbArray();
216    // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ®
217    $sqlval['deliv_check'] = '1';
218    $sqlval['order_temp_id'] = $uniqid;
219    $sqlval['update_date'] = 'Now()';
220    $sqlval['customer_id'] = $objCustomer->getValue('customer_id');
221    $sqlval['order_birth'] = $objCustomer->getValue('birth');
222   
223    sfRegistTempOrder($uniqid, $sqlval);
224}
225
226/* ²ñ°÷¾ðÊó¤Î½»½ê¤ò°ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤Ø */
227function lfRegistDelivData($uniqid, $objCustomer) {
228    // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ®
229    $sqlval['order_temp_id'] = $uniqid;
230    $sqlval['update_date'] = 'Now()';
231    $sqlval['customer_id'] = $objCustomer->getValue('customer_id');
232    $sqlval['deliv_check'] = '1';
233    $sqlval['deliv_name01'] = $objCustomer->getValue('name01');
234    $sqlval['deliv_name02'] = $objCustomer->getValue('name02');
235    $sqlval['deliv_kana01'] = $objCustomer->getValue('kana01');
236    $sqlval['deliv_kana02'] = $objCustomer->getValue('kana02');
237    $sqlval['deliv_zip01'] = $objCustomer->getValue('zip01');
238    $sqlval['deliv_zip02'] = $objCustomer->getValue('zip02');
239    $sqlval['deliv_pref'] = $objCustomer->getValue('pref');
240    $sqlval['deliv_addr01'] = $objCustomer->getValue('addr01');
241    $sqlval['deliv_addr02'] = $objCustomer->getValue('addr02');
242    $sqlval['deliv_tel01'] = $objCustomer->getValue('tel01');
243    $sqlval['deliv_tel02'] = $objCustomer->getValue('tel02');
244    $sqlval['deliv_tel03'] = $objCustomer->getValue('tel03');
245
246    $sqlval['deliv_fax01'] = $objCustomer->getValue('fax01');
247    $sqlval['deliv_fax02'] = $objCustomer->getValue('fax02');
248    $sqlval['deliv_fax03'] = $objCustomer->getValue('fax03');
249
250    sfRegistTempOrder($uniqid, $sqlval);
251}
252
253/* Ê̤ΤªÆÏ¤±Àè½»½ê¤ò°ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤Ø */
254function lfRegistOtherDelivData($uniqid, $objCustomer, $other_deliv_id) {
255    // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ®
256    $sqlval['order_temp_id'] = $uniqid;
257    $sqlval['update_date'] = 'Now()';
258    $sqlval['customer_id'] = $objCustomer->getValue('customer_id');
259    $sqlval['order_birth'] = $objCustomer->getValue('birth');
260       
261    $objQuery = new SC_Query();
262    $where = "other_deliv_id = ?";
263    $arrRet = $objQuery->select("*", "dtb_other_deliv", $where, array($other_deliv_id));
264   
265    $sqlval['deliv_check'] = '1';
266    $sqlval['deliv_name01'] = $arrRet[0]['name01'];
267    $sqlval['deliv_name02'] = $arrRet[0]['name02'];
268    $sqlval['deliv_kana01'] = $arrRet[0]['kana01'];
269    $sqlval['deliv_kana02'] = $arrRet[0]['kana02'];
270    $sqlval['deliv_zip01'] = $arrRet[0]['zip01'];
271    $sqlval['deliv_zip02'] = $arrRet[0]['zip02'];
272    $sqlval['deliv_pref'] = $arrRet[0]['pref'];
273    $sqlval['deliv_addr01'] = $arrRet[0]['addr01'];
274    $sqlval['deliv_addr02'] = $arrRet[0]['addr02'];
275    $sqlval['deliv_tel01'] = $arrRet[0]['tel01'];
276    $sqlval['deliv_tel02'] = $arrRet[0]['tel02'];
277    $sqlval['deliv_tel03'] = $arrRet[0]['tel03'];
278    sfRegistTempOrder($uniqid, $sqlval);
279}
280
281/* ÆþÎÏÆâÍÆ¤Î¥Á¥§¥Ã¥¯ */
282function lfCheckError() {
283    global $objFormParam;
284    // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£
285    $arrRet =  $objFormParam->getHashArray();
286    $objErr = new SC_CheckError($arrRet);
287    $objErr->arrErr = $objFormParam->checkError();
288    // Ê£¿ô¹àÌÜ¥Á¥§¥Ã¥¯
289    if ($_POST['mode'] == 'login'){
290    $objErr->doFunc(array("¥á¡¼¥ë¥¢¥É¥ì¥¹", "login_email", STEXT_LEN), array("EXIST_CHECK"));
291    $objErr->doFunc(array("¥Ñ¥¹¥ï¡¼¥É", "login_pass", STEXT_LEN), array("EXIST_CHECK"));
292    }
293    $objErr->doFunc(array("TEL", "deliv_tel01", "deliv_tel02", "deliv_tel03", TEL_ITEM_LEN), array("TEL_CHECK"));
294    return $objErr->arrErr;
295}
296?>
Note: See TracBrowser for help on using the repository browser.