// Initialize globals // -------------------------------------------------------------------------- $wikiUser = $wigit->getAuthenticatedUser(); try { $wigit->checkSetup(); } catch (\RuntimeException $e) { $errorMsg = "Check setup: " . (string) $e; include $wigit->getThemeDir() . '/error.php'; exit; } // -------------------------------------------------------------------------- // Process request // -------------------------------------------------------------------------- $query = new Query($config); $wigit->query = $query; $wikiPage = $query->getPagename(); $wikiFilename = $wigit->nameToFile($wikiPage); $wikiFile = __DIR__ . "/" . $config->data_dir . "/" . $wikiFilename; if ($query->getAction() == 'POST') { // Save (TODO: does not work for page named "./%") $handle = fopen($wikiFile, "w"); $data = $query->getParam('data'); fputs($handle, stripslashes($data)); fclose($handle); // TODO: if page does not exist use "Created" $commitMessage = addslashes("Changed {$wikiPage}"); $author = addslashes($wigit->getAuthorForUser($wigit->getUser())); $wigit->createNewPage($wikiPage, $author, $commitMessage); header("Location: " . $query->getURL($wikiPage)); exit; } else {