Inscris-toi pour écrire dans l'encyclopédie Wikimini!

Un grand merci

Aller à : navigation, rechercher

J'ai commencé à travailler sur le bot. Pour ce faire, j'expérimente les requêtes via l'API, plus rapides que les requêtes ajax "normales" passant par index.php. Je te tiens au courant dès que ça fonctionne.

Si tu tiens vraiment à ajouter les icône sur la page d'index, il faudra se passer des inclusions de Spécial:Index et faire la liste "en dur" (mise à jour par le bot que je développe). Je ne pense pas m'y connaître assez en PHP pour intégrer ça à mediaWiki.

D'ailleurs à ce propos je me suis créé Utilisateur:Dr Bot pour tester le script (et pour voir ton problème de whosOnline, c'est pourquoi j'ai laissé la page vide). Je n'ai pour l'instant pas besoin du statut de bot, je ferai mes tests sur beta où le statut d'admin me donne le droit <tt>apihighlimit</tt> dont j'ai besoin.

Concernant les préférences, sur fr j'ai annulé la redirection automatique vers monobook. Il est en effet préférable de garder l'interface aussi proche que possible de ce que voient les enfants. Par contre, ce serait bien de remettre les préférences "normales" sur beta, et ainsi pourvoir basculer sans soucis entre les différents skins.

Pour le bandeau, je l'ai déjà fait dans mon .js perso : j'ai rétabli le skin wikimini mais j'y ai apporté quelques changements, dont le masquage de ce flash qui est effectivement énorme (par contre, je ne me suis pas préoccupé de mettre un lien masque/afficher, mais ça ce sera vite fait). Je suggère aussi un cookie pour garder en mémoire cette option et ne pas avoir à le masquer à chaque changement de page. Ca devrait être rapide à coder et tu devrais pouvoir mettre ça en place dans quelques jours (voire même peut-être demain)

Pour le double-post, ce n'est pas normal. Logiquement ça devrait conduire à un conflit de modif (mais je suppose que LiquidThread change la donne puisqu'en fait, si j'ai bien compris, il crée une nouvelle page pour chaque message). Bref, oui c'est possible de désactiver le bouton au premier clic. Je vais voir ce que je peux faire.

En parlant de LiquidThread, n'y a-t-il pas une option pour que les fils de discussion soient automatiquement ajoutés à la liste de suivi ?

Dr Brains (discussion)13 janvier 2010 à 00:24

Je dois dire que tu es un peu comme... tombé du ciel ! [-sMiLeY-]

Je ne vais pas avoir le temps de le faire ce soir, mais demain soir, je vais réactiver tous les onglets dans les préférences sur la version bêta. J'en profiterai aussi pour y modifier certains liens du menu de droite qui pointent actuellement vers fr.wikimini.org

Si tu as besoin d'autre chose, fais-le moi savoir!

Lorangeo (discussion)13 janvier 2010 à 00:35

Ah, et à propos de la liste de suivi et liquidthreads. THEORIQUEMENT, on devrait pouvoir être averti lorsqu'on reçoit un nouveau message dans sa page de discussion ET lorsque quelqu'un répond à l'un de ses messages dans une autre page de discussion. En principe, la première notification (message laissé dans sa page de discussion perso) fonctionne : un bandeau s'affiche en haut du site. Mais je crois savoir qu'il y a parfois des problèmes. Par contre, pour ce qui est de la seconde notification (message laissé dans une autre page de discussion), cela ne fonctionne pas. Cela n'a d'ailleurs jamais fonctionné. Mais l'extension est toujours restée en version beta. Elle a connu pas mal de changements (très prometteurs) depuis, mais je n'ai pas encoure souhaité la mettre à jour, ayant eu vent de nombreux problèmes encore irrésolus sur la nouvelle version. Pour l'instant, c'est gérable, puisque l'activité du site est encore relativement limitée. On s'y retrouve donc. Mais j'espère que l'extension aboutira un jour à une version stable qui fonctionne correctement.

Lorangeo (discussion)13 janvier 2010 à 00:41
 

Pour le whosOnline, j'ai trouvé la solution.

Mais pour me faciliter la vie, il faudrait modifier la toute dernière ligne du fichier WhosOnlineSpecialPage.php afin d'ajouter un identificateur à l'élément UL qui contient la liste des utilisateurs présents. Tu peux choisir un autre identificateur si celui que j'ai choisi ne te convient pas.

AVANT

$wgOut->addHTML('<ul>'.$body.'</ul>');

APRES

$wgOut->addHTML('<ul id="WhosOnlineList">'.$body.'</ul>');
Dr Brains (discussion)13 janvier 2010 à 00:40

OK c'est fait!

Bon je vais devoir quitter... en tout cas m'absenter pendant un moment.

Lorangeo (discussion)13 janvier 2010 à 01:06

Le script pour afficher/masquer l'en-tête est au point (voir MediaWiki:Wikimini.js ).

J'avais pensé qu'on pourrait remplacer celle-ci par une liste de liens moins importante en hauteur qui serait cachée lorsque l'entête est affichée (un coup le flash, un coup la petite liste). Si ça te dis, dis-moi quels liens tu souhaites avoir et je te mets ça en place.

Pour le WhosOnline, l'id que tu as rajouté m'a beaucoup aidé. J'ai encore à régler un problème de requête mais ça devrait aller.

Je vais essayer de voir ce que je peux faire pour le bouton publier, ça me semble plus important que le WhosOnline.

Dr Brains (discussion)13 janvier 2010 à 03:48

Bon ben pour le double-post c'était plus simple que prévu. Voilà donc la petite fonction qu'il faut rajouter.

Elle a pour effet de masquer toute la zone d'édition lors du premier clic. Je pense que c'est suffisamment rapide pour empêcher tout double-clic.

// ============================================================================
///////////////////////////////// Évite le double-post pour les acharnés du clic
addOnloadHook( function(){
    var wpSave = document.getElementById('wpSave');
    if(wpSave){
        wpSave.onclick = function(){
            document.getElementById('editform').style.display = "none";
        }
    }
});///////////////////////////////
// ============================================================================
Dr Brains (discussion)13 janvier 2010 à 04:15

Et voilà le correctif javascript pour l'extension WhosOnline. Testé avec mon compte Utilisateur:Dr Bot : il apparait bien en rouge, ainsi que le page de discussion.

// =========================================================================== 
//////////////////////////////////////////////////// Patch extension WhosOnline
function WhosOnline_CheckNewPage(position){
        var ListePresents = document.getElementById('WhosOnlineList');
        if(!ListePresents) return;
        if(!position) position=0;
        var Lien = ListePresents.getElementsByTagName('a')[position];
        if(!Lien) return;
        var LienHref = Lien.href;
        LienHref = LienHref.split(wgServer).join('').split('/wiki/').join('');
        Requete = sajax_init_object();
        var url = wgServer+'/w/api.php?action=query&redirects&titles='+LienHref;
        Requete.open('GET',url, true);
        Requete.send(null);
        Requete.onreadystatechange = function(){
                if((Requete.readyState == 4)&&(Requete.status == 200)){
                         var Reponse = document.createElement('div');
                         Reponse.innerHTML = Requete.responseText;
                         var Spans = Reponse.getElementsByTagName('span')[7].innerHTML;
                         if(Spans.indexOf('missing=""')!=-1){
                                Lien.className = "new";
                        }
                        WhosOnline_CheckNewPage((position+1));
                }
        }
}
addOnloadHook(WhosOnline_CheckNewPage);
// ===============================================
Dr Brains (discussion)13 janvier 2010 à 06:23

Pour la préverntion du double clic, ça marche. Enore une fois, merci. J'ai cependant modifier un petit truc. En effet, je trouvais que de faire disparaitre toute la fenêtre était un peu brutal et pouvait surprendre l'utilisateur, lui faisant croire à un problème.

J'ai donc essayé de bloquer le bouton, mais sans succès (je ne sais d'ailleurs pas si ma tentative est correcte). Suite à cet échec, je me suis rabattu sur une autre solution. J'ai fait en sorte que seul le bouton submit soit masqué, et non pas toute la fenêtre. Ca, ça a marché. Mais que penses-tu de ma première tentative. Ce serait la solution la plus logique, non?

En ce qui concerne le correctif de l'extension WhosOnline, cela ne fonctionne malheureusement pas chez moi, même après avoir purgé le cache et rechargé le cache de mon navigateur. Sur fr.wikimini.org, le lien vers la page utilisateur reste bleu, même si elle est vide. Celui vers une page de discussion vide, en revanche, est bien rouge. [-sMiLeY-]

Lorangeo (discussion)13 janvier 2010 à 23:05

Pour le blocage du bouton :

 

// ============================================================================
///////////////////////////////// Évite le double-post dans les pages de discussion LQT
addOnloadHook( function(){
    var wpSave = document.getElementById('wpSave');
    if(wpSave){
        wpSave.onclick = function(){
            document.getElementById('wpSave').disabled = "disabled";
        }
    }
});///////////////////////////////
// ===========================================================================

Je vais essayer de voir ce qui cloche pour le patch de WhosOnline.

Le bot pour la mise à jour des pages à illustrer est prêt [1]. A vérifier qu'il n'a pas de faux positifs, mais normalement ça ne devrait pas être le cas. Maintenant, il faut que tu me dises si tu veux une mise en page particulière (message d'avertissement, classement, etc...).

Par ailleurs, durant mes essais je me suis aperçu qu'il y avait des pages avec le préfixe Portail: dans l'espace de noms principal. C'est normal ?

Dr Brains (discussion)13 janvier 2010 à 23:35

Génial! Il faudra que tu m'expliques comment faire fonctionner ce bot. Et puis il n'y a pas besoin de mise en page particulière. Ca va très bien comme ça.

Pour les pages avec le préfixe portail, ce sont des wikiminautes qui ont pris l'initiative de les créer (probablement en s'inspirant de ce qui existe sur Wikipédia). Pour l'instant, je les ai laissées... mais ne suis pas trop pour les conserver. Il faut que j'en discute avec les wikiminautes concernés.

Lorangeo (discussion)13 janvier 2010 à 23:45

OK pour le header [1]. J'ai mis un style pour les liens (couleur au survol), tu peux le changer si tu le souhaites.

Pour le Bot c'est ici. Je vais le tester sur fr, pour voir si FCKEditor ne pose pas de problème (je l'ai désactivé sur beta).

Pour la mise à jour, c'est très simple. Il y a un lien en haut à gauche de l'écran. Tu cliques et c'est parti.

Concernant les pages "Portail:", le problème c'est qu'elles ont été crées alors qu'il n'y a pas d'espace de noms Portail. Si tu décide de les garder, il faudra pour qu'elles aillent dans le bon espace de noms :

  1. créer l'espace de noms "Portail" (et "Discussion Portail")
  2. supprimer ces pages
  3. recréer les pages (je dis bien recréer, pas restaurer)


Non, je ne vis pas en Colombie. Il se trouve qu'un gars a demandé de l'aide sur le Bistro de Wikipédia pour créer le projet:Colombie. Et j'y ai répondu.

J'aime les défis !! [-sMiLeY-]


Dr Brains (discussion)14 janvier 2010 à 00:47

Ca se voit que tu aimes les défis! Merci, le correctif pour l'extension Whosonline fonctionne parfaitement!

J'ai testé la fonction permettant de masquer le menu flash du haut. Ca fonctionne parfaitement aussi!

Petite question : Serait-il possible d'afficher le lien "Réduire l'en-tête"/"Afficher l'entête" juste en haut du bloc "Rechercher", centré (dans la div column2). De cette manière, on éviterait de baisser encore plus la partie principale (div column1). Je pourrais éventuellement ajouter moi même le lien dans le fichier PHP de la skin, si tu m'indiques quoi ajouter exactement.

Zztest (discussion)14 janvier 2010 à 01:24
 
 
 
 
 
 

J'ai vu le script qui masque l'animation flash. C'est vraiment super. Pour les liens, les voici :

<a href="http://fr.wikimini.org/wiki/Accueil">Accueil</a>

<a href="http://fr.wikimini.org/wiki/Wikimini:Enfants">Enfants</a>

<a href="http://fr.wikimini.org/wiki/Wikimini:Adultes">Adultes</a>

<a href="http://fr.wikimini.org/wiki/Wikimini:Enseignants">Enseignants</a>

<a href="http://fr.wikimini.org/wiki/Aide:Accueil">Aide</a>

Lorangeo (discussion)13 janvier 2010 à 23:42

OK, je vais mettre ça en place.

Pour le WhosOnline, essaye ceci (chez moi ça marche) :

// =========================================================================== 
//////////////////////////////////////////////////// Patch extension WhosOnline
function WhosOnline_CheckNewPage(position){
        var ListePresents = document.getElementById('WhosOnlineList');
        if(!ListePresents) return;
        if(!position) position=0;
        var Lien = ListePresents.getElementsByTagName('a')[position];
        if(!Lien) return;
        var LienHref = Lien.href;
        LienHref = LienHref.split(wgServer).join('').split('/wiki/').join('');
        Requete = sajax_init_object();
        var url = wgServer+'/w/api.php?action=query&redirects&titles='+LienHref;
        Requete.open('GET',url, true);
        Requete.send(null);
        Requete.onreadystatechange = function(){
                if((Requete.readyState == 4)&&(Requete.status == 200)){
                         var Reponse = document.createElement('div');
                         Reponse.innerHTML = Requete.responseText;
//---------------------------------------------------------------------------- Partie modifiée
                         var Spans = Reponse.getElementsByTagName('span');
                         for(a=0;a<Spans.length;a++){      
                              var SpanHTML = Spans[a].innerHTML;
                              if(SpanHTML.indexOf('missing=""')!=-1){
                                    Lien.className = "new";
                             }
                        }
//------------------------------------------------------------------------------
                        WhosOnline_CheckNewPage((position+1));
                }
        }
}
addOnloadHook(WhosOnline_CheckNewPage);
// ===============================================


Dr Brains (discussion)13 janvier 2010 à 23:47

Ok, j'essaie ça dans 20 minutes, car je dois vite m'absenter un moment. Je reviens! Au fait, tu vis en Colombie?

Lorangeo (discussion)13 janvier 2010 à 23:53

J'ai dû merder quelque par, ma réponse a été insérée un peu plus haut...

Dr Brains (discussion)14 janvier 2010 à 00:48

essai concluant : ça marche comme sur des roulettes.

Pour info, la mise à jour (pour les 2000 et quelques pages actuellement sur le site) dure environ dix minutes.

J'ai copié le code source dans MediaWiki:Bot/PagesSansImage.js

Dr Brains (discussion)14 janvier 2010 à 01:11
Modifié 1 utilisateurs
Dernière modification : 14 janvier 2010 à 01:29

Oups, j'ai aussi une réponse qui s'est glissée en-haut : http://fr.wikimini.org/wiki/Discussion_utilisateur:Dr_Brains#lqt_thread_3346

Clique sur le lien « Répondre » de ce message-ci, afin qu'on poursuive la discussion ici.

Edité : Et en plus je me trompe de compte! [-sMiLeY-]

Zztest (discussion)14 janvier 2010 à 01:28

OK, j'ai modifié le script pour afficher le lien dans la colonne 2.

Ca necessite l'ajout d'une fonction supplémentaire hasClass() dans la page (voir ici, après les fonction pour les cookies).

Je veux bien te dire comment faire pour intégrer ça au skin, mais alors il me faut une copie du fichier /skins/Wikimini.php. Le PHP est totalement transparent pour le navigateur, je n'ai accès qu'au rendu final (HTML/JS/CSS).

Dr Brains (discussion)14 janvier 2010 à 01:48

Tu penses que c'est mieux de l'intégrer au skin?

Lorangeo (discussion)14 janvier 2010 à 01:55

J'ai aussi remarqué que le lien « Lancement BOT : Pages à illustrer » est constamment affiché en haut à gauche, dans beta, que je sois connecté ou non.

Lorangeo (discussion)14 janvier 2010 à 02:11
 

Ca peut rendre le chargement de la page plus rapide, mais je ne sais pas si le gain sera si important que ça. On peut essayer sur beta, pour voir, si ça te dis.

Dr Brains (discussion)14 janvier 2010 à 02:14

oui, je l'ai inséré à la fin de MediaWiki:Wikimini.js. J'avais pas pensé qu'une ip pouvait le lancer. Je vais ajouter une condition (wikitechniciens seulement).

Dr Brains (discussion)14 janvier 2010 à 02:16

Ayé, c'est modifié. Seuls les membres du groupe "sysop" ont accès au Bot désormais

Dr Brains (discussion)14 janvier 2010 à 02:21
 

Oui, c'est mieux de limiter l'affichage de ce lien aux wikitechniciens. Si tu veux, tu peux cliquer sur la petite enveloppe (tout en haut à droite) et m'envoyer un mail afin que je puisse te retourner le fichier wikimini.php

Et si tu penses que ça ne vaut pas la peine d'essayer, et bien restons-en là. Je vais ajouter le script sur Wikimini.js

Lorangeo (discussion)14 janvier 2010 à 02:29

Pas sûr de l'utilité, comme je te l'ai dit, mais je pense que ça ne coûte rien d'essayer sur beta (quitte à reverter si ça n'est pas concluant). De plus, je trouverai peut-être des trucs à améliorer. Je te maile (ça existe comme verbe ça ?) de ce pas.

Au fait, ça y est : je reçois les notifications de nouveaux message ! Tu as mis l'extension à jour ?

Dr Brains (discussion)14 janvier 2010 à 02:35

Non je n'ai rien changé, mais ta remarque confirme donc qu'il y a un problème! [-sMiLeY-]

Mais inutile de se préoccuper pour cela... Je mettrai à jour l'extension après avoir eu le temps de tester sa nouvelle version.

Pour le verbe « mailer », pas sûr que ça existe. Pour les éventuelles choses améliorables (mmh, tiens ça existe), ça c'est sûr par contre ! [-sMiLeY-]

Lorangeo (discussion)14 janvier 2010 à 02:42
 

Heu, le lien de l'enveloppe ne marche pas. J'ai un message d'erreur "Avast protection..." qui me déclenche une mise à jour d'outlook que je ne peux pas finir car je n'ai pas le CD (c... d'ordis modernes vendus sans les cd [-sMiLeY-])

Je ne trouve pas non plus la page spéciale "envoyer un mail".

L'adresse c'est bien "info Arobase NomdeDomaine" ?

Si oui, je te contacte avec ma messagerie "normale".


PS : ça y est, la notification ne marche plus...

Dr Brains (discussion)14 janvier 2010 à 02:45
Modifié 1 utilisateurs
Dernière modification : 14 janvier 2010 à 02:59

erf...

tu peux m'écrire à ############# [-sMiLeY-]

EDIT Dr Brains : inutile d'attirer les robots, j'ai donc masqué ton mail.

Lorangeo (discussion)14 janvier 2010 à 02:50

Ayé, le mail est parti.

J'ai peut-être une piste (enfin, une pistounette on va dire) pour cette notification : là j'écris et je ne suis pas sur ma page de discussion mais sur la page spéciale Spécial:Newmessages.

Dr Brains (discussion)14 janvier 2010 à 02:58

Au fait, il y a encore des liens de beta qui pointent sur fr :

Dans la colonne de droite :

  • "Retourner à l'accueil"
  • "Image du jour"
  • "Wikichampions", "pages demandées", "modifs récentes"
  • "Alerte !"

Dans le footer :

  • "Accessibilité"
  • "Droits d'utilisation"
  • "Presse & médias"
  • "RSS" et "XML"
Dr Brains (discussion)14 janvier 2010 à 05:31

Merci! Je viens de les corriger.

Lorangeo (discussion)14 janvier 2010 à 12:46
Modifié 2 utilisateurs
Dernière modification : 14 janvier 2010 à 23:25

Je me suis permis d'ajouter une fonction au début de la page MediaWiki:Wikimini.js (sur beta) pour afficher le site en 100% au lien de 800px. Elle rajoute aussi un lien supplémentaire (sous celui pour l'en-tête) pour vérifier le rendu en 800px.

Je ne me suis pas préoccupé de cookie et par défaut l'affichage est toujours en 100%.

Pour la "pistounette" de la notification, ça n'a rien donné [-sMiLeY-]. A part une mise à jour de l'extension, je ne pense pas qu'on puisse y faire grand-chose.

Dr Brains (discussion)14 janvier 2010 à 22:58

Pour ce que tu sais, je t'en parle par mail, ce sera plus sûr.

Dr Brains (discussion)14 janvier 2010 à 23:06
 

Hello!

Sympa cette idée d'élargir le site. On pourrait même l'intégrer dans la fr. Mais idéalement, il faudrait n'élargir que la div centrale (column 1). Et si on allait dans cette direction, on pourrait encore ajouter à côté la possibilité d'agrandir/réduire la taille du texte. Ca ferait un « petit espace » d'outils liés à l'ergonomie et l'accessibilité du site.

Ca donnerait :

Réduire l'en-tête | <> | A+ A- A (Je mettrais des icônes bien sûr).

Au fait, j'ai modifié ton dernier message. Question sécurité, mieux vaut en discuter par mail. D'ailleurs, je te proposerais même de poursuivre cette discussion par mail si cela ne te dérange pas. Normalement, j'avais créé un forum à part pour discuter du développement du site, mais je n'ai pas encore pu le mettre sur le nouveau serveur (Wikimini a migré fin 2009).

Lorangeo (discussion)14 janvier 2010 à 23:19

Il y a plus simple qu'un forum (ou que des mails) :

Installer sur beta (et peut-être même sur fr) l'extension LockDown et créer un nouvel espace de noms réservé aux membres d'un certain groupe ("sysop" j'imagine, à moins que tu crée aussi un autre groupe "développeurs").

J'avais d'ailleurs déjà discuté de cette extension sur Wikipédia avec quelqu'un qui voulait un espace sécurisé sur son wiki [1].


Pour le message, j'avais vu. Vu ta rapidité de réaction, j'ai semble-t-il tapé dans le mille. Je te parle de tout ça par mail.

Dr Brains (discussion)14 janvier 2010 à 23:36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Wikiboo Outils personnels