Passed
Push — main ( 723093...1f3d08 )
by Miaad
01:40
created
src/receiver/receiver.php 2 patches
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -32,13 +32,13 @@  discard block
 block discarded – undo
32 32
         if (settings::$telegram_verify) {
33 33
             $ip = $ip ?? tools::remoteIP();
34 34
             if (!tools::isTelegram($ip)) {
35
-                logger::write('not authorized access denied. IP : '. $ip ?? 'unknown',loggerTypes::WARNING);
35
+                logger::write('not authorized access denied. IP : '.$ip ?? 'unknown', loggerTypes::WARNING);
36 36
                 BPT::exit();
37 37
             }
38 38
         }
39 39
     }
40 40
 
41
-    protected static function processUpdate(string|stdClass|update $update = null): void {
41
+    protected static function processUpdate(string | stdClass | update $update = null): void {
42 42
         if (!is_object($update)) {
43 43
             $update = json_decode($update ?? file_get_contents("php://input"));
44 44
             if (!$update) {
@@ -46,7 +46,7 @@  discard block
 block discarded – undo
46 46
             }
47 47
         }
48 48
 
49
-        if (!is_a($update,'update')) {
49
+        if (!is_a($update, 'update')) {
50 50
             $update = new update($update);
51 51
         }
52 52
 
@@ -57,7 +57,7 @@  discard block
 block discarded – undo
57 57
         db::save();
58 58
     }
59 59
 
60
-    protected static function setMessageExtra (update &$update): void {
60
+    protected static function setMessageExtra(update & $update): void {
61 61
         if ((isset($update->message) && isset($update->message->text)) || (isset($update->edited_message) && isset($update->edited_message->text))) {
62 62
             $type = isset($update->message) ? 'message' : 'edited_message';
63 63
             $text = &$update->$type->text;
@@ -130,7 +130,7 @@  discard block
 block discarded – undo
130 130
                 BPT::$handler->something_else(BPT::$update);
131 131
             }
132 132
             else {
133
-                logger::write('Update received but handlers are not set',loggerTypes::WARNING);
133
+                logger::write('Update received but handlers are not set', loggerTypes::WARNING);
134 134
             }
135 135
         }
136 136
     }
Please login to merge, or discard this patch.
Braces   +10 added lines, -20 removed lines patch added patch discarded remove patch
@@ -85,51 +85,41 @@
 block discarded – undo
85 85
                 if (self::handlerExist('message')) {
86 86
                     BPT::$handler->message(BPT::$update->message);
87 87
                 }
88
-            }
89
-            elseif (isset(BPT::$update->edited_message)) {
88
+            } elseif (isset(BPT::$update->edited_message)) {
90 89
                 if (self::handlerExist('edited_message')) {
91 90
                     BPT::$handler->edited_message(BPT::$update->edited_message);
92 91
                 }
93
-            }
94
-            elseif (isset(BPT::$update->channel_post)) {
92
+            } elseif (isset(BPT::$update->channel_post)) {
95 93
                 if (self::handlerExist('channel_post')) {
96 94
                     BPT::$handler->channel_post(BPT::$update->channel_post);
97 95
                 }
98
-            }
99
-            elseif (isset(BPT::$update->edited_channel_post)) {
96
+            } elseif (isset(BPT::$update->edited_channel_post)) {
100 97
                 if (self::handlerExist('edited_channel_post')) {
101 98
                     BPT::$handler->edited_channel_post(BPT::$update->edited_channel_post);
102 99
                 }
103
-            }
104
-            elseif (isset(BPT::$update->inline_query)) {
100
+            } elseif (isset(BPT::$update->inline_query)) {
105 101
                 if (self::handlerExist('inline_query')) {
106 102
                     BPT::$handler->inline_query(BPT::$update->inline_query);
107 103
                 }
108
-            }
109
-            elseif (isset(BPT::$update->callback_query)) {
104
+            } elseif (isset(BPT::$update->callback_query)) {
110 105
                 if (self::handlerExist('callback_query')) {
111 106
                     BPT::$handler->callback_query(BPT::$update->callback_query);
112 107
                 }
113
-            }
114
-            elseif (isset(BPT::$update->my_chat_member)) {
108
+            } elseif (isset(BPT::$update->my_chat_member)) {
115 109
                 if (self::handlerExist('my_chat_member')) {
116 110
                     BPT::$handler->my_chat_member(BPT::$update->my_chat_member);
117 111
                 }
118
-            }
119
-            elseif (isset(BPT::$update->chat_member)) {
112
+            } elseif (isset(BPT::$update->chat_member)) {
120 113
                 if (self::handlerExist('chat_member')) {
121 114
                     BPT::$handler->chat_member(BPT::$update->chat_member);
122 115
                 }
123
-            }
124
-            elseif (isset(BPT::$update->chat_join_request)) {
116
+            } elseif (isset(BPT::$update->chat_join_request)) {
125 117
                 if (self::handlerExist('chat_join_request')) {
126 118
                     BPT::$handler->chat_join_request(BPT::$update->chat_join_request);
127 119
                 }
128
-            }
129
-            elseif (self::handlerExist('something_else')) {
120
+            } elseif (self::handlerExist('something_else')) {
130 121
                 BPT::$handler->something_else(BPT::$update);
131
-            }
132
-            else {
122
+            } else {
133 123
                 logger::write('Update received but handlers are not set',loggerTypes::WARNING);
134 124
             }
135 125
         }
Please login to merge, or discard this patch.
src/tools.php 2 patches
Spacing   +51 added lines, -51 removed lines patch added patch discarded remove patch
@@ -29,7 +29,7 @@  discard block
 block discarded – undo
29 29
 /**
30 30
  * tools class , gather what ever you need
31 31
  */
32
-class tools{
32
+class tools {
33 33
     /**
34 34
      * Check the given username format
35 35
      *
@@ -41,7 +41,7 @@  discard block
 block discarded – undo
41 41
      *
42 42
      * @return bool
43 43
      */
44
-    public static function isUsername (string $username): bool {
44
+    public static function isUsername(string $username): bool {
45 45
         $length = strlen($username);
46 46
         return !str_contains($username, '__') && $length >= 5 && $length <= 33 && preg_match('/^@?([a-zA-Z])(\w{4,31})$/', $username);
47 47
     }
@@ -58,7 +58,7 @@  discard block
 block discarded – undo
58 58
      *
59 59
      * @return bool
60 60
      */
61
-    public static function ipInRange (string $ip, string $range): bool {
61
+    public static function ipInRange(string $ip, string $range): bool {
62 62
         if (!str_contains($range, '/')) {
63 63
             $range .= '/32';
64 64
         }
@@ -78,7 +78,7 @@  discard block
 block discarded – undo
78 78
      *
79 79
      * @return bool
80 80
      */
81
-    public static function isTelegram (string $ip): bool {
81
+    public static function isTelegram(string $ip): bool {
82 82
         return tools::ipInRange($ip, '149.154.160.0/20') || tools::ipInRange($ip, '91.108.4.0/22');
83 83
     }
84 84
 
@@ -93,10 +93,10 @@  discard block
 block discarded – undo
93 93
      *
94 94
      * @return bool
95 95
      */
96
-    public static function isCloudFlare (string $ip): bool {
96
+    public static function isCloudFlare(string $ip): bool {
97 97
         $cf_ips = ['173.245.48.0/20', '103.21.244.0/22', '103.22.200.0/22', '103.31.4.0/22', '141.101.64.0/18', '108.162.192.0/18', '190.93.240.0/20', '188.114.96.0/20', '197.234.240.0/22', '198.41.128.0/17', '162.158.0.0/15', '104.16.0.0/12', '104.24.0.0/14', '172.64.0.0/13', '131.0.72.0/22'];
98 98
         foreach ($cf_ips as $cf_ip) {
99
-            if (self::ipInRange($ip,$cf_ip)) {
99
+            if (self::ipInRange($ip, $cf_ip)) {
100 100
                 return true;
101 101
             }
102 102
         }
@@ -114,10 +114,10 @@  discard block
 block discarded – undo
114 114
      *
115 115
      * @return bool
116 116
      */
117
-    public static function isArvanCloud (string $ip): bool {
117
+    public static function isArvanCloud(string $ip): bool {
118 118
         $ar_ips = ['185.143.232.0/22', '92.114.16.80/28', '2.146.0.0/28', '46.224.2.32/29', '89.187.178.96/29', '195.181.173.128/29', '89.187.169.88/29', '188.229.116.16/29', '83.123.255.56/31', '164.138.128.28/31', '94.182.182.28/30', '185.17.115.176/30', '5.213.255.36/31', '138.128.139.144/29', '5.200.14.8/29', '188.122.68.224/29', '188.122.83.176/29', '213.179.217.16/29', '185.179.201.192/29', '43.239.139.192/29', '213.179.197.16/29', '213.179.201.192/29', '109.200.214.248/29', '138.128.141.16/29', '188.122.78.136/29', '213.179.211.32/29', '103.194.164.24/29', '185.50.105.136/29', '213.179.213.16/29', '162.244.52.120/29', '188.122.80.240/29', '109.200.195.64/29', '109.200.199.224/29', '185.228.238.0/28', '94.182.153.24/29', '94.101.182.0/27', '37.152.184.208/28', '78.39.156.192/28', '158.255.77.238/31', '81.12.28.16/29', '176.65.192.202/31', '2.144.3.128/28', '89.45.48.64/28', '37.32.16.0/27', '37.32.17.0/27', '37.32.18.0/27'];
119 119
         foreach ($ar_ips as $ar_ip) {
120
-            if (self::ipInRange($ip,$ar_ip)) {
120
+            if (self::ipInRange($ip, $ar_ip)) {
121 121
                 return true;
122 122
             }
123 123
         }
@@ -137,11 +137,11 @@  discard block
 block discarded – undo
137 137
      *
138 138
      * @return bool|user return array when verify is active and token is true array of telegram getMe result
139 139
      */
140
-    public static function isToken (string $token, bool $verify = false): bool|user {
140
+    public static function isToken(string $token, bool $verify = false): bool | user {
141 141
         if (!preg_match('/^(\d{8,10}):[\w\-]{35}$/', $token)) {
142 142
             return false;
143 143
         }
144
-        if (!$verify){
144
+        if (!$verify) {
145 145
             return true;
146 146
         }
147 147
         $res = telegram::me($token);
@@ -171,14 +171,14 @@  discard block
 block discarded – undo
171 171
      *
172 172
      * @return bool
173 173
      */
174
-    public static function isJoined (array|string|int $ids , int|null $user_id = null): bool {
174
+    public static function isJoined(array | string | int $ids, int | null $user_id = null): bool {
175 175
         if (!is_array($ids)) {
176 176
             $ids = [$ids];
177 177
         }
178 178
         $user_id = $user_id ?? request::catchFields('user_id');
179 179
 
180 180
         foreach ($ids as $id) {
181
-            $check = telegram::getChatMember($id,$user_id);
181
+            $check = telegram::getChatMember($id, $user_id);
182 182
             if (telegram::$status) {
183 183
                 $check = $check->status;
184 184
                 if ($check === chatMemberStatus::LEFT || $check === chatMemberStatus::KICKED) {
@@ -205,7 +205,7 @@  discard block
 block discarded – undo
205 205
      *
206 206
      * @return array keys will be id and values will be bool(null for not founded ids)
207 207
      */
208
-    public static function joinChecker (array|string|int $ids , int|null $user_id = null): array {
208
+    public static function joinChecker(array | string | int $ids, int | null $user_id = null): array {
209 209
         if (!is_array($ids)) {
210 210
             $ids = [$ids];
211 211
         }
@@ -213,7 +213,7 @@  discard block
 block discarded – undo
213 213
 
214 214
         $result = [];
215 215
         foreach ($ids as $id) {
216
-            $check = telegram::getChatMember($id,$user_id);
216
+            $check = telegram::getChatMember($id, $user_id);
217 217
             if (telegram::$status) {
218 218
                 $check = $check->status;
219 219
                 $result[$id] = $check !== chatMemberStatus::LEFT && $check !== chatMemberStatus::KICKED;
@@ -233,7 +233,7 @@  discard block
 block discarded – undo
233 233
      * @return bool
234 234
      */
235 235
     public static function isShorted(string $text): bool{
236
-        return preg_match('/^[a-zA-Z0-9]+$/',$text);
236
+        return preg_match('/^[a-zA-Z0-9]+$/', $text);
237 237
     }
238 238
 
239 239
     /**
@@ -250,7 +250,7 @@  discard block
 block discarded – undo
250 250
      *
251 251
      * @return string|int|false string for formatted data , int for normal data , false when size can not be found(file not found or ...)
252 252
      */
253
-    public static function size (string $path, bool $format = true): string|int|false {
253
+    public static function size(string $path, bool $format = true): string | int | false {
254 254
         if (filter_var($path, FILTER_VALIDATE_URL)) {
255 255
             $ch = curl_init($path);
256 256
             curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
@@ -283,7 +283,7 @@  discard block
 block discarded – undo
283 283
      * @return bool
284 284
      * @throws bptException
285 285
      */
286
-    public static function delete (string $path, bool $sub = true): bool {
286
+    public static function delete(string $path, bool $sub = true): bool {
287 287
         $path = realpath($path);
288 288
         if (!is_dir($path)) {
289 289
             return unlink($path);
@@ -292,7 +292,7 @@  discard block
 block discarded – undo
292 292
             return rmdir($path);
293 293
         }
294 294
         if (!$sub) {
295
-            logger::write("tools::delete function used\ndelete function cannot delete folder because its have subFiles and sub parameter haven't true value",loggerTypes::ERROR);
295
+            logger::write("tools::delete function used\ndelete function cannot delete folder because its have subFiles and sub parameter haven't true value", loggerTypes::ERROR);
296 296
             throw new bptException('DELETE_FOLDER_HAS_SUB');
297 297
         }
298 298
         $it = new RecursiveDirectoryIterator($path, FilesystemIterator::SKIP_DOTS);
@@ -314,7 +314,7 @@  discard block
 block discarded – undo
314 314
      * @return bool
315 315
      * @throws bptException when zip extension not found
316 316
      */
317
-    public static function zip (string $path, string $destination): bool {
317
+    public static function zip(string $path, string $destination): bool {
318 318
         if (!extension_loaded('zip')) {
319 319
             logger::write("tools::zip function used\nzip extension is not found , It may not be installed or enabled", loggerTypes::ERROR);
320 320
             throw new bptException('ZIP_EXTENSION_MISSING');
@@ -349,14 +349,14 @@  discard block
 block discarded – undo
349 349
      *
350 350
      * @return bool true on success and false in failure
351 351
      */
352
-    public static function downloadFile (string $url, string $path,int $chunk_size = 512): bool {
352
+    public static function downloadFile(string $url, string $path, int $chunk_size = 512): bool {
353 353
         $file = fopen($url, 'rb');
354 354
         if (!$file) return false;
355 355
         $path = fopen($path, 'wb');
356 356
         if (!$path) return false;
357 357
 
358 358
         $length = $chunk_size * 1024;
359
-        while (!feof($file)){
359
+        while (!feof($file)) {
360 360
             fwrite($path, fread($file, $length), $length);
361 361
         }
362 362
         fclose($path);
@@ -379,10 +379,10 @@  discard block
 block discarded – undo
379 379
      *
380 380
      * @return string
381 381
      */
382
-    public static function byteFormat (int $byte, int $precision = 2, bool $space_between = true): string {
382
+    public static function byteFormat(int $byte, int $precision = 2, bool $space_between = true): string {
383 383
         $rate_counter = 0;
384 384
 
385
-        while ($byte > 1024){
385
+        while ($byte > 1024) {
386 386
             $byte /= 1024;
387 387
             $rate_counter++;
388 388
         }
@@ -391,7 +391,7 @@  discard block
 block discarded – undo
391 391
             $byte = round($byte, $precision);
392 392
         }
393 393
 
394
-        return $byte . ($space_between ? ' ' : '') . ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB'][$rate_counter];
394
+        return $byte.($space_between ? ' ' : '').['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB'][$rate_counter];
395 395
     }
396 396
 
397 397
     /**
@@ -408,10 +408,10 @@  discard block
 block discarded – undo
408 408
      *
409 409
      * @return string|false return false when mode is incorrect
410 410
      */
411
-    public static function modeEscape (string $text, string $mode = parseMode::HTML): string|false {
411
+    public static function modeEscape(string $text, string $mode = parseMode::HTML): string | false {
412 412
         return match ($mode) {
413
-            parseMode::HTML => str_replace(['&', '<', '>',], ["&amp;", "&lt;", "&gt;",], $text),
414
-            parseMode::MARKDOWN => str_replace(['\\', '_', '*', '`', '['], ['\\\\', '\_', '\*', '\`', '\[',], $text),
413
+            parseMode::HTML => str_replace(['&', '<', '>', ], ["&amp;", "&lt;", "&gt;", ], $text),
414
+            parseMode::MARKDOWN => str_replace(['\\', '_', '*', '`', '['], ['\\\\', '\_', '\*', '\`', '\[', ], $text),
415 415
             parseMode::MARKDOWNV2 => str_replace(
416 416
                 ['_', '*', '[', ']', '(', ')', '~', '`', '>', '#', '+', '-', '=', '|', '{', '}', '.', '!', '\\'],
417 417
                 ['\_', '\*', '\[', '\]', '\(', '\)', '\~', '\`', '\>', '\#', '\+', '\-', '\=', '\|', '\{', '\}', '\.', '\!', '\\\\'],
@@ -450,9 +450,9 @@  discard block
 block discarded – undo
450 450
      * @return array{status: string,year: string,month: string,day: string,hour: string,minute: string,second: string}
451 451
      * @throws Exception
452 452
      */
453
-    public static function timeDiff (int|string $target_time, int|string|null $base_time = null): array {
453
+    public static function timeDiff(int | string $target_time, int | string | null $base_time = null): array {
454 454
         $base_time = new DateTime($base_time ?? '@'.time());
455
-        $target_time = new DateTime(is_numeric($target_time) ? '@' . $target_time : $target_time . ' +00:00');
455
+        $target_time = new DateTime(is_numeric($target_time) ? '@'.$target_time : $target_time.' +00:00');
456 456
 
457 457
         $diff = $base_time->diff($target_time);
458 458
 
@@ -479,12 +479,12 @@  discard block
 block discarded – undo
479 479
      *
480 480
      * @return string[]|string
481 481
      */
482
-    public static function realEscapeString(string|array $input): string|array {
483
-        if(is_array($input)) {
482
+    public static function realEscapeString(string | array $input): string | array {
483
+        if (is_array($input)) {
484 484
             return array_map(__METHOD__, $input);
485 485
         }
486 486
 
487
-        if(!empty($input) && is_string($input)) {
487
+        if (!empty($input) && is_string($input)) {
488 488
             return str_replace(['\\', "\0", "\n", "\r", "'", '"', "\x1a"], ['\\\\', '\\0', '\\n', '\\r', "\\'", '\\"', '\\Z'], $input);
489 489
         }
490 490
 
@@ -502,7 +502,7 @@  discard block
 block discarded – undo
502 502
      *
503 503
      * @return string[]|string
504 504
      */
505
-    public static function strReplaceFirst(string|array $search, string|array $replace, string|array $subject): string|array {
505
+    public static function strReplaceFirst(string | array $search, string | array $replace, string | array $subject): string | array {
506 506
         $pos = strpos($subject, $search);
507 507
         if ($pos !== false) {
508 508
             return substr_replace($subject, $replace, $pos, strlen($search));
@@ -519,7 +519,7 @@  discard block
 block discarded – undo
519 519
      *
520 520
      * @return string see possible values in fileType class
521 521
      */
522
-    public static function fileType (string $file_id): string {
522
+    public static function fileType(string $file_id): string {
523 523
         $data = base64_decode(str_pad(strtr($file_id, '-_', '+/'), strlen($file_id) % 4, '='));
524 524
         $new = '';
525 525
         $last = '';
@@ -533,7 +533,7 @@  discard block
 block discarded – undo
533 533
                 $last = $char;
534 534
             }
535 535
         }
536
-        $data = unpack('VtypeId/Vdc_id', $new . $last);
536
+        $data = unpack('VtypeId/Vdc_id', $new.$last);
537 537
         $data['typeId'] = $data['typeId'] & ~33554432 & ~16777216;
538 538
         return [
539 539
             fileTypes::THUMBNAIL,
@@ -571,10 +571,10 @@  discard block
 block discarded – undo
571 571
      *
572 572
      * @return string
573 573
      */
574
-    public static function randomString (int $length = 16, string $characters = 'aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ'): string {
574
+    public static function randomString(int $length = 16, string $characters = 'aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ'): string {
575 575
         $rand_string = '';
576 576
         $char_len = strlen($characters) - 1;
577
-        for ($i = 0; $i < $length; $i ++) {
577
+        for ($i = 0; $i < $length; $i++) {
578 578
             $rand_string .= $characters[rand(0, $char_len)];
579 579
         }
580 580
         return $rand_string;
@@ -603,7 +603,7 @@  discard block
 block discarded – undo
603 603
      * @return inlineKeyboardMarkup|replyKeyboardMarkup replyKeyboardMarkup for keyboard and inlineKeyboardMarkup for inline
604 604
      * @throws bptException
605 605
      */
606
-    public static function easyKey(array $keyboard = [], array $inline = []): inlineKeyboardMarkup|replyKeyboardMarkup {
606
+    public static function easyKey(array $keyboard = [], array $inline = []): inlineKeyboardMarkup | replyKeyboardMarkup {
607 607
         if (!empty($keyboard)) {
608 608
             $keyboard_object = new replyKeyboardMarkup();
609 609
             $keyboard_object->setResize_keyboard($keyboard['resize'] ?? true);
@@ -667,7 +667,7 @@  discard block
 block discarded – undo
667 667
             return $keyboard_object;
668 668
         }
669 669
         else {
670
-            logger::write("tools::eKey function used\nkeyboard or inline parameter must be set",loggerTypes::ERROR);
670
+            logger::write("tools::eKey function used\nkeyboard or inline parameter must be set", loggerTypes::ERROR);
671 671
             throw new bptException('ARGUMENT_NOT_FOUND_KEYBOARD_INLINE');
672 672
         }
673 673
     }
@@ -684,10 +684,10 @@  discard block
 block discarded – undo
684 684
      *
685 685
      * @return string
686 686
      */
687
-    public static function inviteLink (int $user_id = null, string $bot_username = null): string {
687
+    public static function inviteLink(int $user_id = null, string $bot_username = null): string {
688 688
         if (empty($user_id)) $user_id = telegram::catchFields(fields::USER_ID);
689 689
         if (empty($bot_username)) $bot_username = telegram::getMe()->username;
690
-        return 'https://t.me/' . str_replace('@', '', $bot_username) . '?start=ref_' . tools::shortEncode($user_id);
690
+        return 'https://t.me/'.str_replace('@', '', $bot_username).'?start=ref_'.tools::shortEncode($user_id);
691 691
     }
692 692
 
693 693
     /**
@@ -711,9 +711,9 @@  discard block
 block discarded – undo
711 711
      * @return string|bool|array{hash:string, key:string, iv:string}
712 712
      * @throws bptException
713 713
      */
714
-    public static function codec (string $action, string $text, string $key = null, string $iv = null): bool|array|string {
714
+    public static function codec(string $action, string $text, string $key = null, string $iv = null): bool | array | string {
715 715
         if (!extension_loaded('openssl')) {
716
-            logger::write("tools::codec function used\nopenssl extension is not found , It may not be installed or enabled",loggerTypes::ERROR);
716
+            logger::write("tools::codec function used\nopenssl extension is not found , It may not be installed or enabled", loggerTypes::ERROR);
717 717
             throw new bptException('OPENSSL_EXTENSION_MISSING');
718 718
         }
719 719
         if ($action === codecAction::ENCRYPT) {
@@ -724,17 +724,17 @@  discard block
 block discarded – undo
724 724
         }
725 725
         elseif ($action === codecAction::DECRYPT) {
726 726
             if (empty($key)) {
727
-                logger::write("tools::codec function used\nkey parameter is not set",loggerTypes::ERROR);
727
+                logger::write("tools::codec function used\nkey parameter is not set", loggerTypes::ERROR);
728 728
                 throw new bptException('ARGUMENT_NOT_FOUND_KEY');
729 729
             }
730 730
             if (empty($iv)) {
731
-                logger::write("tools::codec function used\niv parameter is not set",loggerTypes::ERROR);
731
+                logger::write("tools::codec function used\niv parameter is not set", loggerTypes::ERROR);
732 732
                 throw new bptException('ARGUMENT_NOT_FOUND_IV');
733 733
             }
734 734
             return openssl_decrypt(base64_decode($text), 'AES-256-CBC', $key, 1, $iv);
735 735
         }
736 736
         else {
737
-            logger::write("tools::codec function used\naction is not right, its must be `encode` or `decode`",loggerTypes::WARNING);
737
+            logger::write("tools::codec function used\naction is not right, its must be `encode` or `decode`", loggerTypes::WARNING);
738 738
             return false;
739 739
         }
740 740
     }
@@ -742,8 +742,8 @@  discard block
 block discarded – undo
742 742
     /**
743 743
      * @deprecated use tools::codec() instead , will remove in 1.6.0
744 744
      */
745
-    public static function crypto (string $action, string $text, string $key = null, string $iv = null): bool|array|string {
746
-        return self::codec($action,$text,$key,$iv);
745
+    public static function crypto(string $action, string $text, string $key = null, string $iv = null): bool | array | string {
746
+        return self::codec($action, $text, $key, $iv);
747 747
     }
748 748
 
749 749
     /**
@@ -758,7 +758,7 @@  discard block
 block discarded – undo
758 758
     public static function shortEncode(int $num): string {
759 759
         $codes = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
760 760
         $array = [];
761
-        while ($num > 0){
761
+        while ($num > 0) {
762 762
             $array[] = $num % 62;
763 763
             $num = floor($num / 62);
764 764
         }
@@ -766,7 +766,7 @@  discard block
 block discarded – undo
766 766
         foreach ($array as &$value) {
767 767
             $value = $codes[$value];
768 768
         }
769
-        return strrev(implode('',$array));
769
+        return strrev(implode('', $array));
770 770
     }
771 771
 
772 772
     /**
@@ -783,7 +783,7 @@  discard block
 block discarded – undo
783 783
         $num = 0;
784 784
         $text = str_split(strrev($text));
785 785
         foreach ($text as $key=>$value) {
786
-            $num += strpos($codes,$value) * pow(62,$key);
786
+            $num += strpos($codes, $value) * pow(62, $key);
787 787
         }
788 788
         return $num;
789 789
     }
Please login to merge, or discard this patch.
Braces   +35 added lines, -34 removed lines patch added patch discarded remove patch
@@ -217,8 +217,9 @@  discard block
 block discarded – undo
217 217
             if (telegram::$status) {
218 218
                 $check = $check->status;
219 219
                 $result[$id] = $check !== chatMemberStatus::LEFT && $check !== chatMemberStatus::KICKED;
220
+            } else {
221
+                $result[$id] = null;
220 222
             }
221
-            else $result[$id] = null;
222 223
         }
223 224
         return $result;
224 225
     }
@@ -259,8 +260,7 @@  discard block
 block discarded – undo
259 260
             curl_exec($ch);
260 261
             $size = curl_getinfo($ch, CURLINFO_CONTENT_LENGTH_DOWNLOAD);
261 262
             curl_close($ch);
262
-        }
263
-        else {
263
+        } else {
264 264
             $path = realpath($path);
265 265
             $size = file_exists($path) ? filesize($path) : false;
266 266
         }
@@ -331,8 +331,7 @@  discard block
 block discarded – undo
331 331
                     $zip->addFile($filePath, substr($filePath, $root_len));
332 332
                 }
333 333
             }
334
-        }
335
-        else {
334
+        } else {
336 335
             $zip->addFile($path, basename($path));
337 336
         }
338 337
         return $zip->close();
@@ -351,9 +350,13 @@  discard block
 block discarded – undo
351 350
      */
352 351
     public static function downloadFile (string $url, string $path,int $chunk_size = 512): bool {
353 352
         $file = fopen($url, 'rb');
354
-        if (!$file) return false;
353
+        if (!$file) {
354
+            return false;
355
+        }
355 356
         $path = fopen($path, 'wb');
356
-        if (!$path) return false;
357
+        if (!$path) {
358
+            return false;
359
+        }
357 360
 
358 361
         $length = $chunk_size * 1024;
359 362
         while (!feof($file)){
@@ -460,8 +463,9 @@  discard block
 block discarded – undo
460 463
         foreach ($string as $k => &$v) {
461 464
             if ($diff->$v) {
462 465
                 $v = $diff->$v;
466
+            } else {
467
+                unset($string[$k]);
463 468
             }
464
-            else unset($string[$k]);
465 469
         }
466 470
         $string['status'] = $base_time < $target_time ? 'later' : 'ago';
467 471
 
@@ -527,8 +531,7 @@  discard block
 block discarded – undo
527 531
             if ($last === "\0") {
528 532
                 $new .= str_repeat($last, ord($char));
529 533
                 $last = '';
530
-            }
531
-            else {
534
+            } else {
532 535
                 $new .= $last;
533 536
                 $last = $char;
534 537
             }
@@ -612,7 +615,9 @@  discard block
 block discarded – undo
612 615
             }
613 616
             $rows = [];
614 617
             foreach ($keyboard as $row) {
615
-                if (!is_array($row)) continue;
618
+                if (!is_array($row)) {
619
+                    continue;
620
+                }
616 621
                 $buttons = [];
617 622
                 foreach ($row as $base_button) {
618 623
                     $button_info = explode('||', $base_button);
@@ -621,15 +626,12 @@  discard block
 block discarded – undo
621 626
                     if (count($button_info) > 1) {
622 627
                         if ($button_info[1] === 'con') {
623 628
                             $button->setRequest_contact(true);
624
-                        }
625
-                        elseif ($button_info[1] === 'loc') {
629
+                        } elseif ($button_info[1] === 'loc') {
626 630
                             $button->setRequest_location(true);
627
-                        }
628
-                        elseif ($button_info[1] === 'poll') {
631
+                        } elseif ($button_info[1] === 'poll') {
629 632
                             $type = $button_info[2] === pollType::QUIZ ? pollType::QUIZ : pollType::REGULAR;
630 633
                             $button->setRequest_poll((new keyboardButtonPollType())->setType($type));
631
-                        }
632
-                        elseif ($button_info[1] === 'web' && isset($button_info[2])) {
634
+                        } elseif ($button_info[1] === 'web' && isset($button_info[2])) {
633 635
                             $url = $button_info[2];
634 636
                             $button->setWeb_app((new webAppInfo())->setUrl($url));
635 637
                         }
@@ -640,8 +642,7 @@  discard block
 block discarded – undo
640 642
             }
641 643
             $keyboard_object->setKeyboard($rows);
642 644
             return $keyboard_object;
643
-        }
644
-        elseif (!empty($inline)) {
645
+        } elseif (!empty($inline)) {
645 646
             $keyboard_object = new inlineKeyboardMarkup();
646 647
             $rows = [];
647 648
             foreach ($inline as $row) {
@@ -651,12 +652,10 @@  discard block
 block discarded – undo
651 652
                     if (isset($button_info[1])) {
652 653
                         if (filter_var($button_info[1], FILTER_VALIDATE_URL) && str_starts_with($button_info[1], 'http')) {
653 654
                             $button->setText($button_info[0])->setUrl($button_info[1]);
654
-                        }
655
-                        else {
655
+                        } else {
656 656
                             $button->setText($button_info[0])->setCallback_data($button_info[1]);
657 657
                         }
658
-                    }
659
-                    else {
658
+                    } else {
660 659
                         $button->setText($button_info[0])->setUrl('https://t.me/BPT_CH');
661 660
                     }
662 661
                     $buttons[] = $button;
@@ -665,8 +664,7 @@  discard block
 block discarded – undo
665 664
             }
666 665
             $keyboard_object->setInline_keyboard($rows);
667 666
             return $keyboard_object;
668
-        }
669
-        else {
667
+        } else {
670 668
             logger::write("tools::eKey function used\nkeyboard or inline parameter must be set",loggerTypes::ERROR);
671 669
             throw new bptException('ARGUMENT_NOT_FOUND_KEYBOARD_INLINE');
672 670
         }
@@ -685,8 +683,12 @@  discard block
 block discarded – undo
685 683
      * @return string
686 684
      */
687 685
     public static function inviteLink (int $user_id = null, string $bot_username = null): string {
688
-        if (empty($user_id)) $user_id = telegram::catchFields(fields::USER_ID);
689
-        if (empty($bot_username)) $bot_username = telegram::getMe()->username;
686
+        if (empty($user_id)) {
687
+            $user_id = telegram::catchFields(fields::USER_ID);
688
+        }
689
+        if (empty($bot_username)) {
690
+            $bot_username = telegram::getMe()->username;
691
+        }
690 692
         return 'https://t.me/' . str_replace('@', '', $bot_username) . '?start=ref_' . tools::shortEncode($user_id);
691 693
     }
692 694
 
@@ -721,8 +723,7 @@  discard block
 block discarded – undo
721 723
             $iv = self::randomString();
722 724
             $output = base64_encode(openssl_encrypt($text, 'AES-256-CBC', $key, 1, $iv));
723 725
             return ['hash' => $output, 'key' => $key, 'iv' => $iv];
724
-        }
725
-        elseif ($action === codecAction::DECRYPT) {
726
+        } elseif ($action === codecAction::DECRYPT) {
726 727
             if (empty($key)) {
727 728
                 logger::write("tools::codec function used\nkey parameter is not set",loggerTypes::ERROR);
728 729
                 throw new bptException('ARGUMENT_NOT_FOUND_KEY');
@@ -732,8 +733,7 @@  discard block
 block discarded – undo
732 733
                 throw new bptException('ARGUMENT_NOT_FOUND_IV');
733 734
             }
734 735
             return openssl_decrypt(base64_decode($text), 'AES-256-CBC', $key, 1, $iv);
735
-        }
736
-        else {
736
+        } else {
737 737
             logger::write("tools::codec function used\naction is not right, its must be `encode` or `decode`",loggerTypes::WARNING);
738 738
             return false;
739 739
         }
@@ -762,7 +762,9 @@  discard block
 block discarded – undo
762 762
             $array[] = $num % 62;
763 763
             $num = floor($num / 62);
764 764
         }
765
-        if (count($array) < 1) $array = [0];
765
+        if (count($array) < 1) {
766
+            $array = [0];
767
+        }
766 768
         foreach ($array as &$value) {
767 769
             $value = $codes[$value];
768 770
         }
@@ -797,8 +799,7 @@  discard block
 block discarded – undo
797 799
         $ip = $_SERVER['REMOTE_ADDR'];
798 800
         if (settings::$cloudflare_verify && isset($_SERVER['HTTP_CF_CONNECTING_IP']) && tools::isCloudFlare($ip)) {
799 801
             $ip = $_SERVER['HTTP_CF_CONNECTING_IP'];
800
-        }
801
-        elseif (settings::$arvancloud_verify && isset($_SERVER['HTTP_AR_REAL_IP']) && tools::isArvanCloud($ip)) {
802
+        } elseif (settings::$arvancloud_verify && isset($_SERVER['HTTP_AR_REAL_IP']) && tools::isArvanCloud($ip)) {
802 803
             $ip = $_SERVER['HTTP_AR_REAL_IP'];
803 804
         }
804 805
         return $ip;
Please login to merge, or discard this patch.
src/pay/crypto.php 1 patch
Spacing   +18 added lines, -18 removed lines patch added patch discarded remove patch
@@ -21,7 +21,7 @@  discard block
 block discarded – undo
21 21
 
22 22
     private static CurlHandle $session;
23 23
 
24
-    public static function init (): void {
24
+    public static function init(): void {
25 25
         self::$api_key = settings::$pay['crypto']['api_key'] ?? '';
26 26
         self::$ipn_secret = settings::$pay['crypto']['ipn_secret'] ?? '';
27 27
         self::$session = curl_init();
@@ -30,7 +30,7 @@  discard block
 block discarded – undo
30 30
         curl_setopt(self::$session, CURLOPT_SSL_VERIFYHOST, 2);
31 31
     }
32 32
 
33
-    private static function execute (string $method, string $endpoint, string|array $data = '') {
33
+    private static function execute(string $method, string $endpoint, string | array $data = '') {
34 34
         if (is_array($data)) {
35 35
             foreach ($data as $key => $value) {
36 36
                 if (empty($value)) {
@@ -41,17 +41,17 @@  discard block
 block discarded – undo
41 41
 
42 42
         $session = self::$session;
43 43
         curl_setopt($session, CURLOPT_HTTPHEADER, [
44
-            'X-API-KEY: ' . self::$api_key,
44
+            'X-API-KEY: '.self::$api_key,
45 45
             'Content-Type: application/json'
46 46
         ]);
47 47
         switch ($method) {
48 48
             case 'GET':
49
-                curl_setopt($session, CURLOPT_URL, self::API_BASE . $endpoint . !empty($data) && is_array($data) ? ('?' . http_build_query($data)) : '');
49
+                curl_setopt($session, CURLOPT_URL, self::API_BASE.$endpoint.!empty($data) && is_array($data) ? ('?'.http_build_query($data)) : '');
50 50
                 break;
51 51
             case 'POST':
52 52
                 curl_setopt($session, CURLOPT_POST, true);
53 53
                 curl_setopt($session, CURLOPT_POSTFIELDS, json_encode($data));
54
-                curl_setopt($session, CURLOPT_URL, self::API_BASE . $endpoint);
54
+                curl_setopt($session, CURLOPT_URL, self::API_BASE.$endpoint);
55 55
                 break;
56 56
             default:
57 57
                 return false;
@@ -59,14 +59,14 @@  discard block
 block discarded – undo
59 59
         return json_decode(curl_exec($session));
60 60
     }
61 61
 
62
-    public static function status (): bool {
62
+    public static function status(): bool {
63 63
         return self::execute('GET', 'status')->message === 'OK';
64 64
     }
65 65
 
66 66
     /**
67 67
      * @return estimatePriceInterface|mixed
68 68
      */
69
-    public static function getEstimatePrice (int|float $amount, string $currency_from, string $currency_to) {
69
+    public static function getEstimatePrice(int | float $amount, string $currency_from, string $currency_to) {
70 70
         return self::execute('GET', 'estimate', [
71 71
             'amount'        => $amount,
72 72
             'currency_from' => $currency_from,
@@ -77,7 +77,7 @@  discard block
 block discarded – undo
77 77
     /**
78 78
      * @return invoicePaymentInterface|mixed
79 79
      */
80
-    public static function createPayment (int|float $price_amount, string $price_currency, string $pay_currency, int|float $pay_amount = null, string $ipn_callback_url = null, string $order_id = null, string $order_description = null, string $purchase_id = null, string $payout_address = null, string $payout_currency = null, string $payout_extra_id = null, bool $fixed_rate = null) {
80
+    public static function createPayment(int | float $price_amount, string $price_currency, string $pay_currency, int | float $pay_amount = null, string $ipn_callback_url = null, string $order_id = null, string $order_description = null, string $purchase_id = null, string $payout_address = null, string $payout_currency = null, string $payout_extra_id = null, bool $fixed_rate = null) {
81 81
         return self::execute('POST', 'payment', [
82 82
             'price_amount'      => $price_amount,
83 83
             'price_currency'    => $price_currency,
@@ -97,7 +97,7 @@  discard block
 block discarded – undo
97 97
     /**
98 98
      * @return invoicePaymentInterface|mixed
99 99
      */
100
-    public static function createInvoicePayment (string $iid, string $pay_currency, string $purchase_id = null, string $order_description = null, string $customer_email = null, string $payout_address = null, string $payout_extra_id = null, string $payout_currency = null) {
100
+    public static function createInvoicePayment(string $iid, string $pay_currency, string $purchase_id = null, string $order_description = null, string $customer_email = null, string $payout_address = null, string $payout_extra_id = null, string $payout_currency = null) {
101 101
         return self::execute('POST', 'invoice', [
102 102
             'iid'               => $iid,
103 103
             'pay_currency'      => $pay_currency,
@@ -113,18 +113,18 @@  discard block
 block discarded – undo
113 113
     /**
114 114
      * @return estimateUpdateInterface|mixed
115 115
      */
116
-    public static function updateEstimatePrice (int $paymentID) {
117
-        return self::execute('POST', 'payment/' . $paymentID . '/update-merchant-estimate');
116
+    public static function updateEstimatePrice(int $paymentID) {
117
+        return self::execute('POST', 'payment/'.$paymentID.'/update-merchant-estimate');
118 118
     }
119 119
 
120 120
     /**
121 121
      * @return paymentInterface|mixed
122 122
      */
123
-    public static function getPaymentStatus (int $paymentID) {
124
-        return self::execute('GET', 'payment/' . $paymentID);
123
+    public static function getPaymentStatus(int $paymentID) {
124
+        return self::execute('GET', 'payment/'.$paymentID);
125 125
     }
126 126
 
127
-    public static function getMinimumPaymentAmount (string $currency_from, string $currency_to): float {
127
+    public static function getMinimumPaymentAmount(string $currency_from, string $currency_to): float {
128 128
         return self::execute('GET', 'min-amount', [
129 129
             'currency_from' => $currency_from,
130 130
             'currency_to'   => $currency_to
@@ -134,7 +134,7 @@  discard block
 block discarded – undo
134 134
     /**
135 135
      * @return invoiceResponseInterface|mixed
136 136
      */
137
-    public static function createInvoice (int|float $price_amount, string $price_currency, string $pay_currency, int|float $pay_amount = null, string $ipn_callback_url = null, string $order_id = null, string $order_description = null, string $success_url = null, string $cancel_url = null) {
137
+    public static function createInvoice(int | float $price_amount, string $price_currency, string $pay_currency, int | float $pay_amount = null, string $ipn_callback_url = null, string $order_id = null, string $order_description = null, string $success_url = null, string $cancel_url = null) {
138 138
         return self::execute('POST', 'invoice', [
139 139
             'price_amount'      => $price_amount,
140 140
             'price_currency'    => $price_currency,
@@ -148,7 +148,7 @@  discard block
 block discarded – undo
148 148
         ]);
149 149
     }
150 150
 
151
-    public static function getCurrencies (): array {
151
+    public static function getCurrencies(): array {
152 152
         return self::execute('GET', 'currencies')->currencies;
153 153
     }
154 154
 
@@ -156,7 +156,7 @@  discard block
 block discarded – undo
156 156
         return tools::remoteIP() === '144.76.201.30';
157 157
     }
158 158
 
159
-    public static function isIPNRequestValid (): bool {
159
+    public static function isIPNRequestValid(): bool {
160 160
         if (empty($_SERVER['HTTP_X_NOWPAYMENTS_SIG'])) {
161 161
             return false;
162 162
         }
@@ -176,7 +176,7 @@  discard block
 block discarded – undo
176 176
     /**
177 177
      * @return ipnDataInterface|mixed
178 178
      */
179
-    public static function getIPN () {
179
+    public static function getIPN() {
180 180
         if (!self::isIPNRequestValid()) {
181 181
             return false;
182 182
         }
Please login to merge, or discard this patch.
src/telegram/telegram.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -15,7 +15,7 @@  discard block
 block discarded – undo
15 15
  * telegram class , Adding normal method call to request class and a simple name for being easy to call
16 16
  */
17 17
 class telegram extends request {
18
-    public function __call (string $name, array $arguments) {
18
+    public function __call(string $name, array $arguments) {
19 19
         return request::$name(...$arguments);
20 20
     }
21 21
 
@@ -33,11 +33,11 @@  discard block
 block discarded – undo
33 33
      *
34 34
      * @return bool
35 35
      */
36
-    public static function downloadFile (string|null $destination = null, string|null $file_id = null): bool {
36
+    public static function downloadFile(string | null $destination = null, string | null $file_id = null): bool {
37 37
         return tools::downloadFile(self::fileLink($file_id), $destination);
38 38
     }
39 39
 
40
-    public static function fileLink(string|null $file_id = null): bool|string {
40
+    public static function fileLink(string | null $file_id = null): bool | string {
41 41
         $file = self::getFile($file_id);
42 42
         if (!isset($file->file_path)) {
43 43
             return false;
@@ -59,7 +59,7 @@  discard block
 block discarded – undo
59 59
      *
60 60
      * @return message|bool|responseError
61 61
      */
62
-    public static function sendFile (string $file_id, int|string $chat_id = null, int $message_thread_id = null, string $caption = null, string $parse_mode = null, array $caption_entities = null, bool $disable_notification = null, bool $protect_content = null, int $reply_to_message_id = null, bool $allow_sending_without_reply = null, inlineKeyboardMarkup|replyKeyboardMarkup|replyKeyboardRemove|forceReply|stdClass|array $reply_markup = null, string $token = null, bool $forgot = null, bool $answer = null): message|bool|responseError {
62
+    public static function sendFile(string $file_id, int | string $chat_id = null, int $message_thread_id = null, string $caption = null, string $parse_mode = null, array $caption_entities = null, bool $disable_notification = null, bool $protect_content = null, int $reply_to_message_id = null, bool $allow_sending_without_reply = null, inlineKeyboardMarkup | replyKeyboardMarkup | replyKeyboardRemove | forceReply | stdClass | array $reply_markup = null, string $token = null, bool $forgot = null, bool $answer = null): message | bool | responseError {
63 63
         $type = tools::fileType($file_id);
64 64
         return match ($type) {
65 65
             fileTypes::VIDEO => self::sendVideo($file_id, $chat_id, null, null, null, null, $caption, $parse_mode, $caption_entities, null, $disable_notification, $protect_content, $reply_to_message_id, $allow_sending_without_reply, $reply_markup, $token, $forgot, $answer, $message_thread_id),
Please login to merge, or discard this patch.
src/telegram/request.php 2 patches
Spacing   +125 added lines, -125 removed lines patch added patch discarded remove patch
@@ -502,95 +502,95 @@  discard block
 block discarded – undo
502 502
     ];
503 503
 
504 504
     private const METHODS_KEYS = [
505
-        'getUpdates'                      => ['offset','limit','timeout','allowed_updates','token','forgot','answer'],
506
-        'setWebhook'                      => ['url','certificate','ip_address','max_connections','allowed_updates','drop_pending_updates','secret_token','token','forgot','answer'],
507
-        'deleteWebhook'                   => ['drop_pending_updates','token','forgot','answer'],
508
-        'getWebhookInfo'                  => ['token','forgot','answer'],
509
-        'getMe'                           => ['token','forgot','answer'],
510
-        'logOut'                          => ['token','forgot','answer'],
511
-        'close'                           => ['token','forgot','answer'],
512
-        'sendMessage'                     => ['text','chat_id','parse_mode','entities','disable_web_page_preview','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
513
-        'forwardMessage'                  => ['chat_id','from_chat_id','disable_notification','protect_content','message_id','token','forgot','answer','message_thread_id'],
514
-        'copyMessage'                     => ['chat_id','from_chat_id','message_id','caption','parse_mode','caption_entities','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
515
-        'sendPhoto'                       => ['photo','chat_id','caption','parse_mode','caption_entities','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','has_spoiler','message_thread_id'],
516
-        'sendAudio'                       => ['audio','chat_id','caption','parse_mode','caption_entities','duration','performer','title','thumb','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
517
-        'sendDocument'                    => ['document','chat_id','thumb','caption','parse_mode','caption_entities','disable_content_type_detection','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
518
-        'sendVideo'                       => ['video','chat_id','duration','width','height','thumb','caption','parse_mode','caption_entities','supports_streaming','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','has_spoiler','message_thread_id'],
519
-        'sendAnimation'                   => ['animation','chat_id','duration','width','height','thumb','caption','parse_mode','caption_entities','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','has_spoiler','message_thread_id'],
520
-        'sendVoice'                       => ['voice','chat_id','caption','parse_mode','caption_entities','duration','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
521
-        'sendVideoNote'                   => ['video_note','chat_id','duration','length','thumb','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
522
-        'sendMediaGroup'                  => ['media','chat_id','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','token','forgot','answer','message_thread_id'],
523
-        'sendLocation'                    => ['latitude','longitude','chat_id','horizontal_accuracy','live_period','heading','proximity_alert_radius','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
524
-        'editMessageLiveLocation'         => ['latitude','longitude','chat_id','message_id','inline_message_id','horizontal_accuracy','heading','proximity_alert_radius','reply_markup','token','forgot','answer'],
525
-        'stopMessageLiveLocation'         => ['chat_id','message_id','inline_message_id','reply_markup','token','forgot','answer'],
526
-        'sendVenue'                       => ['chat_id','latitude','longitude','title','address','foursquare_id','foursquare_type','google_place_id','google_place_type','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
527
-        'sendContact'                     => ['phone_number','first_name','chat_id','last_name','vcard','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
528
-        'sendPoll'                        => ['question','options','chat_id','is_anonymous','type','allows_multiple_answers','correct_option_id','explanation','explanation_parse_mode','explanation_entities','open_period','close_date','is_closed','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
529
-        'sendDice'                        => ['chat_id','emoji','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
530
-        'sendChatAction'                  => ['chat_id','action','token','forgot','answer','message_thread_id'],
531
-        'getUserProfilePhotos'            => ['user_id','offset','limit','token','forgot','answer'],
532
-        'getFile'                         => ['file_id','token','forgot','answer'],
533
-        'banChatMember'                   => ['chat_id','user_id','until_date','revoke_messages','token','forgot','answer'],
534
-        'unbanChatMember'                 => ['chat_id','user_id','only_if_banned','token','forgot','answer'],
535
-        'restrictChatMember'              => ['permissions','chat_id','user_id','until_date','token','forgot','answer'],
536
-        'promoteChatMember'               => ['chat_id','user_id','is_anonymous','can_manage_chat','can_post_messages','can_edit_messages','can_delete_messages','can_manage_video_chats','can_restrict_members','can_promote_members','can_change_info','can_invite_users','can_pin_messages','can_manage_topics','token','forgot','answer'],
537
-        'setChatAdministratorCustomTitle' => ['custom_title','chat_id','user_id','token','forgot','answer'],
538
-        'banChatSenderChat'               => ['sender_chat_id','chat_id','token','forgot','answer'],
539
-        'unbanChatSenderChat'             => ['sender_chat_id','chat_id','token','forgot','answer'],
540
-        'setChatPermissions'              => ['permissions','chat_id','token','forgot','answer'],
541
-        'exportChatInviteLink'            => ['chat_id','token','forgot','answer'],
542
-        'createChatInviteLink'            => ['chat_id','name','expire_date','member_limit','creates_join_request','token','forgot','answer'],
543
-        'editChatInviteLink'              => ['invite_link','chat_id','name','expire_date','member_limit','creates_join_request','token','forgot','answer'],
544
-        'revokeChatInviteLink'            => ['invite_link','chat_id','token','forgot','answer'],
545
-        'approveChatJoinRequest'          => ['chat_id','user_id','token','forgot','answer'],
546
-        'declineChatJoinRequest'          => ['chat_id','user_id','token','forgot','answer'],
547
-        'setChatPhoto'                    => ['photo','chat_id','token','forgot','answer'],
548
-        'deleteChatPhoto'                 => ['chat_id','token','forgot','answer'],
549
-        'setChatTitle'                    => ['title','chat_id','token','forgot','answer'],
550
-        'setChatDescription'              => ['chat_id','description','token','forgot','answer'],
551
-        'pinChatMessage'                  => ['message_id','chat_id','disable_notification','token','forgot','answer'],
552
-        'unpinChatMessage'                => ['chat_id','message_id','token','forgot','answer'],
553
-        'unpinAllChatMessages'            => ['chat_id','token','forgot','answer'],
554
-        'leaveChat'                       => ['chat_id','token','forgot','answer'],
555
-        'getChat'                         => ['chat_id','token','forgot','answer'],
556
-        'getChatAdministrators'           => ['chat_id','token','forgot','answer'],
557
-        'getChatMemberCount'              => ['chat_id','token','forgot','answer'],
558
-        'getChatMember'                   => ['chat_id','user_id','token','forgot','answer'],
559
-        'setChatStickerSet'               => ['sticker_set_name','chat_id','token','forgot','answer'],
560
-        'deleteChatStickerSet'            => ['chat_id','token','forgot','answer'],
561
-        'answerCallbackQuery'             => ['callback_query_id','text','show_alert','url','cache_time','token','forgot','answer'],
562
-        'setMyCommands'                   => ['commands','scope','language_code','token','forgot','answer'],
563
-        'deleteMyCommands'                => ['scope','language_code','token','forgot','answer'],
564
-        'getMyCommands'                   => ['scope','language_code','token','forgot','answer'],
565
-        'setChatMenuButton'               => ['chat_id','menu_button','token','forgot','answer'],
566
-        'getChatMenuButton'               => ['chat_id','token','forgot','answer'],
567
-        'setMyDefaultAdministratorRights' => ['rights','for_channels','token','forgot','answer'],
568
-        'getMyDefaultAdministratorRights' => ['for_channels','token','forgot','answer'],
569
-        'editMessageText'                 => ['text','chat_id','message_id','inline_message_id','parse_mode','entities','disable_web_page_preview','reply_markup','token','forgot','answer'],
570
-        'editMessageCaption'              => ['chat_id','message_id','inline_message_id','caption','parse_mode','caption_entities','reply_markup','token','forgot','answer'],
571
-        'editMessageMedia'                => ['media','chat_id','message_id','inline_message_id','reply_markup','token','forgot','answer'],
572
-        'editMessageReplyMarkup'          => ['chat_id','message_id','inline_message_id','reply_markup','token','forgot','answer'],
573
-        'stopPoll'                        => ['chat_id','message_id','reply_markup','token','forgot','answer'],
574
-        'deleteMessage'                   => ['chat_id','message_id','token','forgot','answer'],
575
-        'sendSticker'                     => ['sticker','chat_id','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
576
-        'getStickerSet'                   => ['name','token','forgot','answer'],
505
+        'getUpdates'                      => ['offset', 'limit', 'timeout', 'allowed_updates', 'token', 'forgot', 'answer'],
506
+        'setWebhook'                      => ['url', 'certificate', 'ip_address', 'max_connections', 'allowed_updates', 'drop_pending_updates', 'secret_token', 'token', 'forgot', 'answer'],
507
+        'deleteWebhook'                   => ['drop_pending_updates', 'token', 'forgot', 'answer'],
508
+        'getWebhookInfo'                  => ['token', 'forgot', 'answer'],
509
+        'getMe'                           => ['token', 'forgot', 'answer'],
510
+        'logOut'                          => ['token', 'forgot', 'answer'],
511
+        'close'                           => ['token', 'forgot', 'answer'],
512
+        'sendMessage'                     => ['text', 'chat_id', 'parse_mode', 'entities', 'disable_web_page_preview', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
513
+        'forwardMessage'                  => ['chat_id', 'from_chat_id', 'disable_notification', 'protect_content', 'message_id', 'token', 'forgot', 'answer', 'message_thread_id'],
514
+        'copyMessage'                     => ['chat_id', 'from_chat_id', 'message_id', 'caption', 'parse_mode', 'caption_entities', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
515
+        'sendPhoto'                       => ['photo', 'chat_id', 'caption', 'parse_mode', 'caption_entities', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'has_spoiler', 'message_thread_id'],
516
+        'sendAudio'                       => ['audio', 'chat_id', 'caption', 'parse_mode', 'caption_entities', 'duration', 'performer', 'title', 'thumb', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
517
+        'sendDocument'                    => ['document', 'chat_id', 'thumb', 'caption', 'parse_mode', 'caption_entities', 'disable_content_type_detection', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
518
+        'sendVideo'                       => ['video', 'chat_id', 'duration', 'width', 'height', 'thumb', 'caption', 'parse_mode', 'caption_entities', 'supports_streaming', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'has_spoiler', 'message_thread_id'],
519
+        'sendAnimation'                   => ['animation', 'chat_id', 'duration', 'width', 'height', 'thumb', 'caption', 'parse_mode', 'caption_entities', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'has_spoiler', 'message_thread_id'],
520
+        'sendVoice'                       => ['voice', 'chat_id', 'caption', 'parse_mode', 'caption_entities', 'duration', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
521
+        'sendVideoNote'                   => ['video_note', 'chat_id', 'duration', 'length', 'thumb', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
522
+        'sendMediaGroup'                  => ['media', 'chat_id', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'token', 'forgot', 'answer', 'message_thread_id'],
523
+        'sendLocation'                    => ['latitude', 'longitude', 'chat_id', 'horizontal_accuracy', 'live_period', 'heading', 'proximity_alert_radius', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
524
+        'editMessageLiveLocation'         => ['latitude', 'longitude', 'chat_id', 'message_id', 'inline_message_id', 'horizontal_accuracy', 'heading', 'proximity_alert_radius', 'reply_markup', 'token', 'forgot', 'answer'],
525
+        'stopMessageLiveLocation'         => ['chat_id', 'message_id', 'inline_message_id', 'reply_markup', 'token', 'forgot', 'answer'],
526
+        'sendVenue'                       => ['chat_id', 'latitude', 'longitude', 'title', 'address', 'foursquare_id', 'foursquare_type', 'google_place_id', 'google_place_type', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
527
+        'sendContact'                     => ['phone_number', 'first_name', 'chat_id', 'last_name', 'vcard', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
528
+        'sendPoll'                        => ['question', 'options', 'chat_id', 'is_anonymous', 'type', 'allows_multiple_answers', 'correct_option_id', 'explanation', 'explanation_parse_mode', 'explanation_entities', 'open_period', 'close_date', 'is_closed', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
529
+        'sendDice'                        => ['chat_id', 'emoji', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
530
+        'sendChatAction'                  => ['chat_id', 'action', 'token', 'forgot', 'answer', 'message_thread_id'],
531
+        'getUserProfilePhotos'            => ['user_id', 'offset', 'limit', 'token', 'forgot', 'answer'],
532
+        'getFile'                         => ['file_id', 'token', 'forgot', 'answer'],
533
+        'banChatMember'                   => ['chat_id', 'user_id', 'until_date', 'revoke_messages', 'token', 'forgot', 'answer'],
534
+        'unbanChatMember'                 => ['chat_id', 'user_id', 'only_if_banned', 'token', 'forgot', 'answer'],
535
+        'restrictChatMember'              => ['permissions', 'chat_id', 'user_id', 'until_date', 'token', 'forgot', 'answer'],
536
+        'promoteChatMember'               => ['chat_id', 'user_id', 'is_anonymous', 'can_manage_chat', 'can_post_messages', 'can_edit_messages', 'can_delete_messages', 'can_manage_video_chats', 'can_restrict_members', 'can_promote_members', 'can_change_info', 'can_invite_users', 'can_pin_messages', 'can_manage_topics', 'token', 'forgot', 'answer'],
537
+        'setChatAdministratorCustomTitle' => ['custom_title', 'chat_id', 'user_id', 'token', 'forgot', 'answer'],
538
+        'banChatSenderChat'               => ['sender_chat_id', 'chat_id', 'token', 'forgot', 'answer'],
539
+        'unbanChatSenderChat'             => ['sender_chat_id', 'chat_id', 'token', 'forgot', 'answer'],
540
+        'setChatPermissions'              => ['permissions', 'chat_id', 'token', 'forgot', 'answer'],
541
+        'exportChatInviteLink'            => ['chat_id', 'token', 'forgot', 'answer'],
542
+        'createChatInviteLink'            => ['chat_id', 'name', 'expire_date', 'member_limit', 'creates_join_request', 'token', 'forgot', 'answer'],
543
+        'editChatInviteLink'              => ['invite_link', 'chat_id', 'name', 'expire_date', 'member_limit', 'creates_join_request', 'token', 'forgot', 'answer'],
544
+        'revokeChatInviteLink'            => ['invite_link', 'chat_id', 'token', 'forgot', 'answer'],
545
+        'approveChatJoinRequest'          => ['chat_id', 'user_id', 'token', 'forgot', 'answer'],
546
+        'declineChatJoinRequest'          => ['chat_id', 'user_id', 'token', 'forgot', 'answer'],
547
+        'setChatPhoto'                    => ['photo', 'chat_id', 'token', 'forgot', 'answer'],
548
+        'deleteChatPhoto'                 => ['chat_id', 'token', 'forgot', 'answer'],
549
+        'setChatTitle'                    => ['title', 'chat_id', 'token', 'forgot', 'answer'],
550
+        'setChatDescription'              => ['chat_id', 'description', 'token', 'forgot', 'answer'],
551
+        'pinChatMessage'                  => ['message_id', 'chat_id', 'disable_notification', 'token', 'forgot', 'answer'],
552
+        'unpinChatMessage'                => ['chat_id', 'message_id', 'token', 'forgot', 'answer'],
553
+        'unpinAllChatMessages'            => ['chat_id', 'token', 'forgot', 'answer'],
554
+        'leaveChat'                       => ['chat_id', 'token', 'forgot', 'answer'],
555
+        'getChat'                         => ['chat_id', 'token', 'forgot', 'answer'],
556
+        'getChatAdministrators'           => ['chat_id', 'token', 'forgot', 'answer'],
557
+        'getChatMemberCount'              => ['chat_id', 'token', 'forgot', 'answer'],
558
+        'getChatMember'                   => ['chat_id', 'user_id', 'token', 'forgot', 'answer'],
559
+        'setChatStickerSet'               => ['sticker_set_name', 'chat_id', 'token', 'forgot', 'answer'],
560
+        'deleteChatStickerSet'            => ['chat_id', 'token', 'forgot', 'answer'],
561
+        'answerCallbackQuery'             => ['callback_query_id', 'text', 'show_alert', 'url', 'cache_time', 'token', 'forgot', 'answer'],
562
+        'setMyCommands'                   => ['commands', 'scope', 'language_code', 'token', 'forgot', 'answer'],
563
+        'deleteMyCommands'                => ['scope', 'language_code', 'token', 'forgot', 'answer'],
564
+        'getMyCommands'                   => ['scope', 'language_code', 'token', 'forgot', 'answer'],
565
+        'setChatMenuButton'               => ['chat_id', 'menu_button', 'token', 'forgot', 'answer'],
566
+        'getChatMenuButton'               => ['chat_id', 'token', 'forgot', 'answer'],
567
+        'setMyDefaultAdministratorRights' => ['rights', 'for_channels', 'token', 'forgot', 'answer'],
568
+        'getMyDefaultAdministratorRights' => ['for_channels', 'token', 'forgot', 'answer'],
569
+        'editMessageText'                 => ['text', 'chat_id', 'message_id', 'inline_message_id', 'parse_mode', 'entities', 'disable_web_page_preview', 'reply_markup', 'token', 'forgot', 'answer'],
570
+        'editMessageCaption'              => ['chat_id', 'message_id', 'inline_message_id', 'caption', 'parse_mode', 'caption_entities', 'reply_markup', 'token', 'forgot', 'answer'],
571
+        'editMessageMedia'                => ['media', 'chat_id', 'message_id', 'inline_message_id', 'reply_markup', 'token', 'forgot', 'answer'],
572
+        'editMessageReplyMarkup'          => ['chat_id', 'message_id', 'inline_message_id', 'reply_markup', 'token', 'forgot', 'answer'],
573
+        'stopPoll'                        => ['chat_id', 'message_id', 'reply_markup', 'token', 'forgot', 'answer'],
574
+        'deleteMessage'                   => ['chat_id', 'message_id', 'token', 'forgot', 'answer'],
575
+        'sendSticker'                     => ['sticker', 'chat_id', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
576
+        'getStickerSet'                   => ['name', 'token', 'forgot', 'answer'],
577 577
         'getCustomEmojiStickers'          => ['custom_emoji_ids', 'token', 'return_array', 'forgot', 'answer'],
578
-        'uploadStickerFile'               => ['png_sticker','user_id','token','forgot','answer'],
579
-        'createNewStickerSet'             => ['name','title','emojis','user_id','png_sticker','tgs_sticker','webm_sticker','sticker_type','contains_masks','mask_position','token','forgot','answer'],
580
-        'addStickerToSet'                 => ['name','emojis','user_id','png_sticker','tgs_sticker','webm_sticker','mask_position','token','forgot','answer'],
581
-        'setStickerPositionInSet'         => ['sticker','position','token','forgot','answer'],
582
-        'deleteStickerFromSet'            => ['sticker','token','forgot','answer'],
583
-        'setStickerSetThumb'              => ['name','user_id','thumb','token','forgot','answer'],
584
-        'answerInlineQuery'               => ['results','inline_query_id','cache_time','is_personal','next_offset','switch_pm_text','switch_pm_parameter','token','forgot','answer'],
585
-        'answerWebAppQuery'               => ['web_app_query_id','result','token','forgot','answer'],
586
-        'sendInvoice'                     => ['title','description','payload','provider_token','currency','prices','chat_id','max_tip_amount','suggested_tip_amounts','start_parameter','provider_data','photo_url','photo_size','photo_width','photo_height','need_name','need_phone_number','need_email','need_shipping_address','send_phone_number_to_provider','send_email_to_provider','is_flexible','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer','message_thread_id'],
587
-        'createInvoiceLink'               => ['title','description','payload','provider_token','currency','prices','max_tip_amount','suggested_tip_amounts','provider_data','photo_url','photo_size','photo_width','photo_height','need_name','need_phone_number','need_email','need_shipping_address','send_phone_number_to_provider','send_email_to_provider','is_flexible','token','forgot','answer'],
588
-        'answerShippingQuery'             => ['ok','shipping_query_id','shipping_options','error_message','token','forgot','answer'],
589
-        'answerPreCheckoutQuery'          => ['ok','pre_checkout_query_id','error_message','token','forgot','answer'],
590
-        'setPassportDataErrors'           => ['errors','user_id','token','forgot','answer'],
591
-        'sendGame'                        => ['game_short_name','chat_id','disable_notification','protect_content','reply_to_message_id','allow_sending_without_reply','reply_markup','token','forgot','answer', 'message_thread_id'],
592
-        'setGameScore'                    => ['score','user_id','force','disable_edit_message','chat_id','message_id','inline_message_id','token','forgot','answer'],
593
-        'getGameHighScores'               => ['user_id','chat_id','message_id','inline_message_id','token','forgot','answer'],
578
+        'uploadStickerFile'               => ['png_sticker', 'user_id', 'token', 'forgot', 'answer'],
579
+        'createNewStickerSet'             => ['name', 'title', 'emojis', 'user_id', 'png_sticker', 'tgs_sticker', 'webm_sticker', 'sticker_type', 'contains_masks', 'mask_position', 'token', 'forgot', 'answer'],
580
+        'addStickerToSet'                 => ['name', 'emojis', 'user_id', 'png_sticker', 'tgs_sticker', 'webm_sticker', 'mask_position', 'token', 'forgot', 'answer'],
581
+        'setStickerPositionInSet'         => ['sticker', 'position', 'token', 'forgot', 'answer'],
582
+        'deleteStickerFromSet'            => ['sticker', 'token', 'forgot', 'answer'],
583
+        'setStickerSetThumb'              => ['name', 'user_id', 'thumb', 'token', 'forgot', 'answer'],
584
+        'answerInlineQuery'               => ['results', 'inline_query_id', 'cache_time', 'is_personal', 'next_offset', 'switch_pm_text', 'switch_pm_parameter', 'token', 'forgot', 'answer'],
585
+        'answerWebAppQuery'               => ['web_app_query_id', 'result', 'token', 'forgot', 'answer'],
586
+        'sendInvoice'                     => ['title', 'description', 'payload', 'provider_token', 'currency', 'prices', 'chat_id', 'max_tip_amount', 'suggested_tip_amounts', 'start_parameter', 'provider_data', 'photo_url', 'photo_size', 'photo_width', 'photo_height', 'need_name', 'need_phone_number', 'need_email', 'need_shipping_address', 'send_phone_number_to_provider', 'send_email_to_provider', 'is_flexible', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
587
+        'createInvoiceLink'               => ['title', 'description', 'payload', 'provider_token', 'currency', 'prices', 'max_tip_amount', 'suggested_tip_amounts', 'provider_data', 'photo_url', 'photo_size', 'photo_width', 'photo_height', 'need_name', 'need_phone_number', 'need_email', 'need_shipping_address', 'send_phone_number_to_provider', 'send_email_to_provider', 'is_flexible', 'token', 'forgot', 'answer'],
588
+        'answerShippingQuery'             => ['ok', 'shipping_query_id', 'shipping_options', 'error_message', 'token', 'forgot', 'answer'],
589
+        'answerPreCheckoutQuery'          => ['ok', 'pre_checkout_query_id', 'error_message', 'token', 'forgot', 'answer'],
590
+        'setPassportDataErrors'           => ['errors', 'user_id', 'token', 'forgot', 'answer'],
591
+        'sendGame'                        => ['game_short_name', 'chat_id', 'disable_notification', 'protect_content', 'reply_to_message_id', 'allow_sending_without_reply', 'reply_markup', 'token', 'forgot', 'answer', 'message_thread_id'],
592
+        'setGameScore'                    => ['score', 'user_id', 'force', 'disable_edit_message', 'chat_id', 'message_id', 'inline_message_id', 'token', 'forgot', 'answer'],
593
+        'getGameHighScores'               => ['user_id', 'chat_id', 'message_id', 'inline_message_id', 'token', 'forgot', 'answer'],
594 594
         'getForumTopicIconStickers'       => ['token', 'return_array', 'forgot', 'answer'],
595 595
         'createForumTopic'                => ['chat_id', 'name', 'icon_color', 'icon_custom_emoji_id', 'token', 'return_array', 'forgot', 'answer'],
596 596
         'editForumTopic'                  => ['chat_id', 'name', 'icon_custom_emoji_id', 'token', 'return_array', 'forgot', 'answer', 'message_thread_id'],
@@ -631,8 +631,8 @@  discard block
 block discarded – undo
631 631
         'logOut'                          => [],
632 632
         'close'                           => [],
633 633
         'sendMessage'                     => ['chat_id'],
634
-        'forwardMessage'                  => ['from_chat_id','message_id'],
635
-        'copyMessage'                     => ['from_chat_id','message_id'],
634
+        'forwardMessage'                  => ['from_chat_id', 'message_id'],
635
+        'copyMessage'                     => ['from_chat_id', 'message_id'],
636 636
         'sendPhoto'                       => ['chat_id'],
637 637
         'sendAudio'                       => ['chat_id'],
638 638
         'sendDocument'                    => ['chat_id'],
@@ -648,15 +648,15 @@  discard block
 block discarded – undo
648 648
         'sendContact'                     => ['chat_id'],
649 649
         'sendPoll'                        => ['chat_id'],
650 650
         'sendDice'                        => ['chat_id'],
651
-        'sendChatAction'                  => ['chat_id','action'],
651
+        'sendChatAction'                  => ['chat_id', 'action'],
652 652
         'getUserProfilePhotos'            => ['user_id'],
653 653
         'getFile'                         => ['file_id'],
654
-        'banChatMember'                   => ['chat_id','user_id'],
655
-        'kickChatMember'                  => ['chat_id','user_id'],
656
-        'unbanChatMember'                 => ['chat_id','user_id'],
657
-        'restrictChatMember'              => ['chat_id','user_id'],
658
-        'promoteChatMember'               => ['chat_id','user_id'],
659
-        'setChatAdministratorCustomTitle' => ['chat_id','user_id'],
654
+        'banChatMember'                   => ['chat_id', 'user_id'],
655
+        'kickChatMember'                  => ['chat_id', 'user_id'],
656
+        'unbanChatMember'                 => ['chat_id', 'user_id'],
657
+        'restrictChatMember'              => ['chat_id', 'user_id'],
658
+        'promoteChatMember'               => ['chat_id', 'user_id'],
659
+        'setChatAdministratorCustomTitle' => ['chat_id', 'user_id'],
660 660
         'banChatSenderChat'               => ['chat_id'],
661 661
         'unbanChatSenderChat'             => ['chat_id'],
662 662
         'setChatPermissions'              => ['chat_id'],
@@ -664,8 +664,8 @@  discard block
 block discarded – undo
664 664
         'createChatInviteLink'            => ['chat_id'],
665 665
         'editChatInviteLink'              => ['chat_id'],
666 666
         'revokeChatInviteLink'            => ['chat_id'],
667
-        'approveChatJoinRequest'          => ['chat_id','user_id'],
668
-        'declineChatJoinRequest'          => ['chat_id','user_id'],
667
+        'approveChatJoinRequest'          => ['chat_id', 'user_id'],
668
+        'declineChatJoinRequest'          => ['chat_id', 'user_id'],
669 669
         'setChatPhoto'                    => ['chat_id'],
670 670
         'deleteChatPhoto'                 => ['chat_id'],
671 671
         'setChatTitle'                    => ['chat_id'],
@@ -677,7 +677,7 @@  discard block
 block discarded – undo
677 677
         'getChat'                         => ['chat_id'],
678 678
         'getChatAdministrators'           => ['chat_id'],
679 679
         'getChatMembersCount'             => ['chat_id'],
680
-        'getChatMember'                   => ['chat_id','user_id'],
680
+        'getChatMember'                   => ['chat_id', 'user_id'],
681 681
         'setChatStickerSet'               => ['chat_id'],
682 682
         'deleteChatStickerSet'            => ['chat_id'],
683 683
         'answerCallbackQuery'             => ['callback_query_id'],
@@ -688,12 +688,12 @@  discard block
 block discarded – undo
688 688
         'getChatMenuButton'               => [],
689 689
         'setMyDefaultAdministratorRights' => [],
690 690
         'getMyDefaultAdministratorRights' => [],
691
-        'editMessageText'                 => ['inline_query'=>['inline_message_id'],'other'=>['chat_id','message_id']],
692
-        'editMessageCaption'              => ['inline_query'=>['inline_message_id'],'other'=>['chat_id','message_id']],
693
-        'editMessageMedia'                => ['inline_query'=>['inline_message_id'],'other'=>['chat_id','message_id']],
694
-        'editMessageReplyMarkup'          => ['inline_query'=>['inline_message_id'],'other'=>['chat_id','message_id']],
695
-        'stopPoll'                        => ['chat_id','message_id'],
696
-        'deleteMessage'                   => ['chat_id','message_id'],
691
+        'editMessageText'                 => ['inline_query'=>['inline_message_id'], 'other'=>['chat_id', 'message_id']],
692
+        'editMessageCaption'              => ['inline_query'=>['inline_message_id'], 'other'=>['chat_id', 'message_id']],
693
+        'editMessageMedia'                => ['inline_query'=>['inline_message_id'], 'other'=>['chat_id', 'message_id']],
694
+        'editMessageReplyMarkup'          => ['inline_query'=>['inline_message_id'], 'other'=>['chat_id', 'message_id']],
695
+        'stopPoll'                        => ['chat_id', 'message_id'],
696
+        'deleteMessage'                   => ['chat_id', 'message_id'],
697 697
         'sendSticker'                     => ['chat_id'],
698 698
         'getStickerSet'                   => [],
699 699
         'uploadStickerFile'               => ['user_id'],
@@ -709,8 +709,8 @@  discard block
 block discarded – undo
709 709
         'answerPreCheckoutQuery'          => ['pre_checkout_query_id'],
710 710
         'setPassportDataErrors'           => ['user_id'],
711 711
         'sendGame'                        => ['chat_id'],
712
-        'setGameScore'                    => ['user_id','inline_query'=>['inline_message_id'],'other'=>['chat_id','message_id']],
713
-        'getGameHighScores'               => ['user_id','inline_query'=>['inline_message_id'],'other'=>['chat_id','message_id']]
712
+        'setGameScore'                    => ['user_id', 'inline_query'=>['inline_message_id'], 'other'=>['chat_id', 'message_id']],
713
+        'getGameHighScores'               => ['user_id', 'inline_query'=>['inline_message_id'], 'other'=>['chat_id', 'message_id']]
714 714
     ];
715 715
 
716 716
     private const METHODS_RETURN = [
@@ -764,24 +764,24 @@  discard block
 block discarded – undo
764 764
         'getGameHighScores' => ['BPT\types\gameHighScore']
765 765
     ];
766 766
 
767
-    public static function __callStatic (string $name, array $arguments) {
767
+    public static function __callStatic(string $name, array $arguments) {
768 768
         if (!$action = self::methodAction($name)) {
769
-            logger::write("$name method is not supported",loggerTypes::ERROR);
769
+            logger::write("$name method is not supported", loggerTypes::ERROR);
770 770
             throw new bptException('METHOD_NOT_FOUND');
771 771
         }
772 772
         self::checkArguments($arguments);
773
-        self::keysName($action,$arguments);
774
-        self::readyFile($action,$arguments);
775
-        self::setDefaults($action,$arguments);
773
+        self::keysName($action, $arguments);
774
+        self::readyFile($action, $arguments);
775
+        self::setDefaults($action, $arguments);
776 776
         if (isset($arguments['answer'])) {
777
-            return answer::init($action,$arguments);
777
+            return answer::init($action, $arguments);
778 778
         }
779 779
         else {
780
-            $result = curl::init($action,$arguments);
780
+            $result = curl::init($action, $arguments);
781 781
             if (!is_object($result)) {
782 782
                 return false;
783 783
             }
784
-            return self::processResponse($action,$result);
784
+            return self::processResponse($action, $result);
785 785
         }
786 786
     }
787 787
 
@@ -791,7 +791,7 @@  discard block
 block discarded – undo
791 791
         }
792 792
     }
793 793
 
794
-    private static function keysName (string $name, array &$arguments): void {
794
+    private static function keysName(string $name, array &$arguments): void {
795 795
         foreach ($arguments as $key => $argument) {
796 796
             if (is_numeric($key) && isset(self::METHODS_KEYS[$name][$key])) {
797 797
                 $arguments[self::METHODS_KEYS[$name][$key]] = $argument;
@@ -800,7 +800,7 @@  discard block
 block discarded – undo
800 800
         }
801 801
     }
802 802
 
803
-    private static function methodAction(string $name): string|false {
803
+    private static function methodAction(string $name): string | false {
804 804
         return self::METHODS_ACTION[str_replace('_', '', strtolower($name))] ?? false;
805 805
     }
806 806
 
@@ -821,11 +821,11 @@  discard block
 block discarded – undo
821 821
         }
822 822
     }
823 823
 
824
-    private static function methodFile(string $name): array|false {
824
+    private static function methodFile(string $name): array | false {
825 825
         return self::METHODS_WITH_FILE[$name] ?? false;
826 826
     }
827 827
 
828
-    private static function methodReturn(string $name,stdClass $response) {
828
+    private static function methodReturn(string $name, stdClass $response) {
829 829
         if (isset(self::METHODS_RETURN[$name])) {
830 830
             $return = self::METHODS_RETURN[$name];
831 831
             if (is_array($return)) {
@@ -848,13 +848,13 @@  discard block
 block discarded – undo
848 848
         $defaults = self::METHODS_EXTRA_DEFAULTS[$name];
849 849
         foreach ($defaults as $key => $default) {
850 850
             if (is_numeric($key)) {
851
-                if (!isset($arguments[$default])){
851
+                if (!isset($arguments[$default])) {
852 852
                     $arguments[$default] = self::catchFields($default);
853 853
                 }
854 854
             }
855 855
             elseif (isset(BPT::$update->$key) || $key === 'other') {
856 856
                 foreach ($default as $def) {
857
-                    if (!isset($arguments[$def])){
857
+                    if (!isset($arguments[$def])) {
858 858
                         $arguments[$def] = self::catchFields($def);
859 859
                     }
860 860
                 }
@@ -867,7 +867,7 @@  discard block
 block discarded – undo
867 867
         self::$status = $response->ok;
868 868
         self::$pure_response = $response;
869 869
         if ($response->ok) {
870
-            return self::methodReturn($name,$response);
870
+            return self::methodReturn($name, $response);
871 871
         }
872 872
         else {
873 873
             return new responseError($response);
@@ -881,7 +881,7 @@  discard block
 block discarded – undo
881 881
      *
882 882
      * @return int|string|bool
883 883
      */
884
-    public static function catchFields (string $field): int|string|bool {
884
+    public static function catchFields(string $field): int | string | bool {
885 885
         switch ($field) {
886 886
             case fields::CHAT_ID :
887 887
             case fields::FROM_CHAT_ID :
@@ -1017,7 +1017,7 @@  discard block
 block discarded – undo
1017 1017
                     default => false
1018 1018
                 };
1019 1019
             case fields::URL :
1020
-                return 'https://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
1020
+                return 'https://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
1021 1021
             default:
1022 1022
                 return false;
1023 1023
         }
Please login to merge, or discard this patch.
Braces   +13 added lines, -15 removed lines patch added patch discarded remove patch
@@ -775,8 +775,7 @@  discard block
 block discarded – undo
775 775
         self::setDefaults($action,$arguments);
776 776
         if (isset($arguments['answer'])) {
777 777
             return answer::init($action,$arguments);
778
-        }
779
-        else {
778
+        } else {
780 779
             $result = curl::init($action,$arguments);
781 780
             if (!is_object($result)) {
782 781
                 return false;
@@ -811,8 +810,7 @@  discard block
 block discarded – undo
811 810
                     $arguments['media'][$key]['media'] = new CURLFile($media['media']);
812 811
                 }
813 812
             }
814
-        }
815
-        elseif ($file_params = self::methodFile($name)) {
813
+        } elseif ($file_params = self::methodFile($name)) {
816 814
             foreach ($file_params as $param) {
817 815
                 if (isset($arguments[$param]) && is_string($arguments[$param]) && file_exists(realpath($arguments[$param]))) {
818 816
                     $arguments[$param] = new CURLFile($arguments[$param]);
@@ -834,12 +832,10 @@  discard block
 block discarded – undo
834 832
                     $value = new ($return[0]) ($value);
835 833
                 }
836 834
                 return $response;
837
-            }
838
-            else {
835
+            } else {
839 836
                 return new ($return) ($response->result);
840 837
             }
841
-        }
842
-        else {
838
+        } else {
843 839
             return $response->result;
844 840
         }
845 841
     }
@@ -851,8 +847,7 @@  discard block
 block discarded – undo
851 847
                 if (!isset($arguments[$default])){
852 848
                     $arguments[$default] = self::catchFields($default);
853 849
                 }
854
-            }
855
-            elseif (isset(BPT::$update->$key) || $key === 'other') {
850
+            } elseif (isset(BPT::$update->$key) || $key === 'other') {
856 851
                 foreach ($default as $def) {
857 852
                     if (!isset($arguments[$def])){
858 853
                         $arguments[$def] = self::catchFields($def);
@@ -868,8 +863,7 @@  discard block
 block discarded – undo
868 863
         self::$pure_response = $response;
869 864
         if ($response->ok) {
870 865
             return self::methodReturn($name,$response);
871
-        }
872
-        else {
866
+        } else {
873 867
             return new responseError($response);
874 868
         }
875 869
     }
@@ -910,9 +904,13 @@  discard block
 block discarded – undo
910 904
                     default => false
911 905
                 };
912 906
             case fields::FILE_ID :
913
-                if (isset(BPT::$update->message)) $type = 'message';
914
-                elseif (isset(BPT::$update->edited_message)) $type = 'edited_message';
915
-                else return false;
907
+                if (isset(BPT::$update->message)) {
908
+                    $type = 'message';
909
+                } elseif (isset(BPT::$update->edited_message)) {
910
+                    $type = 'edited_message';
911
+                } else {
912
+                    return false;
913
+                }
916 914
 
917 915
                 return match(true) {
918 916
                     isset(BPT::$update->$type->animation) => BPT::$update->$type->animation->file_id,
Please login to merge, or discard this patch.
src/database/mysql.php 1 patch
Spacing   +27 added lines, -27 removed lines patch added patch discarded remove patch
@@ -27,7 +27,7 @@  discard block
 block discarded – undo
27 27
     /**
28 28
      * @internal Only for BPT self usage , Don't use it in your source!
29 29
      */
30
-    public static function init (): void {
30
+    public static function init(): void {
31 31
         $host = settings::$db['host'] ?? 'localhost';
32 32
         $port = settings::$db['port'] ?? 3306;
33 33
         $user = settings::$db['user'] ?? settings::$db['username'] ?? 'root';
@@ -36,7 +36,7 @@  discard block
 block discarded – undo
36 36
         $dbname = settings::$db['dbname'];
37 37
         self::$connection = new mysqli($host, $user, $pass, $dbname, $port);
38 38
         if (self::$connection->connect_errno) {
39
-            logger::write('SQL connection has problem : ' . self::$connection->connect_error, loggerTypes::ERROR);
39
+            logger::write('SQL connection has problem : '.self::$connection->connect_error, loggerTypes::ERROR);
40 40
             throw new bptException('SQL_CONNECTION_PROBLEM');
41 41
         }
42 42
         if (self::$auto_process && !lock::exist('BPT-MYSQL')) {
@@ -44,7 +44,7 @@  discard block
 block discarded – undo
44 44
         }
45 45
     }
46 46
 
47
-    private static function install (): void {
47
+    private static function install(): void {
48 48
         self::pureQuery("
49 49
 CREATE TABLE `users`
50 50
 (
@@ -65,7 +65,7 @@  discard block
 block discarded – undo
65 65
     /**
66 66
      * @internal Only for BPT self usage , Don't use it in your source!
67 67
      */
68
-    public static function process (): void {
68
+    public static function process(): void {
69 69
         if (self::$auto_process) {
70 70
             if (isset(BPT::$update->message)) {
71 71
                 self::processMessage(BPT::$update->message);
@@ -85,7 +85,7 @@  discard block
 block discarded – undo
85 85
         }
86 86
     }
87 87
 
88
-    private static function processMessage (message $update): void {
88
+    private static function processMessage(message $update): void {
89 89
         $type = $update->chat->type;
90 90
         if ($type === chatType::PRIVATE) {
91 91
             $user_id = $update->from->id;
@@ -111,7 +111,7 @@  discard block
 block discarded – undo
111 111
         }
112 112
     }
113 113
 
114
-    private static function processCallbackQuery (callbackQuery $update): void {
114
+    private static function processCallbackQuery(callbackQuery $update): void {
115 115
         $type = $update->message->chat->type;
116 116
         if ($type === chatType::PRIVATE) {
117 117
             $user_id = $update->from->id;
@@ -121,7 +121,7 @@  discard block
 block discarded – undo
121 121
         }
122 122
     }
123 123
 
124
-    private static function processInlineQuery (inlineQuery $update): void {
124
+    private static function processInlineQuery(inlineQuery $update): void {
125 125
         $type = $update->chat_type;
126 126
         if ($type === chatType::PRIVATE || $type === chatType::SENDER) {
127 127
             $user_id = $update->from->id;
@@ -131,7 +131,7 @@  discard block
 block discarded – undo
131 131
         }
132 132
     }
133 133
 
134
-    private static function processMyChatMember (chatMemberUpdated $update): void {
134
+    private static function processMyChatMember(chatMemberUpdated $update): void {
135 135
         $type = $update->chat->type;
136 136
         if ($type === chatType::PRIVATE) {
137 137
             if ($update->new_chat_member->status === chatMemberStatus::MEMBER) {
@@ -148,7 +148,7 @@  discard block
 block discarded – undo
148 148
      *
149 149
      * @return mysqli
150 150
      */
151
-    public static function getMysqli (): mysqli {
151
+    public static function getMysqli(): mysqli {
152 152
         return self::$connection;
153 153
     }
154 154
 
@@ -157,7 +157,7 @@  discard block
 block discarded – undo
157 157
      *
158 158
      * @return int|string
159 159
      */
160
-    public static function affected_rows (): int|string {
160
+    public static function affected_rows(): int | string {
161 161
         return self::$connection->affected_rows;
162 162
     }
163 163
 
@@ -166,7 +166,7 @@  discard block
 block discarded – undo
166 166
      *
167 167
      * @return int|string
168 168
      */
169
-    public static function insert_id (): int|string {
169
+    public static function insert_id(): int | string {
170 170
         return self::$connection->insert_id;
171 171
     }
172 172
 
@@ -177,7 +177,7 @@  discard block
 block discarded – undo
177 177
      *
178 178
      * @return string
179 179
      */
180
-    public static function escapeString (string $text): string {
180
+    public static function escapeString(string $text): string {
181 181
         return self::$connection->real_escape_string($text);
182 182
     }
183 183
 
@@ -192,7 +192,7 @@  discard block
 block discarded – undo
192 192
      *
193 193
      * @return mysqli_result|bool
194 194
      */
195
-    public static function pureQuery (string $query): mysqli_result|bool {
195
+    public static function pureQuery(string $query): mysqli_result | bool {
196 196
         return self::$connection->query($query);
197 197
     }
198 198
 
@@ -211,7 +211,7 @@  discard block
 block discarded – undo
211 211
      *
212 212
      * @return mysqli_result|bool
213 213
      */
214
-    public static function query (string $query, array $vars = [], bool $need_result = true): mysqli_result|bool {
214
+    public static function query(string $query, array $vars = [], bool $need_result = true): mysqli_result | bool {
215 215
         $prepare = self::$connection->prepare($query);
216 216
         $types = '';
217 217
         foreach ($vars as $var) {
@@ -226,7 +226,7 @@  discard block
 block discarded – undo
226 226
             }
227 227
         }
228 228
         if (!empty($types)) {
229
-            $prepare->bind_param($types,...$vars);
229
+            $prepare->bind_param($types, ...$vars);
230 230
         }
231 231
         if (!$prepare->execute()) {
232 232
             logger::write(loggerTypes::WARNING, $prepare->error);
@@ -235,7 +235,7 @@  discard block
 block discarded – undo
235 235
         return $need_result ? $prepare->get_result() : true;
236 236
     }
237 237
 
238
-    private static function makeArrayReady (string &$query, array $array, string $operator = ' AND '): array {
238
+    private static function makeArrayReady(string &$query, array $array, string $operator = ' AND '): array {
239 239
         $first = true;
240 240
         $values = [];
241 241
         foreach ($array as $name => $value) {
@@ -251,7 +251,7 @@  discard block
 block discarded – undo
251 251
         return $values;
252 252
     }
253 253
 
254
-    private static function makeQueryReady (string &$query, array $where = null, int $count = null, int $offset = null): array {
254
+    private static function makeQueryReady(string &$query, array $where = null, int $count = null, int $offset = null): array {
255 255
         $values = [];
256 256
         if (!empty($where)) {
257 257
             $query .= " WHERE";
@@ -278,7 +278,7 @@  discard block
 block discarded – undo
278 278
      *
279 279
      * @return mysqli_result|bool
280 280
      */
281
-    public static function delete (string $table, array $where = null, int $count = null, int $offset = null): mysqli_result|bool {
281
+    public static function delete(string $table, array $where = null, int $count = null, int $offset = null): mysqli_result | bool {
282 282
         $query = "DELETE FROM `$table`";
283 283
         $res = self::makeQueryReady($query, $where, $count, $offset);
284 284
         return self::query($query, $res, false);
@@ -297,7 +297,7 @@  discard block
 block discarded – undo
297 297
      *
298 298
      * @return mysqli_result|bool
299 299
      */
300
-    public static function update (string $table, array $modify, array $where = null, int $count = null, int $offset = null): mysqli_result|bool {
300
+    public static function update(string $table, array $modify, array $where = null, int $count = null, int $offset = null): mysqli_result | bool {
301 301
         $query = "UPDATE `$table` SET";
302 302
         $values = self::makeArrayReady($query, $modify, ', ');
303 303
         $res = self::makeQueryReady($query, $where, $count, $offset);
@@ -315,11 +315,11 @@  discard block
 block discarded – undo
315 315
      *
316 316
      * @return mysqli_result|bool
317 317
      */
318
-    public static function insert (string $table, string|array $columns, array|string $values): mysqli_result|bool {
318
+    public static function insert(string $table, string | array $columns, array | string $values): mysqli_result | bool {
319 319
         $query = "INSERT INTO `$table`(";
320
-        $query .= '`' . (is_string($columns) ? $columns : implode('`,`', $columns)) . '`) VALUES (';
320
+        $query .= '`'.(is_string($columns) ? $columns : implode('`,`', $columns)).'`) VALUES (';
321 321
         if (is_string($values)) $values = [$values];
322
-        $query .= '?' . str_repeat(',?', count($values) - 1) . ')';
322
+        $query .= '?'.str_repeat(',?', count($values) - 1).')';
323 323
         return self::query($query, $values, false);
324 324
     }
325 325
 
@@ -338,13 +338,13 @@  discard block
 block discarded – undo
338 338
      *
339 339
      * @return mysqli_result|bool
340 340
      */
341
-    public static function select (string $table, array|string $columns = '*', array $where = null, int $count = null, int $offset = null): mysqli_result|bool {
341
+    public static function select(string $table, array | string $columns = '*', array $where = null, int $count = null, int $offset = null): mysqli_result | bool {
342 342
         $query = "SELECT ";
343 343
         if ($columns == '*') {
344 344
             $query .= "* ";
345 345
         }
346 346
         else {
347
-            $query .= '`' . (is_string($columns) ? $columns : implode('`,`', $columns)) . '` ';
347
+            $query .= '`'.(is_string($columns) ? $columns : implode('`,`', $columns)).'` ';
348 348
         }
349 349
         $query .= "FROM `$table`";
350 350
         $res = self::makeQueryReady($query, $where, $count, $offset);
@@ -362,7 +362,7 @@  discard block
 block discarded – undo
362 362
      *
363 363
      * @return null|bool|array
364 364
      */
365
-    public static function selectArray (string $table, array|string $columns = '*', array $where = null): bool|array|null {
365
+    public static function selectArray(string $table, array | string $columns = '*', array $where = null): bool | array | null {
366 366
         $res = self::select($table, $columns, $where, 1);
367 367
         if ($res) {
368 368
             return $res->fetch_assoc();
@@ -379,7 +379,7 @@  discard block
 block discarded – undo
379 379
      * @param array|string $columns sets column that you want to retrieve , set '*' to retrieve all , default : '*'
380 380
      * @param array|null   $where   Set your ifs default : null
381 381
      */
382
-    public static function selectObject (string $table, array|string $columns = '*', array $where = null) {
382
+    public static function selectObject(string $table, array | string $columns = '*', array $where = null) {
383 383
         $res = self::select($table, $columns, $where, 1);
384 384
         if ($res) {
385 385
             return $res->fetch_object();
@@ -401,7 +401,7 @@  discard block
 block discarded – undo
401 401
      *
402 402
      * @return bool|Generator
403 403
      */
404
-    public static function selectEach (string $table, array|string $columns = '*', array $where = null, int $count = null, int $offset = null): bool|Generator {
404
+    public static function selectEach(string $table, array | string $columns = '*', array $where = null, int $count = null, int $offset = null): bool | Generator {
405 405
         $res = self::select($table, $columns, $where, $count, $offset);
406 406
         if ($res) {
407 407
             while ($row = $res->fetch_assoc()) yield $row;
Please login to merge, or discard this patch.