Index: core/admin_templates/categories/categories_edit.tpl =================================================================== --- core/admin_templates/categories/categories_edit.tpl +++ core/admin_templates/categories/categories_edit.tpl @@ -78,7 +78,7 @@ <inp2:m_RenderElement name="inp_edit_category" prefix="c" field="SymLinkCategoryId" title="la_fld_SymLinkCategoryId"/> - <inp2:m_RenderElement name="subsection" prefix="c" fields="Title,MenuTitle,FriendlyURL,ParentId,Template,FormId,FormSubmittedTemplate,IsMenu,Type,Protected" title="la_section_Page"/> + <inp2:m_RenderElement name="subsection" prefix="c" fields="Title,MenuTitle,FriendlyURL,ParentId,Template,FormId,FormSubmittedTemplate,IsMenu,Type,Protected,IncludeInSitemap" title="la_section_Page"/> <inp2:m_RenderElement name="inp_edit_box_ml" prefix="c" field="Title" title="la_fld_PageContentTitle" size="40"/> <inp2:m_RenderElement name="inp_edit_box_ml" prefix="c" field="MenuTitle" title="la_fld_PageMentTitle" size="40"/> @@ -147,6 +147,8 @@ <inp2:m_RenderElement name="inp_label" prefix="c" field="Protected" title="la_fld_Protected"/> </inp2:m_if> + <inp2:m_RenderElement name="inp_edit_checkbox" prefix="c" field="IncludeInSitemap" title="la_fld_IncludeInSitemap"/> + <inp2:m_RenderElement name="subsection" prefix="c" fields="Status,DirectLinkEnabled,RequireSSL,RequireLogin,NewItem,EditorsPick,Priority,UseMenuIconUrl,MenuIconUrl,UseExternalUrl,ExternalUrl,CreatedOn,MetaKeywords,MetaDescription,IndexTools" title="la_section_Properties"/> <inp2:m_if check="c_PageEditable"> <inp2:m_RenderElement name="inp_edit_radio" prefix="c" field="Status" title="la_fld_Status"/> @@ -315,4 +317,4 @@ disable_categories('<inp2:c_InputName name="ParentId"/>', <inp2:c_AllowedCategoriesJSON/>); </script> -<inp2:m_include t="incs/footer"/> \ No newline at end of file +<inp2:m_include t="incs/footer"/> Index: core/install/cache/class_structure.php =================================================================== --- core/install/cache/class_structure.php +++ core/install/cache/class_structure.php @@ -127,6 +127,7 @@ 'ModulesTagProcessor' => '/core/units/modules/modules_tag_processor.php', 'NParser' => '/core/kernel/nparser/nparser.php', 'NParserCompiler' => '/core/kernel/nparser/compiler.php', + 'NonSitemapSectionVisibility' => '/core/kernel/constants.php', 'POP3Helper' => '/core/units/helpers/pop3_helper.php', 'PageHelper' => '/core/units/helpers/page_helper.php', 'PageRevisionEventHandler' => '/core/units/page_revisions/page_revision_eh.php', @@ -167,6 +168,7 @@ 'SiteConfigTagProcessor' => '/core/units/sections/site_config_tp.php', 'SiteDomainEventHandler' => '/core/units/site_domains/site_domain_eh.php', 'SiteHelper' => '/core/units/helpers/site_helper.php', + 'SitemapHelper' => '/core/units/helpers/sitemap_helper.php', 'SkinEventHandler' => '/core/units/skins/skin_eh.php', 'SkinHelper' => '/core/units/helpers/skin_helper.php', 'SpamHelper' => '/core/units/helpers/spam_helper.php', @@ -1135,6 +1137,10 @@ 0 => 'kHelper', ), ), + 'NonSitemapSectionVisibility' => array( + 'type' => 1, + 'modifiers' => 0, + ), 'POP3Helper' => array( 'type' => 1, 'modifiers' => 0, @@ -1403,6 +1409,13 @@ 0 => 'kHelper', ), ), + 'SitemapHelper' => array( + 'type' => 1, + 'modifiers' => 0, + 'extends' => array( + 0 => 'kHelper', + ), + ), 'SkinEventHandler' => array( 'type' => 1, 'modifiers' => 0, Index: core/install/english.lang =================================================================== --- core/install/english.lang +++ core/install/english.lang @@ -209,6 +209,7 @@ <PHRASE Label="la_config_SessionCookieDomains" Module="Core" Type="1">U2Vzc2lvbiBDb29raWUgRG9tYWlucyAoc2luZ2xlIGRvbWFpbiBwZXIgbGluZSk=</PHRASE> <PHRASE Label="la_config_SessionIPAddressCheck" Module="Core" Type="1">U2Vzc2lvbiBTZWN1cml0eSBDaGVjayBiYXNlZCBvbiBJUA==</PHRASE> <PHRASE Label="la_config_SessionLogRotationInterval" Module="Core" Type="1">S2VlcCAiU2Vzc2lvbiBMb2ciIGZvcg==</PHRASE> + <PHRASE Label="la_config_SitemapInvisibleCategoriesCatalogVisibility" Module="Core" Type="1">U2VjdGlvbnMgaGlkZGVuIGZyb20gU2l0ZW1hcA==</PHRASE> <PHRASE Label="la_config_SiteNameSubTitle" Module="Core" Type="1">V2Vic2l0ZSBTdWJ0aXRsZQ==</PHRASE> <PHRASE Label="la_config_site_zone" Module="Core" Type="1">VGltZSB6b25lIG9mIHRoZSBzaXRl</PHRASE> <PHRASE Label="la_config_SoftMaintenanceTemplate" Module="Core" Type="1" Hint="VGhpcyB0ZW1wbGF0ZSB3aWxsIGJlIHNob3duIHRvIHRoZSBGcm9udCBFbmQgdXNlcnMgd2hlbiBTb2Z0IE1haW50ZW5hbmNlIG1vZGUgaXMgYWN0aXZlLg==">VGVtcGxhdGUgZm9yIFNvZnQgTWFpbnRlbmFuY2U=</PHRASE> @@ -490,6 +491,7 @@ <PHRASE Label="la_fld_ImportOverwrite" Module="Core" Type="1" Hint="RW5hYmxpbmcgdGhpcyBvcHRpb24gd2lsbCB1bmRvIGFueSBjaGFuZ2VzIHlvdSBoYXZlIG1hZGUgdG8gZXhpc3RpbmcgcGhyYXNlcw==">T3ZlcndyaXRlIEV4aXN0aW5nIFBocmFzZXM=</PHRASE> <PHRASE Label="la_fld_ImportSynced" Module="Core" Type="1" Hint="RW5hYmxpbmcgdGhpcyBvcHRpb24gd2lsbCBtYXJrIGFsbCBuZXcgbGFiZWxzIGZyb20gdGhpcyBsYW5ndWFnZSBwYWNrIHN5bmNlZCB3aXRoIGFsbCBvdGhlciBsYW5ndWFnZXMu">SW1wb3J0IE5ldyBQaHJhc2VzIGFzIFN5bmNlZA==</PHRASE> <PHRASE Label="la_fld_IncludeFieldTitles" Module="Core" Type="1">SW5jbHVkZSBmaWVsZCB0aXRsZXM=</PHRASE> + <PHRASE Label="la_fld_IncludeInSitemap" Module="Core" Type="1">SW5jbHVkZSBpbiBTaXRlbWFw</PHRASE> <PHRASE Label="la_fld_IncludeSublevels" Module="Core" Type="1" Column="SW5jbHVkZSBTdWJsZXZlbHM=">SW5jbHVkZSBTdWJsZXZlbHM=</PHRASE> <PHRASE Label="la_fld_InputDateFormat" Module="Core" Type="1">SW5wdXQgRGF0ZSBGb3JtYXQ=</PHRASE> <PHRASE Label="la_fld_InputTimeFormat" Module="Core" Type="1">SW5wdXQgVGltZSBGb3JtYXQ=</PHRASE> @@ -841,6 +843,7 @@ <PHRASE Label="la_opt_Address" Module="Core" Type="1">QWRkcmVzcw==</PHRASE> <PHRASE Label="la_opt_After" Module="Core" Type="1">QWZ0ZXI=</PHRASE> <PHRASE Label="la_opt_Allow" Module="Core" Type="1">QWxsb3c=</PHRASE> + <PHRASE Label="la_opt_AlwaysShownInCatalog" Module="Core" Type="1">QWx3YXlzIFNob3duIGluIENhdGFsb2c=</PHRASE> <PHRASE Label="la_opt_AnimationCustom" Module="Core" Type="1">Q3VzdG9t</PHRASE> <PHRASE Label="la_opt_AnimationFade" Module="Core" Type="1">RmFkZQ==</PHRASE> <PHRASE Label="la_opt_AnimationSlide" Module="Core" Type="1">U2xpZGU=</PHRASE> @@ -982,6 +985,7 @@ <PHRASE Label="la_opt_Semicolon" Module="Core" Type="1">U2VtaS1jb2xvbg==</PHRASE> <PHRASE Label="la_opt_Sent" Module="Core" Type="1">U2VudA==</PHRASE> <PHRASE Label="la_opt_September" Module="Core" Type="1">U2VwdGVtYmVy</PHRASE> + <PHRASE Label="la_opt_ShownInCatalogOnlyInDebugMode" Module="Core" Type="1">U2hvd24gaW4gQ2F0YWxvZyBPbmx5IGluIERlYnVnIE1vZGU=</PHRASE> <PHRASE Label="la_opt_Silent" Module="Core" Type="1">U2lsZW50</PHRASE> <PHRASE Label="la_opt_Skipped" Module="Core" Type="1">U2tpcHBlZA==</PHRASE> <PHRASE Label="la_opt_Space" Module="Core" Type="1">U3BhY2U=</PHRASE> Index: core/install/install_data.sql =================================================================== --- core/install/install_data.sql +++ core/install/install_data.sql @@ -13,10 +13,11 @@ INSERT INTO SystemSettings VALUES(DEFAULT, 'RecycleBinFolder', '', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_RecycleBinFolder', 'text', NULL, NULL, 10.10, 0, 0, NULL); INSERT INTO SystemSettings VALUES(DEFAULT, 'CheckViewPermissionsInCatalog', '0', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_CheckViewPermissionsInCatalog', 'radio', NULL, '1=la_Yes||0=la_No', 10.11, 0, 1, 'hint:la_config_CheckViewPermissionsInCatalog'); INSERT INTO SystemSettings VALUES(DEFAULT, 'CategoryPermissionRebuildMode', '3', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_CategoryPermissionRebuildMode', 'select', NULL, '1=la_opt_Manual||2=la_opt_Silent||3=la_opt_Automatic', 10.12, 0, 0, 'hint:la_config_CategoryPermissionRebuildMode'); -INSERT INTO SystemSettings VALUES(DEFAULT, 'FilenameSpecialCharReplacement', '-', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_FilenameSpecialCharReplacement', 'select', NULL, '_=+_||-=+-', 10.13, 0, 0, NULL); -INSERT INTO SystemSettings VALUES(DEFAULT, 'Search_MinKeyword_Length', '3', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_Search_MinKeyword_Length', 'text', NULL, NULL, 10.14, 0, 0, NULL); -INSERT INTO SystemSettings VALUES(DEFAULT, 'ExcludeTemplateSectionsFromSearch', '0', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_ExcludeTemplateSectionsFromSearch', 'checkbox', '', '', 10.15, 0, 0, NULL); -INSERT INTO SystemSettings VALUES(DEFAULT, 'UpdateCountersOnFilterChange', '1', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_UpdateCountersOnFilterChange', 'checkbox', '', '', 10.16, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'SitemapInvisibleCategoriesCatalogVisibility', '1', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_SitemapInvisibleCategoriesCatalogVisibility', 'radio', NULL, '1=la_opt_AlwaysShownInCatalog||2=la_opt_ShownInCatalogOnlyInDebugMode', 10.13, 0, 0, ''); +INSERT INTO SystemSettings VALUES(DEFAULT, 'FilenameSpecialCharReplacement', '-', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_FilenameSpecialCharReplacement', 'select', NULL, '_=+_||-=+-', 10.14, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'Search_MinKeyword_Length', '3', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_Search_MinKeyword_Length', 'text', NULL, NULL, 10.15, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'ExcludeTemplateSectionsFromSearch', '0', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_ExcludeTemplateSectionsFromSearch', 'checkbox', '', '', 10.16, 0, 0, NULL); +INSERT INTO SystemSettings VALUES(DEFAULT, 'UpdateCountersOnFilterChange', '1', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_UpdateCountersOnFilterChange', 'checkbox', '', '', 10.17, 0, 0, NULL); INSERT INTO SystemSettings VALUES(DEFAULT, 'Category_MetaKey', '', 'In-Portal', 'in-portal:configure_categories', 'la_Text_MetaInfo', 'la_category_metakey', 'textarea', '', '', 20.01, 0, 1, NULL); INSERT INTO SystemSettings VALUES(DEFAULT, 'Category_MetaDesc', '', 'In-Portal', 'in-portal:configure_categories', 'la_Text_MetaInfo', 'la_category_metadesc', 'textarea', '', '', 20.02, 0, 1, NULL); Index: core/install/install_schema.sql =================================================================== --- core/install/install_schema.sql +++ core/install/install_schema.sql @@ -597,6 +597,7 @@ PromoBlockGroupId int(10) unsigned NOT NULL DEFAULT '0', RequireSSL tinyint(4) NOT NULL DEFAULT '0', RequireLogin tinyint(4) NOT NULL DEFAULT '0', + IncludeInSitemap tinyint(4) NOT NULL DEFAULT '1', PRIMARY KEY (CategoryId), UNIQUE KEY ResourceId (ResourceId), KEY ParentId (ParentId), Index: core/install/upgrades.sql =================================================================== --- core/install/upgrades.sql +++ core/install/upgrades.sql @@ -3039,3 +3039,9 @@ ADD INDEX (`Status`); INSERT INTO SystemSettings VALUES(DEFAULT, 'SessionLogRotationInterval', '2629800', 'In-Portal', 'in-portal:configure_advanced', 'la_section_SettingsLogs', 'la_config_SessionLogRotationInterval', 'select', '', '86400=la_opt_OneDay||604800=la_opt_OneWeek||1209600=la_opt_TwoWeeks||2629800=la_opt_OneMonth||7889400=la_opt_ThreeMonths||31557600=la_opt_OneYear||63115200=la_opt_TwoYears||94672800=la_opt_ThreeYears||157788000=la_opt_FiveYears||-1=la_opt_EmailLogKeepForever', 65.05, 0, 1, NULL); + +ALTER TABLE Categories ADD IncludeInSitemap TINYINT(4) NOT NULL DEFAULT 1; +UPDATE SystemSettings +SET DisplayOrder = ROUND(DisplayOrder + 0.01, 2) +WHERE (DisplayOrder BETWEEN 10.13 AND 10.18) AND (ModuleOwner = 'In-Portal') AND (Section = 'in-portal:configure_categories'); +INSERT INTO SystemSettings VALUES(DEFAULT, 'SitemapInvisibleCategoriesCatalogVisibility', '1', 'In-Portal', 'in-portal:configure_categories', 'la_title_General', 'la_config_SitemapInvisibleCategoriesCatalogVisibility', 'radio', NULL, '1=la_opt_AlwaysShownInCatalog||2=la_opt_ShownInCatalogOnlyInDebugMode', 10.13, 0, 0, ''); Index: core/kernel/constants.php =================================================================== --- core/kernel/constants.php +++ core/kernel/constants.php @@ -233,3 +233,9 @@ const STATUS_SKIPPED = 3; } + + class NonSitemapSectionVisibility + { + const ALWAYS_SHOWN = 1; + const SHOWN_ONLY_IN_DEBUG_MODE = 2; + } Index: core/units/admin/admin_config.php =================================================================== --- core/units/admin/admin_config.php +++ core/units/admin/admin_config.php @@ -26,9 +26,10 @@ 1 => 'event', ), - 'ScheduledTasks' => Array ( - 'optimize_performance' => Array ('EventName' => 'OnOptimizePerformance', 'RunSchedule' => '0 0 * * *'), - 'pre_resize_images' => Array ('EventName' => 'OnPreResizeImages', 'RunSchedule' => '0 * * * *'), + 'ScheduledTasks' => array( + 'optimize_performance' => array('EventName' => 'OnOptimizePerformance', 'RunSchedule' => '0 0 * * *'), + 'pre_resize_images' => array('EventName' => 'OnPreResizeImages', 'RunSchedule' => '0 * * * *'), + 'generate_sitemap' => array('EventName' => 'OnGenerateSitemap', 'RunSchedule' => '0 0 * * *'), ), 'TitlePresets' => Array ( @@ -98,4 +99,4 @@ 'Content' => Array ('type' => 'string', 'default' => ''), ), -); \ No newline at end of file +); Index: core/units/admin/admin_events_handler.php =================================================================== --- core/units/admin/admin_events_handler.php +++ core/units/admin/admin_events_handler.php @@ -1220,6 +1220,21 @@ } } } + + /** + * [SCHEDULED TASK] Generate sitemaps. + * + * @param kEvent $event Event object. + * + * @return void + */ + protected function OnGenerateSitemap(kEvent $event) + { + /** @var $sitemap_helper SitemapHelper */ + $sitemap_helper = $this->Application->recallObject('SitemapHelper'); + $sitemap_helper->build(); + } + } /** Index: core/units/categories/categories_config.php =================================================================== --- core/units/categories/categories_config.php +++ core/units/categories/categories_config.php @@ -426,6 +426,11 @@ 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 0 ), + 'IncludeInSitemap' => array( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', 'options' => array(1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, + 'not_null' => 1, 'default' => 1, + ), ), 'VirtualFields' => Array ( @@ -540,4 +545,4 @@ 'DefaultSorting1Dir' => 'Category_Sortorder', 'DefaultSorting2Dir' => 'Category_Sortorder2', ), -); \ No newline at end of file +); Index: core/units/categories/categories_event_handler.php =================================================================== --- core/units/categories/categories_event_handler.php +++ core/units/categories/categories_event_handler.php @@ -549,6 +549,28 @@ /* @var $search_helper kSearchHelper */ $search_helper->SetComplexFilter($event, $type_clauses, implode(',', $types), implode(',', $except_types)); + $this->setSitemapFilter($object); + } + + /** + * Sets sitemap filter + * + * @param kDBList $object Object. + * + * @return void + */ + protected function setSitemapFilter(kDBList $object) + { + if ( !$this->Application->isAdmin ) { + return; + } + + /** @var CategoryHelper $category_helper */ + $category_helper = $this->Application->recallObject('CategoryHelper'); + + if ( $category_helper->showSitemapOnlyCategories() ) { + $object->addFilter('sitemap_filter', '%1$s.IncludeInSitemap = 1'); + } } /** @@ -2017,6 +2039,10 @@ // this will override any global "m_cat_id" $page_category = $this->_getParentCategoryFromPath(explode('||', $template_info['section']), $root_category, $theme_id); } + + if ( array_key_exists('in_sitemap', $template_info) ) { + $in_sitemap = $template_info['in_sitemap'] ? 1 : 0; + } } } else { @@ -2045,6 +2071,10 @@ $object->SetDBField('l' . $primary_language . '_Description', $page_description); $object->SetDBField('l' . $current_language . '_Description', $page_description); + if ( isset($in_sitemap) ) { + $object->SetDBField('IncludeInSitemap', $in_sitemap); + } + return $object->Create(); } Index: core/units/helpers/category_helper.php =================================================================== --- core/units/helpers/category_helper.php +++ core/units/helpers/category_helper.php @@ -31,7 +31,24 @@ var $_primaryLanguageId = false; /** - * Returns module information based on given module name or current category (relative to module root categories) + * Show sitemap only categories. + * + * @var boolean + */ + protected $showSitemapOnlyCategories = false; + + /** + * Set showSitemapOnlyCategories property + */ + public function __construct() + { + parent::__construct(); + $this->showSitemapOnlyCategories = $this->showSitemapOnlyCategories(); + } + + /** + * Returns module information based on given module name or current category + * (relative to module root categories) * * @param Array $params * @param Array $category_ids category parent path (already as array) @@ -98,6 +115,10 @@ return Array (); } + if ( !$data['IncludeInSitemap'] && $this->showSitemapOnlyCategories ) { + return array(); + } + $category_language = $data['l' . $language_id . '_Name'] ? $language_id : $this->_primaryLanguageId; $ret = Array ($parent_category_id => str_repeat('—', $level) . ' ' . $data['l' . $category_language . '_Name']); @@ -113,6 +134,22 @@ } /** + * Checks if need show sitemap only categories + * + * @return boolean + */ + public function showSitemapOnlyCategories() + { + if ( $this->Application->isDebugMode() ) { + return false; + } + + $visibility = $this->Application->ConfigValue('SitemapInvisibleCategoriesCatalogVisibility'); + + return $visibility == NonSitemapSectionVisibility::SHOWN_ONLY_IN_DEBUG_MODE; + } + + /** * Returns information about children under parent path (recursive) * * @param int $parent_category_id @@ -131,7 +168,8 @@ $fields[] = 'l' . $language_id . '_Name'; } - $sql = 'SELECT CategoryId AS id, ' . implode(', ', $fields) . ', ParentId, Template, ThemeId + $sql = 'SELECT CategoryId AS id, ' . implode(', ', $fields) . ', + ParentId, Template, ThemeId, IncludeInSitemap FROM ' . TABLE_PREFIX . 'Categories ORDER BY Priority DESC'; $items = $this->Conn->Query($sql, 'id'); @@ -378,4 +416,4 @@ return $text; } - } \ No newline at end of file + } Index: core/units/helpers/sitemap_helper.php =================================================================== --- /dev/null +++ core/units/helpers/sitemap_helper.php @@ -0,0 +1,528 @@ +<?php + +class SitemapHelper extends kHelper +{ + + /** + * Base folder, where given site-domain sitemaps will be saved. + * + * @var string + */ + protected $baseFolder = ''; + + /** + * Files list. + * + * @var string[] + */ + protected $files; + + /** + * Current file. + * + * @var string + */ + protected $curFile; + + /** + * Current file size. + * + * @var integer + */ + protected $curFileSize; + + /** + * Quantity if current file urls. + * + * @var integer + */ + protected $curFileURLs = 0; + + /** + * Number of current file. + * + * @var integer + */ + protected $curFileNumber = 0; + + /** + * Default URL params. + * + * @var array + */ + protected $defaultUrlParams = array(); + + /** + * Sitemap prefix. + * + * @var string + */ + protected $sitemapPrefix = ''; + + /** + * Maximum file size. + * + * @var integer + */ + protected $maxFileSize = 10000000; + + /** + * Maximum quantity of urls. + * + * @var integer + */ + protected $maxURLs = 50000; + + /** + * Gap. + * + * @var integer + */ + protected $gap = 500; + + /** + * Last sitemap modification date in W3C date format + * + * @var string + */ + protected $lastmod; + + /** + * Prefix of links. + * + * @var string + */ + protected $linkPrefix = ''; + + /** + * Init helper. + * + * @param string $sitemap_prefix Sitemap prefix. + */ + public function __construct($sitemap_prefix = '') + { + parent::__construct(); + + $this->defaultUrlParams = $this->getDefaultUrlParams(); + $this->sitemapPrefix = $this->prepareSitemapPrefix($sitemap_prefix); + + // Link from Admin to Front-end. + $this->linkPrefix = $this->Application->isAdmin ? '_FRONT_END_' : ''; + + // XML documents are usually long. + set_time_limit(0); + ini_set('memory_limit', -1); + + $this->lastmod = date('Y-m-d\TH:i:s') . preg_replace('/([0-9]{2})$/', ':$1', date('O')); // W3C date format. + + $this->baseFolder = WRITEABLE . '/sitemaps'; + + /** @var $file_helper FileHelper */ + $file_helper = $this->Application->recallObject('FileHelper'); + + $file_helper->CheckFolder($this->baseFolder); + } + + /** + * Write sitemap header. + * + * @return void + */ + protected function startFile() + { + $this->curFileSize = 0; + $this->curFileURLs = 0; + $this->curFile = fopen( + $this->baseFolder . '/' . $this->sitemapPrefix . ++$this->curFileNumber . '.xml.tmp', + 'w' + ); + + $this->write("<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">\n", false); + } + + /** + * Write sitemap footer. + * + * @return void + */ + protected function endFile() + { + fwrite($this->curFile, "</urlset>\n"); + fclose($this->curFile); + } + + /** + * Write sitemap item. + * + * @param string $data Item data. + * @param boolean $increase_urls If yes, increase urls of file. + * + * @return void + */ + protected function write($data, $increase_urls = true) + { + $len = strlen($data); + + if ( $this->curFileSize + $len + $this->gap > $this->maxFileSize || $this->curFileURLs > $this->maxURLs ) { + $this->endFile(); + $this->startFile(); + } + + fwrite($this->curFile, $data); + $this->curFileSize += $len; + + if ( $increase_urls ) { + $this->curFileURLs++; + } + } + + /** + * Build sitemap file. + * + * @return void + */ + public function build() + { + $this->startFile(); + $this->doBuild(); + $this->finalize(); + } + + /** + * Build main sitemap content + * + * @return void + */ + protected function doBuild() + { + $this->addCategories(); + + foreach ( $this->Application->ModuleInfo as $module_name => $module_info ) { + if ( $module_name != 'Core' && $module_name != 'In-Portal' ) { + $this->addCategoryItems($module_info['Var']); + } + } + } + + /** + * Write URL to sitemap. + * + * @param string $url URL. + * @param integer $modified_on Modified timestamp. + * @param integer $priority Priority. + * + * @return void + */ + protected function writeURL($url, $modified_on = null, $priority = null) + { + $lastmod = $this->lastmod; + + if ( isset($modified_on) ) { + $lastmod = date('Y-m-d\TH:i:s', $modified_on) . + preg_replace('/([0-9]{2})$/', ':$1', date('O', $modified_on)); // W3C date format. + } + + if ( isset($priority) ) { + $priority_row = <<<PRIORITY_XML + +<priority>{$priority}</priority> +PRIORITY_XML; + } + else { + $priority_row = ''; + } + + $block = <<<END_XML +<url> +<loc>{$url}</loc> +<lastmod>{$lastmod}</lastmod>{$priority_row} +</url> + +END_XML; + $this->write($block); + } + + /** + * Add all categories to sitemap + * + * @return void + */ + protected function addCategories() + { + $tag_params = array('per_page' => -1, 'parent_cat_id' => 'any', 'skip_counting' => 1); + + /** @var kDBList $category_list */ + $category_list = $this->Application->recallObject('c.sitemap', 'c_List', $tag_params); + $category_list->addFilter('status_filter', '%1$s.Status = ' . STATUS_ACTIVE); + $category_list->addFilter('sitemap_filter', '%1$s.IncludeInSitemap = 1'); + $category_list->ClearOrderFields(); + $category_list->AddOrderField('ParentPath', 'asc'); + + $sql = $category_list->getCountSQL($category_list->GetSelectSQL(true)); + $sql = str_replace( + 'COUNT(*) AS count', + $category_list->TableName . '.' . $category_list->IDField, + $sql + ); + $categories = $this->Conn->GetCol($sql); + + foreach ( $categories as $category_id ) { + $this->addCategory($category_id); + } + } + + /** + * Add category to sitemap + * + * @param integer $category_id Category Id. + * + * @return void + */ + protected function addCategory($category_id) + { + $template = $this->Application->getVirtualPageTemplate($category_id); + + if ( !$template ) { + $template = '__default__'; + } + + $url_params = $this->getUrlParams(array( + 'm_cat_id' => $category_id, + 'pass_category' => 1, + )); + + $this->writeURL($this->Application->HREF($template, $this->linkPrefix, $url_params)); + } + + /** + * Add all items from allowed categories. + * + * @param string $prefix Item prefix. + * @param integer $top_category Top category id. + * @param string $where_clause Additional filter. + * + * @return void + */ + protected function addCategoryItems($prefix, $top_category = null, $where_clause = null) + { + $config = $this->Application->getUnitConfig($prefix); + $id_field = $config->getIDField(); + $table_name = $config->getTableName(); + + if ( !$id_field || !$table_name ) { + return; + } + + $sql = 'SELECT item.' . $id_field . ', ci.CategoryId + FROM ' . $table_name . ' item + JOIN ' . TABLE_PREFIX . 'CategoryItems ci ON ci.ItemResourceId = item.ResourceId AND ci.PrimaryCat = 1 + JOIN ' . TABLE_PREFIX . 'Categories c ON c.CategoryId = ci.CategoryId + WHERE item.Status = ' . STATUS_ACTIVE . ' AND c.Status = ' . STATUS_ACTIVE; + + if ( isset($top_category) ) { + list ($tree_left, $tree_right) = $this->Application->getTreeIndex($top_category); + $sql .= ' AND c.TreeLeft BETWEEN ' . $tree_left . ' AND ' . $tree_right; + } + + if ( isset($where_clause) ) { + $sql .= ' AND ' . $where_clause; + } + + $items = $this->Conn->Query($sql); + + foreach ( $items as $item_data ) { + $url_params = $this->getUrlParams(array( + 'm_cat_id' => $item_data['CategoryId'], + 'pass_category' => 1, + $prefix . '_id' => $item_data[$id_field], + 'pass' => 'm,' . $prefix, + )); + + $this->writeURL($this->Application->HREF('__default__', $this->linkPrefix, $url_params)); + } + } + + /** + * Finalize sitemap file. + * + * @return void + */ + protected function finalize() + { + $this->endFile(); + + $files = glob($this->baseFolder . '/' . $this->sitemapPrefix . '*.xml.gz'); + + if ( file_exists($this->baseFolder . '/' . $this->sitemapPrefix . '.xml.gz') ) { + unlink($this->baseFolder . '/' . $this->sitemapPrefix . '.xml.gz'); + } + + if ( $this->curFileNumber > 1 ) { + $master = fopen($this->baseFolder . '/' . $this->sitemapPrefix . '.xml', 'w'); + fwrite($master, "<sitemapindex>\n"); + + $site = preg_replace( + '/^' . preg_quote(FULL_PATH, '/') . '/', + rtrim($this->Application->BaseURL('', 0), '/'), + $this->baseFolder, + 1 + ); + + for ( $i = 1; $i <= $this->curFileNumber; $i++ ) { + $block = <<<END_XML +<sitemap> +<loc>{$site}/{$this->sitemapPrefix}{$i}.xml.gz</loc> +</sitemap> + +END_XML; + fwrite($master, $block); + + if ( file_exists($this->baseFolder . '/' . $this->sitemapPrefix . $i . '.xml.gz') ) { + unlink($this->baseFolder . '/' . $this->sitemapPrefix . $i . '.xml.gz'); + } + + rename( + $this->baseFolder . '/' . $this->sitemapPrefix . $i . '.xml.tmp', + $this->baseFolder . '/' . $this->sitemapPrefix . $i . '.xml' + ); + shell_exec('gzip ' . $this->baseFolder . '/' . $this->sitemapPrefix . $i . '.xml'); + + if ( $files ) { + $key = array_search($this->baseFolder . '/' . $this->sitemapPrefix . $i . '.xml.gz', $files); + + if ( $key !== false ) { + unset($files[$key]); + } + } + } + + fwrite($master, "</sitemapindex>\n"); + fclose($master); + } + else { + // Single sitemap file. + rename( + $this->baseFolder . '/' . $this->sitemapPrefix . '1.xml.tmp', + $this->baseFolder . '/' . $this->sitemapPrefix . '.xml' + ); + } + + shell_exec('gzip ' . $this->baseFolder . '/' . $this->sitemapPrefix . '.xml'); + + if ( $files ) { + $key = array_search($this->baseFolder . '/' . $this->sitemapPrefix . '.xml.gz', $files); + + if ( $key !== false ) { + unset($files[$key]); + } + + // Removing files left. + foreach ( $files as $a_file ) { + unlink($a_file); + } + } + } + + /** + * Generate index of sitemap files. + * + * @param array $sitemap_prefixes List of sitemap prefixes. + * + * @return void + */ + public function generateSitemapIndex(array $sitemap_prefixes) + { + $sitemap_prefixes[] = 'static'; + + $file = new SplFileObject($this->baseFolder . '/' . $this->sitemapPrefix . '.xml.tmp', 'w'); + $file->fwrite('<sitemapindex>' . PHP_EOL); + + $site = preg_replace( + '/^' . preg_quote(FULL_PATH, '/') . '/', + rtrim($this->Application->BaseURL('', 0), '/'), + $this->baseFolder, + 1 + ); + + foreach ( $sitemap_prefixes as $sitemap_prefix ) { + $sitemap_file = ''; + $sitemap_prefix = $this->prepareSitemapPrefix($sitemap_prefix); + + if ( file_exists($this->baseFolder . '/' . $sitemap_prefix . '.xml.gz') ) { + $sitemap_file = $sitemap_prefix . '.xml.gz'; + } + elseif ( file_exists($this->baseFolder . '/' . $sitemap_prefix . '.xml') ) { + $sitemap_file = $sitemap_prefix . '.xml'; + } + + if ( $sitemap_file ) { + $block = <<<END_XML +<sitemap> +<loc>{$site}/{$sitemap_file}</loc> +</sitemap> + +END_XML; + $file->fwrite($block); + } + } + + $file->fwrite('</sitemapindex>'); + + if ( file_exists($this->baseFolder . '/sitemap.xml') ) { + unlink($this->baseFolder . '/sitemap.xml'); + } + + rename($file->getPathname(), $this->baseFolder . '/sitemap.xml'); + } + + /** + * Prepare sitemap prefix. + * + * @param string $sitemap_prefix Prefix. + * + * @return string + */ + protected function prepareSitemapPrefix($sitemap_prefix) + { + return $sitemap_prefix ? 'sitemap.' . trim($sitemap_prefix, '.') : 'sitemap'; + } + + /** + * Returns base url params. + * + * @param array $custom_params Params. + * + * @return array + */ + protected function getUrlParams(array $custom_params = array()) + { + return array_merge($this->defaultUrlParams, $custom_params); + } + + /** + * Returns default url params + * + * @return array + */ + protected function getDefaultUrlParams() + { + $url_params = array( + 'pass' => 'm', + '__SSL__' => 0, // To change BaseURL too. + '__NO_SID__' => 1, // Don't add sid on domain change. + ); + + if ( $this->Application->isAdmin ) { + // Link from Admin to Front-end. + if ( $this->Application->ConfigValue('UseModRewrite') ) { + $url_params['__MOD_REWRITE__'] = 1; + } + else { + $url_params['index_file'] = 'index.php'; + } + } + + return $url_params; + } + +} Index: core/units/helpers/themes_helper.php =================================================================== --- core/units/helpers/themes_helper.php +++ core/units/helpers/themes_helper.php @@ -475,47 +475,90 @@ return $this->parseTemplateMetaInfo($template_file); } - function parseTemplateMetaInfo($template_file) + /** + * Parses template meta info + * + * @param string $template_file Template file. + * + * @return array + * @throws Exception When invalid template meta tag is found. + */ + public function parseTemplateMetaInfo($template_file) { - if (!file_exists($template_file)) { - // when template without info it's placed in top category - return Array (); + if ( !file_exists($template_file) ) { + // When template without info it's placed in top category. + return array(); } $template_data = file_get_contents($template_file); - if (substr($template_data, 0, 6) == '<!--##') { - // template starts with comment in such format - /*<!--## - <NAME></NAME> - <DESC></DESC> - <SECTION>||</SECTION> - ##-->*/ - - $comment_end = strpos($template_data, '##-->'); - if ($comment_end === false) { - // badly formatted comment - return Array (); - } - - $comment = trim( substr($template_data, 6, $comment_end - 6) ); - if (preg_match_all('/<(NAME|DESC|SECTION)>(.*?)<\/(NAME|DESC|SECTION)>/is', $comment, $regs)) { - $ret = Array (); - foreach ($regs[1] as $param_order => $param_name) { - $ret[ strtolower($param_name) ] = trim($regs[2][$param_order]); - } + // template starts with comment in such format + /*<!--## + <NAME></NAME> + <DESC></DESC> + <SECTION>||</SECTION> + ##-->*/ - if (array_key_exists('section', $ret) && $ret['section']) { - $category_path = explode('||', $ret['section']); - $category_path = array_map('trim', $category_path); - $ret['section'] = implode('||', $category_path); - } + if ( substr($template_data, 0, 6) != '<!--##' ) { + return array(); + } + + $comment_end = strpos($template_data, '##-->'); + + if ( $comment_end === false ) { + // Badly formatted comment. + return array(); + } + + $ret = array(); + $comment = trim(substr($template_data, 6, $comment_end - 6)); + $allowed_settings = array('name', 'desc', 'section', 'in_sitemap'); - return $ret; + /** @var SimpleXMLElement[] $meta_info */ + $meta_info = simplexml_load_string('<meta_info>' . $comment . '</meta_info>'); + + if ( $meta_info === false ) { + // Malformed XML. SimpleXML will print an error itself. + return array(); + } + + foreach ( $meta_info as $setting ) { + $setting_name = strtolower($setting->getName()); + + if ( !in_array($setting_name, $allowed_settings) ) { + trigger_error( + 'Setting "' . $setting_name . '" not supported in "' . $template_file . '" template', + E_USER_WARNING + ); + continue; + } + + $ret[$setting_name] = trim($setting); + } + + if ( array_key_exists('section', $ret) && $ret['section'] ) { + $category_path = explode('||', $ret['section']); + $category_path = array_map('trim', $category_path); + $ret['section'] = implode('||', $category_path); + } + + if ( array_key_exists('in_sitemap', $ret) ) { + $value = strtolower($ret['in_sitemap']); + + if ( strlen($value) == 0 || in_array($value, array('yes', 'true', '1')) ) { + $ret['in_sitemap'] = true; + } + elseif ( in_array($value, array('no', 'false', '0')) ) { + $ret['in_sitemap'] = false; + } + else { + $error_msg = 'The "IN_SITEMAP" setting in "' . $template_file . '" template '; + $error_msg .= 'has unsupported value. Please use "yes" or "no".'; + throw new Exception($error_msg); } } - return Array (); + return $ret; } /** Index: core/units/structure/structure_config.php =================================================================== --- core/units/structure/structure_config.php +++ core/units/structure/structure_config.php @@ -215,7 +215,12 @@ 'formatter' => 'kOptionsFormatter', 'options' => Array (1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, 'not_null' => 1, 'default' => 1 ), - 'DirectLinkAuthKey' => Array ('type' => 'string', 'max_len' => 20, 'not_null' => 1, 'default' => '') + 'DirectLinkAuthKey' => array('type' => 'string', 'max_len' => 20, 'not_null' => 1, 'default' => ''), + 'IncludeInSitemap' => array( + 'type' => 'int', + 'formatter' => 'kOptionsFormatter', 'options' => array(1 => 'la_Yes', 0 => 'la_No'), 'use_phrases' => 1, + 'not_null' => 1, 'default' => 1, + ), ), 'VirtualFields' => Array ( @@ -274,4 +279,4 @@ 'DefaultSorting1Dir' => 'Category_Sortorder', 'DefaultSorting2Dir' => 'Category_Sortorder2', ), -); \ No newline at end of file +); Index: themes/advanced/in-bulletin/designs/section.tpl =================================================================== --- themes/advanced/in-bulletin/designs/section.tpl +++ themes/advanced/in-bulletin/designs/section.tpl @@ -3,6 +3,7 @@ <NAME>Topics - Section Template</NAME> <DESC>Topics</DESC> <SECTION>Platform||Topics</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> <inp2:m_DefineElement name="page_title"> @@ -108,4 +109,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-bulletin/my_account/my_preferences.tpl =================================================================== --- themes/advanced/in-bulletin/my_account/my_preferences.tpl +++ themes/advanced/in-bulletin/my_account/my_preferences.tpl @@ -2,6 +2,7 @@ <NAME>User's Preferences</NAME> <DESC>User's Preferences</DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -77,4 +78,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-bulletin/my_account/my_topics.tpl =================================================================== --- themes/advanced/in-bulletin/my_account/my_topics.tpl +++ themes/advanced/in-bulletin/my_account/my_topics.tpl @@ -2,6 +2,7 @@ <NAME>User's Topics</NAME> <DESC>List of User's Topics</DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -70,4 +71,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-bulletin/my_account/private_messages/new_message.tpl =================================================================== --- themes/advanced/in-bulletin/my_account/private_messages/new_message.tpl +++ themes/advanced/in-bulletin/my_account/private_messages/new_message.tpl @@ -2,6 +2,7 @@ <NAME>Write Private Message</NAME> <DESC>Write Private Message Form</DESC> <SECTION>My Account||Private Messages</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -73,4 +74,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-bulletin/my_account/private_messages/private_messages.tpl =================================================================== --- themes/advanced/in-bulletin/my_account/private_messages/private_messages.tpl +++ themes/advanced/in-bulletin/my_account/private_messages/private_messages.tpl @@ -2,6 +2,7 @@ <NAME>List Private Messages</NAME> <DESC>List Private Messages</DESC> <SECTION>My Account||Private Messages</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -72,4 +73,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-bulletin/my_account/private_messages/view_message.tpl =================================================================== --- themes/advanced/in-bulletin/my_account/private_messages/view_message.tpl +++ themes/advanced/in-bulletin/my_account/private_messages/view_message.tpl @@ -2,6 +2,7 @@ <NAME>View Private Message</NAME> <DESC>View Private Message page</DESC> <SECTION>My Account||Private Messages</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -82,4 +83,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-bulletin/topics/topic_detail.tpl =================================================================== --- themes/advanced/in-bulletin/topics/topic_detail.tpl +++ themes/advanced/in-bulletin/topics/topic_detail.tpl @@ -3,6 +3,7 @@ <NAME>Topics - Details Design</NAME> <DESC>General design template for Topic Details</DESC> <SECTION>Platform||Topics</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> <inp2:m_DefineElement name="page_title"> @@ -146,4 +147,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/checkout/billing.tpl =================================================================== --- themes/advanced/in-commerce/checkout/billing.tpl +++ themes/advanced/in-commerce/checkout/billing.tpl @@ -2,6 +2,7 @@ <NAME>Billing step</NAME> <DESC>Billing step where user enters the payment inforamtion</DESC> <SECTION>Platform||Checkout</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin condition="Comm_RequireLoginBeforeCheckout" login_template="platform/login/register"/> <!--## CHECK IF LOGIN REQUIRED ##--> @@ -74,4 +75,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/checkout/preview.tpl =================================================================== --- themes/advanced/in-commerce/checkout/preview.tpl +++ themes/advanced/in-commerce/checkout/preview.tpl @@ -2,6 +2,7 @@ <NAME>Order Preview</NAME> <DESC>Order Preview oage</DESC> <SECTION>Platform||Checkout</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin condition="Comm_RequireLoginBeforeCheckout" login_template="platform/login/register"/> <!--## CHECK IF LOGIN REQUIRED ##--> Index: themes/advanced/in-commerce/checkout/shipping.tpl =================================================================== --- themes/advanced/in-commerce/checkout/shipping.tpl +++ themes/advanced/in-commerce/checkout/shipping.tpl @@ -2,6 +2,7 @@ <NAME>Shipping step</NAME> <DESC>Shipping step where user enters his shipping inforamtion</DESC> <SECTION>Platform||Checkout</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin condition="Comm_RequireLoginBeforeCheckout" login_template="platform/login/register"/> <!--## CHECK IF LOGIN REQUIRED ##--> @@ -69,4 +70,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/designs/section.tpl =================================================================== --- themes/advanced/in-commerce/designs/section.tpl +++ themes/advanced/in-commerce/designs/section.tpl @@ -3,6 +3,7 @@ <NAME>Products - Section Template</NAME> <DESC>Products</DESC> <SECTION>Platform||Products</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> <inp2:m_DefineElement name="page_title"> @@ -114,4 +115,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/elements/html_head.elm.tpl =================================================================== --- themes/advanced/in-commerce/elements/html_head.elm.tpl +++ themes/advanced/in-commerce/elements/html_head.elm.tpl @@ -1,6 +1,6 @@ -<!--## CSS & JAVASCRIPT FOR IN-COMMERCE ##--> +<!--## CSS AND JAVASCRIPT FOR IN-COMMERCE ##--> <inp2:m_Compress files="in-commerce/inc/styles.css" to="all_css"/> <!--## <inp2:m_Compress files="in-commerce/inc/script.js" to="all_js"/> ##--> -<!--## /CSS & JAVASCRIPT FOR IN-COMMERCE ##--> +<!--## /CSS AND JAVASCRIPT FOR IN-COMMERCE ##--> Index: themes/advanced/in-commerce/my_account/affiliate/affiliate.tpl =================================================================== --- themes/advanced/in-commerce/my_account/affiliate/affiliate.tpl +++ themes/advanced/in-commerce/my_account/affiliate/affiliate.tpl @@ -2,6 +2,7 @@ <NAME>Affiliate</NAME> <DESC>Affiliate page</DESC> <SECTION>My Account||Store||Affiliates</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> Index: themes/advanced/in-commerce/my_account/affiliate/affiliate_materials.tpl =================================================================== --- themes/advanced/in-commerce/my_account/affiliate/affiliate_materials.tpl +++ themes/advanced/in-commerce/my_account/affiliate/affiliate_materials.tpl @@ -2,6 +2,7 @@ <NAME>Affiliate - Materials</NAME> <DESC>Affiliate Materials page</DESC> <SECTION>My Account||Store||Affiliates</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -83,4 +84,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-commerce/my_account/affiliate/affiliate_payment_type.tpl =================================================================== --- themes/advanced/in-commerce/my_account/affiliate/affiliate_payment_type.tpl +++ themes/advanced/in-commerce/my_account/affiliate/affiliate_payment_type.tpl @@ -2,6 +2,7 @@ <NAME>Affiliate - Payment Type</NAME> <DESC>Affiliate Payment Type page</DESC> <SECTION>My Account||Store||Affiliates</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -82,4 +83,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-commerce/my_account/affiliate/affiliate_payments.tpl =================================================================== --- themes/advanced/in-commerce/my_account/affiliate/affiliate_payments.tpl +++ themes/advanced/in-commerce/my_account/affiliate/affiliate_payments.tpl @@ -2,6 +2,7 @@ <NAME>Affiliate - Payments</NAME> <DESC>Affiliate Payments List page</DESC> <SECTION>My Account||Store||Affiliates</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> Index: themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics.tpl =================================================================== --- themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics.tpl +++ themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics.tpl @@ -2,6 +2,7 @@ <NAME>Affiliate - Statistics</NAME> <DESC>Affiliate Statistics page</DESC> <SECTION>My Account||Store||Affiliates</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -62,4 +63,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics_orders_list.tpl =================================================================== --- themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics_orders_list.tpl +++ themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics_orders_list.tpl @@ -2,6 +2,7 @@ <NAME>Affiliate - Orders List</NAME> <DESC>Affiliate Orders List page</DESC> <SECTION>My Account||Store||Affiliates</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -76,4 +77,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics_visits_list.tpl =================================================================== --- themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics_visits_list.tpl +++ themes/advanced/in-commerce/my_account/affiliate/affiliate_statistics_visits_list.tpl @@ -2,6 +2,7 @@ <NAME>Affiliate - Visits List</NAME> <DESC>Affiliate Visits List page</DESC> <SECTION>My Account||Store||Affiliates</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> Index: themes/advanced/in-commerce/my_account/cancel_recurring.tpl =================================================================== --- themes/advanced/in-commerce/my_account/cancel_recurring.tpl +++ themes/advanced/in-commerce/my_account/cancel_recurring.tpl @@ -2,6 +2,7 @@ <NAME>Cancel Reoccurring Order</NAME> <DESC>Cancel Reoccurring Order page</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -75,4 +76,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/my_account/cancel_recurring_ok.tpl =================================================================== --- themes/advanced/in-commerce/my_account/cancel_recurring_ok.tpl +++ themes/advanced/in-commerce/my_account/cancel_recurring_ok.tpl @@ -2,6 +2,7 @@ <NAME>Cancel Reoccurring Order - Confirmation</NAME> <DESC>Cancel Reoccurring Order Confirmation page</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -69,4 +70,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/my_account/edit_address.tpl =================================================================== --- themes/advanced/in-commerce/my_account/edit_address.tpl +++ themes/advanced/in-commerce/my_account/edit_address.tpl @@ -2,6 +2,7 @@ <NAME>Edit Address</NAME> <DESC>Edit Address page</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -91,4 +92,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/my_account/my_addresses.tpl =================================================================== --- themes/advanced/in-commerce/my_account/my_addresses.tpl +++ themes/advanced/in-commerce/my_account/my_addresses.tpl @@ -2,6 +2,7 @@ <NAME>User Addresses</NAME> <DESC>List of User Addresses</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -85,4 +86,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/my_account/my_downloads.tpl =================================================================== --- themes/advanced/in-commerce/my_account/my_downloads.tpl +++ themes/advanced/in-commerce/my_account/my_downloads.tpl @@ -2,6 +2,7 @@ <NAME>User Downloads</NAME> <DESC>List of User Downloads</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -70,4 +71,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/my_account/my_downloads_more.tpl =================================================================== --- themes/advanced/in-commerce/my_account/my_downloads_more.tpl +++ themes/advanced/in-commerce/my_account/my_downloads_more.tpl @@ -2,6 +2,7 @@ <NAME>User Downloads - Complete List</NAME> <DESC>Complete List of User Downloads</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -94,4 +95,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/my_account/my_order_details.tpl =================================================================== --- themes/advanced/in-commerce/my_account/my_order_details.tpl +++ themes/advanced/in-commerce/my_account/my_order_details.tpl @@ -2,6 +2,7 @@ <NAME>User Orders - Details</NAME> <DESC>User Order Details</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> Index: themes/advanced/in-commerce/my_account/my_orders.tpl =================================================================== --- themes/advanced/in-commerce/my_account/my_orders.tpl +++ themes/advanced/in-commerce/my_account/my_orders.tpl @@ -2,6 +2,7 @@ <NAME>User Orders</NAME> <DESC>List of User Orders</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -77,4 +78,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/my_account/new_address.tpl =================================================================== --- themes/advanced/in-commerce/my_account/new_address.tpl +++ themes/advanced/in-commerce/my_account/new_address.tpl @@ -2,6 +2,7 @@ <NAME>Add New Address</NAME> <DESC>Add New Address Form</DESC> <SECTION>My Account||Store</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> <!--## LOGIN REQUIRED ##--> @@ -90,4 +91,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-commerce/products/add_review.tpl =================================================================== --- themes/advanced/in-commerce/products/add_review.tpl +++ themes/advanced/in-commerce/products/add_review.tpl @@ -2,6 +2,7 @@ <NAME>Product - Add Review</NAME> <DESC>Add Product Review Form</DESC> <SECTION>Platform||Products</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register" permissions="PRODUCT.REVIEW|PRODUCT.REVIEW.PENDING"/> @@ -152,4 +153,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-commerce/products/product_detail.tpl =================================================================== --- themes/advanced/in-commerce/products/product_detail.tpl +++ themes/advanced/in-commerce/products/product_detail.tpl @@ -3,6 +3,7 @@ <NAME>Products - Details Design</NAME> <DESC>General design template for Product Details section</DESC> <SECTION>Platform||Products</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:p_AddToRecent /> <!--## ADD CURRENT PRODUCT TO RECENTLY VIEWED PRODUCTS ##--> @@ -305,4 +306,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-link/designs/section.tpl =================================================================== --- themes/advanced/in-link/designs/section.tpl +++ themes/advanced/in-link/designs/section.tpl @@ -3,6 +3,7 @@ <NAME>Links - Section Template</NAME> <DESC>Links</DESC> <SECTION>Platform||Links</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> <inp2:m_DefineElement name="page_title"> @@ -101,4 +102,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-link/links/add_review.tpl =================================================================== --- themes/advanced/in-link/links/add_review.tpl +++ themes/advanced/in-link/links/add_review.tpl @@ -2,6 +2,7 @@ <NAME>Link - Add Review</NAME> <DESC>Add Link Review Form</DESC> <SECTION>Platform||Links</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register" permissions="LINK.REVIEW|LINK.REVIEW.PENDING"/> @@ -149,4 +150,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-link/links/enhancements/cancel_enhancement_confirm.tpl =================================================================== --- themes/advanced/in-link/links/enhancements/cancel_enhancement_confirm.tpl +++ themes/advanced/in-link/links/enhancements/cancel_enhancement_confirm.tpl @@ -2,6 +2,7 @@ <NAME>Cancel Link Enhancement - Confirmation</NAME> <DESC>Cancel Link Enhancement Confirmation page</DESC> <SECTION>Platform||Links||Enhancements</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin template="platform/login/register"/> @@ -84,4 +85,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-link/links/enhancements/enhance_link.tpl =================================================================== --- themes/advanced/in-link/links/enhancements/enhance_link.tpl +++ themes/advanced/in-link/links/enhancements/enhance_link.tpl @@ -2,6 +2,7 @@ <NAME>Link Enhancement</NAME> <DESC>Link Enhancement Form</DESC> <SECTION>Platform||Links||Enhancements</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -99,4 +100,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-link/links/enhancements/extend_enhancement.tpl =================================================================== --- themes/advanced/in-link/links/enhancements/extend_enhancement.tpl +++ themes/advanced/in-link/links/enhancements/extend_enhancement.tpl @@ -2,6 +2,7 @@ <NAME>Link Enhancement Extension</NAME> <DESC>Link Enhancement Extension page</DESC> <SECTION>Platform||Links||Enhancements</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin template="platform/login/register"/> @@ -91,4 +92,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-link/links/enhancements/extend_enhancement_confirm.tpl =================================================================== --- themes/advanced/in-link/links/enhancements/extend_enhancement_confirm.tpl +++ themes/advanced/in-link/links/enhancements/extend_enhancement_confirm.tpl @@ -2,6 +2,7 @@ <NAME>Link Enhancement Extension - Confirmation</NAME> <DESC>Link Enhancement Extension Confirmation page</DESC> <SECTION>Platform||Links||Enhancements</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin template="platform/login/register"/> @@ -89,4 +90,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-link/links/link_paid.tpl =================================================================== --- themes/advanced/in-link/links/link_paid.tpl +++ themes/advanced/in-link/links/link_paid.tpl @@ -3,6 +3,7 @@ <NAME>Links - Details Design (paid)</NAME> <DESC>General design template for Paid Link Details section</DESC> <SECTION>Platform||Links</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> <inp2:m_DefineElement name="page_title"> @@ -488,4 +489,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1" related_to="$related_to" item_prefix="l"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-link/links/link_standard.tpl =================================================================== --- themes/advanced/in-link/links/link_standard.tpl +++ themes/advanced/in-link/links/link_standard.tpl @@ -3,6 +3,7 @@ <NAME>Links - Detail Design (standard)</NAME> <DESC>General design template for Standard Link Details section</DESC> <SECTION>Platform||Links</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> <inp2:m_DefineElement name="page_title"> @@ -488,4 +489,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1" item_prefix="l"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-link/my_account/my_links.tpl =================================================================== --- themes/advanced/in-link/my_account/my_links.tpl +++ themes/advanced/in-link/my_account/my_links.tpl @@ -2,6 +2,7 @@ <NAME>User's Links</NAME> <DESC>List of User's Articles</DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> @@ -59,4 +60,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-news/articles/add_review.tpl =================================================================== --- themes/advanced/in-news/articles/add_review.tpl +++ themes/advanced/in-news/articles/add_review.tpl @@ -2,6 +2,7 @@ <NAME>Add Article Review</NAME> <DESC>Form for submitting Article Review</DESC> <SECTION>Platform||Articles</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register" permissions="NEWS.REVIEW|NEWS.REVIEW.PENDING"/> @@ -137,4 +138,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/in-news/articles/article_detail.tpl =================================================================== --- themes/advanced/in-news/articles/article_detail.tpl +++ themes/advanced/in-news/articles/article_detail.tpl @@ -3,6 +3,7 @@ <NAME>Articles - Details Design</NAME> <DESC>General design template for Article Details section</DESC> <SECTION>Platform||Articles</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> <inp2:m_DefineElement name="page_title"> @@ -189,4 +190,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-news/designs/section.tpl =================================================================== --- themes/advanced/in-news/designs/section.tpl +++ themes/advanced/in-news/designs/section.tpl @@ -3,6 +3,7 @@ <NAME>Articles - Section Template</NAME> <DESC>Articles</DESC> <SECTION>Platform||Articles</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## PAGE TITLE ELEMENT ##--> <inp2:m_DefineElement name="page_title"> @@ -122,4 +123,4 @@ <!--## DESIGN TEMPLATE ##--> <inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> -<!--## /DESIGN TEMPLATE ##--> \ No newline at end of file +<!--## /DESIGN TEMPLATE ##--> Index: themes/advanced/in-news/my_account/my_articles.tpl =================================================================== --- themes/advanced/in-news/my_account/my_articles.tpl +++ themes/advanced/in-news/my_account/my_articles.tpl @@ -2,6 +2,7 @@ <NAME>User's Articles</NAME> <DESC>List of User's Articles</DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -55,4 +56,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/no_permission.tpl =================================================================== --- themes/advanced/no_permission.tpl +++ themes/advanced/no_permission.tpl @@ -49,4 +49,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/platform/members_list.tpl =================================================================== --- themes/advanced/platform/members_list.tpl +++ themes/advanced/platform/members_list.tpl @@ -2,6 +2,7 @@ <NAME>Members List</NAME> <DESC></DESC> <SECTION>Platform</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <!--## LOGIN REQUIRED ##--> @@ -71,4 +72,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/platform/my_account/my_account.tpl =================================================================== --- themes/advanced/platform/my_account/my_account.tpl +++ themes/advanced/platform/my_account/my_account.tpl @@ -2,6 +2,7 @@ <NAME>My Account</NAME> <DESC>User account page</DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -76,4 +77,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/platform/my_account/my_favorites.tpl =================================================================== --- themes/advanced/platform/my_account/my_favorites.tpl +++ themes/advanced/platform/my_account/my_favorites.tpl @@ -2,6 +2,7 @@ <NAME>My Favorites</NAME> <DESC></DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -44,4 +45,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/platform/my_account/my_preferences.tpl =================================================================== --- themes/advanced/platform/my_account/my_preferences.tpl +++ themes/advanced/platform/my_account/my_preferences.tpl @@ -2,6 +2,7 @@ <NAME>My Preferences</NAME> <DESC></DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -120,4 +121,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/platform/my_account/my_profile.tpl =================================================================== --- themes/advanced/platform/my_account/my_profile.tpl +++ themes/advanced/platform/my_account/my_profile.tpl @@ -2,6 +2,7 @@ <NAME>My Profile</NAME> <DESC></DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -104,4 +105,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> Index: themes/advanced/platform/my_account/public_profile.tpl =================================================================== --- themes/advanced/platform/my_account/public_profile.tpl +++ themes/advanced/platform/my_account/public_profile.tpl @@ -2,6 +2,7 @@ <NAME>Profile</NAME> <DESC></DESC> <SECTION>My Account</SECTION> +<IN_SITEMAP>false</IN_SITEMAP> ##--> <inp2:m_RequireLogin login_template="platform/login/register"/> @@ -87,4 +88,4 @@ </div> </inp2:m_DefineElement> -<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/> \ No newline at end of file +<inp2:m_include template="platform/designs/default_design.des" pass_params="1"/>