public function all( $page = null, $objects_per_page = null )
    {
        if ( !empty( $this->getValues() ) ) {
            throw new AlreadyFetchedObjectException('Object already contains values, all() not possible, use a new object');
        }

        if ( isset($page) && $page <= 0 ) {
            throw new \RuntimeException('Parameter page must be > 0');
        }
        if ( isset($objects_per_page) && $objects_per_page <= 0 ) {
            throw new \RuntimeException('Parameter objects_per_page must be > 0');
        }
        if (
            ( isset($page) && !isset($objects_per_page) )
            || ( !isset($page) && isset($objects_per_page) )
        ) {
            throw new \RuntimeException('Parameters page and objects_per_page must both be given');
        }

        if ( !isset($page) || !isset($objects_per_page) ) {
            return $this->allWithoutPagination();
        }

        $url_parameters = [
            'expand' => true,
        ];

        if ( isset($page) && isset($objects_per_page) ) {
            $url_parameters['page']     = $page;
            $url_parameters['per_page'] = $objects_per_page;
        }

        $url      = $this->getURL('all');
        $response = $this->getClient()->get(
            $url,
            $url_parameters
        );

        if ( $response->hasError() ) {
            $this->setError( $response->getError() );
            return $this;
        }

        $this->clearError();

        // Return array of resource objects if no $object_id was given.
        // Note: the resource object (this object) used to execute get() will be left empty in this case.
        $objects       = [];
        foreach ( $response->getData() as $object_data ) {
            $object = $this->getClient()->resource( get_class($this) );
            $object->setRemoteData($object_data);
            $objects[] = $object;
        }

        return $objects;
    }
public function all( $page = null, $objects_per_page = null )
    {
        if ( !empty( $this->getValues() ) ) {
            throw new AlreadyFetchedObjectException('Object already contains values, all() not possible, use a new object');
        }

        if ( isset($page) && $page <= 0 ) {
            throw new \RuntimeException('Parameter page must be > 0');
        }
        if ( isset($objects_per_page) && $objects_per_page <= 0 ) {
            throw new \RuntimeException('Parameter objects_per_page must be > 0');
        }
        if (
            ( isset($page) && !isset($objects_per_page) )
            || ( !isset($page) && isset($objects_per_page) )
        ) {
            throw new \RuntimeException('Parameters page and objects_per_page must both be given');
        }

        if ( !isset($page) || !isset($objects_per_page) ) {
            return $this->allWithoutPagination();
        }

        $url_parameters = [
            'expand' => true,
        ];

        if ( isset($page) && isset($objects_per_page) ) {
            $url_parameters['page']     = $page;
            $url_parameters['per_page'] = $objects_per_page;
        }

        $url      = $this->getURL('all');
        $response = $this->getClient()->get(
            $url,
            $url_parameters
        );

        if ( $response->hasError() ) {
            $this->setError( $response->getError() );
            return $this;
        }

        $this->clearError();

        // Return array of resource objects if no $object_id was given.
        // Note: the resource object (this object) used to execute get() will be left empty in this case.
        $objects       = [];
        foreach ( $response->getData() as $object_data ) {
            $object = $this->getClient()->resource( get_class($this) );
            $object->setRemoteData($object_data);
            $objects[] = $object;
        }

        return $objects;
    }
public function all ( $ page = null , $ objects_per_page = null ) { if ( ! empty ( $ this -> getValues ( ) ) ) { throw new AlreadyFetchedObjectException ( 'Object already contains values, all() not possible, use a new object' ) ; } if ( isset ( $ page ) && $ page <= 0 ) { throw new \ RuntimeException ( 'Parameter page must be > 0' ) ; } if ( isset ( $ objects_per_page ) && $ objects_per_page <= 0 ) { throw new \ RuntimeException ( 'Parameter objects_per_page must be > 0' ) ; } if ( ( isset ( $ page ) && ! isset ( $ objects_per_page ) ) || ( ! isset ( $ page ) && isset ( $ objects_per_page ) ) ) { throw new \ RuntimeException ( 'Parameters page and objects_per_page must both be given' ) ; } if ( ! isset ( $ page ) || ! isset ( $ objects_per_page ) ) { return $ this -> allWithoutPagination ( ) ; } $ url_parameters = [ 'expand' => true , ] ; if ( isset ( $ page ) && isset ( $ objects_per_page ) ) { $ url_parameters [ 'page' ] = $ page ; $ url_parameters [ 'per_page' ] = $ objects_per_page ; } $ url = $ this -> getURL ( 'all' ) ; $ response = $ this -> getClient ( ) -> get ( $ url , $ url_parameters ) ; if ( $ response -> hasError ( ) ) { $ this -> setError ( $ response -> getError ( ) ) ; return $ this ; } $ this -> clearError ( ) ; // Return array of resource objects if no $object_id was given. // Note: the resource object (this object) used to execute get() will be left empty in this case. $ objects = [ ] ; foreach ( $ response -> getData ( ) as $ object_data ) { $ object = $ this -> getClient ( ) -> resource ( get_class ( $ this ) ) ; $ object -> setRemoteData ( $ object_data ) ; $ objects [ ] = $ object ; } return $ objects ; }
Fetches object data for all objects of this type.
Pagination available.

@param integer $page                 Page of objects, optional, if given, $objects_per_page must also be given.
@param integer $objects_per_page     Number of objects per page, optional, if given, $page must also be given.

@return mixed                        Returns array of ZammadAPIClient\Resource\... objects
or this object on failure.
Fetches object data for all objects of this type . Pagination available .