source: branches/comu/html/admin/products/product.php @ 11730

Revision 11730, 19.5 KB checked in by nanasess, 17 years ago (diff)

r11729 の変更を取消

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$objView->assignobj($objPage);
183$objView->display(MAIN_FRAME);
184//-----------------------------------------------------------------------------------------------------------------------------
185
186/* ¤ª¤¹¤¹¤á¾¦ÉʤÎÆɤ߹þ¤ß */
187function lfGetRecommendProducts() {
188    global $objPage;
189    $objQuery = new SC_Query();
190   
191    for($i = 1; $i <= RECOMMEND_PRODUCT_MAX; $i++) {
192        $keyname = "recommend_id" . $i;
193        $delkey = "recommend_delete" . $i;
194        $commentkey = "recommend_comment" . $i;
195
196        if($_POST[$keyname] != "" && $_POST[$delkey] != 1) {
197            $arrRet = $objQuery->select("main_list_image, product_code_min, name", "vw_products_allclass AS allcls", "product_id = ?", array($_POST[$keyname]));
198            $arrRecommend[$i] = $arrRet[0];
199            $arrRecommend[$i]['product_id'] = $_POST[$keyname];
200            $arrRecommend[$i]['comment'] = $objPage->arrForm[$commentkey];
201        }
202    }
203    return $arrRecommend;
204}
205
206/* ¤ª¤¹¤¹¤á¾¦ÉʤÎÅÐÏ¿ */
207function lfInsertRecommendProducts($objQuery, $arrList, $product_id) {
208    // °ìö¥ª¥¹¥¹¥á¾¦Éʤò¤¹¤Ù¤Æºï½ü¤¹¤ë
209    $objQuery->delete("dtb_recommend_products", "product_id = ?", array($product_id));
210    $sqlval['product_id'] = $product_id;
211    $rank = RECOMMEND_PRODUCT_MAX;
212    for($i = 1; $i <= RECOMMEND_PRODUCT_MAX; $i++) {
213        $keyname = "recommend_id" . $i;
214        $commentkey = "recommend_comment" . $i;
215        $deletekey = "recommend_delete" . $i;
216        if($arrList[$keyname] != "" && $arrList[$deletekey] != '1') {
217            $sqlval['recommend_product_id'] = $arrList[$keyname];
218            $sqlval['comment'] = $arrList[$commentkey];
219            $sqlval['rank'] = $rank;
220            $sqlval['creator_id'] = $_SESSION['member_id'];
221            $sqlval['create_date'] = "now()";
222            $sqlval['update_date'] = "now()";
223            $objQuery->insert("dtb_recommend_products", $sqlval);
224            $rank--;
225        }
226    }
227}
228
229/* ÅÐÏ¿ºÑ¤ß¤ª¤¹¤¹¤á¾¦ÉʤÎÆɤ߹þ¤ß */
230function lfPreGetRecommendProducts($product_id) {
231    $objQuery = new SC_Query();
232    $objQuery->setorder("rank DESC");
233    $arrRet = $objQuery->select("recommend_product_id, comment", "dtb_recommend_products", "product_id = ?", array($product_id));
234    $max = count($arrRet);
235    $no = 1;
236   
237    for($i = 0; $i < $max; $i++) {
238        $arrProductInfo = $objQuery->select("main_list_image, product_code_min, name", "vw_products_allclass AS allcls", "product_id = ?", array($arrRet[$i]['recommend_product_id']));
239        $arrRecommend[$no] = $arrProductInfo[0];
240        $arrRecommend[$no]['product_id'] = $arrRet[$i]['recommend_product_id'];
241        $arrRecommend[$no]['comment'] = $arrRet[$i]['comment'];
242        $no++;
243    }
244    return $arrRecommend;
245}
246
247/* ¾¦ÉʾðÊó¤ÎÆɤ߹þ¤ß */
248function lfGetProduct($product_id) {
249    $objQuery = new SC_Query();
250    $col = "*";
251    $table = "vw_products_nonclass AS noncls ";
252    $where = "product_id = ?";
253   
254    // view¤â¹Ê¹þ¤ß(mysqlÂбþ)
255    sfViewWhere("&&noncls_where&&", $where, array($product_id));
256   
257    $arrRet = $objQuery->select($col, $table, $where, array($product_id));
258       
259    return $arrRet[0];
260}
261
262/* ¾¦ÉÊÅÐÏ¿¥Ú¡¼¥¸É½¼¨ÍÑ */
263function lfProductPage() {
264    global $objPage;
265    global $objUpFile;
266   
267    // ¥«¥Æ¥´¥ê¤ÎÆɹþ
268    list($objPage->arrCatVal, $objPage->arrCatOut) = sfGetLevelCatList(false);
269
270    if($objPage->arrForm['status'] == "") {
271        $objPage->arrForm['status'] = 1;
272    }
273   
274    if(!is_array($objPage->arrForm['product_flag'])) {
275        // ¾¦ÉÊ¥¹¥Æ¡¼¥¿¥¹¤Îʬ³äÆɹþ
276        $objPage->arrForm['product_flag'] = sfSplitCheckBoxes($objPage->arrForm['product_flag']);
277    }
278   
279    // HIDDENÍѤËÇÛÎó¤òÅϤ¹¡£
280    $objPage->arrHidden = array_merge((array)$objPage->arrHidden, (array)$objUpFile->getHiddenFileList());
281    // FormÍÑÇÛÎó¤òÅϤ¹¡£
282    $objPage->arrFile = $objUpFile->getFormFileList(IMAGE_TEMP_URL, IMAGE_SAVE_URL);
283   
284   
285    // ¥¢¥ó¥«¡¼¤òÀßÄê
286    if($_POST['image_key'] != ""){
287        $anchor_hash = "location.hash='#" . $_POST['image_key'] . "'";
288    }elseif($_POST['anchor_key'] != ""){
289        $anchor_hash = "location.hash='#" . $_POST['anchor_key'] . "'";
290    }
291       
292    $objPage->tpl_onload = "fnCheckSaleLimit('" . DISABLED_RGB . "'); fnCheckStockLimit('" . DISABLED_RGB . "'); " . $anchor_hash;
293}
294
295/* ¥Õ¥¡¥¤¥ë¾ðÊó¤Î½é´ü²½ */
296function lfInitFile() {
297    global $objUpFile;
298    $objUpFile->addFile("°ìÍ÷-¥á¥¤¥ó²èÁü", 'main_list_image', array('jpg', 'gif', 'png'),IMAGE_SIZE, true, SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT);
299    $objUpFile->addFile("¾ÜºÙ-¥á¥¤¥ó²èÁü", 'main_image', array('jpg', 'gif', 'png'), IMAGE_SIZE, true, NORMAL_IMAGE_WIDTH, NORMAL_IMAGE_HEIGHT);
300    $objUpFile->addFile("¾ÜºÙ-¥á¥¤¥ó³ÈÂç²èÁü", 'main_large_image', array('jpg', 'gif', 'png'), IMAGE_SIZE, false, LARGE_IMAGE_WIDTH, LARGE_IMAGE_HEIGHT);
301    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
302        $objUpFile->addFile("¾ÜºÙ-¥µ¥Ö²èÁü$cnt", "sub_image$cnt", array('jpg', 'gif', 'png'), IMAGE_SIZE, false, NORMAL_SUBIMAGE_WIDTH, NORMAL_SUBIMAGE_HEIGHT);   
303        $objUpFile->addFile("¾ÜºÙ-¥µ¥Ö³ÈÂç²èÁü$cnt", "sub_large_image$cnt", array('jpg', 'gif', 'png'), IMAGE_SIZE, false, LARGE_SUBIMAGE_WIDTH, LARGE_SUBIMAGE_HEIGHT);
304    }
305    $objUpFile->addFile("¾¦ÉÊÈæ³Ó²èÁü", 'file1', array('jpg', 'gif', 'png'), IMAGE_SIZE, false, OTHER_IMAGE1_WIDTH, OTHER_IMAGE1_HEIGHT);
306    $objUpFile->addFile("¾¦Éʾܺ٥ե¡¥¤¥ë", 'file2', array('pdf'), PDF_SIZE, false, 0, 0, false);
307}
308
309/* ¾¦ÉʤÎÅÐÏ¿ */
310function lfRegistProduct($arrList) {
311    global $objUpFile;
312    global $arrSTATUS;
313    $objQuery = new SC_Query();
314    $objQuery->begin();
315   
316    // INSERT¤¹¤ëÃͤòºîÀ®¤¹¤ë¡£
317    $sqlval['name'] = $arrList['name'];
318    $sqlval['category_id'] = $arrList['category_id'];
319    $sqlval['status'] = $arrList['status'];
320    $sqlval['product_flag'] = $arrList['product_flag'];
321    $sqlval['main_list_comment'] = $arrList['main_list_comment'];
322    $sqlval['main_comment'] = $arrList['main_comment'];
323    $sqlval['point_rate'] = $arrList['point_rate'];
324   
325    $sqlval['deliv_fee'] = $arrList['deliv_fee'];
326    $sqlval['comment1'] = $arrList['comment1'];
327    $sqlval['comment2'] = $arrList['comment2'];
328    $sqlval['comment3'] = $arrList['comment3'];
329    $sqlval['comment4'] = $arrList['comment4'];
330    $sqlval['comment5'] = $arrList['comment5'];
331    $sqlval['comment6'] = $arrList['comment6'];
332    $sqlval['main_list_comment'] = $arrList['main_list_comment'];
333    $sqlval['sale_limit'] = $arrList['sale_limit'];
334    $sqlval['sale_unlimited'] = $arrList['sale_unlimited'];
335    $sqlval['deliv_date_id'] = $arrList['deliv_date_id'];
336    $sqlval['update_date'] = "Now()";
337    $sqlval['creator_id'] = $_SESSION['member_id'];
338    $arrRet = $objUpFile->getDBFileList();
339    $sqlval = array_merge($sqlval, $arrRet);
340       
341    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
342        $sqlval['sub_title'.$cnt] = $arrList['sub_title'.$cnt];
343        $sqlval['sub_comment'.$cnt] = $arrList['sub_comment'.$cnt];
344    }
345
346    if($arrList['product_id'] == "") {
347        if (DB_TYPE == "pgsql") {
348            $product_id = $objQuery->nextval("dtb_products", "product_id");
349            $sqlval['product_id'] = $product_id;
350        }
351        // ¥«¥Æ¥´¥êÆâ¤ÇºÇÂç¤Î¥é¥ó¥¯¤ò³ä¤êÅö¤Æ¤ë
352        $sqlval['rank'] = $objQuery->max("dtb_products", "rank", "category_id = ?", array($arrList['category_id'])) + 1;
353        // INSERT¤Î¼Â¹Ô
354        $sqlval['create_date'] = "Now()";
355        $objQuery->insert("dtb_products", $sqlval);
356
357        if (DB_TYPE == "mysql") {
358            $product_id = $objQuery->nextval("dtb_products", "product_id");
359            $sqlval['product_id'] = $product_id;
360        }
361       
362        // ¥³¥Ô¡¼¾¦Éʤξì¹ç¤Ë¤Ïµ¬³Ê¤â¥³¥Ô¡¼¤¹¤ë
363        if($_POST["copy_product_id"] != "" and sfIsInt($_POST["copy_product_id"])){
364            // dtb_products_class ¤Î¥«¥é¥à¤ò¼èÆÀ
365            $arrColList = sfGetColumnList("dtb_products_class", $objQuery);
366            $arrColList_tmp = array_flip($arrColList);
367
368            // ¥³¥Ô¡¼¤·¤Ê¤¤Îó
369            unset($arrColList[$arrColList_tmp["product_class_id"]]);     //µ¬³ÊID
370            unset($arrColList[$arrColList_tmp["product_id"]]);           //¾¦ÉÊID
371
372            $col = sfGetCommaList($arrColList);
373
374            $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"]));
375           
376        }
377
378    } else {
379        $product_id = $arrList['product_id'];
380        // ºï½üÍ×µá¤Î¤¢¤Ã¤¿´û¸¥Õ¥¡¥¤¥ë¤Îºï½ü
381        $arrRet = lfGetProduct($arrList['product_id']);
382        $objUpFile->deleteDBFile($arrRet);
383       
384        // ¥«¥Æ¥´¥êÆâ¥é¥ó¥¯¤ÎÄ´À°½èÍý
385        $old_catid = $objQuery->get("dtb_products", "category_id", "product_id = ?", array($arrList['product_id']));
386        sfMoveCatRank($objQuery, "dtb_products", "product_id", "category_id", $old_catid, $arrList['category_id'], $arrList['product_id']);
387       
388        // UPDATE¤Î¼Â¹Ô
389        $where = "product_id = ?";
390        $objQuery->update("dtb_products", $sqlval, $where, array($arrList['product_id']));
391    }
392   
393    // µ¬³ÊÅÐÏ¿
394    sfInsertProductClass($objQuery, $arrList, $product_id);
395   
396    // ¤ª¤¹¤¹¤á¾¦ÉÊÅÐÏ¿
397    lfInsertRecommendProducts($objQuery, $arrList, $product_id);
398   
399    $objQuery->commit();
400    return $product_id;
401}
402
403
404/* ¼èÆÀʸ»úÎó¤ÎÊÑ´¹ */
405function lfConvertParam($array) {
406    /*
407     *  ʸ»úÎó¤ÎÊÑ´¹
408     *  K :  ¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)ÊÒ²¾Ì¾¡×¤ò¡ÖÁ´³ÑÊÒ²¾Ì¾¡×¤ËÊÑ´¹
409     *  C :  ¡ÖÁ´³Ñ¤Ò¤é²¾Ì¾¡×¤ò¡ÖÁ´³Ñ¤«¤¿²¾Ì¾¡×¤ËÊÑ´¹
410     *  V :  ÂùÅÀÉÕ¤­¤Îʸ»ú¤ò°ìʸ»ú¤ËÊÑ´¹¡£"K","H"¤È¶¦¤Ë»ÈÍѤ·¤Þ¤¹ 
411     *  n :  ¡ÖÁ´³Ñ¡×¿ô»ú¤ò¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)¡×¤ËÊÑ´¹
412     */
413    // ¿Íʪ´ðËܾðÊó
414   
415    // ¥¹¥Ý¥Ã¥È¾¦ÉÊ
416    $arrConvList['name'] = "KVa";
417    $arrConvList['main_list_comment'] = "KVa";
418    $arrConvList['main_comment'] = "KVa";
419    $arrConvList['price01'] = "n";
420    $arrConvList['price02'] = "n";
421    $arrConvList['stock'] = "n";
422    $arrConvList['sale_limit'] = "n";
423    $arrConvList['point_rate'] = "n";
424    $arrConvList['product_code'] = "KVna";
425    $arrConvList['comment1'] = "a";
426    //¥Û¥Í¥±¡¼¥­:Á÷ÎÁ¤Î»ØÄê¤Ê¤·
427    $arrConvList['deliv_fee'] = "n";
428   
429    // ¾ÜºÙ-¥µ¥Ö
430    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
431        $arrConvList["sub_title$cnt"] = "KVa";
432    }
433    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
434        $arrConvList["sub_comment$cnt"] = "KVa";
435    }
436   
437    // ¤ª¤¹¤¹¤á¾¦ÉÊ
438    for ($cnt = 1; $cnt <= RECOMMEND_PRODUCT_MAX; $cnt++) {
439        $arrConvList["recommend_comment$cnt"] = "KVa";
440    }
441
442    // ʸ»úÊÑ´¹
443    foreach ($arrConvList as $key => $val) {
444        // POST¤µ¤ì¤Æ¤­¤¿ÃͤΤßÊÑ´¹¤¹¤ë¡£
445        if(isset($array[$key])) {
446            $array[$key] = mb_convert_kana($array[$key] ,$val);
447        }
448    }
449   
450    global $arrSTATUS;
451    $array['product_flag'] = sfMergeCheckBoxes($array['product_flag'], count($arrSTATUS));
452   
453    return $array;
454}
455
456// ÆþÎÏ¥¨¥é¡¼¥Á¥§¥Ã¥¯
457function lfErrorCheck($array) {
458    global $objPage;
459    global $arrAllowedTag;
460   
461    $objErr = new SC_CheckError($array);
462    $objErr->doFunc(array("¾¦ÉÊ̾", "name", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
463    $objErr->doFunc(array("¾¦ÉÊ¥«¥Æ¥´¥ê", "category_id", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
464    $objErr->doFunc(array("°ìÍ÷-¥á¥¤¥ó¥³¥á¥ó¥È", "main_list_comment", MTEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
465    $objErr->doFunc(array("¾ÜºÙ-¥á¥¤¥ó¥³¥á¥ó¥È", "main_comment", LLTEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
466    $objErr->doFunc(array("¾ÜºÙ-¥á¥¤¥ó¥³¥á¥ó¥È", "main_comment", $arrAllowedTag), array("HTML_TAG_CHECK"));
467    $objErr->doFunc(array("¥Ý¥¤¥ó¥ÈÉÕͿΨ", "point_rate", PERCENTAGE_LEN), array("EXIST_CHECK", "NUM_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
468    $objErr->doFunc(array("¾¦ÉÊÁ÷ÎÁ", "deliv_fee", PRICE_LEN), array("NUM_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
469    $objErr->doFunc(array("¸¡º÷¥ï¡¼¥É", "comment3", LLTEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
470    $objErr->doFunc(array("¥á¡¼¥«¡¼URL", "comment1", URL_LEN), array("SPTAB_CHECK", "URL_CHECK", "MAX_LENGTH_CHECK"));
471    $objErr->doFunc(array("ȯÁ÷ÆüÌÜ°Â", "deliv_date_id", INT_LEN), array("NUM_CHECK"));
472   
473    if($objPage->tpl_nonclass) {
474        $objErr->doFunc(array("¾¦ÉÊ¥³¡¼¥É", "product_code", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK","MAX_LENGTH_CHECK","MAX_LENGTH_CHECK"));
475        $objErr->doFunc(array("Ä̾ï²Á³Ê", "price01", PRICE_LEN), array("ZERO_CHECK", "SPTAB_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK"));
476        $objErr->doFunc(array("¾¦ÉʲÁ³Ê", "price02", PRICE_LEN), array("EXIST_CHECK", "NUM_CHECK", "ZERO_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
477           
478        if($array['stock_unlimited'] != "1") {
479            $objErr->doFunc(array("ºß¸Ë¿ô", "stock", AMOUNT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK"));
480        }
481    }
482   
483    if($array['sale_unlimited'] != "1") {   
484        $objErr->doFunc(array("¹ØÆþÀ©¸Â", "sale_limit", AMOUNT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "ZERO_CHECK", "NUM_CHECK", "MAX_LENGTH_CHECK"));
485    }
486   
487    if(isset($objErr->arrErr['category_id'])) {
488        // ¼«Æ°ÁªÂò¤òËɤ°¤¿¤á¤Ë¥À¥ß¡¼Ê¸»ú¤òÆþ¤ì¤Æ¤ª¤¯
489        $objPage->arrForm['category_id'] = "#";
490    }
491   
492    for ($cnt = 1; $cnt <= PRODUCTSUB_MAX; $cnt++) {
493        $objErr->doFunc(array("¾ÜºÙ-¥µ¥Ö¥¿¥¤¥È¥ë$cnt", "sub_title$cnt", STEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
494        $objErr->doFunc(array("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È$cnt", "sub_comment$cnt", LLTEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
495        $objErr->doFunc(array("¾ÜºÙ-¥µ¥Ö¥³¥á¥ó¥È$cnt", "sub_comment$cnt", $arrAllowedTag),  array("HTML_TAG_CHECK"));   
496    }
497   
498    for ($cnt = 1; $cnt <= RECOMMEND_PRODUCT_MAX; $cnt++) {
499        if($_POST["recommend_id$cnt"] != "" && $_POST["recommend_delete$cnt"] != 1) {
500            $objErr->doFunc(array("¤ª¤¹¤¹¤á¾¦ÉÊ¥³¥á¥ó¥È$cnt", "recommend_comment$cnt", LTEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
501        }
502    }
503   
504    return $objErr->arrErr;
505}
506
507/* ³Îǧ¥Ú¡¼¥¸É½¼¨ÍÑ */
508function lfProductConfirmPage() {
509    global $objPage;
510    global $objUpFile;
511    $objPage->tpl_mainpage = 'products/confirm.tpl';
512    $objPage->arrForm['mode'] = 'complete';
513    // ¥«¥Æ¥´¥ê¤ÎÆɹþ
514    $objPage->arrCatList = sfGetCategoryList();
515    // FormÍÑÇÛÎó¤òÅϤ¹¡£
516    $objPage->arrFile = $objUpFile->getFormFileList(IMAGE_TEMP_URL, IMAGE_SAVE_URL);
517}
518
519/* µ¬³Ê¤¢¤êȽÄêÍÑ(µ¬³Ê¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç:TRUE) */
520function lfCheckNonClass($product_id) {
521    if(sfIsInt($product_id)) {
522        $objQuery  = new SC_Query();
523        $where = "product_id = ? AND classcategory_id1 <> 0 AND classcategory_id1 <> 0";
524        $count = $objQuery->count("dtb_products_class", $where, array($product_id));
525        if($count > 0) {
526            return false;
527        }
528    }
529    return true;
530}
531
532// ½Ì¾®¤·¤¿²èÁü¤ò¥»¥Ã¥È¤¹¤ë
533function lfSetScaleImage(){
534   
535    $subno = str_replace("sub_large_image", "", $_POST['image_key']);
536    switch ($_POST['image_key']){
537        case "main_large_image":
538            // ¾ÜºÙ¥á¥¤¥ó²èÁü
539            lfMakeScaleImage($_POST['image_key'], "main_image");
540        case "main_image":
541            // °ìÍ÷¥á¥¤¥ó²èÁü
542            lfMakeScaleImage($_POST['image_key'], "main_list_image");
543            break;
544        case "sub_large_image" . $subno:
545            // ¥µ¥Ö¥á¥¤¥ó²èÁü
546            lfMakeScaleImage($_POST['image_key'], "sub_image" . $subno);
547            break;
548        default:
549            break;
550    }
551}
552
553// ½Ì¾®²èÁüÀ¸À®
554function lfMakeScaleImage($from_key, $to_key, $forced = false){
555    global $objUpFile;
556    $arrImageKey = array_flip($objUpFile->keyname);
557   
558    if($objUpFile->temp_file[$arrImageKey[$from_key]]){
559        $from_path = $objUpFile->temp_dir . $objUpFile->temp_file[$arrImageKey[$from_key]];
560    }elseif($objUpFile->save_file[$arrImageKey[$from_key]]){
561        $from_path = $objUpFile->save_dir . $objUpFile->save_file[$arrImageKey[$from_key]];
562    }else{
563        return "";
564    }
565   
566    if(file_exists($from_path)){
567        // ¸µ²èÁü¥µ¥¤¥º¤ò¼èÆÀ
568        list($from_w, $from_h) = getimagesize($from_path);
569       
570        // À¸À®Àè¤Î²èÁü¥µ¥¤¥º¤ò¼èÆÀ
571        $to_w = $objUpFile->width[$arrImageKey[$to_key]];
572        $to_h = $objUpFile->height[$arrImageKey[$to_key]];
573       
574       
575        if($forced) $objUpFile->save_file[$arrImageKey[$to_key]] = "";
576       
577        if(($objUpFile->temp_file[$arrImageKey[$to_key]] == "" and $objUpFile->save_file[$arrImageKey[$to_key]] == "")){
578            $path = $objUpFile->makeThumb($from_path, $to_w, $to_h);
579            $objUpFile->temp_file[$arrImageKey[$to_key]] = basename($path);
580        }
581    }else{
582        return "";
583    }
584}
585
586?>
Note: See TracBrowser for help on using the repository browser.