aboutsummaryrefslogtreecommitdiffstats
path: root/core/namespace/User/Item.php
blob: a4ab7997537ce2f81b670cb45efe275a4da1d121 (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
<?php
namespace User;

class Item extends \Item {
	const CONFIGURATION = 'USER';

	#===============================================================================
	# Return absolute user URL
	#===============================================================================
	public function getURL(): string {
		if(\Application::get('USER.SLUG_URLS')) {
			return \Application::getUserURL("{$this->Attribute->get('slug')}/");
		}

		return \Application::getUserURL("{$this->Attribute->get('id')}/");
	}

	#===============================================================================
	# Return unique pseudo GUID
	#===============================================================================
	public function getGUID(): string {
		foreach(['id', 'time_insert'] as $attribute) {
			$attributes[] = $this->Attribute->get($attribute);
		}

		return sha1(implode(NULL, $attributes));
	}

	#===============================================================================
	# Compare plaintext password with hashed password from database
	#===============================================================================
	public function comparePassword($password): bool {
		return password_verify($password, $this->Attribute->get('password'));
	}
}