X-Git-Url: http://git.euphorik.ch/index.cgi?a=blobdiff_plain;ds=inline;f=js%2Fformateur.js;h=1cc88c26a541be048b101d5e3b1c6f2a6860f1b3;hb=76bcba66b341128f518ed77a40f640048cd006fd;hp=8fd8e0f766b4384811d80e5df0bcc693db8a7f27;hpb=e6475e1885c0a0f102387c01e9bcb78ac09b4ef8;p=euphorik.git
diff --git a/js/formateur.js b/js/formateur.js
index 8fd8e0f..1cc88c2 100644
--- a/js/formateur.js
+++ b/js/formateur.js
@@ -28,7 +28,7 @@ euphorik.Formateur = function() {
this.regexUrl = new RegExp("(?:(?:" + this.protocoles + ")://|www\\.)[^ ]*", "gi");
this.regexImg = new RegExp("^.*?\\.(gif|jpg|png|jpeg|bmp|tiff)$", "i");
- this.regexDomaine = new RegExp("^(?:(?:" + this.protocoles + ")://|www\\.).*?([^/.]+\\.[^/.]+)(?:$|/).*$", "i");
+ this.regexDomaine = new RegExp("^(?:(?:" + this.protocoles + ")://)(.*?)(?:$|/).*$", "i");
this.regexTestProtocoleExiste = new RegExp("^(?:" + this.protocoles + ")://.*$", "i");
this.regexNomProtocole = new RegExp("^(.*?)://");
};
@@ -110,12 +110,12 @@ euphorik.Formateur.prototype.traiterURL = function(m, pseudo) {
*/
euphorik.Formateur.prototype.traiterWikiSyntaxe = function(m) {
return m.replace(
- /_(.*?)_/g,
+ /(?:^| )_(.*?)_(?:$| )/g,
function(texte, capture) {
return '' + capture + '';
}
).replace(
- /\*(.*?)\*/g,
+ /(?:^| )\*(.*?)\*(?:$| )/g,
function(texte, capture) {
return '' + capture + '';
}
@@ -124,7 +124,7 @@ euphorik.Formateur.prototype.traiterWikiSyntaxe = function(m) {
/**
* Renvoie une version courte de l'url.
- * par exemple : http://en.wikipedia.org/wiki/Yakov_Smirnoff devient wikipedia.org
+ * par exemple : http://en.wikipedia.org/wiki/Yakov_Smirnoff devient en.wikipedia.org
*/
euphorik.Formateur.prototype.getShort = function(url) {
var estUneImage = false;
@@ -152,8 +152,19 @@ euphorik.Formateur.prototype.getShort = function(url) {
return [versionShort ? versionShort : "url", estUneImage];
};
+euphorik.Formateur.prototype.supprimerSmiles = function(m) {
+ objectEach(this.smiles, function(nom, smiles) {
+ for (var i = 0; i < smiles.length; i++) {
+ m = m.replace(smiles[i], "");
+ }
+ });
+ return m;
+};
+
/**
* Traite les pseudo et messages à être affiché dans le titre d'une image visualisé avec lightbox.
+ * Supprime les smiles pour pas qu'ils puissent être remplacés par la fonction 'traiterSmiles'.
+ * TODO : trouver un moyen pour que les smiles puissent être conservés
*/
euphorik.Formateur.prototype.traiterPourFenetreLightBox = function(M, urlCourante) {
var thisFormateur = this;
@@ -161,5 +172,5 @@ euphorik.Formateur.prototype.traiterPourFenetreLightBox = function(M, urlCourant
return "[" + thisFormateur.getShort(url)[0] + (urlCourante === url ? "*" : "") + "]";
};
- return this.remplacerBalisesHTML(M).replace(this.regexUrl, traitementUrl);
+ return this.remplacerBalisesHTML(this.supprimerSmiles(M)).replace(this.regexUrl, traitementUrl);
};