This commit is contained in:
Mathieu Lagace
2019-09-11 10:13:29 -04:00
parent 133f430445
commit 7f07490bdf
8 changed files with 173 additions and 16 deletions

View File

@@ -42,7 +42,16 @@ class BookingController extends Controller
*/
public function create($type,$id)
{
return view('admin.booking.create',['items' => \App\Item::training(),'event_type' => $type,'event_id' => $id]);
$event = null;
if($type == 'course')
{
$event = \App\Course::find($id)->event;
}
else if ($type == 'event')
{
$event = \App\Event::find($id);
}
return view('admin.booking.create',['items' => \App\Item::training(),'event_type' => $type,'event_id' => $id,'event' => $event]);
}
/**
@@ -136,13 +145,31 @@ class BookingController extends Controller
$b->delete();
}
public function modalItem($id)
public function modalItem($id,$event_type,$event_id)
{
return view('admin.booking.modal.create',['item' => \App\Item::find($id)]);
$event = null;
if ($event_type == 'course')
{
$event = \App\Course::find($event_id)->event;
}
else
{
$event = \App\Event::find($event_id);
}
return view('admin.booking.modal.create',['item' => \App\Item::find($id),'event' => $event]);
}
public function modalItemEdit($id)
public function modalItemEdit($id,$event_type,$event_id)
{
return view('admin.booking.modal.edit',['booking' => \App\Booking::find($id)]);
$event = null;
if ($event_type == 'course')
{
$event = \App\Course::find($event_id)->event;
}
else
{
$event = \App\Event::find($event_id);
}
return view('admin.booking.modal.edit',['booking' => \App\Booking::find($id),'event' => $event]);
}
}

View File

@@ -51,15 +51,52 @@ class Item extends Model
{
return $this->quantity - $this->booked();
}
else
{
return $this->quantity - $this->booked($begin,$end);
}
}
public function booked()
public function booked($begin_time = null,$end_time = null)
{
$nbBooked = 0;
foreach ($this->bookings() as $b)
foreach ($this->bookings as $b)
{
$nbBooked = $nbBooked + $b->amount;
if ($begin_time != null && $end_time != null)
{
$b_begin_time = null;
$b_end_time = null;
if ($b->bookable_type == 'App\Course')
{
$b_begin_time = $b->bookable->event->date_begin;
$b_end_time = $b->bookable->event->date_end;
}
else
{
$b_begin_time = $b->bookable->date_begin;
$b_end_time = $b->bookable->date_end;
}
if (date('U',strtotime($b_begin_time)) <= date('U',strtotime($begin_time)) && date('U',strtotime($b_end_time)) <= date('U',strtotime($end_time)) && date('U',strtotime($b_end_time)) >= date('U',strtotime($begin_time)))
{
$nbBooked = $nbBooked + $b->amount;
}
elseif (date('U',strtotime($b_begin_time)) <= date('U',strtotime($begin_time)) && date('U',strtotime($b_end_time)) >= date('U',strtotime($end_time)))
{
$nbBooked = $nbBooked + $b->amount;
}
elseif (date('U',strtotime($b_begin_time)) >= date('U',strtotime($begin_time)) && date('U',strtotime($b_begin_time)) <= date('U',strtotime($end_time)) && date('U',strtotime($b_end_time)) >= date('U',strtotime($end_time)))
{
$nbBooked = $nbBooked + $b->amount;
}
elseif (date('U',strtotime($b_begin_time)) >= date('U',strtotime($begin_time)) && date('U',strtotime($b_begin_time)) <= date('U',strtotime($end_time)))
{
$nbBooked = $nbBooked + $b->amount;
}
}
else
{
$nbBooked = $nbBooked + $b->amount;
}
}
return $nbBooked;