source: temp/trunk/html/admin/design/template.php @ 3525

Revision 3525, 9.8 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
2
3require_once("../../require.php");
4
5class LC_Page {
6    var $arrForm;
7    var $arrHidden;
8    var $arrSubnavi = array(
9        'title' => array(
10            1 => 'top',
11            2 => 'product',
12            3 => 'detail',
13            4 => 'mypage'
14        ),
15        'name' =>array(
16            1 => 'TOP¥Ú¡¼¥¸',
17            2 => '¾¦ÉʰìÍ÷¥Ú¡¼¥¸',
18            3 => '¾¦Éʾܺ٥ڡ¼¥¸',
19            4 => 'MY¥Ú¡¼¥¸'
20        )
21    );
22
23    function LC_Page() {
24        $this->tpl_mainpage = 'design/template.tpl';
25        $this->tpl_subnavi = 'design/subnavi.tpl';
26        $this->tpl_subno = 'template';
27        $this->tpl_subno_template = $this->arrSubnavi['title'][1];
28        $this->tpl_TemplateName = $this->arrTemplateName['name'][1];
29        $this->tpl_mainno = "design";
30        $this->tpl_subtitle = '¥Æ¥ó¥×¥ì¡¼¥ÈÀßÄê';
31    }
32}
33
34$objPage = new LC_Page();
35$objView = new SC_AdminView();
36$objSess = new SC_Session();
37
38// ǧ¾Ú²ÄÈݤÎȽÄê
39$objSess = new SC_Session();
40sfIsSuccess($objSess);
41
42// GET¤ÎÃͤò¼õ¤±¼è¤ë
43$get_tpl_subno_template = $_GET['tpl_subno_template'];
44
45// GET¤ÇÃͤ¬Á÷¤é¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¤½¤ÎÃͤò¸µ¤Ë²èÌÌɽ¼¨¤òÀÚ¤êÂØ¤¨¤ë
46if ($get_tpl_subno_template != ""){
47    // Á÷¤é¤ì¤Æ¤­¤¿Ãͤ¬ÇÛÎó¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤±¤ì¤ÐTOP¤òɽ¼¨
48    if (in_array($get_tpl_subno_template,$objPage->arrSubnavi['title'])){
49        $tpl_subno_template = $get_tpl_subno_template;
50    }else{
51        $tpl_subno_template = $objPage->arrSubnavi['title'][1];
52    }
53} else {
54    // GET¤ÇÃͤ¬¤Ê¤±¤ì¤ÐPOST¤ÎÃͤò»ÈÍѤ¹¤ë
55    if ($_POST['tpl_subno_template'] != ""){
56        $tpl_subno_template = $_POST['tpl_subno_template'];
57    }else{
58        $tpl_subno_template = $objPage->arrSubnavi['title'][1];
59    }
60}
61$objPage->tpl_subno_template = $tpl_subno_template;
62$key = array_keys($objPage->arrSubnavi['title'], $tpl_subno_template);
63$objPage->template_name = $objPage->arrSubnavi['name'][$key[0]];
64
65// ÅÐÏ¿¤ò²¡¤µ¤ì¤¿¤Ð¤¢¤Ë¤ÏDB¤Ø¥Ç¡¼¥¿¤ò¹¹¿·¤Ë¹Ô¤¯
66if ($_POST['mode'] == "confirm"){
67    // DB¤Ø¥Ç¡¼¥¿¹¹¿·
68    lfUpdData();
69   
70    // ¥Æ¥ó¥×¥ì¡¼¥È¤Î¾å½ñ¤­
71    lfChangeTemplate();
72}
73
74// POSTÃͤΰú¤­·Ñ¤®
75$objPage->arrForm = $_POST;
76
77// ²èÁü¼èÆÀ
78$tpl_arrTemplate = array();
79$objPage->arrTemplate = lfgetTemplate();
80
81// ¥Ç¥Õ¥©¥ë¥È¥Á¥§¥Ã¥¯¼èÆÀ
82$objPage->MainImage = $objPage->arrTemplate['check'];
83$objPage->arrTemplate['check'] = array($objPage->arrTemplate['check']=>"check");
84
85// ²èÌ̤Îɽ¼¨
86$objView->assignobj($objPage);
87$objView->display(MAIN_FRAME);
88
89//---------------------------------------------------------------------------------------------------------------------------------------------------------
90
91/**************************************************************************************************************
92 * ´Ø¿ô̾   ¡§lfgetTemplate
93 * ½èÍýÆâÍÆ ¡§²èÌ̤Ëɽ¼¨¤¹¤ë²èÁü¤ò¼èÆÀ¤¹¤ë
94 * °ú¿ô     ¡§¤Ê¤·
95 * Ìá¤êÃÍ   ¡§²èÌ̤Ëɽ¼¨¤¹¤ë²èÁü(ÇÛÎó)
96 **************************************************************************************************************/
97function lfgetTemplate(){
98    global $objPage;
99    $filepath = "/user_data/templates/";
100   
101    $arrTemplateImage = array();    // ²èÌÌɽ¼¨²èÁü³ÊǼÍÑ
102    $Image = "";                    // ¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
103    $disp = "";
104    $arrDefcheck = array();         // radio¥Ü¥¿¥ó¤Î¥Ç¥Õ¥©¥ë¥È¥Á¥§¥Ã¥¯³ÊǼÍÑ
105   
106    // DB¤«¤é¸½ºßÁªÂò¤µ¤ì¤Æ¤¤¤ë¥Ç¡¼¥¿¼èÆÀ
107    $arrDefcheck = lfgetTemplaeBaseData();
108   
109    // ¥Æ¥ó¥×¥ì¡¼¥È¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
110    $objQuery = new SC_Query();
111    $sql = "SELECT template_code,template_name FROM dtb_templates ORDER BY create_date DESC";
112    $arrTemplate = $objQuery->getall($sql);
113   
114    switch($objPage->tpl_subno_template) {
115        // TOP
116        case $objPage->arrSubnavi['title'][1]:
117            $Image = "TopImage.jpg";            // ¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
118            $disp = $objPage->arrSubnavi['title'][1];
119            break;
120           
121        // ¾¦ÉʰìÍ÷
122        case $objPage->arrSubnavi['title'][2]:
123            $Image = "ProdImage.jpg";           // ¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
124            $disp = $objPage->arrSubnavi['title'][2];
125            break;
126           
127        // ¾¦ÉʾܺÙ
128        case $objPage->arrSubnavi['title'][3]:
129            $Image = "DetailImage.jpg";         // ¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
130            $disp = $objPage->arrSubnavi['title'][3];
131            break;
132           
133        // MY¥Ú¡¼¥¸
134        case $objPage->arrSubnavi['title'][4]:
135            $Image = "MypageImage.jpg";         //¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
136            $disp = $objPage->arrSubnavi['title'][4];
137            break;
138    }
139
140    // ²èÁüɽ¼¨ÇÛÎóºîÀ®
141    foreach($arrTemplate as $key => $val){
142        $arrTemplateImage['image'][$val['template_code']] = $filepath . $val['template_code'] . "/" . $Image;
143        $arrTemplateImage['code'][$key] = $val['template_code'];
144    }
145   
146   
147   
148    // ½é´ü¥Á¥§¥Ã¥¯
149    if (isset($arrDefcheck[$disp])){
150        $arrTemplateImage['check'] = $arrDefcheck[$disp];
151    }else{
152        $arrTemplateImage['check'] = 1;
153    }
154   
155    return $arrTemplateImage;
156}
157
158/**************************************************************************************************************
159 * ´Ø¿ô̾   ¡§lfgetTemplaeBaseData
160 * ½èÍýÆâÍÆ ¡§DB¤ËÊݸ¤µ¤ì¤Æ¤¤¤ë¥Æ¥ó¥×¥ì¡¼¥È¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
161 * °ú¿ô     ¡§¤Ê¤·
162 * Ìá¤êÃÍ   ¡§DB¤ËÊݸ¤µ¤ì¤Æ¤¤¤ë¥Æ¥ó¥×¥ì¡¼¥È¥Ç¡¼¥¿(ÇÛÎó)
163 **************************************************************************************************************/
164function lfgetTemplaeBaseData(){
165    $objDBConn = new SC_DbConn;     // DBÁàºî¥ª¥Ö¥¸¥§¥¯¥È
166    $sql = "";                      // ¥Ç¡¼¥¿¼èÆÀSQLÀ¸À®ÍÑ
167    $arrRet = array();              // ¥Ç¡¼¥¿¼èÆÀÍÑ
168   
169    $sql = "SELECT top_tpl AS top, product_tpl AS product, detail_tpl AS detail, mypage_tpl AS mypage FROM dtb_baseinfo";
170    $arrRet = $objDBConn->getAll($sql);
171   
172    return $arrRet[0];
173}
174
175/**************************************************************************************************************
176 * ´Ø¿ô̾   ¡§lfUpdData
177 * ½èÍýÆâÍÆ ¡§DB¤Ë¥Ç¡¼¥¿¤òÊݸ¤¹¤ë
178 * °ú¿ô     ¡§¤Ê¤·
179 * Ìá¤êÃÍ   ¡§À®¸ù TRUE¡¢¥¨¥é¡¼ FALSE
180 **************************************************************************************************************/
181function lfUpdData(){
182    global $objPage;
183    $objDBConn = new SC_DbConn;     // DBÁàºî¥ª¥Ö¥¸¥§¥¯¥È
184    $sql = "";                      // ¥Ç¡¼¥¿¼èÆÀSQLÀ¸À®ÍÑ
185    $arrRet = array();              // ¥Ç¡¼¥¿¼èÆÀÍÑ(¹¹¿·È½Äê)
186
187    // ¥Ç¡¼¥¿¼èÆÀ   
188    $sql = "SELECT top_tpl AS top, product_tpl AS product, detail_tpl AS detail, mypage_tpl AS mypage FROM dtb_baseinfo";
189    $arrRet = $objDBConn->getAll($sql);
190
191    $chk_tpl = $_POST['check_template'];
192    // ¥Ç¡¼¥¿¤¬¼èÆÀ¤Ç¤­¤Ê¤±¤ì¤ÐINSERT¡¢¤Ç¤­¤ì¤ÐUPDATE
193    if (isset($arrRet[0])){
194        // UPDATE
195        $arrVal = $arrRet[0];
196       
197        // TOP¤òÊѹ¹¤·¤¿¾ì¹ç¤Ë¤ÏÁ´²èÌÌÊѹ¹
198        if ($objPage->tpl_subno_template == $objPage->arrSubnavi['title'][1]){
199            $arrVal = array($chk_tpl,$chk_tpl,$chk_tpl,$chk_tpl);
200        }else{
201            $arrVal[$objPage->tpl_subno_template] = $chk_tpl;
202        }
203        $sql= "update dtb_baseinfo set top_tpl = ?, product_tpl = ?, detail_tpl = ?, mypage_tpl = ?, update_date = now()";
204    }else{
205        // INSERT
206        $arrVal = array(null,null,null,null);
207       
208        // TOP¤òÊѹ¹¤·¤¿¾ì¹ç¤Ë¤ÏÁ´²èÌÌÊѹ¹
209        if ($objPage->tpl_subno_template == $objPage->arrSubnavi['title'][1]){
210            $arrVal = array($chk_tpl,$chk_tpl,$chk_tpl,$chk_tpl);
211        }else{
212            $arrVal[$chk_tpl-1] =$chk_tpl;
213        }
214        $sql= "insert into dtb_baseinfo (top_tpl,product_tpl,detail_tpl,mypage_tpl, update_date) values (?,?,?,?,now());";
215    }
216
217    // SQL¼Â¹Ô 
218    $arrRet = $objDBConn->query($sql,$arrVal);
219   
220    return $arrRet;
221}
222
223/**************************************************************************************************************
224 * ´Ø¿ô̾   ¡§lfChangeTemplate
225 * ½èÍýÆâÍÆ ¡§¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ò¾å½ñ¤­¤¹¤ë
226 * °ú¿ô     ¡§¤Ê¤·
227 * Ìá¤êÃÍ   ¡§À®¸ù TRUE¡¢¥¨¥é¡¼ FALSE
228 **************************************************************************************************************/
229function lfChangeTemplate(){
230    global $objPage;
231    $tpl_path = USER_DIR . "templates/";
232    $inc_path = ROOT_DIR . USER_DIR . "include/";
233    $css_path = ROOT_DIR . USER_DIR . "css/";
234   
235    $tpl_name = "";
236    $tpl_element = "";
237   
238    $chk_tpl = $_POST['check_template'];
239   
240    // ¥Æ¥ó¥×¥ì¡¼¥È¥Ç¡¼¥¿¤ò¼èÆÀ¤¹¤ë
241    $objQuery = new SC_Query();
242    $sql = "SELECT template_code,template_name FROM dtb_templates WHERE template_code = ?";
243    $arrTemplate = $objQuery->getall($sql, array($chk_tpl));   
244   
245    switch($objPage->tpl_subno_template) {
246        // TOP
247        case $objPage->arrSubnavi['title'][1]:
248            $tpl_element = "TopTemplate";           // ¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
249            $tpl_name = "top.tpl";
250            break;
251           
252        // ¾¦ÉʰìÍ÷
253        case $objPage->arrSubnavi['title'][2]:
254            $tpl_element = "ProdTemplate";          // ¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
255            $tpl_name = "list.tpl";
256            break;
257           
258        // ¾¦ÉʾܺÙ
259        case $objPage->arrSubnavi['title'][3]:
260            $tpl_element = "DetailTemplate";            // ¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
261            $tpl_name = "detail.tpl";
262            break;
263           
264        // MY¥Ú¡¼¥¸
265        case $objPage->arrSubnavi['title'][4]:
266            $tpl_element = "MypageTemplate";            //¥¤¥á¡¼¥¸¤ÎÇÛÎóÍ×ÁÇ̾³ÊǼÍÑ
267            $tpl_name = "mypage.tpl";
268            break;
269
270        default:
271            break;
272    }
273   
274    $taget_tpl_path = ROOT_DIR . $tpl_path . $arrTemplate[0]['template_code'] . "/";
275    $save_tpl_path = ROOT_DIR . $tpl_path;
276   
277    // TOP¤òÊѹ¹¤·¤¿¾ì¹ç¤Ë¤ÏÁ´²èÌÌÊѹ¹
278    if ($objPage->tpl_subno_template == $objPage->arrSubnavi['title'][1]){
279        // ¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼
280        copy($taget_tpl_path . "/top.tpl", $save_tpl_path . "top.tpl");
281        copy($taget_tpl_path . "/list.tpl", $save_tpl_path . "list.tpl");
282        copy($taget_tpl_path . "/detail.tpl", $save_tpl_path . "detail.tpl");
283
284        // mypage¤Ï¥Õ¥©¥ë¥À¤´¤È¥³¥Ô¡¼
285        lfFolderCopy($taget_tpl_path."mypage/", $save_tpl_path . "mypage/");
286
287        // ¥Ö¥í¥Ã¥¯¥Ç¡¼¥¿¤Î¥³¥Ô¡¼
288        lfFolderCopy($taget_tpl_path."bloc/", $inc_path . "bloc/");
289       
290        // ¥Ø¥Ã¥À¡¼,¥Õ¥Ã¥¿¡¼¥³¥Ô¡¼
291        copy($taget_tpl_path . "/header.tpl", $inc_path . "header.tpl");
292        copy($taget_tpl_path . "/footer.tpl", $inc_path . "footer.tpl");
293       
294        // CSS¥Õ¥¡¥¤¥ë¤Î¥³¥Ô¡¼
295        copy($taget_tpl_path . "/contents.css", $css_path . "/contents.css");
296
297    // mypage¤Î¾ì¹ç¤Ë¤Ï¥Õ¥©¥ë¥À¤´¤È¥³¥Ô¡¼¤¹¤ë
298    }elseif($objPage->tpl_subno_template == $objPage->arrSubnavi['title'][4]){
299        lfFolderCopy($taget_tpl_path."mypage/", $save_tpl_path."mypage/");
300    }else{
301        // ¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼
302        copy($taget_tpl_path . $tpl_name, $save_tpl_path . $tpl_name);
303    }
304}
305
306// ¥Õ¥©¥ë¥À¤ò¥³¥Ô¡¼¤¹¤ë
307function lfFolderCopy($taget_path, $save_path){
308
309    // ¥Õ¥©¥ë¥ÀÆâ¤Î¥Õ¥¡¥¤¥ë¤ò¼èÆÀ¤¹¤ë
310    $arrMypage=glob($taget_path . "*" );
311   
312    // ¥Õ¥©¥ë¥À¤¬¤Ê¤±¤ì¤ÐºîÀ®¤¹¤ë
313    if(!is_dir($save_path)){
314        mkdir($save_path);
315    }
316
317    // ¥Õ¥©¥ë¥ÀÆâ¤òÁ´¤Æ¥³¥Ô¡¼
318    foreach($arrMypage as $key => $val){
319        $matches = array();
320        mb_ereg("^(.*[\/])(.*)",$val, $matches);
321        $data=$matches[2];
322        copy($val, $save_path . $data);
323    }
324}
Note: See TracBrowser for help on using the repository browser.