Plug-ins updates
authorThierry Florac <thierry.florac@onf.fr>
Fri, 29 Jan 2016 15:36:00 +0100
changeset 155 e0fb6fd568eb
parent 154 0fff49179f6d
child 156 61176c64158d
Plug-ins updates
src/ztfy/myams/__init__.py
src/ztfy/myams/configure.zcml
src/ztfy/myams/resources/js/ext/bootstrap-modalmanager.js
src/ztfy/myams/resources/js/ext/bootstrap-modalmanager.min.js
src/ztfy/myams/resources/js/ext/jquery-maskedinput-1.3.1.min.js
src/ztfy/myams/resources/js/ext/jquery-maskedinput-1.4.1.js
src/ztfy/myams/resources/js/ext/jquery-maskedinput-1.4.1.min.js
--- a/src/ztfy/myams/__init__.py	Mon Dec 07 14:31:56 2015 +0100
+++ b/src/ztfy/myams/__init__.py	Fri Jan 29 15:36:00 2016 +0100
@@ -39,8 +39,8 @@
                                minified='css/ext/bootstrap-modal.min.css',
                                depends=[bootstrap_css, ])
 
-awesomefonts_css = Resource(library, 'css/ext/font-awesome-4.3.0.css',
-                            minified='css/ext/font-awesome-4.3.0.min.css',
+awesomefonts_css = Resource(library, 'css/ext/font-awesome-4.5.0.css',
+                            minified='css/ext/font-awesome-4.5.0.min.css',
                             depends=[bootstrap_css, ])
 
 myams_css = Resource(library, 'css/myams.css',
--- a/src/ztfy/myams/configure.zcml	Mon Dec 07 14:31:56 2015 +0100
+++ b/src/ztfy/myams/configure.zcml	Fri Jan 29 15:36:00 2016 +0100
@@ -221,7 +221,7 @@
 
 	<z3c:widgetTemplate
 		mode="input"
-		template="templates/form/select-input.pt"
+		template="templates/forms/select-input.pt"
 		widget="z3c.form.interfaces.ISelectWidget"
 		layer=".layer.MyAMSLayer" />
 
@@ -231,7 +231,7 @@
 
 	<z3c:widgetTemplate
 		mode="input"
-		template="templates/form/orderedselect-input.pt"
+		template="templates/forms/orderedselect-input.pt"
 		widget="z3c.form.interfaces.IOrderedSelectWidget"
 		layer=".layer.MyAMSLayer" />
 
--- a/src/ztfy/myams/resources/js/ext/bootstrap-modalmanager.js	Mon Dec 07 14:31:56 2015 +0100
+++ b/src/ztfy/myams/resources/js/ext/bootstrap-modalmanager.js	Fri Jan 29 15:36:00 2016 +0100
@@ -18,7 +18,7 @@
 
 !function ($) {
 
-	"use strict"; // jshint ;_;
+	"use strict";  // jshint ;_;
 
 	/* MODAL MANAGER CLASS DEFINITION
 	 * ====================== */
@@ -33,7 +33,7 @@
 
 		init: function (element, options) {
 			this.$element = $(element);
-			this.options = $.extend({}, $.fn.modalmanager.defaults, this.$element.data(), typeof options == 'object' && options);
+			this.options = $.extend({}, $.fn.modalmanager.defaults, this.$element.data(), typeof options === 'object' && options);
 			this.stack = [];
 			this.backdropCount = 0;
 
@@ -42,10 +42,14 @@
 					that = this;
 
 				$(window).on('resize.modal', function () {
-					resizeTimeout && clearTimeout(resizeTimeout);
+					if (resizeTimeout) {
+						clearTimeout(resizeTimeout);
+					}
 					resizeTimeout = setTimeout(function () {
 						for (var i = 0; i < that.stack.length; i++) {
-							that.stack[i].isShown && that.stack[i].layout();
+							if (that.stack[i].isShown) {
+								that.stack[i].layout();
+							}
 						}
 					}, 10);
 				});
@@ -82,9 +86,9 @@
 						modal.$element.show();
 
 						if (transition) {
-							//modal.$element[0].style.display = 'run-in';       
+							//modal.$element[0].style.display = 'run-in';
 							modal.$element[0].offsetWidth;
-							//modal.$element.one($.support.transition.end, function () { modal.$element[0].style.display = 'block' });  
+							//modal.$element.one($.support.transition.end, function () { modal.$element[0].style.display = 'block' });
 						}
 
 						modal.layout();
@@ -98,15 +102,19 @@
 							modal.$element.trigger('shown');
 						};
 
-						transition ?
-							modal.$element.one($.support.transition.end, complete) :
+						if (transition) {
+							modal.$element.one($.support.transition.end, complete);
+						} else {
 							complete();
+						}
 					});
 				};
 
-				modal.options.replace ?
-					that.replace(showModal) :
+				if (modal.options.replace) {
+					that.replace(showModal);
+				} else {
 					showModal();
+				}
 			}));
 
 			modal.$element.on('hidden.modalmanager', targetIsSelf(function (e) {
@@ -117,14 +125,17 @@
 				} else if (modal.$backdrop) {
 					var transition = $.support.transition && modal.$element.hasClass('fade');
 
-					// trigger a relayout due to firebox's buggy transition end event
-					if (transition)
+					// trigger a relayout due to firefox's buggy transition end event
+					if (transition) {
 						modal.$element[0].offsetWidth;
-					$.support.transition && modal.$element.hasClass('fade') ?
+					}
+					if ($.support.transition && modal.$element.hasClass('fade')) {
 						modal.$backdrop.one($.support.transition.end, function () {
 							modal.destroy();
-						}) :
+						});
+					} else {
 						modal.destroy();
+					}
 				} else {
 					modal.destroy();
 				}
@@ -139,7 +150,9 @@
 		getOpenModals: function () {
 			var openModals = [];
 			for (var i = 0; i < this.stack.length; i++) {
-				if (this.stack[i].isShown) openModals.push(this.stack[i]);
+				if (this.stack[i].isShown) {
+					openModals.push(this.stack[i]);
+				}
 			}
 
 			return openModals;
@@ -153,17 +166,23 @@
 			var topModal;
 
 			for (var i = 0; i < this.stack.length; i++) {
-				if (this.stack[i].isShown) topModal = this.stack[i];
+				if (this.stack[i].isShown) {
+					topModal = this.stack[i];
+				}
 			}
 
-			if (!topModal) return;
+			if (!topModal) {
+				return;
+			}
 
 			topModal.focus();
 		},
 
 		destroyModal: function (modal) {
 			modal.$element.off('.modalmanager');
-			if (modal.$backdrop) this.removeBackdrop(modal);
+			if (modal.$backdrop) {
+				this.removeBackdrop(modal);
+			}
 			this.stack.splice(this.getIndexOfModal(modal), 1);
 
 			var hasOpenModal = this.hasOpenModal();
@@ -185,7 +204,9 @@
 
 		getIndexOfModal: function (modal) {
 			for (var i = 0; i < this.stack.length; i++) {
-				if (modal === this.stack[i]) return i;
+				if (modal === this.stack[i]) {
+					return i;
+				}
 			}
 		},
 
@@ -193,15 +214,19 @@
 			var topModal;
 
 			for (var i = 0; i < this.stack.length; i++) {
-				if (this.stack[i].isShown) topModal = this.stack[i];
+				if (this.stack[i].isShown) {
+					topModal = this.stack[i];
+				}
 			}
 
 			if (topModal) {
 				this.$backdropHandle = topModal.$backdrop;
 				topModal.$backdrop = null;
 
-				callback && topModal.$element.one('hidden',
-												  targetIsSelf($.proxy(callback, this)));
+				if (callback) {
+					topModal.$element.one('hidden',
+										  targetIsSelf($.proxy(callback, this)));
+				}
 
 				topModal.hide();
 			} else if (callback) {
@@ -225,7 +250,9 @@
 				$backdrop = this.$backdropHandle;
 				$backdrop.off('.modalmanager');
 				this.$backdropHandle = null;
-				this.isLoading && this.removeSpinner();
+				if (this.isLoading) {
+					this.removeSpinner();
+				}
 			}
 
 			return $backdrop;
@@ -243,11 +270,11 @@
 				.css('z-index', getzIndex('modal', this.getOpenModals().length))
 				.appendTo(this.$element);
 
-			if (modal && modal.options.backdrop != 'static') {
+			if (modal && modal.options.backdrop === 'hide') {
 				$container.on('click.modal', targetIsSelf(function (e) {
 					modal.hide();
 				}));
-			} else if (modal) {
+			} else if (modal && modal.options.backdrop === 'attention') {
 				$container.on('click.modal', targetIsSelf(function (e) {
 					modal.attention();
 				}));
@@ -269,15 +296,19 @@
 
 				modal.$backdrop.css('z-index', getzIndex('backdrop', this.getOpenModals().length));
 
-				if (doAnimate) modal.$backdrop[0].offsetWidth; // force reflow
+				if (doAnimate) {
+					modal.$backdrop[0].offsetWidth;
+				} // force reflow
 
 				modal.$backdrop.addClass('in');
 
 				this.backdropCount += 1;
 
-				doAnimate ?
-					modal.$backdrop.one($.support.transition.end, callback) :
+				if (doAnimate) {
+					modal.$backdrop.one($.support.transition.end, callback);
+				} else {
 					callback();
+				}
 
 			} else if (!modal.isShown && modal.$backdrop) {
 				modal.$backdrop.removeClass('in');
@@ -286,11 +317,13 @@
 
 				var that = this;
 
-				$.support.transition && modal.$element.hasClass('fade') ?
+				if ($.support.transition && modal.$element.hasClass('fade')) {
 					modal.$backdrop.one($.support.transition.end, function () {
-						that.removeBackdrop(modal)
-					}) :
+						that.removeBackdrop(modal);
+					});
+				} else {
 					that.removeBackdrop(modal);
+				}
 
 			} else if (callback) {
 				callback();
@@ -298,13 +331,17 @@
 		},
 
 		removeSpinner: function () {
-			this.$spinner && this.$spinner.remove();
+			if (this.$spinner) {
+				this.$spinner.remove();
+			}
 			this.$spinner = null;
 			this.isLoading = false;
 		},
 
 		removeLoading: function () {
-			this.$backdropHandle && this.$backdropHandle.remove();
+			if (this.$backdropHandle) {
+				this.$backdropHandle.remove();
+			}
 			this.$backdropHandle = null;
 			this.removeSpinner();
 		},
@@ -339,19 +376,23 @@
 
 				this.isLoading = true;
 
-				$.support.transition ?
-					this.$backdropHandle.one($.support.transition.end, callback) :
+				if ($.support.transition) {
+					this.$backdropHandle.one($.support.transition.end, callback);
+				} else {
 					callback();
+				}
 
 			} else if (this.isLoading && this.$backdropHandle) {
 				this.$backdropHandle.removeClass('in');
 
 				var that = this;
-				$.support.transition ?
+				if ($.support.transition) {
 					this.$backdropHandle.one($.support.transition.end, function () {
-						that.removeLoading()
-					}) :
+						that.removeLoading();
+					});
+				} else {
 					that.removeLoading();
+				}
 
 			} else if (callback) {
 				callback(this.isLoading);
@@ -373,9 +414,9 @@
 				var $baseModal = $('<div class="modal hide" />').appendTo('body'),
 					$baseBackdrop = $('<div class="modal-backdrop hide" />').appendTo('body');
 
-				baseIndex['modal'] = +$baseModal.css('z-index');
-				baseIndex['backdrop'] = +$baseBackdrop.css('z-index');
-				zIndexFactor = baseIndex['modal'] - baseIndex['backdrop'];
+				baseIndex.modal = +$baseModal.css('z-index');
+				baseIndex.backdrop = +$baseBackdrop.css('z-index');
+				zIndexFactor = baseIndex.modal - baseIndex.backdrop;
 
 				$baseModal.remove();
 				$baseBackdrop.remove();
@@ -384,7 +425,7 @@
 
 			return baseIndex[type] + (zIndexFactor * pos);
 
-		}
+		};
 	}());
 
 	// make sure the event target is the modal itself in order to prevent
@@ -407,9 +448,13 @@
 			var $this = $(this),
 				data = $this.data('modalmanager');
 
-			if (!data) $this.data('modalmanager', (data = new ModalManager(this, option)));
-			if (typeof option === 'string') data[option].apply(data, [].concat(args))
-		})
+			if (!data) {
+				$this.data('modalmanager', (data = new ModalManager(this, option)));
+			}
+			if (typeof option === 'string') {
+				data[option].apply(data, [].concat(args));
+			}
+		});
 	};
 
 	$.fn.modalmanager.defaults = {
@@ -419,7 +464,7 @@
 		backdropTemplate: '<div class="modal-backdrop" />'
 	};
 
-	$.fn.modalmanager.Constructor = ModalManager
+	$.fn.modalmanager.Constructor = ModalManager;
 
 	// ModalManager handles the modal-open class so we need 
 	// to remove conflicting bootstrap 3 event handlers
--- a/src/ztfy/myams/resources/js/ext/bootstrap-modalmanager.min.js	Mon Dec 07 14:31:56 2015 +0100
+++ b/src/ztfy/myams/resources/js/ext/bootstrap-modalmanager.min.js	Fri Jan 29 15:36:00 2016 +0100
@@ -1,1 +1,1 @@
-!function(c){var a=function(f,e){this.init(f,e)};a.prototype={constructor:a,init:function(f,e){this.$element=c(f);this.options=c.extend({},c.fn.modalmanager.defaults,this.$element.data(),typeof e=="object"&&e);this.stack=[];this.backdropCount=0;if(this.options.resize){var h,g=this;c(window).on("resize.modal",function(){h&&clearTimeout(h);h=setTimeout(function(){for(var j=0;j<g.stack.length;j++){g.stack[j].isShown&&g.stack[j].layout()}},10)})}},createModal:function(f,e){c(f).modal(c.extend({manager:this},e))},appendModal:function(f){this.stack.push(f);var e=this;f.$element.on("show.modalmanager",b(function(h){var g=function(){f.isShown=true;var i=c.support.transition&&f.$element.hasClass("fade");e.$element.toggleClass("modal-open",e.hasOpenModal()).toggleClass("page-overflow",c(window).height()<e.$element.height());f.$parent=f.$element.parent();f.$container=e.createContainer(f);f.$element.appendTo(f.$container);e.backdrop(f,function(){f.$element.show();if(i){f.$element[0].offsetWidth}f.layout();f.$element.addClass("in").attr("aria-hidden",false);var j=function(){e.setFocus();f.$element.trigger("shown")};i?f.$element.one(c.support.transition.end,j):j()})};f.options.replace?e.replace(g):g()}));f.$element.on("hidden.modalmanager",b(function(g){e.backdrop(f);if(!f.$element.parent().length){e.destroyModal(f)}else{if(f.$backdrop){var h=c.support.transition&&f.$element.hasClass("fade");if(h){f.$element[0].offsetWidth}c.support.transition&&f.$element.hasClass("fade")?f.$backdrop.one(c.support.transition.end,function(){f.destroy()}):f.destroy()}else{f.destroy()}}}));f.$element.on("destroyed.modalmanager",b(function(g){e.destroyModal(f)}))},getOpenModals:function(){var f=[];for(var e=0;e<this.stack.length;e++){if(this.stack[e].isShown){f.push(this.stack[e])}}return f},hasOpenModal:function(){return this.getOpenModals().length>0},setFocus:function(){var f;for(var e=0;e<this.stack.length;e++){if(this.stack[e].isShown){f=this.stack[e]}}if(!f){return}f.focus()},destroyModal:function(f){f.$element.off(".modalmanager");if(f.$backdrop){this.removeBackdrop(f)}this.stack.splice(this.getIndexOfModal(f),1);var e=this.hasOpenModal();this.$element.toggleClass("modal-open",e);if(!e){this.$element.removeClass("page-overflow")}this.removeContainer(f);this.setFocus()},getModalAt:function(e){return this.stack[e]},getIndexOfModal:function(f){for(var e=0;e<this.stack.length;e++){if(f===this.stack[e]){return e}}},replace:function(g){var f;for(var e=0;e<this.stack.length;e++){if(this.stack[e].isShown){f=this.stack[e]}}if(f){this.$backdropHandle=f.$backdrop;f.$backdrop=null;g&&f.$element.one("hidden",b(c.proxy(g,this)));f.hide()}else{if(g){g()}}},removeBackdrop:function(e){e.$backdrop.remove();e.$backdrop=null},createBackdrop:function(g,f){var e;if(!this.$backdropHandle){e=c(f).addClass(g).appendTo(this.$element)}else{e=this.$backdropHandle;e.off(".modalmanager");this.$backdropHandle=null;this.isLoading&&this.removeSpinner()}return e},removeContainer:function(e){e.$container.remove();e.$container=null},createContainer:function(e){var f;f=c('<div class="modal-scrollable">').css("z-index",d("modal",this.getOpenModals().length)).appendTo(this.$element);if(e&&e.options.backdrop!="static"){f.on("click.modal",b(function(g){e.hide()}))}else{if(e){f.on("click.modal",b(function(g){e.attention()}))}}return f},backdrop:function(h,j){var f=h.$element.hasClass("fade")?"fade":"",i=h.options.backdrop&&this.backdropCount<this.options.backdropLimit;if(h.isShown&&i){var e=c.support.transition&&f&&!this.$backdropHandle;h.$backdrop=this.createBackdrop(f,h.options.backdropTemplate);h.$backdrop.css("z-index",d("backdrop",this.getOpenModals().length));if(e){h.$backdrop[0].offsetWidth}h.$backdrop.addClass("in");this.backdropCount+=1;e?h.$backdrop.one(c.support.transition.end,j):j()}else{if(!h.isShown&&h.$backdrop){h.$backdrop.removeClass("in");this.backdropCount-=1;var g=this;c.support.transition&&h.$element.hasClass("fade")?h.$backdrop.one(c.support.transition.end,function(){g.removeBackdrop(h)}):g.removeBackdrop(h)}else{if(j){j()}}}},removeSpinner:function(){this.$spinner&&this.$spinner.remove();this.$spinner=null;this.isLoading=false},removeLoading:function(){this.$backdropHandle&&this.$backdropHandle.remove();this.$backdropHandle=null;this.removeSpinner()},loading:function(h){h=h||function(){};this.$element.toggleClass("modal-open",!this.isLoading||this.hasOpenModal()).toggleClass("page-overflow",c(window).height()<this.$element.height());if(!this.isLoading){this.$backdropHandle=this.createBackdrop("fade",this.options.backdropTemplate);this.$backdropHandle[0].offsetWidth;var e=this.getOpenModals();this.$backdropHandle.css("z-index",d("backdrop",e.length+1)).addClass("in");var g=c(this.options.spinner).css("z-index",d("modal",e.length+1)).appendTo(this.$element).addClass("in");this.$spinner=c(this.createContainer()).append(g).on("click.modalmanager",c.proxy(this.loading,this));this.isLoading=true;c.support.transition?this.$backdropHandle.one(c.support.transition.end,h):h()}else{if(this.isLoading&&this.$backdropHandle){this.$backdropHandle.removeClass("in");var f=this;c.support.transition?this.$backdropHandle.one(c.support.transition.end,function(){f.removeLoading()}):f.removeLoading()}else{if(h){h(this.isLoading)}}}}};var d=(function(){var f,e={};return function(g,j){if(typeof f==="undefined"){var i=c('<div class="modal hide" />').appendTo("body"),h=c('<div class="modal-backdrop hide" />').appendTo("body");e.modal=+i.css("z-index");e.backdrop=+h.css("z-index");f=e.modal-e.backdrop;i.remove();h.remove();h=i=null}return e[g]+(f*j)}}());function b(e){return function(f){if(f&&this===f.target){return e.apply(this,arguments)}}}c.fn.modalmanager=function(f,e){return this.each(function(){var h=c(this),g=h.data("modalmanager");if(!g){h.data("modalmanager",(g=new a(this,f)))}if(typeof f==="string"){g[f].apply(g,[].concat(e))}})};c.fn.modalmanager.defaults={backdropLimit:999,resize:true,spinner:'<div class="loading-spinner fade" style="width: 200px; margin-left: -100px;"><div class="progress progress-striped active"><div class="bar" style="width: 100%;"></div></div></div>',backdropTemplate:'<div class="modal-backdrop" />'};c.fn.modalmanager.Constructor=a;c(function(){c(document).off("show.bs.modal").off("hidden.bs.modal")})}(jQuery);
\ No newline at end of file
+!function(c){var a=function(f,e){this.init(f,e)};a.prototype={constructor:a,init:function(f,e){this.$element=c(f);this.options=c.extend({},c.fn.modalmanager.defaults,this.$element.data(),typeof e==="object"&&e);this.stack=[];this.backdropCount=0;if(this.options.resize){var h,g=this;c(window).on("resize.modal",function(){if(h){clearTimeout(h)}h=setTimeout(function(){for(var j=0;j<g.stack.length;j++){if(g.stack[j].isShown){g.stack[j].layout()}}},10)})}},createModal:function(f,e){c(f).modal(c.extend({manager:this},e))},appendModal:function(f){this.stack.push(f);var e=this;f.$element.on("show.modalmanager",b(function(h){var g=function(){f.isShown=true;var i=c.support.transition&&f.$element.hasClass("fade");e.$element.toggleClass("modal-open",e.hasOpenModal()).toggleClass("page-overflow",c(window).height()<e.$element.height());f.$parent=f.$element.parent();f.$container=e.createContainer(f);f.$element.appendTo(f.$container);e.backdrop(f,function(){f.$element.show();if(i){f.$element[0].offsetWidth}f.layout();f.$element.addClass("in").attr("aria-hidden",false);var j=function(){e.setFocus();f.$element.trigger("shown")};if(i){f.$element.one(c.support.transition.end,j)}else{j()}})};if(f.options.replace){e.replace(g)}else{g()}}));f.$element.on("hidden.modalmanager",b(function(g){e.backdrop(f);if(!f.$element.parent().length){e.destroyModal(f)}else{if(f.$backdrop){var h=c.support.transition&&f.$element.hasClass("fade");if(h){f.$element[0].offsetWidth}if(c.support.transition&&f.$element.hasClass("fade")){f.$backdrop.one(c.support.transition.end,function(){f.destroy()})}else{f.destroy()}}else{f.destroy()}}}));f.$element.on("destroyed.modalmanager",b(function(g){e.destroyModal(f)}))},getOpenModals:function(){var f=[];for(var e=0;e<this.stack.length;e++){if(this.stack[e].isShown){f.push(this.stack[e])}}return f},hasOpenModal:function(){return this.getOpenModals().length>0},setFocus:function(){var f;for(var e=0;e<this.stack.length;e++){if(this.stack[e].isShown){f=this.stack[e]}}if(!f){return}f.focus()},destroyModal:function(f){f.$element.off(".modalmanager");if(f.$backdrop){this.removeBackdrop(f)}this.stack.splice(this.getIndexOfModal(f),1);var e=this.hasOpenModal();this.$element.toggleClass("modal-open",e);if(!e){this.$element.removeClass("page-overflow")}this.removeContainer(f);this.setFocus()},getModalAt:function(e){return this.stack[e]},getIndexOfModal:function(f){for(var e=0;e<this.stack.length;e++){if(f===this.stack[e]){return e}}},replace:function(g){var f;for(var e=0;e<this.stack.length;e++){if(this.stack[e].isShown){f=this.stack[e]}}if(f){this.$backdropHandle=f.$backdrop;f.$backdrop=null;if(g){f.$element.one("hidden",b(c.proxy(g,this)))}f.hide()}else{if(g){g()}}},removeBackdrop:function(e){e.$backdrop.remove();e.$backdrop=null},createBackdrop:function(g,f){var e;if(!this.$backdropHandle){e=c(f).addClass(g).appendTo(this.$element)}else{e=this.$backdropHandle;e.off(".modalmanager");this.$backdropHandle=null;if(this.isLoading){this.removeSpinner()}}return e},removeContainer:function(e){e.$container.remove();e.$container=null},createContainer:function(e){var f;f=c('<div class="modal-scrollable">').css("z-index",d("modal",this.getOpenModals().length)).appendTo(this.$element);if(e&&e.options.backdrop==="hide"){f.on("click.modal",b(function(g){e.hide()}))}else{if(e&&e.options.backdrop==="attention"){f.on("click.modal",b(function(g){e.attention()}))}}return f},backdrop:function(h,j){var f=h.$element.hasClass("fade")?"fade":"",i=h.options.backdrop&&this.backdropCount<this.options.backdropLimit;if(h.isShown&&i){var e=c.support.transition&&f&&!this.$backdropHandle;h.$backdrop=this.createBackdrop(f,h.options.backdropTemplate);h.$backdrop.css("z-index",d("backdrop",this.getOpenModals().length));if(e){h.$backdrop[0].offsetWidth}h.$backdrop.addClass("in");this.backdropCount+=1;if(e){h.$backdrop.one(c.support.transition.end,j)}else{j()}}else{if(!h.isShown&&h.$backdrop){h.$backdrop.removeClass("in");this.backdropCount-=1;var g=this;if(c.support.transition&&h.$element.hasClass("fade")){h.$backdrop.one(c.support.transition.end,function(){g.removeBackdrop(h)})}else{g.removeBackdrop(h)}}else{if(j){j()}}}},removeSpinner:function(){if(this.$spinner){this.$spinner.remove()}this.$spinner=null;this.isLoading=false},removeLoading:function(){if(this.$backdropHandle){this.$backdropHandle.remove()}this.$backdropHandle=null;this.removeSpinner()},loading:function(h){h=h||function(){};this.$element.toggleClass("modal-open",!this.isLoading||this.hasOpenModal()).toggleClass("page-overflow",c(window).height()<this.$element.height());if(!this.isLoading){this.$backdropHandle=this.createBackdrop("fade",this.options.backdropTemplate);this.$backdropHandle[0].offsetWidth;var e=this.getOpenModals();this.$backdropHandle.css("z-index",d("backdrop",e.length+1)).addClass("in");var g=c(this.options.spinner).css("z-index",d("modal",e.length+1)).appendTo(this.$element).addClass("in");this.$spinner=c(this.createContainer()).append(g).on("click.modalmanager",c.proxy(this.loading,this));this.isLoading=true;if(c.support.transition){this.$backdropHandle.one(c.support.transition.end,h)}else{h()}}else{if(this.isLoading&&this.$backdropHandle){this.$backdropHandle.removeClass("in");var f=this;if(c.support.transition){this.$backdropHandle.one(c.support.transition.end,function(){f.removeLoading()})}else{f.removeLoading()}}else{if(h){h(this.isLoading)}}}}};var d=(function(){var f,e={};return function(g,j){if(typeof f==="undefined"){var i=c('<div class="modal hide" />').appendTo("body"),h=c('<div class="modal-backdrop hide" />').appendTo("body");e.modal=+i.css("z-index");e.backdrop=+h.css("z-index");f=e.modal-e.backdrop;i.remove();h.remove();h=i=null}return e[g]+(f*j)}}());function b(e){return function(f){if(f&&this===f.target){return e.apply(this,arguments)}}}c.fn.modalmanager=function(f,e){return this.each(function(){var h=c(this),g=h.data("modalmanager");if(!g){h.data("modalmanager",(g=new a(this,f)))}if(typeof f==="string"){g[f].apply(g,[].concat(e))}})};c.fn.modalmanager.defaults={backdropLimit:999,resize:true,spinner:'<div class="loading-spinner fade" style="width: 200px; margin-left: -100px;"><div class="progress progress-striped active"><div class="bar" style="width: 100%;"></div></div></div>',backdropTemplate:'<div class="modal-backdrop" />'};c.fn.modalmanager.Constructor=a;c(function(){c(document).off("show.bs.modal").off("hidden.bs.modal")})}(jQuery);
\ No newline at end of file
--- a/src/ztfy/myams/resources/js/ext/jquery-maskedinput-1.3.1.min.js	Mon Dec 07 14:31:56 2015 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,5 +0,0 @@
-/* Masked Input plugin for jQuery
-Copyright (c) 2007-2013 Josh Bush (digitalbush.com)
-Licensed under the MIT license (http://digitalbush.com/projects/masked-input-plugin/#license)
-Version: 1.3.1 */
-(function(e){function t(){var e=document.createElement("input"),t="onpaste";return e.setAttribute(t,""),"function"==typeof e[t]?"paste":"input"}var n,a=t()+".mask",r=navigator.userAgent,i=/iphone/i.test(r),o=/android/i.test(r);e.mask={definitions:{9:"[0-9]",a:"[A-Za-z]","*":"[A-Za-z0-9]"},dataName:"rawMaskFn",placeholder:"_"},e.fn.extend({caret:function(e,t){var n;if(0!==this.length&&!this.is(":hidden"))return"number"==typeof e?(t="number"==typeof t?t:e,this.each(function(){this.setSelectionRange?this.setSelectionRange(e,t):this.createTextRange&&(n=this.createTextRange(),n.collapse(!0),n.moveEnd("character",t),n.moveStart("character",e),n.select())})):(this[0].setSelectionRange?(e=this[0].selectionStart,t=this[0].selectionEnd):document.selection&&document.selection.createRange&&(n=document.selection.createRange(),e=0-n.duplicate().moveStart("character",-1e5),t=e+n.text.length),{begin:e,end:t})},unmask:function(){return this.trigger("unmask")},mask:function(t,r){var c,l,s,u,f,h;return!t&&this.length>0?(c=e(this[0]),c.data(e.mask.dataName)()):(r=e.extend({placeholder:e.mask.placeholder,completed:null},r),l=e.mask.definitions,s=[],u=h=t.length,f=null,e.each(t.split(""),function(e,t){"?"==t?(h--,u=e):l[t]?(s.push(RegExp(l[t])),null===f&&(f=s.length-1)):s.push(null)}),this.trigger("unmask").each(function(){function c(e){for(;h>++e&&!s[e];);return e}function d(e){for(;--e>=0&&!s[e];);return e}function m(e,t){var n,a;if(!(0>e)){for(n=e,a=c(t);h>n;n++)if(s[n]){if(!(h>a&&s[n].test(R[a])))break;R[n]=R[a],R[a]=r.placeholder,a=c(a)}b(),x.caret(Math.max(f,e))}}function p(e){var t,n,a,i;for(t=e,n=r.placeholder;h>t;t++)if(s[t]){if(a=c(t),i=R[t],R[t]=n,!(h>a&&s[a].test(i)))break;n=i}}function g(e){var t,n,a,r=e.which;8===r||46===r||i&&127===r?(t=x.caret(),n=t.begin,a=t.end,0===a-n&&(n=46!==r?d(n):a=c(n-1),a=46===r?c(a):a),k(n,a),m(n,a-1),e.preventDefault()):27==r&&(x.val(S),x.caret(0,y()),e.preventDefault())}function v(t){var n,a,i,l=t.which,u=x.caret();t.ctrlKey||t.altKey||t.metaKey||32>l||l&&(0!==u.end-u.begin&&(k(u.begin,u.end),m(u.begin,u.end-1)),n=c(u.begin-1),h>n&&(a=String.fromCharCode(l),s[n].test(a)&&(p(n),R[n]=a,b(),i=c(n),o?setTimeout(e.proxy(e.fn.caret,x,i),0):x.caret(i),r.completed&&i>=h&&r.completed.call(x))),t.preventDefault())}function k(e,t){var n;for(n=e;t>n&&h>n;n++)s[n]&&(R[n]=r.placeholder)}function b(){x.val(R.join(""))}function y(e){var t,n,a=x.val(),i=-1;for(t=0,pos=0;h>t;t++)if(s[t]){for(R[t]=r.placeholder;pos++<a.length;)if(n=a.charAt(pos-1),s[t].test(n)){R[t]=n,i=t;break}if(pos>a.length)break}else R[t]===a.charAt(pos)&&t!==u&&(pos++,i=t);return e?b():u>i+1?(x.val(""),k(0,h)):(b(),x.val(x.val().substring(0,i+1))),u?t:f}var x=e(this),R=e.map(t.split(""),function(e){return"?"!=e?l[e]?r.placeholder:e:void 0}),S=x.val();x.data(e.mask.dataName,function(){return e.map(R,function(e,t){return s[t]&&e!=r.placeholder?e:null}).join("")}),x.attr("readonly")||x.one("unmask",function(){x.unbind(".mask").removeData(e.mask.dataName)}).bind("focus.mask",function(){clearTimeout(n);var e;S=x.val(),e=y(),n=setTimeout(function(){b(),e==t.length?x.caret(0,e):x.caret(e)},10)}).bind("blur.mask",function(){y(),x.val()!=S&&x.change()}).bind("keydown.mask",g).bind("keypress.mask",v).bind(a,function(){setTimeout(function(){var e=y(!0);x.caret(e),r.completed&&e==x.val().length&&r.completed.call(x)},0)}),y()}))}})})(jQuery);
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ztfy/myams/resources/js/ext/jquery-maskedinput-1.4.1.js	Fri Jan 29 15:36:00 2016 +0100
@@ -0,0 +1,182 @@
+/*
+    jQuery Masked Input Plugin
+    Copyright (c) 2007 - 2015 Josh Bush (digitalbush.com)
+    Licensed under the MIT license (http://digitalbush.com/projects/masked-input-plugin/#license)
+    Version: 1.4.1
+*/
+!function(factory) {
+    "function" == typeof define && define.amd ? define([ "jquery" ], factory) : factory("object" == typeof exports ? require("jquery") : jQuery);
+}(function($) {
+    var caretTimeoutId, ua = navigator.userAgent, iPhone = /iphone/i.test(ua), chrome = /chrome/i.test(ua), android = /android/i.test(ua);
+    $.mask = {
+        definitions: {
+            "9": "[0-9]",
+            a: "[A-Za-z]",
+            "*": "[A-Za-z0-9]"
+        },
+        autoclear: !0,
+        dataName: "rawMaskFn",
+        placeholder: "_"
+    }, $.fn.extend({
+        caret: function(begin, end) {
+            var range;
+            if (0 !== this.length && !this.is(":hidden")) return "number" == typeof begin ? (end = "number" == typeof end ? end : begin, 
+            this.each(function() {
+                this.setSelectionRange ? this.setSelectionRange(begin, end) : this.createTextRange && (range = this.createTextRange(), 
+                range.collapse(!0), range.moveEnd("character", end), range.moveStart("character", begin), 
+                range.select());
+            })) : (this[0].setSelectionRange ? (begin = this[0].selectionStart, end = this[0].selectionEnd) : document.selection && document.selection.createRange && (range = document.selection.createRange(), 
+            begin = 0 - range.duplicate().moveStart("character", -1e5), end = begin + range.text.length), 
+            {
+                begin: begin,
+                end: end
+            });
+        },
+        unmask: function() {
+            return this.trigger("unmask");
+        },
+        mask: function(mask, settings) {
+            var input, defs, tests, partialPosition, firstNonMaskPos, lastRequiredNonMaskPos, len, oldVal;
+            if (!mask && this.length > 0) {
+                input = $(this[0]);
+                var fn = input.data($.mask.dataName);
+                return fn ? fn() : void 0;
+            }
+            return settings = $.extend({
+                autoclear: $.mask.autoclear,
+                placeholder: $.mask.placeholder,
+                completed: null
+            }, settings), defs = $.mask.definitions, tests = [], partialPosition = len = mask.length, 
+            firstNonMaskPos = null, $.each(mask.split(""), function(i, c) {
+                "?" == c ? (len--, partialPosition = i) : defs[c] ? (tests.push(new RegExp(defs[c])), 
+                null === firstNonMaskPos && (firstNonMaskPos = tests.length - 1), partialPosition > i && (lastRequiredNonMaskPos = tests.length - 1)) : tests.push(null);
+            }), this.trigger("unmask").each(function() {
+                function tryFireCompleted() {
+                    if (settings.completed) {
+                        for (var i = firstNonMaskPos; lastRequiredNonMaskPos >= i; i++) if (tests[i] && buffer[i] === getPlaceholder(i)) return;
+                        settings.completed.call(input);
+                    }
+                }
+                function getPlaceholder(i) {
+                    return settings.placeholder.charAt(i < settings.placeholder.length ? i : 0);
+                }
+                function seekNext(pos) {
+                    for (;++pos < len && !tests[pos]; ) ;
+                    return pos;
+                }
+                function seekPrev(pos) {
+                    for (;--pos >= 0 && !tests[pos]; ) ;
+                    return pos;
+                }
+                function shiftL(begin, end) {
+                    var i, j;
+                    if (!(0 > begin)) {
+                        for (i = begin, j = seekNext(end); len > i; i++) if (tests[i]) {
+                            if (!(len > j && tests[i].test(buffer[j]))) break;
+                            buffer[i] = buffer[j], buffer[j] = getPlaceholder(j), j = seekNext(j);
+                        }
+                        writeBuffer(), input.caret(Math.max(firstNonMaskPos, begin));
+                    }
+                }
+                function shiftR(pos) {
+                    var i, c, j, t;
+                    for (i = pos, c = getPlaceholder(pos); len > i; i++) if (tests[i]) {
+                        if (j = seekNext(i), t = buffer[i], buffer[i] = c, !(len > j && tests[j].test(t))) break;
+                        c = t;
+                    }
+                }
+                function androidInputEvent() {
+                    var curVal = input.val(), pos = input.caret();
+                    if (oldVal && oldVal.length && oldVal.length > curVal.length) {
+                        for (checkVal(!0); pos.begin > 0 && !tests[pos.begin - 1]; ) pos.begin--;
+                        if (0 === pos.begin) for (;pos.begin < firstNonMaskPos && !tests[pos.begin]; ) pos.begin++;
+                        input.caret(pos.begin, pos.begin);
+                    } else {
+                        for (checkVal(!0); pos.begin < len && !tests[pos.begin]; ) pos.begin++;
+                        input.caret(pos.begin, pos.begin);
+                    }
+                    tryFireCompleted();
+                }
+                function blurEvent() {
+                    checkVal(), input.val() != focusText && input.change();
+                }
+                function keydownEvent(e) {
+                    if (!input.prop("readonly")) {
+                        var pos, begin, end, k = e.which || e.keyCode;
+                        oldVal = input.val(), 8 === k || 46 === k || iPhone && 127 === k ? (pos = input.caret(), 
+                        begin = pos.begin, end = pos.end, end - begin === 0 && (begin = 46 !== k ? seekPrev(begin) : end = seekNext(begin - 1), 
+                        end = 46 === k ? seekNext(end) : end), clearBuffer(begin, end), shiftL(begin, end - 1), 
+                        e.preventDefault()) : 13 === k ? blurEvent.call(this, e) : 27 === k && (input.val(focusText), 
+                        input.caret(0, checkVal()), e.preventDefault());
+                    }
+                }
+                function keypressEvent(e) {
+                    if (!input.prop("readonly")) {
+                        var p, c, next, k = e.which || e.keyCode, pos = input.caret();
+                        if (!(e.ctrlKey || e.altKey || e.metaKey || 32 > k) && k && 13 !== k) {
+                            if (pos.end - pos.begin !== 0 && (clearBuffer(pos.begin, pos.end), shiftL(pos.begin, pos.end - 1)), 
+                            p = seekNext(pos.begin - 1), len > p && (c = String.fromCharCode(k), tests[p].test(c))) {
+                                if (shiftR(p), buffer[p] = c, writeBuffer(), next = seekNext(p), android) {
+                                    var proxy = function() {
+                                        $.proxy($.fn.caret, input, next)();
+                                    };
+                                    setTimeout(proxy, 0);
+                                } else input.caret(next);
+                                pos.begin <= lastRequiredNonMaskPos && tryFireCompleted();
+                            }
+                            e.preventDefault();
+                        }
+                    }
+                }
+                function clearBuffer(start, end) {
+                    var i;
+                    for (i = start; end > i && len > i; i++) tests[i] && (buffer[i] = getPlaceholder(i));
+                }
+                function writeBuffer() {
+                    input.val(buffer.join(""));
+                }
+                function checkVal(allow) {
+                    var i, c, pos, test = input.val(), lastMatch = -1;
+                    for (i = 0, pos = 0; len > i; i++) if (tests[i]) {
+                        for (buffer[i] = getPlaceholder(i); pos++ < test.length; ) if (c = test.charAt(pos - 1), 
+                        tests[i].test(c)) {
+                            buffer[i] = c, lastMatch = i;
+                            break;
+                        }
+                        if (pos > test.length) {
+                            clearBuffer(i + 1, len);
+                            break;
+                        }
+                    } else buffer[i] === test.charAt(pos) && pos++, partialPosition > i && (lastMatch = i);
+                    return allow ? writeBuffer() : partialPosition > lastMatch + 1 ? settings.autoclear || buffer.join("") === defaultBuffer ? (input.val() && input.val(""), 
+                    clearBuffer(0, len)) : writeBuffer() : (writeBuffer(), input.val(input.val().substring(0, lastMatch + 1))), 
+                    partialPosition ? i : firstNonMaskPos;
+                }
+                var input = $(this), buffer = $.map(mask.split(""), function(c, i) {
+                    return "?" != c ? defs[c] ? getPlaceholder(i) : c : void 0;
+                }), defaultBuffer = buffer.join(""), focusText = input.val();
+                input.data($.mask.dataName, function() {
+                    return $.map(buffer, function(c, i) {
+                        return tests[i] && c != getPlaceholder(i) ? c : null;
+                    }).join("");
+                }), input.one("unmask", function() {
+                    input.off(".mask").removeData($.mask.dataName);
+                }).on("focus.mask", function() {
+                    if (!input.prop("readonly")) {
+                        clearTimeout(caretTimeoutId);
+                        var pos;
+                        focusText = input.val(), pos = checkVal(), caretTimeoutId = setTimeout(function() {
+                            input.get(0) === document.activeElement && (writeBuffer(), pos == mask.replace("?", "").length ? input.caret(0, pos) : input.caret(pos));
+                        }, 10);
+                    }
+                }).on("blur.mask", blurEvent).on("keydown.mask", keydownEvent).on("keypress.mask", keypressEvent).on("input.mask paste.mask", function() {
+                    input.prop("readonly") || setTimeout(function() {
+                        var pos = checkVal(!0);
+                        input.caret(pos), tryFireCompleted();
+                    }, 0);
+                }), chrome && android && input.off("input.mask").on("input.mask", androidInputEvent), 
+                checkVal();
+            });
+        }
+    });
+});
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ztfy/myams/resources/js/ext/jquery-maskedinput-1.4.1.min.js	Fri Jan 29 15:36:00 2016 +0100
@@ -0,0 +1,1 @@
+!function(a){"function"==typeof define&&define.amd?define(["jquery"],a):a("object"==typeof exports?require("jquery"):jQuery)}(function(e){var f,d=navigator.userAgent,c=/iphone/i.test(d),a=/chrome/i.test(d),b=/android/i.test(d);e.mask={definitions:{"9":"[0-9]",a:"[A-Za-z]","*":"[A-Za-z0-9]"},autoclear:!0,dataName:"rawMaskFn",placeholder:"_"},e.fn.extend({caret:function(i,g){var h;if(0!==this.length&&!this.is(":hidden")){return"number"==typeof i?(g="number"==typeof g?g:i,this.each(function(){this.setSelectionRange?this.setSelectionRange(i,g):this.createTextRange&&(h=this.createTextRange(),h.collapse(!0),h.moveEnd("character",g),h.moveStart("character",i),h.select())})):(this[0].setSelectionRange?(i=this[0].selectionStart,g=this[0].selectionEnd):document.selection&&document.selection.createRange&&(h=document.selection.createRange(),i=0-h.duplicate().moveStart("character",-100000),g=i+h.text.length),{begin:i,end:g})}},unmask:function(){return this.trigger("unmask")},mask:function(q,j){var n,k,h,i,p,g,l,o;if(!q&&this.length>0){n=e(this[0]);var m=n.data(e.mask.dataName);return m?m():void 0}return j=e.extend({autoclear:e.mask.autoclear,placeholder:e.mask.placeholder,completed:null},j),k=e.mask.definitions,h=[],i=l=q.length,p=null,e.each(q.split(""),function(r,s){"?"==s?(l--,i=r):k[s]?(h.push(new RegExp(k[s])),null===p&&(p=h.length-1),i>r&&(g=h.length-1)):h.push(null)}),this.trigger("unmask").each(function(){function r(){if(j.completed){for(var I=p;g>=I;I++){if(h[I]&&w[I]===E(I)){return}}j.completed.call(F)}}function E(I){return j.placeholder.charAt(I<j.placeholder.length?I:0)}function D(I){for(;++I<l&&!h[I];){}return I}function y(I){for(;--I>=0&&!h[I];){}return I}function v(L,I){var K,J;if(!(0>L)){for(K=L,J=D(I);l>K;K++){if(h[K]){if(!(l>J&&h[K].test(w[J]))){break}w[K]=w[J],w[J]=E(J),J=D(J)}}C(),F.caret(Math.max(p,L))}}function s(M){var K,L,I,J;for(K=M,L=E(M);l>K;K++){if(h[K]){if(I=D(K),J=w[K],w[K]=L,!(l>I&&h[I].test(J))){break}L=J}}}function A(){var I=F.val(),J=F.caret();if(o&&o.length&&o.length>I.length){for(u(!0);J.begin>0&&!h[J.begin-1];){J.begin--}if(0===J.begin){for(;J.begin<p&&!h[J.begin];){J.begin++}}F.caret(J.begin,J.begin)}else{for(u(!0);J.begin<l&&!h[J.begin];){J.begin++}F.caret(J.begin,J.begin)}r()}function x(){u(),F.val()!=H&&F.change()}function z(L){if(!F.prop("readonly")){var M,K,I,J=L.which||L.keyCode;o=F.val(),8===J||46===J||c&&127===J?(M=F.caret(),K=M.begin,I=M.end,I-K===0&&(K=46!==J?y(K):I=D(K-1),I=46===J?D(I):I),t(K,I),v(K,I-1),L.preventDefault()):13===J?x.call(this,L):27===J&&(F.val(H),F.caret(0,u()),L.preventDefault())}}function G(M){if(!F.prop("readonly")){var L,O,K,I=M.which||M.keyCode,N=F.caret();if(!(M.ctrlKey||M.altKey||M.metaKey||32>I)&&I&&13!==I){if(N.end-N.begin!==0&&(t(N.begin,N.end),v(N.begin,N.end-1)),L=D(N.begin-1),l>L&&(O=String.fromCharCode(I),h[L].test(O))){if(s(L),w[L]=O,C(),K=D(L),b){var J=function(){e.proxy(e.fn.caret,F,K)()};setTimeout(J,0)}else{F.caret(K)}N.begin<=g&&r()}M.preventDefault()}}}function t(K,I){var J;for(J=K;I>J&&l>J;J++){h[J]&&(w[J]=E(J))}}function C(){F.val(w.join(""))}function u(J){var I,N,M,L=F.val(),K=-1;for(I=0,M=0;l>I;I++){if(h[I]){for(w[I]=E(I);M++<L.length;){if(N=L.charAt(M-1),h[I].test(N)){w[I]=N,K=I;break}}if(M>L.length){t(I+1,l);break}}else{w[I]===L.charAt(M)&&M++,i>I&&(K=I)}}return J?C():i>K+1?j.autoclear||w.join("")===B?(F.val()&&F.val(""),t(0,l)):C():(C(),F.val(F.val().substring(0,K+1))),i?I:p}var F=e(this),w=e.map(q.split(""),function(J,I){return"?"!=J?k[J]?E(I):J:void 0}),B=w.join(""),H=F.val();F.data(e.mask.dataName,function(){return e.map(w,function(J,I){return h[I]&&J!=E(I)?J:null}).join("")}),F.one("unmask",function(){F.off(".mask").removeData(e.mask.dataName)}).on("focus.mask",function(){if(!F.prop("readonly")){clearTimeout(f);var I;H=F.val(),I=u(),f=setTimeout(function(){F.get(0)===document.activeElement&&(C(),I==q.replace("?","").length?F.caret(0,I):F.caret(I))},10)}}).on("blur.mask",x).on("keydown.mask",z).on("keypress.mask",G).on("input.mask paste.mask",function(){F.prop("readonly")||setTimeout(function(){var I=u(!0);F.caret(I),r()},0)}),a&&b&&F.off("input.mask").on("input.mask",A),u()})}})});
\ No newline at end of file