$(document).ready(function(){
    $("input:radio, input:checkbox").each(function(){
	    if($(this).attr("rootqid") && $(this).attr('checked')) {
	        $('#textBox'+$(this).attr("tid")).removeAttr('disabled');
	    }
    });
});
function submitenter(myfield, e) {
	var keycode;
	if (window.event) {keycode = window.event.keyCode; }
	else if (e)       {keycode = e.which; }
	else              {return true; }
	
	if (keycode == 13)
	   {
	   myfield.form.submit();
	   return false;
	   }
	else {return true;}
}

function menuSlide(id){
		$("dd:not("+id+")").slideUp("slow");
		$(id).slideToggle("slow");
		return false;
}

function deleteObject() {
	$(".delete").click(function(){
		$(this).parents('div:eq(3)').fadeOut();
	});
}

function toggelInputBox(questionId, isRadio, input){
    
    var dis= $('#textBox'+questionId).attr('disabled');
    
    if(isRadio){
        
        $('.textBox'+$(input).attr('rootqid')).attr('disabled','disabled');
		if($(input).attr('checked')) {
			$('#textBox'+questionId).removeAttr('disabled');
		}
		return;
    }
    
    if(dis == true){
        $('#textBox'+questionId).removeAttr('disabled');
    }
    else{
        $('#textBox'+questionId).attr('disabled','disabled');
    }
}

function toggelInputBox2(questionId, isRadio, source){
    
    if(isRadio == true){
        $('.textBox'+$(source).attr('rootqid')).attr('disabled','disabled');
		if($(source).attr('checked')) {
			$('#textBox'+questionId).removeAttr('disabled');
		}
		return;
    }
    
    if($('#textBox'+questionId).attr('disabled')){
        $('#textBox'+questionId).removeAttr('disabled');
    }
    else{
        $('#textBox'+questionId).attr('disabled','disabled');
    }
}

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;
         }
      }
   return IsNumber;
   
}

function checkSingleChoice(elem) {
    
    var elemName  = elem.name;
    
    if(elem.nodeName == 'SELECT') {
		if(elem.value == "") return;
        var selects = elem.form.getElementsByTagName('select');
        var values = new Array();
        
        var theSelect;
        
        for(var i = 0; i < selects.length; i++){
            var iSelect = selects[i];
            if(iSelect.getAttribute('qid') == elem.getAttribute('qid')){                
                if(iSelect.value == elem.value && iSelect.name != elem.name) {
                    theSelect = iSelect;                    
                }    
				//if(iSelect.value != "") 
                    values.push(iSelect.value);                
            } 
        }                 
        
        var theValue;
        for(var i = 0; i < elem.options.length; i++){
            if (elem.options[i].value != "") {
				var sel = true;
				for (var j = 0; j < values.length; j++) {
					if (elem.options[i].value == values[j]) {
						sel = false;
					}
				}
				
				if (sel) {
					theValue = elem.options[i].value;
					break;
				}
			}
        }
        
        if(theSelect){ theSelect.value = theValue; }
                
        
    } else if(elem.nodeName == 'INPUT'){
        
        var inputs = elem.form.getElementsByTagName('input');
        var qid = elem.getAttribute('qid');
        var elemName = elem.name;
        var selects = new Array();
        var selectKeys = new Array();
        var values = new Array();
        
        for(var i = 0; i < inputs.length; i++){
            var iInput = inputs[i];
            var iInputName = iInput.name;
             
            if(iInput.getAttribute('qid') == qid && iInputName != elemName){
                if(!selects[iInputName]){  
                    selects[iInputName] = new Array();
                    selectKeys.push(iInputName);
                }
                selects[iInputName].push(iInput); 
                
                if(iInput.checked) {values.push(iInput.value);}
                
            }
        }
                        
        for(var i = 0; i < selectKeys.length; i++){
            var finished = false;
            var selectArr = selects[selectKeys[i]];
                        
            
            for(var j = 0; j < selectArr.length; j++ ){
                if(selectArr[j].checked && selectArr[j].value == elem.value) {                                                            
                    for(var k = 0; k < selectArr.length; k++){
                        var sel = true;                                                
                        for(var m = 0; m < values.length; m++){
                            if(values[m] == selectArr[k].value){
                                sel = false;
                            }
                        }                                                
                        if(sel) { 
                            selectArr[k].checked = true; 
                            finished = true; 
                            break;
                        }
                    }                                                                                                                                                    
                }
                if(finished) {break;}
            }
            if(finished) {break;}            
        }                                               
    }
}

function checkSingleChoice2(elem) {
    
    var elemName  = elem.getAttribute('name2');
    
    if(elem.nodeName == 'SELECT') {
		if(elem.value == "") return;
		elemName  = elem.name;
        var selects = elem.form.getElementsByTagName('select');
        var values = new Array();
        
        var theSelect;
        var flag = true;
        for(var i = 0; i < selects.length; i++){
            var iSelect = selects[i];
            if(iSelect.getAttribute('qid') == elem.getAttribute('qid') && iSelect.getAttribute('rootid') == elem.getAttribute('rootid')){                
                if(iSelect.value == elem.value && iSelect.name != elem.name) {
                    theSelect = iSelect;                    
                }       
                //if(iSelect.value != "") 
				    values.push(iSelect.value);                
            } 
        }                 
        
        var theValue;
        for (var i = 0; i < elem.options.length; i++) {
			if (elem.options[i].value != "") {
				var sel = true;
				for (var j = 0; j < values.length; j++) {
					if (elem.options[i].value == values[j]) {
						sel = false;
					}
				}
				
				if (sel) {
					theValue = elem.options[i].value;
					break;
				}
			}
        }
        
        if(theSelect){ 
		  theSelect.value = theValue;
		}
        
    } else if(elem.nodeName == 'INPUT'){
        
        var inputs = elem.form.getElementsByTagName('input');
        var qid = elem.getAttribute('qid');
        var elemName = elem.getAttribute('name2');
        var selects = new Array();
        var selectKeys = new Array();
        var values = new Array();
        
        for(var i = 0; i < inputs.length; i++){
            var iInput = inputs[i];
            var iInputName = iInput.getAttribute('name2');
             
            if(iInput.getAttribute('qid') == qid && iInputName != elemName && iInput.getAttribute('rootid') == elem.getAttribute('rootid')){
                if(!selects[iInputName]){  
                    selects[iInputName] = new Array();
                    selectKeys.push(iInputName);
                }
                selects[iInputName].push(iInput); 
                
                if(iInput.checked) {values.push(iInput.getAttribute('value2'));}
                
            }
        }
                        
        for(var i = 0; i < selectKeys.length; i++){
            var finished = false;
            var selectArr = selects[selectKeys[i]];
                        
            
            for(var j = 0; j < selectArr.length; j++ ){
				var tempBool = selectArr[j].checked;
				var temp1 = selectArr[j].getAttribute('value2');
				var temp2 = elem.getAttribute('value2');
                if(selectArr[j].checked && selectArr[j].getAttribute('value2') == elem.getAttribute('value2')) {                                                            
                    for(var k = 0; k < selectArr.length; k++){
                        var sel = true;                                                
                        for(var m = 0; m < values.length; m++){
                            if(values[m] == selectArr[k].getAttribute('value2')){
                                sel = false;
                            }
                        }                                                
                        if(sel) { 
                            selectArr[k].checked = true; 
                            finished = true; 
                            break;
                        }
                    }                                                                                                                                                    
                }
                if(finished) {break;}
            }
            if(finished) {break;}            
        }                                               
    }
}

function checkComposed(input, length){
    
    var content = input.value;
    
    if(length != null){
    
        if(content.length > length){
            input.value = content.substring(0, length);
        }
    }
    return false;
}

function isNumericComposed(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;
         }
      }
   return IsNumber;
   
}

function checkComposedNumeric(input, length){
    
    var content = input.value;
    
    if(!isNumericComposed(content)){
        input.value = content.substring(0, (content.length-1));
    }
    
    if(length != null){
        if(content.length > length){
            //showErrorMsg('#overLength');
            input.value = content.substring(0, length);
        }
    }
    return false;
}