@@ -43,12 +43,12 @@ public function getLogoutUrl(): string
4343 }
4444
4545 /**
46- * Vrátí stav přihlášení uživatele, každých 5 minut obnoví přihlášení.
46+ * Vrátí stav přihlášení uživatele, každých 15 minut obnoví přihlášení.
4747 */
4848 public function isLoggedIn (): bool
4949 {
5050 $ logoutTime = clone ($ this ->skautIs ->getUser ()->getLogoutDate ());
51- $ hardCheck = $ logoutTime ->diff (new DateTimeImmutable ())->i < 25 ; // pokud od posledniho obnoveni prihlaseni ubehlo 5 minut
51+ $ hardCheck = $ logoutTime ->diff (new DateTimeImmutable ())->i < 15 ; // pokud od posledniho obnoveni prihlaseni ubehlo 15 minut
5252
5353 return $ this ->skautIs ->getUser ()->isLoggedIn ($ hardCheck );
5454 }
@@ -203,27 +203,31 @@ public function getUnitId(): int|null
203203 */
204204 public function getValidMembership (int $ personId ): stdClass |null
205205 {
206- $ membership = $ this ->skautIs ->org ->MembershipAllPerson ([
206+ $ memberships = $ this ->skautIs ->org ->MembershipAllPerson ([
207207 'ID_Login ' => $ this ->skautIs ->getUser ()->getLoginId (),
208208 'ID_Person ' => $ personId ,
209- 'ID_MembershipType ' => 'radne ' ,
210209 'IsValid ' => true ,
211210 ]);
212211
213- if (empty ($ membership )) {
214- $ membership = $ this ->skautIs ->org ->MembershipAllPerson ([
215- 'ID_Login ' => $ this ->skautIs ->getUser ()->getLoginId (),
216- 'ID_Person ' => $ personId ,
217- 'ID_MembershipType ' => 'cestne ' ,
218- 'IsValid ' => true ,
219- ]);
212+ if (empty ($ memberships )) {
213+ return null ;
214+ }
215+
216+ $ membershipsArray = $ memberships ->MembershipAllOutput instanceof stdClass ? [$ memberships ->MembershipAllOutput ] : $ memberships ->MembershipAllOutput ;
217+
218+ foreach ($ membershipsArray as $ membership ) {
219+ if ($ membership ->ID_MembershipType === 'radne ' ) {
220+ return $ membership ;
221+ }
222+ }
220223
221- if (empty ($ membership )) {
222- return null ;
224+ foreach ($ membershipsArray as $ membership ) {
225+ if ($ membership ->ID_MembershipType === 'cestne ' ) {
226+ return $ membership ;
223227 }
224228 }
225229
226- return $ membership -> MembershipAllOutput ;
230+ return null ;
227231 }
228232
229233 /**
0 commit comments