MozillaZine

[Ext] InfoLister [old 2004-2010 thread]

Announce and Discuss the Latest Theme and Extension Releases.
Klint
 
Posts: 260
Joined: September 13th, 2004, 1:24 pm

Post Posted November 29th, 2005, 5:50 am

Hello

I'm using FF 1.5RC3, trying to perform mass installation of extensions using InfoLister 0.9c and MassInstaller 0.3.
Yet there is a small issue : in the "XPI List" format file generated by InfoLister 0.9c, the url for the XPI file is the previous version's one, which is not compliant with FF1.5.


#InfoLister 0.9c
http://mozilla.doslash.org/infolister/i ... -0.8.2.xpi

Thanks

Olivier

Dagobert-78

User avatar
 
Posts: 4
Joined: November 25th, 2005, 4:08 am
Location: Versailles (France)

Post Posted November 29th, 2005, 7:07 am

Hi,

Could you to add the "infolister.js" file for translate the description ?
with in :
Code: Select all
pref("extensions.{3f0da09b-c1ab-40c5-8d7f-53f475ac3fe8}.description", "chrome://infolister/locale/infolister.properties");



and, in "install.rdf" file, why they are not the following strings :
Code: Select all
      <em:file>
         <Description about="urn:mozilla:extension:file:infolister.jar">
            <em:package>content/InfoLister/</em:package>
            <em:locale>locale/en-US/</em:locale>
            <em:locale>locale/fr-FR/</em:locale>    <--- that, it's for me
         </Description>
      </em:file>


Finally, who translate your extension in french ?



Thancks, DAgobert_78

Luana

User avatar
 
Posts: 54
Joined: December 10th, 2004, 7:13 am
Location: Everywhere...

Post Posted November 29th, 2005, 7:49 am

Dagobert-78 wrote:Finally, who translate your extension in french ?

Hi !
There is already a previous French translator ;)
You may also follow the "evolution" of the InfoLister translation(s) here !

Bazon

User avatar
 
Posts: 138
Joined: June 21st, 2005, 5:35 am
Location: Berlin\Germany\Europe

Post Posted December 7th, 2005, 9:35 am

Hi everyone!

Mithrandirand I from the German Firefox Forum try to use Infolister as a creator for a javascript - driven fast install list.

It works good so far (see the results: Mithrandirs Firefox Info, My Firefox Info ["Gewählte Erweiterungen installieren" = "install selected extensions", "Alle markieren" = "mark all"]- see the thread for javascript and template details [you propably don't understand german, but you needn't - javascript + HTML is sufficient :wink:]),
but I got one question left:

What about Direct-Links to Themes, i.e. .jar Files?


I tried to do this in a little test profile, I got this Fx - Info*, but there are no direct Theme-Links! (See the page source or try to install, it only links to itself instead of the Theme-File. And this although both Themes have a working update notification: Noia is hosted at update.mozilla.org and SaFire Milk has a working update file.)

But InfoLister claims to search for direct links as you can see in this screenshot:
Image

So what wents wrong?

Thanks!
Bazon

* I know that the javascript isn't matching for theme-install yet, but I want to know whether it is possible to get such an information before I fix this...

Bazon

User avatar
 
Posts: 138
Joined: June 21st, 2005, 5:35 am
Location: Berlin\Germany\Europe

Post Posted December 7th, 2005, 9:58 am

PS:

You see the missing-link-to-themes issue better with this very short template:

Code: Select all
text/plain;XPI List;
[[# %lastupd%
]][[# %useragent%
]]
{{extension:#%name% %version% %disabled-text%
%xpiLink%
}}

{{theme:#%name% %version% %selected-text%
%xpiLink%
}}
- resulting in something like this...

asqueella
 
Posts: 4019
Joined: November 16th, 2003, 3:05 am
Location: Russia, Moscow

Post Posted December 7th, 2005, 4:45 pm

ok, try this one

Bazon

User avatar
 
Posts: 138
Joined: June 21st, 2005, 5:35 am
Location: Berlin\Germany\Europe

Post Posted December 7th, 2005, 6:02 pm

asqueella wrote:ok, try this one
Fantastic, thank you!!! :P
Result (to be improved...)

asqueella
 
Posts: 4019
Joined: November 16th, 2003, 3:05 am
Location: Russia, Moscow

Post Posted December 7th, 2005, 6:32 pm

Cool, please let me know when you finish this, I'd like to link to the template used and example output.

Bazon

User avatar
 
Posts: 138
Joined: June 21st, 2005, 5:35 am
Location: Berlin\Germany\Europe

Post Posted December 8th, 2005, 8:19 am

asqueella wrote:Cool, please let me know when you finish this,....
OK, here we go...:wink:

The theme list is now a list of checkboxes, two.
Unfortunatly, as far as I can see it isn't possible to install many themes with only one prompt, you have to prompt for each individual theme. But i think that's not too bad, who will install more than 5 themes at one time...:wink:
[Read here for differences between triggering extension installation and theme installation and note that you can enter a list in the extension install trigger.... ...but maybe, I got it wrong...]

As far as I could I translated the template into english:

So here is the minimum template,
[edit]the external javascript file isn't needed anymore! Javascript is now in the template[/edit]
and here the output for my Firefox.


And as I don't know, whether I'll host it forever, I'll post the content here:

The template:
text/html;Simple HTML;<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>My Firefox Configuration</title>
<!-- please addapt (and uncomment) paths to favicon and css -->
<!-- <link rel="SHORTCUT ICON" href="favicon.ico"/> -->
<!-- <link rel="stylesheet" type="text/css" href="stylesheet.css" /> -->
<style type="text/css">
li
{
list-style: none none inside;
}
ul, li
{
margin: 0 5px;
padding: 0;
}
</style>
</head>
<body>


<script type="text/javascript">
//<![CDATA[
window.addEventListener("DOMContentLoaded", function(event)
{
var inputs = document.getElementsByTagName("input"), i;
for(i in inputs)
{
if(inputs[i].type == "checkbox")
{
inputs[i].disabled = (inputs[i].value == "");
}
}
}, true);

function installXPI(hNode) {
var obj = { }, noItems = true;
if ("action" in hNode) {
var elements = hNode.elements;
for (var i=0; i < elements.length; i++) {
if ((elements[i].type == "checkbox") && (elements[i].checked)) {
obj[elements[i].name] = elements[i].value;
noItems = false;
}
}
} else if ("href" in hNode) {
obj[hNode.title] = hNode.href;
noItems = false;
}
try {
if (noItems) {
alert("Nothing selected.");
} else if (InstallTrigger.updateEnabled()) {
InstallTrigger.install(obj);
} else {
alert("You have software installation disabled in your browser.\nPlease enable software installation in your browser's advanced preferences.");
}
} catch(ex) {
alert("Your browser does not support installation of this type of software.");
}
return false;
}

function installTheme(hNode) {
var obj = { }, noItems = true;
if ("action" in hNode) {
var elements = hNode.elements;
for (var i=0; i < elements.length; i++) {
if ((elements[i].type == "checkbox") && (elements[i].checked)) {
obj[elements[i].name] = elements[i].value;
InstallTrigger.installChrome(InstallTrigger.SKIN, elements[i].value, elements[i].name);
noItems = false;
}
}
}
return false;
}

function CheckboxenAktivieren(f)
{
for(i=0; i<f.length; i++)
{
if(f[i].value != "" && !f[i].disabled)
f[i].checked = !f[i].checked;
}
}
// End -->
//]]>
</script>



<h1>My Firefox</h1>


[[<div class="lastupd">
Last Update: %lastupd%
</div>]]

[[<div class="useragent">
User Agent: %useragent%
</div>]]

<p>Note:<br/>
You could only install extensions and themes with clickable checkboxes. All others don't have an directlink to the .xpi/ .jar file.<br/>
Install single Extensions or Themes by clicking on the Versionnumber.<br/>
Install mulitple Extensions and Themes by selecting them and hitting the 'Install' Button.<br/></p>

[[<div class="extensions">
<h3>Extensions (enabled: %enabled_extensions_count%, disabled: %disabled_extensions_count%):</h3>

<form action="javascript:void(0);" method="post" onsubmit="return installXPI(this);">
<p><input value="Install selected Extensions" class="button" type="submit" />
<input type="button" onclick="CheckboxenAktivieren(this.form.elements);" value="Invert Selection" /></p>
<ul>
{{extension:
<li>
<input name="%name%" value="%xpiLink%" title="%xpiLink%" type="checkbox" />
<a href="%homepageURL%">%name%</a> <a href="javascript:void((function(){if('%xpiLink%' != '') {var xpi = new Object(); xpi['%name%'] = '%xpiLink%'; InstallTrigger.install(xpi)} if('%xpiLink%' == '') alert('This Extension can‘t be installed directly because of missing udate function.')})())">%version%</a>: %description% %disabled-text%
</li>}}
</ul>
<p><input value="Install selected Extensions" class="button" type="submit" />
<input type="button" onclick="CheckboxenAktivieren(this.form);" value="Invert Selection" /></p>
</form>
</div>]]

[[<div class="Themes">
<h3>Themes (%themes_count%):</h3>

<form action="javascript:void(0);" method="post" onsubmit="return installTheme(this);">
<p><input value="Install selected Themes" class="button" type="submit" />
<input type="button" onclick="CheckboxenAktivieren(this.form);" value="Invert Selection" /></p>
<ul>{{theme:
<li>
<input name="%name%" value="%xpiLink%" title="%xpiLink%" type="checkbox" />
<a href="%homepageURL%">%name%</a> <a href="javascript:void((function() {if('%xpiLink%' != '') InstallTrigger.installChrome(InstallTrigger.SKIN,'%xpiLink%','%name%'); if('%xpiLink%' == '') alert('This Theme can‘t be installed directly because of missing udate function.')})());">%version%</a>: %selected-text%
</li>}}
</ul>
<p><input value="Install selected Themes" class="button" type="submit" />
<input type="button" onclick="CheckboxenAktivieren(this.form);" value="Invert Selection" /></p>
</form>
</div>]]


[[<div class="plugins">
<h3>Plugins (%plugins_count%):</h3>
<ul>
{{plugin: <li>%name%</li>
}}</ul>
</div>]]

<hr />
<p class="footer">This list was made with <a href="http://mozilla.doslash.org/infolister">&raquo;InfoLister&laquo;</a>.</p>
</body>
</html>


Credits to Mithrandir who did most of this stuff but hasn't got a mozillazine account...

greetings,
Bazon
Last edited by Bazon on December 14th, 2005, 9:47 am, edited 9 times in total.

Bazon

User avatar
 
Posts: 138
Joined: June 21st, 2005, 5:35 am
Location: Berlin\Germany\Europe

Post Posted December 8th, 2005, 1:28 pm

And another thing I discovered about the collected xpi Links:

They don't always get the right version!

An example is Tab Sidebar:

It's updateURL (with filled parameters) http://users.blueprintit.co.uk/~dave/web/firefox/update.rdf?guid=TabSidebar@blueprintit.co.uk&version=1.0b4&app={ec8030f7-c20a-464f-9b0e-13a3a9e97384}&appver=1.5 [kept small to save the layout - yes, it is a link, but you can't click it] leads to the following output:
Code: Select all
1.0a1
        {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
        1.4
        1.6a1
        http://users.blueprintit.co.uk/~dave/content/firefox/tabsidebar/TabSidebar-1.0a1.xpi
     
    1.0b1
        {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
        1.4
        1.6a1
        http://users.blueprintit.co.uk/~dave/content/firefox/tabsidebar/TabSidebar-1.0b1.xpi
     
    1.0b
        {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
        1.4
        1.6a1
        http://users.blueprintit.co.uk/~dave/content/firefox/tabsidebar/TabSidebar-1.0b2.xpi
     
 
    1.0b4
        {ec8030f7-c20a-464f-9b0e-13a3a9e97384}
        1.4
        1.6a1
        http://users.blueprintit.co.uk/~dave/content/firefox/tabsidebar/TabSidebar-1.0b4.xpi

so it shows severall versions at once (whyever....)

But InfoLister collects only the first link which is http://users.blueprintit.co.uk/~dave/co ... -1.0a1.xpi and the oldest version of this extension.

It would be fine to see that %xpiLink% collects the newest link in these cases in future versions :)

greetings,
Bazon


PS:

Ironicly, this also effects InfoLister itself. The found xpi Link (%xpiLink%) links to Verion 0.82, although 0.9c is the latest official one...:
http://mozilla.doslash.org/infolister/i ... -0.8.2.xpi

And looking at the infolister update file http://mozilla.doslash.org/infolister/update.rdf shows that this is a clear bug:
I get the xpiLink for 0.82 although I have Firefox Version 1.5 which is not compatible to infolisters update.rdf!
Last edited by Bazon on December 9th, 2005, 6:06 am, edited 2 times in total.

Bazon

User avatar
 
Posts: 138
Joined: June 21st, 2005, 5:35 am
Location: Berlin\Germany\Europe

Post Posted December 9th, 2005, 4:58 am

I edited my post 2 above (and addapted the linked files),
Mithrandir and I made small improvements:
  1. The checkboxes have now the Link to the Extension as a tooltip. Main opportunity: Now you can see faster, whether the extension has a right install link.
  2. Clicking on the Versionnumber leads to direct installation of single extensions or themes

cheers,
Bazon

asqueella
 
Posts: 4019
Joined: November 16th, 2003, 3:05 am
Location: Russia, Moscow

Post Posted December 9th, 2005, 8:19 am

The checkboxes have now the Link to the Extension as a tooltip. Main opportunity: Now you can see faster, whether the extension has a right install link.


You could just go through all checkboxes on the page at load time and disable the ones that don't have a link.

Bazon

User avatar
 
Posts: 138
Joined: June 21st, 2005, 5:35 am
Location: Berlin\Germany\Europe

Post Posted December 9th, 2005, 10:27 am

asqueella wrote:
The checkboxes have now the Link to the Extension as a tooltip. Main opportunity: Now you can see faster, whether the extension has a right install link.


You could just go through all checkboxes on the page at load time and disable the ones that don't have a link.
As you wish, master... :wink:

New template [replaced in post above...]
new result

So the external javascript file isn't needed anymore, too!
It's just a plain template, that'll make it a lot easier to handle. :)

I hope you noticed the %xpiLink% - wrong version- bug I posted before...:wink:

sheers,
Bazon


Edit:
Now w3c validated (included small mistakes like <br> instead or <br/> before...)

Edit2:
Argh, I really don't know when this is ready. Every time I think it's perfect, someone drops in with another idea.
So now the Links on the versionnumbers are linked to an alert if the install link is missing.
But right now I'm too lazy to translate every template version into english, check my Sig. for the actual state of work, it includes a link to it's template at the end of the page...

Edit3:
Right now I think it's pretty final...:wink: (Thanks to Dr. Evil!)
updated the english template and the post containing template aswell.

Ken Cooper

User avatar
 
Posts: 306
Joined: July 26th, 2004, 4:15 pm
Location: Holland, MI USA

Post Posted December 12th, 2005, 5:58 pm

If anyone knows what I need to change since I updated to 0.9c infolister to display my page (see sig) please let me know. Extension update was all I changed and now no data is shown, but if you look at the source code on the page, it is there.
My Firefox Info
NOTE: Firefox is spelled “F-i-r-e-f-o-x”; only the first letter capitalized. The preferred abbreviation is “Fx” or “fx”.

asqueella
 
Posts: 4019
Joined: November 16th, 2003, 3:05 am
Location: Russia, Moscow

Post Posted December 13th, 2005, 3:23 am

Without looking at the XSLT carefully, I'd say replace all occurences of "/info" with "/infolister/info". I think Robert has an updated version of this.

[edit] Bazon: I saw your posts, but haven't yet looked into it, the first issue you reported was deliberately coded like that, unsure about the second one. Looks like I will have to fix this.

Return to Extension/Theme Releases


Who is online

Users browsing this forum: No registered users and 5 guests