This plugin is dedicated to Viral Sonawala.
With it you can do 2 things:
Elgg 1.7 or greater
One note: the friends only option works by catching the send action and blocking it. The messages plugin does not use the page handler for composing messages. If it did, I could stop the message before it is composed. Let's hope that gets fixed in a future version of Elgg.
I just want to ask that if a user sends his mail to a user whom he's not a friend of and the plug-in blocks it, I presume that there will be no database entry? I asked this because it might indeed block the message from reaching a user whom he's not a friend of the sender thus protecting him from spam but if it still reach the database then your database is not protected from spam at all? I am not a coder and I don't have any idea how the core of Elgg handles this so please enlighten.
How about adding a feature which disables the "Send a message" action/option in the drop-down menu of the user icon. The "Send a message" will be dimmed to know it has no link or it has been disabled/deactivated because the user has chosen to receive mails from friends only.
What do you think?
Almost a clone of this http://community.elgg.org/pg/plugins/slyhne/read/385010/messages-with-privacy-option-more
@slyhne - did not know about your plugin
@GMA - slyhne's plugin has features like auto-refresh of the envelope icon/count that this plugin does not. That plugin is a modification of the messages plugin while this one operates in cooperation with the messages plugin. I think slyhne's does a better job telling the user before a message is written that the user is blocking it (if it is done from the avatar menu). I think this one is probably more foolproof on blocking the message from going out (though I might have missed something in the other plugin). The short answer is that it depends.
I tested slyhne's plug-in but it doesn't work. The "Envelope" icon fron the topbar disappears. The only way you can compose and send a message is by using the "Send a message" action in the avatar menu. Since the "Envelope" icon is missing, there is no way you will get informed when you received a mail or notification! I also tested the auto-refresh function and I set it at 10 seconds interval. It was not also working,
Can you integrate slyhne's auto-refresh to your plug-in? And also a feature which deactivates or makes the "Send a message" unclickable in the avatar menu when a user chooses to receive mails from friends only.
Can an Admin send a message to all (how can it possible in current elgg)? ,
it can be useful if some admin don't like to use newsletter (or to have it by default in elgg), and integrate an option for newsletter notification in notification settings if users want automatically receive them or not.
I'm using newest 1.8 version and this plugin is giving me an error message:
Deprecated in 1.8: usersettings/messages_block/edit was deprecated in favor of plugins/messages_block/usersettings Called from [#11] /elgg/elgg-1.8.5/engine/lib/views.php:506
Deprecated in 1.8: input/pulldown was deprecated by input/dropdown Called from [#15] /elgg/elgg-1.8.5/engine/lib/views.php:506
Anyone could help me solve it?