function emptyMinicart() {
  var nr_items = $j("#minicart_box .minicart_item").length;
  if (nr_items == 0) {
    $j("#minicart_empty").slideToggle("fast");
    $j("#minicart_actions").slideToggle("fast");
  }
}

function addAccountProduct(fileName) {
  $j.ajax({
    type: "POST",
    url: '/account/addProduct',
    data: "filename="+fileName,
    success: function(output){
      $j("#products_container").append(output);
      $j("#products_container .acc_product_cont:last-child").slideDown(200);

      $j("#upload_progress_0").hide(0);
      $j("#SWFUpload_0").height(53);

      if ($j(".acc_product_cont").size() >= user_ul) {
        $j("#upload_limit").show(0);
        $j("#upload_button_div_0").hide(0);
      } else {
        $j("#upload_limit").hide(0);
        $j("#upload_button_div_0").show(0);
      }

    }
  });
}

$j(document).ready(function() {

  // Completam formularul de google search la click pe un link cu clasa author_search
  $j(".author_search").click(function(elem) {
    
    var search_text = $j(this).html();
	
	// initial era asa:
    //$j("#cse-search-box #q").focus().val(search_text);
    //$j("#cse-search-box").submit();
    
	$j(".gsc-search-box .gsc-input").focus().val(search_text);
    //$j(".gsc-search-box").submit();
	
	elem.preventDefault();
	
	return false;
	
    
  });

  // Aratam linkul de stergere al produselor din minicart la mouseover
  $j(".minicart_item").live("mouseenter", function() {
    $j(".minicart_item_remove", this).fadeIn(150);
  }).live("mouseleave", function() {
    $j(".minicart_item_remove", this).fadeOut(150);
  });

  // Efectuam un request ajax de stergere pentru un produs din minicart
  $j(".minicart_item_remove_link").live('click', function() {
    var conf = confirm("Confirmati stergea acestui produs?\n\nApasati   [    OK    ]   pentru stergere\n     sau   [ Cancel ]   pentru pastrare.");
    if (!conf) return false;

    var parent_div = $j(this).parents(":eq(1)");
    var removeKey = parent_div.attr("id").split("-");

    $j.ajax({
      type: "POST",
      url: $j(this).attr("rel"),
      data: "remove_key="+removeKey[removeKey.length-1],
      success: function(msg){
        parent_div.fadeOut("normal", function() {
          $(this).remove();

          // daca minicartul se goleste, ascundem actiunile minicartului si afisam div-ul minicart_empty
          emptyMinicart();
        });
      }
    });

    return false;
  });

  // Efectuam un request ajax de golire a cosului de cumparaturi
  $j(".minicart_empty_link").live('click', function() {
    var conf = confirm("Confirmati stergea tuturor produselor din cos?\n\nApasati   [    OK    ]   pentru stergere\n     sau   [ Cancel ]   pentru pastrare.");
    if (!conf) return false;

    $j.ajax({
      type: "POST",
      url: $j(this).attr("rel"),
      success: function(msg){
        $j("#minicart_box").empty();
        // daca minicartul se goleste, ascundem actiunile minicartului si afisam div-ul minicart_empty
        emptyMinicart();
      }
    });

    return false;
  });

  // Adaugam un produs in cos si il afisam in minicart
  $j(".shop_add_item").click(function(elem) {

    var parent_div = $j(this).parents(".prod_cont");

    var redirect_to = $j(this).attr("rel");
    
    // Id-ul produsului pe care il adaugam in cos
    var product_id = parent_div.find(".shop_add_item_id").val();
    // Cantitatea adaugata
    var product_qty = parent_div.find(".shop_add_item_qty").val();
    // Numarul de ordine in div-ul minicart
    var minicart_key = $j("#minicart_box .minicart_item").size();

    $j.ajax({
      type: "POST",
      url: $j(this).attr("href"),
      dataType: "json",
      cache: false,
      data: "productId="+product_id+"&qty="+product_qty+"&minicartKey="+minicart_key,
      success: function(output) {

        // daca minicartul este gol, ascundem div-ul minicart_empty si afisam actiunile minicartului
        emptyMinicart();

        if (output.key >= 0) {
          // daca produsul este deja in cos, efectuam efectul de "transfer" catre elementul existent
          parent_div.effect("transfer", {
            to: $j("#minicart-item-"+output.key)
          }, 400);

          // modificam numarul de ordine al elementului din minicart
          // pentru a-l putea pozitiona in cazul unei redirectionari catre shopcart (inramati-l acum)
          minicart_key = output.key;

        } else {
          // daca produsul nu este in cart, il adaugam si apoi efectuam efectul de "transfer"
          $j("#minicart_box").append(output.html);

          $j("#minicart_box .minicart_item:last-child").fadeIn(200, function() {
            var this_div = $(this);
            $j("#minicart_box").scrollTo('max', {
              duration: 500,
              onAfter: function(){
                parent_div.effect("transfer", {
                  to: this_div
                }, 400);

              }
            });
          });

        }

        if (redirect_to == "shopcart") {
          var redirect_url = '/shopCart/show?added='+minicart_key
          document.location = redirect_url;
        }
      }
    });

    elem.preventDefault();
  });


  // User Account

  // Schimba statusul unui produs
  $j(".acc_change_status").live("click", function() {
    var answer = confirm("Sunteti sigur ca doriti aceasta modificare ?");
    if (answer) {
      var self = $j(this);
      $j.ajax({
        type: "POST",
        url: $j(this).attr("rel"),
        success: function(output){
          if (output != 'Error') {
            self.parents(".acc_product_actions").find(".product_status").html(output.status);
            self.val(output.button);
          }
        }
      });
    }

    return false;
  });

  // Sterge un produs
  $j(".acc_delete_product").live("click", function() {
    var conf = confirm("Confirmati stergea acestei imagini?\n\nApasati   [    OK    ]   pentru stergere\n     sau   [ Cancel ]   pentru pastrare.");
    if (!conf) return false;

    var self = $j(this);
    $j.ajax({
      type: "POST",
      url: $j(this).attr("rel"),
      success: function(output){
        if (output != 'Error') {
          self.parents(".acc_product_cont").slideUp("fast", function () {
            $j(this).remove();
            
            if ($j(".acc_product_cont").size() < user_ul) {
              $j("#upload_limit").hide(0);
              $j("#upload_button_div_0").show(0);
            }
            
          });
        }
      }
    });

    return false;
  });

  // Schimba titlul unui produs.
  $j(".inplaceeditor-form .editor_ok_button").live("click", function() {
    var answer = confirm("Sunteti sigur ca doriti aceasta modificare ?");
    if (!answer) {
      return false;
    }
  });

  // Click pe poza unui produs.
  $j(".catalog_product_link").live("click", function() {
    var product_status = $j(".product_status", $j(this).parent().parent()).html();
    if (product_status != 'In vanzare') {
      alert("Imaginea nu este in vanzare si nu apare in catalogul de postere.");
      return false;
    }
  });

  // Bara news alert.
  $j('#news_alert').meerkat({
    background: 'none',
    height: '60px',
    width: '100%',
    position: 'bottom',
    dontShowAgain: '.close_news_alert',
    cookieExpires: 0,
    animationIn: 'slide',
    animationSpeed: 300
  });

});
