//ÇALIŞMASI İÇİN  DOSYALARI GEREKLİ
//<script language="JavaScript" src="http://www.gunesdogdulocal.com/js/jquery-1.3.1.min.js" type="text/javascript"></script>
//<script language="JavaScript" src="http://www.gunesdogdulocal.com/js/jquery.validate.pack.js" type="text/javascript"></script>
//<script language="JavaScript" src="http://www.gunesdogdulocal.com/js/jquery.metadata.js" type="text/javascript"></script>
//<script language="JavaScript" src="http://www.gunesdogdulocal.com/js/jquery.form.js" type="text/javascript"></script>
//<script language="JavaScript" src="http://www.gunesdogdulocal.com/js/jqueryBlockUImin.js" type="text/javascript"></script>


//SENDING PARAM OBJECT



/*  var options = {   loaderimg :'', //Ajax loading imaj
                      loaderimg_width:'', //Ajax loading imaj width
                      loaderimg_height:'', //Ajax loading imaj height
                      msgbox_width:'', //Mesajbox width
                      msgbox_pos:'' //Mesajbox position top-right,top-left, top-center
                      msg_ok_img:'' //Mesajbox ok img url
                      msg_error_img:'' //Mesajbox eror img url
                      msg_error:'',     //Mesajbox error mesajı
                      msg_ajaxtimeout:'',  //Ajax Timeout mesaj
                      msg_timeout:2000, //Mesajbox gösterim süresi
                      msg_top:'10px',  //Mesajbox position top
                      msg_left:'',     //Mesajbox position left
                      form_id:''      //Validate and ajax_submit form #id
                      block_id:'' // Doluysa o element bloklanır
                      ajax:''
  }

 */

//GLOBAL OPTIONS
  var glb_options = { msg_ok_img:'',
                      msg_error_img:'',
                      msg_error:'',
                      msg_ajaxtimeout:'',
                      block_id:'',
                      block_background:'',
                      form_id:''
  };

//MESSAGE OPTIONS

  var msg_options={
            message:'',
            fadeIn: 700,
            fadeOut: 700,
            timeout: 2000,
            showOverlay: false,
            centerY: false,
            css: {
                width: '350px',
                top: '10px',
                left: '',
                right: '10px',
                border: 'none',
                padding: '3px',
                backgroundColor: '#000',
                opacity: .7,
                color: '#fff'
              }
        };


//PAGE BLOCK OPTIONS

  var block_options = { message:'',
                        css: {
                              top:'',
                              left: '',
                              width:'',
                              border: 'none',
                              padding: '15px',
                              backgroundColor: '#000',
                              opacity: .6
                              }

                        };
//AJAX SUBMIT OPTIONS
  var ajax_options = {
        beforeSubmit:  blockPage,  // pre-submit callback
        success:       showResponse,  // post-submit callback
        error : showError,
        timeout : 10000, //ajax timeout
        resetForm: true        // reset the form after successful submit
    };


  //SET GLOBAL OPTIONS
  function set_globals(opt){
     //page block options
      block_options.message = '<img src="' +  opt.loaderimg + '"/>';

      block_options.css.top = ($(window).height() - opt.loaderimg_height) /2 + 'px',
      block_options.css.left = ($(window).width() - opt.loaderimg_width) /2 + 'px',
      block_options.css.width = opt.loaderimg_width + 'px';
      block_options.backgroundColor = opt.block_background;
     //message option
     msg_options.timeout = opt.msg_timeout;
     msg_options.top = opt.msg_top +'px';
     msg_options.left = opt.msg_left +'px';
     msg_options.css.width = opt.msgbox_width + 'px';

    switch (opt.msgbox_pos)
    {
    case "top-right":
         msg_options.css.top = '10px';
         msg_options.css.left = '';
         break
    case "top-left":
         msg_options.css.top = '10px';
         msg_options.css.left = '10px';
         break
    case "top-center":
         msg_options.css.top = '10px';
         msg_options.css.left = ($(window).width() - opt.msgbox_width) /2 + 'px';
         break
    default:
         msg_options.css.top = '10px';
         msg_options.css.left = '';

    }




    //global options new set
     glb_options.msg_ok_img = opt.msg_ok_img;
     glb_options.msg_error_img = opt.msg_error_img;
     glb_options.msg_ajaxtimeout = opt.msg_ajaxtimeout;
     glb_options.msg_error = opt.msg_error;
     glb_options.form_id = '#' + opt.form_id;     //# eklenmezse çalışmıyor
     glb_options.block_id = '#' + opt.block_id;     //# eklenmezse çalışmıyor

//MESSAGE DIV INSERT
  var msgdiv ='<div id="growlUI" style="display: none;"><h2 id="rsmsg" style="color:white;padding:2px 5px 2px 65px;text-align:left;font-size:1.1em">test</h2></div> ';
  $("body").append(msgdiv);
  var ajximgdiv ='<div style="display:none"><img src="' +  opt.loaderimg + '"/></div>'; //ajax loadingimg preload
  $("body").append(ajximgdiv);
  var msgokimgdiv ='<div style="display:none"><img src="' +  glb_options.msg_ok_img + '"/></div>'; //mesajbox ok img preload
  $("body").append(msgokimgdiv);

  var msgerrorimgdiv ='<div style="display:none"><img src="' +  glb_options.msg_error_img + '"/></div>'; //mesajbox error img preload
  $("body").append(msgerrorimgdiv);

//VALIDATION ERROR LABEL STYLE INSERT
 var validerrstl ='<style>label.error { float: none; color: red; padding-left: .5em; vertical-align: top;font-size:0.8em } </style>';

 $("head").append(validerrstl);

//FORM VALIDATING SETUP
if ( opt.ajax == 'E'){ //POST AJAX
 $(glb_options.form_id).validate({meta: "validate",submitHandler:function(form){$(form).ajaxSubmit(ajax_options)}});
}else{

 $(glb_options.form_id).validate({meta: "validate"});

}
//MESAJ OPTIONLARINDA MESAJ ELEMENTİNİ YUKARIDA EKLEDİK BURADA TANIMLIYORUZ
 msg_options.message= $('#growlUI');
}

 //AJAX ERROR
function showError(a,b,c){

  if (glb_options.block_id != ''){
     $(glb_options.block_id).unblock();
  }else{
   $.unblockUI;
  }
  if ( b == 'timeout'){
    var errmsg = glb_options.msg_ajaxtimeout;

  }else{

   var errmsg = glb_options.msg_error;

  }
   var errorimg = "url(" + glb_options.msg_error_img + ")";
   var errorcss = {'background-image':errorimg,
                   'background-repeat' : 'no-repeat',
                   'background-position' :'10px 10px'
                  };
   $('#growlUI').css(errorcss);

   $('#rsmsg').html(errmsg);
   $.blockUI(msg_options);

    return true;


}

//AJAX BEFORE SUBMIT
function blockPage(formData, jqForm, options) {
 if (glb_options.block_id != ''){
  $(glb_options.block_id).block(block_options);
 }else{
 $.blockUI(block_options);
 }
  return true;
}

//AJAX RESPONSE

function showResponse(responseText, statusText)  {
  if (glb_options.block_id != ''){
     $(glb_options.block_id).unblock();
  }else{
   $.unblockUI;
   }

   var res = responseText.split("-");

   if (res[0] == '0'){

   var mesajokimg = "url(" + glb_options.msg_ok_img + ")";

   }else{

    var mesajokimg = "url(" + glb_options.msg_error_img + ")";

   }

   var mesajcss = {'background-image':mesajokimg,
                   'background-repeat' : 'no-repeat',
                   'background-position' :'10px 10px'
                  };
   $('#growlUI').css(mesajcss);
   $('#rsmsg').html(res[1]);

   $.blockUI(msg_options);

    return true;
}
