src/Tasks/ContentReviewEmails.php
protected function getOverduePagesForOwners(SS_List $pages)
    {
        $overduePages = [];

        foreach ($pages as $page) {
            if (!$page->canBeReviewedBy()) {
                continue;
            }

            // get most recent review log of current [age]
            $contentReviewLog = $page->ReviewLogs()->sort('Created DESC')->first();

            // check log date vs NextReviewDate. If someone has left a content review
            // after the review date, then we don't need to notify anybody
            if ($contentReviewLog && $contentReviewLog->Created >= $page->NextReviewDate) {
                $page->advanceReviewDate();
                continue;
            }

            $options = $page->getOptions();

            if ($options) {
                foreach ($options->ContentReviewOwners() as $owner) {
                    if (!isset($overduePages[$owner->ID])) {
                        $overduePages[$owner->ID] = ArrayList::create();
                    }

                    $overduePages[$owner->ID]->push($page);
                }
            }
        }

        return $overduePages;
    }
protected function getOverduePagesForOwners(SS_List $pages)
    {
        $overduePages = [];

        foreach ($pages as $page) {
            if (!$page->canBeReviewedBy()) {
                continue;
            }

            // get most recent review log of current [age]
            $contentReviewLog = $page->ReviewLogs()->sort('Created DESC')->first();

            // check log date vs NextReviewDate. If someone has left a content review
            // after the review date, then we don't need to notify anybody
            if ($contentReviewLog && $contentReviewLog->Created >= $page->NextReviewDate) {
                $page->advanceReviewDate();
                continue;
            }

            $options = $page->getOptions();

            if ($options) {
                foreach ($options->ContentReviewOwners() as $owner) {
                    if (!isset($overduePages[$owner->ID])) {
                        $overduePages[$owner->ID] = ArrayList::create();
                    }

                    $overduePages[$owner->ID]->push($page);
                }
            }
        }

        return $overduePages;
    }
protected function getOverduePagesForOwners ( SS_List $ pages ) { $ overduePages = [ ] ; foreach ( $ pages as $ page ) { if ( ! $ page -> canBeReviewedBy ( ) ) { continue ; } // get most recent review log of current [age] $ contentReviewLog = $ page -> ReviewLogs ( ) -> sort ( 'Created DESC' ) -> first ( ) ; // check log date vs NextReviewDate. If someone has left a content review // after the review date, then we don't need to notify anybody if ( $ contentReviewLog && $ contentReviewLog -> Created >= $ page -> NextReviewDate ) { $ page -> advanceReviewDate ( ) ; continue ; } $ options = $ page -> getOptions ( ) ; if ( $ options ) { foreach ( $ options -> ContentReviewOwners ( ) as $ owner ) { if ( ! isset ( $ overduePages [ $ owner -> ID ] ) ) { $ overduePages [ $ owner -> ID ] = ArrayList :: create ( ) ; } $ overduePages [ $ owner -> ID ] -> push ( $ page ) ; } } } return $ overduePages ; }
@param SS_List $pages

@return array
@param SS_List $pages