matheusfillipe | abd513e | 2021-05-11 03:29:11 -0300 | [diff] [blame] | 1 | <?php |
Marc Kupietz | 0215a44 | 2023-03-05 18:34:16 +0100 | [diff] [blame] | 2 | include "User.php"; |
| 3 | use \User as User; |
| 4 | |
matheusfillipe | abd513e | 2021-05-11 03:29:11 -0300 | [diff] [blame] | 5 | //Connecting to Redis server on localhost |
| 6 | function connect(){ |
| 7 | include 'config.php'; |
| 8 | $redis = new Redis(); |
| 9 | $redis->connect('127.0.0.1', 6379); |
| 10 | $redis->auth("$REDIS_PASS"); |
| 11 | return $redis; |
| 12 | } |
| 13 | function redis_get($key){ |
| 14 | $redis = connect(); |
| 15 | return json_decode($redis->get($key)); |
| 16 | } |
Marc Kupietz | 0215a44 | 2023-03-05 18:34:16 +0100 | [diff] [blame] | 17 | |
| 18 | function redis_get_user($key) { |
| 19 | $redis = connect(); |
| 20 | $data = json_decode($redis->get($key)); |
Marc Kupietz | 393930c | 2023-03-06 07:05:47 +0100 | [diff] [blame] | 21 | if ($data && gettype($data) == "object") { |
Marc Kupietz | ade9e3c | 2023-03-06 21:39:23 +0100 | [diff] [blame^] | 22 | $user = new User(); |
| 23 | foreach ($data as $key => $value) $user->{$key} = $value; |
| 24 | if (isset($data->password)) $user->set_password($data->password); |
| 25 | #$user = new User($data->username, $data->first_name, $data->last_name, $data->email, $data->password, $data->organization); |
Marc Kupietz | 393930c | 2023-03-06 07:05:47 +0100 | [diff] [blame] | 26 | return $user; |
| 27 | } else { |
| 28 | return null; |
| 29 | } |
Marc Kupietz | 0215a44 | 2023-03-05 18:34:16 +0100 | [diff] [blame] | 30 | } |
| 31 | |
matheusfillipe | abd513e | 2021-05-11 03:29:11 -0300 | [diff] [blame] | 32 | function redis_set($key, $data, $timeout=null){ |
| 33 | $redis = connect(); |
| 34 | $redis->set($key, json_encode($data), $timeout); |
| 35 | } |
| 36 | |
| 37 | function redis_inc_ipdata($ip, $attr, $get=false){ |
| 38 | $count = redis_get($ip); |
| 39 | if ($count){ |
| 40 | if (isset($count->$attr)) $count->$attr = $count->$attr+1; |
| 41 | else $count->$attr = 1; |
| 42 | }else $count = (object)[$attr=>1]; |
| 43 | |
| 44 | if (!$get) redis_set($ip, $count, 3600); |
| 45 | return $count->$attr; |
| 46 | } |
| 47 | |
| 48 | function redis_delete($key){ |
| 49 | $redis = connect(); |
| 50 | $redis->del($key); |
| 51 | } |