var CAI = {
  imageBrowser: function(url){
    window.open(url, "_blank", "height=410,width=630,directories=no,scrollbars=yes,status=no,menubar=no,location=no,resizable=yes");
  },
  
  initMainNav: function(){
    if(Browser.Engine.trident && Browser.Engine.version == 4) {
      $$('.mainnav ul li').addEvents({
        'mouseenter': function(event){
          this.addClass('hover');
        },
        'mouseleave': function(event){
          this.removeClass('hover');
        }
      });
    }
  },
  
  initQuickSearch: function(form, element){
    var timeoutID = null;
    var form = $(form);
    var input = form.getElement('input');
    var element = $(element);
    var searcher = new Form.Request(form, element, { method: 'get', evalScripts: true, resetForm: false });

    function resetSearch(force) {
      input.set('value', '');
      if(force) sendRequest(); // Force sending request to server
    }

    function toggleResetButton() {
      // Toggle reset search button visibility in non-webkit browsers
      if($defined(resetLink))
        resetLink.setStyle('display', (input.get('value') == '') ? 'none' : 'block');
    }

    function sendRequest() {
      searcher.send();
    }

    input.set('value', 'Type to start searching').addClass('empty');

    if(Browser.Engine.webkit) {
      input.set('type', 'search').set('results', '5');
    } else {
      var resetLink = new Element('a', {id: 'search_reset', href: '#', title: 'Reset search'}).set('text', 'Reset').setStyle('display', 'none');
      form.addClass('pretty-search');
      form.getElement('fieldset').grab(resetLink);
      resetLink.addEvent('click', function(event){
        event.stop();
        resetSearch(true);
        input.focus();
      })
    }

    input.addEvents({
      'search': sendRequest,
      'focus': function(event){
        if(input.get('value') == 'Type to start searching') 
          input.set('value', '').removeClass('empty');

        toggleResetButton();
        form.addClass('focused');
      },
      'blur': function(event){
        form.removeClass('focused');
        if(input.get('value').trim() == '')
          input.set('value', 'Type to start searching').addClass('empty');
      },
      'keyup': function(event){
        toggleResetButton();

        // Reset search if ECS key pressed
        if(event.code == 27) resetSearch();

        // Do delayed search
        if($defined(timeoutID)) $clear(timeoutID);
        timeoutID = sendRequest.delay(500);
      }
    });
  }
}