@ -1,4 +1,4 @@
/ *
/ *
Script utilisé par GeoInfo .
Copyright ( C ) 2010 Baptiste Sottas — Tous droits réservés .
@ -43,198 +43,199 @@ var compareActive = false;
// permet d'effacer le contenu des divs 2 à 5 si on ne désire pas comparer
function vide ( )
{
// regarder si la case est cochée
compareActive = document . getElementById ( 'compare' ) . checked ;
// regarder si la case est cochée
compareActive = document . getElementById ( 'compare' ) . checked ;
// si elle ne l'est pas vider les divs 2 à 5
if ( ! compareActive )
{
for ( i = 2 ; i < 6 ; i ++ )
{
var element = document . getElementById ( "info" + i ) ;
element . innerHTML = "" ;
element . style . display = "none" ;
}
// si elle ne l'est pas vider les divs 2 à 5
if ( ! compareActive )
{
for ( i = 2 ; i < 6 ; i ++ )
{
var element = document . getElementById ( "info" + i ) ;
element . innerHTML = "" ;
element . style . display = "none" ;
}
// remettre la grandeur initiale à la première div
document . getElementById ( "info1" ) . style . width = 654 + 'px' ;
// remettre la grandeur initiale à la première div
document . getElementById ( "info1" ) . style . width = 654 + 'px' ;
// initialiser le compteur
currentInfo = 1 ;
}
// initialiser le compteur
currentInfo = 1 ;
}
}
// permet de créer et remplir les divs d'informations
function popupInfo ( text )
{
// regarder si on désire comparer les pays entre eux
compareActive = document . getElementById ( 'compare' ) . checked ;
// si oui mettre l'info dans une nouvelle div, autrement mettre dans la div 1
if ( compareActive )
currentInfo += 1 ;
else
currentInfo = 1 ;
// regarder si on désire comparer les pays entre eux
compareActive = document . getElementById ( 'compare' ) . checked ;
// si oui mettre l'info dans une nouvelle div, autrement mettre dans la div 1
if ( compareActive )
currentInfo += 1 ;
else
currentInfo = 1 ;
// max 5 comparaisons possibles, si plus on réécrit dans la dernière
if ( currentInfo > 5 )
currentInfo = 5 ;
// max 5 comparaisons possibles, si plus on réécrit dans la dernière
if ( currentInfo > 5 )
currentInfo = 5 ;
// obtenir la div à modifier
var info = document . getElementById ( "info" + currentInfo ) ;
// obtenir la div à modifier
var info = document . getElementById ( "info" + currentInfo ) ;
// la rendre visible et mettre le texte
info . style . display = "block" ;
info . innerHTML = text ;
// la rendre visible et mettre le texte
info . style . display = "block" ;
info . innerHTML = text ;
// met la bonne grandeur à chaque div
for ( i = 1 ; i <= currentInfo ; i ++ )
document . getElementById ( "info" + i ) . style . width = ( 654 / currentInfo ) + 'px' ;
// met la bonne grandeur à chaque div
for ( i = 1 ; i <= currentInfo ; i ++ )
document . getElementById ( "info" + i ) . style . width = ( 654 / currentInfo ) + 'px' ;
}
// affiche le text de l'erreur en cas de problème
function erreur ( texteErreur )
{
alert ( texteErreur ) ;
alert ( texteErreur ) ;
}
// permet d'appeller la fonction pour recevoir les statistiques du serveur
function recevoirStats ( )
{
var pl = new SOAPClientParameters ( ) ;
var pl = new SOAPClientParameters ( ) ;
// appel de la fonction getInfos du serveur
SOAPClient . invoke ( url , "getInfos" , pl , true , recevoirStatsReponse ) ;
// appel de la fonction getInfos du serveur
SOAPClient . invoke ( url , "getInfos" , pl , true , recevoirStatsReponse ) ;
}
// permet de recevoir les statistiques du serveur et les afficher
function recevoirStatsReponse ( resultat , soapResponse )
{
var objDom = new XMLDoc ( ( ( new XMLSerializer ( ) ) . serializeToString ( soapResponse ) ) , erreur ) ;
var objDom = new XMLDoc ( ( ( new XMLSerializer ( ) ) . serializeToString ( soapResponse ) ) , erreur ) ;
var objDomTree = objDom . docNode ;
var objDomTree = objDom . docNode ;
// prepare le texte à afficher à partir de la réponse
var stats = ( "Nombre d'accès total: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "accesTotal" ) [ 0 ] . getText ( )
+ "\n"
+ "Dernier accès le: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "dernierAcces" ) [ 0 ] . getText ( )
+ "\n"
+ "Adresse pour des questions/remarques: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "email" ) [ 0 ] . getText ( )
+ "\n"
+ "Microinformations sous: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "twitter" ) [ 0 ] . getText ( )
+ "\n"
+ "Version de l'application: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "version" ) [ 0 ] . getText ( ) ) ;
alert ( stats ) ;
// prepare le texte à afficher à partir de la réponse
var stats = ( "Nombre d'accès total: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "accesTotal" ) [ 0 ] . getText ( )
+ "\n"
+ "Dernier accès le: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "dernierAcces" ) [ 0 ] . getText ( )
+ "\n"
+ "Adresse pour des questions/remarques: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "email" ) [ 0 ] . getText ( )
+ "\n"
+ "Microinformations sous: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "twitter" ) [ 0 ] . getText ( )
+ "\n"
+ "Version de l'application: " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:getInfosResponse" ) [ 0 ] . getElements ( "GeoStats" ) [ 0 ] . getElements ( "version" ) [ 0 ] . getText ( ) ) ;
alert ( stats ) ;
}
// permet d'appeller la fonction pour recevoir les informations du pays
function recevoirPays ( id )
{
// prépare le paramètre avec l'id du pays
var pl = new SOAPClientParameters ( ) ;
pl . add ( "id" , id ) ;
// prépare le paramètre avec l'id du pays
var pl = new SOAPClientParameters ( ) ;
pl . add ( "id" , id ) ;
// appel de la fonction find du serveur
SOAPClient . invoke ( url , "find" , pl , true , recevoirPaysReponse ) ;
// appel de la fonction find du serveur
SOAPClient . invoke ( url , "find" , pl , true , recevoirPaysReponse ) ;
}
// permet de recevoir les informations du pays du serveur et les afficher
function recevoirPaysReponse ( resultat , soapResponse )
{
var objDom = new XMLDoc ( ( ( new XMLSerializer ( ) ) . serializeToString ( soapResponse ) ) , erreur ) ;
var objDom = new XMLDoc ( ( ( new XMLSerializer ( ) ) . serializeToString ( soapResponse ) ) , erreur ) ;
var objDomTree = objDom . docNode ;
var objDomTree = objDom . docNode ;
// prepare le texte à afficher à partir de la réponse
var informations = ( "<b>Pays:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "pays" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Nom:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "nomPays" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Capitale:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "capitale" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Forme:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "forme" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Adjectif:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "adjectif" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Monnaie ISO:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "monnaieIso" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Monnaie:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "monnaie" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Monnaie centime:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "monnaieSubDiv" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Plus grande ville:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "plusGrandeVille" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Nbr habitants:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "nbrHabitant" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Langues officielles:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "langueOfficielle" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Système gouvernemental:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "politique" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Remarques:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "remarques" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Devise:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "devise" ) [ 0 ] . getText ( ) ) ;
// appelle la fonction popupInfo qui affiche les informations dans les divs
popupInfo ( informations ) ;
// prepare le texte à afficher à partir de la réponse
var informations = ( "<b>Pays:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "pays" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Nom:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "nomPays" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Capitale:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "capitale" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Forme:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "forme" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Adjectif:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "adjectif" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Monnaie ISO:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "monnaieIso" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Monnaie:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "monnaie" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Monnaie centime:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "monnaieSubDiv" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Plus grande ville:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "plusGrandeVille" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Nbr habitants:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "nbrHabitant" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Langues officielles:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "langueOfficielle" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Système gouvernemental:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "politique" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Remarques:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "remarques" ) [ 0 ] . getText ( )
+ "<br/>"
+ "<b>Devise:</b> " + objDomTree . getElements ( "env:Body" ) [ 0 ] . getElements ( "ser:findResponse" ) [ 0 ] . getElements ( "GeoData" ) [ 0 ] . getElements ( "devise" ) [ 0 ] . getText ( ) ) ;
// appelle la fonction popupInfo qui affiche les informations dans les divs
popupInfo ( informations ) ;
}
// permet l'affichage de la description lors du passage de la souris
function writeText ( txt )
{
document . getElementById ( "description" ) . innerHTML = txt ;
document . getElementById ( "description" ) . innerHTML = txt ;
}
// permet l'effaçage de la description lors du passage de la souris
function effaceTexte ( )
{
document . getElementById ( "description" ) . innerHTML = "" ;
document . getElementById ( "description" ) . innerHTML = "" ;
}
// apparition de la div contenant une carte d'un continent + carte de retour
function apparition ( carte )
{
document . getElementById ( carte ) . style . display = 'block'
i = setInterval ( 'fondu("' + carte + '")' , 25 )
{
document . getElementById ( carte ) . style . display = 'block'
i = setInterval ( 'fondu("' + carte + '")' , 25 )
document . getElementById ( "retour" ) . style . display = 'block'
document . getElementById ( "retour" ) . style . opacity = 1
document . getElementById ( "retour" ) . style . display = 'block'
document . getElementById ( "retour" ) . style . opacity = 1
}
// permet de recharger la page
function disparition ( )
{
window . location . reload ( )
window . location . reload ( )
}
// permet de faire apparaître la carte d'un continent en fondu
function fondu ( carte )
{
opacity = opacity + 0.05
document . getElementById ( carte ) . style . opacity = opacity ;
opacity = opacity + 0.05
document . getElementById ( carte ) . style . opacity = opacity ;
if ( opacity > 1 )
{
clearInterval ( i )
}
if ( opacity > 1 )
{
clearInterval ( i )
}
}
// permet de faire apparaître les infos du pays dans la petite fenêtre
function afficheInfoPays ( pays )
{
document . getElementById ( "infoPays" ) . innerHTML = document . getElementById ( pays ) . innerHTML ;
//$("area[alt=" + pays + "]").css("z-index","9999");
document . getElementById ( "infoPays" ) . innerHTML = "<div id='customCursor' class='customCursor'></div>" + document . getElementById ( pays ) . innerHTML ;
}
// permet de cacher la petite fenêtre
function cacherInfoPays ( )
{
document . getElementById ( "infoPays" ) . style . display = 'none' ;
document . getElementById ( "infoPays" ) . style . display = 'none' ;
}
// permet à la petite fenêtre de suivre la souris
function deplacerInfo ( event )
{
document . getElementById ( "infoPays" ) . style . display = 'block' ;
document . getElementById ( "infoPays" ) . style . top = event . clientY ;
document . getElementById ( "infoPays" ) . style . left = event . clientX + 2 0;
document . getElementById ( "infoPays" ) . style . display = 'block' ;
document . getElementById ( "infoPays" ) . style . top = event . clientY ;
document . getElementById ( "infoPays" ) . style . left = event . clientX + 4 0;
}