@@ -27,6 +27,7 @@ discard block |
||
27 | 27 | * |
28 | 28 | * @param string $format The format of the loader |
29 | 29 | * @param LoaderInterface $loader |
30 | + * @return void |
|
30 | 31 | */ |
31 | 32 | public function addLoader($format, LoaderInterface $loader); |
32 | 33 | |
@@ -45,6 +46,7 @@ discard block |
||
45 | 46 | * @param string $domain |
46 | 47 | * @param MessageCatalogue $catalogue |
47 | 48 | * @throws LoaderNotFoundException |
49 | + * @return void |
|
48 | 50 | */ |
49 | 51 | public function loadResource($format, $resource, $domain, MessageCatalogue $catalogue); |
50 | 52 |
@@ -62,7 +62,7 @@ discard block |
||
62 | 62 | public function translate($message, $count = NULL, $parameters = [], $domain = NULL, $locale = NULL) |
63 | 63 | { |
64 | 64 | $translationString = ($message instanceof Phrase ? $message->message : $message); |
65 | - $prefix = $this->prefix . '.'; |
|
65 | + $prefix = $this->prefix.'.'; |
|
66 | 66 | |
67 | 67 | if (Strings::startsWith($message, '//')) { |
68 | 68 | $prefix = NULL; |
@@ -70,7 +70,7 @@ discard block |
||
70 | 70 | } |
71 | 71 | |
72 | 72 | if ($message instanceof Phrase) { |
73 | - return $this->translator->translate(new Phrase($prefix . $translationString, $message->count, $message->parameters, $message->domain, $message->locale)); |
|
73 | + return $this->translator->translate(new Phrase($prefix.$translationString, $message->count, $message->parameters, $message->domain, $message->locale)); |
|
74 | 74 | } |
75 | 75 | |
76 | 76 | if (is_array($count)) { |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | $count = NULL; |
81 | 81 | } |
82 | 82 | |
83 | - return $this->translator->translate($prefix . $translationString, $count, (array) $parameters, $domain, $locale); |
|
83 | + return $this->translator->translate($prefix.$translationString, $count, (array) $parameters, $domain, $locale); |
|
84 | 84 | } |
85 | 85 | |
86 | 86 |
@@ -61,8 +61,8 @@ |
||
61 | 61 | |
62 | 62 | |
63 | 63 | /** |
64 | - * @param string|\Kdyby\Translation\Phrase $message |
|
65 | - * @param int|array|NULL $count |
|
64 | + * @param string $message |
|
65 | + * @param integer|null $count |
|
66 | 66 | * @param array|string|NULL $parameters |
67 | 67 | * @param string|NULL $domain |
68 | 68 | * @param string|NULL $locale |
@@ -111,7 +111,7 @@ discard block |
||
111 | 111 | |
112 | 112 | $builder->addDefinition($this->prefix('helpers')) |
113 | 113 | ->setClass('Kdyby\Translation\TemplateHelpers') |
114 | - ->setFactory($this->prefix('@default') . '::createTemplateHelpers'); |
|
114 | + ->setFactory($this->prefix('@default').'::createTemplateHelpers'); |
|
115 | 115 | |
116 | 116 | $builder->addDefinition($this->prefix('fallbackResolver')) |
117 | 117 | ->setClass('Kdyby\Translation\FallbackResolver'); |
@@ -135,8 +135,8 @@ discard block |
||
135 | 135 | $builder->addDefinition($this->prefix('loader')) |
136 | 136 | ->setClass('Kdyby\Translation\TranslationLoader'); |
137 | 137 | |
138 | - $loaders = $this->loadFromFile(__DIR__ . '/config/loaders.neon'); |
|
139 | - $this->loadLoaders($loaders, $config['loaders'] ? : array_keys($loaders)); |
|
138 | + $loaders = $this->loadFromFile(__DIR__.'/config/loaders.neon'); |
|
139 | + $this->loadLoaders($loaders, $config['loaders'] ?: array_keys($loaders)); |
|
140 | 140 | |
141 | 141 | if ($this->isRegisteredConsoleExtension()) { |
142 | 142 | $this->loadConsole($config); |
@@ -204,8 +204,8 @@ discard block |
||
204 | 204 | { |
205 | 205 | $builder = $this->getContainerBuilder(); |
206 | 206 | |
207 | - foreach ($this->loadFromFile(__DIR__ . '/config/dumpers.neon') as $format => $class) { |
|
208 | - $builder->addDefinition($this->prefix('dumper.' . $format)) |
|
207 | + foreach ($this->loadFromFile(__DIR__.'/config/dumpers.neon') as $format => $class) { |
|
208 | + $builder->addDefinition($this->prefix('dumper.'.$format)) |
|
209 | 209 | ->setClass($class) |
210 | 210 | ->addTag(self::TAG_DUMPER, $format); |
211 | 211 | } |
@@ -221,7 +221,7 @@ discard block |
||
221 | 221 | if (array_search($format, $allowed) === FALSE) { |
222 | 222 | continue; |
223 | 223 | } |
224 | - $builder->addDefinition($this->prefix('loader.' . $format)) |
|
224 | + $builder->addDefinition($this->prefix('loader.'.$format)) |
|
225 | 225 | ->setClass($class) |
226 | 226 | ->addTag(self::TAG_LOADER, $format); |
227 | 227 | } |
@@ -233,8 +233,8 @@ discard block |
||
233 | 233 | { |
234 | 234 | $builder = $this->getContainerBuilder(); |
235 | 235 | |
236 | - foreach ($this->loadFromFile(__DIR__ . '/config/extractors.neon') as $format => $class) { |
|
237 | - $builder->addDefinition($this->prefix('extractor.' . $format)) |
|
236 | + foreach ($this->loadFromFile(__DIR__.'/config/extractors.neon') as $format => $class) { |
|
237 | + $builder->addDefinition($this->prefix('extractor.'.$format)) |
|
238 | 238 | ->setClass($class) |
239 | 239 | ->addTag(self::TAG_EXTRACTOR, $format); |
240 | 240 | } |
@@ -249,7 +249,7 @@ discard block |
||
249 | 249 | |
250 | 250 | $this->beforeCompileLogging($config); |
251 | 251 | |
252 | - $registerToLatte = function (Nette\DI\ServiceDefinition $def) { |
|
252 | + $registerToLatte = function(Nette\DI\ServiceDefinition $def) { |
|
253 | 253 | $def->addSetup('?->onCompile[] = function($engine) { Kdyby\Translation\Latte\TranslateMacros::install($engine->getCompiler()); }', ['@self']); |
254 | 254 | |
255 | 255 | $def->addSetup('addProvider', ['translator', $this->prefix('@default')]) |
@@ -289,7 +289,7 @@ discard block |
||
289 | 289 | foreach ($builder->findByTag(self::TAG_EXTRACTOR) as $extractorId => $meta) { |
290 | 290 | Validators::assert($meta, 'string:2..'); |
291 | 291 | |
292 | - $extractor->addSetup('addExtractor', [$meta, '@' . $extractorId]); |
|
292 | + $extractor->addSetup('addExtractor', [$meta, '@'.$extractorId]); |
|
293 | 293 | |
294 | 294 | $builder->getDefinition($extractorId)->setAutowired(FALSE); |
295 | 295 | } |
@@ -298,7 +298,7 @@ discard block |
||
298 | 298 | foreach ($builder->findByTag(self::TAG_DUMPER) as $dumperId => $meta) { |
299 | 299 | Validators::assert($meta, 'string:2..'); |
300 | 300 | |
301 | - $writer->addSetup('addDumper', [$meta, '@' . $dumperId]); |
|
301 | + $writer->addSetup('addDumper', [$meta, '@'.$dumperId]); |
|
302 | 302 | |
303 | 303 | $builder->getDefinition($dumperId)->setAutowired(FALSE); |
304 | 304 | } |
@@ -321,7 +321,7 @@ discard block |
||
321 | 321 | $config['dirs'] = array_merge($config['dirs'], array_values($extension->getTranslationResources())); |
322 | 322 | } |
323 | 323 | |
324 | - $config['dirs'] = array_map(function ($dir) { |
|
324 | + $config['dirs'] = array_map(function($dir) { |
|
325 | 325 | return str_replace((DIRECTORY_SEPARATOR === '/') ? '\\' : '/', DIRECTORY_SEPARATOR, $dir); |
326 | 326 | }, $config['dirs']); |
327 | 327 | |
@@ -367,8 +367,8 @@ discard block |
||
367 | 367 | $whitelistRegexp = Kdyby\Translation\Translator::buildWhitelistRegexp($config['whitelist']); |
368 | 368 | $translator = $builder->getDefinition($this->prefix('default')); |
369 | 369 | |
370 | - $mask = array_map(function ($value) { |
|
371 | - return '*.*.' . $value; |
|
370 | + $mask = array_map(function($value) { |
|
371 | + return '*.*.'.$value; |
|
372 | 372 | }, array_keys($this->loaders)); |
373 | 373 | |
374 | 374 | foreach (Finder::findFiles($mask)->from($dirs) as $file) { |
@@ -467,7 +467,7 @@ discard block |
||
467 | 467 | */ |
468 | 468 | public static function register(Nette\Configurator $configurator) |
469 | 469 | { |
470 | - $configurator->onCompile[] = function ($config, Nette\DI\Compiler $compiler) { |
|
470 | + $configurator->onCompile[] = function($config, Nette\DI\Compiler $compiler) { |
|
471 | 471 | $compiler->addExtension('translation', new TranslationExtension()); |
472 | 472 | }; |
473 | 473 | } |
@@ -51,7 +51,7 @@ |
||
51 | 51 | $value = var_export($node->content, TRUE); |
52 | 52 | $node->content = ''; |
53 | 53 | } else { |
54 | - $node->openingCode = '<?php ob_start(function () {}) ?>' . $node->openingCode; |
|
54 | + $node->openingCode = '<?php ob_start(function () {}) ?>'.$node->openingCode; |
|
55 | 55 | $value = 'ob_get_clean()'; |
56 | 56 | } |
57 | 57 |
@@ -95,8 +95,8 @@ |
||
95 | 95 | { |
96 | 96 | foreach ($this->getLoaders() as $format => $loader) { |
97 | 97 | // load any existing translation files |
98 | - $extension = $catalogue->getLocale() . '.' . $format; |
|
99 | - foreach (Finder::findFiles('*.' . $extension)->from($directory) as $file) { |
|
98 | + $extension = $catalogue->getLocale().'.'.$format; |
|
99 | + foreach (Finder::findFiles('*.'.$extension)->from($directory) as $file) { |
|
100 | 100 | /** @var \SplFileInfo $file */ |
101 | 101 | $domain = substr($file->getFileName(), 0, -1 * strlen($extension) - 1); |
102 | 102 | $this->loadResource($format, $file->getPathname(), $domain, $catalogue); |
@@ -54,10 +54,10 @@ |
||
54 | 54 | { |
55 | 55 | return parent::getCacheFile(substr_replace( |
56 | 56 | $key, |
57 | - trim(strtr($this->hint, '\\/@', '.._'), '.') . '-', |
|
57 | + trim(strtr($this->hint, '\\/@', '.._'), '.').'-', |
|
58 | 58 | strpos($key, Nette\Caching\Cache::NAMESPACE_SEPARATOR) + 1, |
59 | 59 | 0 |
60 | - )) . '.php'; |
|
60 | + )).'.php'; |
|
61 | 61 | } |
62 | 62 | |
63 | 63 | } |
@@ -91,7 +91,7 @@ discard block |
||
91 | 91 | public function getTab() |
92 | 92 | { |
93 | 93 | return '<span title="Translation"><img width="16px" height="16px" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB90DExAuL9uIsPUAAAQ2SURBVFjD7Ze9bxxVFMV/583skjgOIXEaKCNFAgmQ+ExS8qEUCEHH30BBScG/QM1fEmgoAAkoAigSKKFASElHESEFbGcdez7uoXhvZteW7ewmQjRMsTs7s/Pufeece+4d+P/4jw8ddvHq1avv2b5mm02Lr9Y7/gpQBCFDD5YhgsAoRLhHMtHnRYNAAb3yt92//9y3v3x+MFY6LIGIuGYbKedngzAGsPK5Kb8BGRAu9xiuL+zQ6NphsQ5NYB7YhA1jQCObyOHG/3sMlpM0hmGNcmXh7w9PYL5wfsphbCMPaOR7BipEJahV0FHZvZ2D+1i2qY+gYERCZTGZzLdFkLNIht/v72AHGM5Pa85MqowUc4p81PaPo2CgIa9RxOZ8jowDZm0WXo2oBdttN8ihIABC5dPLI7BIQQA5prEGIeYdbnVtSSpD3WCaCCqpMB8jXSshEBFEROZ9TCTvepC/be63HWA2ppNRoJttP1flvkp5BArmNBQl5zSIMJtNRxJEwHqVOF1XGLHVdSQp+0CpAi1UytJVYHteBQ7cm7AgIKnAH7CWhBDrVRqfud91UERLFNPyihQMwaOUIAI5I9D0PU2Xz9frCjs4WVVUMhJstR2SwaUWgvx7VQqyG2b4IoIoO9xsWipllJ6sK1JB7Exd4whmbUcYlCVcRKrVq0DSqCIVRlPZ4SCqO7MHC0Ey1Epiu+k5XafMvbRaFXCgdBxBOIgw202/TyNBtmuHibJRYba6LjuAsgjjCA3UxwWPCEwanRCJ7bYd/eHspFootdwhdvqeJsyegyaCSVK271US2E9BNp8otbTd9STlB89NJvRFmJREJ4K7e0El2Op6NiY1x7GQlpoawihgq+lIZF2s1xWdu9GAcO6Yp6rcE4OcwGDGR7nhUglYRjL32pbOQdMH61VCzgiFc8eUs+2cTIkuoI2MmH20D9TLzEzuTafgwtp0dNXO5FlhsOvSh23zzBPTBfDm4ny0BBBWAInWpSmVmSDzqrEko0TpBwct9W+xGgKL41hWoMeJB/LQsa/JlOYkVDrmAHlpwnF0M6of2gdIC7vUvDUNk1HMbwVRbmo+jA3tOlaYByTYbRJdiG1E3UFFg2IvLxqm67qR1yg71kLflDXvwhHhsxtbSycw2xWffXiPP+/NmFTiGyX21t9m99RbWDCZ1Fy5dAlJeXyz6aOfz48Mzli6aPTp8rMXz/585UVeun7z4WW418Kll0/w9Pk1/t5JTHdh2otpElMl1PX8eP06fdus9ObhQ2g4VBrVxpvvdl/Ovmgacev2Dnf+2GXnxi6zGw/KMJrNJUXPS6fXmCaNw+d8GNV8KHXgp87xyg83tVQCALPvLlvCVUK/3tnh9t3mkw8+/u3Tx3kNu/H6C7z6063lnLBU4dd98NHzF9Z47eKpE4/7Hngw+LHHzveX3zmAyBv/xsvpP+li/lm3bxkuAAAAAElFTkSuQmCC" />' |
94 | - . $this->translator->getLocale() . ($this->untranslated ? ' <b>(' . count(array_unique($this->untranslated, SORT_REGULAR)) . ' errors)</b>' : '') |
|
94 | + . $this->translator->getLocale().($this->untranslated ? ' <b>('.count(array_unique($this->untranslated, SORT_REGULAR)).' errors)</b>' : '') |
|
95 | 95 | . '</span>'; |
96 | 96 | } |
97 | 97 | |
@@ -124,16 +124,16 @@ discard block |
||
124 | 124 | |
125 | 125 | /** @var Request[] $snapshot */ |
126 | 126 | $params = $snapshot['request']->getParameters(); |
127 | - $s .= '<tr><th width="10px"> </th>' . |
|
128 | - '<th>' . $h($snapshot['request']->getPresenterName() . (isset($params['action']) ? ':' . $params['action'] : '')) . '</th>' . |
|
129 | - '<th>' . $h($snapshot['locale']) . '</th></tr>'; |
|
127 | + $s .= '<tr><th width="10px"> </th>'. |
|
128 | + '<th>'.$h($snapshot['request']->getPresenterName().(isset($params['action']) ? ':'.$params['action'] : '')).'</th>'. |
|
129 | + '<th>'.$h($snapshot['locale']).'</th></tr>'; |
|
130 | 130 | |
131 | 131 | $l = 1; |
132 | 132 | foreach ($snapshot['resolvers'] as $name => $resolvedLocale) { |
133 | - $s .= '<tr><td>' . ($l++) . '.</td><td>' . $h($name) . '</td><td>' . $h($resolvedLocale) . '</td></tr>'; |
|
133 | + $s .= '<tr><td>'.($l++).'.</td><td>'.$h($name).'</td><td>'.$h($resolvedLocale).'</td></tr>'; |
|
134 | 134 | } |
135 | 135 | |
136 | - $panel[] = '<table style="width:100%">' . $s . '</table>'; |
|
136 | + $panel[] = '<table style="width:100%">'.$s.'</table>'; |
|
137 | 137 | } |
138 | 138 | } |
139 | 139 | |
@@ -151,14 +151,13 @@ discard block |
||
151 | 151 | } |
152 | 152 | |
153 | 153 | $panel[] = '<h2>Ignored resources</h2>'; |
154 | - $panel[] = '<p>Whitelist config: ' . implode(', ', array_map($h, $this->localeWhitelist)) . '</p>'; |
|
154 | + $panel[] = '<p>Whitelist config: '.implode(', ', array_map($h, $this->localeWhitelist)).'</p>'; |
|
155 | 155 | $panel[] = $this->renderResources($this->ignoredResources); |
156 | 156 | } |
157 | 157 | |
158 | - return empty($panel) ? '' : |
|
159 | - '<h1>Missing translations: ' . count(array_unique($this->untranslated, SORT_REGULAR)) . |
|
160 | - ', Resources: ' . count(Nette\Utils\Arrays::flatten($this->resources)) . '</h1>' . |
|
161 | - '<div class="nette-inner tracy-inner kdyby-TranslationPanel" style="min-width:500px">' . implode($panel) . '</div>' . |
|
158 | + return empty($panel) ? '' : '<h1>Missing translations: '.count(array_unique($this->untranslated, SORT_REGULAR)). |
|
159 | + ', Resources: '.count(Nette\Utils\Arrays::flatten($this->resources)).'</h1>'. |
|
160 | + '<div class="nette-inner tracy-inner kdyby-TranslationPanel" style="min-width:500px">'.implode($panel).'</div>'. |
|
162 | 161 | '<style> |
163 | 162 | #nette-debug .kdyby-TranslationPanel h2, |
164 | 163 | #tracy-debug .kdyby-TranslationPanel h2 {font-size: 23px;} |
@@ -178,19 +177,19 @@ discard block |
||
178 | 177 | $s .= '<tr><td>'; |
179 | 178 | |
180 | 179 | if ($message instanceof \Exception || $message instanceof \Throwable) { |
181 | - $s .= '<span style="color:red">' . $h($message->getMessage()) . '</span>'; |
|
180 | + $s .= '<span style="color:red">'.$h($message->getMessage()).'</span>'; |
|
182 | 181 | |
183 | 182 | } elseif ($message instanceof Nette\Utils\Html) { |
184 | - $s .= '<span style="color:red">Nette\Utils\Html(' . $h((string) $message) . ')</span>'; |
|
183 | + $s .= '<span style="color:red">Nette\Utils\Html('.$h((string) $message).')</span>'; |
|
185 | 184 | |
186 | 185 | } else { |
187 | 186 | $s .= $h($message); |
188 | 187 | } |
189 | 188 | |
190 | - $s .= '</td><td>' . $h($untranslated['domain']) . '</td></tr>'; |
|
189 | + $s .= '</td><td>'.$h($untranslated['domain']).'</td></tr>'; |
|
191 | 190 | } |
192 | 191 | |
193 | - return '<table style="width:100%"><tr><th>Untranslated message</th><th>Translation domain</th></tr>' . $s . '</table>'; |
|
192 | + return '<table style="width:100%"><tr><th>Untranslated message</th><th>Translation domain</th></tr>'.$s.'</table>'; |
|
194 | 193 | } |
195 | 194 | |
196 | 195 | |
@@ -204,25 +203,25 @@ discard block |
||
204 | 203 | foreach ($resourcesMap as $locale => $resources) { |
205 | 204 | foreach ($resources as $resourcePath => $domain) { |
206 | 205 | $s .= '<tr>'; |
207 | - $s .= '<td>' . $h($locale) . '</td>'; |
|
208 | - $s .= '<td>' . $h($domain) . '</td>'; |
|
206 | + $s .= '<td>'.$h($locale).'</td>'; |
|
207 | + $s .= '<td>'.$h($domain).'</td>'; |
|
209 | 208 | |
210 | - $relativePath = str_replace(rtrim($this->rootDir, '/') . '/', '', $resourcePath); |
|
209 | + $relativePath = str_replace(rtrim($this->rootDir, '/').'/', '', $resourcePath); |
|
211 | 210 | if (Nette\Utils\Strings::startsWith($relativePath, 'vendor/')) { |
212 | 211 | $parts = explode('/', $relativePath, 4); |
213 | 212 | $left = array_pop($parts); |
214 | - $relativePath = $h(implode('/', $parts) . '/.../') . '<b>' . $h(basename($left)) . '</b>'; |
|
213 | + $relativePath = $h(implode('/', $parts).'/.../').'<b>'.$h(basename($left)).'</b>'; |
|
215 | 214 | |
216 | 215 | } else { |
217 | - $relativePath = $h(dirname($relativePath)) . '/<b>' . $h(basename($relativePath)) . '</b>'; |
|
216 | + $relativePath = $h(dirname($relativePath)).'/<b>'.$h(basename($relativePath)).'</b>'; |
|
218 | 217 | } |
219 | 218 | |
220 | - $s .= '<td>' . self::editorLink($resourcePath, 1, $relativePath) . '</td>'; |
|
219 | + $s .= '<td>'.self::editorLink($resourcePath, 1, $relativePath).'</td>'; |
|
221 | 220 | $s .= '</tr>'; |
222 | 221 | } |
223 | 222 | } |
224 | 223 | |
225 | - return '<table style="width:100%"><tr><th>Locale</th><th>Domain</th><th>Resource filename</th></tr>' . $s . '</table>'; |
|
224 | + return '<table style="width:100%"><tr><th>Locale</th><th>Domain</th><th>Resource filename</th></tr>'.$s.'</table>'; |
|
226 | 225 | } |
227 | 226 | |
228 | 227 | |
@@ -347,9 +346,9 @@ discard block |
||
347 | 346 | if ($call = Helpers::findTrace($e->getPrevious()->getTrace(), $method)) { |
348 | 347 | return [ |
349 | 348 | 'tab' => 'YAML dictionary', |
350 | - 'panel' => '<p><b>File:</b> ' . self::editorLink($call['args'][0], $previous->getParsedLine()) . '</p>' |
|
349 | + 'panel' => '<p><b>File:</b> '.self::editorLink($call['args'][0], $previous->getParsedLine()).'</p>' |
|
351 | 350 | . ($previous->getParsedLine() ? BlueScreen::highlightFile($call['args'][0], $previous->getParsedLine()) : '') |
352 | - . '<p>' . $previous->getMessage() . ' </p>' |
|
351 | + . '<p>'.$previous->getMessage().' </p>' |
|
353 | 352 | ]; |
354 | 353 | } |
355 | 354 | } |
@@ -244,7 +244,7 @@ discard block |
||
244 | 244 | |
245 | 245 | |
246 | 246 | /** |
247 | - * @param \Exception|\Throwable $e |
|
247 | + * @param \Exception $e |
|
248 | 248 | * @param string|NULL $domain |
249 | 249 | */ |
250 | 250 | public function choiceError($e, $domain) |
@@ -362,6 +362,8 @@ discard block |
||
362 | 362 | /** |
363 | 363 | * Returns link to editor. |
364 | 364 | * @author David Grudl |
365 | + * @param integer $line |
|
366 | + * @param string $text |
|
365 | 367 | * @return Nette\Utils\Html|string |
366 | 368 | */ |
367 | 369 | private static function editorLink($file, $line, $text = NULL) |
@@ -161,7 +161,7 @@ |
||
161 | 161 | , $locale, $availableCatalogues[$locale]->all(), new Code\PhpLiteral($fallbackContent) |
162 | 162 | ); |
163 | 163 | |
164 | - return '<?php' . "\n\n" . $content; |
|
164 | + return '<?php'."\n\n".$content; |
|
165 | 165 | } |
166 | 166 | |
167 | 167 |
@@ -65,10 +65,10 @@ |
||
65 | 65 | return NULL; |
66 | 66 | } |
67 | 67 | |
68 | - $s = strtolower($header); // case insensitive |
|
69 | - $s = strtr($s, '_', '-'); // cs_CZ means cs-CZ |
|
70 | - rsort($langs); // first more specific |
|
71 | - preg_match_all('#(' . implode('|', $langs) . ')(?:-[^\s,;=]+)?\s*(?:;\s*q=([0-9.]+))?#', $s, $matches); |
|
68 | + $s = strtolower($header); // case insensitive |
|
69 | + $s = strtr($s, '_', '-'); // cs_CZ means cs-CZ |
|
70 | + rsort($langs); // first more specific |
|
71 | + preg_match_all('#('.implode('|', $langs).')(?:-[^\s,;=]+)?\s*(?:;\s*q=([0-9.]+))?#', $s, $matches); |
|
72 | 72 | |
73 | 73 | if (!$matches[0]) { |
74 | 74 | return NULL; |