/*global YAHOO,AZCAT,Shadowbox */

/*jslint white: true, onevar: true, browser: true, on: true, undef: true,
         eqeqeq: true, plusplus: true, bitwise: true, regexp: true,
         newcap: true, immed: true, indent: 2, nomen: false */

// Shadowbox support - needs to be added to portal_css/portal_javascripts on a
// per site basis
Shadowbox.init();

// #nav - YUI Menu
YAHOO.util.Event.onContentReady("nav", function () {
  var oMenuBar = new YAHOO.widget.MenuBar("nav", {
    autosubmenudisplay: true,
    hidedelay: 750,
    iframe: true,
    lazyload: true
  });
  oMenuBar.render();
});

// #search - Search Widget
YAHOO.util.Event.onDOMReady(function () {
  var searchmessage = 'Site Search',
      searchcolor = '#828282',
      textbox = document.getElementById('search');
  textbox = YAHOO.util.Dom.getElementBy(function (el) {
    return el.className === 'text';
  }, 'input', textbox);
  textbox.value = searchmessage;
  textbox.style.color = searchcolor;
  YAHOO.util.Event.on(textbox, 'click', function (e) {
    if (this.value === searchmessage) {
      this.value = '';
      this.style.color = '';
    }
  });
  YAHOO.util.Event.on(textbox, 'blur', function (e) {
    if (this.value === '') {
      this.value = searchmessage;
      this.style.color = searchcolor;
    }
  });
  textbox = null;
});

function submitIntentToBidForm(e) {
  var intent_to_bid_form = this,
      intent_to_bid_message = YAHOO.util.Dom.getElementsByClassName(
      "intent_to_bid_message",
      "DIV",
      this.parentNode
  )[0], hidden_field;
  YAHOO.util.Event.stopEvent(e);
  if (!intent_to_bid_form.save_intent_to_bid) {
    hidden_field = document.createElement('INPUT');
    hidden_field.type = "hidden";
    hidden_field.value = '1';
    hidden_field.name = "save_intent_to_bid";
    intent_to_bid_form.appendChild(hidden_field);
  }

  YAHOO.util.Connect.setForm(intent_to_bid_form);
  YAHOO.util.Connect._sFormData += "&ajax=1";
  YAHOO.util.Connect.asyncRequest(
    "POST",
    intent_to_bid_form.action,
    {success: function (o) {
      intent_to_bid_message.innerHTML = o.responseText;
      YAHOO.util.Dom.setStyle(intent_to_bid_message, "color", "#F00");
      var TESTING = function () {
        var errorAnim = new YAHOO.util.ColorAnim(
            intent_to_bid_message,
            {color: {from: "#F00", to: "#FFF"}},
            0.25
        );
        errorAnim.onComplete.subscribe(function (e) {
          intent_to_bid_message.innerHTML = "&nbsp;";
        });
        errorAnim.animate();
      };
      window.setTimeout(TESTING, 2000);
    }, failure: AZCAT.utils.connFail}, this, true);
  YAHOO.util.Connect.resetFormState();
}

function setupIntentToBidForms(e) {
  var intent_to_bid_forms, x, xLen, radio_buttons, y, yLen;
  intent_to_bid_forms = YAHOO.util.Dom.getElementsByClassName(
    "intent_to_bid_form",
    "FORM"
  );
  for (x = 0, xLen = intent_to_bid_forms.length; x < xLen; x += 1) {
    YAHOO.util.Event.on(
      intent_to_bid_forms[x],
      "submit",
      submitIntentToBidForm,
      intent_to_bid_forms[x],
      true
    );
    radio_buttons = intent_to_bid_forms[x].intent_to_bid;
    for (y = 0, yLen = radio_buttons.length; y < yLen; y += 1) {
      YAHOO.util.Event.on(
        radio_buttons[y],
        "change",
        submitIntentToBidForm,
        intent_to_bid_forms[x],
        true
      );      
    }
  }
}

YAHOO.util.Event.onDOMReady(setupIntentToBidForms);
