/** * Get HTML email message and list of email recipients from given email * info. * * @param ORMRow $emailInfo * @return array With 'message' and 'recipients' items. */ protected function prepareTemplate($emailInfo) { $template = $emailInfo->getField('template'); $params = $emailInfo->getField('params'); $fauxreq = new FauxRequest(array('action' => 'parse', 'text' => $this->getTemplate($template, $params), 'contentmodel' => 'wikitext')); $api = new ApiMain($fauxreq); $api->execute(); $data = $api->getResultData(); $message = $data['parse']['text']['*']; $recipients = array(); foreach ($params['To'] as $to) { $recipients[] = new MailAddress($to); } return array('message' => $message, 'recipients' => $recipients); }
/** * Returns a new Site object constructed from the provided ORMRow. * * @since 1.25 * * @param ORMRow $siteRow * * @return Site */ protected function siteFromRow(ORMRow $siteRow) { $site = Site::newForType($siteRow->getField('type', Site::TYPE_UNKNOWN)); $site->setGlobalId($siteRow->getField('global_key')); $site->setInternalId($siteRow->getField('id')); if ($siteRow->hasField('forward')) { $site->setForward($siteRow->getField('forward')); } if ($siteRow->hasField('group')) { $site->setGroup($siteRow->getField('group')); } if ($siteRow->hasField('language')) { $site->setLanguageCode($siteRow->getField('language') === '' ? null : $siteRow->getField('language')); } if ($siteRow->hasField('source')) { $site->setSource($siteRow->getField('source')); } if ($siteRow->hasField('data')) { $site->setExtraData($siteRow->getField('data')); } if ($siteRow->hasField('config')) { $site->setExtraConfig($siteRow->getField('config')); } return $site; }