Gospel Translations:Technology/BrowseTranslations extension

From Gospel Translations

(Difference between revisions)
Jump to:navigation, search
 
(One intermediate revision not shown)
Line 9: Line 9:
=== Overview of functionality ===
=== Overview of functionality ===
-
Special pages are designed to accept one parameter, which is included in the URL a la [[Special:Emailuser/Mahra]]. That special page creates a form to email Andrew, where the input parameter was <code>Mahra</code>.
+
Special pages are designed to accept one parameter, which is included in the URL a la [[Special:Emailuser/Mahra]]. That special page creates a form to email Andrew, where the input parameter was <code>Mahra</code> (Andrew's user name on this wiki).
-
The '''BrowseContent''' extension will work by accepting a two-part parameter delimited by a colon. Because the extension's purpose is to provide a drilldown view, the two-part parameter will be formatted as <code>Category:Member</code>. "Category" refers to the type of drill down--whether by Author, Publisher, Title, Topic, or Language. "Member" refers to the subgroup to display.  
+
The '''BrowseContent''' extension will work by first accepting a two-part parameter delimited by a colon. Because the extension's purpose is to provide a drilldown view, the two-part parameter will be formatted as <code>Category:Member</code>. "Category" refers to the type of drill down--whether by Author, Publisher, Title, Topic, or Language. "Member" refers to the subgroup to display.  
For example,  
For example,  
Line 21: Line 21:
* <code>Language:Index</code> would return a list of all the languages that are published by us
* <code>Language:Index</code> would return a list of all the languages that are published by us
* <code>Topic:Index</code> would return a list of all the topics that have at least one article assigned to them
* <code>Topic:Index</code> would return a list of all the topics that have at least one article assigned to them
 +
 +
A minimal user experience would be:
 +
# User visits Special:BrowseTranslations/Author:Index, which lists all authors as links
 +
# From there, User clicks on the link for "John Piper" and is taken to Special:BrowseTranslations/Author:John_Piper, which lists all of Piper's works alphabetically
 +
# User clicks an article title and is taken to the appropriate page
 +
 +
Since the example above would actually produce a huge list of titles, we'll need to plan a way to provide further drill down. One idea would be to keep adding parameters after forward slashes, i.e. <code>Special:BrowseTranslations/Author:John_Piper/Topic:Salvation</code>. That is a long URL though, so I think other approaches should be considered.
See below for info on the database from which all this information will be pulled.
See below for info on the database from which all this information will be pulled.

Current revision as of 15:15, 8 June 2009

Contents

Project summary

Create a SpecialPage that allows drilldown browsing of our translation library.


Assignments


Overview of functionality

Special pages are designed to accept one parameter, which is included in the URL a la Special:Emailuser/Mahra. That special page creates a form to email Andrew, where the input parameter was Mahra (Andrew's user name on this wiki).

The BrowseContent extension will work by first accepting a two-part parameter delimited by a colon. Because the extension's purpose is to provide a drilldown view, the two-part parameter will be formatted as Category:Member. "Category" refers to the type of drill down--whether by Author, Publisher, Title, Topic, or Language. "Member" refers to the subgroup to display.

For example,

Also, for each Category you can use the special Member "Index" to list all available Members. For example,

A minimal user experience would be:

  1. User visits Special:BrowseTranslations/Author:Index, which lists all authors as links
  2. From there, User clicks on the link for "John Piper" and is taken to Special:BrowseTranslations/Author:John_Piper, which lists all of Piper's works alphabetically
  3. User clicks an article title and is taken to the appropriate page

Since the example above would actually produce a huge list of titles, we'll need to plan a way to provide further drill down. One idea would be to keep adding parameters after forward slashes, i.e. Special:BrowseTranslations/Author:John_Piper/Topic:Salvation. That is a long URL though, so I think other approaches should be considered.

See below for info on the database from which all this information will be pulled.


Helpful documentation


Special considerations for the Language Category

For all Categories except Language, the default language of the wiki will be assumed. So on an English wiki, only return English results, and so on.

But when browsing languages, another layer of functionality needs to be added. Let's say the user is on our English wiki, and is curious about what we've translated into Spanish. Well, if we just did a search in the form of Language:Spanish, the resulting page would list several hundred items and thus be too expansive to be helpful.

For that reason, we should probably have Language:Spanish simply return 4 options: Browse by Author, Topic, Title, or Publisher. And from there we would simply add new parameters to refine the search. Two options for doing this are:

Navigation
Volunteer Tools
Other Wikis
Toolbox