#1 Le 24/07/2009, à 20:31
- Grünt
Liens relatifs dans le forum: hop.
Voici le script PHP qui gère la balise [url ] du forum:
http://trac.ubuntu-fr.org/browser/forum … parser.php
Voici la partie qui gère les liens:
$full_url = str_replace(array(' ', '\'', '`', '"'), array('%20', '', '', ''), $url);
if (strpos($url, 'www.') === 0) // If it starts with www, we add http://
$full_url = 'http://'.$full_url;
else if (strpos($url, 'ftp.') === 0) // Else if it starts with ftp, we add ftp://
$full_url = 'ftp://'.$full_url;
else if (!preg_match('#^([a-z0-9]{3,6})://#', $url, $bah)) // Else if it doesn't start with abcdef://, we add http://
$full_url = 'http://'.$full_url;
Voici ce qu'on peut rajouter pour prendre aussi en compte les liens relatifs:
else if (strpos($url,'./') === 0) // Else if link is relative, we keep it "as it"
$full_url = $full_url;
Ça devrait marcher (Vous voulez que je teste?).
L'intérêt? Poster des liens compatibles avec ubuntu-fr, kubuntu-fr, etc.. sans se faire "agresser" par le thème graphique des utilisateurs de versions différentes du forum.
Pour s'en servir, il suffit d'utiliser la balise URL ainsi:
[url=./viewtopic.php?id=334033]Mon topic[/url]
Dernière modification par ǤƦƯƝƬ');DROP TABLE users; (Le 30/12/2011, à 02:40)
Red flashing lights. I bet they mean something.
Hors ligne
#2 Le 24/07/2009, à 20:38
- geenux
Re : Liens relatifs dans le forum: hop.
Merci pour ce bout de code.
J'avais dit il y a un moment que j'allais le faire, et j'avais complètement oublié
Hors ligne
#3 Le 24/07/2009, à 20:42
- Grünt
Re : Liens relatifs dans le forum: hop.
Mets le avant le dernier "else if", sinon on va se retrouver avec des http://.viewtopic..
Red flashing lights. I bet they mean something.
Hors ligne
#4 Le 24/07/2009, à 20:43
- Grünt
Re : Liens relatifs dans le forum: hop.
Rha, un autre truc chiant: quand on s'abonne à un sujet on reçoit un courriel pointant vers "ubuntu-fr" en cas de nouvelle réponse. Du coup je ne suis pas "autorisé à visualiser cette page", même quand j'essaie de me désabonner (ça vient de me le faire à l'instant), car mon cookie de connexion est pour kubuntu-fr et pas ubuntu-fr
Red flashing lights. I bet they mean something.
Hors ligne
#5 Le 24/07/2009, à 21:52
- geenux
Re : Liens relatifs dans le forum: hop.
Oui, ça m'agace pas mal ça aussi. Il faut à chaque fois enlever le k du kubuntu-fr ou l'ajouter selon les cas. Il doit bien y avoir un moyen d'éviter ça.
Je ne peux pas faire la modification moi-même, mais j'ai demandé à ce qu'elle soit faite.
Hors ligne
#6 Le 25/07/2009, à 18:06
- mr_pouit
Re : Liens relatifs dans le forum: hop.
Pour info, trac.ubuntu-fr.org et le svn ne sont plus utilisés, tout a été déplacé sur LP, par exemple http://bazaar.launchpad.net/~ubuntu-fr/ubuntu-fr-website/forum.dev/files pour voir les fichiers.
À part ça, le patch est ok (sauf qu'on pourrait remplacer $full_link = $full_link par juste {} ).
Mais j'ai un peu de mal à voir une utilisation pour ça (genre plus de deux personnes qui vont utiliser les liens relatifs ?)…
Dernière modification par mr_pouit (Le 25/07/2009, à 18:07)
Hors ligne
#7 Le 25/07/2009, à 19:47
- geenux
Re : Liens relatifs dans le forum: hop.
Moi je les utiliserai en tout cas. C'est très bien pour éviter le changement de forum (passer sur kubuntu-fr alors qu'on est sur Ubuntu-fr). Et puis, ça ne coute rien de mettre le code.
Hors ligne
#8 Le 25/07/2009, à 21:10
- Grünt
Re : Liens relatifs dans le forum: hop.
Y'a plein de gens qui ont des liens vers le forum dans leur signature, et les liens vers des topics ou des posts servent couramment. Donc si, ça sera très très utile.
Red flashing lights. I bet they mean something.
Hors ligne
#9 Le 28/07/2009, à 12:25
- geenux
Re : Liens relatifs dans le forum: hop.
J'en avais vraiment marre de ce problème, surtout qu'on est déconnecté quand on change de forum... En plus, j'avais envi d'apprendre à créer une extension pour firefox, c'est chose faite
L'extension redirige n'importe quel sous domaine du forum vers le forum de votre choix : ./viewtopic.php?id=334649
Il n'empêche qu'intégrer les liens relatifs serait plus propre, et fonctionnerais pour tous les navigateurs.
Hors ligne
#10 Le 28/07/2009, à 18:24
- Grünt
Re : Liens relatifs dans le forum: hop.
Exact, c'est pour ça que j'ai proposé ce "patch"..
Disons que c'est un problème côté forum, donc à régler côté forum et pas à "bidouiller" côté client
Red flashing lights. I bet they mean something.
Hors ligne
#11 Le 28/07/2009, à 20:37
- geenux
Re : Liens relatifs dans le forum: hop.
Oui, et les liens relatifs sont un très bon moyen pour ça. Il resterait quand même le problème des anciens liens, ou ceux envoyé par d'autres moyens de communications, et ça ça peut être réglé côté client comme je l'ai fait.
Je me pose une petite question sur le forum : quand on s'abonne à une page, le forum envoi un mail avec l'adresse de la page. Le mail pointe vers ubuntu-fr ou vers les différentes variantes Ubuntu ?
Hors ligne
#12 Le 28/07/2009, à 20:38
- Grünt
Re : Liens relatifs dans le forum: hop.
Ça pointe vers la variante sur laquelle on s'est inscrit: je me suis enregistré sur Kubuntu, du coup je vois du premier coup d'oeil ce qui est "traduit" et ce qui ne l'est pas
Red flashing lights. I bet they mean something.
Hors ligne
#13 Le 28/07/2009, à 20:42
- geenux
Re : Liens relatifs dans le forum: hop.
Ok, c'est déjà un bon point. Reste les liens de la documentation pour lesquels on ne peut pas faire grand chose côté serveur. Enfin, on pourrait toujours modifier les sources de la documentation pour parser les liens en fonction de l'url courante, mais c'est assez lourd pour pas grand chose.
Hors ligne
#14 Le 29/07/2009, à 17:44
- geenux
Re : Liens relatifs dans le forum: hop.
Ça vient d'être intégré au forum de développement.
Voire http://forum.dev.ubuntu-fr.org/viewtopic.php?id=235941 par exemple.
Ça devrait bientôt arriver ici je pense
Hors ligne
#15 Le 29/07/2009, à 19:10
- Grünt
Re : Liens relatifs dans le forum: hop.
Les liens de la doc' on peut aussi les mettre en relatifs, hein!
Red flashing lights. I bet they mean something.
Hors ligne
#16 Le 31/07/2009, à 09:04
- mr_pouit
Re : Liens relatifs dans le forum: hop.
Normalement c'est en prod (lien relatif).
Hors ligne
#17 Le 31/07/2009, à 09:19
- geenux
Re : Liens relatifs dans le forum: hop.
./viewforum.php?id=9
Yep, ça fonctionne parfaitement
Merci
Hors ligne
#18 Le 31/07/2009, à 19:16
- Grünt
Re : Liens relatifs dans le forum: hop.
:)
Bon ben geenux, t'as plus qu'à changer ta signature
Red flashing lights. I bet they mean something.
Hors ligne
#19 Le 31/07/2009, à 19:36
- geenux
Re : Liens relatifs dans le forum: hop.
Voilà, une signature en lien relatif
Hors ligne
#20 Le 31/07/2009, à 19:39
- Grünt
Re : Liens relatifs dans le forum: hop.
C'est pas ça que je voulais dire
je pensais à une signature qui résoudrait le problème "à la source": au lieu d'indiquer "Voici comment résoudre le problème des liens postés en absolu", un "Voici comment poster des liens en relatifs afin de ne plus obliger les gens à bidouiller quand ils cliquent."
Ceci dit, vu que ça fait un moment que j'insiste pour voir cette modif' apparaître, je m'occupe de la populariser
Red flashing lights. I bet they mean something.
Hors ligne
#21 Le 31/07/2009, à 20:25
- geenux
Re : Liens relatifs dans le forum: hop.
Les liens relatifs ne corrigent pas tout non plus, mais la grande majorité. Avec l'extension, les liens de la doc, et ceux entrés directement dans la barre d'adresse sont aussi redirigé. Mais j'ai un bug à corriger.
Je vais quand même ajouter une petite propagande pour les liens relatifs dans ma signature
Hors ligne
#22 Le 02/08/2009, à 17:48
- Elzen
Re : Liens relatifs dans le forum: hop.
Dites, sinon, j'viens de penser à quelque chose...
Mon script d'harmonisation, c'est du JavaScript tout ce qu'il y a de plus normal, et théoriquement compatible tous-navigateurs.
Il pourrait peut-être être appelé automatiquement par le forum, pour profiter à ceux qui n'ont pas GreaseMonkey ?
Enfin, comme vous voulez.
(Sinon, pour les cookies de connexion, vous pouvez vous connecter aux quatre variantes, comme ça, ça rend le passage de l'une à l'autre un poil moins douloureux. Moi j'fais comme ça, même avec mon script, pour utiliser le menu déroulant.)
Dernière modification par ArkSeth (Le 02/08/2009, à 17:50)
Elzen : polisson, polémiste, polymathe ! (ex-ArkSeth)
Un script pour améliorer quelques trucs du forum.
La joie de t'avoir connu surpasse la peine de t'avoir perdu…
timezone[blocklist]
Hors ligne
#23 Le 02/08/2009, à 18:09
- geenux
Re : Liens relatifs dans le forum: hop.
Ah tiens, j'avais pas vu que tu avais fait un script grease monkey, du coup j'avais fait une extension (enfin, c'était surtout pour apprendre à en faire une de toute façon ).
Mais oui, je pense que ton script pourrait être appelé directement par le forum. Tu devrais faire un rapport de bug sur launchpad pour le proposer.
Hors ligne
#24 Le 02/08/2009, à 18:19
- Grünt
Re : Liens relatifs dans le forum: hop.
Mais heu, pourquoi vous cherchez des solutions à un problème résolu?
Red flashing lights. I bet they mean something.
Hors ligne
#25 Le 02/08/2009, à 18:28
- geenux
Re : Liens relatifs dans le forum: hop.
Parce qu'on sait pertinemment, que les 3/4 des gens n'utiliserons pas les liens relatifs, qu'il y a encore pleins de sujets qui trainent avec des liens erronés.
Personnellement, j'ai déjà pris le réflexe lien relatif, mais ça n'est pas le cas de tous
Hors ligne