/*
 * jQuery User Plugin
 * version: 1.00
 * @requires jQuery v1.2.2 or later
 *
 */
$(document).ready(function(){
  $('input').each(function(){
    var input = $(this);
    if (!input.attr('placeholder') || 'placeholder' in document.createElement('input')) {
      return;
    }
    var placeholder = $('<span></span>').text(input.attr('placeholder')).addClass('placeholder').hide();
    
    input.wrap($('<div></div>').addClass('placeholder-wrapper')).after(placeholder); 

    if (input.val() === '') {
      placeholder.show();
    }
    placeholder.click(function(){
      input.focus();
    });
    input.focus(function(){
      placeholder.hide();
    });
    input.blur(function(){
      if (input.val() === '') {
        placeholder.show();
      } else {
        placeholder.hide();
      }
    });
  });

  // compare
  var compare_button = function() {
    ids = $.cookie('compare_ids');
    if (ids && ids != ',') {
      $('#compare_button input[name=ids]').val(ids);
      $('#compare_button').show();
      $('.compare-link').attr('href', '/compare/?ids=' + ids);
    } else {
      $('#compare_button').hide();
      $('.compare-link').attr('href', '/compare/');
    }
  }
  $('#compare_ñ_button form').submit(function(){
    expires = new Date();
    expires.setTime(expires.getTime() + 8640000);

    $.cookie('compare_ids', ',', { 'path': '/', 'expires': expires, 'domain': '.setwatch.ru' });

    return true;
  });
  $('input.compare-checkbox').each(function(){
    var i = $(this);
    var p = i.parent();
    var regex = new RegExp('^compare([0-9]+)$');
    var m = regex.exec(i.attr('id'));
    if (!m) {
      return;
    }
    var id = parseInt(m[1]);
    var ischecked = function() {
      var c = false;
      var l = $.cookie('compare_ids');
      if (l !== null) {
        l = l.split(',');
        for (var j = 0; j < l.length; j++) {
          if (parseInt(l[j]) == id) {
            c = true;
            break;
          }
        }
      }
      return c;
    }
    if (ischecked()) {
      if (i.attr('type') == 'checkbox') {
        i.attr('checked', true);
      } else {
        p.data('checked', true);
        p.removeClass('cyan').addClass('red');
      }
    }

    i.click(function(){
      if (i.attr('type') == 'checkbox') {
        AddToCompare(id, i.attr('checked'));
      } else {
        if (ischecked()) {
          AddToCompare(id, false);
          p.removeClass('red').addClass('cyan');
          p.data('checked', false);
        } else {
          AddToCompare(id, true);
          p.removeClass('cyan').addClass('red');
          p.data('checked', true);
        }
      }
      compare_button();
    });
  });
  $('span.cyan').hover(
    function(){
      if ($(this).data('checked')) return;
      $(this).addClass('red').removeClass('cyan');
    },
    function(){
      if ($(this).data('checked')) return;
      $(this).addClass('cyan').removeClass('red');
    }
  );
  $('span.gray').hover(
    function(){
      if ($(this).data('checked')) return;
      $(this).addClass('red').removeClass('gray');
    },
    function(){
      if ($(this).data('checked')) return;
      $(this).addClass('gray').removeClass('red');
    }
  );

  compare_button();
});
