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| |
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 |
[[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:
- When you request a page like http://www.musicbrainz.org/wd/AboutMusicBrainz, the
wd/AboutMusicBrainz
is rewritten to a different URL:/docs.html?id=AboutMusicBrainz
. - The code inside of docs.html calls a mason component. This mason component loads a page via HTTP-GET from the MoinMoin wiki that is located at http://wikidocs.musicbrainz.org (Note that this is the old and deprectated WikiDocs, that can be edited at http://wikidocs.musicbrainz.org/write/ (restricted access)).
- The mason component reads the wiki via the URL http://wikidocs.musicbrainz.org/read/AboutMusicBrainz?action=content (restricted as well).
- The component conversion (only a tiny subset of what is listed on WikiDocsConversion).
- Finally the page is displayed on the website, inside ouf our usual framework (header, sidebar, footer).
New /doc/ Meachnism
- The webservice must differentiate between pages that are listed in the ModeratedRevisionTable and pages which are not listed, and serve the appropriate revision of the page.
- The url should be changed so something more meaningful, since most mb urls will have that form. I suggest http://www.musicbrainz.org/doc/AboutMusicBrainz .
- The webservice must perform the full set fo WikiDocsConversion
s.