Exemplo n.º 1
0
 /**
  * @param xPDOObject|modAccessResourceGroup $object
  * @return array
  */
 public function prepareRow(xPDOObject $object)
 {
     $objectArray = $object->toArray();
     if (empty($objectArray['name'])) {
         $objectArray['name'] = '(' . $this->modx->lexicon('none') . ')';
     }
     $objectArray['authority_name'] = !empty($objectArray['role_name']) ? $objectArray['role_name'] . ' - ' . $objectArray['authority'] : $objectArray['authority'];
     /* get permissions list */
     $data = $objectArray['policy_data'];
     unset($objectArray['policy_data']);
     $data = $this->modx->fromJSON($data);
     if (!empty($data)) {
         $permissions = array();
         foreach ($data as $perm => $v) {
             $permissions[] = $perm;
         }
         $objectArray['permissions'] = implode(', ', $permissions);
     }
     $cls = '';
     if (($objectArray['target'] == 'web' || $objectArray['target'] == 'mgr') && $objectArray['policy_name'] == 'Administrator' && ($this->userGroup && $this->userGroup->get('name') == 'Administrator')) {
     } else {
         $cls .= 'pedit premove';
     }
     $objectArray['cls'] = $cls;
     $objectArray['menu'] = array(array('text' => $this->modx->lexicon('access_rgroup_update'), 'handler' => 'this.updateAcl'), '-', array('text' => $this->modx->lexicon('access_rgroup_remove'), 'handler' => 'this.confirm.createDelegate(this,["remove"])'));
     return $objectArray;
 }
Exemplo n.º 2
0
 public function process()
 {
     $fields = $this->getProperties();
     if (!$this->validate($fields)) {
         return $this->failure();
     }
     /* create membership */
     /** @var modUserGroupMember $membership */
     $membership = $this->modx->newObject('modUserGroupMember');
     $membership->set('user_group', $this->userGroup->get('id'));
     $membership->set('member', $this->user->get('id'));
     $membership->set('role', $fields['role']);
     $rank = $this->getNewRank();
     $membership->set('rank', $rank);
     /* save membership */
     if ($membership->save() == false) {
         return $this->failure($this->modx->lexicon('user_group_member_err_save'));
     }
     /* set as primary group if the only group for user */
     if ($rank == 0) {
         $this->user->set('primary_group', $this->userGroup->get('id'));
         $this->user->save();
     }
     return $this->success('', $membership);
 }
Exemplo n.º 3
0
 /**
  * @param xPDOObject|modAccessContext $object
  * @return array
  */
 public function prepareRow(xPDOObject $object)
 {
     $objectArray = $object->toArray();
     if (empty($objectArray['name'])) {
         $objectArray['name'] = '(' . $this->modx->lexicon('none') . ')';
     }
     $objectArray['authority_name'] = !empty($objectArray['role_name']) ? $objectArray['role_name'] . ' - ' . $objectArray['authority'] : $objectArray['authority'];
     /* get permissions list */
     $data = $objectArray['policy_data'];
     unset($objectArray['policy_data']);
     $data = $this->modx->fromJSON($data);
     if (!empty($data)) {
         $permissions = array();
         foreach ($data as $perm => $v) {
             $permissions[] = $perm;
         }
         $objectArray['permissions'] = implode(', ', $permissions);
     }
     $cls = '';
     if (($objectArray['target'] == 'web' || $objectArray['target'] == 'mgr') && $objectArray['policy_name'] == 'Administrator' && ($this->userGroup && $this->userGroup->get('name') == 'Administrator')) {
     } else {
         $cls .= 'pedit premove';
     }
     $objectArray['cls'] = $cls;
     return $objectArray;
 }
Exemplo n.º 4
0
 /**
  * Return the pagetitle
  *
  * @return string
  */
 public function getPageTitle()
 {
     $ugName = $this->userGroup ? $this->userGroup->get('name') : $this->modx->lexicon('anonymous');
     return $this->modx->lexicon('user_group') . ': ' . $ugName;
 }
Exemplo n.º 5
0
 /**
  * Prepare a user for listing
  * 
  * @param modUser $user
  * @return array
  */
 public function prepareUser(modUser $user)
 {
     return array('text' => $user->get('username'), 'id' => 'n_user_' . $user->get('id') . '_' . $this->userGroup->get('id'), 'leaf' => true, 'type' => 'user', 'cls' => 'icon-user');
 }
 public function __construct(xPDO &$xpdo)
 {
     parent::__construct($xpdo);
     $this->set('class_key', 'vnewsUsers');
 }
Exemplo n.º 7
0
 public function getPageTitle()
 {
     return $this->modx->lexicon('discuss.usergroup') . ': ' . $this->userGroup->get('name');
 }
Exemplo n.º 8
0
 /**
  * Prepare a User Group for listing
  * 
  * @param modUserGroup $group
  * @return array
  */
 public function prepareGroup(modUserGroup $group)
 {
     $cls = 'padduser pcreate pupdate';
     if ($group->get('id') != 1) {
         $cls .= ' premove';
     }
     $c = $this->modx->newQuery('modUserGroup');
     $c->where(array('parent' => $group->get('id')));
     $c->limit(1);
     $count = $this->modx->getCount('modUserGroup', $c);
     return array('text' => $group->get('name') . ' (' . $group->get('id') . ')', 'id' => 'n_ug_' . $group->get('id'), 'leaf' => $count > 0 ? false : true, 'type' => 'usergroup', 'qtip' => $group->get('description'), 'cls' => $cls, 'iconCls' => 'icon icon-group');
 }