Difference between revisions of "Claims"
| Line 45: | Line 45: | ||
* consider casespace | * consider casespace | ||
** note [[Ward Cunningham]] doesn't link, either with or without _ for space. | ** note [[Ward Cunningham]] doesn't link, either with or without _ for space. | ||
| + | ** We have no real ability to handle casespace in Compost. It would be great to be able to look up a page from the Page object based on its casespace name. We should be handling this in the ActiveRecord area, not in a controller--that way we can use it easily from every place. Why don't you guys factor out the casespace stuff and put it into the Page object? Of course, adding a bunch of test cases to the page unit test would be necessary. -[[User:Stephen Judkins|Stephen Judkins]] | ||
* consider redirects | * consider redirects | ||
[[Category:DevelopmentTask]] | [[Category:DevelopmentTask]] | ||
</noinclude> | </noinclude> | ||
Revision as of 01:14, 26 January 2008
What (summary)
Claims are statements that involve multiple pages. Unlike hyperlinks, claims appear on each page that they site. That is, they are multi-directional.
See the claims section of the Site_Layout_Draft.
A claim has been entered for c2.com. Find it in the skin below the useful links.
Why this is important
Claims promise to increase engagement by adding a semantic component to related-pages and spreading them more widely.
Our test implementation of Claims explores overlaying functionality on mediawiki without relying solely on wikitext.
DoneDone
- Phase 1 will be done when ...
- One can conveniently add new claims and these appear on all appropriate pages.
- One cannot overload a page with too many pointless claims.
- Phase 2 will add some sort of voting
- Phase 3 will provide some sort of Claims-watch for the temprophilic.
Steps to get to DoneDone
-
Decide what branch this will be onMade scary choice to develop on live (production) -
Stage the live codebase on our local machine at http://livedev_tools is missing the refactorings we did in lahore ... use the code elsewhere and ask them to push the changes -
Verify that the migration works (test the migration? no) -
Create a migration that creates the claims, and claim_elements tables -
Generate scaffold for claims -
Fix errors created by generator -
Add a migrate task to capfile and use it to deploy migrations -
Add has_and_belongs_to_many relationships to claims and pages (in the models) -
Back out of our most recent migration and fix the name of our page_claims table locally -
Extend cap migrate to allow us to set the version to migrate to -
Use the extended cap migrate to back out of the wrong migration and back into the correct migration -
Setup claims, pages, and page_claims fixtures to include a few claims for pages so that we can test -
Test the relationships between claims and pages -
Make model relationships explicit -
Code the claims/reparse action that rebuilds claims_pages from the claims table -
Code the claims/about/PAGETITLE action that shows all the claims for the given PAGETITLE (including namespace) -
Use scaffold to create claims -
Add a hook in the skin that checks for isLoggedIn and displays all the claims for the page - parse claims as they are added
- consider casespace
- note Ward Cunningham doesn't link, either with or without _ for space.
- We have no real ability to handle casespace in Compost. It would be great to be able to look up a page from the Page object based on its casespace name. We should be handling this in the ActiveRecord area, not in a controller--that way we can use it easily from every place. Why don't you guys factor out the casespace stuff and put it into the Page object? Of course, adding a bunch of test cases to the page unit test would be necessary. -Stephen Judkins
- consider redirects

