// JavaScript Document

function fix_full_size(){
  if(Prototype.Browser.IE && parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5))==6){
    elements = $$('.full_width');
    for(i=0;i<elements.length;i++){
      elements[i].parentNode.style.width = myGetDimensions(elements[i].parentNode).width;
      elements[i].parentNode.style.display = 'block';
      elements[i].style.width = '100%'
    }
  }
}

function myGetDimensions(element) {
  var display = element.style.display;
  if (display != 'none' && display != null){ // Safari bug
    els = element.style
    w = element.offsetWidth-els.borderRightWidth-els.borderLeftWidth-els.paddingLeft-els.paddingRight;
    return {width: w, height: element.offsetHeight};
  }
  var els = element.style;
  var originalVisibility = els.visibility;
  var originalPosition = els.position;
  var originalDisplay = els.display;
  els.visibility = 'hidden';
  if (originalPosition != 'fixed') // Switching fixed to absolute causes issues in Safari
    els.position = 'absolute';
  els.display = 'block';
  var originalWidth = element.clientWidth;
  var originalHeight = element.clientHeight;
  els.display = originalDisplay;
  els.position = originalPosition;
  els.visibility = originalVisibility;
  return {width: originalWidth, height: originalHeight};
}

function submitForm(obj){
  if(obj.tagName=='form' || obj.tagName=='FORM')
    obj.submit();
  else
    submitForm(obj.parentNode)
}

function questions(t){
  a = window.confirm(t);
  if(a)
    return true;
  else
    return false;
}

Event.observe(window, 'load', function(){fix_full_size()});

function changePohlavi(value){
  $('pohlavi').value = value;
  submitForm($('pohlavi'));
}

function copySelect(obj, obj2){
  br = Builder.node('br');
  o = obj.cloneNode(true);
  obj2.insert({after: br});
  obj2.insert({after: o});
}

function copySelect2(obj, obj2){
  br = Builder.node('br');
  obj = obj.parentNode;
  o = obj.cloneNode(true);
  obj2.insert({before: o});
}


Sluzby = {
  change: function(select1){
    div = select1.parentNode;
    a = div.childElements();
    select2 = a[1];

    SelectUpdater.update(select2, select1, '/'+LANG+'/ajax/order/get_sub_order/'+select1.value);
  }
}


SelectUpdater = {

  select: null,

  /**
   * Updatne select
   * @param obj Objekt který se má měnit
   * @param obj2 Objekt ze kterýho se má brát value
   * @param uri Adresa pro ajax
   */
  update: function(obj, obj2, uri){
    
    SelectUpdater.select = $(obj);


    new Ajax.Request(uri, {
      method: 'get',
      parameters: {'id': obj2.value},
      onSuccess: function(transport) {
        a = transport.responseText.evalJSON();
        s = SelectUpdater.select;
        
        if(a.length>0){
          s.show();
        } else {
          s.hide();
        }

        el = s.childElements();
        for(i=0;i<el.length;i++){
         el[i].remove();
        }

        for(i=0;i<a.length;i++){
          o = Builder.node('option', {'value': a[i][0]}, a[i][1]);
          s.appendChild(o);
        }

        s.selectedIndex = 0;


      }
    });

  }

}