Closed usernamenumber closed 9 years ago
I was recently introduced to Project RACHEL, which already has a portal like the one we're building, but much farther along in development. Here's their demo server.
The source is here, and adding a module should be as simple as creating a modules/modulename/
directory with an index.htmlf
(the "f" is for "fragment") file that has the content you want to show up on the portal main page, with an optional <!-- position: X -->
comment to force the item to appear in position X on the page.
Adopting this instead of our existing portal would bring with it several easily-deployable modules that Project RACHEL has already created, in addition to whatever we add.
I'm leaning strongly toward scrapping our existing portal and deploying this instead, maybe with some stylesheet updates to port the (IMO nicer) look and feel of our portal to theirs.
Fixed in the usernamenumber/rachel_portal module, which is only waiting on #48 for merge.
The ansible roles as of #32 allow resources like edx, wikipedia, kalite, etc to add themselves as "subsites" of the main portal via dependency on the
portal_subsite
role. For a usage example, see here. This allows the role to set up an nginx redirect from http://portal_ip/foo to an arbitrary directory or port.The portal site provides a nice set of links for each subsite:
However, these links are currently hard coded. It would be nice to make the portal page setup for subsites as dynamic as the nginx setup is.
Possible solutions include (in order of preference):
tunapanda/data/portal/subsite_descriptions.d/< role name >
, each of which would be loaded by the portal page.portal_subsite
role (this allows us to change the formatting of all the subsite links in one place). That's easy enough, but as far as I can tell a role can't pass images and other files to another role, so either each role will need to put its logo image in a known location and then give that location toportal_subsite
, or...portal_subsite
, this gets easier to implement.