src/Repositories/Character/Character.php
public function getCharacterAlliances(): Collection
    {

        $user = auth()->user();

        $alliances = CharacterInfo::join(
            'alliance_members',
            'alliance_members.corporation_id',
            'character_infos.corporation_id')
            ->join(
                'alliances',
                'alliances.alliance_id',
                'alliance_members.alliance_id')
            ->distinct();

        // If the user us a super user, return all
        if (! $user->hasSuperUser()) {

            $alliances = $alliances->orWhere(function ($query) use ($user) {

                // If the user has any affiliations and can
                // list those characters, add them
                if ($user->has('character.list', false))
                    $query = $query->whereIn('character_id',
                        array_keys($user->getAffiliationMap()['char']));

                // Add any characters from owner API keys
                $query->orWhere('character_id', $user->id);
            });
        }

        return $alliances->orderBy('alliances.name')
            ->pluck('alliances.name')
            ->filter(function ($item) {

                // Filter out the null alliance name
                return ! is_null($item);
            });

    }
public function getCharacterAlliances(): Collection
    {

        $user = auth()->user();

        $alliances = CharacterInfo::join(
            'alliance_members',
            'alliance_members.corporation_id',
            'character_infos.corporation_id')
            ->join(
                'alliances',
                'alliances.alliance_id',
                'alliance_members.alliance_id')
            ->distinct();

        // If the user us a super user, return all
        if (! $user->hasSuperUser()) {

            $alliances = $alliances->orWhere(function ($query) use ($user) {

                // If the user has any affiliations and can
                // list those characters, add them
                if ($user->has('character.list', false))
                    $query = $query->whereIn('character_id',
                        array_keys($user->getAffiliationMap()['char']));

                // Add any characters from owner API keys
                $query->orWhere('character_id', $user->id);
            });
        }

        return $alliances->orderBy('alliances.name')
            ->pluck('alliances.name')
            ->filter(function ($item) {

                // Filter out the null alliance name
                return ! is_null($item);
            });

    }
public function getCharacterAlliances ( ) : Collection { $ user = auth ( ) -> user ( ) ; $ alliances = CharacterInfo :: join ( 'alliance_members' , 'alliance_members.corporation_id' , 'character_infos.corporation_id' ) -> join ( 'alliances' , 'alliances.alliance_id' , 'alliance_members.alliance_id' ) -> distinct ( ) ; // If the user us a super user, return all if ( ! $ user -> hasSuperUser ( ) ) { $ alliances = $ alliances -> orWhere ( function ( $ query ) use ( $ user ) { // If the user has any affiliations and can // list those characters, add them if ( $ user -> has ( 'character.list' , false ) ) $ query = $ query -> whereIn ( 'character_id' , array_keys ( $ user -> getAffiliationMap ( ) [ 'char' ] ) ) ; // Add any characters from owner API keys $ query -> orWhere ( 'character_id' , $ user -> id ) ; } ) ; } return $ alliances -> orderBy ( 'alliances.name' ) -> pluck ( 'alliances.name' ) -> filter ( function ( $ item ) { // Filter out the null alliance name return ! is_null ( $ item ) ; } ) ; }
Get a list of alliances the current
authenticated user has access to.

@return \Illuminate\Support\Collection
Get a list of alliances the current authenticated user has access to .