198 |
198 |
}
|
199 |
199 |
|
200 |
200 |
|
201 |
|
$database = new database(DB_URL);
|
|
201 |
/**********************************************************
|
|
202 |
* - core-module menu_link
|
|
203 |
*/
|
|
204 |
// create table
|
|
205 |
$table = TABLE_PREFIX ."mod_menu_link";
|
|
206 |
$database->query("DROP TABLE IF EXISTS `$table`");
|
|
207 |
$database->query("
|
|
208 |
CREATE TABLE `$table` (
|
|
209 |
`section_id` INT(11) NOT NULL DEFAULT '0',
|
|
210 |
`page_id` INT(11) NOT NULL DEFAULT '0',
|
|
211 |
`target_page_id` INT(11) NOT NULL DEFAULT '0',
|
|
212 |
`anchor` VARCHAR(255) NOT NULL DEFAULT '' ,
|
|
213 |
PRIMARY KEY (`section_id`)
|
|
214 |
)
|
|
215 |
");
|
|
216 |
// fetch all menu_link-pages in $pages
|
|
217 |
$pages = array();
|
|
218 |
$table_p = TABLE_PREFIX.'pages';
|
|
219 |
$table_s = TABLE_PREFIX.'sections';
|
|
220 |
$query_page = $database->query("SELECT p.* FROM $table_p AS p, $table_s AS s WHERE p.page_id=s.page_id AND s.module = 'menu_link'");
|
|
221 |
if($query_page->numRows() > 0) {
|
|
222 |
while($page = $query_page->fetchRow()) {
|
|
223 |
$pages[$page['page_id']]['page_details'] = $page;
|
|
224 |
}
|
|
225 |
}
|
|
226 |
// get all related files with content from pages/ in $pages, too
|
|
227 |
function list_files_dirs($dir, $depth=true, $files=array(), $dirs=array()) {
|
|
228 |
$dh=opendir($dir);
|
|
229 |
while(($file = readdir($dh)) !== false) {
|
|
230 |
if($file == '.' || $file == '..') {
|
|
231 |
continue;
|
|
232 |
}
|
|
233 |
if(is_dir($dir.'/'.$file)) {
|
|
234 |
if($depth) {
|
|
235 |
$dirs[] = $dir.'/'.$file;
|
|
236 |
list($files, $dirs) = list_files_dirs($dir.'/'.$file, $depth, $files, $dirs);
|
|
237 |
}
|
|
238 |
} else {
|
|
239 |
$files[] = $dir.'/'.$file;
|
|
240 |
}
|
|
241 |
}
|
|
242 |
closedir($dh);
|
|
243 |
natcasesort($files);
|
|
244 |
natcasesort($dirs);
|
|
245 |
return(array($files, $dirs));
|
|
246 |
}
|
|
247 |
list($files, $dirs) = list_files_dirs(WB_PATH.PAGES_DIRECTORY);
|
|
248 |
foreach($files as $file) {
|
|
249 |
if(($content = implode('', file($file))) !== FALSE) {
|
|
250 |
if(preg_match('/\$page_id = (\d+)/', $content, $matches)) {
|
|
251 |
if(array_key_exists($matches[1], $pages)) {
|
|
252 |
$pages[$matches[1]]['file_content'] = $content;
|
|
253 |
$pages[$matches[1]]['filename'] = $file;
|
|
254 |
}
|
|
255 |
}
|
|
256 |
}
|
|
257 |
}
|
|
258 |
// try to convert old menu_links to new ones
|
|
259 |
foreach($pages as $p) {
|
|
260 |
$page = $p['page_details'];
|
|
261 |
$file_content = $p['file_content'];
|
|
262 |
$filename = $p['filename'];
|
|
263 |
$link = $p['page_details']['link'];
|
|
264 |
//var_dump($page);var_dump($file_content);var_dump($filename);var_dump($link);
|
202 |
265 |
|
|
266 |
// This part is still missing
|
|
267 |
|
|
268 |
|
|
269 |
}
|
|
270 |
|
|
271 |
|
203 |
272 |
//******************************************************************************
|
204 |
273 |
//Start of upgrade script for the form modul
|
205 |
274 |
//******************************************************************************
|
upgrade-script: added code to convert old menu_links to new ones (partly)