Fix migration problems
This commit is contained in:
2
_data/activity_summary_definitions.xml
Normal file
2
_data/activity_summary_definitions.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<activity_summary_definitions/>
|
||||||
2
_data/admin_navigation.xml
Normal file
2
_data/admin_navigation.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<admin_navigation/>
|
||||||
2
_data/admin_permission.xml
Normal file
2
_data/admin_permission.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<admin_permission/>
|
||||||
2
_data/advertising_positions.xml
Normal file
2
_data/advertising_positions.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<advertising_positions/>
|
||||||
2
_data/api_scopes.xml
Normal file
2
_data/api_scopes.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<api_scopes/>
|
||||||
2
_data/bb_code_media_sites.xml
Normal file
2
_data/bb_code_media_sites.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<bb_code_media_sites/>
|
||||||
2
_data/bb_codes.xml
Normal file
2
_data/bb_codes.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<bb_codes/>
|
||||||
10
_data/class_extensions.xml
Normal file
10
_data/class_extensions.xml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<class_extensions>
|
||||||
|
<extension from_class="XF\Admin\Controller\UserController" to_class="RomhackPlaza\Master\XF\Admin\Controller\UserController" execute_order="10" active="1"/>
|
||||||
|
<extension from_class="XF\Entity\ApprovalQueue" to_class="RomhackPlaza\Master\XF\Entity\ApprovalQueue" execute_order="10" active="1"/>
|
||||||
|
<extension from_class="XF\Entity\Forum" to_class="RomhackPlaza\Master\XF\Entity\Forum" execute_order="10" active="1"/>
|
||||||
|
<extension from_class="XF\Entity\User" to_class="RomhackPlaza\Master\XF\Entity\User" execute_order="10" active="1"/>
|
||||||
|
<extension from_class="XF\Pub\Controller\AccountController" to_class="RomhackPlaza\Master\XF\Pub\Controller\AccountController" execute_order="10" active="1"/>
|
||||||
|
<extension from_class="XF\Pub\Controller\MiscController" to_class="RomhackPlaza\Master\XF\Pub\Controller\MiscController" execute_order="10" active="1"/>
|
||||||
|
<extension from_class="XF\Service\Report\CreatorService" to_class="RomhackPlaza\Master\XF\Service\Report\CreatorService" execute_order="10" active="1"/>
|
||||||
|
</class_extensions>
|
||||||
6
_data/code_event_listeners.xml
Normal file
6
_data/code_event_listeners.xml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<code_event_listeners>
|
||||||
|
<listener event_id="app_pub_render_page" execute_order="10" callback_class="RomhackPlaza\Master\Listener" callback_method="checkStyleVariation" active="1"/>
|
||||||
|
<listener event_id="criteria_user" execute_order="10" callback_class="RomhackPlaza\Master\Listener" callback_method="criteriaUser" active="1"/>
|
||||||
|
<listener event_id="import_importer_classes" execute_order="15" callback_class="RomhackPlaza\Master\Listener" callback_method="importImporterClasses" active="1"/>
|
||||||
|
</code_event_listeners>
|
||||||
2
_data/code_events.xml
Normal file
2
_data/code_events.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<code_events/>
|
||||||
11
_data/content_type_fields.xml
Normal file
11
_data/content_type_fields.xml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<content_type_fields>
|
||||||
|
<field content_type="club" field_name="approval_queue_handler_class">RomhackPlaza\Master\ApprovalQueue\Club</field>
|
||||||
|
<field content_type="club" field_name="entity">RomhackPlaza\Master\Entity\Club</field>
|
||||||
|
<field content_type="rhpz_entry_featurerequest" field_name="approval_queue_handler_class">RomhackPlaza\Master\ApprovalQueue\EntryFeaturedRequest</field>
|
||||||
|
<field content_type="rhpz_entry_featurerequest" field_name="entity">RomhackPlaza\Master\Entity\EntryFeaturedRequest</field>
|
||||||
|
<field content_type="romhackplaza_entry" field_name="entity">RomhackPlaza\Master\Entity\Entry</field>
|
||||||
|
<field content_type="romhackplaza_entry" field_name="report_handler_class">RomhackPlaza\Master\Report\Entry</field>
|
||||||
|
<field content_type="romhackplaza_news" field_name="entity">RomhackPlaza\Master\Entity\News</field>
|
||||||
|
<field content_type="romhackplaza_news" field_name="report_handler_class">RomhackPlaza\Master\Report\News</field>
|
||||||
|
</content_type_fields>
|
||||||
2
_data/cron.xml
Normal file
2
_data/cron.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<cron/>
|
||||||
2
_data/help_pages.xml
Normal file
2
_data/help_pages.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<help_pages/>
|
||||||
2
_data/member_stats.xml
Normal file
2
_data/member_stats.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<member_stats/>
|
||||||
22
_data/navigation.xml
Normal file
22
_data/navigation.xml
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<navigation>
|
||||||
|
<navigation_entry navigation_id="about" parent_navigation_id="pages" display_order="200" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/pages\/about","display_condition":"","extra_attributes":{"icon":"info"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="clubs" parent_navigation_id="community" display_order="200" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{{ link('clubs') }}","display_condition":"","extra_attributes":{"icon":"balloon"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="community" display_order="300" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"","display_condition":"","extra_attributes":[]}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="contact_us" parent_navigation_id="pages" display_order="300" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{{ link('misc\/contact') }}","display_condition":"","extra_attributes":{"icon":"at-sign"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="database" parent_navigation_id="website" display_order="200" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/database","display_condition":"","extra_attributes":{"icon":"database"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="discord" parent_navigation_id="community" display_order="300" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/discord","display_condition":"","extra_attributes":{"icon":"messages-square"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="drafts" parent_navigation_id="website" display_order="400" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/my-drafts","display_condition":"{$xf.visitor.user_id}","extra_attributes":{"icon":"scissors"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="forum" parent_navigation_id="community" display_order="100" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.boardUrl}","display_condition":"","extra_attributes":{"icon":"message-circle"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="home" parent_navigation_id="website" display_order="100" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}","display_condition":"","extra_attributes":{"icon":"home"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="learn_romhacking" parent_navigation_id="pages" display_order="100" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/pages\/learn","display_condition":"","extra_attributes":{"icon":"graduation-cap"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="legal_pages" parent_navigation_id="pages" display_order="400" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/pages\/legal-pages","display_condition":"","extra_attributes":{"icon":"scale"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="members" parent_navigation_id="community" display_order="400" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{{ link('members') }}","display_condition":"","extra_attributes":{"icon":"users"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="news" parent_navigation_id="website" display_order="250" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/news","display_condition":"","extra_attributes":{"icon":"newspaper"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="pages" display_order="500" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"","display_condition":"","extra_attributes":[]}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="rom_hasher" parent_navigation_id="tools" display_order="200" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/hash","display_condition":"","extra_attributes":{"icon":"hash"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="rom_patcher" parent_navigation_id="tools" display_order="100" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/patch","display_condition":"","extra_attributes":{"icon":"stamp"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="submissions_queue" parent_navigation_id="website" display_order="300" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"{$xf.options.homePageUrl}\/queue","display_condition":"","extra_attributes":{"icon":"gavel"}}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="tools" display_order="400" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"","display_condition":"","extra_attributes":[]}]]></navigation_entry>
|
||||||
|
<navigation_entry navigation_id="website" display_order="200" navigation_type_id="basic" enabled="1"><![CDATA[{"link":"","display_condition":"","extra_attributes":[]}]]></navigation_entry>
|
||||||
|
</navigation>
|
||||||
4
_data/option_groups.xml
Normal file
4
_data/option_groups.xml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<option_groups>
|
||||||
|
<group group_id="romhackplaza" icon="fa-umbrella-beach" display_order="500" debug_only="0"/>
|
||||||
|
</option_groups>
|
||||||
15
_data/options.xml
Normal file
15
_data/options.xml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<options>
|
||||||
|
<option option_id="rhpz_club_node_id" edit_format="spinbox" data_type="unsigned_integer" advanced="0">
|
||||||
|
<default_value>0</default_value>
|
||||||
|
<relation group_id="romhackplaza" display_order="1"/>
|
||||||
|
</option>
|
||||||
|
<option option_id="rhpz_delete_account_master_key" edit_format="textbox" data_type="string" advanced="0">
|
||||||
|
<default_value></default_value>
|
||||||
|
<relation group_id="romhackplaza" display_order="1"/>
|
||||||
|
</option>
|
||||||
|
<option option_id="rhpz_enable_migration" edit_format="onoff" data_type="boolean" advanced="1">
|
||||||
|
<default_value>0</default_value>
|
||||||
|
<relation group_id="romhackplaza" display_order="500"/>
|
||||||
|
</option>
|
||||||
|
</options>
|
||||||
4
_data/permission_interface_groups.xml
Normal file
4
_data/permission_interface_groups.xml
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<permission_interface_groups>
|
||||||
|
<interface_group interface_group_id="romhackplaza" display_order="500" is_moderator="0"/>
|
||||||
|
</permission_interface_groups>
|
||||||
14
_data/permissions.xml
Normal file
14
_data/permissions.xml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<permissions>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canEditMyEntries" permission_type="flag" interface_group_id="romhackplaza" display_order="4"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canEditOthersEntries" permission_type="flag" interface_group_id="romhackplaza" display_order="5"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canModerateEntries" permission_type="flag" interface_group_id="romhackplaza" display_order="6"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canSeeHiddenEntries" permission_type="flag" interface_group_id="romhackplaza" display_order="9"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canSeeLockedEntries" permission_type="flag" interface_group_id="romhackplaza" display_order="10"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canSeeOthersDrafts" permission_type="flag" interface_group_id="romhackplaza" display_order="7"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canSeeRejectedEntries" permission_type="flag" interface_group_id="romhackplaza" display_order="8"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canSubmitEntry" permission_type="flag" interface_group_id="romhackplaza" display_order="2"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canSubmitEntryInPublished" permission_type="flag" interface_group_id="romhackplaza" display_order="11"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="canSubmitTempFile" permission_type="flag" interface_group_id="romhackplaza" display_order="3"/>
|
||||||
|
<permission permission_group_id="romhackplaza" permission_id="view" permission_type="flag" interface_group_id="romhackplaza" display_order="1"/>
|
||||||
|
</permissions>
|
||||||
47
_data/phrases.xml
Normal file
47
_data/phrases.xml
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<phrases>
|
||||||
|
<phrase title="delete_account" version_id="1000000" version_string="1.0.0"><![CDATA[Delete account]]></phrase>
|
||||||
|
<phrase title="delete_account_code" version_id="1000000" version_string="1.0.0"><![CDATA[Delete account code]]></phrase>
|
||||||
|
<phrase title="delete_account_codes" version_id="1000000" version_string="1.0.0"><![CDATA[Delete account codes]]></phrase>
|
||||||
|
<phrase title="delete_all_data_code" version_id="1000000" version_string="1.0.0"><![CDATA[Delete all data code]]></phrase>
|
||||||
|
<phrase title="entries" version_id="1000000" version_string="1.0.0"><![CDATA[Entries]]></phrase>
|
||||||
|
<phrase title="nav.about" version_id="1000000" version_string="1.0.0"><![CDATA[About]]></phrase>
|
||||||
|
<phrase title="nav.clubs" version_id="1000000" version_string="1.0.0"><![CDATA[Clubs]]></phrase>
|
||||||
|
<phrase title="nav.community" version_id="1000000" version_string="1.0.0"><![CDATA[Community]]></phrase>
|
||||||
|
<phrase title="nav.contact_us" version_id="1000000" version_string="1.0.0"><![CDATA[Contact Us]]></phrase>
|
||||||
|
<phrase title="nav.database" version_id="1000000" version_string="1.0.0"><![CDATA[Database]]></phrase>
|
||||||
|
<phrase title="nav.discord" version_id="1000000" version_string="1.0.0"><![CDATA[Discord]]></phrase>
|
||||||
|
<phrase title="nav.drafts" version_id="1000000" version_string="1.0.0"><![CDATA[My drafts]]></phrase>
|
||||||
|
<phrase title="nav.forum" version_id="1000000" version_string="1.0.0"><![CDATA[Forum]]></phrase>
|
||||||
|
<phrase title="nav.home" version_id="1000000" version_string="1.0.0"><![CDATA[Home]]></phrase>
|
||||||
|
<phrase title="nav.learn_romhacking" version_id="1000000" version_string="1.0.0"><![CDATA[Learn Romhacking]]></phrase>
|
||||||
|
<phrase title="nav.legal_pages" version_id="1000000" version_string="1.0.0"><![CDATA[Legal Pages]]></phrase>
|
||||||
|
<phrase title="nav.members" version_id="1000000" version_string="1.0.0"><![CDATA[Members]]></phrase>
|
||||||
|
<phrase title="nav.news" version_id="1000000" version_string="1.0.0"><![CDATA[News]]></phrase>
|
||||||
|
<phrase title="nav.pages" version_id="1000000" version_string="1.0.0"><![CDATA[Pages]]></phrase>
|
||||||
|
<phrase title="nav.rom_hasher" version_id="1000000" version_string="1.0.0"><![CDATA[ROM Hasher]]></phrase>
|
||||||
|
<phrase title="nav.rom_patcher" version_id="1000000" version_string="1.0.0"><![CDATA[ROM Patcher]]></phrase>
|
||||||
|
<phrase title="nav.submissions_queue" version_id="1000000" version_string="1.0.0"><![CDATA[Submissions queue]]></phrase>
|
||||||
|
<phrase title="nav.tools" version_id="1000000" version_string="1.0.0"><![CDATA[Tools]]></phrase>
|
||||||
|
<phrase title="nav.website" version_id="1000000" version_string="1.0.0"><![CDATA[Website]]></phrase>
|
||||||
|
<phrase title="option.rhpz_club_node_id" version_id="1000000" version_string="1.0.0"><![CDATA[Club Parent Node ID]]></phrase>
|
||||||
|
<phrase title="option.rhpz_delete_account_master_key" version_id="1000000" version_string="1.0.0"><![CDATA[Delete account Master key]]></phrase>
|
||||||
|
<phrase title="option.rhpz_enable_migration" version_id="1000000" version_string="1.0.0"><![CDATA[Enable Migration functions]]></phrase>
|
||||||
|
<phrase title="option_explain.rhpz_club_node_id" version_id="1000000" version_string="1.0.0"><![CDATA[]]></phrase>
|
||||||
|
<phrase title="option_explain.rhpz_delete_account_master_key" version_id="1000000" version_string="1.0.0"><![CDATA[]]></phrase>
|
||||||
|
<phrase title="option_explain.rhpz_enable_migration" version_id="1000000" version_string="1.0.0"><![CDATA[Enable migration endpoints and other things.]]></phrase>
|
||||||
|
<phrase title="option_group.romhackplaza" version_id="1000000" version_string="1.0.0"><![CDATA[RomhackPlaza Options]]></phrase>
|
||||||
|
<phrase title="option_group_description.romhackplaza" version_id="1000000" version_string="1.0.0"><![CDATA[These options are specific to Romhack Plaza]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canEditMyEntries" version_id="1000000" version_string="1.0.0"><![CDATA[Can Edit My Entries]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canEditOthersEntries" version_id="1000000" version_string="1.0.0"><![CDATA[Can Edit Others Entries]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canModerateEntries" version_id="1000000" version_string="1.0.0"><![CDATA[Can Moderate Entries]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canSeeHiddenEntries" version_id="1000000" version_string="1.0.0"><![CDATA[Can See Hidden Entries]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canSeeLockedEntries" version_id="1000000" version_string="1.0.0"><![CDATA[Can See Locked Entries]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canSeeOthersDrafts" version_id="1000000" version_string="1.0.0"><![CDATA[Can See Others Drafts]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canSeeRejectedEntries" version_id="1000000" version_string="1.0.0"><![CDATA[Can See Rejected Entries]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canSubmitEntry" version_id="1000000" version_string="1.0.0"><![CDATA[Can Submit Entry]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canSubmitEntryInPublished" version_id="1000000" version_string="1.0.0"><![CDATA[Can Submit Entry in Published]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_canSubmitTempFile" version_id="1000000" version_string="1.0.0"><![CDATA[Can Submit Temporary File]]></phrase>
|
||||||
|
<phrase title="permission.romhackplaza_view" version_id="1000000" version_string="1.0.0"><![CDATA[View entries]]></phrase>
|
||||||
|
<phrase title="permission_interface.romhackplaza" version_id="1000000" version_string="1.0.0"><![CDATA[Romhack Plaza permissions]]></phrase>
|
||||||
|
</phrases>
|
||||||
9
_data/routes.xml
Normal file
9
_data/routes.xml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<routes>
|
||||||
|
<route route_type="api" route_prefix="migrate" controller="RomhackPlaza\Master:Migrate"/>
|
||||||
|
<route route_type="api" route_prefix="romhackplaza_entry" controller="RomhackPlaza\Master:Entry"/>
|
||||||
|
<route route_type="api" route_prefix="threads" sub_name="undelete" format=":int<thread_id>/undelete" controller="RomhackPlaza\Master:Thread"/>
|
||||||
|
<route route_type="public" route_prefix="clubs" format=":int<club_id>/" controller="RomhackPlaza\Master:Club"/>
|
||||||
|
<route route_type="public" route_prefix="romhackplaza_entry" format=":int<id>" controller="RomhackPlaza\Master:Entry"/>
|
||||||
|
<route route_type="public" route_prefix="romhackplaza_news" format=":int<id>" controller="RomhackPlaza\Master:News"/>
|
||||||
|
</routes>
|
||||||
2
_data/style_properties.xml
Normal file
2
_data/style_properties.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<style_properties/>
|
||||||
2
_data/style_property_groups.xml
Normal file
2
_data/style_property_groups.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<style_property_groups/>
|
||||||
102
_data/template_modifications.xml
Normal file
102
_data/template_modifications.xml
Normal file
@@ -0,0 +1,102 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<template_modifications>
|
||||||
|
<modification type="public" template="account_wrapper" modification_key="rhpz_account_wrapper_delete_account" description="Add Delete account page URL to account details" execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<!--[XF:settings_links:bottom]-->]]></find>
|
||||||
|
<replace><![CDATA[<a class="blockLink {{ $pageSelected == 'delete_account' ? 'is-selected' : '' }}" href="{{ link('account/delete-account') }}">
|
||||||
|
{{ phrase('delete_account') }}
|
||||||
|
</a>
|
||||||
|
$0]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="public" template="category_view" modification_key="rhpz_category_view_clubs_submit_button" description="Add Club Submit button" execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[ <xf:button href="{{ link('categories/mark-read', $category, {'date': $xf.time}) }}"
|
||||||
|
class="button--link" overlay="true">]]></find>
|
||||||
|
<replace><![CDATA[<xf:if is="$xf.options.rhpz_club_node_id == $category.node_id">
|
||||||
|
<xf:button href="{{ link('clubs/submit') }}"
|
||||||
|
class="button--link">
|
||||||
|
Request a club
|
||||||
|
</xf:button>
|
||||||
|
</xf:if>
|
||||||
|
$0]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="public" template="forum_overview_wrapper" modification_key="rhpz_forum_overview_wrapper_search_button" description="Add Search button" execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[ <xf:button href="{{ $xf.options.forumsDefaultPage == 'new_posts' ? link('forums/new-posts') : link('whats-new/posts') }}" icon="bolt">
|
||||||
|
{{ phrase('new_posts') }}
|
||||||
|
</xf:button>]]></find>
|
||||||
|
<replace><![CDATA[ $0
|
||||||
|
<xf:button href="{{ link('search') }}" icon="magnifying-glass">
|
||||||
|
{{ phrase('search') }}
|
||||||
|
</xf:button>]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="public" template="forum_view" modification_key="rhpz_above_thread_list_clubs" description="Add the club banner above the threads list." execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<xf:extension id="above_thread_list"></xf:extension>]]></find>
|
||||||
|
<replace><![CDATA[$0
|
||||||
|
<xf:if is="$forum.Node.parent_node_id == $xf.options.rhpz_club_node_id">
|
||||||
|
<div class="club-banner-container">
|
||||||
|
<xf:if is="$forum.Club.banner_date">
|
||||||
|
<img src="{$forum.Club.getBannerUrl()}" alt="Banner {$forum.title}" class="club-banner" />
|
||||||
|
</xf:if>
|
||||||
|
</div>
|
||||||
|
</xf:if>]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="public" template="forum_view" modification_key="rhpz_above_thread_list_clubs_buttons" description="Add Owner edit/delete buttons." execution_order="5" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<xf:extension id="above_thread_list"></xf:extension>]]></find>
|
||||||
|
<replace><![CDATA[$0
|
||||||
|
<xf:if is="$forum.Club && $forum.Club.user_id == $xf.visitor.user_id">
|
||||||
|
<div class="block-outer-opposite u-marginBottom">
|
||||||
|
<div class="buttonGroup">
|
||||||
|
<a href="{{ link('clubs/edit', $forum.Club) }}" class="button button--link" icon="edit">Edit</a>
|
||||||
|
<a href="{{ link('clubs/delete', $forum.Club) }}" class="button button--link" icon="delete" overlay="true">Delete</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</xf:if>]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="admin" template="helper_criteria" modification_key="rhpz_helper_criteria_entry_count" execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<!--[XF:user:content_bottom]-->]]></find>
|
||||||
|
<replace><![CDATA[<xf:option name="user_criteria[rhpz_entry_count][rule]" value="rhpz_entry_count" selected="{$criteria.rhpz_entry_count}" label="Number of entries:">
|
||||||
|
<xf:numberbox name="user_criteria[rhpz_entry_count][data][entries]" value="{$criteria.rhpz_entry_count.entries}" size="5" min="0" step="1" />
|
||||||
|
</xf:option>]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="public" template="member_macros" modification_key="rhpz_member_macros_member_stat_pairs_entry_count" description="Add RHPZ Entry count on member profile page" execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<!--[XF:stat_pairs:above_reactions]-->]]></find>
|
||||||
|
<replace><![CDATA[<dl class="pairs pairs--rows pairs--rows--centered">
|
||||||
|
<dt>{{ phrase('entries') }}</dt>
|
||||||
|
<dd>
|
||||||
|
{$user.rhpz_entry_count|number}
|
||||||
|
</dd>
|
||||||
|
</dl>]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="public" template="member_view" modification_key="rhpz_member_view_add_entry_tab" description="Add entry tab on members page" execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<!--[XF:tabs:after_recent_content]-->]]></find>
|
||||||
|
<replace><![CDATA[<a href="{{ $xf.options.homePageUrl }}/database?userId={$user.user_id}"
|
||||||
|
class="tabs-tab"
|
||||||
|
id="entries">{{ phrase('entries') }}</a>
|
||||||
|
$0]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="public" template="member_view" modification_key="rhpz_member_view_add_entry_tabpanel" description="Add Entry tab panel" execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<!--[XF:tab_panes:after_recent_content]-->]]></find>
|
||||||
|
<replace><![CDATA[<li role="tabpanel" aria-labelledby="entries">
|
||||||
|
<a href="{{$xf.options.homePageUrl}}/database?userId={$user.user_id}" class="button">Go to this page</a>
|
||||||
|
</li>
|
||||||
|
$0]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="admin" template="user_edit" modification_key="rhpz_user_edit_delete_account_codes_tab" description="Add Tab for listing delete account codes in User edit" execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<!--[XF:tabs:end]-->]]></find>
|
||||||
|
<replace><![CDATA[<xf:if is="$user.user_id">
|
||||||
|
<a class="tabs-tab" role="tab" tabindex="0"
|
||||||
|
id="user-delete-account-codes"
|
||||||
|
aria-controls="user-delete-account-codes"
|
||||||
|
href="{{ link('users/edit', $user) }}#delete-account-codes">{{ phrase('delete_account_codes') }}</a>
|
||||||
|
</xf:if>
|
||||||
|
$0]]></replace>
|
||||||
|
</modification>
|
||||||
|
<modification type="admin" template="user_edit" modification_key="rhpz_user_edit_delete_account_codes_tab_panes" description="Add Tab panes in User edit page for account deletion codes." execution_order="10" enabled="1" action="str_replace">
|
||||||
|
<find><![CDATA[<!--[XF:tab_panes:end]-->]]></find>
|
||||||
|
<replace><![CDATA[
|
||||||
|
<xf:if is="$user.user_id">
|
||||||
|
<li data-href="{{ link('users/delete-account-codes', $user, {'tabbed':1}) }}" role="tabpanel" aria-labelledby="user-delete-account-codes">
|
||||||
|
<div class="block-body block-row">{{ phrase('loading...') }}</div>
|
||||||
|
</li>
|
||||||
|
</xf:if>
|
||||||
|
$0]]></replace>
|
||||||
|
</modification>
|
||||||
|
</template_modifications>
|
||||||
666
_data/templates.xml
Normal file
666
_data/templates.xml
Normal file
@@ -0,0 +1,666 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<templates>
|
||||||
|
<template type="admin" title="helper_criteria" version_id="1000000" version_string="1.0.0"><![CDATA[<xf:macro id="user_tabs" arg-container="" arg-userTabTitle="" arg-active="">
|
||||||
|
<xf:set var="$tabs">
|
||||||
|
<a class="tabs-tab{{ $active == 'user' ? ' is-active' : '' }}"
|
||||||
|
role="tab" tabindex="0" aria-controls="{{ unique_id('criteriaUser') }}">
|
||||||
|
{{ $userTabTitle ? $userTabTitle : phrase('user_criteria') }}</a>
|
||||||
|
<a class="tabs-tab{{ $active == 'user_field' ? ' is-active' : '' }}"
|
||||||
|
role="tab" tabindex="0" aria-controls="{{ unique_id('criteriaUserField') }}">
|
||||||
|
{{ phrase('custom_userfield_criteria') }}</a>
|
||||||
|
</xf:set>
|
||||||
|
<xf:if is="$container">
|
||||||
|
<div class="tabs" role="tablist">
|
||||||
|
{$tabs|raw}
|
||||||
|
</div>
|
||||||
|
<xf:else />
|
||||||
|
{$tabs|raw}
|
||||||
|
</xf:if>
|
||||||
|
</xf:macro>
|
||||||
|
|
||||||
|
<xf:macro id="page_tabs" arg-container="" arg-active="">
|
||||||
|
<xf:set var="$tabs">
|
||||||
|
<a class="tabs-tab{{ $active == 'page' ? ' is-active' : '' }}"
|
||||||
|
role="tab" tabindex="0" aria-controls="{{ unique_id('criteriaPage') }}">{{ phrase('page_criteria') }}</a>
|
||||||
|
</xf:set>
|
||||||
|
<xf:if is="$container">
|
||||||
|
<div class="tabs" role="tablist">
|
||||||
|
{$tabs|raw}
|
||||||
|
</div>
|
||||||
|
<xf:else />
|
||||||
|
{$tabs|raw}
|
||||||
|
</xf:if>
|
||||||
|
</xf:macro>
|
||||||
|
|
||||||
|
<xf:macro id="user_panes" arg-container="" arg-active="" arg-criteria="!" arg-data="!">
|
||||||
|
|
||||||
|
<xf:set var="$app" value="{$xf.app}" />
|
||||||
|
<xf:set var="$visitor" value="{$xf.visitor}" />
|
||||||
|
<xf:set var="$em" value="{$app.em}" />
|
||||||
|
|
||||||
|
<xf:set var="$panes">
|
||||||
|
<li class="{{ $active == 'user' ? ' is-active' : '' }}" role="tabpanel" id="{{ unique_id('criteriaUser') }}">
|
||||||
|
<!--[XF:user:top]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('privileges_and_status') }}">
|
||||||
|
<!--[XF:user:status_top]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[is_guest][rule]" value="is_guest" selected="{$criteria.is_guest}"
|
||||||
|
label="{{ phrase('user_is_guest') }}" />
|
||||||
|
<xf:option name="user_criteria[is_logged_in][rule]" value="is_logged_in" selected="{$criteria.is_logged_in}"
|
||||||
|
label="{{ phrase('user_is_logged_in') }}" />
|
||||||
|
<xf:option name="user_criteria[is_moderator][rule]" value="is_moderator" selected="{$criteria.is_moderator}"
|
||||||
|
label="{{ phrase('user_is_moderator') }}" />
|
||||||
|
<xf:option name="user_criteria[is_admin][rule]" value="is_admin" selected="{$criteria.is_admin}"
|
||||||
|
label="{{ phrase('user_is_administrator') }}" />
|
||||||
|
<xf:option name="user_criteria[is_banned][rule]" value="is_banned" selected="{$criteria.is_banned}"
|
||||||
|
label="{{ phrase('user_is_banned') }}"/>
|
||||||
|
<xf:option name="user_criteria[birthday][rule]" value="birthday" selected="{$criteria.birthday}"
|
||||||
|
label="{{ phrase('user_birthday_is_today') }}"/>
|
||||||
|
<xf:option name="user_criteria[user_state][rule]" value="user_state" selected="{$criteria.user_state}"
|
||||||
|
label="{{ phrase('user_state_is:') }}">
|
||||||
|
|
||||||
|
<xf:dependent>
|
||||||
|
<xf:select name="user_criteria[user_state][data][state]" value="{$criteria.user_state.state}">
|
||||||
|
<xf:option value="valid">{{ phrase('valid') }}</xf:option>
|
||||||
|
<xf:option value="email_confirm">{{ phrase('awaiting_email_confirmation') }}</xf:option>
|
||||||
|
<xf:option value="email_confirm_edit">{{ phrase('awaiting_email_confirmation_from_edit') }}</xf:option>
|
||||||
|
<xf:option value="email_bounce">{{ phrase('email_invalid_bounced') }}</xf:option>
|
||||||
|
<xf:option value="moderated">{{ phrase('awaiting_approval') }}</xf:option>
|
||||||
|
<xf:option value="rejected">{{ phrase('rejected') }}</xf:option>
|
||||||
|
<xf:option value="disabled">{{ phrase('disabled') }}</xf:option>
|
||||||
|
</xf:select>
|
||||||
|
</xf:dependent>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<!--[XF:user:status_bottom]-->
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:user:after_status]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('connected_accounts') }}">
|
||||||
|
<xf:option name="user_criteria[connected_accounts][rule]" value="connected_accounts" selected="{$criteria.connected_accounts}"
|
||||||
|
label="{{ phrase('user_is_associated_with_any_of_selected_connected_account_providers:') }}">
|
||||||
|
|
||||||
|
<xf:select name="user_criteria[connected_accounts][data][provider_ids]" size="4" multiple="true" value="{$criteria.connected_accounts.provider_ids}">
|
||||||
|
<xf:options source="$data.connectedAccProviders" />
|
||||||
|
</xf:select>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:user:after_connected]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('user_groups') }}">
|
||||||
|
<xf:option name="user_criteria[user_groups][rule]" value="user_groups" selected="{$criteria.user_groups}"
|
||||||
|
label="{{ phrase('user_is_member_of_any_of_selected_user_groups:') }}">
|
||||||
|
|
||||||
|
<xf:select name="user_criteria[user_groups][data][user_group_ids]" size="4" multiple="true" value="{$criteria.user_groups.user_group_ids}">
|
||||||
|
<xf:foreach loop="$data.userGroups" key="$userGroupId" value="$userGroupTitle">
|
||||||
|
<xf:option value="{$userGroupId}">{$userGroupTitle}</xf:option>
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[not_user_groups][rule]" value="not_user_groups" selected="{$criteria.not_user_groups}"
|
||||||
|
label="{{ phrase('user_is_not_member_of_any_of_selected_user_groups:') }}">
|
||||||
|
|
||||||
|
<xf:select name="user_criteria[not_user_groups][data][user_group_ids]" size="4" multiple="true" value="{$criteria.not_user_groups.user_group_ids}">
|
||||||
|
<xf:foreach loop="$data.userGroups" key="$userGroupId" value="$userGroupTitle">
|
||||||
|
<xf:option value="{$userGroupId}">{$userGroupTitle}</xf:option>
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:user:after_groups]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('content_and_achievements') }}">
|
||||||
|
<!--[XF:user:content_top]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[messages_posted][rule]" value="messages_posted" selected="{$criteria.messages_posted}"
|
||||||
|
label="{{ phrase('user_has_posted_at_least_x_messages:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[messages_posted][data][messages]" value="{$criteria.messages_posted.messages}"
|
||||||
|
size="5" min="0" step="1" />
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[messages_maximum][rule]" value="messages_maximum" selected="{$criteria.messages_maximum}"
|
||||||
|
label="{{ phrase('user_has_posted_no_more_than_x_messages:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[messages_maximum][data][messages]" value="{$criteria.messages_maximum.messages}"
|
||||||
|
size="5" min="0" step="1" />
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<!--[XF:user:content_after_messages]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[questions_solved_min][rule]" value="questions_solved_min" selected="{$criteria.questions_solved_min}"
|
||||||
|
label="{{ phrase('user_has_solved_at_least_x_questions:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[questions_solved_min][data][solved]" value="{$criteria.questions_solved_min.solved}"
|
||||||
|
size="5" min="0" step="1" />
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[questions_solved_max][rule]" value="questions_solved_max" selected="{$criteria.questions_solved_max}"
|
||||||
|
label="{{ phrase('user_has_solved_no_more_than_x_questions:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[questions_solved_max][data][solved]" value="{$criteria.questions_solved_max.solved}"
|
||||||
|
size="5" min="0" step="1" />
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<!--[XF:user:content_after_questions]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[reaction_score][rule]" value="reaction_score" selected="{$criteria.reaction_score}"
|
||||||
|
label="{{ phrase('user_has_received_a_reaction_sore_of_at_least_x:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[reaction_score][data][reactions]" value="{$criteria.reaction_score.reactions}"
|
||||||
|
size="5" min="0" step="1" />
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[reaction_ratio][rule]" value="reaction_ratio" selected="{$criteria.reaction_ratio}"
|
||||||
|
label="{{ phrase('user_reaction_message_ratio_is_at_least:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[reaction_ratio][data][ratio]" value="{$criteria.reaction_ratio.ratio}"
|
||||||
|
size="5" min="0" step="0.25" />
|
||||||
|
<xf:afterhint>{{ phrase('reaction_message_ratio_explanation') }}</xf:afterhint>
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<!--[XF:user:content_after_reactions]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[trophy_points][rule]" value="trophy_points" selected="{$criteria.trophy_points}"
|
||||||
|
label="{{ phrase('user_has_at_least_x_trophy_points:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[trophy_points][data][points]" value="{$criteria.trophy_points.points}"
|
||||||
|
size="5" min="0" step="1" />
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<!--[XF:user:content_after_trophies]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[registered_days][rule]" value="registered_days" selected="{$criteria.registered_days}"
|
||||||
|
label="{{ phrase('user_has_been_registered_for_at_least_x_days:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[registered_days][data][days]" value="{$criteria.registered_days.days}"
|
||||||
|
size="5" min="0" step="1" />
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[inactive_days][rule]" value="inactive_days" selected="{$criteria.inactive_days}"
|
||||||
|
label="{{ phrase('user_has_not_visited_for_at_least_x_days:') }}">
|
||||||
|
<xf:numberbox name="user_criteria[inactive_days][data][days]" value="{$criteria.inactive_days.days}"
|
||||||
|
size="5" min="0" step="1" />
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<!--[XF:user:content_bottom]-->
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:user:after_content]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('user_profile_and_options') }}">
|
||||||
|
<!--[XF:user:profile_top]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[language][rule]" value="language" selected="{$criteria.language}"
|
||||||
|
label="{{ phrase('user_is_browsing_with_following_language:') }}">
|
||||||
|
|
||||||
|
<xf:select name="user_criteria[language][data][language_id]" value="{$criteria.language.language_id}">
|
||||||
|
<xf:foreach loop="$data.languageTree.getFlattened(0)" value="$treeEntry">
|
||||||
|
<xf:option value="{$treeEntry.record.language_id}">{{ repeat('--', $treeEntry.depth) }} {$treeEntry.record.title}</xf:option>
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:optgroup label="{{ phrase('avatar:') }}">
|
||||||
|
<xf:option name="user_criteria[has_avatar][rule]" value="has_avatar" selected="{$criteria.has_avatar}"
|
||||||
|
label="{{ phrase('user_has_avatar') }}" />
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[no_avatar][rule]" value="no_avatar" selected="{$criteria.no_avatar}"
|
||||||
|
label="{{ phrase('user_has_no_avatar') }}" />
|
||||||
|
</xf:optgroup>
|
||||||
|
|
||||||
|
<xf:optgroup label="{{ phrase('high_resolution_avatar:') }}">
|
||||||
|
<xf:option name="user_criteria[has_highdpi_avatar][rule]" value="has_highdpi_avatar" selected="{$criteria.has_highdpi_avatar}"
|
||||||
|
label="{{ phrase('user_has_highdpi_avatar') }}" />
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[no_highdpi_avatar][rule]" value="no_highdpi_avatar" selected="{$criteria.no_highdpi_avatar}"
|
||||||
|
label="{{ phrase('user_has_no_highdpi_avatar') }}" />
|
||||||
|
</xf:optgroup>
|
||||||
|
|
||||||
|
<xf:optgroup label="{{ phrase('two_step_verification:') }}">
|
||||||
|
<xf:option name="user_criteria[with_tfa][rule]" value="with_tfa" selected="{$criteria.with_tfa}"
|
||||||
|
label="{{ phrase('user_has_enabled_two_step_verification') }}" />
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[without_tfa][rule]" value="without_tfa" selected="{$criteria.without_tfa}"
|
||||||
|
label="{{ phrase('user_has_not_enabled_two_step_verification') }}"/>
|
||||||
|
</xf:optgroup>
|
||||||
|
|
||||||
|
<xf:optgroup label="{{ phrase('activity_summary_email:') }}">
|
||||||
|
<xf:option name="user_criteria[activity_summary_enabled][rule]" value="activity_summary_enabled" selected="{$criteria.activity_summary_enabled}"
|
||||||
|
label="{{ phrase('user_has_activity_summary_emails_enabled') }}" />
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[activity_summary_disabled][rule]" value="activity_summary_disabled" selected="{$criteria.activity_summary_disabled}"
|
||||||
|
label="{{ phrase('user_has_activity_summary_emails_disabled') }}"/>
|
||||||
|
</xf:optgroup>
|
||||||
|
|
||||||
|
<!--[XF:user:profile_bottom]-->
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:user:after_profile]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('user_segmentation') }}">
|
||||||
|
<!--[XF:user:segmentation_top]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[user_id][rule]" value="user_id" selected="{$criteria.user_id}"
|
||||||
|
label="{{ phrase('user_id_matches_expression:') }}">
|
||||||
|
<xf:textbox
|
||||||
|
name="user_criteria[user_id][data][expression]"
|
||||||
|
value="{$criteria.user_id.expression}"
|
||||||
|
placeholder="2n+1"
|
||||||
|
/>
|
||||||
|
<xf:afterhint>{{ phrase('user_id_match_criteria_explain') }}</xf:afterhint>
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<!--[XF:user:segmentation_bottom]-->
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:user:after_segmentation]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('specific_users') }}">
|
||||||
|
<!--[XF:user:specific_top]-->
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[username][rule]" value="username" selected="{$criteria.username}"
|
||||||
|
label="{{ phrase('username_is:') }}">
|
||||||
|
<xf:textbox name="user_criteria[username][data][names]" value="{$criteria.username.names}" ac="true" />
|
||||||
|
<xf:afterhint>{{ phrase('username_criteria_explain') }}</xf:afterhint>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[username_search][rule]" value="username_search" selected="{$criteria.username_search}"
|
||||||
|
label="{{ phrase('username_contains:') }}">
|
||||||
|
<xf:textbox name="user_criteria[username_search][data][needles]" value="{$criteria.username_search.needles}" />
|
||||||
|
<xf:afterhint>{{ phrase('username_search_criteria_explain') }}</xf:afterhint>
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="user_criteria[email_search][rule]" value="email_search" selected="{$criteria.email_search}"
|
||||||
|
label="{{ phrase('email_address_contains:') }}">
|
||||||
|
<xf:textbox name="user_criteria[email_search][data][needles]" value="{$criteria.email_search.needles}" />
|
||||||
|
<xf:afterhint>{{ phrase('email_search_criteria_explain') }}</xf:afterhint>
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<!--[XF:user:specific_bottom]-->
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<!--[XF:user:bottom]-->
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="{{ $active == 'user_field' ? 'is-active' : '' }}" role="tabpanel" id="{{ unique_id('criteriaUserField') }}">
|
||||||
|
<xf:if contentcheck="true">
|
||||||
|
<xf:contentcheck>
|
||||||
|
<xf:foreach loop="$xf.app.em.getRepository('XF:UserField').getDisplayGroups()" key="$fieldGroup" value="$groupPhrase">
|
||||||
|
|
||||||
|
<xf:set var="$customFields" value="{$app.getCustomFields('users', $fieldGroup)}" />
|
||||||
|
<xf:if contentcheck="true">
|
||||||
|
<h2 class="block-formSectionHeader"><span class="block-formSectionHeader-aligner">{$groupPhrase}</span></h2>
|
||||||
|
<xf:contentcheck>
|
||||||
|
<xf:foreach loop="$customFields" key="$fieldId" value="$fieldDefinition">
|
||||||
|
<xf:set var="$fieldName" value="user_field_{$fieldId}" />
|
||||||
|
<xf:set var="$choices" value="{$fieldDefinition.field_choices}" />
|
||||||
|
<xf:checkboxrow label="{$fieldDefinition.title}">
|
||||||
|
<xf:option name="user_criteria[{$fieldName}][rule]" value="{$fieldName}" selected="{$criteria.{$fieldName}}"
|
||||||
|
label="{{ $choices ? phrase('criteria_userfield_choice_among') : phrase('criteria_userfield_contains_text:') }}">
|
||||||
|
<xf:dependent>
|
||||||
|
<xf:if is="!{$choices}">
|
||||||
|
<xf:textbox name="user_criteria[{$fieldName}][data][text]" value="{$criteria.{$fieldName}.text}" />
|
||||||
|
<xf:elseif is="{{ count($choices) }} > 6" />
|
||||||
|
<xf:select name="user_criteria[{$fieldName}][data][choices]" value="{$criteria.{$fieldName}.choices}" multiple="multiple" size="5">
|
||||||
|
<xf:options source="{$choices}" />
|
||||||
|
</xf:select>
|
||||||
|
<xf:else />
|
||||||
|
<xf:checkbox name="user_criteria[{$fieldName}][data][choices]" value="{$criteria.{$fieldName}.choices}" listclass="listColumns">
|
||||||
|
<xf:options source="{$choices}" />
|
||||||
|
</xf:checkbox>
|
||||||
|
</xf:if>
|
||||||
|
</xf:dependent>
|
||||||
|
</xf:option>
|
||||||
|
</xf:checkboxrow>
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:contentcheck>
|
||||||
|
</xf:if>
|
||||||
|
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:contentcheck>
|
||||||
|
<xf:else />
|
||||||
|
{{ phrase('no_custom_fields_have_been_created_yet') }}
|
||||||
|
</xf:if>
|
||||||
|
</li>
|
||||||
|
</xf:set>
|
||||||
|
|
||||||
|
<xf:if is="$container">
|
||||||
|
<ul class="tabPanes">
|
||||||
|
{$panes|raw}
|
||||||
|
</ul>
|
||||||
|
<xf:else />
|
||||||
|
{$panes|raw}
|
||||||
|
</xf:if>
|
||||||
|
</xf:macro>
|
||||||
|
|
||||||
|
<xf:macro id="page_panes" arg-container="" arg-active="" arg-criteria="!" arg-data="!">
|
||||||
|
|
||||||
|
<xf:set var="$em" value="{$xf.app.em}" />
|
||||||
|
<xf:set var="$visitor" value="{$xf.visitor}" />
|
||||||
|
|
||||||
|
<xf:set var="$panes">
|
||||||
|
<li class="{{ $active == 'page' ? ' is-active' : '' }}" role="tabpanel" id="{{ unique_id('criteriaPage') }}">
|
||||||
|
<!--[XF:page:after_from_search]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow>
|
||||||
|
<xf:option name="page_criteria[after][rule]" value="after" selected="{$criteria.after}"
|
||||||
|
label="{{ phrase('criteria_date_time_is_after:') }}">
|
||||||
|
|
||||||
|
<xf:dependent>
|
||||||
|
<div class="inputGroup">
|
||||||
|
<xf:dateinput name="page_criteria[after][data][ymd]" value="{$criteria.after.ymd}" />
|
||||||
|
<span class="inputGroup-text">
|
||||||
|
{{ phrase('criteria_time:') }}
|
||||||
|
</span>
|
||||||
|
<span class="inputGroup" dir="ltr">
|
||||||
|
<xf:select name="page_criteria[after][data][hh]" value="{$criteria.after.hh}" class="input--inline input--autoSize">
|
||||||
|
<xf:foreach loop="$data.hours" value="$hour">
|
||||||
|
<xf:option value="{$hour}" label="{$hour}" />
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
<span class="inputGroup-text">:</span>
|
||||||
|
<xf:select name="page_criteria[after][data][mm]" value="{$criteria.after.mm}" class="input--inline input--autoSize">
|
||||||
|
<xf:foreach loop="$data.minutes" value="$minute">
|
||||||
|
<xf:option value="{$minute}" label="{$minute}" />
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<dfn class="inputChoices-explain inputChoices-explain--after">{{ phrase('criteria_leave_date_empty') }}</dfn>
|
||||||
|
</xf:dependent>
|
||||||
|
|
||||||
|
<xf:radio name="page_criteria[after][data][user_tz]" value="{{ $criteria.after.user_tz ? $criteria.after.user_tz : 0 }}">
|
||||||
|
<xf:option value="1" label="{{ phrase('criteria_in_visitor_timezone') }}" />
|
||||||
|
<xf:option value="0" label="{{ phrase('criteria_in_selected_timezone:') }}">
|
||||||
|
<xf:select name="page_criteria[after][data][timezone]" value="{{ $criteria.after.timezone ? $criteria.after.timezone : $visitor.timezone }}">
|
||||||
|
<xf:options source="{$data.timeZones}" />
|
||||||
|
</xf:select>
|
||||||
|
</xf:option>
|
||||||
|
</xf:radio>
|
||||||
|
</xf:option>
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:page:after_time_after]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow>
|
||||||
|
<xf:option name="page_criteria[before][rule]" value="before" selected="{$criteria.before}"
|
||||||
|
label="{{ phrase('criteria_date_time_is_before:') }}">
|
||||||
|
|
||||||
|
<xf:dependent>
|
||||||
|
<div class="inputGroup">
|
||||||
|
<xf:dateinput name="page_criteria[before][data][ymd]" value="{$criteria.before.ymd}" />
|
||||||
|
<span class="inputGroup-text">
|
||||||
|
{{ phrase('criteria_time:') }}
|
||||||
|
</span>
|
||||||
|
<span class="inputGroup" dir="ltr">
|
||||||
|
<xf:select name="page_criteria[before][data][hh]" value="{$criteria.before.hh}" class="input--inline input--autoSize">
|
||||||
|
<xf:foreach loop="$data.hours" value="$hour">
|
||||||
|
<xf:option value="{$hour}" label="{$hour}" />
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
<span class="inputGroup-text">:</span>
|
||||||
|
<xf:select name="page_criteria[before][data][mm]" value="{$criteria.before.mm}" class="input--inline input--autoSize">
|
||||||
|
<xf:foreach loop="$data.minutes" value="$minute">
|
||||||
|
<xf:option value="{$minute}" label="{$minute}" />
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<dfn class="inputChoices-explain inputChoices-explain--before">{{ phrase('criteria_leave_date_empty') }}</dfn>
|
||||||
|
</xf:dependent>
|
||||||
|
|
||||||
|
<xf:radio name="page_criteria[before][data][user_tz]" value="{{ $criteria.before.user_tz ? $criteria.before.user_tz : 0 }}">
|
||||||
|
<xf:option value="1" label="{{ phrase('criteria_in_visitor_timezone') }}" />
|
||||||
|
<xf:option value="0" label="{{ phrase('criteria_in_selected_timezone:') }}">
|
||||||
|
<xf:select name="page_criteria[before][data][timezone]" value="{{ $criteria.before.timezone ? $criteria.before.timezone : $visitor.timezone }}">
|
||||||
|
<xf:options source="{$data.timeZones}" />
|
||||||
|
</xf:select>
|
||||||
|
</xf:option>
|
||||||
|
</xf:radio>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:page:after_time_before]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('nodes') }}">
|
||||||
|
<xf:option name="page_criteria[nodes][rule]" value="nodes" selected="{$criteria.nodes}"
|
||||||
|
label="{{ phrase('page_is_within_nodes:') }}">
|
||||||
|
|
||||||
|
<xf:select name="page_criteria[nodes][data][node_ids]" multiple="true" value="{$criteria.nodes.node_ids}">
|
||||||
|
<xf:foreach loop="$data.nodes" value="$option">
|
||||||
|
<xf:option value="{$option.value}" label="{$option.label}" />
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
<xf:checkbox>
|
||||||
|
<xf:option name="page_criteria[nodes][data][node_only]" value="1" selected="{$criteria.nodes.node_only}"
|
||||||
|
label="{{ phrase('only_display_within_selected_nodes_no_children') }}" />
|
||||||
|
</xf:checkbox>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<hr class="formRowSep" />
|
||||||
|
|
||||||
|
<!--[XF:page:after_nodes]-->
|
||||||
|
|
||||||
|
<xf:checkboxrow label="{{ phrase('page_information') }}">
|
||||||
|
<xf:option name="page_criteria[style][rule]" value="style" selected="{$criteria.style}"
|
||||||
|
label="{{ phrase('user_is_browsing_with_following_style:') }}">
|
||||||
|
|
||||||
|
<xf:select name="page_criteria[style][data][style_id]" value="{$criteria.style.style_id}">
|
||||||
|
<xf:foreach loop="$data.styleTree.getFlattened(0)" value="$treeEntry">
|
||||||
|
<xf:option value="{$treeEntry.record.style_id}">{{ repeat('--', $treeEntry.depth) }} {$treeEntry.record.title}</xf:option>
|
||||||
|
</xf:foreach>
|
||||||
|
</xf:select>
|
||||||
|
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="page_criteria[tab][rule]" value="tab" selected="{$criteria.tab}"
|
||||||
|
label="{{ phrase('selected_navigation_tab_id_is:') }}">
|
||||||
|
|
||||||
|
<xf:textbox name="page_criteria[tab][data][id]" value="{$criteria.tab.id}"dir="ltr" />
|
||||||
|
<xf:afterhint>{{ phrase('selected_tab_criteria_explain') }}</xf:afterhint>
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="page_criteria[controller][rule]" value="controller" selected="{$criteria.controller}"
|
||||||
|
label="{{ phrase('controller_and_action_is:') }}">
|
||||||
|
|
||||||
|
<xf:macro id="helper_callback_fields::callback_fields"
|
||||||
|
arg-className="page_criteria[controller][data][name]"
|
||||||
|
arg-methodName="page_criteria[controller][data][action]"
|
||||||
|
arg-classValue="{$criteria.controller.name}"
|
||||||
|
arg-methodValue="{$criteria.controller.action}" />
|
||||||
|
<xf:afterhint>{{ phrase('controller_and_action_criteria_explain') }}</xf:afterhint>
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="page_criteria[view][rule]" value="view" selected="{$criteria.view}"
|
||||||
|
label="{{ phrase('view_class_is:') }}">
|
||||||
|
|
||||||
|
<xf:textbox name="page_criteria[view][data][name]" value="{$criteria.view.name}" dir="ltr" />
|
||||||
|
<xf:afterhint>{{ phrase('view_class_criteria_explain') }}</xf:afterhint>
|
||||||
|
</xf:option>
|
||||||
|
|
||||||
|
<xf:option name="page_criteria[template][rule]" value="template" selected="{$criteria.template}"
|
||||||
|
label="{{ phrase('content_template_is:') }}">
|
||||||
|
|
||||||
|
<xf:textbox name="page_criteria[template][data][name]" value="{$criteria.template.name}" dir="ltr" />
|
||||||
|
<xf:afterhint>{{ phrase('content_template_criteria_explain') }}</xf:afterhint>
|
||||||
|
</xf:option>
|
||||||
|
</xf:checkboxrow>
|
||||||
|
|
||||||
|
<!--[XF:page:after_page_info]-->
|
||||||
|
</li>
|
||||||
|
</xf:set>
|
||||||
|
|
||||||
|
<xf:if is="$container">
|
||||||
|
<ul class="tabPanes">
|
||||||
|
{$panes|raw}
|
||||||
|
</ul>
|
||||||
|
<xf:else />
|
||||||
|
{$panes|raw}
|
||||||
|
</xf:if>
|
||||||
|
</xf:macro>]]></template>
|
||||||
|
<template type="admin" title="user_delete_account_codes" version_id="1000000" version_string="1.0.0"><![CDATA[<xf:title>{$user.username}</xf:title>
|
||||||
|
|
||||||
|
<div class="block">
|
||||||
|
<div class="block-container">
|
||||||
|
<h3 class="block-minorHeader">{{ phrase('delete_account_code') }}</h3>
|
||||||
|
<div class="block-body">
|
||||||
|
<div class="block-row">{$deleteAccountCode}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h3 class="block-minorHeader">{{ phrase('delete_all_data_code') }}</h3>
|
||||||
|
<div class="block-body">
|
||||||
|
<div class="block-row">{$deleteAllDataCode}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>]]></template>
|
||||||
|
<template type="public" title="approval_item_club_request" version_id="1000000" version_string="1.0.0"><![CDATA[<xf:macro id="approval_queue_macros::item_message_type"
|
||||||
|
arg-content="{$content}"
|
||||||
|
arg-user="{$content.User}"
|
||||||
|
arg-messageHtml="{$content.description}"
|
||||||
|
arg-contentDate="{$content.club_creation_date}"
|
||||||
|
arg-typePhraseHtml="Club Request"
|
||||||
|
arg-headerPhrase="{$content.title}"
|
||||||
|
arg-spamDetails="{$spamDetails}"
|
||||||
|
arg-unapprovedItem="{$unapprovedItem}"
|
||||||
|
arg-handler="{$handler}"
|
||||||
|
/>]]></template>
|
||||||
|
<template type="public" title="approval_item_entry_featured_request" version_id="1000000" version_string="1.0.0"><![CDATA[<xf:macro id="approval_queue_macros::item_message_type"
|
||||||
|
arg-content="{$content}"
|
||||||
|
arg-user="{$content.User}"
|
||||||
|
arg-messageHtml="{$content.entry_title}"
|
||||||
|
arg-contentDate="{$content.featured_request_date}"
|
||||||
|
arg-typePhraseHtml="Featured Request"
|
||||||
|
arg-headerPhrase="{$content.entry_title}"
|
||||||
|
arg-spamDetails="{$spamDetails}"
|
||||||
|
arg-unapprovedItem="{$unapprovedItem}"
|
||||||
|
arg-handler="{$handler}"
|
||||||
|
/>]]></template>
|
||||||
|
<template type="public" title="club_delete_confirm" version_id="1000000" version_string="1.0.0"><![CDATA[<xf:title>Delete club : {$club.title}</xf:title>
|
||||||
|
|
||||||
|
<xf:form action="{{ link('clubs/delete', $club) }}" class="block">
|
||||||
|
<div class="block-container">
|
||||||
|
<div class="block-body">
|
||||||
|
<xf:inforow rowtype="confirm">
|
||||||
|
Are you sure you want to delete this club ? <strong>{$club.title}</strong> ?<br />
|
||||||
|
<span class="u-muted">Deleting this will also delete all threads and posts.</span>
|
||||||
|
</xf:inforow>
|
||||||
|
</div>
|
||||||
|
<xf:submitrow rowtype="simple" icon="delete" submit="Delete" />
|
||||||
|
</div>
|
||||||
|
</xf:form>]]></template>
|
||||||
|
<template type="public" title="club_edit_form" version_id="1000000" version_string="1.0.0"><![CDATA[<div class="block">
|
||||||
|
<xf:form action="{{ link('clubs/save', $club ) }}" upload="true" ajax="true" class="block-container">
|
||||||
|
<div class="block-body">
|
||||||
|
<xf:textboxrow name="title" value="{$club.title}" label="Title" required="true" maxlength="100" />
|
||||||
|
<xf:textarearow name="description" value="{$club.description}" label="Description" required="true" rows="4" />
|
||||||
|
|
||||||
|
<xf:if is="$club.banner_date">
|
||||||
|
<xf:formrow label="Current Banner">
|
||||||
|
<img src="{$club.getBannerUrl()}" style="max-width: 300px; border-radius: 4px;" />
|
||||||
|
</xf:formrow>
|
||||||
|
</xf:if>
|
||||||
|
|
||||||
|
<xf:uploadrow name="upload_banner" accept=".jpg,.jpeg,.png" label="Banner" />
|
||||||
|
</div>
|
||||||
|
<xf:submitrow icon="save" submit="Submit Changes" />
|
||||||
|
</xf:form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<xf:if is="$club.club_id && $club.node_id">
|
||||||
|
|
||||||
|
<div class="block u-marginTop">
|
||||||
|
<div class="block-container">
|
||||||
|
<h2 class="block-header">Club Moderators ({$subModCount}/5)</h2>
|
||||||
|
<div class="block-body">
|
||||||
|
<xf:if is="$moderators is not empty">
|
||||||
|
<div class="dataList">
|
||||||
|
<xf:foreach loop="$moderators" value="$mod">
|
||||||
|
<div class="dataList-row">
|
||||||
|
<div class="dataList-cell dataList-cell--main">
|
||||||
|
<strong>{$mod.User.username}</strong>
|
||||||
|
<xf:if is="$mod.user_id == $club.user_id">
|
||||||
|
<span class="label label--accent u-marginLeft">Owner</span>
|
||||||
|
</xf:if>
|
||||||
|
</div>
|
||||||
|
<div class="dataList-cell dataList-cell--action">
|
||||||
|
<xf:if is="$mod.user_id != $club.user_id">
|
||||||
|
<xf:form action="{{ link('clubs/remove-moderator', $club) }}" ajax="true" class="u-inline">
|
||||||
|
<input type="hidden" name="user_id" value="{$mod.user_id}" />
|
||||||
|
<xf:button type="submit" class="button--small button--warn" icon="delete">Remove</xf:button>
|
||||||
|
</xf:form>
|
||||||
|
<xf:else />
|
||||||
|
<span class="u-muted">-</span>
|
||||||
|
</xf:if>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</xf:foreach>
|
||||||
|
</div>
|
||||||
|
<xf:else />
|
||||||
|
<div class="block-row">No moderators for this club.</div>
|
||||||
|
</xf:if>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="block u-marginTop">
|
||||||
|
<xf:if is="$subModCount < 5">
|
||||||
|
<xf:form action="{{ link('clubs/add-moderator', $club) }}" ajax="true" class="block-container">
|
||||||
|
<h2 class="block-header">Add a moderator</h2>
|
||||||
|
<div class="block-body">
|
||||||
|
<xf:textboxrow name="username" label="Username" class="namePredictor" required="true" />
|
||||||
|
</div>
|
||||||
|
<xf:submitrow icon="add" submit="Promote Moderator" />
|
||||||
|
</xf:form>
|
||||||
|
<xf:else />
|
||||||
|
<div class="block-container">
|
||||||
|
<div class="block-row block-row--warning">
|
||||||
|
<strong>Limit reached:</strong> You have reached the maximum number of 5 moderators for your club. You must remove one before you can add a new one.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</xf:if>
|
||||||
|
</div>
|
||||||
|
</xf:if>]]></template>
|
||||||
|
<template type="public" title="club_request_form" version_id="1000000" version_string="1.0.0"><![CDATA[<xf:title>Submit Club Request</xf:title>
|
||||||
|
|
||||||
|
<xf:form action="{{ link('clubs/save') }}" ajax="true" class="block">
|
||||||
|
<div class="block-container">
|
||||||
|
<div class="block-body">
|
||||||
|
<xf:textboxrow name="title" label="Title" required="required" />
|
||||||
|
<xf:textarearow name="description" label="Description" rows="4" required="required" />
|
||||||
|
<xf:uploadrow name="upload_banner" accept=".jpg,.jpeg,.jpe,.png" label="Banner" />
|
||||||
|
</div>
|
||||||
|
<xf:submitrow submit="Submit" icon="save" />
|
||||||
|
</div>
|
||||||
|
</xf:form>]]></template>
|
||||||
|
<template type="public" title="report_content_romhackplaza_entry" version_id="1000000" version_string="1.0.0"><![CDATA[<div class="block-row block-row--separated">
|
||||||
|
{{ phrase('content:') }}
|
||||||
|
{$report.content_info.description}
|
||||||
|
</div>]]></template>
|
||||||
|
<template type="public" title="report_content_romhackplaza_news" version_id="1000000" version_string="1.0.0"><![CDATA[<div class="block-row block-row--separated">
|
||||||
|
{{ phrase('content:') }}
|
||||||
|
{$report.content_info.description}
|
||||||
|
</div>]]></template>
|
||||||
|
</templates>
|
||||||
2
_data/widget_definitions.xml
Normal file
2
_data/widget_definitions.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<widget_definitions/>
|
||||||
2
_data/widget_positions.xml
Normal file
2
_data/widget_positions.xml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<widget_positions/>
|
||||||
Reference in New Issue
Block a user