Browse Source

Merge pull request #16 from nafiesl/calendar-edit-mode-toggle

Add calendar edit mode toggle
pull/18/head
Nafies Luthfi 7 years ago
committed by GitHub
parent
commit
4726deb15b
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 3
      app/Http/Controllers/Api/EventsController.php
  2. 1
      resources/lang/de/event.php
  3. 1
      resources/lang/en/event.php
  4. 1
      resources/lang/id/event.php
  5. 22
      resources/views/users/calendar.blade.php

3
app/Http/Controllers/Api/EventsController.php

@ -28,6 +28,7 @@ class EventsController extends Controller
->collection($events) ->collection($events)
->transformWith(function ($event) { ->transformWith(function ($event) {
$isOwnEvent = $event->user_id == auth()->id(); $isOwnEvent = $event->user_id == auth()->id();
$editable = request('action') == 'edit' ? true : false;
return [ return [
'id' => $event->id, 'id' => $event->id,
@ -39,7 +40,7 @@ class EventsController extends Controller
'start' => $event->start, 'start' => $event->start,
'end' => $event->end, 'end' => $event->end,
'allDay' => $event->is_allday, 'allDay' => $event->is_allday,
'editable' => true,
'editable' => $editable,
'color' => $isOwnEvent ? '' : '#B7B7B7', 'color' => $isOwnEvent ? '' : '#B7B7B7',
]; ];
}) })

1
resources/lang/de/event.php

@ -2,6 +2,7 @@
return [ return [
'created' => 'Event created.', 'created' => 'Event created.',
'edit' => 'Edit Events',
'updated' => 'Event updated.', 'updated' => 'Event updated.',
'deleted' => 'Event deleted.', 'deleted' => 'Event deleted.',
'rescheduled' => 'Event has been rescheduled.', 'rescheduled' => 'Event has been rescheduled.',

1
resources/lang/en/event.php

@ -2,6 +2,7 @@
return [ return [
'created' => 'Event created.', 'created' => 'Event created.',
'edit' => 'Edit Events',
'updated' => 'Event updated.', 'updated' => 'Event updated.',
'deleted' => 'Event deleted.', 'deleted' => 'Event deleted.',
'rescheduled' => 'Event has been rescheduled.', 'rescheduled' => 'Event has been rescheduled.',

1
resources/lang/id/event.php

@ -2,6 +2,7 @@
return [ return [
'created' => 'Event berhasil diinput.', 'created' => 'Event berhasil diinput.',
'edit' => 'Edit Event',
'updated' => 'Event berhasil diupdate.', 'updated' => 'Event berhasil diupdate.',
'deleted' => 'Event berhasil dihapus.', 'deleted' => 'Event berhasil dihapus.',
'rescheduled' => 'Jadwal event berhasil diubah.', 'rescheduled' => 'Jadwal event berhasil diubah.',

22
resources/views/users/calendar.blade.php

@ -4,17 +4,26 @@
@section('content') @section('content')
<div class="">
<div class="row">
<div class="row">
<div class="col-md-12"> <div class="col-md-12">
<div class="x_panel"> <div class="x_panel">
<div class="x_title"><h3>User Calendar <small>Click to add/edit events</small></h3></div>
<div class="x_title">
<div class="pull-right">
@if (request('action') == 'edit')
{{ link_to_route('users.calendar', __('app.done'), [], ['class' => 'btn btn-default btn-xs']) }}
@else
{{ link_to_route('users.calendar', __('event.edit'), ['action' => 'edit'], ['class' => 'btn btn-warning btn-xs']) }}
@endif
</div>
<h3>
User Calendar <small>Click to add/edit events</small>
</h3>
</div>
<div class="x_content"> <div class="x_content">
<div id='calendar'></div> <div id='calendar'></div>
</div> </div>
</div> </div>
</div> </div>
</div>
</div> </div>
<!-- calendar modal --> <!-- calendar modal -->
@ -147,6 +156,7 @@
y = date.getFullYear(), y = date.getFullYear(),
started, started,
categoryClass; categoryClass;
var selectable = "{{ request('action') }}" == 'edit';
var calendar = $('#calendar').fullCalendar({ var calendar = $('#calendar').fullCalendar({
header: { header: {
@ -156,7 +166,7 @@
}, },
defaultView: 'agendaWeek', defaultView: 'agendaWeek',
height: 550, height: 550,
selectable: true,
selectable: selectable,
selectHelper: true, selectHelper: true,
minTime: '06:00:00', minTime: '06:00:00',
// eventLimit: true, // eventLimit: true,
@ -165,7 +175,7 @@
slotLabelFormat: 'HH:mm', slotLabelFormat: 'HH:mm',
slotDuration: '01:00:00', slotDuration: '01:00:00',
events: { events: {
url: "{{ route('api.events.index') }}",
url: "{{ route('api.events.index', request(['action'])) }}",
type: "GET", type: "GET",
error: function() { error: function() {
alert('there was an error while fetching events!'); alert('there was an error while fetching events!');

Loading…
Cancel
Save