aboutsummaryrefslogtreecommitdiff
path: root/actions/avatar/remove.php
blob: 9cb40a760b2f418fd14286e6b58a486a50bc6fd5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
/**
 * Avatar remove action
 */

$user_guid = get_input('guid');
$user = get_user($user_guid);

if (!$user || !$user->canEdit()) {
	register_error(elgg_echo('avatar:remove:fail'));
	forward(REFERER);
}

// Delete all icons from diskspace
$icon_sizes = elgg_get_config('icon_sizes');
foreach ($icon_sizes as $name => $size_info) {
	$file = new ElggFile();
	$file->owner_guid = $user_guid;
	$file->setFilename("profile/{$user_guid}{$name}.jpg");
	$filepath = $file->getFilenameOnFilestore();
	if (!$file->delete()) {
		elgg_log("Avatar file remove failed. Remove $filepath manually, please.", 'WARNING');
	}
}

// Remove crop coords
unset($user->x1);
unset($user->x2);
unset($user->y1);
unset($user->y2);

// Remove icon
unset($user->icontime);

system_message(elgg_echo('avatar:remove:success'));
forward(REFERER);