Closed Bug 519124 Opened 15 years ago Closed 9 years ago

Create WordPress plugin which will get actual download links for Mozilla applications

Categories

(Websites :: Mozilla Community Sites, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: JasnaPaka, Assigned: mstanke)

References

()

Details

One operation which do local communities on local websites with every release of Firefox or Thunderbird is update download links to newer version. 

It would be good to create script/plugin for WordPress which would check regurarly some source (RSS, XML file...) and detect if new version of Firefox or Thunderbird is available.

Goal is to have way how to have links to actual versions of Mozilla applications automatically on local community websites.

At this moment we have (Mozilla.sk and Mozilla.cz) plugin for WordPress for managing downloads but we must do all manually.
Status: UNCONFIRMED → NEW
Ever confirmed: true
I'll be happy to lead this next week.

Pavel: do you have any preferred format for such file? It would help me a lot to have some example XML file for the release aggregation.
We can use the source at http://svn.mozilla.org/libs/product-details/ which is AFAIK what updates the pages on mozilla.com. I'd recommend placing a script hosted somewhere on mozilla.com to actually translate this class to an XML feed. 

CCing myself, as I'm also interested in this for our local site.
I think we basically need the same info as http://www.mozilla.com/en-US/firefox/all.html in either JSON or XML. That page even has ability to only get one locale using http://www.mozilla.com/en-US/firefox/all.html?lang-search=da

At MozillaDanmark we are currently using a file like this: http://mozilladanmark.dk/produkter/firefox/data.inc
Here we build up the download urls ourselves, but I would prefer not to do that.

In JSON, I guess the structure could be:

{
  "da":{
    "en-name":"Danish",
    "native-name":"Dansk",
    "version":"3.5.3",
    "download":{
      "win":"http://download.mozilla.org/?product=firefox-3.5.3&os=win&lang=da"
      "osx":"http://download.mozilla.org/?product=firefox-3.5.3&os=osx&lang=da"
      "linux":"http://download.mozilla.org/?product=firefox-3.5.3&os=linux&lang=da"
    }
  }
}

or similar for XML.
JSON would be great. Regarding the structure - for local community needs we don't need locale names nor download links. Initial idea was to have a source containing app name and it's current version only. With these info you can guess app download links easily. I'm not against proposed structure, but I think it'd just be unnecessary data load on mozservers.
Year, a simple text file containing just the version number and nothing more would also work. I just think the other version would be more robust (ja-JP-mac, locale missing a version, etc.)
(In reply to comment #1)
> Pavel: do you have any preferred format for such file? It would help me a lot
> to have some example XML file for the release aggregation.

Ok, I will prepare example.

(In reply to comment #2)
> We can use the source at http://svn.mozilla.org/libs/product-details/ which is
> AFAIK what updates the pages on mozilla.com.

Yes. Only small problem is that there is no info about latest version of SeaMonkey and Fennec. But no problem for me at this moment.
(In reply to comment #6)
> Yes. Only small problem is that there is no info about latest version of
> SeaMonkey and Fennec. But no problem for me at this moment.

It might be better to implement products independently, but still keeping the same url+file format. Lots of different communities support lots of different apps (for example, we also support Sunbird and KompoZer). So doing one xml/json download for one app in a 1:1 matter would be simpler than N:M. I would prefer Firefox info from mozilla.com, Thunderbird info from mozillamessaging.com, etc.
I second Jesper, the plugin should be pluggable.

Pavel, can you attach the current plugin here or commit it to our HG? I'd like to experiment with it.
(In reply to comment #8)
> Pavel, can you attach the current plugin here or commit it to our HG? I'd like
> to experiment with it.

Plugin was originally developed by Wladow for Mozilla.sk and I did some modifications for Mozilla.cz. You can download this plugin from our SVN:

https://svn.mozilla.org/projects/mozilla.cz/www/wp-content/plugins/mozsk-cms/

Just a note. Plugin is in slovak (sk).
(In reply to comment #1)
> Pavel: do you have any preferred format for such file? It would help me a lot
> to have some example XML file for the release aggregation.

Something like this is good enough for me (format doesn't matter):

<apps>
	<app>
		<name>firefox</name>
		<version>3.5.3</version>
	</app>
	<app>
		<name>thunderbird</name>
		<version>2.0.0.23</version>
	</app>	
</apps>

But see comment#5.
Just realized there already is a bug for the data source specifically, bug 405088.
cool, let's move that part there, and get back here once that one is done.
Depends on: 405088
(In reply to comment #9)
> (In reply to comment #8)
> > Pavel, can you attach the current plugin here or commit it to our HG? I'd like
> > to experiment with it.
> 
> Plugin was originally developed by Wladow for Mozilla.sk and I did some
> modifications for Mozilla.cz. You can download this plugin from our SVN:
> 
> https://svn.mozilla.org/projects/mozilla.cz/www/wp-content/plugins/mozsk-cms/
> 
> Just a note. Plugin is in slovak (sk).

FYI. Plugin is localized at this moment.
Product: Webtools → Websites
I started a while ago to implement this plugin for Mozilla.cz. If somebody interested in testing or even fine-tuning the code, please visit https://github.com/MozillaCZ/mozilla-latest-version.
Assignee: nobody → michal.stanke
I've resolved some issues successfully and the plugin is almost ready for its 1.0 release. Probably I'll wait until the 7th April to make sure the plugin really works as expected an all versions get updated well.
Status: NEW → ASSIGNED
1.0 released https://github.com/MozillaCZ/mozilla-latest-version/releases
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.