Attendize/app/Http/Controllers/OrganiserController.php

78 lines
2.1 KiB
PHP
Raw Normal View History

2016-02-29 15:59:36 +00:00
<?php
namespace App\Http\Controllers;
use App\Models\Organiser;
use Illuminate\Http\Request;
2016-03-05 00:18:10 +00:00
use Image;
class OrganiserController extends MyBaseController
{
/**
* Show the select organiser page
*
* @return \Illuminate\Contracts\View\View
*/
2016-06-16 01:36:09 +00:00
public function showSelectOrganiser()
2016-03-05 00:18:10 +00:00
{
return view('ManageOrganiser.SelectOrganiser');
2016-02-29 15:59:36 +00:00
}
/**
* Show the create organiser page
*
* @return \Illuminate\Contracts\View\View
*/
2016-03-05 00:18:10 +00:00
public function showCreateOrganiser()
{
return view('ManageOrganiser.CreateOrganiser');
2016-02-29 15:59:36 +00:00
}
/**
* Create the organiser
*
* @param Request $request
*
* @return \Illuminate\Http\JsonResponse
* @throws \Symfony\Component\HttpFoundation\File\Exception\FileException
*/
public function postCreateOrganiser(Request $request)
2016-03-05 00:18:10 +00:00
{
$organiser = Organiser::createNew(false, false, true);
2016-02-29 15:59:36 +00:00
if (!$organiser->validate($request->all())) {
return response()->json([
2016-06-15 02:31:24 +00:00
'status' => 'error',
'messages' => $organiser->errors(),
2016-03-05 00:18:10 +00:00
]);
2016-02-29 15:59:36 +00:00
}
2016-09-06 20:39:27 +00:00
$organiser->name = $request->get('name');
$organiser->about = $request->get('about');
$organiser->email = $request->get('email');
$organiser->facebook = $request->get('facebook');
$organiser->twitter = $request->get('twitter');
$organiser->confirmation_key = str_random(15);
2016-02-29 15:59:36 +00:00
$organiser->taxname = $request->get('taxname');
$organiser->taxvalue = round($request->get('taxvalue'),2);
if ($request->hasFile('organiser_logo')) {
$organiser->setLogo($request->file('organiser_logo'));
2016-02-29 15:59:36 +00:00
}
2016-06-15 02:31:24 +00:00
2016-02-29 15:59:36 +00:00
$organiser->save();
session()->flash('message', 'Successfully Created Organiser.');
2016-03-05 00:18:10 +00:00
return response()->json([
2016-06-15 02:31:24 +00:00
'status' => 'success',
'message' => 'Refreshing..',
'redirectUrl' => route('showOrganiserEvents', [
2016-06-15 02:31:24 +00:00
'organiser_id' => $organiser->id,
'first_run' => 1
2016-06-15 02:31:24 +00:00
]),
2016-03-05 00:18:10 +00:00
]);
2016-02-29 15:59:36 +00:00
}
}