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

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