From 7cf389481b133c57d6563b5e6747131f4abbf589 Mon Sep 17 00:00:00 2001 From: Greg Burri Date: Tue, 12 Aug 2008 20:31:57 +0000 Subject: [PATCH] MOD adaptation du skin dark MOD cleanage --- js/conf.js | 1 - js/pageMinichat/commandes.js | 4 +- js/pageMinichat/conversation.js | 18 +++- js/pageMinichat/pageMinichat.js | 13 ++- styles/1/pageMinichat.css | 54 +++++----- styles/2/euphorik.css | 2 +- styles/2/pageMinichat.css | 177 ++++++++++++++++++++------------ tools/tools.rb | 56 +++++++--- 8 files changed, 199 insertions(+), 126 deletions(-) diff --git a/js/conf.js b/js/conf.js index f69d281..0decfb9 100644 --- a/js/conf.js +++ b/js/conf.js @@ -21,7 +21,6 @@ */ euphorik.conf = { versionProtocole : 3, // version du protcole - nickDefaut : "", nbMessageAffiche : 10, // (par page) pseudoDefaut : "", tempsAffichageMessageDialogue : 4000, // en ms diff --git a/js/pageMinichat/commandes.js b/js/pageMinichat/commandes.js index bae4604..f49ce9a 100644 --- a/js/pageMinichat/commandes.js +++ b/js/pageMinichat/commandes.js @@ -35,7 +35,7 @@ euphorik.Commandes.statut = {ok : 0, pas_une_commande : 1, erreur_commande : 2}; euphorik.Commandes.liste = { "nick" : { - usage : "\\nick ", exec : function(args, client) { if (args.length === 0) { @@ -73,5 +73,5 @@ euphorik.Commandes.prototype.exec = function(chaine) { return euphorik.Commandes.liste[nomCommande].exec(args, this.client); } - return [euphorik.Commandes.statut.erreur_commande, 'La commande \\' + nomCommande + ' est inconnue']; + return [euphorik.Commandes.statut.erreur_commande, 'La commande /' + nomCommande + ' est inconnue']; }; diff --git a/js/pageMinichat/conversation.js b/js/pageMinichat/conversation.js index 70be515..73b8d3a 100644 --- a/js/pageMinichat/conversation.js +++ b/js/pageMinichat/conversation.js @@ -56,7 +56,7 @@ euphorik.Conversation = function(conversations, num) { '
' + (reverse ? messageRacineXHTML : "") + '
+ (this.num === 0 ? '' : '
') + //
'<1>' + '
' + (reverse ? "" : messageRacineXHTML) + @@ -70,13 +70,13 @@ euphorik.Conversation = function(conversations, num) { // les infos bulles this.util.infoBulle("Aller à la première page", $("#" + this.getId() + " .titre .numPage"), euphorik.Util.positionBulleType.haut); if (this.num !== 0) { - this.util.infoBulle("Créer un lien vers la conversation", $("#" + this.getId() + " .titre .lien")); + this.util.infoBulle("Créer un lien vers la conversation", $("#" + this.getId() + " .titre .creerLien")); this.util.infoBulle("Fermer la conversation", $("#" + this.getId() + " .titre .fermer")); } // les différents événements liés à la conversation var thisConversation = this; - $("#" + this.getId() + " .titre .lien").click(function() { + $("#" + this.getId() + " .titre .creerLien").click(function() { thisConversation.util.replaceSelection( $("form#posterMessage input.message")[0], "{" + thisConversation.client.conversations[thisConversation.num - 1].root.toString(36) + "}" @@ -286,6 +286,7 @@ euphorik.Conversation.prototype.flush = function() { /** * Attache des événements à un message donné. + * Utilisé lorsqu'un message est ajouté au document HTML. * @element le message du DOM */ euphorik.Conversation.prototype.attacherEventsSurMessage = function(element) { @@ -326,8 +327,15 @@ euphorik.Conversation.prototype.attacherEventsSurMessage = function(element) { $("form input.message").focus(); }).hover(function() { // affiche les outils liées au message var top = $(this).offset().top - var left = $(this).offset().left + $(this).width() - thisConversation.util.outilsMessage.largeur - thisConversation.util.outilsMessage.css("top", top + 1).css("left", left).prependTo(this).show(); + var left = $(this).offset().left + $(this).outerWidth() - thisConversation.util.outilsMessage.largeur + $(".extraire", thisConversation.util.outilsMessage).unbind(); + $(".extraireCompletement", thisConversation.util.outilsMessage).unbind(); + // TODO : ces deux appels devraient se trouver dans "PageMinichat" lors de la création de thisConversation.util + // malheureusement lors de la modification du DOM (suppression des conversations) les événements liés sont supprimés + thisConversation.util.infoBulle("Extraction de la conversation à partir de ce message", $(".extraire", thisConversation.util.outilsMessage)); + thisConversation.util.infoBulle("Extraction de la conversation complète", $(".extraireCompletement", thisConversation.util.outilsMessage)); + thisConversation.util.outilsMessage.css("top", top).css("left", left).prependTo(this).show(); + thisConversation.util.outilsMessage.largeur = thisConversation.util.outilsMessage.outerWidth(); }, function() { thisConversation.util.outilsMessage.hide() }); diff --git a/js/pageMinichat/pageMinichat.js b/js/pageMinichat/pageMinichat.js index 64914b1..703931c 100755 --- a/js/pageMinichat/pageMinichat.js +++ b/js/pageMinichat/pageMinichat.js @@ -41,7 +41,7 @@ euphorik.PageMinichat.prototype.contenu = function() { '
' + '

' + ' ' + - ' ' + + ' ' + ' 0' + ' ' + ' ' + @@ -97,10 +97,9 @@ euphorik.PageMinichat.prototype.charger = function() { } // la barre d'outils liée à chaque message - this.util.outilsMessage = $('

').prependTo("#page.minichat") - this.util.outilsMessage.largeur = this.util.outilsMessage.width(); // TODO : gros cheat pas beau :O - this.util.infoBulle("Extraction de la conversation à partir de ce message", $(".extraire", this.util.outilsMessage)); - this.util.infoBulle("Extraction de la conversation complète", $(".extraireCompletement", this.util.outilsMessage)); + this.util.outilsMessage = $('
').prependTo("#page.minichat"); + this.util.outilsMessage.largeur = this.util.outilsMessage.outerWidth(); // TODO : gros cheat pas beau :O + //console.log(this.util.outilsMessage.largeur) this.util.infoBulle("Ouvrir la conversation liée au troll de la semaine", $("#trollCourant .troll")); @@ -234,8 +233,8 @@ euphorik.PageMinichat.prototype.envoyerMessage = function(pseudo, message) { // (un pseudo vide est autorisé) pseudo = this.formateur.filtrerInputPseudo(pseudo); - if (pseudo === euphorik.conf.nickDefaut) { - this.util.messageDialogue("Le pseudo ne peut pas être " + euphorik.conf.nickDefaut); + if (pseudo === euphorik.conf.pseudoDefaut) { + this.util.messageDialogue("Le pseudo ne peut pas être " + euphorik.conf.pseudoDefaut); return; } diff --git a/styles/1/pageMinichat.css b/styles/1/pageMinichat.css index ea8ef3b..4dd2c3e 100755 --- a/styles/1/pageMinichat.css +++ b/styles/1/pageMinichat.css @@ -1,3 +1,5 @@ +/* coding: utf-8 */ + #page.minichat { padding: 0px; } @@ -106,23 +108,24 @@ vertical-align: top; margin-right: 5px; } +/* La boite montrant les messages auquels l'utilisateur répond */ #page.minichat form#posterMessage #repondA { background-color: #f0df95; border: #841919 1px solid; - margin-right: 5px; - padding-right: 2px; - padding-left: 2px; - cursor: pointer; - display: none; + margin-right: 5px; + padding-right: 2px; + padding-left: 2px; + cursor: pointer; + display: none; } #page.minichat form#posterMessage #repondA .messages { - position: absolute; + position: absolute; border: #841919 1px solid; - width: 50%; - display:none; + width: 50%; + display:none; } #page.minichat form#posterMessage #repondA .messages div.message:hover .outilsMess { - display: none + display: none } /***** Les conversations *****/ @@ -130,8 +133,8 @@ #page.minichat #conversations { overflow: hidden; width: 100%; - border-spacing: 0px; - background-color:#E19671; + border-spacing: 0px; + background-color:#E19671; } #page.minichat.orderChrono #conversations td { @@ -153,8 +156,7 @@ background-color: #e19671; color: #ffffff; } - -#page.minichat #conversations .titre .nav .reduire { +/*#page.minichat #conversations .titre .nav .reduire { margin-top: 1px; margin-left: 5px; float: right; @@ -165,11 +167,7 @@ } #page.minichat #conversations .titre .nav .reduire:hover { background-image: url(img/reduire_conv_hover.png); -} - -#page.minichat #conversations .fermer { - background-image: url(img/fermer_conv.png); -} +}*/ #page.minichat #conversations .titre .nav .fermer { margin-top: 1px; @@ -183,7 +181,7 @@ #page.minichat #conversations .titre .nav .fermer:hover { background-image: url(img/fermer_conv_hover.png); } -#page.minichat #conversations .titre .nav .lien { +#page.minichat #conversations .titre .nav .creerLien { margin-top: 1px; margin-left: 5px; float: right; @@ -192,7 +190,7 @@ background-image: url(img/copier_conv.png); cursor: pointer; } -#page.minichat #conversations .titre .nav .lien:hover { +#page.minichat #conversations .titre .nav .creerLien:hover { background-image: url(img/copier_conv_hover.png); } #page.minichat #conversations .titre .nav .next, @@ -334,28 +332,30 @@ #page.minichat .contenu { margin-left: 5px; } -#page.minichat .outilsMess { - position: absolute; +#page.minichat #outilsMess { + position: absolute; + padding-top: 1px; + padding-right: 2px; display: none; } -#page.minichat .extraire { +#page.minichat #outilsMess .extraire { float: right; width: 13px; height: 13px; background-image: url(img/extraction.png); margin-top: 2px; } -#page.minichat .extraire:hover { +#page.minichat #outilsMess .extraire:hover { background-image: url(img/extraction_hover.png); } -#page.minichat .extraireCompletement { +#page.minichat #outilsMess .extraireCompletement { float: right; width: 13px; height: 13px; background-image: url(img/extraction_complete.png); margin-top: 2px; - margin-right: 2px; + margin-right: 2px; } -#page.minichat .extraireCompletement:hover { +#page.minichat #outilsMess .extraireCompletement:hover { background-image: url(img/extraction_complete_hover.png); } diff --git a/styles/2/euphorik.css b/styles/2/euphorik.css index 46e143e..52f959f 100755 --- a/styles/2/euphorik.css +++ b/styles/2/euphorik.css @@ -235,7 +235,7 @@ form input[readonly] { /***** Les liens *****/ .lien, a { - text-decoration: none; + text-decoration: none; color: #7664ff; } .lien { diff --git a/styles/2/pageMinichat.css b/styles/2/pageMinichat.css index 8b9f617..366023a 100755 --- a/styles/2/pageMinichat.css +++ b/styles/2/pageMinichat.css @@ -103,21 +103,119 @@ vertical-align: top; margin-right: 5px; } +/* La boite montrant les messages auquels l'utilisateur répond */ +#page.minichat form#posterMessage #repondA { + background-color: #164200; + border: #2d8800 1px solid; + margin-right: 5px; + padding-right: 2px; + padding-left: 2px; + cursor: pointer; + display: none; +} +#page.minichat form#posterMessage #repondA .messages { + position: absolute; + border: #841919 1px solid; + width: 50%; + display:none; +} +#page.minichat #outilsMess { + position: absolute; + display: none +} +#page.minichat #outilsMess .extraire, +#page.minichat #outilsMess .extraireCompletement { + float: right; + padding-right: 2px; + padding-left: 2px; + background-color: #4f5519; +} +#page.minichat #outilsMess .extraire:hover, +#page.minichat #outilsMess .extraireCompletement:hover:hover { + background-color: #818c27 +} +#page.minichat #outilsMess .extraire:after { + content: ">" +} +#page.minichat #outilsMess .extraireCompletement:after { + content: "#" +} /***** Les conversations *****/ /* voir pour l'astuce css "float left" des conversations : http://www.quirksmode.org/css/clearing.html */ #page.minichat #conversations { overflow: hidden; - width: 100% + width: 100%; + border-spacing: 0px; + background-color:#000000; +} +#page.minichat.orderChrono #conversations td +{ + vertical-align: bottom +} +#page.minichat.orderReverse #conversations td +{ + vertical-align: top +} +#page.minichat.orderChrono #conversations .titre { + border-bottom: 1px dashed white +} +#page.minichat.orderReverse #conversations .titre { + border-top: 1px dashed white +} +#page.minichat #conversations .titre .nav { + text-align: center; + padding-right: 8px; + background-color: #4b4215; } -#page.minichat #conversations .conversation { +/*#page.minichat #conversations .conversation { border-width: 0px; border-style: solid; border-color: white; float: left; width: 100%; +}*/ +#page.minichat #conversations .titre .nav .fermer { + float: right; + padding-right: 5px; + padding-left: 5px; + background-color: #7d1b1b; + cursor: pointer; +} +#page.minichat #conversations .titre .nav .fermer:after { + content: "x" +} +#page.minichat #conversations .titre .nav .fermer:hover { + background-color: #c95656 +} +#page.minichat #conversations .titre .nav .creerLien { + float: right +} +#page.minichat #conversations .titre .nav .creerLien:after { + content: "c" +} +#page.minichat #conversations .titre .nav .next, +#page.minichat #conversations .titre .nav .prev { + display: none; +} +#page.minichat #conversations .titre .nav .creerLien, +#page.minichat #conversations .titre .nav .next, +#page.minichat #conversations .titre .nav .prev, +#page.minichat #conversations .titre .nav .numPage { + background-color: #42380b; + cursor: pointer; + padding-right: 5px; + padding-left: 5px; } -#page.minichat #conversations div.message { +#page.minichat #conversations .titre .nav .creerLien:hover, +#page.minichat #conversations .titre .nav .next:hover, +#page.minichat #conversations .titre .nav .prev:hover, +#page.minichat #conversations .titre .nav .numPage:hover { + background-color: #7c6e2e +} + +/***** Les messages *****/ +#page.minichat div.message { border-left-width: 5px; border-left-style: solid; border-color: transparent; @@ -125,10 +223,10 @@ padding-left: 4px; cursor: pointer; } -#page.minichat #conversations div.messageImpair { +#page.minichat div.messageImpair { background-color: #05002c; } -#page.minichat #conversations div.messagePair { +#page.minichat div.messagePair { background-color: #080047; } #page.minichat #conversations div.cache { @@ -138,63 +236,18 @@ filter: alpha(opacity = 30); zoom: 1 } -#page.minichat #conversations div.reponse { +#page.minichat div.reponse { border-color: #bf2911 } -#page.minichat #conversations div.repondu { +#page.minichat div.repondu { border-color: #84196c } -#page.minichat #conversations div.proprietaire { +#page.minichat div.proprietaire { border-color: #31732f } -#page.minichat #conversations div.systeme { +#page.minichat div.systeme { background-color: #555555 } -#page.minichat #conversations .titre { - text-align: center; - padding-right: 8px; - background-color: #4b4215 -} -#page.minichat #conversations .titre .fermer { - float: right; - padding-right: 5px; - padding-left: 5px; - background-color: #7d1b1b; - cursor: pointer; -} -#page.minichat #conversations .titre .fermer:after { - content: "x" -} -#page.minichat #conversations .titre .fermer:hover { - background-color: #c95656 -} -#page.minichat #conversations .titre .next, -#page.minichat #conversations .titre .prev { - display: none; -} -#page.minichat #conversations .titre .lien { - float: right -} -#page.minichat #conversations .titre .lien:after { - content: "c" -} -#page.minichat #conversations .titre .lien, -#page.minichat #conversations .titre .next, -#page.minichat #conversations .titre .prev, -#page.minichat #conversations .titre .numPage { - background-color: #42380b; - cursor: pointer; - padding-right: 5px; - padding-left: 5px; -} -#page.minichat #conversations .titre .lien:hover, -#page.minichat #conversations .titre .next:hover, -#page.minichat #conversations .titre .prev:hover, -#page.minichat #conversations .titre .numPage:hover { - background-color: #7c6e2e -} - -/***** Les messages *****/ #page.minichat div.message a { font-weight: bold; } @@ -237,22 +290,10 @@ #page.minichat div.systeme .pseudo { color: #CCCCCC } -#page.minichat #conversations .repondA { +#page.minichat .repondA { color: #bd7a11; margin-right: 3px; } -#page.minichat #conversations .repondA:after { - content: ">" -} -#page.minichat #conversations .extraire { - float: right; - padding-right: 2px; - padding-left: 2px; - background-color: #4f5519; -} -#page.minichat #conversations .extraire:after { +#page.minichat.repondA:after { content: ">" } -#page.minichat #conversations .extraire:hover { - background-color: #818c27 -} diff --git a/tools/tools.rb b/tools/tools.rb index 3fa7497..127e3f3 100644 --- a/tools/tools.rb +++ b/tools/tools.rb @@ -28,9 +28,9 @@ along with Euphorik. If not, see . # - Mise en production et en preproduction # tools.rb peut s'utiliser à la ligne de commande, exemples : # * Mise en production : -# ./tools.rb --doprod gburri@euphorik.ch:/var/www/euphorik +# ./tools.rb prod gburri@euphorik.ch:/var/www/euphorik # * Mise en préproduction, l'emplacement de production peut être indiqué pour copier la base -# ./tools.rb --dopreprod gburri@euphorik.ch:/var/www/euphorik_preprod --prod gburri@euphorik.ch:/var/www/euphorik +# ./tools.rb pre gburri@euphorik.ch:/var/www/euphorik_preprod gburri@euphorik.ch:/var/www/euphorik # voir : http://net-ssh.rubyforge.org/ssh/v2/api/index.html # require 'net/ssh' @@ -55,7 +55,9 @@ class VerifJS end elsif fichier[-3, 3] == '.js' puts "== Vérification de #{dossier}/#{fichier} ==" - system("java org.mozilla.javascript.tools.shell.Main jslint.js #{dossier}/#{fichier}") + # TODO : mettre un if pour la version windows si dessous + #system("java org.mozilla.javascript.tools.shell.Main jslint.js #{dossier}/#{fichier}") + system("rhino jslint.js #{dossier}/#{fichier}") # puts $?.exitstatus if $?.exitstatus > 0 return false @@ -181,8 +183,34 @@ end # Traite la ligne de commande lorsque tools.rb est utilisé comme tel class Commande + def initialize + @miseEnProd = MiseEnProd.new( + "gburri@euphorik.ch:/var/www/euphorik", + "gburri@euphorik.ch:/var/www/euphorik_preprod" + ) + @verifJS = VerifJS.new("../js") + @version = Version.new("..") + end + def traiter - #ARGV + if ARGV.size == 0 + afficherUsage + return + end + + case ARGV[0] + when 'prod' + @version.maj() + @miseEnProd.miseEnProd() + when 'pre' + @version.maj() + @miseEnProd.miseEnPreProd() + when 'js' + @verifJS.verifier() + when 'version' + @version.maj() + end + =begin Net::SSH.start('euphorik.ch', 'gburri') {|ssh| output = ssh.exec!("hostname") @@ -191,18 +219,16 @@ class Commande stdout << data if stream == :stdout } puts stdout - } + } =end - - - #miseEnProd = MiseEnProd.new("gburri@euphorik.ch:/var/www/euphorik", "gburri@euphorik.ch:/var/www/euphorik_preprod") - #miseEnProd.miseEnPreProd() - - verifJS = VerifJS.new("../js") - verifJS.verifier() - - #version = Version.new("..") - #version.maj() + end + + def afficherUsage + puts "Usage : tools.rb (prod | pre | js | version)\n" + + " prod : Mise en production\n" + + " preprod : Mise en préproduction, copie les données en production\n" + + " js : vérification des fichiers JavaScript\n" + + " version : met à jour la version à partir du fichier VERSION" end end -- 2.45.2