/* INTERFACCIA JS PER GESTIRE LA REGISTRAZIONE DEL CLIENTE */

// Variabili Globali
var url_xml_rpc;
var form_obj;
var div_form;
var div_loading;
var div_form_close;
var struct_param = new Array();
var iso_encoding;


// Inizializzazione delle variabili globali
function init()	{
	url_xml_rpc = js_global_root_url+'xml_rpc/call.php';
	form_obj = document.getElementById('mainform');
	div_form = document.getElementById('data_form');
	div_loading = document.getElementById('loading');
	div_form_close = document.getElementById('form_client_close');
	struct_param['header'] = new Array();
	struct_param['query'] = new Array();
	struct_param['header']['version'] = '1.0.0';
	struct_param['header']['product'] = 'customers';
	struct_param['header']['sessid'] = sessid;
	iso_encoding = 'utf-8';
}

// Check del form di richiesta registrazione
function client_control(callback)
{	reset_asterisk();
	var test;
	var pwd1;
	var pwd2;
	var arraycampi=form_obj.getElementsByTagName('input');
	var elem_name;
	var elem_value;
	var elem_type;
	var elem_id;
	div_form.style.display = 'none';
	div_loading.style.display = 'block';
	for (i = 0; i < arraycampi.length; i++) {
		elem_type=arraycampi[i].getAttribute('type');
		if((elem_type!="button")&&(elem_type!="hidden")&&(elem_type!="reset"))
		{
			elem_id=arraycampi[i].getAttribute('id');
			elem_name=arraycampi[i].getAttribute('name');
			elem_value=arraycampi[i].value;
			if(elem_id=='u_password')
			{
				pwd1=elem_value;
			}
			if(elem_id=='c_mailstaff' || elem_id=='u_email')
			{if (elem_value.indexOf('@',0) == -1) {
			  div_loading.style.display = 'none';
			  document.getElementById('ast_'+elem_name).innerHTML = '*';
			  div_form.style.display = 'block';
			  print_error(js_dic_NOEMAIL);
		          return false;
		         }
		         var _ok = false;
		         for (var o = 0; o < js_global_email_ext.length; o++)
			         {
			          var ap = elem_value.split('.');
			          var domain = ap[ap.length - 1];
			          if (domain == js_global_email_ext[o])
				  _ok = true;
				 }
			 if (!_ok)
				  {
				   div_loading.style.display = 'none';
				   div_form.style.display = 'block';
				   document.getElementById('ast_'+elem_name).innerHTML = '*';
				   print_error(js_dic_NOEMAIL);
			           return false;}
			}
			else
			{
				if(elem_value==''){
					div_loading.style.display = 'none';
					div_form.style.display = 'block';
					document.getElementById('ast_'+elem_name).innerHTML = '*';
					print_error(js_dic_NOALLFIELDS);
					return false;
					}
			}
		}
	}
	pwd2=document.getElementById('u_repwd').value
	// Controllo sulle password
	if(pwd1!=pwd2)
		{	div_loading.style.display = 'none';
			div_form.style.display = 'block';
			document.getElementById('ast_u_repwd').innerHTML = '*';
			document.getElementById('ast_u_password').innerHTML = '*';
			print_error(js_dic_PWDNOMATCH);
			return false;
		}
	else if(pwd1.length<5 || pwd2.length<5 || pwd1.length>12 || pwd2.length>12 || document.getElementById('u_login').value.length<5 || document.getElementById('u_login').value.length>12)
		{
			div_loading.style.display = 'none';
			div_form.style.display = 'block';
			document.getElementById('ast_u_password').innerHTML = '*';
			document.getElementById('ast_u_repwd').innerHTML = '*';
			document.getElementById('ast_u_login').innerHTML = '*';
			print_error(js_dic_PWDUSERWRONG);
			return false;
		}
	else
	{
	 callback();
	}
	
}

// Inserimento di un cliente
function client_insert() {
	var arraycampi=form_obj.getElementsByTagName('input');
	var elem_name;
	var elem_value;
	var elem_type;
	var elem_id;


	struct_param['header']['type'] = 'client_insert';
	
	
	for (i = 0; i < arraycampi.length; i++) {
		elem_type=arraycampi[i].getAttribute('type');
		if((elem_type!="reset")&&(elem_type!="button")&&(elem_type!="hidden"))
		{
			elem_id=arraycampi[i].getAttribute('id');
			elem_name=arraycampi[i].getAttribute('name');
			elem_value=arraycampi[i].value;
			struct_param['query'][elem_name] = elem_value;
		}
	}
	xml_request(struct_param,url_xml_rpc,iso_encoding,callbacks_xml_request);
}


function callbacks_xml_request(response,type)	{
			          switch(type)
 					{
  						case 'client_insert' :
						    	if(response == 'ok')
						         {
							  div_loading.style.display = 'none';
							  div_form.style.display = 'none';
							  div_form_close.style.display = 'block';
				                          document.getElementById('client_name').innerHTML = js_dic_DEAR+' '+document.getElementById('u_name').value+', '+js_dic_THANKCHOSE+' '+sitename+'.';
						         }
						         else
						         {
						          div_loading.style.display = 'none';
							  div_form.style.display = 'block';
							  print_error(js_dic_ERRORTECHNICAL);
							 }
  						break;
 					}
		
}


