public function Export()
 {
     set_time_limit(3600);
     $vs_xml = ConfigurationExporter::exportConfigurationAsXML($this->request->config->get('app_name'), _t('Profile created on %1 by %2', caGetLocalizedDate(), $this->request->user->get('fname') . ' ' . $this->request->user->get('lname')), 'base', '');
     $this->view->setVar('profile', $vs_xml);
     $this->view->setVar('profile_file_name', $this->request->config->get('app_name') . '_config.xml');
     $this->render('export_configuration_binary.php');
     return;
 }
Пример #2
0
 /**
  * Export current system configuration as an XML installation profile
  */
 public static function export_profile($po_opts = null)
 {
     require_once __CA_LIB_DIR__ . "/ca/ConfigurationExporter.php";
     if (!class_exists("DOMDocument")) {
         CLIUtils::addError(_t("The PHP DOM extension is required to export profiles"));
         return false;
     }
     $vs_output = $po_opts->getOption("output");
     $va_output = explode("/", $vs_output);
     array_pop($va_output);
     if ($vs_output && !is_dir(join("/", $va_output))) {
         CLIUtils::addError(_t("Cannot write profile to '%1'", $vs_output));
         return false;
     }
     $vs_profile = ConfigurationExporter::exportConfigurationAsXML($po_opts->getOption("name"), $po_opts->getOption("description"), $po_opts->getOption("base"), $po_opts->getOption("infoURL"));
     if ($vs_output) {
         file_put_contents($vs_output, $vs_profile);
     } else {
         print $vs_profile;
     }
     return true;
 }