/*  This comment MUST stay intact for legal use, so don't remove it. EnlargeIt! 
v1.1 - (c) 2008 Timo Sack - http://enlargeit.timos-welt.de This program is free 
software: you can redistribute it and/or modify it under the terms of the GNU 
General Public License as published by the Free Software Foundation, either 
version 3 of the License, or (at your option) any later version. See LICENSE.TXT 
for details. */

// modify these
var enl2_gifpath='./files/enlarge/'; // path to graphics
var enl2_brdsize=0;    // border thickness (5-30)
var enl2_brdcolor='';   // border color (white if empty)
var enl2_brdbck='';     // border background pic, '' for no pic
var enl2_brdround=1;    // use rounded borders (Mozilla/Safari only)
var enl2_maxstep=30;    // ani steps (10-30)
var enl2_speed=12;      // time between steps
var enl2_ani=0;         // 0=no,1=fade,2=glide,3=bumpglide,4=smoothglide,5=expglide
var enl2_opaglide=0;    // glide transparency
var enl2_shadow=0;      // shadow under border
var enl2_shadowsize=0;  // size of shadow right/bottom (0-20)
var enl2_shadowcolor='black';// shadow color (empty: black)
var enl2_shadowintens=5;// shadow intensity (5-30)
var enl2_dark=0;        // darken screen (0=off/1=on/2=keep dark when nav)
var enl2_darkprct=20;   // how dark the screen should be (0-100)
var enl2_darksteps=5;   // how long darkening should take
var enl2_center=1;      // center enlarged pic on screen
var enl2_drgdrop=1;     // enable drag&drop for pics
var enl2_preload=0;     // preload next/prev pic
var enl2_titlebar=0;    // show pic title bar
var enl2_keynav=0;      // key navigation
var enl2_wheelnav=0;    // mouse wheel navigation
var enl2_titletxtcol='white';// color of title bar text (empty: dark grey)
var enl2_ajaxcolor='';  // background color for AJAX (empty: light grey)
var enl2_usecounter=0;  // hidden call of counter page
var enl2_counterurl=''; // base URL of counter page
var enl2_btnact='bact.png';               // active buttons
var enl2_btninact='binact.png';           // inactive buttons
var enl2_pluscur='';           // mouse cursor of thumbnail
var enl2_minuscur='';         // mouse cursor of enlarged image
var enl2_noflash='No flash plugin found!';// msg if no flash plugin found
var enl2_canceltext='Click to cancel';    // tooltip to cancel loading

// don't modify next line
var enl2_buttonurl = new Array(),enl2_buttontxt = new Array(),enl2_buttonoff = new Array();

// define your buttons here
enl2_buttonurl[0] = 'close';
enl2_buttontxt[0] = 'Close [Esc key]';
enl2_buttonoff[0] = -108;

// global vars
var enl2_prldimg=new Array(),enl2_button=new Array(),enl2_stopload=0;
var enl2_butact,enl2_butinact,enl2_btnheight,enl2_prldcnt=0,enl2_darkened=0;
var enl2_nn6=document.getElementById&&!document.all;enl2_drgmode=false;
var enl2_drgelem,enl2_mvcnt=0,enl2_isie=window.ActiveXObject,enl2_hasmvd=false;
var enl2_brwsx,enl2_brwsy,enl2_scrollx,enl2_scrolly,enl2_infront='';
var enl2_firstcall=0,enl2_inprogress=0,enl2_zcnt=9700,enl2_inmax=0,enl2_ie6=0;
var enl2_request=false,enl2_request2=false,enl2_keepblack=0,enl2_brdbckpic;

// init function at page load or first enlarge
function enl2_init()
{
  if (!enl2_firstcall)
  {
    enl2_firstcall = 1;
    
    // parameter corrections
    if (typeof enl2_buttonpress == 'undefined') enl2_drgdrop = 0;
    if (typeof enl2_ajax == 'undefined') enl2_usecounter = 0;
    if (typeof enl2_darken == 'undefined') enl2_dark = 0;
    if (typeof enl2_dropshadow == 'undefined') enl2_shadow = 0;
    if (typeof enl2_wheel == 'undefined') enl2_wheelnav = 0;
    if (typeof enl2_keynavi == 'undefined') enl2_keynav = 0;
    if (typeof enl2_mktitlebar == 'undefined') enl2_titlebar = 0;
    else if (enl2_buttonurl.length) enl2_titlebar = 1;
    if (typeof enl2_dofadein == 'undefined' && enl2_ani == 1) enl2_ani = 2;
    if (typeof enl2_doglidein == 'undefined' && enl2_ani > 1) enl2_ani = 0;
    var enl2_i = 0;
    
    // prepare ajax
    if (typeof enl2_ajax != 'undefined') enl2_ajaxprepare();
    
    // button img
    if (enl2_titlebar) {
      enl2_preloadit(enl2_gifpath+enl2_btnact);
      enl2_butact = enl2_prldimg[enl2_prldcnt];
      enl2_preloadit(enl2_gifpath+enl2_btninact);
      enl2_butinact = enl2_prldimg[enl2_prldcnt];
    }

    // background img
    if (enl2_brdbck) enl2_preloadit(enl2_gifpath+enl2_brdbck);
    enl2_brdbckpic = enl2_prldimg[enl2_prldcnt];

    // loader div
    enl2_ldr = enl2_mkdiv('enl2_ldr');
    enl2_ldr.style.zIndex = 9999;
    enl2_ldrgif = new Image();
    enl2_ldrgif.src = enl2_gifpath+'loader.gif';
    enl2_ldrgif.style.borderWidth = '1px';
    enl2_ldrgif.style.borderStyle = 'solid';
    enl2_ldrgif.style.borderColor = 'black';
    enl2_ldrgif.id = 'enl2_ldrgif';
    enl2_ldr.appendChild(enl2_ldrgif);

    // border div
    enl2_brdm = enl2_mkdiv('enl2_brd');
    enl2_brdm.name = 'ajax';
    enl2_brdm.style.backgroundColor = (enl2_brdcolor) ? enl2_brdcolor : '';
    if (enl2_brdbck) enl2_brdm.style.backgroundImage = 'url('+enl2_gifpath+enl2_brdbck+')';
    if (enl2_brdround && !enl2_brdbck)
    {
      enl2_brdm.style.MozBorderRadius = enl2_brdsize+'px';
      enl2_brdm.style.khtmlBorderRadius = enl2_brdsize+'px';
    }

    // shadow div
    if (enl2_shadow)
    {
        enl2_shdm = enl2_mkdiv('enl2_shd');
        enl2_shdm.style.backgroundColor = (enl2_shadowcolor) ? enl2_shadowcolor : 'black';
        enl2_setopa(enl2_shdm,enl2_shadowintens);
        if (enl2_brdround && !enl2_brdbck)
        {
          enl2_shdm.style.MozBorderRadius = eval(enl2_brdsize+1)+'px';
          enl2_shdm.style.khtmlBorderRadius = eval(enl2_brdsize+1)+'px';
        }
    }
    if (enl2_dark) enl2_darkenprepare();
    if (enl2_keynav)
    {
      document.onkeyup = enl2_keynavi;
      document.onkeydown = null;
    }
    enl2_imglist = document.getElementsByTagName('img');
    
    // set mouse plus cursor, assign IDs, fix IE alt tooltip bug for thumbs
    if (typeof document.body.style.maxHeight == 'undefined') enl2_ie6 = 1;
    var enl2_ui;
    for (var enl2_i=0; enl2_i<enl2_imglist.length; enl2_i++)
    {
      if (typeof enl2_imglist[enl2_i].onclick == 'function') {
        enl2_ui = eval(enl2_imglist[enl2_i].onclick).toString();
        if (enl2_ui.search(/enlarge/) != -1)
        {
          enl2_imglist[enl2_i].title = '';
          if (enl2_isie) enl2_imglist[enl2_i].galleryimg = 'no';
          if (!enl2_imglist[enl2_i].id) enl2_imglist[enl2_i].id = 'enl2_autoid'+enl2_i;
          enl2_setcur(enl2_imglist[enl2_i],enl2_pluscur,'pointer','hand');
        }
      }
    }
    enl2_firstcall = 2;
    enl2_timetowait = (enl2_isie) ? 750 : 100;
    if (typeof enl2_openpic != 'undefined') setTimeout('enl2_openthepic("'+enl2_openpic+'")' ,enl2_timetowait);
  }
}

// open a pic by pic.id
function enl2_openthepic(enl2_toopen)
{
  enl2_img = enl2_geto(enl2_toopen);
  enlarge2(enl2_img);
}

// set position of object
function enl2_setpos(enl2_obj,enl2_posx,enl2_posy,enl2_w,enl2_h)
{
  enl2_obj.style.left = enl2_posx+'px';
  enl2_obj.style.top = enl2_posy+'px';
  if (enl2_w) {
    enl2_obj.style.width = enl2_w+'px';
    enl2_obj.style.height = enl2_h+'px';
  }
}

// set opacity of object
function enl2_setopa(enl2_obj,enl2_opval) {
  enl2_obj.style.opacity=enl2_opval/100;
  enl2_obj.style.MozOpacity=enl2_opval/100;
  enl2_obj.style.filter = "alpha(opacity="+enl2_opval+")";
}

// get object by id
function enl2_geto(enl2_imgid)
{
  return document.getElementById(enl2_imgid);
}

// preload image
function enl2_preloadit(enl2_picpath)
{
  enl2_prldcnt +=1;
  enl2_prldimg[enl2_prldcnt] = new Image();
  if (enl2_picpath.slice(3,5) != '::' ) enl2_prldimg[enl2_prldcnt].src = enl2_picpath;
  else if (!enl2_isie) enl2_prldimg[enl2_prldcnt].src = enl2_picpath.split('::')[1];
}

// show object
function enl2_visible(enl2_obj)
{
  enl2_obj.style.visibility = 'visible';
}

// hide object
function enl2_hide(enl2_obj)
{
  enl2_obj.style.visibility = 'hidden';
}

// create div
function enl2_mkdiv(enl2_divname)
{
  enl2_div = document.createElement("div");
  enl2_hide (enl2_div);
  enl2_div.id = enl2_divname;
  enl2_div.style.position = 'absolute';
  enl2_setpos(enl2_div,-5000,0,0,0);
  document.body.appendChild(enl2_div);
  return enl2_div;
}

// get viewport
function enl2_getbrwsxy()
{
 if (typeof window.innerWidth != 'undefined')
 {
   enl2_brwsx = window.innerWidth - 10;
   enl2_brwsy = window.innerHeight;
 }
 else if (typeof document.documentElement  != 'undefined' && typeof document.documentElement.clientWidth != 'undefined' && document.documentElement.clientWidth != 0)
 {
  enl2_brwsx = document.documentElement.clientWidth;
  enl2_brwsy = document.documentElement.clientHeight;
 }
 else
 {
   enl2_brwsx = document.getElementsByTagName('body')[0].clientWidth;
   enl2_brwsy = document.getElementsByTagName('body')[0].clientHeight;
 }
 enl2_scrolly = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
 enl2_scrollx = window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0;
}

// start/stop slider plug if exists
function enl2_ctlslid(enl2_i)
{
  if (typeof realcopyspeed != 'undefined') copyspeed=(enl2_i?realcopyspeed:0);
}

// get top, left, width and height
function enl2_coord(enl2_el)
{
  var enl2_values = { top:0, left:0, width:0, height:0 };
  if(!enl2_el) return enl2_values;
  else if(typeof enl2_el == 'string' ) enl2_el = enl2_geto(enl2_el);
  if( typeof enl2_el != 'object' ) return enl2_values;
  if(typeof enl2_el.offsetTop != 'undefined') {
    enl2_values.height = enl2_el.offsetHeight;
    enl2_values.width = enl2_el.offsetWidth; enl2_values.left = enl2_el.top = 0;
    while (enl2_el && enl2_el.tagName != 'BODY') {
  enl2_values.top  += parseInt( enl2_el.offsetTop ); enl2_values.left += parseInt( enl2_el.offsetLeft ); enl2_el = enl2_el.offsetParent; } }
  return enl2_values;
}

// set mouse cursor
function enl2_setcur(enl2_obj,enl2_curstr1,enl2_curstr2,enl2_curstr3)
{
  if (window.opera || (!enl2_curstr1 && !enl2_ie6)) {try {enl2_obj.style.cursor = enl2_curstr2;} catch(enl2_err) {}}
  else if (enl2_ie6) {try {enl2_obj.style.cursor = enl2_curstr3;} catch(enl2_err) {}}
  else {try {enl2_obj.style.cursor = 'url('+enl2_gifpath+enl2_curstr1+'),'+enl2_curstr2;} catch(enl2_err) {}}
}

// onmouse events for drag, preload
function enl2_makedraggable(enl2_imgid)
{
  enl2_infront = enl2_imgid;
  enl2_img = enl2_geto(enl2_imgid);
  enl2_orig = enl2_geto(enl2_img.orig);
  enl2_setcur(enl2_orig,'','default','default');
  if (enl2_drgdrop)
  { enl2_img.onmousedown=enl2_buttonpress;
    enl2_img.onmouseup=enl2_enddrag; }
  else if (enl2_img.ispic || !enl2_titlebar) enl2_img.onclick = function() { enl2_shrink(enl2_imgid); };
  if (!enl2_inmax && enl2_usecounter) setTimeout('enl2_count("'+enl2_orig.id+'")' ,40);
  if (enl2_drgdrop) enl2_setcur(enl2_img,enl2_minuscur,'move','move');
  else enl2_setcur(enl2_img,enl2_minuscur,'pointer','hand');
  enl2_inprogress=0;
  enl2_ctlslid(1);
  if (enl2_preload)
  {
    for(var enl2_i=0; enl2_i<2; enl2_i++)
    {
      enl2_nextpic = enl2_getnext(enl2_imgid,enl2_i);
      if (enl2_nextpic)
      {
        enl2_pictoget = enl2_nextpic.getAttribute('longdesc');
        setTimeout('enl2_preloadit("'+enl2_pictoget+'")' ,30);
      }
    }
  }
}

// delete onmouse events
function enl2_noevents(enl2_obj)
{
  enl2_obj.onmousedown = null;
  enl2_obj.onclick = null;
  enl2_obj.onmouseup = null;
}

// add event to window.onload
function enl2_addLoad(enl2_func)
{
  var enl2_oldonload = window.onload;
  if (typeof window.onload != 'undefined')
  { window.onload = enl2_func; }
  else
  { window.onload = function() {
    if (enl2_oldonload) { enl2_oldonload(); }
    enl2_func();
    };
  }
}

// show loader
function enl2_ajaxload(enl2_obj) {
  enl2_ldr = enl2_geto('enl2_ldr');
  enl2_r = enl2_coord(enl2_obj);
  enl2_setpos(enl2_ldr,enl2_r.left+enl2_r.width/2-17,enl2_r.top+enl2_r.height/2-17);
  enl2_visible(enl2_ldr);
}

// hide loader
function enl2_ajaxldrhide() {
  enl2_ldr = enl2_geto('enl2_ldr');
  enl2_hide(enl2_ldr);
  enl2_setpos(enl2_ldr,-5000,0);
}

// get next/previous pic (enl2_prvnxt=0 gets next, =1 gets prev)
function enl2_getnext(enl2_imgid,enl2_prvnxt)
{
  enl2_oripic = enl2_geto(enl2_geto(enl2_imgid).orig);
  if (enl2_oripic.className)
  {
    var enl2_allElm = document.body.getElementsByTagName('img');
    var enl2_flag = 0;
    if (!enl2_prvnxt)
    {
      for(var enl2_i = 0; enl2_i < enl2_allElm.length; enl2_i++)
      {
        if ((enl2_flag == 1) && (enl2_allElm[enl2_i].className==enl2_oripic.className) && !enl2_allElm[enl2_i].orig)
        {
          enl2_flag = 2;
          enl2_nextObj = enl2_allElm[enl2_i];
        }
        if (enl2_oripic == enl2_allElm[enl2_i]) enl2_flag = 1;
      }
    }
    else
    {
      for(var enl2_i = enl2_allElm.length; enl2_i >= 0; enl2_i--)
      {
        if ((enl2_flag == 1) && (enl2_allElm[enl2_i].className==enl2_oripic.className) && !enl2_allElm[enl2_i].orig)
        {
          enl2_flag = 2;
          enl2_nextObj = enl2_allElm[enl2_i];
        }
        if (enl2_oripic == enl2_allElm[enl2_i]) enl2_flag = 1;
      }
    }
    if (enl2_flag == 2 && !enl2_nextObj.isenlarged && enl2_oripic.className != 'imgflowimg' && enl2_oripic.className != 'sliderimg') return enl2_nextObj;
    else return null;
  }
}

// draw border
function enl2_mkborder(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_brdclone = enl2_geto(enl2_imgid+"brd");
  if (enl2_wheelnav) enl2_wheelenable(enl2_brdclone);
  if (enl2_titlebar && enl2_brdsize < enl2_btnheight+4)
  {
    enl2_tmph = enl2_img.newh + enl2_brdsize + enl2_btnheight + 4;
    enl2_tmpt = enl2_img.newt-enl2_brdsize- (enl2_btnheight+4) +enl2_brdsize;
  }
  else
  {
    enl2_tmph = enl2_img.newh + enl2_brdsize*2;
    enl2_tmpt = enl2_img.newt-enl2_brdsize;
  }
  enl2_setpos(enl2_brdclone,enl2_img.newl - enl2_brdsize, enl2_tmpt);
  with (enl2_brdclone.style) {
    width = eval(enl2_img.neww + enl2_brdsize*2)+'px';
    height = enl2_tmph+'px';
    visibility = 'visible';
    zIndex = enl2_zcnt-1;
  }
  if (enl2_shadow) enl2_dropshadow(enl2_imgid);
  if (typeof enl2_hideselect != 'undefined') enl2_hideselect(enl2_brdclone,0);
}

// remove border
function enl2_delborder(enl2_imgid)
{
  enl2_brdm=enl2_geto(enl2_imgid+"brd");
  if (typeof enl2_hideselect != 'undefined') enl2_hideselect(enl2_brdclone,1);
  enl2_hide(enl2_brdm);
  enl2_setpos(enl2_brdm,-5000,0);
  if (enl2_shadow) enl2_delshadow(enl2_imgid);
}

// -------- main functions -------

// initiate pre-load
function enlarge2(enl2_img)
{
  if (!enl2_firstcall) enl2_init();
  if (enl2_firstcall == 1 || enl2_img.isenlarged) return false;
  if (enl2_inprogress) 
  {
    setTimeout('enl2_openthepic("'+enl2_img.id+'")',99);
    return false;
  }
  if (enl2_brdbck && !enl2_brdbckpic.complete) return false;
  if (enl2_titlebar && (!enl2_butact.complete || !enl2_butinact.complete)) return false;
  var enl2_getlongdesc=enl2_img.getAttribute('longdesc');
  if (enl2_getlongdesc.slice(3,5) == '::' && typeof enl2_checkflash == 'undefined') return false;
  enl2_inprogress = 1;
  enl2_img.isenlarged = 1;
  enl2_ctlslid(0);
  enl2_preloadit(enl2_getlongdesc);
  enl2_imgid = enl2_img.getAttribute('id');
  enl2_inmax = 0;
  setTimeout('enl2_chckready("'+enl2_imgid+'")' ,10);
}

// check if pre-load is ready and create clone
function enl2_chckready(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_ldr = enl2_geto("enl2_ldr");
  var enl2_getlongdesc = enl2_img.getAttribute('longdesc');
  var enl2_divtype = enl2_getlongdesc.slice(0,5);
  if (enl2_stopload)
  {
    enl2_geto('enl2_ldrgif').onclick = null;
    enl2_geto('enl2_ldrgif').title = "";
    enl2_keepblack = 0;
    if (enl2_dark) enl2_nodark();
    enl2_ajaxldrhide();
    enl2_inprogress = 0;
    enl2_img.isenlarged = 0;
    enl2_ctlslid(1);
    enl2_stopload = 0;
    return false;
  }
  var enl2_ispreload = enl2_prldimg[enl2_prldcnt].complete;
  if ((enl2_ispreload && enl2_prldimg[enl2_prldcnt].width) || (enl2_ispreload && enl2_divtype == 'swf::') || (enl2_ispreload && enl2_divtype == 'fl2::')|| (enl2_ispreload && enl2_divtype == 'flv::') || enl2_divtype == 'dvx::' || enl2_divtype == 'ifr::' || (enl2_isie && (enl2_divtype == 'swf::')) || (enl2_isie && (enl2_divtype == 'fl2::')) || (enl2_isie && (enl2_divtype == 'flv::')))
  {
    enl2_zcnt+=3;
    enl2_ajaxldrhide();
    if (enl2_divtype == 'swf::' || enl2_divtype == 'fl2::' || enl2_divtype == 'flv::') {
      if (enl2_checkflash()) enl2_clone = enl2_swfdiv(enl2_img,enl2_getlongdesc);
      else 
      { 
        alert (enl2_noflash);
        enl2_inprogress = 0;
        enl2_img.isenlarged = 0;
        enl2_ctlslid(1);
        return false; 
      }
    }
    else if (enl2_divtype == 'dvx::') enl2_clone = enl2_dvxdiv(enl2_img,enl2_getlongdesc);
    else if (enl2_divtype == 'ifr::') enl2_clone = enl2_ifrdiv(enl2_img,enl2_getlongdesc);
    else
    {
      enl2_clone = enl2_img.cloneNode(true);
      enl2_setpos(enl2_clone,-5000,0);
      with (enl2_clone) {
        id = enl2_img.id+"clone";
        style.visibility = 'hidden';
        style.position = 'absolute';
        style.borderWidth = '0px';
        style.outlineWidth = '0px';
        style.margin = '0px';
        style.padding = '0px';
      }
      document.body.appendChild(enl2_clone);
    }
    enl2_clone.orig = enl2_img.id;

    // clone brddiv to brdclone
    enl2_brddiv = enl2_geto("enl2_brd");
    enl2_brdclone = enl2_brddiv.cloneNode(true);
    enl2_brdclone.id = enl2_imgid + "clonebrd";
    enl2_brdclone.style.zIndex = enl2_zcnt-1;
    if (enl2_shadow) {
      enl2_shddiv = enl2_geto("enl2_shd");
      enl2_shdclone = enl2_shddiv.cloneNode(true);
      enl2_shdclone.id = enl2_clone.id+"shd1";
      enl2_shdclone2 = enl2_shddiv.cloneNode(true);
      enl2_shdclone2.id = enl2_clone.id+"shd2";
      document.body.appendChild(enl2_shdclone);
      document.body.appendChild(enl2_shdclone2);
    }
    document.body.appendChild(enl2_brdclone);
    try { enl2_img.blur(); } catch(enl2_err) {}
    enl2_clone.ispic = (enl2_getlongdesc.slice(3,5) != '::') ? 1 : 0;
    setTimeout('enl2_doenlarge2("'+enl2_clone.id+'")' ,50);
  } else {
     enl2_ajaxload(enl2_img);
     enl2_geto('enl2_ldrgif').onclick = function () { enl2_stopload = 1; };
     enl2_geto('enl2_ldrgif').title = enl2_canceltext;
     enl2_visible(enl2_ldr);
     try { enl2_img.blur(); } catch(enl2_err) {}
     setTimeout('enl2_chckready("'+enl2_imgid+'")' ,50);
  }
}

// initiate enlarging
function enl2_doenlarge2(enl2_imgid)
{
  enl2_zcnt+=3;
  enl2_getbrwsxy();
  if (typeof enl2_butact != 'undefined') enl2_btnheight = parseInt(enl2_butact.height);
  document.onselectstart = function () { return false; };
  enl2_img = enl2_geto(enl2_imgid);
  if (enl2_wheelnav) enl2_wheelenable(enl2_img);
  enl2_orig = enl2_geto(enl2_img.orig);
  try { enl2_orig.blur(); } catch(enl2_err) {}
  enl2_noevents(enl2_img);
  enl2_noevents(enl2_orig);
  enl2_fullimg = enl2_orig.getAttribute('longdesc');
  enl2_r = enl2_coord(enl2_orig);
  enl2_img.style.zIndex = enl2_zcnt;
  enl2_img.oldt = enl2_r.top;
  enl2_img.oldl = enl2_r.left;
  if (typeof cpgif_conf_reflection_p == 'number' && enl2_geto(enl2_img.orig).className == "imgflowimg") enl2_img.oldh = parseInt(enl2_r.height / (1+cpgif_conf_reflection_p));
  else enl2_img.oldh = enl2_r.height;
  enl2_img.oldw = enl2_r.width;
  if (enl2_img.oldw+enl2_img.oldl > enl2_brwsx-20) enl2_img.oldl = enl2_brwsx-enl2_img.oldw-20;
  if (enl2_img.ispic) {
    enl2_img.neww = parseInt(enl2_prldimg[enl2_prldcnt].width);
    enl2_img.newh = parseInt(enl2_prldimg[enl2_prldcnt].height);
  }
  else
  {
    enl2_img.neww = eval(enl2_fullimg.split('::')[2]);
    enl2_img.newh = eval(enl2_fullimg.split('::')[3]);
  }
  if (enl2_img.neww > enl2_brwsx-100) {
      enl2_img.newh = Math.round(enl2_img.newh * (enl2_brwsx-100) / enl2_img.neww);
      enl2_img.neww = enl2_brwsx-100;
  }
  if (enl2_img.newh > enl2_brwsy-80)  {
      enl2_img.neww = Math.round(enl2_img.neww * (enl2_brwsy-80) / enl2_img.newh);
      enl2_img.newh = enl2_brwsy-80;
  }
  enl2_img.newl = Math.round(enl2_img.oldl - (enl2_img.neww-enl2_img.oldw)/2);
  enl2_img.newt = Math.round(enl2_img.oldt - (enl2_img.newh-enl2_img.oldh)/2);
  if (!enl2_center)
  {
    if (enl2_img.newl < (50 + enl2_scrollx)) enl2_img.newl = 50+enl2_scrollx;
    if (enl2_img.newt < (40 + enl2_scrolly)) enl2_img.newt = 40+enl2_scrolly;
    if (enl2_img.newl+enl2_img.neww > enl2_brwsx+enl2_scrollx-50) enl2_img.newl = enl2_brwsx+enl2_scrollx-50-enl2_img.neww;
    if (enl2_img.newt+enl2_img.newh > enl2_brwsy+enl2_scrolly-40) enl2_img.newt = enl2_brwsy+enl2_scrolly-40-enl2_img.newh;
  }
  else
  {
    enl2_img.newl = Math.round(enl2_brwsx/2+enl2_scrollx-enl2_img.neww/2);
    enl2_img.newt = Math.round(enl2_brwsy/2+enl2_scrolly-enl2_img.newh/2);
  }
  enl2_img.steps = 1;
  enl2_img.thumbpic = enl2_img.src;
  if (enl2_titlebar) enl2_mktitlebar(enl2_imgid);
  if (!enl2_ani || !enl2_img.ispic ) enl2_donoani(enl2_imgid);
  else if (enl2_ani==1) setTimeout('enl2_dofadein("'+enl2_imgid+'")' ,50);
  else setTimeout('enl2_doglidein("'+enl2_imgid+'")' ,50);
}

// show pic without animation
function enl2_donoani(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_setpos(enl2_img,enl2_img.newl,enl2_img.newt,enl2_img.neww,enl2_img.newh);
  enl2_img.src = enl2_fullimg;
  enl2_img.style.position = 'absolute';
  enl2_visible(enl2_img);
  enl2_mkborder(enl2_imgid);
  if (enl2_titlebar) enl2_showbtn(enl2_imgid);
  enl2_makedraggable(enl2_imgid);
  if (enl2_dark) enl2_darken();
}

// re-enable object for enlarge, room up
function enl2_enable(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_orig = enl2_geto(enl2_img.orig);
  var enl2_makenull=enl2_geto(enl2_orig.id+'swfinner');
  var enl2_getlongdesc = enl2_orig.getAttribute('longdesc');
     if ((enl2_getlongdesc.slice(0,5) != 'swf::') && enl2_isie)
     {
       for (var enl2_i in enl2_makenull) 
       {  
         if (typeof enl2_makenull[enl2_i] == "function") enl2_makenull[enl2_i] = null;
       }
     }
  if (enl2_titlebar) document.body.removeChild(enl2_geto(enl2_imgid+"btns"));
  document.body.removeChild(enl2_geto(enl2_imgid+"brd"));
  if (enl2_shadow) {
    document.body.removeChild(enl2_geto(enl2_imgid+"shd1"));
    document.body.removeChild(enl2_geto(enl2_imgid+"shd2"));
  }
  enl2_orig.isenlarged = 0;
  enl2_orig.onclick = function() { enlarge2(this); };
  enl2_setcur(enl2_orig,enl2_pluscur,'pointer','hand');
  document.body.removeChild(enl2_img);
  enl2_ctlslid(1);
  enl2_inprogress = 0;
  if (enl2_inmax == 1) enlarge2(enl2_orig);
}

// hide pic without animation
function enl2_noaniremove(enl2_imgid)
{
  enl2_hide(enl2_geto(enl2_imgid));
  setTimeout('enl2_enable("'+enl2_imgid+'")' ,10);
}

// initiate shrinking of pic
function enl2_shrink(enl2_imgid)
{
  if (enl2_inprogress) 
  {
    setTimeout('enl2_shrink("'+enl2_imgid+'")',50);
    return false;
  }
  enl2_inprogress = 1;
  enl2_infront = '';
  enl2_ctlslid(0);
  enl2_img = enl2_geto(enl2_imgid);
  enl2_setcur(enl2_img,'','pointer','hand');
  enl2_noevents(enl2_img);
  enl2_orig = enl2_geto(enl2_img.orig);
  enl2_fullimg = enl2_orig.getAttribute('longdesc');
  enl2_visible(enl2_img);
  enl2_delborder(enl2_imgid);
  if (enl2_titlebar) enl2_hidebtn(enl2_imgid);
  if (enl2_dark) enl2_nodark();
  enl2_keepblack = 0;
  enl2_r = enl2_coord(enl2_geto(enl2_img.orig));
  enl2_img.oldt = enl2_r.top;
  enl2_img.oldl = enl2_r.left;
  if (enl2_img.oldw+enl2_img.oldl > enl2_brwsx-20) enl2_img.oldl = enl2_brwsx-enl2_img.oldw-20;
  if (!enl2_ani || !enl2_img.ispic) enl2_noaniremove(enl2_imgid);
  else if (enl2_ani==1) setTimeout('enl2_dofadeout("'+enl2_imgid+'")' ,20);
  else setTimeout('enl2_doglideout("'+enl2_imgid+'")' ,20);
}

enl2_addLoad(enl2_init);

// paint shadow
function enl2_dropshadow(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_shdclone1 = enl2_geto(enl2_imgid+"shd1");
  enl2_shdclone2 = enl2_geto(enl2_imgid+"shd2");
  enl2_tmpw = enl2_img.neww + enl2_shadowsize + enl2_brdsize*2 + 2;
  if (enl2_titlebar && enl2_brdsize < enl2_btnheight+4) 
  {
    enl2_tmph = enl2_img.newh + enl2_shadowsize + enl2_brdsize*2 + 6 + enl2_btnheight - enl2_brdsize;
    enl2_tmpt = enl2_img.newt - enl2_brdsize - 1 - (enl2_btnheight + 4) + enl2_brdsize;
  }
  else
  {
    enl2_tmph = enl2_img.newh + enl2_shadowsize + enl2_brdsize*2 + 2;
    enl2_tmpt = enl2_img.newt - enl2_brdsize - 1;
  }
  enl2_setpos(enl2_shdclone1, enl2_img.newl - enl2_brdsize - 1, enl2_tmpt, enl2_tmpw, enl2_tmph);
  enl2_shdclone1.style.zIndex = enl2_zcnt-2;
  enl2_visible(enl2_shdclone1);
  enl2_setpos(enl2_shdclone2, enl2_img.newl - enl2_brdsize - 2, enl2_tmpt - 1, enl2_tmpw+2, enl2_tmph+2);
  enl2_shdclone2.style.zIndex = enl2_zcnt-2;
  enl2_visible(enl2_shdclone2);
}

// hide shadow
function enl2_delshadow(enl2_imgid)
{
  enl2_shd1 = enl2_geto(enl2_imgid+"shd1");
  enl2_shd2 = enl2_geto(enl2_imgid+"shd2");
  enl2_hide(enl2_shd1);
  enl2_setpos(enl2_shd1,-5000,0);
  enl2_hide(enl2_shd2);
  enl2_setpos(enl2_shd2,-5000,0);
}

// factor for glide
function enl2_calcfact(enl2_facthelp)
{
  var enl2_factor;
  if (enl2_ani==3) enl2_factor = ((-1*Math.cos(enl2_facthelp-0.2))+0.98)*3.5;
  else if (enl2_ani == 4) enl2_factor = (Math.sin(1.5 * Math.PI + enl2_facthelp * Math.PI) + 1)/2;
  else if (enl2_ani == 5) enl2_factor = Math.pow(enl2_facthelp, Math.pow(2,2));
  else enl2_factor = enl2_facthelp;
  return enl2_factor;
}

// glide out
function enl2_doglideout(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_mvcnt = 0;
  enl2_img.steps++;
  if (enl2_img.steps >= enl2_maxstep)
  {
    enl2_visible(enl2_geto(enl2_img.orig));
    enl2_hide(enl2_img);
    enl2_img.steps = 1;
    setTimeout('enl2_enable("'+enl2_imgid+'")',50);
  }
  else
  {
    var enl2_factor = enl2_calcfact((enl2_maxstep-enl2_img.steps)/enl2_maxstep);
    enl2_tmpw = Math.round(enl2_factor * (enl2_img.neww-enl2_img.oldw) + enl2_img.oldw);
    enl2_tmph = Math.round(enl2_factor * (enl2_img.newh-enl2_img.oldh) + enl2_img.oldh);
    enl2_tmpt = Math.round(enl2_img.oldt+(enl2_img.newt-enl2_img.oldt)*enl2_factor);
    enl2_tmpl = Math.round(enl2_img.oldl+(enl2_img.newl-enl2_img.oldl)*enl2_factor);
    if (enl2_tmpw < 0) enl2_tmpw = 0;
    if (enl2_tmph < 0) enl2_tmph = 0;
    enl2_setpos(enl2_img,enl2_tmpl,enl2_tmpt,enl2_tmpw,enl2_tmph);
    if (enl2_opaglide) enl2_setopa(enl2_img, Math.round((enl2_maxstep-enl2_img.steps)/enl2_maxstep*100));
    setTimeout('enl2_doglideout("'+enl2_imgid+'")' ,enl2_speed);
  }
}

// glide in pic
function enl2_doglidein(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_img.steps++;
  if (enl2_img.steps >= enl2_maxstep)
  {
    enl2_setpos(enl2_img,enl2_img.newl,enl2_img.newt,enl2_img.neww,enl2_img.newh);
    enl2_img.steps = 1;
    if (enl2_opaglide) 
    {
      enl2_setopa(enl2_img,100);
      enl2_img.style.filter = '';
    }
    setTimeout('enl2_mkborder("'+enl2_imgid+'")' ,enl2_speed);
    if (enl2_dark) setTimeout('enl2_darken()', enl2_speed*4);
    setTimeout('enl2_makedraggable("'+enl2_imgid+'")' ,enl2_speed*3);
    if (enl2_titlebar) setTimeout('enl2_showbtn("'+enl2_imgid+'")' ,enl2_speed*2);
  }
  else
  {
    if (enl2_img.steps == 2) {
      enl2_img.src = enl2_fullimg;
      enl2_img.style.position = 'absolute';
      if (enl2_opaglide) enl2_setopa(enl2_img,0);
      enl2_visible(enl2_img);
      if (!enl2_opaglide) enl2_hide(enl2_geto(enl2_img.orig));
    }
    var enl2_factor = enl2_calcfact(enl2_img.steps/enl2_maxstep);
    enl2_tmpw = Math.round(enl2_factor * (enl2_img.neww-enl2_img.oldw) + enl2_img.oldw);
    enl2_tmph = Math.round(enl2_factor * (enl2_img.newh-enl2_img.oldh) + enl2_img.oldh);
    enl2_tmpt = Math.round(enl2_img.oldt+(enl2_img.newt-enl2_img.oldt)*enl2_factor);
    enl2_tmpl = Math.round(enl2_img.oldl+(enl2_img.newl-enl2_img.oldl)*enl2_factor);
    if (enl2_tmpw < 0) enl2_tmpw = 0;
    if (enl2_tmph < 0) enl2_tmph = 0;
    enl2_setpos(enl2_img,enl2_tmpl,enl2_tmpt,enl2_tmpw,enl2_tmph);
    if (enl2_opaglide) enl2_setopa(enl2_img, Math.round(enl2_img.steps/enl2_maxstep*100));
    setTimeout('enl2_doglidein("'+enl2_imgid+'")' ,enl2_speed);
  }
}

// fade out
function enl2_dofadeout(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_mvcnt = 0;
  enl2_img.steps++;
  if (enl2_img.steps >= enl2_maxstep)
  {
    enl2_img.steps = 1;
    enl2_hide(enl2_img);
    setTimeout('enl2_enable("'+enl2_imgid+'")',50);
  }
  else 
  {
    enl2_setopa(enl2_img,(1-enl2_img.steps/enl2_maxstep)*100);
    setTimeout('enl2_dofadeout("'+enl2_imgid+'")' ,enl2_speed);    
  }
}

// fade in pic
function enl2_dofadein(enl2_imgid)
{
  enl2_brddiv = enl2_geto(enl2_imgid+"brd");
  enl2_img = enl2_geto(enl2_imgid);
  enl2_img.steps++;
  if (enl2_img.steps==2)
  {
    enl2_setpos(enl2_img,enl2_img.newl,enl2_img.newt,enl2_img.neww,enl2_img.newh);
    enl2_setopa(enl2_img,0);
    enl2_img.src = enl2_fullimg;
    enl2_img.style.position = 'absolute';
    enl2_visible(enl2_img);
  }
  if (enl2_img.steps >= enl2_maxstep)
  {
    enl2_setopa(enl2_img,100);
    enl2_img.style.filter = '';
    enl2_img.steps = 1;
    enl2_mkborder(enl2_imgid);
    if (enl2_titlebar) enl2_showbtn(enl2_imgid);
    setTimeout('enl2_makedraggable("'+enl2_imgid+'")' ,30);
    if (enl2_dark) setTimeout('enl2_darken()', 100);
  }
  else
  {
    enl2_setopa(enl2_img,enl2_img.steps/enl2_maxstep*100);
    setTimeout('enl2_dofadein("'+enl2_imgid+'")' ,enl2_speed);
  }
}


// mouse moved while dragging
function enl2_mousemv(enl2_el)
{
  if (enl2_drgmode && enl2_drgdrop) {
    enl2_tmpl = enl2_nn6 ? enl2_tx + enl2_el.clientX - enl2_x : enl2_tx + event.clientX - enl2_x;
    enl2_tmpt = enl2_nn6 ? enl2_ty + enl2_el.clientY - enl2_y : enl2_ty + event.clientY - enl2_y;
    enl2_setpos(enl2_drgelem,enl2_tmpl,enl2_tmpt);
    if (enl2_titlebar && enl2_brdsize<enl2_btnheight+4) enl2_setpos(enl2_geto(enl2_drgelem.id+"brd"),enl2_tmpl - enl2_brdsize,enl2_tmpt - (enl2_btnheight+4));
    else enl2_setpos(enl2_geto(enl2_drgelem.id+"brd"),enl2_tmpl - enl2_brdsize,enl2_tmpt - enl2_brdsize);
    if (enl2_titlebar) enl2_showbtn(enl2_drgelem.id);
    enl2_mvcnt++;
    if (enl2_mvcnt > 3) enl2_hasmvd = true;
    return false;
  }
}

// start dragging
function enl2_buttonpress(enl2_el)
{
  enl2_drgelem = enl2_nn6 ? enl2_el.target : event.srcElement; var topenl2_el = enl2_nn6 ? "HTML" : "BODY"; enl2_hasmvd = false; while (enl2_drgelem.tagName != topenl2_el && !enl2_drgelem.newh) {
  enl2_drgelem = enl2_nn6 ? enl2_drgelem.parentNode : enl2_drgelem.parentElement; } enl2_drgmode = true; enl2_zcnt+=3;
  var enl2_drgid = enl2_drgelem.id;
  if (enl2_titlebar) enl2_geto(enl2_drgid+'btns').style.zIndex = enl2_zcnt+1;
  enl2_drgelem.style.zIndex = enl2_zcnt; 
  if (enl2_shadow) enl2_delshadow(enl2_drgid);
  enl2_geto(enl2_drgid+"brd").style.zIndex = enl2_zcnt-1;
  enl2_tx = parseInt(enl2_drgelem.style.left+0); enl2_ty = parseInt(enl2_drgelem.style.top+0);
  enl2_x = enl2_nn6 ? enl2_el.clientX : event.clientX; enl2_y = enl2_nn6 ? enl2_el.clientY : event.clientY; enl2_mvcnt = 0; enl2_drgelem.onmousemove=enl2_mousemv; return false;
}

// mouse btn released
function enl2_enddrag()
{
  enl2_noevents(enl2_drgelem);
  enl2_drgelem.newt = parseInt(enl2_drgelem.style.top);
  enl2_drgelem.newl = parseInt(enl2_drgelem.style.left);
  var enl2_drgid = enl2_drgelem.id;
  if (enl2_shadow) enl2_dropshadow(enl2_drgid);
  enl2_drgmode = false;
  if (enl2_hasmvd==true || !enl2_drgelem.ispic) {
    if (typeof enl2_hideselect != 'undefined') enl2_hideselect(0,1);
    enl2_mkborder(enl2_drgid);
    if (enl2_titlebar) enl2_showbtn(enl2_drgid);
    enl2_hasmvd=false;
    setTimeout('enl2_makedraggable("'+enl2_drgid+'")' ,100);
  }
  else setTimeout('enl2_shrink("'+enl2_drgid+'")' ,10);
}

// create a button object
function enl2_makebtn(enl2_id,enl2_offset)
{
  enl2_tempbtn = document.createElement("a");
  enl2_tempbtn.id = enl2_id;
  enl2_setcur(enl2_tempbtn,'','pointer','hand');
  with (enl2_tempbtn.style)
  {
    height = enl2_btnheight+'px';
    width = enl2_btnheight+'px';
    marginRight = '3px';
    backgroundImage = 'url('+enl2_gifpath+enl2_btninact+')';
    backgroundRepeat = 'no-repeat';
    backgroundPosition = enl2_offset+'px 0px';
    display = 'block';
    styleFloat = 'left';
    cssFloat = 'left';
  }
  return enl2_tempbtn;
}

// create title bar with buttons
function enl2_mktitlebar(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_orig = enl2_geto(enl2_img.orig);
  enl2_btns = enl2_mkdiv(enl2_imgid+'btns');
  enl2_btns.style.padding = '2px';
  enl2_maxwidth = parseInt(enl2_img.neww)-enl2_buttonurl.length*(enl2_btnheight+3);
  if (enl2_maxwidth > 100 && enl2_orig.alt != '')
  {
    enl2_title = document.createElement('div');
    with (enl2_title.style)
    {
      position = 'relative';
      styleFloat = 'left';
      cssFloat = 'left';
      textAlign = 'center';
      paddingTop = '0px';
      fontFamily = 'Arial,Helvetica,sans-serif';
      fontSize = '10pt';
      color = (enl2_titletxtcol) ? enl2_titletxtcol : '#444444';
      whiteSpace = 'nowrap';
      fontWeight = 'bold';
    }
    enl2_gettitle = enl2_orig.alt;
    if (!enl2_gettitle) enl2_gettitle='';
    if (enl2_gettitle.length > Math.round(enl2_maxwidth*0.08)) enl2_gettitle = enl2_gettitle.substring(0, Math.round(enl2_maxwidth*0.08)-2)+'...';
    enl2_title.innerHTML = enl2_gettitle;
    enl2_title.style.width = enl2_maxwidth+'px';
    enl2_btns.appendChild(enl2_title);
  }
  var enl2_i = 0;
  // add buttons to title bar
  while (enl2_i < enl2_buttonurl.length) {
    if (enl2_buttonurl[enl2_i] == 'next' && enl2_getnext(enl2_imgid,0) == null) { enl2_i++; continue; }
    else if (enl2_buttonurl[enl2_i] == 'prev' && enl2_getnext(enl2_imgid,1) == null) { enl2_i++; continue; }
    else if (((enl2_buttonurl[enl2_i] == 'max') || (enl2_buttonurl[enl2_i] == 'maxpop')) && (enl2_orig.getAttribute('longdesc').search(/normal_.+/) == -1)) { enl2_i++; continue; }
    else if (!enl2_clone.ispic && (enl2_buttonurl[enl2_i] == 'enl2_bbcode.php?pos=-' || enl2_buttonurl[enl2_i] == 'enl2_hist.php?pid=')) { enl2_i++; continue; }
    enl2_button[enl2_i] = enl2_makebtn(enl2_imgid+enl2_i,enl2_buttonoff[enl2_i]);
    enl2_button[enl2_i].title = enl2_buttontxt[enl2_i];
    enl2_button[enl2_i].whichpic = enl2_imgid;
    enl2_button[enl2_i].ajaxurl = enl2_buttonurl[enl2_i];
    if (enl2_buttonurl[enl2_i].slice(0,5) == 'site:') enl2_button[enl2_i].onclick = function() { enl2_gotosite(this); };
    else
    {
      switch (enl2_buttonurl[enl2_i]) {
        case 'close':
          enl2_button[enl2_i].onclick = function() { enl2_shrink(enl2_imgid); return false; };
          break;
        case 'max':
          enl2_button[enl2_i].onclick = function() { enl2_max(enl2_imgid); };
          break;
        case 'maxpop':
          var enl2_maxmeurl = 'displayimage.php?pid='+enl2_orig.name;
          enl2_button[enl2_i].onclick = function() { window.open(enl2_maxmeurl+'&fullsize=1','Max','scrollbars=yes,toolbar=no,status=no,resizable=yes,width=900,height=650');this.blur;return false; };
          enl2_button[enl2_i].href = enl2_maxmeurl+'&amp;fullsize=1';
          break;
        case 'pic':
          enl2_button[enl2_i].onclick = function() { enl2_btnpicture(enl2_imgid); };
          break;
        case 'prev':
          enl2_button[enl2_i].onclick = function() { enl2_next(enl2_imgid,1); };
          break;
        case 'next':
          enl2_button[enl2_i].onclick = function() { enl2_next(enl2_imgid,0); };
          break;
        default:
          if (typeof enl2_ajax != 'undefined') enl2_button[enl2_i].onclick = function() { enl2_btnajax(this); };
          break;
      }
    }
    enl2_button[enl2_i].onmouseover = function() { enl2_btnmover(this); };
    enl2_button[enl2_i].onmouseout = function() { enl2_btnmout(this); };
    enl2_btns.appendChild(enl2_button[enl2_i]);
    enl2_i++;
  }
  enl2_img.btnw = enl2_btns.offsetWidth;
}

// maximize pic
function enl2_max(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_orig = enl2_geto(enl2_img.orig);
  enl2_orig.setAttribute('longdesc',enl2_orig.getAttribute('longdesc').replace(/normal_/, ''));
  enl2_orig.setAttribute('longDesc',enl2_orig.getAttribute('longdesc').replace(/normal_/, ''));
  enl2_inmax = 1;
  setTimeout('enl2_shrink("'+enl2_imgid+'")' ,10);
}

//  next/prev button (0=next, 1=prev)
function enl2_next(enl2_imgid,enl2_prvnxt)
{
  if (enl2_infront != '')
  {
    enl2_nextPic = enl2_getnext(enl2_imgid,enl2_prvnxt);
    if (enl2_nextPic)
    {
      if (enl2_dark == 2) enl2_keepblack = 1;
      enl2_shrink(enl2_imgid);
      setTimeout('enl2_openthepic("'+enl2_nextPic.id+'")', 50);
    }
  }
}

// pic button
function enl2_btnpicture(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_geto(enl2_imgid+'brd').innerHTML = '';
  enl2_visible(enl2_img);
  enl2_ajaxldrhide();
}

// goto website
function enl2_gotosite(enl2_obj)
{
  enl2_img = enl2_geto(enl2_obj.whichpic);
  enl2_orig = enl2_geto(enl2_img.orig);
  enl2_imgid = enl2_img.id;
  enl2_ajaxload(enl2_img);
  enl2_geturl = enl2_obj.ajaxurl.slice(5);
  if (enl2_orig.getAttribute('name')) enl2_geturl += enl2_orig.getAttribute('name');
  window.location = enl2_geturl.replace(/pid=/, 'pos=-');
}

// mouse over for buttons
function enl2_btnmover(enl2_obj)
{
  enl2_obj.style.backgroundImage = 'url('+enl2_gifpath+enl2_btnact+')';
}

// mouse out for buttons
function enl2_btnmout(enl2_obj)
{
  enl2_obj.style.backgroundImage = 'url('+enl2_gifpath+enl2_btninact+')';
}

// show titlebar
function enl2_showbtn(enl2_imgid)
{
  enl2_btns = enl2_geto(enl2_imgid+'btns');
  enl2_img = enl2_geto(enl2_imgid);
  enl2_tmpl = parseInt(enl2_img.style.left)+enl2_img.neww-enl2_img.btnw+5;
  enl2_tmpt = (enl2_titlebar && enl2_brdsize < enl2_btnheight+4) ? parseInt(enl2_img.style.top)-(enl2_btnheight+4) : parseInt(enl2_img.style.top)-enl2_brdsize;
  enl2_setpos(enl2_btns,enl2_tmpl,enl2_tmpt);
  enl2_btns.style.zIndex = enl2_zcnt+1;
  enl2_visible(enl2_btns);
}

// hide titlebar
function enl2_hidebtn(enl2_imgid)
{
  enl2_btns = enl2_geto(enl2_imgid+'btns');
  enl2_hide(enl2_btns);
  enl2_setpos(enl2_btns,-5000,0);
}

// AJAX button
function enl2_btnajax(enl2_obj)
{
  enl2_img = enl2_geto(enl2_obj.whichpic);
  enl2_orig = enl2_geto(enl2_img.orig);
  enl2_imgid = enl2_img.id;
  enl2_geturl = enl2_obj.ajaxurl;
  if (enl2_orig.getAttribute('name')) enl2_geturl += enl2_orig.getAttribute('name');
  enl2_geturl += (enl2_geturl.indexOf("?") <0) ? "?enl2_img="+enl2_imgid : "&enl2_img="+enl2_imgid;
  enl2_ajax (enl2_img,enl2_geturl);
}

// load AJAX content and show in border div
function enl2_ajax(enl2_img,enl2_url)
{
  enl2_brdm = enl2_geto(enl2_img.id+'brd');
  enl2_brdm.innerHTML = '';
  enl2_ajaxload(enl2_brdm);
  enl2_hide(enl2_img);
  var enl2_randomizenumber = Math.round(9999*Math.random());
  var enl2_randomizeit = (enl2_url.indexOf("?") <0) ? "?enl2_rndit="+enl2_randomizenumber : "&enl2_rndit="+enl2_randomizenumber;
  enl2_geturl += (enl2_geturl.indexOf("?") <0) ? "?enl2_img="+enl2_imgid : "&enl2_img="+enl2_imgid;

  try
  {
    enl2_request.open('GET', enl2_url+enl2_randomizeit, true);
    enl2_request.onreadystatechange = function()
    {
      if (enl2_request.readyState == 4) {
        enl2_ajaxldrhide();
        enl2_answer = enl2_request.responseText;
        enl2_divh = enl2_img.newh-2;
        enl2_divw = enl2_img.neww-2;
        var enl2_myajaxcol = (enl2_ajaxcolor) ? enl2_ajaxcolor : '#d0d0d0';
        enl2_tmphtml = '<div style="width:'+enl2_divw+'px;height:'+enl2_divh+'px;overflow:auto;border-color:#666677;border-width:1px;border-style:solid;background-color:'+enl2_myajaxcol+';margin-left:'+enl2_brdsize+'px;margin-bottom:'+enl2_brdsize+'px;margin-right:'+enl2_brdsize+'px;margin-top:';
        enl2_tmphtml += (enl2_brdsize < enl2_btnheight+4) ? eval(enl2_btnheight+4) : enl2_brdsize;
        enl2_tmphtml += 'px;">'+enl2_answer+'</div>';
        enl2_geto(enl2_imgid+'brd').innerHTML = enl2_tmphtml;
        }
    };
    enl2_request.send(null);
  }
  catch(enl2_err)
  {
    enl2_ajaxldrhide();
    enl2_geto(enl2_imgid+'brd').innerHTML = "<center><br/><br/><p style='font-size:12px;'>AJAX did not work";
  }
}

// follow AJAX link
function enl2_ajaxfollow(enl2_obj)
{
  enl2_link = enl2_obj.name;
  enl2_imgid = enl2_link.split("enl2_img=")[1];
  if (enl2_imgid.indexOf("&")) enl2_imgid = enl2_imgid.split("&")[0];
  enl2_img = enl2_geto(enl2_imgid);
  enl2_ajax(enl2_img,enl2_link);
}

// prep AJAX request
function enl2_ajaxprepare()
{
    enl2_request = false;
    if (window.XMLHttpRequest) {
      enl2_request = new XMLHttpRequest();
      if (enl2_usecounter) enl2_request2 = new XMLHttpRequest();
    }
    else if (enl2_isie)
    {
      try { enl2_request = new ActiveXObject("Msxml2.XMLHTTP");
            if (enl2_usecounter) enl2_request2 = new ActiveXObject("Msxml2.XMLHTTP");
         }
      catch (enl2_err) { try { enl2_request = new ActiveXObject("Microsoft.XMLHTTP"); 
                              if (enl2_usecounter) enl2_request2 = new ActiveXObject("Microsoft.XMLHTTP");
                            } catch (enl2_err) {} }
    }
}

// increase counter
function enl2_count(enl2_imgid)
{
  enl2_img = enl2_geto(enl2_imgid);
  enl2_geturl = enl2_counterurl;
  if (enl2_img.getAttribute('name')) enl2_geturl += enl2_img.getAttribute('name');
  try {
    enl2_request2.open('GET', enl2_geturl, true);
    enl2_request2.send(null);
  } catch(enl2_err) {}
}

// darken background
function enl2_darken(enl2_flag)
{
  enl2_drk = enl2_geto('enl2_drk');
  if (enl2_darkened == 0)
  {
    enl2_setopa(enl2_drk,0);
    enl2_darkened=1;
    enl2_visible(enl2_drk);
    enl2_resize();
    if (enl2_flag) enl2_fadedark(enl2_darksteps-1);
    else enl2_fadedark(0);
  }
}

function enl2_fadedark(enl2_darkenstep)
{
  if (enl2_infront == '') enl2_nodark;
  else
    {
      enl2_drk = enl2_geto('enl2_drk');
      enl2_darkenstep++;
      enl2_setopa(enl2_drk,enl2_darkprct/enl2_darksteps*enl2_darkenstep);
      if (enl2_darkenstep < enl2_darksteps) setTimeout('enl2_fadedark('+enl2_darkenstep+')' ,4);
    }
}

// end darkening
function enl2_nodark()
{
  if (!enl2_keepblack)
  {
    enl2_drk = enl2_geto('enl2_drk');
    enl2_hide(enl2_drk);
    enl2_setpos(enl2_drk,-5000,0,0,0);
    enl2_darkened=0;
  }
}

// add event on window resize
function enl2_addResize(enl2_resfunc)
{
  var enl2_oldonresize = window.onresize;
  if (typeof window.onresize != 'function') window.onresize = enl2_resfunc;
  else
  {
    window.onresize = function()
    {
      enl2_resfunc();
      if (enl2_oldonresize) { setTimeout('"+enl2_oldonresize+"',25); }
    };
  }
}

// window resize
function enl2_resize()
{
  if (enl2_darkened)
  {
    enl2_drk = enl2_geto('enl2_drk');
    enl2_setpos(enl2_drk,0,0,0,0);
    enl2_getbrwsxy();
    if (window.innerHeight && window.scrollMaxY) enl2_darkh = (window.innerHeight + window.scrollMaxY > enl2_brwsy) ? window.innerHeight + window.scrollMaxY : enl2_brwsy;
    else enl2_darkh = (document.body.scrollHeight > document.body.offsetHeight) ? document.body.scrollHeight : document.body.offsetHeight;
    enl2_darkh = (enl2_brwsy > enl2_darkh) ? enl2_brwsy : enl2_darkh;
    enl2_setpos(enl2_drk,0,0,document.body.scrollWidth,enl2_darkh);
  }
}

// create darken div
function enl2_darkenprepare()
{
  enl2_drk = enl2_mkdiv('enl2_drk');
  enl2_drk.style.backgroundColor = 'black';
  enl2_drk.style.zIndex = 9670;
  enl2_addResize(enl2_resize);
  if (enl2_wheelnav) enl2_wheelenable(enl2_drk);
}

// check if flash plugin is installed
function enl2_checkflash()
{
  var enl2_checkflash, enl2_flashthere=0;
  try { enl2_checkflash = new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6"); enl2_flashthere = 1; } catch(enl2_err){}
  try { enl2_checkflash = navigator.plugins["Shockwave Flash"]; if(enl2_checkflash) enl2_flashthere = 1; } catch(enl2_err) {}
  return enl2_flashthere;
}

// create flash div as enl2_clone
function enl2_swfdiv(enl2_img,enl2_getlongdesc)
{
  enl2_clone = enl2_mkdiv(enl2_img.id+'clone');
  enl2_clone.style.overflow = 'hidden';
  if (enl2_getlongdesc.slice(0,5) == 'swf::')
  {
    var enl2_swfsrc = (enl2_isie) ? ' id="' + enl2_img.id+'swfinner" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" data="' + enl2_getlongdesc.split('::')[1] + '"' : '';
    enl2_swfsrc += ' width="' + enl2_getlongdesc.split('::')[2] + '" height="' + enl2_getlongdesc.split('::')[3] + '"><param name="movie" value="' + enl2_getlongdesc.split('::')[1] + '"><param name="allowFullScreen" value="true"></param><param name="wmode" value="transparent"></param>';
    enl2_swfsrc += '<embed id="' + enl2_img.id+'swfinneremb' + '" src="' + enl2_getlongdesc.split('::')[1] + '" type="application/x-shockwave-flash" width="' + enl2_getlongdesc.split('::')[2] + '" allowFullScreen="true" wmode="transparent" height="' + enl2_getlongdesc.split('::')[3] + '"></embed></object>';
  }
  else if (enl2_getlongdesc.slice(0,5) == 'flv::')
  {
    var enl2_swfsrc = (enl2_isie)? ' id="' + enl2_img.id+'swfinner" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" data="'+enl2_gifpath+'flvPlayer.swf"' : '';
    enl2_swfsrc += ' width="' + enl2_getlongdesc.split('::')[2] + '" height="' + enl2_getlongdesc.split('::')[3] + '"><param name="movie" value="'+enl2_gifpath+'flvPlayer.swf"></param><param name="allowFullScreen" value="true"></param><param name="FlashVars" value="flvPath='+enl2_getlongdesc.split('::')[1]+'&flvTitle=FLV Video"></param>';
    enl2_swfsrc += '<embed id="' + enl2_img.id+'swfinneremb' + '" src="'+enl2_gifpath+'flvPlayer.swf" type="application/x-shockwave-flash" width="' + enl2_getlongdesc.split('::')[2] + '" allowfullscreen="true" FlashVars="flvPath='+enl2_getlongdesc.split('::')[1]+'&flvTitle=FLV Video" height="' + enl2_getlongdesc.split('::')[3] + '"></embed></object>';
  }
  else
  {
    var enl2_swfsrc = (enl2_isie)? ' id="' + enl2_img.id+'swfinner" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" data="'+enl2_gifpath+'player.swf?movie='+enl2_getlongdesc.split('::')[1]+'&autoload=on&fgcolor=0xFF0000&bgcolor=0x000000&volume=70&autorewind=0"' : '';
    enl2_swfsrc += ' width="' + enl2_getlongdesc.split('::')[2] + '" height="' + enl2_getlongdesc.split('::')[3] + '"><param name="movie" value="'+enl2_gifpath+'player.swf?movie='+enl2_getlongdesc.split('::')[1]+'&autoload=on&fgcolor=0xFF0000&bgcolor=0x000000&volume=70&autorewind=0"></param><param name="allowFullScreen" value="true"></param>';
    enl2_swfsrc += '<embed id="' + enl2_img.id+'swfinneremb' + '" src="'+enl2_gifpath+'player.swf?movie='+enl2_getlongdesc.split('::')[1]+'&autoload=on&fgcolor=0xFF0000&bgcolor=0x000000&volume=70&autorewind=0" type="application/x-shockwave-flash" width="' + enl2_getlongdesc.split('::')[2] + '" allowfullscreen="true" height="' + enl2_getlongdesc.split('::')[3] + '"></embed></object>';
  }
  // internet explorer 
  if (enl2_isie)
  {
    enl2_swfinnerdiv = document.createElement("div");
    enl2_swfinnerdiv.id = enl2_img.id+'swfinner';
    enl2_clone.appendChild(enl2_swfinnerdiv);
    enl2_swfinnerdiv.outerHTML = '<object style="margin:0px;" '+enl2_swfsrc;
  }
  // other browsers
  else
  {
    enl2_clone.innerHTML = '<div style="margin:0px;overflow:hidden;"><object '+enl2_swfsrc+'</div>';
  }
  return enl2_clone;
}

// create iframe div as enl2_clone
function enl2_ifrdiv(enl2_img,enl2_getlongdesc)
{
  enl2_clone = enl2_mkdiv(enl2_img.id+'clone');
  enl2_clone.style.overflow = 'hidden';
  enl2_ifr = document.createElement('iframe');
  enl2_ifr.src = enl2_getlongdesc.split('::')[1];
  enl2_ifr.style.margin = '0px';
  enl2_ifr.style.width = enl2_getlongdesc.split('::')[2]+'px';
  enl2_ifr.style.height = enl2_getlongdesc.split('::')[3]+'px';
  enl2_ifr.style.border = 'none';
  enl2_ifr.style.frameborder = '0';
  enl2_clone.appendChild(enl2_ifr);
  return enl2_clone;
}

// create divx webplayer div as enl2_clone
function enl2_dvxdiv(enl2_img,enl2_getlongdesc)
{
  enl2_clone = enl2_mkdiv(enl2_img.id+'clone');
  enl2_clone.style.overflow = 'hidden';
  enl2_dvxhtml = '<object classid="clsid:67DABFBF-D0AB-41fa-9C46-CC0F21721616" id="' + enl2_img.id+'divxinner" width="'+enl2_getlongdesc.split('::')[2]+'" height="'+enl2_getlongdesc.split('::')[3]+'" codebase="http://go.divx.com/plugin/DivXBrowserPlugin.cab">';
  enl2_dvxhtml += '<param name="src" value="'+enl2_getlongdesc.split('::')[1]+'"/><param name="loop" value="true"/><param name="bannerEnabled" value="false"/><embed type="video/divx" src="'+enl2_getlongdesc.split('::')[1]+'" width="'+enl2_getlongdesc.split('::')[2]+'" loop="true" bannerEnabled="false" height="'+enl2_getlongdesc.split('::')[3]+'" pluginspage="http://go.divx.com/plugin/download/"></embed></object>';
  enl2_clone.innerHTML = enl2_dvxhtml;
  return enl2_clone;
}

// wheel navigation
function enl2_wheel(enl2_wheelevent)
{
  var enl2_wheeldelta = 0;
  if (!enl2_wheelevent) enl2_wheelevent = window.event;
  if (enl2_wheelevent.wheelDelta) enl2_wheeldelta = enl2_wheelevent.wheelDelta;
  else if (enl2_wheelevent.detail) enl2_wheeldelta = -enl2_wheelevent.detail;
  if (enl2_infront != '')
  {
    if (enl2_wheeldelta > 0) enl2_next(enl2_infront,0);
    if (enl2_wheeldelta < 0) enl2_next(enl2_infront,1);
  }
  if (enl2_wheelevent.preventDefault) enl2_wheelevent.preventDefault();
  enl2_wheelevent.returnValue = false;
  return false;
}

function enl2_wheelenable(enl2_obj)
{
  if (window.addEventListener) enl2_obj.addEventListener('DOMMouseScroll', enl2_wheel, false);
  else enl2_obj.onmousewheel = enl2_wheel;
}

// key listening function
function enl2_keynavi(enl2_keyevent) {
  if (enl2_infront != '')
  {
    enl2_keyevent = enl2_keyevent || window.event;
    enl2_key = enl2_keyevent.keyCode;
    switch (enl2_key)
    {
      case 39:
        enl2_next(enl2_infront,0);
        break;
      case 37:
        enl2_next(enl2_infront,1);
        break;
      case 27:
        enl2_shrink(enl2_infront);
        break;
    }
  }
}

// hide select elements IE <=6
function enl2_hideselect(enl2_obj,enl2_flag)
{
  if (enl2_ie6)
  {
    if (!enl2_flag)
    {
      enl2_objpos = enl2_coord(enl2_obj);
      enl2_objpos.bottom = enl2_objpos.top + enl2_objpos.height;
      enl2_objpos.right = enl2_objpos.left + enl2_objpos.width;
    }
    enl2_selectlist = document.getElementsByTagName('select');
    for (var enl2_i=0; enl2_i<enl2_selectlist.length; enl2_i++)
    {
      if (!enl2_flag) {
        enl2_selectpos = enl2_coord(enl2_selectlist[enl2_i]);
        enl2_selectpos.bottom = enl2_selectpos.top + enl2_selectpos.height;
        enl2_selectpos.right = enl2_selectpos.left + enl2_selectpos.width;
        if ((enl2_selectpos.top >= enl2_objpos.top && enl2_selectpos.top <= enl2_objpos.bottom && enl2_selectpos.left >= enl2_objpos.left && enl2_selectpos.left <= enl2_objpos.right) || (enl2_selectpos.bottom >= enl2_objpos.top && enl2_selectpos.bottom <= enl2_objpos.bottom && enl2_selectpos.right >= enl2_objpos.left && enl2_selectpos.right <= enl2_objpos.right))
        { 
          enl2_hide(enl2_selectlist[enl2_i]);
        }
      } 
      else 
      {
        enl2_visible(enl2_selectlist[enl2_i]);
      }
    }
  }
}

