this.focus(); function printerFriendly(urlToOpen) { var x = (screen.width-800)/2, y = (screen.height-600)/2; OpenWin = this.open(urlToOpen, "CtrlWindow", "width=800,height=600,toolbar=no,menubar=yes,location=no,scrollbars=yes,resizable=no, screenX="+x+", screenY="+y+", left="+x+", top="+y); } function recommend(urlRecommandForThisArticle) { var x = (screen.width-420)/2, y = (screen.height-300)/2; OpenWin = this.open(urlRecommandForThisArticle, "CtrlWindow", "width=420,height=415,toolbar=no,menubar=no,location=no,scrollbars=no,resizable=no, screenX="+x+", screenY="+y+", left="+x+", top="+y); } function readFunc(ident){ var el = $('toggle_' + ident); if(el.innerHTML == 'Detalii...'){ $('less_' + ident).hide(); Effect.SlideDown('more_' + ident); $(el).innerHTML = 'Ascunde...'; }else{ Effect.SlideUp('more_' + ident); Effect.SlideDown('less_' + ident); $(el).innerHTML = 'Detalii...'; } return false; } function myToggle(myID){ var el = $(myID); if(el.style.display == 'none'){ el.show(); } else { el.hide(); } } function enableMxS(event){ var el = Event.element(event); if (event.currentTarget.tagName == 'OPTION') { el.selected = !el.selected; } Event.stop(event); //$(formID).submit(); } var expandedID = 0; function emulateAccordion(accordID){ var myTriggers = $(accordID).select('.accordion_trigger'); myTriggers.each(function(currTrigger){ var currContent = 'accordion_content_' + currTrigger.getAttribute('triggerID'); currTrigger.observe('click', function(){ if(currTrigger.getAttribute('triggerID') == expandedID){ //Effect.SlideUp(currContent); $(currContent).hide(); expandedID = 0; } else { //Effect.SlideDown(currContent); $(currContent).show(); if(expandedID){ var prevContent = 'accordion_content_' + expandedID; //Effect.SlideUp(prevContent); $(prevContent).hide(); } expandedID = currTrigger.getAttribute('triggerID'); } }); $(currContent).hide(); }); } function setPage(pageID, hInput, formID){ //alert(pageID); $(hInput).value = pageID; if(formID == 'filtersForm') { setupSmartFilters(formID); } else { $(formID).submit(); } } function completeMe(){ $$('.completeMe').each(function(el) { // experimental // if(el.value == '') // el.value = el.defaultValue; Event.observe(el, 'focus', function(event) { if(el.value == el.defaultValue){ el.value = ''; if(el.innerHTML) el.innerHTML = ''; } }); Event.observe(el, 'blur', function(event) { if(el.value == ''){ el.value = el.defaultValue; if(el.innerHTML) el.innerHTML = el.defaultValue; } }); }); } function listen2filters(formID, ajaxThis){ if(ajaxThis){ var observeThisID = ajaxThis; } else { var observeThisID = formID; } var checkboxes = $$('#' + observeThisID + ' input[type=checkbox]'); checkboxes.each(function(box){ box.observe('change', function(){ if(ajaxThis){ submitMyForm(formID, $(ajaxThis).getAttribute('ajaxResultTo'), $(ajaxThis).getAttribute('ajaxTo')); } else { $(formID).submit(); } }); }); var selects = $$('#' + observeThisID + ' select'); selects.each(function(sele){ sele.observe('change', function(){ if(ajaxThis){ submitMyForm(formID, $(ajaxThis).getAttribute('ajaxResultTo'), $(ajaxThis).getAttribute('ajaxTo')); } else { $(formID).submit(); } }); }); } function submitMyForm(formsID, messageDIV, urlOverride) { var aVariables = ''; //get data from multiple forms (ids separated by | ) var formIDs = formsID.split("|"); formIDs.each(function(formID){ var currFrmEntries = $(formID).serialize(); if(aVariables.empty()){ aVariables = currFrmEntries; } else { aVariables = aVariables + '&' + currFrmEntries; } }); //alert(aVariables); //if no redirect URL specified, use the first form's action if(!urlOverride){ var formURL = $(formIDs[0]).action; } else { var baseHref = document.getElementsByTagName('base')[0].href; var formURL = baseHref + 'index.html/' + urlOverride; } //alert(formURL); new Ajax.Request(formURL, { method:'post', parameters: {'allVars' : aVariables}, onSuccess: function(transport){ //alert(transport.responseText); var response = transport.responseXML; var iStatus = response.childNodes[0].childNodes[0].firstChild.nodeValue; var iMessage = response.childNodes[0].childNodes[1].firstChild.nodeValue; var iOption = response.childNodes[0].childNodes[2].firstChild.nodeValue; if(iStatus == 'true') { $(messageDIV).innerHTML = ''; if($(messageDIV).hasClassName('error') && 0){ $(messageDIV).removeClassName('error'); $(messageDIV).addClassName('message'); } $(messageDIV).innerHTML = iMessage; //lock the forms formIDs.each(function(formID){ $(formID).disable(); }); if(iOption){ setTimeout("window.location.reload();", iOption); } } else { $(messageDIV).innerHTML = ''; if($(messageDIV).hasClassName('message') && 0){ $(messageDIV).removeClassName('message'); $(messageDIV).addClassName('error'); } $(messageDIV).innerHTML = iMessage; } $(messageDIV).show(); }, onFailure: function(error){ alert('FAIL! ' + error); } }); } function dispOneAtTime(classGroup, myID){ $$('.'+classGroup).each(function(el) { if(el.visible && el.id!=myID){ el.hide(); } else { el.show(); } }); } function preventMassFilterSele(maxFilters){ //alert(maxFilters); //parameters var allParams = $('parametersContainer').select('input, select'); allParams.each(function(box){ box.observe('change', function(){ if(box.value && (maxFilters == 0)){ box.value = 0; alert('Poti avea maxim 10 filtre selectate!'); } else if(box.value && maxFilters) { maxFilters = maxFilters*1 - 1*1; } else { maxFilters = maxFilters*1 + 1*1; } }); //maybe an optgroup?! if(box.multiple){ //alert(box.name + ' - ' + box.multiple); var innerOptions = box.select('option'); innerOptions.each(function(aOption){ //alert(aOption.value); aOption.observe('click', function(){ if(aOption.selected && (maxFilters == 0)){ aOption.selected = false; alert('Poti avea maxim 10 filtre selectate!'); } else if(aOption.selected && maxFilters){ maxFilters = maxFilters*1 - 1*1; } else { maxFilters = maxFilters*1 + 1*1; } }); }); } }); //utilities var allUtils = $('utilitiesContainer').select('input, select'); allUtils.each(function(box){ box.observe('change', function(){ if(box.checked && (maxFilters == 0)){ box.checked = false; alert('Poti avea maxim 10 filtre selectate!'); } else if(box.checked && maxFilters){ maxFilters = maxFilters*1 - 1*1; } else { maxFilters = maxFilters*1 + 1*1; } }); }); } function filteringStuff(containerID){ var selects = $$('#' + containerID + ' select'); selects.each(function(sele){ sele.observe('change', function(){ var myForm = $(containerID).up(); $(myForm).submit(); }); }); } function setupShareLinks(el) { var baseHref = document.getElementsByTagName('base')[0].href; var ajaxTo = baseHref + 'index.html' + '/mainpage|getShortUrl'; var icon = el.down('img'); icon.setAttribute('data-orig-src', icon.getAttribute('src')); icon.setAttribute('src', 'images/butoane/r0.gif'); new Ajax.Request(ajaxTo, { method:'post', parameters: {'url': escape(window.location.href) }, onSuccess: function(transport){ var shareLinks = el.up('div').select('a.shareLink'); shareLinks.each(function(shareLink) { shareLink.setAttribute('href', shareLink.href + transport.responseText); shareLink.setAttribute('onclick', ';'); }); icon.setAttribute('src', icon.getAttribute('data-orig-src')); }, onFailure: function(){ } }); } function setupSmartFilters(formID) { var myForm = $(formID); var catURL = $(formID).action; var smartURL = new Array(); var attributesQuery = ''; // select - single and multiple $$('select.filtreListing').each(function(myInput) { var parametersQuery = ''; var myChildren = myInput.select('option'); myChildren.each(function(myOption) { if(myOption.value != 0 && myOption.selected) { var text = myOption.innerHTML; text = text.replace(/^\s+|\s+$/g, ""); if(parametersQuery) parametersQuery = parametersQuery + '+' + encodeURIComponent(text); else parametersQuery = encodeURIComponent(text); } }); if(parametersQuery) smartURL.push(parametersQuery); else smartURL.push('-'); }); // checkbox $$('input.formular02Box').each(function(myInput) { if(myInput.checked) { if(attributesQuery) attributesQuery = attributesQuery + '+' + encodeURIComponent(myInput.readAttribute('data-text')); else attributesQuery = encodeURIComponent(myInput.readAttribute('data-text')); } }); if(attributesQuery) smartURL.push(attributesQuery); else smartURL.push('-'); // paginarea de la inceput -> la final smartURL.push(smartURL[0]); smartURL.push(smartURL[1]); smartURL.splice(0, 1); smartURL.splice(0, 1); smartURL.splice(0, 1); smartURL.push($('pageID').value); // acum sub forma de string smartURL = smartURL.join('/'); // console.log(catURL + '/' + smartURL); window.location = catURL + '/' + smartURL; return false; } //Cookie front end handler ( extending JS with cookie object - Prototype style) //based on Jason McCreary creation - http://jason.pureconcepts.net/articles/javascript_cookie_object /* Example Usage Cookie that expires 90 days from visit, and sets a value: Cookie.init({name: 'yourdata', expires: 90}); Cookie.setData('favorites', false); Cookie that only lasts the session, with default data: Cookie.init({name: 'mydata'}, {foo: 'bar', x: 0}); alert(Cookie.getData('foo')); */ var Cookie = { data: {}, options: {expires: 1, domain: "", path: "", secure: false}, init: function(options, data) { Cookie.options = Object.extend(Cookie.options, options || {}); var payload = Cookie.retrieve(); if(payload) { Cookie.data = payload.evalJSON(); } else { Cookie.data = data || {}; } Cookie.store(); }, getData: function(key) { return Cookie.data[key]; }, setData: function(key, value) { Cookie.data[key] = value; Cookie.store(); }, removeData: function(key) { delete Cookie.data[key]; Cookie.store(); }, retrieve: function() { var start = document.cookie.indexOf(Cookie.options.name + "="); if(start == -1) { return null; } if(Cookie.options.name != document.cookie.substr(start, Cookie.options.name.length)) { return null; } var len = start + Cookie.options.name.length + 1; var end = document.cookie.indexOf(';', len); if(end == -1) { end = document.cookie.length; } return unescape(document.cookie.substring(len, end)); }, store: function() { var expires = ''; if (Cookie.options.expires) { var today = new Date(); expires = Cookie.options.expires * 86400000; expires = ';expires=' + new Date(today.getTime() + expires); } document.cookie = Cookie.options.name + '=' + escape(Object.toJSON(Cookie.data)) + Cookie.getOptions() + expires; }, erase: function() { document.cookie = Cookie.options.name + '=' + Cookie.getOptions() + ';expires=Thu, 01-Jan-1970 00:00:01 GMT'; }, getOptions: function() { return (Cookie.options.path ? ';path=' + Cookie.options.path : '') + (Cookie.options.domain ? ';domain=' + Cookie.options.domain : '') + (Cookie.options.secure ? ';secure' : ''); } }; // not in use! function checkFilters(categ, group){ if(categ){ //get all things interesting var allSelected = true; var allGroupSelected = true; var allGroups = $$('.allGroups'); var groupCheckboxes = $$('.group_'+group); //check current group groupCheckboxes.each(function(box){ if (box.checked == false) allGroupSelected = false; }); $('group_'+group).checked = allGroupSelected; //check all groups allGroups.each(function(box){ if (box.checked == false) allSelected = false; }); $('group_all').checked = allSelected; } else if(group) { if(group=='all'){ var resetCheck = $('group_all'); var checkboxes = $$('#filtersTable input[type=checkbox]'); checkboxes.each(function(box){ box.checked = resetCheck.checked; }); } else { var resetCheck = $('group_'+group); var checkboxes = $$('.group_'+group); checkboxes.each(function(box){ box.checked = resetCheck.checked; }); var allSelected = true; var allGroups = $$('.allGroups'); allGroups.each(function(box){ if (box.checked == false) allSelected = false; }); $('group_all').checked = allSelected; } } else { var allGroups = $$('.allGroups'); allGroups.each(function(box){ var groupCheckboxes = $$('.'+box.id); var allChecked = true; groupCheckboxes.each(function(box2){ if (box2.checked == false) allChecked = false; }); box.checked = allChecked; }); var allSelected = true; var allGroups = $$('.allGroups'); allGroups.each(function(box){ if (box.checked == false) allSelected = false; }); $('group_all').checked = allSelected; } } function removeFilter(fieldID, fieldType, formID){ if(fieldType == 'zone'){ var el = $(fieldType); var myVars = $A(el.options); myVars.each(function(elEach){ if(elEach.value == fieldID){ elEach.selected = false; } }); } else if(fieldType == 'pic'){ var el = $(fieldType); el.options[0].selected = true; } else { var el = $(fieldType + '_' + fieldID); if(el.checked){ el.checked = false; } else if(el.options){ el.options[0].selected = true; } } $(formID).submit(); }