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

Gros souci

Aller à : navigation, rechercher

Hello Docteur!

Il me semblait bien que le nombre de contributions sur Wikimini avait dramatiquement baissé depuis deux jours! Le patch prévenant le double-clic empêchait tout bonnement les utilisateurs d'IE de publier quoique ce soit! Je viens donc de le désactiver d'urgence. Le problème, c'est que tous les wikiminautes qui ne vident pas leur cache sont toujours dans l'impossibilité d'intervenir sur le site. Il y aurait peut-être un moyen de contrecarrer le truc en modifiant le fichier Wikimini.js (le patch avait été appliqué dans commons.js. Je t'ai octroyé les droits de wikitechnicien pour te laisser plus de marge de manœuvre, en espérant que tu aies le temps de voir s'il y a une solution. Pour ma part, je ne serai pas de retour avant ce soir. Au secours!

Lorangeo (discussion)16 janvier 2010 à 14:54

Je pourrais modifier l'id du bouton dans les fichiers php si jamais... tu veux que j'essaie?

Lorangeo (discussion)16 janvier 2010 à 15:41

C'est bon, j'ai trouvé la solution et j'ai rétabli la fonction.

Ca fonctionne avec Internet Explorer 8.


J'ai aussi dû installer la methode "indexOf", qu'IE ne connaissait pas, et j'en ai profité pour rajouter d'autres fonctions standards qui seront utiles par la suite


Par contre, il y a un bug dans une fonction "Google" (fonction liée à GoogleMap j'ai l'impression)

En mode édition, cette fonction recherche la "toolbar", qui n'est pas présente (FCKEditor ?) Je vais essayer de voir ce qu'on peut faire.


Il risque d'y avoir un problème également avec le script qui modifie la hauteur de la taille d'édition (j'ai eu une alerte par rapport à ça).

Enfin bon, il y a le temps de la mettre au point (et ce coup-ci je vérifierai que ça marche correctement avec IE et les autres navigateurs). Au pire, ben faudra laisser tomber cette option...

Dr Brains (discussion)16 janvier 2010 à 15:52

Oui, mais le problème du cache n'est pas réglé. En ce qui me concerne, j'ai beau fermer et relancer IE8, jr ne peux toujours pas publier dans Wikimini. C'est parce que visiblement j'ai toujours l'ancien Javascript cahrgé en mémoire. Il faudrait forcer le rechargement du javascript (common.js) chez tous les visiteurs. Si ce n'est pas possible, dis-le moi rapidement afin que j'intervienne directement dans les fichiers php. Il suffirait de remplacer wpSave par wpSave1 à tous les endroits où cela apparait. J'en ai localisé 4 qu'il suffirait de changer.

Lorangeo (discussion)16 janvier 2010 à 15:58

Et dans un mois, je remplacerais à nouveau wpsave1 par wpsave au cas où le correctif anti double clic est OK.

Lorangeo (discussion)16 janvier 2010 à 15:59
Wikiboo photographe

Attention, pour faire cela, tu dois être connecté(e) !

Puce-rouge2.gif Clique ici pour te connecter ou créer un compte



Explication détaillée : Tu n’es pas autorisé(e) à modifier cette page, pour les raisons suivantes :

  • L’action que tu essaies de réaliser est réservée aux wikiminautes du groupe : Utilisateurs.
  • Tu n'as pas la permission de modifier le message de cet utilisateur.

Tu peux seulement voir le code source de l’article, mais pas le modifier :

Revenir à la page Thread:Gros souci (6).

ou un compte gmail?

Lorangeo (discussion)16 janvier 2010 à 16:00

Non, on ne peut pas renommer le bouton. Il faut absolument garder ce nom.

Par contre, on peut rajouter la fonction "onclick" directement dans le php. Théoriquement l'effet sera immédiat. Je vais essayer de voir dans quel fichier ça se passe (/includes/edit.php je crois).

Non, ni skype, ni gmail.

Dr Brains (discussion)16 janvier 2010 à 16:12

Pourtant j'y arrive à publier, moi (je suis sous IE, là). C'est bizarre quand même...

Dr Brains (discussion)16 janvier 2010 à 16:12

C'est parce que tu as le nouveau common.js chargé dans ton navigateur. Moi j'ai toujours l'ancien. Il suffirait que je recharghe mon cache pour résoudre le problème. Le souci, c'est que les autres wikiminautes qui ont consulté le site durant ces deux derniers jours sont dans la même situation. Ils ont l'ancien common.js chargé dans leur cache. Et à moins qu'ils ne le rechargent, ils ne pourront toujours pas publier sur le site.

C'est pour ça qu'il faudrait forcer le rechargement de common.js. ca doit être possible d'une manière ou d'une autre. Mais le plus simple, à mon avis, ce serait encore de changer l'id du bouton submit pour que le correctif que nous avons ajouté n'ait plus aucun effet. Dans quelques temps, on pourra le rétablir.

Qu'en penses-tu?

Lorangeo (discussion)16 janvier 2010 à 16:16

Pour t'expliquer ce qui se passe, et bien lorsque je clique sur le bouton publier, il se désactive, mais rien ne se produit ensuite. La publication ne s'effectue pas.

Lorangeo (discussion)16 janvier 2010 à 16:19

Selon mes recherches, on pourrait modifier wpSave en wpSave1 (par exemple) dans les 4 fichiers suivants et le site continuerait de fonctionner normalement :

  extensions\FCKeditor\css\fckeditor.css (2 hits)
	Line 1425: input#wpSave, input#wpDiff {
	Line 1433: #wpSave {
  includes\EditPage.php (2 hits)
	Line 2006: 			'id'        => 'wpSave',
	Line 2007: 			'name'      => 'wpSave',
  skins\wikimini\main.css (2 hits)
	Line 1611: input#wpSave, input#wpDiff {
	Line 1619: #wpSave {
  skins\wikimini\rtl.css (1 hits)
	Line 209: input#wpSave, input#wpDiff {
Lorangeo (discussion)16 janvier 2010 à 16:30

Il y a quelques autres occurrences de wpSave, mais uniquement dans fichiers liés à d'autres skins.

Lorangeo (discussion)16 janvier 2010 à 16:31

Bon, le filtre anti-pourriel s'y met maintenant...

Tu peux toujours essayer (les fichiers css c'est inutile de les modifier), mais franchement je doute.


Sinon, ce que j'essayais de dire avant de me faire censurer, c'était d'ajouter la fonction qui marche dans /skins/wikimini.php, à la fin, juste avant l'appel addOnLoadHook(), entre deux balises :

<script type="text/javascript">
// ============================================================================
///////////////////////////////// É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').submit();
            document.getElementById('wpSave').disabled = "disabled";            
        }
    }
});///////////////////////////////
// ===========================================================================

</script>

Théoriquement, ce nouveau "onclick" devrait écraser le précédent et l'effet sera immédiat.

Dr Brains (discussion)16 janvier 2010 à 16:41

Mhh? Je ne trouve pas addOnLoadHook() dans le fichier [-sMiLeY-]

Lorangeo (discussion)16 janvier 2010 à 16:47

Au temps pour moi, en fait ce sont les script "bottomscripts que j'appelle comme ça, visiblement à tort :

				<!--footer end-->
				<?php } //end ifprintable ?>
				
			</div>
		</div>
	</div>

<script type="text/javascript">
// ============================================================================
///////////////////////////////// É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').submit();
            document.getElementById('wpSave').disabled = "disabled";            
        }
    }
});///////////////////////////////
// ===========================================================================

</script>

<?php $this->html('bottomscripts'); /* JS call to runBodyOnloadHook */ ?>	
<?php $this->html('reporttime') ?>
<?php if ( $this->data['debug'] ): ?>
<!-- Debug output:
<?php $this->text( 'debug' ); ?>

-->
<?php endif; ?>
</body>

</html>
<?php
	wfRestoreWarnings();
	} // end of execute() method
} // end of class
?>
Dr Brains (discussion)16 janvier 2010 à 16:52

Ouf, on y arrive! [-sMiLeY-]

Donc je parviens à nouveau à publier avec IE8, sans avoir vidé le cache de mon navigateur. [-sMiLeY-]

Cependant, avec IE8 en tout cas, le bouton submit ne se désactive pas. J'ai aussi vu une erreur Javascript (signalé dans la barre des tâche par un petit signal d'avertissement jaune) au moment où j'ai cliqué sur le bouton submit.

Si vraiment ce correctif pose des problèmes, autant le laisser tomber. Le problème des doublons ne se pose que dans les pages de discussion, et il n'apparait heuresement pas trop souvent. On peut espérer que la prochaine version stable de LQT ait résolu ce problème, non?

Lorangeo (discussion)16 janvier 2010 à 16:58

OK, je vois le problème. En fait, IE ne connaît pas la méthode submit();

Du coup, la fonction buggue et le disabled n'est pas exécuté.

Ce que je te suggères, c'est de supprimer les deux, mais en gardant la fonction onclick vide (pour que ceux qui n'ont pas encore rechargé leur cache n'ai pas accès au onclick de la fonction qui ne marche pas.

De mon côté, je vais désactiver la fonction de MediaWiki:Common.js et essayer de résoudre le problème sur beta (probablement en codant la requête "manuellement").

Dr Brains (discussion)16 janvier 2010 à 17:06

Pfff, y a des fois, je réfléchis pas...

C'est normal qu'il y ait un bug, car ce n'est pas sur le bouton qu'il faut appliquer le submit mais sur la forme.

J'ai donc réparé la fonction (elle est à la fin de MediaWiki:Wikimini.js sur beta) :

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

Théoriquement, il ne devrait plus y avoir de problème, mais vu le cirque, il vaut mieux la tester un maximum avant de la mettre sur fr... (notamment pour voir si c'est bien compatible avec FCKEditor)

Dr Brains (discussion)16 janvier 2010 à 17:21
 

Ok, mais qu'entends-tu exactement par « supprimer les deux » ?

Malheuresement, je dois absolument partir maintenant. Je me suis déjà mis très en retard.

Ce soir, ou demain, je testerai également le site avec le logiciel "Multiple IE" (qui ne fonctionne que sous XP). Cela me permettra de vérifier s'il y a des problèmes avec les plus anciennes versions de IE.

A tout bientôt et merci de ta rapide intervention!

Laurent

Lorangeo (discussion)16 janvier 2010 à 17:25

Ok, je viens de lire ton second message (qui s'est croisé avec ma première réponse). Oui, il vaut mieux tester... mais je pense qu'on touche le bon bout. [-sMiLeY-]

Erf, il faut que je file! [-sMiLeY-]

Lorangeo (discussion)16 janvier 2010 à 17:26

Par "supprimer les deux", je voulais dire laisser la fonction onclick vide, afin de ne pas provoquer d'erreur, mais de continuer à écraser la fonction défectueuse de ceux qui n'ont pas leur cache à jour.

Bon vent, et fais moi signe à ton retour.

Dr Brains (discussion)16 janvier 2010 à 17:38

Pour la barre d'option, que penses-tu de s'inspirer de celle présente sur cette page ?

Dr Brains (discussion)17 janvier 2010 à 05:44

Oui, c'est une excellente idée! Pour les icônes, je me chargerai de les créer ou d'en trouver. Ne te préoccupe donc pas trop pour ça! [-sMiLeY-]

Lorangeo (discussion)17 janvier 2010 à 11:48

J'ai rajouté sur beta la fonction pour modifier la taille de la police.

Pour les icônes, tu devrais arriver à trouver ton bonheur ici.

Une fois que tu auras choisi, je modifierai le menu pour en faire une barre et il ne me restera plus qu'à coder la fonction qui fait afficher l'explication en-dessous. (D'ailleurs il faudrait également modifier le wikiboo, qui est le même que celui du menu outils. Là aussi, je te laisse choisir.

Questions : est-ce que les autres wikitechniciens (ou adultes) sont au courant de l'existence de beta ou il n'y a que nous deux ? Je demande parce que ça serait pas mal d'avoir plusieurs testeurs pour éviter les erreurs.

Dr Brains (discussion)17 janvier 2010 à 18:19
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Wikiboo Outils personnels