本文整理汇总了PHP中JMS\TranslationBundle\Model\Message类的典型用法代码示例。如果您正苦于以下问题:PHP Message类的具体用法?PHP Message怎么用?PHP Message使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Message类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: extract
public function extract()
{
$catalogue = new MessageCatalogue();
$collection = $this->router instanceof I18nRouter ? $this->router->getOriginalRouteCollection() : $this->router->getRouteCollection();
foreach ($collection->all() as $name => $route) {
if ($this->routeExclusionStrategy->shouldExcludeRoute($name, $route)) {
continue;
}
///////////////////////////////////////
// Begin customizations
$meaning = "Route Controller and method: " . $route->getDefault('_controller');
// set a default value
// prefix with zikula module url if requested
if ($route->hasDefault('_zkModule')) {
$zkNoBundlePrefix = $route->getOption('zkNoBundlePrefix');
if (!isset($zkNoBundlePrefix) || !$zkNoBundlePrefix) {
$meaning = "This is a route from the " . $route->getDefault('_zkModule') . "Bundle and will include a translated prefix.";
}
}
// End customizations
///////////////////////////////////////
$message = new Message($name, $this->domain);
$message->setDesc($route->getPath());
if (isset($meaning)) {
$message->setMeaning($meaning);
}
$catalogue->add($message);
}
return $catalogue;
}
开发者ID:Silwereth,项目名称:core,代码行数:30,代码来源:ZikulaRouteTranslationExtractor.php
示例2: has
/**
* @param Message $message
* @return Boolean
*/
public function has(Message $message)
{
if (!$this->hasDomain($message->getDomain())) {
return false;
}
return $this->getDomain($message->getDomain())->has($message->getId());
}
开发者ID:GabLeRoux,项目名称:JMSTranslationBundle,代码行数:11,代码来源:MessageCatalogue.php
示例3: extract
public function extract()
{
$catalogue = new MessageCatalogue();
foreach ($this->i18nLoader->extract($this->router->getRouteCollection()) as $name => $route) {
$message = new Message($name, $this->domain);
$message->setDesc($route->getPattern());
$catalogue->add($message);
}
return $catalogue;
}
开发者ID:natxet,项目名称:JMSI18nRoutingBundle,代码行数:10,代码来源:RouteTranslationExtractor.php
示例4: getTranslationMessages
public static function getTranslationMessages()
{
$messages = array();
foreach (self::$choices as $trans) {
$message = new Message($trans);
$message->addSource(new FileSource(__FILE__, 13));
$messages[] = $message;
}
return $messages;
}
开发者ID:pixel-cookers,项目名称:JMSTranslationBundle,代码行数:10,代码来源:MyFormModel.php
示例5: testExtractFormModel
public function testExtractFormModel()
{
$expected = new MessageCatalogue();
$path = __DIR__ . '/Fixture/MyFormModel.php';
$message = new Message('form.label.choice.foo');
$message->addSource(new FileSource($path, 13));
$expected->add($message);
$message = new Message('form.label.choice.bar');
$message->addSource(new FileSource($path, 13));
$expected->add($message);
$this->assertEquals($expected, $this->extract('MyFormModel.php'));
}
开发者ID:pixel-cookers,项目名称:JMSTranslationBundle,代码行数:12,代码来源:TranslationContainerExtractorTest.php
示例6: testExtractTemplate
public function testExtractTemplate()
{
$expected = new MessageCatalogue();
$path = __DIR__ . '/Fixture/template.html.php';
$message = new Message('foo.bar');
$message->addSource(new FileSource($path, 1));
$expected->add($message);
$message = new Message('baz', 'moo');
$message->setDesc('Foo Bar');
$message->addSource(new FileSource($path, 3));
$expected->add($message);
$this->assertEquals($expected, $this->extract('template.html.php'));
}
开发者ID:clytemnestra,项目名称:JMSTranslationBundle,代码行数:13,代码来源:DefaultPhpFileExtractorTest.php
示例7: testExtract
public function testExtract()
{
$expected = new MessageCatalogue();
$message = new Message('security.authentication_error.foo', 'authentication');
$message->setDesc('%foo% is invalid.');
$message->addSource(new FileSource(__DIR__ . '/Fixture/MyAuthException.php', 31));
$expected->add($message);
$message = new Message('security.authentication_error.bar', 'authentication');
$message->setDesc('An authentication error occurred.');
$message->addSource(new FileSource(__DIR__ . '/Fixture/MyAuthException.php', 35));
$expected->add($message);
$this->assertEquals($expected, $this->extract('MyAuthException.php'));
}
开发者ID:clytemnestra,项目名称:JMSTranslationBundle,代码行数:13,代码来源:AuthenticationMessagesExtractorTest.php
示例8: testExtractValidationMessages
public function testExtractValidationMessages()
{
$fileSourceFactory = $this->getFileSourceFactory();
$fixtureSplInfo = new \SplFileInfo(__DIR__ . '/Fixture/MyEntity.php');
$expected = new MessageCatalogue();
$message = new Message('entity.default');
$message->addSource($fileSourceFactory->create($fixtureSplInfo, 15));
$expected->add($message);
$message = new Message('entity.custom-domain', 'custom-domain');
$message->addSource($fileSourceFactory->create($fixtureSplInfo, 22));
$expected->add($message);
$this->assertEquals($expected, $this->extract('MyEntity.php'));
}
开发者ID:php-community,项目名称:JMSTranslationBundle,代码行数:13,代码来源:ValidationContextExtractorTest.php
示例9: testDumpStructureWithMetadata
public function testDumpStructureWithMetadata()
{
$catalogue = new MessageCatalogue();
$catalogue->setLocale('en');
$message = new Message('foo.bar.baz');
$message->setDesc('Foo');
$catalogue->add($message);
$message = new Message('foo.bar.moo');
$message->setMeaning('Bar');
$catalogue->add($message);
$message = new Message('foo.baz');
$catalogue->add($message);
$this->assertEquals($this->getOutput('structure_with_metadata'), $this->dump($catalogue, 'messages'));
}
开发者ID:pixel-cookers,项目名称:JMSTranslationBundle,代码行数:14,代码来源:BaseDumperTest.php
示例10: extract
public function extract()
{
$catalogue = new MessageCatalogue();
$collection = $this->router instanceof I18nRouter ? $this->router->getOriginalRouteCollection() : $this->router->getRouteCollection();
foreach ($collection->all() as $name => $route) {
if ($this->routeExclusionStrategy->shouldExcludeRoute($name, $route)) {
continue;
}
$message = new Message($name, $this->domain);
$message->setDesc($route->getPath());
$catalogue->add($message);
}
return $catalogue;
}
开发者ID:DONIKAN,项目名称:JMSI18nRoutingBundle,代码行数:14,代码来源:RouteTranslationExtractor.php
示例11: testExtractTemplate
public function testExtractTemplate()
{
$expected = new MessageCatalogue();
$fileSourceFactory = $this->getFileSourceFactory();
$fixtureSplInfo = new \SplFileInfo(__DIR__ . '/Fixture/template.html.php');
$message = new Message('foo.bar');
$message->addSource($fileSourceFactory->create($fixtureSplInfo, 1));
$expected->add($message);
$message = new Message('baz', 'moo');
$message->setDesc('Foo Bar');
$message->addSource($fileSourceFactory->create($fixtureSplInfo, 3));
$expected->add($message);
$this->assertEquals($expected, $this->extract('template.html.php'));
}
开发者ID:kazak,项目名称:forum,代码行数:14,代码来源:DefaultPhpFileExtractorTest.php
示例12: testGet
public function testGet()
{
$catalogue = new MessageCatalogue();
$catalogue->add($message = Message::create('foo'));
$this->assertTrue($catalogue->hasDomain('messages'));
$this->assertSame($message, $catalogue->get('foo'));
}
开发者ID:pixel-cookers,项目名称:JMSTranslationBundle,代码行数:7,代码来源:MessageCatalogueTest.php
示例13: testCdataOutput
public function testCdataOutput()
{
$dumper = $this->getDumper();
$catalogue = new MessageCatalogue();
$catalogue->add(Message::create('foo')->setLocaleString('<bar>')->setDesc('<baz>'));
$expected = <<<EOF
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:jms="urn:jms:translation" version="1.2">
<file source-language="en" target-language="" datatype="plaintext" original="not.available">
<header>
<tool tool-id="JMSTranslationBundle" tool-name="JMSTranslationBundle" tool-version="1.1.0-DEV"/>
<note>The source node in most cases contains the sample message as written by the developer. If it looks like a dot-delimitted string such as "form.label.firstname", then the developer has not provided a default message.</note>
</header>
<body>
<trans-unit id="0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33" resname="foo">
<source><![CDATA[<baz>]]></source>
<target state="new"><![CDATA[<bar>]]></target>
</trans-unit>
</body>
</file>
</xliff>
EOF;
$this->assertEquals($expected, $dumper->dump($catalogue, 'messages'));
}
开发者ID:pixel-cookers,项目名称:JMSTranslationBundle,代码行数:25,代码来源:XliffDumperTest.php
示例14: load
/**
* Converts Symfony's message catalogue to the catalogue of this
* bundle.
*
* @param mixed $resource
* @param string $locale
* @param string $domain
* @return MessageCatalogue
*/
public function load($resource, $locale, $domain = 'messages')
{
$catalogue = new MessageCatalogue();
$catalogue->setLocale($locale);
foreach ($this->loader->load($resource, $locale, $domain)->all($domain) as $id => $message) {
$catalogue->add(Message::create($id, $domain)->setLocaleString($message)->setNew(false));
}
return $catalogue;
}
开发者ID:pixel-cookers,项目名称:JMSTranslationBundle,代码行数:18,代码来源:SymfonyLoaderAdapter.php
示例15: enterNode
public function enterNode(\Twig_NodeInterface $node, \Twig_Environment $env)
{
$this->stack[] = $node;
if ($node instanceof \Twig_Node_Expression_Function) {
$name = $node->getAttribute('name');
if (in_array($name, $this->methodNames)) {
$args = $node->getNode('arguments');
switch ($name) {
case '_n':
case '_fn':
$id = $args->getNode(0)->getAttribute('value') . '|' . $args->getNode(1)->getAttribute('value');
break;
default:
case '__f':
case '__':
$id = $args->getNode(0)->getAttribute('value');
break;
}
// obtain translation domain from composer file
$composerPath = str_replace($this->file->getRelativePathname(), '', $this->file->getPathname());
if (isset(self::$domainCache[$composerPath])) {
$domain = self::$domainCache[$composerPath];
} else {
$scanner = new Scanner();
$scanner->scan(array($composerPath), 1);
$metaData = $scanner->getModulesMetaData(true);
$domains = array_keys($metaData);
if (isset($domains[0])) {
$domain = strtolower($domains[0]);
// cache result of file lookup
self::$domainCache[$composerPath] = $domain;
} else {
$domain = 'messages';
}
}
$domainNode = array_search($name, $this->methodNames);
$domain = $args->hasNode($domainNode) ? $args->getNode($domainNode)->getAttribute('value') : $domain;
$message = new Message($id, $domain);
$message->addSource(new FileSource((string) $this->file, $node->getLine()));
$this->catalogue->add($message);
}
}
return $node;
}
开发者ID:rmaiwald,项目名称:core,代码行数:44,代码来源:ZikulaTwigFileExtractor.php
示例16: enterNode
public function enterNode(\PHPParser_Node $node)
{
if (!$node instanceof \PHPParser_Node_Scalar_String) {
return;
}
$id = $node->value;
if (preg_match('/(\\.\\.|\\.\\.\\.)/', $id)) {
return;
}
if (preg_match('/^http/', $id)) {
return;
}
if (preg_match('/.*\\./', $id)) {
$domain = 'messages';
$message = new Message($id, $domain);
$message->addSource(new FileSource((string) $this->file, $node->getLine()));
$this->catalogue->add($message);
}
}
开发者ID:alisyihab,项目名称:sisdik,代码行数:19,代码来源:EntityExtractor.php
示例17: testExtractWithSimpleTestFixtures
public function testExtractWithSimpleTestFixtures()
{
$expected = array();
$basePath = __DIR__ . '/Fixture/SimpleTest/';
$fileSourceFactory = new FileSourceFactory('faux');
// Controller
$message = new Message('controller.foo');
$message->addSource($fileSourceFactory->create(new \SplFileInfo($basePath . 'Controller/DefaultController.php'), 27));
$message->setDesc('Foo');
$expected['controller.foo'] = $message;
// Form Model
$expected['form.foo'] = new Message('form.foo');
$expected['form.bar'] = new Message('form.bar');
// Templates
foreach (array('php', 'twig') as $engine) {
$message = new Message($engine . '.foo');
$message->addSource($fileSourceFactory->create(new \SplFileInfo($basePath . 'Resources/views/' . $engine . '_template.html.' . $engine), 1));
$expected[$engine . '.foo'] = $message;
$message = new Message($engine . '.bar');
$message->setDesc('Bar');
$message->addSource($fileSourceFactory->create(new \SplFileInfo($basePath . 'Resources/views/' . $engine . '_template.html.' . $engine), 3));
$expected[$engine . '.bar'] = $message;
$message = new Message($engine . '.baz');
$message->setMeaning('Baz');
$message->addSource($fileSourceFactory->create(new \SplFileInfo($basePath . 'Resources/views/' . $engine . '_template.html.' . $engine), 5));
$expected[$engine . '.baz'] = $message;
$message = new Message($engine . '.foo_bar');
$message->setDesc('Foo');
$message->setMeaning('Bar');
$message->addSource($fileSourceFactory->create(new \SplFileInfo($basePath . 'Resources/views/' . $engine . '_template.html.' . $engine), 7));
$expected[$engine . '.foo_bar'] = $message;
}
// File with global namespace.
$message = new Message('globalnamespace.foo');
$message->addSource($fileSourceFactory->create(new \SplFileInfo($basePath . 'GlobalNamespace.php'), 27));
$message->setDesc('Bar');
$expected['globalnamespace.foo'] = $message;
$actual = $this->extract(__DIR__ . '/Fixture/SimpleTest')->getDomain('messages')->all();
asort($expected);
asort($actual);
$this->assertEquals($expected, $actual);
}
开发者ID:kazak,项目名称:forum,代码行数:42,代码来源:FileExtractorTest.php
示例18: testLoadWithSymfonyFormat
public function testLoadWithSymfonyFormat()
{
$loader = new XliffLoader();
$expected = new MessageCatalogue();
$expected->setLocale('en');
$expected->add(Message::create('foo1')->setDesc('foo1')->setLocaleString('bar')->setNew(false));
$expected->add(Message::create('foo2')->setDesc('foo2')->setLocaleString('bar')->setNew(false));
$expected->add(Message::create('foo3')->setDesc('foo3')->setLocaleString('bar')->setNew(false));
$expected->add(Message::create('foo4')->setDesc('foo4')->setLocaleString('bar')->setNew(false));
$this->assertEquals($expected, $loader->load(__DIR__ . '/Symfony/xliff/old_format.xml', 'en'));
}
开发者ID:AntoineLemaire,项目名称:JMSTranslationBundle,代码行数:11,代码来源:XliffLoaderTest.php
示例19: testExtract
public function testExtract()
{
$expected = new MessageCatalogue();
$path = __DIR__ . '/Fixture/MyFormType.php';
$message = new Message('bar');
$message->addSource(new FileSource($path, 36));
$expected->add($message);
$message = new Message('form.states.empty_value');
$message->setDesc('Please select a state');
$message->addSource(new FileSource($path, 37));
$expected->add($message);
$message = new Message('form.label.lastname');
$message->setDesc('Lastname');
$message->addSource(new FileSource($path, 33));
$expected->add($message);
$message = new Message('form.label.firstname');
$message->addSource(new FileSource($path, 30));
$expected->add($message);
$this->assertEquals($expected, $this->extract('MyFormType.php'));
}
开发者ID:nikic,项目名称:JMSTranslationBundle,代码行数:20,代码来源:FormExtractorTest.php
示例20: testCompareWithMultipleDomains
public function testCompareWithMultipleDomains()
{
$current = new MessageCatalogue();
$current->add(Message::create('foo')->setLocaleString('bar'));
$current->add(Message::create('bar', 'routes')->setLocaleString('baz'));
$new = new MessageCatalogue();
$new->add(new Message('foo'));
$new->add(new Message('bar'));
$expected = new ChangeSet(array(new Message('bar')), array(Message::create('bar', 'routes')->setLocaleString('baz')));
$comparator = new CatalogueComparator();
$this->assertEquals($expected, $comparator->compare($current, $new));
}
开发者ID:clytemnestra,项目名称:JMSTranslationBundle,代码行数:12,代码来源:CatalogueComparatorTest.php
注:本文中的JMS\TranslationBundle\Model\Message类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论