source: branches/feature-module-update/html/admin/contents/page_edit.php @ 15080

Revision 15080, 3.2 KB checked in by nanasess, 17 years ago (diff)

svn properties 設定

  • svn:mime-type - application/x-httpd-php; charset=UTF-8
  • svn:keywords - Id
  • Property svn:keywords set to Id
  • Property svn:mime-type set to application/x-httpd-php; charset=UTF-8
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("./page_edit.inc");
9
10class LC_Page {
11    function LC_Page() {
12        $this->tpl_mainpage = 'contents/page_edit.tpl';
13        $this->tpl_mainno = 'contents';
14        $this->tpl_subnavi = 'contents/subnavi.tpl';
15        $this->tpl_subno = "page_edit";
16        global $arrPageList;
17        $this->arrPageList = $arrPageList;
18        $this->tpl_subtitle = 'ページ編集';
19    }
20}
21
22$conn = new SC_DBConn();
23$objPage = new LC_Page();
24$objView = new SC_AdminView();
25$objSess = new SC_Session();
26
27$objFormParam = new SC_FormParam();         // フォーム用
28lfInitParam();                              // パラメータ情報の初期化
29$objFormParam->setParam($_POST);            // POST値の取得
30
31switch($_POST['mode']) {
32case 'edit':
33    $objPage->arrErr = $objFormParam->checkError();
34    if(count($objPage->arrErr) == 0) {
35        $page = $_POST['page'];
36        if($arrPageTpl[$page] != "") {
37            // 一時ファイルに書き込む
38            $path = TEMPLATE_FTP_DIR . $arrPageTpl[$page] . ".tmp";
39            $ret = lfWriteFile($path, $objFormParam->getValue('template'));
40            // 本番ファイルに反映
41            if($ret > 0) {
42                $dst_path = TEMPLATE_FTP_DIR . $arrPageTpl[$page];
43                if(!copy($path, $dst_path)) {
44                    print("ファイルの書込みに失敗しました。");
45                }
46            }
47        }
48    }   
49    break;
50case 'preview':
51    $objPage->arrErr = $objFormParam->checkError();
52    if(count($objPage->arrErr) == 0) {
53        $page = $_POST['page'];
54        if($arrPageTpl[$page] != "") {
55            // 一時ファイルに書き込む
56            $path = TEMPLATE_FTP_DIR . $arrPageTpl[$page] . ".tmp";
57            $ret = lfWriteFile($path, $objFormParam->getValue('template'));
58            // プレビュー表示
59            $url = $arrPageURL[$page] . "tpl=" . $arrPageTpl[$page] . ".tmp";
60            $objPage->tpl_onload ="window.open('$url', 'preview');";
61        }
62    }   
63    break;
64case 'select':
65    $page = $_POST['page'];
66    if($arrPageTpl[$page] != "") {
67        // ファイルの中身を読んで文字列に格納する
68        $path = TEMPLATE_FTP_DIR . $arrPageTpl[$page];
69        if(file_exists($path)) {
70            $fp = fopen($path, "r");
71            $contents = fread($fp, filesize($path));
72            $objFormParam->setValue('template', $contents);
73            fclose($fp);
74        }
75    } else {
76        $objFormParam->setValue('template', "");
77    }
78    break;
79default:
80   
81    break;
82}
83
84/*
85
86// ファイルの中身を読んで文字列に格納する
87$path = TEMPLATE_FTP_DIR . "index.tpl";
88$fp = fopen($path, "r");
89$contents = fread($fp, filesize($path));
90
91$objFormParam->setValue('template', $contents);
92
93fclose($fp);
94
95*/
96
97// 入力値の取得
98$objPage->arrForm = $objFormParam->getFormParamList();
99
100$objView->assignobj($objPage);
101$objView->display(MAIN_FRAME);
102//---------------------------------------------------------
103/* パラメータ情報の初期化 */
104function lfInitParam() {
105    global $objFormParam;
106    $objFormParam->addParam("ページ選択", "page", INT_LEN, "n", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
107    $objFormParam->addParam("テンプレート", "template", LLTEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK"));
108}
109
110function lfWriteFile($path, $string) {
111    $fp = fopen($path,"w+");
112    flock($fp, LOCK_EX);
113    $ret = fwrite($fp, $string);
114    fclose($fp);
115    return $ret;
116}
117
118?>
Note: See TracBrowser for help on using the repository browser.