From d910bb8fcd6a973b65a4ac978f8ef9e525110221 Mon Sep 17 00:00:00 2001 From: Adam Shaw Date: Sat, 3 Aug 2013 15:30:58 -0700 Subject: [PATCH] eventStartEditable/startEditable AND eventDurationEditable/durationEditable --- src/common/View.js | 29 +++++++++++++++++++++-------- tests/sources_new.html | 13 +++++++++++-- 2 files changed, 32 insertions(+), 10 deletions(-) diff --git a/src/common/View.js b/src/common/View.js index 7df978a..b32c812 100644 --- a/src/common/View.js +++ b/src/common/View.js @@ -59,21 +59,34 @@ function View(element, calendar, viewName) { /* Event Editable Boolean Calculations - ------------------------------------------------------------------------------*/ + function isEventDraggable(event) { - return isEventEditable(event) && !opt('disableDragging'); + var source = event.source || {}; + return firstDefined( + event.startEditable, + source.startEditable, + opt('eventStartEditable'), + event.editable, + source.editable, + opt('editable') + ) + && !opt('disableDragging'); // deprecated } function isEventResizable(event) { // but also need to make sure the seg.isEnd == true - return isEventEditable(event) && !opt('disableResizing'); - } - - - function isEventEditable(event) { - return firstDefined(event.editable, (event.source || {}).editable, opt('editable')); + var source = event.source || {}; + return firstDefined( + event.durationEditable, + source.durationEditable, + opt('eventDurationEditable'), + event.editable, + source.editable, + opt('editable') + ) + && !opt('disableResizing'); // deprecated } diff --git a/tests/sources_new.html b/tests/sources_new.html index 8726537..97134e2 100644 --- a/tests/sources_new.html +++ b/tests/sources_new.html @@ -59,9 +59,13 @@ $(document).ready(function() { center: 'title', right: 'month,agendaWeek,basicWeek,agendaDay,basicDay' }, + editable: true, - //disableResizing: true, - //disableDragging: true, + //eventStartEditable: false, + //eventDurationEditable: false, + //disableResizing: true, // deprecated + //disableDragging: true, // deprecated + selectable: true, selectHelper: true, dragOpacity: .5, @@ -98,9 +102,14 @@ $(document).ready(function() { { color: 'purple', + //editable: false, + //startEditable: false, + //durationEditable: false, events: [ { title: 'All Day Event', + //startEditable: false, + //durationEditable: false, start: new Date(y, m, 1) }, {