2011/07/08 いろいろ追加。
@@ -0,0 +1,41 @@ | ||
1 | +<?php if ( ! defined('BASEPATH')) exit('Denied Access'); | |
2 | +/** | |
3 | + * Epitta BB | |
4 | + * | |
5 | + * @author Wajett | |
6 | + * @copyright Copyright (c) 2011 - 2012, Wajett Systems | |
7 | + * | |
8 | + * | |
9 | + */ | |
10 | + | |
11 | + | |
12 | + | |
13 | +class Page_Action extends Base_Action { | |
14 | + | |
15 | + | |
16 | + public function __construct() | |
17 | + { | |
18 | + parent::__construct(); | |
19 | + | |
20 | + } | |
21 | + | |
22 | + | |
23 | + | |
24 | + public function notice() | |
25 | + { | |
26 | + //スキン | |
27 | + $this->readSkin('notice'); | |
28 | + $this->content = getNoticeHtml(); | |
29 | + | |
30 | + $this->set['view'] = __FUNCTION__; | |
31 | + $this->setLayout('base'); | |
32 | + return true; | |
33 | + | |
34 | + } | |
35 | + | |
36 | + | |
37 | + | |
38 | + | |
39 | +} | |
40 | + | |
41 | +?> | |
\ No newline at end of file |
@@ -299,7 +299,6 @@ | ||
299 | 299 | |
300 | 300 | |
301 | 301 | //スキン |
302 | - $this->readSkin('article'); //先行必須 | |
303 | 302 | $this->readSkin('thread'); |
304 | 303 | |
305 | 304 | //var_dump($threads); |
@@ -48,9 +48,7 @@ | ||
48 | 48 | |
49 | 49 | public function result() |
50 | 50 | { |
51 | - | |
52 | - | |
53 | - | |
51 | + | |
54 | 52 | // |
55 | 53 | $word = $this->getPost('word'); |
56 | 54 | $mode = $this->getPost('mode', 1); |
@@ -94,16 +92,34 @@ | ||
94 | 92 | //スキン |
95 | 93 | $this->readSkin('search'); |
96 | 94 | |
97 | - $myContent = getSearchResultHtml($articles, $this->baseSet); | |
95 | + //コンテント | |
96 | + $myContent = ''; | |
97 | + if ( $articles ) { | |
98 | + $myContent .= getSearchedListHtml($articles); | |
98 | 99 | |
100 | + } else { | |
101 | + // | |
102 | + $this->postSet['word'] = $_POST['word']; | |
103 | + $this->postSet['mode'] = $_POST['mode']; | |
104 | + $this->postSet['errMessage'] = $GLOBALS['LNG']['searchNoResult']; | |
105 | + $this->postSet['errMsgAry'] = array(); | |
106 | + $this->input(); | |
107 | + return; | |
108 | + } | |
99 | 109 | $this->content = $myContent; |
100 | 110 | |
101 | 111 | |
112 | + //$myContent = getSearchResultHtml($articles, $this->baseSet); | |
113 | + | |
114 | + //$this->content = $myContent; | |
115 | + | |
116 | + | |
102 | 117 | $this->set['view'] = __FUNCTION__; |
103 | 118 | $this->setLayout('base'); |
104 | 119 | |
105 | 120 | return true; |
106 | 121 | } |
122 | + | |
107 | 123 | } |
108 | 124 | |
109 | 125 | ?> |
\ No newline at end of file |
@@ -0,0 +1,135 @@ | ||
1 | +<?php if ( !defined('ADMINIDTF') or !defined('BASEPATH') ) exit('Denied Access'); | |
2 | +/** | |
3 | + * Epitta BB | |
4 | + * | |
5 | + * @author Wajett | |
6 | + * @copyright Copyright (c) 2011 - 2012, Wajett Systems | |
7 | + * | |
8 | + * | |
9 | + */ | |
10 | + | |
11 | + | |
12 | + | |
13 | +class Admin_Action extends Base_Action { | |
14 | + | |
15 | + | |
16 | + public function __construct() | |
17 | + { | |
18 | + //管理者画面専用の設定 | |
19 | + | |
20 | + | |
21 | + $this->action = $GLOBALS['APP']['actStr']; | |
22 | + | |
23 | + //セット | |
24 | + $this->id = $GLOBALS['APP']['id']; | |
25 | + $this->platform = $GLOBALS['APP']['platform']; | |
26 | + $this->skin = $GLOBALS['APP']['skin']; | |
27 | + | |
28 | + //platform | |
29 | + if ( isset( $_POST['plfm']) ) { | |
30 | + $this->platform = $_POST['plfm']; | |
31 | + } else if ( isset( $_GET['plfm']) ) { | |
32 | + $this->platform = $_GET['plfm']; | |
33 | + } | |
34 | + | |
35 | + //Set | |
36 | + $this->baseSet['script'] = $_SERVER["SCRIPT_NAME"]; | |
37 | + $this->baseSet['id'] = $this->id; | |
38 | + $this->baseSet['act'] = $this->action; | |
39 | + $this->baseSet['plfm'] = $this->platform; | |
40 | + $this->baseSet['skin'] = $this->skin; | |
41 | + | |
42 | + //リンクURL | |
43 | + $this->baseSet['linkBaseUrl'] = SCRIPTURL . "?"; | |
44 | + $query = ''; | |
45 | + if ( $this->id and $this->id != 'default' ) { | |
46 | + $query = "id=" . $this->id; | |
47 | + } | |
48 | + if ( $this->platform and $this->platform != 'default' ) { | |
49 | + if ( ! $query ) $query >= "&"; | |
50 | + $query .= "plfm=" . $this->platform; | |
51 | + } | |
52 | + $this->baseSet['linkBaseUrl'] .= $query; | |
53 | + | |
54 | + //pubURL & dataURL | |
55 | + if ( $this->id ) { | |
56 | + $this->baseSet['pubURL'] = PUBURL ."/". $this->id; | |
57 | + $this->baseSet['dataURL'] = DATAURL ."/". $this->id; | |
58 | + } else { | |
59 | + $this->baseSet['pubURL'] = PUBURL ."/default"; | |
60 | + $this->baseSet['dataURL'] = DATAURL ."/default"; | |
61 | + } | |
62 | + $this->baseSet['dataCmn'] = DATAURL ."/common"; | |
63 | + $this->baseSet['pubCmn'] = PUBURL; | |
64 | + | |
65 | + //スキンパス | |
66 | + $this->skinPath = VIEWPATH . '/admin'; | |
67 | + | |
68 | + //スキンエレメント | |
69 | + require_once( $this->skinPath . '/base_elements.php' ); | |
70 | + | |
71 | + } | |
72 | + | |
73 | + | |
74 | + public function loginInput() | |
75 | + { | |
76 | + | |
77 | + $this->postSet['errMessage'] = ''; | |
78 | + $this->postSet['errMsgAry'] = null; | |
79 | + $this->postSet['password'] = ''; | |
80 | + | |
81 | + | |
82 | + if ( $_POST ) { | |
83 | + | |
84 | + if ( empty($_POST['password']) ) { | |
85 | + $this->postSet['password'] = ''; | |
86 | + $this->postSet['errMessage'] = $GLOBALS['LNG']['adminAuthFailed']; | |
87 | + $this->postSet['errMsgAry'][0] = ''; | |
88 | + | |
89 | + | |
90 | + } else { | |
91 | + | |
92 | + //認証チェック | |
93 | + | |
94 | + $brdMdl = $this->loadModel('Board'); | |
95 | + $admPass = $brdMdl->getAdminPass(); | |
96 | + | |
97 | + echo $admPass; | |
98 | + | |
99 | + //TODO 管理者パスワード暗号化 | |
100 | + | |
101 | + | |
102 | + // | |
103 | + $this->postSet['password'] = $_POST['password']; | |
104 | + | |
105 | + //$this->postSet['errMessage'] = $GLOBALS['LNG']['postInvalid']; | |
106 | + //$this->postSet['errMsgAry'][0] = $GLOBALS['LNG']['searchWordLess']; | |
107 | + | |
108 | + | |
109 | + } | |
110 | + | |
111 | + | |
112 | + | |
113 | + | |
114 | + } | |
115 | + | |
116 | + | |
117 | + //スキン | |
118 | + $this->readSkin('login'); | |
119 | + $this->content = getLoginHtml($this->baseSet, $this->postSet); | |
120 | + | |
121 | + $this->set['view'] = 'login'; | |
122 | + $this->setLayout('admin'); | |
123 | + return true; | |
124 | + | |
125 | + } | |
126 | + | |
127 | + | |
128 | + | |
129 | + | |
130 | + | |
131 | + | |
132 | + | |
133 | +} | |
134 | + | |
135 | +?> | |
\ No newline at end of file |
@@ -60,15 +60,16 @@ | ||
60 | 60 | } |
61 | 61 | $this->baseSet['linkBaseUrl'] .= $query; |
62 | 62 | |
63 | - //dataURL | |
63 | + //pubURL & dataURL | |
64 | 64 | if ( $this->id ) { |
65 | + $this->baseSet['pubURL'] = PUBURL ."/". $this->id; | |
65 | 66 | $this->baseSet['dataURL'] = DATAURL ."/". $this->id; |
66 | 67 | } else { |
68 | + $this->baseSet['pubURL'] = PUBURL ."/default"; | |
67 | 69 | $this->baseSet['dataURL'] = DATAURL ."/default"; |
68 | 70 | } |
69 | - $this->baseSet['pubURL'] = PUBURL; | |
71 | + $this->baseSet['pubCmn'] = PUBURL; | |
70 | 72 | |
71 | - | |
72 | 73 | //スキンパス |
73 | 74 | if ( $this->platform ) { |
74 | 75 | $this->skinPath = VIEWPATH . '/' . $this->platform . '/' . $this->skin; |
@@ -351,8 +351,8 @@ | ||
351 | 351 | $sql = "SELECT * FROM epitta_articles " |
352 | 352 | . " WHERE " . $where . " ORDER BY " . $order . " LIMIT " . $limit; |
353 | 353 | |
354 | - echo $sql; | |
355 | - $rows = $this->getRecord($sql, true); | |
354 | + //echo $sql; | |
355 | + $rows = $this->getRecord($sql); | |
356 | 356 | |
357 | 357 | $this->closeConn(); |
358 | 358 |
@@ -17,57 +17,58 @@ | ||
17 | 17 | |
18 | 18 | } |
19 | 19 | |
20 | - function set_platform() { | |
21 | -// ($^O eq 'MSWin32') && ($::FLAG{'mswin'} = 1); | |
22 | - if(strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { | |
23 | - $GLOBALS['FLAG']['mswin'] = 1; | |
24 | - } | |
25 | -// $ENV{'HTTP_USER_AGENT'} =~ s/\s+/ /g; | |
26 | -// if (index($ENV{'HTTP_USER_AGENT'}, 'DoCoMo') == 0) { | |
27 | -// $::FLAG{'mobile'}{'imode'} = 1; | |
28 | -// } | |
29 | -// elsif (index($ENV{'HTTP_USER_AGENT'}, 'J-PHONE') == 0) { | |
30 | -// $::FLAG{'mobile'}{'jsky'} = 1; | |
31 | -// } | |
32 | -// elsif (index($ENV{'HTTP_USER_AGENT'},'KDDI') == 0) { | |
33 | -// $::FLAG{'mobile'}{'hdml'} = 1; | |
34 | -// } | |
35 | -// elsif (index($ENV{'HTTP_USER_AGENT'}, 'UP.Browser') == 0) { | |
36 | -// $::FLAG{'mobile'}{'hdml'} = 1; | |
37 | -// } | |
38 | -// elsif (index($ENV{'HTTP_USER_AGENT'}, 'ASTEL') == 0) { | |
39 | -// $::FLAG{'mobile'}{'astel'} = 1; | |
40 | -// } | |
41 | -// elsif (index($ENV{'HTTP_USER_AGENT'}, 'DDIPOCKET') != -1) { | |
42 | -// $::FLAG{'mobile'}{'imode'} = 1; | |
43 | -// } | |
44 | - if(strpos("/DoCoMo/",$_SERVER['HTTP_USER_AGENT']) !== false) { | |
45 | - $GLOBALS['mobile']['imode'] = 1; | |
46 | - } | |
47 | - elseif(strpos("/J-PHONE/",$_SERVER['HTTP_USER_AGENT'])) { | |
48 | - $GLOBALS['mobile']['jsky'] = 1; | |
49 | - } | |
50 | - elseif(strpos("/KDDI/",$_SERVER['HTTP_USER_AGENT'])) { | |
51 | - $GLOBALS['mobile']['hdml'] = 1; | |
52 | - } | |
53 | - elseif(strpos("/Vodafone/",$_SERVER['HTTP_USER_AGENT'])) { | |
54 | - $GLOBALS['mobile']['wap20'] = 1; | |
55 | - } | |
56 | - elseif(strpos("/UP.Browser/",$_SERVER['HTTP_USER_AGENT'])) { | |
57 | - $GLOBALS['mobile']['hdml'] = 1; | |
58 | - } | |
59 | - elseif(strpos("/ASTEL/",$_SERVER['HTTP_USER_AGENT'])) { | |
60 | - $GLOBALS['mobile']['astel'] = 1; | |
61 | - } | |
62 | - elseif(strpos("/DDIPOCKET/",$_SERVER['HTTP_USER_AGENT'])) { | |
63 | - $GLOBALS['mobile']['imode'] = 1; | |
64 | - } | |
65 | -// $::FLAG{'mobile'} && ($::FLAG{'mobile'}{'mode'} = 1); | |
66 | - if(!empty($GLOBALS['FLAG']['mobile']) && count($GLOBALS['FLAG']['mobile'])) { | |
67 | - $GLOBALS['FLAG']['mobile']['mode'] = 1; | |
68 | - } | |
69 | -// } | |
70 | - } | |
20 | + function set_platform() { | |
21 | + | |
22 | + // ($^O eq 'MSWin32') && ($::FLAG{'mswin'} = 1); | |
23 | + if(strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { | |
24 | + $GLOBALS['FLAG']['mswin'] = 1; | |
25 | + } | |
26 | + // $ENV{'HTTP_USER_AGENT'} =~ s/\s+/ /g; | |
27 | + // if (index($ENV{'HTTP_USER_AGENT'}, 'DoCoMo') == 0) { | |
28 | + // $::FLAG{'mobile'}{'imode'} = 1; | |
29 | + // } | |
30 | + // elsif (index($ENV{'HTTP_USER_AGENT'}, 'J-PHONE') == 0) { | |
31 | + // $::FLAG{'mobile'}{'jsky'} = 1; | |
32 | + // } | |
33 | + // elsif (index($ENV{'HTTP_USER_AGENT'},'KDDI') == 0) { | |
34 | + // $::FLAG{'mobile'}{'hdml'} = 1; | |
35 | + // } | |
36 | + // elsif (index($ENV{'HTTP_USER_AGENT'}, 'UP.Browser') == 0) { | |
37 | + // $::FLAG{'mobile'}{'hdml'} = 1; | |
38 | + // } | |
39 | + // elsif (index($ENV{'HTTP_USER_AGENT'}, 'ASTEL') == 0) { | |
40 | + // $::FLAG{'mobile'}{'astel'} = 1; | |
41 | + // } | |
42 | + // elsif (index($ENV{'HTTP_USER_AGENT'}, 'DDIPOCKET') != -1) { | |
43 | + // $::FLAG{'mobile'}{'imode'} = 1; | |
44 | + // } | |
45 | + if(strpos("/DoCoMo/",$_SERVER['HTTP_USER_AGENT']) !== false) { | |
46 | + $GLOBALS['mobile']['imode'] = 1; | |
47 | + } | |
48 | + elseif(strpos("/J-PHONE/",$_SERVER['HTTP_USER_AGENT'])) { | |
49 | + $GLOBALS['mobile']['jsky'] = 1; | |
50 | + } | |
51 | + elseif(strpos("/KDDI/",$_SERVER['HTTP_USER_AGENT'])) { | |
52 | + $GLOBALS['mobile']['hdml'] = 1; | |
53 | + } | |
54 | + elseif(strpos("/Vodafone/",$_SERVER['HTTP_USER_AGENT'])) { | |
55 | + $GLOBALS['mobile']['wap20'] = 1; | |
56 | + } | |
57 | + elseif(strpos("/UP.Browser/",$_SERVER['HTTP_USER_AGENT'])) { | |
58 | + $GLOBALS['mobile']['hdml'] = 1; | |
59 | + } | |
60 | + elseif(strpos("/ASTEL/",$_SERVER['HTTP_USER_AGENT'])) { | |
61 | + $GLOBALS['mobile']['astel'] = 1; | |
62 | + } | |
63 | + elseif(strpos("/DDIPOCKET/",$_SERVER['HTTP_USER_AGENT'])) { | |
64 | + $GLOBALS['mobile']['imode'] = 1; | |
65 | + } | |
66 | + // $::FLAG{'mobile'} && ($::FLAG{'mobile'}{'mode'} = 1); | |
67 | + if(!empty($GLOBALS['FLAG']['mobile']) && count($GLOBALS['FLAG']['mobile'])) { | |
68 | + $GLOBALS['FLAG']['mobile']['mode'] = 1; | |
69 | + } | |
70 | + // } | |
71 | + } | |
71 | 72 | |
72 | 73 | } |
73 | 74 |
@@ -62,6 +62,13 @@ | ||
62 | 62 | // } |
63 | 63 | } |
64 | 64 | |
65 | + | |
66 | + | |
67 | + function checkAdminLogon() { | |
68 | + | |
69 | + //クッキーをチェック | |
70 | + | |
71 | + | |
72 | + } | |
65 | 73 | |
66 | - | |
67 | 74 | ?> |
\ No newline at end of file |
@@ -1,5 +1,9 @@ | ||
1 | 1 | <?php if ( ! defined('BASEPATH')) exit('Denied Access'); |
2 | - | |
2 | + | |
3 | +/** | |
4 | + * 通常用コントローラー | |
5 | + * | |
6 | + */ | |
3 | 7 | class App_Controller { |
4 | 8 | |
5 | 9 | protected $ctrl = array(); |
@@ -8,7 +12,7 @@ | ||
8 | 12 | public function __construct() |
9 | 13 | { |
10 | 14 | |
11 | - // | |
15 | + //for Debug | |
12 | 16 | if ( ENV == 'dev' ) { |
13 | 17 | array_push( $GLOBALS['DBG'], "Mem=" . round((memory_get_usage()/(1024*1024) ),2) . "MB\n" ); |
14 | 18 | } |
@@ -34,6 +38,8 @@ | ||
34 | 38 | // |
35 | 39 | 'srhipt' =>array( 'act'=>'Search', 'func'=>'input' ), |
36 | 40 | 'srhrst' =>array( 'act'=>'Search', 'func'=>'result' ), |
41 | + // | |
42 | + 'ntce' =>array( 'act'=>'Page', 'func'=>'notice' ), | |
37 | 43 | |
38 | 44 | ); |
39 | 45 |
@@ -86,16 +92,121 @@ | ||
86 | 92 | |
87 | 93 | |
88 | 94 | |
89 | - function __destruct() { | |
95 | + function __destruct() { | |
90 | 96 | |
91 | - if ( ENV == 'dev' ) { | |
97 | + if ( ENV == 'dev' ) { | |
98 | + echo "<div>Now Developing!</div>\n"; | |
92 | 99 | array_push( $GLOBALS['DBG'], "Mem=" . round((memory_get_usage()/(1024*1024) ),2) . "MB\n" ); |
93 | 100 | } |
94 | 101 | |
95 | 102 | print_r( $GLOBALS['DBG']); |
96 | 103 | |
97 | - } | |
104 | + } | |
98 | 105 | |
99 | 106 | } |
100 | - | |
107 | + | |
108 | + | |
109 | + | |
110 | +/** | |
111 | + * 管理者用コントローラー | |
112 | + * | |
113 | + */ | |
114 | +class AppAdmin_Controller { | |
115 | + | |
116 | + protected $ctrl = array(); | |
117 | + | |
118 | + | |
119 | + public function __construct() | |
120 | + { | |
121 | + | |
122 | + //for Debug | |
123 | + if ( ENV == 'dev' ) { | |
124 | + array_push( $GLOBALS['DBG'], "Mem=" . round((memory_get_usage()/(1024*1024) ),2) . "MB\n" ); | |
125 | + } | |
126 | + | |
127 | + $this->ctrl = array( | |
128 | + //このモッサリ感はださいけど、Mod_Rwriteは利用者のハードルがあがる | |
129 | + | |
130 | + // | |
131 | + 'index' =>array( 'act'=>'Admin', 'func'=>'loginInput' ), | |
132 | + 'login' =>array( 'act'=>'Admin', 'func'=>'loginInput' ), | |
133 | + 'logout' =>array( 'act'=>'Admin', 'func'=>'logout' ), | |
134 | + 'menu' =>array( 'act'=>'Admin', 'func'=>'menu' ), | |
135 | + | |
136 | + 'cgfipt' =>array( 'act'=>'Admin', 'func'=>'configInput' ), | |
137 | + 'cgfsv' =>array( 'act'=>'Admin', 'func'=>'cpmfogSave' ), | |
138 | + | |
139 | + 'artlst' =>array( 'act'=>'Admin', 'func'=>'articleList' ), | |
140 | + 'artedt' =>array( 'act'=>'Admin', 'func'=>'articleEdit' ), | |
141 | + 'artsv' =>array( 'act'=>'Admin', 'func'=>'articleSave' ), | |
142 | + | |
143 | + 'artlst' =>array( 'act'=>'Admin', 'func'=>'articleList' ), | |
144 | + 'artedt' =>array( 'act'=>'Admin', 'func'=>'articleEdit' ), | |
145 | + 'artsv' =>array( 'act'=>'Admin', 'func'=>'articleSave' ), | |
146 | + | |
147 | + 'acs' =>array( 'act'=>'Admin', 'func'=>'access' ), | |
148 | + | |
149 | + ); | |
150 | + | |
151 | + // | |
152 | + $this->action(); | |
153 | + | |
154 | + } | |
155 | + | |
156 | + | |
157 | + public function Action() | |
158 | + { | |
159 | + | |
160 | + // | |
161 | + $act = 'index'; | |
162 | + if ( isset( $_POST['act'] ) ) { | |
163 | + $act = $_POST['act']; | |
164 | + } else if ( isset( $_GET['act'] ) ) { | |
165 | + $act = $_GET['act']; | |
166 | + } | |
167 | + $GLOBALS['APP']['actStr'] = $act; | |
168 | + | |
169 | + $actionSet = null; | |
170 | + if ( isset( $this->ctrl[$act] ) ) { | |
171 | + $actionSet = $this->ctrl[$act]; | |
172 | + } else { | |
173 | + $actionSet = $this->ctrl['index']; | |
174 | + } | |
175 | + | |
176 | + | |
177 | + //読み込み | |
178 | + require_once( APPPATH . '/actions/base_action.php' ); | |
179 | + require_once( APPPATH . '/actions/' . strtolower($actionSet['act']) . "_action.php" ); | |
180 | + | |
181 | + //echo $actionSet['act']; | |
182 | + | |
183 | + | |
184 | + //インスタンス | |
185 | + //$ins = new ReflectionClass( $actionSet['act'] ); | |
186 | + $className = $actionSet['act'] . '_Action'; | |
187 | + $ins = new $className(); | |
188 | + | |
189 | + //ファンクション | |
190 | + $ins->$actionSet['func'](); | |
191 | + //$ret = ReflectionFunction::export( $actionSet['func']); | |
192 | + | |
193 | + exit; | |
194 | + | |
195 | + | |
196 | + } | |
197 | + | |
198 | + | |
199 | + | |
200 | + function __destruct() { | |
201 | + | |
202 | + if ( ENV == 'dev' ) { | |
203 | + echo "<div>Now Developing!</div>\n"; | |
204 | + array_push( $GLOBALS['DBG'], "Mem=" . round((memory_get_usage()/(1024*1024) ),2) . "MB\n" ); | |
205 | + } | |
206 | + | |
207 | + print_r( $GLOBALS['DBG']); | |
208 | + | |
209 | + } | |
210 | + | |
211 | +} | |
101 | 212 | ?> |
\ No newline at end of file |
@@ -31,6 +31,7 @@ | ||
31 | 31 | delete_mode INTEGER NOT NULL DEFAULT 1, |
32 | 32 | edit_mode INTEGER NOT NULL DEFAULT 1, |
33 | 33 | img_view INTEGER NOT NULL DEFAULT 0, |
34 | + new_days INTEGER NOT NULL DEFAULT 3, | |
34 | 35 | |
35 | 36 | clipfile INTEGER NOT NULL DEFAULT 1, |
36 | 37 | clipfile_types TEXT DEFAULT 'jpeg,gif,png,txt,zip', |
@@ -14,7 +14,7 @@ | ||
14 | 14 | <!-- header --> |
15 | 15 | <div style="background-color:#ffffcc;"> |
16 | 16 | ヘッダー |
17 | -<?php echo $GLOBALS['CNF']['vw_header']; ?> | |
17 | +<?php echo ( ! empty($GLOBALS['CNF']['vw_header']) ) ? $GLOBALS['CNF']['vw_header'] : ''; ?> | |
18 | 18 | </div> |
19 | 19 | <br clear="all" class="clear" /> |
20 | 20 | <!-- header --> |
@@ -51,12 +51,11 @@ | ||
51 | 51 | <div style="background-color:#ffffcc;"> |
52 | 52 | <br /> |
53 | 53 | フッター |
54 | -<?php echo $GLOBALS['CNF']['vw_footer']; ?> | |
54 | +<?php echo ( ! empty($GLOBALS['CNF']['vw_footer']) ) ? $GLOBALS['CNF']['vw_footer'] : ''; ?> | |
55 | 55 | </div> |
56 | 56 | <!-- footer --> |
57 | 57 | |
58 | 58 | <div class="appCount"></div> |
59 | -<div class="appFoot"><?php echo EPTNAME . EPTVER; ?></div> | |
60 | 59 | |
61 | 60 | </div> |
62 | 61 |
@@ -33,7 +33,7 @@ | ||
33 | 33 | |
34 | 34 | //DB |
35 | 35 | define('COREDB', 'epitta.db'); |
36 | -define('DEFDB', 'def_12345678.db'); | |
36 | +//define('DEFDB', 'def_12345678.db'); | |
37 | 37 | |
38 | 38 | |
39 | 39 |
@@ -57,13 +57,21 @@ | ||
57 | 57 | $ltflt = new Late_Filter(); |
58 | 58 | |
59 | 59 | |
60 | - //アクション | |
61 | - require_once( APPPATH . '/app_config.php'); | |
62 | - require_once( APPPATH . '/app_controller.php'); | |
63 | - $acIns = new APP_Controller(); | |
60 | + //その他の設定 | |
61 | + require_once( APPPATH . '/app_config.php'); | |
62 | + //アクション | |
63 | + require_once( APPPATH . '/app_controller.php'); | |
64 | + if ( ! defined('ADMINIDTF') ) { | |
65 | + //通常 | |
66 | + $acIns = new App_Controller(); | |
67 | + } else { | |
68 | + //管理用 | |
69 | + $acIns = new AppAdmin_Controller(); | |
70 | + } | |
64 | 71 | |
65 | 72 | |
66 | 73 | |
74 | + | |
67 | 75 | //@ob_end_flush(); |
68 | 76 | |
69 | 77 |
@@ -112,7 +120,8 @@ | ||
112 | 120 | //コンフィグ読み込み |
113 | 121 | $cmnMdl = new Common_model($GLOBALS['APP']['coreDbPath']); |
114 | 122 | $result = $cmnMdl->readConfig($GLOBALS['APP']['id']); |
115 | - if (!$result) trigger_error ('Unknown BB\'s id!'); | |
123 | + if (!$result) trigger_error ('Unknown BB\'s id!'); | |
124 | + | |
116 | 125 | //配列へ |
117 | 126 | $GLOBALS['CNF'] = $result; |
118 | 127 | //var_dump($GLOBALS['CNF']); |
@@ -35,6 +35,7 @@ | ||
35 | 35 | |
36 | 36 | 'post' => '投稿', |
37 | 37 | 'modify' => '編集', |
38 | +'addMod' => '追記', | |
38 | 39 | 'delete' => '削除', |
39 | 40 | |
40 | 41 |
@@ -55,15 +56,24 @@ | ||
55 | 56 | 'submitKey' => '投稿キーワード', |
56 | 57 | 'submitButton' => ' 投 稿 ', |
57 | 58 | 'modifyButton' => ' 編 集 ', |
59 | +'addModButton' => ' 追 記 ', | |
58 | 60 | 'deleteButton' => ' 削 除 ', |
59 | 61 | 'deleteConfirm' => ' 削除確認 ', |
60 | 62 | |
63 | +'branchShape0' => ' ', | |
64 | +'branchShape1' => '┣ ', | |
65 | +'branchShape2' => '┃ ', | |
66 | +'branchShape3' => '┗', | |
67 | + | |
68 | + | |
61 | 69 | 'searchArticle' => '記事検索', |
62 | 70 | 'searchWord' => '検索単語', |
63 | 71 | 'searchMode' => '検索モード', |
64 | 72 | 'searchButton' => ' 検 索 ', |
65 | -'searchInfo1' => '※複数の単語は半角スペースで区切ってください。', | |
73 | +'searchResult' => '検索結果', | |
74 | +'searchInfo1' => '※複数の単語は半角スペースで区切ってください。', | |
66 | 75 | 'searchWordLess' => '検索単語は2文字以上で入力してください。', |
76 | +'searchNoResult' => '該当する記事は見つかりませんでした。', | |
67 | 77 | |
68 | 78 | 'responseTo' => '返信対象', |
69 | 79 |
@@ -91,6 +101,14 @@ | ||
91 | 101 | 'failedFileSize' => '添付するファイルのサイズが制限を超えています。', |
92 | 102 | |
93 | 103 | |
104 | +'adminAuth' => '管理者ログイン', | |
105 | +'adminLogout' => '管理者ログアウト', | |
106 | +'adminAuthButton' => '認 証', | |
107 | +'adminAuthFailed' => '認証できませんでした。', | |
108 | +'adminMenu' => '管理者メニュー', | |
109 | +'adminBoardList' => '掲示板一覧', | |
110 | + | |
111 | + | |
94 | 112 | ); |
95 | 113 | |
96 | 114 |
@@ -0,0 +1,14 @@ | ||
1 | +<?php | |
2 | +/* | |
3 | + * Epitta BB | |
4 | + * | |
5 | + */ | |
6 | + | |
7 | + | |
8 | +define('ADMINIDTF', '1234ABCD'); | |
9 | +define('BACKPATH', './epitta.php'); | |
10 | + | |
11 | +require_once( BACKPATH ); | |
12 | + | |
13 | + | |
14 | +?> | |
\ No newline at end of file |
@@ -16,5 +16,4 @@ | ||
16 | 16 | return $myContent; |
17 | 17 | } |
18 | 18 | |
19 | - | |
20 | 19 | ?> |
\ No newline at end of file |
@@ -0,0 +1,52 @@ | ||
1 | +<?php | |
2 | +function getNoticeHtml() { | |
3 | + $myContent = ''; | |
4 | + | |
5 | +$myContent .=<<< HTML | |
6 | +<div class="notice"> | |
7 | + | |
8 | +<div style="text-align:center;"> | |
9 | +<h2 class="noticeTitle">留意事項</h2> | |
10 | + | |
11 | +<div style="width:650px;text-align:left; margin:0px auto;"> | |
12 | + | |
13 | +<div style="margin:40px 50px; font-size:14px; line-height:24px;"> | |
14 | + 法律や公序良俗に反する内容、犯罪にかかわる内容、罵詈雑言や誹謗中傷、差別的な表現などの投稿は禁止します。また個人情報に関わる内容は、削除する可能性があります。<br /> | |
15 | + 一般的な常識の範疇で投稿を行ってください。<br /> | |
16 | + 管理者は、掲示板利用者の不利益になると判断した記事を予告なく削除することがあります。また管理のために記事投稿者のIPアドレスなどの接続情報を開示する場合があります。<br /> | |
17 | +<br /> | |
18 | + なお記事の削除など掲示板の管理についてのご質問には、お答えできない場合があります。<br /> | |
19 | + あらかじめご了承ください。<br /> | |
20 | + | |
21 | +<div style="text-align:right;font-size:14px;">掲示板管理者</div> | |
22 | +</div> | |
23 | + | |
24 | + | |
25 | + | |
26 | + | |
27 | +<div style="margin:5px 50px;"> | |
28 | +<strong>【詳細情報】</strong> | |
29 | +<ul style="line-height:24px;"> | |
30 | +<li class="first">投稿者が自身の投稿記事を削除するには、投稿時にパスワードを設定しておく必要があります。</li> | |
31 | +<li class="first">投稿時の入力必須項目には、項目名にアスタリスク(*)マークが付記されています。</li> | |
32 | +<li class="first">管理者が設定する禁止用語を含む内容は、投稿できません。</li> | |
33 | +<li class="first">この掲示板には、投稿時間制限機能と、独自のスパムフィルターが実装されています。</li> | |
34 | +<li class="first">投稿日時より3日以内の記事に、新着マークを表示しています。</li> | |
35 | +</ul> | |
36 | +</div> | |
37 | + | |
38 | +<br /> | |
39 | +<br /> | |
40 | +<br /> | |
41 | + | |
42 | +</div> | |
43 | +</div> | |
44 | +</div> | |
45 | + | |
46 | +HTML; | |
47 | + | |
48 | + return $myContent; | |
49 | +} | |
50 | + | |
51 | +?> | |
52 | + |
@@ -3,6 +3,7 @@ | ||
3 | 3 | |
4 | 4 | function getArticleHtml($art, $baseSet, $artlSet, $indent=0, $prev=false){ |
5 | 5 | |
6 | + $new = makeNew($art['created_at'], $GLOBALS['CNF']['new_days'], $baseSet['pubURL']); | |
6 | 7 | $email = makeEmail($art['email']); |
7 | 8 | $homepage = makeHomepage($art['homepage']); |
8 | 9 | $icon = makeIcon($art['iconfile'], $baseSet['pubURL'] . "/img/icon/"); |
@@ -18,7 +19,7 @@ | ||
18 | 19 | $article =<<< HTML |
19 | 20 | <div style="margin-left:{$indent};"> |
20 | 21 | <div class="articleBoxOut"> |
21 | -<div class="articleTitleBox">{$art['tree_number']}:{$art['id']}:{$art['subject']}</div> | |
22 | +<div class="articleTitleBox">{$art['tree_number']}:{$art['id']}:{$art['subject']} {$new}</div> | |
22 | 23 | <div class="articleAuthorBox"> |
23 | 24 | <div class="articleAuthor">{$art['author']}</div> |
24 | 25 | {$icon} |
@@ -69,177 +70,6 @@ | ||
69 | 70 | } |
70 | 71 | |
71 | 72 | |
72 | -function makeEmail($email) { | |
73 | - if (! $email) return ''; | |
74 | - | |
75 | - $myContent = ''; | |
76 | - | |
77 | -$myContent .=<<< HTML | |
78 | - <span class="mail"><a href="mailto:{$email}">[Email]</a></span> | |
79 | -HTML; | |
80 | - | |
81 | - return $myContent; | |
82 | -} | |
83 | - | |
84 | - | |
85 | -function makeHomepage($homepage) { | |
86 | - if (! $homepage) return ''; | |
87 | - | |
88 | - $myContent = ''; | |
89 | - | |
90 | -$myContent .=<<< HTML | |
91 | - <span class="home"><a href="{$homepage}">[Home]</a></span> | |
92 | -HTML; | |
93 | - | |
94 | - return $myContent; | |
95 | -} | |
96 | - | |
97 | -function makeIcon($iconfile, $pubURL) { | |
98 | - if (! $iconfile) return ''; | |
99 | - | |
100 | - $myContent = ''; | |
101 | - | |
102 | -$myContent .=<<< HTML | |
103 | - <div class="icon"><img src="{$pubURL}{$iconfile}" alt="アイコン" /></div> | |
104 | -HTML; | |
105 | - | |
106 | - return $myContent; | |
107 | -} | |
108 | - | |
109 | -function makeFtc($ftcolor) { | |
110 | - if (! $ftcolor) return '<span>'; | |
111 | - | |
112 | - $myContent = ''; | |
113 | - | |
114 | -$myContent .=<<< HTML | |
115 | - <span style="color:{$ftcolor};"> | |
116 | -HTML; | |
117 | - | |
118 | - return $myContent; | |
119 | -} | |
120 | - | |
121 | -function makeClipFiles($artId, $clip1, $clip2, $clip3, $pubUrl, $dataUrl) { | |
122 | - if (! $clip1 and $clip2 and $clip3) return ''; | |
123 | - | |
124 | - $myContent = ''; | |
125 | - $dataUrl2 = $dataUrl . "/uploads/" . $artId . "_"; | |
126 | - | |
127 | -$myContent .=<<< HTML | |
128 | - <div class="clipfiles"> | |
129 | -HTML; | |
130 | - | |
131 | -if ( $clip1 ) { | |
132 | -$myContent .=<<< HTML | |
133 | - <span class="clip"><a href="{$dataUrl2}{$clip1}" target="_blank"><img src="{$pubUrl}/img/clip.gif"></a></span> | |
134 | -HTML; | |
135 | -} | |
136 | -if ( $clip2 ) { | |
137 | -$myContent .=<<< HTML | |
138 | - <span class="clip"><a href="{$dataUrl2}{$clip2}" target="_blank"><img src="{$pubUrl}/img/clip.gif"></a></span> | |
139 | -HTML; | |
140 | -} | |
141 | -if ( $clip3 ) { | |
142 | -$myContent .=<<< HTML | |
143 | - <span class="clip"><a href="{$dataUrl2}{$clip3}" target="_blank"><img src="{$pubUrl}/img/clip.gif"></a></span> | |
144 | -HTML; | |
145 | -} | |
146 | - | |
147 | -$myContent .=<<< HTML | |
148 | - </div> | |
149 | -HTML; | |
150 | - | |
151 | - | |
152 | - return $myContent; | |
153 | -} | |
154 | - | |
155 | - | |
156 | -function makeFileImages($mode, $artId, $clip1, $clip2, $clip3, $dataUrl) { | |
157 | - if (! $clip1 and $clip2 and $clip3) return ''; | |
158 | - echo $mode; | |
159 | - if( empty($mode) ) return ''; | |
160 | - | |
161 | - $dataUrl2 = $dataUrl . "/uploads/" . $artId . "_"; | |
162 | - $myContent = ''; | |
163 | - | |
164 | - // | |
165 | - $vh = loadHelper('viewHelper'); | |
166 | - | |
167 | - | |
168 | -$myContent .=<<< HTML | |
169 | - <div class="imageFileView"> | |
170 | -HTML; | |
171 | - | |
172 | -if ( $clip1 and $vh->isImage($dataUrl2.$clip1)!=false ) { | |
173 | -$myContent .=<<< HTML | |
174 | - <div class="clipImage"><img src="{$dataUrl2}{$clip1}"></div> | |
175 | -HTML; | |
176 | -} | |
177 | - | |
178 | -if ( $clip2 and $vh->isImage($dataUrl2.$clip2)!=false ) { | |
179 | -$myContent .=<<< HTML | |
180 | - <div class="clipImage"><img src="{$dataUrl2}{$clip2}"></div> | |
181 | -HTML; | |
182 | -} | |
183 | - | |
184 | -if ( $clip3 and $vh->isImage($dataUrl2.$clip3)!=false ) { | |
185 | -$myContent .=<<< HTML | |
186 | - <div class="clipImage"><img src="{$dataUrl2}{$clip3}"></div> | |
187 | -HTML; | |
188 | -} | |
189 | - | |
190 | -$myContent .=<<< HTML | |
191 | - </div> | |
192 | -HTML; | |
193 | - | |
194 | - return $myContent; | |
195 | -} | |
196 | - | |
197 | - | |
198 | - | |
199 | - | |
200 | - | |
201 | -function makeEditButton($articleId, $baseSet, $artlSet) { | |
202 | - if (! $articleId) return ''; | |
203 | - | |
204 | - $myContent = ''; | |
205 | - | |
206 | - if ( $artlSet['edit_mode'] < 1 and $artlSet['delete_mode'] < 1 ) return ''; | |
207 | - | |
208 | - $action = 'modipt'; | |
209 | - $btnName = ''; | |
210 | - if ( $artlSet['edit_mode'] == 1 ) { | |
211 | - $btnName = '編集'; | |
212 | - | |
213 | - } else if ( $artlSet['edit_mode'] == 2 ) { | |
214 | - $btnName = '追記'; | |
215 | - | |
216 | - } else { | |
217 | - | |
218 | - if ( $artlSet['delete_mode'] == 1 ) { | |
219 | - $btnName = '削除'; | |
220 | - $action = 'delipt'; | |
221 | - } | |
222 | - } | |
223 | - | |
224 | - | |
225 | -if ( $btnName ) { | |
226 | -$myContent .=<<< HTML | |
227 | - <form method="post" action="{$baseSet['script']}" class="button edit"> | |
228 | - <input type="hidden" name="id" value="{$baseSet['id']}" /> | |
229 | - <input type="hidden" name="plfm" value="{$baseSet['plfm']}" /> | |
230 | - <input type="hidden" name="article_id" value="$articleId" /> | |
231 | - <input type="hidden" name="act" value="$action" /> | |
232 | - <input type="submit" value="$btnName" class="button" /> | |
233 | - </form> | |
234 | -HTML; | |
235 | - | |
236 | -} | |
237 | - | |
238 | - return $myContent; | |
239 | -} | |
240 | - | |
241 | - | |
242 | - | |
243 | 73 | function getThreadsArticleHtml($art, $baseSet, $artlSet, $indent=0){ |
244 | 74 | |
245 | 75 | $editBtn = makeEditButton($art['id'], $baseSet, $artlSet); |
@@ -0,0 +1,78 @@ | ||
1 | +<?php | |
2 | + | |
3 | + | |
4 | +function getSearchInputHtml($baseSet, $postSet) { | |
5 | + | |
6 | + $err = makeError($postSet['errMessage'], $postSet['errMsgAry']); | |
7 | + $m1 = ( $postSet['mode'] == 1 ) ? 'checked' : ''; | |
8 | + $m2 = ( $postSet['mode'] == 2 ) ? 'checked' : ''; | |
9 | + | |
10 | + $myContent = ''; | |
11 | +$myContent .=<<< HTML | |
12 | + | |
13 | +<div class="searchInput" style="text-align:center;"> | |
14 | + | |
15 | +<div style="width:500px; border:1px solid #777; margin :10px auto;"> | |
16 | +<form method="post" action="{$baseSet['script']}?act=srhrst" accept-charset="UTF-8"> | |
17 | + | |
18 | + <div class="searchTitle">{$GLOBALS['LNG']['searchArticle']}</div> | |
19 | + | |
20 | + <div class="searchBody"> | |
21 | + {$err} | |
22 | + | |
23 | + <div> | |
24 | + <label for="searchWord">{$GLOBALS['LNG']['searchWord']}:</label> | |
25 | + <input name="word" type="text" value="{$postSet['word']}" size="30" id="searchWord" /> | |
26 | + <div>{$GLOBALS['LNG']['searchInfo1']}</div> | |
27 | + </div> | |
28 | + | |
29 | + <div> | |
30 | + <label for="searchMode">{$GLOBALS['LNG']['searchMode']}:</label> | |
31 | + <input type="radio" name="mode" value="1" id="searchModeAnd" {$m1}/><label for="searchModeAnd">And</label> | |
32 | + <input type="radio" name="mode" value="2" id="searchModeOr" {$m2}/><label for="searchModeOr">Or</label> | |
33 | + </div> | |
34 | + | |
35 | + </div> | |
36 | + | |
37 | + <input type="submit" value="{$GLOBALS['LNG']['searchButton']}" /> | |
38 | + | |
39 | +</form> | |
40 | +</div> | |
41 | + | |
42 | +</div> | |
43 | + | |
44 | +HTML; | |
45 | + | |
46 | + return $myContent; | |
47 | +} | |
48 | + | |
49 | + | |
50 | +function getSearchedListHtml($articles) { | |
51 | + | |
52 | + $myContent = ''; | |
53 | + | |
54 | +$myContent .=<<< HTML | |
55 | +<div class="searchResultTitle">{$GLOBALS['LNG']['searchResult']}</div> | |
56 | +<div>\n | |
57 | +HTML; | |
58 | + | |
59 | + foreach($articles as $key => $art) { | |
60 | + | |
61 | +$myContent .=<<< HTML | |
62 | +<div class="tree"> | |
63 | +<div style="border:1px solid #678;"> | |
64 | + <a href="?act=trsgl&t={$art['tree_number']}">[{$art['id']}]</>:<a href="?act=sngl&a={$art['id']}" title="{$art['article']}">{$art['subject']}</a> {$art['author']} {$art['created_at']} | |
65 | +</div> | |
66 | +</div>\n | |
67 | +HTML; | |
68 | + } | |
69 | + | |
70 | +$myContent .=<<< HTML | |
71 | +</div> | |
72 | +HTML; | |
73 | + | |
74 | + return $myContent; | |
75 | +} | |
76 | + | |
77 | + | |
78 | +?> | |
\ No newline at end of file |
@@ -6,7 +6,7 @@ | ||
6 | 6 | <meta http-equiv="content-style-type" content="text/css" /> |
7 | 7 | <link rel="stylesheet" type="text/css" href="<?php echo $this->baseSet['dataURL']; ?>/base.css" /> |
8 | 8 | <link rel="stylesheet" type="text/css" href="<?php echo $this->baseSet['dataURL']; ?>/overwrite.css" /> |
9 | -<script type="text/javascript" src="<?php echo $this->baseSet['pubURL']; ?>/js/common.js"></script> | |
9 | +<script type="text/javascript" src="<?php echo $this->baseSet['pubCmn']; ?>/js/common.js"></script> | |
10 | 10 | <title><?php echo $this->set['vw_title']; ?></title> |
11 | 11 | </head> |
12 | 12 | <body <?php echo $this->set['vw_body']; ?>> |
@@ -17,9 +17,11 @@ | ||
17 | 17 | $homepage = makeHomepage($art['homepage']); |
18 | 18 | $icon = makeIcon($art['iconfile'], $baseSet['pubURL'] . "/img/icon/"); |
19 | 19 | $ftcspan = makeFtc($art['fontcolor']); |
20 | - $clipfiles = makeClipFiles($art['clipfile1'], $art['clipfile2'], $art['clipfile3']); | |
21 | - $fileimages = makeFileImages( $artlSet['img_view'], $art['clipfile1'], $art['clipfile2'], $art['clipfile3']); | |
22 | - $editBtn = makeEditButton($baseSet['id'], $baseSet['plfm'], $art['id'], $artlSet['delete_mode'], $artlSet['edit_mode']); | |
20 | + $clipfiles = | |
21 | + makeClipFiles($art['id'], $art['clipfile1'], $art['clipfile2'], $art['clipfile3'], $baseSet['pubURL'], $baseSet['dataURL']); | |
22 | + $fileimages = | |
23 | + makeFileImages( $artlSet['img_view'], $art['id'], $art['clipfile1'], $art['clipfile2'], $art['clipfile3'], $baseSet['pubURL'], $baseSet['dataURL']); | |
24 | + $editBtn = makeEditButton($art['id'], $baseSet, $artlSet ); | |
23 | 25 | |
24 | 26 | $art['article'] = nl2br($art['article']); |
25 | 27 |
@@ -69,9 +71,11 @@ | ||
69 | 71 | |
70 | 72 | $email = makeEmail($art['email']); |
71 | 73 | $homepage = makeHomepage($art['homepage']); |
72 | - $clipfiles = makeClipFiles($art['clipfile1'], $art['clipfile2'], $art['clipfile3']); | |
73 | - $fileimages = makeFileImages( $artlSet['img_view'], $art['clipfile1'], $art['clipfile2'], $art['clipfile3']); | |
74 | - $editBtn = makeEditButton($baseSet['id'], $baseSet['plfm'], $art['id'], $artlSet['delete_mode'], $artlSet['edit_mode']); | |
74 | + $clipfiles = | |
75 | + makeClipFiles($art['id'], $art['clipfile1'], $art['clipfile2'], $art['clipfile3'], $baseSet['pubURL'], $baseSet['dataURL']); | |
76 | + $fileimages = | |
77 | + makeFileImages( $artlSet['img_view'], $art['id'], $art['clipfile1'], $art['clipfile2'], $art['clipfile3'], $baseSet['pubURL'], $baseSet['dataURL']); | |
78 | + $editBtn = makeEditButton($art['id'], $baseSet, $artlSet ); | |
75 | 79 | |
76 | 80 | $article =<<< HTML |
77 | 81 | <div style="margin-left:{$indent};"> |
@@ -0,0 +1,36 @@ | ||
1 | +<?php | |
2 | + | |
3 | + | |
4 | +function getMenuHtml($baseSet, $postSet) { | |
5 | + | |
6 | + $myContent = ''; | |
7 | +$myContent .=<<< HTML | |
8 | + | |
9 | +<div class="searchInput" style="text-align:center;"> | |
10 | + | |
11 | +<div style="width:500px; border:1px solid #777; margin :10px auto;"> | |
12 | + | |
13 | + <div class="adminMenuTitle">{$GLOBALS['LNG']['adminMenu']}</div> | |
14 | + | |
15 | + <div class="searchBody"> | |
16 | + | |
17 | + | |
18 | + | |
19 | + <div> | |
20 | + | |
21 | + </div> | |
22 | + | |
23 | + </div> | |
24 | + | |
25 | + | |
26 | +</div> | |
27 | + | |
28 | +</div> | |
29 | + | |
30 | +HTML; | |
31 | + | |
32 | + return $myContent; | |
33 | +} | |
34 | + | |
35 | + | |
36 | +?> | |
\ No newline at end of file |
@@ -0,0 +1,51 @@ | ||
1 | +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> | |
2 | +<html lang="<?php echo LANG; ?>"> | |
3 | +<head> | |
4 | +<meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>" /> | |
5 | +<meta http-equiv="content-script-type" content="text/javascript" /> | |
6 | +<meta http-equiv="content-style-type" content="text/css" /> | |
7 | +<link rel="stylesheet" type="text/css" href="<?php echo $this->baseSet['pubCmn']; ?>/common/css/base.css" /> | |
8 | +<script type="text/javascript" src="<?php echo $this->baseSet['pubCmn']; ?>/js/common.js"></script> | |
9 | +<title>管理画面</title> | |
10 | +</head> | |
11 | +<body <?php echo $this->set['vw_body']; ?>> | |
12 | + | |
13 | + | |
14 | +<div class="container"> | |
15 | + | |
16 | +<!-- header --> | |
17 | +<div style="background-color:#ffffcc;"> | |
18 | +ヘッダー | |
19 | + | |
20 | +</div> | |
21 | +<br clear="all" class="clear" /> | |
22 | +<!-- header --> | |
23 | + | |
24 | + | |
25 | +<div class="mainContentOuter"> | |
26 | +<div class="mainContent <?php echo $this->set['view']; ?>View"> | |
27 | + | |
28 | +<?php echo $this->content; ?> | |
29 | + | |
30 | +</div> | |
31 | +</div> | |
32 | +<div style="text-align:right;"><a href="">ログアウト</a></div> | |
33 | + | |
34 | + | |
35 | +<br clear="all" class="clear" /> | |
36 | + | |
37 | +<!-- footer --> | |
38 | +<div style="background-color:#ffffcc;"> | |
39 | +<br /> | |
40 | +フッター | |
41 | + | |
42 | +</div> | |
43 | +<!-- footer --> | |
44 | + | |
45 | +<div class="appCount"></div> | |
46 | +<div class="appFoot"><?php echo $this->set['app_info']; ?></div> | |
47 | + | |
48 | +</div> | |
49 | + | |
50 | +</body> | |
51 | +</html> | |
\ No newline at end of file |
@@ -0,0 +1,524 @@ | ||
1 | +<?php if ( ! defined('BASEPATH')) exit('Denied Access'); | |
2 | + | |
3 | + | |
4 | + | |
5 | +function makeManubar(){ | |
6 | + | |
7 | + | |
8 | + $menuW = array(); | |
9 | + $menuL = array(); | |
10 | + | |
11 | + //ワード | |
12 | + $menuW['viewTree'] = $GLOBALS['CNF']['tree_on']; | |
13 | + $menuW['viewPlain'] = $GLOBALS['CNF']['plain_on']; | |
14 | + $menuW['viewThread'] = $GLOBALS['CNF']['thread_on']; | |
15 | + $menuW['viewTopic'] = $GLOBALS['CNF']['topic_on']; | |
16 | + $menuW['viewList'] = $GLOBALS['CNF']['list_on']; | |
17 | + | |
18 | + $menuW['viewTop'] = $GLOBALS['CNF']['top_on']; | |
19 | + $menuW['viewNewpost'] = $GLOBALS['CNF']['newpost_on']; | |
20 | + $menuW['viewSearch'] = $GLOBALS['CNF']['search_on']; | |
21 | + $menuW['viewNotice'] = $GLOBALS['CNF']['notice_on']; | |
22 | + $menuW['viewHome'] = $GLOBALS['CNF']; | |
23 | + | |
24 | + //リンク | |
25 | + if ( $GLOBALS['CNF']['topurl'] ) { | |
26 | + $top = $GLOBALS['CNF']['topurl'] . "?"; | |
27 | + } else { | |
28 | + $top = SCRIPTURL . "?"; | |
29 | + } | |
30 | + | |
31 | + $setId = ""; | |
32 | + if ( $GLOBALS['APP']['id'] <> 'default' ) $setId = "id=" . $GLOBALS['APP']['id'] . "&"; | |
33 | + | |
34 | + $menuL['viewTree'] = $top . $setId . 'act=tree'; | |
35 | + $menuL['viewPlain'] = $top . $setId . 'act=plain'; | |
36 | + $menuL['viewThread'] = $top . $setId . 'act=thrd'; | |
37 | + $menuL['viewTopic'] = $top . $setId . 'act=topic'; | |
38 | + $menuL['viewList'] = $top . $setId . 'act=list'; | |
39 | + | |
40 | + $menuL['viewTop'] = $top; | |
41 | + $menuL['viewNewpost'] = $top . $setId . 'act=crtipt'; | |
42 | + $menuL['viewSearch'] = $top . $setId . 'act=srhipt'; | |
43 | + $menuL['viewNotice'] = $top . $setId . 'act=ntce'; | |
44 | + $menuL['viewHome'] = $GLOBALS['CNF']['homepage']; | |
45 | + | |
46 | + | |
47 | + asort( $menuW ); | |
48 | + | |
49 | + $myMenu = ""; | |
50 | + foreach( $menuW as $key => $val ) { | |
51 | + | |
52 | + if ( $menuW['viewTree'] != 0 ) { | |
53 | + //if( $myMenu <> "" ) $myMenu .= " "; | |
54 | + $myMenu .= '<div class="menuElement"><a href="' . $menuL[$key] . '">'; | |
55 | + $myMenu .= $GLOBALS['LNG'][$key]; | |
56 | + $myMenu .= "</a></div>"; | |
57 | + } | |
58 | + | |
59 | + | |
60 | + } | |
61 | + $myMenu = '<div class="menubar">' . $myMenu . '</div><br class="clear">'; | |
62 | + | |
63 | + | |
64 | + return $myMenu; | |
65 | + | |
66 | +} | |
67 | + | |
68 | + | |
69 | +function makePageGuide($page=1, $artSet, $baseSet){ | |
70 | + | |
71 | + $paging = makePaging($page, $artSet['unit'], $artSet['total'], $baseSet); | |
72 | + | |
73 | +$pager =<<< HTML | |
74 | +<div class="pager pageGuide"> | |
75 | +$paging | |
76 | +</div> | |
77 | + | |
78 | +HTML; | |
79 | + | |
80 | + return $pager; | |
81 | + | |
82 | +} | |
83 | + | |
84 | +function makePagenation($page=1, $artSet, $baseSet ){ | |
85 | + | |
86 | + $pager = ""; | |
87 | + | |
88 | +$pager =<<< HTML | |
89 | +<div class="pager pagenation"> | |
90 | +<form method="get" action="{$baseSet['script']}" class="pagenation"> | |
91 | +<input name="id" type="hidden" value="{$baseSet['id']}" /> | |
92 | +<input name="plfm" type="hidden" value="{$baseSet['plfm']}" /> | |
93 | +<input name="act" type="hidden" value="{$baseSet['act']}" /> | |
94 | +<input name="p" type="text" value="" size="2" class="ime_ia" style="width:30px;" /> | |
95 | +<input type="submit" value="{$GLOBALS['LNG']['pageSetButton']}" /> | |
96 | +</form> | |
97 | + | |
98 | +HTML; | |
99 | + | |
100 | + | |
101 | + if ( ! is_numeric($artSet['unit']) or $artSet['unit'] == 0 or empty($artSet['total']) ) { | |
102 | + $pager .= '</div>'; | |
103 | + | |
104 | + } else { | |
105 | + | |
106 | + $paging = makePaging($page, $artSet['unit'], $artSet['total'], $baseSet); | |
107 | + | |
108 | +$pager .=<<< HTML | |
109 | +$paging | |
110 | +</div> | |
111 | +HTML; | |
112 | + | |
113 | + } | |
114 | + | |
115 | + return $pager; | |
116 | + | |
117 | +} | |
118 | + | |
119 | +function makePaging($page=1, $unit, $total, $baseSet){ | |
120 | + | |
121 | + $pager = ""; | |
122 | + $unitName = $GLOBALS['LNG']['articleUnitName']; | |
123 | + $prevLink = $GLOBALS['LNG']['previous']; | |
124 | + $nextLink = $GLOBALS['LNG']['next']; | |
125 | + | |
126 | + | |
127 | + $url = ''; | |
128 | + //echo $total . '-' . $unit; | |
129 | + $pages = ceil($total / $unit); | |
130 | + | |
131 | + | |
132 | + $url = $baseSet['linkBaseUrl'] . '&act=' . $baseSet['act'] . '&p=' ; | |
133 | + if ( $page > 0 and $page < $pages ) { | |
134 | + $nextLink = '<a href="' .$url . ($page+1). '">' .$nextLink. '</a>'; | |
135 | + } | |
136 | + if ( $page > 1 and $page <= $pages ) { | |
137 | + $prevLink = '<a href="' . $url . ($page-1) . '">' .$prevLink. '</a>'; | |
138 | + } | |
139 | + | |
140 | +$pager =<<< HTML | |
141 | +$prevLink $unitName {$page} of <span class="pageTotal">{$pages}</span> $nextLink | |
142 | +HTML; | |
143 | + | |
144 | + | |
145 | + return $pager; | |
146 | + | |
147 | +} | |
148 | + | |
149 | + | |
150 | + | |
151 | + | |
152 | +function makeNew($date, $newDays=3, $pubUrl) { | |
153 | + if (! $date) return ''; | |
154 | + | |
155 | + $newSec = $newDays * 24 * 60 * 60; | |
156 | + $diff = time() - strtotime($date); | |
157 | + //echo $diff ."-" . $newSec; | |
158 | + if ( $diff > $newSec ) return ''; | |
159 | + | |
160 | + $myContent = ''; | |
161 | +$myContent .=<<< HTML | |
162 | + <span class="new"><img src="{$pubUrl}/img/new_icon.gif" alt="new_icon.gif" class="newIcon" /></span> | |
163 | +HTML; | |
164 | + return $myContent; | |
165 | +} | |
166 | + | |
167 | +function makeEmail($email) { | |
168 | + if (! $email) return ''; | |
169 | + | |
170 | + $myContent = ''; | |
171 | + | |
172 | +$myContent .=<<< HTML | |
173 | + <span class="mail"><a href="mailto:{$email}">[Email]</a></span> | |
174 | +HTML; | |
175 | + | |
176 | + return $myContent; | |
177 | +} | |
178 | + | |
179 | +function makeHomepage($homepage) { | |
180 | + if (! $homepage) return ''; | |
181 | + | |
182 | + $myContent = ''; | |
183 | + | |
184 | +$myContent .=<<< HTML | |
185 | + <span class="home"><a href="{$homepage}" alt="home" target="_blank" class="homeLink">[Home]</a></span> | |
186 | +HTML; | |
187 | + | |
188 | + return $myContent; | |
189 | +} | |
190 | + | |
191 | +function makeIcon($iconfile, $pubURL) { | |
192 | + if (! $iconfile) return ''; | |
193 | + | |
194 | + $myContent = ''; | |
195 | + | |
196 | +$myContent .=<<< HTML | |
197 | + <div class="userIcon"><img src="{$pubURL}{$iconfile}" alt="icon" class="userIcon" /></div> | |
198 | +HTML; | |
199 | + | |
200 | + return $myContent; | |
201 | +} | |
202 | + | |
203 | +function makeFtc($ftcolor) { | |
204 | + if (! $ftcolor) return '<span>'; | |
205 | + | |
206 | + $myContent = ''; | |
207 | + | |
208 | +$myContent .=<<< HTML | |
209 | + <span style="color:{$ftcolor};"> | |
210 | +HTML; | |
211 | + | |
212 | + return $myContent; | |
213 | +} | |
214 | + | |
215 | +function makeClipFiles($artId, $clip1, $clip2, $clip3, $pubUrl, $dataUrl) { | |
216 | + if (! $clip1 and $clip2 and $clip3) return ''; | |
217 | + | |
218 | + $myContent = ''; | |
219 | + $dataUrl2 = $dataUrl . "/uploads/" . $artId . "_"; | |
220 | + | |
221 | +$myContent .=<<< HTML | |
222 | + <div class="clipfiles"> | |
223 | +HTML; | |
224 | + | |
225 | +if ( $clip1 ) { | |
226 | +$myContent .=<<< HTML | |
227 | + <span class="clip"><a href="{$dataUrl2}{$clip1}" target="_blank"><img src="{$pubUrl}/img/clip_icon.gif"></a></span> | |
228 | +HTML; | |
229 | +} | |
230 | +if ( $clip2 ) { | |
231 | +$myContent .=<<< HTML | |
232 | + <span class="clip"><a href="{$dataUrl2}{$clip2}" target="_blank"><img src="{$pubUrl}/img/clip.gif"></a></span> | |
233 | +HTML; | |
234 | +} | |
235 | +if ( $clip3 ) { | |
236 | +$myContent .=<<< HTML | |
237 | + <span class="clip"><a href="{$dataUrl2}{$clip3}" target="_blank"><img src="{$pubUrl}/img/clip.gif"></a></span> | |
238 | +HTML; | |
239 | +} | |
240 | + | |
241 | +$myContent .=<<< HTML | |
242 | + </div> | |
243 | +HTML; | |
244 | + | |
245 | + | |
246 | + return $myContent; | |
247 | +} | |
248 | + | |
249 | +function makeFileImages($mode, $artId, $clip1, $clip2, $clip3, $dataUrl) { | |
250 | + if (! $clip1 and $clip2 and $clip3) return ''; | |
251 | + //echo $mode; | |
252 | + if( empty($mode) ) return ''; | |
253 | + | |
254 | + $dataUrl2 = $dataUrl . "/uploads/" . $artId . "_"; | |
255 | + $myContent = ''; | |
256 | + | |
257 | + // | |
258 | + $vh = loadHelper('viewHelper'); | |
259 | + | |
260 | + | |
261 | +$myContent .=<<< HTML | |
262 | + <div class="imageFileView"> | |
263 | +HTML; | |
264 | + | |
265 | +if ( $clip1 and $vh->isImage($dataUrl2.$clip1)!=false ) { | |
266 | +$myContent .=<<< HTML | |
267 | + <div class="clipImage"><img src="{$dataUrl2}{$clip1}"></div> | |
268 | +HTML; | |
269 | +} | |
270 | + | |
271 | +if ( $clip2 and $vh->isImage($dataUrl2.$clip2)!=false ) { | |
272 | +$myContent .=<<< HTML | |
273 | + <div class="clipImage"><img src="{$dataUrl2}{$clip2}"></div> | |
274 | +HTML; | |
275 | +} | |
276 | + | |
277 | +if ( $clip3 and $vh->isImage($dataUrl2.$clip3)!=false ) { | |
278 | +$myContent .=<<< HTML | |
279 | + <div class="clipImage"><img src="{$dataUrl2}{$clip3}"></div> | |
280 | +HTML; | |
281 | +} | |
282 | + | |
283 | +$myContent .=<<< HTML | |
284 | + </div> | |
285 | +HTML; | |
286 | + | |
287 | + return $myContent; | |
288 | +} | |
289 | + | |
290 | +function makeEditButton($articleId, $baseSet, $artlSet) { | |
291 | + if (! $articleId) return ''; | |
292 | + | |
293 | + $myContent = ''; | |
294 | + | |
295 | + if ( $artlSet['edit_mode'] < 1 and $artlSet['delete_mode'] < 1 ) return ''; | |
296 | + | |
297 | + $action = 'modipt'; | |
298 | + $btnName = ''; | |
299 | + if ( $artlSet['edit_mode'] == 1 ) { | |
300 | + $btnName = $GLOBALS['LNG']['modify']; | |
301 | + | |
302 | + } else if ( $artlSet['edit_mode'] == 2 ) { | |
303 | + $btnName = $GLOBALS['LNG']['addMod']; | |
304 | + | |
305 | + } else { | |
306 | + | |
307 | + if ( $artlSet['delete_mode'] == 1 ) { | |
308 | + $btnName = $GLOBALS['LNG']['delete']; | |
309 | + $action = 'delipt'; | |
310 | + } | |
311 | + } | |
312 | + | |
313 | + | |
314 | +if ( $btnName ) { | |
315 | +$myContent .=<<< HTML | |
316 | + <form method="post" action="{$baseSet['script']}" class="button edit"> | |
317 | + <input type="hidden" name="id" value="{$baseSet['id']}" /> | |
318 | + <input type="hidden" name="plfm" value="{$baseSet['plfm']}" /> | |
319 | + <input type="hidden" name="article_id" value="$articleId" /> | |
320 | + <input type="hidden" name="act" value="$action" /> | |
321 | + <input type="submit" value="$btnName" class="button" /> | |
322 | + </form> | |
323 | +HTML; | |
324 | + | |
325 | +} | |
326 | + | |
327 | + return $myContent; | |
328 | +} | |
329 | + | |
330 | + | |
331 | + | |
332 | + | |
333 | +function makeBranch($branches, $parent_id, $branchMap, &$depthBranch, $depth=1) { | |
334 | + | |
335 | + $myContent = ""; | |
336 | + $myChild = ""; | |
337 | + $baseIndent = ' '; | |
338 | + $depthEnd = false; | |
339 | + | |
340 | + $shapes = array( 0=>$GLOBALS['LNG']['branchShape0'], 1=>$GLOBALS['LNG']['branchShape0'], | |
341 | + 2=>$GLOBALS['LNG']['branchShape0'], 3=>$GLOBALS['LNG']['branchShape0'] ); | |
342 | + | |
343 | + | |
344 | + foreach($branches as $key => $row) { | |
345 | + | |
346 | + //echo "[" . $parent_id . "-" . $row['parent_id'] . "]"; | |
347 | + if ( $parent_id == $row['parent_id'] ) { | |
348 | + | |
349 | + | |
350 | + $map = $branchMap[$row['id']]; | |
351 | + $depthBranch[$depth] = $map['shape']; | |
352 | + | |
353 | + $myChild = makeBranch($branches, $row['id'], $branchMap, $depthBranch, $depth + 1); | |
354 | + | |
355 | + if ( $depth > 1 ) { | |
356 | + #$myChild .= $depthBranch[$depth]-1; | |
357 | + } | |
358 | + | |
359 | + //exit; | |
360 | + | |
361 | + $twig = ""; | |
362 | + $brc = ""; | |
363 | + | |
364 | + $depthEnd = false; | |
365 | + for ( $d=1; $d<=$depth; $d++ ) { | |
366 | + if ( $twig!="" ) $twig.=$baseIndent; | |
367 | + | |
368 | + if ( $d < $depth ) { | |
369 | + $brc = $depthBranch[$d]; | |
370 | + if ( $d < $depth and $brc == 1 ) { | |
371 | + $brc = 2; | |
372 | + } | |
373 | + | |
374 | + } else { | |
375 | + $brc = $branchMap[$row['id']]['shape']; | |
376 | + //echo "ID=". $row['id'] . $branchMap[$row['id']]['shape']; | |
377 | + } | |
378 | + | |
379 | + if ( $brc<>3 ) { | |
380 | + $twig .= $shapes[$brc]; | |
381 | + | |
382 | + } else { | |
383 | + | |
384 | + if ( $d == $depth ) { | |
385 | + $twig .= $shapes[$brc]; | |
386 | + | |
387 | + } else { | |
388 | + $twig .= $shapes[0]; | |
389 | + | |
390 | + } | |
391 | + | |
392 | + | |
393 | + } | |
394 | + | |
395 | + } | |
396 | + | |
397 | + #if ( $brc==3 ) $myContent . "end"; | |
398 | + | |
399 | + $myContent .= getBranchHtml($row, $twig, PUBURL); //ここはグローバル変数で | |
400 | + | |
401 | + $myContent .= $myChild; | |
402 | + | |
403 | + | |
404 | + | |
405 | + } | |
406 | + | |
407 | + } | |
408 | + | |
409 | + return $myContent; | |
410 | + | |
411 | +} | |
412 | + | |
413 | +function makeBranchArticle(&$branches, $parent_id, $depth=1, $baseSet, $artlSet) { | |
414 | + | |
415 | + $myContent = ""; | |
416 | + $myChild = ""; | |
417 | + $baseIndent = 6; | |
418 | + | |
419 | + | |
420 | + foreach($branches as $key => $row) { | |
421 | + | |
422 | + //echo "[" . $parent_id . "-" . $row['parent_id'] . "]"; | |
423 | + | |
424 | + if ( $parent_id == $row['parent_id'] ) { | |
425 | + | |
426 | + $myChild = makeBranchArticle($branches, $row['id'], $depth + 1, $baseSet, $artlSet); | |
427 | + | |
428 | + $indent = $baseIndent * $depth; | |
429 | + | |
430 | + $myContent .= getArticleHtml($row, $baseSet, $artlSet, $indent); | |
431 | + | |
432 | + $myContent .= $myChild; | |
433 | + | |
434 | + } | |
435 | + | |
436 | + } | |
437 | + | |
438 | + return $myContent; | |
439 | + | |
440 | +} | |
441 | + | |
442 | +function branchExtender($trees, $parentId, $treeNum ) { | |
443 | + | |
444 | + $myBranch = array(); | |
445 | + foreach($trees as $art) { | |
446 | + if ( $art['parent_id'] != 0 and $art['tree_number'] == $treeNum) { | |
447 | + array_push( $myBranch, $art); | |
448 | + } | |
449 | + } | |
450 | + | |
451 | + $map = array(); | |
452 | + branchSelector($myBranch, $map, $parentId, 0 ); | |
453 | + | |
454 | + | |
455 | + return $map; | |
456 | +} | |
457 | + | |
458 | +function branchSelector($branches, &$map, $parentId, $width=1, $depth=1, &$lastShape=0) { | |
459 | + | |
460 | + $cnt = 1; | |
461 | + $lastId = 0; | |
462 | + $shape = 0; | |
463 | + foreach($branches as $art) { | |
464 | + | |
465 | + if ( $art['parent_id'] == $parentId ) { | |
466 | + | |
467 | + if ( $lastShape <> 3 ) { | |
468 | + $shape = 1; | |
469 | + } else { | |
470 | + $shape = 3; | |
471 | + } | |
472 | + | |
473 | + $map[$art['id']] = array( 'width'=>$width, 'depth'=>$depth, 'shape'=>$shape ); | |
474 | + branchSelector($branches, $map, $art['id'], $width+1, $depth+1 ); | |
475 | + | |
476 | + $lastId = $art['id']; | |
477 | + $cnt += 1; | |
478 | + } | |
479 | + | |
480 | + } | |
481 | + if ( $lastId > 0 ) { | |
482 | + $map[$lastId]['shape'] = 3; | |
483 | + } | |
484 | + | |
485 | + | |
486 | +} | |
487 | + | |
488 | +function makeError($msg, $msgAry) { | |
489 | + if (! $msg) return ''; | |
490 | + | |
491 | + $myContent = ''; | |
492 | + | |
493 | +$myContent .=<<< HTML | |
494 | + <div class="ctr"> | |
495 | + <div class="mainError">{$msg}</div> | |
496 | +HTML; | |
497 | + | |
498 | +foreach ($msgAry as $emsg) { | |
499 | +$myContent .=<<< HTML | |
500 | + <div class="itemError">$emsg</div> | |
501 | +HTML; | |
502 | +} | |
503 | + | |
504 | +$myContent .=<<< HTML | |
505 | + </div> | |
506 | +HTML; | |
507 | + | |
508 | + return $myContent; | |
509 | +} | |
510 | + | |
511 | + | |
512 | + | |
513 | + | |
514 | +/** | |
515 | + * loadLibと同じ | |
516 | + */ | |
517 | +function loadHelper($className) | |
518 | +{ | |
519 | + require_once( APPPATH. "/libs/" . strtolower ($className). '.php' ); | |
520 | + return new $className(); | |
521 | +} | |
522 | + | |
523 | + | |
524 | +?> | |
\ No newline at end of file |
@@ -0,0 +1,40 @@ | ||
1 | +<?php | |
2 | + | |
3 | + | |
4 | +function getLoginHtml($baseSet, $postSet) { | |
5 | + | |
6 | + $err = makeError($postSet['errMessage'], $postSet['errMsgAry']); | |
7 | + | |
8 | + $myContent = ''; | |
9 | +$myContent .=<<< HTML | |
10 | + | |
11 | +<div class="searchInput" style="text-align:center;"> | |
12 | + | |
13 | +<div style="width:500px; border:1px solid #777; margin :10px auto;"> | |
14 | +<form method="post" action="{$baseSet['script']}?act=login" accept-charset="UTF-8"> | |
15 | + | |
16 | + <div class="searchTitle">{$GLOBALS['LNG']['adminAuth']}</div> | |
17 | + <br /> | |
18 | + <div class="searchBody"> | |
19 | + {$err} | |
20 | + <div> | |
21 | + | |
22 | + <input name="word" type="text" value="{$postSet['password']}" size="30" id="searchWord" /> | |
23 | + </div> | |
24 | + <br /> | |
25 | + </div> | |
26 | + | |
27 | + <input type="submit" value="{$GLOBALS['LNG']['searchButton']}" /> | |
28 | + | |
29 | +</form> | |
30 | +</div> | |
31 | + | |
32 | +</div> | |
33 | + | |
34 | +HTML; | |
35 | + | |
36 | + return $myContent; | |
37 | +} | |
38 | + | |
39 | + | |
40 | +?> | |
\ No newline at end of file |
@@ -0,0 +1,245 @@ | ||
1 | +@charset "utf-8"; | |
2 | +/* | |
3 | +Epitta BBS Style Sheet | |
4 | +システムによって自動生成されます。 | |
5 | +変更はoverwrite.cssに行ってください。 | |
6 | + | |
7 | +*/ | |
8 | + | |
9 | + | |
10 | +body { | |
11 | + color: #777777; | |
12 | + font-size:14px; | |
13 | + text-align: center; | |
14 | +} | |
15 | + | |
16 | +input, textarea, select, option, table, tr, th, td { | |
17 | + font-size:14px; | |
18 | +} | |
19 | + | |
20 | +input.ime_ia { | |
21 | + ime-mode: inactive; | |
22 | +} | |
23 | + | |
24 | +input.ime_ac, textarea.ime_ac, { | |
25 | + ime-mode: active; | |
26 | +} | |
27 | + | |
28 | + | |
29 | + | |
30 | +div.container { | |
31 | + width:840px; | |
32 | + text-align: left; | |
33 | + margin-left:auto; | |
34 | + margin-right:auto; | |
35 | + border:1px solid #666; | |
36 | +} | |
37 | + | |
38 | + | |
39 | +div.mainContentOuter { | |
40 | + width:840px; | |
41 | + text-align:center; | |
42 | +} | |
43 | + | |
44 | +div.mainContent { | |
45 | + border: 1px solid black; | |
46 | + width:96%; | |
47 | + text-align:left; | |
48 | + margin:5px auto 5px auto ; | |
49 | + | |
50 | +} | |
51 | + | |
52 | +br.clear, div.clear { | |
53 | + font-size:0px; | |
54 | + height:0px; | |
55 | + visibility: hidden; | |
56 | + clear:both; | |
57 | +} | |
58 | + | |
59 | +div.ctr, td.ctr { | |
60 | + text-align:center; | |
61 | +} | |
62 | + | |
63 | +a { | |
64 | + text-decoration: none; | |
65 | +} | |
66 | + | |
67 | +div.mainError { | |
68 | + color:red; | |
69 | + font-size:120%; | |
70 | + font-weight:bold; | |
71 | +} | |
72 | + | |
73 | +div.itemError { | |
74 | + color:red; | |
75 | + display:inline; | |
76 | + margin-right:20px; | |
77 | +} | |
78 | + | |
79 | + | |
80 | + | |
81 | +div.menubar { | |
82 | + background-color:#ccddff; | |
83 | + margin: 1px 1px; | |
84 | + padding: 1px 4px; | |
85 | + clear:both; | |
86 | +} | |
87 | + | |
88 | +div.menuElement { | |
89 | + width:75px; | |
90 | + float:left; | |
91 | + text-align:center; | |
92 | + border: 1px solid green; | |
93 | +} | |
94 | + | |
95 | +div.pager { | |
96 | + font-size:12px; | |
97 | +} | |
98 | + | |
99 | +div.pager form, div.pager input, div.pager select { | |
100 | + display:inline; | |
101 | + font-size:11px; | |
102 | +} | |
103 | + | |
104 | +div.tree { | |
105 | + padding-top:4px; | |
106 | +} | |
107 | + | |
108 | + | |
109 | + | |
110 | +div.threadChildren { | |
111 | + margin-left:10px; | |
112 | + | |
113 | +} | |
114 | + | |
115 | + | |
116 | +div.articleBoxOut { | |
117 | + border: 1px solid #555; | |
118 | + width:750px; | |
119 | + text-align:left; | |
120 | +} | |
121 | + | |
122 | +div.articleTitleBox { | |
123 | + background-color:#555; | |
124 | + color:#fff; | |
125 | + width:100%; | |
126 | +} | |
127 | + | |
128 | +div.articleAuthorBox { | |
129 | + float: left; | |
130 | + border: 1px solid #ccc; | |
131 | + padding: 3px 3px; | |
132 | + width: 150px; | |
133 | + word-break:break-all; | |
134 | + word-wrap: break-word; | |
135 | +} | |
136 | + | |
137 | +div.articleTextBoxOut { | |
138 | + float: left; | |
139 | + border: 1px solid #ccc; | |
140 | + width: 580px; | |
141 | +} | |
142 | + | |
143 | +div.articleCreate { | |
144 | + font-size:80%; | |
145 | + text-align:right; | |
146 | +} | |
147 | + | |
148 | +div.articleTextBox { | |
149 | + border: 1px solid #cfc; | |
150 | + margin: 5px 0px 5px 5px; | |
151 | + line-height : 22px; | |
152 | + word-break:break-all; | |
153 | + word-wrap: break-word; | |
154 | +} | |
155 | + | |
156 | +div.threadFrame { | |
157 | + border: 1px solid #06f; | |
158 | + | |
159 | +} | |
160 | + | |
161 | + | |
162 | +div.topicFrame table { | |
163 | + width: 100%; | |
164 | + | |
165 | +} | |
166 | + | |
167 | +/* articleInput */ | |
168 | +div.inputForm { | |
169 | + | |
170 | +} | |
171 | + | |
172 | +table.inputOuter { | |
173 | + width:100%; | |
174 | +} | |
175 | + | |
176 | +div.inputForm form{ | |
177 | + margin:0px 0px; | |
178 | + padding:0px 0px; | |
179 | +} | |
180 | + | |
181 | +div.inputForm input.rqd2 { | |
182 | + background-color:#ff9; | |
183 | +} | |
184 | + | |
185 | +div.inputForm textarea.article { | |
186 | + | |
187 | +} | |
188 | + | |
189 | + | |
190 | +div.articleInput { | |
191 | + width:660px; | |
192 | + border:1px solid red; | |
193 | + margin: 5px auto; | |
194 | +} | |
195 | + | |
196 | +div.preview { | |
197 | + margin: 5px 0px 8px 0px; | |
198 | +} | |
199 | +div.previewTitle { | |
200 | + margin-left:5%; | |
201 | + text-align:left; | |
202 | +} | |
203 | +div.preview input.button { | |
204 | + visibility: hidden; | |
205 | +} | |
206 | + | |
207 | +div.previewTitle, div.originTitle, div.responseToTitle { | |
208 | + margin-left:5%; | |
209 | + text-align:left; | |
210 | +} | |
211 | + | |
212 | + | |
213 | +div.origin { | |
214 | + margin-top: 10px; | |
215 | + margin-bottom: 10px; | |
216 | +} | |
217 | + | |
218 | +div.inputForm div.itemName { | |
219 | + float:left; | |
220 | + padding-top: 5px; | |
221 | + text-align:right; | |
222 | + width:120px; | |
223 | + border:0px solid #999; | |
224 | +} | |
225 | + | |
226 | +div.inputForm div.itemInput { | |
227 | + float:left; | |
228 | + margin-bottom:4px; | |
229 | + border:0px solid #999; | |
230 | +} | |
231 | + | |
232 | + | |
233 | +div.inputForm div.left1 { | |
234 | + width:180px; | |
235 | +} | |
236 | + | |
237 | + | |
238 | +div.inputForm div.itemView { | |
239 | + float:left; | |
240 | + margin-top: 6px; | |
241 | + width:250px; | |
242 | + border:0px solid #999; | |
243 | +} | |
244 | + | |
245 | + |