Difference between revisions of "CompostUs"
(→Bugs/Errors as you find 'em: found some) |
(→Bugs/Errors as you find 'em: bug) |
||
| Line 77: | Line 77: | ||
* When on a user page (we call these personal pages in Community), the "User contributions" link is suppose to go to that person's contribs, but they go to mine instead. [[User:TedErnst|TedErnst]] <small>([[User talk:TedErnst|talk]])</small> | * When on a user page (we call these personal pages in Community), the "User contributions" link is suppose to go to that person's contribs, but they go to mine instead. [[User:TedErnst|TedErnst]] <small>([[User talk:TedErnst|talk]])</small> | ||
* The links in the sidebar don't appear to be wiki editable anymore. This is hard on Community. [[User:TedErnst|TedErnst]] <small>([[User talk:TedErnst|talk]])</small> | * The links in the sidebar don't appear to be wiki editable anymore. This is hard on Community. [[User:TedErnst|TedErnst]] <small>([[User talk:TedErnst|talk]])</small> | ||
| + | * In my watchlist, all the entries appear to be bold, rather than just bold for the ones I haven't visited yet. [[User:TedErnst|TedErnst]] <small>([[User talk:TedErnst|talk]])</small> | ||
== [[DoneDone]] == | == [[DoneDone]] == | ||
Revision as of 00:48, 29 February 2008
What (summary)
Have our rails framework, Compost, handle basic page views and proxy all complex wiki requests back to Mediawiki.
Why this is important
We are sick and tired of being hobbled by our primary PHP environment. If we have every request handled primarily by Rails will give us a great deal of flexibility in writing new extensions, while still maintaining Mediawiki for a continuously shrinking subset of requests will make migration to our new platform feasible.
Punchlist
Deploy
-
DNS for compostus.aboutus.org -
apache configuration for compostus.aboutus.org -
cap compostus:deploy from the compostus branch prompts for TAGNAME updates /www/aboutus/compostus on squal1, squal2, squal3, squal-bot1 - Adjust apache configuration to serve static content directly
- populate dev stages with sample data from site
- Move master over to www
- Tweak the apache conf to serve up the mediawiki front end from www
- Adjust cap deploy for the www branch to deploy our current mediawiki front end
Functionality
-
section editing - %29) redirect when loading /
-
au_web_services needs to be added to the config/routes.rb -
signup - openId
- explore existing openid
-
db schematable: user_openid columns: uoi_openid, uoi_user. -
connection between openid and mediawiki traditional loginsthrough user_id , can use email-password-reminder to enable traditional login - libraries required
- organization provided by plugin
-
- find ruby implementation
- send error list to janrain
- http://openidenabled.com/files/ruby-openid/docs/2.0.4/ -- irb should say "require 'openid'"
- explore existing openid
- redirects
- create redirect test cases
- When a user asks for User:MyPage and that page has a redirect loop we show the redirect loop User:MyPage >> User:MyOtherPage >> User:MyPage (so that we can edit any page in the loop)
- Same for a long chain
- Long chain of redirects ... Redirect 1 --> Redirect 2 --> Redirect 3 --> Redirect 4 --> Redirect 5 --> Redirect 6 --> NonRedirect
- Redirect loop ... Redirect I --> Redirect II --> Redirect III --> Redirect I
- find redirect code in mediawiki
- find code for what redirects here
- search should short circuit to existing pages
- parser functions that create full url links create them pointing at mediawiki:8888 rather than the correct server
Skin
- when tabbing out a link, the wiki functions never show up (the ones that magically appear when you hover over a section)
- styling for signup views
- Navigation and edit tools all work
- Missing methods
- Finish the skin
- Section editing doesn't work
- Need to finish up the authentication screens
- will probably need assistance (vinh!)
Claims
- Create a claim retrieval function in compost
Mediawiki API
- Pass in text, get back parsed html (for claims etc)
Bugs/Errors as you find 'em
- links to special pages shouldn't percent encode the : (%3A)
- no method error in authenticate when @page.is_special? - vinh
- when navigating to a User: page - vinh
NoMethodError in MediawikiController#view app/models/page.rb:35:in `find_by_prefixed_casespace' app/controllers/mediawiki_controller.rb:64:in `get_page' app/controllers/mediawiki_controller.rb:8:in `view'
- MW system msgs aren't available for "ad sidebar", ...
- When on a user page (we call these personal pages in Community), the "User contributions" link is suppose to go to that person's contribs, but they go to mine instead. TedErnst (talk)
- The links in the sidebar don't appear to be wiki editable anymore. This is hard on Community. TedErnst (talk)
- In my watchlist, all the entries appear to be bold, rather than just bold for the ones I haven't visited yet. TedErnst (talk)
DoneDone
Steps to get to DoneDone
- CompostUs/Skin ... Port AboutUs skin to rails. (Vinh, Stephen)
- Build shell Mediawiki skin that serializes relevant output and relays it back to Rails. (Stephen)
- Build well-tested Rails controller that proxies back all GET and POST requests to Mediawiki.
- CompostUs/Auth Build authentication framework that uses Mediawiki's user DB but relies on Rails sessions.
- Integrate Ruby OpenID extensions with existing Mediawiki OpenID DB schema.
- Disable Mediawiki log in pages.
- Build parser for Mediawiki titles (IE "Template:Bob" gets translated to {:title => "Bob", :namespace => 10})
- This is already done. In claims branch, look at Page.extract_namespace_and_title(title) in page.rb script.
- Build casespace resolver for page titles
- This is also done. In claims branch, see Page.find_by_casespace(title) in page.rb script.
- CompostUs/Caching Build database parser cache to persistently keep Mediawiki parser output to minimize usage of PHP
- Mediawiki is invoked only if there exists no output in the parser cache.



