Difference between revisions of "RationalizeArticleCapitalization"

Line 1: Line 1:
 
This is the plan to bring case insensitivity to AboutUs.  Things that content people will be interested in are in bold, everything else are implementation details.  This is basically the plan I described to you on Friday.  Please leave any comments or feedback on this page!
 
This is the plan to bring case insensitivity to AboutUs.  Things that content people will be interested in are in bold, everything else are implementation details.  This is basically the plan I described to you on Friday.  Please leave any comments or feedback on this page!
 +
 +
To get the "CaseSpace" title of a given article, we will do the following:
 +
# Convert to lowercase.  CamelCase becomes camelcase
 +
# Strip spaces, underscores, question marks, and parentheses. "knock knock? whos_there" becomes "knockknockwhosthere"
 +
 +
Note that the users should never see these CaseSpace titles.  They should only be used in the system for disambiguation.
  
 
===Step 1===
 
===Step 1===

Revision as of 18:09, 23 April 2007

This is the plan to bring case insensitivity to AboutUs. Things that content people will be interested in are in bold, everything else are implementation details. This is basically the plan I described to you on Friday. Please leave any comments or feedback on this page!

To get the "CaseSpace" title of a given article, we will do the following:

  1. Convert to lowercase. CamelCase becomes camelcase
  2. Strip spaces, underscores, question marks, and parentheses. "knock knock? whos_there" becomes "knockknockwhosthere"

Note that the users should never see these CaseSpace titles. They should only be used in the system for disambiguation.

Step 1

  • Create au_page_lookup_scratch table, populate with pages
  • Add hooks to block new page creation with casespace conflicts
  • Add hooks to add new pages to au_page_lookup_scratch table
  • Block creation of new pages that differ from existing pages only by capitalization.

Step 2

  • Create page with all pages with casespace conflicts
  • Have content do their thing and resolve all casespace conflicts.

Step 3

  • Create au_page_lookup table, with primary unique key for casespace name.
  • Move hooks from #1 to point to au_page_lookup
  • Populate using same method as #1
  • Add hooks so all index.php?title=... queries are checked from au_page_lookup, 302'd to their real homes if necessary
  • Redirect all URLs to their proper capitalization, ie http://www.aboutus.org/cASEsPACE redirects to http://www.aboutus.org/CaseSpace.

Step 4

  • Figure out what to do with red/blue links in the parser.


Retrieved from "http://aboutus.com/index.php?title=RationalizeArticleCapitalization&oldid=6294962"