function select_category(selector) {
  var v = selector.value;
	var url = "/categories"
	if(v != '0') { url += "/" + v }
  window.location = url
}

function toggle_form(id) {
  $(id).toggle();
  $(id+'_form').toggle();
}

function tab_panel_select(tab,elm) {
	// handle tabs
	$(tab).up('ul').down('li.selected').className = '';
	$(tab).up('li').className = "selected";
	
	// handle panels
	$$(".panels").each(function(e){ e.hide() });
	$(elm).show();
}

function refresh_row_colors(scan) {
  $$(scan).each(function(s,index){
    s.className = s.className.gsub(/(odd|even)/, (index % 2 == 0 ? 'odd' : 'even'));
  });
}

function rotate_tab_panel(i) {
  var tabs = $('tabs').select('a');
  $(tabs[i % tabs.length]).onclick();
  setTimeout('rotate_tab_panel('+ (i+1) +')',10000);
}

function sizeTabs() {
  var tabs = $$('.tabs li')
  tabs.each(function(e){
    e.style.width =  ''+(95 / tabs.length) + '%'
  });
}

function addEvent(obj, evt, func) {
  if(obj.addEventListener) obj.addEventListener(evt, func, false);
  else if(obj.attachEvent) obj.attachEvent("on" + evt, func);
  else obj['on' + evt] = func;
}

function create_selected(el){
  if(el.options[el.selectedIndex].value.include('create')){
    var txt = prompt('Create New Design');
    return (txt == null) ? false : txt;
  } else {
    return false;
  }
}


var Products = {
  changeDesign: function(element) {
    if ($F(element) != "new") {
      element.form.submit();
      return;
    }
    var pid = element.up('tr').id.split('_')[1];
    if (Designs.create({parameters: {from: "products", product_id: pid, authenticity_token: _token}})) {
      // Forward to edit screen
    } else {
      select.down("option").selected = true;
    }
  }  
}

var Orders = {
  itemSearch: function(options) {
    options = options || {};
    var params = options.parameters || {};
    if (search = prompt("Search Terms:")) {
      params["search"] = search;
      params["authenticity_token"] = _token;
      res = new Ajax.Request("/items/add", { parameters: params });
    }
  }
}

var Designs = {
  create: function(options) {
    options = options || {};
    var params = options.parameters || {};
    var name, route, field;
    
    switch(params.from) {
      // case "tasks":
      //   route = "task_categories";
      //   field = "task_category";
      //   break;
      // case "deals":
      //   route = "deal_categories";
      //   field = "deal_category";
      //   break;
      default:
        route = "designs";
        field = "design";
    }

    if (name = prompt("Enter a name for the new design:")) {
      params[field + "[name]"] = name;
      res = new Ajax.Request("/" + route, { parameters: params });
      return true;
    }
  }
}