@@ -11,7 +11,7 @@ |
||
11 | 11 | /** Keep all of properties which has sub properties */ |
12 | 12 | private const subs = []; |
13 | 13 | |
14 | - public function __construct(stdClass|null $object = null) { |
|
14 | + public function __construct(stdClass | null $object = null) { |
|
15 | 15 | if ($object != null) { |
16 | 16 | parent::__construct($object, self::subs); |
17 | 17 | } |
@@ -32,13 +32,13 @@ discard block |
||
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 |
||
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 |
||
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 |
||
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 | } |
@@ -85,51 +85,41 @@ |
||
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 | } |
@@ -17,40 +17,40 @@ |
||
17 | 17 | /** |
18 | 18 | * @internal Only for BPT self usage , Don't use it in your source! |
19 | 19 | */ |
20 | - public static function init(string $method,array $data): bool { |
|
20 | + public static function init(string $method, array $data): bool { |
|
21 | 21 | self::checkWebhook(); |
22 | 22 | self::sieveData($data); |
23 | 23 | self::$is_answered = true; |
24 | 24 | $data['method'] = $method; |
25 | 25 | $payload = json_encode($data); |
26 | - header('Content-Type: application/json;Content-Length: ' . strlen($payload)); |
|
26 | + header('Content-Type: application/json;Content-Length: '.strlen($payload)); |
|
27 | 27 | echo $payload; |
28 | 28 | return true; |
29 | 29 | } |
30 | 30 | |
31 | - public static function isAnswered (): bool { |
|
31 | + public static function isAnswered(): bool { |
|
32 | 32 | return self::$is_answered; |
33 | 33 | } |
34 | 34 | |
35 | 35 | private static function checkWebhook(): void { |
36 | - if(settings::$receiver === receiver::GETUPDATES) { |
|
37 | - logger::write('Answer mode only work when receiver is webhook',loggerTypes::ERROR); |
|
36 | + if (settings::$receiver === receiver::GETUPDATES) { |
|
37 | + logger::write('Answer mode only work when receiver is webhook', loggerTypes::ERROR); |
|
38 | 38 | throw new bptException('ANSWER_MODE_GETUPDATES'); |
39 | 39 | } |
40 | - if(settings::$multi) { |
|
41 | - logger::write('You can not use answer mode when multi setting is on',loggerTypes::ERROR); |
|
40 | + if (settings::$multi) { |
|
41 | + logger::write('You can not use answer mode when multi setting is on', loggerTypes::ERROR); |
|
42 | 42 | throw new bptException('ANSWER_MODE_MULTI'); |
43 | 43 | } |
44 | 44 | } |
45 | 45 | |
46 | 46 | private static function sieveData(array &$data): void { |
47 | - unset($data['token'],$data['forgot'],$data['return_array']); |
|
47 | + unset($data['token'], $data['forgot'], $data['return_array']); |
|
48 | 48 | |
49 | - foreach ($data as $key=>&$value){ |
|
50 | - if (!isset($value)){ |
|
49 | + foreach ($data as $key=>&$value) { |
|
50 | + if (!isset($value)) { |
|
51 | 51 | unset($data[$key]); |
52 | 52 | } |
53 | - elseif (is_array($value) || is_object($value)){ |
|
53 | + elseif (is_array($value) || is_object($value)) { |
|
54 | 54 | $value = json_encode($value); |
55 | 55 | } |
56 | 56 | } |
@@ -49,8 +49,7 @@ |
||
49 | 49 | foreach ($data as $key=>&$value){ |
50 | 50 | if (!isset($value)){ |
51 | 51 | unset($data[$key]); |
52 | - } |
|
53 | - elseif (is_array($value) || is_object($value)){ |
|
52 | + } elseif (is_array($value) || is_object($value)){ |
|
54 | 53 | $value = json_encode($value); |
55 | 54 | } |
56 | 55 | } |
@@ -811,19 +811,16 @@ discard block |
||
811 | 811 | foreach ($arguments['media'] as $key => $media) { |
812 | 812 | if ($media['media'] instanceof CURLFile) { |
813 | 813 | $remove_answer = true; |
814 | - } |
|
815 | - elseif (is_string($media['media']) && file_exists(realpath($media['media']))) { |
|
814 | + } elseif (is_string($media['media']) && file_exists(realpath($media['media']))) { |
|
816 | 815 | $arguments['media'][$key]['media'] = new CURLFile($media['media']); |
817 | 816 | $remove_answer = true; |
818 | 817 | } |
819 | 818 | } |
820 | - } |
|
821 | - elseif ($file_params = self::methodFile($name)) { |
|
819 | + } elseif ($file_params = self::methodFile($name)) { |
|
822 | 820 | foreach ($file_params as $param) { |
823 | 821 | if ($arguments[$param] instanceof CURLFile) { |
824 | 822 | $remove_answer = true; |
825 | - } |
|
826 | - elseif (isset($arguments[$param]) && is_string($arguments[$param]) && file_exists(realpath($arguments[$param]))) { |
|
823 | + } elseif (isset($arguments[$param]) && is_string($arguments[$param]) && file_exists(realpath($arguments[$param]))) { |
|
827 | 824 | $arguments[$param] = new CURLFile($arguments[$param]); |
828 | 825 | $remove_answer = true; |
829 | 826 | } |
@@ -861,8 +858,7 @@ discard block |
||
861 | 858 | if (!isset($arguments[$default])){ |
862 | 859 | $arguments[$default] = self::catchFields($default); |
863 | 860 | } |
864 | - } |
|
865 | - elseif (isset(BPT::$update->$key) || $key === 'other') { |
|
861 | + } elseif (isset(BPT::$update->$key) || $key === 'other') { |
|
866 | 862 | foreach ($default as $def) { |
867 | 863 | if (!isset($arguments[$def])){ |
868 | 864 | $arguments[$def] = self::catchFields($def); |
@@ -919,9 +915,13 @@ discard block |
||
919 | 915 | default => false |
920 | 916 | }; |
921 | 917 | case fields::FILE_ID : |
922 | - if (isset(BPT::$update->message)) $type = 'message'; |
|
923 | - elseif (isset(BPT::$update->edited_message)) $type = 'edited_message'; |
|
924 | - else return false; |
|
918 | + if (isset(BPT::$update->message)) { |
|
919 | + $type = 'message'; |
|
920 | + } elseif (isset(BPT::$update->edited_message)) { |
|
921 | + $type = 'edited_message'; |
|
922 | + } else { |
|
923 | + return false; |
|
924 | + } |
|
925 | 925 | |
926 | 926 | return match(true) { |
927 | 927 | isset(BPT::$update->$type->animation) => BPT::$update->$type->animation->file_id, |
@@ -812,30 +812,30 @@ discard block |
||
812 | 812 | 'getGameHighScores' => ['BPT\types\gameHighScore'] |
813 | 813 | ]; |
814 | 814 | |
815 | - public static function __callStatic (string $name, array $arguments) { |
|
815 | + public static function __callStatic(string $name, array $arguments) { |
|
816 | 816 | if (!$action = self::methodAction($name)) { |
817 | - logger::write("$name method is not supported",loggerTypes::ERROR); |
|
817 | + logger::write("$name method is not supported", loggerTypes::ERROR); |
|
818 | 818 | throw new bptException('METHOD_NOT_FOUND'); |
819 | 819 | } |
820 | 820 | self::checkArguments($arguments); |
821 | - self::keysName($action,$arguments); |
|
822 | - self::readyFile($action,$arguments); |
|
821 | + self::keysName($action, $arguments); |
|
822 | + self::readyFile($action, $arguments); |
|
823 | 823 | self::cleanArguments($arguments); |
824 | - self::setDefaults($action,$arguments); |
|
824 | + self::setDefaults($action, $arguments); |
|
825 | 825 | |
826 | 826 | if (isset($arguments['answer']) && $arguments['answer'] === true) { |
827 | 827 | unset($arguments['answer']); |
828 | 828 | if (!answer::isAnswered()) { |
829 | - return answer::init($action,$arguments); |
|
829 | + return answer::init($action, $arguments); |
|
830 | 830 | } |
831 | - logger::write('you can use answer mode only once for each webhook update, Others will be called like normal',loggerTypes::WARNING); |
|
831 | + logger::write('you can use answer mode only once for each webhook update, Others will be called like normal', loggerTypes::WARNING); |
|
832 | 832 | } |
833 | - $result = curl::init($action,$arguments); |
|
833 | + $result = curl::init($action, $arguments); |
|
834 | 834 | if (!is_object($result)) { |
835 | - logger::write("Telegram $action method failed : " . $result, loggerTypes::WARNING); |
|
835 | + logger::write("Telegram $action method failed : ".$result, loggerTypes::WARNING); |
|
836 | 836 | return false; |
837 | 837 | } |
838 | - return self::processResponse($action,$result); |
|
838 | + return self::processResponse($action, $result); |
|
839 | 839 | } |
840 | 840 | |
841 | 841 | private static function checkArguments(array &$arguments): void { |
@@ -844,7 +844,7 @@ discard block |
||
844 | 844 | } |
845 | 845 | } |
846 | 846 | |
847 | - private static function keysName (string $name, array &$arguments): void { |
|
847 | + private static function keysName(string $name, array &$arguments): void { |
|
848 | 848 | foreach ($arguments as $key => $argument) { |
849 | 849 | if (is_numeric($key) && isset(self::METHODS_KEYS[$name][$key])) { |
850 | 850 | $arguments[self::METHODS_KEYS[$name][$key]] = $argument; |
@@ -853,7 +853,7 @@ discard block |
||
853 | 853 | } |
854 | 854 | } |
855 | 855 | |
856 | - private static function methodAction(string $name): string|false { |
|
856 | + private static function methodAction(string $name): string | false { |
|
857 | 857 | return self::METHODS_ACTION[str_replace('_', '', strtolower($name))] ?? false; |
858 | 858 | } |
859 | 859 | |
@@ -886,11 +886,11 @@ discard block |
||
886 | 886 | } |
887 | 887 | } |
888 | 888 | |
889 | - private static function methodFile(string $name): array|false { |
|
889 | + private static function methodFile(string $name): array | false { |
|
890 | 890 | return self::METHODS_WITH_FILE[$name] ?? false; |
891 | 891 | } |
892 | 892 | |
893 | - private static function methodReturn(string $name,stdClass $response) { |
|
893 | + private static function methodReturn(string $name, stdClass $response) { |
|
894 | 894 | if (!isset(self::METHODS_RETURN[$name])) { |
895 | 895 | return $response->result; |
896 | 896 | } |
@@ -909,13 +909,13 @@ discard block |
||
909 | 909 | $defaults = self::METHODS_EXTRA_DEFAULTS[$name]; |
910 | 910 | foreach ($defaults as $key => $default) { |
911 | 911 | if (is_numeric($key)) { |
912 | - if (!isset($arguments[$default])){ |
|
912 | + if (!isset($arguments[$default])) { |
|
913 | 913 | $arguments[$default] = self::catchFields($default); |
914 | 914 | } |
915 | 915 | } |
916 | 916 | elseif (isset(BPT::$update->$key) || $key === 'other') { |
917 | 917 | foreach ($default as $def) { |
918 | - if (!isset($arguments[$def])){ |
|
918 | + if (!isset($arguments[$def])) { |
|
919 | 919 | $arguments[$def] = self::catchFields($def); |
920 | 920 | } |
921 | 921 | } |
@@ -934,13 +934,13 @@ discard block |
||
934 | 934 | self::$status = $response->ok; |
935 | 935 | self::$pure_response = $response; |
936 | 936 | if (!$response->ok) { |
937 | - logger::write("Telegram $name method failed : " . json_encode($response), loggerTypes::WARNING); |
|
937 | + logger::write("Telegram $name method failed : ".json_encode($response), loggerTypes::WARNING); |
|
938 | 938 | return new responseError($response); |
939 | 939 | } |
940 | - return self::methodReturn($name,$response); |
|
940 | + return self::methodReturn($name, $response); |
|
941 | 941 | } |
942 | 942 | |
943 | - private static function cleanArguments (array &$arguments): void { |
|
943 | + private static function cleanArguments(array &$arguments): void { |
|
944 | 944 | foreach ($arguments as $key => $argument) { |
945 | 945 | if ($argument == [] || $argument === null) { |
946 | 946 | unset($arguments[$key]); |
@@ -955,7 +955,7 @@ discard block |
||
955 | 955 | * |
956 | 956 | * @return int|string|bool |
957 | 957 | */ |
958 | - public static function catchFields (string $field): int|string|bool { |
|
958 | + public static function catchFields(string $field): int | string | bool { |
|
959 | 959 | switch ($field) { |
960 | 960 | case fields::CHAT_ID : |
961 | 961 | case fields::FROM_CHAT_ID : |
@@ -1102,13 +1102,13 @@ discard block |
||
1102 | 1102 | default => false |
1103 | 1103 | }; |
1104 | 1104 | case fields::URL : |
1105 | - return 'https://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI']; |
|
1105 | + return 'https://'.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; |
|
1106 | 1106 | default: |
1107 | 1107 | return false; |
1108 | 1108 | } |
1109 | 1109 | } |
1110 | 1110 | |
1111 | - public static function fileLink (string|null $file_id = null): bool|string { |
|
1111 | + public static function fileLink(string | null $file_id = null): bool | string { |
|
1112 | 1112 | $file = request::getFile($file_id); |
1113 | 1113 | if (!isset($file->file_path)) { |
1114 | 1114 | return false; |
@@ -1130,7 +1130,7 @@ discard block |
||
1130 | 1130 | * |
1131 | 1131 | * @return bool |
1132 | 1132 | */ |
1133 | - public static function downloadFile (string|null $destination = null, string|null $file_id = null): bool { |
|
1133 | + public static function downloadFile(string | null $destination = null, string | null $file_id = null): bool { |
|
1134 | 1134 | return tools::downloadFile(self::fileLink($file_id), $destination); |
1135 | 1135 | } |
1136 | 1136 | |
@@ -1148,10 +1148,10 @@ discard block |
||
1148 | 1148 | * |
1149 | 1149 | * @return message|bool|responseError |
1150 | 1150 | */ |
1151 | - 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 { |
|
1151 | + 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 { |
|
1152 | 1152 | $type = tools::fileType($file_id); |
1153 | 1153 | return match ($type) { |
1154 | - fileTypes::VIDEO => request::sendVideo($file_id, $chat_id, $message_thread_id, null, null, null, null, $caption, $parse_mode, $caption_entities, false,null, $disable_notification, $protect_content, $reply_to_message_id, $allow_sending_without_reply, $reply_markup, $token, $forgot, $answer), |
|
1154 | + fileTypes::VIDEO => request::sendVideo($file_id, $chat_id, $message_thread_id, null, null, null, null, $caption, $parse_mode, $caption_entities, false, null, $disable_notification, $protect_content, $reply_to_message_id, $allow_sending_without_reply, $reply_markup, $token, $forgot, $answer), |
|
1155 | 1155 | fileTypes::VIDEO_NOTE => request::sendVideoNote($file_id, $chat_id, $message_thread_id, null, null, null, $disable_notification, $protect_content, $reply_to_message_id, $allow_sending_without_reply, $reply_markup, $token, $forgot, $answer), |
1156 | 1156 | fileTypes::ANIMATION => request::sendAnimation($file_id, $chat_id, $message_thread_id, null, null, null, null, $caption, $parse_mode, $caption_entities, false, $disable_notification, $protect_content, $reply_to_message_id, $allow_sending_without_reply, $reply_markup, $token, $forgot, $answer), |
1157 | 1157 | fileTypes::AUDIO => request::sendAudio($file_id, $chat_id, $message_thread_id, $caption, $parse_mode, $caption_entities, null, null, null, null, $disable_notification, $protect_content, $reply_to_message_id, $allow_sending_without_reply, $reply_markup, $token, $forgot, $answer), |
@@ -10,8 +10,8 @@ discard block |
||
10 | 10 | * @Version: 2.76 =>[ 1399/11/28 = 1442/07/04 = 2021/02/16 ] |
11 | 11 | */ |
12 | 12 | class jdf { |
13 | - public static function jdate ($format, $timestamp = '', $none = '', $time_zone = 'Asia/Tehran', $tr_num = 'fa') { |
|
14 | - $T_sec = 0;/* <= رفع خطاي زمان سرور ، با اعداد '+' و '-' بر حسب ثانيه */ |
|
13 | + public static function jdate($format, $timestamp = '', $none = '', $time_zone = 'Asia/Tehran', $tr_num = 'fa') { |
|
14 | + $T_sec = 0; /* <= رفع خطاي زمان سرور ، با اعداد '+' و '-' بر حسب ثانيه */ |
|
15 | 15 | if ($time_zone != 'local') date_default_timezone_set(($time_zone === '') ? 'Asia/Tehran' : $time_zone); |
16 | 16 | $ts = $T_sec + (($timestamp === '') ? time() : self::tr_num($timestamp)); |
17 | 17 | $date = explode('_', date('H_i_j_n_O_P_s_w_Y', $ts)); |
@@ -55,13 +55,13 @@ discard block |
||
55 | 55 | $out .= (int) ($j_m / 3.1) + 1; |
56 | 56 | break; |
57 | 57 | case 'c': |
58 | - $out .= $j_y . '/' . $j_m . '/' . $j_d . ' ،' . $date[0] . ':' . $date[1] . ':' . $date[6] . ' ' . $date[5]; |
|
58 | + $out .= $j_y.'/'.$j_m.'/'.$j_d.' ،'.$date[0].':'.$date[1].':'.$date[6].' '.$date[5]; |
|
59 | 59 | break; |
60 | 60 | case 'C': |
61 | 61 | $out .= (int) (($j_y + 99) / 100); |
62 | 62 | break; |
63 | 63 | case 'd': |
64 | - $out .= ($j_d < 10) ? '0' . $j_d : $j_d; |
|
64 | + $out .= ($j_d < 10) ? '0'.$j_d : $j_d; |
|
65 | 65 | break; |
66 | 66 | case 'D': |
67 | 67 | $out .= self::jdate_words(['kh' => $date[7]], ' '); |
@@ -97,7 +97,7 @@ discard block |
||
97 | 97 | $out .= $kab; |
98 | 98 | break; |
99 | 99 | case 'm': |
100 | - $out .= ($j_m > 9) ? $j_m : '0' . $j_m; |
|
100 | + $out .= ($j_m > 9) ? $j_m : '0'.$j_m; |
|
101 | 101 | break; |
102 | 102 | case 'M': |
103 | 103 | $out .= self::jdate_words(['km' => $j_m], ' '); |
@@ -130,7 +130,7 @@ discard block |
||
130 | 130 | break; |
131 | 131 | case 'r': |
132 | 132 | $key = self::jdate_words(['rh' => $date[7], 'mm' => $j_m]); |
133 | - $out .= $date[0] . ':' . $date[1] . ':' . $date[6] . ' ' . $date[4] . ' ' . $key['rh'] . '، ' . $j_d . ' ' . $key['mm'] . ' ' . $j_y; |
|
133 | + $out .= $date[0].':'.$date[1].':'.$date[6].' '.$date[4].' '.$key['rh'].'، '.$j_d.' '.$key['mm'].' '.$j_y; |
|
134 | 134 | break; |
135 | 135 | case 's': |
136 | 136 | $out .= $date[6]; |
@@ -165,7 +165,7 @@ discard block |
||
165 | 165 | } |
166 | 166 | $aks = $avs + $kab; |
167 | 167 | if ($aks == 7) $aks = 0; |
168 | - $out .= (($kab + 363 - $doy) < $aks and $aks < 3) ? '01' : (($num < 10) ? '0' . $num : $num); |
|
168 | + $out .= (($kab + 363 - $doy) < $aks and $aks < 3) ? '01' : (($num < 10) ? '0'.$num : $num); |
|
169 | 169 | break; |
170 | 170 | case 'y': |
171 | 171 | $out .= substr($j_y, 2, 2); |
@@ -182,8 +182,8 @@ discard block |
||
182 | 182 | } |
183 | 183 | return ($tr_num != 'en') ? self::tr_num($out, 'fa', '.') : $out; |
184 | 184 | } |
185 | - public static function jstrftime ($format, $timestamp = '', $none = '', $time_zone = 'Asia/Tehran', $tr_num = 'fa') { |
|
186 | - $T_sec = 0;/* <= رفع خطاي زمان سرور ، با اعداد '+' و '-' بر حسب ثانيه */ |
|
185 | + public static function jstrftime($format, $timestamp = '', $none = '', $time_zone = 'Asia/Tehran', $tr_num = 'fa') { |
|
186 | + $T_sec = 0; /* <= رفع خطاي زمان سرور ، با اعداد '+' و '-' بر حسب ثانيه */ |
|
187 | 187 | if ($time_zone != 'local') date_default_timezone_set(($time_zone === '') ? 'Asia/Tehran' : $time_zone); |
188 | 188 | $ts = $T_sec + (($timestamp === '') ? time() : self::tr_num($timestamp)); |
189 | 189 | $date = explode('_', date('h_H_i_j_n_s_w_Y', $ts)); |
@@ -211,10 +211,10 @@ discard block |
||
211 | 211 | $out .= self::jdate_words(['rh' => $date[6]], ' '); |
212 | 212 | break; |
213 | 213 | case 'd': |
214 | - $out .= ($j_d < 10) ? '0' . $j_d : $j_d; |
|
214 | + $out .= ($j_d < 10) ? '0'.$j_d : $j_d; |
|
215 | 215 | break; |
216 | 216 | case 'e': |
217 | - $out .= ($j_d < 10) ? ' ' . $j_d : $j_d; |
|
217 | + $out .= ($j_d < 10) ? ' '.$j_d : $j_d; |
|
218 | 218 | break; |
219 | 219 | case 'j': |
220 | 220 | $out .= str_pad($doy + 1, 3, 0, STR_PAD_LEFT); |
@@ -231,7 +231,7 @@ discard block |
||
231 | 231 | if ($avs < 0) $avs += 7; |
232 | 232 | $num = (int) (($doy + $avs) / 7) + 1; |
233 | 233 | if ($avs > 3 or $avs == 1) $num--; |
234 | - $out .= ($num < 10) ? '0' . $num : $num; |
|
234 | + $out .= ($num < 10) ? '0'.$num : $num; |
|
235 | 235 | break; |
236 | 236 | case 'V': |
237 | 237 | $avs = (($date[6] == 6) ? 0 : $date[6] + 1) - ($doy % 7); |
@@ -245,14 +245,14 @@ discard block |
||
245 | 245 | } |
246 | 246 | $aks = $avs + $kab; |
247 | 247 | if ($aks == 7) $aks = 0; |
248 | - $out .= (($kab + 363 - $doy) < $aks and $aks < 3) ? '01' : (($num < 10) ? '0' . $num : $num); |
|
248 | + $out .= (($kab + 363 - $doy) < $aks and $aks < 3) ? '01' : (($num < 10) ? '0'.$num : $num); |
|
249 | 249 | break; |
250 | 250 | case 'W': |
251 | 251 | $avs = (($date[6] == 6) ? 0 : $date[6] + 1) - ($doy % 7); |
252 | 252 | if ($avs < 0) $avs += 7; |
253 | 253 | $num = (int) (($doy + $avs) / 7) + 1; |
254 | 254 | if ($avs > 3) $num--; |
255 | - $out .= ($num < 10) ? '0' . $num : $num; |
|
255 | + $out .= ($num < 10) ? '0'.$num : $num; |
|
256 | 256 | break; |
257 | 257 | /* Month */ |
258 | 258 | case 'b': |
@@ -263,12 +263,12 @@ discard block |
||
263 | 263 | $out .= self::jdate_words(['mm' => $j_m], ' '); |
264 | 264 | break; |
265 | 265 | case 'm': |
266 | - $out .= ($j_m > 9) ? $j_m : '0' . $j_m; |
|
266 | + $out .= ($j_m > 9) ? $j_m : '0'.$j_m; |
|
267 | 267 | break; |
268 | 268 | /* Year */ |
269 | 269 | case 'C': |
270 | 270 | $tmp = (int) ($j_y / 100); |
271 | - $out .= ($tmp > 9) ? $tmp : '0' . $tmp; |
|
271 | + $out .= ($tmp > 9) ? $tmp : '0'.$tmp; |
|
272 | 272 | break; |
273 | 273 | case 'g': |
274 | 274 | $jdw = ($date[6] == 6) ? 0 : $date[6] + 1; |
@@ -294,7 +294,7 @@ discard block |
||
294 | 294 | $out .= $date[0]; |
295 | 295 | break; |
296 | 296 | case 'l': |
297 | - $out .= ($date[0] > 9) ? $date[0] : ' ' . (int) $date[0]; |
|
297 | + $out .= ($date[0] > 9) ? $date[0] : ' '.(int) $date[0]; |
|
298 | 298 | break; |
299 | 299 | case 'M': |
300 | 300 | $out .= $date[2]; |
@@ -306,19 +306,19 @@ discard block |
||
306 | 306 | $out .= ($date[1] < 12) ? 'ق.ظ' : 'ب.ظ'; |
307 | 307 | break; |
308 | 308 | case 'r': |
309 | - $out .= $date[0] . ':' . $date[2] . ':' . $date[5] . ' ' . (($date[1] < 12) ? 'قبل از ظهر' : 'بعد از ظهر'); |
|
309 | + $out .= $date[0].':'.$date[2].':'.$date[5].' '.(($date[1] < 12) ? 'قبل از ظهر' : 'بعد از ظهر'); |
|
310 | 310 | break; |
311 | 311 | case 'R': |
312 | - $out .= $date[1] . ':' . $date[2]; |
|
312 | + $out .= $date[1].':'.$date[2]; |
|
313 | 313 | break; |
314 | 314 | case 'S': |
315 | 315 | $out .= $date[5]; |
316 | 316 | break; |
317 | 317 | case 'T': |
318 | - $out .= $date[1] . ':' . $date[2] . ':' . $date[5]; |
|
318 | + $out .= $date[1].':'.$date[2].':'.$date[5]; |
|
319 | 319 | break; |
320 | 320 | case 'X': |
321 | - $out .= $date[0] . ':' . $date[2] . ':' . $date[5]; |
|
321 | + $out .= $date[0].':'.$date[2].':'.$date[5]; |
|
322 | 322 | break; |
323 | 323 | case 'z': |
324 | 324 | $out .= date('O', $ts); |
@@ -329,19 +329,19 @@ discard block |
||
329 | 329 | /* Time and Date Stamps */ |
330 | 330 | case 'c': |
331 | 331 | $key = self::jdate_words(['rh' => $date[6], 'mm' => $j_m]); |
332 | - $out .= $date[1] . ':' . $date[2] . ':' . $date[5] . ' ' . date('P', $ts) . ' ' . $key['rh'] . '، ' . $j_d . ' ' . $key['mm'] . ' ' . $j_y; |
|
332 | + $out .= $date[1].':'.$date[2].':'.$date[5].' '.date('P', $ts).' '.$key['rh'].'، '.$j_d.' '.$key['mm'].' '.$j_y; |
|
333 | 333 | break; |
334 | 334 | case 'D': |
335 | - $out .= substr($j_y, 2, 2) . '/' . (($j_m > 9) ? $j_m : '0' . $j_m) . '/' . (($j_d < 10) ? '0' . $j_d : $j_d); |
|
335 | + $out .= substr($j_y, 2, 2).'/'.(($j_m > 9) ? $j_m : '0'.$j_m).'/'.(($j_d < 10) ? '0'.$j_d : $j_d); |
|
336 | 336 | break; |
337 | 337 | case 'F': |
338 | - $out .= $j_y . '-' . (($j_m > 9) ? $j_m : '0' . $j_m) . '-' . (($j_d < 10) ? '0' . $j_d : $j_d); |
|
338 | + $out .= $j_y.'-'.(($j_m > 9) ? $j_m : '0'.$j_m).'-'.(($j_d < 10) ? '0'.$j_d : $j_d); |
|
339 | 339 | break; |
340 | 340 | case 's': |
341 | 341 | $out .= $ts; |
342 | 342 | break; |
343 | 343 | case 'x': |
344 | - $out .= substr($j_y, 2, 2) . '/' . (($j_m > 9) ? $j_m : '0' . $j_m) . '/' . (($j_d < 10) ? '0' . $j_d : $j_d); |
|
344 | + $out .= substr($j_y, 2, 2).'/'.(($j_m > 9) ? $j_m : '0'.$j_m).'/'.(($j_d < 10) ? '0'.$j_d : $j_d); |
|
345 | 345 | break; |
346 | 346 | /* Miscellaneous */ |
347 | 347 | case 'n': |
@@ -359,7 +359,7 @@ discard block |
||
359 | 359 | } |
360 | 360 | return ($tr_num != 'en') ? self::tr_num($out, 'fa', '.') : $out; |
361 | 361 | } |
362 | - public static function jmktime ($h = '', $m = '', $s = '', $jm = '', $jd = '', $jy = '', $none = '', $timezone = 'Asia/Tehran') { |
|
362 | + public static function jmktime($h = '', $m = '', $s = '', $jm = '', $jd = '', $jy = '', $none = '', $timezone = 'Asia/Tehran') { |
|
363 | 363 | if ($timezone != 'local') date_default_timezone_set($timezone); |
364 | 364 | if ($h === '') { |
365 | 365 | return time(); |
@@ -372,7 +372,7 @@ discard block |
||
372 | 372 | $jm, |
373 | 373 | $jd, |
374 | 374 | $jy |
375 | - ] = explode('_', self::tr_num($h . '_' . $m . '_' . $s . '_' . $jm . '_' . $jd . '_' . $jy)); |
|
375 | + ] = explode('_', self::tr_num($h.'_'.$m.'_'.$s.'_'.$jm.'_'.$jd.'_'.$jy)); |
|
376 | 376 | if ($m === '') { |
377 | 377 | return mktime($h); |
378 | 378 | } |
@@ -405,7 +405,7 @@ discard block |
||
405 | 405 | } |
406 | 406 | } |
407 | 407 | } |
408 | - public static function jgetdate ($timestamp = '', $none = '', $timezone = 'Asia/Tehran', $tn = 'en') { |
|
408 | + public static function jgetdate($timestamp = '', $none = '', $timezone = 'Asia/Tehran', $tn = 'en') { |
|
409 | 409 | $ts = ($timestamp === '') ? time() : self::tr_num($timestamp); |
410 | 410 | $jdate = explode('_', self::jdate('F_G_i_j_l_n_s_w_Y_z', $ts, '', $timezone, $tn)); |
411 | 411 | return [ |
@@ -422,17 +422,17 @@ discard block |
||
422 | 422 | 0 => self::tr_num($ts, $tn) |
423 | 423 | ]; |
424 | 424 | } |
425 | - public static function jcheckdate ($jm, $jd, $jy) { |
|
426 | - [$jm, $jd, $jy] = explode('_', self::tr_num($jm . '_' . $jd . '_' . $jy)); |
|
425 | + public static function jcheckdate($jm, $jd, $jy) { |
|
426 | + [$jm, $jd, $jy] = explode('_', self::tr_num($jm.'_'.$jd.'_'.$jy)); |
|
427 | 427 | $l_d = ($jm == 12 and ((($jy + 12) % 33) % 4) != 1) ? 29 : (31 - (int) ($jm / 6.5)); |
428 | 428 | return ($jm > 12 or $jd > $l_d or $jm < 1 or $jd < 1 or $jy < 1) ? false : true; |
429 | 429 | } |
430 | - public static function tr_num ($str, $mod = 'en', $mf = '٫') { |
|
430 | + public static function tr_num($str, $mod = 'en', $mf = '٫') { |
|
431 | 431 | $num_a = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.']; |
432 | 432 | $key_a = ['۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹', $mf]; |
433 | 433 | return ($mod == 'fa') ? str_replace($num_a, $key_a, $str) : str_replace($key_a, $num_a, $str); |
434 | 434 | } |
435 | - public static function jdate_words ($array, $mod = '') { |
|
435 | + public static function jdate_words($array, $mod = '') { |
|
436 | 436 | foreach ($array as $type => $num) { |
437 | 437 | $num = (int) self::tr_num($num); |
438 | 438 | switch ($type) { |
@@ -460,7 +460,7 @@ discard block |
||
460 | 460 | 'هزار و چهارصد', |
461 | 461 | 'هزار و نهصد', |
462 | 462 | 'دوهزار' |
463 | - ], substr($num, 0, 2)) . ((substr($num, 2, 2) == '00') ? '' : ' و ') : '') . $h3 . $p34 . $h34 . $h4; |
|
463 | + ], substr($num, 0, 2)).((substr($num, 2, 2) == '00') ? '' : ' و ') : '').$h3.$p34.$h34.$h4; |
|
464 | 464 | break; |
465 | 465 | case 'mm': |
466 | 466 | $key = [ |
@@ -545,8 +545,8 @@ discard block |
||
545 | 545 | } |
546 | 546 | return ($mod === '') ? $array : implode($mod, $array); |
547 | 547 | } |
548 | - public static function gregorian_to_jalali ($gy, $gm, $gd, $mod = '') { |
|
549 | - [$gy, $gm, $gd] = explode('_', self::tr_num($gy . '_' . $gm . '_' . $gd));/* <= Extra :اين سطر ، جزء تابع اصلي نيست */ |
|
548 | + public static function gregorian_to_jalali($gy, $gm, $gd, $mod = '') { |
|
549 | + [$gy, $gm, $gd] = explode('_', self::tr_num($gy.'_'.$gm.'_'.$gd)); /* <= Extra :اين سطر ، جزء تابع اصلي نيست */ |
|
550 | 550 | $g_d_m = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334]; |
551 | 551 | $gy2 = ($gm > 2) ? ($gy + 1) : $gy; |
552 | 552 | $days = 355666 + (365 * $gy) + ((int) (($gy2 + 3) / 4)) - ((int) (($gy2 + 99) / 100)) + ((int) (($gy2 + 399) / 400)) + $gd + $g_d_m[$gm - 1]; |
@@ -566,10 +566,10 @@ discard block |
||
566 | 566 | $jm = 7 + (int) (($days - 186) / 30); |
567 | 567 | $jd = 1 + (($days - 186) % 30); |
568 | 568 | } |
569 | - return ($mod == '') ? [$jy, $jm, $jd] : $jy . $mod . $jm . $mod . $jd; |
|
569 | + return ($mod == '') ? [$jy, $jm, $jd] : $jy.$mod.$jm.$mod.$jd; |
|
570 | 570 | } |
571 | - public static function jalali_to_gregorian ($jy, $jm, $jd, $mod = '') { |
|
572 | - [$jy, $jm, $jd] = explode('_', self::tr_num($jy . '_' . $jm . '_' . $jd));/* <= Extra :اين سطر ، جزء تابع اصلي نيست */ |
|
571 | + public static function jalali_to_gregorian($jy, $jm, $jd, $mod = '') { |
|
572 | + [$jy, $jm, $jd] = explode('_', self::tr_num($jy.'_'.$jm.'_'.$jd)); /* <= Extra :اين سطر ، جزء تابع اصلي نيست */ |
|
573 | 573 | $jy += 1595; |
574 | 574 | $days = -355668 + (365 * $jy) + (((int) ($jy / 33)) * 8) + ((int) ((($jy % 33) + 3) / 4)) + $jd + (($jm < 7) ? ($jm - 1) * 31 : (($jm - 7) * 30) + 186); |
575 | 575 | $gy = 400 * ((int) ($days / 146097)); |
@@ -602,6 +602,6 @@ discard block |
||
602 | 602 | 31 |
603 | 603 | ]; |
604 | 604 | for ($gm = 0; $gm < 13 and $gd > $sal_a[$gm]; $gm++) $gd -= $sal_a[$gm]; |
605 | - return ($mod == '') ? [$gy, $gm, $gd] : $gy . $mod . $gm . $mod . $gd; |
|
605 | + return ($mod == '') ? [$gy, $gm, $gd] : $gy.$mod.$gm.$mod.$gd; |
|
606 | 606 | } |
607 | 607 | } |
608 | 608 | \ No newline at end of file |
@@ -12,7 +12,9 @@ discard block |
||
12 | 12 | class jdf { |
13 | 13 | public static function jdate ($format, $timestamp = '', $none = '', $time_zone = 'Asia/Tehran', $tr_num = 'fa') { |
14 | 14 | $T_sec = 0;/* <= رفع خطاي زمان سرور ، با اعداد '+' و '-' بر حسب ثانيه */ |
15 | - if ($time_zone != 'local') date_default_timezone_set(($time_zone === '') ? 'Asia/Tehran' : $time_zone); |
|
15 | + if ($time_zone != 'local') { |
|
16 | + date_default_timezone_set(($time_zone === '') ? 'Asia/Tehran' : $time_zone); |
|
17 | + } |
|
16 | 18 | $ts = $T_sec + (($timestamp === '') ? time() : self::tr_num($timestamp)); |
17 | 19 | $date = explode('_', date('H_i_j_n_O_P_s_w_Y', $ts)); |
18 | 20 | [$j_y, $j_m, $j_d] = self::gregorian_to_jalali($date[8], $date[3], $date[2]); |
@@ -155,16 +157,19 @@ discard block |
||
155 | 157 | break; |
156 | 158 | case 'W': |
157 | 159 | $avs = (($date[7] == 6) ? 0 : $date[7] + 1) - ($doy % 7); |
158 | - if ($avs < 0) $avs += 7; |
|
160 | + if ($avs < 0) { |
|
161 | + $avs += 7; |
|
162 | + } |
|
159 | 163 | $num = (int) (($doy + $avs) / 7); |
160 | 164 | if ($avs < 4) { |
161 | 165 | $num++; |
162 | - } |
|
163 | - elseif ($num < 1) { |
|
166 | + } elseif ($num < 1) { |
|
164 | 167 | $num = ($avs == 4 or $avs == ((((($j_y % 33) % 4) - 2) == ((int) (($j_y % 33) * 0.05))) ? 5 : 4)) ? 53 : 52; |
165 | 168 | } |
166 | 169 | $aks = $avs + $kab; |
167 | - if ($aks == 7) $aks = 0; |
|
170 | + if ($aks == 7) { |
|
171 | + $aks = 0; |
|
172 | + } |
|
168 | 173 | $out .= (($kab + 363 - $doy) < $aks and $aks < 3) ? '01' : (($num < 10) ? '0' . $num : $num); |
169 | 174 | break; |
170 | 175 | case 'y': |
@@ -184,7 +189,9 @@ discard block |
||
184 | 189 | } |
185 | 190 | public static function jstrftime ($format, $timestamp = '', $none = '', $time_zone = 'Asia/Tehran', $tr_num = 'fa') { |
186 | 191 | $T_sec = 0;/* <= رفع خطاي زمان سرور ، با اعداد '+' و '-' بر حسب ثانيه */ |
187 | - if ($time_zone != 'local') date_default_timezone_set(($time_zone === '') ? 'Asia/Tehran' : $time_zone); |
|
192 | + if ($time_zone != 'local') { |
|
193 | + date_default_timezone_set(($time_zone === '') ? 'Asia/Tehran' : $time_zone); |
|
194 | + } |
|
188 | 195 | $ts = $T_sec + (($timestamp === '') ? time() : self::tr_num($timestamp)); |
189 | 196 | $date = explode('_', date('h_H_i_j_n_s_w_Y', $ts)); |
190 | 197 | [$j_y, $j_m, $j_d] = self::gregorian_to_jalali($date[7], $date[4], $date[3]); |
@@ -196,8 +203,7 @@ discard block |
||
196 | 203 | $sub = substr($format, $i, 1); |
197 | 204 | if ($sub == '%') { |
198 | 205 | $sub = substr($format, ++$i, 1); |
199 | - } |
|
200 | - else { |
|
206 | + } else { |
|
201 | 207 | $out .= $sub; |
202 | 208 | continue; |
203 | 209 | } |
@@ -228,30 +234,41 @@ discard block |
||
228 | 234 | /* Week */ |
229 | 235 | case 'U': |
230 | 236 | $avs = (($date[6] < 5) ? $date[6] + 2 : $date[6] - 5) - ($doy % 7); |
231 | - if ($avs < 0) $avs += 7; |
|
237 | + if ($avs < 0) { |
|
238 | + $avs += 7; |
|
239 | + } |
|
232 | 240 | $num = (int) (($doy + $avs) / 7) + 1; |
233 | - if ($avs > 3 or $avs == 1) $num--; |
|
241 | + if ($avs > 3 or $avs == 1) { |
|
242 | + $num--; |
|
243 | + } |
|
234 | 244 | $out .= ($num < 10) ? '0' . $num : $num; |
235 | 245 | break; |
236 | 246 | case 'V': |
237 | 247 | $avs = (($date[6] == 6) ? 0 : $date[6] + 1) - ($doy % 7); |
238 | - if ($avs < 0) $avs += 7; |
|
248 | + if ($avs < 0) { |
|
249 | + $avs += 7; |
|
250 | + } |
|
239 | 251 | $num = (int) (($doy + $avs) / 7); |
240 | 252 | if ($avs < 4) { |
241 | 253 | $num++; |
242 | - } |
|
243 | - elseif ($num < 1) { |
|
254 | + } elseif ($num < 1) { |
|
244 | 255 | $num = ($avs == 4 or $avs == ((((($j_y % 33) % 4) - 2) == ((int) (($j_y % 33) * 0.05))) ? 5 : 4)) ? 53 : 52; |
245 | 256 | } |
246 | 257 | $aks = $avs + $kab; |
247 | - if ($aks == 7) $aks = 0; |
|
258 | + if ($aks == 7) { |
|
259 | + $aks = 0; |
|
260 | + } |
|
248 | 261 | $out .= (($kab + 363 - $doy) < $aks and $aks < 3) ? '01' : (($num < 10) ? '0' . $num : $num); |
249 | 262 | break; |
250 | 263 | case 'W': |
251 | 264 | $avs = (($date[6] == 6) ? 0 : $date[6] + 1) - ($doy % 7); |
252 | - if ($avs < 0) $avs += 7; |
|
265 | + if ($avs < 0) { |
|
266 | + $avs += 7; |
|
267 | + } |
|
253 | 268 | $num = (int) (($doy + $avs) / 7) + 1; |
254 | - if ($avs > 3) $num--; |
|
269 | + if ($avs > 3) { |
|
270 | + $num--; |
|
271 | + } |
|
255 | 272 | $out .= ($num < 10) ? '0' . $num : $num; |
256 | 273 | break; |
257 | 274 | /* Month */ |
@@ -360,11 +377,12 @@ discard block |
||
360 | 377 | return ($tr_num != 'en') ? self::tr_num($out, 'fa', '.') : $out; |
361 | 378 | } |
362 | 379 | public static function jmktime ($h = '', $m = '', $s = '', $jm = '', $jd = '', $jy = '', $none = '', $timezone = 'Asia/Tehran') { |
363 | - if ($timezone != 'local') date_default_timezone_set($timezone); |
|
380 | + if ($timezone != 'local') { |
|
381 | + date_default_timezone_set($timezone); |
|
382 | + } |
|
364 | 383 | if ($h === '') { |
365 | 384 | return time(); |
366 | - } |
|
367 | - else { |
|
385 | + } else { |
|
368 | 386 | [ |
369 | 387 | $h, |
370 | 388 | $m, |
@@ -375,27 +393,22 @@ discard block |
||
375 | 393 | ] = explode('_', self::tr_num($h . '_' . $m . '_' . $s . '_' . $jm . '_' . $jd . '_' . $jy)); |
376 | 394 | if ($m === '') { |
377 | 395 | return mktime($h); |
378 | - } |
|
379 | - else { |
|
396 | + } else { |
|
380 | 397 | if ($s === '') { |
381 | 398 | return mktime($h, $m); |
382 | - } |
|
383 | - else { |
|
399 | + } else { |
|
384 | 400 | if ($jm === '') { |
385 | 401 | return mktime($h, $m, $s); |
386 | - } |
|
387 | - else { |
|
402 | + } else { |
|
388 | 403 | $jdate = explode('_', self::jdate('Y_j', '', '', $timezone, 'en')); |
389 | 404 | if ($jd === '') { |
390 | 405 | [$gy, $gm, $gd] = self::jalali_to_gregorian($jdate[0], $jm, $jdate[1]); |
391 | 406 | return mktime($h, $m, $s, $gm); |
392 | - } |
|
393 | - else { |
|
407 | + } else { |
|
394 | 408 | if ($jy === '') { |
395 | 409 | [$gy, $gm, $gd] = self::jalali_to_gregorian($jdate[0], $jm, $jd); |
396 | 410 | return mktime($h, $m, $s, $gm, $gd); |
397 | - } |
|
398 | - else { |
|
411 | + } else { |
|
399 | 412 | [$gy, $gm, $gd] = self::jalali_to_gregorian($jy, $jm, $jd); |
400 | 413 | return mktime($h, $m, $s, $gm, $gd, $gy); |
401 | 414 | } |
@@ -445,8 +458,7 @@ discard block |
||
445 | 458 | $p34 = ''; |
446 | 459 | $k34 = ['ده', 'یازده', 'دوازده', 'سیزده', 'چهارده', 'پانزده', 'شانزده', 'هفده', 'هجده', 'نوزده']; |
447 | 460 | $h34 = $k34[substr($num, 2 - $sl, 2) - 10]; |
448 | - } |
|
449 | - else { |
|
461 | + } else { |
|
450 | 462 | $xy4 = substr($num, 3 - $sl, 1); |
451 | 463 | $p34 = ($xy3 == 0 or $xy4 == 0) ? '' : ' و '; |
452 | 464 | $k3 = ['', '', 'بیست', 'سی', 'چهل', 'پنجاه', 'شصت', 'هفتاد', 'هشتاد', 'نود']; |
@@ -561,8 +573,7 @@ discard block |
||
561 | 573 | if ($days < 186) { |
562 | 574 | $jm = 1 + (int) ($days / 31); |
563 | 575 | $jd = 1 + ($days % 31); |
564 | - } |
|
565 | - else { |
|
576 | + } else { |
|
566 | 577 | $jm = 7 + (int) (($days - 186) / 30); |
567 | 578 | $jd = 1 + (($days - 186) % 30); |
568 | 579 | } |
@@ -577,7 +588,9 @@ discard block |
||
577 | 588 | if ($days > 36524) { |
578 | 589 | $gy += 100 * ((int) (--$days / 36524)); |
579 | 590 | $days %= 36524; |
580 | - if ($days >= 365) $days++; |
|
591 | + if ($days >= 365) { |
|
592 | + $days++; |
|
593 | + } |
|
581 | 594 | } |
582 | 595 | $gy += 4 * ((int) ($days / 1461)); |
583 | 596 | $days %= 1461; |
@@ -601,7 +614,9 @@ discard block |
||
601 | 614 | 30, |
602 | 615 | 31 |
603 | 616 | ]; |
604 | - for ($gm = 0; $gm < 13 and $gd > $sal_a[$gm]; $gm++) $gd -= $sal_a[$gm]; |
|
617 | + for ($gm = 0; $gm < 13 and $gd > $sal_a[$gm]; $gm++) { |
|
618 | + $gd -= $sal_a[$gm]; |
|
619 | + } |
|
605 | 620 | return ($mod == '') ? [$gy, $gm, $gd] : $gy . $mod . $gm . $mod . $gd; |
606 | 621 | } |
607 | 622 | } |
608 | 623 | \ No newline at end of file |
@@ -25,13 +25,13 @@ |
||
25 | 25 | public shippingAddress $shipping_address; |
26 | 26 | |
27 | 27 | |
28 | - public function __construct(stdClass|null $object = null) { |
|
28 | + public function __construct(stdClass | null $object = null) { |
|
29 | 29 | if ($object != null) { |
30 | 30 | parent::__construct($object, self::subs); |
31 | 31 | } |
32 | 32 | } |
33 | 33 | |
34 | - public function answer (bool $ok, null|array $shipping_options = null, string|null $error_message = null): responseError|bool { |
|
34 | + public function answer(bool $ok, null | array $shipping_options = null, string | null $error_message = null): responseError | bool { |
|
35 | 35 | return telegram::answerShippingQuery($ok, $this->id, $shipping_options, $error_message); |
36 | 36 | } |
37 | 37 | } |
@@ -31,19 +31,19 @@ |
||
31 | 31 | * should be always known for requests sent from official clients and most third-party clients, unless the |
32 | 32 | * request was sent from a secret chat |
33 | 33 | */ |
34 | - public null|string $chat_type = null; |
|
34 | + public null | string $chat_type = null; |
|
35 | 35 | |
36 | 36 | /** Optional. Sender location, only for bots that request user location */ |
37 | - public null|location $location = null; |
|
37 | + public null | location $location = null; |
|
38 | 38 | |
39 | 39 | |
40 | - public function __construct(stdClass|null $object = null) { |
|
40 | + public function __construct(stdClass | null $object = null) { |
|
41 | 41 | if ($object != null) { |
42 | 42 | parent::__construct($object, self::subs); |
43 | 43 | } |
44 | 44 | } |
45 | 45 | |
46 | - public function answer(array $results, int|null $cache_time = null, bool|null $is_personal = null, string|null $next_offset = null, string|null $switch_pm_text = null, string|null $switch_pm_parameter = null): responseError|bool { |
|
46 | + public function answer(array $results, int | null $cache_time = null, bool | null $is_personal = null, string | null $next_offset = null, string | null $switch_pm_text = null, string | null $switch_pm_parameter = null): responseError | bool { |
|
47 | 47 | return telegram::answerInlineQuery($results, $this->id, $cache_time, $is_personal, $next_offset, $switch_pm_text, $switch_pm_parameter); |
48 | 48 | } |
49 | 49 | } |
@@ -38,10 +38,10 @@ discard block |
||
38 | 38 | * Optional. Chat invite link, which was used by the user to join the chat; for joining by invite link events |
39 | 39 | * only. |
40 | 40 | */ |
41 | - public null|chatInviteLink $invite_link = null; |
|
41 | + public null | chatInviteLink $invite_link = null; |
|
42 | 42 | |
43 | 43 | |
44 | - public function __construct(stdClass|null $object = null) { |
|
44 | + public function __construct(stdClass | null $object = null) { |
|
45 | 45 | if ($object != null) { |
46 | 46 | parent::__construct($object, self::subs); |
47 | 47 | } |
@@ -55,7 +55,7 @@ discard block |
||
55 | 55 | return $this->chat->isPrivate() && $this->isMe() && $this->isKicked(); |
56 | 56 | } |
57 | 57 | |
58 | - public function isMe (): bool { |
|
58 | + public function isMe(): bool { |
|
59 | 59 | return $this->new_chat_member->user->id == settings::$bot_id; |
60 | 60 | } |
61 | 61 | |
@@ -71,19 +71,19 @@ discard block |
||
71 | 71 | return $this->isJoined() && !empty($this->invite_link); |
72 | 72 | } |
73 | 73 | |
74 | - public function isLeaved (): bool { |
|
74 | + public function isLeaved(): bool { |
|
75 | 75 | return $this->new_chat_member->status === chatMemberStatus::LEFT; |
76 | 76 | } |
77 | 77 | |
78 | - public function isKicked (): bool { |
|
78 | + public function isKicked(): bool { |
|
79 | 79 | return $this->new_chat_member->status === chatMemberStatus::KICKED; |
80 | 80 | } |
81 | 81 | |
82 | - public function isOldAdmin (): bool { |
|
82 | + public function isOldAdmin(): bool { |
|
83 | 83 | return $this->old_chat_member->status === chatMemberStatus::ADMINISTRATOR && $this->isJoined(); |
84 | 84 | } |
85 | 85 | |
86 | - public function isNewAdmin (): bool { |
|
86 | + public function isNewAdmin(): bool { |
|
87 | 87 | return $this->new_chat_member->status === chatMemberStatus::ADMINISTRATOR; |
88 | 88 | } |
89 | 89 | } |
@@ -32,19 +32,19 @@ |
||
32 | 32 | public string $invoice_payload; |
33 | 33 | |
34 | 34 | /** Optional. Identifier of the shipping option chosen by the user */ |
35 | - public null|string $shipping_option_id = null; |
|
35 | + public null | string $shipping_option_id = null; |
|
36 | 36 | |
37 | 37 | /** Optional. Order information provided by the user */ |
38 | - public null|orderInfo $order_info = null; |
|
38 | + public null | orderInfo $order_info = null; |
|
39 | 39 | |
40 | 40 | |
41 | - public function __construct(stdClass|null $object = null) { |
|
41 | + public function __construct(stdClass | null $object = null) { |
|
42 | 42 | if ($object != null) { |
43 | 43 | parent::__construct($object, self::subs); |
44 | 44 | } |
45 | 45 | } |
46 | 46 | |
47 | - public function answer (bool $ok, string|null $error_message = null): responseError|bool { |
|
47 | + public function answer(bool $ok, string | null $error_message = null): responseError | bool { |
|
48 | 48 | return telegram::answerPreCheckoutQuery($ok, $this->id, $error_message); |
49 | 49 | } |
50 | 50 | } |