//==============================================================================
/**
 * Copyright (c) 1997-2005 Metrix Matrix Inc.  All Rights Reserved.
 *
 * $Author: chorn $
 * $Id: mmi.js,v 1.7 2006/01/02 17:12:56 chorn Exp $
 * $Date: 2006/01/02 17:12:56 $
 */
//==============================================================================
function popDate(calendar, dateField, anchor) {

  var dateValue = '';

  for(e = 0; e < document.forms[0].elements.length; e++) {
    if(document.forms[0].elements[e].name == dateField) {
      dateValue = document.forms[0].elements[e].value;
    }
  }

  if(! Date.parse(dateValue))
    { alert(dateValue + " is not a valid date."); }
  else
    {
      var calDate = new Date(dateValue);
      calendar.showCalendar(anchor, calDate.toString()); 
    }
}
//==============================================================================
function resetBox(fieldName) {
  if(self.top.frames.length > 0)
    {
      for(f = 0; f < self.top.frames.length; f++) {
        for(o = 0; o < self.top.frames[f].document.forms.length; o++) {
          for(e = 0; e < self.top.frames[f].document.forms[o].elements.length; e++) {
            if(fieldName == self.top.frames[f].document.forms[o].elements[e].name) {
              self.top.frames[f].document.forms[o].elements[e].selectedIndex = 0;
            }
          }
        }
      }
    }
  else
    {
      for(o = 0; o < document.forms.length; o++) {
        for(e = 0; e < document.forms[o].elements.length; e++) {
          if(fieldName == document.forms[o].elements[e].name) {
            document.forms[o].elements[e].selectedIndex = 0;
          }
        }
      }

    }
}
//==============================================================================
function setField(fieldName, val) {
    if(self.top.frames.length > 0)
        {
            for(f = 0; f < self.top.frames.length; f++) {
                for(o = 0; o < self.top.frames[f].document.forms.length; o++) {
                    for(e = 0; e < self.top.frames[f].document.forms[o].elements.length; e++) {
                        if(fieldName == self.top.frames[f].document.forms[o].elements[e].name) {
                            self.top.frames[f].document.forms[o].elements[e].value = escape(val);
                        }
                    }
                }
            }
        }
    else
        {
            for(o = 0; o < document.forms.length; o++) {
                for(e = 0; e < document.forms[o].elements.length; e++) {
                    if(fieldName == document.forms[o].elements[e].name) {
                        document.forms[o].elements[e].value = val;
                    }
                }
            }

        }
}
//==============================================================================
function getBoxValue(fieldName) {
  if(self.top.frames.length > 0)
    {
      for(f = 0; f < self.top.frames.length; f++) {
        for(o = 0; o < self.top.frames[f].document.forms.length; o++) {
          for(e = 0; e < self.top.frames[f].document.forms[o].elements.length; e++) {
            if(fieldName == self.top.frames[f].document.forms[o].elements[e].name) {
              return self.top.frames[f].document.forms[o].elements[e].options[self.top.frames[f].document.forms[o].elements[e].selectedIndex].value;
            }
          }
        }
      }
    }
  else
    {
      for(o = 0; o < document.forms.length; o++) {
        for(e = 0; e < document.forms[o].elements.length; e++) {
          if(fieldName == document.forms[o].elements[e].name) {
            return document.forms[o].elements[e].options[document.forms[o].elements[e].selectedIndex].value;
          }
        }
      }

    }
}
//==============================================================================
function setDates(presetBox) {
    var val = presetBox.options[presetBox.selectedIndex].value;
    if(val != "-")
    {
      var div = val.indexOf("^", 0);
      setField('dateStart', val.substring(0, div));
      setField('dateEnd', val.substring(div + 1, val.length));
      presetBox.selectedIndex = 0;
    }
}
//==============================================================================
function setStartDate(y, m, d) {
    var pretty =  m + "/" + d + "/" + y;
    setField('dateStart', pretty);
}
//==============================================================================
function setEndDate(y, m, d) {
    var pretty =  m + "/" + d + "/" + y;
    setField('dateEnd', pretty);
}
//==============================================================================
function openLibrary(extraArgs) 
{
    var val = getBoxValue("c_library");
    var d  = new Date();
    var ts = d.getTime();
    if(val != "-")
    {
        var div = val.indexOf("^", 0);
        var libId = val.substring(0, div);
        var libFile = val.substring(div + 1, val.length);
        window.open("/members/library/" + libFile + extraArgs + "?library-id=" + libId, "MMILibrary" + ts, "");
    }
    resetBox("c_library");
}
//==============================================================================
function openHelp(extraArgs) 
{
    var d  = new Date();
    var ts = d.getTime();
    var val = getBoxValue("c_help");
    if(val != "-") window.open(val + extraArgs, "MMIHelp" + ts, "width=500,height=400,screenX=20,screenY=20,left=20,top=20,hotkeys=0,location=0,menubar=0,resizable=1,scrollbars=1,status=1,toolbar=1,alwaysRaised=0,dependent=1", ""); 
    resetBox("c_help");
}
//==============================================================================
function openTool(extraArgs) 
{
    var d  = new Date();
    var ts = d.getTime();
    var val = getBoxValue("c_tool");
    if(val != "-") window.open(val + extraArgs, "MMITools" + ts, "width=285,height=275,screenX=20,screenY=20,left=20,top=20,hotkeys=0,location=0,menubar=0,resizable=1,scrollbars=1,status=0,toolbar=0,alwaysRaised=1,dependent=1", "");
    resetBox("c_tool");
}
//==============================================================================
function parseForm(frm) {
  var val = "";
  var queryString = "";
  
  for(i = 0; i < frm.elements.length; i++) {
    switch(frm.elements[i].type)
      {
      case "checkbox":
        val = (frm.elements[i].checked ? frm.elements[i].value : "");
        queryString += "&" + frm.elements[i].name + "=" + escape(val);
        break;
      case "radio":
        val = (frm.elements[i].checked ? frm.elements[i].value : "");
        if(val != "") queryString += "&" + frm.elements[i].name + "=" + escape(val);
        break;
      case "select-one":
        val = frm.elements[i].options[frm.elements[i].selectedIndex].value;
                if(val != "-") 
                    queryString += "&" + frm.elements[i].name + "=" + escape(val);
          break;
      case "text":
        val = frm.elements[i].value;
        queryString += "&" + frm.elements[i].name + "=" + escape(val);
        break;
      default:
        break;
      }
  };

  return queryString;
}
//==============================================================================
function go(dest) {
  var queryString = "";
  
  for(i = 0; i < document.forms[0].elements.length; i++) {
        if(document.forms[0].elements[i].type == "checkbox")
      {
                if(! document.forms[0].elements[i].checked)
                {
                    queryString += "&" + document.forms[0].elements[i].name + "=";
                }
      }
  };

    document.forms[0].elements[0].value = "c_action=" + escape(dest) + queryString;
    document.forms[0].submit();
}
//==============================================================================
function report() {
  go(getBoxValue("c_report"));
}
//==============================================================================
function sethref(obj, dest, prefix, postfix) {
  var queryString = "";
  
  if(self.top.frames.length > 0) {
    for(f = 0; f < self.top.frames.length; f++) {
      for(o = 0; o < self.top.frames[f].document.forms.length; o++) {
                queryString += parseForm(self.top.frames[f].document.forms[o]);
      }
    }
  } else {
    for(o = 0; o < document.forms.length; o++) {
            queryString += parseForm(document.forms[o]);
    }
  }

  obj.href = dest + prefix + "?c_action=" + escape(dest) + queryString + postfix;
}
//==============================================================================
function SetCheckboxes(prefix, value) {
  for(i = 0; i < document.forms[0].elements.length; i++) {
    if((document.forms[0].elements[i].type == "checkbox") && (document.forms[0].elements[i].name.indexOf(prefix) >= 0))
      { document.forms[0].elements[i].checked = value; };
  }
};
//==============================================================================
function InvertCheckboxes(prefix) {
  for(i = 0; i < document.forms[0].elements.length; i++) {
    if((document.forms[0].elements[i].type == "checkbox") && (document.forms[0].elements[i].name.indexOf(prefix) >= 0))
      { document.forms[0].elements[i].checked = ! document.forms[0].elements[i].checked; };
  }
};
//==============================================================================
function popFromSelect(o, restore) 
{
    var d  = new Date();

    if(o.selectedIndex > 0)
    {
        window.open(o.options[o.selectedIndex].value, "mmi_" + d.getTime(),
                    "width=285,height=275,screenX=20,screenY=20,left=20,top=20,hotkeys=0,location=0,menubar=0,resizable=1,scrollbars=1,status=0,toolbar=0", "");

        if (restore)
        {
            o.selectedIndex=0;
        }
    }
}
//==============================================================================
function popFromSelectDoc(o, restore) 
{
    var d  = new Date();

    if(o.selectedIndex > 0)
    {
        window.open(o.options[o.selectedIndex].value, "mmi_" + d.getTime(),
                    "width=525,height=720,screenX=20,screenY=20,left=20,top=20,hotkeys=0,location=0,menubar=0,resizable=1,scrollbars=1,status=0,toolbar=0", "");

        if (restore)
        {
            o.selectedIndex=0;
        }
    }
}
//==============================================================================
function popLinkMedium(lnk) 
{
    var d  = new Date();

    window.open(lnk, "mmi_" + d.getTime(),
                "width=480,height=500,screenX=50,screenY=20,left=50,top=20,hotkeys=0,location=0,menubar=0,resizable=1,scrollbars=1,status=0,toolbar=1", "");
}
//==============================================================================
function popLinkDoc(lnk) 
{
    var d  = new Date();

    window.open(lnk, "mmi_" + d.getTime(),
                "width=525,height=720,screenX=50,screenY=20,left=50,top=20,hotkeys=0,location=0,menubar=0,resizable=1,scrollbars=1,status=0,toolbar=1", "");
}
//==============================================================================
function popLinkSurvey(lnk) 
{
    var d  = new Date();

    window.open(lnk, "mmi_" + d.getTime(),
                "width=700,height=700,screenX=50,screenY=20,left=50,top=20,hotkeys=0,location=0,menubar=0,resizable=1,scrollbars=1,status=0,toolbar=1", "");
}

//==============================================================================
function popLinkLarge(lnk) 
{
    var d  = new Date();

    window.open(lnk, "mmi_" + d.getTime(),
                "width=800,height=600,screenX=50,screenY=20,left=50,top=20,hotkeys=0,location=0,menubar=0,resizable=1,scrollbars=1,status=0,toolbar=1", "");
}
//==============================================================================
