function hdstartpackage_check(elem, hdstart_elem){
	if ($('#'+elem).is(':checked')){
		$('#'+hdstart_elem).removeAttr('disabled').next('label').removeClass('chkdisabled');
	}else{
		$('#'+hdstart_elem).attr('disabled','disabled').next('label').addClass('chkdisabled');;
		$('#'+hdstart_elem).get(0).checked = false;		
	}
}

function engine_simple_check(fr) {
		createMessage(fr);
		
		var mandatory = new Array("ContentObjectAttribute_ezstring_data_text_4789","ContentObjectAttribute_ezstring_data_text_4790","ContentObjectAttribute_ezstring_data_text_4792","ContentObjectAttribute_ezstring_data_text_4794","ContentObjectAttribute_ezstring_data_text_4796","ContentObjectAttribute_data_text_4634");
		for(var i = 0; i < fr.elements.length; i++)
		{
			var elem = fr.elements[i];
			for(var j = 0; j < mandatory.length; j++)
			if(elem.name == mandatory[j])
			{
				if(elem.value == '')
				{
					elem.style.border = "1px solid #ff5555";
					alert("Niste ispunili sva polja!");
					return false;
				}
			}
		}

		if(!fr.izjava.checked) {
			alert("Morate potvrditi da pristajete na ponuđene uvjete!");
			return false;
		}

		return ValidateForm(fr);
}
function createMessage(fr){
	var msg=document.getElementById('msg');
	msg.value="\nPREGLED ODABRANIH USLUGA\n\n";

	for(var j=0;j<fr.length;j++){
		c=fr[j];
		if(c.type=="radio" || c.type=="checkbox"){
			if (c.name != "Xtel" && c.name != "internet_type" && c.name != "izjava" && c.name.indexOf("ContentObjectAttribute")<0 && c.checked) {
				msg.value += c.name + ": " + c.value + "\n";
			}
		}
		if(c.type=="text"){
			if (c.name.indexOf("ContentObjectAttribute")<0 && c.value.length > 0) {
				msg.value += c.name + ": " + c.value + "\n";
			}
		}
	}
}
function resetForm(fr){
	for(var j=0;j<fr.length;j++){
		c=fr[j];
		if(c.type=="radio" || c.type=="checkbox"){
			if (c.name != "izjava" && c.name.indexOf("ContentObjectAttribute")<0 ) {
				c.checked = c.defaultChecked;
			}
		}
	}
}
function restoreDefault(){
	if (!this.value){
		this.value=this.defaultValue;
	}
}
function clearDefault(){
	if (this.value==this.defaultValue){
		this.value="";
	}
}

      
function hideall(except) {
	elements = "DIV";
	elements = elements.split(",");
	for (i=0; i<elements.length; i++) {
		curElements =  document.getElementsByTagName(elements[i]);
		for (c=0; c<curElements.length; c++) {
			if (document.getElementsByTagName(elements[i])[c].className == 'vivid') {
				document.getElementsByTagName(elements[i])[c].className= 'blur';
			}
		}
	}
}

function hidesections() {
	document.getElementById('second').style.display = 'none';
	document.getElementById('third').style.display = 'none';
}


function sectionA(obj) {
	if (obj == 1) {
		resetForm(document.formular);   //		document.formular.reset();
		hideall();
		hidesections();
		
		document.getElementById('1d').checked = true;
		//document.getElementById('1d').disabled = true;
		document.getElementById('2d').disabled = false;
		document.getElementById('3d').disabled = false;
		
		document.getElementById('1').className = 'vivid';
		
	} else if (obj == 2) {

		resetForm(document.formular);   //		document.formular.reset();
		hideall();
		hidesections();
		document.getElementById('2d').checked = true;	
		document.getElementById('1d').disabled = false;
		//document.getElementById('2d').disabled = true;
		document.getElementById('3d').disabled = false;
			
		document.getElementById('2').className = 'vivid';
		
	} else {
	
		resetForm(document.formular);   //		document.formular.reset();
		hideall();
		hidesections();
		document.getElementById('3d').checked = true;
		document.getElementById('1d').disabled = false;
		document.getElementById('2d').disabled = false;
		//document.getElementById('3d').disabled = true;
		
		document.getElementById('3').className = 'vivid';
	}
	return true;
}

function sectionB(obj) {
	document.getElementById('second').style.display = 'block';
	if (document.getElementById(obj).className == 'vivid') {
		document.getElementById(obj).className = 'blur';
	} else {
		document.getElementById(obj).className = 'vivid';
	}	
	return true;
}

function sectionC(obj) {
	document.getElementById('third').style.display = 'block';
	if (document.getElementById(obj).className == 'vivid') {
		document.getElementById(obj).className = 'blur';
	} else {
		document.getElementById(obj).className = 'vivid';
	}	
	return true;
}

function enable(obj) {
	obj.disabled = false;
}

function disable(obj) {
	obj.disabled = true;
}

function check(obj) {
	obj.checked = true;
}

function holdvar(obj) {
	document.formular.hold.value = obj.value;
}

// single choice functions

function kabelska1d(obj) {
	sectionB('4');
	if (document.getElementById('kabtv1d').checked == false) {
		document.getElementById('9').className = 'blur';
		
		// tv package unselect
		document.getElementById('hr_package').checked = false;
		document.getElementById('basic_package').checked = false;
		document.getElementById('tvp1').checked = false;
		document.getElementById('tvp2').checked = false;
		document.getElementById('tvp3').checked = false;
		document.getElementById('tvp4').checked = false;
		document.getElementById('tvp5').checked = false;
	}
}

function internet1d() {
	sectionB('5');  
	enable(document.formular.wm);
	
	// if unselected, unset all dependant values
	if (document.getElementById('in1d').checked == false) {
		document.getElementById('11').className = 'blur';
		
		// internet speed unset
		document.getElementById('insp1').checked = false;
		document.getElementById('insp2').checked = false;
		document.getElementById('insp3').checked = false;
		document.getElementById('insp4').checked = false;
		
		// connection type unset
		document.getElementById('wm').checked = false;
		document.getElementById('wlan').checked = false;
		document.getElementById('wlan4').checked = false;
		
		// adapters unset
		document.getElementById('inad1').checked = false;
		document.getElementById('inad2').checked = false;
		document.getElementById('inad3').checked = false;
		document.getElementById('inad4').checked = false;		
	}
}
function telefon1d(obj) {
	sectionB('7'); 
	sectionC('13');
	enable(document.formular.flat);
	
	// if unselected, unselect all dependant values
	if (document.getElementById('in1d').checked == false) {
	
		// telephone lines choice unset
		document.getElementById('new_num').checked = false;
		document.getElementById('keep_num').checked = false;
		document.getElementById('keep_num_value').value = '';
		
		document.getElementById('addxtel').checked = false;
		document.getElementById('new_num2').checked = false;
		document.getElementById('keep_num2').checked = false;
		document.getElementById('keep_num_value2').value = '';
		
		// unset all other telephone values (2-26)
		document.getElementById('flat').checked = false;
		var divval = 2;
		for (divval = 2; divval <= 26; divval++)
		{
			document.getElementById('to' + divval).checked = false;
		}
	
	}
}

function tvinternet2d(obj) {
	hideall(); 
	sectionA('2'); 
	check(obj); 
	sectionB('4_disabled'); 
	sectionB('6'); 
	sectionC('9'); 
	sectionC('10'); 
	sectionC('11'); 
	enable(document.formular.wm); 
	disable(document.formular.flat);
	document.getElementById('noupgrade').checked = true;
}

function tvtelefon2d(obj) {
	hideall(); 
	sectionA('2'); 
	check(obj); 
	sectionB('4_disabled'); 
	sectionB('7'); 
	sectionC('9'); 
	sectionC('13');
	enable(document.formular.flat);
}

function internettelefon2d(obj) {
	hideall(); 
	sectionA('2'); 
	check(obj); 
	sectionB('6'); 
	sectionB('7'); 
	sectionC('10'); 
	sectionC('11'); 
	sectionC('13'); 
	check(document.formular.flat); 
	disable(document.formular.flat); 
	enable(document.formular.wm);
}

function tvinternettelefon3d(obj) {
	sectionA('3');
	check(obj); 
	sectionB('4_disabled'); 
	sectionB('6'); 
	sectionB('7'); 
	sectionC('9'); 
	sectionC('10'); 
	sectionC('11'); 
	sectionB('13'); 
	enable(document.formular.wm);
	check(document.formular.flat);
	disable(document.formular.flat);	
}

function carnet3d(obj) {
		sectionA('3');
		check(obj); 
		sectionB('4_disabled'); 
		sectionB('6'); 
		sectionB('7'); 
		sectionC('9'); 
		sectionC('10'); 
		sectionC('11'); 
		sectionB('13'); 
		enable(document.formular.wm);
		check(document.formular.flat);
		disable(document.formular.flat);
}

function internet_speed() {
	document.getElementById('third').style.display = 'block';
	document.getElementById('11').className = 'vivid';
}

function hrvatskipaket() {
	if (document.getElementById('hr_package').checked == true && !(document.getElementById('hr_package').disabled)) {
		//alert (document.getElementById('hr_package').disabled);
		document.getElementById('9').className = 'blur';
	}
}

function osnovnipaket() {
	if (document.getElementById('basic_package').checked == true && !(document.getElementById('basic_package').disabled)) {
		document.getElementById('third').style.display = 'block';
		document.getElementById('9').className = 'vivid';
	}
}

function additional_line() {
	if (document.getElementById('addxtel').checked == true) {
		document.getElementById('to3').checked = false;
		document.getElementById('to4').checked = false;
		document.getElementById('to7').checked = false;
		document.getElementById('to8').checked = false;
		document.getElementById('to3').checked = false;
		document.getElementById('to10').checked = false;
		document.getElementById('to3').checked = false;
		document.getElementById('to19').checked = false;
		document.getElementById('to20').checked = false;
		document.getElementById('to21').checked = false;
		document.getElementById('to22').checked = false;
		document.getElementById('to23').checked = false;
		document.getElementById('to24').checked = false;
		document.getElementById('to25').checked = false;
		document.getElementById('to26').checked = false;
	}
	sectionC('extraline1'); 
	sectionC('extraline2'); 
	sectionC('extraline3'); 
	sectionC('extraline4');
	
}


function ValidateForm(form) {

	// nothing selected
	if (document.getElementById('1d').checked != true && document.getElementById('2d').checked != true && document.getElementById('3d').checked != true) {
		alert('Potrebno je odabrati paket!') 
		return false; 
	}
	
	// 1D selected but no package selected
	if (document.getElementById('1d').checked != false && document.getElementById('kabtv1d').checked != true && document.getElementById('in1d').checked != true && document.getElementById('tel1d').checked != true) {
		alert('Potrebno je odabrati paket!') 
		return false; 
	}
	
	// 2D selected but no package selected
	if (document.getElementById('2d').checked != false && document.getElementById('fir').checked != true && document.getElementById('sec').checked != true && document.getElementById('thi').checked != true) {
		alert('Potrebno je odabrati paket!') 
		return false; 
	}
	
	// 3D selected but no package selected
	if (document.getElementById('3d').checked != false && document.getElementById('3dpack').checked != true && document.getElementById('3dcarnetpack').checked != true) {
		alert('Potrebno je odabrati paket!') 
		return false; 
	}

	// 1D cable tv selected, package not selected
	if (document.getElementById('kabtv1d').checked != false && document.getElementById('hr_package').checked != true && document.getElementById('basic_package').checked != true) {
		alert('Potrebno je odabrati paket kabelske televizije!') 
		return false; 
	}
	
	// 1D internet selected, package not selected
	if (document.getElementById('in1d').checked != false && document.getElementById('insp1').checked != true && document.getElementById('insp2').checked != true && document.getElementById('insp3').checked != true && document.getElementById('insp4').checked != true && document.getElementById('insp5').checked != true && document.getElementById('insp6').checked != true && document.getElementById('insp7').checked != true) {
		alert('Potrebno je odabrati brzinu internet paketa!') 
		return false; 
	} 
	
	// 1D internet selected, speed selected, modem type not selected
	if ((document.getElementById('wm').checked != true && document.getElementById('wlan').checked != true && document.getElementById('wlan4').checked != true) && (document.getElementById('insp1').checked == true || document.getElementById('insp2').checked == true || document.getElementById('insp3').checked == true || document.getElementById('insp4').checked == true || document.getElementById('insp5').checked == true || document.getElementById('insp6').checked == true || document.getElementById('insp7').checked == true)) {
		alert('Potrebno je odabrati vrstu modema!') 
		return false; 
	}
	
	// 2D internet selected, modem type not selected
	if ((document.getElementById('fir').checked != false || document.getElementById('thi').checked != false) && (document.getElementById('wm').checked != true && document.getElementById('wlan').checked != true && document.getElementById('wlan4').checked != true))  {
		alert('Potrebno je odabrati vrstu modema!') 
		return false; 
	}
	
	// 3D internet selected, modem type not selected
	if ((document.getElementById('3dpack').checked != false || document.getElementById('3dcarnetpack').checked != false) && (document.getElementById('wm').checked != true && document.getElementById('wlan').checked != true && document.getElementById('wlan4').checked != true))  {
		alert('Potrebno je odabrati vrstu modema!') 
		return false; 
	}
	
	// telephone selected, keep or new not selected
	if ((document.getElementById('tel1d').checked != false || document.getElementById('sec').checked != false || document.getElementById('thi').checked != false || document.getElementById('3dpack').checked != false || document.getElementById('3dcarnetpack').checked != false) && (document.getElementById('new_num').checked != true && document.getElementById('keep_num').checked != true)) {
		alert('Potrebno je odabrati zadržavanje postojećeg broja ili otvaranje novog!') 
		return false; 
	}
		// telephone selected, is number entered and valid?
		if ((document.getElementById('keep_num').checked != false) && (IsNumeric(document.getElementById('keep_num_value').value) != true)) {
			alert('Potrebno je upisati ispravan telefonski broj!') 
			return false; 
		}
		
	// additional telephone line selected, keep or new not selected
	if ((document.getElementById('addxtel').checked != false) && (document.getElementById('new_num2').checked != true && document.getElementById('keep_num2').checked != true)) {
		alert('Potrebno je odabrati zadržavanje postojećeg broja dodatne linije ili otvaranje novog!') 
		return false; 
	}
	
	return true;
 
} 

function IsNumeric(sText) {
   var ValidChars = "0123456789.";
   var IsNumber = true;
   var Char;
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
	if (sText.length < 1) 
		IsNumber = false;
	return IsNumber;
}
