process(); } function process() { // Disable subsite filter (if installed) if (ClassInfo::exists('Subsite')) { $oldSubsiteState = Subsite::$disable_subsite_filter; Subsite::$disable_subsite_filter = true; } $pages = DataObject::get('Page', "\"SiteTree\".\"NextReviewDate\" = '".(class_exists('SS_Datetime') ? SS_Datetime::now()->URLDate() : SSDatetime::now()->URLDate())."' AND \"SiteTree\".\"ContentReviewOwnerID\" != 0"); if ($pages && $pages->Count()) { foreach($pages as $page) { $owner = $page->ContentReviewOwner(); if ($owner) { $sender = Security::findAnAdministrator(); $recipient = $owner; $subject = sprintf(_t('ContentReviewEmails.SUBJECT', 'Page %s due for content review'), $page->Title); $email = new Email(); $email->setTo($recipient->Email); $email->setFrom(($sender->Email) ? $sender->Email : Email::getAdminEmail()); $email->setTemplate('ContentReviewEmails'); $email->setSubject($subject); $email->populateTemplate(array( "PageCMSLink" => "admin/pages/edit/show/".$page->ID, "Recipient" => $recipient, "Sender" => $sender, "Page" => $page, "StageSiteLink" => Controller::join_links($page->Link(), "?stage=Stage"), "LiveSiteLink" => Controller::join_links($page->Link(), "?stage=Live"), )); $email->send(); } } } // Revert subsite filter (if installed) if (ClassInfo::exists('Subsite')) { Subsite::$disable_subsite_filter = $oldSubsiteState; } } }