From 160f05408e9107395388836cad4209b9544f2e86 Mon Sep 17 00:00:00 2001 From: enekoza Date: Fri, 10 Nov 2017 14:21:03 +0100 Subject: [PATCH] =?UTF-8?q?Versi=C3=B3n=20v3.2.1=20de=20UDA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Actualización de las templates a la versión v3.2.1 de UDA --- templates/statics/rup/js/rup.js | 1057 +++++++++++++++++++++++---- templates/statics/rup/js/rup.js.map | 2 +- templates/statics/rup/js/rup.min.js | 56 +- 3 files changed, 947 insertions(+), 168 deletions(-) diff --git a/templates/statics/rup/js/rup.js b/templates/statics/rup/js/rup.js index f006337a..d04761ed 100644 --- a/templates/statics/rup/js/rup.js +++ b/templates/statics/rup/js/rup.js @@ -73,7 +73,7 @@ return /******/ (function(modules) { // webpackBootstrap /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 198); +/******/ return __webpack_require__(__webpack_require__.s = 199); /******/ }) /************************************************************************/ /******/ ([ @@ -1909,7 +1909,7 @@ function loadLocale(name) { module && module.exports) { try { oldLocale = globalLocale._abbr; - __webpack_require__(254)("./" + name); + __webpack_require__(255)("./" + name); // because defineLocale currently also sets the global locale, we // want to undo that for lazy loaded locales getSetGlobalLocale(oldLocale); @@ -4544,7 +4544,7 @@ return hooks; }))); -/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(256)(module))) +/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(257)(module))) /***/ }), /* 1 */ @@ -15588,7 +15588,7 @@ return jQuery; if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(14), __webpack_require__(186)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(14), __webpack_require__(187)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -15601,6 +15601,8 @@ return jQuery; var rup_version = '3.2.0'; + jQuery.migrateMute = true; + /** * jQuery definition to anchor JsDoc comments. * @@ -17196,7 +17198,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(255)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(256)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -36250,7 +36252,7 @@ var widgetsTooltip = $.ui.tooltip; if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(248)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(249)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -37244,7 +37246,7 @@ var widgetsTooltip = $.ui.tooltip; if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(249), __webpack_require__(2), __webpack_require__(15)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(250), __webpack_require__(2), __webpack_require__(15)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -37783,7 +37785,7 @@ var widgetsTooltip = $.ui.tooltip; if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(190)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(191)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -38667,7 +38669,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(8), __webpack_require__(192)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(8), __webpack_require__(193)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -39668,7 +39670,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(29), __webpack_require__(252)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(29), __webpack_require__(253)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -43731,8 +43733,8 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ __webpack_require__(1), __webpack_require__(5), __webpack_require__(25), - __webpack_require__(203), - __webpack_require__(201), + __webpack_require__(204), + __webpack_require__(202), __webpack_require__(4) ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? @@ -44314,7 +44316,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ // Register as an anonymous AMD module: !(__WEBPACK_AMD_DEFINE_ARRAY__ = [ __webpack_require__(1), - __webpack_require__(251) + __webpack_require__(252) ], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), @@ -78756,15 +78758,15 @@ exports.default = undefined; var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); -var _rupDatatableService = __webpack_require__(196); +var _rupDatatableService = __webpack_require__(197); -var _datatableRequest = __webpack_require__(195); +var _datatableRequest = __webpack_require__(196); var _datatables = __webpack_require__(26); var datatables = _interopRequireWildcard(_datatables); -var _datatables2 = __webpack_require__(246); +var _datatables2 = __webpack_require__(247); var datatablesResponsiveBs = _interopRequireWildcard(_datatables2); @@ -78772,7 +78774,7 @@ var _jquery = __webpack_require__(1); var _jquery2 = _interopRequireDefault(_jquery); -var _jquery3 = __webpack_require__(199); +var _jquery3 = __webpack_require__(200); var _jquery4 = _interopRequireDefault(_jquery3); @@ -80257,7 +80259,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(194)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(195)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -80991,7 +80993,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(205)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(206)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -81228,7 +81230,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(17), __webpack_require__(188)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(17), __webpack_require__(189)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -82938,7 +82940,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(16), __webpack_require__(187)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(16), __webpack_require__(188)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -85103,7 +85105,8 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ */ msgError: function msgError(properties) { //Se recogen y cruzan las paremetrizaciones del objeto - var settings = $.extend({}, $.rup_messages.defaults, properties), + var $this = this, + settings = $.extend({}, $.rup_messages.defaults, properties), docHeight, docWidth, focused = $(document.activeElement); @@ -85113,7 +85116,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ settings.close = function (event, ui) { focused.focus(); if (settings._close !== undefined) { - settings._close(event, ui); + $this._destroy(self); } }; @@ -85121,7 +85124,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ settings.buttons = [{ text: $.rup.i18nParse($.rup.i18n.base, 'rup_message.aceptar'), click: function click() { - self.dialog('close'); + $this._destroy(self); } }]; @@ -85160,7 +85163,8 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ */ msgConfirm: function msgConfirm(properties) { //Se recogen y cruzan las paremetrizaciones del objeto - var settings = $.extend({}, $.rup_messages.defaults, properties), + var $this = this, + settings = $.extend({}, $.rup_messages.defaults, properties), docHeight, docWidth, focused = $(document.activeElement); @@ -85170,7 +85174,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ settings.close = function (event, ui) { focused.focus(); if (settings._close !== undefined) { - settings._close(event, ui); + $this._destroy(self); } }; @@ -85184,7 +85188,8 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ text: $.rup.i18nParse($.rup.i18n.base, 'rup_message.aceptar'), click: function click() { settings.OKFunction.call(this, self); - self.dialog('close'); + + $this._destroy(self); } }]; self.dialog('option', 'buttons', aceptButton); @@ -85217,7 +85222,8 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ */ msgOK: function msgOK(properties) { //Se recogen y cruzan las paremetrizaciones del objeto - var settings = $.extend({}, $.rup_messages.defaults, properties), + var $this = this, + settings = $.extend({}, $.rup_messages.defaults, properties), docHeight, docWidth, focused = $(document.activeElement); @@ -85227,7 +85233,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ settings.close = function (event, ui) { focused.focus(); if (settings._close !== undefined) { - settings._close(event, ui); + $this._destroy(self); } }; @@ -85235,7 +85241,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ settings.buttons = [{ text: $.rup.i18nParse($.rup.i18n.base, 'rup_message.aceptar'), click: function click() { - self.dialog('close'); + $this._destroy(self); } }]; @@ -85267,7 +85273,8 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ */ msgAlert: function msgAlert(properties) { //Se recogen y cruzan las paremetrizaciones del objeto - var settings = $.extend({}, $.rup_messages.defaults, properties), + var $this = this, + settings = $.extend({}, $.rup_messages.defaults, properties), docHeight, docWidth, focused = $(document.activeElement); @@ -85277,7 +85284,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ settings.close = function (event, ui) { focused.focus(); if (settings._close !== undefined) { - settings._close(event, ui); + $this._destroy(self); } }; @@ -85285,7 +85292,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ settings.buttons = [{ text: $.rup.i18nParse($.rup.i18n.base, 'rup_message.aceptar'), click: function click() { - self.dialog('close'); + $this._destroy(self); } }]; @@ -85306,6 +85313,9 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ //******************************** $.rup_messages('extend', { + _destroy: function _destroy(self) { + self.dialog('destroy').remove(); + }, /** * Crea los divs de los mensajes. * @@ -85466,7 +85476,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(18), __webpack_require__(197)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(18), __webpack_require__(198)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -86466,7 +86476,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(jQuery) {var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(obj){return typeof obj;}:function(obj){return obj&&typeof Symbol==="function"&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj;};(function(factory){if(true){// AMD. Register as an anonymous module. -!(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1),__webpack_require__(2),__webpack_require__(11),__webpack_require__(9),__webpack_require__(13),__webpack_require__(12),__webpack_require__(189)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), +!(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1),__webpack_require__(2),__webpack_require__(11),__webpack_require__(9),__webpack_require__(13),__webpack_require__(12),__webpack_require__(190)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));}else{// Browser globals @@ -88487,7 +88497,7 @@ if(rp_ge[$t.p.id].reloadAfterSubmit){$($t).trigger('reloadGrid');if(!rp_ge[$t.p. }},setNulls:function setNulls(){var $t=this,postdata;$.each($t.p.colModel,function(i,n){if(n.editoptions&&n.editoptions.NullIfEmpty===true){if(postdata.hasOwnProperty(n.name)&&postdata[n.name]===''){postdata[n.name]='null';}}});},compareData:function compareData(nObj,oObj){var ret=false,key,unnestNObj=jQuery.rup_utils.unnestjson(nObj),unnestOObj=jQuery.rup_utils.unnestjson(oObj);for(key in unnestNObj){if(unnestNObj.hasOwnProperty(key)&&String(unnestNObj[key])!==String(unnestOObj[key])){ret=true;// Descomentar para debug // console.log(" Compare data: "+ key+ " new: "+String(unnestNObj[key]) + " old: "+String(unnestOObj[key])); break;}}return ret;},checkUpdates:function checkUpdates(extpost,okCallback){var $self=$(this),settings=$self.data('settings'),postdata,newData,$t=this,gID=$t.p.id,frmgr=$.fn.jqGrid.rup.edit.detail.detailFormId+gID,frmtborg=$.fn.jqGrid.rup.edit.detail.detailBodyId+gID,frmtb='#'+$.jgrid.jqID(frmtborg),stat=true,diff=false;// $("#"+settings.formEdit.feedbackId,frmtb).hide(); -if(rp_ge[$t.p.id].checkOnUpdate){postdata={};extpost={};$.proxy($.jgrid.getFormData,$t)(postdata,extpost);newData=$.extend({},postdata,extpost);if(settings.formEdit.addEditOptions.defaultCompareData===true){diff=$.proxy($.jgrid.compareData,$t)(newData,rp_ge[$t.p.id]._savedData);}var compareDataEvent=jQuery.Event('rupTable_formEditCompareData');compareDataEvent.isDifferent=diff;$self.triggerHandler(compareDataEvent,[rp_ge[$t.p.id]._savedData,newData]);if(compareDataEvent.isDifferent){$.rup_messages('msgConfirm',{message:$.rup.i18nParse($.rup.i18n.base,'rup_table.saveAndContinue'),title:$.rup.i18nParse($.rup.i18n.base,'rup_table.changes'),OKFunction:function OKFunction(){$(this).dialog('destroy').remove();if(jQuery.isFunction(okCallback)){jQuery.proxy(okCallback,$self)();}}});// $("#"+frmgr).data("disabled",true); +if(rp_ge[$t.p.id].checkOnUpdate){postdata={};extpost={};$.proxy($.jgrid.getFormData,$t)(postdata,extpost);newData=$.extend({},postdata,extpost);if(settings.formEdit.addEditOptions.defaultCompareData===true){diff=$.proxy($.jgrid.compareData,$t)(newData,rp_ge[$t.p.id]._savedData);}var compareDataEvent=jQuery.Event('rupTable_formEditCompareData');compareDataEvent.isDifferent=diff;$self.triggerHandler(compareDataEvent,[rp_ge[$t.p.id]._savedData,newData]);if(compareDataEvent.isDifferent){$.rup_messages('msgConfirm',{message:$.rup.i18nParse($.rup.i18n.base,'rup_table.saveAndContinue'),title:$.rup.i18nParse($.rup.i18n.base,'rup_table.changes'),OKFunction:function OKFunction(){if(jQuery.isFunction(okCallback)){jQuery.proxy(okCallback,$self)();}}});// $("#"+frmgr).data("disabled",true); // $(".confirm","#"+IDs.themodal).show(); stat=false;}}return stat;},restoreInline:function restoreInline(rowid){var $t=this,i;if(rowid!=='_empty'&&typeof $t.p.savedRow!=='undefined'&&$t.p.savedRow.length>0&&$.isFunction($.fn.jqGrid.restoreRow)){for(i=0;i<$t.p.savedRow.length;i++){if($t.p.savedRow[i].id==rowid){$($t).jqGrid('restoreRow',rowid);break;}}}},getCurrPos:function getCurrPos(){var $t=this,$self=$(this),settings=$self.data('settings'),gID=$t.p.id,frmgr=$.fn.jqGrid.rup.edit.detail.detailFormId+gID,frmtborg=$.fn.jqGrid.rup.edit.detail.detailBodyId+gID,frmtb='#'+$.jgrid.jqID(frmtborg),rowsInGrid=$($t).jqGrid('getDataIDs'),idGval=$('#id_g',settings.formEdit.$detailForm).val(),selrow=idGval!==undefined&&idGval!=='_empty'?idGval:$self.jqGrid('getGridParam','selrow'),pos=$.inArray(selrow,rowsInGrid);return[pos,rowsInGrid];},updateNav:function updateNav(cr,posarr){var $self=$(this),totr;if(posarr!==undefined&&posarr[1]!==undefined){totr=posarr[1].length-1;if(cr===0){$('#pData',frmtb+'_2').addClass('ui-state-disabled');}else if(posarr[1][cr-1]!==undefined&&$('#'+$.jgrid.jqID(posarr[1][cr-1])).hasClass('ui-state-disabled')){$('#pData',frmtb+'_2').addClass('ui-state-disabled');}else{$('#pData',frmtb+'_2').removeClass('ui-state-disabled');}if(cr==totr){$('#nData',frmtb+'_2').addClass('ui-state-disabled');}else if(posarr[1][cr+1]!==undefined&&$('#'+$.jgrid.jqID(posarr[1][cr+1])).hasClass('ui-state-disabled')){$('#nData',frmtb+'_2').addClass('ui-state-disabled');}else{$('#nData',frmtb+'_2').removeClass('ui-state-disabled');}}$self.rup_table('updateDetailPagination');}});/* * MODIFICACIONES @@ -89491,7 +89501,7 @@ fluid:{baseLayer:null,minWidth:100,maxWidth:2000,fluidOffset:0},toolbar:{autoAju if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(3), __webpack_require__(253), __webpack_require__(2)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(3), __webpack_require__(254), __webpack_require__(2)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -91065,7 +91075,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(193), __webpack_require__(191)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(194), __webpack_require__(192)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory), __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ? (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); @@ -91844,7 +91854,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ if (true) { // AMD. Register as an anonymous module. - !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(24), __webpack_require__(202), + !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(1), __webpack_require__(2), __webpack_require__(24), __webpack_require__(203), // 'jquery.fileupload/jquery.fileupload-jquery-ui.js', __webpack_require__(4), __webpack_require__(22), __webpack_require__(21), __webpack_require__(20), __webpack_require__(4), __webpack_require__(23) @@ -93484,6 +93494,765 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_ /* 171 */ /***/ (function(module, exports, __webpack_require__) { +/* WEBPACK VAR INJECTION */(function(jQuery) {/*! + * jQuery Migrate - v1.4.1 - 2016-05-19 + * Copyright jQuery Foundation and other contributors + */ +(function( jQuery, window, undefined ) { +// See http://bugs.jquery.com/ticket/13335 +// "use strict"; + + +jQuery.migrateVersion = "1.4.1"; + + +var warnedAbout = {}; + +// List of warnings already given; public read only +jQuery.migrateWarnings = []; + +// Set to true to prevent console output; migrateWarnings still maintained +// jQuery.migrateMute = false; + +// Show a message on the console so devs know we're active +if ( window.console && window.console.log ) { + window.console.log( "JQMIGRATE: Migrate is installed" + + ( jQuery.migrateMute ? "" : " with logging active" ) + + ", version " + jQuery.migrateVersion ); +} + +// Set to false to disable traces that appear with warnings +if ( jQuery.migrateTrace === undefined ) { + jQuery.migrateTrace = true; +} + +// Forget any warnings we've already given; public +jQuery.migrateReset = function() { + warnedAbout = {}; + jQuery.migrateWarnings.length = 0; +}; + +function migrateWarn( msg) { + var console = window.console; + if ( !warnedAbout[ msg ] ) { + warnedAbout[ msg ] = true; + jQuery.migrateWarnings.push( msg ); + if ( console && console.warn && !jQuery.migrateMute ) { + console.warn( "JQMIGRATE: " + msg ); + if ( jQuery.migrateTrace && console.trace ) { + console.trace(); + } + } + } +} + +function migrateWarnProp( obj, prop, value, msg ) { + if ( Object.defineProperty ) { + // On ES5 browsers (non-oldIE), warn if the code tries to get prop; + // allow property to be overwritten in case some other plugin wants it + try { + Object.defineProperty( obj, prop, { + configurable: true, + enumerable: true, + get: function() { + migrateWarn( msg ); + return value; + }, + set: function( newValue ) { + migrateWarn( msg ); + value = newValue; + } + }); + return; + } catch( err ) { + // IE8 is a dope about Object.defineProperty, can't warn there + } + } + + // Non-ES5 (or broken) browser; just set the property + jQuery._definePropertyBroken = true; + obj[ prop ] = value; +} + +if ( document.compatMode === "BackCompat" ) { + // jQuery has never supported or tested Quirks Mode + migrateWarn( "jQuery is not compatible with Quirks Mode" ); +} + + +var attrFn = jQuery( "", { size: 1 } ).attr("size") && jQuery.attrFn, + oldAttr = jQuery.attr, + valueAttrGet = jQuery.attrHooks.value && jQuery.attrHooks.value.get || + function() { return null; }, + valueAttrSet = jQuery.attrHooks.value && jQuery.attrHooks.value.set || + function() { return undefined; }, + rnoType = /^(?:input|button)$/i, + rnoAttrNodeType = /^[238]$/, + rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i, + ruseDefault = /^(?:checked|selected)$/i; + +// jQuery.attrFn +migrateWarnProp( jQuery, "attrFn", attrFn || {}, "jQuery.attrFn is deprecated" ); + +jQuery.attr = function( elem, name, value, pass ) { + var lowerName = name.toLowerCase(), + nType = elem && elem.nodeType; + + if ( pass ) { + // Since pass is used internally, we only warn for new jQuery + // versions where there isn't a pass arg in the formal params + if ( oldAttr.length < 4 ) { + migrateWarn("jQuery.fn.attr( props, pass ) is deprecated"); + } + if ( elem && !rnoAttrNodeType.test( nType ) && + (attrFn ? name in attrFn : jQuery.isFunction(jQuery.fn[name])) ) { + return jQuery( elem )[ name ]( value ); + } + } + + // Warn if user tries to set `type`, since it breaks on IE 6/7/8; by checking + // for disconnected elements we don't warn on $( "' :\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'') +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(!settings.submitInForm ?\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(file.error ?\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' :\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'' : '
') +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'');\r\n\t\t\t\trow.find('.name b').text(file.name);\r\n\t\t\t\trow.find('.size').text(file.sizef);\r\n\t\t\t\trow.find('.type').text(file.type);\r\n\t\t\t\tif (file.error) {\r\n\t\t\t\t\trow.addClass('ui-state-error');\r\n\t\t\t\t\trow.find('.error').text(\r\n\t\t\t\t\t\tthat.options.errorMessages[file.error] || file.error\r\n\t\t\t\t\t);\r\n\t\t\t\t}\r\n\r\n\t\t\t\trows = rows.add(row);\r\n\t\t\t});\r\n\t\t\treturn rows;\r\n\t\t},\r\n\t\t_renderDownloadTemplate: function (files) {\r\n\t\t\tvar that = this,\r\n\t\t\t\trows = $();\r\n\t\t\t$.each(files, function (index, file) {\r\n\t\t\t\t// file = that._downloadTemplateHelper(file);\r\n\t\t\t\tvar row = $('' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(file.error ?\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'' :\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'' + $.rup.i18nParse($.rup.i18n.base, 'rup_upload.openUploaded') + '
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
'\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'');\r\n\r\n\t\t\t\trow.find('.size').text(file.sizef);\r\n\t\t\t\trow.find('.type').text(file.type);\r\n\t\t\t\tif (file.error) {\r\n\t\t\t\t\trow.find('.name').text(file.name);\r\n\t\t\t\t\trow.addClass('ui-state-error');\r\n\t\t\t\t\trow.find('.error').text(\r\n\t\t\t\t\t\tthat.options.errorMessages[file.error] || file.error\r\n\t\t\t\t\t);\r\n\t\t\t\t} else {\r\n\t\t\t\t\trow.find('.name a').text(file.name);\r\n\t\t\t\t\tif (file.thumbnail_url) {\r\n\t\t\t\t\t\trow.find('.preview').append('')\r\n\t\t\t\t\t\t\t.find('img').prop('src', file.thumbnail_url);\r\n\t\t\t\t\t\trow.find('a').prop('target', '_blank');\r\n\t\t\t\t\t}\r\n\t\t\t\t\trow.find('a').prop('href', $.rup_utils.setNoPortalParam(file.url));\r\n\t\t\t\t\trow.find('.delete button')\r\n\t\t\t\t\t\t.attr('data-type', file.delete_type)\r\n\t\t\t\t\t\t.attr('data-url', $.rup_utils.setNoPortalParam(file.delete_url));\r\n\t\t\t\t}\r\n\t\t\t\trows = rows.add(row);\r\n\t\t\t});\r\n\t\t\treturn rows;\r\n\t\t},\r\n\t\t_initFileUploadButtonBar: function () {\r\n\t\t\tvar fileUploadButtonBar = this.element.find('.fileupload-buttonbar'),\r\n\t\t\t\tfilesList = this.element.find('.files'),\r\n\t\t\t\tns = this.options.namespace;\r\n\t\t\tfileUploadButtonBar.find('.start button')\r\n\t\t\t\t.button({\r\n\t\t\t\t\ticons: {\r\n\t\t\t\t\t\tprimary: 'ui-icon-circle-arrow-e'\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.bind('click.' + ns, function (e) {\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\tfilesList.find('.start button').click();\r\n\t\t\t\t});\r\n\t\t\tfileUploadButtonBar.find('.cancel')\r\n\t\t\t\t.button({\r\n\t\t\t\t\ticons: {\r\n\t\t\t\t\t\tprimary: 'ui-icon-cancel'\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.bind('click.' + ns, function (e) {\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\tfilesList.find('.cancel button').click();\r\n\t\t\t\t});\r\n\t\t\tfileUploadButtonBar.find('.delete')\r\n\t\t\t\t.button({\r\n\t\t\t\t\ticons: {\r\n\t\t\t\t\t\tprimary: 'ui-icon-trash'\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t\t.bind('click.' + ns, function (e) {\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t//\t filesList.find('.delete input:checked')\r\n\t\t\t\t\t//\t .siblings('button').click();\r\n\t\t\t\t\tfilesList.find('.delete button').click();\r\n\t\t\t\t});\r\n\t\t\tfileUploadButtonBar.find('.toggle')\r\n\t\t\t\t.bind('change.' + ns, function (e) {\r\n\t\t\t\t\tfilesList.find('.delete input').prop(\r\n\t\t\t\t\t\t'checked',\r\n\t\t\t\t\t\t$(this).is(':checked')\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t},\r\n\t\t_getAJAXSettings: function (data) {\r\n\t\t\tvar options = $.extend({}, this.options, data);\r\n\t\t\tthis._initFormSettings(options);\r\n\t\t\tthis._initDataSettings(options);\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\t//\t ,_initProgressListener: function (options) {\r\n\t\t// var that = this,\r\n\t\t// xhr = options.xhr ? options.xhr() : $.ajaxSettings.xhr();\r\n\t\t// // Accesss to the native XHR object is required to add event listeners\r\n\t\t// // for the upload progress event:\r\n\t\t// if (options.pif ===null && xhr.upload) {\r\n\t\t// \t\t\t\t//-- fix start --\r\n\t\t// \t\t\t\t$( xhr.upload ).bind( \"progress\", function (e) {\r\n\t\t// \t\t\t\tthat._onProgress(e, options);\r\n\t\t// \t\t\t\t});\r\n\t\t// \t\t\t\toptions.xhr = function () {\r\n\t\t// return xhr;\r\n\t\t// };\r\n\t\t// \t\t\t\t//-- fix end --\r\n\t\t// }\r\n\t\t// }\r\n\t\t//\t destroy: function (e, data) {\r\n\t\t// var that = $(this).data('fileupload');\r\n\t\t// if (data.url) {\r\n\t\t// $.rup_ajax(data)\r\n\t\t// .success(function () {\r\n\t\t// that._adjustMaxNumberOfFiles(1);\r\n\t\t// $(this).fadeOut(function () {\r\n\t\t// $(this).remove();\r\n\t\t// });\r\n\t\t// });\r\n\t\t// } else {\r\n\t\t// that._adjustMaxNumberOfFiles(1);\r\n\t\t// data.context.fadeOut(function () {\r\n\t\t// $(this).remove();\r\n\t\t// });\r\n\t\t// }\r\n\t\t// }\r\n\r\n\t});\r\n\r\n\t//*********************************************\r\n\t// ESPECIFICACÍON DE LOS TIPOS BASE DEL PATRÓN\r\n\t//*********************************************\r\n\r\n\t//*****************************************************************************************************************\r\n\t// DEFINICIÓN BASE DEL PATRÓN (definición de la variable privada que contendrá los métodos y la función de jQuery)\r\n\t//*****************************************************************************************************************\r\n\r\n\r\n\r\n\tvar rup_upload = {};\r\n\r\n\t//Se configura el arranque de UDA para que alberge el nuevo patrón\r\n\t$.extend($.rup.iniRup, $.rup.rupSelectorObjectConstructor('rup_upload', rup_upload));\r\n\r\n\t//********************************\r\n\t// DEFINICIÓN DE MÉTODOS PÚBLICOS\r\n\t//********************************\r\n\r\n\t$.fn.rup_upload('extend', {\r\n\t\toption: function (args) {\r\n\t\t\t$(this).fileupload('option', args);\r\n\t\t},\r\n\t\t/**\r\n * Elimina los objetos jQuery asociados al elemento identificado por el selector, durante el proceso de creación del componente upload\r\n * @function\r\n * @name destroy\r\n * @example\r\n * $(selector).rup_combo(\"destroy\");\r\n */\r\n\t\tdestroy: function () {\r\n\t\t\t$(this).fileupload('destroy');\r\n\t\t},\r\n\t\t/**\r\n *\r\n * @function Habilita el componente upload\r\n * @name enable\r\n * @example\r\n * $(selector).rup_upload(\"enable\");\r\n */\r\n\t\tenable: function () {\r\n\t\t\t$(this).fileupload('enable');\r\n\t\t},\r\n\t\t/**\r\n * Deshabilita el componente upload\r\n * @function\r\n * @name disable\r\n * @example\r\n * $(selector).rup_upload(\"disable\");\r\n */\r\n\t\tdisable: function () {\r\n\t\t\t$(this).fileupload('disable');\r\n\t\t},\r\n\t\t/**\r\n * Permite asociar una función que se ejecutará cuando se añada un fichero mediante el componente. muestre el desplegable del combo\r\n * @function\r\n * @name add\r\n * @listens add\r\n */\r\n\t\tadd: function (data) {\r\n\t\t\t$(this).fileupload('add', data);\r\n\t\t},\r\n\t\tsend: function (data) {\r\n\t\t\t$(this).fileupload('send', data);\r\n\t\t}\r\n\t});\r\n\r\n\r\n\t//********************************\r\n\t// DEFINICIÓN DE MÉTODOS PRIVADOS\r\n\t//********************************\r\n\r\n\r\n\tfunction fileuploadstart() {\r\n\t\tvar widget = $(this),\r\n\t\t\tprogressElement = $('#fileupload-progressbar').fadeIn(),\r\n\t\t\tinterval = 500,\r\n\t\t\ttotal = 0,\r\n\t\t\tloaded = 0,\r\n\t\t\tloadedBefore = 0,\r\n\t\t\tprogressTimer,\r\n\t\t\tprogressHandler = function (e, data) {\r\n\t\t\t\tloaded = data.loaded;\r\n\t\t\t\ttotal = data.total;\r\n\t\t\t},\r\n\t\t\tstopHandler = function () {\r\n\t\t\t\twidget\r\n\t\t\t\t\t.unbind('fileuploadprogressall', progressHandler)\r\n\t\t\t\t\t.unbind('fileuploadstop', stopHandler);\r\n\t\t\t\twindow.clearInterval(progressTimer);\r\n\t\t\t\tprogressElement.fadeOut(function () {\r\n\t\t\t\t\tprogressElement.html('');\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tformatTime = function (seconds) {\r\n\t\t\t\tvar date = new Date(seconds * 1000);\r\n\t\t\t\treturn ('0' + date.getUTCHours()).slice(-2) + ':' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t('0' + date.getUTCMinutes()).slice(-2) + ':' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t('0' + date.getUTCSeconds()).slice(-2);\r\n\t\t\t},\r\n\t\t\tformatBytes = function (bytes) {\r\n\t\t\t\tif (bytes >= 1000000000) {\r\n\t\t\t\t\treturn (bytes / 1000000000).toFixed(2) + ' GB';\r\n\t\t\t\t}\r\n\t\t\t\tif (bytes >= 1000000) {\r\n\t\t\t\t\treturn (bytes / 1000000).toFixed(2) + ' MB';\r\n\t\t\t\t}\r\n\t\t\t\tif (bytes >= 1000) {\r\n\t\t\t\t\treturn (bytes / 1000).toFixed(2) + ' KB';\r\n\t\t\t\t}\r\n\t\t\t\treturn bytes + ' B';\r\n\t\t\t},\r\n\t\t\tformatPercentage = function (floatValue) {\r\n\t\t\t\treturn (floatValue * 100).toFixed(2) + ' %';\r\n\t\t\t},\r\n\t\t\tupdateProgressElement = function (loaded, total, bps) {\r\n\t\t\t\tprogressElement.html(\r\n\t\t\t\t\tformatBytes(bps) + 'ps | ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tformatTime((total - loaded) / bps) + ' | ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tformatPercentage(loaded / total) + ' | ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tformatBytes(loaded) + ' / ' + formatBytes(total)\r\n\t\t\t\t);\r\n\t\t\t},\r\n\t\t\tintervalHandler = function () {\r\n\t\t\t\tvar diff = loaded - loadedBefore;\r\n\t\t\t\tif (!diff) {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\tloadedBefore = loaded;\r\n\t\t\t\tupdateProgressElement(\r\n\t\t\t\t\tloaded,\r\n\t\t\t\t\ttotal,\r\n\t\t\t\t\tdiff * (1000 / interval)\r\n\t\t\t\t);\r\n\t\t\t};\r\n\t\twidget\r\n\t\t\t.bind('fileuploadprogressall', progressHandler)\r\n\t\t\t.bind('fileuploadstop', stopHandler);\r\n\t\tprogressTimer = window.setInterval(intervalHandler, interval);\r\n\t}\r\n\r\n\t$.fn.rup_upload('extend', {\r\n\t\t_init: function (args) {\r\n\r\n\t\t\tvar settings = $.extend({}, $.fn.rup_upload.defaults, args[0]),\r\n\t\t\t\tupload = this;\r\n\r\n\t\t\tupload._ADAPTER = $.rup.adapter[settings.adapter];\r\n\t\t\tsettings.self = upload;\r\n\r\n\t\t\t// Se configura el uso del PIF\r\n\t\t\tif (settings.pif !== null) {\r\n\t\t\t\tvar url = '',\r\n\t\t\t\t\t//\t\t\t\t\t\tn38UidSesionCookie = $.rup_utils.readCookie(\"n38UidSesion\"),\r\n\t\t\t\t\t//\t\t\t\t\t\tn38DominioUidCookie = $.rup_utils.readCookie(\"n38DominioUid\"),\r\n\t\t\t\t\t//\t\t\t\t\t\tn38UidSesionGlobal = $.rup_utils.readCookie(\"n38UidSesionGlobal\"),\r\n\t\t\t\t\t//\t\t\t\t\t\tn38UidSistemasXLNetS = $.rup_utils.readCookie(\"n38UidSistemasXLNetS\"),\r\n\t\t\t\t\tpifSettings = jQuery.extend(true, $.fn.rup_upload.pif.defaults, settings.pif);\r\n\r\n\t\t\t\t//\t\t\t\t\tif (pifSettings.base_url===undefined){\r\n\t\t\t\t//\t\t\t\t\t\talert(\"RUP_UPLOAD - No se ha especificado el valor del parámetro base_url para el uso del PIF.\");\r\n\t\t\t\t//\t\t\t\t\t\treturn -1;\r\n\t\t\t\t//\t\t\t\t\t}\r\n\t\t\t\tif (pifSettings.userFolder !== true && pifSettings.folderPath === undefined) {\r\n\t\t\t\t\talert('RUP_UPLOAD - No se ha especificado el valor del parámetro folderPath para el uso del PIF.');\r\n\t\t\t\t\treturn -1;\r\n\t\t\t\t}\r\n\r\n\r\n\t\t\t\tjQuery.extend(true, settings, {\r\n\t\t\t\t\tformData: {\r\n\t\t\t\t\t\tbase_url: settings.url,\r\n\t\t\t\t\t\thadoop_folder_path: pifSettings.folderPath,\r\n\t\t\t\t\t\thadoop_preserve_name: pifSettings.preserveName,\r\n\t\t\t\t\t\ty31_ttl: pifSettings.fileTtl,\r\n\t\t\t\t\t\tsecurityToken: pifSettings.securityToken\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\r\n\t\t\t\t//\t\t\t\t\turl += pifSettings.base_url; // Url base del PIF\r\n\t\t\t\t//\t\t\t\t\turl += pifSettings._JANO_PUT_SERVLET; // Servlet PUT\r\n\t\t\t\t//\t\t\t\t\turl += \"/\"+n38UidSesionCookie; // Cookie XLNets n38UidSesionCookie\r\n\t\t\t\t//\t\t\t\t\turl += \"/\"+n38DominioUidCookie; // Cookie XLNets n38DominioUidCookie\r\n\t\t\t\t//\t\t\t\t\turl += \"/\"+n38UidSesionGlobal; // Cookie XLNets n38UidSesionGlobal\r\n\t\t\t\t//\t\t\t\t\turl += \"/\"+n38UidSistemasXLNetS; // Cookie XLNets n38UidSistemasXLNetS\r\n\r\n\t\t\t\t// Se añaden los parámetros de configuración del PIF a la url\r\n\r\n\t\t\t\t//\t\t\t\t\turl +=\"?hadoop_folder_path=\"+pifSettings.folderPath; // Parámetro folderPath\r\n\t\t\t\t//\t\t\t\t\turl +=\"&hadoop_preserve_name=\"+pifSettings.preserveName; // Parámetro preserveName\r\n\t\t\t\t//\t\t\t\t\turl +=\"&y31_ttl=\"+pifSettings.fileTtl; // Parámetro fileTtl\r\n\r\n\r\n\t\t\t\t// Configruamos la url final\r\n\t\t\t\t//\t\t\t\t\tsettings.url = url;\r\n\r\n\t\t\t\t//\t\t\t\t\tsettings.xhr = function(){\r\n\t\t\t\t//\r\n\t\t\t\t//\t\t\t\t\t};\r\n\t\t\t}\r\n\r\n\t\t\t$.data(this[0], 'settings', settings);\r\n\r\n\t\t\t$(this).fileupload(settings);\r\n\r\n\t\t\t// $(this).data('blueimp-fileupload')._formatFileSize = function(size){\r\n\t\t\t//\r\n\t\t\t// \tfunction formatBytes (bytes) {\r\n\t\t\t// \t\tif (bytes >= 1000000000) {\r\n\t\t\t// \t\t\treturn (bytes / 1000000000).toFixed(2) + ' GB';\r\n\t\t\t// \t\t}\r\n\t\t\t// \t\tif (bytes >= 1000000) {\r\n\t\t\t// \t\t\treturn (bytes / 1000000).toFixed(2) + ' MB';\r\n\t\t\t// \t\t}\r\n\t\t\t// \t\tif (bytes >= 1000) {\r\n\t\t\t// \t\t\treturn (bytes / 1000).toFixed(2) + ' KB';\r\n\t\t\t// \t\t}\r\n\t\t\t// \t\treturn bytes + ' B';\r\n\t\t\t// \t}\r\n\t\t\t//\r\n\t\t\t// \treturn formatBytes(size);\r\n\t\t\t// };\r\n\r\n\t\t\tif (settings.submitInForm) {\r\n\t\t\t\t$(this).rup_upload('option', {\r\n\t\t\t\t\tsingleFileUploads: false,\r\n\t\t\t\t\tmaxNumberOfFiles: 1,\r\n\t\t\t\t\treplaceFileInput: false\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t$(this).on({fileuploadadd: function (e, data) {\r\n\t\t\t\tif (settings.submitInForm) {\r\n\t\t\t\t\t$(this).find('.template-upload').hide();\r\n\t\t\t\t\t$(this).find('.template-upload .cancel button').unbind('click');\r\n\t\t\t\t\t$(this).find('.template-upload .cancel button').click();\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tfileuploadsend: function (e, data) {\r\n\t\t\t\t\tdata.url = $.rup_utils.setNoPortalParam(data.url);\r\n\t\t\t\t//\t\t\t\t\tif (!$.rup.browser.xhrFileUploadSupport || settings.forceIframeTransport===true){\r\n\t\t\t\t//\t\t\t\t\t\tdata.url = data.url + (data.url.match(\"\\\\?\") === null ? \"?\" : \"&\") + \"_emulate_iframe_http_status=true\";\r\n\t\t\t\t//\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\tfileuploadprocessfail: function (e, data) {\r\n\t\t\t\t\tdata.context.addClass('error');\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t});\r\n\t\t},\r\n\t\t_private: function (settings) {\r\n\r\n\t\t}\r\n\t});\r\n\r\n\t//*******************************************************\r\n\t// DEFINICIÓN DE LA CONFIGURACION POR DEFECTO DEL PATRON\r\n\t//*******************************************************\r\n\r\n\t$.fn.rup_upload.defaults = {\r\n\t\t// label:null,\r\n\t\t// fileInput:null,\r\n\t\tadapter: 'upload_bootstrap',\r\n\t\tsubmitInForm: false,\r\n\t\tsubmitFormButton: undefined,\r\n\t\tpif: null,\r\n\t\t//filesContainer: '.files',\r\n\t\tuploadTemplateId: false,\r\n\t\tdownloadTemplateId: false,\r\n\t\tuploadTemplate: function (o) {\r\n\t\t\treturn $.proxy(o.options.self._ADAPTER.uploadTemplate, this)(o);\r\n\t\t},\r\n\t\tdownloadTemplate: function (o) {\r\n\t\t\treturn $.proxy(o.options.self._ADAPTER.downloadTemplate, this)(o);\r\n\t\t}\r\n\t};\r\n\r\n\t$.fn.rup_upload.pif = {};\r\n\t$.fn.rup_upload.pif.defaults = {\r\n\t\tfileTtl: 129600,\r\n\t\tpreserveName: false,\r\n\t\t_JANO_PUT_SERVLET: '/y31ApiJSWAR/Y31JanoServicePutServlet',\r\n\t\tsecurityToken: 'app'\r\n\t};\r\n\r\n\t/**\r\n * @description Propiedades de configuración del componente.\r\n * @see Para mas información consulte la documentación acerca de las opciones de configuración del plugin {@link https://github.com/blueimp/jQuery-File-Upload/wiki/Options|jQuery File Upload}.\r\n *\r\n * @name options\r\n * @property {string} [namespace] - Se utiliza para asociar el capturador de eventos del dropZone y del fileInpurt. Por defecto toma el valor del widget (“fileupload”).\r\n * @property {jQuery} [dropZone=$(document)] - Indica el objeto jQuery que representa el área de dropZone. Para deshabilitar el soporte drag & drop se deberá indicar el valor null.\r\n * @property {jQuery} [fileInput] - Objeto jQuery sobre el cual se monitorizarán los eventos de cambio del mismo. En caso de no especificarse se tomarán los input de tipo file existentes dentro del objeto sobre el que se ha creado el componente upload. Para deshabilitar el capturador de eventos se deberá indicar el valor null.\r\n * @property {boolean} [replaceFileInput=true] - Determinar si el campo file es reemplazado por un nuevo objeto a partir de un clone.\r\n * @property {string} [paramName] - Indica el nombre del parámetro de la request mediante el cual se enviará la información del fichero. En caso de no especificarse, se tomará el valor de la propiedad name del campo file. En caso de no especificarse dicha propiedad se tomará el valor files[] por defecto.\r\n * @property {boolean} [singleFileUploads=true] - Especifica si la subida de ficheros se realizar de manera individual, es decir, si se realiza una petición XHR por cada uno de los ficheros que se deben de enviar.\r\n * @property {boolean} [limitMultiFileUploads=true] -Especifica el número de ficheros que pueden ser enviados en una única petición XHR.\r\n * @property {boolean} [sequentialUploads=false] - Especifica si el envío de los ficheros se realizan de manera secuencial en vez de manera simultánea.\r\n * @property {Integer} [limitConcurrentUploads] - Indica el número máximo de peticiones concurrentes para la\r\nsubida de ficheros.\r\n * @property {boolean} [forceIframeTransport=false] - Determina si se debe forzar el uso de iframe al realizar la subida de ficheros. Esta opción puede ser útil en caso de subida de ficheros entre diferentes dominios.\r\n * @property {boolean} [multipart=true] - Indica si la subida de ficheros se realiza como multipart/form-data.\r\n * @property {boolean} [recalculateProgress=true] - Por defecto, los envíos de ficheros erróneos o cancelados son excluidos del cálculo del progreso global de subida de ficheros. Para evitar el recálculo del progreso global se deberá de especificar esta opción como false.\r\n * @property {object | object[] | function} [formData] - Información adicional que se desea enviar al realizarse la subida de ficheros. El parámetro acepta lo siguiente:
  • Array de objetos con propiedades
  • Objeto simple
  • Función que retorna uno de los tipos de datos especificados anteriormente.
\r\n */\r\n\r\n\r\n\t/***********/\r\n\t/* EVENTOS */\r\n\t/***********/\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará cuando se añada un fichero mediante el componente.\r\n *\r\n * @event module:rup_upload#fileuploadadd\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @property {object} data - Objeto que contiene la información relativa a la subida de los ficheros.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadadd\", function (e, data) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará cuando se añada un fichero mediante el componente.\r\n *\r\n * @event module:rup_upload#fileuploadsubmit\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @property {object} data - Objeto que contiene la información relativa a la subida de los ficheros.\r\n * @return {boolean} - Si la función retorna false el envío no se realiza.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadsubmit\", function (e, data) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará al iniciarse el envío de cada fichero.\r\n *\r\n * @event module:rup_upload#fileuploadsend\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @property {object} data - Objeto que contiene la información relativa a la subida de los ficheros.\r\n * @return {boolean} - Si la función retorna false el envío no se realiza.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadsend\", function (e, data) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará al realizarse de manera satisfactoria el envío de los ficheros.\r\n *\r\n * @event module:rup_upload#fileuploaddone\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @property {object} data - Objeto que contiene la información relativa a la subida de los ficheros.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploaddone\", function (e, data) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará al producirse un error en el envío de los ficheros o al abortarse el envío.\r\n *\r\n * @event module:rup_upload#fileuploadfail\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @property {object} data - Objeto que contiene la información relativa a la subida de los ficheros.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadfail\", function (e, data) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará al producirse un envío correcto, erróneo o se aborte.\r\n *\r\n * @event module:rup_upload#fileuploadalways\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @property {object} data - Objeto que contiene la información relativa a la subida de los ficheros.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadalways\", function (e, data) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará al producirse un evento relacionado con el indicador de progreso del envío de ficheros.\r\n *\r\n * @event module:rup_upload#fileuploadprogress\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @property {object} data - Objeto que contiene la información relativa a la subida de los ficheros.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadprogress\", function (e, data) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará al producirse un evento relacionado el indicador de progreso global de envío de ficheros.\r\n *\r\n * @event module:rup_upload#fileuploadprogressall\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @property {object} data - Objeto que contiene la información relativa a la subida de los ficheros.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadprogressall\", function (e, data) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará al inicio del envío de los ficheros.\r\n *\r\n * @event module:rup_upload#fileuploadstart\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadstart\", function (e) {\r\n * });\r\n */\r\n\r\n\t/**\r\n * Permite asociar una función que se ejecutará al detenerse el proceso de envío de ficheros.\r\n *\r\n * @event module:rup_upload#fileuploadstop\r\n * @property {Event} e - Objeto Event correspondiente al evento disparado.\r\n * @example\r\n * $(\"#fileupload\").on(\"fileuploadstop\", function (e) {\r\n * });\r\n */\r\n\r\n}));\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/rup.upload.js","/*!\r\n * Copyright 2016 E.J.I.E., S.A.\r\n *\r\n * Licencia con arreglo a la EUPL, Versión 1.1 exclusivamente (la «Licencia»);\r\n * Solo podrá usarse esta obra si se respeta la Licencia.\r\n * Puede obtenerse una copia de la Licencia en\r\n *\r\n * http://ec.europa.eu/idabc/eupl.html\r\n *\r\n * Salvo cuando lo exija la legislación aplicable o se acuerde por escrito,\r\n * el programa distribuido con arreglo a la Licencia se distribuye «TAL CUAL»,\r\n * SIN GARANTÍAS NI CONDICIONES DE NINGÚN TIPO, ni expresas ni implícitas.\r\n * Véase la Licencia en el idioma concreto que rige los permisos y limitaciones\r\n * que establece la Licencia.\r\n */\r\n\r\n/**\r\n * Permitir guiar al usuario paso a paso a través de un proceso realizando las tareas dentro de un orden señalado.\r\n *\r\n * @summary Componente RUP Wizard.\r\n * @module rup_wizard\r\n * @example\r\n * var properties = {};\r\n * $(\"#id_form\").rup_wizard(properties)\r\n */\r\n\r\n/*global define */\r\n/*global jQuery */\r\n\r\n(function (factory) {\r\n\tif (typeof define === 'function' && define.amd) {\r\n\r\n\t\t// AMD. Register as an anonymous module.\r\n\t\tdefine(['jquery', './rup.base'], factory);\r\n\t} else {\r\n\r\n\t\t// Browser globals\r\n\t\tfactory(jQuery);\r\n\t}\r\n}(function ($) {\r\n\r\n\t//****************************************************************************************************************\r\n\t// DEFINICIÓN BASE DEL PATRÓN (definición de la variable privada que contendrá los métodos y la función de jQuery)\r\n\t//****************************************************************************************************************\r\n\r\n\r\n\tvar rup_wizard = {};\r\n\r\n\t//Se configura el arranque de UDA para que alberge el nuevo patrón\r\n\t$.extend($.rup.iniRup, $.rup.rupSelectorObjectConstructor('rup_wizard', rup_wizard));\r\n\r\n\t//*******************************\r\n\t// DEFINICIÓN DE MÉTODOS PÚBLICOS\r\n\t//*******************************\r\n\t$.fn.rup_wizard('extend', {\r\n\t\t/**\r\n * Selecciona el paso recibido como parámetro [0..n].\r\n *\r\n * @function step\r\n * @param {Integer} step - Identificador del paso que se desea seleccionar.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"step\", 1);\r\n */\r\n\t\tstep: function (stepNumber) {\r\n\r\n\t\t\t//controlar si está deshabilitado\r\n\t\t\tif ($('#stepDesc' + stepNumber).hasClass('disabled')) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\tvar currentId = $('#steps li.current').attr('id');\r\n\r\n\t\t\t//Gestionar cabeceras\r\n\t\t\t$('#steps li').removeClass('current');\r\n\t\t\t$('#stepDesc' + stepNumber).addClass('current');\r\n\t\t\t//Estilo flecha paso anterior\r\n\t\t\t$('#steps li').removeClass('visited');\r\n\t\t\tif (stepNumber != 0) {\r\n\t\t\t\t$('#stepDesc' + (stepNumber - 1)).addClass('visited');\r\n\t\t\t}\r\n\r\n\t\t\t//Gestionar capas\r\n\t\t\t$('#step' + currentId.substring(8)).hide();\r\n\t\t\t$('#step' + stepNumber).show();\r\n\r\n\t\t\t//Gestionar submitButton\r\n\t\t\tif (!this.rup_wizard('isCurrentStepLast')) {\r\n\t\t\t\t$('.rup-wizard_submitButton').hide();\r\n\t\t\t} else {\r\n\t\t\t\t$('.rup-wizard_submitButton').show();\r\n\t\t\t\t//Mover botón si no es resumen\r\n\t\t\t\tif (!this.rup_wizard('isCurrentStepSummary')) {\r\n\t\t\t\t\t$('#step' + stepNumber).find('p[id$=\\'commands\\']').append($('.rup-wizard_submitButton'));\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t},\r\n\t\t/**\r\n * Selecciona el primer paso del asistente.\r\n *\r\n * @function first\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"first\");\r\n */\r\n\t\tfirst: function () {\r\n\t\t\tthis.rup_wizard('step', 0);\r\n\t\t},\r\n\t\t/**\r\n * Selecciona el último paso del asistente.\r\n *\r\n * @function last\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"last\");\r\n */\r\n\t\tlast: function () {\r\n\t\t\tthis.rup_wizard('step', $('#steps').children().size() - 1);\r\n\t\t},\r\n\t\t/**\r\n * Devuelve el número del paso actual.\r\n *\r\n * @function getCurrentStep\r\n * @return {Integer} - Número de paso actual.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"getCurrentStep\");\r\n */\r\n\t\tgetCurrentStep: function () {\r\n\t\t\treturn parseInt($('#steps li.current').attr('id').substring(8));\r\n\t\t},\r\n\t\t/**\r\n * Indica si el paso recibido como parámetro es el activo.\r\n *\r\n * @function isCurrentStep\r\n * @param {Integer} step - Número de paso.\r\n * @return {boolean} - Devuelve true en caso de que el paso indicado sea el actual y false en caso de que no.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"isCurrentStep\", 2);\r\n */\r\n\t\tisCurrentStep: function (i) {\r\n\t\t\treturn (this.rup_wizard('getCurrentStep') === i);\r\n\t\t},\r\n\t\t/**\r\n * Indica si el paso activo es el primero.\r\n *\r\n * @function isCurrentStepFirst\r\n * @return {boolean} - Devuelve true en caso de que el último paso sea el activo y false en caso de que no.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"isCurrentStepFirst\");\r\n */\r\n\t\tisCurrentStepFirst: function () {\r\n\t\t\treturn this.rup_wizard('isCurrentStep', 0);\r\n\t\t},\r\n\t\t/**\r\n * Indica si el paso activo es el último.\r\n *\r\n * @function isCurrentStepLast\r\n * @return {boolean} - Devuelve true en caso de que el primer paso sea el activo y false en caso de que no.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"isCurrentStepLast\");\r\n */\r\n\t\tisCurrentStepLast: function () {\r\n\t\t\treturn ($('#steps').children().size() - 1 === this.rup_wizard('getCurrentStep'));\r\n\t\t},\r\n\t\t/**\r\n * Indica si el paso activo es el resumen.\r\n *\r\n * @function isCurrentStepSummary\r\n * @return {boolean} - Devuelve true en caso de que el paso activo sea el del resumen y false en caso de que no.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"isCurrentStepSummary\");\r\n */\r\n\t\tisCurrentStepSummary: function () {\r\n\t\t\treturn $('#stepDesc' + this.rup_wizard('getCurrentStep')).hasClass('rup-wizard_summary');\r\n\t\t},\r\n\t\t/**\r\n * Habilita el paso recibido como parámetro.\r\n *\r\n * @function enableStep\r\n * @param {Integer} step - Numero que identifica el paso que deseamos habilitar.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"enableStep\", 2);\r\n */\r\n\t\tenableStep: function (stepNumber) {\r\n\t\t\t$('#stepDesc' + stepNumber).removeClass('disabled');\r\n\t\t},\r\n\t\t/**\r\n * Deshabilita el paso recibido como parámetro.\r\n *\r\n * @function disableStep\r\n * @param {Integer} step - Numero que identifica el paso que deseamos deshabilitar.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"disableStep\", 2);\r\n */\r\n\t\tdisableStep: function (stepNumber) {\r\n\t\t\t$('#stepDesc' + stepNumber).addClass('disabled');\r\n\t\t},\r\n\t\t/**\r\n * Indica si el paso recibido como parámetro está deshabilitado.\r\n *\r\n * @function isStepDisabled\r\n * @param {Integer} step - Numero que identifica el paso que deseamos deshabilitar.\r\n * @return {boolean} - Devuelve true si el paso indicado está deshabilitado y false en caso de que no.\r\n * @example\r\n * $(\"#idForm\").rup_wizard(\"isStepDisabled\", 2);\r\n */\r\n\t\tisStepDisabled: function (stepNumber) {\r\n\t\t\treturn $('#stepDesc' + stepNumber).hasClass('disabled');\r\n\t\t}\r\n\t});\r\n\r\n\t//*******************************\r\n\t// DEFINICIÓN DE MÉTODOS PRIVADOS\r\n\t//*******************************\r\n\t$.fn.rup_wizard('extend', {\r\n\t\t_init: function (args) {\r\n\t\t\tif (args.length > 1) {\r\n\t\t\t\t$.rup.errorGestor($.rup.i18nParse($.rup.i18n.base, 'rup_global.initError') + $(this).attr('id'));\r\n\t\t\t} else {\r\n\t\t\t\tvar settings = $.extend({}, $.fn.rup_wizard.defaults, args[0]),\r\n\t\t\t\t\trupWizard = this; //referencia\r\n\r\n\t\t\t\tthis.addClass('rup-wizard');\r\n\t\t\t\tthis._formToWizard(settings);\r\n\r\n\t\t\t\t//Contenedor (UL)\r\n\t\t\t\t$('#steps').addClass('rup-wizard_stepsDescContainer');\r\n\r\n\t\t\t\t//Paso (LI)\r\n\t\t\t\t$('#steps').children().each(function (index, element) {\r\n\t\t\t\t\t$(element)\r\n\t\t\t\t\t\t.addClass('rup-wizard_stepDesc') //Estilo paso (LI)\r\n\t\t\t\t\t\t.click(function (event) {\r\n\t\t\t\t\t\t\t//Click en cabecera para cambio de paso\r\n\t\t\t\t\t\t\tvar step = $(this).attr('id').substring(8);\r\n\t\t\t\t\t\t\tif (!rupWizard.isStepDisabled(step)) {\r\n\t\t\t\t\t\t\t\tif (settings.stepFnc[step] !== undefined) {\r\n\t\t\t\t\t\t\t\t\tif (settings.stepFnc[step].call() === false) {\r\n\t\t\t\t\t\t\t\t\t\tevent.stopImmediatePropagation();\r\n\t\t\t\t\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t$(this).rup_wizard('step', step);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t//Eliminar \"Step X\"\r\n\t\t\t\t\tvar span = $(element).children();\r\n\t\t\t\t\t$(span).text((index + 1) + '. ' + $(span).text());\r\n\t\t\t\t\t$(element).text('').append(span);\r\n\t\t\t\t});\r\n\r\n\t\t\t\t//Botones Anterior/Siguiente\r\n\t\t\t\t$('p[id$=\\'commands\\'] .prev')\r\n\t\t\t\t//Estilo\r\n\t\t\t\t\t.removeClass('prev').addClass('rup-wizard_prev')\r\n\t\t\t\t//Texto\r\n\t\t\t\t\t.text($.rup.i18nParse($.rup.i18n.base, 'rup_wizard.prev'))\r\n\t\t\t\t//Evento 'click'\r\n\t\t\t\t\t.unbind('click').click(function (event) {\r\n\t\t\t\t\t\t//Paso anterior\r\n\t\t\t\t\t\trupWizard._gotoPrevStep(rupWizard, settings, event);\r\n\t\t\t\t\t});\r\n\t\t\t\t$('p[id$=\\'commands\\'] .next')\r\n\t\t\t\t//Estilo\r\n\t\t\t\t\t.removeClass('next').addClass('rup-wizard_next')\r\n\t\t\t\t//Texto\r\n\t\t\t\t\t.text($.rup.i18nParse($.rup.i18n.base, 'rup_wizard.next'))\r\n\t\t\t\t//Evento 'click'\r\n\t\t\t\t\t.unbind('click').click(function (event) {\r\n\t\t\t\t\t\t//Siguiente paso\r\n\t\t\t\t\t\trupWizard._gotoNextStep(rupWizard, settings, event);\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t//Estilo botón submit (sirve de ID)\r\n\t\t\t\t$('#' + settings.submitButton).addClass('rup-wizard_submitButton');\r\n\t\t\t\tif (settings.submitFnc) {\r\n\t\t\t\t\t$('#' + settings.submitButton).click(settings.submitFnc);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t//Estilos firstStep y finalStep\r\n\t\t\t\t$('#steps li:first').addClass('rup-wizard_firstStepDesc');\r\n\t\t\t\t$('#steps li:last').addClass('rup-wizard_lastStepDesc');\r\n\r\n\t\t\t\t//Paso de RESUMEN\r\n\t\t\t\tif (settings.summary) {\r\n\t\t\t\t\t//Cabecera\r\n\t\t\t\t\t$('#steps li:last').removeClass('rup-wizard_lastStepDesc');\r\n\t\t\t\t\tvar stepNumber = $('#steps').children().size(),\r\n\t\t\t\t\t\tstepDesc = $('
  • ')\r\n\t\t\t\t\t\t\t.attr('id', 'stepDesc' + stepNumber)\r\n\t\t\t\t\t\t\t.addClass('rup-wizard_stepDesc rup-wizard_summary rup-wizard_lastStepDesc')\r\n\t\t\t\t\t\t\t.append('' + (stepNumber + 1) + '. ' + $.rup.i18nParse($.rup.i18n.base, 'rup_wizard.summary') + '')\r\n\t\t\t\t\t\t\t.click(function (event) {\r\n\t\t\t\t\t\t\t\t//Paso final\r\n\t\t\t\t\t\t\t\t$(this).rup_wizard('step', $(this).attr('id').substring(8));\r\n\t\t\t\t\t\t\t\t//Resumen\r\n\t\t\t\t\t\t\t\trupWizard._generateSummary(stepNumber, rupWizard, settings);\r\n\t\t\t\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t$('#steps').append(stepDesc);\r\n\r\n\t\t\t\t\t//Capa\r\n\t\t\t\t\tif (stepNumber > 1) {\r\n\t\t\t\t\t\t$('div[id=\\'step' + (stepNumber - 1) + '\\']').after('
    ');\r\n\r\n\t\t\t\t\t\t//Añadir botón siguiente anteúltimo paso\r\n\t\t\t\t\t\tvar nextButton = $('')\r\n\t\t\t\t\t\t\t.attr('id', 'step' + (stepNumber - 1) + 'Next')\r\n\t\t\t\t\t\t\t.html($.rup.i18nParse($.rup.i18n.base, 'rup_wizard.next'))\r\n\t\t\t\t\t\t\t.addClass('rup-wizard_next')\r\n\t\t\t\t\t\t\t.unbind('click').click(function (event) {\r\n\t\t\t\t\t\t\t\t//Siguiente paso\r\n\t\t\t\t\t\t\t\trupWizard._gotoNextStep(rupWizard, settings, event);\r\n\t\t\t\t\t\t\t\t//Resumen\r\n\t\t\t\t\t\t\t\trupWizard._generateSummary(stepNumber, rupWizard, settings);\r\n\t\t\t\t\t\t\t\tevent.preventDefault();\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t$('#step' + (stepNumber - 1) + 'commands').append(nextButton);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t}\r\n\r\n\t\t\t\t//Disabled\r\n\t\t\t\tif (settings.disabled !== undefined) {\r\n\t\t\t\t\t$.each(settings.disabled, function (index, element) {\r\n\t\t\t\t\t\tif (typeof element === 'number') {\r\n\t\t\t\t\t\t\t$(this).rup_wizard('disableStep', element);\r\n\t\t\t\t\t\t} else if (typeof element === 'string') {\r\n\t\t\t\t\t\t\tvar begin = parseInt(element.substring(0, element.indexOf('-'))),\r\n\t\t\t\t\t\t\t\tend = parseInt(element.substring(element.indexOf('-') + 1, element.length));\r\n\t\t\t\t\t\t\tfor (var i = begin; i <= end; i++) {\r\n\t\t\t\t\t\t\t\t$(this).rup_wizard('disableStep', i);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t//Ir al paso inicial\r\n\t\t\tthis.rup_wizard('step', 0);\r\n\t\t},\r\n\t\t_gotoNextStep: function (rupWizard, settings, event) {\r\n\t\t\t// Obtener paso siguiente\r\n\t\t\tvar nextStep = parseInt($('#steps li.current')\r\n\t\t\t\t.attr('id').substring(8)) + 1;\r\n\r\n\t\t\t// Comprobar que no está deshabilitado (o buscar el\r\n\t\t\t// siguiente\r\n\t\t\t// habilitado)\r\n\t\t\tif (rupWizard.isStepDisabled(nextStep)) {\r\n\t\t\t\tnextStep = $('#stepDesc' + (nextStep - 1))\r\n\t\t\t\t\t.nextAll('li:not(.disabled)').first()\r\n\t\t\t\t\t.attr('id');\r\n\t\t\t\tif (nextStep !== undefined) {\r\n\t\t\t\t\tnextStep = parseInt(nextStep.substring(8));\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t// Si fuera necesario, se generar el resumen\r\n\t\t\t\tif (jQuery('#steps').children().size() - 1 === nextStep) {\r\n\t\t\t\t\trupWizard._generateSummary(nextStep,\r\n\t\t\t\t\t\trupWizard, settings);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Invocar f(x) del paso (si existe)\r\n\t\t\tif (settings.stepFnc[nextStep] !== undefined) {\r\n\t\t\t\tif ($('#stepDesc' + nextStep).not(\r\n\t\t\t\t\t'.rup-wizard_summary').length > 0) { // Evitar\r\n\t\t\t\t\t// resumen\r\n\t\t\t\t\t// (mala\r\n\t\t\t\t\t// configuracion\r\n\t\t\t\t\t// desarrollador)\r\n\t\t\t\t\tif (settings.stepFnc[nextStep].call() === false) {\r\n\t\t\t\t\t\tevent.stopImmediatePropagation();\r\n\t\t\t\t\t\treturn false;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Cambiar de paso\r\n\t\t\t$('#stepDesc' + nextStep).rup_wizard('step',\r\n\t\t\t\tnextStep);\r\n\t\t},\r\n\t\t_gotoPrevStep: function (rupWizard, settings, event) {\r\n\r\n\t\t\t//Obtener paso anterior\r\n\t\t\tvar prevStep = parseInt($('#steps li.current').attr('id').substring(8)) - 1;\r\n\r\n\t\t\t//Comprobar que no está deshabilitado (o buscar el anterior habilitado)\r\n\t\t\tif (rupWizard.isStepDisabled(prevStep)) {\r\n\t\t\t\tprevStep = $('#stepDesc' + (prevStep + 1)).prevAll('li:not(.disabled)').first().attr('id');\r\n\t\t\t\tif (prevStep !== undefined) {\r\n\t\t\t\t\tprevStep = parseInt(prevStep.substring(8));\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t//Invocar f(x) del paso (si existe)\r\n\t\t\tif (settings.stepFnc[prevStep] !== undefined) {\r\n\t\t\t\tif (settings.stepFnc[prevStep].call() === false) {\r\n\t\t\t\t\tevent.stopImmediatePropagation();\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t//Cambiar de paso\r\n\t\t\t$('#stepDesc' + prevStep).rup_wizard('step', prevStep);\r\n\t\t},\r\n\t\t_generateSummary: function (stepNumber, rupWizard, settings) {\r\n\r\n\t\t\t//controlar si está deshabilitado\r\n\t\t\tif ($('#stepDesc' + stepNumber).hasClass('disabled')) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\t//Devolver botón submit a su lugar\r\n\t\t\t$('#step' + stepNumber).parent().append($('.rup-wizard_submitButton'));\r\n\r\n\t\t\t/** DEVELOPER SummaryFnc_PRE **/\r\n\t\t\tif (settings.summaryFnc_PRE && settings.summaryFnc_PRE.call() === false) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\t//Reiniciar capa (si hacemos .empty() no funciona accordion la segunda vez)\r\n\t\t\t$('#step' + stepNumber).remove();\r\n\t\t\t$('div[id=\\'step' + (stepNumber - 1) + '\\']').after('
    ');\r\n\r\n\r\n\t\t\t//Copiar capas anteriores\r\n\t\t\tfor (var i = 0; i < stepNumber; i++) {\r\n\t\t\t\tif (!rupWizard.isStepDisabled(i)) { //Comprobar pasos deshabilitados\r\n\t\t\t\t\t$('#step' + stepNumber).append($('#step' + i).children().clone());\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t//Eliminar botones\r\n\t\t\t$('#step' + stepNumber + ' p[id$=\\'commands\\']').remove();\r\n\r\n\t\t\t//Botón anterior\r\n\t\t\t$('div[id=\\'step' + (stepNumber) + '\\'] fieldset:last').append('

    ');\r\n\t\t\tvar prevButton = $('
    ')\r\n\t\t\t\t.attr('id', 'step' + stepNumber + 'Prev')\r\n\t\t\t\t.html($.rup.i18nParse($.rup.i18n.base, 'rup_wizard.prev'))\r\n\t\t\t\t.addClass('rup-wizard_prev')\r\n\t\t\t\t.unbind('click').click(function (event) {\r\n\t\t\t\t\t//Paso anterior\r\n\t\t\t\t\trupWizard._gotoPrevStep(rupWizard, settings, event);\r\n\t\t\t\t});\r\n\t\t\t$('#step' + stepNumber + 'commands').append(prevButton);\r\n\r\n\r\n\t\t\t/** DEVELOPER SummaryFnc_INTER **/\r\n\t\t\tif (settings.summaryFnc_INTER && settings.summaryFnc_INTER.call() === false) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\t//RUP_MULTICOMBO\r\n\t\t\t$('#step' + stepNumber + ' .ui-multiselect').each(function () {\r\n\t\t\t\tvar selectObj = $('#' + $(this).prev().attr('id'));\r\n\t\t\t\tif (selectObj.data('settings') !== undefined) {\r\n\t\t\t\t\tvar seleccionados = selectObj.rup_combo('label');\r\n\t\t\t\t\tif (seleccionados.length > 0) { //Existen elementos seleccionados?\r\n\t\t\t\t\t\tif (selectObj.data('settings')['summaryInline'] == undefined) {\r\n\t\t\t\t\t\t\t//Tratamiento por defecto\r\n\t\t\t\t\t\t\tvar contenedor = $('
    ').addClass('rup-wizard_summaryMultivalue').insertAfter(this);\r\n\t\t\t\t\t\t\tfor (var i = 0; i < seleccionados.length; i++) {\r\n\t\t\t\t\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\t\t\t\t\ttext: '- ' + seleccionados[i],\r\n\t\t\t\t\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t\t\t\t\t}).appendTo(contenedor);\r\n\t\t\t\t\t\t\t\t$('
    ').appendTo(contenedor);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t//Tratamiento en línea\r\n\t\t\t\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\t\t\t\ttext: seleccionados.toString().replace(/,/g, ', '),\r\n\t\t\t\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\t\t\thtml: ' ',\r\n\t\t\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t$(this).prev().remove();\r\n\t\t\t\t\t$(this).remove();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t//Gestionar INPUTS\r\n\t\t\t$('#step' + stepNumber + ' input').each(function () {\r\n\t\t\t\tif (this.type === 'text') {\r\n\t\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\t\ttext: this.value,\r\n\t\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t} else if (this.type === 'password') {\r\n\t\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\t\ttext: rupWizard._hidePassword(this.value),\r\n\t\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t} else if (this.type === 'radio') {\r\n\t\t\t\t\tif (this.checked) {\r\n\t\t\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\t\t\ttext: $('#step' + stepNumber + ' label[for=\\'' + this.id + '\\']').text(),\r\n\t\t\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t\t\t$('#' + this.id).attr('checked', 'checked'); //Restablecer selección que se pierde al clonar\r\n\t\t\t\t\t}\r\n\t\t\t\t\t//\t\t\t\t\t\tif (this.checked){\r\n\t\t\t\t\t//\t\t\t\t\t\t\t$(settings.labelElement, { text: \"(*) \" + $(\"#step\"+stepNumber+\" label[for='\"+this.id+\"']\").text(), \"class\":\"rup-wizard_summaryValue\" }).insertAfter(this);\r\n\t\t\t\t\t//\t\t\t\t\t\t\t$(\"#\"+this.id).attr(\"checked\",\"checked\"); //Restablecer selección que se pierde al clonar\r\n\t\t\t\t\t//\t\t\t\t\t\t} else {\r\n\t\t\t\t\t//\t\t\t\t\t\t\t$(settings.labelElement, { text: \"( ) \" + $(\"#step\"+stepNumber+\" label[for='\"+this.id+\"']\").text(), \"class\":\"rup-wizard_summaryValue\" }).insertAfter(this);\r\n\t\t\t\t\t//\t\t\t\t\t\t}\r\n\t\t\t\t\t$('#step' + stepNumber + ' label[for=\\'' + this.id + '\\']').remove();\r\n\t\t\t\t} else if (this.type === 'checkbox') {\r\n\t\t\t\t\tif (this.checked) {\r\n\t\t\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\t\t\ttext: '[X] ' + $('#step' + stepNumber + ' label[for=\\'' + this.id + '\\']').text(),\r\n\t\t\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\t\t\ttext: '[ ] ' + $('#step' + stepNumber + ' label[for=\\'' + this.id + '\\']').text(),\r\n\t\t\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t\t}\r\n\t\t\t\t\t$('#step' + stepNumber + ' label[for=\\'' + this.id + '\\']').remove();\r\n\t\t\t\t}\r\n\t\t\t\t$(this).remove();\r\n\t\t\t});\r\n\r\n\t\t\t//Gestionar TEXTAREAS\r\n\t\t\t$('#step' + stepNumber + ' textarea').each(function () {\r\n\t\t\t\t$(settings.textareaElement, {\r\n\t\t\t\t\ttext: $('#' + $(this).attr('id')).val(),\r\n\t\t\t\t\t'class': 'rup-wizard_summaryParagraph'\r\n\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t$(this).remove();\r\n\t\t\t});\r\n\r\n\t\t\t//Gestionar SELECTS\r\n\t\t\t$('#step' + stepNumber + ' select:not(\\'.ui-pg-selbox\\')').each(function () {\r\n\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\ttext: ($('#' + this.id + ' option:selected').text() !== ' ') ? $('#' + this.id + ' option:selected').text() : '',\r\n\t\t\t\t\t'class': 'rup-wizard_summaryValue'\r\n\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t$(this).remove();\r\n\t\t\t});\r\n\r\n\t\t\t//Gestionar LABELS\r\n\t\t\t$('#step' + stepNumber + ' label').each(function () {\r\n\t\t\t\t$(settings.labelSeparatorElement, {\r\n\t\t\t\t\thtml: settings.labelSeparatorText,\r\n\t\t\t\t\t'class': 'rup-wizard_separator'\r\n\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t$(settings.labelElement, {\r\n\t\t\t\t\ttext: this.innerHTML,\r\n\t\t\t\t\t'class': 'rup-wizard_summaryLabel'\r\n\t\t\t\t}).insertAfter(this);\r\n\t\t\t\t$(this).remove();\r\n\t\t\t});\r\n\r\n\t\t\t//Gestionar componentes RUP\r\n\t\t\t//rup_accordion\r\n\t\t\t$('#step' + stepNumber + ' .ui-accordion').each(function () {\r\n\t\t\t\t$(this).attr('id', $(this).attr('id') + '_summary');\r\n\t\t\t\t$(this).removeAttr('class');\r\n\t\t\t\t$(this).children('h1').removeAttr('class');\r\n\t\t\t\t$(this).children('h1').children('span.ui-icon').first().remove();\r\n\t\t\t\t$(this).children('div').removeAttr('class');\r\n\t\t\t\tif ($.isEmptyObject(settings.rupAccordion)) {\r\n\t\t\t\t\t$(this).rup_accordion(settings.accordion);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$(this).rup_accordion(settings.rupAccordion);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\t//rup_combo (multicombo se procesa antes)\r\n\t\t\t$('#step' + stepNumber + ' .rup_combo').each(function () {\r\n\t\t\t\t$(this).remove();\r\n\t\t\t});\r\n\r\n\t\t\t//rup_date\r\n\t\t\t$('#step' + stepNumber + ' img.ui-datepicker-trigger').each(function () {\r\n\t\t\t\t$(this).remove();\r\n\t\t\t});\r\n\r\n\t\t\t//rup_time\r\n\t\t\t$('#step' + stepNumber + ' img.ui-timepicker-trigger').each(function () {\r\n\t\t\t\t$(this).remove();\r\n\t\t\t});\r\n\r\n\t\t\t//rup_tabs\r\n\t\t\tvar maxLevel = 0; //Control de estilos cuando las pestañas pasan a accordion\r\n\t\t\tif (settings.summaryTabs2Accordion) {\r\n\t\t\t\tsettings.rupTabsElement = '
    ';\r\n\t\t\t}\r\n\t\t\t$('#step' + stepNumber + ' > fieldset').children('.rup-tabs_container').each(function () {\r\n\r\n\t\t\t\tvar labelTabs = new Array(),\r\n\t\t\t\t\tidTabs = new Array(),\r\n\t\t\t\t\tfieldset = $(this).parent().attr('accordionable', true), //Donde se deben anidar las pestañas\r\n\t\t\t\t\tcontainerTab = new Array();\r\n\r\n\t\t\t\t//Obtención de valores/ids de pestañas (labelTabs & idTabs)\r\n\t\t\t\trupWizard._getRupTabs(rupWizard, $(this), labelTabs, idTabs);\r\n\r\n\t\t\t\t//Procesar pestañas\r\n\t\t\t\tvar tab = null,\r\n\t\t\t\t\tpointer = $(fieldset);\r\n\t\t\t\tfor (var i = 0; i < labelTabs.length; i++) {\r\n\t\t\t\t\ttab = $(settings.rupTabsElement).text(labelTabs[i]); //LABEL pestaña\r\n\t\t\t\t\tif (idTabs[i].indexOf('rupRandomLayerId') !== -1) {\r\n\t\t\t\t\t\t//Es pestaña\r\n\t\t\t\t\t\ttab = $(tab).wrap('
    ');\r\n\t\t\t\t\t\ttab = $(tab).parent().append($(this).find(idTabs[i]).html());\r\n\t\t\t\t\t\t$(tab).children('div').addClass('rup-wizard_tabLevel-' + containerTab.length);\r\n\t\t\t\t\t\ttab = $(tab).children().unwrap();\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\t//Es contenedor de pestañas\r\n\t\t\t\t\t\ttab = $(tab).attr('tabContainer', true);\r\n\t\t\t\t\t\ttab = $(tab).wrap('
    ');\r\n\t\t\t\t\t\ttab = $(tab).parent().append($('
    ')\r\n\t\t\t\t\t\t\t.attr('id', 'subtab_' + labelTabs[i])\r\n\t\t\t\t\t\t\t.attr('accordionable', true)\r\n\t\t\t\t\t\t\t.addClass('rup-wizard_tabContainerLevel-' + containerTab.length)\r\n\t\t\t\t\t\t);\r\n\t\t\t\t\t\ttab = $(tab).children().unwrap();\r\n\t\t\t\t\t\tcontainerTab.push(labelTabs[i]);\r\n\t\t\t\t\t\tmaxLevel++;\r\n\t\t\t\t\t\t$(pointer).append(tab);\r\n\t\t\t\t\t\tpointer = $('#subtab_' + labelTabs[i]);\r\n\t\t\t\t\t\tcontinue;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t//Comprobamos si es subelemento\r\n\t\t\t\t\tif ($('#' + containerTab[containerTab.length - 1]).find(idTabs[i]).length === 0) {\r\n\t\t\t\t\t\t//No es subpestaña, se debe mover el puntero de dónde se deba añadir la capa\r\n\t\t\t\t\t\tpointer = $(fieldset);\r\n\t\t\t\t\t\tdo {\r\n\t\t\t\t\t\t\tcontainerTab.pop(); //Extraer contenedor de pestañas\r\n\t\t\t\t\t\t\t//Comprobar si es subelemento\r\n\t\t\t\t\t\t\tif ($('#' + containerTab[containerTab.length - 1]).find(idTabs[i]).length > 0) {\r\n\t\t\t\t\t\t\t\tpointer = $('#subtab_' + containerTab[containerTab.length - 1]);\r\n\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t//Recalcular estilo (valor del nivel)\r\n\t\t\t\t\t\t\t\t$($(tab).get(1)).removeAttr('class').addClass('rup-wizard_tabLevel-' + containerTab.length);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} while (containerTab.length > 0);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t//Añadir la capa\r\n\t\t\t\t\t$(pointer).append(tab);\r\n\t\t\t\t}\r\n\r\n\r\n\t\t\t\t// rup_table\r\n\t\t\t\t$('#step' + stepNumber + ' .rup-table-container').each(function () {\r\n\t\t\t\t\tvar $table = $(this);\r\n\r\n\t\t\t\t\t$table.fluidWidth({\r\n\t\t\t\t\t\tfluidBaseLayer: '#' + $table.parent().attr('id')\r\n\t\t\t\t\t});\r\n\r\n\t\t\t\t});\r\n\r\n\r\n\t\t\t\t//h1 a /h1 para Pesatañas\r\n\t\t\t\tif (settings.summaryTabs2Accordion) {\r\n\t\t\t\t\t$(fieldset).find('a').each(function () {\r\n\t\t\t\t\t\tif (!$(this).hasClass('rup-wizard_prev') && !$(this).hasClass('rup-wizard_next')) { //Controlar que no sea botón\r\n\t\t\t\t\t\t\t$(this).wrap('

    ');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\r\n\t\t\t\t//Eliminar contenedor\r\n\t\t\t\t$(this).remove();\r\n\t\t\t});\r\n\r\n\t\t\t//summaryWithAccordion\r\n\t\t\tif (settings.summaryWithAccordion) {\r\n\r\n\t\t\t\t//Convertir estructura\r\n\t\t\t\t$('#step' + stepNumber).find('legend').each(function (index, element) {\r\n\t\t\t\t\t//legend -> h1 a /h1\r\n\t\t\t\t\t$('')\r\n\t\t\t\t\t\t.text(element.innerHTML)\r\n\t\t\t\t\t\t.insertBefore($(element).parent())\r\n\t\t\t\t\t\t.wrap('

    ');\r\n\r\n\t\t\t\t\t//fieldset -> div\r\n\t\t\t\t\t$(element).parent().replaceWith(\r\n\t\t\t\t\t\t$('
    ')\r\n\t\t\t\t\t\t\t.attr('accordionable', $(element).parent().attr('accordionable') === undefined ? false : true)\r\n\t\t\t\t\t\t\t.append($(element).parent().children())\r\n\t\t\t\t\t);\r\n\r\n\t\t\t\t\t//remove legend\r\n\t\t\t\t\t$(element).remove();\r\n\t\t\t\t});\r\n\r\n\t\t\t\t//convertir en rup-accordion\r\n\t\t\t\tif ($.isEmptyObject(settings.summaryAccordion)) {\r\n\t\t\t\t\t$('#step' + stepNumber).rup_accordion(settings.accordion);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$('#step' + stepNumber).rup_accordion(settings.summaryAccordion);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t//Botón anterior (sacar de accordion)\r\n\t\t\t\t$('
    ')\r\n\t\t\t\t\t.attr('id', 'commands_fieldset').addClass('commands-fieldset')\r\n\t\t\t\t\t.append($('#step' + stepNumber).find('p[id=\\'step' + (stepNumber) + 'commands\\']'))\r\n\t\t\t\t\t.appendTo($('#step' + stepNumber));\r\n\r\n\t\t\t\t//Espacio para separarlo de los pasos\r\n\t\t\t\tif (settings.summaryWithAccordionSpaceBefore) {\r\n\t\t\t\t\t$('#step' + stepNumber).prepend('
    ');\r\n\t\t\t\t}\r\n\t\t\t\t//Espacio para separarlo de los botones\r\n\t\t\t\tif (settings.summaryWithAccordionSpaceAfter) {\r\n\t\t\t\t\t$('#commands_fieldset').prepend('
    ');\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t//tabs2Accordion\r\n\t\t\tif (settings.summaryTabs2Accordion) {\r\n\t\t\t\t//Eliminar estilos para no accordion\r\n\t\t\t\tfor (var i = 0; i <= maxLevel; i++) {\r\n\t\t\t\t\t$('.rup-wizard_tabLevel-' + i).removeClass('rup-wizard_tabLevel-' + i);\r\n\t\t\t\t\t$('.rup-wizard_tabContainerLevel-' + i).removeClass('rup-wizard_tabContainerLevel-' + i);\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$('[accordionable=true]').each(function (index, element) {\r\n\t\t\t\t\tif (element.nodeName === 'FIELDSET') {\r\n\t\t\t\t\t\tvar legend = $(element).find('legend')[0],\r\n\t\t\t\t\t\t\tbuttons = $(element).find('p[id=\\'step' + (stepNumber) + 'commands\\']'),\r\n\t\t\t\t\t\t\tobject = $('
    ')\r\n\t\t\t\t\t\t\t\t.attr('accordionable', $(element).attr('accordionable') === undefined ? false : true)\r\n\t\t\t\t\t\t\t\t.append($(element).children());\r\n\r\n\t\t\t\t\t\t//Cambiar estructura\r\n\t\t\t\t\t\t$(element).replaceWith(object);\r\n\r\n\t\t\t\t\t\t//Eliminar extras (LEGEND y BOTONES)\r\n\t\t\t\t\t\t$(legend).remove();\r\n\t\t\t\t\t\t$(buttons).remove();\r\n\r\n\t\t\t\t\t\t//Accordion\r\n\t\t\t\t\t\tif ($.isEmptyObject(settings.tabAccordion)) {\r\n\t\t\t\t\t\t\t$(object).rup_accordion(settings.accordion);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$(object).rup_accordion(settings.tabAccordion);\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t//Restablecer extras (LEGEND y BOTONES)\r\n\t\t\t\t\t\t$(object).prepend(legend);\r\n\t\t\t\t\t\t$(object).append($('
    ').append(buttons));\r\n\t\t\t\t\t} else {\r\n\t\t\t\t\t\tif ($.isEmptyObject(settings.tabAccordion)) {\r\n\t\t\t\t\t\t\t$(element).rup_accordion(settings.accordion);\r\n\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t$(element).rup_accordion(settings.tabAccordion);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t//Eliminar posibles atributos y estilos extra\r\n\t\t\t$('[accordionable]').removeAttr('accordionable');\r\n\r\n\t\t\t//Mover botón submit\r\n\t\t\t$('#step' + stepNumber).find('p[id$=\\'commands\\']').append($('.rup-wizard_submitButton'));\r\n\r\n\t\t\t//Mostrar paso\r\n\t\t\t$('#step' + stepNumber).show();\r\n\r\n\t\t\t/** DEVELOPER SummaryFnc_POST **/\r\n\t\t\tif (settings.summaryFnc_POST) {\r\n\t\t\t\tsettings.summaryFnc_POST.call();\r\n\t\t\t}\r\n\r\n\t\t},\r\n\t\t_getRupTabs: function (rupWizard, object, labelTabs, idTabs) {\r\n\t\t\t//Recorrer los enlaces a pestañas\r\n\t\t\t$(object).find('.rup-tabs_title').each(function (index, element) {\r\n\t\t\t\t//Comprobar que si el elemento ya existe (subpestaña) por recursividad, se omite\r\n\t\t\t\tif ($.inArray(element.innerHTML, labelTabs) !== -1) {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t//Obtener ID y LABEL\r\n\t\t\t\tidTabs.push($(element).parent().attr('href'));\r\n\t\t\t\tlabelTabs.push(element.innerHTML);\r\n\r\n\t\t\t\t//Es un contenedor de pestañas (llamada recursiva para pre-procesar los hijos)\r\n\t\t\t\tif (idTabs[idTabs.length - 1].substring(1) === labelTabs[labelTabs.length - 1]) {\r\n\t\t\t\t\trupWizard._getRupTabs(rupWizard, $('#' + labelTabs[labelTabs.length - 1]), labelTabs, idTabs);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t},\r\n\t\t_hidePassword: function (password) {\r\n\t\t\tvar value = '';\r\n\t\t\tfor (var i = 0; i < password.length; i++) {\r\n\t\t\t\tvalue += '*';\r\n\t\t\t}\r\n\t\t\treturn value;\r\n\t\t},\r\n\t\t/* Created by jankoatwarpspeed.com */ //http://www.jankoatwarpspeed.com/post/2009/09/28/webform-wizard-jquery.aspx\r\n\t\t//Modificaciones:\r\n\t\t//\t- SPAN por A en los pasos para poder navegar con el tabulador\r\n\r\n\t\t_formToWizard: function (options) {\r\n\t\t\toptions = $.extend({\r\n\t\t\t\tsubmitButton: ''\r\n\t\t\t}, options);\r\n\r\n\t\t\tvar element = this;\r\n\r\n\t\t\tvar steps = $(element).find('fieldset');\r\n\t\t\tvar count = steps.size();\r\n\t\t\tvar submmitButtonName = '#' + options.submitButton;\r\n\t\t\t$(submmitButtonName).hide();\r\n\r\n\t\t\t// 2\r\n\t\t\t$(element).before('
      ');\r\n\r\n\t\t\tsteps.each(function (i) {\r\n\t\t\t\t$(this).wrap('
      ');\r\n\t\t\t\t$(this).append('

      ');\r\n\r\n\t\t\t\t// 2\r\n\t\t\t\tvar name = $(this).find('legend').html();\r\n\t\t\t\t$('#steps').append('
    • Step ' + (i + 1) + '' + name + '
    • ');\r\n\r\n\t\t\t\tif (i == 0) {\r\n\t\t\t\t\tcreateNextButton(i);\r\n\t\t\t\t\tselectStep(i);\r\n\t\t\t\t} else if (i == count - 1) {\r\n\t\t\t\t\t$('#step' + i).hide();\r\n\t\t\t\t\tcreatePrevButton(i);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t$('#step' + i).hide();\r\n\t\t\t\t\tcreatePrevButton(i);\r\n\t\t\t\t\tcreateNextButton(i);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\t\tfunction createPrevButton(i) {\r\n\t\t\t\tvar stepName = 'step' + i;\r\n\t\t\t\t$('#' + stepName + 'commands').append('< Back');\r\n\r\n\t\t\t\t$('#' + stepName + 'Prev').bind('click', function (e) {\r\n\t\t\t\t\t$('#' + stepName).hide();\r\n\t\t\t\t\t$('#step' + (i - 1)).show();\r\n\t\t\t\t\t$(submmitButtonName).hide();\r\n\t\t\t\t\tselectStep(i - 1);\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tfunction createNextButton(i) {\r\n\t\t\t\tvar stepName = 'step' + i;\r\n\t\t\t\t$('#' + stepName + 'commands').append('Next >');\r\n\r\n\t\t\t\t$('#' + stepName + 'Next').bind('click', function (e) {\r\n\t\t\t\t\t$('#' + stepName).hide();\r\n\t\t\t\t\t$('#step' + (i + 1)).show();\r\n\t\t\t\t\tif (i + 2 == count)\r\n\t\t\t\t\t\t$(submmitButtonName).show();\r\n\t\t\t\t\tselectStep(i + 1);\r\n\t\t\t\t\te.preventDefault();\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\tfunction selectStep(i) {\r\n\t\t\t\t$('#steps li').removeClass('current');\r\n\t\t\t\t$('#stepDesc' + i).addClass('current');\r\n\t\t\t}\r\n\r\n\t\t}\r\n\t});\r\n\r\n\t//******************************************************\r\n\t// DEFINICIÓN DE LA CONFIGURACION POR DEFECTO DEL PATRON\r\n\t//******************************************************\r\n\t$.fn.rup_wizard.defaults = {\r\n\t\tsummary: true,\r\n\t\tsummaryWithAccordion: false,\r\n\t\tsummaryWithAccordionSpaceBefore: true,\r\n\t\tsummaryWithAccordionSpaceAfter: true,\r\n\t\tsummaryTabs2Accordion: false,\r\n\t\tstepFnc: {}, //funciones de cada paso\r\n\t\taccordion: {\r\n\t\t\tanimated: 'bounceslide',\r\n\t\t\tactive: false,\r\n\t\t\tautoHeight: false,\r\n\t\t\tcollapsible: true,\r\n\t\t\theightStyle: 'content'\r\n\t\t},\r\n\t\trupAccordion: {}, //accordion (config) definidos en el formulario\r\n\t\tsummaryAccordion: {\r\n\r\n\t\t}, //accordion (config) para generar resumen\r\n\t\ttabAccordion: {}, //accorion (config) para pestañas del resumen\r\n\t\trupTabsElement: '

      ',\r\n\t\tlabelElement: '',\r\n\t\tlabelSeparatorElement: '',\r\n\t\tlabelSeparatorText: '   ',\r\n\t\ttextareaElement: '

      '\r\n\t};\r\n\r\n\t/**\r\n * Función de callback que se ejecuta previamente al envío del formulario.\r\n *\r\n * @callback module:rup_wizard~onSubmitFnc\r\n * @example\r\n * $(\"#idForm\").rup_wizard({\r\n * submitFnc: function(){\r\n * }\r\n * });\r\n */\r\n\r\n\t/**\r\n * Función de callback que se invocará previamente a la generación del paso.\r\n *\r\n * @callback module:rup_wizard~onSummaryFnc_PRE\r\n * @return {boolean} - En caso de devolver false no se generaría el resumen.\r\n * @example\r\n * $(\"#idForm\").rup_wizard({\r\n * summaryFnc_PRE: function(){\r\n * }\r\n * });\r\n */\r\n\r\n\t/**\r\n * Función de callback que se ejecuta una vez ha comenzado la generación del paso resumen.\r\n *\r\n * @callback module:rup_wizard~onSummaryFnc_INTER\r\n * @return {boolean} - En caso de devolver false no se continuaría con el procesado del contenido de los pasos\r\n * @example\r\n * $(\"#idForm\").rup_wizard({\r\n * summaryFnc_INTER: function(){\r\n * }\r\n * });\r\n */\r\n\r\n\t/**\r\n * Función de callback que se invocará una vez se ha generado el paso resumen.\r\n *\r\n * @callback module:rup_wizard~onSummaryFnc_POST\r\n * @example\r\n * $(\"#idForm\").rup_wizard({\r\n * summaryFnc_POST: function(){\r\n * }\r\n * });\r\n */\r\n\r\n\t/**\r\n * @description Propiedades de configuración del componente.\r\n *\r\n * @name options\r\n *\r\n * @property {Selector} submitButton - Identificador del botón de envío del formulario. Sirve para que dicho botón solo se muestre en el último paso del asistente.\r\n * @property {module:rup_validate~onSubmitFnc} [submitFnc] - Función que se ejecuta previamente al envío del formulario.\r\n * @property {boolean} [summary=true] - Indica si se debe generar o no el paso resumen. Este paso mostrará (como texto plano) los valores seleccionados en los diferentes pasos habilitados. Si un paso se encuentra deshabilitado no se utilizarán sus valores para la generación del resumen. El paso de resumen se genera cuando se navega hacia él.\r\n * @property {boolean} [summaryWithAccordion=false] - Indica si el paso resumen debe formatear los diferentes pasos del asistente mediante elementos que usan el componente accordion.\r\n * @property {boolean} [summaryWithAccordionSpaceBefore=true] - Indica si cuando se genera un resumen con los diferentes pasos presentados con accordion, se debe dejar un espacio (
      ) entre el contenido y la barra con los pasos.\r\n * @property {boolean} [summaryWithAccordionSpaceAfter=true] - Indica si cuando se genera un resumen con los diferentes pasos presentados con accordion, se debe dejar un espacio (
      ) entre el contenido y el contenedor de botones (siguiente y enviar).\r\n * @property {boolean} [summaryTabs2Accordion=false] - Indica si los componentes rup_tab de los diferentes pasos del wizard se deben convertir en elementos del componente accordion a la hora de generar el paso resumen.\r\n * @property {module:rup_wizard~onSummaryFnc_PRE} [summaryFnc_PRE] - Función que se invocará previamente a la generación del paso resumen. En caso de devolver false no se generaría el resumen.\r\n * @property {module:rup_wizard~onSummaryFnc_INTER} [summaryFnc_INTER] -Función que se ejecuta una vez ha comenzado la generación del paso resumen. Se habrá generado la capa contenedora y duplicado el contenido de los pasos anteriores pero sin llegar a procesarse (cambiarse por texto plano). En caso de devolver false no se continuaría con el procesado del contenido de los pasos.\r\n * @property {module:rup_wizard~onSummaryFnc_POST} [summaryFnc_POST] - Función que se ejecuta una vez se ha generado el paso resumen.\r\n * @property {object} [stepFnc] - Objeto json que contiene las diferentes funciones a ejecutar al navegar hacia cada uno de los pasos. En caso de devolver false no se continuaría la navegación hacia dicho paso. La clave de cada elemento será el número del paso y el valor será la función a ejecutar.\r\n * @property {Integer[]} [disabled] - Array que indica los pasos a deshabilitar al inicio. En caso de que el elemento del array sea un número (numeric) se deshabilitará dicho paso y en caso de que sea un literal (string) se procesará como un intervalo que deberá definirse como “X-Y”.\r\n * @property {object} [accordion] - Define de forma general el funcionamiento del componente rup_accordion en el paso de resumen.\r\n * @property {object} [rupAccordion] - Define el funcionamiento del patrón rup_accordion en el resumen (de los objetos rup_accordion existentes en los pasos anteriores). No tiene valor por defecto, por lo que en caso de no definirse se toma el valor del parámetro accordion.\r\n * @property {object} [summaryAccordion] - Define el funcionamiento del patrón rup_accordion en el resumen para cada uno de los pasos que lo componen (si configura la generación de resumen y conversión de pasos en accordion). No tiene valor por defecto, por lo que en caso de no definirse se toma el valor del parámetro accordion.\r\n * @property {object} [tabAccordion] - Define el funcionamiento del patrón rup_accordion en el resumen, para cada los objetos rup_tab existentes en los pasos anteriores (si configura la generación de resumen y conversión de pestañas en accordion). No tiene valor por defecto, por lo que en caso de no definirse se toma el valor del parámetro accordion.\r\n * @property {string} [rupTabsElement=

      ] - Define el funcionamiento del patrón rup_accordion en el resumen, para cada los objetos rup_tab existentes en los pasos anteriores (si configura la generación de resumen y conversión de pestañas en accordion). No tiene valor por defecto, por lo que en caso de no definirse se toma el valor del parámetro accordion.\r\n * @property {string} [labelElement=] - Indica el tipo de objeto HTML en el que se convierten los objetos label en el paso de resumen.\r\n * @property {string} [labelSeparatorElement=] - Indica el tipo de objeto HTML que se utilizará para separar los valores de sus correspondientes labels en el paso de resumen.\r\n * @property {string} [labelSeparatorText=   ] - Indica el contenido del objeto HTML que se utilizará para separar los valores de sus correspondientes labels en el paso de resumen.\r\n * @property {string} [textareaElement=

      ] - Indica el tipo de objeto HTML en el que se convierten los objetos textarea en el paso de resumen.\r\n */\r\n\r\n}));\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/rup.wizard.js","module.exports = global[\"$\"] = require(\"-!./jquery.js\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/expose-loader?$!./~/jquery/dist/jquery.js\n// module id = 169\n// module chunks = 0","module.exports = global[\"jQuery\"] = require(\"-!./jquery.js\");\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/expose-loader?jQuery!./~/jquery/dist/jquery.js\n// module id = 170\n// module chunks = 0","\r\n/*global jQuery */\r\n/*global define */\r\n\r\n( function(root, factory ) {\r\n\tif ( typeof define === 'function' && define.amd ) {\r\n\r\n\t\t// AMD. Register as an anonymous module.\r\n\t\tdefine( ['jquery', '../templates'], factory );\r\n\t} else {\r\n\r\n\t\t// Browser globals\r\n\t\troot.ButtonBootstrapAdapter = factory( jQuery );\r\n\t}\r\n} (this, function( $, Rup ) {\r\n\r\n\tfunction ButtonBootstrapAdapter(){\r\n\r\n\t}\r\n\r\n\tButtonBootstrapAdapter.prototype.NAME = 'button_bootstrap';\r\n\r\n\tButtonBootstrapAdapter.prototype.createDropdownButton = function (settings) {\r\n\t\tvar $self = this, dropdownSettings = settings.dropdown;\r\n\r\n\t\treturn $(Rup.Templates.rup.button.dropdownButton({\r\n\t\t\tid: $self.prop('id')+'_dropdown'\r\n\t\t}));\r\n\t};\r\n\r\n\tButtonBootstrapAdapter.prototype.createMButton = function (settings, label) {\r\n\t\tvar $self = this, dropdownSettings = settings.dropdown;\r\n\r\n\t\treturn $(Rup.Templates.rup.button.mbutton({\r\n\t\t\tid: $self.prop('id'),\r\n\t\t\tclasses: 'rup-toolbar_menuButton ui-button ui-corner-all ui-widget rup-toolbar_menuButtonSlided',\r\n\t\t\tlabel: label,\r\n\t\t\ticonClasses: 'ui-button-icon ui-icon rup-toolbar_menuButtonIcon'\r\n\t\t}));\r\n\t};\r\n\r\n\tButtonBootstrapAdapter.prototype.createMButtonContainer = function (settings, label) {\r\n\t\tvar $self = this, dropdownSettings = settings.dropdown;\r\n\r\n\t\treturn $(Rup.Templates.rup.button.mbutton-container({\r\n\t\t\tid: $self.prop('id')+'-container',\r\n\t\t\tclasses: 'ui-widget ui-widget-content rup-toolbar_menuButtonContainer',\r\n\t\t\tlabel: label,\r\n\t\t\ticonClasses: 'ui-button-icon ui-icon rup-toolbar_menuButtonIcon'\r\n\t\t}));\r\n\t};\r\n\r\n\t$.rup = $.rup || {};\r\n\t$.rup.adapter = $.rup.adapter || {};\r\n\r\n\t$.rup.adapter[ButtonBootstrapAdapter.prototype.NAME ] = new ButtonBootstrapAdapter;\r\n\r\n\treturn $;\r\n}));\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/adapter/ButtonBootstrapAdapter.js","/*global jQuery */\r\n/*global define */\r\n\r\n( function(root, factory ) {\r\n\tif ( typeof define === 'function' && define.amd ) {\r\n\r\n\t\t// AMD. Register as an anonymous module.\r\n\t\tdefine( ['jquery','../rup.base'], factory );\r\n\t} else {\r\n\r\n\t\t// Browser globals\r\n\t\troot.ButtonJQueryUIAdapter = factory( jQuery );\r\n\t}\r\n} (this, function( $ ) {\r\n\r\n\tfunction ButtonJQueryUIAdapter(){\r\n\r\n\t}\r\n\r\n\tButtonJQueryUIAdapter.prototype.NAME = 'button_jqueryui';\r\n\r\n\tButtonJQueryUIAdapter.prototype.createDropdownButton = function (settings) {\r\n\r\n\t\tvar $self = this, dropdownSettings = settings.dropdown;\r\n\t\treturn jQuery('

      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      '\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t) +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'');\r\n\r\n\t\t\trow.find('.size').text(file.sizef);\r\n\t\t\trow.find('.type').text(file.type);\r\n\t\t\tif (file.error) {\r\n\t\t\t\trow.find('.name').text(file.name);\r\n\t\t\t\trow.addClass('ui-state-error');\r\n\t\t\t\trow.find('.error').text(\r\n\t\t\t\t\toptions.errorMessages[file.error] || file.error\r\n\t\t\t\t);\r\n\t\t\t} else {\r\n\t\t\t\trow.find('.name a').text(file.name);\r\n\t\t\t\tif (file.thumbnail_url) {\r\n\t\t\t\t\trow.find('.preview').append('')\r\n\t\t\t\t\t\t.find('img').prop('src', file.thumbnail_url);\r\n\t\t\t\t\trow.find('a').prop('target', '_blank');\r\n\t\t\t\t}\r\n\t\t\t\trow.find('a').prop('href', $.rup_utils.setNoPortalParam(file.url));\r\n\t\t\t\trow.find('.delete button')\r\n\t\t\t\t\t.attr('data-type', file.delete_type)\r\n\t\t\t\t\t.attr('data-url', $.rup_utils.setNoPortalParam(file.delete_url));\r\n\t\t\t}\r\n\t\t\trows = rows.add(row);\r\n\t\t});\r\n\t\treturn rows;\r\n\t};\r\n\r\n\r\n\tUploadJQueryUIAdapter.prototype.uploadTemplate = function(o) {\r\n\t\tvar that = this,\r\n\t\t\trows = $(),\r\n\t\t\tfiles = o.files,\r\n\t\t\toptions = o.options;\r\n\r\n\t\t// var settings = $.data(this.element[0], \"settings\");\r\n\r\n\r\n\t\t$.each(files, function (index, file) {\r\n\t\t\t// file = that._uploadTemplateHelper(file);\r\n\t\t\tvar row = $(\r\n\t\t\t\t'' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t' ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(options.submitInForm ?\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      '\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t: '') +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(!options.submitInForm ?\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(file.error ?\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      '\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t:\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      '\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t) +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'' +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'
      ':'
      ') +\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t'');\r\n\t\t\trow.find('.name b').text(file.name);\r\n\t\t\trow.find('.size').text(file.sizef);\r\n\t\t\trow.find('.type').text(file.type);\r\n\t\t\tif (file.error) {\r\n\t\t\t\trow.addClass('ui-state-error');\r\n\t\t\t\trow.find('.error').text(\r\n\t\t\t\t\toptions.errorMessages[file.error] || file.error\r\n\t\t\t\t);\r\n\t\t\t}\r\n\r\n\t\t\trows = rows.add(row);\r\n\t\t});\r\n\t\treturn rows;\r\n\t};\r\n\r\n\t$.rup = $.rup || {};\r\n\t$.rup.adapter = $.rup.adapter || {};\r\n\r\n\t$.rup.adapter[UploadJQueryUIAdapter.prototype.NAME ] = new UploadJQueryUIAdapter;\r\n\r\n\treturn $;\r\n}));\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/adapter/UploadJQueryUIAdapter.js","/*global jQuery */\r\n/*global define */\r\n\r\n(function (root, factory) {\r\n\tif (typeof define === 'function' && define.amd) {\r\n\r\n\t\t// AMD. Register as an anonymous module.\r\n\t\tdefine(['jquery', '../rup.base', '../templates'], factory);\r\n\t} else {\r\n\r\n\t\t// Browser globals\r\n\t\troot.ValidateBootstrapAdapter = factory(jQuery);\r\n\t}\r\n}(this, function ($) {\r\n\r\n\tfunction ValidateBootstrapAdapter() {\r\n\r\n\t}\r\n\r\n\tValidateBootstrapAdapter.prototype.NAME = 'validate_bootstrap';\r\n\r\n\tValidateBootstrapAdapter.prototype.forNameElement = function (fieldTmp, labelForName) {\r\n\t\tif (fieldTmp.parent().hasClass('rup-validate-field-error')) {\r\n\t\t\treturn fieldTmp.parent().parent().find('label[for=\\'' + labelForName + '\\']');\r\n\t\t} else {\r\n\t\t\treturn fieldTmp.parent().find('label[for=\\'' + labelForName + '\\']');\r\n\t\t}\r\n\t};\r\n\r\n\tValidateBootstrapAdapter.prototype.forIdElement = function (fieldTmp, labelForId) {\r\n\t\tif (fieldTmp.parent().hasClass('rup-validate-field-error')) {\r\n\t\t\treturn fieldTmp.parent().parent().find('label[for=\\'' + labelForId + '\\']');\r\n\t\t} else {\r\n\t\t\treturn fieldTmp.parent().find('label[for=\\'' + labelForId + '\\']');\r\n\t\t}\r\n\t};\r\n\r\n\tValidateBootstrapAdapter.prototype.highlight = function (element, errorClass) {\r\n\t\tclearValidation(element);\r\n\t\t$(element).addClass('error');\r\n\t};\r\n\r\n\tValidateBootstrapAdapter.prototype.unhighlight = function (element) {\r\n\t\tclearValidation(element);\r\n\t\t$(element).removeClass('error');\r\n\t};\r\n\r\n\tfunction clearValidation(element) {\r\n\t\tif ($(element).parent().hasClass('rup-validate-field-error')) {\r\n\t\t\t$(element).parent().find('.rup-validate-error-icon').remove();\r\n\t\t\t$(element).unwrap();\r\n\t\t\t$(element).parent().find('div').remove();\r\n\t\t}\r\n\t}\r\n\tValidateBootstrapAdapter.prototype.errorElement = 'div';\r\n\r\n\r\n\r\n\tValidateBootstrapAdapter.prototype.errorPlacement = function (error, element) {\r\n\r\n\t\t//limpiar errores previos\r\n\t\t/* if (element.parent().hasClass(\"\")) {\r\n element.parent().find(\".rup-validate-error-icon\").remove();\r\n element.unwrap();\r\n }*/\r\n\r\n\t\t// var errorElem = error.attr(\"src\",this.errorImage).addClass(\"rup-maint_validateIcon\").html('').rup_tooltip({\"applyToPortal\": true});\r\n\t\t//\r\n\t\t// if (element.attr(\"ruptype\")==='combo'){\r\n\t\t// var comboElem = $(\"#\"+element.attr(\"id\")+\"-button\");\r\n\t\t// if (comboElem){\r\n\t\t// errorElem.insertAfter(comboElem);\r\n\t\t// }\r\n\t\t// }else{\r\n\t\t// var $inputGroup = $(\"
      \").addClass(\"form-input-group\");\r\n\t\t// var $iconError = $(\"\").addClass(\"fa fa-times\");\r\n\t\t// element.wrap($inputGroup);\r\n\r\n\t\tvar name = element.prop('name'),\r\n\t\t\tlabelProp = this.labels ? this.labels[name] : undefined,\r\n\t\t\t$labelContainer = $(labelProp),\r\n\t\t\ticonProp = this.icons ? this.icons[name] : undefined,\r\n\t\t\t$iconContainer = $(iconProp),\r\n\t\t\t$icon = $('').addClass('rup-validate-error-icon error fa fa-times').attr('aria-hidden', 'true');\r\n\r\n\r\n\t\t// Posicionamiento del label\r\n\t\tif ($labelContainer.length > 0) {\r\n\t\t\t$labelContainer.append(error);\r\n\t\t} else {\r\n\t\t\terror.insertAfter(element);\r\n\t\t}\r\n\r\n\t\t// Posicionamiento del icon\r\n\t\tif ($iconContainer.length > 0) {\r\n\t\t\t$iconContainer.append($icon);\r\n\t\t} else {\r\n\t\t\tif (!element.parent().hasClass('rup-validate-field-error')) {\r\n\t\t\t\telement.wrap($('
      ').addClass('rup-validate-field-error'));\r\n\t\t\t\t$icon.insertAfter(element);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\r\n\r\n\r\n\t\t// $iconError.insertAfter(element);\r\n\r\n\r\n\r\n\r\n\r\n\t\t// }\r\n\t};\r\n\r\n\tValidateBootstrapAdapter.prototype.showLabel = function (element, message) {\r\n\r\n\t\tvar label = this.errorsFor(element),\r\n\t\t\tsettings = $(this.currentForm).data('settings');\r\n\t\tif (label.length) {\r\n\t\t\t// refresh error/success class\r\n\t\t\tlabel.removeClass(this.settings.validClass).addClass(this.settings.errorClass);\r\n\r\n\t\t\t// check if we have a generated label, replace the message then\r\n\t\t\tlabel.attr('generated') && label.html(message);\r\n\t\t} else {\r\n\t\t\t// create label\r\n\t\t\tif (this.settings.showFieldErrorAsDefault) {\r\n\t\t\t\tlabel = $('<' + this.settings.errorElement + '/>')\r\n\t\t\t\t\t.attr({\r\n\t\t\t\t\t\t'for': this.idOrName(element),\r\n\t\t\t\t\t\tgenerated: true\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.addClass(this.settings.errorClass)\r\n\t\t\t\t\t.html(message || '');\r\n\t\t\t} else {\r\n\t\t\t\tlabel = $('<' + this.settings.errorElement + '/>')\r\n\t\t\t\t\t.attr({\r\n\t\t\t\t\t\t'for': this.idOrName(element),\r\n\t\t\t\t\t\tgenerated: true\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.addClass(this.settings.errorClass)\r\n\t\t\t\t\t.html(message || '');\r\n\t\t\t}\r\n\t\t\tif (this.settings.wrapper) {\r\n\t\t\t\t// make sure the element is visible, even in IE\r\n\t\t\t\t// actually showing the wrapped element is handled elsewhere\r\n\t\t\t\tlabel = label.hide().show().wrap('<' + this.settings.wrapper + '/>').parent();\r\n\t\t\t}\r\n\t\t\tif (!this.labelContainer.append(label).length)\r\n\t\t\t\tthis.settings.errorPlacement ?\r\n\t\t\t\t\tthis.settings.errorPlacement(label, $(element)) :\r\n\t\t\t\t\tlabel.insertAfter(element);\r\n\t\t}\r\n\t\tif (!message && settings.success) {\r\n\t\t\tlabel.text('');\r\n\t\t\ttypeof this.settings.success == 'string' ?\r\n\t\t\t\tlabel.addClass(this.settings.success) :\r\n\t\t\t\tthis.settings.success(label);\r\n\t\t}\r\n\t\tthis.toShow = this.toShow.add(label);\r\n\t};\r\n\r\n\t$.rup = $.rup || {};\r\n\t$.rup.adapter = $.rup.adapter || {};\r\n\r\n\t$.rup.adapter[ValidateBootstrapAdapter.prototype.NAME ] = new ValidateBootstrapAdapter;\r\n\r\n\treturn $;\r\n}));\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/adapter/ValidateBootstrapAdapter.js","/*global jQuery */\r\n/*global define */\r\n\r\n(function (root, factory) {\r\n\tif (typeof define === 'function' && define.amd) {\r\n\r\n\t\t// AMD. Register as an anonymous module.\r\n\t\tdefine(['jquery', '../rup.base', '../templates'], factory);\r\n\t} else {\r\n\r\n\t\t// Browser globals\r\n\t\troot.ValidateJQueryUIAdapter = factory(jQuery);\r\n\t}\r\n}(this, function ($) {\r\n\r\n\tfunction ValidateJQueryUIAdapter() {\r\n\r\n\t}\r\n\r\n\tValidateJQueryUIAdapter.prototype.NAME = 'validate_jqueryui';\r\n\r\n\tValidateJQueryUIAdapter.prototype.forNameElement = function (fieldTmp, labelForName) {\r\n\t\treturn fieldTmp.parent().find('label[for=\\'' + labelForName + '\\']');\r\n\t};\r\n\r\n\tValidateJQueryUIAdapter.prototype.forIdElement = function (fieldTmp, labelForId) {\r\n\t\treturn fieldTmp.parent().find('label[for=\\'' + labelForId + '\\']');\r\n\t};\r\n\r\n\r\n\tValidateJQueryUIAdapter.prototype.highlight = function (element, errorClass) {\r\n\t\t$(element).addClass('error');\r\n\t};\r\n\tValidateJQueryUIAdapter.prototype.unhighlight = function (element, errorClass) {\r\n\t\t$(element).removeClass('error');\r\n\t};\r\n\r\n\r\n\tValidateJQueryUIAdapter.prototype.errorElement = 'img';\r\n\r\n\tValidateJQueryUIAdapter.prototype.errorPlacement = function (error, element) {\r\n\t\tvar errorElem = error.attr('src', this.errorImage).addClass('rup-maint_validateIcon').html('').rup_tooltip({\r\n\t\t\t'applyToPortal': true\r\n\t\t});\r\n\r\n\t\tif (element.attr('ruptype') === 'combo') {\r\n\t\t\tvar comboElem = $('#' + element.attr('id') + '-button');\r\n\t\t\tif (comboElem) {\r\n\t\t\t\terrorElem.insertAfter(comboElem);\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\terrorElem.insertAfter(element);\r\n\t\t}\r\n\t};\r\n\r\n\tValidateJQueryUIAdapter.prototype.showLabel = function (element, message) {\r\n\r\n\t\tvar label = this.errorsFor(element),\r\n\t\t\tsettings = $(this.currentForm).data('settings');\r\n\t\tif (label.length) {\r\n\t\t\t// refresh error/success class\r\n\t\t\tlabel.removeClass(this.settings.validClass).addClass(this.settings.errorClass);\r\n\r\n\t\t\t// check if we have a generated label, replace the message then\r\n\t\t\tlabel.attr('generated') && label.html(message);\r\n\t\t} else {\r\n\t\t\t// create label\r\n\t\t\tif (settings.showFieldErrorAsDefault) {\r\n\t\t\t\tlabel = $('<' + this.settings.errorElement + '/>')\r\n\t\t\t\t\t.attr({\r\n\t\t\t\t\t\t'for': this.idOrName(element),\r\n\t\t\t\t\t\tgenerated: true\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.addClass(this.settings.errorClass)\r\n\t\t\t\t\t.attr('title', message || '');\r\n\t\t\t} else {\r\n\t\t\t\tlabel = $('<' + this.settings.errorElement + '/>')\r\n\t\t\t\t\t.attr({\r\n\t\t\t\t\t\t'for': this.idOrName(element),\r\n\t\t\t\t\t\tgenerated: true\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.addClass(this.settings.errorClass)\r\n\t\t\t\t\t.html(message || '');\r\n\t\t\t}\r\n\t\t\tif (this.settings.wrapper) {\r\n\t\t\t\t// make sure the element is visible, even in IE\r\n\t\t\t\t// actually showing the wrapped element is handled elsewhere\r\n\t\t\t\tlabel = label.hide().show().wrap('<' + this.settings.wrapper + '/>').parent();\r\n\t\t\t}\r\n\t\t\tif (!this.labelContainer.append(label).length)\r\n\t\t\t\tthis.settings.errorPlacement ?\r\n\t\t\t\t\tthis.settings.errorPlacement(label, $(element)) :\r\n\t\t\t\t\tlabel.insertAfter(element);\r\n\t\t}\r\n\t\tif (!message && this.settings.success) {\r\n\t\t\tlabel.text('');\r\n\t\t\ttypeof this.settings.success == 'string' ?\r\n\t\t\t\tlabel.addClass(this.settings.success) :\r\n\t\t\t\tthis.settings.success(label);\r\n\t\t}\r\n\t\tthis.toShow = this.toShow.add(label);\r\n\t};\r\n\r\n\r\n\t$.rup = $.rup || {};\r\n\t$.rup.adapter = $.rup.adapter || {};\r\n\r\n\t$.rup.adapter[ValidateJQueryUIAdapter.prototype.NAME ] = new ValidateJQueryUIAdapter;\r\n\r\n\treturn $;\r\n}));\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/adapter/ValidateJQueryUIAdapter.js","/*global jQuery */\r\n/*global define */\r\n\r\n(function (factory) {\r\n\tif (typeof define === 'function' && define.amd) {\r\n\r\n\t\t// AMD. Register as an anonymous module.\r\n\t\tdefine(['jquery',\r\n\t\t\t'./DateBootstrapAdapter',\r\n\t\t\t'./TimeJQueryUIAdapter',\r\n\t\t\t'./TimeBootstrapAdapter',\r\n\t\t\t'./UploadJQueryUIAdapter',\r\n\t\t\t'./UploadBootstrapAdapter',\r\n\t\t\t'./ButtonJQueryUIAdapter',\r\n\t\t\t'./ButtonBootstrapAdapter',\r\n\t\t\t'./ToolbarJQueryUIAdapter',\r\n\t\t\t'./ToolbarBootstrapAdapter',\r\n\t\t\t'./TableJQueryUIAdapter',\r\n\t\t\t'./TableBootstrapAdapter',\r\n\t\t\t'./ValidateJQueryUIAdapter',\r\n\t\t\t'./ValidateBootstrapAdapter',\r\n\t\t\t'./FeedbackJQueryUIAdapter',\r\n\t\t\t'./FeedbackBootstrapAdapter'\r\n\t\t], factory);\r\n\t} else {\r\n\r\n\t\t// Browser globals\r\n\t\tfactory(jQuery);\r\n\t}\r\n}(function ($, Templates,\r\n\tDateBootstrapAdapter,\r\n\tTimeJQueryUIAdapter,\r\n\tTimeBootstrapAdapter,\r\n\tUploadJQueryUIAdapter,\r\n\tUploadBootstrapAdapter,\r\n\tButtonJQueryUIAdapter,\r\n\tButtonBootstrapAdapter,\r\n\tToolbarJQueryUIAdapter,\r\n\tToolbarBootstrapAdapter,\r\n\tTableJQueryUIAdapter,\r\n\tTableBootstrapAdapter,\r\n\tValidateJQueryUIAdapter,\r\n\tValidateBootstrapAdapter,\r\n\tFeedbackJQueryUIAdapter,\r\n\tFeedbackBootstrapAdapter\r\n) {\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\treturn $;\r\n\r\n\r\n}));\r\n\n\n\n// WEBPACK FOOTER //\n// ./src/adapter/rup.adapter.js","/*\r\n * MultiDatesPicker v1.4.0\r\n * http://multidatespickr.sourceforge.net/\r\n *\r\n * Copyright 2010, Luca Lauretta\r\n * Dual licensed under the MIT or GPL Version 2 licenses.\r\n */\r\n(function( $ ){\r\n\t$.fn.multiDatesPicker = function(method) {\r\n\t\tvar mdp_arguments = arguments;\r\n\t\tvar ret = this;\r\n\t\tvar today_date = new Date();\r\n\t\tvar day_zero = new Date(0);\r\n\t\tvar mdp_events = {};\r\n\t\t\r\n\t\tfunction datesArraySwitch(type){ return type == 'avoided' ? 'avoidedDates' : 'selectedDates'; };\r\n\t\tfunction removeDate(index, type) { this.multiDatesPicker[datesArraySwitch(type)].splice(index, 1); }\r\n\t\tfunction addDate(date, type) {\r\n\t\t\tif (methods.gotDate.call(this, date, type) === false) {\r\n\t\t\t\tvar darr = datesArraySwitch(type);\r\n\t\t\t\tthis.multiDatesPicker[darr].push(dateConvert(date, 'object'));\r\n\t\t\t\tthis.multiDatesPicker[darr].sort(methods.compareDates);\r\n\t\t\t} \r\n\t\t}\r\n\t\tfunction dateConvert(date, desired_type) {\r\n\t\t\treturn methods.dateConvert(date, desired_type);\r\n\t\t}\r\n\t\t\r\n\t\tvar methods = {\r\n\t\t\tinit : function( options ) {\r\n\t\t\t\t$this = $(this);\r\n\t\t\t\tthis.multiDatesPicker.changed = false;\r\n\t\t\t\t\r\n\t\t\t\tif(options) {\r\n\t\t\t\t\tthis.multiDatesPicker.originalBeforeShow = options.beforeShow;\r\n\t\t\t\t\tthis.multiDatesPicker.originalOnSelect = options.onSelect;\r\n\t\t\t\t\tthis.multiDatesPicker.originalBeforeShowDay = options.beforeShowDay;\r\n\t\t\t\t\tthis.multiDatesPicker.originalOnClose = options.onClose;\r\n\t\t\t\t\t\r\n\t\t\t\t\tthis.multiDatesPicker.minDate = $.datepicker._determineDate(this, options.minDate, day_zero);\r\n\t\t\t\t\tthis.multiDatesPicker.firstAvailableDay = methods.compareDates(this.multiDatesPicker.minDate, day_zero);\r\n\t\t\t\t\t\r\n\t\t\t\t\tif(options.addDates) methods.addDates.call(this, options.addDates);\r\n\t\t\t\t\tif(options.addAvoidedDates) methods.addDates.call(this, options.addAvoidedDates, 'avoided');\r\n\t\t\t\t\t\r\n\t\t\t\t\tif(options.mode) methods.setMode.call(this, options.mode);\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\t$this.datepicker(options);\r\n\t\t\t\t\r\n\t\t\t\tmdp_events = {\r\n\t\t\t\t\tbeforeShow: function(input, inst) {\r\n\t\t\t\t\t\tthis.multiDatesPicker.changed = false;\r\n\t\t\t\t\t\tif(this.multiDatesPicker.originalBeforeShow) this.multiDatesPicker.originalBeforeShow.call(this, input, inst);\r\n\t\t\t\t\t},\r\n\t\t\t\t\tonSelect : function(dateText, inst) {\r\n\t\t\t\t\t\tthis.multiDatesPicker.changed = true;\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (dateText) {\r\n\t\t\t\t\t\t\t$(this).multiDatesPicker('toggleDate', dateText);\r\n\t\t\t\t\t\t\tvar current_date = methods.dateConvert(dateText, 'object');\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tvar dates_picked = $(this).multiDatesPicker('getDates');\r\n\t\t\t\t\t\tvar datos = this.multiDatesPicker.mode.options;\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif (dates_picked.length > 0) {\r\n\t\t\t\t\t\t\tif (this.multiDatesPicker.mode.modeName == 'normal') {\r\n\t\t\t\t\t\t\t\tif (datos.pickableRange) {\r\n\t\t\t\t\t\t\t\t\tvar min_date = methods.compareDates(this.multiDatesPicker.minDate, today_date);\r\n\t\t\t\t\t\t\t\t\tvar max_date = min_date + datos.pickableRangeDelay + pickableRange;\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t// min\r\n\t\t\t\t\t\t\t\t\tvar n_min_date = methods.compareDates(dates_picked[0], min_date);\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t// max\r\n\t\t\t\t\t\t\t\t\tvar n_max_date = n_min_date + datos.pickableRange;\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t// adjust\r\n\t\t\t\t\t\t\t\t\tif (n_max_date > max_date) min_date = max_date - datos.pickableRange + 1;\r\n\t\t\t\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t\t\t\tmax_date = n_max_date;\r\n\t\t\t\t\t\t\t\t\t\tmin_date = n_min_date;\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t// counts the number of avoided dates in the range\r\n\t\t\t\t\t\t\t\t\tvar c_avoided;\r\n\t\t\t\t\t\t\t\t\tdo {\r\n\t\t\t\t\t\t\t\t\t\tc_avoided = 0;\r\n\t\t\t\t\t\t\t\t\t\tfor(var i in this.multiDatesPicker.avoidedDates) {\r\n\t\t\t\t\t\t\t\t\t\t\tif(methods.compareDates(this.multiDatesPicker.avoidedDates[i], min_date) >= 0 &&\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tmethods.compareDates(this.multiDatesPicker.avoidedDates[i], max_date) <= 0)\r\n\t\t\t\t\t\t\t\t\t\t\t\tc_avoided++;\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\tmax_date = max_date + c_avoided;\r\n\t\t\t\t\t\t\t\t\t} while(c_avoided != 0);\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t$(this).datepicker(\"option\", \"minDate\", min_date);\r\n\t\t\t\t\t\t\t\t\t$(this).datepicker(\"option\", \"maxDate\", max_date);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif(this.tagName == 'INPUT') { // for inputs\r\n\t\t\t\t\t\t\t$(this).val(\r\n\t\t\t\t\t\t\t\t$(this).multiDatesPicker('getDates', 'string')\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\tif(this.multiDatesPicker.originalOnSelect && dateText) this.multiDatesPicker.originalOnSelect.call(this, dateText, inst);\r\n\t\t\t\t\t},\r\n\t\t\t\t\tbeforeShowDay : function(date) {\r\n\t\t\t\t\t\tvar gotThisDate = $(this).multiDatesPicker('gotDate', date) !== false;\r\n\t\t\t\t\t\tvar highlight_class = gotThisDate\r\n\t\t\t\t\t\t\t? 'ui-state-highlight'\r\n\t\t\t\t\t\t\t: '';\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\tvar isAvoidedDate = $(this).multiDatesPicker('gotDate', date, 'avoided') !== false;\r\n\t\t\t\t\t\tvar allSelected = this.multiDatesPicker.mode.options.maxPicks == $(this).multiDatesPicker('getDates').length;\r\n\t\t\t\t\t\tvar selectable_date = (isAvoidedDate || (allSelected && !highlight_class))\r\n\t\t\t\t\t\t\t? false\r\n\t\t\t\t\t\t\t: true;\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\tif(this.multiDatesPicker.originalBeforeShowDay) this.multiDatesPicker.originalBeforeShowDay.call(this, date);\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\treturn [selectable_date, highlight_class];\r\n\t\t\t\t\t},\r\n\t\t\t\t\tonClose: function(dateText, inst) {\r\n\t\t\t\t\t\tif(this.tagName == 'INPUT' && this.multiDatesPicker.changed) {\r\n\t\t\t\t\t\t\t$(inst.dpDiv[0]).stop(false,true);\r\n\t\t\t\t\t\t\tsetTimeout('$(\"#'+inst.id+'\").datepicker(\"show\")',50);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif(this.multiDatesPicker.originalOnClose) this.multiDatesPicker.originalOnClose.call(this, dateText, inst);\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t\t\r\n\t\t\t\t$this.datepicker('option', mdp_events);\r\n\t\t\t},\r\n\t\t\tcompareDates : function(date1, date2) {\r\n\t\t\t\tvar i_dates = [date1, date2];\r\n\t\t\t\tvar o_dates = new Array();\r\n\t\t\t\tvar one_day = 1000*60*60*24;\r\n\t\t\t\t\r\n\t\t\t\tfor(i in i_dates) o_dates.push(dateConvert(i_dates[i], 'object'));\r\n\t\t\t\t\r\n\t\t\t\t// return > 0 means date1 is later than date2 \r\n\t\t\t\t// return == 0 means date1 is the same day as date2 \r\n\t\t\t\t// return < 0 means date1 is earlier than date2 \r\n\t\t\t\tvar diff = (o_dates[0].getTime() - o_dates[1].getTime()) / one_day;\r\n\t\t\t\treturn (-1' + desired_format;\r\n\t\t\t\tswitch(conversion) {\r\n\t\t\t\t\tcase 'object->string':\r\n\t\t\t\t\t\treturn $.datepicker.formatDate($.datepicker._defaults.dateFormat, date);\r\n\t\t\t\t\tcase 'string->object':\r\n\t\t\t\t\t\treturn $.datepicker.parseDate($.datepicker._defaults.dateFormat, date);\r\n\t\t\t\t\tdefault: \r\n\t\t\t\t\t\t$.error('Conversion \"'+ conversion +'\" not allowed on jQuery.multiDatesPicker');\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tgotDate : function( date, type ) {\r\n\t\t\t\tfor(var i = 0; i < this.multiDatesPicker[datesArraySwitch(type)].length; i++) {\r\n\t\t\t\t\tif(methods.compareDates(this.multiDatesPicker[datesArraySwitch(type)][i], date) == 0) {\r\n\t\t\t\t\t\treturn i;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\treturn false;\r\n\t\t\t},\r\n\t\t\tgetDates : function( format, type ) {\r\n\t\t\t\tswitch (format) {\r\n\t\t\t\t\tcase 'object':\r\n\t\t\t\t\t\treturn this.multiDatesPicker[datesArraySwitch(type)];\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\tvar o_dates = new Array();\r\n\t\t\t\t\t\tfor(i in this.multiDatesPicker[datesArraySwitch(type)]) o_dates.push(dateConvert(this.multiDatesPicker[datesArraySwitch(type)][i], 'string'));\r\n\t\t\t\t\t\treturn o_dates;\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\taddDates : function( dates, type ) {\r\n\t\t\t\tswitch(typeof dates) {\r\n\t\t\t\t\tcase 'object':\r\n\t\t\t\t\tcase 'array':\r\n\t\t\t\t\t\tif(dates.length) {\r\n\t\t\t\t\t\t\tfor(i in dates) addDate.call(this, dates[i], type);\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t} // else does the same as 'string'\r\n\t\t\t\t\tcase 'string':\r\n\t\t\t\t\t\taddDate.call(this, dates, type);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tdefault: \r\n\t\t\t\t\t\t$.error('Date format \"'+ typeof dates +'\" not allowed on jQuery.multiDatesPicker');\r\n\t\t\t\t}\r\n\t\t\t\t$(this).datepicker('refresh');\r\n\t\t\t},\r\n\t\t\tremoveDates : function( indexes, type ) {\r\n\t\t\t\tif(typeof index == 'array')\r\n\t\t\t\t\tfor(i in indexes) removeDate.call(this, i, type);\r\n\t\t\t\telse\r\n\t\t\t\t\tremoveDate.call(this, indexes, type);\r\n\t\t\t\t$(this).datepicker('refresh');\r\n\t\t\t},\r\n\t\t\tresetDates : function ( type ) {\r\n\t\t\t\tthis.multiDatesPicker[datesArraySwitch(type)] = [];\r\n\t\t\t\t$(this).datepicker('refresh');\r\n\t\t\t},\r\n\t\t\ttoggleDate : function( date, type ) {\r\n\t\t\t\tvar index = methods.gotDate.call(this, date);\r\n\t\t\t\tvar mode = this.multiDatesPicker.mode;\r\n\t\t\t\t\r\n\t\t\t\tswitch(mode.modeName) {\r\n\t\t\t\t\tcase 'daysRange':\r\n\t\t\t\t\t\tthis.multiDatesPicker.selectedDates = []; // deletes all selected dates\r\n\t\t\t\t\t\tvar end = mode.options.autoselectRange[1];\r\n\t\t\t\t\t\tvar begin = mode.options.autoselectRange[0];\r\n\t\t\t\t\t\tif(end < begin) { // switch\r\n\t\t\t\t\t\t\tend = mode.options.autoselectRange[0];\r\n\t\t\t\t\t\t\tbegin = mode.options.autoselectRange[1];\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tfor(var i = begin; i < end; i++) \r\n\t\t\t\t\t\t\tmethods.addDates.call(this, methods.sumDays(date, i));\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t\tdefault:\r\n\t\t\t\t\t\tif(index === false) // adds dates\r\n\t\t\t\t\t\t\tmethods.addDates.call(this, date);\r\n\t\t\t\t\t\telse // removes dates\r\n\t\t\t\t\t\t\tmethods.removeDates.call(this, index);\r\n\t\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t}, \r\n\t\t\tsetMode : function( mode ) {\r\n\t\t\t\tthis.multiDatesPicker.mode.modeName = mode.modeName;\r\n\t\t\t\tswitch(mode.modeName) {\r\n\t\t\t\t\tcase 'normal':\r\n\t\t\t\t\t\tfor (option in mode.options)\r\n\t\t\t\t\t\t\tswitch(option) {\r\n\t\t\t\t\t\t\t\tcase 'maxPicks':\r\n\t\t\t\t\t\t\t\tcase 'minPicks':\r\n\t\t\t\t\t\t\t\tcase 'pickableRange':\r\n\t\t\t\t\t\t\t\tcase 'pickableRangeDelay':\r\n\t\t\t\t\t\t\t\tcase 'adjustRangeToAvoided':\r\n\t\t\t\t\t\t\t\t\tthis.multiDatesPicker.mode.options[option] = mode.options[option];\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tdefault: $.error('Option ' + option + ' does not exist for setMode on jQuery.multiDatesPicker');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t\tcase 'daysRange':\r\n\t\t\t\t\tcase 'weeksRange':\r\n\t\t\t\t\t\tvar mandatory = 1;\r\n\t\t\t\t\t\tfor (option in mode.options)\r\n\t\t\t\t\t\t\tswitch(option) {\r\n\t\t\t\t\t\t\t\tcase 'autoselectRange':\r\n\t\t\t\t\t\t\t\t\tmandatory--;\r\n\t\t\t\t\t\t\t\tcase 'pickableRange':\r\n\t\t\t\t\t\t\t\tcase 'pickableRangeDelay':\r\n\t\t\t\t\t\t\t\tcase 'adjustRangeToAvoided':\r\n\t\t\t\t\t\t\t\t\tthis.multiDatesPicker.mode.options[option] = mode.options[option];\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\tdefault: $.error('Option ' + option + ' does not exist for setMode on jQuery.multiDatesPicker');\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\tif(mandatory > 0) $.error('Some mandatory options not specified!');\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tif(mode.options.pickableRange) {\r\n\t\t\t\t\t$(this).datepicker(\"option\", \"maxDate\", mode.options.pickableRange + (mode.options.pickableRangeDelay || 0));\r\n\t\t\t\t\t$(this).datepicker(\"option\", \"minDate\", this.multiDatesPicker.minDate);\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tif(mdp_events.onSelect) mdp_events.onSelect();\r\n\t\t\t\t$(this).datepicker('refresh');\r\n\t\t\t}\r\n\t\t};\r\n\t\t\r\n\t\tthis.each(function() {\r\n\t\t\tif (!this.multiDatesPicker) \r\n\t\t\t\tthis.multiDatesPicker = {\r\n\t\t\t\t\tselectedDates: [],\r\n\t\t\t\t\tavoidedDates: [],\r\n\t\t\t\t\tmode: {\r\n\t\t\t\t\t\tmodeName: 'normal',\r\n\t\t\t\t\t\toptions: {\r\n\t\t\t\t\t\t\tadjustRangeToAvoided: true\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t};\r\n\t\t\t\r\n\t\t\tif(methods[method]) {\r\n\t\t\t\tvar exec_result = methods[method].apply(this, Array.prototype.slice.call(mdp_arguments, 1));\r\n\t\t\t\tswitch(method) {\r\n\t\t\t\t\tcase 'getDates':\r\n\t\t\t\t\tcase 'gotDate':\r\n\t\t\t\t\tcase 'sumDays':\r\n\t\t\t\t\tcase 'compareDates':\r\n\t\t\t\t\tcase 'dateConvert':\r\n\t\t\t\t\t\tret = exec_result;\r\n\t\t\t\t}\r\n\t\t\t\treturn exec_result;\r\n\t\t\t} else if( typeof method === 'object' || ! method ) {\r\n\t\t\t\treturn methods.init.apply(this, mdp_arguments);\r\n\t\t\t} else {\r\n\t\t\t\t$.error('Method ' + method + ' does not exist on jQuery.multiDatesPicker');\r\n\t\t\t}\r\n\t\t\t\r\n\t\t});\r\n\t\t\r\n\t\treturn ret;\r\n\t};\r\n})( jQuery );\n\n\n// WEBPACK FOOTER //\n// ./src/core/ui/jquery-ui.multidatespicker.js","/* jshint forin:true, noarg:true, noempty:true, eqeqeq:true, boss:true, undef:true, curly:true, browser:true, jquery:true */\r\n/*\r\n * jQuery MultiSelect UI Widget 1.13\r\n * Copyright (c) 2012 Eric Hynds\r\n *\r\n * http://www.erichynds.com/jquery/jquery-ui-multiselect-widget/\r\n *\r\n * Depends:\r\n * - jQuery 1.4.2+\r\n * - jQuery UI 1.8 widget factory\r\n *\r\n * Optional:\r\n * - jQuery UI effects\r\n * - jQuery UI position utility\r\n *\r\n * Dual licensed under the MIT and GPL licenses:\r\n * http://www.opensource.org/licenses/mit-license.php\r\n * http://www.gnu.org/licenses/gpl.html\r\n *\r\n*/\r\n\r\n/* global define */\r\n/* global jQuery */\r\n\r\n( function( factory ) {\r\n\tif ( typeof define === 'function' && define.amd ) {\r\n\r\n\t\t// AMD. Register as an anonymous module.\r\n\t\tdefine( ['jquery','jqueryUI', './jquery.ui.selectmenu'], factory );\r\n\t} else {\r\n\r\n\t\t// Browser globals\r\n\t\tfactory( jQuery );\r\n\t}\r\n} ( function( $ ) {\r\n\r\n\tvar multiselectID = 0;\r\n\r\n\t$.widget('ech.multiselect', {\r\n\r\n\t// default options\r\n\t\toptions: {\r\n\t\t\theader: true,\r\n\t\t\theight: 175,\r\n\t\t\tminWidth: 225,\r\n\t\t\tclasses: '',\r\n\t\t\tcheckAllText: 'Check all',\r\n\t\t\tuncheckAllText: 'Uncheck all',\r\n\t\t\tnoneSelectedText: 'Select options',\r\n\t\t\tselectedText: '# selected',\r\n\t\t\tselectedList: 0,\r\n\t\t\tshow: null,\r\n\t\t\thide: null,\r\n\t\t\tautoOpen: false,\r\n\t\t\tmultiple: true,\r\n\t\t\tposition: {}\r\n\t\t},\r\n\r\n\t\t_create: function(){\r\n\t\t\tvar el = this.element.hide(),\r\n\t\t\t\to = this.options;\r\n\r\n\t\t\tthis.speed = $.fx.speeds._default; // default speed for effects\r\n\t\t\tthis._isOpen = false; // assume no\r\n\r\n\t\t\tvar\r\n\t\t\t//button = (this.button = $(''))\r\n\t\t\t\tbutton = (this.button = $(''))\r\n\t\t\t\t\t\t.addClass('ui-multiselect ui-widget ui-state-default ui-corner-all')\r\n\t\t\t\t\t\t.addClass( o.classes )\r\n\t\t\t\t\t\t.attr({ 'title':el.attr('title'), 'aria-haspopup':true, 'tabIndex':el.attr('tabIndex') })\r\n\t\t\t\t\t\t.insertAfter( el ),\r\n\r\n\t\t\t\tbuttonlabel = (this.buttonlabel = $(''))\r\n\t\t\t\t\t.html( o.noneSelectedText )\r\n\t\t\t\t\t.appendTo( button ),\r\n\r\n\t\t\t\tmenu = (this.menu = $('
      '))\r\n\t\t\t\t\t.attr('id', 'rup-multiCombo_'+ $(this.element).attr('id'))\r\n\t\t\t\t\t.addClass('ui-multiselect-menu ui-widget ui-widget-content ui-corner-all')\r\n\t\t\t\t\t.addClass( o.classes )\r\n\t\t\t\t\t.appendTo( document.body ),\r\n\r\n\t\t\t\theader = (this.header = $('
      '))\r\n\t\t\t\t\t.addClass('ui-widget-header ui-corner-all ui-multiselect-header ui-helper-clearfix')\r\n\t\t\t\t\t.appendTo( menu ),\r\n\r\n\t\t\t\theaderLinkContainer = (this.headerLinkContainer = $('