Chris@76: Chris@76: ', sprintf($txt['permission_cannot_edit'], $scripturl . '?action=admin;area=permissions;sa=profiles'), ' Chris@76: '; Chris@76: Chris@76: echo ' Chris@76:
Chris@76:
'; Chris@76: Chris@76: if (!empty($context['profile'])) Chris@76: echo ' Chris@76:
Chris@76:

', $txt['permissions_for_profile'], ': "', $context['profile']['name'], '"

Chris@76:
'; Chris@76: Chris@76: echo ' Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: if (empty($modSettings['permission_enable_deny'])) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: $alternate = false; Chris@76: foreach ($context['groups'] as $group) Chris@76: { Chris@76: $alternate = !$alternate; Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: if (empty($modSettings['permission_enable_deny'])) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: } Chris@76: Chris@76: echo ' Chris@76: Chris@76:
', $txt['membergroups_name'], '', $txt['membergroups_members_top'], '', $txt['membergroups_permissions'], '', $txt['permissions_allowed'], '', $txt['permissions_denied'], '', $context['can_modify'] ? $txt['permissions_modify'] : $txt['permissions_view'], ' Chris@76: ', $context['can_modify'] ? '' : '', ' Chris@76:
Chris@76: ', $group['name'], $group['id'] == -1 ? ' (?)' : ($group['id'] == 0 ? ' (?)' : ($group['id'] == 1 ? ' (?)' : ($group['id'] == 3 ? ' (?)' : ''))); Chris@76: Chris@76: if (!empty($group['children'])) Chris@76: echo ' Chris@76:
', $txt['permissions_includes_inherited'], ': "', implode('", "', $group['children']), '"'; Chris@76: Chris@76: echo ' Chris@76:
', $group['can_search'] ? $group['link'] : $group['num_members'], '', $group['num_permissions']['allowed'], '', $group['num_permissions']['allowed'], '', $group['num_permissions']['denied'], '', $group['allow_modify'] ? '' . ($context['can_modify'] ? $txt['permissions_modify'] : $txt['permissions_view']). '' : '', '', $group['allow_modify'] && $context['can_modify'] ? '' : '', '
Chris@76:
'; Chris@76: Chris@76: // Advanced stuff... Chris@76: if ($context['can_modify']) Chris@76: { Chris@76: echo ' Chris@76:
Chris@76:

Chris@76: Chris@76: * ', $txt['permissions_advanced_options'], ' Chris@76: Chris@76:

Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76: ', $txt['permissions_with_selection'], ' Chris@76:
Chris@76:
Chris@76: ', $txt['permissions_apply_pre_defined'], ' (?): Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76: ', $txt['permissions_like_group'], ': Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76: Chris@76:
'; Chris@76: Chris@76: // Javascript for the advanced stuff. Chris@76: echo ' Chris@76: '; Chris@76: Chris@76: if (!empty($context['profile'])) Chris@76: echo ' Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: else Chris@76: echo ' Chris@76: '; Chris@76: Chris@76: echo ' Chris@76:
Chris@76:
Chris@76:
'; Chris@76: } Chris@76: Chris@76: function template_by_board() Chris@76: { Chris@76: global $context, $settings, $options, $scripturl, $txt, $modSettings; Chris@76: Chris@76: echo ' Chris@76:
Chris@76:
Chris@76:

', $txt['permissions_boards'], '

Chris@76:
Chris@76:
Chris@76: ', $txt['permissions_boards_desc'], ' Chris@76:
Chris@76:
Chris@76:

Chris@76: ', $txt['board_name'], ' Chris@76: ', $txt['permission_profile'], ' Chris@76:

Chris@76:
'; Chris@76: Chris@76: if (!$context['edit_all']) Chris@76: echo ' Chris@76:
Chris@76: [', $txt['permissions_board_all'], '] Chris@76:
'; Chris@76: Chris@76: foreach ($context['categories'] as $category) Chris@76: { Chris@76: echo ' Chris@76:
Chris@76:

', $category['name'], '

Chris@76:
'; Chris@76: Chris@76: if (!empty($category['boards'])) Chris@76: echo ' Chris@76:
Chris@76: Chris@76:
Chris@76:
    '; Chris@76: Chris@76: $alternate = false; Chris@76: Chris@76: foreach ($category['boards'] as $board) Chris@76: { Chris@76: $alternate = !$alternate; Chris@76: Chris@76: echo ' Chris@76: Chris@76:
  • Chris@76: Chris@76: ', str_repeat('-', $board['child_level']), ' ', $board['name'], ' Chris@76: Chris@76: '; Chris@76: if ($context['edit_all']) Chris@76: { Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: else Chris@76: echo ' Chris@76: [', $board['profile_name'], ']'; Chris@76: Chris@76: echo ' Chris@76: Chris@76:
  • '; Chris@76: } Chris@76: Chris@76: if (!empty($category['boards'])) Chris@76: echo ' Chris@76:
Chris@76:
Chris@76: Chris@76:
'; Chris@76: } Chris@76: Chris@76: echo ' Chris@76:
'; Chris@76: Chris@76: if ($context['edit_all']) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: [', $txt['permissions_board_all'], ']'; Chris@76: Chris@76: echo ' Chris@76: Chris@76:
Chris@76:
Chris@76:
'; Chris@76: } Chris@76: Chris@76: // Edit permission profiles (predefined). Chris@76: function template_edit_profiles() Chris@76: { Chris@76: global $context, $settings, $options, $scripturl, $txt, $modSettings; Chris@76: Chris@76: echo ' Chris@76:
Chris@76:
Chris@76:
Chris@76:

', $txt['permissions_profile_edit'], '

Chris@76:
Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: '; Chris@76: $alternate = false; Chris@76: foreach ($context['profiles'] as $profile) Chris@76: { Chris@76: echo ' Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: '; Chris@76: $alternate = !$alternate; Chris@76: } Chris@76: Chris@76: echo ' Chris@76: Chris@76:
', $txt['permissions_profile_name'], '', $txt['permissions_profile_used_by'], '', $txt['delete'], '
'; Chris@76: Chris@76: if (!empty($context['show_rename_boxes']) && $profile['can_edit']) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: ', $profile['name'], ''; Chris@76: Chris@76: echo ' Chris@76: Chris@76: ', !empty($profile['boards_text']) ? $profile['boards_text'] : $txt['permissions_profile_used_by_none'], ' Chris@76: Chris@76: Chris@76:
Chris@76:
Chris@76: '; Chris@76: Chris@76: if ($context['can_edit_something']) Chris@76: echo ' Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: Chris@76:
Chris@76:
Chris@76:
Chris@76:
Chris@76:
Chris@76:

', $txt['permissions_profile_new'], '

Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76:
Chris@76: ', $txt['permissions_profile_name'], ': Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76: ', $txt['permissions_profile_copy_from'], ': Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76:
Chris@76: Chris@76: Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76:
Chris@76:
'; Chris@76: } Chris@76: Chris@76: function template_modify_group() Chris@76: { Chris@76: global $context, $settings, $options, $scripturl, $txt, $modSettings; Chris@76: Chris@76: // Cannot be edited? Chris@76: if (!$context['profile']['can_modify']) Chris@76: { Chris@76: echo ' Chris@76:
Chris@76: ', sprintf($txt['permission_cannot_edit'], $scripturl . '?action=admin;area=permissions;sa=profiles'), ' Chris@76:
'; Chris@76: } Chris@76: else Chris@76: { Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: Chris@76: echo ' Chris@76:
Chris@76:
'; Chris@76: Chris@76: if (!empty($modSettings['permission_enable_deny']) && $context['group']['id'] != -1) Chris@76: echo ' Chris@76:
Chris@76: ', $txt['permissions_option_desc'], ' Chris@76:
'; Chris@76: Chris@76: echo ' Chris@76:
Chris@76:

'; Chris@76: if ($context['permission_type'] == 'board') Chris@76: echo ' Chris@76: ', $txt['permissions_local_for'], ' "', $context['group']['name'], '" ', $txt['permissions_on'], ' "', $context['profile']['name'], '"'; Chris@76: else Chris@76: echo ' Chris@76: ', $context['permission_type'] == 'membergroup' ? $txt['permissions_general'] : $txt['permissions_board'], ' - "', $context['group']['name'], '"'; Chris@76: echo ' Chris@76:

Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76: ', $txt['permissions_change_view'], ': ', ($context['view_type'] == 'simple' ? '*' : ''), '', $txt['permissions_view_simple'], ' | Chris@76: ', ($context['view_type'] == 'classic' ? '*' : ''), '', $txt['permissions_view_classic'], ' Chris@76:
Chris@76: Chris@76:
Chris@76:
'; Chris@76: Chris@76: // Draw out the main bits. Chris@76: if ($context['view_type'] == 'simple') Chris@76: template_modify_group_simple($context['permission_type']); Chris@76: else Chris@76: template_modify_group_classic($context['permission_type']); Chris@76: Chris@76: // If this is general permissions also show the default profile. Chris@76: if ($context['permission_type'] == 'membergroup') Chris@76: { Chris@76: echo ' Chris@76:
Chris@76:
Chris@76:
Chris@76:

', $txt['permissions_board'], '

Chris@76:
Chris@76:
Chris@76: ', $txt['permissions_board_desc'], ' Chris@76:
Chris@76:
'; Chris@76: Chris@76: if ($context['view_type'] == 'simple') Chris@76: template_modify_group_simple('board'); Chris@76: else Chris@76: template_modify_group_classic('board'); Chris@76: Chris@76: echo ' Chris@76:
'; Chris@76: } Chris@76: Chris@76: if ($context['profile']['can_modify']) Chris@76: echo ' Chris@76:
Chris@76: Chris@76:
'; Chris@76: Chris@76: echo ' Chris@76: Chris@76:
Chris@76:
Chris@76:
'; Chris@76: Chris@76: } Chris@76: Chris@76: // A javascript enabled clean permissions view. Chris@76: function template_modify_group_simple($type) Chris@76: { Chris@76: global $context, $settings, $options, $scripturl, $txt, $modSettings; Chris@76: Chris@76: // Simple only has one column so we only need bother ourself with that one. Chris@76: $permission_data = &$context['permissions'][$type]['columns'][0]; Chris@76: Chris@76: // Short cut for disabling fields we can't change. Chris@76: $disable_field = $context['profile']['can_modify'] ? '' : 'disabled="disabled" '; Chris@76: Chris@76: echo ' Chris@76: Chris@76: Chris@76: Chris@76: '; Chris@76: if (empty($modSettings['permission_enable_deny']) || $context['group']['id'] == -1) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: foreach ($permission_data as $id_group => $permissionGroup) Chris@76: { Chris@76: if (empty($permissionGroup['permissions'])) Chris@76: continue; Chris@76: Chris@76: // Are we likely to have something in this group to display or is it all hidden? Chris@76: $has_display_content = false; Chris@76: if (!$permissionGroup['hidden']) Chris@76: { Chris@76: // Before we go any further check we are going to have some data to print otherwise we just have a silly heading. Chris@76: foreach ($permissionGroup['permissions'] as $permission) Chris@76: if (!$permission['hidden']) Chris@76: $has_display_content = true; Chris@76: Chris@76: if ($has_display_content) Chris@76: { Chris@76: echo ' Chris@76: Chris@76: '; Chris@76: if (empty($modSettings['permission_enable_deny']) || $context['group']['id'] == -1) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: } Chris@76: Chris@76: $alternate = false; Chris@76: foreach ($permissionGroup['permissions'] as $permission) Chris@76: { Chris@76: // If it's hidden keep the last value. Chris@76: if ($permission['hidden'] || $permissionGroup['hidden']) Chris@76: { Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: } Chris@76: else Chris@76: { Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: if (empty($modSettings['permission_enable_deny']) || $context['group']['id'] == -1) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: $alternate = !$alternate; Chris@76: } Chris@76: Chris@76: if (!$permissionGroup['hidden'] && $has_display_content) Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: } Chris@76: echo ' Chris@76: Chris@76:
 ', $txt['permissions_option_on'], '', $txt['permissions_option_off'], '', $txt['permissions_option_deny'], '
Chris@76: Chris@76: * ', $permissionGroup['name'], ' Chris@76: Chris@76: Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76: ', $permission['help_index'] ? '' . $txt['help'] . '' : '', ' Chris@76: ', $permission['name'], '
Chris@76: '; Chris@76: } Chris@76: Chris@76: // The SMF 1.x way of looking at permissions. Chris@76: function template_modify_group_classic($type) Chris@76: { Chris@76: global $context, $settings, $options, $scripturl, $txt, $modSettings; Chris@76: Chris@76: $permission_type = &$context['permissions'][$type]; Chris@76: $disable_field = $context['profile']['can_modify'] ? '' : 'disabled="disabled" '; Chris@76: Chris@76: echo ' Chris@76:
Chris@76: Chris@76:
'; Chris@76: Chris@76: foreach ($permission_type['columns'] as $column) Chris@76: { Chris@76: echo ' Chris@76: '; Chris@76: Chris@76: foreach ($column as $permissionGroup) Chris@76: { Chris@76: if (empty($permissionGroup['permissions'])) Chris@76: continue; Chris@76: Chris@76: // Are we likely to have something in this group to display or is it all hidden? Chris@76: $has_display_content = false; Chris@76: if (!$permissionGroup['hidden']) Chris@76: { Chris@76: // Before we go any further check we are going to have some data to print otherwise we just have a silly heading. Chris@76: foreach ($permissionGroup['permissions'] as $permission) Chris@76: if (!$permission['hidden']) Chris@76: $has_display_content = true; Chris@76: Chris@76: if ($has_display_content) Chris@76: { Chris@76: echo ' Chris@76: Chris@76: '; Chris@76: if (empty($modSettings['permission_enable_deny']) || $context['group']['id'] == -1) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: } Chris@76: Chris@76: $alternate = false; Chris@76: foreach ($permissionGroup['permissions'] as $permission) Chris@76: { Chris@76: // If it's hidden keep the last value. Chris@76: if ($permission['hidden'] || $permissionGroup['hidden']) Chris@76: { Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: } Chris@76: else Chris@76: { Chris@76: echo ' Chris@76: Chris@76: '; Chris@76: Chris@76: if ($permission['has_own_any']) Chris@76: { Chris@76: echo ' Chris@76: Chris@76: '; Chris@76: Chris@76: // Guests can't do their own thing. Chris@76: if ($context['group']['id'] != -1) Chris@76: { Chris@76: echo ' Chris@76: Chris@76: '; Chris@76: Chris@76: if (empty($modSettings['permission_enable_deny'])) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: Chris@76: echo ' Chris@76: Chris@76: '; Chris@76: Chris@76: if (empty($modSettings['permission_enable_deny']) || $context['group']['id'] == -1) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: else Chris@76: { Chris@76: echo ' Chris@76: '; Chris@76: Chris@76: if (empty($modSettings['permission_enable_deny']) || $context['group']['id'] == -1) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: } Chris@76: $alternate = !$alternate; Chris@76: } Chris@76: Chris@76: if (!$permissionGroup['hidden'] && $has_display_content) Chris@76: echo ' Chris@76: Chris@76: Chris@76: '; Chris@76: } Chris@76: echo ' Chris@76:
', $permissionGroup['name'], '
', $txt['permissions_option_on'], '
', $txt['permissions_option_off'], '
', $txt['permissions_option_deny'], '
'; Chris@76: Chris@76: if ($permission['has_own_any']) Chris@76: { Chris@76: // Guests can't have own permissions. Chris@76: if ($context['group']['id'] != -1) Chris@76: echo ' Chris@76: '; Chris@76: Chris@76: echo ' Chris@76: '; Chris@76: } Chris@76: else Chris@76: echo ' Chris@76: '; Chris@76: echo ' Chris@76:
Chris@76: ', $permission['show_help'] ? '' . $txt['help'] . '' : '', ' Chris@76: ', $permission['name'], '
', $permission['own']['name'], ':
', $permission['any']['name'], ':
', $permission['name'], '
'; Chris@76: } Chris@76: echo ' Chris@76:
Chris@76:
Chris@76: Chris@76:
'; Chris@76: } Chris@76: Chris@76: function template_inline_permissions() Chris@76: { Chris@76: global $context, $settings, $options, $txt, $modSettings; Chris@76: Chris@76: echo ' Chris@76:
Chris@76: ', $txt['avatar_select_permission'], ''; Chris@76: if (empty($modSettings['permission_enable_deny'])) Chris@76: echo ' Chris@76: '; Chris@76: else Chris@76: echo ' Chris@76: '; Chris@76: Chris@76: echo ' Chris@76:
Chris@76: Chris@76: Chris@76: Chris@76: '; Chris@76: } Chris@76: Chris@76: // Edit post moderation permissions. Chris@76: function template_postmod_permissions() Chris@76: { Chris@76: global $context, $settings, $options, $scripturl, $txt, $modSettings; Chris@76: Chris@76: echo ' Chris@76:
Chris@76:
Chris@76:
Chris@76:

', $txt['permissions_post_moderation'], '

Chris@76:
'; Chris@76: Chris@76: // Got advanced permissions - if so warn! Chris@76: if (!empty($modSettings['permission_enable_deny'])) Chris@76: echo ' Chris@76:
', $txt['permissions_post_moderation_deny_note'], '
'; Chris@76: Chris@76: echo ' Chris@76:
Chris@76: ', $txt['permissions_post_moderation_select'], ': Chris@76: Chris@76: Chris@76:
Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: '; Chris@76: Chris@76: foreach ($context['profile_groups'] as $group) Chris@76: { Chris@76: echo ' Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: Chris@76: '; Chris@76: } Chris@76: Chris@76: echo ' Chris@76: Chris@76:
Chris@76: ', $txt['permissions_post_moderation_new_topics'], ' Chris@76: Chris@76: ', $txt['permissions_post_moderation_replies_own'], ' Chris@76: Chris@76: ', $txt['permissions_post_moderation_replies_any'], ' Chris@76: Chris@76: ', $txt['permissions_post_moderation_attachments'], ' Chris@76:
Chris@76: ', $txt['permissions_post_moderation_group'], ' Chris@76: ', $txt['permissions_post_moderation_allow'], '', $txt['permissions_post_moderation_moderate'], '', $txt['permissions_post_moderation_disallow'], '', $txt['permissions_post_moderation_allow'], '', $txt['permissions_post_moderation_moderate'], '', $txt['permissions_post_moderation_disallow'], '', $txt['permissions_post_moderation_allow'], '', $txt['permissions_post_moderation_moderate'], '', $txt['permissions_post_moderation_disallow'], '', $txt['permissions_post_moderation_allow'], '', $txt['permissions_post_moderation_moderate'], '', $txt['permissions_post_moderation_disallow'], '
Chris@76: ', $group['name'], ''; Chris@76: if (!empty($group['children'])) Chris@76: echo ' Chris@76:
', $txt['permissions_includes_inherited'], ': "', implode('", "', $group['children']), '"'; Chris@76: Chris@76: echo ' Chris@76:
Chris@76:
Chris@76: Chris@76:
Chris@76:
Chris@76:

Chris@76: ', $txt['permissions_post_moderation_legend'], ':
Chris@76: ', $txt['permissions_post_moderation_allow'], ' - ', $txt['permissions_post_moderation_allow'], '
Chris@76: ', $txt['permissions_post_moderation_moderate'], ' - ', $txt['permissions_post_moderation_moderate'], '
Chris@76: ', $txt['permissions_post_moderation_disallow'], ' - ', $txt['permissions_post_moderation_disallow'], ' Chris@76:

Chris@76:
Chris@76:
'; Chris@76: } Chris@76: Chris@76: ?>