select('start_date', 'end_date', 'activated_teaser', 'teaser_end_activity')->first(); return view('theme::fo.teaser', compact('settings')); } /** * prizeMail * * @return \Illuminate\View\View */ public function prizeMail() { return view('theme::fo.prize-mail'); } /** * reductionMail * * @return \Illuminate\View\View */ public function reductionMail() { return view('theme::fo.reduction-mail'); } /** * br * * @return \Illuminate\View\View */ public function br() { $settings = app(Settings::class); $coupon = $this->getRandomCoupon($settings); $crmCoupon = new Reduction(); return view('theme::fo.reduction', compact('coupon', 'crmCoupon')); } /** * gain 1 * * @return \Illuminate\View\View */ public function gain1() { return view('theme::fo.gain1'); } /** * gain 2 * * @return \Illuminate\View\View */ public function gain2() { return view('theme::fo.gain2'); } /** * getRandomCoupon * * @param App\Models\Settings $settings * @return string */ private function getRandomCoupon(Settings $settings) { $webCoupons = json_decode($settings->web_coupons); if (count($webCoupons) > 1) { $lots = []; foreach ($webCoupons as $webCoupon) { $lots[] = $webCoupon; } foreach ($lots as $lot) { for ($i = 0; $i < $lot->percentage; $i++) { $tmp[] = $lot; } } shuffle($tmp); return $tmp[0]; } else { return $webCoupons[0]; } } }