Probabilmente già lo sapevi, ma meglio essere sicuri, no?


DarwinNE ha scritto:Buona idea, ma il "se" mi fa paura. L'esperienza mostra che c'è un bel daffare per tenere aggiornate le varie versioni e le varie lingue. Diverse lingue dell'interfaccia utente attualmente non sono complete perché i traduttori originali sono svaniti![]()


)

Sjuanez ha scritto:Fare un multilingua solo in html è anche abbastanza facile, mantenerlo è peggio di mettere in ordine il laboratorio e finire per ristrutturare casa con agosto alle porte!
<?php
ob_start();
function validateLanguage($lang)
{
$isValidLanguage['English']=true;
$isValidLanguage['Francais']=true;
$isValidLanguage['Italiano']=true;
if($isValidLanguage[$lang]==true) {
return $lang;
}else{
return "";
}
}
/* Leggi gli argomenti passati tramite l'URL
Per compatibilità con Alice, uto HTTP_GET_VARS per avere un codice
che funziona con il loro vetusto PHP 4.0.1 */
if(substr(phpversion(),0,1)<"5")
$oldphp=true;
else
$oldphp=false;
if($oldphp) {
$page=$HTTP_GET_VARS["argument"];
$language=$HTTP_GET_VARS["language"];
$exp=$HTTP_GET_VARS["exp"];
} else {
$page=$_GET["argument"];
$language=$_GET["language"];
$exp=$_GET["exp"];
}
/* Piccolo test, per la sicurezza */
$language=validateLanguage($language);
/* Se non viene fornito nulla, mostra la home page*/
if($page=="") {
$page="home.inc";
}
/* Se la lingua è specificata espressamente, memorizza l'impostazione
in un cookie che dura un anno */
if($language!="") {
setcookie("language", $language, time()+365*24*8644);
}
/* Se la lingua non è specificata espressamente, cerca un cookie.
Se questo non è presente, prediligi la versione in francese, sempreché
questa sia disponibile */
if($language=="") {
if($oldphp)
$ll=$HTTP_COOKIE_VARS["language"];
else
$ll=$_COOKIE["language"];
if($ll=="")
$language="Francais";
else
$language=$ll;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html lang="%LANGUAGE%">
<HEAD>
<META content="text/html; charset=ISO-8859-1"
http-equiv="content-type">
<meta name=viewport content="width=device-width, initial-scale=1">
<title>%TITLE%</title>
%DESCRIPTION%
<?php
/* Versione sperimentale */
if($exp=="p") {?>
<LINK rel="stylesheet" href="main_3col_min.css" type="text/css">
<?php } else { ?>
<LINK rel="stylesheet" href="main_3col_min.css" type="text/css">
<?php } ?>
</HEAD>
<BODY>
<?php
?>
<div id="header">
<?php include("menu.inc") ?>
</div>
<div id="main">
<?php
/* Security check: the pages MUST be present in the list */
$allowed["home.inc"]=true;
$allowed["index.inc"]=true;
$allowed["fulvia/fulvia.inc"]=true;
$allowed["se30/se30.inc"]=true;
$allowed["elettronica/elettronica.inc"]=true;
$allowed["elettronica/orologio/orologio_1.inc"]=true;
$allowed["elettronica/orologio/orologio_2.inc"]=true;
$allowed["elettronica/orolnixie/orolnixie.inc"]=true;
$allowed["elettronica/orolnixie21/orolnixie21.inc"]=true;
$allowed["elettronica/midi_splitter/midi_splitter.inc"]=true;
$allowed["elettronica/pic_i2c/pic_i2c.inc"]=true;
$allowed["elettronica/esr_meter/esr_meter.inc"]=true;
$allowed["elettronica/fidoreadj/fidoreadj.inc"]=true;
$allowed["elettronica/fidocadj/fidocadj.inc"]=true;
$allowed["elettronica/fidocadj/version_history.inc"]=true;
$allowed["elettronica/fc_libraries/fc_libraries.inc"]=true;
$allowed["elettronica/inverter_neon/inverter_neon.inc"]=true;
$allowed["elettronica/fidoreadj/fidocadj_applet.inc"]=true;
$allowed["elettronica/amplificatore/amplificatore.inc"]=true;
$allowed["elettronica/pre_riaa/pre_riaa.inc"]=true;
$allowed["fisica/fisica.inc"]=true;
$allowed["fisica/galileo/galileo.inc"]=true;
$allowed["fisica/newton/newton.inc"]=true;
$allowed["fisica/ipotesi/ipotesi.inc"]=true;
$allowed["fisica/ottica/ottica.inc"]=true;
$allowed["fisica/visione/visione.inc"]=true;
$allowed["musica/musica.inc"]=true;
$allowed["musica/scala/scala.inc"]=true;
$allowed["musica/midi_sds/midi_sds.inc"]=true;
$allowed["matematica/matematica.inc"]=true;
$allowed["matematica/fract_applet/fract_applet.inc"]=true;
$allowed["matematica/frattali/frattali.inc"]=true;
$allowed["matematica/analysis/analysis.inc"]=true;
$allowed["matematica/maxima/maxima.inc"]=true;
$allowed["matematica/gnuplot/gnuplot.inc"]=true;
$allowed["varie/innuh/innuh.inc"]=true;
$allowed["varie/poliziesca/poliziesca.inc"]=true;
$allowed["varie/hp9817/hp9817.inc"]=true;
if($allowed[$page]==false) {
$page="error.inc";
/* In this way, only internal pages can be included in the PHP
code, avoiding malicious code to be executed by the server, such
as the hacker attack of February 2006 to the M20 site. */
}
include($page);
?>
</div>
<div id="nav">
<?php //include('search.inc');
?>
<?php
$locale="fr-FR";
if ($english==true){
echo('<a href="index.php?argument=');
echo($page);
echo('&language=English">');
echo('<img src="english.png" width="24" height="24" class="symbol" alt="">');
echo("English version</a><br>");
} if ($francais==true){
echo('<a href="index.php?argument=');
echo($page);
echo('&language=Francais">');
echo('<img src="francese.png" width="24" height="24" class="symbol" alt="">');
echo("Version française</a><br>");
} if ($italiano==true){
echo('<a href="index.php?argument=');
echo($page);
echo('&language=Italiano">');
echo('<img src="italiano.png" width="24" height="24" class="symbol" alt="">');
echo("Versione italiana</a><br>");
}
if ($english==false && $language=="English") {
echo('<div style="background-color:#FF9090;padding:10px;">');
echo('<a href="http://translate.google.fr/translate?sl=auto&tl=en&js=n&prev=_t&hl=fr&ie=UTF-8&eotf=1&u=http%3A%2F%2Fdavbucci.chez-alice.fr%2Findex.php%3Fargument%3D');
echo($page);
echo('&act=url">No english translation.<br> Go babelfish?</a>');
echo('</div>');
} else if ($francais==false && $language=="Francais") {
echo('<div style="background-color:#FF9090;padding:10px;">');
echo('<a href="http://translate.google.fr/translate?sl=auto&tl=fr&js=n&prev=_t&hl=fr&ie=UTF-8&eotf=1&u=http%3A%2F%2Fdavbucci.chez-alice.fr%2Findex.php%3Fargument%3D');
echo($page);
echo('&act=url">Pas de version française.<br> On y va en automatique?</a>');
echo('</div>');
}
if($language=="English" && $english==true)
$locale="en-US";
if($language=="Francais" && $francais==true)
$locale="fr-FR";
if($language=="Italiano" && $italiano==true)
$locale="it-IT";
?>
</div>
<br><br>
</BODY>
<?php
$out = ob_get_contents();
ob_end_clean();
if($page_title=="") {
$page_title="Davide Bucci";
} else {
$page_title .=" - Davide Bucci";
}
$out=str_replace("%TITLE%", $page_title, $out);
if($description!="")
$desc = "<meta name=\"description\" content=\"".$description."\">";
else
$desc = " ";
$out=str_replace("%DESCRIPTION%", $desc, $out);
echo str_replace("%LANGUAGE%", $locale, $out);
?>
</HTML>
<?php /* ********************** Français ********************************** */
$francais=true;
$italiano=true;
$english=true;
if($language=="Francais") {
$description = "Pages de Davide Bucci dédiées à l'électronique, à la physique et à d'autres choses intéressantes (horloges à nixies, amplificateurs, FidoCadJ...).";
?>
<h1>Quelques mots sur moi</h1>
<p>
Dans ce site, vous pouvez trouver des contributions dans des domaines qui m'intéressent particulièrement. D'ailleurs, vous pouvez me suivre sur Twitter: <a href="https://twitter.com/davbucci">@davbucci</a>.
</p>
<div class="multi">
<a href="polline.jpg"><img src="polline_t.jpg" class="indisplay" alt="Pollen" width="240" height="180"></a>
<a href="sinus.jpg"><img src="sinus_t.jpg" class="indisplay" alt="Sinus sur oscilloscope" width="240" height="180"></a><br>
</div>
<div class="multi">
<p>
Le site est composé par des contributions plutôt hétérogènes. Vous pouvez y accéder en suivant les liens qui sont présents dans les différentes sections thématiques (<a href="index.php?argument=elettronica/elettronica.inc">électronique</a>, <a href="index.php?argument=fisica/fisica.inc">physique</a>, <a href="index.php?argument=matematica/matematica.inc">mathématique</a>, <a href="index.php?argument=musica/musica.inc">divers</a>), ou vous pouvez consulter l'index, toujours accéssible à partir de la barre sur la gauche.
</p>
<p>
Je suis un enseignant-chercheur avec des intérêts qui vont de la science, jusqu'à la littérature et la musique.
J'ai commencé mes activités de recherche dans l'optique intégrée sur verre. En particulier, je me suis intéressé à l'étude et la réalisation de composants actifs et passifs avec la technologie d'échange d'ions sur verre. En ce moment, je travaille sur des problèmes de modélisation électromagnétique (RCWA et FMM), mais aussi à la réalisation de capteurs opto-microfluidiques.
</p>
<p>
Je suis très passionné de musique. Je suis un pianiste amateur et je chante dans une <a href="http://www.stravaganza.fr/">chorale</a>.
</p>
<p>
Depuis 1999, j'ai beaucoup travaillé avec Linux en étant particulièrement satisfait. J'ai aussi acheté des ordinateurs Apple et je suis tombé amoureux du merveilleux MacOSX. Néanmoins, lorsque j'écris des logiciels j'essaye de ne pas être lié à une plateforme en particulier. Pour cette raison, le projet <a href="http://fidocadj.sourceforge.net">FidoCadJ</a>, auquel j'ai dédié beaucoup d'énergies depuis 2007 est complètement multiplateforme. </p>
<p>
En plus, j'ai une petite collection d'ordinateurs anciens que j'essaye de garder en état de marche. Parmi mes machines, il y a plusieurs Apple Macintosh (et <a href="index.php?argument=se30/se30.inc">en particulier un SE/30</a>), plusieurs Commodores et un Olivetti M20. J'ai dédié <a href="http://www.z80ne.com/m20/">un site entier</a> en Anglais à cette dernière machine. J'ai aussi une <a
href="index.php?argument=fulvia/fulvia.inc">Lancia Fulvia berline, datant du 1972</a>.
</p>
<p>
Les interventions que vous trouvez dans ce site ont été écrites dans un arc de temps de plusieurs années (la première version du site a été mise en ligne en août 1998). Beaucoup de choses ont changé pendant cette période et donc c'est raisonnable que le niveau et le style ne soient pas complètement homogènes dans les différentes contributions. En général, j'essaye d'éviter d'écrire des erreurs, mais quelque chose peut avoir été oubliée.
Contactez moi en cas d'erreurs, suggestions, demandes de traduction et autre :
<a
href="mailto:davbucciEVITALOSPAM@tiscali.it">davbucciEVITESPAM@tiscali.it</a>
(en éliminant ce qui est en majuscule)</p>
</div>
<?php } else if($language=="Italiano")
{ /* ******************* Italiano **************************** */
$description = "Pagine di Davide Bucci, dedicate all'elettronica, alla fisica ed ad altre cose interessanti (orologi a nixie, amplificatori, FidoCadJ...).";
?>
<h1>Qualche parola su di me</h1>
<p>
Qui potrete trovare diversi lavori dedicati a dei campi che mi appassionano. Se quello che faccio vi interessa, potete anche seguirmi via Twitter: <a href="https://twitter.com/davbucci">@davbucci</a>.</p>
<div class="multi">
<a href="polline.jpg"><img src="polline_t.jpg" class="indisplay" alt="Polline" width="240" height="180"></a>
<a href="sinus.jpg"><img src="sinus_t.jpg" class="indisplay" alt="Sinusoide su oscilloscopio" width="240" height="180"></a><br>
</div>
<div class="multi"><p>
Attualmente, qui trovate interventi piuttosto eterogenei. Potete accedervi seguendo le aree tematiche (<a href="index.php?argument=elettronica/elettronica.inc">elettronica</a>, <a href="index.php?argument=fisica/fisica.inc">fisica</a>, <a href="index.php?argument=matematica/matematica.inc">matematica</a>, <a href="index.php?argument=musica/musica.inc">varie</a>), oppure tramite l'indice.
</p>
<p>
Sono un insegnante ed un ricercatore, ho iniziato ad occuparmi di ottica integrata parecchi anni fa, sul progetto e la costruzione di componenti attivi e passivi in tecnologia di scambio ionico su vetro. Mi interesso di modellizzazione elettromagnetica (RCWA e FMM), di interazione fra dispositivi microfluidici e guide d'onda e di sensori.
</p>
<p>
Sono anche un appassionato di musica, come
pianista dilettante e cantante in un <a href="http://www.stravaganza.fr">coro</a>.</p>
<p>
Ho iniziato a giocare con distribuzioni Linux dal 1999, per poi passare allo splendido MacOSX più tardi. Per questo <a href="http://fidocadj.sourceforge.net">FidoCadJ</a>, un progetto software a cui ho dedicato molti sforzi, è completamente multipiattaforma.
<br>
Possiedo anche una piccola collezione di calcolatori "vintage"
che comprende diversi Apple Macintosh (<a href="index.php?argument=se30/se30.inc">fra cui un SE/30</a>), dei Commodore ed un Olivetti M20. A quest'ultima macchina ho dedicato un <a href="http://www.z80ne.com/m20/">sito intero</a>. Fra le mie cose vintage, ho anche una <a
href="index.php?argument=fulvia/fulvia.inc">Lancia Fulvia berlina del 1972</a> a cui dedico parecchie attenzioni.
</p>
<p>
Gli interventi che trovate qui sono stati scritti nell'arco di molti anni (la prima versione del sito è dell'agosto 1998). Il livello e lo stile non sono quindi sempre perfettamente omogenei. Faccio attenzione a non scrivere scorrettezze, ma qualcosa può essermi sfuggito. Non esitate a contattarmi in tal caso. Sono felice di ricevere commenti o correzioni agli inevitabili errori od omissioni per posta elettronica:<br> <a
href="mailto:davbucciEVITALOSPAM@tiscali.it">davbucciEVITALOSPAM@tiscali.it</a><br>
(rimuovendo la scritta in maiuscolo nell'indirizzo). Attenzione: non mandatemi allegati!</p>
</div>
<br>
<?php } else { /* ******************* English **************************** */
$description = "Davide Bucci blog, dedicated to electronics, physics and other interesting stuff (nixie clocks, amplifiers, FidoCadJ...).";
?>
<h1>About me</h1>
<p>
In this blog you can find some articles I wrote on arguments I find interesting. If you want to follow my works, I have a Twitter account: <a href="https://twitter.com/davbucci">@davbucci</a>.</p>
<div class="multi">
<a href="polline.jpg"><img src="polline_t.jpg" class="indisplay" alt="Pollen" width="240" height="180"></a>
<a href="sinus.jpg"><img src="sinus_t.jpg" class="indisplay" alt="Sine wave on an oscilloscope" width="240" height="180"></a><br>
</div>
<div class="multi"><p>
In this moment, my website is composed by several areas (<a href="index.php?argument=elettronica/elettronica.inc">electronics</a>, <a href="index.php?argument=fisica/fisica.inc">physics</a>, <a href="index.php?argument=matematica/matematica.inc">maths</a>, <a href="index.php?argument=musica/musica.inc">misc</a>), containing several articles of quite different level. You can read them by clicking on the areas in the menu, or by using the global index.
</p>
<p>
I am a teacher and I do some scientific research. I began to be interested in integrated optics several years ago, in particular concerning the design and fabrication of active and passive devices with the ion-exchange on glass technology. In this moment, I am quite interested in optofluidic microsystems, electromagnetic modeling (RCWA and AFMM) and sensors.
</p>
<p>
I also love music: I play the piano a little bit and I sing in a choir
<a href="http://www.stravaganza.fr">choir</a>.</p>
<p>
I begun playing with Linux distributions in 1999, but now I mainly use the wonderful MacOSX. This is why I made sort that software project on which I spent several years of my spare time is completely multiplatform: <a href="http://fidocadj.sourceforge.net">FidoCadJ</a>.
<br>
I also own several "vintage" computers, such as some Apple Macintoshes (<a href="index.php?argument=se30/se30.inc">and in particular a SE/30</a>), some Commodores and an Olivetti M20. I dedicated <a href="http://www.z80ne.com/m20/">a website to this last machine</a>. I am the proud owner of a <a
href="index.php?argument=fulvia/fulvia.inc">1972 Lancia Fulvia sedan</a>.
</p>
<p>
All the articles have been written in a period spanning several years (the first version of this web page went online in 1998). The level and the style of the articles therefore are quite discontinuous. I generally put a lot of care about correcting errors, but feedback is always welcome: <br> <a
href="mailto:davbucciAVOIDSPAM@tiscali.it">davbucciAVOIDSPAM@tiscali.it</a><br>
(remove the capital letters in the address and take into account that my anti-spam system tends to remove all the messages containing attachments).</p>
</div>
<br>
<?php } ?>
<br><br>
<center>
<a class="twitter-timeline" href="https://twitter.com/davbucci" data-widget-id="403980780625346560">Tweets de @davbucci</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+"://platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</center>


DarwinNE ha scritto:Tra l'altro, ho usato sia SVN che Git (un po' meno quest'ultimo), qualcuno ha esperienza nel passare un progetto da un sistema di versione all'altro?
obiuan ha scritto:Io utilizzo solo SVN, da quanto mi risulta però (ci è capitato di doverlo fare una volta) è relativamente semplice importare automaticamente da SVN a GIT
vedi i link che ho dati qualche messaggio fa.



Sjuanez ha scritto:Qualcosa mi inventerò. Di solito uso file separati e molto modulari che mi fa sentire bene!![]()
Sjuanez ha scritto:La tua soluzione è certamente valida, ma prevede il passaggio ad ogni link della variabile lingua.



Torna a Programmi applicativi: simulatori, CAD ed altro
Visitano il forum: Nessuno e 5 ospiti