title: How to hide email in this jquery form and send blind or carbon copy to another owner?
body: <p>I use this jQuery form but I'm absolutely a newbe in JavaScript.</p>
  
  <p>The script :</p>
  
  <pre><code>(function($){
  $.fn.extend({
      forms:function(opt){
          if(opt===undefined)
              opt={}
          this.each(function(){
              var th=$(this),
                  data=th.data('forms'),
                  _={
                      errorCl:'error',
                      emptyCl:'empty',
                      invalidCl:'invalid',
                      successCl:'success',
                      successShow:'4000',
                      mailHandlerURL:'bin/MailHandler.php',
                      ownerEmail:'myemail@mysite.com',
                      stripHTML:true,
                      smtpMailServer:'localhost',
                      targets:'input,textarea',
                      controls:'a[data-type=reset],a[data-type=submit]',
                      validate:true,
                      rx:{
                          ".name":{rx:/^[a-zA-Z'][a-zA-Z-' ]+[a-zA-Z']?$/,target:'input'},
                          ".state":{rx:/^[a-zA-Z'][a-zA-Z-' ]+[a-zA-Z']?$/,target:'input'},
                          ".email":{rx:/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i,target:'input'},
                          ".phone":{rx:/^\+?(\d[\d\-\+\(\) ]{5,}\d$)/,target:'input'},
                          ".fax":{rx:/^\+?(\d[\d\-\+\(\) ]{5,}\d$)/,target:'input'},
                          ".message":{rx:/.{20}/,target:'textarea'}
                      },
                      preFu:function(){
                          _.labels.each(function(){
                              var label=$(this),
                                  inp=$(_.targets,this),
                                  defVal=inp.val(),
                                  trueVal=(function(){
                                              var tmp=inp.is('input')?(tmp=label.html().match(/value=['"](.+?)['"].+/),!!tmp&amp;&amp;!!tmp[1]&amp;&amp;tmp[1]):inp.html()
                                              return defVal==''?defVal:tmp
                                          })()
                              trueVal!=defVal
                                  &amp;&amp;inp.val(defVal=trueVal||defVal)
                              label.data({defVal:defVal})                             
                              inp
                                  .bind('focus',function(){
                                      inp.val()==defVal
                                          &amp;&amp;(inp.val(''),_.hideEmptyFu(label),label.removeClass(_.invalidCl))
                                  })
                                  .bind('blur',function(){
                                      !inp.val()
                                          ?inp.val(defVal)                                        
                                          :(_.isValid(label)
                                              ?_.showErrorFu(label)
                                              :_.hideErrorFu(label)),
                                          (_.isEmpty(label)
                                              ?_.showEmptyFu(label)
                                              :_.hideEmptyFu(label))
                                  })
                                  .bind('keyup',function(){
                                      label.hasClass(_.invalidCl)
                                          &amp;&amp;_.isValid(label)
                                              ?_.showErrorFu(label)
                                              :_.hideErrorFu(label)
                                  })
                              label.find('.'+_.errorCl+',.'+_.emptyCl).css({display:'block'}).hide()
                          })
                          _.success=$('.'+_.successCl,_.form).hide()
                      },
                      isValid:function(el){
                          var ret=true,
                              empt=_.isEmpty(el)
                          if(empt)
                              ret=false,
                              el.addClass(_.invalidCl)
                          else
                              $.each(_.rx,function(k,d){
                                  if(el.is(k))
                                      d.rx.test(el.find(d.target).val())
                                          ?(el.removeClass(_.invalidCl),ret=false)
                                          :el.addClass(_.invalidCl)
                              })
                          return ret
                      },
                      isEmpty:function(el){
                          var tmp
                          return (tmp=el.find(_.targets).val())==''||tmp==el.data('defVal')
                      },
                      validateFu:function(){                          
                          _.labels.each(function(){
                              var th=$(this)                              
                              _.isEmpty(th)
                                  ?_.showEmptyFu(th)
                                  :_.hideEmptyFu(th)
                              _.isValid(th)
                                  ?_.showErrorFu(th)
                                  :_.hideErrorFu(th)
                          })
                      },
                      submitFu:function(){
                          _.validateFu()
                          if(!_.form.has('.'+_.invalidCl).length)
                              $.ajax({
                                  type: "POST",
                                  url:_.mailHandlerURL,
                                  data:{
                                      name:$('.name input',_.form).val()||'nope',
                                      email:$('.email input',_.form).val()||'nope',
                                      phone:$('.phone input',_.form).val()||'nope',
                                      fax:$('.fax input',_.form).val()||'nope',
                                      state:$('.state input',_.form).val()||'nope',
                                      message:$('.message textarea',_.form).val()||'nope',
                                      owner_email:_.ownerEmail,
                                      stripHTML:_.stripHTML
                                  },
                                  success: function(){
                                      _.showFu()
                                  }
                              })          
                      },
                      showFu:function(){
                          _.success.slideDown(function(){
                              setTimeout(function(){
                                  _.success.slideUp()
                                  _.form.trigger('reset')
                              },_.successShow)
                          })
                      },
                      controlsFu:function(){
                          $(_.controls,_.form).each(function(){
                              var th=$(this)
                              th
                                  .bind('click',function(){
                                      _.form.trigger(th.data('type'))
                                      return false
                                  })
                          })
                      },
                      showErrorFu:function(label){
                          label.find('.'+_.errorCl).slideDown()
                      },
                      hideErrorFu:function(label){
                          label.find('.'+_.errorCl).slideUp()
                      },
                      showEmptyFu:function(label){
                          label.find('.'+_.emptyCl).slideDown()
                          _.hideErrorFu(label)
                      },
                      hideEmptyFu:function(label){
                          label.find('.'+_.emptyCl).slideUp()
                      },
                      init:function(){
                          _.form=this
                          _.labels=$('label',_.form)
  
                          _.preFu()
  
                          _.controlsFu()
  
                          _.form
                              .bind('submit',function(){
                                  if(_.validate)
                                      _.submitFu()
                                  else
                                      _.form[0].submit()
                                  return false
                              })
                              .bind('reset',function(){
                                  _.labels.removeClass(_.invalidCl)                                   
                                  _.labels.each(function(){
                                      var th=$(this)
                                      _.hideErrorFu(th)
                                      _.hideEmptyFu(th)
                                  })
                              })
                          _.form.trigger('reset')
                      }
                  }
              if(!data)
                  (typeof opt=='object'?$.extend(_,opt):_).init.call(th),
                  th.data({cScroll:_}),
                  data=_
              else
                  _=typeof opt=='object'?$.extend(data,opt):data
          })
          return this
      }
  })
  </code></pre>
  
  <p>To send a form to a specific owner, i used this script :</p>
  
  <pre><code>$(function(){
      $('#contact-form').forms({
          ownerEmail:'myemail@mysite.com'
      })
  })
  </code></pre>
  
  <p>But I have two questions :</p>
  
  <ol>
  <li>How to send a form to an other owner in blind or carbon copy?</li>
  <li>How to hide the different owner emails in this jQuery form?
  It seems very easy to show the emailOwner (and so spam his adress
  !).</li>
  </ol>
  
  <p>Thanks for your help.</p>