Bellefaye = {};

Bellefaye.Search = {
  
  "onTypeChange": function () {
    $('offset').value = 0;
    $("resview").update('');
    Bellefaye.Search.clearCategory();
    Bellefaye.Search.addCategory('', 'Toutes les catégories', false);
    if (categories && categories[$('ns').value+"_"+$('type').value]) {
      for (var k in categories[$('ns').value+"_"+$('type').value]) {
        if (typeof categories[$('ns').value+"_"+$('type').value][k] != 'function') {
          Bellefaye.Search.addCategory(k, categories[$('ns').value+"_"+$('type').value][k], false);
        }
      }
      if ($('category').options.length>=1) {
        $('category').enable();
      }
    }
    Bellefaye.Search.onChange();
  },
  
  "onCategoryChange": function () {
    Bellefaye.Search.onChange();
  },

  "onChange": function () {
    $('offset').value = 0;
    $("resview").update('');
    Bellefaye.Search.search();
  },
  
  "search": function () {
    if ($('ns')) {
      Kwo.exec("/annuaire.list", $('ns'), {"container": "reslist"});
    } else {
      if ($('keyword').value.length) {
        Kwo.exec("/search.list", $('keyword'), {"container": "reslist"});
      } else {
        $('keyword').focus();
      }
    }
  },
  
  "view": function (model, record) {
    Kwo.exec("/fiche", {model_id: model, record_id: record}, {"container": "resview"});    
  },
  
  "setOffset": function (offset) {
    $('offset').value = offset;
    Bellefaye.Search.search();
  },
  
  "setOrder": function (order) {
    $('order').value = order;
    Bellefaye.Search.search();
  },
  
  "addType": function (value, label, selected) {
    $('type').options[$('type').options.length] = new Option(label, value, false, selected);
  },
  
  "addCategory": function (value, label, selected) {
    $('category').options[$('category').options.length] = new Option(label, value, false, selected);
  },
  
  "clearType": function () {
    while ($('type').hasChildNodes()) {
      $('type').removeChild($('type').firstChild);
    }
    $('type').disable();
  },
  
  "clearCategory": function () {
    while ($('category').hasChildNodes()) {
      $('category').removeChild($('category').firstChild);
    }
    $('category').disable();
  },
  
  "clear": function () {
    Bellefaye.Search.clearType();
    Bellefaye.Search.clearCategory();
  }
  
};


Bellefaye.Casting = {

  onAuth: function(elt) {
    Kwo.exec('/bellefaye/casting', elt, 
	     {callback: function(res) {
	       if (Kwo.hasError(res)) return Kwo.error(res);
	       Kwo.reload();
	     }});
  }

};


Bellefaye.Job = {

  onAuth: function(elt) {
    Kwo.exec('/bellefaye/jobs2', elt,
             {callback: function(res) {
               if (Kwo.hasError(res)) return Kwo.error(res);
               Kwo.reload();
             }});
  }  

};