/** * @before _secure * @after setDate */ public function advertisers() { $this->seo(["title" => "Advertiser Stats"]); $view = $this->getActionView(); $org = $this->org; if ($this->user_id) { $advertiser = User::first(['_id' => $this->user_id, 'org_id' => $org->_id, 'type' => 'advertiser']); if (!$advertiser) { $this->_404(); } $in = [$advertiser->_id]; } else { $in = $org->users('advertiser'); } $fields = ['clicks', 'impressions', 'conversions', 'revenue', 'created']; $advertPerf = Perf::perf($org, 'advertiser', ['advertisers' => $in, 'start' => $this->start, 'end' => $this->end, 'fields' => $fields]); $perf = []; Perf::revenue($advertPerf, $perf); $data = ['stats' => $perf, 'total' => Perf::calTotal($perf)]; $view->set($data); }