/*

Funzioni JavaScript per il sito LB PROGRAMMING PAGE

Copyright (C) 2006 by Leonardo Berti

Database progetti (versione in Italiano)

*/

var LANG_IT=0;
var LANG_EN=1;


//per default è in italiano
var _lang=LANG_IT;

//aggiungere qui altri linguaggi

var _data=null;

//costanti dipendenti dal linguaggio
//scheda progetto

var _txlicense;
var _txprjhome;
var _txdownload;
var _txcat;
var _txdate;
var _txlanguage;
var _txcompiler;

//menu principale
var _txhome;
var _txgames;
var _txprojects;
var _txtips;
var _txexperiments;
var _txlinks;
var _txcontact;
var _txoldstuff;

//altre parole da tradurre
var _txWords=null;

function setSiteLang(lang)
{
  if (lang=="EN")
  {
    _lang=LANG_EN;
  }
  else
  {
    _lang=LANG_IT;
  }

}

function getLangStr()
{
   switch(_lang)
   {
     case LANG_EN:
     return "EN";
     default:
     return "IT";
   }
}

function initDict()
{
  switch(_lang)
  {
      case LANG_EN:
      
      _txWords=new Array(
      
      "Search project",   //0
      "category",            //1
      "language",   //2
      "OK"                        //3
      );


      break;

      default:

      _txWords=new Array(
      "Ricerca progetto",
      "categoria",
      "linguaggio",
      "OK"

      );

      break;
  }

};

function initMainMenu()
{
  switch(_lang)
  {
     case LANG_EN:
     
     _txlicense="license";
     _txprjhome="project home page";
     _txdownload="download";
     _txcat="category";
     _txdate="date";
     _txlanguage="programming language";
     _txcompiler="compiler";

//menu principale

       _txhome="Home";
       _txgames="Games";
       _txprojects="Utility";
       _txtips="Tips";
       _txexperiments="Misc";
       _txlinks="Links";
       _txcontact="Contact";
       _txoldstuff="Old Stuff";

     
     break;
     default:
     
     //costanti dipendenti dal linguaggio

     _txlicense="licenza";
     _txprjhome="pagina del progetto";
     _txdownload="scarica";
     _txcat="categoria";
     _txdate="data";
     _txlanguage="linguaggio";
     _txcompiler="compilatore";

//menu principale

       _txhome="Home";
       _txgames="Videogiochi";
       _txprojects="Utilit&agrave;";
       _txtips="Tips";
       _txexperiments="Varie";
       _txlinks="Links";
       _txcontact="Contact";
       _txoldstuff="vecchi programmi";
     
     break;
  }
}

//Inizializa tutte le stringe compreso il db in base alla lingua

function createSiteData()
{
    //inizializza le stringhe del meu e delle schede
    initMainMenu();
    initDict();
    //crea il database dei progetti
    createDatabase();
}

//Crea il database dei progetti in base alla lingua corrente

function createDatabase()
{

//function Project(name,version,os,category,type,plang,compiler,descr,screenshot,date,url,download_url,license)

     _data=new Array(

       //0
       new Project("StarBlastrix","1.0","Win98,XP,2000",CAT_GAMES,_tr("sparatutto 2D"),PL_CPP,"Visual C++ 6.0","","sb.png","2006","sb.htm","sb_setup.zip","GNU General Public License"),
       //1
       new Project("Sudoku Solver","1.0","Win98,XP,Me,2000",CAT_GAMES,"puzzle",PL_CPP,"Visual C++ 6.0/MinGW","","sudoku.png","2006","sudoku.htm","sudoku_solver.zip","GNU General Public License"),
       //2
       new Project("Sirio","","DOS 16 bit",CAT_OLD_STUFF+CAT_GAMES,_tr("sparatutto 2D"),PL_QB,"QuickBasic","","sirio.png","1995","immagini/sirio.png","sirio.zip","Freeware"),
       //3
       new Project("Topgun","","DOS 16 bit",CAT_OLD_STUFF,"",PL_QB,"GW-BASIC 3.16","","topgun.png","1989","cga.htm","topgun.zip","Freeware"),
       //4
       new Project("Arcade game library","","DOS 16 bit",CAT_OLD_STUFF,"",PL_CPP,"Borland C++ 3.20","","arc4.png","1998","arcade.htm","arcade_lib.zip","Freeware"),
       //5
       new Project("Track - pseudo3d","","DOS 16 bit",CAT_OLD_STUFF,"",PL_CPP,"Borland C++ 3.20","","track.png","2005","arcade.htm","track.zip","Freeware"),
       //6
       new Project("Cars","","DOS 16 bit",CAT_OLD_STUFF,"",PL_QB,"GW-BASIC 3.16","","cars.png","1989","cga.htm","cars.zip","Freeware"),
       //7
       new Project("LKGRAF","","DOS 16 bit",CAT_OLD_STUFF,"",PL_QB,"GW-BASIC 3.16","","lkgraf.png","1989","cga.htm","lkgraf.zip","Freeware"),
       //8
       new Project("Labyr","","DOS 16 bit",CAT_OLD_STUFF,"",PL_QB,"GW-BASIC 3.16","","labyr.png","1989","cga.htm","labyr.zip","Freeware"),
       //9
       new Project("THUNDER","1.0","DOS 16 bit",CAT_OLD_STUFF+CAT_GAMES,"",PL_CPP,"Borland C++ 3.20","","th3.png","1999","thunder.htm","thunder.zip","Freeware"),
       //10
       new Project("Cellular automa","","DOS 16 bit",CAT_OLD_STUFF,"",PL_CPP,"Borland C++ 3.20","","ca.png","2002","immagini/ca.png","CellularAutoma.zip","Freeware"),
       //11
       new Project("EnumModes","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","enummodes.png",2002,"immagini/enummodes.png","enummodes.zip","Freeware"),
       //12
       new Project("Alpha2","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2002,"arcade32.htm","alpha2.zip","Freeware"),
       //13
       new Project("Backbuffer","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2002,"arcade32.htm","backbuffer.zip","Freeware"),
       //14
       new Project("Blits","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2002,"arcade32.htm","blits.zip","Freeware"),
       //15
       new Project("Images1","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2002,"arcade32.htm","images1.zip","Freeware"),
       //16
       new Project("DriverCaps","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","drivercaps.png",2002,"immagini/drivercaps.PNG","DriverCaps.zip","Freeware"),
       //17
       new Project("PutPixel","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","putpixel.png",2002,"immagini/putpixel.png","PutPixel.zip","Freeware"),
       //18
       new Project("Minimal app.","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2002,"","minimal.zip","Freeware"),
       //19
       new Project("Vettori1","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","vettori1.png",2001,"immagini/vettori1.png","Vettori1.zip","Freeware"),
       //20
       new Project("Joystick","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","a32joy.png",2006,"immagini/a32joy.png","Joystick.zip","Freeware"),
       //21
       new Project("Sound FX","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2006,"","Sounds.zip","Freeware"),
       //22
       new Project("True color 32 bit","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2006,"","true_color32.zip","Freeware"),
       //23
       new Project("Alpha blending","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","blend.png",2006,"immagini/blend.png","Blend.zip","Freeware"),
       //24
       new Project("Images2","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2002,"","Images2.zip","Freeware"),
       //25
       new Project("Sprites1","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","",2002,"","Sprites1.zip","Freeware"),
       //26
       new Project("Rotations & scaling","","WIN32",CAT_MISC,"",PL_CPP,"Visual C++ 6.0","","rotation.png",2006,"immagini/rotation.png","rotation.zip","Freeware"),
       //27
       new Project("Load PCX","","DOS 16 bit",CAT_OLD_STUFF,"",PL_CPP,"Borland C++ 3.20","","",1996,"","loadpcx.zip","Freeware"),
       //28
       new Project("Key scan code","","DOS 16 bit",CAT_OLD_STUFF,"",PL_CPP,"Borland C++ 3.20","","",1996,"","key1.zip","Freeware"),
       //29
       new Project("Svga256","","DOS 16 bit",CAT_OLD_STUFF,"",PL_CPP,"Borland C++ 3.20","","",1996,"","svga256.zip","Freeware"),
       //30
       new Project("Tornitura","","DOS 16 bit",CAT_UTILITY+CAT_OLD_STUFF,"",PL_CPP,"Boarland C++ 3.20","","taglio.png",1996,"immagini/taglio.png","taglio.zip","Freeware"),
       //31
       new Project("Arcade lib samples","","DOS 16 bit",CAT_OLD_STUFF,"",PL_CPP,"Borland C++ 3.20","","arcadedemo.png",1999,"arcade.htm","arcadelib_samples.zip","Freeware"),
       //32
       new Project("Arcade32 game library","","WIN32",CAT_UTILITY,"",PL_CPP,"Visual C++ 6.0","","blend.png",2002,"arcade32.htm","arcade32.zip","GNU General Public License"),
       //33
       new Project("HelloWorld! Win32","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","hellowin.png",2003,"immagini/hellowin.png","helloworld.zip","Freeware"),
       //34
       new Project("3d Graph","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","3dgraph.png",2004,"immagini/3dgraph.png","3dgraph.zip","Freeware"),
       //35
       new Project("Device Context test","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","dctest.png",2003,"immagini/dctest.png","dctest.zip","Freeware"),
       //36
       new Project("GDI test","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","gditest.png",2003,"immagini/gditest.png","gditest.zip","Freeware"),
       //37
       new Project("Keybd","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","keybd.png",2003,"immagini/keybd.png","keyb.zip","Freeware"),
       //38
       new Project("System Metric","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","metric.png",2003,"immagini/metric.png","metric1.zip","Freeware"),
       //39
       new Project("Mouse1","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","mouse1.png",2003,"immagini/mouse1.png","mouse1.zip","Freeware"),
       //40
       new Project("Rectangles","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","rectangles.png",2003,"immagini/rectangles.png","rectangles.zip","Freeware"),
       //41
       new Project("StockFonts","","WIN32",CAT_TIPS,"",PL_CPP,"Visual C++ 6.0","","stockfonts.png",2003,"immagini/stockfonts.png","stockfonts.zip","Freeware"),
       //42
       new Project("Sound Blaster programming","","DOS 16 bit",CAT_OLD_STUFF,"",PL_CPP,"Borland C++ 3.20","","sound2.png",1998,"immagini/sound2.png","sbdrv.zip","Freeware"),
       //43
       new Project("C++ Hello World","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2006,"hello.htm","hello.zip","Freeware"),
       //44
       new Project("class complex","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2006,"complex.htm","complex.zip","Freeware"),
       //45
       new Project("Stack1","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2007,"stack1.htm","stack1.zip","Freeware"),
       //46
       new Project("Stack2","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2007,"stack2.htm","stack2.zip","Freeware"),
       //47
       new Project("Stack3","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2007,"stack3.htm","stack3.zip","Freeware"),
       //48
       new Project("std list","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2007,"stack2.htm","stdlist_ex.zip","Freeware"),
       //49
       new Project("OpenGL 3D wire cube","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2006,"wirecube.htm","3dwirecube.zip","Freeware"),
       //50
       new Project("OpenGl minimal window","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2006,"oglminimal.htm","oglminimal.zip","Freeware"),
       //51
       new Project("OpenGl 2D primitives","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2006,"oglprimitives.htm","oglprimitives.zip","Freeware"),
       //52
       new Project("OpenGl vertex arrays","","WIN32",CAT_TIPS,"",PL_CPP,"CodeBlocks/gcc","","",2006,"vertexarrays.htm","vertexarrays.zip","Freeware"),
       //53
       new Project("DHTML pong game","","All",CAT_GAMES,"",PL_DHTML,"-","","pong.png",2004,"pong.htm","pong.zip","Freeware"),
       //54
       new Project("Aritm 32","","DOS",CAT_TIPS,"",PL_ASSEMBLY,"Flat assembler DOS","","",2004,"aritm32.htm","aritm32.zip","Freeware"),
       //55
       new Project("Aritm","","DOS",CAT_TIPS,"",PL_ASSEMBLY,"Flat assembler DOS","","",2004,"aritm.htm","aritm.zip","Freeware"),
       //56
       new Project("Mul div","","DOS",CAT_TIPS,"",PL_ASSEMBLY,"Flat assembler DOS","","",2004,"muldiv.htm","muldiv.zip","Freeware"),
       //57
       new Project("Pot","","DOS",CAT_TIPS,"",PL_ASSEMBLY,"Flat assembler DOS","","",2004,"pot.htm","pot.zip","Freeware"),
       //58
       new Project("sqrt","","DOS",CAT_TIPS,"",PL_ASSEMBLY,"Flat assembler DOS","","",2004,"sqrt.htm","sqrt.zip","Freeware"),
       //59
       new Project("ptrs","","DOS",CAT_TIPS,"",PL_ASSEMBLY,"Flat assembler DOS","","",2004,"ptrs.htm","ptrs.zip","Freeware"),
       //60
       new Project("table","","DOS",CAT_TIPS,"",PL_ASSEMBLY,"Flat assembler DOS","","",2004,"table.htm","table.zip","Freeware"),
       //61
       new Project("Sky Fluid 3D vector engine","","DOS",CAT_OLD_STUFF,"",PL_PASCAL,"Borland Turbo Pascal DOS","","",1995,"","sky_flui.zip","Freeware"),
       //62
       new Project("Linear equations solver","","WIN32",CAT_MISC,"",PL_CPP,"CodeBlocks/gcc","","",2009,"","linear_sys.zip","Freeware"),
       //63
       new Project("Math expression calculator","","WIN32",CAT_MISC,"",PL_CPP,"CodeBlocks/gcc","","",2009,"","calculator.zip","Freeware"),
       //64
       new Project("Returning consts","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"ret_const.html","ret_const.zip","Freeware"),
       //65
       new Project("Bit explorer","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"bit_explorer.html","bit_explorer.zip","Freeware"),
       //66
       new Project("C/C++ data types","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"data_types.html","data_types.zip","Freeware"),
       //67
       new Project("Declarations","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"declarations.html","declarations.zip","Freeware"),
       //68
       new Project("Iterators and const iterators","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"const_iter.html","const_iter.zip","Freeware"),
       //69
       new Project("Numeric limits","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"numeric_limits.html","numeric_limits.zip","Freeware"),
       //70
       new Project("Pointers","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"pointers.html","pointers.zip","Freeware"),
       //71
       new Project("Console input test","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"cin_test.html","cin_test.zip","Freeware"),
       //72
       new Project("Arrays","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"array_test.html","array_test.zip","Freeware"),
       //73
       new Project("Numeric base conversion","","WIN32",CAT_TIPS,"",PL_CPP,"gcc","","",2009,"","base_conv.zip","Freeware"),
       //74
       new Project("Java Hello World","","ALL",CAT_TIPS,"",PL_JAVA,"javac","","",2004,"jhelloworld.html","jhelloworld.zip","Freeware"),
       //75
       new Project("Abstract Classes","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2004,"","jabstractclasses.zip","Freeware"),
       //76
       new Project("Array demo","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2004,"jarraydemo.html","jarraydemo.zip","Freeware"),
       //77
       new Project("Celsius Converter","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2006,"","CelsiusConverter.zip","Freeware"),
       //78
       new Project("Bubble sort","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2006,"jbubblesort.html","jbubbledemo.zip","Freeware"),
       //79
       new Project("Swing basic widgets","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2006,"","jcommonconstrols.zip","Freeware"),
       //80
       new Project("Threads","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2005,"","jthreads.zip","Freeware"),
       //81
       new Project("Db Explorer","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2005,"","DbExplorer.zip","Freeware"),
       //82
       new Project("File read line","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2006,"jfilereadline.html","jfilereadline.zip","Freeware"),
       //83
       new Project("Binary file","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2006,"jbinaryfile.html","jbinaryfile.zip","Freeware"),
       //84
       new Project("Hello Applet","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2006,"helloapplet.html","HelloApplet.zip","Freeware"),
       //85
       new Project("GUI applet test","","ALL",CAT_TIPS,"",PL_JAVA,"javac/NetBeans","","",2006,"Applet3_jar.html","applet3.zip","Freeware")





      //function Project(name,version,os,category,type,plang,compiler,descr,screenshot,date,url,download_url,license)


     );

     switch (_lang)
     {

       case LANG_IT:
       //descrizioni in italiano
        _data[0].descr="Starblastrix &egrave; uno sparatutto a scorrimento orizzontale in cui lo scopo &egrave; completare le 8 missioni distruggendo pi&uacute; nemici possibile.E' possibile utilizzare la tastiera o il joystick (va impostato dal menu di configurazione).";
        _data[1].descr="Risolutore per il puzzle Sudoku.Pu&ograve; essere utilizzato anche come generatore di schemi.";
        _data[2].descr="Side scroller fatto in QuickBasic.Per giocare il tasto CAPS-LOCK (tasto maiuscole) deve essere attivo.";
        _data[3].descr="Gioco di aerei non finito.La grafica &egrave; CGA a 4 colori e il suono &egrave; ottenuto con il pc speaker.Da GW-BASIC caricare ed eseguire TOP.BAS e giocare con CAPS-LOCK attivo.";
        _data[4].descr="Libreria grafica per la modalit&agrave; 13h DOS (VGA 320x200 256 colori).E' stata realizzata per il gioco Thunder e altri applicativi.Nello zip allegato oltre alla libreria ci sono degli esempi di utilizzo.Oltre alla grafica gestisce anche la tastiera e il joystick";
        _data[5].descr="Esempio di strada pseudo3d fatta con una tecnica simile a quella di giochi tipo PolePosition e OutRun.Utilizza la libreria arcade per DOS";
        _data[6].descr="Gioco di corse fatto in GW-BASIC";
        _data[7].descr="Un semplice programma tipo paint per creare grafica CGA";
        _data[8].descr="&nbsp;";
        _data[9].descr="Sparatutto a scorrimento verticale non finito su piattaforma DOS.E' stata utilizzata la libreria <a href='arcade.htm'>arcade</a> per realizzarlo.E' possibile usare sia la tastiera sia il joystick (porta seriale).Con la tastiera usare le frecce e CTRL sinistro per sparare.";
        _data[10].descr="Un automa cellulare realizzato con la libreria grafica <a href='arcade.htm'>arcade</a> per DOS";
        _data[11].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Visualizza tutte le modalit&agrave grafiche supportate dalla scheda corrente.";
        _data[11].source="enummodes.htm";
        _data[12].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Alpha blending via software in modalit&agrave high color (16 bit per pixel).";
        _data[13].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Utilizzo del back buffer.";
        _data[13].source="backbuffer.htm";
        _data[14].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Caricamento da file BMP e blitting di una immagine usando il nero come colore trasparente.";
        _data[15].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Caricamento di una immagine BMP.";
        _data[16].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Esempio che mostra le feature directx supportate dalla scheda video corrente.Visualizza anche la memoria video totale e libera.";
        _data[17].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Disegno di singoli pixel usando le funzioni direct draw.";
        _data[18].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Framework base e inizializzazione della modalit&agrave; grafica full screen.";
        _data[19].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Disegno di linee e poligoni.";
        _data[19].source="Vettori1.htm";
        _data[20].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Acquisizione dello stato del joystick.";
        _data[20].source="joystick.htm";
        _data[21].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Esecuzione di effetti sonori simultanei memorizzati in file .WAV";
        _data[21].source="sounds.htm";
        _data[22].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Caricamento di una immagine BMP in modalit&agrave; full screen a 32 bit per pixel";
        _data[23].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Alpha blending via software in modalit&agrave; a 16 bpp.";
        _data[24].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Blitting veloce di sprite grandi con sfondo trasparente.";
        _data[25].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Sprites.";
        _data[26].descr="Esempio di utilizzo della libreria <a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a>.Rotazione e scalatura di una immagine caricata da file BMP.";
        _data[26].source="rotation.htm";
        _data[27].descr="Funzione per decodifica e caricamento immagini PCX e visualizzazione in modalit&agrave; 320x200 a 256 colori utilizzando il driver grafico SVGA256.BGI.";
        _data[27].source="loadpcx.htm";
        _data[28].descr="Acquisisce lo scan-code del tasto premuto attraverso l'interrupt 16H.";
        _data[28].source="key1.htm";
        _data[29].descr="Grafica SVGA a 256 colori (640x400?) utilizzano il driver SVGA256.BGI.Mostra come caricare il driver e inizializzare la modalit&agrave; grafica.";
        _data[29].source="svga256.htm";
        _data[30].source="taglio.htm";
        _data[30].descr="Calcolo parametri di taglio in tornitura.";
        _data[31].descr="alcuni esempi di utilizzo della libreria grafica Arcade per DOS (modalit&agrave; grafica 320x200 256 colori)";
        _data[32].descr="Direct Draw 2D game engine.Pacchetto con sorgenti e libreria compilata.";
        _data[32].keywords="DirectDraw Direct Draw DirectX graphics library Direct Input DirectInput DirectSound Direct Sound Direct Music DirectMusic,true color,game programming,2D";
        _data[33].descr="Programma base Windows.Visualizza una finestra vuota.Utilizza unicamente le API di sistema.";
        _data[33].keywords="WIN32 API";
        _data[33].source="helloworldsrc.htm";
        _data[34].descr="Programma che visualizza alcuni grafici tridimensionali con possibilit&agrave; di rotazione e zoom.Mostra l'utilizzo delle API di Windows per la creazione di dialogs,menu ecc.Non richiede installazione.";
        _data[34].keywords="WIN32 API";
        _data[35].descr="Acquisizione di informazioni del device context del video.Acquisisce la risoluzione in pixel,la profondit&agrave; colore ecc...";
        _data[35].keywords="WIN32 API GDI";
        _data[36].descr="Disegno di linee utilizzando le funzioni GDI di Windows.";
        _data[36].keywords="WIN32 API";
        _data[37].descr="Premendo i tasti della tastiera, visualizza il codice del tasto virtuale corrispondente, il codice ASCII e il nome del tasto.E' stato fatto usando unicamente le API di Windows.";
        _data[37].keywords="WIN32 API";
        _data[37].source="keybd.htm";
        _data[38].descr="Acquisizione informazioni sulla metrica di sistema.";
        _data[38].keywords="WIN32 API";
        _data[39].descr="Disegno di linee e punti utilizzando il mouse in Windows.";
        _data[39].keywords="WIN32 API";
        _data[39].source="mouse1.htm";
        _data[40].descr="Disegna rettangoli casuali all'interno della finestra.";
        _data[40].keywords="WIN32 API";
        _data[41].descr="Visualizza le tabelle con i font di sistema.Premere le frecce per passare da un font all'altro.";
        _data[41].keywords="WIN32 API";
        _data[42].descr="Prove di programmazione della vecchia scheda Sound Blaster 16 in c++.Gli esempi mostrano come caricare in memoria il driver SBFMDRV.COM per l'esecuzione dei file .CMF.C'&egrave; anche un esempio che utilizza il driver AUXDRV.DRV (MIXER) per eseguire file .VOC.Questi programmi necessitano dei driver Sound Blaster e una scheda Sound Blaster originale.In alternativa sui moderni sistemi operativi &egrave; possibile eseguirli con VDMSOUND o altri emulatori per SB.";
        _data[43].keywords="hello world cout";
        _data[43].descr="Hello world in standard C++";
        _data[43].source="hello.htm";
        _data[44].keywords="complex cout friend";
        _data[44].descr="Implementazione di una classe C++ per la gestione (operazioni principali e output con overloading di <<) dei numeri complessi.";
        _data[44].source="complex.htm";
        _data[45].keyword="stack push pop modular paradigm";
        _data[45].source="stack1.htm";
        _data[45].descr="Implementazione di un semplice stack usando un namespace.(esempio di modular paradigm)";
        _data[46].keyword="stack push pop modular paradigm overflow underflow";
        _data[46].source="stack2.htm";
        _data[46].descr="Implementazione di uno stack usando un namespace e le eccezioni(modular paradigm)";
        _data[47].source="stack3.htm";
        _data[47].keyword="stack push pop modular paradigm overflow underflow";
        _data[47].descr="Implementazione di una classe Stack con gestione eccezioni";
        _data[48].source="list.htm";
        _data[48].keyword="std list std::list";
        _data[48].descr="Esempio di utilizzo della classe std::list della libreria standard del C++";
        _data[49].keyword="Open GL 3d";
        _data[49].source="wirecube.htm";
        _data[49].descr="Esempio utilizzo matrici Open GL";
        _data[50].keyword="Open GL 3d minimal";
        _data[50].source="oglminimal.htm";
        _data[50].descr="Creazione della finestra base Open GL";
        _data[51].keyword="2d Open GL primitive";
        _data[51].source="oglprimitives.htm";
        _data[51].descr="Disegno di primitive 2D";
        _data[52].keyword="2d Open GL primitive vertex arrays";
        _data[52].source="vertexarrays.htm";
        _data[52].descr="Disegno di primitive 2D usando i vertex arrays";
        _data[53].keyword="javascript game pong";
        _data[53].source="pong.htm";
        _data[53].descr="Clone del gioco pong fatto usando soltanto javascript e html.";
        _data[54].keyword="assembly asm aritmetica registri";
        _data[54].source="aritm32.htm";
        _data[54].descr="Somma tra registri a 32 bit.Codice sorgente che crea un EXE.";
        _data[55].keyword="assembly asm aritmetica registri";
        _data[55].source="aritm.htm";
        _data[55].descr="Esegue semplici operazioni aritmetiche (istruzioni ADC,ADD e SUB).";
        _data[56].keyword="assembly asm aritmetica registri";
        _data[56].source="muldiv.htm";
        _data[56].descr="Utilizzo delle istruzioni MUL e DIV con registri a 16 bit.";
        _data[57].keyword="assembly asm aritmetica registri potenza";
        _data[57].source="pot.htm";
        _data[57].descr="elevamento di un numero ad un esponente intero (usa XOR,DEC,MOV,MUL,LOOP,CMP).";
        _data[58].keyword="assembly asm aritmetica registri sqrt radice quadrata";
        _data[58].source="sqrt.htm";
        _data[58].descr="calcola la radice quadrata approssimata di un numero intero<br>la radice quadrata si ottiene contanto il numero di sottrazioni<br>necessarie per portare a zero (o minore di zero) il numero originale sottraendo<br>numeri dispari crescenti<br>esempio 110-1   109-3  106-5  101-7 ..";
        _data[59].keyword="assembly asm puntatori";
        _data[59].source="ptrs.htm";
        _data[59].descr="uso dei puntatori";
        _data[60].keyword="assembly asm tabella puntatori";
        _data[60].source="table.htm";
        _data[60].descr="Accesso ai dati espressi in forma tabellare";
        _data[61].descr="Un rudimentale engine vettoriale 3D scritto in Turbo Pascal per dos.Il pacchetto contiene l'engine SKY_FLUI.EXE e un rudimentale editor di mondi: SPACE_M.EXE.Per testare il programma eseguire l'engine e digitare il file di prova (completo di percorso) test.spc\nIl movimento si controlla con i tasti del tastierino numerico (num lock va abilitato!) mentre la barra spaziatrice serve per sparare";
        _data[61].keyword="engine 3d vettoriale";
        _data[62].descr="Engine per la soluzione di sistemi di equazioni lineari e calcolo del determinanate usando il metodo di Crout e di Gauss";
        _data[62].keyword="soluzione equazioni lineari crout gauss equations system"
        _data[63].descr="Interprete di espressioni matematiche";
        _data[63].keyword="calculator espressioni matematiche valutazione di espressioni";
        _data[64].descr="restituire valori costanti";
        _data[64].keywords="const reference";
        _data[65].descr="estrazione dei bit";
        _data[65].keywords="bit explorer";
        _data[66].descr="tipi di dati fondamentali";
        _data[66].keywords="dati fondamentali";
        _data[67].descr="dichiarazioni";
        _data[67].keywords="declarations";
        _data[68].descr="iteratori costanti e non costanti";
        _data[68].keywords="iteratori";
        _data[69].descr="limiti numerici";
        _data[69].keywords="limiti";
        _data[70].descr="puntatori";
        _data[70].keywords="puntatori puntatore";
        _data[71].descr="validazione input da console";
        _data[71].keywords="console input";
        _data[72].descr="array";
        _data[72].keywords="array";
        _data[73].descr="programma di conversione di base numerica";
        _data[73].keywords="conversione base";
        _data[74].descr="Hello world in java.Compilato da riga di comando";
        _data[74].keywords="hello";
        _data[74].source="jhelloworld.html";
        _data[75].descr="Classi astratte";
        _data[75].keywords="abstract";
        _data[76].descr="Array multidimensionali";
        _data[76].keywords="multidimensional array";
        _data[77].descr="Convertitore temperatura (interfaccia Swing)";
        _data[77].keywords="swing celsius";
        _data[78].descr="Bubble sort";
        _data[78].keywords="bubble sort";
        _data[79].descr="Swing widget di base";
        _data[79].keywords="swing base widgets";
        _data[80].descr="Threads";
        _data[80].keywords="threads";
        _data[81].descr="Oracle db explorer.Usa il driver IV tipo jdbc per connettersi a db Oracle.";
        _data[81].keywords="oracle db database explorer";
        _data[82].descr="Lettura file di testo riga per riga";
        _data[82].keywords="text file readline";
        _data[82].source="jfilereadline.html";
        _data[83].descr="Lettura e scrittura su file binario";
        _data[83].keywords="binary file file binario";
        _data[83].source="jbinaryfile.html";
        _data[84].descr="Hello Applet";
        _data[84].keywords="applet hello";
        _data[84].source="helloapplet.html";
        _data[85].descr="Applet con interfaccia Swing";
        _data[85].keywords="gui applet swing";

        break;

        case LANG_EN:
        //descrizioni in Inglese
        _data[0].descr="Starblastrix is a side scrolling shoot'em up game in which your task is to complete the 8 missions destroying as many enemies as you can.Some enemies release powerups and additional weapons.Input:keyboard or joystick.";
        _data[0].download_url="sb_setup_en.zip";
        //Sudoku Solver
        _data[1].descr="Solver for sudoku puzzles using logic strategies and/or iterative method.Can be used both as solutor and as puzzle generator.";
        _data[1].download_url="sudoku_solver_en.zip";
        _data[2].descr="Side scroller made with QuickBasic.To play this game the CAPS-LOCK key must be active";
        _data[3].descr="Unfinished airbattle game made in GW-BASIC.Four colors CGA graphics and pc speaker sound.From GW-BASIC load and run TOP.BAS.Caps lock key must be activated while playing.";
        _data[4].descr="Mode 13h graphics & game library.It's a wrapper for 320x200 256 colors VGA mode and for keyboard ad joystick input in DOS.In the zip there are also some examples.";
        _data[5].descr="Pseudo3d track made with arcade library for DOS";
        _data[6].descr="Car race game made with GW-BASIC";
        _data[7].descr="A paint program in CGA graphic mode.";
        _data[8].descr="&nbsp;";
        _data[9].descr="A vertical scrolling shoot'em'up for DOS.Was made with my <a href='arcade.htm?lang=EN'>arcade</a> DOS game library.I never finished this game.";
        _data[10].descr="Cellular automa made with the <a href='arcade.htm'>graphics library</a> for DOS";
        _data[11].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Enumerates all video modes supported by the graphic card.";
        _data[11].source="enummodes.htm";
        _data[12].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Software alpha blending in high color (16 bit) graphic mode.";
        _data[13].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Using the backbuffer";
        _data[13].source="backbuffer.htm";
        _data[14].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.This example shows how to load a BMP file and blit the image using the colour keying.";
        _data[15].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Loading a bitmap.";
        _data[16].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.This application shows the graphic board capabilities and the total and available video memory.";
        _data[17].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Drawing of single pixels";
        _data[18].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Basic application framework and graphic mode initialization.";
        _data[19].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Drawing of lines and polygons.";
        _data[19].source="Vettori1.htm";
        _data[20].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Acquiring input from joystick.";
        _data[20].source="joystick.htm";
        _data[21].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Playing .WAV files.";
        _data[21].source="sounds.htm";
        _data[22].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Loading a BMP in 32 bit per pixel full screen mode.";
        _data[23].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Alpha blending via software @ 16 bit per pixel.";
        _data[24].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Fast blitting of large sprites with transparent background.";
        _data[25].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Sprites.";
        _data[26].descr="<a href=\"javascript:openURL('arcade32.htm')\">Arcade32</a> graphic library programming example.Sprite rotations and scaling.";
        _data[26].source="rotation.htm";
        _data[27].desct="Function for loading PCX images.Load ad display a PCX image through the SVGA256.BGI graphic driver.";
        _data[27].source="loadpcx.htm";
        _data[28].descr="Acquiring kye scan code using the 16H keyboard interrupt.";
        _data[28].source="key1.htm";
        _data[29].descr="256 colors SVGA graphics using the SVGA256.BGI graphic driver.";
        _data[29].source="svga256.htm";
        _data[30].source="taglio.htm";
        _data[31].descr="Arcade graphic library programming examples.";
        _data[32].descr="Direct Draw 2D game engine.Full source and static library (.lib)";
        _data[32].keywords="DirectDraw Direct Draw DirectX graphics library Direct Input DirectInput DirectSound Direct Sound Direct Music DirectMusic,true color,game programming,2D";
        _data[33].source="helloworldsrc.htm";
        _data[33].descr="Minimal Win32 application.Displays an empty resizable window.Made with system API only.";
        _data[33].keywords="WIN32 API";
        _data[34].descr="Program that displays some 3D math functions.Made with Windows API only.";
        _data[34].keywords="WIN32 API";
        _data[35].descr="Program that collect informations about the current video settings.";
        _data[35].keywords="WIN32 API";
        _data[36].descr="Drawing lines with Windows GDI functions.";
        _data[36].keywords="WIN32 API";
        _data[37].descr="Show keyboard virtual key codes,ASCII code, and key name for each key pressed.Made only with Win32 API.";
        _data[37].keywords="WIN32 API";
        _data[37].source="keybd.htm";
        _data[38].source="System metric example.";
        _data[38].keywords="WIN32 API";
        _data[39].source="mouse1.htm";
        _data[39].keywords="WIN32 API";
        _data[39].descr="Click and drag the mouse to draw lines.";
        _data[40].descr="Rectangles with GDI";
        _data[40].keywords="WIN32 API";
        _data[41].descr="Displays the system fonts.Press arrows to switch among fonts.";
        _data[41].keywords="WIN32 API";
        _data[42].descr="Some Sound Blaster 16 programming examples using SBFMDRV.COM driver and AUXDRV.DRV driver (MIXER).To runt this samples on modern OS in required a SB emulator like VDMSOUND.";
        _data[43].keywords="hello world cout";
        _data[43].descr="Hello world C++";
        _data[43].source="hello.htm";
        _data[44].keywords="complex cout friend";
        _data[44].descr="Class that handles complex numbers.";
        _data[44].source="complex.htm";
        _data[45].keyword="stack push pop modular paradigm";
        _data[45].source="stack1.htm";
        _data[45].descr="a Stack example";
        _data[46].keyword="stack push pop modular paradigm overflow underflow";
        _data[46].source="stack2.htm";
        _data[46].descr="a stack with exceptions";
        _data[47].source="stack3.htm";
        _data[47].keyword="stack push pop modular paradigm overflow underflow";
        _data[47].descr="Class stack with exceptions";
        _data[48].source="list.htm";
        _data[48].keyword="std list std::list";
        _data[48].descr="std::list sample";
        _data[49].keyword="Open GL 3d";
        _data[49].source="wirecube.htm";
        _data[49].descr="Open GL transform and projection matrices example";
        _data[50].keyword="Open GL 3d minimal";
        _data[50].source="oglminimal.htm";
        _data[50].descr="Open GL basic window";
        _data[51].keyword="2d Open GL primitives";
        _data[51].source="oglprimitives.htm";
        _data[51].descr="Drawing of some simple 2D primitives";
        _data[52].keyword="2d Open GL primitives";
        _data[52].source="vertexarrays.htm";
        _data[52].descr="Drawing of some simple 2D primitives using vertex arrays";
        _data[53].keyword="javascript game pong";
        _data[53].source="pong.htm";
        _data[53].descr="Pong clone made with only javascript and HTML.";
        _data[54].keyword="assembly asm registers";
        _data[54].source="aritm32.htm";
        _data[54].descr="Addition between 32 bit registers.";
        _data[55].keyword="assembly asm registers";
        _data[55].source="aritm.htm";
        _data[55].descr="Math operations (ADC,ADD e SUB).";
        _data[56].keyword="assembly asm registers";
        _data[56].source="muldiv.htm";
        _data[56].descr="Perform multiplication and division using MUL and DIV istructions.";
        _data[57].keyword="assembly asm power registers pow";
        _data[57].source="pot.htm";
        _data[57].descr="Power of number (usage of XOR,DEC,MOV,MUL,LOOP,CMP).";
        _data[58].keyword="assembly sqrt square root";
        _data[58].source="sqrt.htm";
        _data[58].descr="Compute the square root of a number using subtractions";
        _data[59].keyword="assembly asm pointers";
        _data[59].source="ptrs.htm";
        _data[59].descr="pointers";
        _data[60].keyword="assembly asm table pointers";
        _data[60].source="table.htm";
        _data[60].descr="Access a table using pointers";
        _data[61].descr="A rudimental 3D engine written in Turbo Pascal for DOS.";
        _data[61].keyword="3d engine";
        _data[62].descr="Linear equations solver (Crout reduction and Gauss reduction)";
        _data[62].keyword="linear equations solver crout gauss";
        _data[63].descr="Math expressions intepreter";
        _data[63].keyword="calculator interpreter parser math expression";
        _data[64].keywords="const reference";
        _data[65].descr="bit explorer";
        _data[65].keywords="bit explorer";
        _data[66].descr="C/C++ data types";
        _data[66].keywords="data types";
        _data[67].descr="declarations";
        _data[67].keywords="declarations";
        _data[68].descr="iterators and const iterators";
        _data[68].keywords="iterators";
        _data[69].descr="numeric limits";
        _data[69].keywords="numeric limits";
        _data[70].descr="pointers";
        _data[70].keywords="pointer pointers";
        _data[71].descr="input from console";
        _data[71].keywords="console input";
        _data[72].descr="arrays";
        _data[72].keywords="array";
        _data[73].descr="numeric base conversion";
        _data[73].keywords="numeric base conversion";
        _data[74].descr="Java Hello World";
        _data[74].keywords="hello";
        _data[74].source="jhelloworld.html";
        _data[75].descr="Abstract classes";
        _data[75].keywords="abstract";
        _data[76].descr="Multidimensional arrays";
        _data[76].keywords="multidimensional array";
        _data[77].descr="Swing Celsius converter";
        _data[77].keywords="swing celsius";
        _data[78].descr="Bubble sort";
        _data[78].keywords="bubble sort";
        _data[79].descr="Swing sample";
        _data[79].keywords="swing base widgets";
        _data[80].descr="Threads";
        _data[80].keywords="threads";
        _data[81].descr="Oracle db explorer.Connect to Oracle database via the jdbc IV type driver.";
        _data[81].keywords="oracle db database explorer";
        _data[82].descr="Text file read and write";
        _data[82].keywords="text file readline";
        _data[82].source="jfilereadline.html";
        _data[83].descr="Binary file I/O";
        _data[83].keywords="binary file";
        _data[83].source="jbinaryfile.html";
        _data[84].descr="Hello Applet";
        _data[84].keywords="applet hello";
        _data[84].source="helloapplet.html";
        _data[85].descr="Swing applet";
        _data[85].keywords="gui applet swing";

        break;

      }   
}


//converte in stringa gli id dei linguagi di programmazione
function plToString(pl)
{

 switch(pl)
 {
           case PL_NONE:
           return "none";
           case PL_CPP:
           return "C/C++";
           case PL_VB:
           return "Visual Basic";
           case PL_JAVA:
           return "Java";
           case PL_QB:
           return "BASIC";
           case PL_PASCAL:
           return "Turbo Pascal";
           case PL_VBNET:
           return "VB.NET";
           case PL_VCNET:
           return "VC.NET";
           case PL_DHTML:
           return "DHTML";
           case PL_ASSEMBLY:
           return "Assembly";
           case PL_PERL:
           return "Perl";
           case PL_OTHER:
           switch(_lang)
           {
             case LANG_EN:
             return "other";
             case LANG_IT:
             return "altri";

           }
           case PL_ALL:
           switch(_lang)
           {
             case LANG_EN:
             return "all";
             default:
             return "tutti";
           }
           default:
           return "?";
 }

}

//converte nella lingua corrente un codice di categoria
function catToString(cat)
{
  switch(_lang)
  {
    case LANG_EN:
         
         switch(cat)
         {
           case CAT_NONE:
           return "none";
           case CAT_GAMES:
           return "games";
           case CAT_UTILITY:
           return "utility";
           case CAT_MISC:
           return "misc";
           case CAT_OLD_STUFF:
           return "old stuff";
           case CAT_TIPS:
           return "tips";
           case CAT_DATABASE:
           return "database";
           case CAT_ALL:
           return "all";
           case CAT_OLD_STUFF+CAT_GAMES:
           return "old skool game";
           case CAT_OLD_STUFF+CAT_UTILITY:
           return "DOS application";
           default:
           return "?";
         }

    break;
    default:
         
         switch(cat)
         {
           case CAT_NONE:
           return "nessuna";
           case CAT_GAMES:
           return "giochi";
           case CAT_UTILITY:
           return "utilità";
           case CAT_MISC:
           return "varie";
           case CAT_OLD_STUFF:
           return "old stuff";
           case CAT_TIPS:
           return "tips";
           case CAT_DATABASE:
           return "database";
           case CAT_ALL:
           return "tutte";
           case CAT_OLD_STUFF+CAT_GAMES:
           return "gioco DOS";
           case CAT_OLD_STUFF+CAT_UTILITY:
           return "applicazione DOS";
           default:
           return "?";
         }

    break;
  }
}

//traduzione miscellanea da IT a EN
//text=testo in italiano
function _tr(text)
{

  if (_lang==LANG_IT) return text;
  
  text=text.toLowerCase();

  if (text=="linguaggio di programmazione" || text=="linguaggio programmazione") return "programming language";
  if (text=="categoria") return "category";
  if (text=="sistema operativo") return "operating system";
  if (text=="compilatore") return "compiler";
  if (text=="altre informazioni") return "more info";
  if (text=="sparatutto 2d") return "2D shoot'em'up";
  if (text=="sparatutto 3d") return "3D shoot'em'up";
  if (text=="nessun file trovato!") return "no file found!";
  if (text=="file trovati") return "files found";
  if (text=="file trovato") return "file found";
  if (text=="specificare almeno un parametro di ricerca!") return "Enter search text!";
  if (text=="codice sorgente") return "source code";
  if (text=="ultimi progetti inseriti") return "Latest project added:";

  return text;
}






