var msie = ((navigator.appVersion.indexOf('MSIE')!= -1)&&!window.opera)? true : false;
var is_ie6 = (msie && (navigator.appVersion.indexOf('6.0')!=-1));
var _overlay_tmp_img = false;

// funkcje ogólne (engine)
function _aEv(obj, type, fn) { 
	try { 
		if (obj.addEventListener) { 
			obj.addEventListener(type, fn, false); 
		} else if (obj.attachEvent) { 
			obj["e"+type+fn] = fn; 
			obj[type+fn] = function() { obj["e"+type+fn](window.event); }; 
			obj.attachEvent("on"+type, obj[type+fn]); 
		}
	} catch (e) {
		
	}
}

function _rEv(obj, type, fn) { 
	try { 
		if (obj.removeEventListener) { 
			obj.removeEventListener(type, fn, false); 
		} else if (obj.detachEvent) { 
			obj["e"+type+fn] = null; 			 
			obj.detachEvent("on"+type, obj[type+fn]); 
		}
	} catch (e) {
		
	}
}
function _gOb(n) { return document.getElementById(n); }
function _trm(x){return x.replace(/^\s+|\s+$/g,'');}
function _hCl(obj, clName) { var clN = ' ' + obj.className + ' '; return (clN.match(' ' + clName + ' ') != null); }
function _aCl(obj, clName) { if (!_hCl(obj, clName)) obj.className = _trm(obj.className + ' ' + clName); }
function _rCl(obj, clName) { if (!_hCl(obj, clName)) return; var clN = ' ' + obj.className + ' '; eval("obj.className = _trm(clN.replace(/ " + clName + " /g,''));"); }
function _sCl(obj, oldC, newC) { _rCl(obj, oldC); _aCl(obj, newC); }
function _fPo(obj) { var curleft = curtop = 0; if (obj.offsetParent) { curleft = obj.offsetLeft; curtop = obj.offsetTop; while (obj = obj.offsetParent) { curleft += obj.offsetLeft; curtop += obj.offsetTop; }}; return [curleft,curtop]; }
function _gBTC(obj, tag, clName) { var objs = obj.getElementsByTagName(tag); var robj = new Array(); var j = 0; for (var i = 0; i < objs.length; i++) { if (_hCl(objs[i], clName)) robj[j++] = objs[i]; }; return robj; }

function pop(filename, w, h) {
  var wnd = null;
  var aw = 800;
  var ah = 480;

  if (window.screen) {
    aw = screen.availWidth;
    ah = screen.availHeight;
  }

  var wnd_param = "width="+w+",height="+h+",left="
                + (aw-w)/2+",top="
                + (ah-h)/2
                + ",toolbar=no,location=no,directories=no,"
                + "status=no,menubar=no,"
                + "scrollbars=auto,resizable=no";

  wnd = window.open(filename, 'pop', wnd_param);
}

// dynamiczne pola edytowalne
function createEditBox(eb_type, eb_btn, eb_related, eb_param) {
  var _tmpdiv = document.createElement('div');
  eval("var _tmpobj=document.createElement('"+eb_type+"');");
  eb_param = eb_param.split(/,/);
  for (var i = 0; i < eb_param.length; i++) {
    var val = eb_param[i].split(/=/)[1];
    switch (eb_param[i].split(/=/)[0]) {
      case 'w': _tmpobj.style.width = val+'px'; break;
      case 'h': _tmpobj.style.height = val+'px'; break;
      case 'valueChange': _tmpobj.valueChange=false; _tmpobj.onchange=function(){this.valueChange=true}; break;
    }
  }
  
  _tmpdiv.appendChild(_tmpobj);
  eb_btn = eb_btn.split(/,/);
  var _tmpbtns = document.createElement('div');
  _tmpdiv.appendChild(_tmpbtns);
  _aCl(_tmpdiv, 'dyn_ed');
  _aCl(_tmpbtns, 'dyn_btns');
  for (var i = 0; i < eb_btn.length; i++) {
    var _tmpbtn = document.createElement('input');
    _tmpbtn.type = 'button';
    _tmpbtn.value = eb_btn[i].split(/=/)[0];
    _tmpbtn.clickResult = eb_btn[i].split(/=/)[1];
    _tmpbtn.related = eb_related;
    _tmpbtn.valObj = _tmpobj;
    _tmpbtns.appendChild(_tmpbtn);
    _aEv(_tmpbtn, 'click', dyn_btn_action);
  }
  _tmpdiv.valueField = _tmpobj;
  return _tmpdiv;
}

function dyn_btn_action(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  eval(el.clickResult+'(el.related);');
}

var status_editable_box = new Array();
var status_noneditable_box = new Array();
var seb_c = 0;
var sneb_c = 0;

// inicjalizacja
var initialized = false;
function init_all(e) {
  if( initialized == true ){
    return;
  }

  var all_divs = document.getElementsByTagName('div');
//  var adl = all_divs.length;
  for (var i = 0; i < all_divs.length; i++) {
    if (_hCl(all_divs[i], 'status_info')) {
      var tmpary = all_divs[i].getElementsByTagName('p');
      if (_hCl(tmpary[0], 'editable')) {
        _aEv(tmpary[0], 'mouseover', status_over);
        _aEv(tmpary[0], 'mouseout', status_out);
        _aEv(tmpary[0], 'click', status_edit_start);
        tmpary[0].editMode = false;
        tmpary[0].captionSpan = tmpary[0].getElementsByTagName('span')[0];
        tmpary[0].whenSpan = tmpary[0].getElementsByTagName('span')[1];
        if( tmpary[0].id=='' ){
          tmpary[0].id = '_seb_'+seb_c;
        }
        status_editable_box[seb_c++] = tmpary[0];
      } else {
        status_noneditable_box[sneb_c++] = tmpary[0];
      }
    } else if ((all_divs[i].id == 'mod_people') && (_hCl(all_divs[i], 'editable'))) {
      init_mpe(all_divs[i]);
    }
  }
  if (_gOb('mod_people')) {
    img_overlay_init(_gOb('mod_people'));
  }
  if (_gOb('mod_notify')) {
    _aEv(_gOb('notify_cbox'), 'click', notify_save_settings);
  }
  if (_gOb('mod_images')) {
    img_overlay_init(_gOb('mod_images'));
    images_init();
  }
  if (_gOb('mod_signup')) {
    signup_init();
  }
  if (_gOb('mod_register')) {
	    register_init();
	  }
  if (_gOb('mod_mail')) {
    mailmod_init();
  }
  if (_gOb('mod_espresso_archive')) {
    espressomod_init();
  }
  
  initialized = true;
}

// status
function status_over(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  while (!_hCl(el, 'editable')) el = el.parentNode;
  if (el.editMode) return;
  _aCl(el, 'editable_mover');
}

function status_out(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  while (!_hCl(el, 'editable')) el = el.parentNode;
  if (el.editMode) return;
  _rCl(el, 'editable_mover');
}

function status_edit_start(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  while (!_hCl(el, 'editable')) el = el.parentNode;
  if (el.editMode) return;
  _rCl(el, 'editable_mover');
  var w = el.offsetWidth - 20;
  var h = el.captionSpan.offsetHeight + 15;
  el.style.display = 'none';
  var _edit_c = createEditBox('textarea', 'Ok=status_edit_go,Cancel=status_edit_cancel', el, 'w='+w+',h='+h+',valueChange=true');
  _edit_c.valueField.value = dwr.util.unescapeHtml(el.captionSpan.innerHTML);
  el.parentNode.insertBefore(_edit_c, el);
  _edit_c.valueField.focus();
  _edit_c.valueField.select();
  el.related = _edit_c;
  el.editMode = true;
}

function status_edit_cancel(el) {
  el.style.display = 'block';
  el.parentNode.removeChild(el.related);
  _rCl(el, 'editable_mover');
  el.editMode = false;
}

// edycja anonsu
var mpe_shown_list = false;
function init_mpe(el){
	var _x11=_gBTC(el,'div','info_all')[0];
	var _x12=_gBTC(_x11,'div','value');
	var eli_l=_x12.length;
	for(var i=0;i<eli_l;i++){
		_x12[i].parentNode.style.zIndex=eli_l+1-i;
		var _x9=_gBTC(_x12[i],'span','param');
		var _x10=(_x9.length > 0)?_x9[0].innerHTML:false;
		if(_x12[i].getElementsByTagName('select').length > 0){
			var _x0=document.createElement('div');
			_aCl(_x0,'list_trigger');
			var _x8=document.createElement('ul');
			_x0.listObj=_x8;_x8.triggerObj=_x0;
			var _oldlist=_x12[i].getElementsByTagName('select')[0];
			if(_oldlist.id=='mpe_country'){
				_x0.id='mpe_country_list_trigger';				
			}			
			if(_x10==false)
				_x0.innerHTML=_oldlist.options[0].text;
			for(var j=1;j<_oldlist.options.length;j++){
				var _x1=document.createElement('li');
				_x1.rvalue=_oldlist.options[j].value;
				_x1.innerHTML=_oldlist.options[j].text;
				_x8.appendChild(_x1);
				if(_x10==_oldlist.options[j].value && !(_oldlist.id=='mpe_regio'&&!_isUaCountry(document.getElementById('mpe_country_list_trigger'))))
					_x0.innerHTML=_oldlist.options[j].text;
				_aEv(_x1,'mouseover',mpe_trigger_over);
				_aEv(_x1,'mouseout',mpe_trigger_out);
				_aEv(_x1,'click',mpe_list_apply);
				if(_oldlist.id=='mpe_country'){
					_aEv(_x1,'click',switch_regio_disabled);
				}	
			}
			if(_oldlist.id=='mpe_regio'){
				_x0.id='mpe_regio_list_trigger';
				if(!_isUaCountry(document.getElementById('mpe_country_list_trigger'))){
					_x0.innerHTML=_oldlist.options[0].text;
					_aCl(_x0, 'disabled');
				}
			}
			var _x2=document.createElement('li');
			_aCl(_x2,'resign');
			_x2.innerHTML='Cancel';
			_x8.appendChild(_x2);
			_x8.selectID=_oldlist.id;
			_oldlist.relList=_x8;
			_aEv(_x2,'mouseover',mpe_trigger_over);
			_aEv(_x2,'mouseout',mpe_trigger_out);
			_aEv(_x2,'click',mpe_list_resign);
			_x12[i].appendChild(_x0);
			_x12[i].appendChild(_x8);
			_x0.oldHTML=_x0.innerHTML;
			if(!_hCl(_x0, 'disabled')){
				_aEv(_x0,'mouseover',mpe_trigger_over);
				_aEv(_x0,'mouseout',mpe_trigger_out);
				_aEv(_x0,'click',mpe_listtrigger_click);
			}
		} else if(_x12[i].getElementsByTagName('input').length > 0){
			var _x3=document.createElement('div');
			_aCl(_x3,'input_trigger');
			var _x13=_x12[i].getElementsByTagName('input')[0].value;			
			_x3.innerHTML=(_trm(_x13).length==0)?'&nbsp;':_x13;
			_aEv(_x3,'mouseover',mpe_trigger_over);
			_aEv(_x3,'mouseout',mpe_trigger_out);
			if (_x12[i].getElementsByTagName('input')[0].id != 'mpe_city'){
				_aEv(_x3,'click',mpe_inputtrigger_click);				
			} else {
				_aEv(_x3,'click',mpe_listtrigger_click);
				var cityList = _x12[i].getElementsByTagName('ul')[0];
				_x3.listObj=cityList;cityList.triggerObj=_x3;
				for(var j=0;j<cityList.getElementsByTagName('li').length;j++){
					var cityListElement = cityList.getElementsByTagName('li')[j];
					cityListElement.inputID=_x12[i].getElementsByTagName('input')[0].id;
					_aEv(cityListElement,'mouseover',mpe_trigger_over);
					_aEv(cityListElement,'mouseout',mpe_trigger_out);
					if (j == (cityList.getElementsByTagName('li').length - 1)) {						
						_aEv(cityListElement,'click',mpe_otherbtn_click);
						cityListElement.inputDiv=_x3; 
					} else {
						_aEv(cityListElement,'click',mpe_cities_list_apply);
					}											
				}
				var cancelButton=document.createElement('li');
				_aCl(cancelButton,'resign');
				cancelButton.innerHTML='Cancel';
				cityList.appendChild(cancelButton);
				_aEv(cancelButton,'mouseover',mpe_trigger_over);
				_aEv(cancelButton,'mouseout',mpe_trigger_out);
				_aEv(cancelButton,'click',mpe_list_resign);
			}	
			var _x4=document.createElement('div');
			_aCl(_x4,'input_object');
			var _x5=document.createElement('input');
			var _x6=document.createElement('input');
			var _x7=document.createElement('input');
			_x5.type='text';
			_x6.type='button';
			_x6.value='Ok';
			_x7.type='button';
			_x7.value='Cancel';
			_aCl(_x5,'t');
			_aCl(_x6,'b');
			_aCl(_x7,'b');
			_aEv(_x6,'click',mpe_input_apply);
			_aEv(_x7,'click',mpe_input_resign);
			_x4.appendChild(_x5);
			_x4.appendChild(_x6);
			_x4.appendChild(_x7);
			_x12[i].appendChild(_x3);
			_x12[i].appendChild(_x4);
			_x3.inputText=_x5;
			_x6.inputID=_x12[i].getElementsByTagName('input')[0].id;
			_x12[i].getElementsByTagName('input')[0].relDiv=_x3;
			_x6.inputText=_x5;
			_x3.inputObj=_x4;
			_x4.triggerObj=_x3;
		}
	}
	var _x14=_gBTC(el,'p','about_entry');
	for(var i=0;i<_x14.length;i++){
		var _x15=_x14[i];
		_x15.editMode=false;
		var _x16=document.createElement('div');
		_x15.parentNode.insertBefore(_x16,_x15);
		_x16.appendChild(_x15.getElementsByTagName('span')[0]);
		_x16.appendChild(_x15);_aCl(_x16,'about_entry');
		_aCl(_x15,'editable');
		_aEv(_x15,'mouseover',status_over);
		_aEv(_x15,'mouseout',status_out);
		_aEv(_x15,'click',mpe_about_edit_start);
		_x15.id='mpe_about_entry_'+i;
	}
	var _x17=_gBTC(el,'p','about')[0];
	_aEv(_x17,'mouseover',status_over);
	_aEv(_x17,'mouseout',status_out);
	_aEv(_x17,'click',mpe_about_edit_start);
	_aCl(_x17,'editable');
	_x17.editMode = false;
	_x17.id='mpe_p_about';
	var _x18=document.createElement('div');
	_x17.parentNode.insertBefore(_x18,_x17);
	_x18.appendChild(_x17);
	_aCl(_x18,'about_top');
}

function switch_regio_disabled(e){
	var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
	var regioDiv = document.getElementById('mpe_regio_list_trigger');
	var countryDiv = document.getElementById('mpe_country_list_trigger');
	var regioSelect = document.getElementById('mpe_regio');
	if(!_isUaCountry(el)){
		regioDiv.innerHTML=regioSelect.options[0].text;
		_rCl(regioDiv, 'active');
		_rCl(regioDiv, 'hover');
		_aCl(regioDiv,'disabled');
		_rEv(regioDiv,'mouseover',mpe_trigger_over);
		_rEv(regioDiv,'mouseout',mpe_trigger_out);
		_rEv(regioDiv,'click',mpe_listtrigger_click);
	}else{
		_rCl(regioDiv, 'disabled');
		_aEv(regioDiv,'mouseover',mpe_trigger_over);
		_aEv(regioDiv,'mouseout',mpe_trigger_out);
		_aEv(regioDiv,'click',mpe_listtrigger_click);
	}	
}

function mpe_list_resign(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  _rCl(el.parentNode, 'shown');
  _rCl(el.parentNode.triggerObj, 'active');
  _rCl(el.parentNode.triggerObj, 'hover');
  mpe_shown_list = false;
}

function mpe_trigger_over(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  if (_hCl(el, 'active') || _hCl(el, 'locked')) return;
  _aCl(el, 'hover');
}

function mpe_trigger_out(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  if (_hCl(el, 'active') || _hCl(el, 'locked')) return;
  _rCl(el, 'hover');
}

function mpe_listtrigger_click(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  if (_hCl(el, 'active') || _hCl(el, 'locked')) return;
  _aCl(el, 'active');
  if (mpe_shown_list) {
    _rCl(mpe_shown_list.triggerObj, 'active');
    _rCl(mpe_shown_list.triggerObj, 'hover');
    _rCl(mpe_shown_list, 'shown');
  }
  mpe_shown_list = el.listObj;
  _aCl(el.listObj, 'shown');
}

function mpe_input_resign(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  _rCl(el.parentNode, 'shown');
  _rCl(el.parentNode.triggerObj, 'active');
  _rCl(el.parentNode.triggerObj, 'hover');
  mpe_shown_list = false;
}

function mpe_inputtrigger_click(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  if (_hCl(el, 'active') || _hCl(el, 'locked')) return;
  _aCl(el, 'active');
  if (mpe_shown_list) {
    _rCl(mpe_shown_list.triggerObj, 'active');
    _rCl(mpe_shown_list.triggerObj, 'hover');
    _rCl(mpe_shown_list, 'shown');
  }
  mpe_shown_list = el.inputObj;
  el.inputText.value = (el.innerHTML == '&nbsp;') ? '' : el.innerHTML;
  _aCl(el.inputObj, 'shown');
  el.inputText.focus();
  el.inputText.select();
}

function mpe_otherbtn_click(e) {
	  var el; 
	  if (window.event && window.event.srcElement) { 
		  el = window.event.srcElement; 
	  } 
	  if (e && e.target) { 
		  el = e.target; 
	  } 
	  if (!el) { 
		  return; 
	  }   
	  (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
	  
	  _rCl(el.parentNode, 'shown');
	  _rCl(el.parentNode.triggerObj, 'active');
	  _rCl(el.parentNode.triggerObj, 'hover');
	  mpe_shown_list = false;	  
	  
	  var inputDiv = el.inputDiv;
	  if (_hCl(inputDiv, 'active') || _hCl(inputDiv, 'locked')) return;
	  _aCl(inputDiv, 'active');
	  if (mpe_shown_list) {
	    _rCl(mpe_shown_list.triggerObj, 'active');
	    _rCl(mpe_shown_list.triggerObj, 'hover');
	    _rCl(mpe_shown_list, 'shown');
	  }
	  mpe_shown_list = inputDiv.inputObj;
	  inputDiv.inputText.value = (inputDiv.innerHTML == '&nbsp;') ? '' : inputDiv.innerHTML;
	  _aCl(inputDiv.inputObj, 'shown');
	  inputDiv.inputText.focus();
	  inputDiv.inputText.select();
	}

function mpe_about_edit_start(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  while (!_hCl(el, 'editable')) el = el.parentNode;
  if (el.editMode) return;
  _rCl(el, 'editable_mover');
  var _offsetShift = (_hCl(el.parentNode, 'about_top')) ? 20 : 0;
  var w = el.offsetWidth - _offsetShift; 
  var h = el.offsetHeight + 5;
  el.style.display = 'none';
  var _edit_c = createEditBox('textarea', 'Ok=mpe_about_edit_go,Cancel=status_edit_cancel', el, 'w='+w+',h='+h+',valueChange=true');
  _edit_c.valueField.value = dwr.util.unescapeHtml(_trm(el.innerHTML));
  el.parentNode.insertBefore(_edit_c, el);
  _edit_c.valueField.focus();
  _edit_c.valueField.select();
  el.related = _edit_c;
  el.editMode = true;
}

// overlay zdjecia

function img_overlay_init(el) {
  var _imgs = _gBTC(el, 'img', 'img_overlay');
  if (_imgs && _imgs.length > 0) {
    for (var i = 0; i < _imgs.length; i++) {
      _imgs[i].prevImg = (i == 0) ? false : _imgs[i-1];
      _imgs[i].nextImg = (i+1 == _imgs.length) ? false : _imgs[i+1];
      _imgs[i].bigSrc = _imgs[i].parentNode.getElementsByTagName('span')[0].innerHTML;
      _aEv(_imgs[i], 'click', img_overlay_start);
    }
    _aEv(_gOb('io_show_prev').getElementsByTagName('a')[0], 'click', img_overlay_prev);
    _aEv(_gOb('io_show_next').getElementsByTagName('a')[0], 'click', img_overlay_next);
    _aEv(_gOb('io_inner_img'), 'click', img_overlay_next);
    _aEv(_gOb('io_close_btn').getElementsByTagName('a')[0], 'click', img_overlay_close);
  }
  var _imgwrap = _gBTC(el, 'ul', 'imgwrap');
  if (_imgwrap && _imgwrap.length > 0 && !_hCl(_imgwrap, 'noscroll')){
    _imgwrap = _imgwrap[0];
    var _imgli = _imgwrap.getElementsByTagName('li');
    if (_imgli.length > 4) {
      _imgwrap.curImg = 0;
      _imgwrap.numImg = _imgli.length - 4;
      for (var i = 1; i < _imgli.length; i++) {
        _aCl(_imgli[i], 'scrollable');
        if (i > 3) _imgli[i].style.display = 'none';
      }
      var _liprev = document.createElement('li');
      var _linext = document.createElement('li');
      _aCl(_liprev, 'imgwrap_btn_prev');
      _aCl(_linext, 'imgwrap_btn_next');
      _aCl(_linext, 'active');
      _aEv(_liprev, 'click', img_scroll_left);
      _aEv(_linext, 'click', img_scroll_right);
      _imgwrap.insertBefore(_liprev, _imgli[1]);
      _imgwrap.appendChild(_linext);
      _liprev.po = _imgwrap;
      _liprev.rel = _linext;
      _linext.po = _imgwrap;
      _linext.rel = _liprev;
      _imgwrap.lis = _gBTC(_imgwrap, 'li', 'scrollable');
    } else if (_imgli.length > 1) {
      var _liprev = document.createElement('li');
      var _linext = document.createElement('li');
      _aCl(_liprev, 'imgwrap_btn_prev');
      _aCl(_linext, 'imgwrap_btn_next');
      _aCl(_liprev, 'disabled');
      _aCl(_linext, 'disabled');
      _imgwrap.insertBefore(_liprev, _imgli[1]);
      _imgwrap.appendChild(_linext);
    }
  }
}

function img_scroll_left(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  if (el.po.curImg == 0) return;
  el.po.curImg--;
  el.po.lis[el.po.curImg].style.display = 'block';
  el.po.lis[el.po.curImg+3].style.display = 'none';
  _aCl(el.rel, 'active');
  if (el.po.curImg == 0) _rCl(el, 'active');
}

function img_scroll_right(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  if (el.po.curImg == el.po.numImg) return;
  el.po.lis[el.po.curImg].style.display = 'none';
  el.po.lis[el.po.curImg+3].style.display = 'block';
  el.po.curImg++;
  _aCl(el.rel, 'active');
  if (el.po.curImg == el.po.numImg) _rCl(el, 'active');
}


function img_overlay_start(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  img_overlay_switchImg(el);
}

function img_overlay_switchImg(el) {
  var _img = _gOb('io_inner_img');
  _img.prevImg = el.prevImg;
  _img.nextImg = el.nextImg;
  _overlay_tmp_img = new Image();
  _aEv(_overlay_tmp_img, 'load', img_overlay_loaded);
  _overlay_tmp_img.src = el.bigSrc;
}

function img_overlay_loaded(e) {
  var _img = _gOb('io_inner_img');
  var _div = _gOb('io_container');
  _img.src = _overlay_tmp_img.src;
  var _imgwidth = _overlay_tmp_img.width+'px';
  var _imgheight = (_overlay_tmp_img.height+20)+'px';
  _div.style.width = _imgwidth;
  _gOb('io_prevnext').width = _imgwidth;
  _gOb('io_close_btn').width = _imgwidth;
  _div.style.height = _imgheight;
  _gOb('io_show_prev').style.display = (_img.prevImg) ? 'block' : 'none';
  _gOb('io_show_next').style.display = (_img.nextImg) ? 'block' : 'none';
  _img.style.display = 'inline';
  _div.style.display = 'block';
  _gOb('overlay').style.display = msie ? 'block' : 'table';
  if (msie) _gOb('ov').style.display = 'block';
}

function img_overlay_prev(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  el.blur();
  var _img = _gOb('io_inner_img');
  if (_img.prevImg) img_overlay_switchImg(_img.prevImg);
}

function img_overlay_next(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  el.blur();
  var _img = _gOb('io_inner_img');
  if (_img.nextImg) {
    img_overlay_switchImg(_img.nextImg);
  } else {
    _gOb('overlay').style.display = 'none';
	if (msie) _gOb('ov').style.display = 'none';
  }	  
}

function img_overlay_close(e) {
  _gOb('overlay').style.display = 'none';
  if (msie) _gOb('ov').style.display = 'none';
}

// strona edycji zdjęć
function images_init() {
  var _images_list = _gOb('mod_images_list');
  _images_list.avatarInput = false;
  if (_images_list) {
    var inputs_avatar = _gBTC(_images_list, 'input', 'img_avatar');   
    for (var i = 0; i < inputs_avatar.length; i++) {
      _aEv(inputs_avatar[i], 'click', images_check_avatar);     
      if (inputs_avatar[i].checked) _images_list.avatarInput = inputs_avatar[i];
    }
  }
}

// zakładanie anonsu

function signup_init() {
  _gOb('msu_city_input').style.display = 'none';
  _aEv(_gOb('msu_nick_check'), 'click', signup_check_nick);
  _aEv(_gOb('msu_nick_box_ok'), 'click', signup_nickbox_ok);
  _aEv(_gOb('msu_nick_box_cancel'), 'click', signup_nickbox_cancel);  
  var citiesList = _gOb('msu_city_list');
  _aEv(citiesList, 'change', set_city_field_from_list);
  var isCityFromDictionary = false;
  for (var i=0; i < (citiesList.options.length-1); i++) {
	  if (_trm(_gOb('msu_city_input').getElementsByTagName('input')[0].value)==_trm(citiesList.options[i].value)){
		  citiesList.options[i].selected = true;
		  isCityFromDictionary = true;
		  break;
	  }	  
  }	  
  if (!isCityFromDictionary) {
	  show_other_city_field();
  }
  var showListButton = _gOb('msu_city_input').getElementsByTagName('a')[0];
  _aEv(showListButton, 'click', show_cities_list);
}

function show_other_city_field() {
	_gOb('msu_city_input').style.display = 'inline';
	_gOb('msu_city_list').style.display = 'none';	
}

function show_cities_list() {	
	_gOb('msu_city_input').style.display = 'none';
	_gOb('msu_city_input').getElementsByTagName('input')[0].value = '';
	_gOb('msu_city_list').getElementsByTagName('option')[0].selected = true;
	_gOb('msu_city_list').style.display = 'inline';
}

function set_city_field_from_list(e) {
	var el; 
	  if (window.event && window.event.srcElement) { 
		  el = window.event.srcElement; 
	  }; 
	  if (e && e.target) { 
		  el = e.target; 
	  }; 
	  if (!el) { 
		  return; 
	  };   
	  (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
	  if (el.selectedIndex != (el.options.length - 1) ) {
		  _gOb('msu_city_input').getElementsByTagName('input')[0].value = el.options[el.selectedIndex].value;
	  } else {
		  show_other_city_field();
	  }	  
}

function register_init() {  
  _aEv(_gOb('msu_login_check'), 'click', account_check_login);
  _aEv(_gOb('msu_login_box_ok'), 'click', account_loginbox_ok);  
}

function signup_check_nick(e) {
  var _nick = _trm(_gOb('msu_nick').value);
  if (_nick == '') {
    signup_nickbox_show('empty', '');
  } else {
    signup_nick_check(_nick);
  }
}

function account_check_login(e) {
  var _login = _trm(_gOb('msu_login').value);
  if (_login == '') {
    account_loginbox_show('empty');
  } else {
    account_login_check(_login);
  }
}

function signup_check_nick_before_submit(e) {
  var _nick = _trm(_gOb('msu_nick').value);
  if (_nick == '') {
    signup_nickbox_show('empty', '');
  } else {
    signup_nick_check_before_submit(_nick);
  }
  return false;
}

function account_check_login_before_submit(e) {
  var _login = _trm(_gOb('msu_login').value);
  if (_login == '') {
    account_loginbox_show('empty');
  } else {
    account_login_check_before_submit(_login);
  }
  return false;
}

function signup_nickbox_show(s_state, s_values) {
  var _nickbox = _gOb('msu_nick_box');
  _gOb('msu_nick_box_valid').style.display = 'none';
  _gOb('msu_nick_box_invalid').style.display = 'none';
  _gOb('msu_nick_box_empty').style.display = 'none';
  _nickbox.s_state = s_state;
  switch (s_state) {
    case 'valid':
    case 'empty':
      _gOb('msu_nick_box_cancel').style.display = 'none';
      break;
    case 'invalid':
      _gOb('msu_nick_box_cancel').style.display = 'inline';
      var _p_list = _nickbox.getElementsByTagName('ul')[0];
      while (_p_list.getElementsByTagName('li').length > 0) 
        _p_list.removeChild(_p_list.getElementsByTagName('li')[0]);
      s_values = s_values.split(';');
      for (var i = 0; i < s_values.length; i++) {
        var _nli = document.createElement('li');
        var _ninput = document.createElement('input');
        var _nlabel = document.createElement('label');
        _ninput.id = 'msu_p_nick_'+i;
        _ninput.type = 'radio';
        _ninput.name = 'msu_p_nick';
        _ninput.value = s_values[i];
        _nlabel.innerHTML = s_values[i];
        _nli.appendChild(_ninput);
        _nli.appendChild(_nlabel);
        _p_list.appendChild(_nli);
      }
      break;
  }
  _gOb('msu_nick_box_'+s_state).style.display = 'block';
  _nickbox.style.display = 'block';
}

function account_loginbox_show(s_state) {
  var _loginbox = _gOb('msu_login_box');
  _gOb('msu_login_box_valid').style.display = 'none';
  _gOb('msu_login_box_invalid').style.display = 'none';
  _gOb('msu_login_box_empty').style.display = 'none';
  _loginbox.s_state = s_state;  
  _gOb('msu_login_box_'+s_state).style.display = 'block';
  _loginbox.style.display = 'block';
}

function signup_nickbox_ok(e) {
  var _nickbox = _gOb('msu_nick_box');
  if (_nickbox.s_state == 'invalid') {
    var _inputs = _nickbox.getElementsByTagName('input');
    for (var i = 0; i < _inputs.length; i++) {
      if (_inputs[i].checked) {
        _gOb('msu_nick').value = _inputs[i].value;
        _nickbox.style.display = 'none';
        return;
      }
    }
  }
  _nickbox.style.display = 'none';
}

function signup_nickbox_cancel(e) {
  var _nickbox = _gOb('msu_nick_box');
  _nickbox.style.display = 'none';
}

function account_loginbox_ok(e) {
  var _loginbox = _gOb('msu_login_box');  
  _loginbox.style.display = 'none';
}

function account_loginbox_cancel(e) {
  var _loginbox = _gOb('msu_login_box');
  _loginbox.style.display = 'none';
}

// start
_aEv(window, 'load', init_all);

// KOMUNIKACJA Z SERWEREM

function mpe_input_apply(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  var _val = _trm(el.inputText.value);
  // tutaj zostaje wywoływana funkcja zapisująca do bazy wybraną przez użytkownika wartość
  // parametry to wybrana wartość oraz ID inputa, który został zmieniony
  // ajax_call_something(_val, el.inputID);
//  alert(_val+'\n'+el.inputID);
  _rCl(el.parentNode, 'shown');
  _rCl(el.parentNode.triggerObj, 'active');
  _rCl(el.parentNode.triggerObj, 'hover');
  _aCl(el.parentNode.triggerObj, 'locked');
  el.parentNode.triggerObj.oldHTML = el.parentNode.triggerObj.innerHTML;
  el.parentNode.triggerObj.innerHTML = 'saving...';
  mpe_shown_list = false;
  
  DWRAdEdit.saveTextField(el.inputID, _val, afterSaveAdInputField);
}

function mpe_input_apply_failed(reason, inputID) {
  // funkcja wywoływana gdy z jakiegoś powodu nie udało się zapisać wartości do bazy
  // reason to komunikat, który ma zostać wyświetlony użytkownikowi, a inputID to
  // identyfikator inputa, z którego został wysłany request
  alert(reason);
  var _tmpobj = _gOb(inputID).relDiv;
  _tmpobj.innerHTML = _tmpobj.oldHTML;
  _rCl(_tmpobj, 'locked');
}

function mpe_input_apply_done(newValue, inputID) {
  // funkcja wywoływana gdy uda się zmienić wartość inputa po stronie serwera
  // zwraca nową wartość i id inputa, do którego trzeba przypisać nową wartość
  var _inpobj = _gOb(inputID);
  var _tmpobj = _inpobj.relDiv;
  _tmpobj.innerHTML = newValue;
  _rCl(_tmpobj, 'locked');
}

function mpe_list_apply(e) {
  var el; 
  if (window.event && window.event.srcElement) { 
	  el = window.event.srcElement; 
  }; 
  if (e && e.target) { 
	  el = e.target; 
  }; 
  if (!el) { 
	  return; 
  };   
  (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  // tutaj zostaje wywoływana funkcja zapisująca do bazy wybraną przez użytkownika wartość
  // parametry to wybrana wartość oraz ID selecta, który został zmieniony
  // ajax_call_something(el.rvalue, el.parentNode.selectID);
  //alert(el.rvalue+'\n'+el.parentNode.selectID);
  _rCl(el.parentNode, 'shown');
  _rCl(el.parentNode.triggerObj, 'active');
  _rCl(el.parentNode.triggerObj, 'hover');
  _aCl(el.parentNode.triggerObj, 'locked');
  el.parentNode.triggerObj.oldHTML = el.parentNode.triggerObj.innerHTML;
  el.parentNode.triggerObj.innerHTML = 'saving...';
  mpe_shown_list = false;
  
  DWRAdEdit.saveDictionaryField(el.parentNode.selectID, el.rvalue, afterSaveAdDictionaryField);
}

function mpe_list_apply_failed(reason, selectID) {
  // funkcja wywoływana gdy z jakiegoś powodu nie udało się zapisać wartości do bazy
  // reason to komunikat, który ma zostać wyświetlony użytkownikowi, a selectID to
  // identyfikator selecta, z którego został wysłany request
  alert(reason);
  var _tmpobj = _gOb(selectID).relList.triggerObj;
  _tmpobj.innerHTML = _tmpobj.oldHTML;
  _rCl(_tmpobj, 'locked');
}

function mpe_list_apply_done(newValue, selectID) {
  // funkcja wywoływana gdy uda się zmienić wartość selecta po stronie serwera
  // zwraca nową wartość (ale wartość, nie jej opis) oraz id selecta, do którego
  // trzeba przypisać nową wartość
  var _selobj = _gOb(selectID);
  var _tmpobj = _selobj.relList.triggerObj;
  for (var j = 0; j < _selobj.options.length; j++) {
    if (_selobj.options[j].value == newValue) {
      _tmpobj.innerHTML = _selobj.options[j].text;
      break;
    }
  }
  _rCl(_tmpobj, 'locked');
}

function mpe_cities_list_apply(e) {
	var el; 
	if (window.event && window.event.srcElement) { 
	  el = window.event.srcElement; 
	} 
	if (e && e.target) { 
	  el = e.target; 
	} 
	if (!el) { 
		  return; 
	}   
	(e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
	  
	var _val = _trm(el.innerHTML);
	  
	_rCl(el.parentNode, 'shown');
	_rCl(el.parentNode.triggerObj, 'active');
	_rCl(el.parentNode.triggerObj, 'hover');
	_aCl(el.parentNode.triggerObj, 'locked');
	el.parentNode.triggerObj.oldHTML = el.parentNode.triggerObj.innerHTML;
	el.parentNode.triggerObj.innerHTML = 'saving...';
	mpe_shown_list = false;
	  
	DWRAdEdit.saveTextField(el.inputID, _val, afterSaveAdCityField);
}

function mpe_cities_list_apply_failed(reason, inputID) {	
	alert(reason);
	var _tmpobj = _gOb(inputID).relDiv;
	_tmpobj.innerHTML = _tmpobj.oldHTML;
	_rCl(_tmpobj, 'locked');
}

function mpe_cities_list_apply_done(newValue, inputID) { 
	var _inpobj = _gOb(inputID);
	var _tmpobj = _inpobj.relDiv;
	_tmpobj.innerHTML = newValue;
	_rCl(_tmpobj, 'locked');
}
	
function status_edit_go(el) {
  // tutaj ajax - trzeba wywołać jakąś funkcję, która wyśle request do serwera
  // wartość pola pobieramy za każdym razem z obiektu el.related.valueField
  // druga wartość to musi być id pola statusu, z którym związane jest wysyłanie
  // requestu (takich pól ze statusem na stronie może byc więcej niż jedno)
  
  // ajax_call_something(el.related.valueField.value, el.id);
  //alert(el.related.valueField.value);
  if( !el.related.valueField.valueChange ){
    status_edit_cancel(el);
    return false;
  }
  el.captionSpan.oldHTML = el.captionSpan.innerHTML;
  el.captionSpan.innerHTML = 'saving...';
  el.whenSpan.innerHTML = '';
  el.style.display = 'block';
  el.parentNode.removeChild(el.related);
  
  DWRBlip.saveBlip (el.related.valueField.value, el.id, afterSaveBlip);
}

function status_edit_done(new_value, caller_id) {
  // ta funkcja ma zostać wywołana jako rezultat requestu wysyłanego przez status_edit_go()
  // w sytuacji, kiedy zmiana wartości przebiegła pomyślnie
  // parametr new_value ma zawierać wartość, która została zapisana przez serwer (mógłbym
  // wprawdzie przenosić ją bezpośrednio z wartości pola tekstowego, ale wolę otrzymywać
  // potwierdzoną wersję od serwera - czasami może być tak, że serwer zmodyfikuje wpis
  // użytkownika np. po to, żeby usunąć tagi HTML)
  // caller_id to id pola ze statusem, z którym związane było wysyłanie requestu
  var caller_obj = _gOb(caller_id);
  caller_obj.captionSpan.innerHTML = dwr.util.escapeHtml(new_value);
  caller_obj.whenSpan.innerHTML = '0 minutes ago';
  _rCl(caller_obj, 'editable_mover');
  _gOb(caller_id).editMode = false;
}

function status_edit_done2(new_value, caller_id) {
  // ta funkcja ma zostać wywołana jako rezultat requestu wysyłanego przez status_edit_go()
  // w sytuacji, kiedy zmiana wartości przebiegła pomyślnie
  // parametr new_value ma zawierać wartość, która została zapisana przez serwer (mógłbym
  // wprawdzie przenosić ją bezpośrednio z wartości pola tekstowego, ale wolę otrzymywać
  // potwierdzoną wersję od serwera - czasami może być tak, że serwer zmodyfikuje wpis
  // użytkownika np. po to, żeby usunąć tagi HTML)
  // caller_id to id pola ze statusem, z którym związane było wysyłanie requestu
  var caller_obj = _gOb(caller_id);
  caller_obj.captionSpan.innerHTML = dwr.util.escapeHtml(new_value);
  _rCl(caller_obj, 'editable_mover');
  _gOb(caller_id).editMode = false;
}

function status_edit_failed(reason, caller_id) {
  // ta funkcja ma zostać wywołana jako rezultat requestu wysyłanego przez status_edit_go()
  // w sytuacji, kiedy zmiana wartości nie powiodła się
  // wartość zmiennej reason jest treścią komunikatu, który zostanie wyświetlony użytkownikowi
  // caller_id to id pola ze statusem, z którym związane było wysyłanie requestu
  alert(reason);
  var caller_obj = _gOb(caller_id);
  caller_obj.captionSpan.innerHTML = caller_obj.captionSpan.oldHTML;
  _rCl(caller_obj, 'editable_mover');
  caller_obj.editMode = false;
}

function mpe_about_edit_go(el) {
  // ajax_call_something(el.related.valueField.value, el.id);
//  alert(el.related.valueField.value+'\n'+el.id);
  if( !el.related.valueField.valueChange ){
    status_edit_cancel(el);
    return false;
  }
  el.oldHTML = el.innerHTML;
  el.innerHTML = 'saving...';
  el.style.display = 'block';
  el.parentNode.removeChild(el.related);
  
  DWRAdEdit.saveTextField(el.id, el.related.valueField.value, afterSaveAdTextField);
}

function mpe_about_edit_done(new_value, caller_id) {
  var caller_obj = _gOb(caller_id);
  caller_obj.innerHTML = dwr.util.escapeHtml(new_value);
  _rCl(caller_obj, 'editable_mover');
  _gOb(caller_id).editMode = false;
}

function mpe_about_edit_failed(reason, caller_id) {
  alert(reason);
  var caller_obj = _gOb(caller_id);
  caller_obj.innerHTML = caller_obj.oldHTML;
  _rCl(caller_obj, 'editable_mover');
  caller_obj.editMode = false;
}

function notify_save_settings(e) {
  // funkcja zapisuje stan checkboxa "chcę dostawać powiadomienia o nowych wiadomościach i anonsach na e-mail"
  // trzeba przekazać ajaxem wartość zmiennej cb_state (true / false)
  var cb_state = _gOb('notify_cbox').checked;
}

function images_check_avatar(e) {
  // funkcja ustawia, który obrazek ma być avatarem
  // trzeba przekazać wartość zmiennej cb_avatar, czyli identyfikator zdjęcia (tak jak to jest opisane
  // w pliku images.htm)
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };
  var _images_list = _gOb('mod_images_list');
  if (el.checked) {
    if (_images_list.avatarInput) {
      _images_list.avatarInput.checked = false;     
    }
    _images_list.avatarInput = el;
  } else {
    _images_list.avatarInput = false;
  }  
  var cb_avater = el.id.split('_')[2];
  DWRAvatar.setAvatar(el.checked, el.id, afterSetAvatar);
}

function images_check_hidden(e) {
  // funkcja ustawia czy obrazek ma być ukryty, czy nie
  // trzeba przekazać wartość zmiennej cb_hidden, czyli identyfikator zdjęcia (tak jak to jest opisane
  // w pliku images.htm)
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };
  el.relInput.disabled = el.checked;
  var cb_hidden = el.id.split('_')[2];
}

function account_login_check(login) {	  
	DWRRegisterAccount.isLoginAvailable(login, afterIsLoginAvailable);
}

function account_login_check_before_submit(login) {	  
	DWRRegisterAccount.isLoginAvailable(login, afterIsLoginAvailableBeforeSubmit);
}

function account_login_check_ok() {
	account_loginbox_show('valid');
}

function account_login_check_fail(l_nicks) {
	account_loginbox_show('invalid');
}
	
function signup_nick_check(i_nick) {
  // funkcja sprawdzająca, czy dany nick już jest zarejestrowany
  // trzeba przekazać ajaxem wartość zmiennej i_nick
//  alert(i_nick);
  
  DWRAdAdd.isLoginAvailable(i_nick, afterIsLoginAvailable);
}

function signup_nick_check_before_submit(i_nick) {
  // funkcja sprawdzająca, czy dany nick już jest zarejestrowany
  // wywo�ywana jest przed submitem formy
  
  DWRAdAdd.isLoginAvailable(i_nick, afterIsLoginAvailableBeforeSubmit);
}

function signup_nick_check_ok() {
  // funkcja, która ma zostać wywołana, jeśli nick jest dostępny 
  // (ewentualnie można od razu wywołać funkcję signup_nickbox_show() z takimi parametrami jak niżej i usunąć tę funkcję)
  signup_nickbox_show('valid', '');
}

function signup_nick_check_fail(l_nicks) {
  // funkcja, która ma zostać wywołana, jeśli nick jest zajęty
  // parametr l_nicks ma zawierać listę proponowanych nicków w postaci łańcucha znaków,
  // w którym każdy z nicków jest oddzielony średnikiem
  // (ewentualnie można od razu wywołać funkcję signup_nickbox_show() z takimi parametrami jak niżej i usunąć tę funkcję)
  signup_nickbox_show('invalid', l_nicks);
}

function strefa_add(s_img_uri, s_nick, s_nick_uri, s_content) {
  // funkcja, która dodaje nowy wpis do listy statusów w strefie espresso
  // parametry po kolei to: źródło obrazka, nick, adres strony użytkownika, tekst statusu
  
  var _strefa = _gOb('mod_strefa').getElementsByTagName('ul')[0];
  _strefa.removeChild(_strefa.getElementsByTagName('li')[_strefa.getElementsByTagName('li').length-1]);
  var _nli = document.createElement('li');
  var _nimg = document.createElement('img');
  var _na = document.createElement('a');
  var _ntn = document.createTextNode(s_content);
  _nimg.src = s_img_uri;
  _na.href = s_nick_uri;
  _na.innerHTML = s_nick+':';
  _nli.appendChild(_nimg);
  _nli.appendChild(_na);
  _nli.appendChild(_ntn);
  _strefa.insertBefore(_nli, _strefa.getElementsByTagName('li')[0]);
}

function espressomod_init() {
	var _d = _gOb('mod_espresso_archive');
	_d.esp_count = 0;
	_d.checked_count = 0;
	var _imc = _gBTC(_d, 'input', 'espc');
	if (_imc && _imc.length > 0) {
	  _d.esp_imc = _imc;
	  for (var i = 0; i < _imc.length; i++) {
	    _aEv(_imc[i], 'click', espressomod_check_esp);
	    _imc[i].checked = false;
	    _d.esp_count++;
	  }
	}
	var _imca = _gOb('esp_check_all');
	if (_imca) {
	  _aEv(_imca, 'click', espressomod_check_all);
	  _imca.checked = false;
	}
	var _rm = _gOb('esp_remover');
	if (_rm) _aEv(_rm, 'submit', espressomod_remove_esps);
	if ( _d.esp_count==0 ){
	  var _aa = _gBTC(_d, 'li', 'all_action');
	  if(_aa!=undefined){
		  _aa[0].style.visibility = 'hidden';
	  }
	}
}

function espressomod_check_all(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };
  var _d = _gOb('mod_espresso_archive');
  for (var i = 0; i < _d.esp_imc.length; i++) {
    _d.esp_imc[i].checked = el.checked;
  }
  _d.checked_count = el.checked ? _d.esp_count : 0;
}

function espressomod_check_esp(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };
  var _d = _gOb('mod_espresso_archive');
  _d.checked_count += el.checked ? 1 : -1;
  _gOb('esp_check_all').checked = (_d.checked_count == _d.esp_count);
}

function espressomod_remove_esps(e) {
  var el; if (window.event && window.event.srcElement) { el = window.event.srcElement; }; if (e && e.target) { el = e.target; }; if (!el) { return; };   (e.preventDefault) ? e.preventDefault() : (e.returnValue = false);
  var _c = _gOb('removeEspressosConfirm');
  var _d = _gOb('mod_espresso_archive');
  var _i = _gOb('esp_to_remove');
  var _z = [];
  if( _d.checked_count==0 || !confirm(_c.value) ){
    return false;
  }
  for (var i = 0; i < _d.esp_imc.length; i++) {
    if (_d.esp_imc[i].checked) _z[_z.length] = _d.esp_imc[i].id.split('_')[1];
  }
  _i.value = _z.join(',');
  el.submit();
}
