/*global YAHOO,AZCAT,Shadowbox */

/*jslint browser: true, unparam: true, sloppy: true, nomen: true, maxlen: 80, indent: 2 */

// 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');
  if (YAHOO.util.Lang.isNull(textbox)) {
    return;
  }
  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);

