diff --git a/workflow/engine/controllers/adminProxy.php b/workflow/engine/controllers/adminProxy.php index 4e21d091e..ac8f10492 100644 --- a/workflow/engine/controllers/adminProxy.php +++ b/workflow/engine/controllers/adminProxy.php @@ -177,6 +177,7 @@ class adminProxy extends HttpProxyController $httpData=array_unique((array)$httpData); $message = ''; $oldName = isset($_POST['oldName'])? $_POST['oldName']:''; + $uid = isset($_POST['uid'])? $_POST['uid']:''; switch ($_POST['action']){ case 'calendarName': @@ -184,18 +185,22 @@ class adminProxy extends HttpProxyController $oCalendar = new CalendarDefinition(); $aCalendars = $oCalendar->getCalendarList(false,true); $aCalendarDefinitions = end($aCalendars); - + foreach ($aCalendarDefinitions as $aDefinitions) { if (trim($_POST['name'])=='') { $validated = false; $message = G::loadTranslation('ID_CALENDAR_INVALID_NAME'); break; } + if (isset($aDefinitions['CALENDAR_NAME'])) { - if ($aDefinitions['CALENDAR_NAME'] == $_POST['name']) { - $validated = false; - $message = G::loadTranslation('ID_CALENDAR_INVALID_NAME'); - break; + + if ($aDefinitions['CALENDAR_UID'] != $uid) { + if ($aDefinitions['CALENDAR_NAME'] == $_POST['name']) { + $validated = false; + $message = G::loadTranslation('ID_CALENDAR_INVALID_NAME'); + break; + } } } } diff --git a/workflow/engine/templates/admin/calendarEdit.js b/workflow/engine/templates/admin/calendarEdit.js index c4fc512b2..618a533ae 100644 --- a/workflow/engine/templates/admin/calendarEdit.js +++ b/workflow/engine/templates/admin/calendarEdit.js @@ -757,13 +757,13 @@ Ext.onReady( function() { Ext.getCmp('idInvalidCalendarName').hide(); var validateMessage = ''; var canlendarName = Ext.getCmp('dynaformCalendarName').getValue(); - Ext.Ajax.request( { url: '../adminProxy/calendarValidate', params: { action : 'calendarName', oldName : fields.OLD_NAME, - name : canlendarName + name : canlendarName, + uid : fields.CALENDAR_UID }, success: function(resp){ if (resp.responseText != '[]')