source: branches/dev/html/admin/products/trackback.php @ 11929

Revision 11929, 6.8 KB checked in by inoue, 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");
8require_once("./index_csv.php");
9
10session_start();
11
12class LC_Page {
13    var $arrSession;
14    function LC_Page() {
15        global $arrPageMax;
16        global $arrRECOMMEND;
17        global $arrSex;
18        $this->arrPageMax = $arrPageMax;
19        $this->arrRECOMMEND = $arrRECOMMEND;
20        $this->arrSex = $arrSex;
21        $this->tpl_mainpage = 'products/trackback.tpl';
22        $this->tpl_subnavi = 'products/subnavi.tpl';
23        $this->tpl_mainno = 'products';
24        $this->tpl_subno = 'review';
25        $this->tpl_pager = DATA_PATH . 'Smarty/templates/admin/pager.tpl';
26        $this->tpl_subtitle = '¥È¥é¥Ã¥¯¥Ð¥Ã¥¯´ÉÍý';
27    }
28}
29
30$objPage = new LC_Page();
31$objView = new SC_AdminView();
32$objSess = new SC_Session();
33$objDate = new SC_Date();
34$objQuery = new SC_Query();
35
36// ¾õÂÖ¤ÎÀßÄê
37$objPage->arrTrackBackStatus = $arrTrackBackStatus;
38
39// ÅÐÏ¿¡¦¹¹¿·¸¡º÷³«»Ïǯ
40$objDate->setStartYear(RELEASE_YEAR);
41$objDate->setEndYear(DATE("Y"));
42$objPage->arrStartYear = $objDate->getYear();
43$objPage->arrStartMonth = $objDate->getMonth();
44$objPage->arrStartDay = $objDate->getDay();
45// ÅÐÏ¿¡¦¹¹¿·¸¡º÷½ªÎ»Ç¯
46$objDate->setStartYear(RELEASE_YEAR);
47$objDate->setEndYear(DATE("Y"));
48$objPage->arrEndYear = $objDate->getYear();
49$objPage->arrEndMonth = $objDate->getMonth();
50$objPage->arrEndDay = $objDate->getDay();
51
52// ǧ¾Ú²ÄÈݤÎȽÄê
53sfIsSuccess($objSess);
54
55// ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¾ðÊó¤Î¥«¥é¥à¤Î¼èÆÀ
56$select="trackback_id, tra.product_id, tra.blog_name, tra.title, tra.url, ";
57$select.="tra.excerpt, tra.status, tra.create_date, tra.update_date, pro.name";
58$from = "dtb_trackback AS tra LEFT JOIN dtb_products AS pro ON tra.product_id = pro.product_id ";
59
60// ¸¡º÷¥ï¡¼¥É¤Î°ú¤­·Ñ¤®
61foreach ($_POST as $key => $val) {
62    if (ereg("^search_", $key)) {
63        $objPage->arrHidden[$key] = $val;
64    }
65}
66
67// ¥È¥é¥Ã¥¯¥Ð¥Ã¥¯¤Îºï½ü
68if ($_POST['mode'] == "delete") {
69    $objQuery->exec("UPDATE dtb_trackback SET del_flg = 1 WHERE trackback_id=?", array($_POST['trackback_id']));
70}
71   
72if ($_POST['mode'] == 'search' || $_POST['mode'] == 'csv' || $_POST['mode'] == 'delete'){
73   
74    //ºï½ü¤µ¤ì¤Æ¤¤¤Ê¤¤¾¦Éʤò¸¡º÷
75    $where="tra.del_flg = 0 AND pro.del_flg = 0";
76    $objPage->arrForm = $_POST;
77
78    //¥¨¥é¡¼¥Á¥§¥Ã¥¯
79    $objPage->arrErr = lfCheckError();
80
81    if (!$objPage->arrErr) {
82        foreach ($_POST as $key => $val) {
83
84            $val = sfManualEscape($val);
85           
86            if ($val == "") {
87                continue;
88            }
89           
90            switch ($key) {
91
92                case 'search_blog_name':
93                    $val = ereg_replace(" ", "%", $val);
94                    $val = ereg_replace("¡¡", "%", $val);
95                    $where.= " AND pro.blog_name ILIKE ? ";
96                    $arrval[] = "%$val%";
97                    break;
98           
99                case 'search_blog_title':
100                    $val = ereg_replace(" ", "%", $val);
101                    $val = ereg_replace("¡¡", "%", $val);
102                    $where.= " AND pro.title ILIKE ? ";
103                    $arrval[] = "%$val%";
104                    break;
105           
106                case 'search_blog_url':
107                    $val = ereg_replace(" ", "%", $val);
108                    $val = ereg_replace("¡¡", "%", $val);
109                    $where.= " AND tra.url ILIKE ? ";
110                    $arrval[] = "%$val%";
111                    break;
112                   
113                case 'search_status':
114                    if (isset($_POST['search_status'])) {
115                        $where.= " AND tra.status = ? ";
116                        $arrval[] = $val;
117                    }
118                    break;
119                           
120                case 'search_name':
121                    $val = ereg_replace(" ", "%", $val);
122                    $val = ereg_replace("¡¡", "%", $val);
123                    $where.= " AND pro.name ILIKE ? ";
124                    $arrval[] = "%$val%";
125                    break;
126                   
127                case 'search_product_code':
128                    $val = ereg_replace(" ", "%", $val);
129                    $val = ereg_replace("¡¡", "%", $val);
130                    $where.= " AND pro.product_id IN (SELECT product_id FROM dtb_products_class WHERE product_code ILIKE ? )";
131                    $arrval[] = "%$val%";
132                    break;
133                   
134                case 'search_startyear':
135                    if (isset($_POST['search_startyear']) && isset($_POST['search_startmonth']) && isset($_POST['search_startday'])) {
136                        $date = sfGetTimestamp($_POST['search_startyear'], $_POST['search_startmonth'], $_POST['search_startday']);
137                        $where.= " AND tra.create_date >= ? ";
138                        $arrval[] = $date;
139                    }
140                    break;
141   
142                case 'search_endyear':
143                    if (isset($_POST['search_startyear']) && isset($_POST['search_startmonth']) && isset($_POST['search_startday'])) {
144                        $date = sfGetTimestamp($_POST['search_endyear'], $_POST['search_endmonth'], $_POST['search_endday']);
145                       
146                        $end_date = date("Y/m/d",strtotime("1 day" ,strtotime($date)));
147                       
148                        $where.= " AND tra.create_date <= cast('$end_date' as date) ";
149                    }
150                    break;
151            }
152       
153        }
154           
155    }
156   
157    $order = "tra.create_date DESC";
158   
159    // ¥Ú¡¼¥¸Á÷¤ê¤Î½èÍý
160    if(is_numeric($_POST['search_page_max'])) {
161        $page_max = $_POST['search_page_max'];
162    } else {
163        $page_max = SEARCH_PMAX;
164    }
165   
166    $linemax = $objQuery->count($from, $where, $arrval);
167    $objPage->tpl_linemax = $linemax;
168   
169    // ¥Ú¡¼¥¸Á÷¤ê¤Î¼èÆÀ
170    $objNavi = new SC_PageNavi($_POST['search_pageno'], $linemax, $page_max, "fnNaviSearchPage", NAVI_PMAX);
171    $objPage->arrPagenavi = $objNavi->arrPagenavi;
172    $startno = $objNavi->start_row;
173
174    $objPage->tpl_pageno = $_POST['search_pageno'];
175   
176    // ¼èÆÀÈϰϤλØÄê(³«»Ï¹ÔÈֹ桢¹Ô¿ô¤Î¥»¥Ã¥È)
177    $objQuery->setlimitoffset($page_max, $startno);
178
179    // ɽ¼¨½ç½ø
180    $objQuery->setorder($order);
181   
182    //¸¡º÷·ë²Ì¤Î¼èÆÀ
183    $objPage->arrReview = $objQuery->select($select, $from, $where, $arrval);
184   
185    //CSV¥À¥¦¥ó¥í¡¼¥É
186    if ($_POST['mode'] == 'csv'){
187        // ¥ª¥×¥·¥ç¥ó¤Î»ØÄê
188        $option = "ORDER BY trackback_id";
189        // CSV½ÐÎÏ¥¿¥¤¥È¥ë¹Ô¤ÎºîÀ®
190        $head = sfGetCSVList($arrREVIEW_CVSTITLE);
191        $data = lfGetReviewCSV($where, '', $arrval);
192        // CSV¤òÁ÷¿®¤¹¤ë¡£
193        sfCSVDownload($head.$data);
194        exit;
195    }   
196}
197
198$objView->assignobj($objPage);
199$objView->display(MAIN_FRAME);
200
201//-------------------------------------------------------------------------------------
202
203// ÆþÎÏ¥¨¥é¡¼¥Á¥§¥Ã¥¯
204function lfCheckError() {
205    $objErr = new SC_CheckError();
206    switch ($_POST['mode']){
207        case 'search':
208        $objErr->doFunc(array("Åê¹Æ¼Ô", "search_startyear", "search_startmonth", "search_startday"), array("CHECK_DATE"));
209        $objErr->doFunc(array("³«»ÏÆü", "search_startyear", "search_startmonth", "search_startday"), array("CHECK_DATE"));
210        $objErr->doFunc(array("½ªÎ»Æü", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_DATE"));
211        $objErr->doFunc(array("³«»ÏÆü", "½ªÎ»Æü", "search_startyear", "search_startmonth", "search_startday", "search_endyear", "search_endmonth", "search_endday"), array("CHECK_SET_TERM"));
212        break;
213       
214        case 'complete':
215        $objErr->doFunc(array("¤ª¤¹¤¹¤á¥ì¥Ù¥ë", "recommend_level"), array("SELECT_CHECK"));
216        $objErr->doFunc(array("¥¿¥¤¥È¥ë", "title", STEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
217        $objErr->doFunc(array("¥³¥á¥ó¥È", "comment", LTEXT_LEN), array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
218        break;
219    }
220    return $objErr->arrErr;
221}
222
223?>
Note: See TracBrowser for help on using the repository browser.