示例#1
0
文件: i18n.php 项目: hbasria/pjango
<?php

h2o::addTag('trans');
h2o::addTag('blocktrans');
h2o::addLookup(array('H2o_I18n', 'gettext'));
class Trans_Tag extends H2o_Node
{
    var $text = null;
    function __construct($argstring, $parser, $position = 0)
    {
        $this->args = H2o_Parser::parseArguments($argstring);
        $this->text = stripcslashes(substr($argstring, 1, -1));
    }
    function render($context, $stream)
    {
        $argPrefix = substr($this->args[0], 0, 1);
        if ($argPrefix == ':') {
            $message = $context->resolve($this->args[0]);
        } else {
            $message = $this->text;
            $message = str_replace("'", '', $message);
            $message = str_replace('"', '', $message);
        }
        if ($message) {
            $stream->write(pjango_gettext($message));
        }
    }
}
class Blocktrans_Tag extends H2o_Node
{
    private $singular, $plural;