// Miscellaneous core Javascript functions for MDPIXX


function show_comment()
{
	$('.actions li a').removeClass("clicked");
	hide_share();
	hide_report();
	$('#commenteditordiv').toggle('slow');
	$('#actionComment').addClass("clicked");
}



function show_share()
{
	$('.actions li a').removeClass("clicked");
	hide_comment();
	hide_report();
	$('#sharediv').toggle('slow');
	$('#actionShare').addClass("clicked");
}
function show_report()
{
	$('.actions li a').removeClass("clicked");
	hide_comment();
	hide_share();
	$('#reportdiv').toggle('slow');
	$('#actionReport').addClass("clicked");
}
function hide_share(){
	$('#sharediv').hide();
}
function hide_report(){
	$('#reportdiv').hide();
}
function hide_comment(){
	$('#commenteditordiv').hide();
}

function hide_contact(){
	$('#contactdiv').hide();
}

function toogle_contact(){
	$('#contactdiv').toggle('normal');
	$('#cancelcontactdiv').toggle('normal');
	$('#divresultscontact').toggle('normal');
	$('#opencontactdiv').hide();
}

function toogle_off_contact(){
	$('#contactdiv').toggle('normal');
	$('#cancelcontactdiv').hide();
	$('#divresultscontact').toggle('normal');
	$('#opencontactdiv').show();
}

function toogle_needlogin(){
	$('#needlogin').toggle('normal');
}


/**
 * Replace the value of of a text if its equal to param text.
 * Useful for fast clean <input type='text'>
 *
 * @object obj Object to clean value
 * @param text string
 */
function clean_textfield(id, defaultText){
	obj = document.getElementById(id);
	if (obj.value == defaultText) {
		obj.value = '';
	}

function add_select_record(idelement, textelement, idselect){
	var obj =  new objadd(idelement,textelement)
	var select = document.getElementById(idselect);

	var i = 0;
    var insert = true;
	for (i=0; i< select.length;i++){
		if(select.options[i].value == idelement){
        	insert = false;
        	//alert('the same or other similar keyword has been already added' );
        	alert('this keyword is the same than:"' +  select.options[i].text +'", already selected')
        }
    }

	if (insert == true){
	    var opcion = document.createElement("OPTION");
	    opcion.setAttribute("value",obj.cod);
	    if ( (select.length % 2) == 0) {
		    opcion.setAttribute("style", "background-color: #F8F8F8;margin:2px;padding:1px 0pt 1px 5px;");
		} else {
			opcion.setAttribute("style", "background-color: #F0F0F0;margin:2px;padding:1px 0pt 1px 5px;");
		}
	    opcion.innerHTML = obj.tex;
	   	select.appendChild(opcion);
	}
}


}

function show_subspecialties(uri, action, divid){



$.ajax({
		type: "GET",
		url: uri,
		data: action,
		success: function(msg){
		document.getElementById(divid).innerHTML = msg;
		document.getElementById('subspecialty2').value='-1';
		if(msg != ''){
				document.getElementById('label_subsp_id').style.display='';
				}else{
				document.getElementById('label_subsp_id').style.display='none';
						}

		},
		error: function(xho){
			document.getElementById(divid).innerHTML = "Error:"+xho.responseText;
					}
	});

}

//call_ajax
//
//Makes a call ajax and after that return to the desired URL.
function call_ajax(uri, action, divid, str){
	if (confirm(str)){
		$.ajax({
				type: "GET",
				url: uri,
				data: action,
				success: function(msg){
					document.getElementById(divid).style.display='none';
				},
				error: function(xho){
					alert('The element canīt be removed.');
				}
			});
	}
	history.back();

}

function delete_case(uri, action, divid, str){
	if (confirm(str)){

		$.ajax({
				type: "GET",
				url: uri,
				data: action,
				success: function(msg){
					//document.getElementById(divid).style.display='none';
					var valuediv = parseInt(divid,10) + 1;
					document.getElementById(divid).style.display='none';
					while(element=document.getElementById(valuediv)){
						if(element.className == 'casetablerow odd'){
							element.className ='casetablerow even';
						}else{
							element.className = 'casetablerow odd';
						}

						valuediv++;

						}

				},
				error: function(xho){
					alert('The element canīt be removed.');
				}
			});
	}
}

function delete_telemed(uri, action, divid, str){
	if (confirm(str)){

		$.ajax({
				type: "GET",
				url: uri,
				data: action,
				success: function(msg){
					//document.getElementById(divid).style.display='none';
					var valuediv = parseInt(divid,10) + 1;
					document.getElementById(divid).style.display='none';
					while(element=document.getElementById(valuediv)){
						if(element.className == 'casetablerow odd'){
							element.className ='casetablerow even';
						}else{
							element.className = 'casetablerow odd';
						}

						valuediv++;

						}

				},
				error: function(xho){
					alert('The element canīt be removed.');
				}
			});
	}
}

function unlink_telemedcase(uri, action, divid, str){
	if (confirm(str)){

		$.ajax({
				type: "GET",
				url: uri,
				data: action,
				success: function(msg){

					$('#'+divid).html('OK');

				},
				error: function(xho){
					alert('The element canīt be removed.');
				}
			});
	}

}

function link_telemedcase(uri, action, divid, str){

	$.ajax({
			type: "GET",
			url: uri,
			data: action,
			success: function(msg){
				$('#'+divid).html('OK');
			},
			error: function(xho){
				alert('The element canīt be removed.');
			}
		});
}

function delete_myatlas_resource(uri, action, divid, str){
	if (confirm(str)){
		$.ajax({
				type: "GET",
				url: uri,
				data: action,
				success: function(msg){
					var valuediv = parseInt(divid,10) + 1;
					document.getElementById(divid).style.display='none';
					while(element=document.getElementById(valuediv)){
						if(element.className == 'resourcetablerow odd_atlas'){
							element.className ='resourcetablerow even_atlas';
						}else{
							element.className = 'resourcetablerow odd_atlas';
						}
						valuediv++;
						}
				},
				error: function(xho){
					alert('The element canīt be removed.');
				}
			});
	}

}

function set_private_resources(uri, id, type, str){

var ast;
if (confirm(str)){

	$.ajax({
			type: "POST",
			url: uri,
			data: 'type=' + type +'&id=' + id,
			success: function(msg){
				if(msg=='no'){
					alert('Error.');
				}
			}
		});

		}

}




function set_session_property_upload(uri, value){

	$.ajax({
			type: "POST",
			url: uri,
			data: 'value=' + value,
			success: function(msg){
				if(msg=='no'){
					alert('Error.');
				}
			}
		});

}

function delete_resource_ajax(uri, action, divid, str){
	call_ajax(uri, action, divid, str);
}


function onlynumbers(e)
   {
   if (e.which)
      {
      if(e.which!=46 && e.which!=8 && e.wich!=9 && (e.which<48 || e.which>57))
      return false;
      }
   else if(e.keyCode)
      {
      if(e.keyCode!=46 && e.keyCode!=8 && e.keyCode!=9 && (e.keyCode<48 || e.keyCode>57))
      return false;
      }
   return true;
   }

function add_snomed_taglist(caseid){
var formu = document.getElementById('related_cases');
var elementos =formu.elements.length;
for(i=0;i<elementos;i++){
	if(formu.elements[i].id.indexOf(caseid + '_')==0){
		//alert(formu.elements[i].value);
		add_select(formu.elements[i].id.substring(caseid.length+1, formu.elements[i].id.length), formu.elements[i].value, 'id_tagslistid', 'id_tagslistid2')
	}
}

}


function iscorrectemail(element, str)
{
var myValidator=null;
//function checkEmail(inputvalue){
    var pattern=/^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;
    if(!pattern.test(element) && document.getElementById('id_email').value!=''){
		flag_mail('id_email',str);
		//myValidator=false;
    }else{
    	document.getElementById('mform1').submit();
    }
//}

}


function flag_mail(elementid, message) {
  var element =document.getElementById(elementid);
  var value = '';
  var errFlag = new Array();
  var _qfGroups = {};
  var _qfMsg = '';
  var frm = element.parentNode;
  /*while (frm && frm.nodeName != "FORM") {
    frm = frm.parentNode;
  }*/
  //value = frm.elements[element.value].value;
  //if (value == '' && !errFlag['firstname']) {
     errFlag[element.name] = true;
    _qfMsg = _qfMsg + '\n -' + message;
  //}

  return qf_errorHandler(element, _qfMsg);
}





