Вход Регистрация
Файл: system/controllers/groups/actions/group_members.php
Строк: 50
<?php

class actionGroupsGroupMembers extends cmsAction {

    public 
$lock_explicit_call true;

    public function 
run($group$role_id null){

        
$users_controller cmsCore::getController('users'$this->request);

        
$this->model->filterUsersMembers($group['id'], $users_controller->model);

        if(
$role_id !== null){
            if(
$role_id 0){
                
$users_controller->model->joinInner('groups_member_roles''mr''mr.user_id = i.id');
                
$users_controller->model->filterEqual('mr.group_id'$group['id']);
                
$users_controller->model->filterEqual('mr.role_id'$role_id);
            }
            if(
$role_id == -1){
                
$users_controller->model->filterEqual('m.role'groups::ROLE_STAFF);
            }
        }

        
$page_url href_to($this->name$group['slug'], 'members');

        
$group['sub_title'] = LANG_GROUPS_GROUP_MEMBERS;
        if(
$role_id == -1){
            
$group['sub_title'] = LANG_GROUPS_EDIT_STAFF;
        } elseif(isset(
$group['roles'][$role_id])){
            
$group['sub_title'] = $group['roles'][$role_id];
        }

        
$this->cms_template->addBreadcrumb(LANG_GROUPShref_to('groups'));
        
$this->cms_template->addBreadcrumb($group['title'], href_to('groups'$group['slug']));
        
$this->cms_template->addBreadcrumb($group['sub_title']);

        
$profiles_list_html $users_controller->renderProfilesList($page_urlfalse, array(
            array(
                
'title'   => LANG_GROUPS_SET_ROLES,
                
'class'   => 'ajax-modal',
                
'href'    => href_to('groups''set_roles', array($group['id'], '{id}')),
                
'handler' => function($user) use($group){
                    return (
$group['access']['is_owner'] || cmsUser::isAdmin()) && $group['roles'];
                }
            ),
            array(
                
'title' => LANG_GROUPS_STAFF_SET,
                
'class' => 'ajax-modal',
                
'href'  => href_to('groups''set_staff', array($group['id'], '{id}')),
                
'handler' => function($user) use($group){
                    return (
$group['access']['is_owner'] || cmsUser::isAdmin()) && $user['member_role'] != groups::ROLE_STAFF;
                }
            ),
            array(
                
'title' => LANG_GROUPS_STAFF_REMOVE,
                
'class' => 'ajax-modal',
                
'href'  => href_to('groups''remove_staff', array($group['id'], '{id}')),
                
'handler' => function($user) use($group){
                    return (
$group['access']['is_owner'] || cmsUser::isAdmin()) && $user['member_role'] == groups::ROLE_STAFF && $user['id'] != $group['owner_id'];
                }
            ),
            array(
                
'title' => LANG_GROUPS_MEMBER_EXPEL,
                
'class' => 'ajax-modal',
                
'href'  => href_to('groups''expel', array($group['id'], '{id}')),
                
'handler' => function($user) use($group){
                    return (
$group['access']['is_owner'] || cmsUser::isAdmin()) && $user['member_role'] != groups::ROLE_STAFF;
                }
            )
        ));

        return 
$this->cms_template->render('group_members', array(
            
'user'               => $this->cms_user,
            
'group'              => $group,
            
'current_role_id'    => $role_id,
            
'profiles_list_html' => $profiles_list_html
        
));

    }

}
Онлайн: 0
Реклама