Skip to content

Commit

Permalink
Apply fixes from StyleCI (#168)
Browse files Browse the repository at this point in the history
  • Loading branch information
davide-casiraghi committed Mar 21, 2020
1 parent 95d81fd commit 83e6c60
Show file tree
Hide file tree
Showing 7 changed files with 119 additions and 125 deletions.
33 changes: 18 additions & 15 deletions src/Http/Controllers/EventController.php
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Str;
use Illuminate\Validation\Rule;
use Validator;

Expand Down Expand Up @@ -143,17 +142,17 @@ public function store(Request $request)
$event = new Event();
$event->preSave($request);
$event->save();

$this->saveEventRepetitions($request, $event->id);
$this->updateTeachersMultiRelationships($request->get('multiple_teachers'), $event);
$this->updateOrganizersMultiRelationships($request->get('multiple_organizers'), $event);

$this->cleanActiveEventsCaches();

return redirect()->route('events.index')
->with('success', __('laravel-events-calendar::messages.event_added_successfully'));
}

/***************************************************************************/

/**
Expand Down Expand Up @@ -267,10 +266,10 @@ public function update(Request $request, Event $event)
if ($validator->fails()) {
return back()->withErrors($validator)->withInput();
}

$event->preSave($request);
$event->save();

$this->saveEventRepetitions($request, $event->id);
$this->updateTeachersMultiRelationships($request->get('multiple_teachers'), $event);
$this->updateOrganizersMultiRelationships($request->get('multiple_organizers'), $event);
Expand Down Expand Up @@ -642,16 +641,18 @@ public function eventsValidator(Request $request)

return $validator;
}

/***************************************************************************/

/**
* Update multi relationships with teachers table.
*
* @param string $multipleTeachers
* @param \DavideCasiraghi\LaravelEventsCalendar\Models\Event $event
* @return void
*/
public function updateTeachersMultiRelationships($multipleTeachers, $event){
public function updateTeachersMultiRelationships($multipleTeachers, $event)
{
if ($multipleTeachers) {
$multipleTeachersArray = explode(',', $multipleTeachers);
$event->teachers()->sync($multipleTeachersArray);
Expand All @@ -661,35 +662,37 @@ public function updateTeachersMultiRelationships($multipleTeachers, $event){
}

/***************************************************************************/

/**
* Update multi relationships with organizers table.
*
* @param string $multipleOrganizers
* @param \DavideCasiraghi\LaravelEventsCalendar\Models\Event $event
* @return void
*/
public function updateOrganizersMultiRelationships($multipleOrganizers, $event){
public function updateOrganizersMultiRelationships($multipleOrganizers, $event)
{
if ($multipleOrganizers) {
$multipleOrganizersArray = explode(',', $multipleOrganizers);
$event->organizers()->sync($multipleOrganizersArray);
} else {
$event->organizers()->sync([]);
}
}

/***************************************************************************/

/**
* Clean caches related to active events
* Clean caches related to active events.
*
* @return void
*/
public function cleanActiveEventsCaches(){
public function cleanActiveEventsCaches()
{
Cache::forget('active_events');
Cache::forget('active_events_map_markers_json');
Cache::forget('active_events_map_markers_db_data');
}

/***************************************************************************/

}
6 changes: 2 additions & 4 deletions src/Http/Controllers/OrganizerController.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,8 @@
use DavideCasiraghi\LaravelEventsCalendar\Models\Organizer;
use Illuminate\Foundation\Auth\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Str;

class OrganizerController extends Controller
{
Expand Down Expand Up @@ -147,7 +145,7 @@ public function update(Request $request, Organizer $organizer)

$organizer->preSave($request);
$organizer->save();

return redirect()->route('organizers.index')
->with('success', __('laravel-events-calendar::messages.organizer_updated_successfully'));
}
Expand Down Expand Up @@ -196,7 +194,7 @@ public function storeFromModal(Request $request)
$organizer = new Organizer();
$organizer->preSave($request);
$organizer->save();

return response()->json([
'organizerId' => $organizer->id,
'organizerName' => $organizer->name,
Expand Down
6 changes: 2 additions & 4 deletions src/Http/Controllers/TeacherController.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,9 @@
use DavideCasiraghi\LaravelEventsCalendar\Models\Teacher;
use Illuminate\Foundation\Auth\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Route;
use Illuminate\Support\Str;
use Validator;

class TeacherController extends Controller
Expand Down Expand Up @@ -258,10 +256,10 @@ public function modal()
*/
public function storeFromModal(Request $request)
{
$teacher = new Teacher();
$teacher = new Teacher();
$teacher->preSave($request);
$teacher->save();

return response()->json([
'teacherId' => $teacher->id,
'teacherName' => $teacher->name,
Expand Down
2 changes: 1 addition & 1 deletion src/LaravelEventsCalendar.php
Original file line number Diff line number Diff line change
Expand Up @@ -484,7 +484,7 @@ public static function cleanString(string $text)

return $ret;
}

// **********************************************************************

/**
Expand Down
182 changes: 89 additions & 93 deletions src/Models/Event.php
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,8 @@
use Carbon\Carbon;
use DavideCasiraghi\LaravelEventsCalendar\Facades\LaravelEventsCalendar;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Cache;
use DavideCasiraghi\LaravelEventsCalendar\Models\Teacher;

use Illuminate\Http\Request; // to remove
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Cache; // to remove
use Illuminate\Support\Str;

class Event extends Model
Expand Down Expand Up @@ -330,7 +328,7 @@ public function isActive(): bool
return false;
}
}

// **********************************************************************

/**
Expand All @@ -339,103 +337,101 @@ public function isActive(): bool
* @param \Illuminate\Http\Request $request
* @return void
*/
public function preSave(Request $request): void
{
$teachers = Teacher::pluck('name', 'id');

$this->title = $request->get('title');
$this->description = clean($request->get('description'));

if ($request->get('created_by')) {
$this->created_by = $request->get('created_by');
}

if (! $this->slug) {
$this->slug = Str::slug($this->title, '-').'-'.rand(100000, 1000000);
}
$this->category_id = $request->get('category_id');
$this->venue_id = $request->get('venue_id');
$this->image = $request->get('image');
$this->contact_email = $request->get('contact_email');
$this->website_event_link = $request->get('website_event_link');
$this->facebook_event_link = $request->get('facebook_event_link');
$this->status = $request->get('status');
$this->on_monthly_kind = $request->get('on_monthly_kind');
$this->multiple_dates = $request->get('multiple_dates');

// Event teaser image upload
if ($request->file('image')) {
$imageFile = $request->file('image');
$imageName = time().'.'.'jpg'; //$imageName = $teaserImageFile->hashName();
$imageSubdir = 'events_teaser';
$imageWidth = 968;
$thumbWidth = 310;

LaravelEventsCalendar::uploadImageOnServer($imageFile, $imageName, $imageSubdir, $imageWidth, $thumbWidth);
$this->image = $imageName;
} else {
$this->image = $request->get('image');
}

// Support columns for homepage search (we need this to show events in HP with less use of resources)
public function preSave(Request $request): void
{
$teachers = Teacher::pluck('name', 'id');

$this->title = $request->get('title');
$this->description = clean($request->get('description'));

if ($request->get('created_by')) {
$this->created_by = $request->get('created_by');
}

if (! $this->slug) {
$this->slug = Str::slug($this->title, '-').'-'.rand(100000, 1000000);
}
$this->category_id = $request->get('category_id');
$this->venue_id = $request->get('venue_id');
$this->image = $request->get('image');
$this->contact_email = $request->get('contact_email');
$this->website_event_link = $request->get('website_event_link');
$this->facebook_event_link = $request->get('facebook_event_link');
$this->status = $request->get('status');
$this->on_monthly_kind = $request->get('on_monthly_kind');
$this->multiple_dates = $request->get('multiple_dates');

// Event teaser image upload
if ($request->file('image')) {
$imageFile = $request->file('image');
$imageName = time().'.'.'jpg'; //$imageName = $teaserImageFile->hashName();
$imageSubdir = 'events_teaser';
$imageWidth = 968;
$thumbWidth = 310;

LaravelEventsCalendar::uploadImageOnServer($imageFile, $imageName, $imageSubdir, $imageWidth, $thumbWidth);
$this->image = $imageName;
} else {
$this->image = $request->get('image');
}

// Support columns for homepage search (we need this to show events in HP with less use of resources)
$this->sc_teachers_id = json_encode(explode(',', $request->get('multiple_teachers'))); // keep just this SC

// Multiple teachers - populate support column field
$this->sc_teachers_names = '';
if ($request->get('multiple_teachers')) {
$multiple_teachers = explode(',', $request->get('multiple_teachers'));
$this->sc_teachers_names = '';
if ($request->get('multiple_teachers')) {
$multiple_teachers = explode(',', $request->get('multiple_teachers'));

$multiple_teachers_names = [];
foreach ($multiple_teachers as $key => $teacher_id) {
$multiple_teachers_names[] = $teachers[$teacher_id];
}
$multiple_teachers_names = [];
foreach ($multiple_teachers as $key => $teacher_id) {
$multiple_teachers_names[] = $teachers[$teacher_id];
}

$this->sc_teachers_names .= LaravelEventsCalendar::getStringFromArraySeparatedByComma($multiple_teachers_names);
}
$this->sc_teachers_names .= LaravelEventsCalendar::getStringFromArraySeparatedByComma($multiple_teachers_names);
}

// Set the Event attributes about repeating (repeat until field and multiple days)
$this->setEventRepeatFields($request);
// Set the Event attributes about repeating (repeat until field and multiple days)
$this->setEventRepeatFields($request);

// Save event and repetitions
// Save event and repetitions
//$this->save();
//$this->saveEventRepetitions($request, $this->id);
}

}

/***************************************************************************/

/**
* Set the Event attributes about repeating before store or update (repeat until field and multiple days).
*
* @param \Illuminate\Http\Request $request
* @return void
*/
public function setEventRepeatFields(Request $request)
{
// Set Repeat Until
$this->repeat_type = $request->get('repeat_type');
if ($request->get('repeat_until')) {
$dateRepeatUntil = implode('-', array_reverse(explode('/', $request->get('repeat_until'))));
$this->repeat_until = $dateRepeatUntil.' 00:00:00';
}

// Weekely - Set multiple week days
if ($request->get('repeat_weekly_on_day')) {
$repeat_weekly_on_day = $request->get('repeat_weekly_on_day');
//dd($repeat_weekly_on_day);
$i = 0;
$len = count($repeat_weekly_on_day); // to put "," to all items except the last
$this->repeat_weekly_on = '';
foreach ($repeat_weekly_on_day as $key => $weeek_day) {
$this->repeat_weekly_on .= $weeek_day;
if ($i != $len - 1) { // not last
$this->repeat_weekly_on .= ',';
}
$i++;
}
}
}

/***************************************************************************/
/***************************************************************************/

/**
* Set the Event attributes about repeating before store or update (repeat until field and multiple days).
*
* @param \Illuminate\Http\Request $request
* @return void
*/
public function setEventRepeatFields(Request $request)
{
// Set Repeat Until
$this->repeat_type = $request->get('repeat_type');
if ($request->get('repeat_until')) {
$dateRepeatUntil = implode('-', array_reverse(explode('/', $request->get('repeat_until'))));
$this->repeat_until = $dateRepeatUntil.' 00:00:00';
}

// Weekely - Set multiple week days
if ($request->get('repeat_weekly_on_day')) {
$repeat_weekly_on_day = $request->get('repeat_weekly_on_day');
//dd($repeat_weekly_on_day);
$i = 0;
$len = count($repeat_weekly_on_day); // to put "," to all items except the last
$this->repeat_weekly_on = '';
foreach ($repeat_weekly_on_day as $key => $weeek_day) {
$this->repeat_weekly_on .= $weeek_day;
if ($i != $len - 1) { // not last
$this->repeat_weekly_on .= ',';
}
$i++;
}
}
}

/***************************************************************************/
}

0 comments on commit 83e6c60

Please sign in to comment.