IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Add-on Firefox bootstrap.js


Sujet :

JavaScript

  1. #41
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    96
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 96
    Par d�faut
    il doit bien avoir une solution plus simple, plutot que de devoir refaire tout le code de mon add-on.

  2. #42
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    96
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 96
    Par d�faut Javascript et bootsrap.js
    Bonjour a tous
    Je suis toujours bloqu� avec mon problemme de script add-on pour Firefox.
    Mon add-on fonctionne nickel il bloque des urls, MAIS le problemem est que ma database est inclue dans le bootstrap.js

    Les developpeur de Firefox, mont repondu ceci:

    Your add-on prints debugging information to the Console, which is generally not allowed in production add-ons.

    2) Please do not store large amounts of JSON/array data in executable files (js). They should be stored in separate .json file, and loaded and parsed via XHR.

    Voici mon script bootstrap.js

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    const {classes: Cc, interfaces: Ci, utils: Cu, results: Cr} = Components;
    Cu.import('resource://gre/modules/Services.jsm');
     
    var urls_block = [ //if urls contain any of these elements they will be blocked or redirected, your choice based on code in observer line 17
    'url01.com',
    'url02.com',
    'url03.com'
    ];
     
    var observers = {
        'http-on-modify-request': {
            observe: function (aSubject, aTopic, aData) {
                console.info('http-on-modify-request: aSubject = ' + aSubject + ' | aTopic = ' + aTopic + ' | aData = ' + aData);
                var httpChannel = aSubject.QueryInterface(Ci.nsIHttpChannel);
                var requestUrl = httpChannel.URI.spec;
                for (var i=0; i<urls_block.length; i++) {
                 if (requestUrl.indexOf(urls_block[i]) > -1) {
                  //httpChannel.cancel(Cr.NS_BINDING_ABORTED); //this aborts the load
                  httpChannel.redirectTo(Services.io.newURI('data:text,ILLEGAL & DANGEROUS CONTENT BLOCKED', null, null)); //can redirect with this line, if dont want to redirect and just block, then uncomment this line and comment out line above (line 17)
                  break;
    }
                }
            },
            reg: function () {
                Services.obs.addObserver(observers['http-on-modify-request'], 'http-on-modify-request', false);
            },
            unreg: function () {
                Services.obs.removeObserver(observers['http-on-modify-request'], 'http-on-modify-request');
            }
        }
    };
     
    function install() {}
     
    function uninstall() {}
     
    function startup() {
     for (var o in observers) {
     	observers[o].reg();
     }
    }
     
    function shutdown(aData, aReason) {
     if (aReason == APP_SHUTDOWN) return;
     
     for (var o in observers) {
     	observers[o].unreg();
     }
    }
    Peut t'on m'aider a finaliser mon add-on et resoudre ce problemme?

    Merci

  3. #43
    Expert confirm�
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 61
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : Urbaniste
    Secteur : Sant�

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par d�faut
    ben regarde la coloration syntaxique de ton code

    y pas un truc qui te parait bizare ?
    A+JYT

  4. #44
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    96
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 96
    Par d�faut
    Et bien je vois du bleu et du rouge??

  5. #45
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Bonjour,
    visiblement tu as vu autre chose puisque tu as corrig�, le soucis et de savoir si maintenant cela fonctionne ?

  6. #46
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    96
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 96
    Par d�faut
    j'ai juste modifi� une petite virgule en trop
    mais comme je l'ai expliqu� la team Mozilla voudrait que mon fichier soit externe dans un json a la place du bootstrap.js ou j'y ai mis ma data-base., apr�s ce qu-ils me demandent moi je sais pas comment le r�aliser :s c'est pour cela que je suis ici.

  7. #47
    Membre chevronn�
    Profil pro
    � la bougie alors
    Inscrit en
    Mai 2006
    Messages
    224
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activit� : � la bougie alors

    Informations forums :
    Inscription : Mai 2006
    Messages : 224
    Par d�faut
    Doublon de http://www.developpez.net/forums/d14...-bootstrap-js/

    Ton code ne semble pas avoir �volu� malgr� les diff�rentes approches propos�es ..?!
    Peut-�tre n'es tu pas encore pr�t � �crire un add-on qui va �tre utilis� en confiance par des utilisateurs ?

  8. #48
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    96
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 96
    Par d�faut
    Charger un fichier local avec une XHR comment faire ca???

  9. #49
    R�dacteur/Mod�rateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par d�faut
    Il est inutile de cr�er un troisi�me topic pour un probl�me inchang�... Toutes les pistes t'ont �t� donn�, tu as re�u une trentaine de messages pour t'aider � avancer. Mais sans une bonne connaissance de JavaScript des API abord�es, ton projet d'add-on n'a que tr�s peu de chances d'aboutir.

  10. #50
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    96
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 96
    Par d�faut
    Et bien mon add-on fonctionne depuis 2 ans, mais on me demande de mettre ma data-base d�URL a l�ext�rieur du fichier bootstrap.js et �a je n'arrive pas a le concr�tiser.

  11. #51
    R�dacteur/Mod�rateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par d�faut
    Cela fait peut-�tre deux ans mais tu ne sembles toujours pas trouver le temps pour approfondir les pistes que l'on te donne. Lysandro et beekeep t'ont donn� les deux meilleures solutions il y a plus d'un mois: readTextFromFile et AJAX. Il ne te reste plus qu'� en impl�menter une, la premi�re option en suivant la doc de Mozilla et la seconde en consultant un tuto parmi la centaine d'existants sur le net.

  12. #52
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    96
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 96
    Par d�faut
    Et bien j'en suis toujours la si je reprends

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    const {classes: Cc, interfaces: Ci, utils: Cu, results: Cr} = Components;
    Cu.import('resource://gre/modules/Services.jsm');
     
    var urls_block = null;
     
    if(!urls_block)
    {
      urls_block = readTextFromFile("url.txt").Split(',');
    }
    var observers = {
        'http-on-modify-request': {
            observe: function (aSubject, aTopic, aData) {
                console.info('http-on-modify-request: aSubject = ' + aSubject + ' | aTopic = ' + aTopic + ' | aData = ' + aData);
                var httpChannel = aSubject.QueryInterface(Ci.nsIHttpChannel);
                var requestUrl = httpChannel.URI.spec;
                for (var i=0; i<urls_block.length; i++) {
                 if (requestUrl.indexOf(urls_block[i]) > -1) {
                  //httpChannel.cancel(Cr.NS_BINDING_ABORTED); //this aborts the load
                  httpChannel.redirectTo(Services.io.newURI('data:text,ILLEGAL & DANGEROUS CONTENT BLOCKED"', null, null)); //can redirect with this line, if dont want to redirect and just block, then uncomment this line and comment out line above (line 17)
                  break;
    }
                }
            },
            reg: function () {
                Services.obs.addObserver(observers['http-on-modify-request'], 'http-on-modify-request', false);
            },
            unreg: function () {
                Services.obs.removeObserver(observers['http-on-modify-request'], 'http-on-modify-request');
            }
        }
    };
     
    function install() {}
     
    function uninstall() {}
     
    function startup() {
     for (var o in observers) {
     	observers[o].reg();
     }
    }
     
    function shutdown(aData, aReason) {
     if (aReason == APP_SHUTDOWN) return;
     
     for (var o in observers) {
     	observers[o].unreg();
     }
    }
    mais LA mon add-on ne fonctionne plus, il ne bloque plus les urls qui sont dans le fichier texte

  13. #53
    Membre chevronn�
    Profil pro
    � la bougie alors
    Inscrit en
    Mai 2006
    Messages
    224
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activit� : � la bougie alors

    Informations forums :
    Inscription : Mai 2006
    Messages : 224
    Par d�faut
    Tu as tout � partir de Mozilla / Add-ons / Bootstrapped extensions.

    Sinon, as tu des erreurs ? Si oui, lesquelles ?
    La m�thode split s'�crit, en principe, avec un s en minuscule, es tu s�r qu'il existe une m�thode Split avec un S en majuscule ?
    Que contient, apr�s chargement, ta variable urls_block ?
    A quel moment du cycle de vie de ton add-on ton code de chargement de tes urls s'ex�cute-t-il ? Est-ce le bon moment ?

  14. #54
    Membre confirm�
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    96
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 96
    Par d�faut
    J'ai corrig� le S oui c'est un s minuscule, mai mon module ne fonctionne toujours pas, il ne bloque plus les urls qui sont contenues dans le fichier 'url.txt'
    a l'interieur du fichier txt j'ai des urls comme ceci:

    'url01.com',
    'url02.com',
    'url03.com',
    etc...

    donc dans mon code j'ai au debut:
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    var urls_block = null;
     
    if(!urls_block)
    {
      urls_block = readTextFromFile("url.txt").split(',');
    je nsais pas sir le split est correct mais je pense que oui


    Mon add-on s'execute au moment ou l'utilisateur tape un url quelquonque, si il correspond aceux dans la database il le bloque et met juste un message d'erreur 'ILLEGAL_&_DANGEROUS_CONTENT_BLOCKED'

  15. #55
    Mod�rateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 211
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Is�re (Rh�ne Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 211
    Par d�faut
    Concernant l'application de la m�thode split(), regarde quand m�me qu'il ne traine pas de retour chariot en fin de ligne.

  16. #56
    R�dacteur/Mod�rateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par d�faut
    Et les apostrophes aussi sont en trop dans le fichier texte.

    Le mieux serait de laisser des traces de debug, histoire d'aller un peu plus loin que "�a marche pas" comme constat

  17. #57
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    Il est aussi n�cessaire d'utiliser la console du navigateur (CTRL + MAJ + J).
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

Discussions similaires

  1. Javascript et add-on Firefox
    Par AthackX dans le forum G�n�ral JavaScript
    R�ponses: 0
    Dernier message: 20/07/2010, 14h27
  2. Besoin de conseils pour un add-on firefox
    Par splash44 dans le forum Langages de programmation
    R�ponses: 0
    Dernier message: 21/10/2009, 20h05
  3. Tutoriel pour la cr�ation d'add-on firefox.
    Par Armagnak dans le forum Firefox
    R�ponses: 3
    Dernier message: 24/07/2009, 11h53
  4. Scan materiel avec un plugin/add-on Firefox
    Par _Alexou dans le forum Firefox
    R�ponses: 0
    Dernier message: 11/06/2009, 15h13
  5. Comment piloter un Add-On FireFox, � l'aide de javascript
    Par BozKiller dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 11/10/2007, 14h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo