defValues = new Array ( ); // initiate array for all formulars to be validated via js here: defValues['newSubscription'] = new Array ( ); // defValues['newSubscription']['email'] = 'E-MAIL'; defValues['extendSubscription'] = new Array ( ); defValues['sendPackage'] = new Array ( ); // defValues['sendPackage']['pin'] = ''; defValues['sendInclude'] = new Array ( ); defValues['sendExpiration'] = new Array ( ); defValues['sendPin'] = new Array ( ); defValues['helpMail'] = new Array ( ); defValues['newsletter'] = new Array ( ); defValues['changeEmail'] = new Array ( ); prices = new Array ( ); prices['channelGroup'] = new Array ( ); prices['dataDepth'] = new Array ( ); prices['dataDepth']['l'] = -500.00;prices['dataDepth']['n'] = 0.00;prices['dataDepth']['q'] = 300.00;prices['channelGroup']['s'] = 1100.00;prices['channelGroup']['e'] = 1400.00;prices['channelGroup']['m'] = 0.00;prices['channelGroup']['b'] = 1100.00; months = 12; function checkInput ( formObj ) { var msg = 'Please fill in the form completely\n' var msgEmail = 'The email-address is invalid. Please enter your correct address.\n'; for ( i = 0; i < formObj.length; i++ ) { // obj = eval ( formObj.elements[i] ); var obj = formObj.elements[i]; // if ( obj.options ) if ( obj.type != 'submit' && obj.type != 'reset' && obj.type != 'hidden' ) { if ( obj.name.substr ( 0, 5 ) == 'email' ) { var string = obj.value; // new idn-domains with german specialchars...! var result = string.search ( /^[a-zA-Z0-9_.äöüÄÖÜ-]+@[a-zA-Z0-9äöüÄÖÜ_.-]+\.[a-zA-Z]{2,}$/ ); if ( result == -1 ) { alert ( msgEmail ); // + obj.name + '=' + obj.value ); obj.focus ( ); return false; } } if ( obj.value == '' || obj.value == defValues[formObj.name][obj.name] ) { // alert (defValues[formObj.name][obj.name] ); // numeric-values etc: validate automatically (is_numeric()), also emails/urls via regex, set regex via php (for php- and js-use) alert ( msg ); // + obj.name + '=' + obj.value ); obj.focus ( ); return false; } } } return true; } function updatePrice ( formObj ) { if ( !document.all ) { return; } // alert ( formObj.selectedIndex ); // alert ( formObj.parentNode.name ); otherObj = ( formObj.name == 'channelGroup' ) ? formObj.parentNode.dataDepth : formObj.parentNode.channelGroup; if ( otherObj.value != '' ) { var sumOther = prices[otherObj.name][otherObj.value]; } else { var sumOther = 0; } if ( formObj.value != '' ) { var sumActual = prices[formObj.name][formObj.value]; } else { var sumActual = 0; } if ( formObj.value != '' && otherObj.value != '' ) { var newPrice = sumActual + sumOther; var euro = Math.floor ( newPrice / 100 ); var cent = parseInt ( newPrice - ( euro * 100 ) ); //cent = cent.toString ( 10 ); if ( cent == 0 ) { cent = '00'; } else if ( cent < 10 ) { cent = '0' + cent; } // newPrice = newPrice.toString ( 10 ); } else { var euro = '-'; var cent = '--'; } document.all.Euro.innerHTML = euro; document.all.Cent.innerHTML = ',' + cent; document.all.Months.innerHTML = months; // better: getElementsById..! } function popup ( url, width, height, top, left ) { window.open ( url, "", "width=" + width + ",height=" + height + ",top=" + top + ",left=" + left + ",scrollbars=yes,resizable=yes" ); return false; }