raumstatus/node/public/js/vendor/ink-ui.min.js

22 lines
107 KiB
JavaScript
Raw Normal View History

2013-10-14 19:26:54 +00:00
Ink.createModule("Ink.UI.Aux","1",["Ink.Net.Ajax_1","Ink.Dom.Css_1","Ink.Dom.Selector_1","Ink.Util.Url_1"],function(e,t,n,r){"use strict";var i={},o=0,a={Layouts:{SMALL:"small",MEDIUM:"medium",LARGE:"large"},isDOMElement:function(e){return"object"==typeof e&&"nodeType"in e&&1===e.nodeType},isInteger:function(e){return"number"==typeof e&&0===e%1},elOrSelector:function(e,t){if(!this.isDOMElement(e)){var r=n.select(e);if(0===r.length)throw new TypeError(t+" must either be a DOM Element or a selector expression!\nThe script element must also be after the DOM Element itself.");return r[0]}return e},clone:function(e){try{if("object"!=typeof e)throw Error("Given argument is not an object!");return JSON.parse(JSON.stringify(e))}catch(t){throw Error("Given object cannot have loops!")}},childIndex:function(e){if(a.isDOMElement(e))for(var t=n.select("> *",e.parentNode),r=0,i=t.length;i>r;++r)if(t[r]===e)return r;throw"not found!"},ajaxJSON:function(t,n,r){new e(t,{evalJS:"force",method:"POST",parameters:n,onSuccess:function(e){try{if(e=e.responseJSON,"ok"!==e.status)throw"server error: "+e.message;r(null,e)}catch(t){r(t)}},onFailure:function(){r("communication failure")}})},currentLayout:function(){var e,r,i,o,a,s=n.select("#ink-layout-detector")[0];if(!s){s=document.createElement("div"),s.id="ink-layout-detector";for(i in this.Layouts)this.Layouts.hasOwnProperty(i)&&(o=this.Layouts[i],a=document.createElement("div"),a.className="show-"+o+" hide-all",a.setAttribute("data-ink-layout",o),s.appendChild(a));document.body.appendChild(s)}for(e=0,r=s.childNodes.length;r>e;++e)if(a=s.childNodes[e],"hidden"!==t.getStyle(a,"visibility"))return a.getAttribute("data-ink-layout")},hashSet:function(e){if("object"!=typeof e)throw new TypeError("o should be an object!");var t=r.getAnchorString();t=Ink.extendObj(t,e),window.location.hash=r.genQueryString("",t).substring(1)},cleanChildren:function(e){if(!a.isDOMElement(e))throw"Please provide a valid DOMElement";for(var t,n=e.lastChild;n;)t=n.previousSibling,e.removeChild(n),n=t},storeIdAndClasses:function(e,t){if(!a.isDOMElement(e))throw"Please provide a valid DOMElement as first parameter";var n=e.id;n&&(t._id=n);var r=e.className;r&&(t._classes=r)},restoreIdAndClasses:function(e,t){if(!a.isDOMElement(e))throw"Please provide a valid DOMElement as first parameter";t._id&&e.id!==t._id&&(e.id=t._id),t._classes&&-1===e.className.indexOf(t._classes)&&(e.className?e.className+=" "+t._classes:e.className=t._classes),t._instanceId&&!e.getAttribute("data-instance")&&e.setAttribute("data-instance",t._instanceId)},registerInstance:function(e,t,n){if(!e._instanceId){if("object"!=typeof e)throw new TypeError("1st argument must be a JavaScript object!");if(!e._options||!e._options.skipRegister){if(!this.isDOMElement(t))throw new TypeError("2nd argument must be a DOM element!");if(void 0!==n&&"string"!=typeof n)throw new TypeError("3rd argument must be a string!");var r=(n||"instance")+ ++o;i[r]=e,e._instanceId=r;var a=t.getAttribute("data-instance");a=null!==a?[a,r].join(" "):r,t.setAttribute("data-instance",a)}}},unregisterInstance:function(e){delete i[e]},getInstance:function(e){var t;if(this.isDOMElement(e)){if(t=e.getAttribute("data-instance"),null===t)throw Error("argument is not a DOM instance element!")}else t=e;t=t.split(" ");var n,r,o,a=t.length,s=[];for(o=0;a>o;++o){if(r=t[o],!r)throw Error("Element is not a JS instance!");if(n=i[r],!n)throw Error('Instance "'+r+'" not found!');s.push(n)}return 1===a?s[0]:s},getInstanceFromSelector:function(e){var t=n.select(e)[0];if(!t)throw Error("Element not found!");return this.getInstance(t)},getInstanceIds:function(){var e=[];for(var t in i)i.hasOwnProperty(t)&&e.push(t);return e},getInstances:function(){var e=[];for(var t in i)i.hasOwnProperty(t)&&e.push(i[t]);return e},destroyComponent:function(){Ink.Util.Aux.unregisterInstance(this._instanceId),this._element.parentNode.removeChild(this._element)}};return a});
Ink.createModule("Ink.UI.Pagination","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1"],function(e,t,n,r,i){"use strict";var o=function(e,t){var n=document.createElement("a");return n.setAttribute("href","#"),void 0!==t&&n.setAttribute("data-index",t),n.innerHTML=e,n},a=function(t,i){if(this._element=e.elOrSelector(t,"1st argument"),this._options=Ink.extendObj({size:void 0,start:1,firstLabel:"First",lastLabel:"Last",previousLabel:"Previous",nextLabel:"Next",onChange:void 0,setHash:!1,hashParameter:"page",numberFormatter:function(e){return e+1}},i||{},r.data(this._element)),this._options.previousPageLabel||(this._options.previousPageLabel="Previous "+this._options.maxSize),this._options.nextPageLabel||(this._options.nextPageLabel="Next "+this._options.maxSize),this._handlers={click:Ink.bindEvent(this._onClick,this)},!e.isInteger(this._options.size))throw new TypeError("size option is a required integer!");if(!e.isInteger(this._options.start)&&this._options.start>0&&this._options.start<=this._options.size)throw new TypeError("start option is a required integer between 1 and size!");if(this._options.maxSize&&!e.isInteger(this._options.maxSize)&&this._options.maxSize>0)throw new TypeError("maxSize option is a positive integer!");if(0>this._options.size)throw new RangeError("size option must be equal or more than 0!");if(void 0!==this._options.onChange&&"function"!=typeof this._options.onChange)throw new TypeError("onChange option must be a function!");n.hasClassName(Ink.s("ul",this._element),"dotted")&&(this._options.numberFormatter=function(){return'<i class="icon-circle"></i>'}),this._current=this._options.start-1,this._itemLiEls=[],this._init()};return a.prototype={_init:function(){this._generateMarkup(this._element),this._updateItems(),this._observe(),e.registerInstance(this,this._element,"pagination")},_observe:function(){t.observe(this._element,"click",this._handlers.click)},_updateItems:function(){var e,t,r,i=this._itemLiEls,a=this._options.size===i.length;if(a)for(e=0,t=this._options.size;t>e;++e)n.setClassName(i[e],"active",e===this._current);else{for(e=i.length-1;e>=0;--e)this._ulEl.removeChild(i[e]);for(i=[],e=0,t=this._options.size;t>e;++e)r=document.createElement("li"),r.appendChild(o(this._options.numberFormatter(e),e)),n.setClassName(r,"active",e===this._current),this._ulEl.insertBefore(r,this._nextEl),i.push(r);this._itemLiEls=i}if(this._options.maxSize){var s=Math.floor(this._current/this._options.maxSize),u=this._options.maxSize*s,l=u+this._options.maxSize-1;for(e=0,t=this._options.size;t>e;++e)r=i[e],n.setClassName(r,"hide-all",u>e||e>l);this._pageStart=u,this._pageEnd=l,this._page=s,n.setClassName(this._prevPageEl,"disabled",!this.hasPreviousPage()),n.setClassName(this._nextPageEl,"disabled",!this.hasNextPage()),n.setClassName(this._firstEl,"disabled",this.isFirst()),n.setClassName(this._lastEl,"disabled",this.isLast())}n.setClassName(this._prevEl,"disabled",!this.hasPrevious()),n.setClassName(this._nextEl,"disabled",!this.hasNext())},_generateMarkup:function(e){n.addClassName(e,"ink-navigation");var t,r,a=!1;1>(t=i.select("ul.pagination",e)).length?(t=document.createElement("ul"),n.addClassName(t,"pagination")):(a=!0,t=t[0]),this._options.maxSize&&(r=document.createElement("li"),r.appendChild(o(this._options.firstLabel)),this._firstEl=r,n.addClassName(r,"first"),t.appendChild(r),r=document.createElement("li"),r.appendChild(o(this._options.previousPageLabel)),this._prevPageEl=r,n.addClassName(r,"previousPage"),t.appendChild(r)),r=document.createElement("li"),r.appendChild(o(this._options.previousLabel)),this._prevEl=r,n.addClassName(r,"previous"),t.appendChild(r),r=document.createElement("li"),r.appendChild(o(this._options.nextLabel)),this._nextEl=r,n.addClassName(r,"next"),t.appendChild(r),this._options.maxSize&&(r=document.createElement("li"),r.appendChild(o(this._options.nextPageLabel)),this._nextPageEl=r,n.addClassName(r,"nextPage"),t.appendChild(r),r=document.createElement("li"),r.appendChild(o(this._options.lastLabel)),this._lastEl=r,n.addClassName(r,"la
Ink.createModule("Ink.UI.SortableList","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1"],function(e,t,n,r,i,o){"use strict";var s=function(t,n){if(this._element=e.elOrSelector(t,"1st argument"),!e.isDOMElement(t)&&"string"!=typeof t)throw"[Ink.UI.SortableList] :: Invalid selector";if("string"==typeof t){if(this._element=Ink.Dom.Selector.select(t),1>this._element.length)throw"[Ink.UI.SortableList] :: Selector has returned no elements";this._element=this._element[0]}else this._element=t;if(this._options=Ink.extendObj({dragObject:"li"},Ink.Dom.Element.data(this._element)),this._options=Ink.extendObj(this._options,n||{}),this._handlers={down:Ink.bindEvent(this._onDown,this),move:Ink.bindEvent(this._onMove,this),up:Ink.bindEvent(this._onUp,this)},this._model=[],this._index=void 0,this._isMoving=!1,this._options.model instanceof Array)this._model=this._options.model,this._createdFrom="JSON";else{if("ul"!==this._element.nodeName.toLowerCase())throw new TypeError("You must pass a selector expression/DOM element as 1st option or provide a model on 2nd argument!");this._createdFrom="DOM"}if(this._dragTriggers=i.select(this._options.dragObject,this._element),!this._dragTriggers)throw"[Ink.UI.SortableList] :: Drag object not found";this._init()};return s.prototype={_init:function(){"DOM"===this._createdFrom&&(this._extractModelFromDOM(),this._createdFrom="JSON");var n="ontouchstart"in document.documentElement;this._down=n?"touchstart":"mousedown",this._move=n?"touchmove":"mousemove",this._up=n?"touchend":"mouseup";var r=document.body;t.observe(r,this._move,this._handlers.move),t.observe(r,this._up,this._handlers.up),this._observe(),e.registerInstance(this,this._element,"sortableList")},_observe:function(){t.observe(this._element,this._down,this._handlers.down)},_extractModelFromDOM:function(){this._model=[];var e=this,t=i.select("> li",this._element);o.each(t,function(t){var n=t.innerHTML;e._model.push(n)})},_generateMarkup:function(){var e=document.createElement("ul");e.className="unstyled ink-sortable-list";var t=this;return o.each(this._model,function(n,r){var i=document.createElement("li");r===t._index&&(i.className="drag"),i.innerHTML=[n].join(""),e.appendChild(i)}),e},_getY:function(e){return 0===e.type.indexOf("touch")?e.changedTouches[0].pageY:"number"==typeof e.pageY?e.pageY:e.clientY},_refresh:function(t){var n=this._generateMarkup();this._element.parentNode.replaceChild(n,this._element),this._element=n,e.restoreIdAndClasses(this._element,this),this._dragTriggers=i.select(this._options.dragObject,this._element),t||this._observe()},_onDown:function(n){if(!this._isMoving){var r=t.element(n);if(!o.inArray(r,this._dragTriggers)){for(;!o.inArray(r,this._dragTriggers)&&"body"!==r.nodeName.toLowerCase();)r=r.parentNode;if("body"===r.nodeName.toLowerCase())return}t.stop(n);var i;if("li"!==r.nodeName.toLowerCase())for(;"li"!==r.nodeName.toLowerCase()&&"body"!==r.nodeName.toLowerCase();)r=r.parentNode;return i=r,this._index=e.childIndex(i),this._height=i.offsetHeight,this._startY=this._getY(n),this._isMoving=!0,document.body.style.cursor="move",this._refresh(!1),!1}},_onMove:function(e){if(this._isMoving){t.stop(e);var n=this._getY(e),r=n-this._startY,i=r>0?1:-1,o=i*Math.floor(Math.abs(r)/this._height);if(0!==o&&(o/=Math.abs(o),!(-1===o&&0===this._index||1===o&&this._index===this._model.length-1))){var s=o>0?this._index:this._index+o,a=0>o?this._index:this._index+o;this._model.splice(s,2,this._model[a],this._model[s]),this._index+=o,this._startY=n,this._refresh(!1)}}},_onUp:function(e){this._isMoving&&(t.stop(e),this._index=void 0,this._isMoving=!1,document.body.style.cursor="",this._refresh())},getModel:function(){return this._model.slice()},destroy:e.destroyComponent},s});
Ink.createModule("Ink.UI.Spy","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1"],function(e,t,n,r,i,o){"use strict";var s=function(t,n){this._rootElement=e.elOrSelector(t,"1st argument"),this._options=Ink.extendObj({target:void 0},r.data(this._rootElement)),this._options=Ink.extendObj(this._options,n||{}),this._options.target=e.elOrSelector(this._options.target,"Target"),this._scrollTimeout=null,this._init()};return s.prototype={_elements:[],_init:function(){t.observe(document,"scroll",Ink.bindEvent(this._onScroll,this)),this._elements.push(this._rootElement)},_onScroll:function(){var e=r.scrollHeight();if(!(this._rootElement.offsetTop>e)){for(var t=0,s=this._elements.length;s>t;t++)if(e>=this._elements[t].offsetTop&&this._elements[t]!==this._rootElement&&this._elements[t].offsetTop>this._rootElement.offsetTop)return;o.each(i.select("a",this._options.target),Ink.bind(function(e){var t="name"in this._rootElement&&this._rootElement.name?"#"+this._rootElement.name:"#"+this._rootElement.id;e.href.substr(e.href.indexOf("#"))===t?n.addClassName(r.findUpwardsByTag(e,"li"),"active"):n.removeClassName(r.findUpwardsByTag(e,"li"),"active")},this))}}},s});
Ink.createModule("Ink.UI.Sticky","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1"],function(e,t,n,r,i){"use strict";var o=function(t,n){if("object"!=typeof t&&"string"!=typeof t)throw"[Sticky] :: Invalid selector defined";if("object"==typeof t)this._rootElement=t;else{if(this._rootElement=i.select(t),0>=this._rootElement.length)throw"[Sticky] :: Can't find any element with the specified selector";this._rootElement=this._rootElement[0]}this._options=Ink.extendObj({offsetBottom:0,offsetTop:0,topElement:void 0,bottomElement:void 0},r.data(this._rootElement)),this._options=Ink.extendObj(this._options,n||{}),this._options.topElement=this._options.topElement!==void 0?e.elOrSelector(this._options.topElement,"Top Element"):e.elOrSelector("body","Top Element"),this._options.bottomElement=this._options.bottomElement!==void 0?e.elOrSelector(this._options.bottomElement,"Bottom Element"):e.elOrSelector("body","Top Element"),this._computedStyle=window.getComputedStyle?window.getComputedStyle(this._rootElement,null):this._rootElement.currentStyle,this._dims={height:this._computedStyle.height,width:this._computedStyle.width},this._init()};return o.prototype={_init:function(){t.observe(document,"scroll",Ink.bindEvent(this._onScroll,this)),t.observe(window,"resize",Ink.bindEvent(this._onResize,this)),this._calculateOriginalSizes(),this._calculateOffsets()},_onScroll:function(){var e="CSS1Compat"===document.compatMode?document.documentElement:document.body;return 100*r.elementWidth(this._rootElement)/e.clientWidth>90||649>=e.clientWidth?(r.hasAttribute(this._rootElement,"style")&&this._rootElement.removeAttribute("style"),void 0):(this._scrollTimeout&&clearTimeout(this._scrollTimeout),this._scrollTimeout=setTimeout(Ink.bind(function(){var e=r.scrollHeight();if(r.hasAttribute(this._rootElement,"style"))this._options.originalTop-this._options.originalOffsetTop>=e?this._rootElement.removeAttribute("style"):document.body.scrollHeight-(e+parseInt(this._dims.height,10))<this._options.offsetBottom?(this._rootElement.style.position="fixed",this._rootElement.style.top="auto",this._rootElement.style.left=this._options.originalLeft+"px",this._rootElement.style.bottom=this._options.offsetBottom<parseInt(document.body.scrollHeight-(document.documentElement.clientHeight+e),10)?this._options.originalOffsetBottom+"px":this._options.offsetBottom-parseInt(document.body.scrollHeight-(document.documentElement.clientHeight+e),10)+"px",this._rootElement.style.width=this._options.originalWidth+"px"):document.body.scrollHeight-(e+parseInt(this._dims.height,10))>=this._options.offsetBottom&&(this._rootElement.style.left=this._options.originalLeft+"px",this._rootElement.style.position="fixed",this._rootElement.style.bottom="auto",this._rootElement.style.left=this._options.originalLeft+"px",this._rootElement.style.top=this._options.originalOffsetTop+"px",this._rootElement.style.width=this._options.originalWidth+"px");else{if(this._options.originalTop-this._options.originalOffsetTop>=e)return;this._rootElement.style.left=this._options.originalLeft+"px",this._rootElement.style.position="fixed",this._rootElement.style.bottom="auto",this._rootElement.style.left=this._options.originalLeft+"px",this._rootElement.style.top=this._options.originalOffsetTop+"px",this._rootElement.style.width=this._options.originalWidth+"px"}this._scrollTimeout=void 0},this),0),void 0)},_onResize:function(){this._resizeTimeout&&clearTimeout(this._resizeTimeout),this._resizeTimeout=setTimeout(Ink.bind(function(){this._rootElement.removeAttribute("style"),this._calculateOriginalSizes(),this._calculateOffsets()},this),0)},_calculateOffsets:function(){if(this._options.topElement!==void 0)if("body"!==this._options.topElement.nodeName.toLowerCase()){var e=r.elementHeight(this._options.topElement),t=r.elementTop(this._options.topElement);this._options.offsetTop=parseInt(e,10)+parseInt(t,10)+parseInt(this._options.originalOffsetTop,10)}else this._options.offsetTop=parseInt(this._options.originalOffsetTop,10);if(this._options.bottomElement!==void 0)if("bod
Ink.createModule("Ink.UI.Table","1",["Ink.Net.Ajax_1","Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1","Ink.Util.String_1"],function(e,t,n,i,r,o,s,a){"use strict";var l=function(e,n){if(this._rootElement=t.elOrSelector(e,"1st argument"),"table"!==this._rootElement.nodeName.toLowerCase())throw"[Ink.UI.Table] :: The element is not a table";this._options=Ink.extendObj({pageSize:void 0,endpoint:void 0,loadMode:"full",allowResetSorting:!1,visibleFields:void 0},r.data(this._rootElement)),this._options=Ink.extendObj(this._options,n||{}),this._markupMode=this._options.endpoint===void 0,this._options.visibleFields&&(this._options.visibleFields=this._options.visibleFields.split(",")),this._handlers={click:Ink.bindEvent(this._onClick,this)},this._originalFields=[],this._sortableFields={},this._originalData=this._data=[],this._headers=[],this._pagination=null,this._totalRows=0,this._init()};return l.prototype={_init:function(){if(this._markupMode){if(this._setHeadersHandlers(),s.each(o.select("tbody tr",this._rootElement),Ink.bind(function(e){this._data.push(e)},this)),this._originalData=this._data.slice(0),this._totalRows=this._data.length,"pageSize"in this._options&&this._options.pageSize!==void 0){for(this._pagination=this._rootElement.nextSibling;1!==this._pagination.nodeType;)this._pagination=this._pagination.nextSibling;if("nav"!==this._pagination.nodeName.toLowerCase())throw"[Ink.UI.Table] :: Missing the pagination markup or is mis-positioned";var e=Ink.getModule("Ink.UI.Pagination",1);this._pagination=new e(this._pagination,{size:Math.ceil(this._totalRows/this._options.pageSize),onChange:Ink.bind(function(e){this._paginate(e._current+1)},this)}),this._paginate(1)}}else this._getData(this._options.endpoint,!0)},_onClick:function(e){var i,l,u=n.element(e),c=r.data(u),h="pageSize"in this._options&&this._options.pageSize!==void 0;if("th"===u.nodeName.toLowerCase()&&"sortable"in c&&"true"==""+c.sortable){if(n.stop(e),i=-1,s.inArray(u,this._headers))for(l=0;this._headers.length>l;l++)if(this._headers[l]===u){i=l;break}if(!this._markupMode&&h){for(var d in this._sortableFields)d!=="col_"+i&&(this._sortableFields[d]="none",this._headers[d.replace("col_","")].innerHTML=a.stripTags(this._headers[d.replace("col_","")].innerHTML));"asc"===this._sortableFields["col_"+i]?(this._sortableFields["col_"+i]="desc",this._headers[i].innerHTML=a.stripTags(this._headers[i].innerHTML)+'<i class="icon-caret-down"></i>'):(this._sortableFields["col_"+i]="asc",this._headers[i].innerHTML=a.stripTags(this._headers[i].innerHTML)+'<i class="icon-caret-up"></i>'),this._pagination.setCurrent(this._pagination._current)}else{if(-1===i)return;if("desc"===this._sortableFields["col_"+i]&&this._options.allowResetSorting&&"true"==""+this._options.allowResetSorting)this._headers[i].innerHTML=a.stripTags(this._headers[i].innerHTML),this._sortableFields["col_"+i]="none",this._data=this._originalData.slice(0);else{for(var d in this._sortableFields)d!=="col_"+i&&(this._sortableFields[d]="none",this._headers[d.replace("col_","")].innerHTML=a.stripTags(this._headers[d.replace("col_","")].innerHTML));this._sort(i),"asc"===this._sortableFields["col_"+i]?(this._data.reverse(),this._sortableFields["col_"+i]="desc",this._headers[i].innerHTML=a.stripTags(this._headers[i].innerHTML)+'<i class="icon-caret-down"></i>'):(this._sortableFields["col_"+i]="asc",this._headers[i].innerHTML=a.stripTags(this._headers[i].innerHTML)+'<i class="icon-caret-up"></i>')}var p=o.select("tbody",this._rootElement)[0];t.cleanChildren(p),s.each(this._data,function(e){p.appendChild(e)}),this._pagination.setCurrent(0),this._paginate(1)}}},_paginate:function(e){s.each(this._data,Ink.bind(function(t,n){n>=(e-1)*parseInt(this._options.pageSize,10)&&(e-1)*parseInt(this._options.pageSize,10)+parseInt(this._options.pageSize,10)>n?i.removeClassName(t,"hide-all"):i.addClassName(t,"hide-all")},this))},_sort:function(e){this._data.sort(Ink.bind(function(t,n){var i=r.textContent(o.select("td",t)[e]),s=r.textContent(o.select("td",n)[e]),a=RegExp(/\d/g);re
Ink.createModule("Ink.UI.Tabs","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1"],function(e,t,n,i,r,o){"use strict";var s=function(t,n){if(e.isDOMElement(t))this._element=t;else{if(t=r.select(t),0===t.length)throw new TypeError("1st argument must either be a DOM Element or a selector expression!");this._element=t[0]}this._options=Ink.extendObj({preventUrlChange:!1,active:void 0,disabled:[],onBeforeChange:void 0,onChange:void 0},i.data(t)),this._options=Ink.extendObj(this._options,n||{}),this._handlers={tabClicked:Ink.bindEvent(this._onTabClicked,this),disabledTabClicked:Ink.bindEvent(this._onDisabledTabClicked,this),resize:Ink.bindEvent(this._onResize,this)},this._init()};return s.prototype={_init:function(){this._menu=r.select(".tabs-nav",this._element)[0],this._menuTabs=this._getChildElements(this._menu),this._contentTabs=r.select(".tabs-content",this._element),this._initializeDom(),this._observe(),this._setFirstActive(),this._changeTab(this._activeMenuLink),this._handlers.resize(),e.registerInstance(this,this._element,"tabs")},_initializeDom:function(){for(var e=0;this._contentTabs.length>e;e++)n.hide(this._contentTabs[e])},_observe:function(){o.each(this._menuTabs,Ink.bind(function(e){var t=r.select("a",e)[0];o.inArray(t.getAttribute("href"),this._options.disabled)?this.disable(t):this.enable(t)},this)),t.observe(window,"resize",this._handlers.resize)},_setFirstActive:function(){var e=window.location.hash;this._activeContentTab=r.select(e,this._element)[0]||r.select(this._hashify(this._options.active),this._element)[0]||r.select(".tabs-content",this._element)[0],this._activeMenuLink=this._findLinkByHref(this._activeContentTab.getAttribute("id")),this._activeMenuTab=this._activeMenuLink.parentNode},_changeTab:function(e,t){t&&this._options.onBeforeChange!==void 0&&this._options.onBeforeChange(this);var i=e.getAttribute("href");n.removeClassName(this._activeMenuTab,"active"),n.removeClassName(this._activeContentTab,"active"),n.addClassName(this._activeContentTab,"hide-all"),this._activeMenuLink=e,this._activeMenuTab=this._activeMenuLink.parentNode,this._activeContentTab=r.select(i.substr(i.indexOf("#")),this._element)[0],n.addClassName(this._activeMenuTab,"active"),n.addClassName(this._activeContentTab,"active"),n.removeClassName(this._activeContentTab,"hide-all"),n.show(this._activeContentTab),t&&this._options.onChange!==void 0&&this._options.onChange(this)},_onTabClicked:function(e){t.stop(e);var n=t.findElement(e,"A");"a"===n.nodeName.toLowerCase()&&("true"!=""+this._options.preventUrlChange&&(window.location.hash=n.getAttribute("href").substr(n.getAttribute("href").indexOf("#"))),n!==this._activeMenuLink&&this.changeTab(n))},_onDisabledTabClicked:function(e){t.stop(e)},_onResize:function(){var t=e.currentLayout();t!==this._lastLayout&&(t===e.Layouts.SMALL||t===e.Layouts.MEDIUM?(n.removeClassName(this._menu,"menu"),n.removeClassName(this._menu,"horizontal")):(n.addClassName(this._menu,"menu"),n.addClassName(this._menu,"horizontal")),this._lastLayout=t)},_hashify:function(e){return e?0===e.indexOf("#")?e:"#"+e:""},_findLinkByHref:function(e){e=this._hashify(e);var t;return o.each(this._menuTabs,Ink.bind(function(n){var i=r.select("a",n)[0];-1!==i.getAttribute("href").indexOf("#")&&i.getAttribute("href").substr(i.getAttribute("href").indexOf("#"))===e&&(t=i)},this)),t},_getChildElements:function(e){for(var t=[],n=e.children,i=0;n.length>i;i++)1===n[i].nodeType&&t.push(n[i]);return t},changeTab:function(e){var t=1===e.nodeType?e:this._findLinkByHref(this._hashify(e));t&&!n.hasClassName(t,"ink-disabled")&&this._changeTab(t,!0)},disable:function(e){var i=1===e.nodeType?e:this._findLinkByHref(this._hashify(e));i&&(t.stopObserving(i,"click",this._handlers.tabClicked),t.observe(i,"click",this._handlers.disabledTabClicked),n.addClassName(i,"ink-disabled"))},enable:function(e){var i=1===e.nodeType?e:this._findLinkByHref(this._hashify(e));i&&(t.stopObserving(i,"click",this._handlers.disabledTabClicked),t.observe(i,"click",this._handlers.tabClicked),n.removeClass
Ink.createModule("Ink.UI.Toggle","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1"],function(e,t,n,i,r,o){"use strict";var s=function(e,t){if("string"!=typeof e&&"object"!=typeof e)throw"[Ink.UI.Toggle] Invalid CSS selector to determine the root element";if("string"==typeof e){if(this._rootElement=r.select(e),0>=this._rootElement.length)throw"[Ink.UI.Toggle] Root element not found";this._rootElement=this._rootElement[0]}else this._rootElement=e;if(this._options=Ink.extendObj({target:void 0,triggerEvent:"click",closeOnClick:!0},i.data(this._rootElement)),this._options=Ink.extendObj(this._options,t||{}),this._targets=function(e){return"string"==typeof e?r.select(e):"object"==typeof e?e.constructor===Array?e:[e]:void 0}(this._options.target),!this._targets.length)throw"[Ink.UI.Toggle] Toggle target was not found! Supply a valid selector, array, or element through the `target` option.";this._init()};return s.prototype={_init:function(){this._accordion=n.hasClassName(this._rootElement.parentNode,"accordion")||n.hasClassName(this._targets[0].parentNode,"accordion"),t.observe(this._rootElement,this._options.triggerEvent,Ink.bindEvent(this._onTriggerEvent,this)),"true"==""+this._options.closeOnClick&&t.observe(document,"click",Ink.bindEvent(this._onClick,this))},_onTriggerEvent:function(){if(this._accordion){var e,t,o;for(o=n.hasClassName(this._targets[0].parentNode,"accordion")?this._targets[0].parentNode:this._targets[0].parentNode.parentNode,e=r.select(".toggle",o),t=0;e.length>t;t+=1){var s=i.data(e[t]),a=r.select(s.target,o);a.length>0&&a[0]!==this._targets[0]&&(a[0].style.display="none")}}for(var l,u,c=0,h=this._targets.length;h>c;c++)l="none"===n.getStyle(this._targets[c],"display")?"show-all":"hide-all",u="none"===n.getStyle(this._targets[c],"display")?"block":"none",n.removeClassName(this._targets[c],"show-all"),n.removeClassName(this._targets[c],"hide-all"),n.addClassName(this._targets[c],l),this._targets[c].style.display=u;"show-all"===l?n.addClassName(this._rootElement,"active"):n.removeClassName(this._rootElement,"active")},_onClick:function(e){var n,r=t.element(e),s=o.some(this._targets,function(e){return i.isAncestorOf(e,r)});if(this._rootElement!==r&&!i.isAncestorOf(this._rootElement,r)&&!s){if((n=Ink.ss(".ink-shade")).length)for(var a=n.length,l=0;a>l;l++)if(i.isAncestorOf(n[l],r)&&i.isAncestorOf(n[l],this._rootElement))return;i.findUpwardsByClass(r,"toggle")&&this._dismiss(this._rootElement)}},_dismiss:function(){if("none"!==n.getStyle(this._targets[0],"display")){for(var e=0,t=this._targets.length;t>e;e++)n.removeClassName(this._targets[e],"show-all"),n.addClassName(this._targets[e],"hide-all"),this._targets[e].style.display="none";n.removeClassName(this._rootElement,"active")}}},s});
Ink.createModule("Ink.UI.Tooltip","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1","Ink.Dom.Css_1","Ink.Dom.Browser_1"],function(e,t,n,i,o,r){"use strict";function s(e,t){this._init(e,t||{})}function a(e,t){this._init(e,t)}var l,u,c;(function(){for(var e=document.createElement("DIV"),t=["transition","oTransition","msTransition","mozTransition","webkitTransition"],n=0;t.length>n;n++)if(e.style[t[n]+"Duration"]!==void 0){l=t[n]+"Duration",u=t[n]+"Property",c=t[n]+"TimingFunction";break}})();var h=document.getElementsByTagName("body"),d=h&&h.length?h[0]:document.documentElement;return s.prototype={_init:function(e,t){var n;if(this.options=Ink.extendObj({where:"up",zIndex:1e4,left:10,top:10,spacing:8,forever:0,color:"",timeout:0,delay:0,template:null,templatefield:null,fade:.3,text:""},t||{}),"string"==typeof e)n=i.select(e);else{if("object"!=typeof e)throw"Element expected";n=[e]}this.tooltips=[];for(var o=0,r=n.length;r>o;o++)this.tooltips[o]=new a(this,n[o])},destroy:function(){o.each(this.tooltips,function(e){e._destroy()}),this.tooltips=null,this.options=null}},a.prototype={_oppositeDirections:{left:"right",right:"left",up:"down",down:"up"},_init:function(e,n){t.observe(n,"mouseover",Ink.bindEvent(this._onMouseOver,this)),t.observe(n,"mouseout",Ink.bindEvent(this._onMouseOut,this)),t.observe(n,"mousemove",Ink.bindEvent(this._onMouseMove,this)),this.root=e,this.element=n,this._delayTimeout=null,this.tooltip=null},_makeTooltip:function(e){if(!this._getOpt("text"))return!1;var n=this._createTooltipElement();this.tooltip&&this._removeTooltip(),this.tooltip=n,this._fadeInTooltipElement(n),this._placeTooltipElement(n,e),t.observe(n,"mouseover",Ink.bindEvent(this._onTooltipMouseOver,this));var i=this._getFloatOpt("timeout");i&&setTimeout(Ink.bind(function(){this.tooltip===n&&this._removeTooltip()},this),1e3*i)},_createTooltipElement:function(){var t,o,s=this._getOpt("template"),a=this._getOpt("templatefield");if(s){var l=document.createElement("DIV");if(l.innerHTML=e.elOrSelector(s,"options.template").outerHTML,t=l.firstChild,a){if(o=i.select(a,t),!o)throw"options.templatefield must be a valid selector within options.template";o=o[0]}else o=t}else t=document.createElement("DIV"),r.addClassName(t,"ink-tooltip"),r.addClassName(t,this._getOpt("color")),o=document.createElement("DIV"),r.addClassName(o,"content"),t.appendChild(o);return n.setTextContent(o,this._getOpt("text")),t.style.display="block",t.style.position="absolute",t.style.zIndex=this._getIntOpt("zIndex"),t},_fadeInTooltipElement:function(e){var t=this._getFloatOpt("fade");l&&t&&(e.style.opacity="0",e.style[l]=t+"s",e.style[u]="opacity",e.style[c]="ease-in-out",setTimeout(function(){e.style.opacity="1"},0))},_placeTooltipElement:function(e,t){var i=this._getOpt("where");if("mousemove"===i||"mousefix"===i){var o=t;this._setPos(o[0],o[1]),d.appendChild(e)}else if(i.match(/(up|down|left|right)/)){d.appendChild(e);var s=n.offset(this.element),a=s[0],l=s[1];a instanceof Array&&(l=a[1],a=a[0]);var u=n.elementWidth(this.element)/2-n.elementWidth(e)/2,c=n.elementHeight(this.element)/2-n.elementHeight(e)/2,h=this._getIntOpt("spacing"),p=n.elementDimensions(e),f=n.elementDimensions(this.element),m=n.scrollWidth()+n.viewportWidth(),g=n.scrollHeight()+n.viewportHeight();"left"===i&&0>a-p[0]?i="right":"right"===i&&a+p[0]>m?i="left":"up"===i&&0>l-p[1]?i="down":"down"===i&&l+p[1]>g&&(i="up"),"up"===i?(l-=p[1],l-=h,a+=u):"down"===i?(l+=f[1],l+=h,a+=u):"left"===i?(a-=p[0],a-=h,l+=c):"right"===i&&(a+=f[0],a+=h,l+=c);var v=null;i.match(/(up|down|left|right)/)&&(v=document.createElement("SPAN"),r.addClassName(v,"arrow"),r.addClassName(v,this._oppositeDirections[i]),e.appendChild(v));var _=this._getLocalScroll(),y=a-_[0],b=l-_[1],w=b+p[1]-g,E=y+p[0]-m,k=0-y,C=0-b;w>0?(v&&(v.style.top=p[1]/2+w+"px"),b-=w):C>0?(v&&(v.style.top=p[1]/2-C+"px"),b+=C):E>0?(v&&(v.style.left=p[0]/2+E+"px"),y-=E):k>0&&(v&&(v.style.left=p[0]/2-k+"px"),y+=k),e.style.left=y+"px",e.style.top=b+"px"}},_removeTooltip:function(){var e=this.tooltip;if(e){var t=Ink.bind(n.re
Ink.createModule("Ink.UI.TreeView","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1"],function(e,t,n,i,o,r){"use strict";var s=function(t,n){if(!e.isDOMElement(t)&&"string"!=typeof t)throw"[Ink.UI.TreeView] :: Invalid selector";if("string"==typeof t){if(this._element=o.select(t),1>this._element.length)throw"[Ink.UI.TreeView] :: Selector has returned no elements";this._element=this._element[0]}else this._element=t;this._options=Ink.extendObj({node:"li",child:"ul"},i.data(this._element)),this._options=Ink.extendObj(this._options,n||{}),this._init()};return s.prototype={_init:function(){this._handlers={click:Ink.bindEvent(this._onClick,this)},t.observe(this._element,"click",this._handlers.click);var e,i=o.select(this._options.node,this._element);r.each(i,Ink.bind(function(t){n.hasClassName(t,"open")||(n.hasClassName(t,"closed")||n.addClassName(t,"closed"),e=o.select(this._options.child,t),r.each(e,Ink.bind(function(e){n.hasClassName(e,"hide-all")||n.addClassName(e,"hide-all")},this)))},this))},_onClick:function(e){var i=t.element(e);if("."===this._options.node[0]){if(!n.hasClassName(i,this._options.node.substr(1)))for(;!n.hasClassName(i,this._options.node.substr(1))&&"body"!==i.nodeName.toLowerCase();)i=i.parentNode}else if("#"===this._options.node[0]){if(i.id!==this._options.node.substr(1))for(;i.id!==this._options.node.substr(1)&&"body"!==i.nodeName.toLowerCase();)i=i.parentNode}else if(i.nodeName.toLowerCase()!==this._options.node)for(;i.nodeName.toLowerCase()!==this._options.node&&"body"!==i.nodeName.toLowerCase();)i=i.parentNode;if("body"!==i.nodeName.toLowerCase()){var r=o.select(this._options.child,i);r.length>0&&(t.stop(e),r=r[0],n.hasClassName(r,"hide-all")?(n.removeClassName(r,"hide-all"),n.addClassName(i,"open"),n.removeClassName(i,"closed")):(n.addClassName(r,"hide-all"),n.removeClassName(i,"open"),n.addClassName(i,"closed")))}}},s});
Ink.createModule("Ink.UI.SmoothScroller","1",["Ink.Dom.Event_1","Ink.Dom.Selector_1","Ink.Dom.Loaded_1"],function(e,t,n){"use strict";var i={speed:10,gy:function(e){var t;if(t=e.offsetTop,e.offsetParent)for(;e=e.offsetParent;)t+=e.offsetTop;return t},scrollTop:function(){var e=document.body,t=document.documentElement;return e&&e.scrollTop?e.scrollTop:t&&t.scrollTop?t.scrollTop:window.pageYOffset?window.pageYOffset:0},add:function(t,n,i){e.observe(t,n,i)},end:function(t){return window.event?(window.event.cancelBubble=!0,window.event.returnValue=!1,void 0):(e.stop(t),void 0)},scroll:function(e){var t=Ink.UI.SmoothScroller.scrollTop();t+=e>t?Math.ceil((e-t)/Ink.UI.SmoothScroller.speed):(e-t)/Ink.UI.SmoothScroller.speed,window.scrollTo(0,t),(t===e||Ink.UI.SmoothScroller.offsetTop===t)&&clearInterval(Ink.UI.SmoothScroller.interval),Ink.UI.SmoothScroller.offsetTop=t},init:function(){n.run(Ink.UI.SmoothScroller.render)},render:function(){var n=t.select("a.scrollableLink");Ink.UI.SmoothScroller.end(this);for(var i=0;n.length>i;i++){var o=n[i];!o.href||-1===o.href.indexOf("#")||o.pathname!==location.pathname&&"/"+o.pathname!==location.pathname||(Ink.UI.SmoothScroller.add(o,"click",Ink.UI.SmoothScroller.end),e.observe(o,"click",Ink.bindEvent(Ink.UI.SmoothScroller.clickScroll,this,o)))}},clickScroll:function(e,n){if(Ink.UI.SmoothScroller.end(n),null!==n&&null!==n.getAttribute("href")){var i=n.href.indexOf("#");if(-1===i)return;var o=n.href.substr(i+1),r=t.select('a[name="'+o+'"],#'+o);if(r[0]!==void 0){if(-1===n.parentNode.className.indexOf("active")){var s=n.parentNode.parentNode,a=s.firstChild;do if(a.tagName!==void 0&&"LI"===a.tagName.toUpperCase()&&-1!==a.className.indexOf("active")){a.className=a.className.replace("active","");break}while(a=a.nextSibling);n.parentNode.className+=" active"}clearInterval(Ink.UI.SmoothScroller.interval),Ink.UI.SmoothScroller.interval=setInterval("Ink.UI.SmoothScroller.scroll("+Ink.UI.SmoothScroller.gy(r[0])+")",10)}}}};return i});
Ink.createModule("Ink.UI.ImageQuery","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1"],function(e,t,n,i,o,r){"use strict";var s=function(t,n){if(!e.isDOMElement(t)&&"string"!=typeof t)throw"[ImageQuery] :: Invalid selector";if("string"==typeof t){if(this._element=o.select(t),1>this._element.length)throw"[ImageQuery] :: Selector has returned no elements";if(this._element.length>1){var r;for(r=1;this._element.length>r;r+=1)new Ink.UI.ImageQuery(this._element[r],n)}this._element=this._element[0]}else this._element=t;this._options=Ink.extendObj({queries:[],onLoad:null},i.data(this._element)),this._options=Ink.extendObj(this._options,n||{});var s;if(-1!==(s=this._element.src.lastIndexOf("?"))){var a=this._element.src.substr(s);this._filename=this._element.src.replace(a,"").split("/").pop()+a}else this._filename=this._element.src.split("/").pop();this._init()};return s.prototype={_init:function(){this._options.queries=r.sortMulti(this._options.queries,"width").reverse(),this._handlers={resize:Ink.bindEvent(this._onResize,this),load:Ink.bindEvent(this._onLoad,this)},"function"==typeof this._options.onLoad&&t.observe(this._element,"onload",this._handlers.load),t.observe(window,"resize",this._handlers.resize),this._handlers.resize.call(this)},_onResize:function(){clearTimeout(e);var e=setTimeout(Ink.bind(function(){if(!this._options.queries||this._options.queries==={})return clearTimeout(e),void 0;var t,n,i;for("number"==typeof window.innerWidth?i=window.innerWidth:document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)?i=document.documentElement.clientWidth:document.body&&(document.body.clientWidth||document.body.clientHeight)&&(i=document.body.clientWidth),t=0;this._options.queries.length>t;t+=1)if(i>=this._options.queries[t].width){n=t;break}n===void 0&&(n=this._options.queries.length-1);var o=this._options.queries[n].src||this._options.src;if("devicePixelRatio"in window&&window.devicePixelRatio>1&&"retina"in this._options&&(o=this._options.queries[n].retina||this._options.retina),this._options.queries[n].file=this._filename,"function"==typeof o&&(o=o.apply(this,[this._element,this._options.queries[n]]),"string"!=typeof o))throw'[ImageQuery] :: "src" callback does not return a string';var r;for(r in this._options.queries[n])if(this._options.queries[n].hasOwnProperty(r)){if("src"===r||"retina"===r)continue;o=o.replace("{:"+r+"}",this._options.queries[n][r])}this._element.src=o,delete this._options.queries[n].file,e=void 0},this),300)},_onLoad:function(){this._options.onLoad.call(this)}},s});
Ink.createModule("Ink.UI.FormValidator","2",["Ink.UI.Aux_1","Ink.Dom.Element_1","Ink.Dom.Event_1","Ink.Dom.Selector_1","Ink.Dom.Css_1","Ink.Util.Array_1","Ink.Util.I18n_1","Ink.Util.Validator_1"],function(e,t,n,i,o,r,s,a){"use strict";var l={required:function(e){return e!==void 0&&!/^\s*$/.test(e)},min_length:function(e,t){return"string"==typeof e&&e.length>=parseInt(t,10)},max_length:function(e,t){return"string"==typeof e&&e.length<=parseInt(t,10)},exact_length:function(e,t){return"string"==typeof e&&e.length===parseInt(t,10)},email:function(e){return"string"==typeof e&&a.mail(e)},url:function(e,t){return t=t||!1,"string"==typeof e&&a.url(e,t)},ip:function(e,t){return"string"!=typeof e?!1:a.isIP(e,t)},phone:function(e,t){if("string"!=typeof e)return!1;var n=t?t.toUpperCase():"";return a["is"+n+"Phone"](e)},credit_card:function(e,t){return"string"!=typeof e?!1:a.isCreditCard(e,t||"default")},date:function(e,t){return"string"==typeof e&&a.isDate(t,e)},alpha:function(e,t){return a.ascii(e,{singleLineWhitespace:t})},text:function(e,t,n){return a.unicode(e,{singleLineWhitespace:t,unicodePunctuation:n})},latin:function(e,t,n){return"string"!=typeof e?!1:a.latin1(e,{latin1Punctuation:t,singleLineWhitespace:n})},alpha_numeric:function(e){return a.ascii(e,{numbers:!0})},alpha_dash:function(e){return a.ascii(e,{dash:!0,underscore:!0})},digit:function(e){return"string"==typeof e&&/^[0-9]{1}$/.test(e)},integer:function(e,t){return a.number(e,{negative:!t,decimalPlaces:0})},decimal:function(e,t,n,i){return a.number(e,{decimalSep:t||".",decimalPlaces:+n||null,maxDigits:+i})},numeric:function(e,t,n,i){return t=t||".",-1!==e.indexOf(t)?l.decimal(e,t,n,i):l.integer(e)},range:function(e,t,n,i){return e=+e,t=+t,n=+n,isNaN(e)||isNaN(t)||isNaN(n)?!1:t>e||e>n?!1:i?0===(e-t)%i:!0},color:function(e){return a.isColor(e)},matches:function(e,t){return e===this.getFormElements()[t][0].getValue()}},u=new s({en_US:{"formvalidator.required":"The {field} filling is mandatory","formvalidator.min_length":"The {field} must have a minimum size of {param1} characters","formvalidator.max_length":"The {field} must have a maximum size of {param1} characters","formvalidator.exact_length":"The {field} must have an exact size of {param1} characters","formvalidator.email":"The {field} must have a valid e-mail address","formvalidator.url":"The {field} must have a valid URL","formvalidator.ip":"The {field} does not contain a valid {param1} IP address","formvalidator.phone":"The {field} does not contain a valid {param1} phone number","formvalidator.credit_card":"The {field} does not contain a valid {param1} credit card","formvalidator.date":"The {field} should contain a date in the {param1} format","formvalidator.alpha":"The {field} should only contain letters","formvalidator.text":"The {field} should only contain alphabetic characters","formvalidator.latin":"The {field} should only contain alphabetic characters","formvalidator.alpha_numeric":"The {field} should only contain letters or numbers","formvalidator.alpha_dashes":"The {field} should only contain letters or dashes","formvalidator.digit":"The {field} should only contain a digit","formvalidator.integer":"The {field} should only contain an integer","formvalidator.decimal":"The {field} should contain a valid decimal number","formvalidator.numeric":"The {field} should contain a number","formvalidator.range":"The {field} should contain a number between {param1} and {param2}","formvalidator.color":"The {field} should contain a valid color","formvalidator.matches":"The {field} should match the field {param1}","formvalidator.validation_function_not_found":"The rule {rule} has not been defined"},pt_PT:{"formvalidator.required":"Preencher {field} é obrigatório","formvalidator.min_length":"{field} deve ter no mínimo {param1} caracteres","formvalidator.max_length":"{field} tem um tamanho máximo de {param1} caracteres","formvalidator.exact_length":"{field} devia ter exactamente {param1} caracteres","formvalidator.email":"{field} deve ser um e-mail válido","formvalidator.url":"O {field} deve ser um URL válido","for
Ink.createModule("Ink.UI.FormValidator","1",["Ink.Dom.Css_1","Ink.Util.Validator_1"],function(e,t){"use strict";var n={version:"1",_flagMap:{"ink-fv-required":{msg:"Required field"},"ink-fv-email":{msg:"Invalid e-mail address"},"ink-fv-url":{msg:"Invalid URL"},"ink-fv-number":{msg:"Invalid number"},"ink-fv-phone_pt":{msg:"Invalid phone number"},"ink-fv-phone_cv":{msg:"Invalid phone number"},"ink-fv-phone_mz":{msg:"Invalid phone number"},"ink-fv-phone_ao":{msg:"Invalid phone number"},"ink-fv-date":{msg:"Invalid date"},"ink-fv-confirm":{msg:"Confirmation does not match"},"ink-fv-custom":{msg:""}},elements:{},confirmElms:{},hasConfirm:{},_errorClassName:"tip",_errorValidationClassName:"validaton",_errorTypeWarningClassName:"warning",_errorTypeErrorClassName:"error",validate:function(e,t){if(this._free(),t=Ink.extendObj({onSuccess:!1,onError:!1,customFlag:!1,confirmGroup:[]},t||{}),"string"==typeof e&&(e=document.getElementById(e)),null===e)return!1;this.element=e,(this.element.id===void 0||null===this.element.id||""===this.element.id)&&(this.element.id="ink-fv_randomid_"+Math.round(99999*Math.random())),this.custom=t.customFlag,this.confirmGroup=t.confirmGroup;var n=this._validateElements();return n.length>0?(t.onError?t.onError(n):this._showError(e,n),!1):(t.onError||this._clearError(e),this._clearCache(),t.onSuccess&&t.onSuccess(),!0)},reset:function(){this._clearError(),this._clearCache()},_free:function(){this.element=null,this.custom=!1,this.confirmGroup=!1},_clearCache:function(){this.element=null,this.elements=[],this.custom=!1,this.confirmGroup=!1},_getElements:function(){this.elements[this.element.id]=[],this.confirmElms[this.element.id]=[];for(var t=this.element.elements,n=!1,i=0,r=t.length;r>i;i++)if(n=t[i],null!==n.getAttribute("type")&&"radio"===n.getAttribute("type").toLowerCase()){if(0===this.elements[this.element.id].length||n.getAttribute("type")!==this.elements[this.element.id][this.elements[this.element.id].length-1].getAttribute("type")&&n.getAttribute("name")!==this.elements[this.element.id][this.elements[this.element.id].length-1].getAttribute("name"))for(var o in this._flagMap)if(e.hasClassName(n,o)){this.elements[this.element.id].push(n);break}}else{for(var s in this._flagMap)if(e.hasClassName(n,s)&&"ink-fv-confirm"!==s){this.elements[this.element.id].push(n);break}e.hasClassName(n,"ink-fv-confirm")&&(this.confirmElms[this.element.id].push(n),this.hasConfirm[this.element.id]=!0)}},_validateElements:function(){var t;this._getElements(),this.hasConfirm[this.element.id]!==void 0&&this.hasConfirm[this.element.id]===!0&&(t=this._makeConfirmGroups());for(var n,i=[],r=!1,o=!1,s=0,a=this.elements[this.element.id].length;a>s;s++)if(n=!1,r=this.elements[this.element.id][s],!r.disabled)for(var l in this._flagMap)e.hasClassName(r,l)&&("ink-fv-custom"!==l&&"ink-fv-confirm"!==l?this._isValid(r,l)||(n?i[i.length-1].errors.push(l):(i.push({elm:r,errors:[l]}),n=!0)):"ink-fv-confirm"!==l&&(o=this._isCustomValid(r),o.length>0&&i.push({elm:r,errors:[l],custom:o})));return i=this._validateConfirmGroups(t,i)},_validateConfirmGroups:function(e,t){var n=!1;for(var i in e)e.hasOwnProperty(i)&&(n=e[i],2===n.length&&n[0].value!==n[1].value&&t.push({elm:n[1],errors:["ink-fv-confirm"]}));return t},_makeConfirmGroups:function(){var t;if(this.confirmGroup&&this.confirmGroup.length>0){t={};for(var n=!1,i=!1,r=0,o=this.confirmElms[this.element.id].length;o>r;r++){n=this.confirmElms[this.element.id][r];for(var s=0,a=this.confirmGroup.length;a>s;s++)i=this.confirmGroup[s],e.hasClassName(n,i)&&(t[i]===void 0?t[i]=[n]:t[i].push(n))}return t}return 2===this.confirmElms[this.element.id].length&&(t={"ink-fv-confirm":[this.confirmElms[this.element.id][0],this.confirmElms[this.element.id][1]]}),t},_isCustomValid:function(t){for(var n=[],i=!1,r=0,o=this.custom.length;o>r;r++)i=this.custom[r],e.hasClassName(t,i.flag)&&(i.callback(t,i.msg)||n.push({flag:i.flag,msg:i.msg}));return n},_isValid:function(n,i){switch(i){case"ink-fv-required":if("select"===n.nodeName.toLowerCase())return n.selectedIndex>0?!0:!1;if("checkbox"!==n.getAttribute("type")
Ink.createModule("Ink.UI.Droppable","1",["Ink.Dom.Element_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.UI.Aux_1","Ink.Util.Array_1","Ink.Dom.Selector_1"],function(e,t,n,i,r,o){var s=function(e){return function(t){return n.addClassName(e,t)}},a=function(e){return function(t){return n.removeClassName(e,t)}},l={debug:!1,_droppables:[],_draggables:[],add:function(t,n){function r(e){e.style.position="inherit"}t=i.elOrSelector(t,"Droppable.add target element");var o=Ink.extendObj({hoverClass:n.hoverclass||!1,accept:!1,onHover:!1,onDrop:!1,onDropOut:!1},n||{},e.data(t));"string"==typeof o.hoverClass&&(o.hoverClass=o.hoverClass.split(/\s+/));var s,a=this,l={move:function(e,t){r(e),t.appendChild(e)},copy:function(e,t){r(e),t.appendChild(e.cloneNode)},revert:function(e){a._findDraggable(e).originalParent.appendChild(e),r(e)}};if("string"==typeof o.onHover&&(s=o.onHover,o.onHover=l[s],void 0===o.onHover))throw Error("Unknown hover event handler: "+s);if("string"==typeof o.onDrop&&(s=o.onDrop,o.onDrop=l[s],void 0===o.onDrop))throw Error("Unknown drop event handler: "+s);if("string"==typeof o.onDropOut&&(s=o.onDropOut,o.onDropOut=l[s],void 0===o.onDropOut))throw Error("Unknown dropOut event handler: "+s);var u={element:t,data:{},options:o};this._droppables.push(u),this._update(u)},_findData:function(e){for(var t=this._droppables,n=0,i=t.length;i>n;n++)if(t[n].element===e)return t[n]},_findDraggable:function(e){for(var t=this._draggables,n=0,i=t.length;i>n;n++)if(t[n].element===e)return t[n]},updateAll:function(){r.each(this._droppables,l._update)},update:function(e){this._update(this._findData(e))},_update:function(t){var n=t.data,i=t.element;n.left=e.offsetLeft(i),n.top=e.offsetTop(i),n.right=n.left+e.elementWidth(i),n.bottom=n.top+e.elementHeight(i)},remove:function(e){e=i.elOrSelector(e);for(var t=this._droppables.length,n=0;t>n;n++)if(this._droppables[n].element===e){this._droppables.splice(n,1);break}return t!==this._droppables.length},action:function(e,t,n,i){r.each(this._droppables,Ink.bind(function(l){var u=l.data,h=l.options,c=l.element;(!h.accept||o.matches(h.accept,[i]).length)&&("drag"!==t||this._findDraggable(i)||this._draggables.push({element:i,originalParent:i.parentNode}),e.x>=u.left&&e.x<=u.right&&e.y>=u.top&&e.y<=u.bottom?"drag"===t?(h.hoverClass&&r.each(h.hoverClass,s(c)),h.onHover&&h.onHover(i,c)):"drop"===t&&(h.hoverClass&&r.each(h.hoverClass,a(c)),h.onDrop&&h.onDrop(i,c,n)):"drag"===t&&h.hoverClass?r.each(h.hoverClass,a(c)):"drop"===t&&h.onDropOut&&h.onDropOut(i,c,n))},this))}};return l});
Ink.createModule("Ink.UI.Draggable","1",["Ink.Dom.Element_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Browser_1","Ink.Dom.Selector_1","Ink.UI.Aux_1"],function(e,t,n,i,o,r){function s(e,t,n){return e=Math.min(e,n),e=Math.max(e,t)}var a=0,l=1,h=function(e,t){this.init(e,t)};return h.prototype={init:function(n,o){var s=Ink.extendObj({constraint:!1,constraintElm:!1,top:!1,right:!1,bottom:!1,left:!1,handle:o.handler||!1,revert:!1,cursor:"move",zindex:o.zindex||9999,dragClass:"drag",onStart:!1,onEnd:!1,onDrag:!1,onChange:!1,droppableProxy:!1,mouseAnchor:void 0,skipChildren:!0,fps:100,debug:!1},o||{},e.data(n));this.options=s,this.element=r.elOrSelector(n),this.constraintElm=s.constraintElm&&r.elOrSelector(s.constraintElm),this.handle=!1,this.elmStartPosition=!1,this.active=!1,this.dragged=!1,this.prevCoords=!1,this.placeholder=!1,this.position=!1,this.zindex=!1,this.firstDrag=!0,s.fps&&(this.deltaMs=1e3/s.fps,this.lastRunAt=0),this.handlers={},this.handlers.start=Ink.bindEvent(this._onStart,this),this.handlers.dragFacade=Ink.bindEvent(this._onDragFacade,this),this.handlers.drag=Ink.bindEvent(this._onDrag,this),this.handlers.end=Ink.bindEvent(this._onEnd,this),this.handlers.selectStart=function(e){return t.stop(e),!1},this.handle=this.options.handle?r.elOrSelector(this.options.handle):this.element,this.handle.style.cursor=s.cursor,t.observe(this.handle,"touchstart",this.handlers.start),t.observe(this.handle,"mousedown",this.handlers.start),i.IE&&t.observe(this.element,"selectstart",this.handlers.selectStart)},destroy:function(){t.stopObserving(this.handle,"touchstart",this.handlers.start),t.stopObserving(this.handle,"mousedown",this.handlers.start),i.IE&&t.stopObserving(this.element,"selectstart",this.handlers.selectStart)},_getCoords:function(t){var n=[e.scrollWidth(),e.scrollHeight()];return{x:(t.touches?t.touches[0].clientX:t.clientX)+n[a],y:(t.touches?t.touches[0].clientY:t.clientY)+n[l]}},_cloneStyle:function(t,i){i.className=t.className,i.style.borderWidth="0",i.style.padding="0",i.style.position="absolute",i.style.width=e.elementWidth(t)+"px",i.style.height=e.elementHeight(t)+"px",i.style.left=e.elementLeft(t)+"px",i.style.top=e.elementTop(t)+"px",i.style.cssFloat=n.getStyle(t,"float"),i.style.display=n.getStyle(t,"display")},_onStart:function(i){if(!this.active&&t.isLeftClick(i)||i.button===void 0){var o=t.element(i);if(this.options.skipChildren&&o!==this.handle)return;t.stop(i),n.addClassName(this.element,this.options.dragClass),this.elmStartPosition=[e.elementLeft(this.element),e.elementTop(this.element)];var r=[parseInt(n.getStyle(this.element,"left"),10),parseInt(n.getStyle(this.element,"top"),10)],s=e.elementDimensions(this.element);this.originalPosition=[r[a]?r[a]:null,r[l]?r[l]:null],this.delta=this._getCoords(i),this.active=!0,this.position=n.getStyle(this.element,"position"),this.zindex=n.getStyle(this.element,"zIndex");var h=document.createElement("div");if(h.style.position=this.position,h.style.width=s[a]+"px",h.style.height=s[l]+"px",h.style.marginTop=n.getStyle(this.element,"margin-top"),h.style.marginBottom=n.getStyle(this.element,"margin-bottom"),h.style.marginLeft=n.getStyle(this.element,"margin-left"),h.style.marginRight=n.getStyle(this.element,"margin-right"),h.style.borderWidth="0",h.style.padding="0",h.style.cssFloat=n.getStyle(this.element,"float"),h.style.display=n.getStyle(this.element,"display"),h.style.visibility="hidden",this.delta2=[this.delta.x-this.elmStartPosition[a],this.delta.y-this.elmStartPosition[l]],this.options.mouseAnchor){var u=this.options.mouseAnchor.split(" "),c=[s[a],s[l]];"left"===u[0]?c[a]=0:"center"===u[0]&&(c[a]=parseInt(c[a]/2,10)),"top"===u[1]?c[l]=0:"center"===u[1]&&(c[l]=parseInt(c[l]/2,10)),this.applyDelta=[this.delta2[a]-c[a],this.delta2[l]-c[l]]}var d=this.options.fps?"dragFacade":"drag";if(this.placeholder=h,this.options.onStart&&this.options.onStart(this.element,i),this.options.droppableProxy){this.proxy=document.createElement("div"),s=[window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,window.innerHeight||document.documentElement
Ink.createModule("Ink.UI.DatePicker","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1","Ink.Util.Date_1","Ink.Dom.Browser_1"],function(e,t,n,i,o,r,s){"use strict";var a=function(t,n){t&&(this._dataField=e.elOrSelector(t,"1st argument")),this._options=Ink.extendObj({instance:"scdp_"+Math.round(99999*Math.random()),format:"yyyy-mm-dd",cssClass:"sapo_component_datepicker",position:"right",onFocus:!0,onYearSelected:void 0,onMonthSelected:void 0,validDayFn:void 0,startDate:!1,onSetDate:!1,displayInSelect:!1,showClose:!0,showClean:!0,yearRange:!1,dateRange:!1,startWeekDay:1,closeText:"Close",cleanText:"Clear",prevLinkText:"«",nextLinkText:"»",ofText:"&nbsp;de&nbsp;",month:{1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September",10:"October",11:"November",12:"December"},wDay:{0:"Sunday",1:"Monday",2:"Tuesday",3:"Wednesday",4:"Thursday",5:"Friday",6:"Saturday"}},i.data(this._dataField)||{}),this._options=Ink.extendObj(this._options,n||{}),this._options.format=this._dateParsers[this._options.format]||this._options.format,this._hoverPicker=!1,this._picker=null,this._options.pickerField&&(this._picker=e.elOrSelector(this._options.pickerField,"pickerField")),this._today=new Date,this._day=this._today.getDate(),this._month=this._today.getMonth(),this._year=this._today.getFullYear(),this._setMinMax(this._options.dateRange||this._options.yearRange),this._data=new Date(Date.UTC.apply(this,this._checkDateRange(this._year,this._month,this._day))),this._options.startDate&&"string"==typeof this._options.startDate&&/\d\d\d\d\-\d\d\-\d\d/.test(this._options.startDate)&&this.setDate(this._options.startDate),this._init(),this._render(),this._options.startDate||this._dataField&&"string"==typeof this._dataField.value&&this._dataField.value&&this.setDate(this._dataField.value),e.registerInstance(this,this._containerObject,"datePicker")};return a.prototype={version:"0.1",_init:function(){Ink.extendObj(this._options,this._lang||{})},_render:function(){this._containerObject=document.createElement("div"),this._containerObject.id=this._options.instance,this._containerObject.className="sapo_component_datepicker";var n=document.getElementsByTagName("body")[0];if(this._options.showClose||this._options.showClean){if(this._superTopBar=document.createElement("div"),this._superTopBar.className="sapo_cal_top_options",this._options.showClean){var o=document.createElement("a");o.className="clean",o.innerHTML=this._options.cleanText,this._superTopBar.appendChild(o)}if(this._options.showClose){var r=document.createElement("a");r.className="close",r.innerHTML=this._options.closeText,this._superTopBar.appendChild(r)}this._containerObject.appendChild(this._superTopBar)}var s=document.createElement("div");s.className="sapo_cal_top",this._monthDescContainer=document.createElement("div"),this._monthDescContainer.className="sapo_cal_month_desc",this._monthPrev=document.createElement("div"),this._monthPrev.className="sapo_cal_prev",this._monthPrev.innerHTML='<a href="#prev" class="change_month_prev">'+this._options.prevLinkText+"</a>",this._monthNext=document.createElement("div"),this._monthNext.className="sapo_cal_next",this._monthNext.innerHTML='<a href="#next" class="change_month_next">'+this._options.nextLinkText+"</a>",s.appendChild(this._monthPrev),s.appendChild(this._monthDescContainer),s.appendChild(this._monthNext),this._monthContainer=document.createElement("div"),this._monthContainer.className="sapo_cal_month",this._containerObject.appendChild(s),this._containerObject.appendChild(this._monthContainer),this._monthSelector=document.createElement("ul"),this._monthSelector.className="sapo_cal_month_selector";for(var a,l,h=1;12>=h;h++)0===(h-1)%4&&(a=document.createElement("ul")),l=document.createElement("li"),l.innerHTML='<a href="#" class="sapo_calmonth_'+(2===(h+"").length?h:"0"+h)+'">'+this._options.month[h].substring(0,3)+"</a>",a.appendChild(l),0===h%4&&this._monthSelector.appendChild(a);if(this._containerObject.appendChild(this._monthSelector),this._year
Ink.createModule("Ink.UI.Close","1",["Ink.Dom.Event_1","Ink.Dom.Element_1"],function(e,t){"use strict";var n=function(){e.observe(document.body,"click",function(n){var i=e.element(n);if(i=t.findUpwardsByClass(i,"ink-close")||t.findUpwardsByClass(i,"ink-dismiss")){var o=i;o=t.findUpwardsByClass(i,"ink-alert")||t.findUpwardsByClass(i,"ink-alert-block"),o&&(e.stop(n),t.remove(o))}})};return n});
Ink.createModule("Ink.UI.Carousel","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.UI.Pagination_1","Ink.Dom.Browser_1","Ink.Dom.Selector_1"],function(e,t,n,i,o,s){"use strict";var r=function(n,s){this._handlers={paginationChange:Ink.bind(this._onPaginationChange,this),windowResize:Ink.bind(this.refit,this)},t.observe(window,"resize",this._handlers.windowResize),this._element=e.elOrSelector(n,"1st argument"),this._options=Ink.extendObj({axis:"x",hideLast:!1,center:!1,keyboardSupport:!1,pagination:null,onChange:null},s||{},i.data(this._element)),this._isY="y"===this._options.axis;var r=this._element,a=Ink.s("ul.stage",r);if(this._ulEl=a,i.removeTextNodeChildren(a),this._options.hideLast){var l=document.createElement("div");l.className="hider",this._element.appendChild(l),l.style.position="absolute",l.style[this._isY?"left":"top"]="0",l.style[this._isY?"right":"bottom"]="0",l.style[this._isY?"bottom":"right"]="0",this._hiderEl=l}this.refit(),this._isY&&(this._ulEl.style.whiteSpace="normal"),this._options.pagination&&(e.isDOMElement(this._options.pagination)||"string"==typeof this._options.pagination?this._pagination=new o(this._options.pagination,{size:this._numPages,onChange:this._handlers.paginationChange}):(this._pagination=this._options.pagination,this._pagination._options.onChange=this._handlers.paginationChange,this._pagination.setSize(this._numPages),this._pagination.setCurrent(0)))};return r.prototype={refit:function(){this._liEls=Ink.ss("li.slide",this._ulEl);var e=this._liEls.length;this._ctnLength=this._size(this._element),this._elLength=this._size(this._liEls[0]),this._itemsPerPage=Math.floor(this._ctnLength/this._elLength),this._numPages=Math.ceil(e/this._itemsPerPage),this._deltaLength=this._itemsPerPage*this._elLength,this._isY?(this._element.style.width=this._liEls[0].offsetWidth+"px",this._ulEl.style.width=this._liEls[0].offsetWidth+"px"):this._ulEl.style.height=this._liEls[0].offsetHeight+"px",this._center(),this._updateHider(),this._IE7(),this._pagination&&(this._pagination.setSize(this._numPages),this._pagination.setCurrent(0))},_size:function(e){var t=i.outerDimensions(e);return this._isY?t[1]:t[0]},_center:function(){if(this._options.center){var e,t=Math.floor((this._ctnLength-this._elLength*this._itemsPerPage)/2);e=this._isY?[t,"px 0"]:["0 ",t,"px"],this._ulEl.style.padding=e.join("")}},_updateHider:function(){if(this._hiderEl){var e=Math.floor(this._ctnLength-this._elLength*this._itemsPerPage);this._options.center&&(e/=2),this._hiderEl.style[this._isY?"height":"width"]=e+"px"}},_IE7:function(){if(s.IE&&"7"==""+s.version.split(".")[0]){this._numPages;for(var e=Ink.ss("li.slide",this._ulEl),t=function(t,i){e[n].style[t]=i},n=0,i=e.length;i>n;n++)t("position","absolute"),t(this._isY?"top":"left",n*this._elLength+"px")}},_onPaginationChange:function(e){var t=e.getCurrent();this._ulEl.style["y"===this._options.axis?"top":"left"]=["-",t*this._deltaLength,"px"].join(""),this._options.onChange&&this._options.onChange.call(this,t)}},r});
Ink.createModule("Ink.UI.Modal","1",["Ink.UI.Aux_1","Ink.Dom.Event_1","Ink.Dom.Css_1","Ink.Dom.Element_1","Ink.Dom.Selector_1","Ink.Util.Array_1"],function(e,t,n,i,o,s){"use strict";var r=function(e,r){if("string"!=typeof e&&"object"!=typeof e&&r.markup===void 0)throw"Invalid Modal selector";if("string"==typeof e){if(""!==e){if(this._element=o.select(e),0===this._element.length)throw"The Modal selector has not returned any elements";this._element=this._element[0]}}else e&&(this._element=e);if(this._options={width:void 0,height:void 0,shadeClass:void 0,modalClass:void 0,trigger:void 0,triggerEvent:"click",autoDisplay:!0,markup:void 0,onShow:void 0,onDismiss:void 0,closeOnClick:!1,responsive:!0,disableScroll:!0},this._handlers={click:Ink.bindEvent(this._onClick,this),keyDown:Ink.bindEvent(this._onKeyDown,this),resize:Ink.bindEvent(this._onResize,this)},this._wasDismissed=!1,this._markupMode=this._element?n.hasClassName(this._element,"ink-modal"):!1,this._markupMode){if(this._modalDiv=this._element,this._modalDivStyle=this._modalDiv.style,this._modalShadow=this._modalDiv.parentNode,this._modalShadowStyle=this._modalShadow.style,this._contentContainer=o.select(".modal-body",this._modalDiv),!this._contentContainer.length)throw'Missing div with class "modal-body"';this._contentContainer=this._contentContainer[0],this._options.markup=this._contentContainer.innerHTML,this._options=Ink.extendObj(this._options,i.data(this._element))}else this._modalShadow=document.createElement("div"),this._modalShadowStyle=this._modalShadow.style,this._modalDiv=document.createElement("div"),this._modalDivStyle=this._modalDiv.style,this._element&&(this._options.markup=this._element.innerHTML),n.addClassName(this._modalShadow,"ink-shade"),n.addClassName(this._modalDiv,"ink-modal"),n.addClassName(this._modalDiv,"ink-space"),this._modalShadow.appendChild(this._modalDiv),document.body.appendChild(this._modalShadow);if(this._options=Ink.extendObj(this._options,r||{}),this._markupMode||this.setContentMarkup(this._options.markup),"string"==typeof this._options.shadeClass&&s.each(this._options.shadeClass.split(" "),Ink.bind(function(e){n.addClassName(this._modalShadow,e.trim())},this)),"string"==typeof this._options.modalClass&&s.each(this._options.modalClass.split(" "),Ink.bind(function(e){n.addClassName(this._modalDiv,e.trim())},this)),"trigger"in this._options&&this._options.trigger!==void 0){var a,l;if("string"==typeof this._options.trigger&&(a=o.select(this._options.trigger),a.length>0))for(l=0;a.length>l;l++)t.observe(a[l],this._options.triggerEvent,Ink.bindEvent(this.open,this))}else this._options.autoDisplay&&this.open()};return r.prototype={_reposition:function(){this._modalDivStyle.top=this._modalDivStyle.left="50%",this._modalDivStyle.marginTop="-"+~~(i.elementHeight(this._modalDiv)/2)+"px",this._modalDivStyle.marginLeft="-"+~~(i.elementWidth(this._modalDiv)/2)+"px"},_onResize:function(e){"boolean"==typeof e?this._timeoutResizeFunction.call(this):this._resizeTimeout||"object"!=typeof e||(this._resizeTimeout=setTimeout(Ink.bind(this._timeoutResizeFunction,this),250))},_timeoutResizeFunction:function(){var e="CSS1Compat"===document.compatMode?document.documentElement:document.body,t=parseInt(e.clientHeight,10),n=parseInt(e.clientWidth,10);this._modalDivStyle.width=n>this.originalStatus.width?this._modalDivStyle.maxWidth:~~(.9*n)+"px",this._modalDivStyle.height=t>this.originalStatus.height&&parseInt(this._modalDivStyle.maxHeight,10)>=i.elementHeight(this._modalDiv)?this._modalDivStyle.maxHeight:~~(.9*t)+"px",this._resizeContainer(),this._reposition(),this._resizeTimeout=void 0},_onClick:function(e){var s=t.element(e);if(n.hasClassName(s,"ink-close")||n.hasClassName(s,"ink-dismiss")||i.findUpwardsByClass(s,"ink-close")||i.findUpwardsByClass(s,"ink-dismiss")||this._options.closeOnClick&&(!i.descendantOf(this._shadeElement,s)||s===this._shadeElement)){for(var r=o.select(".ink-alert",this._shadeElement),a=r.length,l=0;a>l;l++)if(i.descendantOf(r[l],s))return;t.stop(e),this.dismiss()}},_onKeyDown:function(e){27!==e.keyCode||this._wasDismissed||this.di
Ink.createModule("Ink.UI.ProgressBar","1",["Ink.Dom.Selector_1","Ink.Dom.Element_1"],function(e,t){"use strict";var n=function(n,i){if("object"!=typeof n){if("string"!=typeof n)throw"[Ink.UI.ProgressBar] :: Invalid selector";if(this._element=e.select(n),1>this._element.length)throw"[Ink.UI.ProgressBar] :: Selector didn't find any elements";this._element=this._element[0]}else this._element=n;this._options=Ink.extendObj({startValue:0,onStart:function(){},onEnd:function(){}},t.data(this._element)),this._options=Ink.extendObj(this._options,i||{}),this._value=this._options.startValue,this._init()};return n.prototype={_init:function(){if(this._elementBar=e.select(".bar",this._element),1>this._elementBar.length)throw"[Ink.UI.ProgressBar] :: Bar element not found";this._elementBar=this._elementBar[0],this._options.onStart=Ink.bind(this._options.onStart,this),this._options.onEnd=Ink.bind(this._options.onEnd,this),this.setValue(this._options.startValue)},setValue:function(e){this._options.onStart(this._value),e=parseInt(e,10),isNaN(e)||0>e?e=0:e>100&&(e=100),this._value=e,this._elementBar.style.width=this._value+"%",this._options.onEnd(this._value)}},n});