xref: /plugin/siteexport/inc/settings.php (revision b324a1904db918260ecf6c6ae2a8ee1c5f7c9512)
17d101cc1SGerry Weißbach<?php
27d101cc1SGerry Weißbach
37d101cc1SGerry Weißbachif (!defined('DOKU_PLUGIN')) die('meh');
47d101cc1SGerry Weißbachclass settings_plugin_siteexport_settings extends DokuWiki_Plugin
57d101cc1SGerry Weißbach{
67d101cc1SGerry Weißbach    var $fileType = 'html';
77d101cc1SGerry Weißbach    var $exportNamespace = '';
87d101cc1SGerry Weißbach    var $pattern = null;
97d101cc1SGerry Weißbach
107d101cc1SGerry Weißbach    var $isCLI = false;
117d101cc1SGerry Weißbach
127d101cc1SGerry Weißbach    var $depth = '';
137d101cc1SGerry Weißbach
147d101cc1SGerry Weißbach    var $zipFile = '';
157d101cc1SGerry Weißbach//    var $origEclipseZipFile = 'doc.zip';
167d101cc1SGerry Weißbach//    var $eclipseZipFile = '';
177d101cc1SGerry Weißbach    var $addParams = false;
187d101cc1SGerry Weißbach    var $origZipFile = '';
197d101cc1SGerry Weißbach    var $downloadZipFile = '';
2051503e2dSGerry Weißbach    var $exportLinkedPages = true;
217d101cc1SGerry Weißbach    var $additionalParameters = array();
227d101cc1SGerry Weißbach    var $isAuthed = false;
237d101cc1SGerry Weißbach
247d101cc1SGerry Weißbach    var $TOCMapWithoutTranslation = false;
257d101cc1SGerry Weißbach
26f8fd18e7SGerry Weißbach    var $cachetime = 0;
277d101cc1SGerry Weißbach    var $hasValidCacheFile = false;
287d101cc1SGerry Weißbach
297d101cc1SGerry Weißbach    var $useTOCFile = false;
30cb1f35bbSGerry Weißbach    var $cookie = null;
317d101cc1SGerry Weißbach
32cb168401SGerry Weißbach    var $ignoreNon200 = true;
33cb168401SGerry Weißbach
3413326eabSGerry Weißbach    var $defaultLang = 'en';
3513326eabSGerry Weißbach
360571ece2SScrutinizer Auto-Fixer    /**
370571ece2SScrutinizer Auto-Fixer     * @param siteexport_functions $functions
380571ece2SScrutinizer Auto-Fixer     */
39*b324a190SMichael Hamann    function __construct($functions) {
4013326eabSGerry Weißbach        global $ID, $conf;
417d101cc1SGerry Weißbach
422270cdc5SGerry Weißbach        $functions->debug->setDebugFile($this->getConf('debugFile'));
436792d0cfSGerry Weißbach        if (!empty($_REQUEST['debug']) && intval($_REQUEST['debug']) >= 0 && intval($_REQUEST['debug']) <= 5) {
446792d0cfSGerry Weißbach            $functions->debug->setDebugLevel(intval($_REQUEST['debug']));
456792d0cfSGerry Weißbach        } else
466792d0cfSGerry Weißbach        {
476792d0cfSGerry Weißbach            $functions->debug->setDebugLevel($this->getConf('debugLevel'));
486792d0cfSGerry Weißbach        }
49c8022393SGerry Weißbach
50c8022393SGerry Weißbach        $functions->debug->isAJAX = $this->getConf('ignoreAJAXError') ? false : $functions->debug->isAJAX;
512270cdc5SGerry Weißbach
527d101cc1SGerry Weißbach        if (empty($_REQUEST['pattern']))
537d101cc1SGerry Weißbach        {
547d101cc1SGerry Weißbach            $params = $_REQUEST;
557d101cc1SGerry Weißbach            $this->pattern = $functions->requestParametersToCacheHash($params);
567d101cc1SGerry Weißbach        } else {
577d101cc1SGerry Weißbach            // Set the pattern
587d101cc1SGerry Weißbach            $this->pattern = $_REQUEST['pattern'];
597d101cc1SGerry Weißbach        }
607d101cc1SGerry Weißbach
617d101cc1SGerry Weißbach        $this->isCLI = (!$_SERVER['REMOTE_ADDR'] && 'cli' == php_sapi_name());
627d101cc1SGerry Weißbach
63f8fd18e7SGerry Weißbach        $this->cachetime = $this->getConf('cachetime');
64f8fd18e7SGerry Weißbach        if ( !empty( $_REQUEST['disableCache'] ) ) {
65f8fd18e7SGerry Weißbach            $this->cachetime = intval($_REQUEST['disableCache']) == 1 ? 0 : $this->cachetime;
66f8fd18e7SGerry Weißbach        }
67f8fd18e7SGerry Weißbach
687d101cc1SGerry Weißbach        // Load Variables
697d101cc1SGerry Weißbach        $this->origZipFile = $this->getConf('zipfilename');
707d101cc1SGerry Weißbach
71cb168401SGerry Weißbach        $this->ignoreNon200 = $this->getConf('ignoreNon200');
72cb168401SGerry Weißbach
737d101cc1SGerry Weißbach        // ID
747d101cc1SGerry Weißbach        $this->downloadZipFile = $functions->getSpecialExportFileName($this->origZipFile, $this->pattern);
757d101cc1SGerry Weißbach        //        $this->eclipseZipFile = $functions->getSpecialExportFileName(getNS($this->origZipFile) . ':' . $this->origEclipseZipFile, $this->pattern);
767d101cc1SGerry Weißbach
777d101cc1SGerry Weißbach        $this->zipFile = mediaFN($this->downloadZipFile);
787d101cc1SGerry Weißbach
797d101cc1SGerry Weißbach        $this->tmpDir = mediaFN(getNS($this->origZipFile));
8035277e0dSGerry Weißbach        $this->exportLinkedPages = !isset($_REQUEST['exportLinkedPages']) || intval($_REQUEST['exportLinkedPages']) == 1 ? true : false;
817d101cc1SGerry Weißbach
827d101cc1SGerry Weißbach        $this->namespace = $functions->getNamespaceFromID($_REQUEST['ns'], $PAGE);
837d101cc1SGerry Weißbach        $this->addParams = !empty($_REQUEST['addParams']);
847d101cc1SGerry Weißbach
857d101cc1SGerry Weißbach        $this->useTOCFile = !empty($_REQUEST['useTocFile']);
867d101cc1SGerry Weißbach
877d101cc1SGerry Weißbach        // set export Namespace - which is a virtual Root
887d101cc1SGerry Weißbach        $pg = noNS($ID);
897d101cc1SGerry Weißbach        if (empty($this->namespace)) { $this->namespace = $functions->getNamespaceFromID(getNS($ID), $pg); }
90774a858aSGerry Weißbach        $this->exportNamespace = !empty($_REQUEST['ens']) && preg_match("%^" . preg_quote($functions->getNamespaceFromID($_REQUEST['ens'], $pg), '%') . "%", $this->namespace) ? $functions->getNamespaceFromID($_REQUEST['ens'], $pg) : $this->namespace;
917d101cc1SGerry Weißbach
927d101cc1SGerry Weißbach        $this->TOCMapWithoutTranslation = intval($_REQUEST['TOCMapWithoutTranslation']) == 1 ? true : false;
937d101cc1SGerry Weißbach
9413326eabSGerry Weißbach        $this->defaultLang = empty($_REQUEST['defaultLang']) ? $conf['lang'] : $_REQUEST['defaultLang'];
9513326eabSGerry Weißbach
967d101cc1SGerry Weißbach        // Strip params that should be forwarded
977d101cc1SGerry Weißbach        $this->additionalParameters = $_REQUEST;
987d101cc1SGerry Weißbach        $functions->removeWikiVariables($this->additionalParameters, true);
997d101cc1SGerry Weißbach    }
1007d101cc1SGerry Weißbach}
1017d101cc1SGerry Weißbach
102