I plan on using Elgg in a K12 environment, particularly my fifth graders. In order to do this in a manner that complies with our school policies and culture, I had to make some changes. Since the Elgg environment is unmoderated, I had to remove all public access to content.
Elgg’s “Walled Garden” does part of the job in that it disables public registration, but any content that users created had the option of public access which would be visible to individuals not logged in.
I created a plugin with a view override that removes this option. Now users have the choice of private or logged in users (along with any friends’ collections) when setting the access to content.
Still, access to the site could be had by RSS feeds and OpenDD. I’m not sure how big an issue this is, but I’d like to be able to do it. Dave Tosh suggested, I created an override of owners’ block eliminating those options. I believe access to these can be had unless I delete the rss and opendd views from the core. That will work, but I wonder if I could create an override of those views that disables them. I plan on looking into this.
- No links to subscribe to feeds
I combined my initial plugin, with Marcus Povey’s “Walled Garden.” With “Higher Walls,” not only is registration disabled, but so is public access. Links to RSS and OpenDD feeds are also disabled.
Another issue remains. If access to content is restricted to logged in users, then the Latest Activity on the default main page will remain as a header with nothing below it. I used Customindex plugin to change the mainpage to a login page by pasting:
$form_body = “<p><label>” . elgg_echo(’username’) . “<br />” . elgg_view(’input/text’, array(’internalname’ => ‘username’, ‘class’ => ‘login-textarea’)) . “</label><br />”;
$form_body .= “<label>” . elgg_echo(’password’) . “<br />” . elgg_view(’input/password’, array(’internalname’ => ‘password’, ‘class’ => ‘login-textarea’)) . “</label><br />”;
$form_body .= elgg_view(’input/submit’, array(’value’ => elgg_echo(’login’))) . “</p>”;
$form_body .= “<p>” . elgg_echo(”) . “</a> <a href=\”". $vars['url'] .”account/forgotten_password.php\”>” . elgg_echo(’user:password:lost’) . “</a></p>”;
echo elgg_view(’input/form’, array(’body’ => $form_body, ‘action’ => “”. $vars['url'] .”action/login”));
into customindex/views/default/customindex/content.php.
Further modifications could be done on the custom index, but this certainly serves the purpose. It is comparable to what one would encounter in a password protected WordPressMU blog.
Now I am convinced that Elgg can be modified to work within the K12 environment. Higher Walls and removing rss and opendd views directories restricts access to the community very effectively. A better solution would disabling rss and opendd through the plugin rather than deleting core files.
Now that these matters appear worked out, I plan to focus more on Elgg in terms of pedagogy. Nonetheless, I will tweak “Higher Walls” over time.
Thanks to:
- Marcus Povey
- Boris Glumpler
- Jens von der Heydt
- Diego Andrés Ramírez Aragón













Recent Comments