source: branches/dev/html/admin/products/product.php @ 12020

Revision 12020, 20.0 KB checked in by naka, 17 years ago (diff)
Line 
1<?php
2/*
3 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
4 *
5 * http://www.lockon.co.jp/
6 */
7require_once("../require.php");
8
9class LC_Page {
10    var $arrCatList;
11    var $arrSRANK;
12    var $arrForm;
13    var $arrSubList;
14    var $arrHidden;
15    var $arrTempImage;
16    var $arrSaveImage;
17    var $tpl_mode;
18    function LC_Page() {
19        $this->tpl_mainpage = 'products/product.tpl';
20        $this->tpl_subnavi = 'products/subnavi.tpl';
21        $this->tpl_mainno = 'products';     
22        $this->tpl_subno = 'product';
23        $this->tpl_subtitle = '¾¦ÉÊÅÐÏ¿';
24        global $arrSRANK;
25        $this->arrSRANK = $arrSRANK;
26        global $arrDISP;
27        $this->arrDISP = $arrDISP;
28        global $arrCLASS;
29        $this->arrCLASS = $arrCLASS;
30        global $arrSTATUS;
31        $this->arrSTATUS = $arrSTATUS;
32        global $arrSTATUS_VALUE;
33        $this->arrSTATUS_VALUE = $arrSTATUS_VALUE;
34        global $arrSTATUS_IMAGE;
35        $this->arrSTATUS_IMAGE = $arrSTATUS_IMAGE;
36        global $arrDELIVERYDATE;
37        $this->arrDELIVERYDATE = $arrDELIVERYDATE;
38        $this->tpl_nonclass = true;
39    }
40}
41
42$objPage = new LC_Page();
43$objView = new SC_AdminView();
44$objSiteInfo = new SC_SiteInfo();
45$objQuery = new SC_Query();
46
47// ǧ¾Ú²ÄÈݤÎȽÄê
48$objSess = new SC_Session();
49sfIsSuccess($objSess);
50
51// ¥Õ¥¡¥¤¥ë´ÉÍý¥¯¥é¥¹
52$objUpFile = new SC_UploadFile(IMAGE_TEMP_DIR, IMAGE_SAVE_DIR);
53
54// ¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½
55lfInitFile();
56// Hidden¤«¤é¤Î¥Ç¡¼¥¿¤ò°ú¤­·Ñ¤°
57$objUpFile->setHiddenFileList($_POST);
58
59// ¸¡º÷¥Ñ¥é¥á¡¼¥¿¤Î°ú¤­·Ñ¤®
60foreach ($_POST as $key => $val) {
61    if (ereg("^search_", $key)) {
62        $objPage->arrSearchHidden[$key] = $val;
63    }
64}
65
66// FORM¥Ç¡¼¥¿¤Î°ú¤­·Ñ¤®
67$objPage->arrForm = $_POST;
68
69switch($_POST['mode']) {
70// ¸¡º÷²èÌ̤«¤é¤ÎÊÔ½¸
71case 'pre_edit':
72case 'copy' :
73    // ÊÔ½¸»þ
74    if(sfIsInt($_POST['product_id'])){
75        // DB¤«¤é¾¦ÉʾðÊó¤ÎÆɹþ
76        $arrForm = lfGetProduct($_POST['product_id']);
77        // DB¥Ç¡¼¥¿¤«¤é²èÁü¥Õ¥¡¥¤¥ë̾¤ÎÆɹþ
78        $objUpFile->setDBFileList($arrForm);
79       
80        if($_POST['mode'] == "copy"){
81            $arrForm["copy_product_id"] = $arrForm["product_id"];
82            $arrForm["product_id"] = "";
83            // ²èÁü¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼
84            $arrKey = $objUpFile->keyname;
85            $arrSaveFile = $objUpFile->save_file;
86           
87            foreach($arrSaveFile as $key => $val){
88                lfMakeScaleImage($arrKey[$key], $arrKey[$key], true);
89            }
90        }
91        $objPage->arrForm = $arrForm;
92       
93        // ¾¦ÉÊ¥¹¥Æ¡¼¥¿¥¹¤ÎÊÑ´¹
94        $arrRet = sfSplitCBValue($objPage->arrForm['product_flag'], "product_flag");
95        $objPage->arrForm = array_merge($objPage->arrForm, $arrRet);
96        // DB¤«¤é¤ª¤¹¤¹¤á¾¦ÉʤÎÆɤ߹þ¤ß
97        $objPage->arrRecommend = lfPreGetRecommendProducts($_POST['product_id']);
98       
99        // µ¬³ÊÅÐÏ¿¤¢¤ê¤Ê¤·È½Äê
100        $objPage->tpl_nonclass = lfCheckNonClass($_POST['product_id']);
101        lfProductPage();        // ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸
102    }
103    break;
104// ¾¦ÉÊÅÐÏ¿¡¦ÊÔ½¸
105case 'edit':
106    // µ¬³ÊÅÐÏ¿¤¢¤ê¤Ê¤·È½Äê
107    $tpl_nonclass = lfCheckNonClass($_POST['product_id']);
108   
109    if($_POST['product_id'] == "" and sfIsInt($_POST['copy_product_id'])){
110        $tpl_nonclass = lfCheckNonClass($_POST['copy_product_id']);
111    }
112    $objPage->tpl_nonclass = $tpl_nonclass;
113   
114    // ÆþÎÏÃͤÎÊÑ´¹
115    $objPage->arrForm = lfConvertParam($objPage->arrForm);
116    // ¥¨¥é¡¼¥Á¥§¥Ã¥¯
117    $objPage->arrErr = lfErrorCheck($objPage->arrForm);
118    // ¥Õ¥¡¥¤¥ë¸ºß¥Á¥§¥Ã¥¯
119    $objPage->arrErr = array_merge((array)$objPage->arrErr, (array)$objUpFile->checkEXISTS());
120    // ¥¨¥é¡¼¤Ê¤·¤Î¾ì¹ç
121    if(count($objPage->arrErr) == 0) {
122        lfProductConfirmPage(); // ³Îǧ¥Ú¡¼¥¸
123    } else {
124        lfProductPage();        // ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸
125    }
126    break;
127// ³Îǧ¥Ú¡¼¥¸¤«¤é´°Î»¥Ú¡¼¥¸¤Ø
128case 'complete':
129    $objPage->tpl_mainpage = 'products/complete.tpl';
130   
131    $objPage->tpl_product_id = lfRegistProduct($_POST);     // ¥Ç¡¼¥¿ÅÐÏ¿
132   
133    $objQuery = new SC_Query();
134    // ·ï¿ô¥«¥¦¥ó¥È¥Ð¥Ã¥Á¼Â¹Ô
135    sfCategory_Count($objQuery);
136    // °ì»þ¥Õ¥¡¥¤¥ë¤òËÜÈ֥ǥ£¥ì¥¯¥È¥ê¤Ë°ÜÆ°¤¹¤ë
137    $objUpFile->moveTempFile();
138
139    break;
140// ²èÁü¤Î¥¢¥Ã¥×¥í¡¼¥É
141case 'upload_image':
142    // ¥Õ¥¡¥¤¥ë¸ºß¥Á¥§¥Ã¥¯
143    $objPage->arrErr = array_merge((array)$objPage->arrErr, (array)$objUpFile->checkEXISTS($_POST['image_key']));
144    // ²èÁüÊݸ½èÍý
145    $objPage->arrErr[$_POST['image_key']] = $objUpFile->makeTempFile($_POST['image_key']);
146
147    // Ãæ¡¢¾®²èÁüÀ¸À®
148    lfSetScaleImage();
149
150    lfProductPage(); // ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸
151    break;
152// ²èÁü¤Îºï½ü
153case 'delete_image':
154    $objUpFile->deleteFile($_POST['image_key']);
155    lfProductPage(); // ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸
156    break;
157// ³Îǧ¥Ú¡¼¥¸¤«¤é¤ÎÌá¤ê
158case 'confirm_return':
159    // µ¬³ÊÅÐÏ¿¤¢¤ê¤Ê¤·È½Äê
160    $objPage->tpl_nonclass = lfCheckNonClass($_POST['product_id']);
161    lfProductPage();        // ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸
162    break;
163// ¤ª¤¹¤¹¤á¾¦ÉÊÁªÂò
164case 'recommend_select' :
165    lfProductPage();        // ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸
166    break;
167default:
168    // ¸ø³«¡¦Èó¸ø³«¤Î¥Ç¥Õ¥©¥ë¥ÈÃÍ
169    $objPage->arrForm['status'] = DEFAULT_PRODUCT_DISP;
170    lfProductPage();        // ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸
171    break;
172}
173
174if($_POST['mode'] != 'pre_edit') {
175    // ¤ª¤¹¤¹¤á¾¦ÉʤÎÆɤ߹þ¤ß
176    $objPage->arrRecommend = lfGetRecommendProducts();
177}
178
179// ´ðËܾðÊó¤òÅϤ¹
180$objPage->arrInfo = $objSiteInfo->data;
181
182// ¥µ¥Ö¾ðÊó¤ÎÆþÎϤ¬¤¢¤ë¤«¤É¤¦¤«¥Á¥§¥Ã¥¯¤¹¤ë
183$sub_find = false;
184for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
185    if( $objPage->arrForm['sub_title'.$cnt] != "" ||
186        $objPage->arrForm['sub_comment'.$cnt] != "" ||
187        $objPage->arrForm['sub_image'.$cnt] != "" ||
188        $objPage->arrForm['sub_large_image'.$cnt] != "" ||
189        is_array($objPage->arrFile['sub_image'.$cnt]) ||
190        is_array($objPage->arrFile['sub_large_image'.$cnt])) {
191        $sub_find = true;
192        break;
193    }
194}
195$objPage->sub_find = $sub_find;
196
197$objView->assignobj($objPage);
198$objView->display(MAIN_FRAME);
199//-----------------------------------------------------------------------------------------------------------------------------
200
201/* ¤ª¤¹¤¹¤á¾¦ÉʤÎÆɤ߹þ¤ß */
202function lfGetRecommendProducts() {
203    global $objPage;
204    $objQuery = new SC_Query();
205   
206    for($i = 1; $i <= RECOMMEND_PRODUCT_MAX; $i++) {
207        $keyname = "recommend_id" . $i;
208        $delkey = "recommend_delete" . $i;
209        $commentkey = "recommend_comment" . $i;
210
211        if($_POST[$keyname] != "" && $_POST[$delkey] != 1) {
212            $arrRet = $objQuery->select("main_list_image, product_code_min, name", "vw_products_allclass AS allcls", "product_id = ?", array($_POST[$keyname]));
213            $arrRecommend[$i] = $arrRet[0];
214            $arrRecommend[$i]['product_id'] = $_POST[$keyname];
215            $arrRecommend[$i]['comment'] = $objPage->arrForm[$commentkey];
216        }
217    }
218    return $arrRecommend;
219}
220
221/* ¤ª¤¹¤¹¤á¾¦ÉʤÎÅÐÏ¿ */
222function lfInsertRecommendProducts($objQuery, $arrList, $product_id) {
223    // °ìö¥ª¥¹¥¹¥á¾¦Éʤò¤¹¤Ù¤Æºï½ü¤¹¤ë
224    $objQuery->delete("dtb_recommend_products", "product_id = ?", array($product_id));
225    $sqlval['product_id'] = $product_id;
226    $rank = RECOMMEND_PRODUCT_MAX;
227    for($i = 1; $i <= RECOMMEND_PRODUCT_MAX; $i++) {
228        $keyname = "recommend_id" . $i;
229        $commentkey = "recommend_comment" . $i;
230        $deletekey = "recommend_delete" . $i;
231        if($arrList[$keyname] != "" && $arrList[$deletekey] != '1') {
232            $sqlval['recommend_product_id'] = $arrList[$keyname];
233            $sqlval['comment'] = $arrList[$commentkey];
234            $sqlval['rank'] = $rank;
235            $sqlval['creator_id'] = $_SESSION['member_id'];
236            $sqlval['create_date'] = "now()";
237            $sqlval['update_date'] = "now()";
238            $objQuery->insert("dtb_recommend_products", $sqlval);
239            $rank--;
240        }
241    }
242}
243
244/* ÅÐÏ¿ºÑ¤ß¤ª¤¹¤¹¤á¾¦ÉʤÎÆɤ߹þ¤ß */
245function lfPreGetRecommendProducts($product_id) {
246    $objQuery = new SC_Query();
247    $objQuery->setorder("rank DESC");
248    $arrRet = $objQuery->select("recommend_product_id, comment", "dtb_recommend_products", "product_id = ?", array($product_id));
249    $max = count($arrRet);
250    $no = 1;
251   
252    for($i = 0; $i < $max; $i++) {
253        $arrProductInfo = $objQuery->select("main_list_image, product_code_min, name", "vw_products_allclass AS allcls", "product_id = ?", array($arrRet[$i]['recommend_product_id']));
254        $arrRecommend[$no] = $arrProductInfo[0];
255        $arrRecommend[$no]['product_id'] = $arrRet[$i]['recommend_product_id'];
256        $arrRecommend[$no]['comment'] = $arrRet[$i]['comment'];
257        $no++;
258    }
259    return $arrRecommend;
260}
261
262/* ¾¦ÉʾðÊó¤ÎÆɤ߹þ¤ß */
263function lfGetProduct($product_id) {
264    $objQuery = new SC_Query();
265    $col = "*";
266    $table = "vw_products_nonclass AS noncls ";
267    $where = "product_id = ?";
268   
269    // view¤â¹Ê¹þ¤ß(mysqlÂбþ)
270    sfViewWhere("&&noncls_where&&", $where, array($product_id));
271   
272    $arrRet = $objQuery->select($col, $table, $where, array($product_id));
273       
274    return $arrRet[0];
275}
276
277/* ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸É½¼¨ÍÑ */
278function lfProductPage() {
279    global $objPage;
280    global $objUpFile;
281   
282    // ¥«¥Æ¥´¥ê¤ÎÆɹþ
283    list($objPage->arrCatVal, $objPage->arrCatOut) = sfGetLevelCatList(false);
284
285    if($objPage->arrForm['status'] == "") {
286        $objPage->arrForm['status'] = 1;
287    }
288   
289    if(!is_array($objPage->arrForm['product_flag'])) {
290        // ¾¦ÉÊ¥¹¥Æ¡¼¥¿¥¹¤Îʬ³äÆɹþ
291        $objPage->arrForm['product_flag'] = sfSplitCheckBoxes($objPage->arrForm['product_flag']);
292    }
293   
294    // HIDDENÍѤËÇÛÎó¤òÅϤ¹¡£
295    $objPage->arrHidden = array_merge((array)$objPage->arrHidden, (array)$objUpFile->getHiddenFileList());
296    // FormÍÑÇÛÎó¤òÅϤ¹¡£
297    $objPage->arrFile = $objUpFile->getFormFileList(IMAGE_TEMP_URL, IMAGE_SAVE_URL);
298   
299   
300    // ¥¢¥ó¥«¡¼¤òÀßÄê
301    if($_POST['image_key'] != ""){
302        $anchor_hash = "location.hash='#" . $_POST['image_key'] . "'";
303    }elseif($_POST['anchor_key'] != ""){
304        $anchor_hash = "location.hash='#" . $_POST['anchor_key'] . "'";
305    }
306       
307    $objPage->tpl_onload = "fnCheckSaleLimit('" . DISABLED_RGB . "'); fnCheckStockLimit('" . DISABLED_RGB . "'); " . $anchor_hash;
308}
309
310/* ¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½ */
311function lfInitFile() {
312    global $objUpFile;
313    $objUpFile->addFile("°ìÍ÷-¥á¥¤¥ó²èÁü", 'main_list_image', array('jpg', 'gif', 'png'),IMAGE_SIZE, true, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);
314    $objUpFile->addFile("¾ÜºÙ-¥á¥¤¥ó²èÁü", 'main_image', array('jpg', 'gif', 'png'), IMAGE_SIZE, true, NORMAL_IMAGE_WIDTH, NORMAL_IMAGE_HEIGHT);
315    $objUpFile->addFile("¾ÜºÙ-¥á¥¤¥ó³ÈÂç²èÁü", 'main_large_image', array('jpg', 'gif', 'png'), IMAGE_SIZE, false, LARGE_IMAGE_WIDTH, LARGE_IMAGE_HEIGHT);
316    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
317        $objUpFile->addFile("¾ÜºÙ-¥µ¥Ö²èÁü$cnt", "sub_image$cnt", array('jpg', 'gif', 'png'), IMAGE_SIZE, false, NORMAL_SUBIMAGE_WIDTH, NORMAL_SUBIMAGE_HEIGHT);   
318        $objUpFile->addFile("¾ÜºÙ-¥µ¥Ö³ÈÂç²èÁü$cnt", "sub_large_image$cnt", array('jpg', 'gif', 'png'), IMAGE_SIZE, false, LARGE_SUBIMAGE_WIDTH, LARGE_SUBIMAGE_HEIGHT);
319    }
320    $objUpFile->addFile("¾¦ÉÊÈæ³Ó²èÁü", 'file1', array('jpg', 'gif', 'png'), IMAGE_SIZE, false, OTHER_IMAGE1_WIDTH, OTHER_IMAGE1_HEIGHT);
321    $objUpFile->addFile("¾¦Éʾܺ٥ե¡¥¤¥ë", 'file2', array('pdf'), PDF_SIZE, false, 0, 0, false);
322}
323
324/* ¾¦ÉʤÎÅÐÏ¿ */
325function lfRegistProduct($arrList) {
326    global $objUpFile;
327    global $arrSTATUS;
328    $objQuery = new SC_Query();
329    $objQuery->begin();
330   
331    // INSERT¤¹¤ëÃͤòºîÀ®¤¹¤ë¡£
332    $sqlval['name'] = $arrList['name'];
333    $sqlval['category_id'] = $arrList['category_id'];
334    $sqlval['status'] = $arrList['status'];
335    $sqlval['product_flag'] = $arrList['product_flag'];
336    $sqlval['main_list_comment'] = $arrList['main_list_comment'];
337    $sqlval['main_comment'] = $arrList['main_comment'];
338    $sqlval['point_rate'] = $arrList['point_rate'];
339    $sqlval['deliv_fee'] = $arrList['deliv_fee'];
340    $sqlval['comment1'] = $arrList['comment1'];
341    $sqlval['comment2'] = $arrList['comment2'];
342    $sqlval['comment3'] = $arrList['comment3'];
343    $sqlval['comment4'] = $arrList['comment4'];
344    $sqlval['comment5'] = $arrList['comment5'];
345    $sqlval['comment6'] = $arrList['comment6'];
346    $sqlval['main_list_comment'] = $arrList['main_list_comment'];
347    $sqlval['sale_limit'] = $arrList['sale_limit'];
348    $sqlval['sale_unlimited'] = $arrList['sale_unlimited'];
349    $sqlval['deliv_date_id'] = $arrList['deliv_date_id'];
350    $sqlval['update_date'] = "Now()";
351    $sqlval['creator_id'] = $_SESSION['member_id'];
352    $arrRet = $objUpFile->getDBFileList();
353    $sqlval = array_merge($sqlval, $arrRet);
354       
355    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
356        $sqlval['sub_title'.$cnt] = $arrList['sub_title'.$cnt];
357        $sqlval['sub_comment'.$cnt] = $arrList['sub_comment'.$cnt];
358    }
359
360    if($arrList['product_id'] == "") {
361        if (DB_TYPE == "pgsql") {
362            $product_id = $objQuery->nextval("dtb_products", "product_id");
363            $sqlval['product_id'] = $product_id;
364        }
365        // ¥«¥Æ¥´¥êÆâ¤ÇºÇÂç¤Î¥é¥ó¥¯¤ò³ä¤êÅö¤Æ¤ë
366        $sqlval['rank'] = $objQuery->max("dtb_products", "rank", "category_id = ?", array($arrList['category_id'])) + 1;
367        // INSERT¤Î¼Â¹Ô
368        $sqlval['create_date'] = "Now()";
369        $objQuery->insert("dtb_products", $sqlval);
370
371        if (DB_TYPE == "mysql") {
372            $product_id = $objQuery->nextval("dtb_products", "product_id");
373            $sqlval['product_id'] = $product_id;
374        }
375       
376        // ¥³¥Ô¡¼¾¦Éʤξì¹ç¤Ë¤Ïµ¬³Ê¤â¥³¥Ô¡¼¤¹¤ë
377        if($_POST["copy_product_id"] != "" and sfIsInt($_POST["copy_product_id"])){
378            // dtb_products_class ¤Î¥«¥é¥à¤ò¼èÆÀ
379            $arrColList = sfGetColumnList("dtb_products_class", $objQuery);
380            $arrColList_tmp = array_flip($arrColList);
381
382            // ¥³¥Ô¡¼¤·¤Ê¤¤Îó
383            unset($arrColList[$arrColList_tmp["product_class_id"]]);     //µ¬³ÊID
384            unset($arrColList[$arrColList_tmp["product_id"]]);           //¾¦ÉÊID
385
386            $col = sfGetCommaList($arrColList);
387
388            $objQuery->query("INSERT INTO dtb_products_class (product_id, ". $col .") SELECT ?, " . $col. " FROM dtb_products_class WHERE product_id = ? ORDER BY product_class_id", array($product_id, $_POST["copy_product_id"]));
389           
390        }
391
392    } else {
393        $product_id = $arrList['product_id'];
394        // ºï½üÍ×µá¤Î¤¢¤Ã¤¿´û¸¥Õ¥¡¥¤¥ë¤Îºï½ü
395        $arrRet = lfGetProduct($arrList['product_id']);
396        $objUpFile->deleteDBFile($arrRet);
397       
398        // ¥«¥Æ¥´¥êÆâ¥é¥ó¥¯¤ÎÄ´À°½èÍý
399        $old_catid = $objQuery->get("dtb_products", "category_id", "product_id = ?", array($arrList['product_id']));
400        sfMoveCatRank($objQuery, "dtb_products", "product_id", "category_id", $old_catid, $arrList['category_id'], $arrList['product_id']);
401       
402        // UPDATE¤Î¼Â¹Ô
403        $where = "product_id = ?";
404        $objQuery->update("dtb_products", $sqlval, $where, array($arrList['product_id']));
405    }
406   
407    // µ¬³ÊÅÐÏ¿
408    sfInsertProductClass($objQuery, $arrList, $product_id);
409   
410    // ¤ª¤¹¤¹¤á¾¦ÉÊÅÐÏ¿
411    lfInsertRecommendProducts($objQuery, $arrList, $product_id);
412   
413    $objQuery->commit();
414    return $product_id;
415}
416
417
418/* ¼èÆÀʸ»úÎó¤ÎÊÑ´¹ */
419function lfConvertParam($array) {
420    /*
421     *  ʸ»úÎó¤ÎÊÑ´¹
422     *  K :  ¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)ÊÒ²¾Ì¾¡×¤ò¡ÖÁ´³ÑÊÒ²¾Ì¾¡×¤ËÊÑ´¹
423     *  C :  ¡ÖÁ´³Ñ¤Ò¤é²¾Ì¾¡×¤ò¡ÖÁ´³Ñ¤«¤¿²¾Ì¾¡×¤ËÊÑ´¹
424     *  V :  ÂùÅÀÉÕ¤­¤Îʸ»ú¤ò°ìʸ»ú¤ËÊÑ´¹¡£"K","H"¤È¶¦¤Ë»ÈÍѤ·¤Þ¤¹ 
425     *  n :  ¡ÖÁ´³Ñ¡×¿ô»ú¤ò¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)¡×¤ËÊÑ´¹
426     */
427    // ¿Íʪ´ðËܾðÊó
428   
429    // ¥¹¥Ý¥Ã¥È¾¦ÉÊ
430    $arrConvList['name'] = "KVa";
431    $arrConvList['main_list_comment'] = "KVa";
432    $arrConvList['main_comment'] = "KVa";
433    $arrConvList['price01'] = "n";
434    $arrConvList['price02'] = "n";
435    $arrConvList['stock'] = "n";
436    $arrConvList['sale_limit'] = "n";
437    $arrConvList['point_rate'] = "n";
438    $arrConvList['product_code'] = "KVna";
439    $arrConvList['comment1'] = "a";
440    //¥Û¥Í¥±¡¼¥­:Á÷ÎÁ¤Î»ØÄê¤Ê¤·
441    $arrConvList['deliv_fee'] = "n";
442   
443    // ¾ÜºÙ-¥µ¥Ö
444    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
445        $arrConvList["sub_title$cnt"] = "KVa";
446    }
447    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
448        $arrConvList["sub_comment$cnt"] = "KVa";
449    }
450   
451    // ¤ª¤¹¤¹¤á¾¦ÉÊ
452    for ($cnt = 1; $cnt <= RECOMMEND_PRODUCT_MAX; $cnt++) {
453        $arrConvList["recommend_comment$cnt"] = "KVa";
454    }
455
456    // ʸ»úÊÑ´¹
457    foreach ($arrConvList as $key => $val) {
458        // POST¤µ¤ì¤Æ¤­¤¿ÃͤΤßÊÑ´¹¤¹¤ë¡£
459        if(isset($array[$key])) {
460            $array[$key] = mb_convert_kana($array[$key] ,$val);
461        }
462    }
463   
464    global $arrSTATUS;
465    $array['product_flag'] = sfMergeCheckBoxes($array['product_flag'], count($arrSTATUS));
466   
467    return $array;
468}
469
470// ÆþÎÏ¥¨¥é¡¼¥Á¥§¥Ã¥¯
471function lfErrorCheck($array) {
472    global $objPage;
473    global $arrAllowedTag;
474   
475    $objErr = new SC_CheckError($array);
476    $objErr->doFunc(array("¾¦ÉÊ̾", "name", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
477    $objErr->doFunc(array("¾¦ÉÊ¥«¥Æ¥´¥ê", "category_id", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
478    $objErr->doFunc(array("°ìÍ÷-¥á¥¤¥ó¥³¥á¥ó¥È", "main_list_comment", MTEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
479    $objErr->doFunc(array("¾ÜºÙ-¥á¥¤¥ó¥³¥á¥ó¥È", "main_comment", LLTEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
480    $objErr->doFunc(array("¾ÜºÙ-¥á¥¤¥ó¥³¥á¥ó¥È", "main_comment", $arrAllowedTag), array("HTML_TAG_CHECK"));
481    $objErr->doFunc(array("¥Ý¥¤¥ó¥ÈÉÕͿΨ", "point_rate", PERCENTAGE_LEN), array("EXIST_CHECK", "NUM_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
482    $objErr->doFunc(array("¾¦ÉÊÁ÷ÎÁ", "deliv_fee", PRICE_LEN), array("NUM_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
483    $objErr->doFunc(array("¸¡º÷¥ï¡¼¥É", "comment3", LLTEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
484    $objErr->doFunc(array("¥á¡¼¥«¡¼URL", "comment1", URL_LEN), array("SPTAB_CHECK", "URL_CHECK", "MAX_LENGTH_CHECK"));
485    $objErr->doFunc(array("ȯÁ÷ÆüÌÜ°Â", "deliv_date_id", INT_LEN), array("NUM_CHECK"));
486   
487    if($objPage->tpl_nonclass) {
488        $objErr->doFunc(array("¾¦ÉÊ¥³¡¼¥É", "product_code", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK","MAX_LENGTH_CHECK","MAX_LENGTH_CHECK"));
489        $objErr->doFunc(array("Ä̾ï²Á³Ê", "price01", PRICE_LEN), array("ZERO_CHECK", "SPTAB_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK"));
490        $objErr->doFunc(array("¾¦ÉʲÁ³Ê", "price02", PRICE_LEN), array("EXIST_CHECK", "NUM_CHECK", "ZERO_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
491           
492        if($array['stock_unlimited'] != "1") {
493            $objErr->doFunc(array("ºß¸Ë¿ô", "stock", AMOUNT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK"));
494        }
495    }
496   
497    if($array['sale_unlimited'] != "1") {   
498        $objErr->doFunc(array("¹ØÆþÀ©¸Â", "sale_limit", AMOUNT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "ZERO_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK"));
499    }
500   
501    if(isset($objErr->arrErr['category_id'])) {
502        // ¼«Æ°ÁªÂò¤òËɤ°¤¿¤á¤Ë¥À¥ß¡¼Ê¸»ú¤òÆþ¤ì¤Æ¤ª¤¯
503        $objPage->arrForm['category_id'] = "#";
504    }
505   
506    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
507        $objErr->doFunc(array("¾ÜºÙ-¥µ¥Ö¥¿¥¤¥È¥ë$cnt", "sub_title$cnt", STEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
508        $objErr->doFunc(array("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È$cnt", "sub_comment$cnt", LLTEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
509        $objErr->doFunc(array("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È$cnt", "sub_comment$cnt", $arrAllowedTag),  array("HTML_TAG_CHECK"));   
510    }
511   
512    for ($cnt = 1; $cnt <= RECOMMEND_PRODUCT_MAX; $cnt++) {
513        if($_POST["recommend_id$cnt"] != "" && $_POST["recommend_delete$cnt"] != 1) {
514            $objErr->doFunc(array("¤ª¤¹¤¹¤á¾¦ÉÊ¥³¥á¥ó¥È$cnt", "recommend_comment$cnt", LTEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
515        }
516    }
517   
518    return $objErr->arrErr;
519}
520
521/* ³Îǧ¥Ú¡¼¥¸É½¼¨ÍÑ */
522function lfProductConfirmPage() {
523    global $objPage;
524    global $objUpFile;
525    $objPage->tpl_mainpage = 'products/confirm.tpl';
526    $objPage->arrForm['mode'] = 'complete';
527    // ¥«¥Æ¥´¥ê¤ÎÆɹþ
528    $objPage->arrCatList = sfGetCategoryList();
529    // FormÍÑÇÛÎó¤òÅϤ¹¡£
530    $objPage->arrFile = $objUpFile->getFormFileList(IMAGE_TEMP_URL, IMAGE_SAVE_URL);
531}
532
533/* µ¬³Ê¤¢¤êȽÄêÍÑ(µ¬³Ê¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç:TRUE) */
534function lfCheckNonClass($product_id) {
535    if(sfIsInt($product_id)) {
536        $objQuery  = new SC_Query();
537        $where = "product_id = ? AND classcategory_id1 <> 0 AND classcategory_id1 <> 0";
538        $count = $objQuery->count("dtb_products_class", $where, array($product_id));
539        if($count > 0) {
540            return false;
541        }
542    }
543    return true;
544}
545
546// ½Ì¾®¤·¤¿²èÁü¤ò¥»¥Ã¥È¤¹¤ë
547function lfSetScaleImage(){
548   
549    $subno = str_replace("sub_large_image", "", $_POST['image_key']);
550    switch ($_POST['image_key']){
551        case "main_large_image":
552            // ¾ÜºÙ¥á¥¤¥ó²èÁü
553            lfMakeScaleImage($_POST['image_key'], "main_image");
554        case "main_image":
555            // °ìÍ÷¥á¥¤¥ó²èÁü
556            lfMakeScaleImage($_POST['image_key'], "main_list_image");
557            break;
558        case "sub_large_image" . $subno:
559            // ¥µ¥Ö¥á¥¤¥ó²èÁü
560            lfMakeScaleImage($_POST['image_key'], "sub_image" . $subno);
561            break;
562        default:
563            break;
564    }
565}
566
567// ½Ì¾®²èÁüÀ¸À®
568function lfMakeScaleImage($from_key, $to_key, $forced = false){
569    global $objUpFile;
570    $arrImageKey = array_flip($objUpFile->keyname);
571   
572    if($objUpFile->temp_file[$arrImageKey[$from_key]]){
573        $from_path = $objUpFile->temp_dir . $objUpFile->temp_file[$arrImageKey[$from_key]];
574    }elseif($objUpFile->save_file[$arrImageKey[$from_key]]){
575        $from_path = $objUpFile->save_dir . $objUpFile->save_file[$arrImageKey[$from_key]];
576    }else{
577        return "";
578    }
579   
580    if(file_exists($from_path)){
581        // ¸µ²èÁü¥µ¥¤¥º¤ò¼èÆÀ
582        list($from_w, $from_h) = getimagesize($from_path);
583       
584        // À¸À®Àè¤Î²èÁü¥µ¥¤¥º¤ò¼èÆÀ
585        $to_w = $objUpFile->width[$arrImageKey[$to_key]];
586        $to_h = $objUpFile->height[$arrImageKey[$to_key]];
587       
588       
589        if($forced) $objUpFile->save_file[$arrImageKey[$to_key]] = "";
590       
591        if(($objUpFile->temp_file[$arrImageKey[$to_key]] == "" and $objUpFile->save_file[$arrImageKey[$to_key]] == "")){
592            $path = $objUpFile->makeThumb($from_path, $to_w, $to_h);
593            $objUpFile->temp_file[$arrImageKey[$to_key]] = basename($path);
594        }
595    }else{
596        return "";
597    }
598}
599
600?>
Note: See TracBrowser for help on using the repository browser.