BUG 8667 "copy", dentro de calendar, muestra un mensaje erroneo solved
- se encontro muchos errores dentro de calendario, - resolviendo, copiar, editar, y validar que no se repita el nombre del calendario
This commit is contained in:
@@ -142,6 +142,41 @@ class adminProxy extends HttpProxyController
|
|||||||
return array('success' => true, 'message'=>'done', 'users'=>$retRow);
|
return array('success' => true, 'message'=>'done', 'users'=>$retRow);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function calendarValidate($httpData) {
|
||||||
|
$httpData=array_unique($httpData);
|
||||||
|
$message = '';
|
||||||
|
$oldName = isset($httpData['oldName'])? $httpData['oldName']:'';
|
||||||
|
switch ($httpData['action']){
|
||||||
|
case 'calendarName':
|
||||||
|
require_once ('classes/model/CalendarDefinition.php');
|
||||||
|
$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 ($aDefinitions['CALENDAR_NAME']!=$httpData['name']){
|
||||||
|
$validated = true;
|
||||||
|
} else {
|
||||||
|
if ($aDefinitions['CALENDAR_NAME']!=$oldName) {
|
||||||
|
$validated = false;
|
||||||
|
$message = G::loadTranslation('ID_CALENDAR_INVALID_NAME');
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 'calendarDates':
|
||||||
|
$validated = false;
|
||||||
|
$message = G::loadTranslation('ID_CALENDAR_INVALID_WORK_DATES');
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return $message;
|
||||||
|
}
|
||||||
|
|
||||||
function uxGroupUpdate($httpData)
|
function uxGroupUpdate($httpData)
|
||||||
{
|
{
|
||||||
require_once 'classes/model/Groupwf.php';
|
require_once 'classes/model/Groupwf.php';
|
||||||
|
|||||||
@@ -8,8 +8,17 @@
|
|||||||
comboStatusStore = new Ext.data.SimpleStore({
|
comboStatusStore = new Ext.data.SimpleStore({
|
||||||
fields: ['id','value'],
|
fields: ['id','value'],
|
||||||
data: [['- ALL -','- ALL -'],['SUN','SUN'],['MON','MON'],['TUE','TUE'],['WED','WED'],['THU','THU'],['FRI','FRI'],['SAT','SAT']]
|
data: [['- ALL -','- ALL -'],['SUN','SUN'],['MON','MON'],['TUE','TUE'],['WED','WED'],['THU','THU'],['FRI','FRI'],['SAT','SAT']]
|
||||||
});
|
});
|
||||||
|
var get = '';
|
||||||
|
var vars = [], hash;
|
||||||
|
var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
|
||||||
|
for (var i = 0; i < hashes.length; i++) {
|
||||||
|
hash = hashes[i].split('=');
|
||||||
|
vars.push(hash[0]);
|
||||||
|
vars[hash[0]] = hash[1];
|
||||||
|
}
|
||||||
|
get = vars[0];
|
||||||
|
var message = '';
|
||||||
function workHourCompositeFieldInterfaz(i){
|
function workHourCompositeFieldInterfaz(i){
|
||||||
//!dataSystem
|
//!dataSystem
|
||||||
var d = new Date();
|
var d = new Date();
|
||||||
@@ -374,8 +383,10 @@ Ext.onReady( function() {
|
|||||||
var s = grid.getSelectionModel().getSelections();
|
var s = grid.getSelectionModel().getSelections();
|
||||||
// console.log( 's[i]=', s[i].data.name);
|
// console.log( 's[i]=', s[i].data.name);
|
||||||
for(var i = 0, r; r = s[i]; i++){
|
for(var i = 0, r; r = s[i]; i++){
|
||||||
if(s[i].data.name!='- ALL -')
|
if(s[i].data.name!='- ALL -')
|
||||||
store.remove(r);
|
store.remove(r);
|
||||||
|
else
|
||||||
|
PMExt.error( _('ID_ERROR'), _('ID_NODELETEOPTIONALL'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}],
|
}],
|
||||||
@@ -698,14 +709,51 @@ Ext.onReady( function() {
|
|||||||
{
|
{
|
||||||
xtype:'fieldset',
|
xtype:'fieldset',
|
||||||
title: _('ID_CALENDAR_DEFINITION'),
|
title: _('ID_CALENDAR_DEFINITION'),
|
||||||
items: [
|
items: [{
|
||||||
|
xtype:'label',
|
||||||
|
text: _('ID_CALENDAR_INVALID_NAME'),
|
||||||
|
name: 'idInvalidCalendarName',
|
||||||
|
id:'idInvalidCalendarName',
|
||||||
|
style:'color:red; padding:125px; ',
|
||||||
|
hidden: true,
|
||||||
|
bodyStyle:'text-align:right;',//'padding:25px',
|
||||||
|
anchor:'90%'
|
||||||
|
},
|
||||||
{
|
{
|
||||||
id : 'dynaformCalendarName' ,
|
id : 'dynaformCalendarName' ,
|
||||||
xtype : 'textfield' ,
|
xtype : 'textfield' ,
|
||||||
width : 200 ,
|
width : 200 ,
|
||||||
fieldLabel : _('ID_NAME') ,
|
fieldLabel : _('ID_NAME') ,
|
||||||
name : 'name' ,
|
name : 'name' ,
|
||||||
allowBlank : false
|
allowBlank : false,
|
||||||
|
listeners: {
|
||||||
|
change: function(){
|
||||||
|
Ext.getCmp('idInvalidCalendarName').hide();
|
||||||
|
var validateMessage = '';
|
||||||
|
var canlendarName = Ext.getCmp('dynaformCalendarName').getValue();
|
||||||
|
var oldName = '';
|
||||||
|
if (name!='') {
|
||||||
|
oldName = '&oldName='+name;
|
||||||
|
}
|
||||||
|
Ext.Ajax.request( {
|
||||||
|
url: '../adminProxy/calendarValidate',
|
||||||
|
params: {
|
||||||
|
action : 'calendarName',
|
||||||
|
oldName : "",
|
||||||
|
name : canlendarName
|
||||||
|
},
|
||||||
|
success: function(resp){
|
||||||
|
if (resp.responseText != '[]')
|
||||||
|
message = resp.responseText;
|
||||||
|
else
|
||||||
|
message = '';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
focus: function(){
|
||||||
|
$message = '';
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id : 'dynaformCalendarDescription' ,
|
id : 'dynaformCalendarDescription' ,
|
||||||
@@ -743,7 +791,7 @@ Ext.onReady( function() {
|
|||||||
{
|
{
|
||||||
id : 'workDays',
|
id : 'workDays',
|
||||||
xtype: 'fieldset',
|
xtype: 'fieldset',
|
||||||
title: _('ID_WORK_DAYS'),
|
title: _('ID_WORK_DAYS')+' <i>('+_('ID_3DAYSMINIMUM')+')</i>',
|
||||||
items: [
|
items: [
|
||||||
{//8
|
{//8
|
||||||
id : 'dynaformCalendarWorkDays',
|
id : 'dynaformCalendarWorkDays',
|
||||||
@@ -883,7 +931,12 @@ Ext.onReady( function() {
|
|||||||
buttons:[
|
buttons:[
|
||||||
{
|
{
|
||||||
text: fields['NEWCALENDAR']=='YES'?_("ID_CREATE") : _("ID_UPDATE"),
|
text: fields['NEWCALENDAR']=='YES'?_("ID_CREATE") : _("ID_UPDATE"),
|
||||||
handler: function() {
|
handler: function() {
|
||||||
|
if(message!=''){
|
||||||
|
Ext.getCmp('idInvalidCalendarName').show();
|
||||||
|
Ext.getCmp('dynaformCalendarName').focus();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
var flag = 0;
|
var flag = 0;
|
||||||
gridHoliday.store.each(function(record) {
|
gridHoliday.store.each(function(record) {
|
||||||
var start = record.data['startDate'];
|
var start = record.data['startDate'];
|
||||||
@@ -926,7 +979,7 @@ Ext.onReady( function() {
|
|||||||
dynaformCalendarWorkDaysArrayChecked = dynaformCalendarWorkDaysArray[i].checked;
|
dynaformCalendarWorkDaysArrayChecked = dynaformCalendarWorkDaysArray[i].checked;
|
||||||
dynaformCalendarWorkDaysArrayName = dynaformCalendarWorkDaysArray[i].name;
|
dynaformCalendarWorkDaysArrayName = dynaformCalendarWorkDaysArray[i].name;
|
||||||
if(dynaformCalendarWorkDaysArrayChecked==true) {
|
if(dynaformCalendarWorkDaysArrayChecked==true) {
|
||||||
arrayDayinCheckbox[i]=(dynaformCalendarWorkDaysArray[i].boxLabel);
|
arrayDayinCheckbox[indexAuxiliar]=(dynaformCalendarWorkDaysArray[i].boxLabel);
|
||||||
|
|
||||||
index = parseInt(dynaformCalendarWorkDaysArrayName.substring(1,2),10);
|
index = parseInt(dynaformCalendarWorkDaysArrayName.substring(1,2),10);
|
||||||
dynaformCalendarWorkDaysArrayCheckedArray[indexAuxiliar] = index;
|
dynaformCalendarWorkDaysArrayCheckedArray[indexAuxiliar] = index;
|
||||||
@@ -1064,7 +1117,7 @@ Ext.onReady( function() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (flagDay < arrayDayinCheckboxSize)
|
if (flagDay < arrayDayinCheckboxSize)
|
||||||
Ext.Msg.alert( _('ID_ERROR'), _('ID_SELECT_ALL'));
|
PMExt.error( _('ID_ERROR'), _('ID_SELECT_ALL'));
|
||||||
else {
|
else {
|
||||||
Ext.Ajax.request( {
|
Ext.Ajax.request( {
|
||||||
url: '../adminProxy/calendarSave',
|
url: '../adminProxy/calendarSave',
|
||||||
@@ -1100,7 +1153,33 @@ Ext.onReady( function() {
|
|||||||
else {
|
else {
|
||||||
Ext.Msg.alert( _('ID_ERROR'), _('ID_MESSAGE_EMPTY_DATE_FIELD'));
|
Ext.Msg.alert( _('ID_ERROR'), _('ID_MESSAGE_EMPTY_DATE_FIELD'));
|
||||||
}
|
}
|
||||||
}
|
return true;
|
||||||
|
},
|
||||||
|
listeners: {
|
||||||
|
mouseover: function () {
|
||||||
|
Ext.getCmp('idInvalidCalendarName').hide();
|
||||||
|
var validateMessage = '';
|
||||||
|
var canlendarName = Ext.getCmp('dynaformCalendarName').getValue();
|
||||||
|
var oldName = '';
|
||||||
|
if (name!='') {
|
||||||
|
oldName = '&oldName='+name;
|
||||||
|
}
|
||||||
|
Ext.Ajax.request( {
|
||||||
|
url: '../adminProxy/calendarValidate',
|
||||||
|
params: {
|
||||||
|
action : 'calendarName',
|
||||||
|
oldName : "",
|
||||||
|
name : canlendarName
|
||||||
|
},
|
||||||
|
success: function(resp){
|
||||||
|
if (resp.responseText != '[]')
|
||||||
|
message = resp.responseText;
|
||||||
|
else
|
||||||
|
message = '';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text:_("ID_CANCEL"),
|
text:_("ID_CANCEL"),
|
||||||
@@ -1114,7 +1193,8 @@ Ext.onReady( function() {
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
//Ext.getCmp('idInvalidCalendarName').setVisible(false);
|
||||||
//[ DATA EDIT
|
//[ DATA EDIT
|
||||||
calendarWorkDayStatusReset();
|
calendarWorkDayStatusReset();
|
||||||
var workDayEquivalenceArray = new Array();
|
var workDayEquivalenceArray = new Array();
|
||||||
@@ -1142,9 +1222,8 @@ Ext.onReady( function() {
|
|||||||
existDayKey++;
|
existDayKey++;
|
||||||
}
|
}
|
||||||
eval('var existDayObject = {'+existDayArray.join(',')+'};');
|
eval('var existDayObject = {'+existDayArray.join(',')+'};');
|
||||||
var dayName;
|
var dayName;
|
||||||
|
dynaformCalendarWorkDays_.items.each(function(dayObject){
|
||||||
dynaformCalendarWorkDays_.items.items.each(function(dayObject){
|
|
||||||
dayName = dayObject.name;
|
dayName = dayObject.name;
|
||||||
if(dayName in existDayObject) {
|
if(dayName in existDayObject) {
|
||||||
dayObject.setValue(true);
|
dayObject.setValue(true);
|
||||||
@@ -1204,4 +1283,30 @@ Ext.onReady( function() {
|
|||||||
dynaformCalendarName_.setValue(true);
|
dynaformCalendarName_.setValue(true);
|
||||||
}
|
}
|
||||||
//]
|
//]
|
||||||
|
Ext.getCmp('idInvalidCalendarName').hide();
|
||||||
|
if (get != "edit") {
|
||||||
|
var validateMessage = '';
|
||||||
|
var canlendarName = Ext.getCmp('dynaformCalendarName').getValue();
|
||||||
|
var oldName = '';
|
||||||
|
|
||||||
|
if (name!='') {
|
||||||
|
oldName = '&oldName='+name;
|
||||||
|
}
|
||||||
|
|
||||||
|
Ext.Ajax.request( {
|
||||||
|
url: '../adminProxy/calendarValidate',
|
||||||
|
params: {
|
||||||
|
action : 'calendarName',
|
||||||
|
oldName : "",
|
||||||
|
name : canlendarName
|
||||||
|
},
|
||||||
|
success: function(resp){
|
||||||
|
if (resp.responseText != '[]')
|
||||||
|
message = resp.responseText;
|
||||||
|
else
|
||||||
|
message = '';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -300,7 +300,7 @@ DoSearch = function(){
|
|||||||
EditCalendarAction = function() {
|
EditCalendarAction = function() {
|
||||||
rowSelected = infoGrid.getSelectionModel().getSelected();
|
rowSelected = infoGrid.getSelectionModel().getSelected();
|
||||||
if (rowSelected){
|
if (rowSelected){
|
||||||
location.href = '../admin/calendarEdit?id=' + rowSelected.data.CALENDAR_UID;
|
location.href = '../admin/calendarEdit?edit=1&id=' + rowSelected.data.CALENDAR_UID;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -359,8 +359,8 @@ render_status = function(v){
|
|||||||
//Members Button Action
|
//Members Button Action
|
||||||
CopyButtonAction = function(){
|
CopyButtonAction = function(){
|
||||||
rowSelected = infoGrid.getSelectionModel().getSelected();
|
rowSelected = infoGrid.getSelectionModel().getSelected();
|
||||||
if (rowSelected){
|
if (rowSelected){
|
||||||
location.href = 'calendarEdit?cp=1&id=' + rowSelected.data.CALENDAR_UID;
|
location.href = '../admin/calendarEdit?cp=1&id=' + rowSelected.data.CALENDAR_UID;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user