PluginProbe ʕ •ᴥ•ʔ
FAPI Member / trunk
FAPI Member vtrunk
2.2.33 2.2.32 trunk 1.9.47 2.1.18 2.2.24 2.2.25 2.2.26 2.2.28 2.2.29 2.2.30 2.2.31
fapi-member / src / Repository / MembershipHistoryRepository.php
fapi-member / src / Repository Last commit date
EmailRepository.php 1 year ago LevelOrderRepository.php 1 year ago LevelRepository.php 1 year ago MemberActivityRepository.php 1 year ago MembershipChangeRepository.php 1 year ago MembershipHistoryRepository.php 1 year ago MembershipRepository.php 1 year ago PageRepository.php 1 year ago Repository.php 2 years ago SettingsRepository.php 1 year ago UserRepository.php 3 weeks ago
MembershipHistoryRepository.php
49 lines
1 <?php declare(strict_types=1);
2
3 namespace FapiMember\Repository;
4
5 use FapiMember\Model\Enums\Keys\MetaKey;
6 use FapiMember\Model\Membership;
7
8 class MembershipHistoryRepository extends MembershipRepository
9 {
10
11 public function __construct()
12 {
13 parent::__construct();
14
15 $this->key = MetaKey::MEMBERSHIP_HISTORY;
16 }
17
18 public function update(int $userId, Membership $membership): void
19 {
20 $meta = $this->getUserMeta($userId);
21
22 $meta[] = $membership->jsonSerialize();
23
24 $this->updateUserMeta($userId, $meta);
25 }
26
27 /** @return array<Membership> */
28 public function getHistoryByUserId(int $userId): array
29 {
30 $meta = $this->getUserMeta($userId);
31
32 return $this->metaToMemberships($userId, $meta);
33 }
34
35 /** @deprecated */
36 public function hadUserMembershipBefore(int $userId, int $levelId): bool
37 {
38 $memberships = $this->getHistoryByUserId($userId);
39
40 foreach ($memberships as $membership) {
41 if ($membership->getLevelId() === $levelId) {
42 return true;
43 }
44 }
45
46 return false;
47 }
48 }
49