source: branches/rel/html/admin/products/review_edit.php @ 12157

Revision 12157, 5.1 KB checked in by uehara, 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 $arrSession;
11    function LC_Page() {
12        $this->tpl_mainpage = 'products/review_edit.tpl';
13        $this->tpl_subnavi = 'products/subnavi.tpl';
14        $this->tpl_mainno = 'products';     
15        $this->tpl_subno = 'review';
16        global $arrRECOMMEND;
17        $this->arrRECOMMEND = $arrRECOMMEND;
18        $this->tpl_subtitle = '¥ì¥Ó¥å¡¼´ÉÍý';
19        global $arrSex;
20        $this->arrSex = $arrSex;
21    }
22}
23
24$objPage = new LC_Page();
25$objView = new SC_AdminView();
26$objSess = new SC_Session();
27$objQuery = new SC_Query();
28// ǧ¾Ú²ÄÈݤÎȽÄê
29sfIsSuccess($objSess);
30
31//¸¡º÷¥ï¡¼¥É¤Î°ú·Ñ¤®
32foreach ($_POST as $key => $val){
33    if (ereg("^search_", $key)){
34    $objPage->arrSearchHidden[$key] = $val;
35    }
36}
37
38//¼èÆÀʸ»úÎó¤ÎÊÑ´¹ÍÑ¥«¥é¥à
39$arrRegistColumn = array (     
40                                array( "column" => "update_date"),
41                                array( "column" => "status"),
42                                array( "column" => "recommend_level"),     
43                                array(  "column" => "title","convert" => "KVa"),
44                                array(  "column" => "comment","convert" => "KVa"),
45                                array(  "column" => "reviewer_name","convert" => "KVa"),
46                                array(  "column" => "reviewer_url","convert" => "KVa"),
47                                array(  "column" => "sex","convert" => "n")
48                               
49                            );
50
51//¥ì¥Ó¥å¡¼ID¤òÅϤ¹
52$objPage->tpl_review_id = $_POST['review_id'];
53//¥ì¥Ó¥å¡¼¾ðÊó¤Î¥«¥é¥à¤Î¼èÆÀ
54$objPage->arrReview = lfGetReviewData($_POST['review_id']);
55//ÅÐÏ¿ºÑ¤ß¤Î¥¹¥Æ¡¼¥¿¥¹¤òÅϤ¹
56$objPage->tpl_pre_status = $objPage->arrReview['status'];
57//¾¦Éʤ´¤È¤Î¥ì¥Ó¥å¡¼É½¼¨¿ô¼èÆÀ
58$count = $objQuery->count("dtb_review", "del_flg=0 AND status=1 AND product_id=?", array($objPage->arrReview['product_id']));
59//ξÊýÁªÂò²Äǽ
60$objPage->tpl_status_change = true;
61
62switch($_POST['mode']) {
63//ÅÐÏ¿
64case 'complete':
65    //¥Õ¥©¡¼¥àÃͤÎÊÑ´¹
66    $arrReview = lfConvertParam($_POST, $arrRegistColumn);
67    $objPage->arrErr = lfCheckError($arrReview);
68    //¥¨¥é¡¼Ìµ¤·
69    if (!$objPage->arrErr){
70        //¥ì¥Ó¥å¡¼¾ðÊó¤ÎÊÔ½¸ÅÐÏ¿
71        lfRegistReviewData($arrReview, $arrRegistColumn);
72        $objPage->arrReview = $arrReview;
73        $objPage->tpl_onload = "confirm('ÅÐÏ¿¤¬´°Î»¤·¤Þ¤·¤¿¡£');";
74    }
75    break;
76default:
77    break;
78}
79
80$objView->assignobj($objPage);
81$objView->display(MAIN_FRAME);
82
83//------------------------------------------------------------------------------------------------------------------------------------
84
85// ÆþÎÏ¥¨¥é¡¼¥Á¥§¥Ã¥¯
86function lfCheckError($array) {
87    $objErr = new SC_CheckError($array);
88    $objErr->doFunc(array("¤ª¤¹¤¹¤á¥ì¥Ù¥ë", "recommend_level"), array("SELECT_CHECK"));
89    $objErr->doFunc(array("¥¿¥¤¥È¥ë", "title", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
90    $objErr->doFunc(array("¥³¥á¥ó¥È", "comment", LTEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
91    $objErr->doFunc(array("Åê¹Æ¼Ô̾", "reviewer_name", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
92    $objErr->doFunc(array("¥Û¡¼¥à¥Ú¡¼¥¸¥¢¥É¥ì¥¹", "reviewer_url", URL_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
93    $objErr->doFunc(array("¥¿¥¤¥È¥ë", "title", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
94    $objErr->doFunc(array("À­ÊÌ", "sex", STEXT_LEN), array("SPTAB_CHECK", "MAX_LENGTH_CHECK"));
95    return $objErr->arrErr;
96}
97
98//----¡¡¼èÆÀʸ»úÎó¤ÎÊÑ´¹
99function lfConvertParam($array, $arrRegistColumn) {
100    /*
101     *  ʸ»úÎó¤ÎÊÑ´¹
102     *  K :  ¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)ÊÒ²¾Ì¾¡×¤ò¡ÖÁ´³ÑÊÒ²¾Ì¾¡×¤ËÊÑ´¹
103     *  C :  ¡ÖÁ´³Ñ¤Ò¤é²¾Ì¾¡×¤ò¡ÖÁ´³Ñ¤«¤¿²¾Ì¾¡×¤ËÊÑ´¹
104     *  V :  ÂùÅÀÉÕ¤­¤Îʸ»ú¤ò°ìʸ»ú¤ËÊÑ´¹¡£"K","H"¤È¶¦¤Ë»ÈÍѤ·¤Þ¤¹ 
105     *  n :  ¡ÖÁ´³Ñ¡×¿ô»ú¤ò¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)¡×¤ËÊÑ´¹
106     *  a :  Á´³Ñ±Ñ¿ô»ú¤òȾ³Ñ±Ñ¿ô»ú¤ËÊÑ´¹¤¹¤ë
107     */
108    // ¥«¥é¥à̾¤È¥³¥ó¥Ð¡¼¥È¾ðÊó
109    foreach ($arrRegistColumn as $data) {
110        $arrConvList[ $data["column"] ] = $data["convert"];
111    }
112   
113    // ʸ»úÊÑ´¹
114    foreach ($arrConvList as $key => $val) {
115        // POST¤µ¤ì¤Æ¤­¤¿ÃͤΤßÊÑ´¹¤¹¤ë¡£
116        if(strlen(($array[$key])) > 0) {
117            $array[$key] = mb_convert_kana($array[$key] ,$val);
118        }
119    }
120    return $array;
121}
122
123//¥ì¥Ó¥å¡¼¾ðÊó¤Î¼èÆÀ
124function lfGetReviewData($review_id){
125    global $objPage;
126    global $objQuery;
127    $select="review_id, A.product_id, reviewer_name, sex, recommend_level, ";
128    $select.="reviewer_url, title, comment, A.status, A.create_date, A.update_date, name";
129    $from = "dtb_review AS A LEFT JOIN dtb_products AS B ON A.product_id = B.product_id ";
130    $where = "A.del_flg = 0 AND B.del_flg = 0 AND review_id = ? ";
131    $arrReview = $objQuery->select($select, $from, $where, array($review_id));
132    if(!empty($arrReview)) {
133        $objPage->arrReview = $arrReview[0];
134    } else {
135        sfDispError("");
136    }
137    return $objPage->arrReview;
138}
139
140//¥ì¥Ó¥å¡¼¾ðÊó¤ÎÊÔ½¸ÅÐÏ¿
141function lfRegistReviewData($array, $arrRegistColumn){
142    global $objQuery;
143    foreach ($arrRegistColumn as $data) {
144        if (strlen($array[ $data["column"] ]) > 0 ) {
145            $arrRegist[ $data["column"] ] = $array[ $data["column"] ];
146        }
147        if ($data['column'] == 'update_date'){
148            $arrRegist['update_date'] = 'now()';
149        }
150    }
151    //ÅÐÏ¿¼Â¹Ô
152    $objQuery->begin();
153    $objQuery->update("dtb_review", $arrRegist, "review_id='".$_POST['review_id']."'");
154    $objQuery->commit();
155}
156?>
Note: See TracBrowser for help on using the repository browser.