$includeFileContents = Validator::getBool(@$_GET['includeFileContents']); $writer = new Utils_OutputWriter(); if (defined('__TEXTCUBE_BACKUP__')) { if (!file_exists(__TEXTCUBE_CACHE_DIR__ . '/backup')) { mkdir(__TEXTCUBE_CACHE_DIR__ . '/backup'); @chmod(__TEXTCUBE_CACHE_DIR__ . '/backup', 0777); } if (!is_dir(__TEXTCUBE_CACHE_DIR__ . '/backup')) { exit; } if ($writer->openFile(__TEXTCUBE_CACHE_DIR__ . "/backup/{$blogid}.xml")) { } else { exit; } } else { if ($writer->openStdout()) { header('Content-Disposition: attachment; filename="Textcube-Backup-' . getBlogName($blogid) . "-" . Timestamp::getDate() . '.xml"'); header('Content-Description: Textcube Backup Data'); header('Content-Transfer-Encoding: binary'); header('Content-Type: application/xml'); } else { exit; } } $newlineStyle = !is_null(Setting::getServiceSettingGlobal('newlineStyle')) ? ' format="' . Setting::getServiceSettingGlobal('newlineStyle') . '"' : ''; $writer->write('<?xml version="1.0" encoding="utf-8" ?>'); $writer->write('<blog type="tattertools/1.1" extension="textcube/2.0" migrational="false">'); $setting = new BlogSetting(); if ($setting->load()) { $setting->escape(); $writer->write('<setting>' . '<name>' . $setting->name . '</name>' . '<secondaryDomain>' . $setting->secondaryDomain . '</secondaryDomain>' . '<defaultDomain>' . Validator::getBit($setting->defaultDomain) . '</defaultDomain>' . '<title>' . $setting->title . '</title>' . '<description>' . Utils_Unicode::correct($setting->description) . '</description>' . '<banner><name>' . $setting->banner . '</name>');