INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(345, 0x61646d696e, 0x7065726d697373696f6e5f63617465676f72795f6d6163726f73, 0, '<xf:macro id=\"list\"\n	arg-category=\"!\"\n	arg-isPrivate=\"!\"\n	arg-userGroups=\"!\"\n	arg-users=\"!\"\n	arg-entries=\"!\"\n	arg-routeBase=\"!\">\n\n	<xf:form action=\"{{ link($routeBase . \'/save\', $category) }}\" ajax=\"true\" class=\"block\">\n		<div class=\"block-container\">\n			<div class=\"block-body\">\n				<xf:checkboxrow>\n					<xf:option name=\"private\" selected=\"{$isPrivate}\"\n						label=\"{{ phrase(\'private_category\') }}\"\n						hint=\"{{ phrase(\'private_category_hint\') }}\" />\n				</xf:checkboxrow>\n			</div>\n			<xf:submitrow icon=\"save\" />\n		</div>\n		<xf:hiddenval name=\"type\">private</xf:hiddenval>\n	</xf:form>\n\n	<div class=\"block\">\n		<div class=\"block-container\">\n			<h3 class=\"block-header\">{{ phrase(\'user_groups\') }}</h3>\n			<div class=\"block-body\">\n				<xf:datalist>\n					<xf:foreach loop=\"$userGroups\" value=\"$userGroup\">\n						<xf:datarow\n							label=\"{$userGroup.title}\"\n							href=\"{{ link($routeBase . \'/edit\', $category, {\'user_group_id\': $userGroup.user_group_id}) }}\"\n							rowclass=\"{{ {$entries.groups.{$userGroup.user_group_id}} ? \'dataList-row--custom\' : \'\' }}\" />\n					</xf:foreach>\n				</xf:datalist>\n			</div>\n		</div>\n	</div>\n\n	<xf:form action=\"{{ link($routeBase . \'/edit\', $category) }}\" class=\"block\">\n		<div class=\"block-container\">\n			<h3 class=\"block-header\">{{ phrase(\'users_with_permissions_set\') }}</h3>\n			<div class=\"block-body\">\n				<xf:if is=\"$users is not empty\">\n					<xf:datalist>\n						<xf:foreach loop=\"$users\" value=\"$user\">\n							<xf:datarow\n								label=\"{$user.username}\"\n								href=\"{{ link($routeBase . \'/edit\', $category, {\'user_id\': $user.user_id}) }}\"\n								rowclass=\"dataList-row--custom\" />\n						</xf:foreach>\n					</xf:datalist>\n					<hr class=\"block-separator\" />\n				</xf:if>\n				<xf:textboxrow name=\"username\" ac=\"single\"\n					label=\"{{ phrase(\'set_permissions_for_user\') }}\" />\n			</div>\n			<xf:submitrow submit=\"{{ phrase(\'proceed...\') }}\" />\n		</div>\n		<xf:hiddenval name=\"type\">user</xf:hiddenval>\n	</xf:form>\n</xf:macro>\n\n<xf:macro id=\"edit\"\n	arg-category=\"!\"\n	arg-permissionData=\"!\"\n	arg-typeEntries=\"!\"\n	arg-routeBase=\"!\"\n	arg-saveParams=\"!\">\n\n	<xf:form action=\"{{ link($routeBase . \'/save\', $category, $saveParams) }}\" ajax=\"true\" class=\"block\">\n		<xf:macro id=\"permission_macros::edit_outer\" arg-type=\"content\" />\n\n		<div class=\"block-container\">\n			<xf:macro id=\"permission_macros::content_edit_groups\"\n				arg-permissionsGrouped=\"{$permissionData.permissionsGrouped}\"\n				arg-interfaceGroups=\"{$permissionData.interfaceGroups}\"\n				arg-values=\"{$typeEntries}\"\n			/>\n			<xf:submitrow sticky=\"true\" icon=\"save\" />\n		</div>\n	</xf:form>\n</xf:macro>', 0x[encoded data, 42372 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
(346, 0x61646d696e, 0x7065726d697373696f6e5f646566696e6974696f6e5f65646974, 0, '<xf:if is=\"$permission.isInsert()\">\n	<xf:title>{{ phrase(\'add_permission\') }}</xf:title>\n<xf:else />\n	<xf:title>{{ phrase(\'edit_permission:\') }} {$permission.title}</xf:title>\n</xf:if>\n\n<xf:pageaction if=\"$permission.isUpdate()\">\n	<xf:button href=\"{{ link(\'permission-definitions/permissions/delete\', $permission) }}\" icon=\"delete\" overlay=\"true\" />\n</xf:pageaction>\n\n<xf:form action=\"{{ link(\'permission-definitions/permissions/save\', $permission) }}\" ajax=\"true\" class=\"block\">\n\n	<div class=\"block-container\">\n		<div class=\"block-body\">\n			<xf:textboxrow name=\"permission_group_id\" value=\"{$permission}\"\n				label=\"{{ phrase(\'permission_group\') }}\"\n				dir=\"ltr\" />\n			<xf:textboxrow name=\"permission_id\" value=\"{$permission}\"\n				label=\"{{ phrase(\'permission_id\') }}\"\n				dir=\"ltr\" />\n\n			<xf:textboxrow name=\"title\" value=\"{$permission}\"\n				label=\"{{ phrase(\'title\') }}\" />\n\n			<xf:textboxrow name=\"depend_permission_id\" value=\"{$permission}\"\n				label=\"{{ phrase(\'depends_on_permission_id\') }}\"\n				hint=\"{{ phrase(\'must_be_in_same_permission_group\') }}\" />\n\n			<hr class=\"formRowSep\" />\n\n			<xf:radiorow name=\"permission_type\" value=\"{$permission}\"\n				label=\"{{ phrase(\'permission_type\') }}\">\n\n				<xf:option value=\"flag\">{{ phrase(\'flag\') }}</xf:option>\n				<xf:option value=\"integer\">{{ phrase(\'integer\') }}</xf:option>\n			</xf:radiorow>\n\n			<hr class=\"formRowSep\" />\n\n			<xf:selectrow name=\"interface_group_id\" value=\"{$permission}\"\n				label=\"{{ phrase(\'interface_group\') }}\">\n\n				<xf:option value=\"\" />\n				<xf:foreach loop=\"$interfaceGroups\" value=\"$interfaceGroup\">\n					<xf:option value=\"{$interfaceGroup.interface_group_id}\">{$interfaceGroup.title}</xf:option>\n				</xf:foreach>\n			</xf:selectrow>\n\n			<xf:macro id=\"display_order_macros::row\" arg-value=\"{$permission}\" />\n\n			<hr class=\"formRowSep\" />\n\n			<xf:macro id=\"addon_macros::addon_edit\" arg-addOnId=\"{$permission.addon_id}\" />\n		</div>\n		<xf:submitrow sticky=\"true\" icon=\"save\" />\n	</div>\n\n</xf:form>', 0x[encoded data, 30772 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
(347, 0x61646d696e, 0x7065726d697373696f6e5f646566696e6974696f6e5f6c697374, 0, '<xf:title>{{ phrase(\'permissions\') }}</xf:title>\n\n<xf:pageaction>\n	<xf:button href=\"{{ link(\'permission-definitions/permissions/add\') }}\" icon=\"add\">\n		{{ phrase(\'add_permission\') }}\n	</xf:button>\n	<xf:button href=\"{{ link(\'permission-definitions/interface-groups/add\') }}\" icon=\"add\">\n		{{ phrase(\'add_interface_group\') }}\n	</xf:button>\n</xf:pageaction>\n\n<xf:foreach loop=\"$interfaceGroups\" key=\"$interfaceGroupId\" value=\"$interfaceGroup\">\n	<div class=\"block\">\n		<div class=\"block-container\">\n			<h2 class=\"block-header\">\n					<span class=\"u-pullRight\">\n\n						<xf:button href=\"{{ link(\'permission-definitions/permissions/add\', null, {\'interface_group_id\': $interfaceGroupId}) }}\" class=\"button--link\" fa=\"fa-plus-square\">{{ phrase(\'add_permission\') }}</xf:button>\n						<xf:button href=\"{{ link(\'permission-definitions/interface-groups/edit\', $interfaceGroup) }}\" class=\"button--link\" fa=\"fa-edit\">{{ phrase(\'edit\') }}</xf:button>\n					</span>\n				{{ anchor_target(\'interface_group_\' . $interfaceGroup.interface_group_id) }}\n				{$interfaceGroup.title}\n				<span class=\"block-desc\">\n					{$interfaceGroupId} ({$interfaceGroup.display_order})\n				</span>\n			</h2>\n			<div class=\"block-body\">\n				<xf:if is=\"{$permissionsGrouped.{$interfaceGroupId}} is not empty\">\n					<xf:datalist>\n						<xf:foreach loop=\"{$permissionsGrouped.{$interfaceGroupId}}\" value=\"$permission\">\n							<xf:datarow\n								href=\"{{ link(\'permission-definitions/permissions/edit\', $permission) }}\"\n								label=\"{$permission.title}\"\n								hint=\"{$permission.permission_group_id} / {$permission.permission_id} ({$permission.display_order})\"\n								hash=\"{$permission.permission_group_id}_{$permission.permission_id}\" />\n						</xf:foreach>\n					</xf:datalist>\n				<xf:else />\n					<div class=\"block-row\">\n						{{ phrase(\'no_permissions_have_been_created_for_interface_group_yet\', {\n							\'link\': link(\'permission-definitions/permissions/add\', null, {\n								\'interface_group_id\': $interfaceGroupId\n							})\n						}) }}\n					</div>\n				</xf:if>\n			</div>\n		</div>\n	</div>\n</xf:foreach>\n\n<xf:set var=\"$ungroupedKey\" value=\"\" />\n<xf:if is=\"{$permissionsGrouped.{$ungroupedKey}} is not empty\">\n	<div class=\"block\">\n		<div class=\"block-container\">\n			<h2 class=\"block-header\">\n				{{ phrase(\'ungrouped_permissions\') }}\n			</h2>\n			<div class=\"block-body\">\n				<xf:datalist>\n					<xf:foreach loop=\"{$permissionsGrouped.{$ungroupedKey}}\" value=\"$permission\">\n						<xf:datarow\n							href=\"{{ link(\'permission-definitions/permissions/edit\', $permission) }}\"\n							label=\"{$permission.title}\"\n							hint=\"{$permission.permission_group_id} / {$permission.permission_id}\"\n							hash=\"{$permission.permission_group_id}_{$permission.permission_id}\" />\n					</xf:foreach>\n				</xf:datalist>\n			</div>\n		</div>\n	</div>\n</xf:if>', 0x[encoded data, 41760 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
(348, 0x61646d696e, 0x7065726d697373696f6e5f696e746572666163655f67726f75705f65646974, 0, '<xf:if is=\"$interfaceGroup.isInsert()\">\n	<xf:title>{{ phrase(\'add_interface_group\') }}</xf:title>\n<xf:else />\n	<xf:title>{{ phrase(\'edit_interface_group:\') }} {$interfaceGroup.title}</xf:title>\n</xf:if>\n\n<xf:pageaction if=\"$interfaceGroup.isUpdate()\">\n	<xf:button href=\"{{ link(\'permission-definitions/interface-groups/delete\', $interfaceGroup) }}\"\n		icon=\"delete\" overlay=\"true\" />\n</xf:pageaction>\n\n<xf:form action=\"{{ link(\'permission-definitions/interface-groups/save\', $interfaceGroup) }}\" ajax=\"true\" class=\"block\">\n	<div class=\"block-container\">\n		<div class=\"block-body\">\n			<xf:textboxrow name=\"interface_group_id\" value=\"{$interfaceGroup}\"\n				label=\"{{ phrase(\'interface_group_id\') }}\"\n				dir=\"ltr\" />\n\n			<xf:textboxrow name=\"title\" value=\"{$interfaceGroup}\"\n				label=\"{{ phrase(\'title\') }}\" />\n\n			<xf:macro id=\"display_order_macros::row\" arg-value=\"{$interfaceGroup}\" />\n\n			<xf:checkboxrow name=\"is_moderator\" value=\"{$interfaceGroup.is_moderator}\">\n				<xf:option value=\"1\" label=\"{{ phrase(\'this_interface_group_contains_moderator_permissions\') }}\" />\n			</xf:checkboxrow>\n\n			<xf:macro id=\"addon_macros::addon_edit\" arg-addOnId=\"{$interfaceGroup.addon_id}\" />\n		</div>\n		<xf:submitrow sticky=\"true\" icon=\"save\" />\n	</div>\n\n</xf:form>', 0x[encoded data, 19422 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
(349, 0x61646d696e, 0x7065726d697373696f6e5f6d6163726f73, 0, '<xf:macro id=\"edit_outer\" arg-type=\"!\" arg-class=\"block-outer\">\n	<xf:js src=\"xf/permission.js\" min=\"1\" />\n	<xf:css src=\"permission.less\" />\n\n	<div class=\"{$class}\"\n		data-xf-init=\"permission-form\"\n		data-form=\"< form\"\n		data-permission-type=\"{$type}\">\n\n		<div class=\"{$class}-main js-globalPermissionQuickSet\">\n			<xf:button class=\"button--link menuTrigger\" data-xf-click=\"menu\" aria-expanded=\"false\" aria-haspopup=\"true\">{{ phrase(\'quick_set\') }}</xf:button>\n			<xf:macro id=\"quick_set_menu\" arg-type=\"{$type}\" />\n		</div>\n		<div class=\"{$class}-opposite quickFilter\">\n			<input type=\"search\" class=\"input js-permissionFilterInput\" placeholder=\"{{ phrase(\'filter...\') }}\" />\n		</div>\n	</div>\n\n</xf:macro>\n\n<xf:macro id=\"quick_set_menu\" arg-type=\"!\" arg-target=\"\">\n	<div class=\"menu\" data-menu=\"menu\" aria-hidden=\"true\">\n		<div class=\"menu-content\">\n			<h3 class=\"menu-header\">{{ phrase(\'quick_set\') }}</h3>\n			<xf:if is=\"$type == \'global\'\">\n				<a class=\"menu-linkRow js-permissionQuickSet\" data-target=\"{$target}\" data-value=\"allow\" tabindex=\"0\">\n					{{ phrase(\'set_all_to_x\', {\'value\': phrase(\'yes\')}) }}\n				</a>\n				<a class=\"menu-linkRow js-permissionQuickSet\" data-target=\"{$target}\" data-value=\"unset\" tabindex=\"0\">\n					{{ phrase(\'set_all_to_x\', {\'value\': phrase(\'no\')}) }}\n				</a>\n				<a class=\"menu-linkRow js-permissionQuickSet\" data-target=\"{$target}\" data-value=\"deny\" tabindex=\"0\">\n					{{ phrase(\'set_all_to_x\', {\'value\': phrase(\'never\')}) }}\n				</a>\n			<xf:elseif is=\"$type == \'content\'\" />\n				<a class=\"menu-linkRow js-permissionQuickSet\" data-target=\"{$target}\" data-value=\"unset\" tabindex=\"0\">\n					{{ phrase(\'set_all_to_x\', {\'value\': phrase(\'inherit\')}) }}\n				</a>\n				<a class=\"menu-linkRow js-permissionQuickSet\" data-target=\"{$target}\" data-value=\"content_allow\" tabindex=\"0\">\n					{{ phrase(\'set_all_to_x\', {\'value\': phrase(\'yes\')}) }}\n				</a>\n				<a class=\"menu-linkRow js-permissionQuickSet\" data-target=\"{$target}\" data-value=\"reset\" tabindex=\"0\">\n					{{ phrase(\'set_all_to_x\', {\'value\': phrase(\'no\')}) }}\n				</a>\n				<a class=\"menu-linkRow js-permissionQuickSet\" data-target=\"{$target}\" data-value=\"deny\" tabindex=\"0\">\n					{{ phrase(\'set_all_to_x\', {\'value\': phrase(\'never\')}) }}\n				</a>\n			</xf:if>\n		</div>\n	</div>\n</xf:macro>\n\n<xf:macro id=\"edit_groups\" arg-interfaceGroups=\"!\" arg-permissionsGrouped=\"!\" arg-values=\"!\">\n	<xf:foreach loop=\"$interfaceGroups\" key=\"$interfaceGroupId\" value=\"$interfaceGroup\">\n		<xf:if is=\"{$permissionsGrouped.{$interfaceGroupId}} is not empty\">\n			<h3 class=\"block-formSectionHeader\">\n				<span class=\"collapseTrigger collapseTrigger--block is-active\" data-xf-click=\"toggle\" data-target=\"< :up:next\">\n					<span class=\"block-formSectionHeader-aligner\">{$interfaceGroup.title}</span>\n				</span>\n			</h3>\n			<div class=\"block-body block-body--collapsible is-active\"\n				data-moderator-permissions=\"{$interfaceGroup.is_moderator}\"\n				id=\"permGroup-{$interfaceGroupId}\">\n\n				<xf:if is=\"count({$permissionsGrouped.{$interfaceGroupId}}) > 2\">\n					<xf:formrow rowclass=\"formRow--permissionQuickSet\">\n						<xf:button class=\"button--link menuTrigger\" data-xf-click=\"menu\" aria-expanded=\"false\" aria-haspopup=\"true\">{{ phrase(\'quick_set\') }}</xf:button>\n						<xf:macro id=\"quick_set_menu\" arg-type=\"global\" arg-target=\"#permGroup-{$interfaceGroupId}\" />\n					</xf:formrow>\n				</xf:if>\n				<xf:foreach loop=\"{$permissionsGrouped.{$interfaceGroupId}}\" value=\"$permission\">\n					<xf:macro id=\"edit_permission\"\n						arg-permission=\"{$permission}\"\n						arg-value=\"{$values.{$permission.permission_group_id}.{$permission.permission_id}}\" />\n				</xf:foreach>\n			</div>\n		</xf:if>\n	</xf:foreach>\n</xf:macro>\n\n<xf:macro id=\"edit_permission\" arg-permission=\"!\" arg-value=\"!\">\n	<xf:set var=\"$inputName\" value=\"permissions[{$permission.permission_group_id}][{$permission.permission_id}]\" />\n	<xf:formrow\n		label=\"{$permission.title}\"\n		rowclass=\"js-permission\"\n		data-xf-init=\"permission-choice\"\n		data-permission-type=\"{$permission.permission_type}\">\n\n		<xf:if is=\"$permission.permission_type == \'flag\'\">\n			<ul class=\"permissionChoices permissionChoices--flag\">\n				<li class=\"permissionChoices-choice permissionChoices-choice--yes\">\n					<xf:radio name=\"{$inputName}\" value=\"{$value}\" standalone=\"true\">\n						<xf:option value=\"allow\"\n							label=\"{{ phrase(\'yes\') }}\" />\n					</xf:radio>\n				</li>\n				<li class=\"permissionChoices-choice permissionChoices-choice--no\">\n					<xf:radio name=\"{$inputName}\" value=\"{{ ($value == \'unset\' || !$value) ? \'unset\' : \'\' }}\" standalone=\"true\">\n						<xf:option value=\"unset\"\n							label=\"{{ phrase(\'no\') }}\" />\n					</xf:radio>\n				</li>\n				<li class=\"permissionChoices-choice permissionChoices-choice--never\">\n					<xf:radio name=\"{$inputName}\" value=\"{$value}\" standalone=\"true\">\n						<xf:option value=\"deny\"\n							label=\"{{ phrase(\'never\') }}\" />\n					</xf:radio>\n				</li>\n			</ul>\n		<xf:else />\n			<ul class=\"permissionChoices permissionChoices--int\">\n				<li class=\"permissionChoices-choice permissionChoices-choice--yes\">\n					<xf:radio name=\"{$inputName}\" value=\"{$value}\" standalone=\"true\">\n						<xf:option value=\"-1\"\n							label=\"{{ phrase(\'unlimited\') }}\" />\n					</xf:radio>\n				</li>\n				<li class=\"permissionChoices-choice permissionChoices-choice--int\">\n					<div class=\"inputGroup inputGroup--inline inputGroup--joined inputNumber\">\n						<span class=\"inputGroup-text\">\n							<xf:radio name=\"{$inputName}\" value=\"{$value}\" standalone=\"true\">\n								<xf:option value=\"0\"\n									selected=\"{{ $value >= 0 }}\"\n									data-xf-init=\"disabler\"\n									data-container=\"< li\"\n									label=\"{{ phrase(\'as_follows:\') }}\"\n									hiddenlabel=\"true\"\n									id=\"perm_{$permission.permission_group_id}_{$permission.permission_id}_radio\" />\n							</xf:radio>\n							<label class=\"permissionChoices-choiceIntLabel\" for=\"perm_{$permission.permission_group_id}_{$permission.permission_id}_radio\"></label>\n						</span>\n						<xf:textbox name=\"{$inputName}\" value=\"{{ $value >= 0 ? $value|default(0) : 0 }}\" type=\"number\"\n							class=\"input--number js-numberBoxTextInput js-permissionIntInput\"\n							min=\"0\" pattern=\"\\d*\" />\n					</div>\n				</li>\n			</ul>\n		</xf:if>\n	</xf:formrow>\n</xf:macro>\n\n<xf:macro id=\"content_edit_groups\" arg-interfaceGroups=\"!\" arg-permissionsGrouped=\"!\" arg-values=\"!\">\n	<xf:foreach loop=\"$interfaceGroups\" key=\"$interfaceGroupId\" value=\"$interfaceGroup\">\n		<xf:if is=\"{$permissionsGrouped.{$interfaceGroupId}} is not empty\">\n			<h3 class=\"block-formSectionHeader\">\n				<span class=\"collapseTrigger collapseTrigger--block is-active\" data-xf-click=\"toggle\" data-target=\"< :up:next\">\n					<span class=\"block-formSectionHeader-aligner\">{$interfaceGroup.title}</span>\n				</span>\n			</h3>\n			<div class=\"block-body block-body--collapsible is-active\"\n				data-moderator-permissions=\"{$interfaceGroup.is_moderator}\"\n				id=\"permGroup-{$interfaceGroupId}\">\n\n				<xf:if is=\"count({$permissionsGrouped.{$interfaceGroupId}}) > 2\">\n					<xf:formrow rowclass=\"formRow--permissionQuickSet\">\n						<xf:button class=\"button--link menuTrigger\" data-xf-click=\"menu\" aria-expanded=\"false\" aria-haspopup=\"true\">{{ phrase(\'quick_set\') }}</xf:button>\n						<xf:macro id=\"quick_set_menu\" arg-type=\"content\" arg-target=\"#permGroup-{$interfaceGroupId}\" />\n					</xf:formrow>\n				</xf:if>\n				<xf:foreach loop=\"{$permissionsGrouped.{$interfaceGroupId}}\" value=\"$permission\">\n					<xf:macro id=\"content_edit_permission\"\n						arg-permission=\"{$permission}\"\n						arg-value=\"{$values.{$permission.permission_group_id}.{$permission.permission_id}}\" />\n				</xf:foreach>\n			</div>\n		</xf:if>\n	</xf:foreach>\n</xf:macro>\n\n<xf:macro id=\"content_edit_permission\" arg-permission=\"!\" arg-value=\"!\">\n	<xf:set var=\"$inputName\" value=\"permissions[{$permission.permission_group_id}][{$permission.permission_id}]\" />\n	<xf:formrow\n		label=\"{$permission.title}\"\n		rowclass=\"js-permission\"\n		data-xf-init=\"permission-choice\"\n		data-permission-type=\"{$permission.permission_type}\">\n\n		<xf:if is=\"$permission.permission_type == \'flag\'\">\n			<ul class=\"permissionChoices permissionChoices--flag\">\n				<li class=\"permissionChoices-choice permissionChoices-choice--inherit\">\n					<xf:radio name=\"{$inputName}\" value=\"{{ (!$value || $value == \'unset\') ? \'unset\' : \'\' }}\" standalone=\"true\">\n						<xf:option value=\"unset\"\n							label=\"{{ phrase(\'inherit\') }}\" />\n					</xf:radio>\n				</li>\n				<li class=\"permissionChoices-choice permissionChoices-choice--yes\">\n					<xf:radio name=\"{$inputName}\" value=\"{$value}\" standalone=\"true\">\n						<xf:option value=\"content_allow\"\n							label=\"{{ phrase(\'yes\') }}\" />\n					</xf:radio>\n				</li>\n				<li class=\"permissionChoices-choice permissionChoices-choice--no\">\n					<xf:radio name=\"{$inputName}\" value=\"{$value}\" standalone=\"true\">\n						<xf:option value=\"reset\"\n							label=\"{{ phrase(\'no\') }}\" />\n					</xf:radio>\n				</li>\n				<li class=\"permissionChoices-choice permissionChoices-choice--never\">\n					<xf:radio name=\"{$inputName}\" value=\"{$value}\" standalone=\"true\">\n						<xf:option value=\"deny\"\n							label=\"{{ phrase(\'never\') }}\" />\n					</xf:radio>\n				</li>\n			</ul>\n		<xf:else />\n			<ul class=\"permissionChoices permissionChoices--int\">\n				<li class=\"permissionChoices-choice permissionChoices-choice--inherit\">\n					<xf:radio name=\"{$inputName}\" value=\"{{ (!$value || $value == 0) ? 0 : null }}\" standalone=\"true\">\n						<xf:option value=\"0\"\n							label=\"{{ phrase(\'inherit\') }}\" />\n					</xf:radio>\n				</li>\n				<li class=\"permissionChoices-choice permissionChoices-choice--yes\">\n					<xf:radio name=\"{$inputName}\" value=\"{$value}\" standalone=\"true\">\n						<xf:option value=\"-1\"\n							label=\"{{ phrase(\'unlimited\') }}\" />\n					</xf:radio>\n				</li>\n				<li class=\"permissionChoices-choice permissionChoices-choice--int\">\n					<div class=\"inputGroup inputGroup--inline inputGroup--joined inputNumber\">\n						<span class=\"inputGroup-text\">\n							<xf:radio name=\"{$inputName}\" standalone=\"true\">\n								<xf:option value=\"1\"\n									selected=\"{{ $value >= 1 }}\"\n									data-xf-init=\"disabler\"\n									data-container=\"< li\"\n									label=\"{{ phrase(\'as_follows:\') }}\"\n									hiddenlabel=\"true\"\n									id=\"perm_{$permission.permission_group_id}_{$permission.permission_id}_radio\" />\n							</xf:radio>\n							<label class=\"permissionChoices-choiceIntLabel\" for=\"perm_{$permission.permission_group_id}_{$permission.permission_id}_radio\"></label>\n						</span>\n						<xf:textbox type=\"number\" name=\"{$inputName}\" value=\"{{ $value >= 1 ? $value|default(1) : 1 }}\"\n							class=\"input--number js-numberBoxTextInput js-permissionIntInput\"\n							min=\"0\" pattern=\"\\d*\" />\n					</div>\n				</li>\n			</ul>\n		</xf:if>\n	</xf:formrow>\n</xf:macro>', 0x[encoded data, 145544 characters], 0x5846, 2030070, '2.3.0', 1748686057);
INSERT INTO `xf_template` (`template_id`, `type`, `title`, `style_id`, `template`, `template_parsed`, `addon_id`, `version_id`, `version_string`, `last_edit_date`) VALUES
(350, 0x61646d696e, 0x7065726d697373696f6e5f6e6f64655f65646974, 0, '<xf:if is=\"$userGroup\">\n	<xf:title>{$userGroup.title}</xf:title>\n<xf:else />\n	<xf:title>{$user.username}</xf:title>\n</xf:if>\n\n<xf:breadcrumb href=\"{{ link($routePrefix, $record) }}\">{$record.title}</xf:breadcrumb>\n\n<xf:if is=\"$userGroup.user_group_id === 1\">\n	<div class=\"blockMessage blockMessage--iconic blockMessage--highlight\">\n		{{ phrase(\'note_that_these_permissions_apply_to_both_guests_and_unconfirmed_members\') }}\n	</div>\n</xf:if>\n\n<xf:macro id=\"permission_node_macros::edit\"\n	arg-node=\"{$record}\"\n	arg-permissionData=\"{$permissionData}\"\n	arg-typeEntries=\"{$typeEntries}\"\n	arg-routeBase=\"{$routePrefix}\"\n	arg-saveParams=\"{$saveParams}\" />', 0x[encoded data, 9920 characters], 0x5846, 2030470, '2.3.4', 1748686057),
(351, 0x61646d696e, 0x7065726d697373696f6e5f6e6f64655f6c697374, 0, '<xf:title>{$record.title}</xf:title>\n\n<xf:macro id=\"permission_node_macros::list\"\n	arg-node=\"{$record}\"\n	arg-isPrivate=\"{$isPrivate}\"\n	arg-userGroups=\"{$userGroups}\"\n	arg-users=\"{$users}\"\n	arg-entries=\"{$entries}\"\n	arg-routeBase=\"{$routePrefix}\" />', 0x4f3a32343a2258465c54656d706c6174655c436f6d70696c65725c417374223a313a7b733a383a226368696c6472656e223b613a333a7b693a303b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c546167223a373a7b733a343a226c696e65223b693a313b733a343a226e616d65223b733a353a227469746c65223b733a31303a2261747472696275746573223b613a303a7b7d733a383a226368696c6472656e223b613a313a7b693a303b4f3a33363a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c5661726961626c65223a343a7b733a343a226c696e65223b693a313b733a343a226e616d65223b733a363a227265636f7264223b733a31303a2264696d656e73696f6e73223b613a313a7b693a303b613a323a7b693a303b733a353a226172726179223b693a313b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a313b733a373a22636f6e74656e74223b733a353a227469746c65223b7d7d7d733a373a2266696c74657273223b613a303a7b7d7d7d733a31313a22697353656c66436c6f7365223b623a303b733a31303a22657874656e73696f6e73223b613a303a7b7d733a353a226465707468223b693a303b7d693a313b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a313b733a373a22636f6e74656e74223b733a323a220a0a223b7d693a323b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c546167223a373a7b733a343a226c696e65223b693a393b733a343a226e616d65223b733a353a226d6163726f223b733a31303a2261747472696275746573223b613a373a7b733a323a226964223b4f3a33313a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c537472223a323a7b733a343a226c696e65223b693a333b733a373a22636f6e74656e74223b733a32383a227065726d697373696f6e5f6e6f64655f6d6163726f733a3a6c697374223b7d733a383a226172672d6e6f6465223b4f3a33363a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c5661726961626c65223a343a7b733a343a226c696e65223b693a343b733a343a226e616d65223b733a363a227265636f7264223b733a31303a2264696d656e73696f6e73223b613a303a7b7d733a373a2266696c74657273223b613a303a7b7d7d733a31333a226172672d697350726976617465223b4f3a33363a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c5661726961626c65223a343a7b733a343a226c696e65223b693a353b733a343a226e616d65223b733a393a22697350726976617465223b733a31303a2264696d656e73696f6e73223b613a303a7b7d733a373a2266696c74657273223b613a303a7b7d7d733a31343a226172672d7573657247726f757073223b4f3a33363a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c5661726961626c65223a343a7b733a343a226c696e65223b693a363b733a343a226e616d65223b733a31303a227573657247726f757073223b733a31303a2264696d656e73696f6e73223b613a303a7b7d733a373a2266696c74657273223b613a303a7b7d7d733a393a226172672d7573657273223b4f3a33363a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c5661726961626c65223a343a7b733a343a226c696e65223b693a373b733a343a226e616d65223b733a353a227573657273223b733a31303a2264696d656e73696f6e73223b613a303a7b7d733a373a2266696c74657273223b613a303a7b7d7d733a31313a226172672d656e7472696573223b4f3a33363a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c5661726961626c65223a343a7b733a343a226c696e65223b693a383b733a343a226e616d65223b733a373a22656e7472696573223b733a31303a2264696d656e73696f6e73223b613a303a7b7d733a373a2266696c74657273223b613a303a7b7d7d733a31333a226172672d726f75746542617365223b4f3a33363a2258465c54656d706c6174655c436f6d70696c65725c53796e7461785c5661726961626c65223a343a7b733a343a226c696e65223b693a393b733a343a226e616d65223b733a31313a22726f757465507265666978223b733a31303a2264696d656e73696f6e73223b613a303a7b7d733a373a2266696c74657273223b613a303a7b7d7d7d733a383a226368696c6472656e223b613a303a7b7d733a31313a22697353656c66436c6f7365223b623a313b733a31303a22657874656e73696f6e73223b613a303a7b7d733a353a226465707468223b693a303b7d7d7d, 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
(352, 0x61646d696e, 0x7065726d697373696f6e5f6e6f64655f6d6163726f73, 0, '<xf:macro id=\"list\"\n	arg-node=\"!\"\n	arg-isPrivate=\"!\"\n	arg-userGroups=\"!\"\n	arg-users=\"!\"\n	arg-entries=\"!\"\n	arg-routeBase=\"!\">\n\n	<xf:form action=\"{{ link($routeBase . \'/save\', $node) }}\" ajax=\"true\" class=\"block\">\n		<div class=\"block-container\">\n			<div class=\"block-body\">\n				<xf:checkboxrow>\n					<xf:option name=\"private\" selected=\"{$isPrivate}\"\n						label=\"{{ phrase(\'private_node\') }}\"\n						hint=\"{{ phrase(\'if_selected_users_only_view_node_if_granted_permissions\') }}\" />\n				</xf:checkboxrow>\n			</div>\n			<xf:submitrow icon=\"save\" />\n		</div>\n		<xf:hiddenval name=\"type\">private</xf:hiddenval>\n	</xf:form>\n\n	<div class=\"block\">\n		<div class=\"block-container\">\n			<h3 class=\"block-header\">{{ phrase(\'user_groups\') }}</h3>\n			<div class=\"block-body\">\n				<xf:datalist>\n					<xf:foreach loop=\"$userGroups\" value=\"$userGroup\">\n						<xf:datarow\n							label=\"{$userGroup.title}\"\n							href=\"{{ link($routeBase . \'/edit\', $node, {\'user_group_id\': $userGroup.user_group_id}) }}\"\n							rowclass=\"{{ {$entries.groups.{$userGroup.user_group_id}} ? \'dataList-row--custom\' : \'\' }}\" />\n					</xf:foreach>\n				</xf:datalist>\n			</div>\n		</div>\n	</div>\n\n	<xf:form action=\"{{ link($routeBase . \'/edit\', $node) }}\" class=\"block\">\n		<div class=\"block-container\">\n			<h3 class=\"block-header\">{{ phrase(\'users_with_permissions_set\') }}</h3>\n			<div class=\"block-body\">\n				<xf:if is=\"$users is not empty\">\n					<xf:datalist>\n						<xf:foreach loop=\"$users\" value=\"$user\">\n							<xf:datarow\n								label=\"{$user.username}\"\n								href=\"{{ link($routeBase . \'/edit\', $node, {\'user_id\': $user.user_id}) }}\"\n								rowclass=\"dataList-row--custom\" />\n						</xf:foreach>\n					</xf:datalist>\n					<hr class=\"block-separator\" />\n				</xf:if>\n				<xf:textboxrow name=\"username\" ac=\"single\"\n					label=\"{{ phrase(\'set_permissions_for_user\') }}\" />\n			</div>\n			<xf:submitrow submit=\"{{ phrase(\'proceed...\') }}\" />\n		</div>\n		<xf:hiddenval name=\"type\">user</xf:hiddenval>\n	</xf:form>\n</xf:macro>\n\n<xf:macro id=\"edit\"\n	arg-node=\"!\"\n	arg-permissionData=\"!\"\n	arg-typeEntries=\"!\"\n	arg-routeBase=\"!\"\n	arg-saveParams=\"!\">\n\n	<xf:form action=\"{{ link($routeBase . \'/save\', $node, $saveParams) }}\"\n		ajax=\"true\" class=\"block\">\n\n		<xf:macro id=\"permission_macros::edit_outer\" arg-type=\"content\" />\n\n		<div class=\"block-container\">\n			<xf:macro id=\"permission_macros::content_edit_groups\"\n				arg-permissionsGrouped=\"{$permissionData.permissionsGrouped}\"\n				arg-interfaceGroups=\"{$permissionData.interfaceGroups}\"\n				arg-values=\"{$typeEntries}\" />\n			<xf:submitrow sticky=\"true\" icon=\"save\" />\n		</div>\n	</xf:form>\n</xf:macro>', 0x[encoded data, 42374 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
(353, 0x61646d696e, 0x7065726d697373696f6e5f6e6f64655f6f76657276696577, 0, '<xf:title>{{ phrase(\'node_permissions\') }}</xf:title>\n\n<xf:if is=\"$nodeTree.countChildren()\">\n	<div class=\"block\">\n		<div class=\"block-outer\">\n			<xf:macro id=\"filter_macros::quick_filter\" arg-key=\"nodes\" arg-class=\"block-outer-opposite\" />\n		</div>\n		<div class=\"block-container\">\n			<div class=\"block-body\">\n				<xf:datalist>\n					<xf:foreach loop=\"$nodeTree.getFlattened(0)\" value=\"$treeEntry\">\n						<xf:set var=\"$node\" value=\"{$treeEntry.record}\" />\n						<xf:datarow rowclass=\"{{ {$customPermissions.{$node.node_id}} ? \'dataList-row--custom\' : \'\' }}\">\n							<xf:cell class=\"dataList-cell--min\"><xf:macro template=\"node_list\" name=\"node_icon\" arg-node=\"{$node}\" /></xf:cell>\n							<xf:cell class=\"dataList-cell--link dataList-cell--main\" hash=\"{$node.node_id}\">\n								<a href=\"{{ link(\'permissions/nodes\', $node) }}\">\n									<div class=\"u-depth{$treeEntry.depth}\">\n										<div class=\"dataList-mainRow\">{$node.title} <span class=\"dataList-hint\" dir=\"auto\">{$node.NodeType.title} <xf:if is=\"callable($node.Data, \'getTypeHandler\')\"> ({{ $node.Data.TypeHandler.getTypeTitle() }})</xf:if></span></div>\n									</div>\n								</a>\n							</xf:cell>\n							<xf:action href=\"{{ link(\'nodes/edit\', $node) }}\">{{ phrase(\'edit\') }}</xf:action>\n						</xf:datarow>\n					</xf:foreach>\n				</xf:datalist>\n			</div>\n			<div class=\"block-footer\">\n				<span class=\"block-footer-counter\">{{ display_totals($nodeTree.getFlattened(0)) }}</span>\n			</div>\n		</div>\n	</div>\n<xf:else />\n	<div class=\"blockMessage\">{{ phrase(\'no_items_have_been_created_yet\') }}</div>\n</xf:if>', 0x[encoded data, 23432 characters], 0x5846, 2030010, '2.3.0 Alpha', 1748686057),
(354, 0x61646d696e, 0x7065726d697373696f6e5f757365725f65646974, 0, '<xf:title>{$user.username}</xf:title>\n\n<xf:form action=\"{{ link(\'permissions/users/save\', $user) }}\" ajax=\"true\" class=\"{{ $tabbed ? \'\' : \'block\' }}\">\n\n	<xf:if is=\"$tabbed\">\n		<div class=\"block-body\">\n			<div class=\"block-row\">{{ phrase(\'user_permissions_warning\', {\n				\'user\': $user.username,\n				\'link\': link(\'permissions/user-groups\')\n			}) }}</div>\n			<xf:hiddenval name=\"from-user-edit\" value=\"1\" />\n		</div>\n	</xf:if>\n\n	<xf:macro id=\"permission_macros::edit_outer\"\n		arg-type=\"global\"\n		arg-class=\"{{ $tabbed ? \'block-row\' : \'block-outer\' }}\"/>\n\n	<div class=\"{{ $tabbed ? \'\' : \'block-container\' }}\">\n		<xf:macro id=\"permission_macros::edit_groups\"\n			arg-interfaceGroups=\"{$permissionData.interfaceGroups}\"\n			arg-permissionsGrouped=\"{$permissionData.permissionsGrouped}\"\n			arg-values=\"{$userEntries}\" />\n		<xf:submitrow sticky=\"true\" icon=\"save\" />\n	</div>\n</xf:form>', 0x[encoded data, 14606 characters], 0x5846, 2030010, '2.3.0 Alpha', 1748686057);
