Completed
Push — 3.1 ( d59679...4b8741 )
by Jeroen
62:38 queued 13s
created

mod/uservalidationbyemail/lib/functions.php (1 issue)

1
<?php
2
/**
3
 * Helper functions
4
 *
5
 * @package Elgg.Core.Plugin
6
 * @subpackage UserValidationByEmail
7
 */
8
9
/**
10
 * Request user validation email.
11
 * Send email out to the address and request a confirmation.
12
 *
13
 * @param int $user_guid The user's GUID
14
 * @return mixed
15
 */
16
function uservalidationbyemail_request_validation($user_guid) {
0 ignored issues
show
Function name "uservalidationbyemail_request_validation" is not in camel caps format
Loading history...
17
18
	$user_guid = (int) $user_guid;
19
	$user = get_user($user_guid);
20
	if (!$user instanceof ElggUser) {
21
		return false;
22
	}
23
	
24
	$site = elgg_get_site_entity();
25
	
26
	// Work out validate link
27
	$link = elgg_generate_url('account:validation:email:confirm', [
28
		'u' => $user->guid,
29
	]);
30
	$link = elgg_http_get_signed_url($link);
31
	
32
	// Get email to show in the next page
33
	elgg_get_session()->set('emailsent', $user->email);
34
35
	$subject = elgg_echo('email:validate:subject', [
36
			$user->getDisplayName(),
37
			$site->getDisplayName()
38
		], $user->language
39
	);
40
41
	$body = elgg_echo('email:validate:body', [
42
			$user->getDisplayName(),
43
			$site->getDisplayName(),
44
			$link,
45
			$site->getDisplayName(),
46
			$site->getURL(),
47
		], $user->language
48
	);
49
50
	$params = [
51
		'action' => 'uservalidationbyemail',
52
		'object' => $user,
53
		'link' => $link,
54
	];
55
	
56
	// Send validation email
57
	return notify_user($user->guid, $site->guid, $subject, $body, $params, 'email');
58
}
59