| Conditions | 7 | 
| Paths | 3 | 
| Total Lines | 33 | 
| Code Lines | 18 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Changes | 1 | ||
| Bugs | 0 | Features | 0 | 
| 1 | <?php  | 
            ||
| 25 | public function requestLimit(string $key, int $limit = 5, int $seconds = 60): bool  | 
            ||
| 26 |     { | 
            ||
| 27 | $session = new Session();  | 
            ||
| 28 | if ($session->has($key)  | 
            ||
| 29 | && $session->$key->time >= time()  | 
            ||
| 30 | && $session->$key->requests < $limit  | 
            ||
| 31 |         ) { | 
            ||
| 32 | $session->set(  | 
            ||
| 33 | $key,  | 
            ||
| 34 | [  | 
            ||
| 35 | "time" => time() + $seconds,  | 
            ||
| 36 | "requests" => $session->$key->requests + 1  | 
            ||
| 37 | ]  | 
            ||
| 38 | );  | 
            ||
| 39 | return false;  | 
            ||
| 40 | }  | 
            ||
| 41 | |||
| 42 | if ($session->has($key)  | 
            ||
| 43 | && $session->$key->time >= time()  | 
            ||
| 44 | && $session->$key->requests >= $limit  | 
            ||
| 45 |         ) { | 
            ||
| 46 | return true;  | 
            ||
| 47 | }  | 
            ||
| 48 | |||
| 49 | $session->set(  | 
            ||
| 50 | $key,  | 
            ||
| 51 | [  | 
            ||
| 52 | "time" => time() + $seconds,  | 
            ||
| 53 | "requests" => 1  | 
            ||
| 54 | ]  | 
            ||
| 55 | );  | 
            ||
| 56 | |||
| 57 | return false;  | 
            ||
| 58 | }  | 
            ||
| 59 | }  |