function toggle_enabled (id) {
        var el=$(id);
        if (el.disabled==false) {
                el.disable();
        } else {
                el.enable();
        }
}

function selection_enable () {
	cm = $$('*.seltd');
	cm.each(function(item) {
        	if (item.style.display != "none") {
	        	item.style.display="none";
		} else {
			item.style.display="";
		}
	});
	return false;
}

function selection_count () {
	cm = $$('*.selcheckbox');
	count=0;
	cm.each(function(item) {
		if (item.checked==true) {
			count=count+1;
		}
	});
	if (count==0) {
		alert('Bitte mindestens ein Dokument markieren.');
		return false;	
	}
	return true;
}
function selection_all (self) {
	cm = $$('*.selcheckbox');
	cm.each(function(item) {
		if (self.checked==true) {
	        	item.checked=true;
		} else {
	        	item.checked=false;
		}
	});
	return false;

}

function contextmenu_enable (id) {
        var el=$(id);
        if (el.style.display != "none") {
        	el.style.display="none";
	} else {
		cm = $$('tr.contextmenu');
		cm.each(function(item) {
			item.style.display="none";
		});
		el.style.display="";
	}
	return false;
}

function toggle_visible (id) {
        var el=$(id);
        if (el.style.display == "none") {;
        	el.style.display="block";
	} else {
        	el.style.display="none";
	}
}
function show_tour_image(image) {
	
	var imgdiv=$('tour_image');
	var w=$('tour_image_wrapper');
        var o=70;
        w.style.opacity=(o/100);
        w.style.MozOpacity=(o/100);
        w.style.KhtmlOpacity=(o/100);
        w.style.filter='alpha(opacity='+o+')';

	w.style.display="block";
	$('tour_image_wrapper2').style.display="block";

        imgdiv.innerHTML="<img src='" + image + "'/>";
	imgdiv.style.display="block";
}

function close_tour_image() {
	$('tour_image_wrapper').style.display="none";
	$('tour_image_wrapper2').style.display="none";
	$('tour_image').style.display="none";
}

function tour(chained,selected) {

        var requesturl="/rechnung/tour/"+selected;
        new Ajax.Request(requesturl, {
                method:'get',
                onSuccess: function(transport){
                        var result = transport.responseText;
                        chained.innerHTML=result;
                }
          });
	return false;
}

function update_customerdata(chained,selected) {

        var requesturl="/rechnung/customerdata/"+selected.value;
        new Ajax.Request(requesturl, {
                method:'get',
                onSuccess: function(transport){
                        var result = transport.responseText;
                        chained.innerHTML=result;
                }
          });
}

function update_customer_payment_terms(customer_id) {

        c_z    =$('k_zahlart');
        c_s    =$('k_skonto');
        c_st    =$('k_skonto_tage');
        c_faellig=$('k_faellig');

        z    =$('id_zahlart');
        s    =$('id_skonto');
        st    =$('id_skonto_tage');
        faellig    =$('id_faelligdatum');

        rdatum    =$('id_rdatum');

        if (c_faellig) {
                var requesturl="/rechnung/datecalc/?date="+rdatum.value+"&days="+c_faellig.value
                new Ajax.Request(requesturl, {
                        method:'get',
                        onSuccess: function(transport){
                                var result = transport.responseText;
                                faellig.value  = result;
                        }
                });
        }

        if ((z) && (c_z)) {
            for (i = 0; i < z.length; ++i)
                if (z.options[i].value == c_z.value)
                    z.options[i].selected = true;
        }
        if ((s) && (c_s)) {
            s.value=c_s.value;
        }
        if ((st) && (c_st)) {
            st.value=c_st.value;
        }
}

function update_zahltext(chained,selected) {

        var requesturl="/rechnung/companyzahltext/"+selected.value;
        new Ajax.Request(requesturl, {
                method:'get',
                onSuccess: function(transport){
                        var result = transport.responseText;
                        chained.value=result;
                }
          });
}

function ktoblzcheck(chained,blz,kto) {
	if ((blz=="") || (kto=="")) {
        	chained.innerHTML="";
		return;
	}
        var requesturl= "/rechnung/ktoblzcheck/" + blz + "/" + kto + "/";
        new Ajax.Request(requesturl, {
                method:'get',
                onSuccess: function(transport){
                        var result = transport.responseText;
                        chained.innerHTML=result;
                }
          });
}

function make_larger (el) {
	h=el.getHeight()
	if (h < 150) {
		el.style.height=(h+40)+'px';
	}
}
function make_smaller (el) {
	h=el.getHeight()
	if (h > 84) {
		el.style.height=(h-40)+'px';
	} else {
		el.style.height='45px';
	}
}
function update_article(pos_id,artikel_p,anr,preis,bez,mwst,meh) {
	if (window.opener.document.bill.elements['id_pos'+pos_id+'-anr']) {
		window.opener.document.bill.elements['id_pos'+pos_id+'-anr'].value=anr;
	}
	window.opener.document.bill.elements['id_pos'+pos_id+'-preis'].value=preis;
	if (window.opener.document.bill.elements['id_pos'+pos_id+'-mwst']) {
		if (mwst =='None') {
			mwst=0;
		}
		window.opener.document.bill.elements['id_pos'+pos_id+'-mwst'].value=mwst;
	}
	window.opener.document.bill.elements['id_pos'+pos_id+'-meh'].value=meh;
	window.opener.document.bill.elements['id_pos'+pos_id+'-preis'].onchange();

	if ((window.opener.document.bill.elements['id_pos'+pos_id+'-bez'].value == "") || (confirm('Soll das Feld \'Artikelbezeichnung\' überschrieben werden?')) ) {
		window.opener.document.bill.elements['id_pos'+pos_id+'-bez'].value=bez;
	}
	window.close();
}

function update_sum(chained,form) {
	var netto  = 0;
	var mwst  = 0;
	var sum  = 0;
	var rabatt = 0;
	var brutto = 0;
	var rappenrundung=0;
	if ($('id_rappenrundung')) {
		rappenrundung=1;
	}

	if ($('id_brutto')) {
		if ($('id_brutto').checked==true) {
			brutto=1;
		}
	}
	for (i=1; i<999; i++) {
		if ($('id_pos' + i + '-menge')) {
			var mw = 0
			if ($('id_pos' + i + '-mwst')) {
				mw = $('id_pos' + i + '-mwst').value;
				mw = mw.replace(/[^0-9,\.-]/,"");
				mw = mw.replace(/,/,".");
			}
			var m = $('id_pos' + i + '-menge').value;
			m = m.replace(/[^0-9,\.-]/,"");
			m = m.replace(/,/,".");
			var p = $('id_pos' + i + '-preis').value;
			p = p.replace(/[^0-9,\.-]/,"");
			p = p.replace(/,/,".");

			if ($('id_pos' + i + '-rabatt')) {
				rabattp = $('id_pos' + i + '-rabatt').value;
				rabattp = rabattp.replace(/[^0-9,\.-]/,"");
				rabattp = rabattp.replace(/,/,".");
				p = p * (1-rabattp/100);
			}
			if (brutto <1) {
				netto = netto + m * p;
				mwst = mwst + m * p * (mw/100);
			} else {
                                tmp = m * p; //Bruttopreis
                                tmpmwst = (tmp -tmp / (mw/100+1));
                                mwst = mwst + tmpmwst;
                                netto = netto + (tmp - tmpmwst);
			}
		} else {
			i=999;
		}
	}
	if ($('id_rabatt')) {
		rabatt = $('id_rabatt').value;
		rabatt = rabatt.replace(/[^0-9,\.-]/,"");
		rabatt = rabatt.replace(/,/,".");
		if (rabatt >0) {
			netto = netto * (1-rabatt/100);
			mwst = mwst * (1-rabatt/100);
		}
	}
	sum=netto+mwst;
	if ($('id_gezahlt')) {
		var gezahlt = $('id_gezahlt').value;
		gezahlt = gezahlt.replace(/[^0-9,\.-]/,"");
		gezahlt = gezahlt.replace(/,/,".");
		if (gezahlt >0) {
			sum = sum - gezahlt
		}
	}
	netto = runde(netto,2);
	var html=''
	if (mwst >0) {
		mwst = runde(mwst,2);
		mwst = mwst.replace(/\./,",");
		sum = runde(sum,2);
		if (rappenrundung==1) {
			sum = runde(runde(sum*2,1)/2,2)
		};
		sum = sum.replace(/\./,",");
		netto = netto.replace(/\./,",");
		html='Netto: ' + netto + '<br/>'
		html = html + 'MwSt:  ' + mwst + '<br/>';
		html = html + 'Summe: ' + sum + '<br/>';
	} else {
		if (rappenrundung==1) {
			netto = runde(runde(netto*2,1)/2,2)
		};
		netto = netto.replace(/\./,",");
		html='Summe: ' + netto + '<br/>'
	}
        chained.innerHTML=html;
}

function runde(x, n) {
  if (n < 1 || n > 14) return false;
  var e = Math.pow(10, n);
  var k = (Math.round(x * e) / e).toString();
  if (k.indexOf('.') == -1) k += '.';
  k += e.toString().substring(1);
  return k.substring(0, k.indexOf('.') + n+1);
}

function newwindow (url,target,height,width) {
	var doPopUpX = (screen.width/2)-width/2;
	var doPopUpY = (screen.height/2)-height/2;
	var pos = ",left="+doPopUpX+",top="+doPopUpY;
	fenster = window.open(url,target,'resizable=yes,scrollbars=yes,height='+height+',width='+width+pos);
	fenster.focus();
}

function confirmSubmit(question) {
	var agree=confirm(question);
	if (agree){
		return true ;
	} else {
		return false ;
	}
}

