Difference between revisions of "UrlMagic"
(New page: <noinclude><big>OurWork < DevelopmentTeam < Priorities < </noinclude>UrlMagic {{JustTinyEditIcon|UrlMagic}}<noinclude></big> __NOTOC__ == What (su...) |
|||
| Line 12: | Line 12: | ||
** We may want to factor out the function get_portal_skin from design.php. The basic approach should stay the same. | ** We may want to factor out the function get_portal_skin from design.php. The basic approach should stay the same. | ||
** Create a mapping between skin names and portal URLs | ** Create a mapping between skin names and portal URLs | ||
| − | + | * Develop this extension using an integration test written in Ruby using Net::Mechanize. See compost/test/integration/build_domain_test.rb for an example. We want to do this so that if we modify our platform in the future we have regression tests to know this capability still works. | |
[[Category:DevelopmentTask]] | [[Category:DevelopmentTask]] | ||
</noinclude> | </noinclude> | ||
Revision as of 00:02, 29 January 2008
What (summary)
Pages in some portals should be accessible if and only if the site is being viewed from a specified domain. If a page is viewed in the wrong domain, the user is redirected to the right domain.
Why this is important
Lets us continue our portal branding in a way that gives sponsors a greater sense of ownership.
DoneDone
- If a page is skinned via the <setSkin> tag, all attempted page views for that page are redirected to the proper domain. For example, if a page is called PortlandTechCompany, and is skinned PortlandTech, any attempts to reach www.aboutus.org/PortlandTechCompany are redirected (301 permanent) to www.portlandtech.net/PortlandTechCompany. Likewise, visiting www.portlandtech.net/NotInPortlandTech should redirect to www.aboutus.org/NotInPortlandTech
- The detection of a particular portal is done using the skin-detection logic from CustomSkinForPortals. If this capability is insufficient, make sure that developers working on both projects address it together instead of creating our own solutions.
- We may want to factor out the function get_portal_skin from design.php. The basic approach should stay the same.
- Create a mapping between skin names and portal URLs
- Develop this extension using an integration test written in Ruby using Net::Mechanize. See compost/test/integration/build_domain_test.rb for an example. We want to do this so that if we modify our platform in the future we have regression tests to know this capability still works.

