public static function getCampaigns($query) { $campaignsSelect = self::_getDisplayResultPattern("C", "name"); $data = Campaign::collection()->loadWhereAppend("%C LIKE %~ OR %C LIKE %~", 'name', $query, 'label', $query)->setColumns([$campaignsSelect, "name"])->setOrderByQuery("name")->jsonSerialize(); foreach ($data as $k => $d) { $data[$k]['type'] = 'Campaign'; } return $data; }
public function renderIndex() { $campaigns = Campaign::collection()->setOrderBy('sortOrder'); return new StatsView($campaigns, $this->request()->postVariables('date')); }
/** * @param string $reference * * @return null * @throws \Exception */ public static function getCampaignIdFromReference($reference) { if (!is_numeric($reference)) { $campaign = Campaign::collection()->loadOneWhere('%C = %s', 'reference', $reference); if (!$campaign) { throw new \Exception('Reference does not match any campaigns'); } $reference = $campaign->id(); } return $reference; }