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

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