var hBar = new ItemStyle(20, 5, '', 0, 0, '10#660000', '15#fff2bf', 'menulowtext', 'menuhightext', 'itemborder', 'itemborder',
 85, 90, 'hand', 'default');

var subM = new ItemStyle(22, 0, '<img src="http://www.umbc.edu/sjp/images/arrow.gif">', -35, 3, '10#660000', '15#fff2bf', 'lowText', 'highText',
 'itemBorder2', 'itemBorder', 80, 95, 'hand', 'default');

var pMenu = new PopupMenu('pMenu');
with (pMenu)
{

startMenu('root', true, 5, 120, 135, hBar);

addItem('&nbsp; Home', 'http://www.umbc.edu/sjp', '', hBar);
addItem('&nbsp; Code of Conduct', 'mConduct', 'sm:', hBar);
addItem('&nbsp; Student Discipline', 'mStudDis', 'sm:', hBar);
addItem('&nbsp; Hearings Guideline', 'mHear', 'sm:', hBar);
addItem('&nbsp; Student Judicial Board', 'http://www.umbc.edu/sjp/jboard.html', '', hBar);
addItem('&nbsp; Parking Appeals', 'mParker', 'sm:', hBar);
addItem('&nbsp; Useful Links', 'http://www.umbc.edu/sjp/links.html', '', hBar);
addItem('&nbsp; Publications & Policies', 'mPubs', 'sm:', hBar);
addItem('&nbsp; Reporting Misconduct', 'http://www.umbc.edu/sjp/report.html', '', hBar);
addItem('&nbsp; Student Organization Conduct', 'http://www.umbc.edu/sjp/organizationcode.html', '', hBar);
addItem('&nbsp; SJP Staff', 'http://www.umbc.edu/sjp/staff.html', '', hBar);


startMenu('mConduct', true, 140, 0, 300, subM);
addItem('Entire Code of Conduct', 'http://www.umbc.edu/sjp/articles/code.html', '');
addItem('Article I: Student Conduct & Judicial Affairs Mission', 'http://www.umbc.edu/sjp/articles/articleI.html', '');
addItem('Article II: Purpose; General Provisions; Philosophy', 'http://www.umbc.edu/sjp/articles/articleII.html', '');
addItem('Article III: Definitions', 'http://www.umbc.edu/sjp/articles/articleIII.html', '');
addItem('Article IV: Judicial Authority', 'http://www.umbc.edu/sjp/articles/articleIV.html', '');
addItem('Article V: Proscribed Conduct ', 'mV', 'sm:');
addItem('Article VI: Judicial Processes & Outcomes', 'http://www.umbc.edu/sjp/articles/articleVI.html', '');
addItem('Article VII: Expunging Disciplinary Records', 'http://www.umbc.edu/sjp/articles/articleVII.html', '');
addItem('Article VIII: Interpretation and Review', 'http://www.umbc.edu/sjp/articles/articleVIII.html', '');	
	startMenu('mV', true, 250, 19, 160, subM);
	addItem('A: Student Responsibility', 'http://www.umbc.edu/sjp/articles/articleVa.html', '');
	addItem('B: Rules & Regulations', 'http://www.umbc.edu/sjp/articles/articleVb.html', '');

startMenu('mStudDis', true, 140, 0, 300, subM);
addItem('Code Of Student Conduct', 'http://www.umbc.edu/sjp/articles/code.html', '');
addItem('Student Due Process Rights', 'http://www.umbc.edu/sjp/dueprocess.html', '');
addItem('Student Behavior Standards <RULES>', 'http://www.umbc.edu/sjp/behaviorstd.html', '');
addItem('Victims Rights PDF', 'window.open("http://www.umbc.edu/sjp/pdfs/VictimForm.pdf")', 'js:');
addItem('Mailing Procedures', 'http://www.umbc.edu/sjp/mailing.html', '');
addItem('Disiplinary Sanctions', 'http://www.umbc.edu/sjp/sanctions.html', '');
addItem('Records & Notifications', 'mRecords', 'sm:');
addItem('Information for Parents', 'mParental', 'sm:');
addItem('Information for Advisors', 'http://www.umbc.edu/sjp/advisors.html', '');
	startMenu('mRecords', true, 250, 19, 260, subM);
	addItem('Records and Notifications', 'http://www.umbc.edu/sjp/recordsnotif.html', '');
	addItem('Disclosure of Student Records   PDF', 'window.open("http://www.umbc.edu/sjp/pdfs/proc.pdf")', 'js:');
	addItem('Frequently Asked Questions', 'http://www.umbc.edu/sjp/records.html', '');
	addItem('Parental Notification', 'http://www.umbc.edu/sjp/parent.html', '');

	startMenu('mParental', true, 250, 19, 260, subM);
	addItem('Judicial Records Release from UMBC  PDF', 'window.open("http://www.umbc.edu/sjp/pdfs/parents.pdf")', 'js:');
	addItem('Frequently Asked Questions', 'http://www.umbc.edu/sjp/records.html', '');
	addItem('Parental Notification', 'http://www.umbc.edu/sjp/parent.html', '');



startMenu('mHear', true, 140, 0, 180, subM);
addItem('Pre-Hearing Conference', 'mPrehear', 'sm:', '');
addItem('Hearing Information', 'mHear1', 'sm:', '');
addItem('Appeals Procedure', 'http://www.umbc.edu/sjp/appeals.html', '', '');	
	startMenu('mPrehear', true, 140, 18, 180,subM);
	addItem('Pre-Hearing Conference', 'http://www.umbc.edu/sjp/prehear1.html','');
	addItem('Preparing for a Conference PDF','http://www.umbc.edu/sjp/pdfs/prehearconf.pdf','');
	addItem('Procedures & Safeguards PDF','window.open("http://www.umbc.edu/sjp/pdfs/safe.pdf")','js:');

	startMenu('mHear1', true, 140, 18, 180, subM);	
	addItem('Preparing for a Hearing PDF', 'http://www.umbc.edu/sjp/pdfs/preparehearing.pdf', '');
	addItem('Hearing Procedure PDF','http://www.umbc.edu/sjp/pdfs/hearprocguidepdf.pdf','');
	addItem('Code Excerpts on Hearings','http://www.umbc.edu/sjp/hear3.html','');


startMenu('mParker', true, 140, 0, 300, subM);
addItem('Parking Rules & Regulations', 'http://www.umbc.edu/sjp/parkrules.html', '');	
addItem('Parking Appeals Information', 'http://www.umbc.edu/sjp/park.html', '');
addItem('Things To Consider Before Appealing', 'http://www.umbc.edu/sjp/park.html#park1', '');
addItem('How to Avoid Parking Tickets', 'http://www.umbc.edu/sjp/park.html#park2', '');
addItem('Top Five Parking Ticket Excuses', 'http://www.umbc.edu/sjp/park.html#park3', '');
addItem('Apply to be a Parking Board Member', 'http://www.umbc.edu/sjp/parkrecruit.html', '');

startMenu('mPubs', true, 140, 0, 300, subM);
addItem('Code of Student Conduct', 'http://www.umbc.edu/sjp/articles/code.html', '');
addItem('Faculty Guide PDF', 'http://www.umbc.edu/sjp/pdfs/faculty.pdf', '');
addItem('FERPA Regulations', 'http://www.access.gpo.gov/nara/cfr/waisidx_04/34cfr99_04.html', '');
addItem('Guide to Judicial System', 'http://www.umbc.edu/sjp/pdfs/Guide.06-07.pdf', '');
addItem('Judicial Records Release from UMBC  PDF', 'http://www.umbc.edu/sjp/pdfs/BuckleyWaiver.pdf', '');
addItem('Judicial Records Release To UMBC PDF', 'http://www.umbc.edu/sjp/pdfs/toumbc.pdf', '');
addItem('Judicial Records Release, Generic', 'http://www.umbc.edu/sjp/pdfs/FERPAWaiver.pdf', '');
addItem('Notification of Rights PDF', 'http://www.umbc.edu/sjp/pdfs/ferpa.pdf', '');
addItem('Petition to Expunge Student Discipline Records', 'http://www.umbc.edu/sjp/articles/articleVII.html', '');
addItem('Procedures & Safeguards for Students PDF', 'http://www.umbc.edu/sjp/pdfs/safe.pdf', '');
addItem('SJP Brochure', 'http://www.umbc.edu/sjp/comingsoon.html', '');
addItem('Substance Abuse Notification PDF', 'http://www.umbc.edu/sjp/pdfs/substance.pdf', '');
addItem('Voter Registration PDF', 'http://www.umbc.edu/sjp/pdfs/voter.pdf', '');	


}

addMenuBorder(pMenu, window.subBlank,
 null, '#666666', 1, '#CCCCDD', 2);

addDropShadow(pMenu, window.subM,
 [40,"#333333",6,6,-4,-4], [40,"#666666",4,4,0,0]);
addDropShadow(pMenu, window.subBlank,
 [40,"#333333",6,6,-4,-4], [40,"#666666",4,4,0,0]);

if ((navigator.userAgent.indexOf('rv:0.')==-1) &&
    !(isOp&&!document.documentElement) && !(isIE4&&!window.external))
{
 pMenu.showMenu = new Function('mN','menuAnim(this, mN, 10)');
 pMenu.hideMenu = new Function('mN','menuAnim(this, mN, -15)');

}

page.elmPos=function(e,p)
{
 var x=0,y=0,w=p?p:this.win;
 e=e?(e.substr?(isNS4?w.document.anchors[e]:getRef(e,w)):e):p;
 if(isNS4){if(e&&(e!=p)){x=e.x;y=e.y};if(p){x+=p.pageX;y+=p.pageY}}
 else if (e && e.focus && e.href && this.MS && /Mac/.test(navigator.platform))
 {
  e.onfocus = new Function('with(event){self.tmpX=clientX-offsetX;' +
   'self.tmpY=clientY-offsetY}');
  e.focus();x=tmpX;y=tmpY;e.blur()
 }
 else while(e){x+=e.offsetLeft;y+=e.offsetTop;e=e.offsetParent}
 return{x:x,y:y};
};

function menuAnim(menuObj, menuName, dir)
{
 var mD = menuObj.menu[menuName][0];
 if (!mD.timer) mD.timer = 0;
 if (!mD.counter) mD.counter = 0;

 with (mD)
 {
  clearTimeout(timer);

  if (!lyr || !lyr.ref) return;
  if (!visNow && dir>0) dir = 0-dir;
  if (dir>0) lyr.vis('visible');
  lyr.sty.zIndex = dir>0 ? mD.zIndex + 1 : 1001;

  lyr.clip(0, 0, menuW+2, (menuH+2)*Math.pow(Math.sin(Math.PI*counter/200),0.75) );

  counter += dir;
  if (counter>100) { counter = 100; lyr.sty.zIndex = mD.zIndex }
  else if (counter<0) { counter = 0; lyr.vis('hidden') }
  else timer = setTimeout('menuAnim('+menuObj.myName+',"'+menuName+'",'+dir+')', 40);
 }
};

function addMenuBorder(mObj, iS, alpha, bordCol, bordW, backCol, backW)
{
 for (var mN in mObj.menu)
 {
  var mR=mObj.menu[mN], dS='<div style="position:absolute; background:';
  if (mR[0].itemSty != iS) continue;
  for (var mI=1; mI<mR.length; mI++)
  {
   mR[mI].iX += bordW+backW;
   mR[mI].iY += bordW+backW;
  }
  mW = mR[0].menuW += 2*(bordW+backW);
  mH = mR[0].menuH += 2*(bordW+backW);

  if (isNS4) mR[0].extraHTML += '<layer bgcolor="'+bordCol+'" left="0" top="0" width="'+mW+
   '" height="'+mH+'" z-index="980"><layer bgcolor="'+backCol+'" left="'+bordW+'" top="'+
   bordW+'" width="'+(mW-2*bordW)+'" height="'+(mH-2*bordW)+'" z-index="990"></layer></layer>';
  else mR[0].extraHTML += dS+bordCol+'; left:0px; top:0px; width:'+mW+'px; height:'+mH+
   'px; z-index:980; '+(alpha!=null?'filter:alpha(opacity='+alpha+'); -moz-opacity:'+(alpha/100):'')+
   '">'+dS+backCol+'; left:'+bordW+'px; top:'+bordW+'px; width:'+(mW-2*bordW)+'px; height:'+
   (mH-2*bordW)+'px; z-index:990"></div></div>';
 }
};

function addDropShadow(mObj, iS)
{
 for (var mN in mObj.menu)
 {
  var a=arguments, mD=mObj.menu[mN][0], addW=addH=0;
  if (mD.itemSty != iS) continue;
  for (var shad=2; shad<a.length; shad++)
  {
   var s = a[shad];
   if (isNS4) mD.extraHTML += '<layer bgcolor="'+s[1]+'" left="'+s[2]+'" top="'+s[3]+'" width="'+
    (mD.menuW+s[4])+'" height="'+(mD.menuH+s[5])+'" z-index="'+(arguments.length-shad)+'"></layer>';
   else mD.extraHTML += '<div style="position:absolute; background:'+s[1]+'; left:'+s[2]+
    'px; top:'+s[3]+'px; width:'+(mD.menuW+s[4])+'px; height:'+(mD.menuH+s[5])+'px; z-index:'+
    (a.length-shad)+'; '+(s[0]!=null?'filter:alpha(opacity='+s[0]+'); -moz-opacity:'+(s[0]/100):'')+
    '"></div>';
   addW=Math.max(addW, s[2]+s[4]);
   addH=Math.max(addH, s[3]+s[5]);
  }
  mD.menuW+=addW; mD.menuH+=addH;
 }
};
