We were working on a client who wanted to use Elgg for employee portals. It needed to have some default google gadgets, but saving the config data on what they were (like whether they were stocks or calendars, not to mention giving them meaningful titles) is impossible with the built in plugin. Additionally, they wanted to lock some but allow the employee to add their own to personalize their portals, but again the existing plugin didn't do that. Widgets Plus! was created to meet all of these requirements, and it is a wonder why Elgg doesn't do this stuff natively.
v1.1:
info@elgg.org
Security issues should be reported to security@elgg.org!
©2014 the Elgg Foundation
Elgg is a registered trademark of Thematic Networks.
Cover image by Raül Utrera is used under Creative Commons license.
Icons by Flaticon and FontAwesome.
It appears that there is a conflict between widgets plus and site access. We were able to fix the issues using chaggs code and some custom coding of our own. I am able to use remove widgets with widgets plus fine. Remove widgets plugin is a good solution to the widgets plus issue with duplicate widgets. Will you be able to fix the site access conflict in your next update? Thanks.
For me, cloning of widgets for new users also didn't work. So I dived deeply into it and found some problems which all have to do with a function called get_access_sql_suffix which is used within build processes of SQL queries. Modifying the function widgets_plus_newsuser has solved my problems.
The modified version looks as follows:
function widgets_plus_newuser($event, $object_type, $user)
{ //copy all of admin's widgets to new user
elgg_set_ignore_access();
widgets_plus_clone($user->guid);
elgg_set_ignore_access(false);
}
Siteaccess is active. I also leaved the registration of the event handler for "create" untouched.
Hopefully this will help others.
Im having the same problem related by user chaggs: "cloning of widgets for new users is not working." The error log messages are:
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "Invalid argument supplied for foreach()" in file /var/www/html/elgg/mod/widgets_plus/actions/clone.php (line 17), referer: http://172.16.222.54/pg/profile/admin
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "array_key_exists() expects parameter 2 to be array, null given" in file /var/www/html/elgg/mod/widgets_plus/start.php (line 41), referer: http://172.16.222.54/pg/profile/admin
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "Invalid argument supplied for foreach()" in file /var/www/html/elgg/mod/widgets_plus/start.php (line 58), referer: http://172.16.222.54/pg/profile/admin
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "Invalid argument supplied for foreach()" in file /var/www/html/elgg/mod/widgets_plus/start.php (line 58), referer: http://172.16.222.54/pg/profile/admin
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "Invalid argument supplied for foreach()" in file /var/www/html/elgg/mod/widgets_plus/start.php (line 58), referer: http://172.16.222.54/pg/profile/admin
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "Invalid argument supplied for foreach()" in file /var/www/html/elgg/mod/widgets_plus/start.php (line 58), referer: http://172.16.222.54/pg/profile/admin
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "Invalid argument supplied for foreach()" in file /var/www/html/elgg/mod/widgets_plus/start.php (line 58), referer: http://172.16.222.54/pg/profile/admin
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "Invalid argument supplied for foreach()" in file /var/www/html/elgg/mod/widgets_plus/start.php (line 58), referer: http://172.16.222.54/pg/profile/admin
[Thu Aug 26 15:51:56 2010] [error] [client 172.16.8.65] WARNING: 2010-08-26 15:51:56 (BRT): "Invalid argument supplied for foreach()" in file /var/www/html/elgg/mod/widgets_plus/start.php (line 58), referer: http://172.16.222.54/pg/profile/admin
Any ideia? I am using elgg 1.7.1.
Thanks
I forgot to inform the error log messages appear after a click on "Propagate locked widgets" button
the default links for widgets need to be updated for this plugin as they have changed for several mods as of v.1.7.4 of elgg
is there a way to reference the present site user's name when entering a widget title link?
e.g. something like [username] ?
i've looked and haven't found one yet.. anyone?
thnx
When I installed this plugin, I kept getting this error:
It came back every time I clicked "ok," too.
Just so everyone knows: if you put this at the TOP of your plugin list and run upgrade, it solves the problem for IE8. Works perfectly either way in Chrome, for me.
Love the locked feature!
Alan
when i click propogate widgets, othing happens. the page just continually attempts to load but it never does
Hi we get the following errors within IE7 & IE8 : Elgg 1.7.11
IE8 "Stack overflow at line:13"
IE7 "Out of memory at line:13"
This happens when the Dashboard loads, you then need to click the 'Ok' button once for each one of your widgets displayed. When you come back to your dashboard it happens again.
Plugin is install and at the top of the tools list
It doesnt happen in Chrome or Firefox
Was loving the plugin till we spotted this.