%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/vacivi36/intranet.vacivitta.com.br/protected/modules/group-membership/models/
Upload File :
Create Path :
Current File : /home/vacivi36/intranet.vacivitta.com.br/protected/modules/group-membership/models/User.php

<?php
/**
 * Group membership
 * @link https://github.com/cuzy-app/humhub-modules-group-membership
 * @license https://github.com/cuzy-app/humhub-modules-group-membership/blob/master/docs/LICENCE.md
 * @author [Marc FARRE](https://marc.fun) for [CUZY.APP](https://www.cuzy.app)
 */

namespace humhub\modules\groupMembership\models;

use yii\base\InvalidConfigException;

class User extends \humhub\modules\user\models\User
{
    /**
     * @inerhitdoc
     * Adds ordering
     */
    public function getGroups()
    {
        return $this->hasMany(Group::class, ['id' => 'group_id'])
            ->via('groupUsers')
            ->orderBy([
                'group.sort_order' => SORT_ASC,
                'group.name' => SORT_ASC,
            ]);
    }


    /**
     * @return Group[]
     * @throws InvalidConfigException
     */
    public function getGroupsCanJoin()
    {
        // Search for groups shown in directory
        $query = Group::find()
            ->where(['show_at_directory' => '1'])
            ->orderBy([
                'group.sort_order' => SORT_ASC,
                'group.name' => SORT_ASC,
            ]);
        $groupsCanJoin = [];
        foreach ($query->all() as $group) {
            if ($group->canSelfBecomeMember()) {
                $groupsCanJoin[] = $group;
            }
        }
        return $groupsCanJoin;
    }
}

Zerion Mini Shell 1.0