// a name could be a tag *and* a filter, so check for both if (isset($lib->filters[$name])) { $temp_lib->filters[$name] = $lib->filters[$name]; } } elseif (isset($lib->filters[$name])) { $temp_lib->filters[$name] = $lib->filters[$name]; } else { throw new TemplateSyntaxError('\'' . $name . '\' is not a valid tag or filter in tag library \'' . $taglib . '\''); } } $parser->addLibrary($temp_lib); } else { foreach (py_slice($bits, 1) as $taglib) { // add the library to the parser try { $lib = DjaBase::getLibrary($taglib); $parser->addLibrary($lib); } catch (InvalidTemplateLibrary $e) { throw new TemplateSyntaxError('\'' . $taglib . '\' is not a valid tag library: ' . $e); } } } return new LoadNode(); }); $lib->tag('now', function ($parser, $token) { /** * @var Parser $parser * @var Token $token */ $bits = $token->splitContents(); if (count($bits) != 2) {