Wiki Web Service: Difference between revisions

From MusicBrainz Wiki
Jump to navigationJump to search
(WikiTransclusionTable -> WikiDocsTransclusionTable (Imported from MoinMoin))
(WantegPages triage (Imported from MoinMoin))
Line 1: Line 1:
The WikiWebService is a component of the planned [[WikiDocs]]. It is the mechanism that transcludes a [[Wiki Page|WikiPage]] to the [[Web Site|WebSite]]. It displays pages from the [[MusicBrainz Wiki|MusicBrainzWiki]] as uneditable webpages within the normal header, footer, menubar etc. of the [[MusicBrainz]] website.
The WikiWebService is a component of the planned [[WikiDocs]]. It is the mechanism that transcludes a [[Wiki Page|WikiPage]] to the [[MusicBrainz Web Site|MusicBrainzWebSite]]. It displays pages from the [[MusicBrainz Wiki|MusicBrainzWiki]] as uneditable webpages within the normal header, footer, menubar etc. of the [[MusicBrainz]] website.


The webservice has to check, whether the requested page is listed in the [[Wiki Docs Transclusion Table|WikiDocsTransclusionTable]].
The webservice has to check, whether the requested page is listed in the [[Wiki Docs Transclusion Table|WikiDocsTransclusionTable]].
Line 13: Line 13:
==Old /wd/ Mechanism==
==Old /wd/ Mechanism==


[[User:MatthiasFriedrich|MatthiasFriedrich]] explained me how the content of a [[Moin Moin|MoinMoin]] wiki page is displayed on the [[MusicBrainz]] [[Main Site|MainSite]]:
[[User:MatthiasFriedrich|MatthiasFriedrich]] explained me how the content of a [[Moin Moin|MoinMoin]] wiki page is displayed on the [[MusicBrainz Web Site|MusicBrainzWebSite]]:
* When you request a page like [http://www.musicbrainz.org/wd/AboutMusicBrainz http://www.musicbrainz.org/wd/AboutMusicBrainz], the <code><nowiki>wd/AboutMusicBrainz</nowiki></code> is rewritten to a different URL: <code><nowiki>/docs.html?id=AboutMusicBrainz</nowiki></code>.
* When you request a page like [http://www.musicbrainz.org/wd/AboutMusicBrainz http://www.musicbrainz.org/wd/AboutMusicBrainz], the <code><nowiki>wd/AboutMusicBrainz</nowiki></code> is rewritten to a different URL: <code><nowiki>/docs.html?id=AboutMusicBrainz</nowiki></code>.
* The code inside of docs.html calls a mason component. This mason component loads a page via HTTP-GET from the [[Moin Moin|MoinMoin]] wiki that is located at [http://wikidocs.musicbrainz.org http://wikidocs.musicbrainz.org] (Note that this is the old and deprectated [[WikiDocs]], that can be edited at [http://wikidocs.musicbrainz.org/write/ http://wikidocs.musicbrainz.org/write/] (restricted access)).
* The code inside of docs.html calls a mason component. This mason component loads a page via HTTP-GET from the [[Moin Moin|MoinMoin]] wiki that is located at [http://wikidocs.musicbrainz.org http://wikidocs.musicbrainz.org] (Note that this is the old and deprectated [[WikiDocs]], that can be edited at [http://wikidocs.musicbrainz.org/write/ http://wikidocs.musicbrainz.org/write/] (restricted access)).

Revision as of 12:07, 9 April 2007

The WikiWebService is a component of the planned WikiDocs. It is the mechanism that transcludes a WikiPage to the MusicBrainzWebSite. It displays pages from the MusicBrainzWiki as uneditable webpages within the normal header, footer, menubar etc. of the MusicBrainz website.

The webservice has to check, whether the requested page is listed in the WikiDocsTransclusionTable.

  • If it is, it pulls the last moderated revision from the MusicBrainzWiki and serves that inside a <div class="WikiDocsContent">.
  • If it is not, it pulls the current revision of the page and serves that inside a <div class="WikiContent">.

Additionally the webservice has to do a lot of WikiDocsConversion stuff. Since that is quite complex, we will have to make very judicious usage of caching.



Old /wd/ Mechanism

MatthiasFriedrich explained me how the content of a MoinMoin wiki page is displayed on the MusicBrainzWebSite:

New /doc/ Meachnism