This repository has been archived by the owner on Jan 30, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 49
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'develop' of git://github.com/zendframework/zf2 into hot…
…fix/cache-empty-namespace
- Loading branch information
91 parents
913f51c
+
39924f3
+
c2a11e1
+
61b9322
+
413a38b
+
e51b2b8
+
20e328b
+
6437ec0
+
e9b8476
+
95e54a0
+
7ea3aed
+
df6a706
+
a82fc82
+
7c2a059
+
4fefb53
+
599ee3a
+
ea3fc65
+
f6c04c2
+
6591e3d
+
a4f76e3
+
33c7531
+
2d59782
+
8152327
+
e56ce9b
+
db9b18f
+
b88635a
+
a262823
+
b79aef6
+
c2284e4
+
70193eb
+
96acf77
+
9675426
+
5f02411
+
0dafea7
+
15dc674
+
4a2447d
+
e6eb7f3
+
e9499c5
+
272b15f
+
11c7758
+
6f0e918
+
5f4980a
+
ecca95a
+
88b5971
+
ecb8d13
+
9de1c08
+
44aad17
+
13269e9
+
654cdb6
+
dc708db
+
380ffba
+
ff67e7f
+
fe2e025
+
95f0efa
+
68cc4b3
+
bf13b96
+
8870381
+
56480f4
+
1fa90d7
+
5c7fe1f
+
abe9bc1
+
a33cacd
+
cdd7d9f
+
6a261b1
+
5e594c4
+
01c1241
+
30d1dd2
+
d4af079
+
c9aa9b4
+
10f47ca
+
ef20fa1
+
2187ae2
+
e7f3993
+
db93d37
+
aa57612
+
4af81d8
+
2f90998
+
3013404
+
69d83fe
+
f383ca9
+
1b26f48
+
9e59ae6
+
b96f402
+
b36e36b
+
60fa081
+
be1ce44
+
9e2c9d5
+
5a6465d
+
7e455b4
+
054f09d
+
83d837e
commit 28bc01e
Showing
22 changed files
with
763 additions
and
36 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
<?php | ||
/** | ||
* Zend Framework (http://framework.zend.com/) | ||
* | ||
* @link http://github.com/zendframework/zf2 for the canonical source repository | ||
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) | ||
* @license http://framework.zend.com/license/new-bsd New BSD License | ||
* @package Zend_I18n | ||
*/ | ||
|
||
namespace Zend\I18n\Translator\Loader; | ||
|
||
use Zend\Config\Reader\Ini as IniReader; | ||
use Zend\I18n\Exception; | ||
use Zend\I18n\Translator\Plural\Rule as PluralRule; | ||
use Zend\I18n\Translator\TextDomain; | ||
|
||
/** | ||
* PHP INI format loader. | ||
* | ||
* @category Zend | ||
* @package Zend_I18n | ||
* @subpackage Translator | ||
*/ | ||
class Ini implements FileLoaderInterface | ||
{ | ||
/** | ||
* load(): defined by FileLoaderInterface. | ||
* | ||
* @see FileLoaderInterface::load() | ||
* @param string $locale | ||
* @param string $filename | ||
* @return TextDomain|null | ||
* @throws Exception\InvalidArgumentException | ||
*/ | ||
public function load($locale, $filename) | ||
{ | ||
if (!is_file($filename) || !is_readable($filename)) { | ||
throw new Exception\InvalidArgumentException(sprintf( | ||
'Could not open file %s for reading', | ||
$filename | ||
)); | ||
} | ||
|
||
$messages = array(); | ||
$iniReader = new IniReader(); | ||
$messagesNamespaced = $iniReader->fromFile($filename); | ||
|
||
$list = $messagesNamespaced; | ||
if (isset($messagesNamespaced['translation'])) { | ||
$list = $messagesNamespaced['translation']; | ||
} | ||
|
||
foreach ($list as $message) { | ||
if (!is_array($message) || count($message) < 2) { | ||
throw new Exception\InvalidArgumentException( | ||
'Each INI row must be an array with message and translation' | ||
); | ||
} | ||
if (isset($message['message']) && isset($message['translation'])) { | ||
$messages[$message['message']] = $message['translation']; | ||
continue; | ||
} | ||
$messages[array_shift($message)] = array_shift($message); | ||
} | ||
|
||
if (!is_array($messages)) { | ||
throw new Exception\InvalidArgumentException(sprintf( | ||
'Expected an array, but received %s', | ||
gettype($messages) | ||
)); | ||
} | ||
|
||
$textDomain = new TextDomain($messages); | ||
|
||
if (array_key_exists('plural', $messagesNamespaced) | ||
&& isset($messagesNamespaced['plural']['plural_forms']) | ||
) { | ||
$textDomain->setPluralRule( | ||
PluralRule::fromString($messagesNamespaced['plural']['plural_forms']) | ||
); | ||
} | ||
|
||
return $textDomain; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
<?php | ||
/** | ||
* Zend Framework (http://framework.zend.com/) | ||
* | ||
* @link http://github.com/zendframework/zf2 for the canonical source repository | ||
* @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) | ||
* @license http://framework.zend.com/license/new-bsd New BSD License | ||
* @package Zend_I18n | ||
*/ | ||
|
||
namespace Zend\I18n\Translator; | ||
|
||
use Zend\I18n\Translator\Translator; | ||
|
||
/** | ||
* @category Zend | ||
* @package Zend_I18n | ||
* @subpackage Translator | ||
*/ | ||
trait TranslatorAwareTrait | ||
{ | ||
/** | ||
* @var Translator | ||
*/ | ||
protected $translator = null; | ||
|
||
/** | ||
* @var bool | ||
*/ | ||
protected $translatorEnabled = true; | ||
|
||
/** | ||
* @var string | ||
*/ | ||
protected $translatorTextDomain = 'default'; | ||
|
||
/** | ||
* Sets translator to use in helper | ||
* | ||
* @param Translator $translator | ||
* @param string $textDomain | ||
* @return mixed | ||
*/ | ||
public function setTranslator(Translator $translator = null, $textDomain = null) | ||
{ | ||
$this->translator = $translator; | ||
|
||
if (!is_null($textDomain)) { | ||
$this->setTranslatorTextDomain($textDomain); | ||
} | ||
|
||
return $this; | ||
} | ||
|
||
/** | ||
* Returns translator used in object | ||
* | ||
* @return Translator | ||
*/ | ||
public function getTranslator() | ||
{ | ||
return $this->translator; | ||
} | ||
|
||
/** | ||
* Checks if the object has a translator | ||
* | ||
* @return bool | ||
*/ | ||
public function hasTranslator() | ||
{ | ||
return !is_null($this->translator); | ||
} | ||
|
||
/** | ||
* Sets whether translator is enabled and should be used | ||
* | ||
* @param bool $enabled | ||
* @return mixed | ||
*/ | ||
public function setTranslatorEnabled($enabled = true) | ||
{ | ||
$this->translatorEnabled = $enabled; | ||
|
||
return $this; | ||
} | ||
|
||
/** | ||
* Returns whether translator is enabled and should be used | ||
* | ||
* @return bool | ||
*/ | ||
public function isTranslatorEnabled() | ||
{ | ||
return $this->translatorEnabled; | ||
} | ||
|
||
/** | ||
* Set translation text domain | ||
* | ||
* @param string $textDomain | ||
* @return mixed | ||
*/ | ||
public function setTranslatorTextDomain($textDomain = 'default') | ||
{ | ||
$this->translatorTextDomain = $textDomain; | ||
|
||
return $this; | ||
} | ||
|
||
/** | ||
* Return the translation text domain | ||
* | ||
* @return string | ||
*/ | ||
public function getTranslatorTextDomain() | ||
{ | ||
return $this->translatorTextDomain; | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.