// Ersteller: S. Wagner
// Datum:     22.01.2002
// Funktionen zum verändern oder überprüfen von Werten der
// Formularfelder im Falle eines Submits
//
// id ist die Kennung der Tabelle und damit auch des Formulars
// fieldname ist der Name des Formularfeldes 

var aText       = new Array();
aText['de'] = new Array();
aText['uk'] = new Array();

aText['de']['inputNotEmpty1'] = 'Bitte ';
aText['de']['inputNotEmpty2'] = ' eintragen.';
aText['uk']['inputNotEmpty1'] = 'Please enter ';
aText['uk']['inputNotEmpty2'] = '.';
aText['de']['confirmInputs1'] = 'muss mit ';
aText['de']['confirmInputs2'] = 'übereinstimmen.';
aText['uk']['confirmInputs1'] = 'shoul be same as ';
aText['uk']['confirmInputs2'] = '.';

function inputNotEmpty(id,fieldname,text) {
// Ist Inputfeld leer ? Falls ja, Fehlermeldung ausgeben und FALSE zurückgeben,
// sonst TRUE

if (document.forms[id].elements[fieldname].value=="") {
    alert(aText[lang]['inputNotEmpty1']+text+aText[lang]['inputNotEmpty2']);
    return false;
} else {
return true;
}

}

function checkAktivierungsId(id,fieldname,text) {
var str = document.forms[id].elements[fieldname].value;
if(str.search(/[0-9aAbBcCdDeEfF][0-9aAbBcCdDeEfF]-[0-9aAbBcCdDeEfF][0-9aAbBcCdDeEfF]-[0-9aAbBcCdDeEfF][0-9aAbBcCdDeEfF]-[0-9aAbBcCdDeEfF][0-9aAbBcCdDeEfF]-[0-9aAbBcCdDeEfF][0-9aAbBcCdDeEfF]-[0-9aAbBcCdDeEfF][0-9aAbBcCdDeEfF]/)==-1) {
    alert('Bitte '+text+' richtig eintragen.');
    return false;
} else {
    return true;
}
}

function chgLicense() {
    document.forms['palmreg'].submit();
}

function checkKonto() {
    if(document.forms['palmreg'].elements['qpmTable[palmreg][0][zahlungsart][value]'][1].checked) {
        if(!inputNotEmpty('palmreg','qpmTable[palmreg][0][kontonr][value]','Kontonummer')) return false;
        if(!inputNotEmpty('palmreg','qpmTable[palmreg][0][blz][value]','BLZ')) return false;
        if(!inputNotEmpty('palmreg','qpmTable[palmreg][0][kontoinh][value]','Kontoinhaber')) return false;
        return true;
    }
    
if(!document.forms['palmreg'].elements['qpmTable[palmreg][0][zahlungsart][value]'][0].checked) {
    alert("Bitte wählen Sie die gewünschte Zahlungsart.");
    return false;
}

return true;
}

function writeTimeDate(id,fieldname,text) {
// TimeDate ist ein logisch zusammengehörender Block von 4 Inputfeldern
// Die Werte werden beim submit zusammengesetzt und in ein weiteres hidden-
// Inputfeld geschrieben

var tmp = document.forms[id].elements['dy'+fieldname].value
         +document.forms[id].elements['dm'+fieldname].value
         +document.forms[id].elements['dd'+fieldname].value
         +document.forms[id].elements['dh'+fieldname].value.substr(0,2)
         +document.forms[id].elements['dh'+fieldname].value.substr(3,2)+"00";

document.forms[id].elements[fieldname].value = tmp;
return true;
}


function selectInput(id,fieldname) {
// SelectInput ist eine Kombination von Selectbox und Inputfeld
// Diese Funktion schreibt bei der Auswahl der Selectbox
// den Wert in das Inputfeld und setzt die Selectbox wieder zurück

var tmp = document.forms[id].elements['s'+fieldname].selectedIndex;

if ( tmp ) { 
    document.forms[id].elements[fieldname].value = 
        document.forms[id].elements['s'+fieldname].options[tmp].value;
} else {
    document.forms[id].elements[fieldname].value = "";
}

document.forms[id].elements['s'+fieldname].selectedIndex=0;

return true;
}

function sqlselect(id,fieldname) {
var tmp = document.forms[id].elements['s'+fieldname].selectedIndex;

if ( tmp ) { 
    document.forms[id].elements[fieldname].value = 
        document.forms[id].elements['s'+fieldname].options[tmp].value;

    document.forms[id].elements['s'+fieldname].selectedIndex=0;
        
    document.forms[id].elements['tsubmit'].value = id;
    document.forms[id].elements['taction'].value = "colselect" ;
    document.forms[id].elements['qpmTable['+id+'][0][CONDiTiON]'].value 
        = "fieldname='"+document.forms[id].elements[fieldname].value+"'";

    document.forms[id].submit();
} else {
    document.forms[id].elements[fieldname].value = "";
    document.forms[id].elements['s'+fieldname].selectedIndex=0;
    return true;
}

}


function confirmInputs(fieldname2,id,fieldname,text) {
// Überprüft, ob 2 Inputfelder den gleichen Inhalt haben.
// Falls nicht wird Fehlermeldung ausgegeben und FALSE zurückgeben,
// sonst TRUE (PWD-Abfrage).

var tmp = document.forms[id].elements[fieldname].value;

if( tmp == "" ) {
    alert(aText[lang]['inputNotEmpty1']+text+aText[lang]['inputNotEmpty2']);
    return false;
} else if ( tmp == document.forms[id].elements[fieldname2].value ) {
    return true;
} else {
    alert(text+aText[lang]['confirmInputs1']+text+aText[lang]['confirmInputs1']);
    return false;
}

}


function changegeneralFormValue(elem,value) {
// Ändert den Wert eines Inputfeldes im Hauptformular. Falls das Feld nicht
// vorhanden ist, wird es neu angelegt (Bsp. Links)
var i;
var tmp=eval("document.forms['generalForm']");

for (i=0;i<tmp.length;i++) {

    if (tmp.elements[i].name==elem) {
        tmp.elements[i].value=value; 
        return true;
    }
}

for (i=0;i<tmp.length;i++) {
    if (tmp.elements[i].name.substr(0,5) == 'empty'&&tmp.elements[i].name.length==6 ) {
        tmp.elements[i].value = value;
        tmp.elements[i].name  = elem;
        return true;
    }
}
return false;
}


function deleteFormValues(id) {
// Setzt alle Felder eines Formulars auf leeren Wert

var i;
var tmp = document.forms[id];
for(i=0;i<tmp.length;i++) {
    if(tmp.elements[i].name.substring(0,9+id.length)=="qpmTable["+id) {

        switch(tmp.elements[i].type) {
        
        case 'select-one':          tmp.elements[i].selectedIndex="0";
        default:                    tmp.elements[i].value="";
                                
        }
    }
}
}


function initFieldst(id,taction) {
// Setzt die Formularübergreifenden Felder tsubmit und taction

document.forms[id].elements['tsubmit'].value = id;
document.forms[id].elements['taction'].value = taction ;

return true;
}


function writeCheck (id,name,num,value) {
// Schreibt alle angeklickten Checkboxen in ein Hiddenfield.

var str     = document.forms[id].elements[name].value;
var checked = document.forms[id].elements['tmp'+name+num].checked;
var i;
var isinstring = str.search("::"+value);

if ( !checked && isinstring >= 0 ) {
    var ivalue = "::"+value;
    str = str.replace(ivalue,"");
} else if( checked && isinstring == -1 ) {
    str = str + "::"+value;
}

document.forms[id].elements[name].value = str;
return true;
}
