<?php

session_start();

if(isset($_GET['show_old']) === false && isset($_SESSION['show_old']) === false) {
    header('Location: http://documentation.boostmyshop.com');
    exit;
}
$_SESSION['show_old'] = true;

define('BASE_DIR', dirname(__FILE__));
define('BASE_DOC_DIR', BASE_DIR . '/docs/');
define('BASE_DIR_IMG', BASE_DIR . '/engine/img/');
define('ALLOWED_TAGS', '<br><p><li><img><ul><ol><b><u><i><h1><h2><h3><h4><strong><table><span><em><th><td><tr>');

ini_set('display_errors', 1);

//include depending of action
$action = (isset($_GET['action']) ? $_GET['action'] : 'index');
switch ($action) {
    
    case 'edit':
        include ('engine/class/Authorization.php');
        include('engine/class/toolbar.php');
        include('engine/class/translate.php');
        include('engine/ui/edit.php');
        break;
    
    case 'search':
        include ('engine/class/Authorization.php');
        include('engine/class/translate.php');
        include('engine/class/docs.php');
        include('engine/class/search.php');
        include('engine/ui/search.php');
        break;
    
    case 'show_content':
        include ('engine/class/docs.php');
        include ('engine/class/menu.php');
        include ('engine/class/Authorization.php');
        include('engine/class/translate.php');
        include('engine/ui/content.php');
        break;
    
    case 'set_current_doc':
        include('engine/class/docs.php');
        Docs::setCurrentDoc($_GET['doc']);
        header('Location: controller.php?action=index');
        break;
    
    case 'set_language':
        include('engine/class/translate.php');
        Translate::setLanguage($_GET['language']);
        header('Location: controller.php?action=index');
        break;
    
    case 'save_content':
        include('engine/class/translate.php');
        include('engine/class/edit.php');
        Edit::save(BASE_DIR.$_POST['path'], $_POST['title'], $_POST['content'], $_POST['language']);
        header('Location: controller.php?action=index&autoSelectPath='.  urlencode($_POST['path']));
        break;
    
    case 'reset_doc':
       include('engine/class/docs.php');
       Docs::resetCurrentDoc();
       header('Location: controller.php?action=index');
       break;
   
   case 'add_children':
       include('engine/class/docs.php');
       $name = stripslashes($_GET['name']);
       Docs::addChildren($_GET['path'], $name);
       header('Location: controller.php?action=index');
       break;
   
   case 'add_brother':
       include('engine/class/docs.php');
       $name = stripslashes($_GET['name']);
       Docs::addBrother($_GET['path'], $name);
       header('Location: controller.php?action=index');
       break;
   
   case 'delete':
       include('engine/class/docs.php');
       Docs::delete($_GET['path']);
       header('Location: controller.php?action=index');
       break;
   
   case 'pdf_download':
       include('engine/class/docs.php');
       include('engine/lib/fpdf/fpdf.php');
       include('engine/lib/fpdf/force_justify.php');
       include('engine/class/pdf.php');
       include('engine/class/menu.php');
       include('engine/class/translate.php');
       $obj = new WikiDocPDF();
       $obj->downloadDoc(Docs::getCurrentDoc());
       break;
   
   case 'add_root_documentation':
       include('engine/class/docs.php');
       $name = $_GET['name'];
       Docs::addRootDocumentation($name);
       header('Location: controller.php?action=index');
       break;
   
   case 'add_section':
       include('engine/class/docs.php');
       $name = $_GET['name'];
       Docs::addSection($name);
       header('Location: controller.php?action=index');
       break;
   
   case 'rename_folder':
       include('engine/class/docs.php');
       $name = $_GET['name'];
       Docs::renameFolder($_GET['folderName'], $_GET['path'], $name);
       header('Location: controller.php?action=index');
       break;
   
    default:
        include ('engine/class/menu.php');
        include ('engine/class/toolbar.php');
        include ('engine/class/translate.php');
        include ('engine/class/docs.php');
        include ('engine/class/Authorization.php');

        //force current doc
        if (isset($_GET['autoSelectPath']))
        {
            Authorization::EvaluatePath($_GET['autoSelectPath']);
            $t = explode('/', $_GET['autoSelectPath']);
            $doc = $t[2];
            Docs::setCurrentDoc($doc);
        }
        
        include ('engine/ui/index.php');
        
        break;
}

