1 2var site={};site.button={};site.button.busy=function(id){var o=vsm.object(id);if(!o)return;vsm.addClass(o,'busy');o.setAttribute('disabled',true);return true;};site.button.idle=function(id){var o=vsm.object(id);if(!o)return;vsm.removeClass(o,'busy');vsm.removeClass(o,'hidden');o.removeAttribute('disabled');};site.button.hide=function(id){var o=vsm.object(id);if(!o)return;vsm.addClass(o,'hidden');o.setAttribute('disabled',true);};site.button.enable=function(id){var o=vsm.object(id);if(!o)return;vsm.removeClass(o,'busy');vsm.removeClass(o,'hidden');o.removeAttribute('disabled');};site.form={} 3site.form.submited="";site.form.submit=function(f){f=vsm.object(f);var b=f.querySelector("button[type=submit]");b=vsm.object(b);f.setAttribute('onbeforesubmit','site.button.busy(\''+b.id+'\')');var r=vsm.form.submit(f);return false;} 4vsm.cmd.push(function(){if(vsm.browser.msie<=8)window.location.href='/1/old-browser/upgrade.html';site.isMobile=(function(){return(vsm.browser.OS=='iphone'||navigator.userAgent.indexOf('android')!=-1||navigator.userAgent.indexOf('Android')!=-1);})();if(site.isMobile){vsm.attachEvent(window,'onscroll',function(){if(window.scrollY>50){vsm.addClass('page','stacked');}if(window.scrollY<60){vsm.removeClass('page','stacked');}});} 5vsm.dom.ready(function(){if(site.header&&site.header.init)site.header.init();})}) 6site.menuMobile=function(){var headerWrapper=vsm.object('header-wrapper');var headerWrapHeader=vsm.object('header');var menuWapper=vsm.object('menu-wrapper');var menuMain=vsm.object('menumain');var searchBox=vsm.object('search-wrapper');var online=vsm.object('chacra-tv-online');if(vsm.hasClass(headerWrapper,'menu')){vsm.removeClass(headerWrapper,'menu');}
6else{if(menuWapper){menuWapper.appendChild(searchBox);menuWapper.appendChild(online);} 7vsm.addClass(headerWrapper,'menu');}} 8site.header=site.header||{};site.header.collapseDistance=false;site.header.init=function(settings){var header=vsm.object('page-header');var settings=header.getAttribute('settings');settings=vsm.json(settings);if(settings["collapse-distance"])site.header.collapseDistance=settings["collapse-distance"];if(site.header.collapseDistance){vsm.attachEvent(window,'scroll',site.header.checkScrollPosition);}} 9site.header.checkScrollPosition=function(){var scrollPosition=(document.documentElement.scrollTop)?document.documentElement.scrollTop:document.body.scrollTop;if(site.header.collapseDistance){var header=vsm.object('page-header');if(site.header.collapseDistance=='auto'){site.header.collapseDistance=header.offsetHeight-60;} 10var main=document.getElementsByTagName('main')[0];if(scrollPosition>site.header.collapseDistance){vsm.addClass(document.documentElement,'page-header-collapsed');var paddingTop=0;if(!main.style.paddingTop){paddingTop=parseInt(vsm.currentStyle(main,'paddingTop'));main.style.paddingTop=site.header.collapseDistance+paddingTop+'px';}}else{vsm.removeClass(document.documentElement,'page-header-collapsed');main.style.removeProperty('padding-top');}}} 11site.header.openMainMenu=function(button){var mainMenu=vsm.object('main-menu').cloneNode(true);vsm.object('main-menu-panel-menu').innerHTML='';vsm.object('main-menu-panel-menu').appendChild(mainMenu);vsm.dropdown.show('main-menu-panel',button,'bottom,top,modal',true,false);} 12site.header.closeMainMenu=function(){vsm.dropdown.hide();} 13site.searchBox={} 14site.searchBox.onFocus=function(input){var searchBoxes=document.querySelectorAll('section.search-box');var searchBox;for(var i=0;i<searchBoxes.length;i++)if(searchBoxes[i].contains(input)){searchBox=searchBoxes[i];break;} 15if(searchBox)vsm.addClass(searchBox,'focus');} 16site.searchBox.onBlur=function(input){var searchBoxes=document.querySelectorAll('section.search-box');var searchBox;for(var i=0;i<searchBoxes.length;i++)if(searchBoxes[i].contains(input)){searchBox=searchBoxes[i];break;} 17if(searchBox&&!searchBox.getAttribute('collapsible'))vsm.removeClass(searchBox,'focus');} 18site.searchBox={} 19site.searchBox.onFocus=function(input){var searchBoxes=document.querySelectorAll('section.search-box');var searchBox;for(var i=0;i<searchBoxes.length;i++)if(searchBoxes[i].contains(input)){searchBox=searchBoxes[i];break;} 20if(searchBox)vsm.addClass(searchBox,'focus');} 21site.searchBox.onBlur=function(input){var searchBoxes=document.querySelectorAll('section.search-box');var searchBox;for(var i=0;i<searchBoxes.length;i++)if(searchBoxes[i].contains(input)){searchBox=searchBoxes[i];break;} 22if(searchBox&&!searchBox.getAttribute('collapsible'))vsm.removeClass(searchBox,'focus');} 23var share={} 24share.openList=function(srcElement,url,position){if(!position)position='bottom,top,left,modal';var shareListPanel=vsm.object('dropdown-share-list');if(!shareListPanel){var shareListPanel=document.createElement('DIV');shareListPanel.id='dropdown-share-list';shareListPanel.className='dropdown-panel share-list-panel';shareListPanel.style.display='none';document.body.appendChild(shareListPanel);} 25shareListPanel.innerHTML='';vsm.ajaxCall(url,function(response){shareListPanel.innerHTML=response;vsm.image.svgicons.load();vsm.dropdown.show(shareListPanel,srcElement,position,true,true);vsm.dom.eval(shareListPanel);});} 26share.openEmailDialog=function(srcElement,url,position){if(!position)position='bottom,top,modal';var shareEmailPanel=vsm.object('shareEmailPanel');if(!shareEmailPanel){var shareEmailPanel=document.createElement('DIV');shareEmailPanel.id='share-email-panel';shareEmailPanel.className='dropdown-panel share-email-panel';shareEmailPanel.style.display='none';document.body.appendChild(shareEmailPanel);} 27vsm.dropdown.show(shareEmailPanel,srcElement,position,true,true);vsm.ajaxCall(url,function(response){shareEmailPanel.innerHTML=response;});} 28share.closeEmailDialog=function(){vsm.dropdown.hide();} 29site.list={};site.list.items=function(id){var btn=vsm.object('section-button-'+id);
29site.button.busy(btn);var sectionItems=vsm.object('section-items-'+id);vsm.removeClass('section-items-'+id,'added');var items=sectionItems.querySelectorAll('[data-type]');for(i=0;i<items.length;i++){if(items[i].getAttribute('data-type')=='item'){vsm.removeClass(items[i],'new');items[i].style.removeProperty('transitionDelay');}} 30var url=btn.parentNode.getAttribute('data-url');url=url.split('?');data=url[1];url=url[0];vsm.ajaxCall(url,function(response){var c=document.createElement('DIV');c.innerHTML=response;var items=c.querySelectorAll('[data-type]');btnFound=false;for(i=0;i<items.length;i++){switch(items[i].getAttribute('data-type')){case'item':items[i].style.transitionDelay=0.1*i+'s';vsm.addClass(items[i],'new');sectionItems.appendChild(items[i]);break;case'button':btn.parentNode.setAttribute('data-url',items[i].getAttribute('data-url'));site.button.enable(btn);btnFound=true;break;case'items':break;default:sectionItems.appendChild(items[i]);}} 31vsmImageStreaming(false,sectionItems);if(!btnFound)site.button.hide(btn);setTimeout(function(){vsm.addClass(sectionItems,'added')},20);},function(response){site.button.hide(btn);;},'POST',data);return false;}; 32if(typeof vsm.form=="undefined")vsm.form={};vsm.form.submitted=false;vsm.form.processes=0;vsm.form.onelementerror='alert';vsm.form.onerror=false;vsm.form.elementserror=[];vsm.form.error=false;vsm.form.submit=function(f){vsm.form.processes=1;vsm.form.submitButtonEnabled(f,false);var validate=vsm.form.validate(f);if(validate){vsm.form.submitButtonEnabled(f,true);return false;} 33vsm.form.processes-=1;if(!vsm.form.error&&vsm.form.processes==0&&vsm.form.submitted){vsm.eval(f.getAttribute('onbeforesubmit'));vsm.form.submitted=false;if(f.getAttribute('ajax')!=null){vsm.ajaxForm(f,function(r){vsm.form.submitButtonEnabled(f,true);vsm.eval(f.getAttribute('onajaxok'),r)},function(r){vsm.form.submitButtonEnabled(f,true);vsm.eval(f.getAttribute('onajaxerror'),r)});return false;}else{vsm.form.confirmCancelEnabled=false;vsm.form.submitButtonEnabled(f,true);return true;}}else{if(vsm.form.processes==0)vsm.form.submitted=false;vsm.form.submitButtonEnabled(f,true);return false;}};vsm.form.submitButtonEnabled=function(frm,value){for(var index=0;index<frm.elements.length;index++){if(frm.elements[index].type=='submit'||frm.elements[index].type=='image')frm.elements[index].disabled=!value;}} 34vsm.form.validate=function(f){vsm.form.submitted=f;if(f.getAttribute('onelementerror'))vsm.form.onelementerror=f.getAttribute('onelementerror');if(f.getAttribute('onerror'))vsm.form.onerror=f.getAttribute('onerror');if(f.getAttribute('onelementok'))vsm.form.onelementok=f.getAttribute('onelementok');vsm.form.elementserror=[];for(var index=0;index<f.elements.length;index++){var el=f.elements[index];if(!el.type||el.getAttribute("data-ignoreonsubmit")||!el.name)continue;vsm.form.error=(!vsm.form.element.validate(el));if(vsm.form.error&&!vsm.form.onerror)return true;} 35if(vsm.form.onerror&&vsm.form.elementserror.length>0){vsm.eval(vsm.form.onerror,vsm.form.elementserror);return true;} 36return false;};vsm.form.confirmCancelEnabled=true;vsm.form.confirmCancel=function(message){if(!message)return;window.onbeforeunload=function(e){if(!e){e=window.event;} 37if(vsm.form.confirmCancelEnabled){return message;}else{return;}}} 38vsm.form.snapshot=function(f){f=vsm.object(f);if(!f||!f.tagName||f.tagName!='FORM')return false;var date=new Date().toISOString().substr(0,10);f.setAttribute('data-last-snapshot',date);for(var i=0,l=f.elements.length;i<l;i++){var el=f.elements[i];if(!el.name||el.getAttribute('data-no-validate-changes'))continue;switch(el.type){case'checkbox':case'radio':el.setAttribute('defaultChecked',el.checked);break;case'select-one':el.setAttribute('vsmDefaultValue',((el.selectedIndex!=-1)?el.options[el.selectedIndex].value:''));break;case'hidden':el.setAttribute('vsmDefaultValue',el.value);break;case'reset':case'submit':case'button':break;default:if(typeof el.value!='undefined')el.defaultValue=el.value;break;}}} 39vsm.form.changed=function(f){f=vsm.object(f);if(!f||!f.tagName||f.tagName!='FORM')return false;
39if(!f.getAttribute('data-last-snapshot'))return false;var changes=Array();for(var i=0,l=f.elements.length;i<l;i++){var el=f.elements[i];if(!el.name||el.hasAttribute('data-no-validate-changes'))continue;switch(el.type){case'checkbox':case'radio':var defaultChecked=el.getAttribute('defaultChecked');if(defaultChecked==false||defaultChecked=="false"){defaultChecked=false;}else{defaultChecked=true};if(defaultChecked!=el.checked)changes[el.name]=true;break;case'select-one':if(el.getAttribute('vsmDefaultValue')!=((el.selectedIndex!=-1)?el.options[el.selectedIndex].value:''))changes[el.name]={'old':el.getAttribute('vsmDefaultValue'),'new':((el.selectedIndex!=-1)?el.options[el.selectedIndex].value:'')};break;case'hidden':if(el.getAttribute('vsmDefaultValue')!=el.value)changes[el.name]={'old':el.getAttribute('vsmDefaultValue'),'new':el.value};break;case'reset':case'submit':case'button':break;default:if(el.defaultValue!=el.value)changes[el.name]={'old':el.defaultValue,'new':el.value};break;}} 40if(Object.keys(changes).length!==0){return Object.keys(changes);}else{return false;}} 41vsm.form.element={};vsm.form.element.focus=function(e){e=vsm.object(e);
41if(!e)return;try{e.focus();}catch(error){return;}} 42vsm.form.element.onFocus=function(e){if(e.form&&e.form.getAttribute('data-validate-changes')&&!e.form.getAttribute('data-last-snapshot'))vsm.form.snapshot(e.form);e=vsm.object(e);if(!e)return;var formel=vsm.form.element.container(e);if(formel){vsm.addClass(formel,'focus');} 43if(e.getAttribute('maxlength')&&e.getAttribute('charcounter')){e.setAttribute('vsmmaxlength',e.getAttribute('maxlength'));e.removeAttribute('maxlength');}} 44vsm.form.element.onInput=function(e){e=vsm.object(e);if(!e)return;if(e.getAttribute('vsmmaxlength')){var counter=vsm.object('vsminputcounter');if(!counter){var counter=document.createElement('DIV');counter.className='charcounter vcphidden';counter.id='vsminputcounter';} 45var charleft=e.getAttribute('vsmmaxlength')-e.value.length;if(charleft<0){vsm.addClass(counter,'maxlengthreached');}else{if(charleft>999)charleft='999+';vsm.removeClass(counter,'maxlengthreached');} 46counter.innerHTML=charleft;counter.style.marginTop=e.offsetHeight+'px';counter.style.width=e.offsetWidth+'px';e.parentNode.insertBefore(counter,e);vcp.fadeIn(counter);} 47if(e.type=='radio'||e.type=='checkbox'){vsm.bind();}} 48vsm.form.element.onBlur=function(e,novalidate){e=vsm.object(e);
48if(!e)return;var formel=vsm.form.element.container(e);if(formel)vsm.removeClass(formel,'focus');var counter=vsm.object('vsminputcounter');if(counter)vcp.fadeOut(counter);if(!novalidate)return(!vsm.form.element.validate(e));return true;} 49vsm.form.element.onError=function(e,errormsg){var formel=vsm.form.element.container(e);if(vsm.form.onelementerror)vsm.eval(vsm.form.onelementerror,errormsg,e);if(formel)vsm.addClass(formel,'error');if(vsm.form.submitted&&!vsm.form.onerror){vsm.form.element.focus(e);vsm.form.submitted=false}} 50vsm.form.element.onValid=function(e){var formel=vsm.form.element.container(e);vsm.eval(vsm.form.onelementok);if(formel)vsm.replaceClass(formel,' error','');} 51vsm.form.element.onCheck=function(e){e=vsm.object(e);if(!e)return;if(e.name){var es=document.getElementsByName(e.name);for(var i=0;i<es.length;i++){var action=es[i].getAttribute('oncheck');if(action)action=vsm.object(action);if(action)vcp.fadeOut(action);}} 52var action=e.getAttribute('oncheck');if(!action)return;if(typeof action=='function'){eval(action);return;} 53action=vsm.object(action);if(action)vcp.fadeIn(action);} 54vsm.form.element.onChange=function(e){e=vsm.object(e);
54if(!e)return;if(e.getAttribute('instant')&&e.getAttribute('action')){} 55var r=vsm.object(e.id+'_reset');if(r){if(e.value.length){r.removeAttribute('disabled');}else{r.setAttribute('disabled',true);if(e.getAttribute('onreset'))eval(e.getAttribute('onreset'));}}} 56vsm.form.element.onKeyPress=function(evt,e){var k=vsm.key(evt);switch(k){case 13:if(e.getAttribute('action')&&vsm.form.element.validate(e))vsm.form.element.submit(e);evt.preventDefault();break;}} 57vsm.form.element.submit=function(e){e=vsm.object(e);if(!e)return;if(e.getAttribute('action'))eval(e.getAttribute('action'));} 58vsm.form.element.label=function(e){if(e.getAttribute){var label=e.getAttribute('label');if(label)return label;} 59var formel=vsm.form.element.container(e);if(formel){var labels=formel.getElementsByTagName('LABEL');label=labels[0];var fr=label.getAttribute('for');if(!fr&&vsm.browser.msie)fr=label.htmlFor;var lt=label.innerText;if(!lt)lt=label.textContent;if(label&<&&(fr==e.name||fr==e.id))return lt;} 60return e.name;} 61vsm.form.element.container=function(e){var e=vsm.object(e);
61if(!e)return;while(e.tagName!='BODY'&&(!e.getAttribute||e.getAttribute('vsmtype')!='formelement')){e=e.parentNode;} 62if(e.tagName!='BODY')return e;} 63vsm.form.element.validate=function(e){var e=vsm.object(e);if(!e)return;var errormsg=vsm.form.element.validations(e);if(e.getAttribute('data-validatefunction')){errormsg=vsm.eval(e.getAttribute('data-validatefunction'),e);} 64if(errormsg){if(vsm.form.onerror)vsm.form.elementserror.push({el:e,error:errormsg}) 65vsm.form.element.onError(e,errormsg);return false;}else{vsm.form.element.onValid(e);return true;}} 66vsm.form.element.validations=function(e){var e=vsm.object(e);if(!e)return;var vsme=vsm.form.element;var errmsg=null;if(vsm.form.submitted&&e.getAttribute('required')&&e.value.length==0)return vsme.error(e,'required');if(e.getAttribute('date')!=null&&e.value){var date=vsm.object(e.id+'_date');if(!date)return false;var min=date.getAttribute('min');var minlabel=null;if(min){if(min.toLowerCase()=='now')minlabel=_('la fecha actual');if(!minlabel)minlabel=vsm.datetime.dateText(min);if(!minlabel){var minObj=document.getElementById(min);if(!minObj&&date.form&&date.form.elements[min])minObj=date.form.elements[min] 67if(minObj){min=minObj.value;minlabel=vsm.form.element.label(minObj);}else{min='';}}} 68var max=date.getAttribute('max');var maxlabel=null;if(max){if(max.toLowerCase()=='now')maxlabel=_('la fecha actual');if(!maxlabel)maxlabel=vsm.datetime.dateText(max);if(!maxlabel){var maxObj=document.getElementById(max);if(!maxObj&&date.form&&date.form.elements[max])maxObj=date.form.elements[max] 69if(maxObj){max=maxObj.value;maxlabel=vsm.form.element.label(maxObj);}else{max='';}}} 70var value=vsm.validation.yyyymmdd(e.value,date.getAttribute('precision'),min,max);if(value==-6)return vsme.error(e,'date'+value,e.value,minlabel);if(value==-7)return vsme.error(e,'date'+value,e.value,maxlabel);if(value<0)return vsme.error(e,'date'+value,e.value);} 71if(e.getAttribute('removechars')&&e.value){var re=new RegExp("["+e.getAttribute('removechars').replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")+"]","g");e.value=e.value.replace(re,'');} 72if(e.getAttribute('trim')&&e.value)e.value=vsm.trim(e.value.replace('\t',''));if(e.getAttribute('uppercase')&&e.value)e.value=e.toUpperCase();if(e.getAttribute('lowercase')&&e.value)e.value=e.toLowerCase();if(e.getAttribute('ucfirst')&&e.value)e.value=e.value.charAt(0).toUpperCase()+e.value.slice(1);if(e.getAttribute('capitalize')&&e.value)e.value=e.value.replace(/(\w)(\w*)/g,function(_,i,r){return i.toUpperCase()+(r!=null?r:"");});if(e.type!='file')e.value=vsm.form.toISO8859(e.value);if(e.getAttribute('minlength')!=null&&e.value.length<e.getAttribute('minlength'))return vsme.error(e,'minlength',e.value.length,e.getAttribute('minlength'));if(e.getAttribute('maxlength')!=null&&e.value.length>e.getAttribute('maxlength'))return vsme.error(e,'maxlength',e.value.length,e.getAttribute('maxlength'));if(e.getAttribute('vsmmaxlength')!=null&&e.value.length>e.getAttribute('vsmmaxlength'))return vsme.error(e,'maxlength',e.value.length,e.getAttribute('vsmmaxlength'));if(e.getAttribute('number')!=null&&e.value&&isNaN(e.value))return vsme.error(e,'NaN');if(e.getAttribute('filetypes')!=null&&e.value&&!vsm.validation.filetype(e.value,e.getAttribute('filetypes')))return vsme.error(e,'filetypes',e.value,e.getAttribute('filetypes'));if(e.getAttribute('email')!=null&&e.value&&!vsm.validation.email(e.value))return vsme.error(e,'email',e.value);if(e.getAttribute('allowchars')!=null&&e.value&&!vsm.validation.allowchars(e.value,e.getAttribute('allowchars')))return vsme.error(e,'allowchars',e.value,e.getAttribute('allowchars'));if(e.getAttribute('disallowchars')!=null&&e.value&&!vsm.validation.disallowchars(e.value,e.getAttribute('disallowchars')))return vsme.error(e,'disallowchars',e.value,e.getAttribute('disallowchars'));if(e.getAttribute('min')&&!isNaN(e.getAttribute('min'))&&e.value&&!isNaN(e.value)&&e.value<parseInt(e.getAttribute('min')))return vsme.error(e,'min',e.value,parseInt(e.getAttribute('min')));if(e.getAttribute('max')&&!isNaN(e.getAttribute('max'))&&e.value&&!isNaN(e.value)&&parseInt(e.value)>parseInt(e.getAttribute('max')))return vsme.error(e,'max',e.value,parseInt(e.getAttribute('max')));if(e.getAttribute('match')!=null&&e.value&&e.value&&!vsm.validation.match(e.value,e.getAttribute('match')))return vsme.error(e,'match',e.value,e.getAttribute('match'));if(e.getAttribute('ajax')!=null&&e.value)vsm.form.element.ajax(e);return false;} 73vsm.form.element.ajax=function(e){if(e.getAttribute('ajaxvalid')!=e.value){if(vsm.form.submitted)vsm.form.processes+=1;vsm.ajaxCall(e.getAttribute('ajax').replace('%value%',encodeURIComponent(e.value)),function(response){if(response){e.value=response;e.setAttribute('ajaxvalid',response);}else{e.setAttribute('ajaxvalid',e.value);} 74vsm.form.element.onValid(e);if(vsm.form.submitted){vsm.form.processes-=1;if(vsm.form.processes==0){vsm.form.confirmCancelEnabled=false;vsm.form.submitted.submit();}}},function(response){if(vsm.form.submitted)vsm.form.processes-=1;var err=eval('('+response+')');if(err['value'])e.value=err['value'];vsm.form.element.onError(e,err['error']);return false;});}} 75vsm.form.element.error=function(e,errtype,value,condition){var e=vsm.object(e);
75if(!e)return;var label=vsm.form.element.label(e);if(e.getAttribute('errormsg')){return e.getAttribute('errormsg').replace('%label%',label).replace('%condition%',condition).replace('%value%',value);} 76if(typeof vsm.form.messages!="undefined"&&typeof vsm.form.messages[errtype]!="undefined"){var errormsg=vsm.form.messages[errtype].replace('%label%',label).replace('%condition%',condition).replace('%value%',value);}else{var errormsg='Error in "'+label+'": '+errtype+((condition)?'='+condition:'');} 77return errormsg;} 78vsm.form.element.reset=function(e){vsm.form.element.setValue(e,'',null,null,null);} 79vsm.form.element.getValue=function(e){e=vsm.object(e);if(!e)return;return e.value;} 80vsm.form.element.setValue=function(e,value,title,icon,description,tooltip){e=vsm.object(e);if(!e)return;var oldValue=vsm.form.element.getValue(e);var type=e.getAttribute('data-vsmel');switch(type){case'inputdatetime':vsm.form.inputdate.setDate(e,value);break;default:e.value=value;var display=vsm.object(e.id+'_display');if(display){var html;if(!title)title=value;if(!title&&display.getAttribute('data-vsm-default-display'))title=display.getAttribute('data-vsm-default-display');html=title;if(icon)html='<img src="'+icon+'">'+title;if(html){display.innerHTML=html;vsm.replaceClass(display,'vsmhidden','vsmvisible');}else{vsm.replaceClass(display,'vsmvisible','vsmhidden');} 81if(tooltip){display.setAttribute('tooltip-pos','right,top');display.setAttribute('tooltip',tooltip);vsm.tooltip.start(display);}}} 82if(value!=oldValue){vsm.form.element.onChange(e);var formelement=vsm.form.element.container(e);if(formelement)vsm.replaceClass(formelement,' error','');if(formelement)vsm.dom.element.updated(formelement);vsm.eval(vsm.form.onelementok);}} 83vsm.form.element.unLock=function(e){e=vsm.object(e);
83if(!e)return;e.removeAttribute('readonly');var formel=vsm.form.element.container(e);if(formel)vsm.removeClass(formel,'locked');};vsm.form.element.lock=function(e){e=vsm.object(e);if(!e)return;e.setAttribute('readonly',1);var formel=vsm.form.element.container(e);if(formel)vsm.addClass(formel,'locked');};vsm.form.text={};vsm.form.text.onFocus=function(e){} 84vsm.form.text.onBlur=function(e){} 85vsm.form.inputfile={};vsm.form.inputfile.select=function(e){e=vsm.object(e);if(!e)return;var file=vsm.object('new_'+e.id);var reset=vsm.object(e.id+'_reset');if(reset){vsm.replaceClass(reset,'vsmhidden','vsmvisible');reset.removeAttribute('disabled');} 86var display=vsm.object(e.id+'_display');if(display){var filename=file.value.replace(/^.*[\\\/]/,'');e.value=filename;display.innerHTML=filename;vsm.replaceClass(display,'vsmhidden','vsmvisible');} 87vsm.form.element.validate(e);} 88vsm.form.inputfile.fileinfo=function(e){var e=vsm.object(e);var size=null;var type=null;var lastModifiedDate=null;var extension=null;var file=null;if(e.files&&e.files[0]){var f=e.files[0];name=f.name;size=f.size;type=f.type;lastModifiedDate=f.lastModifiedDate;file=e.files[0];}else{var name=e.value;} 89name=name.split(/(\\|\/)/g).pop();extension=name.split(/\./g).pop().toLowerCase();return{size:size,name:name,type:type,lastModifiedDate:lastModifiedDate,extension:extension,file:file};} 90vsm.form.inputdate={};vsm.form.inputdate.oninput=function(e){e=vsm.object(e);
90if(!e)return;var date,time='';var dateObj=vsm.object(e.id+'_date');var timeObj=vsm.object(e.id+'_time');date=vsm.datetime.validDate(dateObj.value,dateObj.getAttribute('lang'),dateObj.getAttribute('preference'),dateObj.getAttribute('precision'));if(date<0){e.value=date;return;} 91if(timeObj){time=vsm.datetime.validTime(timeObj.value);}else{time='';} 92if(time<0){e.value=time;return;} 93var datetime=date;var precision=vsm.datetime.precision(datetime);if(precision=='d'||precision==''){if(timeObj)vcp.fadeIn(timeObj);}else{if(timeObj){timeObj.value='';vcp.fadeOut(timeObj);}} 94if(datetime&&timeObj&&timeObj.style.display!='none'){if(time){datetime=(datetime+' '+time).substr(0,19);}else{datetime=(datetime+' 00:00:00').substr(0,19);}} 95e.value=datetime;var ddp=vsm.object(e.id+'_ddp');if(ddp.style.display!='none')vsm.form.inputdate.showCalendar(e);} 96vsm.form.inputdate.onblur=function(e,evt){e=vsm.object(e);if(!e)return;var focusTarget=(evt&&evt.relatedTarget);if(focusTarget){var eContainer=vsm.form.element.container(e);var fContainer=vsm.form.element.container(focusTarget);if(eContainer==fContainer&&focusTarget.id.indexOf('time')==-1)return;} 97var datetime=e.value;if(!datetime||isNaN(datetime)||datetime*1>0){var dateObj=vsm.object(e.id+'_date');var timeObj=vsm.object(e.id+'_time');dateObj.value=vsm.datetime.dateText(datetime);if(timeObj)timeObj.value=vsm.datetime.timeText(datetime);} 98var ddp=vsm.object(e.id+'_ddp');if(ddp)vsm.dropdown.hide(ddp);vsm.form.element.onBlur(e,(!datetime));} 99vsm.form.inputdate.showCalendar=function(e){e=vsm.object(e);
99if(!e)return;var ddp=vsm.object(e.id+'_ddp');var dateObj=vsm.object(e.id+'_date');var value=vsm.datetime.validDate(dateObj.value,dateObj.getAttribute('lang'),dateObj.getAttribute('preference'),dateObj.getAttribute('precision'));var today=new Date();if(dateObj.getAttribute('preference')=='f')today.setDate(today.getDate()+1);if(!value||value<0)value=today.getFullYear()+'-'+('0'+(today.getMonth()+1)).substr(-2)+'-'+('0'+(today.getDate())).substr(-2);var year=value.substr(0,4);var month=value.substr(5,2);var day=value.substr(8,2);if(!isNaN(month)){year=year*1;}else{year=today.getFullYear();} 100if(year<1000)year=today.getFullYear();if(!isNaN(month)){month=month*1;}else{month=today.getMonth();} 101if(!month)month=1;if(!isNaN(day)){day=day*1;}else{day=today.getDate();} 102if(!day)day=1;var min=dateObj.getAttribute('min');var max=dateObj.getAttribute('max');var alreadyOpen=(ddp.style.display!='none');vsm.form.inputdate.createCalendar(e,year,month,day,min,max);vsm.dropdown.show(ddp,e.id+'_calendarbutton','bottom,top,right,left,center',true,true);} 103vsm.form.inputdate.days=new Array('Dom','Lun','Mar','Mie','Jue','Vie','Sáb');vsm.form.inputdate.months=new Array('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre');vsm.form.inputdate.dateinrange=function(checkdate,min,max){if(isNaN(min)){var minObj=document.getElementById(min);if(!minObj&&dateObj.form&&dateObj.form.elements[min])minObj=dateObj.form.elements[min] 104if(minObj){min=minObj.value;}else{min='';}} 105if(isNaN(max)){var maxObj=document.getElementById(max);if(!maxObj&&dateObj.form&&dateObj.form.elements[max])maxObj=dateObj.form.elements[max] 106if(maxObj){max=maxObj.value;}else{max='';}} 107min=(min+'-01-01').substr(0,10);max=(max+'-12-31').substr(0,10);if(min&&checkdate<min)return false;if(max&&checkdate>max)return false;return true;} 108vsm.form.inputdate.selectYear=function(e,year,month,day,min,max,selectedYear){var e=vsm.object(e);var obj=vsm.object(e.id+'_ddp');var output='';var cant=25;var from=selectedYear-(cant/2);var to=selectedYear+(cant/2);from=Math.floor(selectedYear/cant)*cant;if(from<0){from=0;to=from+cant;} 109if(from>10000-cant){from=10000-cant;} 110to=from+cant;output+='<div class="datepicker vcphidden">';output+='<div class=header>';if(from>0)output+='<button type=button class="vcpbutton prev" onClick="vsm.form.inputdate.selectYear('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+(selectedYear-cant)+')"></button>';if(to<9999)output+='<button type=button class="vcpbutton next" class="vcpbutton next" onClick="vsm.form.inputdate.selectYear('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+(selectedYear+cant)+')"></button>';output+='</div>';output+='<ul class="vcplist years">';var className='';for(y=from;y<to;y++){className=(y==year)?' class=index':'';output+='<li'+className+' onclick="vsm.form.inputdate.selectMonth('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+y+')">'+y+'</li>';} 111output+='</ul>';output+='</div>';obj.innerHTML=output;vcp.fadeIn(obj.childNodes[0]);} 112vsm.form.inputdate.selectMonth=function(e,year,month,day,min,max,selectedYear,selectedMonth){var e=vsm.object(e);var obj=vsm.object(e.id+'_ddp');var output='';output+='<div class="datepicker vcphidden">';output+='<div class=header>';output+='<button type=button class="vcpbutton" onclick="vsm.form.inputdate.selectYear('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+selectedYear+')"><h3>'+selectedYear+'</h3></button>';if(selectedYear>1)output+='<button type=button class="vcpbutton prev" onClick="vsm.form.inputdate.selectMonth('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+(selectedYear-1)+')"></button>';if(selectedYear<9999)output+='<button type=button class="vcpbutton next" class="vcpbutton next" onClick="vsm.form.inputdate.selectMonth('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+(selectedYear+1)+')"></button>';output+='</div>';output+='<ul class="vcplist months">';var className;for(m=0;m<12;m++){className=(year==selectedYear&&m+1==month)?' class=index':'';output+='<li'+className+' onclick="vsm.form.inputdate.createCalendar('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+selectedYear+","+(m+1)+')">'+vsm.form.inputdate.months[m]+'</li>';} 113output+='</ul>';output+='</div>';obj.innerHTML=output;vcp.fadeIn(obj.childNodes[0]);} 114vsm.form.inputdate.setDate=function(e,date){if(typeof date!='string')return;var e=vsm.object(e);
114if(!e)return;var dateObj=vsm.object(e.id+'_date');var timeObj=vsm.object(e.id+'_time');if(!dateObj)return;dateObj.value=date.substr(0,10);if(timeObj){if(date.substr(11,8)){timeObj.value=date.substr(11,8);}else{if(vsm.datetime.validTime(timeObj.value)<0)timeObj.value='';}} 115vsm.form.inputdate.oninput(e);vsm.form.inputdate.onblur(e);vsm.dropdown.hide(e.id+'_ddp');} 116vsm.form.inputdate.createCalendar=function(e,year,month,day,min,max,selectedYear,selectedMonth){var e=vsm.object(e);var obj=vsm.object(e.id+'_ddp');if(!min)min='';if(!max)max='';if(!selectedYear||!selectedMonth){if(!isNaN(year)){year=year*1;selectedYear=year;} 117if(!isNaN(month)){month=month*1;selectedMonth=month;}} 118date=new Date(selectedYear,selectedMonth-1,1);today=new Date();var startDay=date.getDay();var days=vsm.form.inputdate.days;var months=vsm.form.inputdate.months;var daysinmonth=new Array(31,28,31,30,31,30,31,31,30,31,30,31);if(((selectedYear%4==0)&&(selectedYear%100!=0))||(selectedYear%400==0))daysinmonth[1]=29;var nDays=daysinmonth[selectedMonth-1];output="";prevYear=selectedYear;prevMonth=selectedMonth-1;if(prevMonth==0){prevMonth=12;prevYear=prevYear-1;} 119nextYear=selectedYear;nextMonth=selectedMonth+1;if(nextMonth==13){nextMonth=1;nextYear+=1;} 120if(!obj)obj='vsmcal_'+Math.round(Math.random(100000));output+='<div class="datepicker">';output+='<div class=header>';output+='<button type=button class="vcpbutton" onclick="vsm.form.inputdate.selectMonth('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+selectedYear+","+selectedMonth+')"><h3>'+months[selectedMonth-1]+' '+selectedYear+'</h3></button>';output+='<button type=button tooltip="'+months[prevMonth-1]+' '+prevYear+'" tooltip-pos="top" tooltip-class="vc- vcptooltip vcpbgdark" class="vcpbutton prev" onClick="vsm.form.inputdate.createCalendar('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+prevYear+","+prevMonth+')"></button>';output+='<button type=button tooltip="'+months[nextMonth-1]+' '+nextYear+'" tooltip-pos="top" tooltip-class="vc- vcptooltip vcpbgdark" class="vcpbutton next" class="vcpbutton next" onClick="vsm.form.inputdate.createCalendar('+"'"+e.id+"','"+year+"','"+month+"','"+day+"','"+min+"','"+max+"',"+nextYear+","+nextMonth+')"></button>';output+='</div>';output+='<ul class="vcplist dow">';for(var i=0;i<7;i++)output+='<li class="dow" unselectable>'+days[i]+'</li>';output+='</ul>';output+='<ul class="vcplist days">';column=0;for(i=0;i<startDay;i++){output+='<li class="noday" unselectable> </li>';column++;} 121height=0;for(i=1;i<=nDays;i++){if((selectedYear==year)&&(selectedMonth==month)&&(i==day)){istoday=true;}else{istoday=false;} 122linkdate=selectedYear+"-";linkdate+=(selectedMonth<10)?'0'+selectedMonth:selectedMonth;linkdate+="-";linkdate+=(i<10)?'0'+i:i;if(1==1){output+='<li class="day'+((istoday)?' index':'')+'" tooltip="'+i+' '+months[selectedMonth-1].toLowerCase()+' '+selectedYear+'" tooltip-pos="top" tooltip-class="vc- vcptooltip vcpbgdark" onclick="vsm.form.element.setValue(\''+e.id+'\', \''+linkdate+'\');">'+i+'</li>';}else{output+='<li class="disabled" unselectable>'+i+'</li>';} 123column++;if(column==7){height+=1;column=0;}} 124for(i=0;i<7-column;i++){output+='<li class="noday" unselectable> </li>';} 125if(height<5){for(i=0;i<7;i++){output+='<li class="noday" unselectable> </li>';}} 126output+='</ul>';output+='</div>';obj.innerHTML=output;vsm.tooltip.start();} 127vsm.validation={};vsm.validation.yyyymmdd=function(value,precision,min,max){if(value<0)return value;var value=value.replace(/\//gi,'-');if(!value.match(/^[0-9]{4}$/)&&!value.match(/^[0-9]{4}\-[0-9]{2}$/)&&!value.match(/^[0-9]{4}\-[0-9]{2}\-[0-9]{2}$/)&&!value.match(/^[0-9]{4}\-[0-9]{2}\-[0-9]{2} [0-9]{2}\:[0-9]{2}\:[0-9]{2}$/))return-1;var y=value.substring(0,4)*1;var m=value.substring(5,7)*1-1;var d=value.substring(8,10)*1;var h=value.substring(11,13)*1;var n=value.substring(14,16)*1;var s=value.substring(17,19)*1;if(!precision)precision='d';var p=vsm.datetime.precision(value);if(precision=='d'&&p!='d')return-4;if(precision=='m'&&(p!='d'&&p!='m'))return-5;if(precision=='d'){var dt=new Date(y,m,d);if(y!=dt.getFullYear()||m!=dt.getMonth()||d!=dt.getDate())return-3;if(h&&n){if(h<0||h>23)return-2;if(n<0||n>59)return-2;if(s<0||s>59)return-2;}} 128switch(p){case'y':value=value.substr(0,4);break;case'm':value=value.substr(0,7);break;} 129if(min&&min.substr(0,4)!='0000'&&y!='0000'){var minprecision=vsm.datetime.precision(min);switch(minprecision){case'y':min=min.substr(0,4);break;case'm':min=min.substr(0,7);break;} 130if(min.length<19)min=min+('0000-01-01 00:00:00').substr(-19+min.length);completeValue=value+('9999-12-31 23:59:59').substr(-19+value.length);if(min>completeValue)return-6;} 131if(max&&max.substr(0,4)!='0000'&&y!='0000'){var maxprecision=vsm.datetime.precision(max);switch(maxprecision){case'y':max=max.substr(0,4);break;case'm':max=max.substr(0,7);break;} 132if(max.length<19)max=max+('9999-12-31 23:59:59').substr(-19+max.length);completeValue=value+('0000-01-01 00:00:00').substr(-19+value.length);if(max<completeValue)return-7;} 133return true;} 134vsm.validation.email=function(value){var filter=/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,8})+$/;if(!filter.test(value))return false;return true;} 135vsm.validation.allowchars=function(value,allowchars){var length=value.length;for(var i=0;i<length;i++){if(allowchars.indexOf(value.charAt(i))==-1)return false;} 136return true;} 137vsm.validation.disallowchars=function(value,disallowchars){var length=value.length;for(var i=0;i<length;i++){if(disallowchars.indexOf(value.charAt(i))!=-1)return false;} 138return true;} 139vsm.validation.match=function(value,match){return value.match(match);} 140vsm.validation.filetype=function(value,filetypes){if(!filetypes)return false;if(value.lastIndexOf(".")==-1)return false;var fileext=(value.substring(value.lastIndexOf(".")+1)).toLowerCase();filetypes=filetypes.replace('.','').toLowerCase();
140if(filetypes&&(','+filetypes+',').indexOf(','+fileext+',')==-1)return false;return true;} 141vsm.form.html={} 142vsm.form.html.focus=function(e){var i=document.getElementById(e+'-input');var t=document.getElementById(e+'-toolbar');t.style.visibility='visible';} 143vsm.form.html.blur=function(e){var i=document.getElementById(e+'-input');var t=document.getElementById(e+'-toolbar');t.style.visibility='hidden';return;e=window.event||e;var ae=e.target||e.srcElement;} 144vsm.form.html.command=function(e,cmd,d,v){var i=document.getElementById(e+'-input');i.focus();document.execCommand(cmd,d,v);vsm.form.html.refresh(e);} 145vsm.form.html.execCommand=function(command,showUI,value){try{document.execCommand(command,showUI,value);}catch(e){switch(command){case'insertHTML':if(document.selection&&document.selection.createRange){var range=document.selection.createRange();if(range.pasteHTML)range.pasteHTML(value);} 146break;}}} 147vsm.form.html.queryCommand=function(b){var cmd=b.getAttribute('data-command');if(!cmd.length)return;var v=document.queryCommandValue(cmd);if(!v||v=='false'){vsm.replaceClass(b,'pressed','');}else{vsm.addClass(b,'pressed');}} 148vsm.form.html.refresh=function(e){var t=document.getElementById(e+'-toolbar');for(var i=0;i<t.childNodes.length;i++){var b=t.childNodes[i];if(b.nodeType!=3&&b.tagName=='BUTTON'&&b.getAttribute('data-command')!='CreateLink'){vsm.form.html.queryCommand(t.childNodes[i]);}}} 149vsm.form.html.createLink=function(e){var url='http://';var url=prompt('URL',url);if(url.length)vsm.form.html.command(e,'CreateLink',false,url);} 150vsm.form.toISO8859=function(text){text=text.replace(/\u201C|\u201D|\uFF02|\u201F/g,'"');text=text.replace(/\u2019/g,"'");text=text.replace(/\ufffd/g,"");text=text.replace(/\u04D5/g,"");text=text.replace(/\u2026/g,"...");text=text.replace(/\u2013|\u002D|\u058A|\u05BE|\u1806|\u2010|\u2011|\u2012|\u2014|\u2015|\uFE63|\uFF0D/g,"-");return text;} 151vsm.form.sanitizeHTML=function(html,allowedTags,options){var allowedTags=completeAllowedTags(allowedTags);var aTags=Array('form','audio','video','applet','frame','frameset','noframes','button','table','object','button','select','datalist','map','script','style');var tags='';for(var i=0;i<aTags.length;i++){var tag=aTags[i];if(allowedTags.indexOf(','+tag+',')==-1)tags+='|'+tag;} 152tags=tags.substring(1);if(tags){var re=new RegExp('<('+tags+')\\b[^<]*(?:(?!<\\/('+tags+')>)<[^<]*)*<\\/('+tags+')>','gi');html=html.replace(re,'');} 153var aTags=Array('p','div','h1','h2','h3','h4','h5','h6','address','pre','dd');var tags='';for(var i=0;i<aTags.length;i++){var tag=aTags[i];if(allowedTags.indexOf(','+tag+',')==-1)tags+='|'+tag;} 154tags=tags.substring(1);if(tags){var re=new RegExp('<('+tags+')([^>]*)>(.*?)<\\/('+tags+')([^>]*)>','gi');html=html.replace(re,'<p$2>$3</p> ');} 155if(allowedTags.indexOf(',p,')==-1&&allowedTags.indexOf(',br,')!=-1){html=html.replace(/<p([^>]*)>/gi,'').replace(/<\/p([^>]*)>/gi,'<br>');} 156html=html.replace(/<\/?([a-z][a-z0-9]*)\b[^>]*>/gi,function($0,$1){return allowedTags.indexOf(','+$1.toLowerCase()+',')>-1?$0:'';});html=html.replace(/\s{2,}/g,' ');var d=document.createElement('DIV');d.innerHTML=html;vsm.form.sanitizeDOM(d,options);html=d.innerHTML;html=vsm.form.toISO8859(html);return html.replace(/ /g,' ');function completeAllowedTags(allowedTags){if(!allowedTags)return'';allowedTags=','+allowedTags.toLowerCase()+',';if(allowedTags.indexOf(',b,')!=-1)allowedTags+='strong,';if(allowedTags.indexOf(',table,')!=-1)allowedTags+='tbody,thead,tr,td,col,colgroup,th,tfoot,';if(allowedTags.indexOf(',ul,')!=-1||allowedTags.indexOf(',ol,')!=-1)allowedTags+='li,';if(allowedTags.indexOf(',p,')!=-1)allowedTags+='br,';if(allowedTags.indexOf(',dl,')!=-1)allowedTags+='dt,dd,';if(allowedTags.indexOf(',object,')!=-1)allowedTags+='param,embed,';if(allowedTags.indexOf(',select,')!=-1||allowedTags.indexOf(',datalist,')!=-1)allowedTags+='option,optgroup,';if(allowedTags.indexOf(',audio,')!=-1||allowedTags.indexOf(',video,')!=-1)allowedTags+='source,track,';if(allowedTags.indexOf(',figure,')!=-1)allowedTags+='figcaption,';if(allowedTags.indexOf(',map,')!=-1)allowedTags+='area,';return allowedTags;}} 157vsm.form.sanitizeDOM=function(element,options){var l=element.childNodes.length;for(var i=0;i<l;i++){var child=element.childNodes[i];switch(child.nodeType){case 8:element.removeChild(child);i--;l--;break;case 1:for(var a=0;a<child.attributes.length;a++){var attrName=child.attributes[a].nodeName;if(attrName.substr(0,2).toLowerCase()=='on'||attrName.toLowerCase()=='id'||attrName.toLowerCase()=='style'||attrName.toLowerCase()=='background'||attrName.toLowerCase()=='bgcolor'||attrName.toLowerCase()=='class'){child.removeAttribute(child.attributes[a].nodeName);a--;}} 158element.replaceChild(child,vsm.form.sanitizeDOM(child,options));break;}} 159return element;} 160vsm.clipboardData=function(event){return event.clipboardData?event.clipboardData:window.clipboardData?window.clipboardData:false;} 161vsm.form.html.onCopy=function(event,command){var s=(window.getSelection())?window.getSelection():document.selection();if(s.rangeCount>0){var r=s.getRangeAt(0);var df=r.cloneContents();
161if(command=='cut')vsm.form.html.execCommand('insertHTML',false,'');var div=document.createElement('DIV');div.appendChild(df);var clipboard=vsm.clipboardData(event);try{clipboard.setData("text/plain",div.innerText);clipboard.setData("text/html",'<!--vsmclipboard-->'+div.innerHTML);}catch(e){clipboard.setData("text",div.innerText);}} 162return false;} 163vsm.form.html.onCut=function(event){return vsm.form.html.onCopy(event,'cut');} 164vsm.form.html.onPaste=function(event,allowedTags){var paste;var clipboard=vsm.clipboardData(event);if(clipboard){try{paste=clipboard.getData('text/html');}catch(e){} 165if(!paste)try{paste=clipboard.getData('text/plain');paste='<p>'+paste.replace(/\r\n/g,"</p><p>")+'</p>';}catch(e){} 166if(!paste)try{paste=clipboard.getData('text');paste='<p>'+paste.replace(/\r\n/g,"</p><p>")+'</p>';}catch(e){}} 167if(paste){if(paste.indexOf('<!--vsmclipboard')==-1){paste=vsm.form.sanitizeHTML(paste,allowedTags);}else{paste=paste.replace(/<!--vsmclipboard-->/g,'').replace(/<!--StartFragment-->/g,'').replace(/<!--EndFragment-->/g,'');} 168vsm.form.html.execCommand('insertHTML',false,paste)}else{alert('No puede pegar. No hay acceso al clipboard');} 169return false;} 170vsm.form.html.pasteIE=function(event,allowedTags){var auxdiv=document.createElement('DIV');document.body.appendChild(auxdiv);auxdiv.style.position='absolute';auxdiv.style.top='0px';auxdiv.style.left='0px';auxdiv.style.height='300px';auxdiv.style.width='300px';auxdiv.style.border='1px solid yellow';auxdiv.style.overflow='hidden';auxdiv.contentEditable='true';auxdiv.innerHTML='Auxdiv';var range=document.body.createTextRange();range.moveToElementText(auxdiv);range.execCommand('Paste');return;if(auxdiv.innerHTML.length==0){var msg;msg='Has denegado al sitio el acceso al portapapeles de tu equipo.\n';msg+='Se necesita acceder al portapapeles para revisar el formato del contenido antes de pegarlo.\n';msg+='A partir de ahora no podrás pegar contenido. Para solucionar esto, actualiza la página y permite al sitio acceder al contenido del portapapeles.';alert(msg);auxdiv.contentEditable='false';document.body.removeChild(auxdiv);return false;} 171auxdiv.innerHTML=rteStripPaste(auxdiv.innerHTML);range.moveToElementText(auxdiv);range.execCommand('Copy');auxdiv.contentEditable='false';document.body.removeChild(auxdiv);return false;} 172vsm.form.inputsuggest={};vsm.form.inputsuggest.timeOut=null;vsm.form.inputsuggest.ajaxHandler=null;vsm.form.inputsuggest.lastSearch=null;vsm.form.inputsuggest.busyTimeout=null;vsm.form.inputsuggest.onClick=function(el,evt){var display=document.getElementById(el.id+'_display');var valueList=document.getElementById(el.id+'_values');var suggestList=document.getElementById(el.id+'_suggestlist');var srcElement=evt.srcElement;if(srcElement.getAttribute('data-vsmel')=='removebutton'){vsm.form.inputsuggest.removeElement(srcElement.parentNode);}else{var srcEl=evt.srcElement;while(srcEl!=display&&srcEl.tagName!='LI'){srcEl=srcEl.parentNode;} 173if(srcEl.tagName!='LI'||!el.getAttribute('multiple')){if(suggestList&&suggestList.getAttribute('searchtype')=='preloaded')vsm.form.inputsuggest.switchSuggestList(el,evt);vsm.form.inputsuggest.setFocus(el);}}} 174vsm.form.inputsuggest.setFocus=function(el){el=vsm.object(el);if(vsm.hasClass(el.id+'_display','nowrite'))return;var id=el.id;var input=document.getElementById(id+'_input');var curElement=document.activeElement;if(curElement==input){vsm.form.inputsuggest.onFocus(el);}else{if(input){input.focus();}} 175vsm.addClass(el.id+'_display','writing');} 176vsm.form.inputsuggest.ajaxCreateElement=function(item,url){var value=item.getAttribute('value');item.removeAttribute('value');item.removeAttribute('onselect');var key=vsm.randomID();item.setAttribute('waiting_id',key);vcp.ajaxCall(url+value.replace('&','%26'),function(response){if(isNaN(response)){vcp.pageMessage.error(response);}else{response=response.replace(' ','');var elements=document.querySelectorAll('li[waiting_id='+key+']');for(var i=0;i<elements.length;i++){elements[i].removeAttribute('waiting_id');elements[i].setAttribute('value',vsm.trim(response));for(var k=0;k<elements[i].attributes.length;k++){var attrib=elements[i].attributes[k];if(attrib.specified){var value=attrib.value;var newValue=value.replace(/%id%/g,response);if(value!=newValue)elements[i].setAttribute(attrib.name,newValue);}} 177elements[i].innerHTML=elements[i].innerHTML.replace(/%id%/g,response);if(elements[i]!=item){var input=vsm.object(elements[i].parentNode.id.replace('_values',''));if(input)vsm.form.inputsuggest.refreshValues(input);}}}});return true;} 178vsm.form.inputsuggest.selectElement=function(el,item){var ddp=vsm.object(el.id+'_ddp');var list=vsm.object(el.id+'_suggestlist');if(!item&&vsm.dropdown.visible(ddp))item=vsm.list.activeItem(list);if(item&&!item.hasAttribute('unselectable')){var result=true;var onselect=item.getAttribute('onselect');if(onselect){if(onselect.indexOf('(')!=-1){onselect=onselect.replace('this','item');result=eval(onselect);}else{result=eval(onselect+'(item)');}} 179if(result){var selectedItem=item.cloneNode(true);vsm.form.inputsuggest.addElement(el,selectedItem);vsm.form.inputsuggest.setFocus(el);}} 180vsm.form.inputsuggest.hideSuggestList(el);if(!el.getAttribute('multiple'))vsm.removeClass(el.id+'_display','writing');
180if(item){return item;}else{return false;}} 181vsm.form.inputsuggest.addElement=function(el,selectedItem){if(typeof selectedItem=='string'){var temp=document.createElement('DIV');temp.innerHTML=selectedItem;if(temp.childNodes&&temp.childNodes[0].tagName=='LI')selectedItem=temp.childNodes[0];else return;delete temp;} 182el=vsm.object(el);selectedItem.id=vsm.randomID('isv');var valueList=values=vsm.object(el.id+'_values');var suggestList=document.getElementById(el.id+'_suggestlist');var input=document.getElementById(el.id+'_input');var multiple=el.getAttribute('multiple');if(!multiple)values.innerHTML='';var addvalue=true;if(multiple&&!el.getAttribute('duplicate')){for(var i=0;i<values.childNodes.length;i++)if(values.childNodes[i].getAttribute('value')==selectedItem.getAttribute('value')){addvalue=false;break;}} 183if(addvalue){vsm.list.addItem(valueList,selectedItem,false);vsm.form.inputsuggest.refreshValues(el);var tooltip=selectedItem.getAttribute('tproc');if(tooltip){selectedItem.setAttribute('tooltip',tooltip);if(multiple){selectedItem.setAttribute('tooltip-pos','top,right,bottom,left');}else{selectedItem.setAttribute('tooltip-pos','right,top,bottom,left');}} 184vsm.tooltip.start(selectedItem);if(!multiple){var preloadedList=suggestList.getAttribute('searchtype')=='preloaded';if(preloadedList)selectedItem.removeAttribute('removable');}}} 185vsm.form.inputsuggest.removeElement=function(element){if(element.nodeName=='LI'){var valueList=element.parentNode;vsm.list.item.remove(element);}else if(element.nodeName=='UL'){var valueList=element;vsm.list.removeSelectedItems(valueList);} 186var id=valueList.id.replace('_values','');var el=document.getElementById(id);vsm.form.inputsuggest.refreshValues(el);vsm.form.inputsuggest.setFocus(el);var input=vsm.object(el.id+'_input');input.value='';} 187vsm.form.inputsuggest.onBlur=function(el){vsm.form.element.onBlur(el);var id=el.id;vsm.removeClass(id+'_display','focus');vsm.removeClass(id+'_display','writing');vsm.form.inputsuggest.hideSuggestList(el);vsm.form.inputsuggest.busy(el,false);};vsm.form.inputsuggest.onFocus=function(el){vsm.form.element.onFocus(el);var id=el.id;vsm.addClass(el.id+'_display','focus');if(!el.value)vsm.addClass(el.id+'_display','writing');if(el.getAttribute('multiple'))vsm.form.inputsuggest.resizeInput(el);var valueList=document.getElementById(el.id+'_values');vsm.list.reset(valueList);} 188vsm.form.inputsuggest.busy=function(el,value){clearTimeout(vsm.form.inputsuggest.busyTimeout);var busy=vsm.object(el.id+'_busy');if(busy)busy.style.display=(value)?'':'none';} 189vsm.form.inputsuggest.resizeInput=function(el){el=vsm.object(el);if(el.getAttribute('multiple')){var id=el.id;var display=document.getElementById(id+'_display');var input=document.getElementById(id+'_input');var valueList=document.getElementById(el.id+'_values');if(valueList.childNodes.length){input.style.width='0';var width=display.clientWidth-input.offsetLeft-20;if(width<50)width=display.clientWidth-21;input.style.width=width+'px';}else{input.style.width='100%';} 190display.scrollTop=input.parentNode.scrollHeight;}} 191vsm.form.inputsuggest.showSuggestList=function(el){var ddp=vsm.object(el.id+'_ddp');var input=vsm.object(el.id+'_input');var display=vsm.object(el.id+'_display');var suggestList=vsm.object(el.id+'_suggestlist');var maxWidth=parseInt(vsm.currentStyle(ddp,'max-width'));if(!maxWidth||maxWidth>display.offsetWidth){ddp.style.minWidth=display.offsetWidth+'px';}else{ddp.style.minWidth=maxWidth+'px';} 192vsm.dropdown.show(ddp,display,'bottom,top,right,left,center',true);} 193vsm.form.inputsuggest.hideSuggestList=function(el){var ddp=vsm.object(el.id+'_ddp');var list=vsm.object(el.id+'_suggestlist');var input=vsm.object(el.id+'_input');list.removeAttribute('selected');if(!(vsm.hasClass(el.id+'_display','single')&&el.getAttribute('keepwriting'))){input.value='';} 194vsm.dropdown.hide(ddp);vsm.form.inputsuggest.lastSearch=null;} 195vsm.form.inputsuggest.switchSuggestList=function(el,evt){if(vsm.hasClass(el.id+'_display','nowrite'))return;if(vsm.dropdown.visible(el.id+'_ddp')){vsm.form.inputsuggest.hideSuggestList(el);}else{vsm.form.inputsuggest.search(el);vsm.form.inputsuggest.setFocus(el);} 196evt.stopPropagation();evt.preventDefault();return false;} 197vsm.form.inputsuggest.onMouseOver=function(el,evt){var srcElement=evt.srcElement;while(srcElement.tagName!='LI'&&srcElement.tagName!='UL')srcElement=srcElement.parentNode;if(srcElement.tagName=='LI')vsm.form.inputsuggest.suggestCurrentItem(el,srcElement);} 198vsm.form.inputsuggest.onMouseDown=function(el,evt){var srcElement=evt.srcElement;while(srcElement.tagName!='LI'&&srcElement.tagName!='UL')srcElement=srcElement.parentNode;if(srcElement.tagName=='LI')vsm.form.inputsuggest.selectElement(el,srcElement);evt.preventDefault();return false;} 199vsm.form.inputsuggest.suggestCurrentItem=function(el,item){vsm.list.item.setIndex(item,true);return item;} 200vsm.form.inputsuggest.onKeyDown=function(el,event){var input=vsm.object(el.id+'_input');var ddp=vsm.object(el.id+'_ddp');var valueList=vsm.object(el.id+'_values');var suggestList=vsm.object(el.id+'_suggestlist');var text=vsm.trim(input.value);switch(event.keyCode){case 9:if(!event.shiftKey&&vsm.dropdown.visible(ddp)&&vsm.list.activeItem(suggestList)){vsm.form.inputsuggest.selectElement(el);return false;} 201break;case 13:if(vsm.dropdown.visible(ddp)){if(vsm.list.activeItem(suggestList)){vsm.form.inputsuggest.selectElement(el);}else{if(el.getAttribute('cancreate')){eval(el.getAttribute('cancreate')+'(el, \''+text+'\')');vsm.form.inputsuggest.hideSuggestList(el);}}}else{vsm.form.inputsuggest.search(el);} 202return false;break;case 8:if(!text){if(vsm.dropdown.visible(ddp)){vsm.form.inputsuggest.hideSuggestList(el);}else{if(el.getAttribute('multiple')&&valueList.childNodes.length){var item=valueList.childNodes[valueList.childNodes.length-1];if(item.querySelector('.removebutton'))vsm.form.inputsuggest.removeElement(item);}}} 203break;case 40:if(!vsm.dropdown.visible(ddp))vsm.form.inputsuggest.search(el);vsm.form.inputsuggest.suggestCurrentItem(el,vsm.list.nextItem(suggestList,true));return false;break;case 38:if(!vsm.dropdown.visible(ddp))vsm.form.inputsuggest.search(el);vsm.form.inputsuggest.suggestCurrentItem(el,vsm.list.previousItem(suggestList,true));return false;break;case 33:if(!vsm.dropdown.visible(ddp))return true;vsm.form.inputsuggest.suggestCurrentItem(el,vsm.list.itemOnTop(suggestList,true,true));return false;break;case 34:if(!vsm.dropdown.visible(ddp))return true;vsm.form.inputsuggest.suggestCurrentItem(el,vsm.list.itemOnBottom(suggestList,true,true));return false;break;case 46:if(!el.getAttribute('multiple')&&!vsm.hasClass(el.id+'_display','writing')){var item=valueList.childNodes[0];if(item&&item.querySelector('.removebutton'))vsm.form.inputsuggest.removeElement(item);return false;} 204break;case 27:if(vsm.dropdown.visible(ddp)){vsm.form.inputsuggest.hideSuggestList(el);event.stopPropagation();return false;} 205break;case 188:return false;case 226:default:break;} 206return true;} 207vsm.form.inputsuggest.onKeyUp=function(el,event){var input=document.getElementById(el.id+'_input');var text=vsm.trim(input.value.toLowerCase());var ddp=vsm.object(el.id+'_ddp');if((text&&event.keyCode!=13)||vsm.dropdown.visible(ddp))vsm.form.inputsuggest.search(el);} 208vsm.form.inputsuggest.refreshValues=function(el){el=vsm.object(el);if(el.id.substr(-7)=='_values')el=vsm.object(el.id.substr(0,el.id.length-7));var valuelist=vsm.object(el.id+'_values');var values='';for(var i=0;i<valuelist.childNodes.length;i++){if(!vsm.hasClass(valuelist.childNodes[i],'removing')){var value=valuelist.childNodes[i].getAttribute('value');
208if(value)values+=','+value;}} 209values=values.substring(1);el.value=values;var input=document.getElementById(el.id+'_input');if(input&&input.getAttribute('placeholder')&&el.value){input.setAttribute('vsmplaceholder',input.getAttribute('placeholder'));input.removeAttribute('placeholder');}else if(input&&input.getAttribute('vsmplaceholder')&&!el.value){input.setAttribute('placeholder',input.getAttribute('vsmplaceholder'));input.removeAttribute('vsmplaceholder');} 210if(el.getAttribute('onchange')){var onChange=el.getAttribute('onchange');if(onChange.indexOf('(')!=-1){onChange=onChange.replace('this','el');result=eval(onChange);}else{result=eval(onChange+'(el)');}}} 211vsm.form.inputsuggest.reset=function(el){var valuelist=vsm.object(el.id+'_values');valuelist.innerHTML='';vsm.form.inputsuggest.refreshValues(el);} 212vsm.form.inputsuggest.search=function(el){vsm.tooltip.hide();var suggestList=vsm.object(el.id+'_suggestlist');var searchType=suggestList.getAttribute('searchtype');if(searchType=='ajax'){var timeout=10;}else{var timeout=10;} 213var input=vsm.object(el.id+'_input');vsm.addClass(el.id+'_display','writing');var text=vsm.trim(input.value);if(vsm.form.inputsuggest.lastSearch===text)return;vsm.form.inputsuggest.lastSearch=text;clearTimeout(vsm.form.inputsuggest.timeOut);var suggestList=vsm.object(el.id+'_suggestlist');if(searchType=='ajax'){var list=suggestList.querySelectorAll('li:not([prefixlist])');for(var i=0,s=list.length;i<s&&list[i].parentNode.removeChild(list[i]);i++);vsm.addClass(suggestList,'vcploading');} 214var ddp=vsm.object(el.id+'_ddp');if(vsm.dropdown.visible(ddp)){var display=vsm.object(el.id+'_display');vsm.dropdown.setPosition(ddp,display,'bottom, top, right, left',true);}else{vsm.form.inputsuggest.showSuggestList(el);} 215suggestList.style.display='';var error=vsm.object(el.id+'_error');error.style.display='none';if(searchType=='ajax'){vsm.form.inputsuggest.showSuggestList(el);} 216vsm.form.inputsuggest.timeOut=setTimeout(function(){if(searchType=='ajax'){if(vcp){vsm.form.inputsuggest.ajaxHandler=vcp.ajaxCall(suggestList.getAttribute('ajax')+vsm.trim(input.value).replace('&','%26')+((el.value)?'&value='+el.value:''),function(response){vsm.form.inputsuggest.found(el,response);},function(response){vsm.form.inputsuggest.error(el,response);},null,null,vsm.form.inputsuggest.ajaxHandler);}else{vsm.form.inputsuggest.ajaxHandler=vsm.ajaxCall(suggestList.getAttribute('ajax')+vsm.trim(input.value)+((el.value)?'&value='+el.value:''),function(response){vsm.form.inputsuggest.found(el,response);},function(response){vsm.form.inputsuggest.error(el,response);},null,null,vsm.form.inputsuggest.ajaxHandler);}}else{var matchCount=vsm.list.match(suggestList,text,el.getAttribute('listlength'));if(matchCount){vsm.form.inputsuggest.found(el);}else{vsm.form.inputsuggest.error(el);}}},timeout);} 217vsm.form.inputsuggest.found=function(el,response){var suggestList=vsm.object(el.id+'_suggestlist');var input=vsm.object(el.id+'_input');if(response){var list=suggestList.querySelectorAll('li:not([prefixlist])');for(var i=0,s=list.length;i<s&&list[i].parentNode.removeChild(list[i]);i++);suggestList.innerHTML+=response;var firstItem=vsm.list.firstItem(suggestList,true);vsm.list.item.select(firstItem,false,false);var ddp=vsm.object(el.id+'_ddp');if(vsm.dropdown.visible(ddp)){var display=vsm.object(el.id+'_display');vsm.dropdown.setPosition(ddp,display,'bottom,top,right,left',true);}}else{var ddp=vsm.object(el.id+'_ddp');if(vsm.dropdown.visible(ddp)){var display=vsm.object(el.id+'_display');vsm.dropdown.setPosition(ddp,display,'bottom,top,right,left',true);}else{vsm.form.inputsuggest.showSuggestList(el);}} 218var error=vsm.object(el.id+'_error');error.style.display='none';vsm.removeClass(suggestList,'vcploading');if(!input.value&&el.value&&!el.getAttribute('multiple')){var ll=suggestList.childNodes.length;var activeItem=null;for(var i=0;i<ll;i++)if(suggestList.childNodes[i].getAttribute('value')==el.value)activeItem=suggestList.childNodes[i];if(activeItem)vsm.form.inputsuggest.suggestCurrentItem(el,activeItem);}else{if(!el.getAttribute('cancreate'))vsm.form.inputsuggest.suggestCurrentItem(el,vsm.list.firstItem(suggestList,true));}} 219vsm.form.inputsuggest.error=function(el,response){var suggestList=vsm.object(el.id+'_suggestlist');suggestList.style.display='none';var error=vsm.object(el.id+'_error');if(response)error.innerHTML=response;error.style.display='';var ddp=vsm.object(el.id+'_ddp');if(vsm.dropdown.visible(ddp)){var display=vsm.object(el.id+'_display');vsm.dropdown.setPosition(ddp,display,'bottom,top,right,left',true);}else{vsm.form.inputsuggest.showSuggestList(el);} 220vsm.removeClass(suggestList,'vcploading');} 221vsm.datetime={} 222vsm.datetime.precision=function(datetime){if(!datetime)return;var d=datetime.substr(8,2);if(d!='00')return'd';var m=datetime.substr(5,2);if(m!='00')return'm';return'y';} 223vsm.datetime.validYear=function(year){if(isNaN(year))return;if(year<1||year>9999)return;if(year<=29){year=(year*1)+2000;} 224if(year>=30&&year<=99)year=(year*1)+1900;return(year*1);} 225vsm.datetime.validMonth=function(month){if(isNaN(month)){month=month.replace(/^(ene|jan).*/g,1);month=month.replace(/^(feb|fev).*/g,2);month=month.replace(/^(mar).*/g,3);month=month.replace(/^(abr|apr).*/g,4);month=month.replace(/^(may|mai).*/g,5);month=month.replace(/^(jun).*/g,6);month=month.replace(/^(jul).*/g,7);month=month.replace(/^(ago|aug).*/g,8);month=month.replace(/^(sep|set).*/g,9);month=month.replace(/^(oct|out).*/g,10);month=month.replace(/^(nov).*/g,11);month=month.replace(/^(dic|dec|dez).*/g,12);if(isNaN(month))return;}else{if(month<1||month>12)return;} 226return(month*1);} 227vsm.datetime.validDay=function(day){if(isNaN(day)){var aux=day.replace(/st|nd|rd|th|ro|°|\⩝/g,'');if(isNaN(aux)){day=day.replace(/primero|primeiro|first/g,1);if(isNaN(day))return;}else{day=aux;}} 228if(day<1||day>31)return;return(day*1);} 229function relativeDow(date,dow,futureOrPast){if(futureOrPast=='f'){var days=(dow+(7-date.getDay()))%7;if(!days)days=7;date.setDate(date.getDate()+days);}else{var days=(7-(dow-date.getDay()))%7;if(!days)days=7;date.setDate(date.getDate()-days);} 230return date;} 231function dowText(date){} 232function dowNumber(text){var dowNames=Array('domingo','lunes','martes','miercoles','jueves','viernes','sabado','sunday','monday','tuesday','wednesday','thursday','friday','saturday','domingo','segunda','terca','quarta','quinta','sexta','sabado','dom','lun','mart','mie','jue','vie','sab','sun','mon','tue','wed','thu','fri','sat','dom','seg','ter','qua','qui','sex','sab');var pos=dowNames.indexOf(text);if(pos!=-1)pos=pos%7;return pos;} 233vsm.datetime.relativeDate=function(value,language,preference){var date=new Date();if(value=='ahora'||value=='ya'){return('0'+date.getFullYear()).substr(-4)+' '+('0'+(date.getMonth()+1)).substr(-2)+' '+('0'+date.getDate()).substr(-2)+' '+('0'+date.getHours()).substr(-2)+':'+('0'+date.getMinutes()).substr(-2);}else if(value=='hoy'||value=='today'||value=='hoje'){return('0'+date.getFullYear()).substr(-4)+' '+('0'+(date.getMonth()+1)).substr(-2)+' '+('0'+date.getDate()).substr(-2);}else if(value=='ayer'||value=='yesterday'||value=='ontem'){date.setDate(date.getDate()-1);return('0'+date.getFullYear()).substr(-4)+' '+('0'+(date.getMonth()+1)).substr(-2)+' '+('0'+date.getDate()).substr(-2);}else if(value=='manana'||value=='tomorrow'||value=='amanha'){date.setDate(date.getDate()+1);return('0'+date.getFullYear()).substr(-4)+' '+('0'+(date.getMonth()+1)).substr(-2)+' '+('0'+date.getDate()).substr(-2);}else{var next=Array('proxima','proximo','next','que viene','siguiente');var past=Array('pasado','pasada','que paso','anterior','last','ago');if(value.match(new RegExp('('+next.join('|')+')'))){preference='f';}else if(value.match(new RegExp('('+past.join('|')+')'))){preference='p';} 234var dowName=value.replace(new RegExp('('+next.join('|')+'|'+past.join('|')+')','g'),'').replace(/\s+/g,' ').trim();var dowNum=dowNumber(dowName);if(dowNum!=-1){date=relativeDow(date,dowNum,preference);return('0'+date.getFullYear()).substr(-4)+' '+('0'+(date.getMonth()+1)).substr(-2)+' '+('0'+date.getDate()).substr(-2);}else{return value;}} 235return value;} 236vsm.datetime.relativeTime=function(value,language,preference){} 237vsm.datetime.timeText=function(value){var h=value.substr(11,2);if(!isNaN(h))h=h*1;var m=value.substr(14,2);if(!isNaN(m))m=m*1;
237if((h&&isNaN(h))||(m&&isNaN(m)))return;var t=('0'+h).substr(-2)+':'+('0'+m).substr(-2);return t;} 238vsm.datetime.dateText=function(value){lang='es';if(value==null)return;var y=value.substr(0,4);var m=value.substr(5,2);var d=value.substr(8,2);var repeat=(y=='0000');if(isNaN(y)||isNaN(m)||isNaN(y))return;var o='';if(d*1){if(!repeat){var date=new Date(y,m-1,d);switch(lang){case'es':var dow=Array('Domingo','Lunes','Martes','Miércoles','Jueves','Viernes','Sábado');break;} 239o+=dow[date.getDay()]+', '+(d*1)+' de ';}else{o+=(d*1)+' de ';}} 240if(m*1){switch(lang){case'es':var months=Array('Enero','Febrero','Marzo','Abril','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre');break;} 241o+=((o)?months[m-1].toLowerCase():months[m-1]);if(!repeat)o+=' de ';} 242if(y*1){if(!o){switch(lang){case'es':o+='Año';break;} 243o+=' ';} 244o+=y;} 245return o;} 246vsm.datetime.validDate=function(value,language,preference,precision){if(!preference)preference='p';var date,year,month,day;var oToday=new Date();var today=('0'+oToday.getFullYear()).substr(-4)+'-'+('0'+(oToday.getMonth()+1)).substr(-2)+'-'+('0'+oToday.getDate()).substr(-2)+' '+('0'+oToday.getHours()).substr(-2)+':'+('0'+oToday.getMinutes()).substr(-2);value=value.replace(/à|á|â|ã|ä|å/g,"a").replace(/è|é|ê|ë/g,"e").replace(/ì|í|î|ï/g,"i").replace(/ò|ó|ô|õ|ö|ø/g,"o").replace(/ù|ú|û|ü/g,"u").replace(/ñ/g,"n").replace(/ç/g,"c");value=value.toLowerCase().replace(/º|°|\(|\)|;|,|\/|\.|-|\\| de | del | el |el |ano |year | ano | year /g,' ').trim();if(value.length==0)return value;value=value.replace(/\s+/g,' ').trim();value=vsm.datetime.relativeDate(value,language,preference);console.log('relative '+value);value=value.replace(/lunes |martes |miercoles |jueves |viernes |sabado |domingo |lun |mie |jue |vie |sab |dom /g,' ');value=value.replace(/\s+/g,' ').trim();var aValue=value.split(' ');switch(language){case'es':var d=0;var m=1;break;case'pt':var d=0;var m=1;break;case'en':var d=1;var m=0;break;default:var d=1;var m=0;break;} 247switch(aValue.length){case 1:if(!isNaN(value)){if(vsm.datetime.validYear(value)&&value>99){year=vsm.datetime.validYear(value);}else{return-1;}}else if(vsm.datetime.validMonth(value)){month=vsm.datetime.validMonth(value);year=oToday.getFullYear();date=('0'+year).substr(-4)+'-'+('0'+month).substr(-2)+'-'+('0'+day).substr(-2);if(preference=='f'&&date<today){year+=1;date=('0'+year).substr(-4)+'-'+('0'+month).substr(-2)+'-'+('0'+day).substr(-2);}else if(preference=='p'&&date>today){year-=1;}} 248break;case 2:if(!isNaN(aValue[0])&&aValue[0]>31&&vsm.datetime.validYear(aValue[0])&&aValue[0]>99&&vsm.datetime.validMonth(aValue[1])){year=vsm.datetime.validYear(aValue[0]);month=vsm.datetime.validMonth(aValue[1]);}else if(vsm.datetime.validMonth(aValue[0])&&!isNaN(aValue[1])&&aValue[1]>99&&vsm.datetime.validYear(aValue[1])){year=vsm.datetime.validYear(aValue[1]);month=vsm.datetime.validMonth(aValue[0]);}else{if(vsm.datetime.validDay(aValue[d])&&vsm.datetime.validMonth(aValue[m])){day=vsm.datetime.validDay(aValue[d]);month=vsm.datetime.validMonth(aValue[m]);}else if(vsm.datetime.validDay(aValue[m])&&vsm.datetime.validMonth(aValue[d])){day=vsm.datetime.validDay(aValue[m]);month=vsm.datetime.validMonth(aValue[d]);}else{day=undefined;month=undefined;} 249if(day&&month){if(precision=='d'){year=oToday.getFullYear();date=('0'+year).substr(-4)+'-'+('0'+month).substr(-2)+'-'+('0'+day).substr(-2);if(preference=='f'&&date<today){year+=1;date=('0'+year).substr(-4)+'-'+('0'+month).substr(-2)+'-'+('0'+day).substr(-2);}else if(preference=='p'&&date>today){year-=1;date=('0'+year).substr(-4)+'-'+('0'+month).substr(-2)+'-'+('0'+day).substr(-2);}}else{year='0000';date=('0'+year).substr(-4)+'-'+('0'+month).substr(-2)+'-'+('0'+day).substr(-2);}}} 250break;default:if(!isNaN(aValue[0])&&aValue[0]>99&&vsm.datetime.validYear(aValue[0])&&vsm.datetime.validMonth(aValue[1])&&vsm.datetime.validDay(aValue[2])){year=vsm.datetime.validYear(aValue[0]);month=vsm.datetime.validMonth(aValue[1]);day=vsm.datetime.validDay(aValue[2]);}else if(vsm.datetime.validDay(aValue[d])&&vsm.datetime.validMonth(aValue[m])&&vsm.datetime.validYear(aValue[2])){day=vsm.datetime.validDay(aValue[d]);month=vsm.datetime.validMonth(aValue[m]);year=vsm.datetime.validYear(aValue[2]);}else if(vsm.datetime.validDay(aValue[m])&&vsm.datetime.validMonth(aValue[d])&&vsm.datetime.validYear(aValue[2])){day=vsm.datetime.validDay(aValue[m]);month=vsm.datetime.validMonth(aValue[d]);year=vsm.datetime.validYear(aValue[2]);} 251break;} 252if(year){if(month){if(day){date=('0'+year).substr(-4)+'-'+('0'+month).substr(-2)+'-'+('0'+day).substr(-2);var dt=new Date(year,month-1,day);
252if((year!='0000'&&year!=dt.getFullYear())||(month-1)!=dt.getMonth()||day!=dt.getDate())return-3;}else{date=('0'+year).substr(-4)+'-'+('0'+month).substr(-2)+'-00';}}else{date=('0'+year).substr(-4)+'-00-00';}}else{return-1;} 253if(aValue.length>3){var time=aValue[3]+((aValue[4])?' '+aValue[4]:'')+((aValue[5])?' '+aValue[5]:'');time=vsm.datetime.validTime(time);if(time<0){return-1;}else{return date+' '+time;}}else{return date;}} 254vsm.datetime.validTime=function(value){value=value.toLowerCase();if(value.indexOf('pm')!=-1){var pm=true;}else{var pm=false;} 255value=value.replace('am','').replace('pm','').trim();value=value.replace(/;|,|\/|\.|-|\\| /g,':').trim();var aValue=value.split(':');if(aValue.length>3||(aValue[0]&&isNaN(aValue[0]))||(aValue[1]&&isNaN(aValue[1]))||(aValue[2]&&isNaN(aValue[2])))return-2;if(aValue.length==1&&aValue[0].length==4){aValue[1]=aValue[0].substr(2,2);aValue[0]=aValue[0].substr(0,2);} 256if(aValue.length==1&&aValue[0].length==6){aValue[2]=aValue[0].substr(4,2);aValue[1]=aValue[0].substr(2,2);aValue[0]=aValue[0].substr(0,2);} 257if(aValue[0]){aValue[0]=aValue[0]*1;}else{aValue[0]=0;} 258if(aValue[1]){aValue[1]=aValue[1]*1;}else{aValue[1]=0;} 259if(aValue[2]){aValue[2]=aValue[2]*1;}else{aValue[2]=0;} 260if(aValue[0]<0||(pm&&aValue[0]>12)||(!pm&&aValue[0]>23))return-2;if(aValue[1]<0||aValue[1]>59)return-2;if(aValue[2]<0||aValue[2]>59)return-2;if(pm)aValue[0]+=12;if(aValue[0]==24)aValue[0]=0;var time=('0'+aValue[0]).substr(-2)+':'+('0'+aValue[1]).substr(-2)+':'+('0'+aValue[2]).substr(-2);return time;} 261if(typeof vsm=="undefined")var vsm={};if(typeof vsm.form=="undefined")vsm.form={};vsm.form.messages={"required":"%label% es requerido.","minlength":"%label% debe tener al menos %condition% caracteres y tiene %value%.","maxlength":"%label% debe tener %condition% caracteres como máximo y tiene %value%.","NaN":"%label% debe ser numérico.","min":"%label% no puede ser menor que %condition% y tiene valor %value%.","max":"%label% no puede ser mayor que %condition% y tiene valor %value%.","email":"La dirección de correo no es válida","date-1":"%label% no contiene una fecha válida.","date-2":"%label% no contiene una hora válida.","date-3":"%label% no contiene una fecha válida.","date-4":"%label% debe ser más precisa. Debe especificar un día determinado.","date-5":"%label% debe ser más precisa. Debe especificar al menos un mes determinado.","date-6":"%label% no puede ser anterior a la %condition%.","date-7":"%label% no puede ser posterior a la %condition%.","filetypes":"%label% no es un tipo de archivo válido.<br>Tipos de archivo válidos: %condition%","allowchars":"%label% contiene caracteres no permitidos. Caracteres permitidos: %condition%","disallowchars":"%label% contiene caracteres no permitidos. Caracteres no permitidos: %condition%","match":"%label% no tiene el formato esperado."}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.