function ajax(url,params,target,cache) { loading_started(); // Create new JsHttpRequest object. var ajax_obj = new JsHttpRequest(); if(!cache) cache=false; else cache = true; ajax_obj.caching = cache; // Code automatically called on load finishing. ajax_obj.onreadystatechange = function() { if (ajax_obj.readyState == 4) { // Write result to page element (_RESULT becomes responseJS). if(target) target.innerHTML = ajax_obj.responseJS.content; if(ajax_obj.responseJS.script) { if(tt_ie) { // IE sux window.setTimeout(ajax_obj.responseJS.script, 0); } else { eval(ajax_obj.responseJS.script); } } loading_finished(); } } // Prepare request object (automatically choose GET or POST). ajax_obj.open('POST', url, true); // Send data to backend. if(!params) ajax_obj.send( null ); else ajax_obj.send( params ); }; function lang_admin(url) { this.url = url; this._do_action = function(action,module,constant_name,language,value,target) { var a = new Array(); if(module) a['module']=module; if(action) a['action']=action; if(constant_name) a['constant_name']=constant_name; if(language) a['lang']=language; if(value) a['value']=value; ajax(this.url,a,target); } this.edit_constant = function(module,constant_name,language,value,target) { this._do_action('edit',module,constant_name,language,value,target); } this.add_constant = function(module,constant_name,language,value,target) { this._do_action('add',module,constant_name,language,value,target); } this.del_constant = function(module,constant_name,language,target) { this._do_action('del',module,constant_name,language,null,target); } }; function ch_admin(url,type) { this.url = url; this.type = type; this.get = function(offset,filter,target) { var a = new Array(); a['o']=offset; a['filter']=filter; a['ch_type']=this.type; ajax(this.url,a,target); } }; function admin_by_id(url) { this.url = url; this.get = function(id,action,target) { var a = new Array(); a['id']=id; a['action']=action; ajax(this.url,a,target); } }; function loading_started() { if(!document.getElementById('ajax_loader_div')) return; var css = document.getElementById('ajax_loader_div').style; var x = tt_GetScrollX(); var y = tt_GetScrollY(); x = tt_Int(tt_GetClientW() - 34) / 2 + x; y = tt_Int(tt_GetClientH() - 22) / 2 + y; css.left = x + "px"; css.top = y + "px"; css.display='block'; }; function loading_finished() { if(!document.getElementById('ajax_loader_div')) return; var css = document.getElementById('ajax_loader_div').style; css.display='none'; }; HIDDEN_SELECTS = new Array(); function findPos(obj) { var curleft = curtop = 0; if (obj.offsetParent) { do { curleft += obj.offsetLeft; curtop += obj.offsetTop; } while (obj = obj.offsetParent); } return {'curleft':curleft,'curtop':curtop}; } function evaluate_slider(slider) { var tmp=slider.parentNode.lastChild.style.display; ff.forElement('div','slider',function(elm){ elm.style.display="none"; }); ff.forElement('div','slider_btn_pressed',function(elm){ elm.className="slider_btn"; }); show_hidden_selects(); if(tmp!='block') { slider.parentNode.lastChild.style.display='block'; var pos=findPos(slider); slider.parentNode.lastChild.style.left = slider.parentNode.lastChild.style.top = null; if(slider.parentNode.lastChild.id && 0 > pos.curleft - tt_GetDivW(slider.parentNode.lastChild) + tt_GetDivW(slider)) { slider.parentNode.lastChild.style.left = pos.curleft - tt_GetDivW(slider.parentNode.lastChild) + tt_GetDivW(slider); } if(tt_GetClientH()+tt_GetScrollY()'; panel.className="slider_btn"; } else { t.style.display="none"; panel.innerHTML=''; panel.className="slider_btn_pressed"; } save_in_session({admin_panel_state:t.style.display+''}); }; function save_in_session(params) { var ajax_obj = new JsHttpRequest(); ajax_obj.open('GET', '/ajax/session_storage', true); ajax_obj.send( params ); } /** * lightbox */ function light_box_ajax(id) { loading_started(); // Create new JsHttpRequest object. var ajax_obj = new JsHttpRequest(); ajax_obj.caching = true; // Code automatically called on load finishing. ajax_obj.onreadystatechange = function() { if (ajax_obj.readyState == 4) { //if (window.fuckinglightboxisdisplayingonfuckingpage == false) return; // Write result to page element (_RESULT becomes responseJS). light_box_show(ajax_obj.responseJS.script,ajax_obj.responseJS.content); } } // Prepare request object (automatically choose GET or POST). ajax_obj.open(null, '/ajax/image/_/'+id, true); // Send data to backend. ajax_obj.send( null ); }; function start_light_box(id) { light_box_ajax(id); }; function light_box_show(uri,content) { loading_finished(); var anchor = A({'title': content, 'href': uri, 'rel': 'lytebox'}); myLytebox.start(anchor, false, false); return false; }