Default values when creating a user are send emails immediately.

If user has no data then message/email immediately

See #7717
1.10.x
Julio Montoya 10 years ago
parent 302b18f8fd
commit d892c6ca99
  1. 4
      main/admin/user_add.php
  2. 20
      main/inc/lib/notification.lib.php

@ -278,6 +278,10 @@ $defaults['active'] = 1;
$days = api_get_setting('account_valid_duration'); $days = api_get_setting('account_valid_duration');
$defaults['expiration_date'] = api_get_local_time('+'.$days.' day'); $defaults['expiration_date'] = api_get_local_time('+'.$days.' day');
$defaults['extra_mail_notify_invitation'] = 1;
$defaults['extra_mail_notify_message'] = 1;
$defaults['extra_mail_notify_group_message'] = 1;
$defaults['radio_expiration_date'] = 0; $defaults['radio_expiration_date'] = 0;
$defaults['status'] = STUDENT; $defaults['status'] = STUDENT;
$form->setDefaults($defaults); $form->setDefaults($defaults);

@ -233,21 +233,21 @@ class Notification extends Model
$content = $this->formatContent($content, $senderInfo); $content = $this->formatContent($content, $senderInfo);
$titleToNotification = $this->formatTitle($title, $senderInfo); $titleToNotification = $this->formatTitle($title, $senderInfo);
$setting_to_check = ''; $settingToCheck = '';
$avoid_my_self = false; $avoid_my_self = false;
switch ($this->type) { switch ($this->type) {
case self::NOTIFICATION_TYPE_DIRECT_MESSAGE: case self::NOTIFICATION_TYPE_DIRECT_MESSAGE:
case self::NOTIFICATION_TYPE_MESSAGE: case self::NOTIFICATION_TYPE_MESSAGE:
$setting_to_check = 'mail_notify_message'; $settingToCheck = 'mail_notify_message';
$defaultStatus = self::NOTIFY_MESSAGE_AT_ONCE; $defaultStatus = self::NOTIFY_MESSAGE_AT_ONCE;
break; break;
case self::NOTIFICATION_TYPE_INVITATION: case self::NOTIFICATION_TYPE_INVITATION:
$setting_to_check = 'mail_notify_invitation'; $settingToCheck = 'mail_notify_invitation';
$defaultStatus = self::NOTIFY_INVITATION_AT_ONCE; $defaultStatus = self::NOTIFY_INVITATION_AT_ONCE;
break; break;
case self::NOTIFICATION_TYPE_GROUP: case self::NOTIFICATION_TYPE_GROUP:
$setting_to_check = 'mail_notify_group_message'; $settingToCheck = 'mail_notify_group_message';
$defaultStatus = self::NOTIFY_GROUP_AT_ONCE; $defaultStatus = self::NOTIFY_GROUP_AT_ONCE;
$avoid_my_self = true; $avoid_my_self = true;
break; break;
@ -256,7 +256,7 @@ class Notification extends Model
break; break;
} }
$settingInfo = UserManager::get_extra_field_information_by_name($setting_to_check); $settingInfo = UserManager::get_extra_field_information_by_name($settingToCheck);
if (!empty($user_list)) { if (!empty($user_list)) {
foreach ($user_list as $user_id) { foreach ($user_list as $user_id) {
@ -268,11 +268,13 @@ class Notification extends Model
$userInfo = api_get_user_info($user_id); $userInfo = api_get_user_info($user_id);
// Extra field was deleted or removed? Use the default status. // Extra field was deleted or removed? Use the default status.
if (empty($settingInfo)) { $userSetting = $defaultStatus;
$userSetting = $defaultStatus;
} else { if (!empty($settingInfo)) {
$extra_data = UserManager::get_extra_user_data($user_id); $extra_data = UserManager::get_extra_user_data($user_id);
$userSetting = $extra_data[$setting_to_check]; if (isset($extra_data[$settingToCheck]) && !empty($extra_data[$settingToCheck])) {
$userSetting = $extra_data[$settingToCheck];
}
} }
$sendDate = null; $sendDate = null;

Loading…
Cancel
Save