General plugins (Local): Moodle welcome

local_welcome
Maintained by Picture of Bas Brands Bas Brands
Sends a welcome message to new users, sends a notification to a moderator of the new user creation
881 sites
250 downloads
81 fans

Usage:

This plugin sends one email message to users that are new in Moodle and one email to a moderator.

This will work to all standard moodle authentication systems:

  • manually created users
  • users that signed up
  • users authentication through LDAP
  • all other standard authentication systems

Configuration can be done using:

Site administration->Plugins->Local plugins->Moodle welcome

Configurable fields are:

enable / disable welcome messages to users
enable / disable welcome messages to moderators

message send to user
message send to moderator

message subject for user
message subject for moderator

send from firstname
send from lastname
send from email address

moderator email address

Installation:

Download and install in your /local folder in moodle's wwwroot

Run Moodle notifications,

Configure your email messages / moderators etc

Screenshots

Screenshot #0

Contributors

Picture of Bas Brands
Bas Brands (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Comments

  • Just wondering . . .
    Fri, 17 Jan 2014, 9:36 AM
    I have the same question as Roger. Does this plugin work with Moodle 2.6?

    -Derek
  • Picture of Bas Brands
    Fri, 17 Jan 2014, 4:12 PM
    Hi Derek, Roger. The current release works for Moodle 2.6.
    @aleksandar: I am expecting some contributed code to this plugin that allows you to use more profile fields.

    Cheers,
    Bas
  • Picture of Diego Quiros
    Fri, 7 Feb 2014, 9:22 AM
    I get this error when trying to enable the plugin on moodle 2.5 whit archaius theme. Any Idea what´s the problem?

    Debug info: Missing mandatory en language pack.
    Error code: detectedbrokenplugin
    Stack trace:
    line 606 of /lib/upgradelib.php: plugin_defective_exception thrown
    line 395 of /lib/upgradelib.php: call to upgrade_plugins_modules()
    line 1580 of /lib/upgradelib.php: call to upgrade_plugins()
    line 431 of /admin/index.php: call to upgrade_noncore()


    Invalid get_string() identifier: 'modulename' or component 'mod_welcome'. Perhaps you are missing $string['modulename'] = ''; in mod/welcome/lang/en/welcome.php?
    line 293 of /lib/classes/string_manager_standard.php: call to debugging()
    line 6828 of /lib/moodlelib.php: call to core_string_manager_standard->get_string()
    line 64 of /lib/classes/plugininfo/mod.php: call to get_string()
    line 131 of /lib/classes/plugininfo/base.php: call to core\plugininfo\mod->init_display_name()
    line 88 of /lib/classes/plugininfo/base.php: call to core\plugininfo\base::make_plugin_instance()
    line 368 of /lib/classes/plugin_manager.php: call to core\plugininfo\base::get_plugins()
    line 33 of /admin/settings/plugins.php: call to core_plugin_manager->get_plugins_of_type()
    line 6363 of /lib/adminlib.php: call to require()
    line 3515 of /lib/navigationlib.php: call to admin_get_root()
    line 3372 of /lib/navigationlib.php: call to settings_navigation->load_administration_settings()
    line 717 of /lib/pagelib.php: call to settings_navigation->initialise()
    line 734 of /lib/pagelib.php: call to moodle_page->magic_get_settingsnav()
    line 109 of /blocks/admin_bookmarks/block_admin_bookmarks.php: call to moodle_page->__get()
    line 296 of /blocks/moodleblock.class.php: call to block_admin_bookmarks->get_content()
    line 238 of /blocks/moodleblock.class.php: call to block_base->formatted_contents()
    line 956 of /lib/blocklib.php: call to block_base->get_content_for_output()
    line 1008 of /lib/blocklib.php: call to block_manager->create_block_contents()
    line 353 of /lib/blocklib.php: call to block_manager->ensure_content_created()
    line 3 of /theme/archaius/layout/partials/header.php: call to block_manager->region_has_content()
    line 1 of /theme/archaius/layout/general.php: call to include()
    line 866 of /lib/outputrenderers.php: call to include()
    line 796 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
    line 2559 of /lib/outputrenderers.php: call to core_renderer->header()
    line 362 of /lib/setuplib.php: call to core_renderer->fatal_error()
    line 1158 of /lib/upgradelib.php: call to default_exception_handler()
    line 1592 of /lib/upgradelib.php: call to upgrade_handle_exception()
    line 431 of /admin/index.php: call to upgrade_noncore()
    get_context_instance() is deprecated, please use context_xxxx::instance() instead.
    line 4020 of /lib/deprecatedlib.php: call to debugging()
    line 26 of /theme/archaius/layout/partials/header.php: call to get_context_instance()
    line 1 of /theme/archaius/layout/general.php: call to include()
    line 866 of /lib/outputrenderers.php: call to include()
    line 796 of /lib/outputrenderers.php: call to core_renderer->render_page_layout()
    line 2559 of /lib/outputrenderers.php: call to core_renderer->header()
    line 362 of /lib/setuplib.php: call to core_renderer->fatal_error()
    line 1158 of /lib/upgradelib.php: call to default_exception_handler()
    line 1592 of /lib/upgradelib.php: call to upgrade_handle_exception()
    line 431 of /admin/index.php: call to upgrade_noncore()
  • Picture of Diego Quiros
    Fri, 7 Feb 2014, 10:37 AM
    The whole second block of errors dissapears when I renamed the lang/en/local_welcome file to welcome
  • Picture of Alan Hare
    Thu, 20 Feb 2014, 5:51 AM
    I could not find a forum discussion topic listed in the plugin details above or by searching the forums, so I am posting this here as it may help others.

    To add some flexibility to the plugin I changed lines 49-55 in local\welcome\event_handlers.php to read:

    //$tag = '[[user]]';
    //$replacement = $user->firstname . ' ' . $user->lastname;

    $message_user = str_replace(
    array('[[user]]', '[[username]]', '[[firstname]]', '[[lastname]]', '[[email]]', '[[city]]'),
    array($user->firstname . ' ' . $user->lastname, $user->username, $user->firstname, $user->lastname, $user->email, $user->city),
    $message_user);

    $message_user_subject = str_replace(
    array('[[user]]', '[[username]]', '[[firstname]]', '[[lastname]]', '[[email]]', '[[city]]'),
    array($user->firstname . ' ' . $user->lastname, $user->username, $user->firstname, $user->lastname, $user->email, $user->city),
    $message_user_subject);

    $message_moderator = str_replace(
    array('[[user]]', '[[username]]', '[[firstname]]', '[[lastname]]', '[[email]]', '[[city]]'),
    array($user->firstname . ' ' . $user->lastname, $user->username, $user->firstname, $user->lastname, $user->email, $user->city),
    $message_moderator);

    $message_moderator_subject = str_replace(
    array('[[user]]', '[[username]]', '[[firstname]]', '[[lastname]]', '[[email]]', '[[city]]'),
    array($user->firstname . ' ' . $user->lastname, $user->username, $user->firstname, $user->lastname, $user->email, $user->city),
    $message_moderator_subject);

    //$message_user = str_replace($tag, $replacement, $message_user);
    //$message_user_subject = str_replace($tag, $replacement, $message_user_subject);
    //$message_moderator = str_replace($tag, $replacement, $message_moderator);
    //$message_moderator_subject = str_replace($tag, $replacement, $message_moderator_subject);

    and changed lines 34 and 42 from \local\welcome\local_welcome.php to read:

    $string['message_user_subject_desc'] = 'This will be the subject of the email send to the user. Use username, [[firstname]], [[lastname]], [[email]], [[city]] as a tag, this will be replace with the Username, Firstname, Lastname, Email address, and City.';

    $string['message_moderator_subject_desc'] = 'This will be the subject of the email send to the moderator. Use username, [[firstname]], [[lastname]], [[email]], [[city]] as a tag, this will be replace with the Username, Firstname, Lastname, Email address, and City.';

    This will add the user profile fields/tags for [[username]], [[firstname]], [[lastname]], [[email]], and [[city]].

  • Picture of Bas Brands
    Thu, 20 Feb 2014, 4:40 PM
    Thanks for that. I updated the plugin to have more template fields:

    Name: fullname,
    Username: username,
    Firstname: firstname,
    Lastname: lastname,
    Email: email,
    City: city,
    Country: country

    Cheers,
    Bas

  • Picture of Bas Brands
    Thu, 20 Feb 2014, 4:41 PM
    smile Of course the template fields need to have the square brackets around them (see comment before mine) ..

    Grrrrrr -> Markdown
  • Picture of Darrell Taylor
    Thu, 6 Mar 2014, 8:08 PM
    Hi Bas,

    Are there any further developments on this excellent plugin? I'd really like to see the ability to include the user's password. Also, when I tried your plugin the default Moodle new user email was sent as well; how do I ensure that only one email goes out to each user?
  • Picture of Salim Karim
    Mon, 12 May 2014, 11:50 PM
    emailing not sending
  • Picture of Bruno Ferreira
    Tue, 10 Jun 2014, 12:15 AM
    Hi all,

    This is a great plugin, but i'm having a little problem. When I register a new user he receives two welcome emails. Can anyone help me solving this problem?
  • Picture of Bruno Ferreira
    Tue, 10 Jun 2014, 12:16 AM
    I'm using the version for moodle 2.2
  • Picture of Aster Blistok
    Sun, 22 Jun 2014, 11:51 AM
    Hi, is there any way that we can include custom profile fields in the e-mail output? To define template fields based on custom user profile fields?

    Thanks
  • Picture of Bas Brands
    Mon, 23 Jun 2014, 3:43 PM
    Hi Aster, This is not a feature of the plugin at the moment. I will add it to the wish list.
  • wen photo
    Sat, 28 Jun 2014, 2:40 PM
    Bas, thanks for such a wonderful plugin! I wonder if you could add to the wish list for including a initial "randomized" password in the Welcome email? I know we can use "changeme" to force students to change their initial password, but with a generic initial password, it is not really secure. It would be great if each student gets an different randomly generated initial password and that password is included in the Welcome message. Thanks again!
  • Picture of Bas Brands
    Sun, 29 Jun 2014, 3:21 PM
    Hi Wen Hao Chuang, thanks! Moodle already supports sending out randomized passwords when uploading users, simply leave the password field empty when doing a CSV upload. This plugin cannot access the users passwords since it is triggered after the password has been encrypted and stored in the database.
Please login to post comments