
		/**
		 * Hole style Object je nach Browsertyp
		 * @param String Elementname (div)
		 *
		 * @return Object Divelement
		 */
		function getDivElement(elementName) {
			if (navigator.appName == "Microsoft Internet Explorer") {
				return document.all[elementName].document;

			}
			if(navigator.appName == "Netscape") {
				if(parseInt(navigator.appVersion) > 4) {
					return document.getElementById(elementName);
				}
				else {
					return document.layers[elementName];
				}
			}
		}
		function getFormObject() {
			if (navigator.appName == "Microsoft Internet Explorer") {
				return document.all["divOligoForm"].document.forms["oligoForm"];

			}
			if(navigator.appName == "Netscape") {
				if(parseInt(navigator.appVersion) > 4) {
					return document.oligoForm
				}
				else {
					return document.layers["divOligoForm"].document.oligoForm;
				}
			}
		}

		function frmEvaluateSequence() {
			// get the sequence string from the input field
			var toCheck = getFormObject().sequence.value;
			if(toCheck != og.getSequence()) {
				// evaluate the sequence string
				var newSequence = og.evaluateSequence(toCheck.toUpperCase());
				var numOligos = og.countAll(newSequence);
				if(numOligos > 90) {
					alert("Es sind nur 90 Bausteine erlaubt!");
					newSequence = newSequence.substring(0,newSequence.length-1);
				}
				// insert the new sequence string into the input field
				getFormObject().sequence.value = newSequence;
				// set the new sequence string for checking later
				og.setSequence(newSequence.toUpperCase());
				getFormObject().numBasen.value = og.countBasen(newSequence);
				getFormObject().numWobbels.value = og.countWobbels(newSequence);
				

				calcMassstab();
				}
		}

		function calcMassstab() {
	
		if(null!=og.getSequence())  {
			// evaluate the "Massstab" in the form
			var massstab = getFormObject().sms.value;
			var _hplc = getFormObject().hplc[0].checked;
			var basen = og.countBasen(getFormObject().sequence.value);
			
			if(og.countWobbels(og.getSequence()) > 0 && getFormObject().sms.value == 0) {
				alert("50 nmol Maßstab nicht erlaubt bei Wobbles. Der Maßstab wurde auf 100 nmol gesetzt");
				getFormObject().sms.value=1;
				massstab = getFormObject().sms.value;
			}

			// if set to Nanomaßstab, disable modifications
			if(massstab == 0) {
				getFormObject().mod3.value = 0;
				getFormObject().mod3.disabled = true;
				getFormObject().mod5.value = 0;
				getFormObject().mod5.disabled = true;
				getFormObject().hplc.value = 0;
				getFormObject().hplc[0].disabled = true;
				getFormObject().hplc[1].disabled = true;
			} else {
				getFormObject().mod3.disabled = false;
				getFormObject().mod5.disabled = false;
				getFormObject().hplc[0].disabled = false;
				getFormObject().hplc[1].disabled = false;
			}
			
			// if set to Nanomaßstab, disable modifications
			if(massstab < 2) {
				getFormObject().phos.value = 0;
				getFormObject().phos[0].disabled = true;
				getFormObject().phos[0].checked  = false;
				getFormObject().phos[1].disabled = true;
				getFormObject().phos[1].checked  = false;
				
			} else {
				getFormObject().phos[0].disabled = false;
				getFormObject().phos[1].disabled = false;
			}
			
			var nMol = new Array();
			nMol = og.calcODToNMol(massstab, _hplc, getFormObject().sequence.value);
			if(nMol.length > 1) {
				getFormObject().NMol.value = nMol[0] + "-" + nMol[1];
			} else {
				getFormObject().NMol.value = nMol[0];
			}
			
			var MW = calcMolekularGewicht(getFormObject().sequence.value);
			getFormObject().MW.value = MW;
			
			var ng = calcNMolToNg(nMol, MW);
			getFormObject().ng.value = ng;
			
			var r24Temp = calcR24Temp(getFormObject().sequence.value);
			getFormObject().r24.value = r24Temp;

			var rgcTemp = calcRgcTemp(getFormObject().sequence.value);
			getFormObject().rgc.value = rgcTemp;
		}
		}

		function checkMod5() {
			if(getFormObject().mod5.value == "1") {
				getFormObject().hplc[1].checked = true;
				getFormObject().hplc[0].disabled = true;
				getFormObject().hplc[1].disabled = true;
			} else if (getFormObject().sms.value != 0) {
				getFormObject().hplc[0].disabled = false;
				getFormObject().hplc[1].disabled = false;
			}
		}

		function checkPhosphorthionate() {
		}


		/**
		 * Initialize form
		 */
		function init() {
			calcMassstab();
			checkPhosphorthionate();
			checkMod5();
		    frmEvaluateSequence();
		}
