source: branches/feature-module-update/html/test/uehara/tree.php @ 15080

Revision 15080, 4.1 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");
8
9class LC_Page{
10    function LC_Page() {
11    }
12}
13
14$top_dir = USER_PATH;
15
16$objPage = new LC_Page();
17$objView = new SC_UserView("./templates");
18$objQuery = new SC_Query();
19
20// 現在の階層を取得
21if($_POST['mode'] != "") {
22    $now_dir = $_POST['now_file'];
23} else {
24    // 初期表示はルートディレクトリ(user_data/upload/)を表示
25    $now_dir = $top_dir;
26}
27
28// ファイル管理クラス
29$objUpFile = new SC_UploadFile($now_dir, $now_dir);
30// ファイル情報の初期化
31lfInitFile();
32
33switch($_POST['mode']) {
34
35// ファイル表示
36case 'view':
37    // エラーチェック
38    $arrErr = lfErrorCheck();
39    if(!is_array($arrErr)) {
40   
41        // 選択されたファイルがディレクトリなら移動
42        if(is_dir($_POST['select_file'])) {
43            ///$now_dir = $_POST['select_file'];
44            // ツリー遷移用のjavascriptを埋め込む
45            $arrErr['view'] = "※ ディレクトリを表示することは出来ません。";
46           
47        } else {
48            // javascriptで別窓表示(テンプレート側に渡す)
49            $file_url = ereg_replace(USER_PATH, "", $_POST['select_file']);
50            $objPage->tpl_javascript = "win02('./file_view.php?file=". $file_url ."', 'user_data', '600', '400');";
51        }
52    }
53    break;
54// ファイルダウンロード
55case 'download':
56
57    // エラーチェック
58    $arrErr = lfErrorCheck();
59    if(!is_array($arrErr)) {
60        if(is_dir($_POST['select_file'])) {
61            // ディレクトリの場合はjavascriptエラー
62            $arrErr['download'] = "※ ディレクトリをダウンロードすることは出来ません。";
63        } else {
64            // ファイルダウンロード
65            sfDownloadFile($_POST['select_file']);
66            exit;           
67        }
68    }
69    break;
70// ファイル削除
71case 'delete':
72    // エラーチェック
73    $arrErr = lfErrorCheck();
74    if(!is_array($arrErr)) {
75        sfDeleteDir($_POST['select_file']);
76    }
77    break;
78// ファイル作成
79case 'create':
80    // エラーチェック
81    $arrErr = lfCreateErrorCheck();
82    if(!is_array($arrErr)) {
83        $create_dir = ereg_replace("/$", "", $now_dir);
84        // ファイル作成
85        if(!sfCreateFile($create_dir."/".$_POST['create_file'], 0755)) {
86            // 作成エラー
87            $arrErr['create'] = "※ ".$_POST['create_file']."の作成に失敗しました。";
88        } else {
89            $objPage->tpl_javascript = "alert('フォルダを作成しました。');";
90        }
91    }
92    break;
93// ファイルアップロード
94case 'upload':
95    // 画像保存処理
96    $ret = $objUpFile->makeTempFile('upload_file', false);
97    if($ret != "") {
98        $arrErr['upload_file'] = $ret;
99    } else {
100        $objPage->tpl_javascript = "alert('ファイルをアップロードしました。');";
101    }
102    break;
103// フォルダ移動
104case 'move':
105    $now_dir = $_POST['tree_select_file'];
106    break;
107// 初期表示
108default :
109    break;
110}
111
112
113// 現在のディレクトリ配下のファイル一覧を取得
114$objPage->arrFileList = sfGetFileList($now_dir);
115$objPage->tpl_now_file = $now_dir;
116$objPage->arrErr = $arrErr;
117$objPage->arrParam = $_POST;
118$objPage->arrTree = sfGetFileTree($top_dir, $_POST['tree_status']);
119$objPage->$tpl_onload .= "fnTreeView('tree', arrTree, '$now_dir')";
120
121$objView->assignobj($objPage);
122$objView->display("tree.tpl");
123
124//-----------------------------------------------------------------------------------------------------------------------------------
125
126/*
127 * 関数名:lfErrorCheck()
128 * 説明 :エラーチェック
129 */
130function lfErrorCheck() {
131    $objErr = new SC_CheckError($_POST);
132    $objErr->doFunc(array("ファイル", "select_file"), array("SELECT_CHECK"));
133   
134    return $objErr->arrErr;
135}
136
137/*
138 * 関数名:lfCreateErrorCheck()
139 * 説明 :ファイル作成処理エラーチェック
140 */
141function lfCreateErrorCheck() {
142    $objErr = new SC_CheckError($_POST);
143    $objErr->doFunc(array("作成ファイル", "create_file"), array("EXIST_CHECK", "FILE_NAME_CHECK_BY_NOUPLOAD"));
144   
145    return $objErr->arrErr;
146}
147
148/*
149 * 関数名:lfInitFile()
150 * 説明 :ファイル情報の初期化
151 */
152function lfInitFile() {
153    global $objUpFile;
154    $objUpFile->addFile("アップロードファイル", 'upload_file', array(), FILE_SIZE, true, 0, 0, false);
155}
156?>
Note: See TracBrowser for help on using the repository browser.