示例#1
0
 * 
 */
require_once 'lib/impressionist.php';
// Check if we are a user
OCP\User::checkLoggedIn();
OCP\App::checkAppEnabled('impressionist');
$filename = OCP\Util::sanitizeHTML($_GET['file']);
$title = OCP\Util::sanitizeHTML($_GET['name']);
if (!OC_Filesystem::file_exists($filename)) {
    header("HTTP/1.0 404 Not Found");
    $tmpl = new OCP\Template('', '404', 'guest');
    $tmpl->assign('file', $filename);
    $tmpl->printPage();
    exit;
}
$data = OC_Filesystem::file_get_contents($filename);
// Validity for the Impress file (From impress app)
if (stripos($data, '<html') != false or stripos($data, '<head') != false or stripos($data, '<body') != false) {
    echo '<br /><center>This is not a valid impress file. Please check the documentation.</center>';
    exit;
}
if (stripos($data, '<script') != false) {
    echo '<br /><center>Please don\'t use javascript in impress files.</center>';
    exit;
}
header('Content-Type: text/html', true);
OCP\Response::disableCaching();
@ob_end_clean();
\OCA_Impressionist\Storage::showHeader($title);
OC_Filesystem::readfile($filename);
\OCA_Impressionist\Storage::showFooter();