concrete/jobs/index_search.php
protected function pagesToQueue()
    {
        $qb = $this->connection->createQueryBuilder();
        $timeout = intval($this->app['config']->get('concrete.misc.page_search_index_lifetime'));

        // Find all pages that need indexing
        $query = $qb
            ->select('p.cID')
            ->from('Pages', 'p')
            ->leftJoin('p', 'CollectionSearchIndexAttributes', 'a', 'p.cID = a.cID')
            ->leftJoin('p', 'Collections', 'c', 'p.cID = c.cID')
            ->leftJoin('p', 'PageSearchIndex', 's', 'p.cID = s.cID')
            ->where('cIsActive = 1')
            ->andWhere($qb->expr()->orX(
                'a.ak_exclude_search_index is null',
                'a.ak_exclude_search_index = 0'
            ))
            ->andWhere($qb->expr()->orX(
                'cDateModified > s.cDateLastIndexed',
                "(UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(s.cDateLastIndexed) > {$timeout})",
                's.cID is null',
                's.cDateLastIndexed is null'
            ))->execute();

        while ($id = $query->fetchColumn()) {
            yield $id;
        }
    }
protected function pagesToQueue()
    {
        $qb = $this->connection->createQueryBuilder();
        $timeout = intval($this->app['config']->get('concrete.misc.page_search_index_lifetime'));

        // Find all pages that need indexing
        $query = $qb
            ->select('p.cID')
            ->from('Pages', 'p')
            ->leftJoin('p', 'CollectionSearchIndexAttributes', 'a', 'p.cID = a.cID')
            ->leftJoin('p', 'Collections', 'c', 'p.cID = c.cID')
            ->leftJoin('p', 'PageSearchIndex', 's', 'p.cID = s.cID')
            ->where('cIsActive = 1')
            ->andWhere($qb->expr()->orX(
                'a.ak_exclude_search_index is null',
                'a.ak_exclude_search_index = 0'
            ))
            ->andWhere($qb->expr()->orX(
                'cDateModified > s.cDateLastIndexed',
                "(UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(s.cDateLastIndexed) > {$timeout})",
                's.cID is null',
                's.cDateLastIndexed is null'
            ))->execute();

        while ($id = $query->fetchColumn()) {
            yield $id;
        }
    }
protected function pagesToQueue ( ) { $ qb = $ this -> connection -> createQueryBuilder ( ) ; $ timeout = intval ( $ this -> app [ 'config' ] -> get ( 'concrete.misc.page_search_index_lifetime' ) ) ; // Find all pages that need indexing $ query = $ qb -> select ( 'p.cID' ) -> from ( 'Pages' , 'p' ) -> leftJoin ( 'p' , 'CollectionSearchIndexAttributes' , 'a' , 'p.cID = a.cID' ) -> leftJoin ( 'p' , 'Collections' , 'c' , 'p.cID = c.cID' ) -> leftJoin ( 'p' , 'PageSearchIndex' , 's' , 'p.cID = s.cID' ) -> where ( 'cIsActive = 1' ) -> andWhere ( $ qb -> expr ( ) -> orX ( 'a.ak_exclude_search_index is null' , 'a.ak_exclude_search_index = 0' ) ) -> andWhere ( $ qb -> expr ( ) -> orX ( 'cDateModified > s.cDateLastIndexed' , "(UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(s.cDateLastIndexed) > {$timeout})" , 's.cID is null' , 's.cDateLastIndexed is null' ) ) -> execute ( ) ; while ( $ id = $ query -> fetchColumn ( ) ) { yield $ id ; } }
Get Pages to add to the queue
@return \Iterator
Get Pages to add to the queue