zend-blog-3-backend
44 строки · 972.0 Байт
1<?php
2/**
3* Created by PhpStorm.
4* User: morontt
5* Date: 26.08.17
6* Time: 14:25
7*/
8
9namespace App\Entity\Traits;10
11use App\Entity\User;12use App\Entity\ViewCommentator;13use App\Utils\HashId;14
15trait Gravatar16{
17/**18* @return string
19*/
20public function getAvatarHash(): string21{22$userType = HashId::TYPE_COMMENTATOR;23
24if (method_exists($this, 'getVirtualUserId')) {25$id = $this->getVirtualUserId();26} else {27$id = $this->getId();28}29
30if ($id > ViewCommentator::USER_ID_OFFSET) {31$id -= ViewCommentator::USER_ID_OFFSET;32$userType = HashId::TYPE_USER;33}34
35$gender = ($this->getGender() === User::MALE) ? HashId::MALE : HashId::FEMALE;36$options = $userType | $gender;37
38if (method_exists($this, 'getAvatarVariant')) {39$options += $this->getAvatarVariant() << 4;40}41
42return HashId::hash($id, $options);43}44}
45