function myform_submit(obj)
{
 var form=$(obj).closest('form');
 if(!form) return false;
 $(form).val(true);
 form.submit();
}
function myform_setinputname(obj,name,val)
{
 var form=$(obj).closest('form');
 if(!form) return false;
 $('input[name="'+name+'"]',form).val(val);
}



function serarray2obj(arr) 
{
 if(!arr) return false;
 obj={};
 for (var i=0;i<arr.length;i++)
 {
   var key=arr[i].name;
   obj[key]=arr[i].value;
 }
 return obj;
}

function form_unmarkall(elements)
{
 $(elements).attr('checked',false);
}
function form_markall(elements)
{
 $(elements).attr('checked',true);
}


function form_check_obj(obj,val,params)
{
 if(typeof params=='undefined') params={};
 if(!$(obj).attr('name')) return true;
 if($(obj).attr('type')=='hidden') return true;
 var controlobj=$(obj).attr('controlobj');
 if(controlobj) controlobj=$('#'+controlobj); else controlobj=obj;

 $(controlobj).removeClass('def_input_error');
 var check=$(obj).attr('check');
 if(!check) return true;
 var checks=check.split(',');
 for (var i=0;i<checks.length;i++)
 {
  check=checks[i];
  switch(check)
  {
   case 'notnull': 
                if(str2num(val)!=0) continue;
                $(controlobj).addClass('def_input_error'); 
	  		    return false; 
			    break;
   case 'req' : if(val) continue;
                $(controlobj).addClass('def_input_error'); 
	  		    return false; 
			    break;
  }
 }
 return true;
};


function form_check(form,params)
{
 if(typeof params=='undefined') params={};
 var result=true;
 $('input',form).each(function() {
  switch($(this).attr('type'))
  {
   case 'checkbox' : var val=($(this).attr('checked')==true);  break;
   default         : var val=$(this).val(); break;
  }
  result =result & form_check_obj(this,val,params);
 });
 $('textarea',form).each(function() {
  result =result & form_check_obj(this,$(this).val(),params);
 });
 $('select',form).each(function() {
  result =result & form_check_obj(this,$(this).val(),params);
 });
 return result;
}

function form_data(form,selector)
{
 if(typeof selector=='undefined') selector=false;
 ///if (!$().dba_form.onsubmit(form)) return false;
 if(selector) form=$(selector,form);
 $('input[input="checklist"]',form).each(function (i) {
  var container=$(this).attr('container');
  if(!container) return;
  var name=$(this).attr('name');
  if(!name) return;
  var sep=$(this).attr('seperator');
  if(!sep) sep=data_seperator;
  var vals=[];
  var cont=$('#'+container,form);
  $('input[type="checkbox"]',cont).each(function (i) {
   if($(this).attr('checked')) vals.push($(this).val()); 
  });
  $(this).val(vals.join(sep));
 });
 var data=$(form).serializeArray();
 return data;
}


function setarrayformval(inp,checker)
{
 var vals=str2array($(inp).val(),data_seperator);
 if($(checker).attr('checked')) 
  array_addnew(vals,$(checker).val());  
 else
  array_kill(vals,$(checker).val());  
 $(inp).val(array2str(vals,data_seperator));
}

