//Quantity of images in the library
var figureLibrarySize=810;


var ulib=new Array();
ulib[ulib.length]=new Array('02.06.2001',60);
ulib[ulib.length]=new Array('20.06.2001',40);
ulib[ulib.length]=new Array('15.08.2001',10);
ulib[ulib.length]=new Array('15.03.2002',20);
ulib[ulib.length]=new Array('17.07.2002',20);
ulib[ulib.length]=new Array('22.08.2002',10);
ulib[ulib.length]=new Array('30.09.2002',30);
ulib[ulib.length]=new Array('04.02.2003',30);
ulib[ulib.length]=new Array('13.04.2003',20);
ulib[ulib.length]=new Array('09.06.2003',10);
ulib[ulib.length]=new Array('15.09.2003',20);
ulib[ulib.length]=new Array('30.05.2004',10);
ulib[ulib.length]=new Array('12.06.2004',20);
ulib[ulib.length]=new Array('08.10.2004',10);
ulib[ulib.length]=new Array('21.11.2004',10);
ulib[ulib.length]=new Array('01.11.2005',60);
ulib[ulib.length]=new Array('22.11.2005',30);
ulib[ulib.length]=new Array('04.02.2006',20);
ulib[ulib.length]=new Array('01.10.2006',10);
ulib[ulib.length]=new Array('07.01.2007',30);
ulib[ulib.length]=new Array('28.03.2007',10);
ulib[ulib.length]=new Array('14.05.2007',20);
ulib[ulib.length]=new Array('01.10.2007',20);
ulib[ulib.length]=new Array('14.12.2007',10);
ulib[ulib.length]=new Array('11.04.2008',20);
ulib[ulib.length]=new Array('26.12.2008',20);
ulib[ulib.length]=new Array('18.07.2009',20);
ulib[ulib.length]=new Array('12.08.2009',20);
ulib[ulib.length]=new Array('30.09.2009',30);
ulib[ulib.length]=new Array('08.10.2009',20);
ulib[ulib.length]=new Array('19.10.2009',20);
ulib[ulib.length]=new Array('09.12.2009',30);
ulib[ulib.length]=new Array('03.01.2010',30);
ulib[ulib.length]=new Array('22.03.2010',10);
ulib[ulib.length]=new Array('16.06.2010',10);
ulib[ulib.length]=new Array('30.05.2011',10);
ulib[ulib.length]=new Array('23.06.2011',10);
ulib[ulib.length]=new Array('08.07.2011',10);
ulib[ulib.length]=new Array('28.09.2011',10);
ulib[ulib.length]=new Array('06.10.2011',10);


function extractYear(str) {
  var s=str.split(".");
  return s[2];
}

var extendedEncoding='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-.';

function encodeChartValue(val, maxValue) {
  value=Math.floor(val*4095/maxValue);

  var low=value % 64;
  var high=Math.floor(value/64);
  var lowChar=extendedEncoding.charAt(low);
  var highChar=extendedEncoding.charAt(high);
  return highChar+lowChar;
}

function printYearChart() {
  var years=new Array();
  var yearValues=new Array();

  for (var i=0; i<ulib.length; i++) {
    var lastYear="0";
    if (years.length>0) {
      lastYear=years[years.length-1];
    }
  
    var currentYear=extractYear(ulib[i][0]);
    if (currentYear==lastYear) {
      yearValues[yearValues.length-1]+=ulib[i][1];
    } else {
      years[years.length]=currentYear;
      yearValues[yearValues.length]=ulib[i][1];
    }
  }

  var maxYearValue=0;
  for (var i=0; i<yearValues.length; i++) {
    if (maxYearValue<yearValues[i]) {
      maxYearValue=yearValues[i];
    }
  }

  var chartUrl="http://chart.apis.google.com/chart?chs=350x150&cht=bvs&chxt=x,y&chco=6c9ce4&chd=e:";


  for (var i=0; i<yearValues.length; i++) {
    chartUrl+=encodeChartValue(yearValues[i], maxYearValue);
  }


  chartUrl+="&chl=";
  for (var i=0; i<years.length; i++) {
    if (i>0) {
      chartUrl+="|";
    }

    chartUrl+=years[i].substring(2);
  }

  chartUrl+="&chxr=1,0,"+maxYearValue;


  document.writeln("<img src=\""+chartUrl+"\" width=\"350\" height=\"150\" \>");
}






//Get figure type
//The function returns base file name of HTML page
function getFigureType() {
  if (getFolderName()=="grey") {
    return "grey";
  } else {
    return "bw";
  }
}

//Get library file index
function getLibraryFileIndex() {
  var fileParts=getFileName().split(".");
  if (fileParts.length==0) return 0;

  return parseInt(fileParts[0].substring(getFigureType().length));
}

//Print figure library menu
function printFigureLibraryMenu() {
  var filePrefix;
  if (getFigureType()=="grey") {
    filePrefix="grey";
  } else { //libraryFigureType="
    filePrefix="bw";
  }

  var rowCount=Math.floor((figureLibrarySize/10+4)/4);
  var d=document;

  if (getPageLanguage()=="rus") {
    leftmenu_printStart("<a href=\"../index.html\">Библиотека фигур</a>");
  } else if (getPageLanguage()=="eng") {
    leftmenu_printStart("<a href=\"../index.html\">Figures Library</a>");
  }

  d.writeln("<table class=\"left_submenu_table\" align=\"center\">");
  var currentFileName=getFileName();

  for (var i=0; i<rowCount; i++) {
    d.write("<tr>");
    for (var j=0; j<4; j++) {
      d.write("<td>");
      var cnt=(j*rowCount+i+1)*10;
      if (cnt<=figureLibrarySize) {
        var fileName=filePrefix+(j*rowCount+i+1)+"\.html";
        if (fileName==currentFileName) {
          d.write("<b>"+cnt+"</b>");
        } else {
          d.write("<a href=\""+fileName+"\">"+cnt+"</a>");
        }
      } else {
        d.write("&nbsp;");
      }
      d.write("</td>");
    }
  }

  d.writeln("<tr><td colspan=\"4\" align=\"center\">");
  var figureType=getFigureType();
  if (figureType=="grey") 
    figureType="bw";
  else 
    figureType="grey";
  var fileIndex=getLibraryFileIndex();

  d.writeln("<a href=\"../"+figureType+"/"+figureType+fileIndex+".html\">");
  if (getPageLanguage()=="rus") {
    if (figureType=="grey") {
      d.writeln("Фигуры в серых тонах");
    } else {
      d.writeln("Черно-белые фигуры");
    }
  } else {
    if (figureType=="grey") {
      d.writeln("Greyscale figures");
    } else {
      d.writeln("Wireframe figures");
    }
  }    
  d.writeln("</a>");
  d.writeln("</td></tr>");

  d.writeln("<tr><td colspan=\"4\" align=\"center\">");
  d.writeln("<a href=\"../search.html\">");
  if (getPageLanguage()=="rus") {
    d.writeln("Поиск фигур");
  } else {
    d.writeln("Search figures");
  }
  d.writeln("</a>");
  d.writeln("</td></tr>");

  d.writeln("</table>");

  leftmenu_printEnd();
}

function printFigureLibraryNavigation() {
  var fileIndex=getLibraryFileIndex();
  var lastFileIndex=figureLibrarySize/10;
  var figureType=getFigureType();

  if (fileIndex==1) {
    printNavigation("", figureType+"2.html", "../index.html"); 
  } else if (fileIndex==lastFileIndex) {
    printNavigation(figureType+(fileIndex-1)+".html","", "../index.html");
  } else {
    printNavigation(figureType+(fileIndex-1)+".html",figureType+(fileIndex+1)+".html","../index.html");
  }
}
