
var localDebug=false;

var season=0;
month=(new Date()).getMonth();
if (month==0 || month==1 || month==11) season=0;
else if (month==2 || month==3 || month==4) season=1;
else if (month==5 || month==6 || month==7) season=2;
else season=3;

season=0;


function getSplitPath() {
  var path=location.pathname.split("/");
  var result;
  if (path==null || path.length==0) return null;

  result=path[0].split("\\");
  for (var i=1; i<path.length; i++) {
    result=result.concat(path[i].split("\\"));
  }

  return result;
}


//Get file name of the page
function getFileName() {
  var result="";
  var path=getSplitPath();
  if (path.length==0) return null;
  else return path[path.length-1];
}

//Get language of the page
function getPageLanguage() {
  var path=getSplitPath();
  for (var i=path.length-2; i>=0; i--) {
    if (path[i]=="russian") return "rus";
    if (path[i]=="english") return "eng";
  }

  if (location.hostname.indexOf("narod.ru")>=0 && location.search.indexOf("owner=2089969")>=0) {
    return "rus";
  } else {
    return "eng";
  }
}

//Get page depth in directory structure
function getPageDepth() {
  var path=getSplitPath();
  var depth=0;
  for (var i=path.length-2; i>=0; i--) {
    if (path[i]=="russian" || path[i]=="english") {
      return depth;
    }
    depth++;
  }

  return -1;
}

//returns path to the page after language folder
function getPageRelativePath() {
  var path=getSplitPath();
  var langIndex=0;
  for (var i=0; i<path.length; i++) {
    if (path[i]=="russian" || path[i]=="english") {
      langIndex=i;
      break;
    }
  }

  var result=new Array();
  for (var i=langIndex+1; i<path.length; i++) {
    result[result.length]=path[i];
  }

  return result;
}

//Get root section that page belongs to
function getPageMainSection() {
  var path=getSplitPath();
  var prevSection="";
  for (var i=path.length-1; i>=0; i--) {
    if (path[i]=="russian" || path[i]=="english") {
      return prevSection;
    }
    prevSection=path[i];
  }
  return "";
}

function getFolderName() {
  var path=getSplitPath();
  return path[path.length-2];
}

//gets url without hash, which goes after # or ?
function getPureUrl(url) {
  var idx1=url.indexOf("#");
  var idx2=url.indexOf("?");
  var idx=-1;
  
  if (idx1<0) {
  	idx=idx2;
  } else if (idx2<0) {
  	idx=idx1;
  } else {
  	idx=Math.min(idx1,idx2);
  }
	
  if (idx<0) {
	  return url;
	} else {
	  return url.substring(0,idx);
	}
}


//Switch left menu from unrolled to rolled condition and backwards
function toggleLeftMenu(div) {
  var parent=div.parentNode;
  var children=parent.childNodes;
  var index=0;

  for (var i=0; i<children.length; i++) {
    if (children[i].tagName==null) continue;
    if (children[i].tagName.toLowerCase()=="div") {
      index++;
    }

    if (index==2) {
      if (children[i].style.display=="") {
        children[i].style.display="none";
        div.className="left_submenu_header2";
      } else {
        children[i].style.display="";
        div.className="left_submenu_header";
      }
    }
  }
}

//Mouse handler for left menu header
function onLeftMenuHeaderClick(sender) {
  //toggleLeftMenu(sender);
}

//Get root path prefix for the page
function getRootURLPrefix() {
  var result="";
//  alert(getPageDepth());
  for (var i=0; i<getPageDepth(); i++) {
    result+="../";
  }

  return result;

}

//Mouse click handler for logo
function onLogoClick(sender) {
  var url=getRootURLPrefix()+"index.html"

  document.location=url;
}

//Print left menu header
function leftmenu_printStart(title) {
  var d=document;
  d.writeln("<div class=\"left_submenu\">");
  d.writeln("  <div class=\"left_submenu_header\" onclick=\"onLeftMenuHeaderClick(this)\">"+title+"</div>");
  d.writeln("    <div class=\"left_submenu_main\">");
}

//Print left menu bottom
function leftmenu_printEnd() {
  var d=document;
  d.writeln("  </div>");
  d.writeln("</div>");
}

//Get main menu item
function getMainMenuItem(url, text, section) {
  var result="<a href=\""+getRootURLPrefix()+url+"\">"+text+"</a>"
  if (getPageMainSection()==section) {
    return "<b>"+result+"</b>";
  } else {
    return result;
  }
}


//Constructor of menu item
function LeftMenuItem(path,caption,absolute) {
  this.path=path;
  this.caption=caption;
  this.absolute=absolute;
  this.subItems=new Array();

  this.addMenuItem=LeftMenuItem_addMenuItem;
  this.print=LeftMenuItem_print;
  this.printItem=LeftMenuItem_printItem;
//  this.printItems=LeftMenuItem_printItems;
  this.containsCurrentPagePath=LeftMenuItem_containsCurrentPagePath;
}

function LeftMenuItem_addMenuItem(menuItem,parentPath) {
  if (!parentPath) {
    this.subItems[this.subItems.length]=menuItem;
  } else {
    if (this.path==parentPath) {
      this.subItems[this.subItems.length]=menuItem;
    }

    for (var i=0; i<this.subItems.length; i++) {
      this.subItems[i].addMenuItem(menuItem,parentPath);
    }
  }
}

function LeftMenuItem_containsCurrentPagePath() {
  if (this.path==null) {
    return 0;
  }
  var pagePath=getPageRelativePath();
  var menuItemPath=this.path.split("/");
  var flag=0;
  if (pagePath.length>=menuItemPath.length) {
    flag=1;
    for (var i=0; i<(menuItemPath.length-1); i++) {
      if (pagePath[i]!=menuItemPath[i]) {
        flag=0;
        break;
      }
    }

    if (flag==1 && pagePath[pagePath.length-1]==menuItemPath[menuItemPath.length-1]) {
      flag=3;
    }

    if (flag==3) {
      return flag;
    }
  }

  for (var i=0; i<this.subItems.length; i++) {
    var f=this.subItems[i].containsCurrentPagePath();
    if (f>0) {
      return 2;
    }
  }

  return flag;
}

function LeftMenuItem_printItem(level,deep,parentPath) {
  var d=document;
  var flagCurrent=0;

  if (level>0) {
    d.writeln("<div style=\"margin-left:10px\">");
  } else {
    d.writeln("<div>");
  }

  if (this.caption==null) {
    d.writeln("<hr align=left width=50%>");
  } else if (this.absolute) {
    d.writeln("<a href=\""+this.path+"\">"+this.caption+"</a><br>");
  } else {
    //test parent and current paths equalence
    var pathItems1=this.path.split("/");
    var pathItems2=parentPath.split("/");
    var flagParentEqual=false;
    if (pathItems1.length==pathItems2.length) {
      flagParentEqual=true;
      for (var i=0; i<pathItems1.length-1; i++) {
        if (pathItems1[i]!=pathItems2[i]) {
          flagParentEqual=false;
          break;
        }
      }
    }

    flagCurrent=this.containsCurrentPagePath();
    //alert(this.caption+" "+flagCurrent);
    var flagSelected= (flagCurrent>0 && !(flagParentEqual && flagCurrent<2));

    if (flagSelected) {//flagCurrent>0 && !flagParentEqual) {
      d.writeln("<b>");
    }

    d.writeln("<a href=\""+getRootURLPrefix()+this.path+"\">"+this.caption+"</a><br>");

    if (flagSelected) {//flagCurrent>0 && !flagParentEqual) {
      d.writeln("</b>");
    }
  }

  if (deep && flagSelected/*flagCurrent>0 && !flagParentEqual*/) {
    for (var i=0; i<this.subItems.length; i++) {
      this.subItems[i].printItem(level+1,deep,this.path);
    }
  }

  d.writeln("</div>"); 
}

function LeftMenuItem_print(deep) {
  leftmenu_printStart("<a href=\""+getRootURLPrefix()+this.path+"\">"+this.caption+"</a>");

  //this.printItems(0,deep,null);
  for (var i=0; i<this.subItems.length; i++) {
    this.subItems[i].printItem(0,deep,this.path);
  }

  leftmenu_printEnd();
}

//MenuItem.prototype.addMenuItem=MenuItem_addMenuItem;

//alert("create menu");

var mainMenu=new LeftMenuItem("index.html",(getPageLanguage()=="rus"?"Разделы":"Contents"),false);

if (getPageLanguage()=="rus") {
  mainMenu.addMenuItem(new LeftMenuItem("art/index.html","Искусство",false));
  mainMenu.addMenuItem(new LeftMenuItem("anim/index.html","Анимация",false));
  mainMenu.addMenuItem(new LeftMenuItem("library/index.html","Библиотека фигур",false));
  mainMenu.addMenuItem(new LeftMenuItem("articles/index.html","Статьи",false));
  mainMenu.addMenuItem(new LeftMenuItem("programs/index.html","Программы",false));
  mainMenu.addMenuItem(new LeftMenuItem("links/index.html","Ссылки",false));
  mainMenu.addMenuItem(new LeftMenuItem("news/index.html","Новости",false));
  mainMenu.addMenuItem(new LeftMenuItem("about/index.html","О проекте",false));
  mainMenu.addMenuItem(new LeftMenuItem("search/index.html","Поиск авторов",false));
  //mainMenu.addMenuItem(new LeftMenuItem("http://www.narod.ru/guestbook/?owner=2089969&mainhtml=gb.txt&messageshtml=mgb.txt","Гостевая книга",true));
  mainMenu.addMenuItem(new LeftMenuItem("http://im-possible.appspot.com","Сообщество",true));
} else if (getPageLanguage()=="eng") {
  mainMenu.addMenuItem(new LeftMenuItem("art/index.html","Art",false));
  mainMenu.addMenuItem(new LeftMenuItem("anim/index.html","Animation",false));
  mainMenu.addMenuItem(new LeftMenuItem("library/index.html","Figure library",false));
  mainMenu.addMenuItem(new LeftMenuItem("articles/index.html","Articles",false));
  mainMenu.addMenuItem(new LeftMenuItem("programs/index.html","Programs",false));
  mainMenu.addMenuItem(new LeftMenuItem("links/index.html","Useful links",false));
  mainMenu.addMenuItem(new LeftMenuItem("news/index.html","News",false));
  mainMenu.addMenuItem(new LeftMenuItem("about/index.html","About...",false));
  mainMenu.addMenuItem(new LeftMenuItem("search/index.html","Search",false));
  //mainMenu.addMenuItem(new LeftMenuItem("http://impworld.ifastnet.com/mybb","Discussion forums",true));
  //mainMenu.addMenuItem(new LeftMenuItem("http://www.narod.ru/guestbook/?owner=1995079&mainhtml=gbe.txt&messageshtml=mgb.txt","Guestbook",true));
  mainMenu.addMenuItem(new LeftMenuItem("http://im-possible.appspot.com","Community",true));
}

//alert("end create menu");


//Print main menu
function printMainMenu() {
  mainMenu.print(true);

  var d=document;
  var rssLink;
  if (getPageLanguage()=="rus") {
    rssLink="http://im-possible.info/russian/rss.xml"; //"http://feeds.feedburner.com/im-possible-rus";
  } else {
    rssLink="http://im-possible.info/english/rss.xml"; //"http://feeds.feedburner.com/im-possible-eng";
  }

  var html="<div class=\"left_submenu\">"+
    "<div class=\"left_submenu_main\">"+
    "<table cellspacing=\"0\" border=\"0\" style=\"font-size:8pt\"><tr>"+
    "<td><a href=\""+rssLink+"\"><img src=\""+getRootURLPrefix()+"../_template/rss16-54.gif\" border=\"0\"></a>"+
    "&nbsp;<a href=\"http://twitter.com/vlad_alexeev\"><img src=\""+getRootURLPrefix()+"../_template/twitter.gif\" border=\"0\"/></a>"+
    "&nbsp;<a href=\"http://www.facebook.com/pages/Impossible-World/180954751923695?v=wall\"><img src=\""+getRootURLPrefix()+"../_template/facebook16.png\" border=\"0\"/></a>"+
    "</td></tr>"+
    "<tr><td colspan='2'><iframe src='http://www.facebook.com/plugins/like.php?href="+getPureUrl(document.location.href)+"&amp;layout=button_count&amp;show_faces=true&amp;width=150&amp;action=like&amp;font=arial&amp;colorscheme=light&amp;height=21' scrolling='no' frameborder='0' style='border:none; overflow:hidden; width:150px; height:21px;' allowTransparency='true'></iframe></td></tr>"+
    "<tr><td colspan='2'><g:plusone size='medium'></g:plusone></td></tr>"+
    "</table>"+
    "</div></div>";
  d.writeln(html);
}

//Конструктор элемента меню
function MenuItem(text,link,id) {
  this.text=text;
  this.link=link;
  this.id=id;
}

//Print counter
function printCounter() {
  if (localDebug) return;

  var d=document;
  var html="<div class=\"left_submenu\">";
  html+="<div class=\"left_submenu_statistics\">";

  html+="<img src=http://webcounter.goweb.de/18873.gif height=9>";
  html+="&nbsp;&nbsp;&nbsp;&nbsp;<img src=../"+getRootURLPrefix()+"_template/ctr_plus.gif height=9 width=7 />";
  html+="<img src=http://webcounter.goweb.de/18873TODAY.gif height=9>";

  var a = document.referrer; var b = "";
  for (i = 0; i < a.length; i++) {
    if (a.substring(i,i+1) == "/") { b = b + "+"; } else { b = b + a.substring(i,i+1); } }
  html+="<img src=","http://webcounter.goweb.de/18873REF"+b+""," width=1 height=1 alt=' '/>";

  var ID=18873;
  html+="<img src='http://webcounter.goweb.de/"+ID+"WINSIZE"+screen.width+"x"+screen.height+"' border=0 width=1 height=1>";

  html+="</div>";
  html+="</div>";

  d.writeln(html);

  //Google Analytics
  if (location.hostname.indexOf("narod.ru")<0) {
    d.writeln("<script src=\"http://www.google-analytics.com/urchin.js\" type=\"text/javascript\"></script>");
  }
}


//Print ending line of left menu
//This function must be call after all menu items of left menu
//This function is needed for saving left menu size
function printEmptyLine() {
  document.writeln("<div><img src=\"../"+getRootURLPrefix()+"_template/empty_line.gif\" /></div>");
}

//Print switch language block
function printSwitchLanguage(switchLanguage) {
  if (switchLanguage=="rus") {
    document.writeln("<div class=\"left_russian\" onclick=\"onClickChangeLanguage()\"></div>");
  } else if (switchLanguage=="eng") {
    document.writeln("<div class=\"left_english\" onclick=\"onClickChangeLanguage()\"></div>");
  }
}

//Mouse click handler for switch language block
function onClickChangeLanguage() {
  var url=document.location.href;
  
  if (getPageLanguage()=="rus") {
    document.location=url.replace(/russian/,"english");
  } else if (getPageLanguage()=="eng") {
    document.location=url.replace(/english/,"russian");
  }
}

//Print bottom of the page
function printBottom() {
  var d=document;
  var html="<table width=\"100%\"><tr><td class=\"bottom\">"
  if (getPageLanguage()=="rus") {
    html+="&copy; Идея и дизайн Влада Алексеева, 2001-2011. (<a href=mailto:impossible.world@gmail.com style=font-size:12px><font color=#0000ff>impossible.world@gmail.com</font></a>)"+
          " | <a href=\""+getRootURLPrefix()+"privacy-policy.html\">Политика конфиденциальности</a><br>"+
          "Перепечатка материалов сайта приветствуется со ссылкой на сайт.<br>"+
          "Если у вас есть изображения невозможных фигур, неопубликованных на сайте, пожалуйста, присылайте их мне.</font>";
  } else if (getPageLanguage()=="eng") {
    html+="&copy; Idea and design by Vlad Alexeev, 2001-2011. (<a href=mailto:impossible.world@gmail.com style=font-size:12px><font color=#0000ff>impossible.world@gmail.com</font></a>)"+
          " | <a href=\""+getRootURLPrefix()+"privacy-policy.html\">Privacy policy</a><br>"+
          "If you have images of impossible figures that are not published in the site, please send them to me.</font>"
  }
  html+="</tr></td></table>"

  if (!localDebug && location.hostname.indexOf("narod.ru")<0) {
    //Google Analytics
    html+="<script src=\"http://www.google-analytics.com/urchin.js\" type=\"text/javascript\"></script>";
    //Google Analytics
    html+="<script type=\"text/javascript\">";
    html+="_uacct = \"UA-1090948-1\";";
    html+="urchinTracker();";
    html+="</script>";
  }

  d.writeln(html);

  var a=document.links;
  for (var i=0; i<a.length; i++) {
    if (a[i].href.indexOf("http://")==0 && a[i].href.indexOf("http://im-possible.info")!=0) {
      a[i].className="external";
    }
  }
	
	appendFacebookComments();
	appendGooglePlusOneScript();
}

//Print navigation buttons
//linkLeft, linkRight - URL's for buttons "Back" and "Next"
//linkHome - URL for button "Home"
function printNavigation(linkLeft, linkRight, linkHome) {
  var textLeft, textRight, textHome;
  if (getPageLanguage()=="rus") {
    textLeft="Назад";
    textRight="Дальше";
    textHome="Содержание";
  } else { //pageLanguage=="eng"
    textLeft="Back";
    textRight="Next";
    textHome="Contents";
  }

  var imgLeft, imgRight;
  if (linkLeft=="" || linkLeft==null) {
    imgLeft="left_.gif";
    textLeft="";
  } else {
    imgLeft="left.gif";
  }
  imgLeft="../"+getRootURLPrefix()+"_template/"+imgLeft;

  if (linkRight=="" || linkRight==null) {
    imgRight="right_.gif";
    textRight="";
  } else {
    imgRight="right.gif";
  }
  imgRight="../"+getRootURLPrefix()+"_template/"+imgRight;

  var d=document;
  
  d.write("<table border=\"0\" align=\"center\"><tr>");
  //left button
  d.write("<td>");
  if (linkLeft!=null && linkLeft!="") {
    d.write("<a href=\""+linkLeft+"\">");
  }
  d.write("<img border=\"0\" src=\""+imgLeft+"\" title=\""+textLeft+"\">");
  if (linkLeft!=null && linkLeft!="") {
    d.write("</a>");
  }
  d.write("</td>");

  //home button
  d.write("<td><a href=\""+linkHome+"\">");
  d.write("<img border=\"0\" src=\"../"+getRootURLPrefix()+"_template/home.gif\" title=\""+textHome+"\">");
  d.write("</a></td>");

  //right button
  d.write("<td>");
  if (linkRight!=null && linkRight!="") {
    d.write("<a href=\""+linkRight+"\">");
  }
  d.write("<img border=\"0\" src=\""+imgRight+"\" title=\""+textRight+"\">");
  if (linkRight!=null && linkRight!="") {
    d.write("</a>");
  }
  d.write("</td>");

  d.writeln("</table>");
}


//Prints local left menu
function printLocalMenu(title, menuItems, menuIndex,depth) {
  var d=document;
  var i,j;

  if (depth==null) {
    depth=0;
  }

  var splitPath=getSplitPath();
  var id="";

  for (i=0; i<menuItems.length; i++) {
    for (j=splitPath.length-1; j>=0; j--) {
      if (splitPath[j]==menuItems[i].id) {
        id=menuItems[i].id;
        depth=splitPath.length-j-1;
      }
    }
  }


  var depthPrefix="";
  for (var i=0; i<depth; i++) {
    depthPrefix+="../";
  }

  leftmenu_printStart("<a href=\""+depthPrefix+menuIndex+"\">"+title+"</a>");


  for (i=0; i<menuItems.length; i++) {
    if (menuItems[i].link==null && menuItems[i].text==null) {
      d.writeln("<hr>");
    } else {
      d.writeln("<a href=\""+depthPrefix+menuItems[i].link+"\">");
      if (menuItems[i].id==id) {
        d.writeln("<b>"+menuItems[i].text+"</b>");
      } else {
        d.writeln(menuItems[i].text);
      }
      d.writeln("</a><br>");
    }
  }

  leftmenu_printEnd();
}


///////////////////////////////////////////////////////////////
function getAbsoluteDivs()  
{  
    var arr = new Array();  
    var all_divs = document.body.getElementsByTagName("DIV");  
    var j = 0;  
  
    for (i = 0; i < all_divs.length; i++)  
        if (all_divs.item(i).style.position=='absolute')  
        {  
            arr[j] = all_divs.item(i);  
            j++;  
        }  
  
    return arr;  
}  

function bringToFront(id)  
{  
    if (!document.getElementById ||  
        !document.getElementsByTagName)  
        return;  
  
    var obj = document.getElementById(id);  
    var divs = getAbsoluteDivs();  
    var max_index = 0;  
    var cur_index;  
  
    // Compute the maximal z-index of  
    // other absolute-positioned divs  
    for (i = 0; i < divs.length; i++)  
    {  
        var item = divs[i];  
        if (item == obj ||  
            item.style.zIndex == '')  
            continue;  
  
        cur_index = parseInt(item.style.zIndex);  
        if (max_index < cur_index)  
        {  
            max_index = cur_index;  
        }  
    }  
  
    obj.style.zIndex = max_index + 1;  
}



///////////////////////////////////////////////////////////////

//Prints hyperlink for zomming image
function printZoomImage(imageHyperLink, title, width, height, comment, linkImage, linkName) {
  var zoomText;
  if (getPageLanguage()=="rus") {
    zoomText="Увеличить";
  } else {
    zoomText="Zoom";
  }

  if (linkImage==null) {
    linkImage="_template/zoom.gif";
  }

  var d=document;

  //d.writeln("<a href=\"../"+getRootURLPrefix()+imageHyperLink+"\">");
  d.write("<a href=\"javascript:showImage('../"+getRootURLPrefix()+imageHyperLink+"','"+title+"',"+width+","+height+",'"+comment+"')\""+
      (linkName ? " name=\""+linkName+"\"" : "")+">");
  d.write("<img src=\"../"+getRootURLPrefix()+linkImage+"\" width=\"50\" height=\"25\" border=\"0\">");
  d.write("</a>");
}

var currentImageWin=null;
var currentImageWin_LastScrollTop=null;
var currentImageWidth;
var currentImageHeight;

var lightOffDiv=null;

function showImage_OnBodyScroll() {
  if (currentImageWin!=null && document.body.scrollTop!=currentImageWin_LastScrollTop) {
    currentImageWin.style.top=document.body.scrollTop+20;
    currentImageWin_LastScrollTop=document.body.scrollTop;
  }
}


function showImage_OnResize() {
  if (currentImageWin!=null) {
    currentImageWin.style.top=document.body.scrollTop+20;
    currentImageWin.style.left=(document.body.scrollWidth-(currentImageWidth+10))/2;
  }
}

if (document.all) {
  //For IE
  window.onscroll=showImage_OnBodyScroll;
} else {
  //For Mozilla
  setInterval("showImage_OnBodyScroll()",100);
}

window.onresize=showImage_OnResize;

function showImage_OnClose() {
  document.body.removeChild(currentImageWin);
  lightOffDiv.style.display="none";
  currentImageWin=null;
}

function isImageLinksEquals(link1, link2) {
  var href1=link1.href;
  var trimed1=href1.substring(href1.indexOf("'")+1);
  var name1=trimed1.substring(0,trimed1.indexOf("'"));
 
  //alert(href1+" --- "+name1);

  var href2=link2.href;
  var trimed2=href2.substring(href2.indexOf("'")+1);
  var name2=trimed2.substring(0,trimed2.indexOf("'"));

  return name1==name2;
}

function getShowImageLinks() {
  var links=document.links;
  var result=new Array();
  for (var i=0; i<links.length; i++) {
    if (links[i].href.indexOf("javascript:showImage(")==0) {
      var present=false;
      for (var j=0; j<result.length; j++) {
        if (isImageLinksEquals(result[j],links[i])) {
          present=true;
          break;
        }
      }

      if (!present) {
        result[result.length]=links[i];
      }
    }
  }

  return result;
}

function getCurrentImageIndex(imageLinks, imageName) {
  for (var i=0; i<imageLinks.length; i++) {
    if (imageLinks[i].href.indexOf(imageName)>0) {
      return i;
    }
  }

  return -1;
}


var generatedDivId=0;

//Internal function for zomming image.
//Used in printZoomImage
function showImage(ImageName, ImageTitle, ImageWidth, ImageHeight, AddText) {
  if (currentImageWin!=null) {
    document.body.removeChild(currentImageWin);
    currentImageWin=null;
  }

  var imageLinks=getShowImageLinks();
  var currentImageIndex=getCurrentImageIndex(imageLinks,ImageName);

  var d=document;

  if (currentImageWin!=null) {
    document.body.removeChild(currentImageWin);
  }
  
  if (lightOffDiv==null) {
	lightOffDiv=d.createElement("div");
	lightOffDiv.id="light-off-div";
	lightOffDiv.className="light-off-div";
	document.body.appendChild(lightOffDiv);
  }
  
  lightOffDiv.style.display="";
  lightOffDiv.style.top=0;
  lightOffDiv.style.left=0;
  lightOffDiv.style.width=document.body.scrollWidth;
  lightOffDiv.style.height=document.body.scrollHeight;
  //bringToFront("light-off-div");

  var frame=d.createElement("div");
  generatedDivId++;
  frame.id="generated"+generatedDivId;
  frame.style.display="none";
  //document.body.appendChild(frame);
  document.body.insertBefore(frame,document.body.firstChild);
  frame.className="image-win";
  frame.style.width=ImageWidth+16;

  frame.style.top=document.body.scrollTop+20;
  frame.style.left=(document.body.scrollWidth-(ImageWidth+10))/2;

  
  var header=d.createElement("div");
  frame.appendChild(header);
  header.className="header";

  
  var headerTitle=d.createElement("div");
  header.appendChild(headerTitle);
  headerTitle.className="htitle";
  headerTitle.innerHTML=ImageTitle+"&nbsp;";


  var closeButton=d.createElement("div");
  closeButton.className="close";
  header.insertBefore(closeButton,header.firstChild);

  closeButton.onclick=showImage_OnClose;
   
  var content=d.createElement("div");
  content.className="content";
  frame.appendChild(content);

  content.innerHTML="<center><img align=\"center\" src=\""+ImageName+"\" width=\""+ImageWidth+"\" height=\""+ImageHeight+"\" onclick=\"showImage_OnClose()\">"+
      (AddText ? "<br>"+AddText : "")+"</center>";

  var prevLink="";
  if (currentImageIndex>0) {
    prevLink="<a href=\""+imageLinks[currentImageIndex-1].href.replace("&","&amp;")+"\"><img src=\""+getRootURLPrefix()+"../_template/image-prev.gif\" border=\"0\"/></a>";
  } else {
    prevLink="<img src=\""+getRootURLPrefix()+"../_template/image-prev-grey.gif\" />";
  }

  var nextLink="";
  //alert(imageLinks[currentImageIndex+1].href.replace("&","&amp;"));
  if (currentImageIndex<(imageLinks.length-1)) {
    nextLink="<a href=\""+imageLinks[currentImageIndex+1].href.replace("&","&amp;")+"\"><img src=\""+getRootURLPrefix()+"../_template/image-next.gif\"  border=\"0\"/></a>";
  } else {
    nextLink="<img src=\""+getRootURLPrefix()+"../_template/image-next-grey.gif\" />";
  }

  var nav=d.createElement("div");
  nav.innerHTML=
    "<center><table align=\"center\" cellspacing=\"5\"><tr><td valign=\"top\">"+prevLink+
    "</td><td valign=\"top\">"+(currentImageIndex+1)+"/"+imageLinks.length+
    "</td><td valign=\"top\">"+nextLink+"</td></tr></table></center>";
  frame.appendChild(nav);

  frame.style.display="";

  currentImageWin=frame;
  currentImageWidth=ImageWidth;
  currentImageHeihgt=ImageHeight;
	
  bringToFront(frame.id);
}


//Local navigation page definition
function LocalNavigationItem(hyperlink, title) {
  this.hyperlink=hyperlink;
  this.title=title;
}

function printLocalNavigation(navigationItems, indexLink) {
  var pageIndex=-1;
  var i;
  var pagePath=location.pathname;
	var navItemLength=0;
  for (i=0; i<navigationItems.length; i++) {
    if (pagePath.search(navigationItems[i].hyperlink)>=0 && navigationItems[i].hyperlink.length>navItemLength) {
      pageIndex=i;
    }
  }

  if (pageIndex>=0) {
    var linkLeft=null, linkRight=null;
    if (pageIndex>0) {
      linkLeft=navigationItems[pageIndex-1].hyperlink;
    }
    if (pageIndex<(navigationItems.length-1)) {
      linkRight=navigationItems[pageIndex+1].hyperlink;
    }

    printNavigation(linkLeft,linkRight,indexLink);
  }
}


//////////////////////////////////////////////////////////////
//
// Adsense
//
//////////////////////////////////////////////////////////////

google_ad_client = "pub-0036569436360210";

__google_small_adsense=false;

try {
  __google_small_adsense=eval("google_small_adsense");
} catch (e) {
}


function printAdsenseStart() {
  var d=document;
//  d.writeln("<script language='JavaScript'>");

  if (__google_small_adsense) {
    google_ad_client = "pub-0036569436360210";
    google_ad_slot = "9238704955";
    google_ad_width = 120;
    google_ad_height = 240;
    //d.writeln("google_ad_slot = '9238704955';");
    //d.writeln("google_ad_width = 120;");
    //d.writeln("google_ad_height = 240;");
  } else {
    google_ad_client = "pub-0036569436360210";
    google_ad_slot = "7723143793";
    google_ad_width = 160;
    google_ad_height = 600;
    //d.writeln("google_ad_slot = '7723143793';");
    //d.writeln("google_ad_width = 160;");
    //d.writeln("google_ad_height = 600;");
  }


//  d.writeln("</script>");
}



function printAdvertisingStart() {  
  var d=document;
  var header;
  if (getPageLanguage()=="rus") 
    header="Реклама";
  else 
    header="Advertising";

  d.writeln("<div class=\"left_submenu\">");
  d.writeln("  <div class=\"left_submenu_advert\">");

  if (localDebug) return;

  printAdsenseStart();  
}

function printAdvertisingEnd() {
  var d=document;
  d.writeln("  </div>");
  d.writeln("</div>");
}


function printHorzAdsenseStart() {
  google_ad_client = "pub-0036569436360210";
  google_ad_slot = "0031956074";
  google_ad_width = 468;
  google_ad_height = 60;

  var d=document;
  d.writeln("<div style='text-align:center;margin-top:5px;margin-bottom:5px;'>");

//  d.writeln("<script language='JavaScript'>");

//  d.writeln("google_ad_slot = '0031956074';");
//  d.writeln("google_ad_width = 468;");
//  d.writeln("google_ad_height = 60;");

//  d.writeln("</script>");
}

function printHorzAdsenseEnd() {
  document.writeln("</div>");
}


function printHorizontalBannerStart() {
  if (localDebug) return;
  printHorzAdsenseStart();
}

function printHorizontalBannerEnd() {
  if (localDebug) return;
  printHorzAdsenseEnd();
}

function printLinkBlockStart() {
  google_ad_client = "pub-0036569436360210";
  google_ad_slot = "5284202811";
  google_ad_width = 160;
  google_ad_height = 90;

  var d=document;
  var header;
  if (getPageLanguage()=="rus") 
    header="Реклама";
  else 
    header="Advertising";

  d.writeln("<div class=\"left_submenu\">");
  d.writeln("  <div class=\"left_submenu_advert\">");

  if (localDebug) return;

//  d.writeln("<script language='JavaScript'>");

//  d.writeln("google_ad_slot = '5284202811';");
//  d.writeln("google_ad_width = 160;");
//  d.writeln("google_ad_height = 90;");

//  d.writeln("</script>");
}

function printLinkBlockEnd() {
  var d=document;
  d.writeln("  </div>");
  d.writeln("</div>");
}



////////////////////////////////////////////////////////////////////////


var activeAnchorTimer;

function showActiveAnchorImpl() {
  if (document.location.hash) {
    anchorName=document.location.hash.substring(1);
    anchors=document.getElementsByTagName("a");
    for (var i=0; i<anchors.length; i++) {
      if (anchors[i].name==anchorName) {
        if (anchors[i].href && anchors[i].href.indexOf("javascript:")==0) {
          var evalStr=anchors[i].href.substring("javascript:".length);
          eval(unescape(evalStr));
        }
        break;
      }
    }
  }

  clearTimeout(activeAnchorTimer);
}

function showActiveAnchor() {
  activeAnchorTimeout=setTimeout("showActiveAnchorImpl()",1000);
}

////////////////////////
// Facebook comments

function getContentElement() {
  var elems=document.getElementsByTagName("td");
	for (var i=0; i<elems.length; i++) {
	  if (elems[i].className=="content" || elems[i].className=="content-deluxe") {
		  return elems[i];
		}
	}
	
	return null;
}

function appendFacebookComments() {
/*  var headElement=document.getElementsByTagName("head")[0];
	var elemFbApp=document.createElement("meta");
	elemFbApp.setAttribute("property","fb:app_id");
	elemFbApp.setAttribute("content","214663101906145");
	headElement.appendChild(elemFbApp);
*/	
  var elemContent=getContentElement();
			
  var elemComments=document.createElement("div");
  elemComments.style.textAlign="center";
  elemContent.appendChild(elemComments);
			
  var elemFbRoot=document.createElement("div");
  elemFbRoot.id="fb-root";
  elemComments.appendChild(elemFbRoot);

  var elemFbComments=document.createElement("fb:comments");
  elemFbComments.setAttribute("href",getPureUrl(document.location.href));
  elemFbComments.setAttribute("num_posts","4");
  elemFbComments.setAttribute("width","600");
  elemFbComments.setAttribute("migrated","1");
  elemComments.appendChild(elemFbComments);
			
  window.fbAsyncInit = function() {
    FB.init({appId: '214663101906145', status: true, cookie: true, xfbml: true});
  };
			
  (function() {
    var e = document.createElement('script');
    e.type = 'text/javascript';
    e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js#xfbml=1';
    e.async = "true";
    document.getElementById('fb-root').appendChild(e);
  }());
}

function appendGooglePlusOneScript() {
  (function() {
    var e = document.createElement('script');
    e.type = 'text/javascript';
    e.src = 'https://apis.google.com/js/plusone.js';
    e.async = "true";
    getContentElement().appendChild(e);
  }());
	
	
}


