Beispiel #1
0
function menudirlist($result, $arr, $prevcat = "")
{
    $dir = scandir($arr, 1);
    $arr2 = str_replace(ARTICLES, '', $arr);
    $countdir = count($dir) - 2;
    for ($i = 0; $i < $countdir; $i++) {
        $title = "";
        $submenu = "";
        if (preg_match('/\\.dat$/iu', $dir[$i])) {
            if (preg_match('/(^main)|(^404)\\.dat/iu', $dir[$i])) {
                continue;
            }
            if (file_exists($arr . '/' . $dir[$i])) {
                $data = file_get_contents($arr . '/' . $dir[$i]);
                $head = str_replace("\n", '', articlesparam('title', $data));
                $page = $arr2 . '/' . preg_replace('/\\.dat$/i', '.html', $dir[$i]);
                $result[] = array('page' => $page, 'head' => $head, 'title' => $title);
            }
        } else {
            if (preg_match('/(^\\.)|(\\.[a-z]*)/iu', $dir[$i])) {
                continue;
            }
            if (file_exists($arr . '/' . $dir[$i] . '/main.dat')) {
                $data = file_get_contents($arr . '/' . $dir[$i] . '/main.dat');
                $head = str_replace("\n", '', articlesparam('title', $data));
                $page = $arr2 . '/' . $dir[$i] . '/';
                $dir2 = scandir($arr . '/' . $dir[$i], 1);
                foreach ($dir2 as $curcat) {
                    if (!preg_match('/(^main\\.dat)|(^404\\.dat)|(^\\.)|(\\.php$)/iu', $curcat)) {
                        $submenu = '1';
                        break;
                    }
                }
                $result[] = array('page' => $page, 'head' => $head, 'title' => $title, 'submenu' => $submenu);
                $data2 = array('page' => $page, 'head' => $head, 'title' => $title, 'submenu' => $submenu);
            }
            $result = menudirlist($result, $arr . '/' . $dir[$i], $data2);
            if ($submenu == '1') {
                $result[] = array('submenu' => '-1');
            }
        }
    }
    return $result;
}
Beispiel #2
0
 } elseif ($down > 0) {
     if ($down < count($menu)) {
         array_splice($menu, $down + 1, 0, $menu[$down - 1]);
         array_splice($menu, $down - 1, 1);
         savearray($myFile, $menu, 'w', '');
     }
     header('LOCATION:menueditor.php');
     //Новый
 } elseif ($new > 0) {
     $data = array('page' => '/', 'head' => __('Новый пункт'), 'title' => __('Подсказка'));
     savedata($myFile, $data, 'a');
     header('LOCATION:menueditor.php?edit=' . (count($menu) + 1));
     //Сформировать меню
 } elseif ($makemenudb > 0) {
     $data[] = array('page' => '/', 'head' => __('Главная'), 'title' => '');
     $data = menudirlist($data, ARTICLES);
     savedataarray($myFile, $data, 'w');
     header('LOCATION:menueditor.php');
     //Редактирование
 } elseif ($edit > 0) {
     $countmenu = count($menu);
     for ($i = 1; $i <= $countmenu; $i++) {
         $menu_item = unserialize($menu[$i - 1]);
         if ($menu_item == "") {
             continue;
         }
         @($page = $menu_item['page']);
         @($head = $menu_item['head']);
         @($title = $menu_item['title']);
         @($blank = $menu_item['blank']);
         @($submenu = $menu_item['submenu']);