public function execute(array $args) { try { SitemapXMLFileService::try_to_generate(); CLIOutput::writeln('The sitemap.xml file has been successfully generated'); } catch (IOException $e) { CLIOutput::writeln('The sitemap.xml couldn\'t be generated probably because it\'s unwritable.'); } }
private function build_form() { $this->form = new HTMLForm('sitemap_global_config', SitemapUrlBuilder::get_general_config()->rel()); $fieldset = new FormFieldsetHTML('general_config', $this->lang['general_config']); $this->form->add_fieldset($fieldset); $fieldset->add_field(new FormFieldCheckbox('enable_sitemap_xml', $this->lang['auto_generate_xml_file'], SitemapXMLFileService::is_xml_file_generation_enabled() ? FormFieldCheckbox::CHECKED : FormFieldCheckbox::UNCHECKED, array('events' => array('click' => 'if ($FF("enable_sitemap_xml").getValue()) { $FF("file_life_time").enable(); } else { $FF("file_life_time").disable(); }')))); $fieldset->add_field(new FormFieldNumberEditor('file_life_time', $this->lang['xml_file_life_time'], SitemapXMLFileService::get_life_time(), array('required' => true, 'min' => 0, 'description' => $this->lang['xml_file_life_time_explain'], 'hidden' => !SitemapXMLFileService::is_xml_file_generation_enabled()), array(new FormFieldConstraintIntegerRange(1, 50)))); $this->submit_button = new FormButtonDefaultSubmit(); $this->form->add_button($this->submit_button); $this->form->add_button(new FormButtonReset()); }
public function execute(HTTPRequestCustom $request) { $view = new FileTemplate('sitemap/GenerateXMLSitemapController.tpl'); $lang = LangLoader::get('common', 'sitemap'); $view->add_lang($lang); try { SitemapXMLFileService::try_to_generate(); } catch (IOException $ex) { $view->put_all(array('C_GOT_ERROR' => true)); } $view->put_all(array('U_GENERATE' => SitemapUrlBuilder::get_xml_file_generation()->rel())); $response = new AdminSitemapResponse($view); $response->get_graphical_environment()->set_page_title($lang['generate_xml_file'], $lang['sitemap']); return $response; }
public function execute(HTTPRequestCustom $request) { $sitemap = SitemapService::get_public_sitemap(); AppContext::get_response()->set_header('content-type', 'text/xml'); return new SiteNodisplayResponse($sitemap->export(SitemapXMLFileService::get_export_config())); }
/** * {@inheritDoc} */ public function on_changeday(Date $yesterday, Date $today) { SitemapXMLFileService::generate_if_needed(); }