ldc-gen-game-web/app/Http/Controllers/Bo/SettingsController.php

92 lines
4.3 KiB
PHP
Raw Normal View History

2020-10-21 15:26:21 +02:00
<?php
namespace App\Http\Controllers\Bo;
2020-10-21 15:26:21 +02:00
use App\Http\Controllers\Controller;
use App\Models\Settings;
use Illuminate\Http\Request;
use Illuminate\Support\Carbon;
use Illuminate\Support\Facades\Cache;
2020-10-21 15:26:21 +02:00
class SettingsController extends Controller
{
public function manage(Request $request)
{
2022-01-11 10:25:23 +01:00
/** @var \App\Models\Settings $settings */
$settings = app(Settings::class);
2020-10-21 15:26:21 +02:00
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
2021-08-18 17:08:02 +02:00
$name = $request->name;
$startDate = $request->start_date;
$endDate = $request->end_date;
2020-10-21 15:26:21 +02:00
$nbParticipationPlayer = $request->nb_participation_player;
2021-08-18 17:08:02 +02:00
$nbParticipationIp = $request->nb_participation_ip;
$nbUniqueCodeUse = $request->nb_unique_code_use;
$useEanCodes = $request->use_ean_codes === null ? 0 : 1;
$activatedTeaser = $request->activated_teaser === null ? 0 : 1;
$teaserEndActivity = $request->teaser_end_activity;
$activatedClosePage = $request->activated_close_page === null ? 0 : 1;
$closePageActiveDate = $request->close_page_active_date;
$redirectClose = $request->redirect_close;
$reductionsActivated = $request->reductions_activated === null ? 0 : 1;
$reductionsSite = $request->reductions_site;
$reductionsCampaign = $request->reductions_campaign;
$webCoupons = $request->web_coupons;
$facebookActivated = $request->facebook_activated === null ? 0 : 1;
$facebookAppId = $request->facebook_app_id;
$facebookSecret = $request->facebook_secret;
$notificationEmails = $request->notification_emails;
$winningProof = $request->winning_proof === null ? 0 : 1;
$company = $request->company;
$analytics = $request->analytics;
2020-10-21 15:26:21 +02:00
// Check du lien de redirection après fermeture.
2021-08-18 17:08:02 +02:00
if (strpos($redirectClose, 'https://') === false && strpos($redirectClose, 'http://') === false) {
$redirectClose = 'https://' . $redirectClose;
2021-08-18 17:08:02 +02:00
}
2021-08-18 17:08:02 +02:00
$settings->name = $name;
$settings->start_date = $startDate;
$settings->end_date = $endDate;
2020-10-21 15:26:21 +02:00
$settings->nb_participation_player = $nbParticipationPlayer;
2021-08-18 17:08:02 +02:00
$settings->nb_participation_ip = $nbParticipationIp;
$settings->nb_unique_code_use = $nbUniqueCodeUse;
$settings->use_ean_codes = $useEanCodes;
$settings->activated_teaser = $activatedTeaser;
if ($activatedTeaser === 1) {
2020-10-21 15:26:21 +02:00
$settings->teaser_end_activity = Carbon::parse($teaserEndActivity);
2021-08-18 17:08:02 +02:00
}
2020-10-21 15:26:21 +02:00
$settings->activated_close_page = $activatedClosePage;
2021-08-18 17:08:02 +02:00
if ($activatedClosePage === 1) {
2020-10-21 15:26:21 +02:00
$settings->close_page_active_date = Carbon::parse($closePageActiveDate);
2021-08-18 17:08:02 +02:00
}
$settings->redirect_close = $redirectClose;
2020-10-21 15:26:21 +02:00
$settings->reductions_activated = $reductionsActivated;
if ($reductionsActivated === 1) {
2021-08-18 17:08:02 +02:00
$settings->reductions_site = $reductionsSite;
2020-10-21 15:26:21 +02:00
$settings->reductions_campaign = $reductionsCampaign;
2021-08-18 17:08:02 +02:00
$settings->web_coupons = $webCoupons;
2020-10-21 15:26:21 +02:00
}
2021-08-18 17:08:02 +02:00
$settings->facebook_activated = $facebookActivated;
$settings->facebook_app_id = $facebookAppId;
$settings->facebook_secret = $facebookSecret;
2020-10-21 15:26:21 +02:00
$settings->notification_emails = $notificationEmails;
2021-08-18 17:08:02 +02:00
$settings->winning_proof = $winningProof;
$settings->company = $company;
$settings->analytics = $analytics;
2020-10-21 15:26:21 +02:00
$settings->save();
$settingsGlobal = app(Settings::class)
->select('name', 'company', 'analytics', 'start_date', 'end_date')->first();
Cache::put('settingsGlobal', $settingsGlobal);
$success = "Modifications enregistrés !";
return view('bo.settings.manage', compact('settings', 'success'));
}//end if
2020-10-21 15:26:21 +02:00
return view('bo.settings.manage', compact('settings'));
}
}