-
Notifications
You must be signed in to change notification settings - Fork 9.4k
Expand file tree
/
Copy pathJs.php
More file actions
44 lines (42 loc) · 1.36 KB
/
Js.php
File metadata and controls
44 lines (42 loc) · 1.36 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
namespace Magento\Setup\Module\I18n\Parser\Adapter;
/**
* Js parser adapter
*/
class Js extends AbstractAdapter
{
/**
* {@inheritdoc}
*/
protected function _parse()
{
$fileHandle = @fopen($this->_file, 'r');
$lineNumber = 0;
while (!feof($fileHandle)) {
$lineNumber++;
$fileRow = fgets($fileHandle, 4096);
$results = [];
preg_match_all('/mage\.__\(\s*([\'"])(.*?[^\\\])\1.*?[),]/', $fileRow, $results, PREG_SET_ORDER);
$resultsCount = count($results);
for ($i = 0; $i < $resultsCount; $i++) {
if (isset($results[$i][2])) {
$quote = $results[$i][1];
$this->_addPhrase($quote . $results[$i][2] . $quote, $lineNumber);
}
}
preg_match_all('/\\$t\(\s*([\'"])(.*?[^\\\])\1.*?[),]/', $fileRow, $results, PREG_SET_ORDER);
$resultsCount = count($results);
for ($i = 0; $i < $resultsCount; $i++) {
if (isset($results[$i][2])) {
$quote = $results[$i][1];
$this->_addPhrase($quote . $results[$i][2] . $quote, $lineNumber);
}
}
}
fclose($fileHandle);
}
}