var vXPosition = 22;
var vYPosition = 136;
var bHorizontal = false;
var bVertical = true;
var bShowOnClick = false;
var vFrameName = false;

var vRootHeight = 24;
var vSubHeight = 21;

var vRootBgLow = '20';
var vRootBgHigh = '20';
var vSubMBgLow = '20#E5E5E5';
var vSubmBgHigh = '30#F5F5F5';

var vOutOpacityRoot = null;
var vOverOpacityRoot = null;
var vOutOpacitySubm = null;
var vOverOpacitySubm = null;

var vItemPaddingRoot = 0;
var vItemPaddingSubM = 3;
var vSpaceAfterHorizontal = 1;
var vSpaceAfterVertical = 1;

var vHorizontalSubmenuOffset = 0;
var vVerticalOffset = 5;
var vVerticalRootOffset = vRootHeight + vVerticalOffset;

// each menu (home & sub) width - edit start
var vHomeWidthRoot = 95;

var vInsideWidthRoot = 105;
var vInsideWidthSubMenu = 180;

var vInfoWidthRoot = 130;
var vInfoWidthSubMenu = 120;

var vTodoWidthRoot = 140;
var vTodoWidthSubMenu = 180;

var vRatesWidthRoot = 170;
var vRatesWidthSubMenu = 120;

var vContactWidthRoot = 80;

// each menu (home & sub) width - edit end

var hBar = new ItemStyle(vRootHeight, vSpaceAfterHorizontal, '', 0, vItemPaddingRoot, vRootBgLow, vRootBgHigh, 'lowRootText', 
'highRootText', 'itemBorderLow', 'itemBorderHigh', vOutOpacityRoot, vOverOpacityRoot, 'hand', 'default');

var subM = new ItemStyle(vSubHeight, vSpaceAfterVertical, '', 0, vItemPaddingSubM, vSubMBgLow, vSubmBgHigh, 'lowSubMText', 
'highSubMText', 'itemBorderLow', 'itemBorderHigh', vOutOpacitySubm, vOverOpacitySubm, 'hand', 'default');

var pMenu = new PopupMenu('pMenu');

with (pMenu)
{
    startMenu('root', bHorizontal, vXPosition, vYPosition, vRootHeight, hBar, vFrameName, bShowOnClick);
    addItem('&nbsp;Home&nbsp;', '/', '', null, vHomeWidthRoot);
    addItem('&nbsp;The Villa&nbsp;', 'm1', 'sm:', null, vInsideWidthRoot);
    addItem('&nbsp;Information&nbsp;', 'm2', 'sm:', null, vInfoWidthRoot);
    addItem('&nbsp;Things To Do&nbsp;', 'm3', 'sm:', null, vTodoWidthRoot);
    addItem('&nbsp;Rates and Availability&nbsp;', 'm4', 'sm:', null, vRatesWidthRoot);
    addItem('&nbsp;Contact Us&nbsp;', 'mailto:info@villa1243.com', '', null, vContactWidthRoot);

    startMenu('m1', bVertical, vHorizontalSubmenuOffset, vVerticalRootOffset, vInsideWidthSubMenu, subM, vFrameName, bShowOnClick);
    addItem('&nbsp;View the Villa&nbsp;', '/portuguese_villa/come_inside.html', '');
    addItem('&nbsp;Lower Level&nbsp;', '/portuguese_villa/inside_lower_level.html', '');
    addItem('&nbsp;Ground Floor&nbsp;', '/portuguese_villa/inside_living_area.html', '');
    addItem('&nbsp;Upper Level&nbsp;', '/portuguese_villa/inside_master_bedroom.html', '');
    addItem('&nbsp;Roof Top Spa&nbsp;', '/portuguese_villa/inside_roof_top_spa.html', '');

    startMenu('m2', bVertical, vHorizontalSubmenuOffset, vVerticalRootOffset, vInfoWidthSubMenu, subM, vFrameName, bShowOnClick);
    addItem('&nbsp;How to Get Here&nbsp;', '/portuguese_villa/how_to_get_here.html', '');
    addItem('&nbsp;Car Rental&nbsp;', '/portuguese_villa/information_car_rental.html', '');
    addItem('&nbsp;Climate&nbsp;', '/portuguese_villa/information_climate.html', '');
    addItem('&nbsp;Travelling Distances&nbsp;', '/portuguese_villa/information_travelling.html', '');

    startMenu('m3', bVertical, vHorizontalSubmenuOffset, vVerticalRootOffset, vTodoWidthSubMenu, subM, vFrameName, bShowOnClick);
    addItem('&nbsp;Beach&nbsp;', '/portuguese_villa/to_do_beaches.html', '');
    addItem('&nbsp;Childrens Activities&nbsp;', '/portuguese_villa/to_do_childrens.html', '');
    addItem('&nbsp;Golf&nbsp;', '/portuguese_villa/to_do_golf.html', '');
    addItem('&nbsp;Resort Facilities&nbsp;', '/portuguese_villa/to_do_amenities_spa.html', '');
    addItem('&nbsp;Pools&nbsp;', '/portuguese_villa/to_do_swimming.html', '');
    addItem('&nbsp;Restaurants&nbsp;', '/portuguese_villa/to_do_restaurants.html', '');
    addItem('&nbsp;Shopping&nbsp;', '/portuguese_villa/to_do_shopping.html', '');
    addItem('&nbsp;Tennis&nbsp;', '/portuguese_villa/to_do_tennis.html', '');

    startMenu('m4', bVertical, vHorizontalSubmenuOffset, vVerticalRootOffset, vRatesWidthSubMenu, subM, vFrameName, bShowOnClick);
    addItem('&nbsp;Booking&nbsp;', '/portuguese_villa/booking.asp', '');
    addItem('&nbsp;Service&nbsp;', '/portuguese_villa/service.html', '');
}

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);
 }
};
