/*
 * © 2010 ROBO Design
 * http://www.robodesign.ro
 */

// show some luv to IE
function myAddEvent (elem, ev, func, cap) {
  if (!elem || !ev || !func) {
    return false;
  }

  if (!cap) {
    cap = false;
  }

  if (typeof (elem) == 'string') {
    elem = document.getElementById(elem);
  }

  if (!elem) {
    return false;
  }

  if (elem.addEventListener) {
    elem.addEventListener(ev, func, cap);

  } else if (elem.attachEvent) {
    // yes i know about memleaks in msie, but this is not a complex
    // web app and events are not dettached.
    elem.attachEvent('on' + ev, function () {
      var evo = window.event;
      if (!evo.preventDefault) {
        evo.preventDefault = function () {
          evo.returnValue = false;
        };
      }

      if (!evo.target && evo.srcElement) {
        evo.target = evo.srcElement;
      }

      return func.call(elem, evo);
    });

  } else {
    return false;
  }

  return true;
}

(function () {
  var search_field = document.getElementById('search-field');

  if (!search_field) {
    return;
  }

  myAddEvent(search_field, "focus", function(ev) {
    if (this.value == this.getAttribute("placeholder")) {
      this.value = "";
    }
  }, false);

  myAddEvent(search_field, "blur", function(ev) {
    if (!this.value || !this.value.replace(/^\s+/, '').replace(/\s+$/, '')) {
      this.value = this.getAttribute("placeholder");
    }
  }, false);

  search_field.value = search_field.getAttribute("placeholder");
})();

