$user_actions) { if (!in_array($notifyuser, $action_notify_users)) { // User not set to receive action emails logScript(" - Skipping action notification email for user ref " . $notifyuser . " as not configured"); } $actionuser = get_user($notifyuser); $usermail = $actionuser["email"]; // Set timezone if required $default_user_local_timezone = $user_local_timezone; get_config_option(['user' => $notifyuser, 'usergroup' => $actionuser['usergroup']], 'user_local_timezone', $user_local_timezone, $default_user_local_timezone); if (!filter_var($usermail, FILTER_VALIDATE_EMAIL)) { logScript(" - Skipping action notification email for user ref " . $notifyuser . " due to invalid email: " . $usermail); continue; } // Construct email notification logScript(" - Checking action email notification for user " . $usermail); $usernotification = new ResourceSpaceUserNotification(); $usernotification->set_subject($applicationname . ": "); $usernotification->append_subject('lang_actions_email_new_actions_title'); $usernotification->set_text('
'); $usernotification->append_text('lang_actions_email_new_actions_intro'); $usernotification->append_text('

'); $usernotification->append_text('
'); $usernotification->append_text(''); foreach ($user_actions as $actiontype => $type_actions) { foreach ($type_actions as $user_action) { $actionlinks = hook("actioneditlink", '', array($user_action)); if ($actionlinks) { $actioneditlink = $actionlinks["editlink"]; $actionviewlink = $actionlinks["viewlink"]; } else { $actioneditlink = ''; $actionviewlink = ''; } switch ($user_action["type"]) { case "resourcereview": $actioneditlink = $baseurl . "/pages/edit.php"; $actionviewlink = $baseurl . "/pages/view.php"; break; case "resourcerequest": $actioneditlink = $baseurl . "/pages/team/team_request_edit.php"; break; case "userrequest": $actioneditlink = $baseurl . "/pages/team/team_user_edit.php"; break; default: break; } $linkparams["ref"] = $user_action["ref"]; $editlink = ($actioneditlink == '') ? '' : generateURL($actioneditlink, $linkparams); $viewlink = ($actionviewlink == '') ? '' : generateURL($actionviewlink, $linkparams); $usernotification->append_text(''); $usernotification->append_text(''); $actionfromuser = get_user($user_action["user"]); if ($actionfromuser === false) { // User may have been deleted $actionusername = $user_action["user"]; } else { $actionusername = isset($actionfromuser["fullname"]) ? $actionfromuser["fullname"] : $actionfromuser["username"]; } $usernotification->append_text(''); $usernotification->append_text(''); $usernotification->append_text(''); $usernotification->append_text(''); } } $usernotification->append_text('
'); $usernotification->append_text('lang_date'); $usernotification->append_text(''); $usernotification->append_text('lang_property-reference'); $usernotification->append_text(''); $usernotification->append_text('lang_user'); $usernotification->append_text(''); $usernotification->append_text('lang_description'); $usernotification->append_text(''); $usernotification->append_text('lang_type'); $usernotification->append_text(''); $usernotification->append_text('lang_tools'); $usernotification->append_text('
' . nicedate($user_action["date"], true, true, true) . '' . $user_action["ref"] . '' . escape($actionusername) . '' . escape(tidy_trim((string) $user_action["description"], 200)) . ''); $langtype = 'actions_type_' . $user_action['type']; $usernotification->append_text('lang_' . $langtype); $usernotification->append_text('
'); if ($editlink != "") { $usernotification->append_text(''); $usernotification->append_text('lang_action-edit'); $usernotification->append_text('  '); } if ($viewlink != "") { $usernotification->append_text(''); $usernotification->append_text('lang_view'); $usernotification->append_text(''); } $usernotification->append_text('
'); $userprefurl = $baseurl . "/pages/user/user_preferences.php#UserPreferenceEmailSection"; $usernotification->append_text('

'); $usernotification->append_text('lang_actions_introtext'); $usernotification->append_text('
' . $userprefurl . ''); $usernotification->append_text('
'); $usernotification->append_text('
'); $usernotification->append_text('
'); $usernotification->append_text(''); if (count($user_actions) > 0) { // Send the email logScript(" - Sending summary to user ref " . $notifyuser . ", email " . $usermail); send_user_notification([$notifyuser], $usernotification, true); } // End of each user's actions } # Update last run date/time. set_sysvar("last_action_notification_emails", $this_run_start);