var bReady      = false;
window.onbeforeunload=CheckBasket;
var iCheckBasket = 1;
var strTheme    = '';
var strMainMenu = '';
var strSubMenu  = 'SubMenuPHOTOS';
var strContent  = '';
var iCurLang    = 1;
var iCurMenuPHOTO  = 0;
var iCurMenuINFO  = 3;
var strCurImgID = '';
var strLastImgID = '';
var strCurImgText = '';
var strLastImgText = '';
var strInfo     = 'Info' + iCurMenuINFO;
var nCatImages = new Array (20,23,11,20,0);
var CurCatImg = new Array (0,0,0,0,-1);
CatID = new Array ('1','4','2','3');
CatNames = new Array ('Sabine (1)','Sabine (2)','The Gomez-Brito family','Tokyo');
CatText =  new MakeArray(4); 
CatText[0] = '<p>Introduction: Sobol originally set out to take photographs in Tiniteqilaaq. Even the name of the place implies the ends of the earth: The strait that runs dry at low tide. After five weeks he had had enough. He took his black and white photographs and headed home - albeit with the sense that his village portrait was distorted. Four months later he returned to face the small society that had far more layers and levels of meaning than he had seen at first.   And that is when Greenland captures him. The mountain landscape lies transparent and luminous, and the frozen waters lure him. He makes friends among the hunters, who take it upon themselves to train him. When this new existence suddenly starts to function - despite the arctic cold he can provide himself with food - the pampered motherland to the south shrinks into the pallid past and he resolves to test his strength against East Greenland\'s basic, existential challenges. But behind this decision lies his true motivation: Falling in love with Sabine.  </p>'; 
CatText[1] = '<p>Introduction: <br />Sobol originally set out to take photographs in Tiniteqilaaq. Eventhe name of the place implies the ends of the earth: The strait thatruns dry at low tide. After five weeks he had had enough. He took hisblack and white photographs and headed home - albeit with the sensethat his village portrait was distorted. Four months later he returnedto face the small society that had far more layers and levels ofmeaning than he had seen at first. And that is when Greenland captureshim. The mountain landscape lies transparent and luminous, and thefrozen waters lure him. He makes friends among the hunters, who take itupon themselves to train him. When this new existence suddenly startsto function - despite the arctic cold he can provide himself with food- the pampered motherland to the south shrinks into the pallid past andhe resolves to test his strength against East Greenland\'s basic,existential challenges. But behind this decision lies his truemotivation: Falling in love with Sabine. </p> '; 
CatText[2] = '<p>Indigenous Family, Guatemala. <br />By Jacob Aue Sobol  <br />The Gomez Brito family lives in a remote area of the mountains in Guatemala near the village of Nebaj. Nebaj is part of the Ixil-triangle - an area of three towns that maintains one of the strongest indigenous cultures in Guatemala. Even though the number of natives makes out the majority of the population in the country, they are still discriminated in many ways. Most of them live in poverty and many work on farms earning a wage of 2-3 dollars a day. <br /><br />In the late 1970s and 1980s, the Ixil-region was engulfed in a civil war, killing and displacing thousands of Ixil Mayans. During the war the portrayed family lost their youngest child, who died of hunger and disease when hiding in the surrounding mountains. Today, in the very same mountains, the mother Juanita and the father Andrés live with their nine children. Unlike many other families from this area, they have succeeded in keeping the family together by working hard on their own pieces of land. From early morning to sunset the daily routine is to collect fruits and berries, cultivate the land - which mainly consist of corn and beans - and breed the animals.   Even though the chance of a change in their life is most unlikely, all the children have different dreams for the future. Maria, 7, wants to continue school and get an education, Faustino, 18, is eager to find a way to enter the USA, while David, 6, claims that his wish is to take over the family\'s land, when his father retires.<br /> </p>'; 
CatText[3] = ' <p>Now living in Tokyo sometimes I feel my ability to see and experience is proportional with how difficult accessible my objects are. I have to break through my own walls and prejudices to reach the core of what I think I am looking for. If I exceed the limit of the people I photograph it is not to hurt or humiliate them. It is more an unplanned almost methodical necessity, where the purpose is to show the limits of my own abilities. My ambition is not only to challenge myself and my view on life, but also that of others. And to challenge what I feel photography can be. I want to unfold a private universe and involve the viewer in other peoples inner lives.<br /> </p>'; 
InfoID = new Array ('1','2','3','profile');
InfoNames = new Array ('Sabine','Sundet der løber tørt ved lavvande','CV','Profil');
var nImagesLoaded = 0; 
var nImagesTotal  = 74; 
ImageSource =  new MakeArray(4); 
ImageSource[0] = new Array('Sab01.jpg','Sab02.jpg','Sab03.jpg','Sab04.jpg','Sab05.jpg','Sab06.jpg','Sab07.jpg','Sab08.jpg','Sab09.jpg','Sab10.jpg','Sab11.jpg','Sab12.jpg','Sab13.jpg','Sab14.jpg','Sab15.jpg','Sab16.jpg','Sab17.jpg','Sab18.jpg','Sab19.jpg','Sab20.jpg','');
ImageSource[1] = new Array('Sab21.jpg','Sab22.jpg','Sab23.jpg','Sab24.jpg','Sab25.jpg','Sab26.jpg','Sab27.jpg','Sab28.jpg','Sab29.jpg','Sab30.jpg','Sab31.jpg','Sab32.jpg','Sab33.jpg','Sab34.jpg','Sab35.jpg','Sab36.jpg','Sab37.jpg','Sab38.jpg','Sab39.jpg','Sab40.jpg','Sab41.jpg','Sab42.jpg','Sab43.jpg','');
ImageSource[2] = new Array('01.jpg','03.jpg','02.jpg','04.jpg','05.jpg','06.jpg','07.jpg','08.jpg','09.jpg','10.jpg','11.jpg','');
ImageSource[3] = new Array('Japan01.jpg','Japan02.jpg','Japan03.jpg','Japan04.jpg','Japan05.jpg','Japan06.jpg','japan07.jpg','Japan08.jpg','Japan09.jpg','Japan10.jpg','Japan11.jpg','Japan12.jpg','Japan13.jpg','Japan14.jpg','Japan15.jpg','Japan16.jpg','Japan17.jpg','Japan18.jpg','Japan19.jpg','Japan20.jpg','');
ImageThumbSource =  new MakeArray(4); 
ImageThumbSource[0] = new Array('Sab01T.jpg','Sab02T.jpg','Sab03T.jpg','Sab04T.jpg','Sab05T.jpg','Sab06T.jpg','Sab07T.jpg','Sab08T.jpg','Sab09T.jpg','Sab10T.jpg','Sab11T.jpg','Sab12T.jpg','Sab13T.jpg','Sab14T.jpg','Sab15T.jpg','Sab16T.jpg','Sab17T.jpg','Sab18T.jpg','Sab19T.jpg','Sab20T.jpg','');
ImageThumbSource[1] = new Array('Sab21T.jpg','Sab22T.jpg','Sab23T.jpg','Sab24T.jpg','Sab25T.jpg','Sab26T.jpg','Sab27T.jpg','Sab28T.jpg','Sab29T.jpg','Sab30T.jpg','Sab31T.jpg','Sab32T.jpg','Sab33T.jpg','Sab34T.jpg','Sab35T.jpg','Sab36T.jpg','Sab37T.jpg','Sab38T.jpg','Sab39T.jpg','Sab40T.jpg','Sab41T.jpg','Sab42T.jpg','Sab43T.jpg','');
ImageThumbSource[2] = new Array('01T.jpg','03T.jpg','02T.jpg','04T.jpg','05T.jpg','06T.jpg','07T.jpg','08T.jpg','09T.jpg','10T.jpg','11T.jpg','');
ImageThumbSource[3] = new Array('Japan01T.jpg','Japan02T.jpg','Japan03T.jpg','Japan04T.jpg','Japan05T.jpg','Japan06T.jpg','japan07T.jpg','Japan08T.jpg','Japan09T.jpg','Japan10T.jpg','Japan11T.jpg','Japan12T.jpg','Japan13T.jpg','Japan14T.jpg','Japan15T.jpg','Japan16T.jpg','Japan17T.jpg','Japan18T.jpg','Japan19T.jpg','Japan20T.jpg','');
ImageRef =  new MakeArray(4); 
ImageRef[0] = new Array('Sab01','Sab02','Sab03','Sab04','Sab05','Sab06','Sab07','Sab08','Sab09','Sab10','Sab11','Sab12','Sab13','Sab14','Sab15','Sab16','Sab17','Sab18','Sab19','Sab20','');
ImageRef[1] = new Array('Sab21','Sab22','Sab23','Sab24','Sab25','Sab26','Sab27','Sab28','Sab29','Sab30','Sab31','Sab32','Sab33','Sab34','Sab35','Sab36','Sab37','Sab38','Sab39','Sab40','Sab41','Sab42','Sab43','');
ImageRef[2] = new Array('01','03','02','04','05','06','07','08','09','10','11','');
ImageRef[3] = new Array('Japan01','Japan02','Japan03','Japan04','Japan05','Japan06','japan07','Japan08','Japan09','Japan10','Japan11','Japan12','Japan13','Japan14','Japan15','Japan16','Japan17','Japan18','Japan19','Japan20','');
ImageText =  new MakeArray(4); 
ImageText[0] = new Array('','','','','','','','','','','','','','','','','','','','','');
ImageText[1] = new Array('','','','','','','','','','','','','','','','','','','','','','','','');
ImageText[2] = new Array('','','','','','','','','','','','');
ImageText[3] = new Array('','','','','','','','','','','','','','','','','','','','','');
var iOrderMethod = 1; 
 
var nMaxBasketItems = 9; 
var nBasketItems    = 0; 
var iBasketIndex    = -1; 
BasketImgID  = new MakeArray(nMaxBasketItems); 
BasketImgSrc  = new MakeArray(nMaxBasketItems); 
BasketImgRef  = new MakeArray(nMaxBasketItems); 
BasketImgIdx  = new MakeArray(nMaxBasketItems); 
var strBuyImgDir = 'user_JaSo'; 
var strBuyPhotographer = 'Jacob Aue Sobol';  
var strBuyCustomName = ''; 
var strBuyCustomAddr = ''; 
var strBuyCustomMail = ''; 
var strBuyCustomTele = ''; 
var strBuyCustomNote = ''; 
var strBuyOrderDir = 'user_JaSo'; 
var strBuyOrderMail = 'aue.sobol@gmail.com';     
var strBuyOrderLink = '';     
var strBuyOrderLine = ''; 

function SetReady () {
  bReady = true; 
  HideSection ('ProgressBarArea'); 
  HideSection ('IntroImageArea'); 
  ShowSection ('ThumbScrollArea'); 
  ShowSection ('ThumbArea'); 
  ShowSection ('Cat0'); 
  ShowSection ('SubMenuArea'); 
  ShowSection ('SubMenuPHOTOS'); 
  ShowSection ('MenuScrollArea'); 
  ShowSection ('ImageArea'); 
  ShowSection ('ImageTextArea'); 
  ShowSection ('ImageText'); 
  ShowSection ('ImageTextScrollArea'); 
  ShowSection ('InfoArea'); 
  ShowSection ('InfoTextArea'); 
  ShowSection (strInfo); 
  ShowSection ('InfoTextScrollArea'); 
  var wndo = new dw_scrollObj ('ThumbArea', 'Cat0'); 
  wndo.setUpScrollbar ('ThumbScrollDragbar', 'ThumbScrollTrack', 'h', 1, 1); 
  wndo = new dw_scrollObj ('SubMenuArea', 'SubMenuPHOTOS'); 
  wndo.setUpScrollbar ('MenuScrollDragbar', 'MenuScrollTrack', 'v', 1, 1); 
  wndo = new dw_scrollObj ('ImageTextArea', 'ImageText'); 
  wndo.setUpScrollbar ('ImageTextScrollDragbar', 'ImageTextScrollTrack', 'v', 1, 1); 
  wndo = new dw_scrollObj ('InfoTextArea', 'Info0'); 
  wndo.setUpScrollbar ('InfoTextScrollDragbar', 'InfoTextScrollTrack', 'v', 1, 1); 
  PerformMenu ('START'); 
  var strUrl = document.URL; 
  var iArticle = -1; 
  var iTheme   = -1; 
  var ipos = strUrl.indexOf('?'); 
  var nc   = strUrl.length; 
  while (ipos > 0 && ipos < nc) { 
    var jpos = strUrl.indexOf('=', ipos); 
    if (jpos > 0) { 
      var kpos = strUrl.indexOf('&', jpos); 
      if (kpos <= 0) kpos = nc; 
      var strID  = strUrl.substring (ipos+1, jpos); 
      var strVal = strUrl.substring (jpos+1, kpos); 
      strID  = strID.toLowerCase(); 
      strVal = strVal.toLowerCase(); 
      if (strID == 'article') { 
        for (i = 0; i < InfoID.length; i++) { 
          if (strVal == InfoID[i]) iArticle = i; 
        } 
      } 
      if (strID == 'theme') { 
        for (i = 0; i < CatID.length; i++) { 
          if (strVal == CatID[i]) iTheme = i; 
        } 
      } 
      ipos = kpos; 
    } 
    else ipos = -1; 
  } 
  if (iTheme >= 0) { 
    iCurMenuPHOTO = iTheme; 
     PerformMenu ('PHOTOS'); 
  } 
  else if (iArticle >= 0) { 
    iCurMenuINFO = iArticle; 
     PerformMenu ('INFO'); 
  } 
  else {
    PerformMenu ('PHOTOS'); 
  } 
} 

function CheckBasket() { 
  if (iCheckBasket > 0 && nBasketItems > 0) { 
    var strMess = 'Du har ' + nBasketItems + ' fotos i din bestillingskurv'; 
    return strMess; 
  } 
  iCheckBasket = 1; 
} 

function UnCheckBasket() { 
  iCheckBasket = 0; 
} 

function SelectedText() { 
  document.selection.empty();
} 

function PerformMenu (id) {
  if (!bReady) return; 
  if (id == 'START') {  
    strMainMenu = id; 
    HideSection ('IntroImageArea'); 
    HideSection ('IDArea'); 
    ShowSection ('FuncArea'); 
    ShowSection ('MenuArea'); 
    ShowSection ('SubMenuArea'); 
    ShowSection ('ImageArea'); 
    ShowSection ('ImageTextArea'); 
    ShowSection ('ThumbArea'); 
    for (var i = 0; i < nMaxBasketItems; i++) { 
      strName = 'BasketImage' + i; 
      BasketImgIdx[i] = FindImage (strName); 
    } 
    ShowImage (0,0,0); 
    strCurImgID = '0_0'; 
  } 
  else if (id == 'PHOTOS') { 
    strMainMenu = id; 
    ShowSection ('SubMenuArea'); 
    ShowSubMenu ('PHOTOS'); 
    HideSection ('InfoBannerArea'); 
    MarkMenu   ('PHOTOS'); 
    UnmarkMenu ('INFO'  ); 
    HideSection ('InfoArea'); 
    ShowSection ('ThumbArea'); 
    ShowSection ('ImageArea'); 
    ShowSection ('ImageTextArea'); 
    ShowSubMenuPHOTO (iCurMenuPHOTO); 
    UnmarkFunc ('FULLSIZE'); 
    ShowOrder(); 
  } 
  else if (id == 'INFO') {  
    strMainMenu = id; 
    ShowSection ('SubMenuArea'); 
    ShowSubMenu ('INFO'); 
    ShowSection ('InfoBannerArea'); 
    MarkMenu   ('INFO'  ); 
    UnmarkMenu ('PHOTOS'); 
    HideSection ('BasketStrip'); 
    HideSection ('ThumbArea'); 
    HideSection ('ImageArea'); 
    HideSection ('ImageTextArea'); 
    ShowSection ('InfoArea'); 
    ShowSubMenuINFO (iCurMenuINFO); 
    DimMenu('FULLSIZE'); 
    ShowOrder(); 
  } 
  else if (id == 'FULLSIZE') { 
    urchinTracker('/Gallery/Fullsize');
    NewImageWindow(); 
  } 
  else if (id == 'PORTAL') { 
    document.location = '../Index.html'; 
  } 
  else if (id == 'CATALOG') { 
    urchinTracker('/Gallery/GalleryCatalog');
    win = window.open ("Catalog_JaSo_Native.pdf", "", "menubar=1,toolbar=0,resizable=1,scrollbars=1"); 
  } 
  else if (id == 'PRINT') { 
    PrintPage ();
  } 
  else if (id == 'ADDORDER') { 
    if (strMainMenu == 'PHOTOS') { 
      AddCurImageToBasket(); 
      ShowOrder(); 
    } 
  } 
  else if (id == 'REMORDER') { 
    if (strMainMenu == 'PHOTOS') { 
      RemoveFromBasket(); 
      ShowOrder(); 
    } 
  } 
  else if (id == 'CLRORDER') { 
    if (strMainMenu == 'PHOTOS') { 
      ClearBasket(); 
      ShowOrder(); 
    } 
  } 
  else if (id == 'DOORDER') { 
    urchinTracker('/Gallery/Order');
    if (nBasketItems > 0) {
      BuyBasketPopup(); 
    } 
  } 
} 

function ShowOrderLink () { 
  var win = window.open ("../BuyLink.html", "", "left=100,top=100,directories=0,location=0,menubar=1,resizable=1,scrollbars=1,status=0,toolbar=0,width=500,height=500");
} 

function ShowOrder () {
  if (strMainMenu == 'PHOTOS') { 
    if (nBasketItems < nMaxBasketItems) UnmarkFunc ('ADDORDER'); 
    else                                DimMenu    ('ADDORDER'); 
    if (nBasketItems > 0) UnmarkFunc ('CLRORDER'); 
    else                  DimMenu    ('CLRORDER'); 
    if (nBasketItems > 0) UnmarkFunc ('DOORDER'); 
    else                  DimMenu    ('DOORDER'); 
    if (nBasketItems > 0 && iBasketIndex >= 0) UnmarkFunc ('REMORDER'); 
    else                                       DimMenu    ('REMORDER'); 
    if (nBasketItems > 0) ShowSection ('ImageBasketArea'); 
    else                  HideSection ('ImageBasketArea'); 
  } 
  if (strMainMenu == 'INFO') { 
    DimMenu ('ADDORDER'); 
    DimMenu ('REMORDER'); 
    DimMenu ('CLRORDER'); 
    if (nBasketItems > 0) UnmarkFunc ('DOORDER'); 
    else                  DimMenu    ('DOORDER'); 
    HideSection ('ImageBasketArea'); 
  } 
} 

function ImageIsLoaded () { 
  if(bReady) return; 
  nImagesLoaded++; 
  UpdateImageProgress(); 
  if (nImagesLoaded == nImagesTotal - 3) SetReady();
} 

function UpdateImageProgress () {
  if (nImagesTotal == 0) return; 
  var progress = parseFloat(nImagesLoaded) / parseFloat(nImagesTotal); 
  m = document.getElementById('ProgressBarArea'); 
  progress *= 471; 
  progress += 5; 
  var src = '<div style="position:absolute;left:0px;width:' + parseInt(progress) + 'px;height:100%;background-color:#C6C6C6;">'; 
  src += '</div>' 
  if (m) m.innerHTML = src; 
} 

function NoAction () {
} 

function InitThumbScroll(dir) { 
  dw_scrollObj.initScroll('ThumbArea', dir); 
} 

function StopThumbScroll() { 
  dw_scrollObj.stopScroll('ThumbArea'); 
} 

function InitMenuScroll(dir) { 
  dw_scrollObj.initScroll('SubMenuArea', dir); 
} 

function StopMenuScroll() { 
  dw_scrollObj.stopScroll('SubMenuArea'); 
} 

function InitImageTextScroll(dir) { 
  dw_scrollObj.initScroll('ImageTextArea', dir); 
} 

function StopImageTextScroll() { 
  dw_scrollObj.stopScroll('ImageTextArea'); 
} 

function InitInfoTextScroll(dir) { 
  dw_scrollObj.initScroll('InfoTextArea', dir); 
} 

function StopInfoTextScroll() { 
  dw_scrollObj.stopScroll('InfoTextArea'); 
} 
 

function MakeArray(n) { 
 this.length = n; 
 for (var i = 0; i < n; i++) this[i] = 0; 
 return this; 
} 
 

function MarkMenu (id) {
  MoveFocus();
  if (id == '') return; 
  strName = 'MI' + id; 
  index = FindImage (strName); 
  if (index >= 0) document.images[index].className='MenuSquareSelected'; 
  strName = 'MT' + id; 
  index = FindAnchor (strName); 
  if (index >= 0) document.anchors[index].className='MenuTextSelected'; 
} 

function MouseoverMenu (id) {
  strName = 'MI' + id; 
  index = FindImage (strName); 
  if (index >= 0) { 
    if (document.images[index].className == 'MenuSquareSelected') return; 
    if (document.images[index].className == 'MenuSquareDimmed'  ) return; 
    document.images[index].className='MenuSquareMouseover'; 
  } 
  strName = 'MT' + id; 
  index = FindAnchor (strName); 
  if (index >= 0) document.anchors[index].className='MenuTextMouseover'; 
} 

function MouseoutMenu (id) {
  strName = 'MI' + id; 
  index = FindImage (strName); 
  if (index >= 0) { 
    if (document.images[index].className != 'MenuSquareMouseover') return; 
    document.images[index].className='MenuSquare'; 
  } 
  strName = 'MT' + id; 
  index = FindAnchor (strName); 
  if (index >= 0) document.anchors[index].className='MenuText'; 
} 

function MouseoverFunc (id) {
  strName = 'MI' + id; 
  index = FindImage (strName); 
  if (index >= 0) { 
    if (document.images[index].className == 'MenuSquareSelected') return; 
    if (document.images[index].className == 'MenuSquareDimmed'  ) return; 
    document.images[index].className='MenuSquareMouseover'; 
  } 
  strName = 'MT' + id; 
  index = FindAnchor (strName); 
  if (index >= 0) document.anchors[index].className='MenuTextMouseover'; 
} 

function MouseoutFunc (id) {
  strName = 'MI' + id; 
  index = FindImage (strName); 
  if (index >= 0) { 
    if (document.images[index].className != 'MenuSquareMouseover') return; 
    document.images[index].className='FuncSquare'; 
  } 
  strName = 'MT' + id; 
  index = FindAnchor (strName); 
  if (index >= 0) document.anchors[index].className='MenuText'; 
} 

function UnmarkMenu (id) {
  strName = 'MI' + id; 
  index = FindImage (strName); 
  if (index >= 0) document.images[index].className='MenuSquare'; 
  strName = 'MT' + id; 
  index = FindAnchor (strName); 
  if (index >= 0) document.anchors[index].className='MenuText'; 
} 

function UnmarkFunc (id) {
  strName = 'MI' + id; 
  index = FindImage (strName); 
  if (index >= 0) document.images[index].className='FuncSquare'; 
  strName = 'MT' + id; 
  index = FindAnchor (strName); 
  if (index >= 0) document.anchors[index].className='MenuText'; 
} 

function DimMenu (id) {
  strName = 'MI' + id; 
  index = FindImage (strName); 
  if (index >= 0) document.images[index].className='MenuSquareDimmed'; 
  strName = 'MT' + id; 
  index = FindAnchor (strName); 
  if (index >= 0) document.anchors[index].className='MenuTextDimmed'; 
} 

function ShowSubMenuPHOTO (icat) {
  if (!bReady) return; 
  UnmarkMenu ('SP' + iCurMenuPHOTO); 
  MarkMenu   ('SP' + icat); 
  iCurMenuPHOTO = icat; 
  ShowTheme (icat); 
} 

function ShowSubMenuINFO (icat) {
  if (!bReady) return; 
  UnmarkMenu ('SI' + iCurMenuINFO); 
  MarkMenu   ('SI' + icat); 
  iCurMenuINFO = icat; 
  ShowInfo (icat); 
} 

function ShowSubMenu (id) {
  if (!bReady) return; 
  HideSection (strSubMenu); 
  strSubMenu = 'SubMenu' + id; 
  ShowSection (strSubMenu); 
  var layer = document.getElementById(strSubMenu); 
  var ylayer = layer ? layer.offsetHeight : 0;
  var yarea  = 132; 
  ShowSection ('MenuScrollArea'); 
  dw_scrollObj.loadLayer ('SubMenuArea', strSubMenu); 
  if (ylayer <= yarea) HideSection ('MenuScrollArea'); 
} 

function ShowTheme (icat) {
  if (!bReady) return; 
  HideSection (strTheme); 
  strTheme = 'Cat' + icat; 
  ShowSection (strTheme); 
  ShowInfoTitle (CatNames[icat]); 
  if (icat >= 0) { 
    nImages = nCatImages[icat]; 
    if (nImages > 16) ShowSection('ThumbScrollArea'); 
    else              HideSection('ThumbScrollArea'); 
    dw_scrollObj.loadLayer ('ThumbArea', strTheme); 
    strCurImgID = '' + icat + '_' + CurCatImg[icat];
    strLastImgID = strCurImgID;
    ShowImage (icat, CurCatImg[icat], 1);
  } 
  else { 
    HideSection('ThumbScrollArea'); 
    ShowImage (icat, 0, 1);
    strCurImgID = '';
    strLastImgID = strCurImgID;
  } 
} 

function ShowInfo (info) {
  HideSection('ThumbScrollArea'); 
  HideSection (strInfo); 
  ShowInfoTitle (InfoNames[info]); 
  strInfo = 'Info' + info; 
  ShowSection (strInfo); 
  var area = document.getElementById('InfoTextArea'); 
  if (area) area.style.width = '634px'; 
  var layer = document.getElementById(strInfo); 
  if (layer) layer.style.width = '634px'; 
  var yarea  = 471; 
  var ylayer = layer ? layer.offsetHeight : 0;
  ShowSection ('InfoTextScrollArea'); 
  dw_scrollObj.loadLayer ('InfoTextArea', strInfo); 
  if (ylayer > yarea) { 
    area.style.width = '612px'; 
    layer.style.width = '612px'; 
  } 
  else { 
    HideSection ('InfoTextScrollArea'); 
  } 
} 

function GetThumbSource(id) { 
  var img  = -1; 
  var index = id.indexOf('_'); 
  if (index > 0) { 
    var str = id.substring(0,index); 
    var icat = parseInt (str); 
    str = id.substring(index+1,id.length); 
    var img = parseInt (str); 
    if (img >= 0) return ImageThumbSource[icat][img]; 
  } 
  return ''; 
} 
 

function GetImageSource(id) { 
  var img  = -1; 
  var index = id.indexOf('_'); 
  if (index > 0) { 
    var str = id.substring(0,index); 
    var icat = parseInt (str); 
    str = id.substring(index+1,id.length); 
    var img = parseInt (str); 
    if (img >= 0) return ImageSource[icat][img]; 
  } 
  return ''; 
} 
 

function GetImageRef(id) { 
  var img  = -1; 
  var index = id.indexOf('_'); 
  if (index > 0) { 
    var str = id.substring(0,index); 
    var icat = parseInt (str); 
    str = id.substring(index+1,id.length); 
    var img = parseInt (str); 
    if (img >= 0) return ImageRef[icat][img]; 
  } 
  return GetImageSource(id); 
} 
 

function FindAnchor (name) {
  if (document.anchors) { 
    for (i = 0; i < document.anchors.length; i++) { 
      if (document.anchors[i].name == name) return i; 
      }; 
  } 
  return -1; 
} 

function FindImage (name) {
  if (document.images) { 
    for (i = 0; i < document.images.length; i++) { 
      if (document.images[i].name == name) return i; 
      }; 
  } 
  return -1; 
} 

function SelectThumbImage (id) {
  strName = 'T' + strCurImgID; 
  index = FindImage (strName); 
  if (index >= 0) document.images[index].className='ThumbImage'; 
  strName = 'T' + id; 
  index = FindImage (strName); 
  if (index >= 0) document.images[index].className='ThumbImageSelect'; 
  strCurImgID = id; 
} 

function Replace (strText, strFrom, strTo) {
  var strNow = strText; 
  var ipos = strText.indexOf(strFrom); 
  if (ipos >= 0) { 
    strNow = strText.substring(0, ipos); 
    strNow += strTo; 
    strNow += strText.substring(ipos + strFrom.length, strText.length); 
  } 
  return strNow; 
} 

function PlaceSection (id, pos) {
  if (document.getElementById && document.createTextNode) { 
    var m = document.getElementById(id); 
    if (m) m.style.top = pos; 
  } 
} 

function ShowSection (id) {
  if (document.getElementById && document.createTextNode) { 
    var m = document.getElementById(id); 
    if (m) m.style.display="block"; 
  } 
} 

function HideSection (id) {
  if (document.getElementById && document.createTextNode) { 
    var m = document.getElementById(id); 
    if (m) m.style.display="none"; 
  } 
} 

function  ShowContent (id) {
  if (!bReady) return; 
  HideSection (strContent); 
  strContent = id; 
  ShowSection (strContent); 
} 

function NewImageWindow() {
  var strImage = GetImageSource(strCurImgID); 
  if (strImage.length <= 0) return; 
  win = window.open ("", "", "fullscreen=yes");
  win.document.open ();
  win.document.write ('<html>');
  win.document.write ('<head>');
  win.document.write ('<title>Image: ' + strImage + '</title>');
  win.document.write ('<link rel="stylesheet" type="text/css" href="../PhotoSite.css" />');
  win.document.write ('<script type="text/Javascript">');
  win.document.write ('var color = 6; ');
  win.document.write ('function ChangeColor(idir) { '); 
  win.document.write ('  color += idir; '); 
  win.document.write ('  if (color  > 8) color = 8; ');
  win.document.write ('  if (color  < 0) color = 0; ');
  win.document.write ('  if (color == 0) document.body.style.backgroundColor="#000000"; '); 
  win.document.write ('  if (color == 1) document.body.style.backgroundColor="#202020"; '); 
  win.document.write ('  if (color == 2) document.body.style.backgroundColor="#404040"; '); 
  win.document.write ('  if (color == 3) document.body.style.backgroundColor="#606060"; '); 
  win.document.write ('  if (color == 4) document.body.style.backgroundColor="#808080"; '); 
  win.document.write ('  if (color == 5) document.body.style.backgroundColor="#A0A0A0"; '); 
  win.document.write ('  if (color == 6) document.body.style.backgroundColor="#C0C0C0"; '); 
  win.document.write ('  if (color == 7) document.body.style.backgroundColor="#E0E0E0"; '); 
  win.document.write ('  if (color == 8) document.body.style.backgroundColor="#FFFFFF"; '); 
  win.document.write ('} '); 
  win.document.write ('function ChangeColorX() { '); 
  win.document.write ('  color++; '); 
  win.document.write ('  if (color  > 8) color = 0; ');
  win.document.write ('  if (color == 0) document.body.style.backgroundColor="#000000"; '); 
  win.document.write ('  if (color == 1) document.body.style.backgroundColor="#202020"; '); 
  win.document.write ('  if (color == 2) document.body.style.backgroundColor="#404040"; '); 
  win.document.write ('  if (color == 3) document.body.style.backgroundColor="#606060"; '); 
  win.document.write ('  if (color == 4) document.body.style.backgroundColor="#808080"; '); 
  win.document.write ('  if (color == 5) document.body.style.backgroundColor="#A0A0A0"; '); 
  win.document.write ('  if (color == 6) document.body.style.backgroundColor="#C0C0C0"; '); 
  win.document.write ('  if (color == 7) document.body.style.backgroundColor="#E0E0E0"; '); 
  win.document.write ('  if (color == 8) document.body.style.backgroundColor="#FFFFFF"; '); 
  win.document.write ('} '); 
  win.document.write ('</sc' + 'ript>'); 
  win.document.write ('</head>');
  win.document.write ('<body onLoad="ChangeColor(0)">'); 
  win.document.write ('<table width="100%" height="100%" style="text-align:center"><tr><td valign="middle">'); 
  win.document.write ('<img src="' + strImage + '" border="0" />');
  win.document.write ('</td></tr></table>'); 
  win.document.write ('<div style="position:absolute; bottom:20px; left:30px; text-align:left;">'); 
  win.document.write ('<div class="MenuLine" onmousedown="ChangeColorX()">'); 
  win.document.write ('<img src="../blank.gif" class="MenuSquare" />');
  win.document.write ('<span class="MenuText">Background tone</span>'); 
  win.document.write ('</div>'); 
  win.document.write ('<div class="MenuLine" onmousedown="window.close()">'); 
  win.document.write ('<img src="../blank.gif" class="MenuSquare" />');
  win.document.write ('<span class="MenuText">Close window</span>'); 
  win.document.write ('</div>'); 
  win.document.write ('</div>'); 
  win.document.write ('</body>'); 
  win.document.write ('</html>'); 
  win.document.close ();
} 

function PrintPage() {
  var strID = ''; 
  if (strMainMenu == 'PHOTOS') strID = strCurImgID; 
  if (strMainMenu == 'INFO'  ) strID = InfoID[iCurMenuINFO]; 
  if (strID == '') return; 
  var strFile  = '';
  var strTitle = '';
  var strText  = '';
  if (strMainMenu == 'PHOTOS') {; 
    strTitle = CatNames[iCurMenuPHOTO]; 
    strFile = GetImageSource(strID);
    if (strFile == '') return; 
    if (document.getElementById && document.createTextNode) { 
      var mt= document.getElementById('ImageText'); 
      if (mt) strText = mt.innerHTML;
    } 
  } 
  if (strMainMenu == 'INFO') {; 
    if (document.getElementById && document.createTextNode) { 
      var mt= document.getElementById(strInfo); 
      if (mt) strText = mt.innerHTML;
      strTitle = InfoNames[iCurMenuINFO];
    } 
  } 
  win = window.open ("", "", "left=100,top=100,toolbar=1,menubar=1,scrollbars=1,resizeable=1,width=700,height=600");
  win.document.open ();
  win.document.write ('<html>\n');
  win.document.write ('<head>\n');
  win.document.write ('<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />\n');
  win.document.write ('<link rel="stylesheet" type="text/css" href="../PhotoSitePopupPrint.css" />\n');
  win.document.write ('</head>\n');
  win.document.write ('<body onload="window.print()" >\n'); 
  win.document.write ('<div id="mainpage">\n');
  win.document.write ('<div id="LogoArea">\n');
  win.document.write ('<img src="../Logo_gallery.gif" width="100%" />\n'); 
  win.document.write ('</div>\n');
  win.document.write ('<div id="IdentArea">\n');
  win.document.write ('<b>PHOTOMONDO - PHOTOGRAPHY</b><br/><br/>\n'); 
  win.document.write ('<b>Fotograf Jacob Aue Sobol</b><br/><br/>\n'); 
  win.document.write ('www.photomondo.dk/JacobAueSobol/dk <br/>\n'); 
  win.document.write ('aue.sobol@gmail.com \n'); 
  win.document.write ('</div>\n');
  win.document.write ('<div id="InfoTitleArea">\n');
  win.document.write (strTitle); 
  win.document.write ('</div>\n');
  win.document.write ('<div id="InfoArea">\n');
  if (strMainMenu == 'PHOTOS') {; 
    win.document.write ('<img src="' + strFile + '" />\n'); 
    win.document.write ('<br/>\n');
    win.document.write ('Filnavn: <i>' + strFile + '</i><br/><br/>\n');
  } 
  win.document.write (strText); 
  win.document.write ('\n</div>\n');
  win.document.write ('\n</div>\n');
  win.document.write ('</body>\n'); 
  win.document.write ('</html>\n'); 
  win.document.close ();
} 

function ShowImage (icat, img, sel) {
  var strText = '';
  var strID = '';
  if (icat >= 0 && img >= 0) { 
    strText += ImageText[icat][img];
    if (strText.length > 0) strText += '<br/><br/>';
    strText += CatText[icat];
    strID = '' + icat + '_' + img; 
    if (sel > 0) { 
      SelectThumbImage (strID); 
      CurCatImg[icat] = img; 
      strCurImgID = strID; 
      strCurImgText = strText; 
    } 
  } 
  strLastImgID = strID; 
  strLastImgText = strText; 
  strNow = 'Img' + strID; 
  ShowContent (strNow); 
  ShowImageText (strLastImgText); 
} 

function ShowInfoTitle (str, color) {
  var area = document.getElementById('InfoTitleArea'); 
  if (area) { 
    area.innerHTML = str; 
    if (color) area.style.color = color; 
    else       area.style.color = 'black'; 
  } 
} 

function ShowImageText (str) {
  var area = document.getElementById('ImageTextArea'); 
  if (area) area.style.width = '145px'; 
  var layer = document.getElementById('ImageText'); 
  if (layer) layer.innerHTML = str; 
  var ylayer = layer ? layer.offsetHeight : 0;
  var yarea  = 310;
  HideSection ('ImageTextScrollArea'); 
  if (ylayer > yarea) { 
    area.style.width = '124px'; 
    ShowSection ('ImageTextScrollArea'); 
    dw_scrollObj.loadLayer ('ImageTextArea', 'ImageText'); 
  }; 
} 

function SetMenuText (id, text, color) { 
  index = FindAnchor ('MT' + id); 
  if (index >= 0) { 
    document.anchors[index].innerHTML = text; 
    if (color) document.anchors[index].style.color = color; 
  } 
} 

function UpdateBasketIcons () { 
} 

function DisplayBasket () { 
  for (var i = 0; i < nMaxBasketItems; i++) { 
    DisplayBasketUnit (i); 
  } 
} 

function DisplayBasketUnit (i) { 
  strName = 'BasketImage' + i; 
  ShowSection (strName); 
  strImgSrc  = GetThumbSource(BasketImgID[i]); 
  if (strImgSrc == '') strImgSrc = '../blank.gif'; 
  var index = FindImage (strName); 
  if (index >= 0) document.images[index].src = strImgSrc; 
} 

function AddCurImageToBasket () { 
  if (strCurImgID.length > 0 && nBasketItems < nMaxBasketItems) { 
    var index = -1; 
    for (var i = nMaxBasketItems - 1; i >= 0; i = i-1) { 
      if (BasketImgID [i] == '') index = i; 
    } 
    if (index >= 0) { 
      BasketImgID [index] = strCurImgID; 
      BasketImgSrc[index] = GetThumbSource(strCurImgID); 
      BasketImgRef[index] = GetImageRef(strCurImgID); 
      nBasketItems++; 
      SelectBasketImage (index); 
      DisplayBasketUnit(index); 
      UpdateBasketIcons(); 
    } 
  } 
} 

function BuyCurBasket () { 
} 

function RemoveFromBasket () { 
  if (iBasketIndex >= 0) { 
    for (var i = iBasketIndex; i < nBasketItems - 1; i++) { 
      BasketImgID [i] = BasketImgID[i+1]; 
      BasketImgSrc[i] = BasketImgSrc[i+1]; 
      BasketImgRef[i] = BasketImgRef[i+1]; 
      DisplayBasketUnit(i); 
    } 
    BasketImgID [nBasketItems-1] = ''; 
    DisplayBasketUnit(nBasketItems-1); 
    nBasketItems = nBasketItems - 1; 
    if (nBasketItems > 0) SelectBasketImage(nBasketItems-1); 
    UpdateBasketIcons(); 
  } 
} 

function ClearBasket () { 
  if (iBasketIndex >= 0) { 
    UnselectBasketImage(); 
  } 
  for (var i = 0; i < nMaxBasketItems; i++) { 
    BasketImgID [i] = ''; 
    DisplayBasketUnit(i); 
  } 
  iBasketIndex = -1; 
  nBasketItems = 0; 
  UpdateBasketIcons(); 
} 

function BuyBasketPopup() {
  if (nBasketItems > 0) { 
    strBuyOrderLine = ''; 
    for (var i = 0; i < nBasketItems; i++) { 
      if (strBuyOrderLine != '') strBuyOrderLine += ', '; 
      strBuyOrderLine += BasketImgRef[i]; 
    } 
    window.open ("../BuyForm.html", "", "left=100,top=100,directories=0,location=0,menubar=0,resizable=0,scrollbars=0,status=0,toolbar=0,width=530,height=570");
  }
}

function ShowBasketImage (index, sel) {
  if (sel == 0) return; 
  strID = BasketImgID[index]; 
  if (strID == '') return; 
  if (sel > 0) { 
    SelectThumbImage (strID); 
    SelectBasketImage (index); 
  } 
  strNow = 'Img' + strID; 
  ShowContent (strNow); 
  if (sel > 0) UpdateBasketIcons(); 
} 

function SelectBasketImage (i) {
  UnselectBasketImage(); 
  index = BasketImgIdx[i]; 
  if (index >= 0) { 
    document.images[index].className='BasketImageSelect'; 
    iBasketIndex = i; 
  } 
} 

function UnselectBasketImage () {
  for (var i = 0; i < nMaxBasketItems; i++) {
    index = BasketImgIdx[i]; 
    if (index >= 0) document.images[index].className='BasketImage'; 
  } 
  iBasketIndex = -1; 
} 

function ShowSelectedImage () {
  if (strCurImgID == '') return; 
  strNow = 'Img' + strCurImgID; 
  ShowContent (strNow); 
  ShowImageText (strCurImgText); 
  strLastImgID   = strCurImgID; 
  strLastImgText = strCurImgText; 
} 

function ShowLastImage () {
  strNow = 'Img' + strLastImgID; 
  ShowContent (strNow); 
  ShowImageText (strLastImgText); 
} 

function MoveFocus() {
  var move = false; 
  var agent = navigator.userAgent.toLowerCase();
  var is_ie     = (agent.indexOf('msie')  != -1);
  var is_opera  = (agent.indexOf('opera') != -1);
  var is_mac	  = (agent.indexOf('mac')   != -1);
  var is_mac_ie = (is_ie && is_mac);
  var is_win_ie = (is_ie && !is_mac);
  var is_gecko  = (navigator.product == 'Gecko');
  if (is_gecko) move = true; 
  if (move) { 
    var index = FindAnchor ('DummyLink'); 
    if (index >= 0) document.anchors[index].focus(); 
  } 
} 

