$(function(){

	// Modal boxes - to all links with rel="facebox"
	$('a[rel*=facebox]').facebox()

      // need to kill content b/c sometimes its a video!
   $(document).bind('close.facebox', function(){
      $("#facebox .popup table tbody tr td div.content").empty();
   });

   $("#content-1 form > label").append("<span class='required'>*</span>");

   $("a.json").bind('click', function(){
      $.getJSON( this.href, function(data){
         if( data.redirect_url ){
            window.location = data.redirect_url;
         }
      });
      return false;
   });

   $("form input, form textarea, form select").live('focus', function(){
      $(this).css({"background":"#e5e5e5","color":"#000"});
   });
   $("form input, form textarea, form select").live('blur', function(){
      $(this).css({"background":"#ffffff","color":"#4d4d4d"});
   });

   if( $("form.ajax").length > 0 ){
      $("form.ajax").each( function(){
         thisForm = $(this);
         thisForm.ajaxForm({
            target: thisForm.parent()
         });
      });
   }

   $(document).ajaxComplete(function(){
      $("form.ajax").each( function(){
         thisForm = $(this);
         thisForm.ajaxForm({
            target: thisForm.parent()
         });
      });
   });


   // File upload
   if ($('#fileupload').length) {
      new AjaxUpload('fileupload', {
         action: '/documents/upload',
         autoSubmit: true,
         name: 'data[Document][filename]',
         responseType: 'text/html',
         data:{
            "data[Document][filesize]":"",
            "data[Document][mimetype]":"",
            "data[Document][dir]":""
         },
         onSubmit : function(file , ext) {
            $('#uploadmsg').text('Uploading...');
            this.disable();
         },
         onComplete : function(file, response) {
            $('#uploadmsg').text('');
            //$('.fileupload #uploadmsg').removeClass('loading').text(response);
            this.enable();
            $("#fileupload").after(response);
         }
      });
   }

   // add row functionality for hasMany relationships in forms
   $("a[rel*=cloneForm]").live( 'click', function(){

      // get a template
      template = $(this).siblings(".form:last");
      // clone that sumbitch
      newForm = template.clone();
      // add a remove link, if necessary
      if( newForm.find('a.remove').length == 0 ){
         removeLink = "<a href='#' class='remove' onclick='$(this).parent().remove(); return false;'>Remove</a>";
         newForm.append( removeLink );
      }
      // write to DOM
      $(this).prev().after( newForm, false );

      count = 0;
      // rename all "name" fields in our form clone, by incrementing their counts by 1
      // relies on these form fields being array indexed.  
      $(this).siblings(".form").each( function(){

         $(this).find(':input')
            .not(':button, :submit, :reset').each( function(){
               $(this).attr('name',
                            $(this).attr('name').replace(/\[[0-9]\]/,'['+count+']'));
            });
         $(this).find('label')
            .each( function(){
               $(this).attr('for',
                            $(this).attr('for').replace('0',count));
            });

         count++;

      });

      // reset form field values
      $(':input',newForm)
         .not(':button, :submit, :reset, :hidden, :checkbox')
         .val('')
         .removeAttr('selected');
      $(':checkbox',newForm).removeAttr('checked')

      return false;
   });


});

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

