Notizie: se possiedi un dispositivo Android, prova Firefox per Android, un browser scattante e dinamico per navigare in ambiente mobile.

Autore Topic: [Developer] E' possibile verificare se un'estensione è installata tramite javascript?  (Letto 522 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline mob

  • Post: 29
Quando viene caricata la pagina del portale intranet aziendale, devo verificare se l'utente ha installato una determinata estensione e se non lo ha fatto, devo segnalaglielo.
E' possibile verificare se è stata installata l'estensione? oppure ottenere la lista delle estensioni installate, in un array?
Ho utenti che stanno utilizzando FF dalla versione 3.0 fino alla 5.0.1 sia su pc windows che linux

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Solo per alcune estensioni:
http://webdevwonders.com/detecting-firefox-add-ons/

con WebDeveloper funziona, però a me piace poco!

Offline mob

  • Post: 29
ho provato ed effettivamente riesce ad agganciare l'immagine large.png di webdeveloper.
a questo punto ho bisogno di un aiuto ulteriore.
l'estensione di cui devo testare l'installazione è stata sviluppata internamente e modifica alcune preferenze di firefox e la mia esperienza in materia è pari a 0.
immagino di dover aggiungere un'immagine all'estensione e poi dovrei testare se esiste come viene fatto per il webdeveloper.
dove devo mettere l'immagine?
l'estensione è formata da /chrome/wndmgr.jar, chrome.manifest e instal.rdf
dentro wndmgr.jar ci sono wndmgr1.js, wndmgr2.js, wndmgr1.xul e wndmgr2.xul
riesci a darmi qualche dritta?

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
La cosa fondamentale è che metti nell'install.manifest il contentaccessible=yes”.    

Secondo me puoi metterla dove vuoi, anche nel jar, io però non ho mai fatto una cosa del genere e ora non posso fare delle prove, se vuoi ci dò un'occhiata domani.

Comunque, se l'hai fatta te, riesci a modificare questa:

Codice: [Seleziona]
general.useragent.override;

così:

Codice: [Seleziona]
Mozilla/5.0 (Windows NT 5.1; rv:8.0a1) Gecko/20110720 Firefox/6.0 Myaddon/1.0

e fai UA sniffing che forse è più semplice.

Offline mob

  • Post: 29
Grazie, domattina quando arrivo in ufficio provo.

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Funziona così (io non metto le immagini nel file jar ma nella root dell'estensione per stare prima):

Metti un'immagine dove c'è il file chrome.manifest (io chiamo la mia logo.png, tu chiamala come vuoi), poi aggiungi al chrome.manifest questa riga:

Codice: [Seleziona]
content myaddon                                 logo.png     contentaccessible=yes

nello script al link di cui sopra, cambia il chrome link con questo:

Codice: [Seleziona]
chrome://myaddon/content/logo.png

Cambia myaddon col nome della tua estensione e logo.png con il nome dell'immagine.


Resto dell'idea che se è un'estensione fatta da te e per uso interno sia meglio cambiare l'UA.
Ciao

Offline mob

  • Post: 29
Ho fatto come hai detto, usando l'immagine, e funziona benissimo.  :D
Per quanto invece riguarda la tua soluzione di cambiare lo useragent, al mio capo non piace quindi me l'ha cassata.
Per il momento proseguo con la prima soluzione e mi faccio un po' le ossa con quella, questa è la prima estensione che sviluppo e ho tutto un mondo da imparare.
Grazie mille!!!

Offline gialloporpora

  • サンドロ
  • Moderatore
  • Post: 10806
    • Il blog che non c'è
Beh l'importante è che tu abbia raggiunto l'obiettivo che ti eri prefisso indipendentemente dalla strada seguita :-)

Offline mob

  • Post: 29
Ho dovute mettere il logo nel file .jar e poi rendere accessibile quello, perchè inserendo nel chrome.manifest l'istruzione
Codice: [Seleziona]
content myaddon                                 logo.png     contentaccessible=yes smetteva di funzionare firebug  :?.
Mah! comunque adesso mi funziona tutto bene.
Grazie ancora.

0 Utenti e 1 Visitatore stanno visualizzando questo topic.