Accueil > > > METEO EN PICWIN (FRANCE ET DOM-TOM)
METEO EN PICWIN (FRANCE ET DOM-TOM)
Information sur la source
Description
Ce code présente la météo française ainsi que celle des DOM-TOM dans une PicWin interactive.
Il dispose d'une champ de recherche et peut donner des prévisions au niveau régional, en plus de donner des éphémérides et températures d'une ville.
Il donne également la carte de vigilance au niveau de la France.
Il tire ses informations du site www.lachainemeteo.com qui donne Matin + Aprem de 0 à 3 jours, Journée au-delà.
Visitez ce site pour comprendre comment fonctionnent les prévisions et comment elles sont présentées.
C'est assez simple, et étant donné qu'une aide est incluse, je ne vais pas tout expliquer ici.
Pour l'installer, vous devez avoir les deux .mrc chargés, GUI-ArKanis est indispensable.
Mettez les deux fichiers directement dans le dossier mIRC et tapez /load -rs Meteo-By-ArKanis.mrc (le deuxième devrait se charger automatiquement)
Tapez ensuite /meteo pour lncer la PicWin
Source
- ;************************
- ; Meteo
- ; By ArKanis
- ; http://www.arkanis.eu
- ;************************
- ; Version 1.3
-
- ; Powered by
- ; www.lachainemeteo.com
-
- alias meteo {
- if (($exists(GUI-ArKanis.mrc)) && (!$script(GUI-ArKanis.mrc))) {
- .load -rs GUI-ArKanis.mrc
- echo 2 -a * Chargement du fichier GUI-ArKanis.mrc effectué
- }
- if (!$isalias(²picwin)) {
- echo 2 -a * Erreur : il faut avoir chargé le fichier GUI-ArKanis.mrc
- if ($isalias(pw.dl)) {
- if ($input.request.y.n(Voulez-vous télécharger le fichier GUI-ArKanis.mrc ?)) pw.dl
- }
- return
- }
- ²picwin @Meteo 500 500 "Meteo"
- titlebar @Meteo By ArKanis
- ²newmenu @Meteo Consulter la météo
- ²newitem @Meteo En France:²meteo.sel France,DOM TOM:²meteo.sel,$chr(9),Changer le jour:²meteo.selday,$chr(9),Fermer:²close @Meteo
- ²newmenu @Meteo Autres écrans
- ²newitem @Meteo Vigilance:²meteo.vigilance,Recherche:²meteo.rech
- ²newmenu @Meteo ?
- ²newitem @Meteo Aide:²meteo.aide,Crédits:²meteo.credits,Désinstaller:²meteo.delete
- ²drawmenu @Meteo $iif($isdir(Meteo),1 1,3 1)
- ²description @Meteo Temps 400
- ²ref @Meteo
- }
-
- alias ²meteo.sel {
- if (!$window(@Meteo)) return
- if ($hget(Meteo,Jour) !isnum 0-9) hadd -m Meteo Jour 0
- if ($1) {
- hadd -m Meteo Link $+(index.php?langue=fr&echeance=,$hget(Meteo,Jour))
- ²meteoopen France
- }
- else {
- ²centre @Meteo -b 40 Sélection d'un DOM-TOM
- ²centre @Meteo 225 Sélectionnez votre DOM-TOM
- ²select @Meteo 100 150 245 200 30 Guadeloupe¥Martinique¥Guyane¥La Réunion¥St Pierre et Miquelon¥Mayotte¥Polynésie Française¥Nouvelle Calédonie¥Wallis et Futuna
- ²button @Meteo 101 200 280 100 20 Sélectionner
- ²description @Meteo 100 Change la région sélectionnée dans une permutation circulaire
- ²description @Meteo 101 Affiche la météo de la région choisie
- }
- }
-
- alias ²meteo.selday {
- if (!$window(@Meteo)) return
- ²centre @Meteo -b 40 Sélection du jour
- var %l = 0¥1¥2¥3¥4¥5¥6
- if ($hget(Meteo,Jour) isnum 0-6) {
- while ($left(%l,1) != $hget(Meteo,Jour)) var %l = $addtok($deltok(%l,1,165),$left(%l,1),165)
- }
- ²select @Meteo 102 200 245 100 30 %l
- ²button @Meteo 103 200 280 100 20 Sélectionner
- ²description @Meteo 103 Donne la météo prévue pour dans X jours pour toutes les demandes à venir
- }
- alias ²meteo.rech {
- ²centre @Meteo -b 40 Recherche
- ²centre @Meteo 70 Entrez le nom de la ville ou son code postal
- ²edit @Meteo 8 200 110 100 20
- ²button @Meteo 9 200 135 100 20 Rechercher
- ²description @Meteo 9 Etablie une liste des résultats trouvés pour sélectionner rapidement une ville
- }
- alias meteo.answer if ($1 == ²meteo.rech) meteo.sclick 9 $2
- alias ²meteo.delete {
- noop $findfile(Meteo/,*,0,.remove $qt($1-))
- .rmdir Meteo
- ²close @Meteo
- window -a "Status Window"
- if ($?!="Souhaitez-vous décharger le fichier $script (contient la Météo) ?") {
- if (!$?!="Voulez-vous GARDER le fichier ?") .timer 1 1 .remove $qt($script)
- .timer 1 1 .unload -rs $qt($script)
- }
- }
- ;**************
- ;Données du GUI
- ;**************
- alias meteo.menu {
- sockclose meteo*
- if (($1) && ($hget(MeteoLocation))) hfree MeteoLocation
- }
- alias meteo.close {
- hfree -w Meteo*
- if ($window(@Meteo.copyVilles)) window -c @Meteo.copyVilles
- }
- on *:close:@Meteo:meteo.close
-
- alias meteo.mouse {
- if (!$window(@Meteo)) return
- var %x = $1, %y = $2, %g
- var %f = $hget(Meteo,Origin), %ox = $gettok(%f,1,32), %oy = $gettok(%f,2,32), %dx = $gettok(%f,3,32), %dy = $gettok(%f,4,32)
- if (($inrect(%x,%y,%ox,%oy,%dx,%dy)) && ($hget(MeteoLocation)) && ($hget(Meteo,Ready))) {
- var %t = 1, %l = MeteoLocation
- while $hget(%l,%t).item {
- var %i = $ifmatch, %d = $hget(%l,%i)
- tokenize 32 %d
- if ($inrect(%x,%y,$1,$2,35,28)) {
- var %g = 1
- if ($hget(MeteoTemp,Loc) == %i) break
- hadd -m MeteoTemp Loc %i
- .²backup @Meteo Villes
- if (!$window(@Meteo.copyVilles)) ²svg @Meteo Villes
- var %ht = $+(MeteoVille,$hget(Meteo,Period))
- var %t1 = $replace(%i,$chr(165),$chr(32)), %t2 = T° : $gettok($hget(%ht,%i),3,32), %dy = 32
- if (%t2 == T° : ø) var %t2, %dy = $calc(%dy - 14)
- var %w = $max($width(%t1,Tahoma,10),$width(%t2,Tahoma,10)), %ox = $calc($1 -4 - %w / 2), %oy = $calc($2 -26)
- drawrect -nr @Meteo 0 1 $calc($1 - %w) %oy $calc(%w +6) %dy
- drawrect -fnr @Meteo 16761024 1 $calc($1 - %w +1) $calc(%oy +1) $calc(%w +4) $calc(%dy -2)
- drawtext -nr @Meteo 0 Tahoma 10 $calc($1 -%w + (%w +6- $width(%t1,Tahoma,10)) /2) $calc(%oy + 2) %t1
- if (%t2) drawtext -nr @Meteo 0 Tahoma 10 $calc($1 -%w + (%w +6- $width(%t2,Tahoma,10)) /2) $calc(%oy +17) %t2
- ²ref @Meteo
- break
- }
- inc %t
- }
- if (%g) return
- }
- if ((!%g) && ($hget(MeteoTemp,Loc))) {
- hdel MeteoTemp Loc
- ²backup @Meteo Villes
- }
- if ((!$hget(MeteoVille,Vigilance)) && ($hget(Meteo,Jour) <= 2) && ($hget(Meteo,Ready)) && (!$hget(@Meteo,Main))) {
- if (($inrect(%x,%y,49,471,56,23)) && ($hget(Meteo,Period) != 0)) {
- hadd -m Meteo Period 0
- ²efface @Meteo 25 60 450 410
- .meteo.fond.apply Meteo/Backup.png
- meteo.fond.apply
- }
- elseif (($inrect(%x,%y,371,471,79,23)) && ($hget(Meteo,Period) != 1)) {
- hadd -m Meteo Period 1
- ²efface @Meteo 25 60 450 410
- .meteo.fond.apply Meteo/Backup.png
- meteo.fond.apply
- }
- }
- }
-
- alias meteo.sclick {
- if (!$window(@Meteo)) return
- if ($1 == 101) {
- var %g = $calc(96 + $findtok(Guadeloupe¥Martinique¥Guyane¥La Réunion¥St Pierre et Miquelon¥Mayotte¥Polynésie Française¥Nouvelle Calédonie¥Wallis et Futuna,$²did(@Meteo,100),1,165))
- hadd -m Meteo Link $+(index.php?langue=fr&echeance=,$hget(Meteo,Jour),&domtom=,%g)
- ²meteoopen $²did(@Meteo,100)
- }
- elseif ($1 == 103) {
- hadd -m Meteo Jour $²did(@Meteo,102)
- ²drawmenu @Meteo 1 1
- }
- elseif ($hget(MeteoTemp,Loc)) {
- hadd -m Meteo Link $+(index_detail.php?langue=fr&echeance=,$hget(Meteo,Jour),&num_ville=,$gettok($hget($+(MeteoVille,$hget(Meteo,Period)),$ifmatch),5,32))
- ²meteoopen $hget(MeteoTemp,Loc)
- }
- elseif ($1 == 9) {
- if ($²did(@Meteo,8)) {
- hadd -m Meteo Link $+(moteur_recherche.php?langue=fr&txt_search=,$ifmatch)
- .meteo.wait
- .²meteoopen
- }
- }
- elseif ($1 == 11) {
- var %v = $replace($²did(@Meteo,10),$chr(32),$chr(165))
- hadd -m Meteo Link $+(index_detail.php?langue=fr&echeance=,$hget(Meteo,Jour),&num_ville=,$hget(MeteoVille,%v))
- ²meteoopen $deltok(%v,-1,165)
- }
- }
- ;*******
- ;Sockets
- ;*******
- alias ²meteoopen {
- if (!$window(@Meteo)) return
- if ($window(@Meteo.copyVilles)) window -c $ifmatch
- if ($show) {
- meteo.wait
- ²centre @Meteo -b 40 $1- $meteo.date($hget(Meteo,Jour))
- if ($hget(Meteo,Jour) <= 2) {
- var %p = 51
- while %p < 451 {
- drawline -nr @Meteo $rgb($calc(30 + %p /2),250,$calc(255 - %p /2)) 2 %p 471 %p 494
- inc %p 2
- }
- drawrect -nr @Meteo 0 1 49 470 402 26
- drawtext -nr @Meteo 8388608 Tahoma 12 60 475 MATIN
- drawtext -nr @Meteo 8388608 Tahoma 12 376 475 APRES-MIDI
- }
- }
- sockclose meteo
- sockopen meteo www.lachainemeteo.com 80
- }
- alias -l meteo.date {
- var %d = $+($chr(40),$date($calc($ctime + 86400 * $1)),$chr(41))
- if ($1 == 0) return aujourd'hui %d
- if ($1 == 1) return demain %d
- if ($1 == 2) return après-demain %d
- else return dans $1 jours %d
- }
- on *:sockopen:meteo:{
- if ($hget(MeteoQueue)) hfree MeteoQueue
- hfree -w MeteoVille*
- hfree -w MeteoTemp
- hadd -m Meteo Period 0
- sockwrite -n $sockname GET $+(http://www.lachainemeteo.com/,$$hget(Meteo,Link)) HTTP/1.0
- sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
- }
-
- on *:sockread:meteo:{
- var %a
- sockread %a
- if ($gettok(%a,1,9) == .Fond_Carte) sockmark $sockname FOND
- elseif (($regex(%a,/background-image:url\('(.+)'\)/gi)) && ($sock($sockname).mark == FOND)) {
- fond.meteo $regml(1)
- sockmark $sockname 0
- }
- elseif ($regex(%a,Menu_Periode_200_([0-9])_J([0-9]))) {
- if ($regml(2) != $hget(Meteo,Jour)) sockmark $sockname 0
- else {
- hadd -m MeteoTemp Heure $regml(1)
- sockmark $sockname VILLES
- if ($exists(Meteo/Backup.png)) drawpic -n @Meteo 50 70 Meteo/Backup.png
- drawrect -nr @Meteo 0 1 49 69 402 402
- ²centre @Meteo 240 Chargement en cours ...
- }
- }
- elseif ($regex(%a,bloc_ephem_j([0-9]))) {
- if ($regml(1) == $hget(Meteo,Jour)) sockmark $sockname Ephemerides
- }
- elseif ($sock($sockname).mark == Ephemerides) {
- if ($regex(%a,/height: 30px;.+>([^>]+)</div>$/i)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(1),$chr(32),$chr(165))
- elseif ($regex(%a,(-?[0-9]+)°C)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($+($regml(1),°C),$chr(32),$chr(165))
- elseif ($regex(%a,/height: 13px;.+">(.+)</div>/U)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(1),<br>,$chr(165),$chr(32),$chr(165))
- elseif ($regex(%a,/(Lever|Coucher) : <[^>]+>([^<]+)</span></div>/i)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(2),$chr(32),$chr(165))
- elseif ($regex(%a,/info([0-9])_ephem/i)) {
- if (($regml(1) isnum 2-) && ($regex(H,%a,/>([^>]+)</div>/i))) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(H,1),$chr(32),$chr(165))
- }
- }
- elseif ($regex(%a,/num_ville=([0-9]+)".+class="Liste_Elt_href">(.+)</a>/gU)) {
- hadd -m MeteoVille Rech $addtok($hget(MeteoVille,Rech),$regml(2),165)
- hadd -m MeteoVille $replace($regml(2),$chr(32),$chr(165)) $regml(1)
- }
- elseif ($regex(%a,/src="/image/logo/lachainemeteo/lcm_60x40.gif"/i)) sockmark $sockname VILLES
- elseif ($sock($sockname).mark == VILLES) {
- if ($regex(%a,/Periode_Temps_([0-1])/i)) hadd -m MeteoTemp Heure $regml(1)
- if ($regex(%a,(-?[0-9]+) &\#176;)) hadd -m $+(MeteoVille,$hget(MeteoTemp,Heure)) $hget(MeteoTemp,Ville) $regml(1) $hget(MeteoTemp,Pic) $hget(MeteoTemp,CP)
- elseif ($regex(%a,num_ville=([0-9]+))) hadd -m MeteoTemp CP $regml(1)
- else {
- if ($regex(%a,src="(.+)" class='Lien_Icone')) {
- var %i = $regml(1), %f = $gettok(%i,-1,47)
- if (!$exists($+(Meteo/,%f))) dl.meteo %i 1
- hadd -m MeteoTemp Pic %f
- }
- var %r = /left\:([0-9]+\.?[0-9]?)px\;top\:([0-9]+\.?[0-9]?)px.+'(.+)'/ig
- if ($regex(%a,%r)) hadd -m MeteoTemp Ville $remove($replace($regml(3),é,é,è,è,ç,ç,$chr(32),$chr(165),#039;,',ï,ï),&) $regml(1) $regml(2)
- }
- }
- }
- on *:sockclose:meteo:{
- if ($hget(Meteo,Link)) hdel Meteo Link
- if ($hget(MeteoVille,Rech)) {
- ²list @Meteo 10 150 200 200 200 $hget(MeteoVille,Rech)
- ²button @Meteo 11 150 405 200 20 Sélectionner
- }
- }
-
- alias -l fond.meteo {
- if (!$isdir(Meteo)) mkdir Meteo
- var %f = $+(Meteo/fond.,$extension($1-))
- if ($exists(%f)) .remove %f
- hadd -m Meteo Fond $1-
- hadd -m Meteo Fond2 %f
- sockclose MeteoFond
- sockopen MeteoFond www.lachainemeteo.com 80
- }
- on *:sockopen:MeteoFond:{
- sockwrite -n $sockname GET $$hget(Meteo,Fond) HTTP/1.0
- sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
- }
-
- on *:sockread:MeteoFond:{
- var %a
- sockread &a
- if ((!$sock($sockname).mark) && ($bfind(&a, 1,$str($crlf,2)))) {
- bcopy &b 1 &a $calc($ifmatch +4) -1
- if ($bvar(&b,0)) bwrite $hget(Meteo,Fond2) -1 -1 &b
- sockmark $sockname 1
- }
- elseif ($bvar(&a,0)) bwrite $hget(Meteo,Fond2) -1 -1 &a
- }
- on *:sockclose:MeteoFond:meteo.fond.apply
- alias -l meteo.fond.apply {
- if (!$window(@Meteo)) return
- var %f = $hget(Meteo,Fond2)
- if ($1-) var %f = $1-
- elseif (!%f) var %f = Meteo/fond.png
- if (!$exists(%f)) return
- var %x = $pic(%f).width, %y = $pic(%f).height, %ox = $calc(250 - %x / 2), %oy = $calc(270 - %y /2)
- drawrect -nr @Meteo 0 1 $calc(%ox -1) $calc(%oy -1) $calc(%x +2) $calc(%y +2)
- drawpic -n @Meteo %ox %oy $shortfn(%f)
- if ($show) {
- hdel -w Meteo Fond*
- hadd -m Meteo Origin %ox %oy %x %y
- if ((!$sock(Meteo.dl)) && (!$hget(MeteoQueue,0).item)) meteo.generate
- }
- }
-
- alias -l dl.meteo {
- hadd -m MeteoQueue $1-
- if ($exists($+(Meteo/,$gettok($1,-1,47)))) .remove $+(Meteo/,$gettok($1,-1,47))
- if ($sock(dl.meteo)) return
- .timer -h 1 500 dl.meteo.do
- }
- alias -l dl.meteo.do {
- var %f = $hget(MeteoQueue,1).item
- if (!%f) {
- if (!$sock(MeteoFond)) meteo.generate
- return
- }
- hadd -m MeteoTemp DL %f
- hadd -m MeteoTemp DLName $+(Meteo/,$gettok(%f,-1,47))
- sockclose Meteo.dl
- sockopen Meteo.dl www.lachainemeteo.com 80
- }
- on *:sockopen:Meteo.dl:{
- sockwrite -n $sockname GET $$hget(MeteoTemp,DL) HTTP/1.0
- sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
- }
- on *:sockread:Meteo.dl:{
- sockread &a
- if ((!$sock($sockname).mark) && ($bfind(&a, 1,$str($crlf,2)))) {
- bcopy &b 1 &a $calc($ifmatch +4) -1
- if ($bvar(&b,0)) bwrite $$hget(MeteoTemp,DLName) -1 -1 &b
- sockmark $sockname 1
- }
- elseif ($bvar(&a,0)) bwrite $$hget(MeteoTemp,DLName) -1 -1 &a
- }
- on *:sockclose:Meteo.dl:{
- hdel MeteoQueue $hget(MeteoTemp,DL)
- hdel -w MeteoTemp DL*
- dl.meteo.do
- }
-
- alias -l meteo.generate {
- if (!$window(@Meteo)) return
- if ($window(@Meteo.copyVilles)) window -c @Meteo.copyVilles
- var %t = 1, %p = MeteoLocation
- if ($hget(%p)) hfree %p
- var %ht = $+(MeteoVille,$hget(Meteo,Period)), %f = $hget(Meteo,Origin), %ox = $gettok(%f,1,32), %oy = $gettok(%f,2,32), %x = $gettok(%f,3,32)
- if ($pic(Meteo/fond.png).width > 350) .copy -o $qt(Meteo/fond.png) "Meteo/Backup.png"
- while $hget(%ht,%t).item {
- var %i = $ifmatch, %d = $hget(%ht,%i)
- tokenize 32 %d
- if (anim !isin $4) drawpic -tn @Meteo 0 $calc($1 + %ox) $calc($2 + %oy) $shortfn($+(Meteo/,$4))
- else drawpic -ctn @Meteo 16777215 $calc($1 + %ox) $calc($2 + %oy) $shortfn($+(Meteo/,$4))
- if ($3 != ø) drawtext -nr @Meteo 0 Tahoma 10 $calc($1 + %ox + 15) $calc($2 + %oy + 25) $+($3,°)
- hadd -m %p %i $calc($1 + %ox) $calc($2 + %oy)
- inc %t
- }
- if (!$hget(MeteoVille,Vigilance)) {
- var %te = $meteo.translate($puttok($asctime(dd mm yyyy),$calc($asctime(dd) + $hget(Meteo,Jour)),1,32)) $iif($hget(Meteo,Jour) <= 2,$iif(!$hget(Meteo,Period),Matin,Après-Midi))
- ²surligne @Meteo 10 $calc(%ox +2) $calc(%oy +2) %te
- }
- if ($hget(MeteoVille,Eph)) {
- tokenize 32 $replace($gettok($ifmatch,$+($calc($hget(Meteo,Period) +1),-),32), ,$chr(165))
- ²surligne @Meteo 12 70 375 $replace($1,$chr(165),$chr(32))
- ²surligne @Meteo -l 12 430 375 $replace($3,$chr(165),$chr(32))
- ²surligne @Meteo 12 70 395 $replace($5,$chr(165),$chr(32))
- ²surligne @Meteo 12 70 415 Lever du soleil : $replace($gettok($1-,-3,32),$chr(165),$chr(32))
- ²surligne @Meteo 12 70 435 Coucher du soleil : $replace($gettok($1-,-2,32),$chr(165),$chr(32))
- ²surligne @Meteo -l 12 430 395 Lune : $replace($gettok($1-,-1,32),$chr(165),$chr(32))
- }
- hadd -m Meteo Ready 1
- ²ref @Meteo
- }
-
- ;*************
- ;Autres écrans
- ;*************
- alias ²meteo.vigilance {
- if (!$window(@Meteo)) return
- ²centre @Meteo -b 40 Carte de vigilance
- meteo.wait
- if ($hget(MeteoLocation)) hfree MeteoLocation
- if ($hget(Meteo,Period) != $null) hdel Meteo Period
- hfree -w MeteoVille*
- hadd -m MeteoVille Vigilance 0 0 ø vigilance.gif
- fond.meteo /image/carte/vigilance/vigilance_fond.gif
- dl.meteo /image/carte/vigilance/vigilance.gif
- hadd -m MeteoTemp Carte Vigilance
- }
-
-
- alias ²meteo.aide {
- if (!$window(@Meteo)) return
- ²centre @Meteo -b 40 Aide
- var %d = drawtext -nr @Meteo 0 Tahoma 12 30
- %d 120 Bienvenue sur l'aide de Meteo (codé par ArKanis)
- %d 140 Cette version très simple permet de connaître la météo en France
- %d 160 ou ses DOM-TOMs et ce de un à six jours.
- %d 180 Pour commencer, choisissez où regarder la météo.
- %d 220 Vous obtiendrez plus d'informations et passant la souris sur une ville
- %d 240 et en cliquant dessus
- }
- alias ²meteo.credits {
- if (!$window(@Meteo)) return
- ²centre @Meteo -b 40 Crédits
- var %d = drawtext -pnr @Meteo 0 Tahoma 12 40
- %d 105 Utilitaire codé par ArKanis
- %d 125 Mon Site :
- ²link @Meteo 96 213 125 "www.arkanis.eu" www.arkanis.eu
- %d 145 Météo, images provenant de :
- ²link @Meteo 97 213 145 "www.lachainemeteo.com" www.lachainemeteo.com
- drawtext -onr @Meteo 0 Tahoma 12 40 220 Remerciements :
- %d 240 A mes testeurs, NeoBlaster et Panthouffle
- %d 260 A mes amis (non cités car trop nombreux pour l'être sans oubli :D)
- %d 280 A ma famille
- %d 325 Deux sites de scripting mIRC :
- ²link @Meteo 98 204 325 "www.ircfr.com" IRCfr
- drawtext -nr @Meteo 0 Tahoma 12 233 325 et
- ²link @Meteo 99 247 325 "www.scriptsdb.org" ScriptsDB
- ²centre @Meteo 355 Codé le 03/02/07 et 04/02/07
- }
-
- ;******
- ;Divers
- ;******
- alias -l meteo.wait {
- if ($show) ²clear @Meteo
- hadd -m Meteo Ready 0
- ²centre @Meteo 240 Chargement en cours ...
- ²ref @Meteo
- }
-
- ;**************
- ;Aliases utiles
- ;**************
- alias -l min return $calc(($1 + $2 - $abs($calc($1 - $2)))/2)
- alias -l max return $calc(($1 + $2 + $abs($calc($1 - $2)))/2)
- alias -l extension return $regsubex($1,(.+)\.([^\.]+)$,\2)
- alias -l meteo.translate {
- tokenize 32 $1-
- if (!$3) return
- var %j = $1, %m = $2, %a = $3
- if (%m < 3) var %n = $calc($int($calc(365.25*(%a - 1))) + $int($calc(30.6*(%m + 13))) + %j - 621049)
- else var %n = $calc($int($calc(365.25 * %a)) + $int($calc(30.6*(%m +1))) + %j - 621049)
- var %d = $iif($calc(%n % 7),$ifmatch,7)
- return $gettok(Lundi Mardi Mercredi Jeudi Vendredi Samedi Dimanche,%d,32)
- }
- ;End Of File
;************************
; Meteo
; By ArKanis
; http://www.arkanis.eu
;************************
; Version 1.3
; Powered by
; www.lachainemeteo.com
alias meteo {
if (($exists(GUI-ArKanis.mrc)) && (!$script(GUI-ArKanis.mrc))) {
.load -rs GUI-ArKanis.mrc
echo 2 -a * Chargement du fichier GUI-ArKanis.mrc effectué
}
if (!$isalias(²picwin)) {
echo 2 -a * Erreur : il faut avoir chargé le fichier GUI-ArKanis.mrc
if ($isalias(pw.dl)) {
if ($input.request.y.n(Voulez-vous télécharger le fichier GUI-ArKanis.mrc ?)) pw.dl
}
return
}
²picwin @Meteo 500 500 "Meteo"
titlebar @Meteo By ArKanis
²newmenu @Meteo Consulter la météo
²newitem @Meteo En France:²meteo.sel France,DOM TOM:²meteo.sel,$chr(9),Changer le jour:²meteo.selday,$chr(9),Fermer:²close @Meteo
²newmenu @Meteo Autres écrans
²newitem @Meteo Vigilance:²meteo.vigilance,Recherche:²meteo.rech
²newmenu @Meteo ?
²newitem @Meteo Aide:²meteo.aide,Crédits:²meteo.credits,Désinstaller:²meteo.delete
²drawmenu @Meteo $iif($isdir(Meteo),1 1,3 1)
²description @Meteo Temps 400
²ref @Meteo
}
alias ²meteo.sel {
if (!$window(@Meteo)) return
if ($hget(Meteo,Jour) !isnum 0-9) hadd -m Meteo Jour 0
if ($1) {
hadd -m Meteo Link $+(index.php?langue=fr&echeance=,$hget(Meteo,Jour))
²meteoopen France
}
else {
²centre @Meteo -b 40 Sélection d'un DOM-TOM
²centre @Meteo 225 Sélectionnez votre DOM-TOM
²select @Meteo 100 150 245 200 30 Guadeloupe¥Martinique¥Guyane¥La Réunion¥St Pierre et Miquelon¥Mayotte¥Polynésie Française¥Nouvelle Calédonie¥Wallis et Futuna
²button @Meteo 101 200 280 100 20 Sélectionner
²description @Meteo 100 Change la région sélectionnée dans une permutation circulaire
²description @Meteo 101 Affiche la météo de la région choisie
}
}
alias ²meteo.selday {
if (!$window(@Meteo)) return
²centre @Meteo -b 40 Sélection du jour
var %l = 0¥1¥2¥3¥4¥5¥6
if ($hget(Meteo,Jour) isnum 0-6) {
while ($left(%l,1) != $hget(Meteo,Jour)) var %l = $addtok($deltok(%l,1,165),$left(%l,1),165)
}
²select @Meteo 102 200 245 100 30 %l
²button @Meteo 103 200 280 100 20 Sélectionner
²description @Meteo 103 Donne la météo prévue pour dans X jours pour toutes les demandes à venir
}
alias ²meteo.rech {
²centre @Meteo -b 40 Recherche
²centre @Meteo 70 Entrez le nom de la ville ou son code postal
²edit @Meteo 8 200 110 100 20
²button @Meteo 9 200 135 100 20 Rechercher
²description @Meteo 9 Etablie une liste des résultats trouvés pour sélectionner rapidement une ville
}
alias meteo.answer if ($1 == ²meteo.rech) meteo.sclick 9 $2
alias ²meteo.delete {
noop $findfile(Meteo/,*,0,.remove $qt($1-))
.rmdir Meteo
²close @Meteo
window -a "Status Window"
if ($?!="Souhaitez-vous décharger le fichier $script (contient la Météo) ?") {
if (!$?!="Voulez-vous GARDER le fichier ?") .timer 1 1 .remove $qt($script)
.timer 1 1 .unload -rs $qt($script)
}
}
;**************
;Données du GUI
;**************
alias meteo.menu {
sockclose meteo*
if (($1) && ($hget(MeteoLocation))) hfree MeteoLocation
}
alias meteo.close {
hfree -w Meteo*
if ($window(@Meteo.copyVilles)) window -c @Meteo.copyVilles
}
on *:close:@Meteo:meteo.close
alias meteo.mouse {
if (!$window(@Meteo)) return
var %x = $1, %y = $2, %g
var %f = $hget(Meteo,Origin), %ox = $gettok(%f,1,32), %oy = $gettok(%f,2,32), %dx = $gettok(%f,3,32), %dy = $gettok(%f,4,32)
if (($inrect(%x,%y,%ox,%oy,%dx,%dy)) && ($hget(MeteoLocation)) && ($hget(Meteo,Ready))) {
var %t = 1, %l = MeteoLocation
while $hget(%l,%t).item {
var %i = $ifmatch, %d = $hget(%l,%i)
tokenize 32 %d
if ($inrect(%x,%y,$1,$2,35,28)) {
var %g = 1
if ($hget(MeteoTemp,Loc) == %i) break
hadd -m MeteoTemp Loc %i
.²backup @Meteo Villes
if (!$window(@Meteo.copyVilles)) ²svg @Meteo Villes
var %ht = $+(MeteoVille,$hget(Meteo,Period))
var %t1 = $replace(%i,$chr(165),$chr(32)), %t2 = T° : $gettok($hget(%ht,%i),3,32), %dy = 32
if (%t2 == T° : ø) var %t2, %dy = $calc(%dy - 14)
var %w = $max($width(%t1,Tahoma,10),$width(%t2,Tahoma,10)), %ox = $calc($1 -4 - %w / 2), %oy = $calc($2 -26)
drawrect -nr @Meteo 0 1 $calc($1 - %w) %oy $calc(%w +6) %dy
drawrect -fnr @Meteo 16761024 1 $calc($1 - %w +1) $calc(%oy +1) $calc(%w +4) $calc(%dy -2)
drawtext -nr @Meteo 0 Tahoma 10 $calc($1 -%w + (%w +6- $width(%t1,Tahoma,10)) /2) $calc(%oy + 2) %t1
if (%t2) drawtext -nr @Meteo 0 Tahoma 10 $calc($1 -%w + (%w +6- $width(%t2,Tahoma,10)) /2) $calc(%oy +17) %t2
²ref @Meteo
break
}
inc %t
}
if (%g) return
}
if ((!%g) && ($hget(MeteoTemp,Loc))) {
hdel MeteoTemp Loc
²backup @Meteo Villes
}
if ((!$hget(MeteoVille,Vigilance)) && ($hget(Meteo,Jour) <= 2) && ($hget(Meteo,Ready)) && (!$hget(@Meteo,Main))) {
if (($inrect(%x,%y,49,471,56,23)) && ($hget(Meteo,Period) != 0)) {
hadd -m Meteo Period 0
²efface @Meteo 25 60 450 410
.meteo.fond.apply Meteo/Backup.png
meteo.fond.apply
}
elseif (($inrect(%x,%y,371,471,79,23)) && ($hget(Meteo,Period) != 1)) {
hadd -m Meteo Period 1
²efface @Meteo 25 60 450 410
.meteo.fond.apply Meteo/Backup.png
meteo.fond.apply
}
}
}
alias meteo.sclick {
if (!$window(@Meteo)) return
if ($1 == 101) {
var %g = $calc(96 + $findtok(Guadeloupe¥Martinique¥Guyane¥La Réunion¥St Pierre et Miquelon¥Mayotte¥Polynésie Française¥Nouvelle Calédonie¥Wallis et Futuna,$²did(@Meteo,100),1,165))
hadd -m Meteo Link $+(index.php?langue=fr&echeance=,$hget(Meteo,Jour),&domtom=,%g)
²meteoopen $²did(@Meteo,100)
}
elseif ($1 == 103) {
hadd -m Meteo Jour $²did(@Meteo,102)
²drawmenu @Meteo 1 1
}
elseif ($hget(MeteoTemp,Loc)) {
hadd -m Meteo Link $+(index_detail.php?langue=fr&echeance=,$hget(Meteo,Jour),&num_ville=,$gettok($hget($+(MeteoVille,$hget(Meteo,Period)),$ifmatch),5,32))
²meteoopen $hget(MeteoTemp,Loc)
}
elseif ($1 == 9) {
if ($²did(@Meteo,8)) {
hadd -m Meteo Link $+(moteur_recherche.php?langue=fr&txt_search=,$ifmatch)
.meteo.wait
.²meteoopen
}
}
elseif ($1 == 11) {
var %v = $replace($²did(@Meteo,10),$chr(32),$chr(165))
hadd -m Meteo Link $+(index_detail.php?langue=fr&echeance=,$hget(Meteo,Jour),&num_ville=,$hget(MeteoVille,%v))
²meteoopen $deltok(%v,-1,165)
}
}
;*******
;Sockets
;*******
alias ²meteoopen {
if (!$window(@Meteo)) return
if ($window(@Meteo.copyVilles)) window -c $ifmatch
if ($show) {
meteo.wait
²centre @Meteo -b 40 $1- $meteo.date($hget(Meteo,Jour))
if ($hget(Meteo,Jour) <= 2) {
var %p = 51
while %p < 451 {
drawline -nr @Meteo $rgb($calc(30 + %p /2),250,$calc(255 - %p /2)) 2 %p 471 %p 494
inc %p 2
}
drawrect -nr @Meteo 0 1 49 470 402 26
drawtext -nr @Meteo 8388608 Tahoma 12 60 475 MATIN
drawtext -nr @Meteo 8388608 Tahoma 12 376 475 APRES-MIDI
}
}
sockclose meteo
sockopen meteo www.lachainemeteo.com 80
}
alias -l meteo.date {
var %d = $+($chr(40),$date($calc($ctime + 86400 * $1)),$chr(41))
if ($1 == 0) return aujourd'hui %d
if ($1 == 1) return demain %d
if ($1 == 2) return après-demain %d
else return dans $1 jours %d
}
on *:sockopen:meteo:{
if ($hget(MeteoQueue)) hfree MeteoQueue
hfree -w MeteoVille*
hfree -w MeteoTemp
hadd -m Meteo Period 0
sockwrite -n $sockname GET $+(http://www.lachainemeteo.com/,$$hget(Meteo,Link)) HTTP/1.0
sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
}
on *:sockread:meteo:{
var %a
sockread %a
if ($gettok(%a,1,9) == .Fond_Carte) sockmark $sockname FOND
elseif (($regex(%a,/background-image:url\('(.+)'\)/gi)) && ($sock($sockname).mark == FOND)) {
fond.meteo $regml(1)
sockmark $sockname 0
}
elseif ($regex(%a,Menu_Periode_200_([0-9])_J([0-9]))) {
if ($regml(2) != $hget(Meteo,Jour)) sockmark $sockname 0
else {
hadd -m MeteoTemp Heure $regml(1)
sockmark $sockname VILLES
if ($exists(Meteo/Backup.png)) drawpic -n @Meteo 50 70 Meteo/Backup.png
drawrect -nr @Meteo 0 1 49 69 402 402
²centre @Meteo 240 Chargement en cours ...
}
}
elseif ($regex(%a,bloc_ephem_j([0-9]))) {
if ($regml(1) == $hget(Meteo,Jour)) sockmark $sockname Ephemerides
}
elseif ($sock($sockname).mark == Ephemerides) {
if ($regex(%a,/height: 30px;.+>([^>]+)</div>$/i)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(1),$chr(32),$chr(165))
elseif ($regex(%a,(-?[0-9]+)°C)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($+($regml(1),°C),$chr(32),$chr(165))
elseif ($regex(%a,/height: 13px;.+">(.+)</div>/U)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(1),<br>,$chr(165),$chr(32),$chr(165))
elseif ($regex(%a,/(Lever|Coucher) : <[^>]+>([^<]+)</span></div>/i)) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(2),$chr(32),$chr(165))
elseif ($regex(%a,/info([0-9])_ephem/i)) {
if (($regml(1) isnum 2-) && ($regex(H,%a,/>([^>]+)</div>/i))) hadd -m MeteoVille Eph $hget(MeteoVille,Eph) $replace($regml(H,1),$chr(32),$chr(165))
}
}
elseif ($regex(%a,/num_ville=([0-9]+)".+class="Liste_Elt_href">(.+)</a>/gU)) {
hadd -m MeteoVille Rech $addtok($hget(MeteoVille,Rech),$regml(2),165)
hadd -m MeteoVille $replace($regml(2),$chr(32),$chr(165)) $regml(1)
}
elseif ($regex(%a,/src="/image/logo/lachainemeteo/lcm_60x40.gif"/i)) sockmark $sockname VILLES
elseif ($sock($sockname).mark == VILLES) {
if ($regex(%a,/Periode_Temps_([0-1])/i)) hadd -m MeteoTemp Heure $regml(1)
if ($regex(%a,(-?[0-9]+) &\#176;)) hadd -m $+(MeteoVille,$hget(MeteoTemp,Heure)) $hget(MeteoTemp,Ville) $regml(1) $hget(MeteoTemp,Pic) $hget(MeteoTemp,CP)
elseif ($regex(%a,num_ville=([0-9]+))) hadd -m MeteoTemp CP $regml(1)
else {
if ($regex(%a,src="(.+)" class='Lien_Icone')) {
var %i = $regml(1), %f = $gettok(%i,-1,47)
if (!$exists($+(Meteo/,%f))) dl.meteo %i 1
hadd -m MeteoTemp Pic %f
}
var %r = /left\:([0-9]+\.?[0-9]?)px\;top\:([0-9]+\.?[0-9]?)px.+'(.+)'/ig
if ($regex(%a,%r)) hadd -m MeteoTemp Ville $remove($replace($regml(3),é,é,è,è,ç,ç,$chr(32),$chr(165),#039;,',ï,ï),&) $regml(1) $regml(2)
}
}
}
on *:sockclose:meteo:{
if ($hget(Meteo,Link)) hdel Meteo Link
if ($hget(MeteoVille,Rech)) {
²list @Meteo 10 150 200 200 200 $hget(MeteoVille,Rech)
²button @Meteo 11 150 405 200 20 Sélectionner
}
}
alias -l fond.meteo {
if (!$isdir(Meteo)) mkdir Meteo
var %f = $+(Meteo/fond.,$extension($1-))
if ($exists(%f)) .remove %f
hadd -m Meteo Fond $1-
hadd -m Meteo Fond2 %f
sockclose MeteoFond
sockopen MeteoFond www.lachainemeteo.com 80
}
on *:sockopen:MeteoFond:{
sockwrite -n $sockname GET $$hget(Meteo,Fond) HTTP/1.0
sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
}
on *:sockread:MeteoFond:{
var %a
sockread &a
if ((!$sock($sockname).mark) && ($bfind(&a, 1,$str($crlf,2)))) {
bcopy &b 1 &a $calc($ifmatch +4) -1
if ($bvar(&b,0)) bwrite $hget(Meteo,Fond2) -1 -1 &b
sockmark $sockname 1
}
elseif ($bvar(&a,0)) bwrite $hget(Meteo,Fond2) -1 -1 &a
}
on *:sockclose:MeteoFond:meteo.fond.apply
alias -l meteo.fond.apply {
if (!$window(@Meteo)) return
var %f = $hget(Meteo,Fond2)
if ($1-) var %f = $1-
elseif (!%f) var %f = Meteo/fond.png
if (!$exists(%f)) return
var %x = $pic(%f).width, %y = $pic(%f).height, %ox = $calc(250 - %x / 2), %oy = $calc(270 - %y /2)
drawrect -nr @Meteo 0 1 $calc(%ox -1) $calc(%oy -1) $calc(%x +2) $calc(%y +2)
drawpic -n @Meteo %ox %oy $shortfn(%f)
if ($show) {
hdel -w Meteo Fond*
hadd -m Meteo Origin %ox %oy %x %y
if ((!$sock(Meteo.dl)) && (!$hget(MeteoQueue,0).item)) meteo.generate
}
}
alias -l dl.meteo {
hadd -m MeteoQueue $1-
if ($exists($+(Meteo/,$gettok($1,-1,47)))) .remove $+(Meteo/,$gettok($1,-1,47))
if ($sock(dl.meteo)) return
.timer -h 1 500 dl.meteo.do
}
alias -l dl.meteo.do {
var %f = $hget(MeteoQueue,1).item
if (!%f) {
if (!$sock(MeteoFond)) meteo.generate
return
}
hadd -m MeteoTemp DL %f
hadd -m MeteoTemp DLName $+(Meteo/,$gettok(%f,-1,47))
sockclose Meteo.dl
sockopen Meteo.dl www.lachainemeteo.com 80
}
on *:sockopen:Meteo.dl:{
sockwrite -n $sockname GET $$hget(MeteoTemp,DL) HTTP/1.0
sockwrite -n $sockname $+(Host: lachainemeteo.com,$str($crlf,2)))
}
on *:sockread:Meteo.dl:{
sockread &a
if ((!$sock($sockname).mark) && ($bfind(&a, 1,$str($crlf,2)))) {
bcopy &b 1 &a $calc($ifmatch +4) -1
if ($bvar(&b,0)) bwrite $$hget(MeteoTemp,DLName) -1 -1 &b
sockmark $sockname 1
}
elseif ($bvar(&a,0)) bwrite $$hget(MeteoTemp,DLName) -1 -1 &a
}
on *:sockclose:Meteo.dl:{
hdel MeteoQueue $hget(MeteoTemp,DL)
hdel -w MeteoTemp DL*
dl.meteo.do
}
alias -l meteo.generate {
if (!$window(@Meteo)) return
if ($window(@Meteo.copyVilles)) window -c @Meteo.copyVilles
var %t = 1, %p = MeteoLocation
if ($hget(%p)) hfree %p
var %ht = $+(MeteoVille,$hget(Meteo,Period)), %f = $hget(Meteo,Origin), %ox = $gettok(%f,1,32), %oy = $gettok(%f,2,32), %x = $gettok(%f,3,32)
if ($pic(Meteo/fond.png).width > 350) .copy -o $qt(Meteo/fond.png) "Meteo/Backup.png"
while $hget(%ht,%t).item {
var %i = $ifmatch, %d = $hget(%ht,%i)
tokenize 32 %d
if (anim !isin $4) drawpic -tn @Meteo 0 $calc($1 + %ox) $calc($2 + %oy) $shortfn($+(Meteo/,$4))
else drawpic -ctn @Meteo 16777215 $calc($1 + %ox) $calc($2 + %oy) $shortfn($+(Meteo/,$4))
if ($3 != ø) drawtext -nr @Meteo 0 Tahoma 10 $calc($1 + %ox + 15) $calc($2 + %oy + 25) $+($3,°)
hadd -m %p %i $calc($1 + %ox) $calc($2 + %oy)
inc %t
}
if (!$hget(MeteoVille,Vigilance)) {
var %te = $meteo.translate($puttok($asctime(dd mm yyyy),$calc($asctime(dd) + $hget(Meteo,Jour)),1,32)) $iif($hget(Meteo,Jour) <= 2,$iif(!$hget(Meteo,Period),Matin,Après-Midi))
²surligne @Meteo 10 $calc(%ox +2) $calc(%oy +2) %te
}
if ($hget(MeteoVille,Eph)) {
tokenize 32 $replace($gettok($ifmatch,$+($calc($hget(Meteo,Period) +1),-),32), ,$chr(165))
²surligne @Meteo 12 70 375 $replace($1,$chr(165),$chr(32))
²surligne @Meteo -l 12 430 375 $replace($3,$chr(165),$chr(32))
²surligne @Meteo 12 70 395 $replace($5,$chr(165),$chr(32))
²surligne @Meteo 12 70 415 Lever du soleil : $replace($gettok($1-,-3,32),$chr(165),$chr(32))
²surligne @Meteo 12 70 435 Coucher du soleil : $replace($gettok($1-,-2,32),$chr(165),$chr(32))
²surligne @Meteo -l 12 430 395 Lune : $replace($gettok($1-,-1,32),$chr(165),$chr(32))
}
hadd -m Meteo Ready 1
²ref @Meteo
}
;*************
;Autres écrans
;*************
alias ²meteo.vigilance {
if (!$window(@Meteo)) return
²centre @Meteo -b 40 Carte de vigilance
meteo.wait
if ($hget(MeteoLocation)) hfree MeteoLocation
if ($hget(Meteo,Period) != $null) hdel Meteo Period
hfree -w MeteoVille*
hadd -m MeteoVille Vigilance 0 0 ø vigilance.gif
fond.meteo /image/carte/vigilance/vigilance_fond.gif
dl.meteo /image/carte/vigilance/vigilance.gif
hadd -m MeteoTemp Carte Vigilance
}
alias ²meteo.aide {
if (!$window(@Meteo)) return
²centre @Meteo -b 40 Aide
var %d = drawtext -nr @Meteo 0 Tahoma 12 30
%d 120 Bienvenue sur l'aide de Meteo (codé par ArKanis)
%d 140 Cette version très simple permet de connaître la météo en France
%d 160 ou ses DOM-TOMs et ce de un à six jours.
%d 180 Pour commencer, choisissez où regarder la météo.
%d 220 Vous obtiendrez plus d'informations et passant la souris sur une ville
%d 240 et en cliquant dessus
}
alias ²meteo.credits {
if (!$window(@Meteo)) return
²centre @Meteo -b 40 Crédits
var %d = drawtext -pnr @Meteo 0 Tahoma 12 40
%d 105 Utilitaire codé par ArKanis
%d 125 Mon Site :
²link @Meteo 96 213 125 "www.arkanis.eu" www.arkanis.eu
%d 145 Météo, images provenant de :
²link @Meteo 97 213 145 "www.lachainemeteo.com" www.lachainemeteo.com
drawtext -onr @Meteo 0 Tahoma 12 40 220 Remerciements :
%d 240 A mes testeurs, NeoBlaster et Panthouffle
%d 260 A mes amis (non cités car trop nombreux pour l'être sans oubli :D)
%d 280 A ma famille
%d 325 Deux sites de scripting mIRC :
²link @Meteo 98 204 325 "www.ircfr.com" IRCfr
drawtext -nr @Meteo 0 Tahoma 12 233 325 et
²link @Meteo 99 247 325 "www.scriptsdb.org" ScriptsDB
²centre @Meteo 355 Codé le 03/02/07 et 04/02/07
}
;******
;Divers
;******
alias -l meteo.wait {
if ($show) ²clear @Meteo
hadd -m Meteo Ready 0
²centre @Meteo 240 Chargement en cours ...
²ref @Meteo
}
;**************
;Aliases utiles
;**************
alias -l min return $calc(($1 + $2 - $abs($calc($1 - $2)))/2)
alias -l max return $calc(($1 + $2 + $abs($calc($1 - $2)))/2)
alias -l extension return $regsubex($1,(.+)\.([^\.]+)$,\2)
alias -l meteo.translate {
tokenize 32 $1-
if (!$3) return
var %j = $1, %m = $2, %a = $3
if (%m < 3) var %n = $calc($int($calc(365.25*(%a - 1))) + $int($calc(30.6*(%m + 13))) + %j - 621049)
else var %n = $calc($int($calc(365.25 * %a)) + $int($calc(30.6*(%m +1))) + %j - 621049)
var %d = $iif($calc(%n % 7),$ifmatch,7)
return $gettok(Lundi Mardi Mercredi Jeudi Vendredi Samedi Dimanche,%d,32)
}
;End Of File
Conclusion
J'ai fait ce code car le site www.lachainemeteo.com avait changé la méthode de travail, et celle-ci permet un résultat bien plus beau je trouve :)
Merci à NeoBlaster et Panthouffle pour leur test
Merci à Wims pour son débogage
Le GUI n'est pas tout à fait fini, mais il suffit très largement pour cette Meteo
Il est nécessaire d'avoir AU MOINS mIRC 6.17 , 6.21 est conseillée
Historique
- 04 février 2007 18:42:43 :
- une parenthèse dans le ON LOAD
- 10 février 2007 21:31:56 :
- Mise à jour du $sockread (qui n'existe pas) - Ajout de var %a pour les sockreads - Plus de texte donnant le jour (France aujourd'hui (10/02/07)) - Correction au niveau de l'affichage des images alors que toutes les infos ne sont pas recueillies - Mise à jour du screenshot et de la description - Correction du traitement des données pour la première ville de la liste venant du site (Montpellier au niveau de la France par exemple)
- 28 juillet 2007 17:40:31 :
- Correction de l'information "Lever/Coucher du Soleil" qui ne fonctionnait plus car le site avait rajouté des balises
- 28 juillet 2007 17:44:16 :
- Mise à jour de la rubrique "Votre code"
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Communiquer de script à script, sans serveur... [ par Alerion ]
Question de servitude.Je suis, comme beaucoup, c'est à la mode ces temps-ci, en réseau avec ma femme.Elle a son script, j'ai mon script, on se connect
Dégradé [ par Bloock ]
Bon voila, je vais faire un lecteur mp3 en picwin, et j'aimerai savoir comment on fait [/b]un dégradé dans une fenêtre Picwin[/b]! Merci d'avance <img
Bannir quelqu'un pour un temps précis [ par djrems ]
Salut :)Je n'ai pas trouvé ce que je cherche ( ou alors j'ai mal cherché ).Donc, j'aimerais kick-ban quelqu'un pour un temps précis ( disons 2mn ) si
Graffiti [ par Naza ]
Salut, je viens de trouver un site, par hasard, qui offre la possibilité de créer ces graffitis en très peu de temps. C'est un générateur en ligne, j
Aide Socket & picwin [ par _VeSpArO_ ]
Salut tout le monde je voulai savoir comment stocker un fichier txt d'un site dans un fichier .txt ou autre dans mon mirc.CAD: telecharger par exemple
Picwin je pense lol jsuis meme pas sur du nom :s [ par Panther007 ]
Salut :) Bon je vous dit en quoi j'aimerais me faire aider , j'aimerais me fabriquer un jeu de Ping pong mais avant il faut que je sache comment utili
Dialog + Picwin [ par DiGhan ]
Bonjour,Voilà , j'ai plusieurs dialog, dans lequel je voudrais inclure des picwin.J'aimerais savoir comment faire pour bouger le dialog quand la title
auto replay apres un certain temps [ par Nunrg ]
le titre c'est simple a faire ma question est un peu plus compliqué...comment faire pour qu'il y ai un message envoyer a un utilisateur admeton apres
Savoir le temps en ligne dun personne [ par AwayZ ]
J'aimerais savoir comment faire pour récuperer le temps connecté d'une personne a un serveur
quelques question [ par KiNdErMaXi ]
voila, j'ai quelques questions a vous poser:*1) est-il possible de faire apparaitre un petit truc. Je m'explique, pointez de la souris la croix en hau
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Forum
RE : AIDERE : AIDE par Nico26000
Cliquez pour lire la suite par Nico26000 RE : AIDERE : AIDE par WorldDMT
Cliquez pour lire la suite par WorldDMT AIDEAIDE par Nico26000
Cliquez pour lire la suite par Nico26000
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|