Completed
Push — master ( 9d4043...fded30 )
by Владислав
21:31 queued 18:33
created
src/core/DeCaptchaWikiMain.php 1 patch
Spacing   +20 added lines, -20 removed lines patch added patch discarded remove patch
@@ -103,7 +103,7 @@  discard block
 block discarded – undo
103 103
      */
104 104
     public function getText($name, $separator = '; ')
105 105
     {
106
-        $getResult = function ($name, $texts) {
106
+        $getResult = function($name, $texts) {
107 107
             if (is_array($name)) {
108 108
                 $name = implode('_', $name);
109 109
             }
@@ -132,7 +132,7 @@  discard block
 block discarded – undo
132 132
 
133 133
     protected function viewMenu($master = '')
134 134
     {
135
-        $str = "+ [{$this->getText(['slug', 'menu', 'another'])}](../{$master}docs/".$this->getFileName($this->lang == 'ru' ? 'en' : 'ru').')'.PHP_EOL;
135
+        $str = "+ [{$this->getText(['slug', 'menu', 'another'])}](../{$master}docs/" . $this->getFileName($this->lang == 'ru' ? 'en' : 'ru') . ')' . PHP_EOL;
136 136
         foreach ([
137 137
                      ['slug', 'menu', 'desc'],
138 138
                      ['slug', 'menu', 'features'],
@@ -160,7 +160,7 @@  discard block
 block discarded – undo
160 160
             }
161 161
             $tt[$class->getWiki($this->lang)->getFileName()] = true;
162 162
             $fromServiceObjectWiki = $class->getWiki($this->lang);
163
-            $str .= "+ [{$fromServiceObjectWiki->getText(['service', 'name'])}](../{$master}docs/{$fromServiceObjectWiki->getFileName()})".PHP_EOL;
163
+            $str .= "+ [{$fromServiceObjectWiki->getText(['service', 'name'])}](../{$master}docs/{$fromServiceObjectWiki->getFileName()})" . PHP_EOL;
164 164
         }
165 165
 
166 166
         return $str;
@@ -168,25 +168,25 @@  discard block
 block discarded – undo
168 168
 
169 169
     public function view($master = '')
170 170
     {
171
-        $str = $this->viewHeader().PHP_EOL;
171
+        $str = $this->viewHeader() . PHP_EOL;
172 172
 
173
-        $str .= "###{$this->getText(['slug', 'menu'])}".PHP_EOL;
174
-        $str .= $this->viewMenu($master).PHP_EOL.PHP_EOL;
173
+        $str .= "###{$this->getText(['slug', 'menu'])}" . PHP_EOL;
174
+        $str .= $this->viewMenu($master) . PHP_EOL . PHP_EOL;
175 175
 
176
-        $str .= "###{$this->getText(['slug', 'menu', 'desc'])}".PHP_EOL;
177
-        $str .= $this->getText(['readme', 'main', 'desc']).PHP_EOL.PHP_EOL;
176
+        $str .= "###{$this->getText(['slug', 'menu', 'desc'])}" . PHP_EOL;
177
+        $str .= $this->getText(['readme', 'main', 'desc']) . PHP_EOL . PHP_EOL;
178 178
 
179
-        $str .= "###{$this->getText(['slug', 'menu', 'features'])}".PHP_EOL;
180
-        $str .= $this->getText(['readme', 'main', 'features'], PHP_EOL).PHP_EOL.PHP_EOL;
179
+        $str .= "###{$this->getText(['slug', 'menu', 'features'])}" . PHP_EOL;
180
+        $str .= $this->getText(['readme', 'main', 'features'], PHP_EOL) . PHP_EOL . PHP_EOL;
181 181
 
182
-        $str .= "###{$this->getText(['slug', 'menu', 'services'])}".PHP_EOL;
183
-        $str .= "{$this->getText(['readme', 'main', 'services'])}".PHP_EOL.PHP_EOL;
184
-        $str .= "{$this->viewServices($master)}".PHP_EOL.PHP_EOL;
182
+        $str .= "###{$this->getText(['slug', 'menu', 'services'])}" . PHP_EOL;
183
+        $str .= "{$this->getText(['readme', 'main', 'services'])}" . PHP_EOL . PHP_EOL;
184
+        $str .= "{$this->viewServices($master)}" . PHP_EOL . PHP_EOL;
185 185
 
186
-        $str .= "###{$this->getText(['install'])}".PHP_EOL;
187
-        $str .= "{$this->viewInstall()}".PHP_EOL.PHP_EOL;
188
-        $str .= "###{$this->getText(['example'])}".PHP_EOL;
189
-        $str .= "{$this->viewExamples()}".PHP_EOL.PHP_EOL;
186
+        $str .= "###{$this->getText(['install'])}" . PHP_EOL;
187
+        $str .= "{$this->viewInstall()}" . PHP_EOL . PHP_EOL;
188
+        $str .= "###{$this->getText(['example'])}" . PHP_EOL;
189
+        $str .= "{$this->viewExamples()}" . PHP_EOL . PHP_EOL;
190 190
 
191 191
         return $str;
192 192
     }
@@ -197,12 +197,12 @@  discard block
 block discarded – undo
197 197
             $lang = $this->lang;
198 198
         }
199 199
 
200
-        return 'README-'.$lang.'.md';
200
+        return 'README-' . $lang . '.md';
201 201
     }
202 202
 
203 203
     public function save()
204 204
     {
205
-        file_put_contents(__DIR__.'/../../docs/'.$this->getFileName(), $this->view());
206
-        file_put_contents(__DIR__.'/../../README.md', $this->view('master/'));
205
+        file_put_contents(__DIR__ . '/../../docs/' . $this->getFileName(), $this->view());
206
+        file_put_contents(__DIR__ . '/../../README.md', $this->view('master/'));
207 207
     }
208 208
 }
Please login to merge, or discard this patch.
src/core/DeCaptchaWiki.php 1 patch
Spacing   +142 added lines, -142 removed lines patch added patch discarded remove patch
@@ -29,211 +29,211 @@  discard block
 block discarded – undo
29 29
             'recognize_file'                                    => true,
30 30
             'recognize_data_file'                               => 'http://site.com/captcha.jpg',
31 31
             'recognize_data'                                    => [],
32
-            'field_main_name_'.$class::ACTION_FIELD_KEY         => [
32
+            'field_main_name_' . $class::ACTION_FIELD_KEY         => [
33 33
                 'ru' => 'Ключ',
34 34
                 'en' => 'Key',
35 35
             ],
36
-            'field_main_desc_'.$class::ACTION_FIELD_KEY => [
36
+            'field_main_desc_' . $class::ACTION_FIELD_KEY => [
37 37
                 'ru' => 'Ключ от учетной записи',
38 38
                 'en' => 'Key account',
39 39
             ],
40
-            'field_main_name_'.$class::ACTION_FIELD_LANGUAGE => [
40
+            'field_main_name_' . $class::ACTION_FIELD_LANGUAGE => [
41 41
                 'ru' => 'Язык',
42 42
                 'en' => 'Language',
43 43
             ],
44
-            'field_main_desc_'.$class::ACTION_FIELD_LANGUAGE => [
44
+            'field_main_desc_' . $class::ACTION_FIELD_LANGUAGE => [
45 45
                 'ru' => 'На каком языке текст на капче',
46 46
                 'en' => 'What language the text on the captcha',
47 47
             ],
48
-            'field_main_name_'.$class::ACTION_FIELD_FILE => [
48
+            'field_main_name_' . $class::ACTION_FIELD_FILE => [
49 49
                 'ru' => 'Картинка',
50 50
                 'en' => 'Picture',
51 51
             ],
52
-            'field_main_desc_'.$class::ACTION_FIELD_FILE => [
52
+            'field_main_desc_' . $class::ACTION_FIELD_FILE => [
53 53
                 'ru' => 'Путь на файл с картинкой или ссылка на него',
54 54
                 'en' => 'The path to the picture file or link to it',
55 55
             ],
56
-            'field_main_name_'.$class::ACTION_FIELD_PHRASE => [
56
+            'field_main_name_' . $class::ACTION_FIELD_PHRASE => [
57 57
                 'ru' => 'Несколько слов',
58 58
                 'en' => 'A few words',
59 59
             ],
60
-            'field_main_desc_'.$class::ACTION_FIELD_PHRASE => [
60
+            'field_main_desc_' . $class::ACTION_FIELD_PHRASE => [
61 61
                 'ru' => 'Работник должен ввести текст с одним или несколькими пробелами',
62 62
                 'en' => 'The worker must enter text with one or more spaces',
63 63
             ],
64
-            'field_main_name_'.$class::ACTION_FIELD_REGSENSE => [
64
+            'field_main_name_' . $class::ACTION_FIELD_REGSENSE => [
65 65
                 'ru' => 'Регистр',
66 66
                 'en' => 'Register',
67 67
             ],
68
-            'field_main_desc_'.$class::ACTION_FIELD_REGSENSE => [
68
+            'field_main_desc_' . $class::ACTION_FIELD_REGSENSE => [
69 69
                 'ru' => 'Работник должен ввести ответ с учетом регистра',
70 70
                 'en' => 'The worker must enter the answer case sensitive',
71 71
             ],
72
-            'field_main_name_'.$class::ACTION_FIELD_NUMERIC => [
72
+            'field_main_name_' . $class::ACTION_FIELD_NUMERIC => [
73 73
                 'ru' => 'Символы',
74 74
                 'en' => 'Characters',
75 75
             ],
76
-            'field_main_desc_'.$class::ACTION_FIELD_NUMERIC => [
76
+            'field_main_desc_' . $class::ACTION_FIELD_NUMERIC => [
77 77
                 'ru' => 'Какие символы используется в капче',
78 78
                 'en' => 'What are the symbols used in captcha',
79 79
             ],
80
-            'field_main_name_'.$class::ACTION_FIELD_CALC => [
80
+            'field_main_name_' . $class::ACTION_FIELD_CALC => [
81 81
                 'ru' => 'Вычисление',
82 82
                 'en' => 'Calculation',
83 83
             ],
84
-            'field_main_desc_'.$class::ACTION_FIELD_CALC => [
84
+            'field_main_desc_' . $class::ACTION_FIELD_CALC => [
85 85
                 'ru' => 'На капче изображенно математичекая выражение и её необходимо решить',
86 86
                 'en' => 'The captcha shows matematicheskaya expression and must be addressed',
87 87
             ],
88
-            'field_main_name_'.$class::ACTION_FIELD_MIN_LEN => [
88
+            'field_main_name_' . $class::ACTION_FIELD_MIN_LEN => [
89 89
                 'ru' => 'Длина min',
90 90
                 'en' => 'Length min',
91 91
             ],
92
-            'field_main_desc_'.$class::ACTION_FIELD_MIN_LEN => [
92
+            'field_main_desc_' . $class::ACTION_FIELD_MIN_LEN => [
93 93
                 'ru' => 'Минимальная длина капчи',
94 94
                 'en' => 'The minimum length of captcha',
95 95
             ],
96
-            'field_main_name_'.$class::ACTION_FIELD_MAX_LEN => [
96
+            'field_main_name_' . $class::ACTION_FIELD_MAX_LEN => [
97 97
                 'ru' => 'Длина max',
98 98
                 'en' => 'Length max',
99 99
             ],
100
-            'field_main_desc_'.$class::ACTION_FIELD_MAX_LEN => [
100
+            'field_main_desc_' . $class::ACTION_FIELD_MAX_LEN => [
101 101
                 'ru' => 'Максимальная длина капчи',
102 102
                 'en' => 'The maximum length of the captcha',
103 103
             ],
104
-            'field_main_name_'.$class::ACTION_FIELD_QUESTION => [
104
+            'field_main_name_' . $class::ACTION_FIELD_QUESTION => [
105 105
                 'ru' => 'Вопрос',
106 106
                 'en' => 'Question',
107 107
             ],
108
-            'field_main_desc_'.$class::ACTION_FIELD_QUESTION => [
108
+            'field_main_desc_' . $class::ACTION_FIELD_QUESTION => [
109 109
                 'ru' => 'На изображении задан вопрос, работник должен написать ответ',
110 110
                 'en' => 'The image asked, the employee must write the answer',
111 111
             ],
112
-            'field_main_name_'.$class::ACTION_FIELD_IS_RUSSIAN => [
112
+            'field_main_name_' . $class::ACTION_FIELD_IS_RUSSIAN => [
113 113
                 'ru' => 'Кириллица',
114 114
                 'en' => 'Cyrillic',
115 115
             ],
116
-            'field_main_desc_'.$class::ACTION_FIELD_IS_RUSSIAN => [
116
+            'field_main_desc_' . $class::ACTION_FIELD_IS_RUSSIAN => [
117 117
                 'ru' => 'На изображении присутствуют русские символы',
118 118
                 'en' => 'In the image there are Russian characters',
119 119
             ],
120
-            'field_main_name_'.$class::ACTION_FIELD_LANGUAGE => [
120
+            'field_main_name_' . $class::ACTION_FIELD_LANGUAGE => [
121 121
                 'ru' => 'Язык',
122 122
                 'en' => 'Language',
123 123
             ],
124
-            'field_main_desc_'.$class::ACTION_FIELD_LANGUAGE => [
124
+            'field_main_desc_' . $class::ACTION_FIELD_LANGUAGE => [
125 125
                 'ru' => 'Символы какого языка размещенны на капче',
126 126
                 'en' => 'The symbols of the language posted on the captcha',
127 127
             ],
128
-            'field_main_name_'.$class::ACTION_FIELD_HEADER_ACAO => [
128
+            'field_main_name_' . $class::ACTION_FIELD_HEADER_ACAO => [
129 129
                 'ru' => 'Кросс-доменный',
130 130
                 'en' => 'Cross-domain',
131 131
             ],
132
-            'field_main_desc_'.$class::ACTION_FIELD_HEADER_ACAO => [
132
+            'field_main_desc_' . $class::ACTION_FIELD_HEADER_ACAO => [
133 133
                 'ru' => 'Необходимо для кросс-доменных AJAX запросов в браузерных приложениях.',
134 134
                 'en' => 'Need for cross-domain AJAX requests in browser-based applications.',
135 135
             ],
136
-            'field_main_name_'.$class::ACTION_FIELD_INSTRUCTIONS => [
136
+            'field_main_name_' . $class::ACTION_FIELD_INSTRUCTIONS => [
137 137
                 'ru' => 'Инструкция',
138 138
                 'en' => 'Manual',
139 139
             ],
140
-            'field_main_desc_'.$class::ACTION_FIELD_INSTRUCTIONS => [
140
+            'field_main_desc_' . $class::ACTION_FIELD_INSTRUCTIONS => [
141 141
                 'ru' => 'Текстовая капча или инструкция для прохождения капчи.',
142 142
                 'en' => 'Text captcha or manual to pass the captcha.',
143 143
             ],
144
-            'field_main_name_'.$class::ACTION_FIELD_PINGBACK => [
144
+            'field_main_name_' . $class::ACTION_FIELD_PINGBACK => [
145 145
                 'ru' => 'Ответ на',
146 146
                 'en' => 'Response to',
147 147
             ],
148
-            'field_main_desc_'.$class::ACTION_FIELD_PINGBACK => [
148
+            'field_main_desc_' . $class::ACTION_FIELD_PINGBACK => [
149 149
                 'ru' => 'Указание для сервера, что после распознания изображения, нужно отправить ответ на указанный адрес.',
150 150
                 'en' => 'Note to server, after recognizing the image, you need to send a reply to the specified address.',
151 151
             ],
152
-            'field_main_name_'.$class::ACTION_FIELD_LABEL => [
152
+            'field_main_name_' . $class::ACTION_FIELD_LABEL => [
153 153
                 'ru' => 'От куда',
154 154
                 'en' => 'From where',
155 155
             ],
156
-            'field_main_desc_'.$class::ACTION_FIELD_LABEL => [
156
+            'field_main_desc_' . $class::ACTION_FIELD_LABEL => [
157 157
                 'ru' => 'Пояснение от куда пришла капча ("vk", "google", "recaptcha", "yandex", "mailru", "yahoo" и т.д.).',
158 158
                 'en' => 'Clarification from where came the captcha ("vk", "google", "recaptcha", "yandex", "Google", "yahoo", etc.).',
159 159
             ],
160
-            'field_main_name_'.$class::ACTION_FIELD_PAGEURL => [
160
+            'field_main_name_' . $class::ACTION_FIELD_PAGEURL => [
161 161
                 'ru' => 'Адрес',
162 162
                 'en' => 'Link',
163 163
             ],
164
-            'field_main_desc_'.$class::ACTION_FIELD_PAGEURL => [
164
+            'field_main_desc_' . $class::ACTION_FIELD_PAGEURL => [
165 165
                 'ru' => 'Адрес страницы на которой решается капча.',
166 166
                 'en' => 'The address of the page where the captcha is solved.',
167 167
             ],
168
-            'field_main_name_'.$class::ACTION_FIELD_GOOGLEKEY => [
168
+            'field_main_name_' . $class::ACTION_FIELD_GOOGLEKEY => [
169 169
                 'ru' => 'Google key',
170 170
                 'en' => 'Google key',
171 171
             ],
172
-            'field_main_desc_'.$class::ACTION_FIELD_GOOGLEKEY => [
172
+            'field_main_desc_' . $class::ACTION_FIELD_GOOGLEKEY => [
173 173
                 'ru' => 'Ключ-индентификатор рекапчи на целевой странице. <div class="g-recaptcha" data-sitekey="ВОТ_ЭТОТ"></div>',
174 174
                 'en' => 'Key-the identifier of the recaptcha on the landing page. <div class="g-recaptcha" data-sitekey="THIS"></div>',
175 175
             ],
176
-            'field_main_name_'.$class::ACTION_FIELD_GOOGLETOKEN => [
176
+            'field_main_name_' . $class::ACTION_FIELD_GOOGLETOKEN => [
177 177
                 'ru' => 'Google token',
178 178
                 'en' => 'Google token',
179 179
             ],
180
-            'field_main_desc_'.$class::ACTION_FIELD_GOOGLETOKEN => [
180
+            'field_main_desc_' . $class::ACTION_FIELD_GOOGLETOKEN => [
181 181
                 'ru' => 'Секретный токен для предыдущей версии рекапчи. В большинстве случаев сайты используют новую версию и этот токен не требуется. Секретный токен генерируется на сервере Google и вставляется на страницу в атрибуте data-stoken. Выглядит это примерно так: <script type="text/javascript" src="...." data-type="normal"  data-ray="..." async data-sitekey="..." data-stoken="ВОТ_ЭТОТ"></script> Токен действует пару минут после генерации, затем нужно снова зайти на страницу и получить его.',
182 182
                 'en' => 'The secret token for the previous version of recaptcha. In most cases, sites use the new version and this token is not required. The secret token is generated on a Google server and inserted into the page in the attribute data-stoken. It looks like this: <script type="text/javascript" src="...." data-type="normal" data-ray="..." async data-sitekey="..." data-stoken="THIS"></script> the Token is valid a few minutes after generation, then you need to go back to the page and get it.',
183 183
             ],
184
-            'field_main_name_'.$class::ACTION_FIELD_PROXYTYPE => [
184
+            'field_main_name_' . $class::ACTION_FIELD_PROXYTYPE => [
185 185
                 'ru' => 'Тип прокси',
186 186
                 'en' => 'The proxy type',
187 187
             ],
188
-            'field_main_desc_'.$class::ACTION_FIELD_PROXYTYPE => [
188
+            'field_main_desc_' . $class::ACTION_FIELD_PROXYTYPE => [
189 189
                 'ru' => 'Тип прокси (http, socks4, ...)',
190 190
                 'en' => 'The proxy type (http, socks4, ...)',
191 191
             ],
192
-            'field_main_name_'.$class::ACTION_FIELD_PROXY => [
192
+            'field_main_name_' . $class::ACTION_FIELD_PROXY => [
193 193
                 'ru' => 'Адрес прокси',
194 194
                 'en' => 'The proxy address',
195 195
             ],
196
-            'field_main_desc_'.$class::ACTION_FIELD_PROXY => [
196
+            'field_main_desc_' . $class::ACTION_FIELD_PROXY => [
197 197
                 'ru' => 'IP адрес прокси ipv4/ipv6.',
198 198
                 'en' => 'IP address of the proxy ipv4/ipv6.',
199 199
             ],
200
-            'field_main_name_'.$class::ACTION_FIELD_PROXYPORT => [
200
+            'field_main_name_' . $class::ACTION_FIELD_PROXYPORT => [
201 201
                 'ru' => 'Порт прокси',
202 202
                 'en' => 'Proxy port',
203 203
             ],
204
-            'field_main_desc_'.$class::ACTION_FIELD_PROXYPORT => [
204
+            'field_main_desc_' . $class::ACTION_FIELD_PROXYPORT => [
205 205
                 'ru' => 'Порт прокси.',
206 206
                 'en' => 'Proxy port.',
207 207
             ],
208
-            'field_main_name_'.$class::ACTION_FIELD_PROXYLOGIN => [
208
+            'field_main_name_' . $class::ACTION_FIELD_PROXYLOGIN => [
209 209
                 'ru' => 'Логин прокси',
210 210
                 'en' => 'Login proxy',
211 211
             ],
212
-            'field_main_desc_'.$class::ACTION_FIELD_PROXYLOGIN => [
212
+            'field_main_desc_' . $class::ACTION_FIELD_PROXYLOGIN => [
213 213
                 'ru' => 'Логин от прокси-сервера.',
214 214
                 'en' => 'Login from proxy server.',
215 215
             ],
216
-            'field_main_name_'.$class::ACTION_FIELD_PROXYPASS => [
216
+            'field_main_name_' . $class::ACTION_FIELD_PROXYPASS => [
217 217
                 'ru' => 'Пароль прокси',
218 218
                 'en' => 'Password proxy',
219 219
             ],
220
-            'field_main_desc_'.$class::ACTION_FIELD_PROXYPASS => [
220
+            'field_main_desc_' . $class::ACTION_FIELD_PROXYPASS => [
221 221
                 'ru' => 'Пароль от прокси-сервера.',
222 222
                 'en' => 'The password for the proxy server.',
223 223
             ],
224
-            'field_main_name_'.$class::ACTION_FIELD_USERAGENT => [
224
+            'field_main_name_' . $class::ACTION_FIELD_USERAGENT => [
225 225
                 'ru' => 'User-Agent браузера',
226 226
                 'en' => 'User-Agent browser',
227 227
             ],
228
-            'field_main_desc_'.$class::ACTION_FIELD_USERAGENT => [
228
+            'field_main_desc_' . $class::ACTION_FIELD_USERAGENT => [
229 229
                 'ru' => 'User-Agent браузера, используемый в эмуляции. Необходимо использовать подпись современного браузера, иначе Google будет возвращать ошибку, требуя обновить браузер.',
230 230
                 'en' => 'User-Agent browser used in emulation. You must use the signature modern browser, otherwise Google will return an error requiring you to upgrade your browser.',
231 231
             ],
232
-            'field_main_name_'.$class::ACTION_FIELD_COOKIES => [
232
+            'field_main_name_' . $class::ACTION_FIELD_COOKIES => [
233 233
                 'ru' => 'Куки',
234 234
                 'en' => 'Cookies',
235 235
             ],
236
-            'field_main_desc_'.$class::ACTION_FIELD_COOKIES => [
236
+            'field_main_desc_' . $class::ACTION_FIELD_COOKIES => [
237 237
                 'ru' => 'Дополнительные cookies которые мы должны использовать во время взаимодействия с целевой страницей.',
238 238
                 'en' => 'Additional cookies which we should use during the interaction with the target page.',
239 239
             ],
@@ -404,7 +404,7 @@  discard block
 block discarded – undo
404 404
      */
405 405
     public function getText($name, $separator = '; ')
406 406
     {
407
-        $getResult = function ($name, $texts) {
407
+        $getResult = function($name, $texts) {
408 408
             if (is_array($name)) {
409 409
                 $name = implode('_', $name);
410 410
             }
@@ -433,17 +433,17 @@  discard block
 block discarded – undo
433 433
 
434 434
     protected function viewInstall()
435 435
     {
436
-        $str = "{$this->getText(['install', 'preferred'])} [composer](http://getcomposer.org/download/).".PHP_EOL;
436
+        $str = "{$this->getText(['install', 'preferred'])} [composer](http://getcomposer.org/download/)." . PHP_EOL;
437 437
         $str .= PHP_EOL;
438
-        $str .= "{$this->getText(['install', 'start'])}".PHP_EOL;
439
-        $str .= '```'.PHP_EOL;
440
-        $str .= 'php composer.phar require --prefer-dist jumper423/decaptcha "*"'.PHP_EOL;
441
-        $str .= '```'.PHP_EOL;
442
-        $str .= "{$this->getText(['install', 'add'])}".PHP_EOL;
443
-        $str .= '```'.PHP_EOL;
444
-        $str .= '"jumper423/decaptcha": "*"'.PHP_EOL;
445
-        $str .= '```'.PHP_EOL;
446
-        $str .= "{$this->getText(['install', 'add', 'file'])} `composer.json`.".PHP_EOL;
438
+        $str .= "{$this->getText(['install', 'start'])}" . PHP_EOL;
439
+        $str .= '```' . PHP_EOL;
440
+        $str .= 'php composer.phar require --prefer-dist jumper423/decaptcha "*"' . PHP_EOL;
441
+        $str .= '```' . PHP_EOL;
442
+        $str .= "{$this->getText(['install', 'add'])}" . PHP_EOL;
443
+        $str .= '```' . PHP_EOL;
444
+        $str .= '"jumper423/decaptcha": "*"' . PHP_EOL;
445
+        $str .= '```' . PHP_EOL;
446
+        $str .= "{$this->getText(['install', 'add', 'file'])} `composer.json`." . PHP_EOL;
447 447
 
448 448
         return $str;
449 449
     }
@@ -453,12 +453,12 @@  discard block
 block discarded – undo
453 453
         $class = $this->class;
454 454
         $rc = (new \ReflectionClass($class));
455 455
 
456
-        $str = "####{$this->getText(['example', 'initialization'])}".PHP_EOL;
457
-        $str .= "{$this->getText(['example', 'initialization', 'desc'])}".PHP_EOL;
458
-        $str .= '```'.PHP_EOL;
459
-        $str .= "use {$rc->getName()};".PHP_EOL;
460
-        $str .= ''.PHP_EOL;
461
-        $str .= '$captcha = new '.$rc->getShortName().'(['.PHP_EOL;
456
+        $str = "####{$this->getText(['example', 'initialization'])}" . PHP_EOL;
457
+        $str .= "{$this->getText(['example', 'initialization', 'desc'])}" . PHP_EOL;
458
+        $str .= '```' . PHP_EOL;
459
+        $str .= "use {$rc->getName()};" . PHP_EOL;
460
+        $str .= '' . PHP_EOL;
461
+        $str .= '$captcha = new ' . $rc->getShortName() . '([' . PHP_EOL;
462 462
         foreach ($this->texts['constructor_data'] as $key => $val) {
463 463
             $str .= "    {$rc->getShortName()}::{$this->getNameConst('ACTION_FIELD_', $key)} => ";
464 464
             if (is_string($val)) {
@@ -466,14 +466,14 @@  discard block
 block discarded – undo
466 466
             } else {
467 467
                 $str .= "{$val}";
468 468
             }
469
-            $str .= ','.PHP_EOL;
469
+            $str .= ',' . PHP_EOL;
470 470
         }
471
-        $str .= ']);'.PHP_EOL;
472
-        $str .= '```'.PHP_EOL;
471
+        $str .= ']);' . PHP_EOL;
472
+        $str .= '```' . PHP_EOL;
473 473
 
474
-        $str .= "####{$this->getText(['example', 'recognize'])}".PHP_EOL;
475
-        $str .= "{$this->getText(['example', 'recognize', 'desc'])}".PHP_EOL;
476
-        $str .= '```'.PHP_EOL;
474
+        $str .= "####{$this->getText(['example', 'recognize'])}" . PHP_EOL;
475
+        $str .= "{$this->getText(['example', 'recognize', 'desc'])}" . PHP_EOL;
476
+        $str .= '```' . PHP_EOL;
477 477
         $str .= 'if ($captcha->recognize(';
478 478
         if ($this->texts['recognize_file']) {
479 479
             $str .= "'{$this->getText(['recognize', 'data', 'file'])}'";
@@ -482,7 +482,7 @@  discard block
 block discarded – undo
482 482
             if ($this->texts['recognize_file']) {
483 483
                 $str .= ', ';
484 484
             }
485
-            $str .= '['.PHP_EOL;
485
+            $str .= '[' . PHP_EOL;
486 486
             foreach ($this->texts['recognize_data'] as $key => $val) {
487 487
                 $str .= "    {$rc->getShortName()}::{$this->getNameConst('ACTION_FIELD_', $key)} => ";
488 488
                 if (is_string($val)) {
@@ -490,46 +490,46 @@  discard block
 block discarded – undo
490 490
                 } else {
491 491
                     $str .= "{$val}";
492 492
                 }
493
-                $str .= ','.PHP_EOL;
493
+                $str .= ',' . PHP_EOL;
494 494
             }
495 495
             $str .= ']';
496 496
         }
497
-        $str .= ')) {'.PHP_EOL;
498
-        $str .= '    $code = $captcha->getCode();'.PHP_EOL;
499
-        $str .= '} else {'.PHP_EOL;
500
-        $str .= '    $error = $captcha->getError();'.PHP_EOL;
501
-        $str .= '}'.PHP_EOL;
502
-        $str .= '```'.PHP_EOL;
497
+        $str .= ')) {' . PHP_EOL;
498
+        $str .= '    $code = $captcha->getCode();' . PHP_EOL;
499
+        $str .= '} else {' . PHP_EOL;
500
+        $str .= '    $error = $captcha->getError();' . PHP_EOL;
501
+        $str .= '}' . PHP_EOL;
502
+        $str .= '```' . PHP_EOL;
503 503
 
504 504
         if (in_array('notTrue', get_class_methods($class))) {
505
-            $str .= "####{$this->getText(['example', 'nottrue'])}".PHP_EOL;
506
-            $str .= "{$this->getText(['example', 'nottrue', 'desc'])}".PHP_EOL;
507
-            $str .= '```'.PHP_EOL;
508
-            $str .= '$captcha->notTrue();'.PHP_EOL;
509
-            $str .= '```'.PHP_EOL;
505
+            $str .= "####{$this->getText(['example', 'nottrue'])}" . PHP_EOL;
506
+            $str .= "{$this->getText(['example', 'nottrue', 'desc'])}" . PHP_EOL;
507
+            $str .= '```' . PHP_EOL;
508
+            $str .= '$captcha->notTrue();' . PHP_EOL;
509
+            $str .= '```' . PHP_EOL;
510 510
         }
511 511
 
512 512
         if (in_array('getBalance', get_class_methods($class))) {
513
-            $str .= "####{$this->getText(['example', 'balance'])}".PHP_EOL;
514
-            $str .= '```'.PHP_EOL;
515
-            $str .= '$balance = $captcha->getBalance();'.PHP_EOL;
516
-            $str .= '```'.PHP_EOL;
513
+            $str .= "####{$this->getText(['example', 'balance'])}" . PHP_EOL;
514
+            $str .= '```' . PHP_EOL;
515
+            $str .= '$balance = $captcha->getBalance();' . PHP_EOL;
516
+            $str .= '```' . PHP_EOL;
517 517
         }
518 518
 
519 519
         if ($this->getText(['example', 'error', 'lang', 'if'])) {
520
-            $str .= "####{$this->getText(['example', 'error', 'lang'])}".PHP_EOL;
521
-            $str .= "{$this->getText(['example', 'error', 'lang', 'desc'])}".PHP_EOL;
522
-            $str .= '```'.PHP_EOL;
523
-            $str .= '$captcha->setErrorLang(\jumper423\decaptcha\core\DeCaptchaErrors::LANG_RU);'.PHP_EOL;
524
-            $str .= '```'.PHP_EOL;
520
+            $str .= "####{$this->getText(['example', 'error', 'lang'])}" . PHP_EOL;
521
+            $str .= "{$this->getText(['example', 'error', 'lang', 'desc'])}" . PHP_EOL;
522
+            $str .= '```' . PHP_EOL;
523
+            $str .= '$captcha->setErrorLang(\jumper423\decaptcha\core\DeCaptchaErrors::LANG_RU);' . PHP_EOL;
524
+            $str .= '```' . PHP_EOL;
525 525
         }
526 526
 
527
-        $str .= "####{$this->getText(['example', 'error', 'interception'])}".PHP_EOL;
528
-        $str .= "{$this->getText(['example', 'error', 'interception', 'desc'])}".PHP_EOL;
529
-        $str .= '```'.PHP_EOL;
530
-        $str .= '$captcha->setCauseAnError(true);'.PHP_EOL;
527
+        $str .= "####{$this->getText(['example', 'error', 'interception'])}" . PHP_EOL;
528
+        $str .= "{$this->getText(['example', 'error', 'interception', 'desc'])}" . PHP_EOL;
529
+        $str .= '```' . PHP_EOL;
530
+        $str .= '$captcha->setCauseAnError(true);' . PHP_EOL;
531 531
         $str .= PHP_EOL;
532
-        $str .= 'try {'.PHP_EOL;
532
+        $str .= 'try {' . PHP_EOL;
533 533
         $str .= '    $captcha->recognize(';
534 534
         if ($this->texts['recognize_file']) {
535 535
             $str .= "'{$this->getText(['recognize', 'data', 'file'])}'";
@@ -538,7 +538,7 @@  discard block
 block discarded – undo
538 538
             if ($this->texts['recognize_file']) {
539 539
                 $str .= ', ';
540 540
             }
541
-            $str .= '['.PHP_EOL;
541
+            $str .= '[' . PHP_EOL;
542 542
             foreach ($this->texts['recognize_data'] as $key => $val) {
543 543
                 $str .= "       {$rc->getShortName()}::{$this->getNameConst('ACTION_FIELD_', $key)} => ";
544 544
                 if (is_string($val)) {
@@ -546,16 +546,16 @@  discard block
 block discarded – undo
546 546
                 } else {
547 547
                     $str .= "{$val}";
548 548
                 }
549
-                $str .= ','.PHP_EOL;
549
+                $str .= ',' . PHP_EOL;
550 550
             }
551 551
             $str .= '    ]';
552 552
         }
553
-        $str .= ');'.PHP_EOL;
554
-        $str .= '    $code = $captcha->getCode();'.PHP_EOL;
555
-        $str .= '} catch (\jumper423\decaptcha\core\DeCaptchaErrors $e) {'.PHP_EOL;
556
-        $str .= '    ...'.PHP_EOL;
557
-        $str .= '}'.PHP_EOL;
558
-        $str .= '```'.PHP_EOL;
553
+        $str .= ');' . PHP_EOL;
554
+        $str .= '    $code = $captcha->getCode();' . PHP_EOL;
555
+        $str .= '} catch (\jumper423\decaptcha\core\DeCaptchaErrors $e) {' . PHP_EOL;
556
+        $str .= '    ...' . PHP_EOL;
557
+        $str .= '}' . PHP_EOL;
558
+        $str .= '```' . PHP_EOL;
559 559
 
560 560
         return $str;
561 561
     }
@@ -563,8 +563,8 @@  discard block
 block discarded – undo
563 563
     protected function viewFields()
564 564
     {
565 565
         $class = $this->class;
566
-        $str = " {$this->getText(['table', 'th', 'name'])} | {$this->getText(['table', 'th', 'code'])} | {$this->getText(['table', 'th', 'type'])} | {$this->getText(['table', 'th', 'req'])} | {$this->getText(['table', 'th', 'def'])} | {$this->getText(['table', 'th', 'enum'])} | {$this->getText(['table', 'th', 'desc'])} ".PHP_EOL;
567
-        $str .= ' --- | --- | --- | --- | --- | --- | --- '.PHP_EOL;
566
+        $str = " {$this->getText(['table', 'th', 'name'])} | {$this->getText(['table', 'th', 'code'])} | {$this->getText(['table', 'th', 'type'])} | {$this->getText(['table', 'th', 'req'])} | {$this->getText(['table', 'th', 'def'])} | {$this->getText(['table', 'th', 'enum'])} | {$this->getText(['table', 'th', 'desc'])} " . PHP_EOL;
567
+        $str .= ' --- | --- | --- | --- | --- | --- | --- ' . PHP_EOL;
568 568
         foreach ($this->class->actions[$class::ACTION_RECOGNIZE][$class::ACTION_FIELDS] as $param => $setting) {
569 569
             if (array_key_exists($class::ACTION_FIELDS, $setting) && is_array($setting[$class::ACTION_FIELDS])) {
570 570
                 foreach ($setting[$class::ACTION_FIELDS] as $param1 => $setting1) {
@@ -588,9 +588,9 @@  discard block
 block discarded – undo
588 588
         $class = $this->class;
589 589
         $str = " {$this->getText(['field', 'main', 'name', $param])} |";
590 590
         $str .= " {$this->getNameConst('ACTION_FIELD_', $param)} |";
591
-        $str .= ' '.substr($this->getNameConst('PARAM_FIELD_TYPE_', $setting[$class::PARAM_SLUG_TYPE]), 17).' |';
592
-        $str .= ' '.(array_key_exists($class::PARAM_SLUG_REQUIRE, $setting) ? '+' : '-').' |';
593
-        $str .= ' '.(array_key_exists($class::PARAM_SLUG_DEFAULT, $setting) ? $setting[$class::PARAM_SLUG_DEFAULT] : '').' |';
591
+        $str .= ' ' . substr($this->getNameConst('PARAM_FIELD_TYPE_', $setting[$class::PARAM_SLUG_TYPE]), 17) . ' |';
592
+        $str .= ' ' . (array_key_exists($class::PARAM_SLUG_REQUIRE, $setting) ? '+' : '-') . ' |';
593
+        $str .= ' ' . (array_key_exists($class::PARAM_SLUG_DEFAULT, $setting) ? $setting[$class::PARAM_SLUG_DEFAULT] : '') . ' |';
594 594
         $str .= " {$this->getText(['field', 'slug', $class::PARAM_SLUG_ENUM, $param])} |";
595 595
         $str .= " {$this->getText(['field', 'main', 'desc', $param])} |";
596 596
         $str .= PHP_EOL;
@@ -600,9 +600,9 @@  discard block
 block discarded – undo
600 600
 
601 601
     protected function viewMenu()
602 602
     {
603
-        $str = "+ [{$this->getText(['slug', 'menu', 'main'])}](../docs/README-{$this->lang}.md)".PHP_EOL;
604
-        $str .= "+ [{$this->getText(['slug', 'menu', 'another'])}](../docs/".$this->getFileName($this->lang == 'ru' ? 'en' : 'ru').')'.PHP_EOL;
605
-        $str .= "+ {$this->getText(['slug', 'menu', 'anchor'])}".PHP_EOL;
603
+        $str = "+ [{$this->getText(['slug', 'menu', 'main'])}](../docs/README-{$this->lang}.md)" . PHP_EOL;
604
+        $str .= "+ [{$this->getText(['slug', 'menu', 'another'])}](../docs/" . $this->getFileName($this->lang == 'ru' ? 'en' : 'ru') . ')' . PHP_EOL;
605
+        $str .= "+ {$this->getText(['slug', 'menu', 'anchor'])}" . PHP_EOL;
606 606
         foreach ([
607 607
                      ['slug', 'link'],
608 608
                      ['slug', 'service', 'desc'],
@@ -613,17 +613,17 @@  discard block
 block discarded – undo
613 613
                      ['slug', 'fields', 'desc'],
614 614
                  ] as $anchor) {
615 615
             if ($this->lang === 'en') {
616
-                $str .= "  + [{$this->getText($anchor)}](#".implode('-', explode(' ', mb_strtolower($this->getText($anchor)))).')'.PHP_EOL;
616
+                $str .= "  + [{$this->getText($anchor)}](#" . implode('-', explode(' ', mb_strtolower($this->getText($anchor)))) . ')' . PHP_EOL;
617 617
             } else {
618
-                $str .= "  + [{$this->getText($anchor)}](#".implode('-', explode(' ', $this->getText($anchor))).')'.PHP_EOL;
618
+                $str .= "  + [{$this->getText($anchor)}](#" . implode('-', explode(' ', $this->getText($anchor))) . ')' . PHP_EOL;
619 619
             }
620 620
         }
621 621
         if ($this->getText(['menu', 'from_service'])) {
622
-            $str .= "+ {$this->getText(['slug', 'menu', 'from_service'])}".PHP_EOL;
622
+            $str .= "+ {$this->getText(['slug', 'menu', 'from_service'])}" . PHP_EOL;
623 623
             foreach ($this->texts['menu_from_service'] as $fromServiceClass) {
624 624
                 $fromServiceObject = new $fromServiceClass([]);
625 625
                 $fromServiceObjectWiki = $fromServiceObject->getWiki($this->lang);
626
-                $str .= "  + [{$fromServiceObjectWiki->getText(['service', 'name'])}](../docs/{$fromServiceObjectWiki->getFileName()})".PHP_EOL;
626
+                $str .= "  + [{$fromServiceObjectWiki->getText(['service', 'name'])}](../docs/{$fromServiceObjectWiki->getFileName()})" . PHP_EOL;
627 627
             }
628 628
         }
629 629
 
@@ -645,24 +645,24 @@  discard block
 block discarded – undo
645 645
 
646 646
     public function view()
647 647
     {
648
-        $str = $this->getText(['service', 'name']).PHP_EOL;
649
-        $str .= '=============='.PHP_EOL;
650
-        $str .= "###{$this->getText(['slug', 'menu'])}".PHP_EOL;
651
-        $str .= $this->viewMenu().PHP_EOL.PHP_EOL;
652
-        $str .= "###{$this->getText(['slug', 'link'])}".PHP_EOL;
653
-        $str .= "[{$this->getText(['slug', 'link', 'to_service'])} {$this->getText(['service', 'name'])}]({$this->getText(['service', 'href'])})".PHP_EOL.PHP_EOL;
654
-        $str .= "###{$this->getText(['slug', 'service', 'desc'])}".PHP_EOL;
655
-        $str .= "{$this->getText(['service', 'desc'])}".PHP_EOL.PHP_EOL;
656
-        $str .= "###{$this->getText(['slug', 'price'])}".PHP_EOL;
657
-        $str .= "{$this->getText(['recognize', 'price'])}".PHP_EOL.PHP_EOL;
658
-        $str .= "###{$this->getText(['slug', 'recognize', 'desc'])}".PHP_EOL;
659
-        $str .= "{$this->getText(['recognize', 'desc'])}".PHP_EOL.PHP_EOL;
660
-        $str .= "###{$this->getText(['install'])}".PHP_EOL;
661
-        $str .= "{$this->viewInstall()}".PHP_EOL.PHP_EOL;
662
-        $str .= "###{$this->getText(['example'])}".PHP_EOL;
663
-        $str .= "{$this->viewExamples()}".PHP_EOL.PHP_EOL;
664
-        $str .= "###{$this->getText(['slug', 'fields', 'desc'])}".PHP_EOL;
665
-        $str .= $this->viewFields().PHP_EOL;
648
+        $str = $this->getText(['service', 'name']) . PHP_EOL;
649
+        $str .= '==============' . PHP_EOL;
650
+        $str .= "###{$this->getText(['slug', 'menu'])}" . PHP_EOL;
651
+        $str .= $this->viewMenu() . PHP_EOL . PHP_EOL;
652
+        $str .= "###{$this->getText(['slug', 'link'])}" . PHP_EOL;
653
+        $str .= "[{$this->getText(['slug', 'link', 'to_service'])} {$this->getText(['service', 'name'])}]({$this->getText(['service', 'href'])})" . PHP_EOL . PHP_EOL;
654
+        $str .= "###{$this->getText(['slug', 'service', 'desc'])}" . PHP_EOL;
655
+        $str .= "{$this->getText(['service', 'desc'])}" . PHP_EOL . PHP_EOL;
656
+        $str .= "###{$this->getText(['slug', 'price'])}" . PHP_EOL;
657
+        $str .= "{$this->getText(['recognize', 'price'])}" . PHP_EOL . PHP_EOL;
658
+        $str .= "###{$this->getText(['slug', 'recognize', 'desc'])}" . PHP_EOL;
659
+        $str .= "{$this->getText(['recognize', 'desc'])}" . PHP_EOL . PHP_EOL;
660
+        $str .= "###{$this->getText(['install'])}" . PHP_EOL;
661
+        $str .= "{$this->viewInstall()}" . PHP_EOL . PHP_EOL;
662
+        $str .= "###{$this->getText(['example'])}" . PHP_EOL;
663
+        $str .= "{$this->viewExamples()}" . PHP_EOL . PHP_EOL;
664
+        $str .= "###{$this->getText(['slug', 'fields', 'desc'])}" . PHP_EOL;
665
+        $str .= $this->viewFields() . PHP_EOL;
666 666
 
667 667
         return $str;
668 668
     }
@@ -674,11 +674,11 @@  discard block
 block discarded – undo
674 674
         }
675 675
         $class = $this->class;
676 676
 
677
-        return (new \ReflectionClass($class))->getShortName().'-'.$lang.'.md';
677
+        return (new \ReflectionClass($class))->getShortName() . '-' . $lang . '.md';
678 678
     }
679 679
 
680 680
     public function save()
681 681
     {
682
-        file_put_contents(__DIR__.'/../../docs/'.$this->getFileName(), $this->view());
682
+        file_put_contents(__DIR__ . '/../../docs/' . $this->getFileName(), $this->view());
683 683
     }
684 684
 }
Please login to merge, or discard this patch.