INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(450, 0x61646d696e, 0x7468726561645f7265706c795f62616e5f6c697374, 0, '<xf:title>{{ phrase(\'thread_reply_bans\') }}</xf:title>\n\n<xf:if is=\"$bans is not empty\">\n	<xf:form action=\"{{ link(\'threads/reply-bans\') }}\" class=\"block\">\n		<div class=\"block-outer\">\n			<span class=\"filterBlock\">\n				<xf:textbox name=\"username\" value=\"{$user.username}\" class=\"input filterBlock-input\" ac=\"single\"\n					 placeholder=\"{{ phrase(\'user_name...\') }}\" />\n\n				<xf:button type=\"submit\" class=\"button--small\">{{ phrase(\'filter\') }}</xf:button>\n			</span>\n		</div>\n		<div class=\"block-container\">\n			<div class=\"block-body\">\n				<xf:datalist data-xf-init=\"responsive-data-list\">\n					<xf:datarow rowtype=\"header\">\n						<xf:cell>{{ phrase(\'user\') }}</xf:cell>\n						<xf:cell>{{ phrase(\'thread\') }}</xf:cell>\n						<xf:cell>{{ phrase(\'reason\') }}</xf:cell>\n						<xf:cell>{{ phrase(\'end_date\') }}</xf:cell>\n						<xf:cell></xf:cell>\n					</xf:datarow>\n					<xf:foreach loop=\"$bans\" value=\"$ban\">\n						<xf:datarow rowclass=\"dataList-row--noHover\">\n							<xf:cell>\n								<xf:username user=\"$ban.User\" href=\"{{ link(\'users/edit\', $ban.User) }}\" />\n							</xf:cell>\n							<xf:cell>\n								<a href=\"{{ link_type(\'public\', \'threads\', $ban.Thread) }}\">{$ban.Thread.title}</a>\n							</xf:cell>\n							<xf:cell>\n								<xf:if is=\"$ban.reason\">\n									{$ban.reason}\n								<xf:else />\n									{{ phrase(\'n_a\') }}\n								</xf:if>\n							</xf:cell>\n							<xf:cell>\n								<xf:if is=\"$ban.expiry_date\">\n									<xf:date time=\"{$ban.expiry_date}\" />\n								<xf:else />\n									{{ phrase(\'permanent\') }}\n								</xf:if>\n							</xf:cell>\n							<xf:delete href=\"{{ link(\'threads/reply-bans/delete\', $ban) }}\" overlay=\"true\" />\n						</xf:datarow>\n					</xf:foreach>\n				</xf:datalist>\n			</div>\n			<div class=\"block-footer\">\n				<span class=\"block-footer-counter\">{{ display_totals($bans, $total) }}</span>\n			</div>\n		</div>\n\n		<xf:pagenav page=\"{$page}\" perpage=\"{$perPage}\" total=\"{$total}\"\n			link=\"threads/reply-bans\" params=\"{$linkParams}\"\n			wrapperclass=\"block-outer block-outer--after\" />\n	</xf:form>\n<xf:else />\n	<div class=\"blockMessage\">{{ phrase(\'no_results_found\') }}</div>\n</xf:if>', 0x[encoded data, 37058 characters], 0x5846, 2000170, '2.0.1', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(451, 0x61646d696e, 0x746f6f6c735f66696c655f636865636b, 0, '<xf:title>{{ phrase(\'file_health_check\') }}</xf:title>\n\n<xf:form action=\"{{ link(\'tools/file-check\') }}\" class=\"block\">\n	<div class=\"block-container\">\n		<div class=\"block-body\">\n			<xf:inforow rowtype=\"close\">{{ phrase(\'file_health_check_description\', {\'button\': phrase(\'proceed\')}) }}</xf:inforow>\n		</div>\n		<xf:submitrow submit=\"{{ phrase(\'proceed...\') }}\" rowtype=\"simple\" />\n	</div>\n</xf:form>\n\n<xf:if is=\"$fileChecks is not empty\">\n	<div class=\"block\">\n		<div class=\"block-container\">\n			<h3 class=\"block-header\">{{ phrase(\'file_health_check_results\') }}</h3>\n			<div class=\"block-body\">\n				<xf:macro id=\"file_check_list\" arg-fileChecks=\"{$fileChecks}\" />\n			</div>\n			<div class=\"block-footer\">\n				<span class=\"block-footer-counter\">{{ display_totals($fileChecks, $total) }}</span>\n			</div>\n		</div>\n		<xf:pagenav page=\"{$page}\" perpage=\"{$perPage}\" total=\"{$total}\"\n			link=\"tools/file-check\"\n			wrapperclass=\"block-outer block-outer--after\" />\n	</div>\n</xf:if>\n\n<xf:macro id=\"file_check_list\" arg-fileChecks=\"!\">\n	<xf:datalist data-xf-init=\"responsive-data-list\">\n		<xf:datarow rowtype=\"header\">\n			<xf:cell>{{ phrase(\'check_date\') }}</xf:cell>\n			<xf:cell>{{ phrase(\'check_state\') }}</xf:cell>\n			<xf:cell>{{ phrase(\'missing\') }}</xf:cell>\n			<xf:cell>{{ phrase(\'unexpected_contents\') }}</xf:cell>\n			<xf:cell>{{ phrase(\'total_checked\') }}</xf:cell>\n			<xf:cell> </xf:cell>\n		</xf:datarow>\n\n		<xf:foreach loop=\"$fileChecks\" value=\"$fileCheck\" i=\"$i\">\n			<xf:datarow rowclass=\"{{ $i == 1 ? \'dataList-row--highlighted\' : \'\' }}\">\n				<xf:cell>\n					<xf:date time=\"$fileCheck.check_date\" />\n				</xf:cell>\n				<xf:cell>\n					<xf:if is=\"$fileCheck.check_state == \'success\'\">\n						{{ phrase(\'success\') }}\n					<xf:elseif is=\"$fileCheck.check_state == \'failure\'\" />\n						{{ phrase(\'failed\') }}\n					<xf:elseif is=\"$fileCheck.check_state == \'pending\'\" />\n						{{ phrase(\'pending\') }}\n					</xf:if>\n				</xf:cell>\n\n				<xf:if is=\"$fileCheck.check_state == \'pending\'\">\n					<xf:cell>{{ phrase(\'n_a\') }}</xf:cell>\n					<xf:cell>{{ phrase(\'n_a\') }}</xf:cell>\n					<xf:cell>{{ phrase(\'n_a\') }}</xf:cell>\n					<xf:action></xf:action>\n				<xf:else />\n					<xf:cell>{$fileCheck.total_missing|number}</xf:cell>\n					<xf:cell>{$fileCheck.total_inconsistent|number}</xf:cell>\n					<xf:cell>{$fileCheck.total_checked|number}</xf:cell>\n					<xf:action href=\"{{ link(\'tools/file-check/results\', $fileCheck) }}\">{{ phrase(\'results\') }}</xf:action>\n				</xf:if>\n			</xf:datarow>\n		</xf:foreach>\n	</xf:datalist>\n</xf:macro>', 0x[encoded data, 44274 characters], 0x5846, 2030010, '2.3.0 Alpha', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(452, 0x61646d696e, 0x746f6f6c735f66696c655f636865636b5f726573756c74, 0, '<xf:title>{{ phrase(\'file_health_check_results\') }}</xf:title>\n\n<xf:pageaction>\n	<form action=\"{{ link(\'tools/file-check\') }}\" method=\"post\" class=\"u-pullRight\">\n		<xf:button type=\"submit\">{{ phrase(\'re_run_check\') }}</xf:button>\n		<xf:csrf />\n	</form>\n</xf:pageaction>\n\n<xf:if is=\"$fileCheck.check_state == \'success\'\">\n	<div class=\"blockMessage blockMessage--success blockMessage--iconic\">\n		{{ phrase(\'file_health_check_okay\', {\'numFiles\': $fileCheck.total_checked|number}) }} {{ smilie(\':)\') }}\n	</div>\n<xf:else />\n	<div class=\"blockMessage blockMessage--error blockMessage--iconic\">\n		{{ phrase(\'check_completed_on_x_files\', {\'total_checked\': $fileCheck.total_checked|number})|nl2br }}\n	</div>\n\n	<xf:if is=\"$results\">\n		<div class=\"block\">\n			<div class=\"block-container\">\n				<div class=\"block-body\">\n					<xf:datalist>\n						<xf:foreach loop=\"$addOns\" key=\"$addOnId\" value=\"$addOn\">\n							<xf:if is=\"{$results.missing.{$addOnId}} OR {$results.inconsistent.{$addOnId}}\">\n								<xf:datarow rowtype=\"subsection\" rowclass=\"dataList-row--noHover\">\n									<xf:cell>{$addOn.title}</xf:cell>\n								</xf:datarow>\n\n								<xf:foreach loop=\"{$results.missing.{$addOnId}}\" value=\"$path\">\n									<xf:datarow rowclass=\"dataList-row--noHover\">\n										<xf:cell dir=\"auto\">\n											{$path}\n											<span class=\"label label--primary label--smallest\" title=\"{{ phrase(\'file_not_found\')|for_attr }}\" data-xf-init=\"tooltip\">\n												{{ phrase(\'missing\') }}\n											</span>\n										</xf:cell>\n									</xf:datarow>\n								</xf:foreach>\n\n								<xf:foreach loop=\"{$results.inconsistent.{$addOnId}}\" value=\"$path\">\n									<xf:datarow rowclass=\"dataList-row--noHover\">\n										<xf:cell dir=\"auto\">\n											{$path}\n											<span class=\"label label--primary label--smallest\" title=\"{{ phrase(\'file_contents_unexpected\')|for_attr }}\" data-xf-init=\"tooltip\">\n												{{ phrase(\'unexpected_contents\') }}\n											</span>\n										</xf:cell>\n									</xf:datarow>\n								</xf:foreach>\n							</xf:if>\n						</xf:foreach>\n					</xf:datalist>\n				</div>\n			</div>\n		</div>\n	<xf:else />\n		<div class=\"blockMessage\">{{ phrase(\'file_check_results_file_not_found_please_rerun\') }}</div>\n	</xf:if>\n</xf:if>', 0x[encoded data, 33304 characters], 0x5846, 2000570, '2.0.5', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(453, 0x61646d696e, 0x746f6f6c735f696e7374616c6c5f78665f6164646f6e, 0, '<xf:title>{{ phrase(\'install_official_xenforo_add_ons\') }}</xf:title>\n\n<xf:form action=\"{{ link(\'tools/install-xf-add-on\') }}\" class=\"block\">\n	<div class=\"block-container\">\n		<div class=\"block-body\">\n			<xf:inforow>\n				{{ phrase(\'installable_official_xenforo_add_on_explain\') }}\n			</xf:inforow>\n			<xf:checkboxrow label=\"{{ phrase(\'installable_add_ons\') }}\">\n				<xf:foreach loop=\"$installableAddOns\" key=\"$addOnId\" value=\"$install\">\n					<xf:option name=\"confirm_install[{$addOnId}]\" value=\"{$install.version_id}\">\n						{$install.title} <span class=\"u-muted\">{$install.version_string}</span>\n					</xf:option>\n				</xf:foreach>\n			</xf:checkboxrow>\n			<xf:if is=\"$upgradeCheck.license_agreement_required\">\n				<xf:checkboxrow rowtype=\"\" standalone=\"true\">\n					<xf:option name=\"agree\" required=\"required\">{{ phrase(\'install_xf_addon_terms_confirm\') }}</xf:option>\n					<xf:explain>{{ phrase(\'xf_addon_license_agreement_last_updated_x\', {\'last_agreement_update\': $upgradeCheck.last_agreement_update}) }}</xf:explain>\n				</xf:checkboxrow>\n			</xf:if>\n		</div>\n		<xf:submitrow icon=\"download\" submit=\"{{ phrase(\'download_and_install...\') }}\"/>\n	</div>\n</xf:form>', 0x[encoded data, 17902 characters], 0x5846, 2030010, '2.3.0 Alpha', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(454, 0x61646d696e, 0x746f6f6c735f72656275696c64, 0, '<xf:title>{{ phrase(\'rebuild_caches\') }}</xf:title>\n\n<xf:if is=\"$success\">\n	<div class=\"blockMessage blockMessage--success blockMessage--iconic\">{{ phrase(\'cache_rebuilt_successfully\') }}</div>\n</xf:if>\n\n<xf:if is=\"$hasStoppedManualJobs\">\n	<div class=\"blockMessage blockMessage--important blockMessage--iconic\">\n		{{ phrase(\'there_manual_rebuild_jobs_awaiting_completion_continue_running\', {\'link\': link(\'tools/run-job\')}) }}\n	</div>\n</xf:if>\n\n<!--[XF:rebuild_top]-->\n\n<xf:set var=\"$searchBody\">\n	<xf:selectrow name=\"options[type]\"\n		label=\"{{ phrase(\'content_type\') }}\">\n\n		<xf:option>{{ phrase(\'(all)\') }}</xf:option>\n		<xf:options source=\"{{ $xf.app.getContentTypePhrases(true, \'search_handler_class\') }}\" />\n	</xf:selectrow>\n\n	<xf:checkboxrow>\n		<xf:option name=\"options[truncate]\">{{ phrase(\'delete_index_before_rebuilding\') }}</xf:option>\n	</xf:checkboxrow>\n\n	<xf:numberboxrow name=\"options[batch]\" value=\"500\" min=\"1\"\n		label=\"{{ phrase(\'items_to_process_per_page\') }}\" />\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_search_index\') }}\"\n	arg-body=\"{$searchBody}\"\n	arg-job=\"XF:SearchRebuild\" />\n<!--[XF:after_search]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_icon_usage\') }}\"\n	arg-job=\"XF:IconUsage\" />\n<!--[XF:after_icon_usage]-->\n\n<xf:set var=\"$threadBody\">\n	<xf:checkboxrow>\n		<xf:option name=\"options[position_rebuild]\" value=\"1\"\n			label=\"{{ phrase(\'rebuild_position_and_post_counters\') }}\"\n			hint=\"{{ phrase(\'will_slow_process_down_only_needed_if_posts_in_incorrect_order\') }}\" />\n	</xf:checkboxrow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_threads\') }}\"\n	arg-body=\"{$threadBody}\"\n	arg-job=\"XF:Thread\" />\n<!--[XF:after_thread]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_forums\') }}\"\n	arg-job=\"XF:Forum\" />\n<!--[XF:after_forums]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_user_caches\') }}\"\n	arg-job=\"XF:User\" />\n<!--[XF:after_users]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_user_group_promotions\') }}\"\n	arg-job=\"XF:UserGroupPromotion\" />\n<!--[XF:after_promotions]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_trophies\') }}\"\n	arg-job=\"XF:Trophy\" />\n<!--[XF:after_trophies]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_reaction_score\') }}\"\n	arg-job=\"XF:ReactionScore\" />\n<!--[XF:after_reactions]-->\n\n<xf:set var=\"$likesContentTypes\" value=\"{$xf.app.getContentTypePhrases(true, \'like_handler_class\')}\" />\n<xf:if is=\"$likesContentTypes\">\n	<xf:set var=\"$likesCountedBody\">\n		<xf:selectrow name=\"options[type]\"\n			label=\"{{ phrase(\'content_type\') }}\">\n\n			<xf:options source=\"{$likesContentTypes}\" />\n		</xf:selectrow>\n	</xf:set>\n	<xf:macro id=\"rebuild_job\"\n		arg-header=\"{{ phrase(\'rebuild_likes_counted_status\') }}\"\n		arg-body=\"{$likesCountedBody}\"\n		arg-job=\"XF:LikeIsCounted\" />\n</xf:if>\n<!--[XF:after_like_status]-->\n\n<xf:set var=\"$reactionsCountedBody\">\n	<xf:selectrow name=\"options[type]\"\n		label=\"{{ phrase(\'content_type\') }}\">\n\n		<xf:options source=\"{{ $xf.app.getContentTypePhrases(true, \'reaction_handler_class\') }}\" />\n	</xf:selectrow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_reactions_counted_status\') }}\"\n	arg-body=\"{$reactionsCountedBody}\"\n	arg-job=\"XF:ReactionIsCounted\" />\n<!--[XF:after_reaction_status]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'optimize_attachments\') }}\"\n	arg-job=\"XF:AttachmentOptimization\" />\n<!--[XF:after_optimize_attachments]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'optimize_avatars\') }}\"\n	arg-job=\"XF:AvatarOptimization\" />\n<!--[XF:after_optimize_avatars]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'optimize_profile_banners\') }}\"\n	arg-job=\"XF:ProfileBannerOptimization\" />\n<!--[XF:after_optimize_profile_banners]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_attachment_thumbnails\') }}\"\n	arg-job=\"XF:AttachmentThumb\" />\n<!--[XF:after_thumbnails]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_direct_messages\') }}\"\n	arg-job=\"XF:Conversation\" />\n<!--[XF:after_conversations]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_profile_posts\') }}\"\n	arg-job=\"XF:ProfilePost\" />\n<!--[XF:after_profile_posts]-->\n\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_poll_information\') }}\"\n	arg-job=\"XF:Poll\" />\n<!--[XF:after_polls]-->\n\n<xf:set var=\"$statsBody\">\n	<xf:numberboxrow name=\"options[batch]\" value=\"28\" min=\"1\"\n		label=\"{{ phrase(\'days_to_process_per_page\') }}\" />\n\n	<xf:checkboxrow>\n		<xf:option name=\"options[delete]\" value=\"1\"\n			label=\"{{ phrase(\'delete_existing_cached_data\') }}\"\n			hint=\"{{ phrase(\'some_data_can_not_be_rebuilt\') }}\" />\n	</xf:checkboxrow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_daily_statistics\') }}\"\n	arg-body=\"{$statsBody}\"\n	arg-job=\"XF:Stats\" />\n<!--[XF:after_stats]-->\n\n<xf:form action=\"{{ link(\'tools/clean-up-permissions\') }}\" class=\"block\">\n	<div class=\"block-container\">\n		<h2 class=\"block-header\">{{ phrase(\'clean_up_permissions\') }}</h2>\n		<div class=\"block-body\">\n			<xf:inforow>{{ phrase(\'this_will_clean_up_permission_combinations_no_longer_in_use\') }}</xf:inforow>\n		</div>\n		<xf:submitrow submit=\"{{ phrase(\'run\') }}\" />\n	</div>\n</xf:form>\n<!--[XF:after_permissions]-->\n\n<xf:set var=\"$postMdBody\">\n	<xf:checkboxrow name=\"options[types]\" listclass=\"listColumns\">\n		<xf:option value=\"quotes\"\n			label=\"{{ phrase(\'quotes\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"attachments\"\n			label=\"{{ phrase(\'attachments\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"embeds\"\n			label=\"{{ phrase(\'content_embeds\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"images\"\n			label=\"{{ phrase(\'images\') }}\"\n			selected=\"true\" />\n	</xf:checkboxrow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_post_embed_metadata\') }}\"\n	arg-body=\"{$postMdBody}\"\n	arg-job=\"XF:PostEmbedMetadata\" />\n\n<xf:set var=\"$conversationMdBody\">\n	<xf:checkboxrow name=\"options[types]\" listclass=\"listColumns\">\n		<xf:option value=\"quotes\"\n			label=\"{{ phrase(\'quotes\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"attachments\"\n			label=\"{{ phrase(\'attachments\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"embeds\"\n			label=\"{{ phrase(\'content_embeds\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"images\"\n			label=\"{{ phrase(\'images\') }}\"\n			selected=\"true\" />\n	</xf:checkboxrow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_direct_message_embed_metadata\') }}\"\n	arg-body=\"{$conversationMdBody}\"\n	arg-job=\"XF:ConversationEmbedMetadata\" />\n\n<xf:set var=\"$profilePostMdBody\">\n	<xf:checkboxrow name=\"options[types]\" listclass=\"listColumns\">\n		<xf:option value=\"quotes\"\n			label=\"{{ phrase(\'quotes\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"attachments\"\n			label=\"{{ phrase(\'attachments\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"embeds\"\n			label=\"{{ phrase(\'content_embeds\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"images\"\n			label=\"{{ phrase(\'images\') }}\"\n			selected=\"true\" />\n	</xf:checkboxrow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_profile_post_embed_metadata\') }}\"\n	arg-body=\"{$profilePostMdBody}\"\n	arg-job=\"XF:ProfilePostEmbedMetadata\" />\n\n<xf:set var=\"$profilePostCommentMdBody\">\n	<xf:checkboxrow name=\"options[types]\" listclass=\"listColumns\">\n		<xf:option value=\"quotes\"\n			label=\"{{ phrase(\'quotes\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"attachments\"\n			label=\"{{ phrase(\'attachments\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"embeds\"\n			label=\"{{ phrase(\'content_embeds\') }}\"\n			selected=\"true\" />\n		<xf:option value=\"images\"\n			label=\"{{ phrase(\'images\') }}\"\n			selected=\"true\" />\n	</xf:checkboxrow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_profile_post_comment_embed_metadata\') }}\"\n	arg-body=\"{$profilePostCommentMdBody}\"\n	arg-job=\"XF:ProfilePostCommentEmbedMetadata\" />\n<!--[XF:after_metadata]-->\n\n<xf:set var=\"$sitemapBody\">\n	<xf:inforow>{{ phrase(\'sitemap_contents_can_be_controlled_via_sitemap_options\') }}</xf:inforow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'rebuild_sitemap\') }}\"\n	arg-body=\"{$sitemapBody}\"\n	arg-job=\"XF:Sitemap\" />\n<!--[XF:after_sitemap]-->\n\n<xf:set var=\"$gravatarBody\">\n	<xf:checkboxrow>\n		<xf:option name=\"options[posters_only]\" selected=\"1\" label=\"{{ phrase(\'limit_to_users_who_have_posted\') }}\" />\n		<xf:option name=\"options[import_table]\" label=\"{{ phrase(\'limit_to_imported_users_logged_in_this_table:\') }}\">\n			<xf:textbox name=\"options[import_table_name]\" />\n		</xf:option>\n		<xf:explain>{{ phrase(\'fetch_gravatars_job_explain\') }}</xf:explain>\n	</xf:checkboxrow>\n</xf:set>\n<xf:macro id=\"rebuild_job\"\n	arg-header=\"{{ phrase(\'fetch_gravatars_for_users_with_no_avatar\') }}\"\n	arg-body=\"{$gravatarBody}\"\n	arg-job=\"XF:Gravatar\" />\n\n<!--[XF:rebuild_bottom]-->\n\n<xf:macro id=\"rebuild_job\" arg-header=\"!\" arg-body=\"\" arg-submit=\"{{ phrase(\'rebuild_now\') }}\" arg-job=\"!\">\n	<span class=\"u-anchorTarget\" id=\"job-{{ $job|replace(\':\', \'-\')|to_lower }}\"></span>\n	<xf:form action=\"{{ link(\'tools/rebuild\') }}\" class=\"block\">\n		<div class=\"block-container\">\n			<h2 class=\"block-header\">{$header|raw}</h2>\n			<xf:if is=\"$body\"><div class=\"block-body\">{$body|raw}</div></xf:if>\n			<xf:submitrow submit=\"{$submit}\" />\n		</div>\n		<xf:hiddenval name=\"job\">{$job}</xf:hiddenval>\n	</xf:form>\n</xf:macro>', 0x[encoded data, 138858 characters], 0x5846, 2030170, '2.3.1', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(455, 0x61646d696e, 0x746f6f6c735f72756e5f6a6f62, 0, '<xf:title>{{ phrase(\'processing...\') }}</xf:title>\n<xf:page option=\"template\">PAGE_RUN_JOB</xf:page>\n\n<xf:if is=\"$canCancel\">\n	<xf:pageaction>\n		<form action=\"{{ link(\'tools/run-job\', null, {\'cancel\': $jobId}) }}\" method=\"post\" onsubmit=\"window.stop()\" class=\"u-pullRight\">\n			<xf:button type=\"submit\">{{ phrase(\'button.cancel\') }}</xf:button>\n			{{ redirect_input(null, null, false) }}\n			<xf:csrf />\n		</form>\n	</xf:pageaction>\n</xf:if>\n\n<form action=\"{{ link(\'tools/run-job\') }}\" method=\"post\" class=\"blockMessage\" data-xf-init=\"auto-submit\">\n\n	<div><xf:if is=\"$status\">{$status}<xf:else />{{ phrase(\'processing...\') }}</xf:if></div>\n\n	<div class=\"u-noJsOnly\">\n		<xf:button type=\"submit\">{{ phrase(\'proceed...\') }}</xf:button>\n	</div>\n	{{ redirect_input(null, null, false) }}\n	<xf:csrf />\n	<xf:hiddenval name=\"only_ids\">{$onlyIds|join(\',\')}</xf:hiddenval>\n</form>', 0x[encoded data, 15660 characters], 0x5846, 2000170, '2.0.1', 1748686057),
(456, 0x61646d696e, 0x746f6f6c735f746573745f696d6167655f70726f7879, 0, '<xf:title>{{ phrase(\'test_image_proxy\') }}</xf:title>\n<xf:description>{{ phrase(\'tool_helps_diagnose_errors_relating_to_image_proxy_system\') }}</xf:description>\n\n<xf:if is=\"$results\">\n	<xf:if is=\"$results.valid\">\n		<div class=\"blockMessage blockMessage--success blockMessage--iconic\">{{ phrase(\'url_x_was_fetched_successfully\', {\'url\': $url}) }}</div>\n	<xf:else />\n		<div class=\"blockMessage blockMessage--error blockMessage--iconic\">\n			{{ phrase(\'url_x_could_not_be_fetched_or_is_not_valid_image_error_y\', {\'url\': $url, \'error\': $results.error}) }}\n		</div>\n	</xf:if>\n</xf:if>\n\n<xf:form action=\"{{ link(\'tools/test-image-proxy\') }}\" class=\"block\">\n	<div class=\"block-container\">\n		<div class=\"block-body\">\n			<xf:textboxrow name=\"url\" value=\"{$url}\" type=\"url\"\n				label=\"{{ phrase(\'url\') }}\"\n				dir=\"ltr\" />\n		</div>\n		<xf:submitrow submit=\"{{ phrase(\'run_test\') }}\" />\n	</div>\n</xf:form>', 0x[encoded data, 13432 characters], 0x5846, 2000033, '2.0.0 Beta 3', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(457, 0x61646d696e, 0x746f6f6c735f746573745f6d61696c, 0, '<xf:title>{{ phrase(\'test_outbound_email\') }}</xf:title>\n<xf:description>{{ phrase(\'use_this_tool_to_diagnose_outbound_mail_transport_issues\') }}</xf:description>\n\n<xf:if is=\"$result\">\n	<xf:if is=\"$result.sent is not empty\">\n		<div class=\"blockMessage blockMessage--success\">\n			{{ phrase(\'email_was_sent_successfully_with_no_errors\') }}\n			<xf:if is=\"$transportClass == \'Symfony\\Component\\Mailer\\Transport\\SendmailTransport\'\">\n				{{ phrase(\'note_error_tracking_limited_with_sendmail_check_email_log\') }}\n			</xf:if>\n		</div>\n	<xf:else />\n		<div class=\"blockMessage blockMessage--error\">\n			{{ phrase(\'errors_were_encountered_while_trying_to_send_email\') }}\n		</div>\n	</xf:if>\n	<xf:if is=\"$result.log\">\n		<div class=\"block\">\n			<div class=\"block-container\">\n				<h3 class=\"block-formSectionHeader\">\n					<span class=\"collapseTrigger collapseTrigger--block\" data-xf-click=\"toggle\" data-target=\"< :up:next\">\n						{{ phrase(\'expand_log_details\') }}\n					</span>\n				</h3>\n				<div class=\"block-body block-body--contained block-body--collapsible\" tabindex=\"-1\">\n					<div class=\"block-row\">\n						<pre>{$result.log}</pre>\n					</div>\n				</div>\n			</div>\n		</div>\n	</xf:if>\n</xf:if>\n\n<xf:form action=\"{{ link(\'tools/test-email\') }}\" class=\"block\">\n	<div class=\"block-container\">\n		<div class=\"block-body\">\n			<xf:textboxrow name=\"email\" value=\"{$email}\" type=\"email\"\n				label=\"{{ phrase(\'email\') }}\"\n				dir=\"ltr\" />\n\n			<xf:formrow label=\"{{ phrase(\'email_transport_class\') }}\">\n				<code>\\{$transportClass}<xf:if is=\"$transportExtra\"> ({$transportExtra})</xf:if></code>\n			</xf:formrow>\n		</div>\n		<xf:submitrow submit=\"{{ phrase(\'run_test\') }}\" />\n	</div>\n</xf:form>', 0x[encoded data, 19656 characters], 0x5846, 2030010, '2.3.0 Alpha', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(458, 0x61646d696e, 0x746f6f6c735f746573745f75726c5f756e6675726c696e67, 0, '<xf:title>{{ phrase(\'test_url_unfurling\') }}</xf:title>\n<xf:description>{{ phrase(\'this_tool_helps_diagnose_errors_relating_to_url_unfurl_system\') }}</xf:description>\n\n<xf:if is=\"$error\">\n	<div class=\"blockMessage blockMessage--error\">\n		{{ phrase(\'following_error_occurred_while_fetching_metadata_from_url_x\', {\'url\': $url}) }}<br />\n		<pre class=\"u-preWrap\">{$error}</pre>\n	</div>\n</xf:if>\n\n<xf:form action=\"{{ link(\'tools/test-url-unfurling\') }}\" class=\"block\">\n	<div class=\"block-container\">\n		<div class=\"block-body\">\n			<xf:textboxrow name=\"url\" type=\"url\"\n				label=\"{{ phrase(\'url\') }}\" value=\"{$url}\" />\n		</div>\n		<xf:submitrow submit=\"{{ phrase(\'run_test\') }}\" />\n	</div>\n</xf:form>\n\n<xf:if contentcheck=\"true\">\n	<div class=\"block\">\n		<div class=\"block-container\">\n		<xf:contentcheck>\n			<xf:if is=\"$results\">\n				<h2 class=\"block-header\">{{ phrase(\'results\') }}</h2>\n				<div class=\"block-body\">\n					<xf:formrow label=\"{{ phrase(\'title\') }}\">\n						{{ $results.title ?: phrase(\'n_a\') }}\n					</xf:formrow>\n\n					<xf:formrow label=\"{{ phrase(\'description\') }}\">\n						{{ $results.description ?: phrase(\'n_a\') }}\n					</xf:formrow>\n\n					<xf:formrow label=\"{{ phrase(\'image\') }}\">\n						<xf:if is=\"$results.image_url\">\n							<img src=\"{$results.image_url}\" style=\"width: 100px\" />\n							<div class=\"formRow-explain\">\n								{{ phrase(\'url:\') }} <a href=\"{$results.image_url}\" target=\"_blank\">{$results.image_url}</a>\n							</div>\n						<xf:else />\n							{{ phrase(\'n_a\') }}\n						</xf:if>\n					</xf:formrow>\n\n					<xf:formrow label=\"{{ phrase(\'icon\') }}\">\n						<xf:if is=\"$results.favicon_url\">\n							<img src=\"{$results.favicon_url}\" style=\"width: 32px\" />\n							<div class=\"formRow-explain\">\n								{{ phrase(\'url:\') }} <a href=\"{$results.favicon_url}\" target=\"_blank\">{$results.favicon_url}</a>\n							</div>\n						<xf:else />\n							{{ phrase(\'n_a\') }}\n						</xf:if>\n					</xf:formrow>\n				</div>\n			</xf:if>\n\n			<xf:if is=\"$body\">\n				<xf:if is=\"$results\">\n					<h2 class=\"block-minorHeader\">\n						<span class=\"collapseTrigger collapseTrigger--block\" data-xf-click=\"toggle\" data-target=\"< :up :next\">\n							{{ phrase(\'raw_response\') }}\n						</span>\n					</h2>\n				<xf:else />\n					<h2 class=\"block-header\">{{ phrase(\'raw_response\') }}</h2>\n				</xf:if>\n				<div class=\"block-body {{ $results ? \'block-body--collapsible\' : \'\' }}\">\n					<xf:macro id=\"public:prism_macros::setup\" />\n\n					<xf:formrow label=\"{{ phrase(\'code_language.html\') }}\" rowtype=\"fullWidth noLabel\">\n						{{ phrase(\'following_html_is_what_was_fetched_within_default_time_and_size\') }}\n\n						<div class=\"bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code\">\n							<div class=\"bbCodeBlock-content\" dir=\"ltr\">\n								<pre class=\"bbCodeCode\" dir=\"ltr\"><code>{$body}</code></pre>\n							</div>\n						</div>\n					</xf:formrow>\n				</div>\n			</xf:if>\n		</xf:contentcheck>\n		</div>\n	</div>\n</xf:if>\n', 0x[encoded data, 42546 characters], 0x5846, 2030010, '2.3.0 Alpha', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(459, 0x61646d696e, 0x746f6f6c735f7472616e736d6f677269666572, 0, '<xf:title>{{ phrase(\'transmogrification_reset_control\') }}</xf:title>\n\n<xf:css>\n	.transmogrifier\n	{\n		border: none;\n		padding: 10px 0;\n		width: 310px;\n		margin: 30px auto;\n\n		background-color: yellow;\n		background-image: repeating-linear-gradient(-45deg, transparent, transparent 15px, rgb(0,0,0) 15px, rgb(0,0,0) 30px);\n	}\n\n	.transmogrifier div\n	{\n		padding: 20px 0;\n		background-color: #f0f0f0;\n		border: 1px solid black;\n		width: 280px;\n		text-align: center;\n		margin: auto;\n	}\n\n	.transmogrifier button\n	{\n		width: 240px;\n		background-color: white;\n		border: 2px outset black;\n		color: red;\n		font-size: 12pt;\n		font-weight: bold;\n		text-transform: uppercase;\n		padding: 10px;\n		box-shadow: 2px 2px 10px 0px rgba(0,0,0,0.5);\n	}\n\n	.transmogrifier button:active\n	{\n		background-color: #ffff33;\n		-webkit-box-shadow: 0 0 0 0 transparent;\n		-moz-box-shadow: 0 0 0 0 transparent;\n		-khtml-box-shadow: 0 0 0 0 transparent;\n		box-shadow: 0 0 0 0 transparent;\n		text-shadow: 0 0 0 transparent, 0 0 10px white;\n	}\n\n	.transmogrifier button:hover\n	{\n		background-color: #ffff77;\n	}\n</xf:css>\n\n<xf:form action=\"{{ link(\'tools/transmogrifier-reset\') }}\" class=\"block\">\n	<div class=\"block-container\">\n		<div class=\"block-body\">\n			<xf:inforow rowtype=\"confirm\">\n				{{ phrase(\'you_sure_you_want_to_issue_transmogrification_reset_imperative\') }}\n				<div class=\"transmogrifier\">\n					<div><xf:button type=\"submit\" icon=\"confirm\">{{ phrase(\'reset_transmogrifier\') }}</xf:button></div>\n				</div>\n			</xf:inforow>\n		</div>\n	</div>\n</xf:form>', 0x[encoded data, 9008 characters], 0x5846, 2000170, '2.0.1', 1748686057),
(460, 0x61646d696e, 0x746f6f6c735f7472616e736d6f6772696665725f7265736574, 0, '<xf:title>{{ phrase(\'transmogrification_reset_successful\') }}</xf:title>\n\n<div class=\"blockMessage blockMessage--success blockMessage--iconic\" style=\"text-align: center\">\n	{{ phrase(\'transmogrification_reset_imperative_was_generated_and_executed\') }}\n	<div>\n		<dl class=\"pairs pairs--inline\">\n			<dt>{{ phrase(\'transmogrification_count\') }}</dt>\n			<dd>{$count|number}</dd>\n		</dl>\n	</div>\n</div>', 0x4f3a32343a2258465c54656d706c6174655c436f6d70696c65725c417374223a313a7b733a383a226368696c6472656e223b613a383a7b693a303b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c546167223a373a7b733a343a226c696e65223b693a313b733a343a226e616d65223b733a353a227469746c65223b733a31303a2261747472696275746573223b613a303a7b7d733a383a226368696c6472656e223b613a313a7b693a303b4f3a33383a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c45787072657373696f6e223a323a7b733a343a226c696e65223b693a313b733a31303a2265787072657373696f6e223b4f3a33323a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c46756e63223a333a7b733a343a226c696e65223b693a313b733a343a226e616d65223b733a363a22706872617365223b733a393a22617267756d656e7473223b613a313a7b693a303b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a313b733a373a22636f6e74656e74223b733a33353a227472616e736d6f6772696669636174696f6e5f72657365745f7375636365737366756c223b7d7d7d7d7d733a31313a22697353656c66436c6f7365223b623a303b733a31303a22657874656e73696f6e73223b613a303a7b7d733a353a226465707468223b693a303b7d693a313b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a313b733a373a22636f6e74656e74223b733a3130303a220a0a3c64697620636c6173733d22626c6f636b4d65737361676520626c6f636b4d6573736167652d2d7375636365737320626c6f636b4d6573736167652d2d69636f6e696322207374796c653d22746578742d616c69676e3a2063656e746572223e0a09223b7d693a323b4f3a33383a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c45787072657373696f6e223a323a7b733a343a226c696e65223b693a343b733a31303a2265787072657373696f6e223b4f3a33323a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c46756e63223a333a7b733a343a226c696e65223b693a343b733a343a226e616d65223b733a363a22706872617365223b733a393a22617267756d656e7473223b613a313a7b693a303b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a343b733a373a22636f6e74656e74223b733a36323a227472616e736d6f6772696669636174696f6e5f72657365745f696d70657261746976655f7761735f67656e6572617465645f616e645f6578656375746564223b7d7d7d7d693a333b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a343b733a373a22636f6e74656e74223b733a35303a220a093c6469763e0a09093c646c20636c6173733d2270616972732070616972732d2d696e6c696e65223e0a0909093c64743e223b7d693a343b4f3a33383a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c45787072657373696f6e223a323a7b733a343a226c696e65223b693a373b733a31303a2265787072657373696f6e223b4f3a33323a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c46756e63223a333a7b733a343a226c696e65223b693a373b733a343a226e616d65223b733a363a22706872617365223b733a393a22617267756d656e7473223b613a313a7b693a303b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a373b733a373a22636f6e74656e74223b733a32343a227472616e736d6f6772696669636174696f6e5f636f756e74223b7d7d7d7d693a353b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a373b733a373a22636f6e74656e74223b733a31333a223c2f64743e0a0909093c64643e223b7d693a363b4f3a33363a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c5661726961626c65223a343a7b733a343a226c696e65223b693a383b733a343a226e616d65223b733a353a22636f756e74223b733a31303a2264696d656e73696f6e73223b613a303a7b7d733a373a2266696c74657273223b613a313a7b693a303b613a323a7b693a303b733a363a226e756d626572223b693a313b613a303a7b7d7d7d7d693a373b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a383b733a373a22636f6e74656e74223b733a32383a223c2f64643e0a09093c2f646c3e0a093c2f6469763e0a3c2f6469763e223b7d7d7d, 0x5846, 2000010, '2.0.0 Alpha', 1748686057),
(461, 0x61646d696e, 0x746f6f6c735f757067726164655f636865636b, 0, '<xf:title>{{ phrase(\'upgrade_check\') }}</xf:title>\n\n<xf:if is=\"$failed\">\n	<div class=\"blockMessage blockMessage--error\">\n		{{ phrase(\'last_upgrade_check_failed_see_log\') }}\n	</div>\n</xf:if>\n\n<xf:if is=\"$upgradeCheck\">\n	<xf:macro id=\"upgrade_check_macros::full_status\"\n		arg-upgradeCheck=\"{$upgradeCheck}\"\n		arg-showSuccess=\"{{ true }}\"\n	/>\n</xf:if>\n\n<xf:form action=\"{{ link(\'tools/upgrade-check\') }}\" class=\"block\">\n	<div class=\"block-container\">\n		<div class=\"block-body block-row\">\n			<xf:inforow rowtype=\"close\">\n				<xf:if is=\"$upgradeCheck.check_date\">\n					{{ phrase(\'last_upgrade_check_x\', {\'date\': date_dynamic($upgradeCheck.check_date)}) }}\n				<xf:else />\n					{{ phrase(\'no_upgrade_check_has_been_performed\') }}\n				</xf:if>\n			</xf:inforow>\n		</div>\n		<xf:submitrow submit=\"{{ phrase(\'check_now...\') }}\" rowtype=\"simple\" />\n	</div>\n</xf:form>', 0x[encoded data, 13572 characters], 0x5846, 2030010, '2.3.0 Alpha', 1748686057);
