├── .gitignore ├── README.md ├── app └── app.php ├── assets ├── css │ └── equipment.css ├── default │ ├── css │ │ └── theme_equipment.css │ └── images │ │ └── icons │ │ ├── equipment.gif │ │ ├── equipment.png │ │ ├── green_dot.gif │ │ └── green_dot.png ├── images │ ├── green_dot.png │ ├── header-bg.png │ ├── new_category.png │ ├── ost-logo.png │ ├── red_dot.png │ ├── taco.gif │ └── yellow_dot.png └── js │ ├── category_item_view.js │ ├── common.js │ ├── dashboard_view.js │ ├── dataTable.js │ ├── dynamic_form.js │ ├── equipment_categories_view.js │ ├── equipment_item_view.js │ ├── equipment_status_view.js │ ├── itemDataTable.js │ ├── item_list_view.js │ ├── jquery-2.1.0.min.js │ ├── jquery-ui │ ├── css │ │ └── ui-lightness │ │ │ ├── images │ │ │ ├── animated-overlay.gif │ │ │ ├── ui-bg_diagonals-thick_18_b81900_40x40.png │ │ │ ├── ui-bg_diagonals-thick_20_666666_40x40.png │ │ │ ├── ui-bg_flat_10_000000_40x100.png │ │ │ ├── ui-bg_glass_100_f6f6f6_1x400.png │ │ │ ├── ui-bg_glass_100_fdf5ce_1x400.png │ │ │ ├── ui-bg_glass_65_ffffff_1x400.png │ │ │ ├── ui-bg_gloss-wave_35_f6a828_500x100.png │ │ │ ├── ui-bg_highlight-soft_100_eeeeee_1x100.png │ │ │ ├── ui-bg_highlight-soft_75_ffe45c_1x100.png │ │ │ ├── ui-icons_222222_256x240.png │ │ │ ├── ui-icons_228ef1_256x240.png │ │ │ ├── ui-icons_ef8c08_256x240.png │ │ │ ├── ui-icons_ffd27a_256x240.png │ │ │ └── ui-icons_ffffff_256x240.png │ │ │ ├── jquery-ui-1.10.4.css │ │ │ └── jquery-ui-1.10.4.min.css │ ├── index.html │ └── js │ │ ├── jquery-1.10.2.js │ │ ├── jquery-ui-1.10.4.js │ │ └── jquery-ui-1.10.4.min.js │ ├── jquery.validate.js │ ├── listRecurring.js │ ├── maintenance.js │ ├── primeui │ ├── LICENSE.txt │ ├── production │ │ ├── css │ │ │ ├── accordion │ │ │ │ └── accordion.css │ │ │ ├── autocomplete │ │ │ │ └── autocomplete.css │ │ │ ├── button │ │ │ │ └── button.css │ │ │ ├── checkbox │ │ │ │ └── checkbox.css │ │ │ ├── core │ │ │ │ └── core.css │ │ │ ├── datatable │ │ │ │ └── datatable.css │ │ │ ├── dialog │ │ │ │ └── dialog.css │ │ │ ├── dropdown │ │ │ │ └── dropdown.css │ │ │ ├── fieldset │ │ │ │ └── fieldset.css │ │ │ ├── galleria │ │ │ │ └── galleria.css │ │ │ ├── growl │ │ │ │ └── growl.css │ │ │ ├── inputtext │ │ │ │ └── inputtext.css │ │ │ ├── inputtextarea │ │ │ │ └── inputtextarea.css │ │ │ ├── lightbox │ │ │ │ └── lightbox.css │ │ │ ├── listbox │ │ │ │ └── listbox.css │ │ │ ├── menu │ │ │ │ └── menu.css │ │ │ ├── notify │ │ │ │ └── notify.css │ │ │ ├── paginator │ │ │ │ └── paginator.css │ │ │ ├── panel │ │ │ │ └── panel.css │ │ │ ├── password │ │ │ │ └── password.css │ │ │ ├── picklist │ │ │ │ └── picklist.css │ │ │ ├── progressbar │ │ │ │ └── progressbar.css │ │ │ ├── radiobutton │ │ │ │ └── radiobutton.css │ │ │ ├── rating │ │ │ │ └── rating.css │ │ │ ├── spinner │ │ │ │ └── spinner.css │ │ │ ├── splitbutton │ │ │ │ └── splitbutton.css │ │ │ ├── tabview │ │ │ │ └── tabview.css │ │ │ ├── terminal │ │ │ │ └── terminal.css │ │ │ ├── tooltip │ │ │ │ └── tooltip.css │ │ │ ├── tree │ │ │ │ └── tree.css │ │ │ └── treetable │ │ │ │ └── treetable.css │ │ ├── images │ │ │ ├── loading.gif │ │ │ ├── messages.png │ │ │ ├── ornament.png │ │ │ └── password-meter.png │ │ ├── js │ │ │ ├── accordion │ │ │ │ └── accordion.js │ │ │ ├── autocomplete │ │ │ │ └── autocomplete.js │ │ │ ├── button │ │ │ │ └── button.js │ │ │ ├── checkbox │ │ │ │ └── checkbox.js │ │ │ ├── core │ │ │ │ └── core.js │ │ │ ├── datatable │ │ │ │ └── datatable.js │ │ │ ├── dialog │ │ │ │ └── dialog.js │ │ │ ├── dropdown │ │ │ │ └── dropdown.js │ │ │ ├── fieldset │ │ │ │ └── fieldset.js │ │ │ ├── galleria │ │ │ │ └── galleria.js │ │ │ ├── growl │ │ │ │ └── growl.js │ │ │ ├── inputtext │ │ │ │ └── inputtext.js │ │ │ ├── inputtextarea │ │ │ │ └── inputtextarea.js │ │ │ ├── lightbox │ │ │ │ └── lightbox.js │ │ │ ├── listbox │ │ │ │ └── listbox.js │ │ │ ├── menu │ │ │ │ └── menu.js │ │ │ ├── notify │ │ │ │ └── notify.js │ │ │ ├── paginator │ │ │ │ └── paginator.js │ │ │ ├── panel │ │ │ │ └── panel.js │ │ │ ├── password │ │ │ │ └── password.js │ │ │ ├── picklist │ │ │ │ └── picklist.js │ │ │ ├── progressbar │ │ │ │ └── progressbar.js │ │ │ ├── radiobutton │ │ │ │ └── radiobutton.js │ │ │ ├── rating │ │ │ │ └── rating.js │ │ │ ├── spinner │ │ │ │ └── spinner.js │ │ │ ├── splitbutton │ │ │ │ └── splitbutton.js │ │ │ ├── sticky │ │ │ │ └── sticky.js │ │ │ ├── tabview │ │ │ │ └── tabview.js │ │ │ ├── terminal │ │ │ │ └── terminal.js │ │ │ ├── tooltip │ │ │ │ └── tooltip.js │ │ │ ├── tree │ │ │ │ └── tree.js │ │ │ └── treetable │ │ │ │ └── treetable.js │ │ ├── plugins │ │ │ ├── cursorposition.js │ │ │ └── rangyinput.js │ │ ├── primeui-1.1-min.css │ │ └── primeui-1.1-min.js │ └── themes │ │ └── cupertino │ │ ├── images │ │ ├── ui-bg_diagonals-thick_90_eeeeee_40x40.png │ │ ├── ui-bg_flat_15_cd0a0a_40x100.png │ │ ├── ui-bg_glass_100_e4f1fb_1x400.png │ │ ├── ui-bg_glass_50_3baae3_1x400.png │ │ ├── ui-bg_glass_80_d7ebf9_1x400.png │ │ ├── ui-bg_highlight-hard_100_f2f5f7_1x100.png │ │ ├── ui-bg_highlight-hard_70_000000_1x100.png │ │ ├── ui-bg_highlight-soft_100_deedf7_1x100.png │ │ ├── ui-bg_highlight-soft_25_ffef8f_1x100.png │ │ ├── ui-icons_2694e8_256x240.png │ │ ├── ui-icons_2e83ff_256x240.png │ │ ├── ui-icons_3d80b3_256x240.png │ │ ├── ui-icons_72a7cf_256x240.png │ │ └── ui-icons_ffffff_256x240.png │ │ └── theme.css │ ├── recurring.js │ ├── recurring_view.js │ ├── tickets_table.js │ ├── tickets_table_items.js │ ├── treeExt.js │ └── treeTable.js ├── class.ticket_recurring.php ├── composer.json ├── composer.lock ├── composer.phar ├── config.php ├── equipment.php ├── equipment_front ├── assets │ ├── css │ │ ├── equipment.css │ │ └── jquery-ui-1.10.4.css │ ├── images │ │ ├── green_dot.png │ │ ├── header-bg.png │ │ ├── new_category.png │ │ ├── ost-logo.png │ │ ├── red_dot.png │ │ └── yellow_dot.png │ └── js │ │ ├── dashboard_view.js │ │ ├── jquery-2.1.0.min.js │ │ ├── jquery-ui-1.10.4.min.js │ │ ├── primeui │ │ ├── LICENSE.txt │ │ ├── production │ │ │ ├── css │ │ │ │ └── tree │ │ │ │ │ └── tree.css │ │ │ ├── plugins │ │ │ │ ├── cursorposition.js │ │ │ │ └── rangyinput.js │ │ │ ├── primeui-1.1-min.css │ │ │ └── primeui-1.1-min.js │ │ └── themes │ │ │ └── cupertino │ │ │ ├── images │ │ │ ├── ui-bg_diagonals-thick_90_eeeeee_40x40.png │ │ │ ├── ui-bg_flat_15_cd0a0a_40x100.png │ │ │ ├── ui-bg_glass_100_e4f1fb_1x400.png │ │ │ ├── ui-bg_glass_50_3baae3_1x400.png │ │ │ ├── ui-bg_glass_80_d7ebf9_1x400.png │ │ │ ├── ui-bg_highlight-hard_100_f2f5f7_1x100.png │ │ │ ├── ui-bg_highlight-hard_70_000000_1x100.png │ │ │ ├── ui-bg_highlight-soft_100_deedf7_1x100.png │ │ │ ├── ui-bg_highlight-soft_25_ffef8f_1x100.png │ │ │ ├── ui-icons_2694e8_256x240.png │ │ │ ├── ui-icons_2e83ff_256x240.png │ │ │ ├── ui-icons_3d80b3_256x240.png │ │ │ ├── ui-icons_72a7cf_256x240.png │ │ │ └── ui-icons_ffffff_256x240.png │ │ │ └── theme.css │ │ └── treeExt.js └── index.php ├── include ├── client │ ├── equipment-category.inc.php │ ├── equipment-status.inc.php │ ├── equipment.inc.php │ └── equipment_list.inc.php ├── controller │ ├── Controller.php │ ├── Dashboard.php │ ├── EquipmentCategory.php │ ├── EquipmentItem.php │ ├── EquipmentStatus.php │ ├── Maintenance.php │ ├── MediaController.php │ └── TicketRecurring.php ├── model │ ├── Entity.php │ ├── Equipment.php │ ├── EquipmentCategory.php │ ├── EquipmentConfig.php │ ├── EquipmentDashboard.php │ ├── EquipmentStatus.php │ ├── EquipmentTicket.php │ └── TicketRecurring.php └── util │ └── EquipmentInstaller.php ├── install └── sql │ ├── install_equipment.sql │ ├── purge_equipment_data.sql │ ├── remove_equipment.sql │ ├── upgrade_equipment.sql │ └── upgrade_equipment_fail.sql ├── nbproject ├── project.properties └── project.xml ├── ost_core └── include │ └── class.nav.php ├── plugin.php ├── scp ├── css │ └── scp.css ├── equipment.php ├── equipment_categories.php ├── equipment_item.php ├── equipment_status.php └── images │ └── icons │ ├── equipment.gif │ ├── green_dot.gif │ └── green_dot.png ├── vendor ├── autoload.php ├── composer │ ├── ClassLoader.php │ ├── autoload_classmap.php │ ├── autoload_namespaces.php │ ├── autoload_psr4.php │ ├── autoload_real.php │ └── installed.json └── twig │ └── twig │ ├── .gitignore │ ├── CHANGELOG │ ├── LICENSE │ ├── README.rst │ ├── composer.json │ ├── doc │ ├── advanced.rst │ ├── advanced_legacy.rst │ ├── api.rst │ ├── coding_standards.rst │ ├── deprecated.rst │ ├── filters │ │ ├── abs.rst │ │ ├── batch.rst │ │ ├── capitalize.rst │ │ ├── convert_encoding.rst │ │ ├── date.rst │ │ ├── date_modify.rst │ │ ├── default.rst │ │ ├── escape.rst │ │ ├── first.rst │ │ ├── format.rst │ │ ├── index.rst │ │ ├── join.rst │ │ ├── json_encode.rst │ │ ├── keys.rst │ │ ├── last.rst │ │ ├── length.rst │ │ ├── lower.rst │ │ ├── merge.rst │ │ ├── nl2br.rst │ │ ├── number_format.rst │ │ ├── raw.rst │ │ ├── replace.rst │ │ ├── reverse.rst │ │ ├── round.rst │ │ ├── slice.rst │ │ ├── sort.rst │ │ ├── split.rst │ │ ├── striptags.rst │ │ ├── title.rst │ │ ├── trim.rst │ │ ├── upper.rst │ │ └── url_encode.rst │ ├── functions │ │ ├── attribute.rst │ │ ├── block.rst │ │ ├── constant.rst │ │ ├── cycle.rst │ │ ├── date.rst │ │ ├── dump.rst │ │ ├── include.rst │ │ ├── index.rst │ │ ├── max.rst │ │ ├── min.rst │ │ ├── parent.rst │ │ ├── random.rst │ │ ├── range.rst │ │ ├── source.rst │ │ └── template_from_string.rst │ ├── index.rst │ ├── installation.rst │ ├── internals.rst │ ├── intro.rst │ ├── recipes.rst │ ├── tags │ │ ├── autoescape.rst │ │ ├── block.rst │ │ ├── do.rst │ │ ├── embed.rst │ │ ├── extends.rst │ │ ├── filter.rst │ │ ├── flush.rst │ │ ├── for.rst │ │ ├── from.rst │ │ ├── if.rst │ │ ├── import.rst │ │ ├── include.rst │ │ ├── index.rst │ │ ├── macro.rst │ │ ├── sandbox.rst │ │ ├── set.rst │ │ ├── spaceless.rst │ │ ├── use.rst │ │ └── verbatim.rst │ ├── templates.rst │ └── tests │ │ ├── constant.rst │ │ ├── defined.rst │ │ ├── divisibleby.rst │ │ ├── empty.rst │ │ ├── even.rst │ │ ├── index.rst │ │ ├── iterable.rst │ │ ├── null.rst │ │ ├── odd.rst │ │ └── sameas.rst │ ├── ext │ └── twig │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── config.m4 │ │ ├── config.w32 │ │ ├── php_twig.h │ │ └── twig.c │ ├── lib │ └── Twig │ │ ├── Autoloader.php │ │ ├── Compiler.php │ │ ├── CompilerInterface.php │ │ ├── Environment.php │ │ ├── Error.php │ │ ├── Error │ │ ├── Loader.php │ │ ├── Runtime.php │ │ └── Syntax.php │ │ ├── ExistsLoaderInterface.php │ │ ├── ExpressionParser.php │ │ ├── Extension.php │ │ ├── Extension │ │ ├── Core.php │ │ ├── Debug.php │ │ ├── Escaper.php │ │ ├── Optimizer.php │ │ ├── Sandbox.php │ │ ├── Staging.php │ │ └── StringLoader.php │ │ ├── ExtensionInterface.php │ │ ├── Filter.php │ │ ├── Filter │ │ ├── Function.php │ │ ├── Method.php │ │ └── Node.php │ │ ├── FilterCallableInterface.php │ │ ├── FilterInterface.php │ │ ├── Function.php │ │ ├── Function │ │ ├── Function.php │ │ ├── Method.php │ │ └── Node.php │ │ ├── FunctionCallableInterface.php │ │ ├── FunctionInterface.php │ │ ├── Lexer.php │ │ ├── LexerInterface.php │ │ ├── Loader │ │ ├── Array.php │ │ ├── Chain.php │ │ ├── Filesystem.php │ │ └── String.php │ │ ├── LoaderInterface.php │ │ ├── Markup.php │ │ ├── Node.php │ │ ├── Node │ │ ├── AutoEscape.php │ │ ├── Block.php │ │ ├── BlockReference.php │ │ ├── Body.php │ │ ├── Do.php │ │ ├── Embed.php │ │ ├── Expression.php │ │ ├── Expression │ │ │ ├── Array.php │ │ │ ├── AssignName.php │ │ │ ├── Binary.php │ │ │ ├── Binary │ │ │ │ ├── Add.php │ │ │ │ ├── And.php │ │ │ │ ├── BitwiseAnd.php │ │ │ │ ├── BitwiseOr.php │ │ │ │ ├── BitwiseXor.php │ │ │ │ ├── Concat.php │ │ │ │ ├── Div.php │ │ │ │ ├── EndsWith.php │ │ │ │ ├── Equal.php │ │ │ │ ├── FloorDiv.php │ │ │ │ ├── Greater.php │ │ │ │ ├── GreaterEqual.php │ │ │ │ ├── In.php │ │ │ │ ├── Less.php │ │ │ │ ├── LessEqual.php │ │ │ │ ├── Matches.php │ │ │ │ ├── Mod.php │ │ │ │ ├── Mul.php │ │ │ │ ├── NotEqual.php │ │ │ │ ├── NotIn.php │ │ │ │ ├── Or.php │ │ │ │ ├── Power.php │ │ │ │ ├── Range.php │ │ │ │ ├── StartsWith.php │ │ │ │ └── Sub.php │ │ │ ├── BlockReference.php │ │ │ ├── Call.php │ │ │ ├── Conditional.php │ │ │ ├── Constant.php │ │ │ ├── ExtensionReference.php │ │ │ ├── Filter.php │ │ │ ├── Filter │ │ │ │ └── Default.php │ │ │ ├── Function.php │ │ │ ├── GetAttr.php │ │ │ ├── MethodCall.php │ │ │ ├── Name.php │ │ │ ├── Parent.php │ │ │ ├── TempName.php │ │ │ ├── Test.php │ │ │ ├── Test │ │ │ │ ├── Constant.php │ │ │ │ ├── Defined.php │ │ │ │ ├── Divisibleby.php │ │ │ │ ├── Even.php │ │ │ │ ├── Null.php │ │ │ │ ├── Odd.php │ │ │ │ └── Sameas.php │ │ │ ├── Unary.php │ │ │ └── Unary │ │ │ │ ├── Neg.php │ │ │ │ ├── Not.php │ │ │ │ └── Pos.php │ │ ├── Flush.php │ │ ├── For.php │ │ ├── ForLoop.php │ │ ├── If.php │ │ ├── Import.php │ │ ├── Include.php │ │ ├── Macro.php │ │ ├── Module.php │ │ ├── Print.php │ │ ├── Sandbox.php │ │ ├── SandboxedModule.php │ │ ├── SandboxedPrint.php │ │ ├── Set.php │ │ ├── SetTemp.php │ │ ├── Spaceless.php │ │ └── Text.php │ │ ├── NodeInterface.php │ │ ├── NodeOutputInterface.php │ │ ├── NodeTraverser.php │ │ ├── NodeVisitor │ │ ├── Escaper.php │ │ ├── Optimizer.php │ │ ├── SafeAnalysis.php │ │ └── Sandbox.php │ │ ├── NodeVisitorInterface.php │ │ ├── Parser.php │ │ ├── ParserInterface.php │ │ ├── Sandbox │ │ ├── SecurityError.php │ │ ├── SecurityPolicy.php │ │ └── SecurityPolicyInterface.php │ │ ├── SimpleFilter.php │ │ ├── SimpleFunction.php │ │ ├── SimpleTest.php │ │ ├── Template.php │ │ ├── TemplateInterface.php │ │ ├── Test.php │ │ ├── Test │ │ ├── Function.php │ │ ├── IntegrationTestCase.php │ │ ├── Method.php │ │ ├── Node.php │ │ └── NodeTestCase.php │ │ ├── TestCallableInterface.php │ │ ├── TestInterface.php │ │ ├── Token.php │ │ ├── TokenParser.php │ │ ├── TokenParser │ │ ├── AutoEscape.php │ │ ├── Block.php │ │ ├── Do.php │ │ ├── Embed.php │ │ ├── Extends.php │ │ ├── Filter.php │ │ ├── Flush.php │ │ ├── For.php │ │ ├── From.php │ │ ├── If.php │ │ ├── Import.php │ │ ├── Include.php │ │ ├── Macro.php │ │ ├── Sandbox.php │ │ ├── Set.php │ │ ├── Spaceless.php │ │ └── Use.php │ │ ├── TokenParserBroker.php │ │ ├── TokenParserBrokerInterface.php │ │ ├── TokenParserInterface.php │ │ └── TokenStream.php │ ├── phpunit.xml.dist │ └── test │ ├── Twig │ └── Tests │ │ ├── AutoloaderTest.php │ │ ├── CompilerTest.php │ │ ├── EnvironmentTest.php │ │ ├── ErrorTest.php │ │ ├── ExpressionParserTest.php │ │ ├── Extension │ │ ├── CoreTest.php │ │ └── SandboxTest.php │ │ ├── FileCachingTest.php │ │ ├── Fixtures │ │ ├── errors │ │ │ ├── base.html │ │ │ └── index.html │ │ ├── exceptions │ │ │ ├── unclosed_tag.test │ │ │ └── undefined_trait.test │ │ ├── expressions │ │ │ ├── array.test │ │ │ ├── array_call.test │ │ │ ├── binary.test │ │ │ ├── bitwise.test │ │ │ ├── comparison.test │ │ │ ├── divisibleby.test │ │ │ ├── dotdot.test │ │ │ ├── ends_with.test │ │ │ ├── grouping.test │ │ │ ├── literals.test │ │ │ ├── magic_call.test │ │ │ ├── matches.test │ │ │ ├── method_call.test │ │ │ ├── operators_as_variables.test │ │ │ ├── postfix.test │ │ │ ├── sameas.test │ │ │ ├── starts_with.test │ │ │ ├── strings.test │ │ │ ├── ternary_operator.test │ │ │ ├── ternary_operator_noelse.test │ │ │ ├── ternary_operator_nothen.test │ │ │ ├── two_word_operators_as_variables.test │ │ │ ├── unary.test │ │ │ └── unary_precedence.test │ │ ├── filters │ │ │ ├── abs.test │ │ │ ├── batch.test │ │ │ ├── batch_float.test │ │ │ ├── batch_with_empty_fill.test │ │ │ ├── batch_with_exact_elements.test │ │ │ ├── batch_with_fill.test │ │ │ ├── convert_encoding.test │ │ │ ├── date.test │ │ │ ├── date_default_format.test │ │ │ ├── date_default_format_interval.test │ │ │ ├── date_immutable.test │ │ │ ├── date_interval.test │ │ │ ├── date_modify.test │ │ │ ├── date_namedargs.test │ │ │ ├── default.test │ │ │ ├── dynamic_filter.test │ │ │ ├── escape.test │ │ │ ├── escape_html_attr.test │ │ │ ├── escape_non_supported_charset.test │ │ │ ├── first.test │ │ │ ├── force_escape.test │ │ │ ├── format.test │ │ │ ├── join.test │ │ │ ├── json_encode.test │ │ │ ├── last.test │ │ │ ├── length.test │ │ │ ├── length_utf8.test │ │ │ ├── merge.test │ │ │ ├── nl2br.test │ │ │ ├── number_format.test │ │ │ ├── number_format_default.test │ │ │ ├── replace.test │ │ │ ├── reverse.test │ │ │ ├── round.test │ │ │ ├── slice.test │ │ │ ├── sort.test │ │ │ ├── special_chars.test │ │ │ ├── split.test │ │ │ ├── trim.test │ │ │ ├── urlencode.test │ │ │ └── urlencode_deprecated.test │ │ ├── functions │ │ │ ├── attribute.test │ │ │ ├── block.test │ │ │ ├── constant.test │ │ │ ├── cycle.test │ │ │ ├── date.test │ │ │ ├── date_namedargs.test │ │ │ ├── dump.test │ │ │ ├── dump_array.test │ │ │ ├── dynamic_function.test │ │ │ ├── include │ │ │ │ ├── assignment.test │ │ │ │ ├── autoescaping.test │ │ │ │ ├── basic.test │ │ │ │ ├── expression.test │ │ │ │ ├── ignore_missing.test │ │ │ │ ├── missing.test │ │ │ │ ├── missing_nested.test │ │ │ │ ├── sandbox.test │ │ │ │ ├── template_instance.test │ │ │ │ ├── templates_as_array.test │ │ │ │ ├── with_context.test │ │ │ │ └── with_variables.test │ │ │ ├── max.test │ │ │ ├── min.test │ │ │ ├── range.test │ │ │ ├── recursive_block_with_inheritance.test │ │ │ ├── source.test │ │ │ ├── special_chars.test │ │ │ └── template_from_string.test │ │ ├── macros │ │ │ ├── default_values.test │ │ │ ├── nested_calls.test │ │ │ ├── reserved_variables.test │ │ │ ├── simple.test │ │ │ └── with_filters.test │ │ ├── regression │ │ │ ├── empty_token.test │ │ │ ├── issue_1143.test │ │ │ ├── simple_xml_element.test │ │ │ └── strings_like_numbers.test │ │ ├── tags │ │ │ ├── autoescape │ │ │ │ ├── basic.test │ │ │ │ ├── blocks.test │ │ │ │ ├── double_escaping.test │ │ │ │ ├── functions.test │ │ │ │ ├── literal.test │ │ │ │ ├── nested.test │ │ │ │ ├── objects.test │ │ │ │ ├── raw.test │ │ │ │ ├── strategy.test │ │ │ │ ├── type.test │ │ │ │ ├── with_filters.test │ │ │ │ ├── with_filters_arguments.test │ │ │ │ ├── with_pre_escape_filters.test │ │ │ │ └── with_preserves_safety_filters.test │ │ │ ├── block │ │ │ │ ├── basic.test │ │ │ │ ├── block_unique_name.test │ │ │ │ └── special_chars.test │ │ │ ├── embed │ │ │ │ ├── basic.test │ │ │ │ ├── error_line.test │ │ │ │ ├── multiple.test │ │ │ │ ├── nested.test │ │ │ │ └── with_extends.test │ │ │ ├── filter │ │ │ │ ├── basic.test │ │ │ │ ├── json_encode.test │ │ │ │ ├── multiple.test │ │ │ │ ├── nested.test │ │ │ │ ├── with_for_tag.test │ │ │ │ └── with_if_tag.test │ │ │ ├── for │ │ │ │ ├── condition.test │ │ │ │ ├── context.test │ │ │ │ ├── else.test │ │ │ │ ├── inner_variables.test │ │ │ │ ├── keys.test │ │ │ │ ├── keys_and_values.test │ │ │ │ ├── loop_context.test │ │ │ │ ├── loop_context_local.test │ │ │ │ ├── loop_not_defined.test │ │ │ │ ├── loop_not_defined_cond.test │ │ │ │ ├── nested_else.test │ │ │ │ ├── objects.test │ │ │ │ ├── objects_countable.test │ │ │ │ ├── recursive.test │ │ │ │ └── values.test │ │ │ ├── from.test │ │ │ ├── if │ │ │ │ ├── basic.test │ │ │ │ └── expression.test │ │ │ ├── include │ │ │ │ ├── basic.test │ │ │ │ ├── expression.test │ │ │ │ ├── ignore_missing.test │ │ │ │ ├── missing.test │ │ │ │ ├── missing_nested.test │ │ │ │ ├── only.test │ │ │ │ ├── template_instance.test │ │ │ │ ├── templates_as_array.test │ │ │ │ └── with_variables.test │ │ │ ├── inheritance │ │ │ │ ├── basic.test │ │ │ │ ├── block_expr.test │ │ │ │ ├── block_expr2.test │ │ │ │ ├── conditional.test │ │ │ │ ├── dynamic.test │ │ │ │ ├── empty.test │ │ │ │ ├── extends_as_array.test │ │ │ │ ├── multiple.test │ │ │ │ ├── nested_blocks.test │ │ │ │ ├── nested_blocks_parent_only.test │ │ │ │ ├── nested_inheritance.test │ │ │ │ ├── parent.test │ │ │ │ ├── parent_change.test │ │ │ │ ├── parent_in_a_block.test │ │ │ │ ├── parent_isolation.test │ │ │ │ ├── parent_nested.test │ │ │ │ ├── parent_without_extends.test │ │ │ │ ├── parent_without_extends_but_traits.test │ │ │ │ ├── template_instance.test │ │ │ │ └── use.test │ │ │ ├── macro │ │ │ │ ├── basic.test │ │ │ │ ├── endmacro_name.test │ │ │ │ ├── external.test │ │ │ │ ├── from.test │ │ │ │ ├── global.test │ │ │ │ ├── self_import.test │ │ │ │ └── special_chars.test │ │ │ ├── raw │ │ │ │ ├── basic.test │ │ │ │ ├── mixed_usage_with_raw.test │ │ │ │ └── whitespace_control.test │ │ │ ├── sandbox │ │ │ │ ├── not_valid1.test │ │ │ │ ├── not_valid2.test │ │ │ │ └── simple.test │ │ │ ├── set │ │ │ │ ├── basic.test │ │ │ │ ├── capture-empty.test │ │ │ │ ├── capture.test │ │ │ │ └── expression.test │ │ │ ├── spaceless │ │ │ │ └── simple.test │ │ │ ├── special_chars.test │ │ │ ├── trim_block.test │ │ │ ├── use │ │ │ │ ├── aliases.test │ │ │ │ ├── basic.test │ │ │ │ ├── deep.test │ │ │ │ ├── deep_empty.test │ │ │ │ ├── inheritance.test │ │ │ │ ├── inheritance2.test │ │ │ │ ├── multiple.test │ │ │ │ ├── multiple_aliases.test │ │ │ │ ├── parent_block.test │ │ │ │ ├── parent_block2.test │ │ │ │ └── parent_block3.test │ │ │ └── verbatim │ │ │ │ ├── basic.test │ │ │ │ ├── mixed_usage_with_raw.test │ │ │ │ └── whitespace_control.test │ │ └── tests │ │ │ ├── array.test │ │ │ ├── constant.test │ │ │ ├── defined.test │ │ │ ├── empty.test │ │ │ ├── even.test │ │ │ ├── in.test │ │ │ ├── in_with_objects.test │ │ │ ├── iterable.test │ │ │ └── odd.test │ │ ├── IntegrationTest.php │ │ ├── LexerTest.php │ │ ├── Loader │ │ ├── ArrayTest.php │ │ ├── ChainTest.php │ │ ├── FilesystemTest.php │ │ └── Fixtures │ │ │ ├── named │ │ │ └── index.html │ │ │ ├── named_bis │ │ │ └── index.html │ │ │ ├── named_final │ │ │ └── index.html │ │ │ ├── named_ter │ │ │ └── index.html │ │ │ ├── normal │ │ │ └── index.html │ │ │ ├── normal_bis │ │ │ └── index.html │ │ │ ├── normal_final │ │ │ └── index.html │ │ │ ├── normal_ter │ │ │ └── index.html │ │ │ └── themes │ │ │ ├── theme1 │ │ │ └── blocks.html.twig │ │ │ └── theme2 │ │ │ └── blocks.html.twig │ │ ├── NativeExtensionTest.php │ │ ├── Node │ │ ├── AutoEscapeTest.php │ │ ├── BlockReferenceTest.php │ │ ├── BlockTest.php │ │ ├── DoTest.php │ │ ├── Expression │ │ │ ├── ArrayTest.php │ │ │ ├── AssignNameTest.php │ │ │ ├── Binary │ │ │ │ ├── AddTest.php │ │ │ │ ├── AndTest.php │ │ │ │ ├── ConcatTest.php │ │ │ │ ├── DivTest.php │ │ │ │ ├── FloorDivTest.php │ │ │ │ ├── ModTest.php │ │ │ │ ├── MulTest.php │ │ │ │ ├── OrTest.php │ │ │ │ └── SubTest.php │ │ │ ├── CallTest.php │ │ │ ├── ConditionalTest.php │ │ │ ├── ConstantTest.php │ │ │ ├── FilterTest.php │ │ │ ├── FunctionTest.php │ │ │ ├── GetAttrTest.php │ │ │ ├── NameTest.php │ │ │ ├── PHP53 │ │ │ │ ├── FilterInclude.php │ │ │ │ ├── FunctionInclude.php │ │ │ │ └── TestInclude.php │ │ │ ├── ParentTest.php │ │ │ ├── TestTest.php │ │ │ └── Unary │ │ │ │ ├── NegTest.php │ │ │ │ ├── NotTest.php │ │ │ │ └── PosTest.php │ │ ├── ForTest.php │ │ ├── IfTest.php │ │ ├── ImportTest.php │ │ ├── IncludeTest.php │ │ ├── MacroTest.php │ │ ├── ModuleTest.php │ │ ├── PrintTest.php │ │ ├── SandboxTest.php │ │ ├── SandboxedModuleTest.php │ │ ├── SandboxedPrintTest.php │ │ ├── SetTest.php │ │ ├── SpacelessTest.php │ │ └── TextTest.php │ │ ├── NodeVisitor │ │ └── OptimizerTest.php │ │ ├── ParserTest.php │ │ ├── TemplateTest.php │ │ ├── TokenStreamTest.php │ │ └── escapingTest.php │ └── bootstrap.php └── views ├── category └── editForm.html.twig ├── closed_tickets.html.twig ├── dashboard_front.html.twig ├── dashboard_view.html.twig ├── dynamic_form.html.twig ├── item └── editForm.html.twig ├── item_view.html.twig ├── items_list.html.twig ├── layout.html.twig ├── listItemTemplate.html.twig ├── listRecurringTemplate.html.twig ├── listRecurringTemplateFail.html.twig ├── listTemplate.html.twig ├── listTreeTemplate.html.twig ├── maintenanceTemplate.html.twig ├── open_tickets.html.twig ├── recurring └── editForm.html.twig ├── status └── editForm.html.twig └── viewTemplate.html.twig /.gitignore: -------------------------------------------------------------------------------- 1 | /nbproject/private/ -------------------------------------------------------------------------------- /app/app.php: -------------------------------------------------------------------------------- 1 | 4 | 5 | -------------------------------------------------------------------------------- /assets/default/css/theme_equipment.css: -------------------------------------------------------------------------------- 1 | #nav li a.equipment { 2 | background-image: url('../images/icons/equipment.png'); 3 | } 4 | 5 | #nav li a.equipment_status { 6 | background-image: url('../images/icons/green_dot.png'); 7 | } 8 | 9 | a.equipment_status { background-image:url(../images/icons/green_dot.gif) } 10 | a.equipment { background-image:url(../images/icons/equipment.gif) } -------------------------------------------------------------------------------- /assets/default/images/icons/equipment.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/default/images/icons/equipment.gif -------------------------------------------------------------------------------- /assets/default/images/icons/equipment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/default/images/icons/equipment.png -------------------------------------------------------------------------------- /assets/default/images/icons/green_dot.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/default/images/icons/green_dot.gif -------------------------------------------------------------------------------- /assets/default/images/icons/green_dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/default/images/icons/green_dot.png -------------------------------------------------------------------------------- /assets/images/green_dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/images/green_dot.png -------------------------------------------------------------------------------- /assets/images/header-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/images/header-bg.png -------------------------------------------------------------------------------- /assets/images/new_category.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/images/new_category.png -------------------------------------------------------------------------------- /assets/images/ost-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/images/ost-logo.png -------------------------------------------------------------------------------- /assets/images/red_dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/images/red_dot.png -------------------------------------------------------------------------------- /assets/images/taco.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/images/taco.gif -------------------------------------------------------------------------------- /assets/images/yellow_dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/images/yellow_dot.png -------------------------------------------------------------------------------- /assets/js/category_item_view.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | $('#categoriesDropDown').puidropdown(); 3 | $.getJSON(eq_root + 'categories/listJson', populateCategoriesDropDown); 4 | }); 5 | 6 | 7 | function populateCategoriesDropDown(data) 8 | { 9 | 10 | for (var key in data) 11 | { 12 | var category = data[key]; 13 | $('#categoriesDropDown').puidropdown 14 | ('addOption', category['name'], category['category_id']); 15 | 16 | if (typeof category_id !== 'undefined') 17 | { 18 | $('#categoriesDropDown').puidropdown('selectValue', category_id); 19 | } 20 | } 21 | } 22 | 23 | 24 | -------------------------------------------------------------------------------- /assets/js/dynamic_form.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | $('#dynamic-form-body').puipanel(); 3 | $.ajax({ 4 | url: eq_root+'item/getDynamicForm/'+selected_item, 5 | cache: false 6 | }) 7 | .done(function(html) { 8 | $("#dynamic-form-body").append(html); 9 | $(':radio').puiradiobutton(); 10 | $(':text').puiinputtext(); 11 | $('textarea').puiinputtextarea(); 12 | $('select').puidropdown(); 13 | $(':checkbox').puicheckbox(); 14 | }); 15 | }); -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/animated-overlay.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/animated-overlay.gif -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-icons_222222_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-icons_222222_256x240.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-icons_228ef1_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-icons_228ef1_256x240.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-icons_ef8c08_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-icons_ef8c08_256x240.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-icons_ffd27a_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-icons_ffd27a_256x240.png -------------------------------------------------------------------------------- /assets/js/jquery-ui/css/ui-lightness/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/jquery-ui/css/ui-lightness/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /assets/js/listRecurring.js: -------------------------------------------------------------------------------- 1 | $(function() { 2 | $('#noticePanel').puipanel(); 3 | $('#enableButton').puibutton(); 4 | if(events_on) 5 | { 6 | $('#enableButton').puibutton('enable'); 7 | } 8 | else 9 | { 10 | $('#enableButton').puibutton('disable'); 11 | } 12 | }); 13 | 14 | -------------------------------------------------------------------------------- /assets/js/primeui/production/css/accordion/accordion.css: -------------------------------------------------------------------------------- 1 | .pui-accordion{width:100%;} 2 | .pui-accordion .pui-accordion-header{cursor:pointer;position:relative;margin-top:1px;zoom:1;} 3 | .pui-accordion .pui-accordion-header a{display:block;font-size:1em;padding:.5em .5em .5em 2.2em;} 4 | .pui-accordion .pui-accordion-header .ui-icon{position:absolute;left:.5em;top:50%;margin-top:-8px;} 5 | .pui-accordion .pui-accordion-content{padding:1em 2.2em;border-top:0;margin-top:-2px;position:relative;top:1px;margin-bottom:2px;overflow:auto;zoom:1;} 6 | .pui-accordion .pui-accordion-header.ui-state-disabled,.pui-accordion .pui-accordion-header.ui-state-disabled a{cursor:default;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/checkbox/checkbox.css: -------------------------------------------------------------------------------- 1 | .pui-chkbox{display:inline-block;cursor:pointer;} 2 | .pui-chkbox .pui-chkbox-box{float:left;width:16px;height:16px;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;margin-right:3px;} 3 | .pui-chkbox .pui-chkbox-label{cursor:pointer;display:block;margin:0 3px;outline:medium none;z-index:1;float:left;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/core/core.css: -------------------------------------------------------------------------------- 1 | .pui-shadow{-moz-box-shadow:0 5px 10px rgba(0,0,0,0.8);-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.8);box-shadow:0 5px 10px rgba(0,0,0,0.8);} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/fieldset/fieldset.css: -------------------------------------------------------------------------------- 1 | .pui-fieldset,.pui-fieldset .pui-fieldset-legend{padding:.6em 1em;} 2 | .pui-fieldset-toggleable .pui-fieldset-legend{padding:.5em 1em .5em .5em;cursor:pointer;white-space:nowrap;} 3 | .pui-fieldset .pui-fieldset-toggler{padding-right:.1em;margin-top:-0.1em;float:left;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/inputtext/inputtext.css: -------------------------------------------------------------------------------- 1 | .pui-inputtext{margin:0;outline:medium none;padding:4px;font-weight:normal;} 2 | .ui-widget-header .pui-inputtext,.ui-widget-content .pui-inputtext{font-weight:normal;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/inputtextarea/inputtextarea.css: -------------------------------------------------------------------------------- 1 | .pui-inputtextarea-resizable{overflow:hidden;resize:none;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/lightbox/lightbox.css: -------------------------------------------------------------------------------- 1 | .pui-lightbox{position:fixed;} 2 | .pui-lightbox-content-wrapper{position:relative;} 3 | .pui-lightbox-content{position:relative;margin:0;padding:0;background-color:#000;} 4 | .pui-lightbox-nav-right,.pui-lightbox-nav-left{position:absolute;top:50%;cursor:pointer;} 5 | .pui-lightbox-nav-left{left:0;} 6 | .pui-lightbox-nav-right{right:0;} 7 | .pui-lightbox-loading{background:url("../../images/loading.gif") #000 center center no-repeat;} 8 | .pui-lightbox-caption{padding:.2em .4em;display:none;} 9 | .pui-lightbox-caption-text{margin:.3em 0 .1em 0;float:left;} 10 | .pui-lightbox-close{float:right;margin:0;padding:1px;} 11 | .pui-lightbox-close.ui-state-hover{padding:0;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/listbox/listbox.css: -------------------------------------------------------------------------------- 1 | .pui-listbox{overflow:auto;padding:2px;width:125px;} 2 | .pui-listbox .pui-listbox-list{list-style-type:none;margin:0;padding:0;} 3 | .pui-listbox .pui-listbox-item{margin:2px;border:0 none;cursor:pointer;font-weight:normal;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/notify/notify.css: -------------------------------------------------------------------------------- 1 | .pui-notify{position:fixed;width:100%;height:100px;display:none;padding:10px;} 2 | .pui-notify-top{top:0;} 3 | .pui-notify-bottom{bottom:0;} 4 | .pui-notify-close{position:absolute;right:3em;top:1em;cursor:pointer;opacity:.5;} 5 | .pui-notify-close:hover{opacity:1.0;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/password/password.css: -------------------------------------------------------------------------------- 1 | .pui-password-panel{padding:4px 10px;width:150px;margin-top:2px;} 2 | .pui-password-panel .pui-password-meter{height:10px;background:transparent url("../../images/password-meter.png") no-repeat left top;padding:0;margin:0;} 3 | .pui-password-info{margin-top:4px;} 4 | .pui-password-panel-overlay{position:absolute;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/progressbar/progressbar.css: -------------------------------------------------------------------------------- 1 | .pui-progressbar{height:1.2em;text-align:left;position:relative;} 2 | .pui-progressbar .pui-progressbar-value{margin:-1px;height:100%;width:0;position:absolute;display:none;} 3 | .pui-progressbar .pui-progressbar-label{text-align:center;height:100%;width:100%;position:absolute;display:none;font-weight:bold;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/radiobutton/radiobutton.css: -------------------------------------------------------------------------------- 1 | .pui-radiobutton{position:relative;width:16px;margin:2px 0;line-height:16px;cursor:pointer;} 2 | .pui-radiobutton .pui-radiobutton-box{width:16px;height:16px;line-height:16px;-moz-border-radius:10px;-webkit-border-radius:10px;border-radius:10px;} 3 | .pui-radiobutton-icon{margin-left:1px;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/rating/rating.css: -------------------------------------------------------------------------------- 1 | .pui-rating-star,.pui-rating-cancel{float:left;display:block;overflow:hidden;text-indent:-999em;cursor:pointer;} 2 | .pui-rating-star a,.pui-rating-cancel a{width:16px;height:15px;display:block;background:url("./images/rating.png") no-repeat 0 0;} 3 | .pui-rating-star a{background-position:0 -32px;} 4 | .pui-rating-star-on a{background-position:0 -48px;} 5 | .pui-rating-star-hover a{background-position:0 -64px;} 6 | .pui-rating-cancel-hover a{background-position:0 -16px;} 7 | .pui-rating.ui-state-disabled .pui-rating-star,.pui-rating.ui-state-disabled .pui-rating-cancel{cursor:default;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/spinner/spinner.css: -------------------------------------------------------------------------------- 1 | .pui-spinner{display:inline-block;overflow:visible;padding:0;position:relative;vertical-align:middle;} 2 | .pui-spinner-input{vertical-align:middle;text-align:right;padding-right:20px;} 3 | .pui-spinner-button{cursor:default;display:block;font-size:.5em;height:50%;margin:0;overflow:hidden;padding:0;position:absolute;right:0;text-align:center;vertical-align:middle;width:16px;z-index:100;} 4 | .pui-spinner .ui-icon{left:0;margin-top:-8px;position:absolute;top:50%;} 5 | .pui-spinner-up{top:0;} 6 | .pui-spinner-down{bottom:0;} 7 | .pui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px;} 8 | .pui-spinner .ui-icon-triangle-1-n{margin-top:-9px;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/splitbutton/splitbutton.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/production/css/splitbutton/splitbutton.css -------------------------------------------------------------------------------- /assets/js/primeui/production/css/terminal/terminal.css: -------------------------------------------------------------------------------- 1 | .pui-terminal{height:300px;overflow:auto;padding:3px;} 2 | .pui-terminal-input{border:0 none;background-color:transparent;color:inherit;padding:0;margin:0 0 0 2px;width:75%;outline:none;vertical-align:baseline;} 3 | .pui-terminal-command{margin-left:2px;-moz-margin-start:3px;} 4 | .pui-terminal-input::-ms-clear{display:none;} -------------------------------------------------------------------------------- /assets/js/primeui/production/css/tooltip/tooltip.css: -------------------------------------------------------------------------------- 1 | .pui-tooltip{position:absolute;display:none;padding:3px 5px;} -------------------------------------------------------------------------------- /assets/js/primeui/production/images/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/production/images/loading.gif -------------------------------------------------------------------------------- /assets/js/primeui/production/images/messages.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/production/images/messages.png -------------------------------------------------------------------------------- /assets/js/primeui/production/images/ornament.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/production/images/ornament.png -------------------------------------------------------------------------------- /assets/js/primeui/production/images/password-meter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/production/images/password-meter.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_diagonals-thick_90_eeeeee_40x40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_diagonals-thick_90_eeeeee_40x40.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_flat_15_cd0a0a_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_flat_15_cd0a0a_40x100.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_glass_100_e4f1fb_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_glass_100_e4f1fb_1x400.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_glass_50_3baae3_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_glass_50_3baae3_1x400.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_glass_80_d7ebf9_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_glass_80_d7ebf9_1x400.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_highlight-hard_100_f2f5f7_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-hard_100_f2f5f7_1x100.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_highlight-hard_70_000000_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-hard_70_000000_1x100.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_highlight-soft_100_deedf7_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-soft_100_deedf7_1x100.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-bg_highlight-soft_25_ffef8f_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-soft_25_ffef8f_1x100.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-icons_2694e8_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-icons_2694e8_256x240.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-icons_2e83ff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-icons_2e83ff_256x240.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-icons_3d80b3_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-icons_3d80b3_256x240.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-icons_72a7cf_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-icons_72a7cf_256x240.png -------------------------------------------------------------------------------- /assets/js/primeui/themes/cupertino/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/assets/js/primeui/themes/cupertino/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /assets/js/recurring_view.js: -------------------------------------------------------------------------------- 1 | var currentTicket = 0; 2 | $(function() { 3 | $('#recurringTicket').puipanel(); 4 | $('#intervalAdd').puibutton({ 5 | icon: 'ui-icon-circle-plus', 6 | click: function() { 7 | window.location.href = eq_root + 'recurring/addByTicket/' + currentTicket; 8 | } 9 | }); 10 | }); 11 | 12 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "require": { 3 | "twig/twig": "1.*" 4 | } 5 | } -------------------------------------------------------------------------------- /composer.phar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/composer.phar -------------------------------------------------------------------------------- /equipment_front/assets/css/equipment.css: -------------------------------------------------------------------------------- 1 | .etreeImage 2 | { 3 | width: 20px; 4 | height: 20px; 5 | } -------------------------------------------------------------------------------- /equipment_front/assets/images/green_dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/images/green_dot.png -------------------------------------------------------------------------------- /equipment_front/assets/images/header-bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/images/header-bg.png -------------------------------------------------------------------------------- /equipment_front/assets/images/new_category.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/images/new_category.png -------------------------------------------------------------------------------- /equipment_front/assets/images/ost-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/images/ost-logo.png -------------------------------------------------------------------------------- /equipment_front/assets/images/red_dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/images/red_dot.png -------------------------------------------------------------------------------- /equipment_front/assets/images/yellow_dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/images/yellow_dot.png -------------------------------------------------------------------------------- /equipment_front/assets/js/dashboard_view.js: -------------------------------------------------------------------------------- 1 | /* 2 | * To change this license header, choose License Headers in Project Properties. 3 | * To change this template file, choose Tools | Templates 4 | * and open the template in the editor. 5 | */ 6 | $(function() { 7 | $('#equipmentTree').puipanel({ 8 | toggleable: true 9 | , closable: true 10 | }); 11 | $('#dashboardTree').etree({ 12 | nodes: tree_data 13 | }); 14 | }); 15 | 16 | -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_diagonals-thick_90_eeeeee_40x40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_diagonals-thick_90_eeeeee_40x40.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_flat_15_cd0a0a_40x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_flat_15_cd0a0a_40x100.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_glass_100_e4f1fb_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_glass_100_e4f1fb_1x400.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_glass_50_3baae3_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_glass_50_3baae3_1x400.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_glass_80_d7ebf9_1x400.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_glass_80_d7ebf9_1x400.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-hard_100_f2f5f7_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-hard_100_f2f5f7_1x100.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-hard_70_000000_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-hard_70_000000_1x100.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-soft_100_deedf7_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-soft_100_deedf7_1x100.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-soft_25_ffef8f_1x100.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-bg_highlight-soft_25_ffef8f_1x100.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_2694e8_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_2694e8_256x240.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_2e83ff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_2e83ff_256x240.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_3d80b3_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_3d80b3_256x240.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_72a7cf_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_72a7cf_256x240.png -------------------------------------------------------------------------------- /equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_ffffff_256x240.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/equipment_front/assets/js/primeui/themes/cupertino/images/ui-icons_ffffff_256x240.png -------------------------------------------------------------------------------- /install/sql/purge_equipment_data.sql: -------------------------------------------------------------------------------- 1 | SET SQL_SAFE_UPDATES=0$ 2 | DELETE FROM `%TABLE_PREFIX%equipment`$ 3 | DELETE FROM `%TABLE_PREFIX%equipment_category`$ 4 | DELETE FROM `%TABLE_PREFIX%equipment_status`$ 5 | DELETE FROM `%TABLE_PREFIX%equipment_ticket`$ 6 | DELETE FROM `%TABLE_PREFIX%equipment_ticket_recurring`$ 7 | DELETE FROM `%TABLE_PREFIX%equipment_config`$ 8 | DELETE FROM `%TABLE_PREFIX%list` WHERE `name`='equipment_status'$ 9 | DELETE FROM `%TABLE_PREFIX%list` WHERE `name`='equipment'$ 10 | DELETE FROM `%TABLE_PREFIX%form` WHERE `title`='Equipment'$ 11 | SET SQL_SAFE_UPDATES=1$ 12 | -------------------------------------------------------------------------------- /install/sql/upgrade_equipment_fail.sql: -------------------------------------------------------------------------------- 1 | ALTER TABLE `%TABLE_PREFIX%equipment` 2 | CHANGE COLUMN `name` `asset_id` VARCHAR(255) NOT NULL , 3 | ADD COLUMN `staff_id` INT NULL AFTER `is_active`, 4 | ADD COLUMN `user_id` INT NULL AFTER `staff_id` 5 | DROP INDEX `name`$ 6 | 7 | ALTER TABLE `%TABLE_PREFIX%equipment` 8 | ADD COLUMN `staff_id` INT NULL AFTER `is_active`, 9 | ADD COLUMN `user_id` INT NULL AFTER `staff_id`$ 10 | 11 | ALTER TABLE `%TABLE_PREFIX%equipment_category` 12 | ADD COLUMN `parent_id` INT NOT NULL DEFAULT 0 AFTER `updated`$ -------------------------------------------------------------------------------- /nbproject/project.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | org.netbeans.modules.php.project 4 | 5 | 6 | equipment 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /scp/images/icons/equipment.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/scp/images/icons/equipment.gif -------------------------------------------------------------------------------- /scp/images/icons/green_dot.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/scp/images/icons/green_dot.gif -------------------------------------------------------------------------------- /scp/images/icons/green_dot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/poctob/OSTEquipmentPlugin/06fb6c2c4298dcab0c46ead4d63932d27f9b86dc/scp/images/icons/green_dot.png -------------------------------------------------------------------------------- /vendor/autoload.php: -------------------------------------------------------------------------------- 1 | array($vendorDir . '/twig/twig/lib'), 10 | ); 11 | -------------------------------------------------------------------------------- /vendor/composer/autoload_psr4.php: -------------------------------------------------------------------------------- 1 | ` filter for formatting. 16 | 17 | Arguments 18 | --------- 19 | 20 | * ``modifier``: The modifier 21 | 22 | .. _`strtotime`: http://www.php.net/strtotime 23 | .. _`DateTime`: http://www.php.net/DateTime 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/first.rst: -------------------------------------------------------------------------------- 1 | ``first`` 2 | ========= 3 | 4 | .. versionadded:: 1.12.2 5 | The first filter was added in Twig 1.12.2. 6 | 7 | The ``first`` filter returns the first "element" of a sequence, a mapping, or 8 | a string: 9 | 10 | .. code-block:: jinja 11 | 12 | {{ [1, 2, 3, 4]|first }} 13 | {# outputs 1 #} 14 | 15 | {{ { a: 1, b: 2, c: 3, d: 4 }|first }} 16 | {# outputs 1 #} 17 | 18 | {{ '1234'|first }} 19 | {# outputs 1 #} 20 | 21 | .. note:: 22 | 23 | It also works with objects implementing the `Traversable`_ interface. 24 | 25 | .. _`Traversable`: http://php.net/manual/en/class.traversable.php 26 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/format.rst: -------------------------------------------------------------------------------- 1 | ``format`` 2 | ========== 3 | 4 | The ``format`` filter formats a given string by replacing the placeholders 5 | (placeholders follows the `sprintf`_ notation): 6 | 7 | .. code-block:: jinja 8 | 9 | {{ "I like %s and %s."|format(foo, "bar") }} 10 | 11 | {# outputs I like foo and bar 12 | if the foo parameter equals to the foo string. #} 13 | 14 | .. _`sprintf`: http://www.php.net/sprintf 15 | 16 | .. seealso:: :doc:`replace` 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/index.rst: -------------------------------------------------------------------------------- 1 | Filters 2 | ======= 3 | 4 | .. toctree:: 5 | :maxdepth: 1 6 | 7 | abs 8 | batch 9 | capitalize 10 | convert_encoding 11 | date 12 | date_modify 13 | default 14 | escape 15 | first 16 | format 17 | join 18 | json_encode 19 | keys 20 | last 21 | length 22 | lower 23 | nl2br 24 | number_format 25 | merge 26 | upper 27 | raw 28 | replace 29 | reverse 30 | round 31 | slice 32 | sort 33 | split 34 | striptags 35 | title 36 | trim 37 | url_encode 38 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/join.rst: -------------------------------------------------------------------------------- 1 | ``join`` 2 | ======== 3 | 4 | The ``join`` filter returns a string which is the concatenation of the items 5 | of a sequence: 6 | 7 | .. code-block:: jinja 8 | 9 | {{ [1, 2, 3]|join }} 10 | {# returns 123 #} 11 | 12 | The separator between elements is an empty string per default, but you can 13 | define it with the optional first parameter: 14 | 15 | .. code-block:: jinja 16 | 17 | {{ [1, 2, 3]|join('|') }} 18 | {# outputs 1|2|3 #} 19 | 20 | Arguments 21 | --------- 22 | 23 | * ``glue``: The separator 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/json_encode.rst: -------------------------------------------------------------------------------- 1 | ``json_encode`` 2 | =============== 3 | 4 | The ``json_encode`` filter returns the JSON representation of a value: 5 | 6 | .. code-block:: jinja 7 | 8 | {{ data|json_encode() }} 9 | 10 | .. note:: 11 | 12 | Internally, Twig uses the PHP `json_encode`_ function. 13 | 14 | Arguments 15 | --------- 16 | 17 | * ``options``: A bitmask of `json_encode options`_ (``{{ 18 | data|json_encode(constant('JSON_PRETTY_PRINT')) }}``) 19 | 20 | .. _`json_encode`: http://php.net/json_encode 21 | .. _`json_encode options`: http://www.php.net/manual/en/json.constants.php 22 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/keys.rst: -------------------------------------------------------------------------------- 1 | ``keys`` 2 | ======== 3 | 4 | The ``keys`` filter returns the keys of an array. It is useful when you want to 5 | iterate over the keys of an array: 6 | 7 | .. code-block:: jinja 8 | 9 | {% for key in array|keys %} 10 | ... 11 | {% endfor %} 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/last.rst: -------------------------------------------------------------------------------- 1 | ``last`` 2 | ======== 3 | 4 | .. versionadded:: 1.12.2 5 | The last filter was added in Twig 1.12.2. 6 | 7 | The ``last`` filter returns the last "element" of a sequence, a mapping, or 8 | a string: 9 | 10 | .. code-block:: jinja 11 | 12 | {{ [1, 2, 3, 4]|last }} 13 | {# outputs 4 #} 14 | 15 | {{ { a: 1, b: 2, c: 3, d: 4 }|last }} 16 | {# outputs 4 #} 17 | 18 | {{ '1234'|last }} 19 | {# outputs 4 #} 20 | 21 | .. note:: 22 | 23 | It also works with objects implementing the `Traversable`_ interface. 24 | 25 | .. _`Traversable`: http://php.net/manual/en/class.traversable.php 26 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/length.rst: -------------------------------------------------------------------------------- 1 | ``length`` 2 | ========== 3 | 4 | The ``length`` filter returns the number of items of a sequence or mapping, or 5 | the length of a string: 6 | 7 | .. code-block:: jinja 8 | 9 | {% if users|length > 10 %} 10 | ... 11 | {% endif %} 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/lower.rst: -------------------------------------------------------------------------------- 1 | ``lower`` 2 | ========= 3 | 4 | The ``lower`` filter converts a value to lowercase: 5 | 6 | .. code-block:: jinja 7 | 8 | {{ 'WELCOME'|lower }} 9 | 10 | {# outputs 'welcome' #} 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/nl2br.rst: -------------------------------------------------------------------------------- 1 | ``nl2br`` 2 | ========= 3 | 4 | .. versionadded:: 1.5 5 | The nl2br filter was added in Twig 1.5. 6 | 7 | The ``nl2br`` filter inserts HTML line breaks before all newlines in a string: 8 | 9 | .. code-block:: jinja 10 | 11 | {{ "I like Twig.\nYou will like it too."|nl2br }} 12 | {# outputs 13 | 14 | I like Twig.
15 | You will like it too. 16 | 17 | #} 18 | 19 | .. note:: 20 | 21 | The ``nl2br`` filter pre-escapes the input before applying the 22 | transformation. 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/raw.rst: -------------------------------------------------------------------------------- 1 | ``raw`` 2 | ======= 3 | 4 | The ``raw`` filter marks the value as being "safe", which means that in an 5 | environment with automatic escaping enabled this variable will not be escaped 6 | if ``raw`` is the last filter applied to it: 7 | 8 | .. code-block:: jinja 9 | 10 | {% autoescape %} 11 | {{ var|raw }} {# var won't be escaped #} 12 | {% endautoescape %} 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/replace.rst: -------------------------------------------------------------------------------- 1 | ``replace`` 2 | =========== 3 | 4 | The ``replace`` filter formats a given string by replacing the placeholders 5 | (placeholders are free-form): 6 | 7 | .. code-block:: jinja 8 | 9 | {{ "I like %this% and %that%."|replace({'%this%': foo, '%that%': "bar"}) }} 10 | 11 | {# outputs I like foo and bar 12 | if the foo parameter equals to the foo string. #} 13 | 14 | Arguments 15 | --------- 16 | 17 | * ``replace_pairs``: The placeholder values 18 | 19 | .. seealso:: :doc:`format` 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/sort.rst: -------------------------------------------------------------------------------- 1 | ``sort`` 2 | ======== 3 | 4 | The ``sort`` filter sorts an array: 5 | 6 | .. code-block:: jinja 7 | 8 | {% for user in users|sort %} 9 | ... 10 | {% endfor %} 11 | 12 | .. note:: 13 | 14 | Internally, Twig uses the PHP `asort`_ function to maintain index 15 | association. 16 | 17 | .. _`asort`: http://php.net/asort 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/striptags.rst: -------------------------------------------------------------------------------- 1 | ``striptags`` 2 | ============= 3 | 4 | The ``striptags`` filter strips SGML/XML tags and replace adjacent whitespace 5 | by one space: 6 | 7 | .. code-block:: jinja 8 | 9 | {{ some_html|striptags }} 10 | 11 | .. note:: 12 | 13 | Internally, Twig uses the PHP `strip_tags`_ function. 14 | 15 | .. _`strip_tags`: http://php.net/strip_tags 16 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/title.rst: -------------------------------------------------------------------------------- 1 | ``title`` 2 | ========= 3 | 4 | The ``title`` filter returns a titlecased version of the value. Words will 5 | start with uppercase letters, all remaining characters are lowercase: 6 | 7 | .. code-block:: jinja 8 | 9 | {{ 'my first car'|title }} 10 | 11 | {# outputs 'My First Car' #} 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/trim.rst: -------------------------------------------------------------------------------- 1 | ``trim`` 2 | ======== 3 | 4 | .. versionadded:: 1.6.2 5 | The trim filter was added in Twig 1.6.2. 6 | 7 | The ``trim`` filter strips whitespace (or other characters) from the beginning 8 | and end of a string: 9 | 10 | .. code-block:: jinja 11 | 12 | {{ ' I like Twig. '|trim }} 13 | 14 | {# outputs 'I like Twig.' #} 15 | 16 | {{ ' I like Twig.'|trim('.') }} 17 | 18 | {# outputs ' I like Twig' #} 19 | 20 | .. note:: 21 | 22 | Internally, Twig uses the PHP `trim`_ function. 23 | 24 | Arguments 25 | --------- 26 | 27 | * ``character_mask``: The characters to strip 28 | 29 | .. _`trim`: http://php.net/trim 30 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/filters/upper.rst: -------------------------------------------------------------------------------- 1 | ``upper`` 2 | ========= 3 | 4 | The ``upper`` filter converts a value to uppercase: 5 | 6 | .. code-block:: jinja 7 | 8 | {{ 'welcome'|upper }} 9 | 10 | {# outputs 'WELCOME' #} 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/attribute.rst: -------------------------------------------------------------------------------- 1 | ``attribute`` 2 | ============= 3 | 4 | .. versionadded:: 1.2 5 | The ``attribute`` function was added in Twig 1.2. 6 | 7 | The ``attribute`` function can be used to access a "dynamic" attribute of a 8 | variable: 9 | 10 | .. code-block:: jinja 11 | 12 | {{ attribute(object, method) }} 13 | {{ attribute(object, method, arguments) }} 14 | {{ attribute(array, item) }} 15 | 16 | In addition, the ``defined`` test can check for the existence of a dynamic 17 | attribute: 18 | 19 | .. code-block:: jinja 20 | 21 | {{ attribute(object, method) is defined ? 'Method exists' : 'Method does not exist' }} 22 | 23 | .. note:: 24 | 25 | The resolution algorithm is the same as the one used for the ``.`` 26 | notation, except that the item can be any valid expression. 27 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/block.rst: -------------------------------------------------------------------------------- 1 | ``block`` 2 | ========= 3 | 4 | When a template uses inheritance and if you want to print a block multiple 5 | times, use the ``block`` function: 6 | 7 | .. code-block:: jinja 8 | 9 | {% block title %}{% endblock %} 10 | 11 |

{{ block('title') }}

12 | 13 | {% block body %}{% endblock %} 14 | 15 | .. seealso:: :doc:`extends<../tags/extends>`, :doc:`parent<../functions/parent>` 16 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/constant.rst: -------------------------------------------------------------------------------- 1 | ``constant`` 2 | ============ 3 | 4 | .. versionadded: 1.12.1 5 | constant now accepts object instances as the second argument. 6 | 7 | ``constant`` returns the constant value for a given string: 8 | 9 | .. code-block:: jinja 10 | 11 | {{ some_date|date(constant('DATE_W3C')) }} 12 | {{ constant('Namespace\\Classname::CONSTANT_NAME') }} 13 | 14 | As of 1.12.1 you can read constants from object instances as well: 15 | 16 | .. code-block:: jinja 17 | 18 | {{ constant('RSS', date) }} 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/cycle.rst: -------------------------------------------------------------------------------- 1 | ``cycle`` 2 | ========= 3 | 4 | The ``cycle`` function cycles on an array of values: 5 | 6 | .. code-block:: jinja 7 | 8 | {% set start_year = date() | date('Y') %} 9 | {% set end_year = start_year + 5 %} 10 | 11 | {% for year in start_year..end_year %} 12 | {{ cycle(['odd', 'even'], loop.index0) }} 13 | {% endfor %} 14 | 15 | The array can contain any number of values: 16 | 17 | .. code-block:: jinja 18 | 19 | {% set fruits = ['apple', 'orange', 'citrus'] %} 20 | 21 | {% for i in 0..10 %} 22 | {{ cycle(fruits, i) }} 23 | {% endfor %} 24 | 25 | Arguments 26 | --------- 27 | 28 | * ``position``: The cycle position 29 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/index.rst: -------------------------------------------------------------------------------- 1 | Functions 2 | ========= 3 | 4 | .. toctree:: 5 | :maxdepth: 1 6 | 7 | attribute 8 | block 9 | constant 10 | cycle 11 | date 12 | dump 13 | include 14 | max 15 | min 16 | parent 17 | random 18 | range 19 | source 20 | template_from_string 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/max.rst: -------------------------------------------------------------------------------- 1 | ``max`` 2 | ======= 3 | 4 | .. versionadded:: 1.15 5 | The ``max`` function was added in Twig 1.15. 6 | 7 | ``max`` returns the biggest value of a sequence or a set of values: 8 | 9 | .. code-block:: jinja 10 | 11 | {{ max(1, 3, 2) }} 12 | {{ max([1, 3, 2]) }} 13 | 14 | When called with a mapping, max ignores keys and only compares values: 15 | 16 | .. code-block:: jinja 17 | 18 | {{ max({2: "e", 1: "a", 3: "b", 5: "d", 4: "c"}) }} 19 | {# returns "e" #} 20 | 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/min.rst: -------------------------------------------------------------------------------- 1 | ``min`` 2 | ======= 3 | 4 | .. versionadded:: 1.15 5 | The ``min`` function was added in Twig 1.15. 6 | 7 | ``min`` returns the lowest value of a sequence or a set of values: 8 | 9 | .. code-block:: jinja 10 | 11 | {{ min(1, 3, 2) }} 12 | {{ min([1, 3, 2]) }} 13 | 14 | When called with a mapping, min ignores keys and only compares values: 15 | 16 | .. code-block:: jinja 17 | 18 | {{ min({2: "e", 3: "a", 1: "b", 5: "d", 4: "c"}) }} 19 | {# returns "a" #} 20 | 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/parent.rst: -------------------------------------------------------------------------------- 1 | ``parent`` 2 | ========== 3 | 4 | When a template uses inheritance, it's possible to render the contents of the 5 | parent block when overriding a block by using the ``parent`` function: 6 | 7 | .. code-block:: jinja 8 | 9 | {% extends "base.html" %} 10 | 11 | {% block sidebar %} 12 |

Table Of Contents

13 | ... 14 | {{ parent() }} 15 | {% endblock %} 16 | 17 | The ``parent()`` call will return the content of the ``sidebar`` block as 18 | defined in the ``base.html`` template. 19 | 20 | .. seealso:: :doc:`extends<../tags/extends>`, :doc:`block<../functions/block>`, :doc:`block<../tags/block>` 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/functions/source.rst: -------------------------------------------------------------------------------- 1 | ``source`` 2 | ========== 3 | 4 | .. versionadded:: 1.15 5 | The source function was added in Twig 1.15. 6 | 7 | The ``source`` function returns the content of a template without rendering it: 8 | 9 | .. code-block:: jinja 10 | 11 | {{ source('template.html') }} 12 | {{ source(some_var) }} 13 | 14 | The function uses the same template loaders as the ones used to include 15 | templates. So, if you are using the filesystem loader, the templates are looked 16 | for in the paths defined by it. 17 | 18 | Arguments 19 | --------- 20 | 21 | * ``name``: The name of the template to read 22 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/index.rst: -------------------------------------------------------------------------------- 1 | Twig 2 | ==== 3 | 4 | .. toctree:: 5 | :maxdepth: 2 6 | 7 | intro 8 | templates 9 | api 10 | advanced 11 | internals 12 | recipes 13 | coding_standards 14 | tags/index 15 | filters/index 16 | functions/index 17 | tests/index 18 | installation 19 | deprecated 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tags/block.rst: -------------------------------------------------------------------------------- 1 | ``block`` 2 | ========= 3 | 4 | Blocks are used for inheritance and act as placeholders and replacements at 5 | the same time. They are documented in detail in the documentation for the 6 | :doc:`extends<../tags/extends>` tag. 7 | 8 | Block names should consist of alphanumeric characters, and underscores. Dashes 9 | are not permitted. 10 | 11 | .. seealso:: :doc:`block<../functions/block>`, :doc:`parent<../functions/parent>`, :doc:`use<../tags/use>`, :doc:`extends<../tags/extends>` 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tags/do.rst: -------------------------------------------------------------------------------- 1 | ``do`` 2 | ====== 3 | 4 | .. versionadded:: 1.5 5 | The do tag was added in Twig 1.5. 6 | 7 | The ``do`` tag works exactly like the regular variable expression (``{{ ... 8 | }}``) just that it doesn't print anything: 9 | 10 | .. code-block:: jinja 11 | 12 | {% do 1 + 2 %} 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tags/filter.rst: -------------------------------------------------------------------------------- 1 | ``filter`` 2 | ========== 3 | 4 | Filter sections allow you to apply regular Twig filters on a block of template 5 | data. Just wrap the code in the special ``filter`` section: 6 | 7 | .. code-block:: jinja 8 | 9 | {% filter upper %} 10 | This text becomes uppercase 11 | {% endfilter %} 12 | 13 | You can also chain filters: 14 | 15 | .. code-block:: jinja 16 | 17 | {% filter lower|escape %} 18 | SOME TEXT 19 | {% endfilter %} 20 | 21 | {# outputs "<strong>some text</strong>" #} 22 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tags/flush.rst: -------------------------------------------------------------------------------- 1 | ``flush`` 2 | ========= 3 | 4 | .. versionadded:: 1.5 5 | The flush tag was added in Twig 1.5. 6 | 7 | The ``flush`` tag tells Twig to flush the output buffer: 8 | 9 | .. code-block:: jinja 10 | 11 | {% flush %} 12 | 13 | .. note:: 14 | 15 | Internally, Twig uses the PHP `flush`_ function. 16 | 17 | .. _`flush`: http://php.net/flush 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tags/from.rst: -------------------------------------------------------------------------------- 1 | ``from`` 2 | ======== 3 | 4 | The ``from`` tag imports :doc:`macro<../tags/macro>` names into the current 5 | namespace. The tag is documented in detail in the documentation for the 6 | :doc:`import<../tags/import>` tag. 7 | 8 | .. seealso:: :doc:`macro<../tags/macro>`, :doc:`import<../tags/import>` 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tags/index.rst: -------------------------------------------------------------------------------- 1 | Tags 2 | ==== 3 | 4 | .. toctree:: 5 | :maxdepth: 1 6 | 7 | autoescape 8 | block 9 | filter 10 | do 11 | embed 12 | extends 13 | flush 14 | for 15 | from 16 | if 17 | import 18 | include 19 | macro 20 | sandbox 21 | set 22 | spaceless 23 | use 24 | verbatim 25 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tags/verbatim.rst: -------------------------------------------------------------------------------- 1 | ``verbatim`` 2 | ============ 3 | 4 | .. versionadded:: 1.12 5 | The ``verbatim`` tag was added in Twig 1.12 (it was named ``raw`` before). 6 | 7 | The ``verbatim`` tag marks sections as being raw text that should not be 8 | parsed. For example to put Twig syntax as example into a template you can use 9 | this snippet: 10 | 11 | .. code-block:: jinja 12 | 13 | {% verbatim %} 14 | 19 | {% endverbatim %} 20 | 21 | .. note:: 22 | 23 | The ``verbatim`` tag works in the exact same way as the old ``raw`` tag, 24 | but was renamed to avoid confusion with the ``raw`` filter. -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/constant.rst: -------------------------------------------------------------------------------- 1 | ``constant`` 2 | ============ 3 | 4 | .. versionadded: 1.13.1 5 | constant now accepts object instances as the second argument. 6 | 7 | ``constant`` checks if a variable has the exact same value as a constant. You 8 | can use either global constants or class constants: 9 | 10 | .. code-block:: jinja 11 | 12 | {% if post.status is constant('Post::PUBLISHED') %} 13 | the status attribute is exactly the same as Post::PUBLISHED 14 | {% endif %} 15 | 16 | You can test constants from object instances as well: 17 | 18 | .. code-block:: jinja 19 | 20 | {% if post.status is constant('PUBLISHED', post) %} 21 | the status attribute is exactly the same as Post::PUBLISHED 22 | {% endif %} 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/defined.rst: -------------------------------------------------------------------------------- 1 | ``defined`` 2 | =========== 3 | 4 | ``defined`` checks if a variable is defined in the current context. This is very 5 | useful if you use the ``strict_variables`` option: 6 | 7 | .. code-block:: jinja 8 | 9 | {# defined works with variable names #} 10 | {% if foo is defined %} 11 | ... 12 | {% endif %} 13 | 14 | {# and attributes on variables names #} 15 | {% if foo.bar is defined %} 16 | ... 17 | {% endif %} 18 | 19 | {% if foo['bar'] is defined %} 20 | ... 21 | {% endif %} 22 | 23 | When using the ``defined`` test on an expression that uses variables in some 24 | method calls, be sure that they are all defined first: 25 | 26 | .. code-block:: jinja 27 | 28 | {% if var is defined and foo.method(var) is defined %} 29 | ... 30 | {% endif %} 31 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/divisibleby.rst: -------------------------------------------------------------------------------- 1 | ``divisible by`` 2 | ================ 3 | 4 | .. versionadded:: 1.14.2 5 | The ``divisible by`` test was added in Twig 1.14.2 as an alias for 6 | ``divisibleby``. 7 | 8 | ``divisible by`` checks if a variable is divisible by a number: 9 | 10 | .. code-block:: jinja 11 | 12 | {% if loop.index is divisible by(3) %} 13 | ... 14 | {% endif %} 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/empty.rst: -------------------------------------------------------------------------------- 1 | ``empty`` 2 | ========= 3 | 4 | ``empty`` checks if a variable is empty: 5 | 6 | .. code-block:: jinja 7 | 8 | {# evaluates to true if the foo variable is null, false, an empty array, or the empty string #} 9 | {% if foo is empty %} 10 | ... 11 | {% endif %} 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/even.rst: -------------------------------------------------------------------------------- 1 | ``even`` 2 | ======== 3 | 4 | ``even`` returns ``true`` if the given number is even: 5 | 6 | .. code-block:: jinja 7 | 8 | {{ var is even }} 9 | 10 | .. seealso:: :doc:`odd<../tests/odd>` 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/index.rst: -------------------------------------------------------------------------------- 1 | Tests 2 | ===== 3 | 4 | .. toctree:: 5 | :maxdepth: 1 6 | 7 | constant 8 | defined 9 | divisibleby 10 | empty 11 | even 12 | iterable 13 | null 14 | odd 15 | sameas 16 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/iterable.rst: -------------------------------------------------------------------------------- 1 | ``iterable`` 2 | ============ 3 | 4 | .. versionadded:: 1.7 5 | The iterable test was added in Twig 1.7. 6 | 7 | ``iterable`` checks if a variable is an array or a traversable object: 8 | 9 | .. code-block:: jinja 10 | 11 | {# evaluates to true if the foo variable is iterable #} 12 | {% if users is iterable %} 13 | {% for user in users %} 14 | Hello {{ user }}! 15 | {% endfor %} 16 | {% else %} 17 | {# users is probably a string #} 18 | Hello {{ users }}! 19 | {% endif %} 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/null.rst: -------------------------------------------------------------------------------- 1 | ``null`` 2 | ======== 3 | 4 | ``null`` returns ``true`` if the variable is ``null``: 5 | 6 | .. code-block:: jinja 7 | 8 | {{ var is null }} 9 | 10 | .. note:: 11 | 12 | ``none`` is an alias for ``null``. 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/odd.rst: -------------------------------------------------------------------------------- 1 | ``odd`` 2 | ======= 3 | 4 | ``odd`` returns ``true`` if the given number is odd: 5 | 6 | .. code-block:: jinja 7 | 8 | {{ var is odd }} 9 | 10 | .. seealso:: :doc:`even<../tests/even>` 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/doc/tests/sameas.rst: -------------------------------------------------------------------------------- 1 | ``same as`` 2 | =========== 3 | 4 | .. versionadded:: 1.14.2 5 | The ``same as`` test was added in Twig 1.14.2 as an alias for ``sameas``. 6 | 7 | ``same as`` checks if a variable is the same as another variable. 8 | This is the equivalent to ``===`` in PHP: 9 | 10 | .. code-block:: jinja 11 | 12 | {% if foo.attribute is same as(false) %} 13 | the foo attribute really is the 'false' PHP value 14 | {% endif %} 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/ext/twig/.gitignore: -------------------------------------------------------------------------------- 1 | *.sw* 2 | .deps 3 | Makefile 4 | Makefile.fragments 5 | Makefile.global 6 | Makefile.objects 7 | acinclude.m4 8 | aclocal.m4 9 | build/ 10 | config.cache 11 | config.guess 12 | config.h 13 | config.h.in 14 | config.log 15 | config.nice 16 | config.status 17 | config.sub 18 | configure 19 | configure.in 20 | install-sh 21 | libtool 22 | ltmain.sh 23 | missing 24 | mkinstalldirs 25 | run-tests.php 26 | twig.loT 27 | .libs/ 28 | modules/ 29 | twig.la 30 | twig.lo 31 | -------------------------------------------------------------------------------- /vendor/twig/twig/ext/twig/config.m4: -------------------------------------------------------------------------------- 1 | dnl config.m4 for extension twig 2 | 3 | PHP_ARG_ENABLE(twig, whether to enable twig support, 4 | [ --enable-twig Enable twig support]) 5 | 6 | if test "$PHP_TWIG" != "no"; then 7 | PHP_NEW_EXTENSION(twig, twig.c, $ext_shared) 8 | fi 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/ext/twig/config.w32: -------------------------------------------------------------------------------- 1 | // vim:ft=javascript 2 | 3 | ARG_ENABLE("twig", "Twig support", "no"); 4 | 5 | if (PHP_TWIG != "no") { 6 | AC_DEFINE('HAVE_TWIG', 1); 7 | EXTENSION('twig', 'twig.c'); 8 | } 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Error/Runtime.php: -------------------------------------------------------------------------------- 1 | 17 | */ 18 | class Twig_Error_Runtime extends Twig_Error 19 | { 20 | } 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Error/Syntax.php: -------------------------------------------------------------------------------- 1 | 17 | */ 18 | class Twig_Error_Syntax extends Twig_Error 19 | { 20 | } 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/ExistsLoaderInterface.php: -------------------------------------------------------------------------------- 1 | 16 | * 17 | * @deprecated since 1.12 (to be removed in 3.0) 18 | */ 19 | interface Twig_ExistsLoaderInterface 20 | { 21 | /** 22 | * Check if we have the source code of a template, given its name. 23 | * 24 | * @param string $name The name of the template to check if we can load 25 | * 26 | * @return bool If the template source code is handled by this loader or not 27 | */ 28 | public function exists($name); 29 | } 30 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Extension/Optimizer.php: -------------------------------------------------------------------------------- 1 | optimizers = $optimizers; 18 | } 19 | 20 | /** 21 | * {@inheritdoc} 22 | */ 23 | public function getNodeVisitors() 24 | { 25 | return array(new Twig_NodeVisitor_Optimizer($this->optimizers)); 26 | } 27 | 28 | /** 29 | * {@inheritdoc} 30 | */ 31 | public function getName() 32 | { 33 | return 'optimizer'; 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/FilterCallableInterface.php: -------------------------------------------------------------------------------- 1 | 18 | * @deprecated since 1.12 (to be removed in 2.0) 19 | */ 20 | interface Twig_FilterCallableInterface 21 | { 22 | public function getCallable(); 23 | } 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/FunctionCallableInterface.php: -------------------------------------------------------------------------------- 1 | 18 | * @deprecated since 1.12 (to be removed in 2.0) 19 | */ 20 | interface Twig_FunctionCallableInterface 21 | { 22 | public function getCallable(); 23 | } 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Body.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | class Twig_Node_Body extends Twig_Node 18 | { 19 | } 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression.php: -------------------------------------------------------------------------------- 1 | 17 | */ 18 | abstract class Twig_Node_Expression extends Twig_Node 19 | { 20 | } 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/AssignName.php: -------------------------------------------------------------------------------- 1 | raw('$context[') 24 | ->string($this->getAttribute('name')) 25 | ->raw(']') 26 | ; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Add.php: -------------------------------------------------------------------------------- 1 | raw('+'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/And.php: -------------------------------------------------------------------------------- 1 | raw('&&'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/BitwiseAnd.php: -------------------------------------------------------------------------------- 1 | raw('&'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/BitwiseOr.php: -------------------------------------------------------------------------------- 1 | raw('|'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/BitwiseXor.php: -------------------------------------------------------------------------------- 1 | raw('^'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Concat.php: -------------------------------------------------------------------------------- 1 | raw('.'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Div.php: -------------------------------------------------------------------------------- 1 | raw('/'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Equal.php: -------------------------------------------------------------------------------- 1 | raw('=='); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/FloorDiv.php: -------------------------------------------------------------------------------- 1 | raw('intval(floor('); 21 | parent::compile($compiler); 22 | $compiler->raw('))'); 23 | } 24 | 25 | public function operator(Twig_Compiler $compiler) 26 | { 27 | return $compiler->raw('/'); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Greater.php: -------------------------------------------------------------------------------- 1 | raw('>'); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/GreaterEqual.php: -------------------------------------------------------------------------------- 1 | raw('>='); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Less.php: -------------------------------------------------------------------------------- 1 | raw('<'); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/LessEqual.php: -------------------------------------------------------------------------------- 1 | raw('<='); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Matches.php: -------------------------------------------------------------------------------- 1 | raw('preg_match(') 17 | ->subcompile($this->getNode('right')) 18 | ->raw(', ') 19 | ->subcompile($this->getNode('left')) 20 | ->raw(')') 21 | ; 22 | } 23 | 24 | public function operator(Twig_Compiler $compiler) 25 | { 26 | return $compiler->raw(''); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Mod.php: -------------------------------------------------------------------------------- 1 | raw('%'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Mul.php: -------------------------------------------------------------------------------- 1 | raw('*'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/NotEqual.php: -------------------------------------------------------------------------------- 1 | raw('!='); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Or.php: -------------------------------------------------------------------------------- 1 | raw('||'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/StartsWith.php: -------------------------------------------------------------------------------- 1 | raw('(0 === strpos(') 17 | ->subcompile($this->getNode('left')) 18 | ->raw(', ') 19 | ->subcompile($this->getNode('right')) 20 | ->raw('))') 21 | ; 22 | } 23 | 24 | public function operator(Twig_Compiler $compiler) 25 | { 26 | return $compiler->raw(''); 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Binary/Sub.php: -------------------------------------------------------------------------------- 1 | raw('-'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Constant.php: -------------------------------------------------------------------------------- 1 | $value), $lineno); 17 | } 18 | 19 | public function compile(Twig_Compiler $compiler) 20 | { 21 | $compiler->repr($this->getAttribute('value')); 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/TempName.php: -------------------------------------------------------------------------------- 1 | $name), $lineno); 16 | } 17 | 18 | public function compile(Twig_Compiler $compiler) 19 | { 20 | $compiler 21 | ->raw('$_') 22 | ->raw($this->getAttribute('name')) 23 | ->raw('_') 24 | ; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Test/Even.php: -------------------------------------------------------------------------------- 1 | 16 | * {{ var is even }} 17 | * 18 | * 19 | * @author Fabien Potencier 20 | */ 21 | class Twig_Node_Expression_Test_Even extends Twig_Node_Expression_Test 22 | { 23 | public function compile(Twig_Compiler $compiler) 24 | { 25 | $compiler 26 | ->raw('(') 27 | ->subcompile($this->getNode('node')) 28 | ->raw(' % 2 == 0') 29 | ->raw(')') 30 | ; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Test/Null.php: -------------------------------------------------------------------------------- 1 | 16 | * {{ var is none }} 17 | * 18 | * 19 | * @author Fabien Potencier 20 | */ 21 | class Twig_Node_Expression_Test_Null extends Twig_Node_Expression_Test 22 | { 23 | public function compile(Twig_Compiler $compiler) 24 | { 25 | $compiler 26 | ->raw('(null === ') 27 | ->subcompile($this->getNode('node')) 28 | ->raw(')') 29 | ; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Test/Odd.php: -------------------------------------------------------------------------------- 1 | 16 | * {{ var is odd }} 17 | * 18 | * 19 | * @author Fabien Potencier 20 | */ 21 | class Twig_Node_Expression_Test_Odd extends Twig_Node_Expression_Test 22 | { 23 | public function compile(Twig_Compiler $compiler) 24 | { 25 | $compiler 26 | ->raw('(') 27 | ->subcompile($this->getNode('node')) 28 | ->raw(' % 2 == 1') 29 | ->raw(')') 30 | ; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Test/Sameas.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | class Twig_Node_Expression_Test_Sameas extends Twig_Node_Expression_Test 18 | { 19 | public function compile(Twig_Compiler $compiler) 20 | { 21 | $compiler 22 | ->raw('(') 23 | ->subcompile($this->getNode('node')) 24 | ->raw(' === ') 25 | ->subcompile($this->getNode('arguments')->getNode(0)) 26 | ->raw(')') 27 | ; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Unary/Neg.php: -------------------------------------------------------------------------------- 1 | raw('-'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Unary/Not.php: -------------------------------------------------------------------------------- 1 | raw('!'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Node/Expression/Unary/Pos.php: -------------------------------------------------------------------------------- 1 | raw('+'); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/NodeInterface.php: -------------------------------------------------------------------------------- 1 | 16 | * 17 | * @deprecated since 1.12 (to be removed in 3.0) 18 | */ 19 | interface Twig_NodeInterface extends Countable, IteratorAggregate 20 | { 21 | /** 22 | * Compiles the node to PHP. 23 | * 24 | * @param Twig_Compiler A Twig_Compiler instance 25 | */ 26 | public function compile(Twig_Compiler $compiler); 27 | 28 | public function getLine(); 29 | 30 | public function getNodeTag(); 31 | } 32 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/NodeOutputInterface.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | interface Twig_NodeOutputInterface 18 | { 19 | } 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Sandbox/SecurityError.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | class Twig_Sandbox_SecurityError extends Twig_Error 18 | { 19 | } 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/Sandbox/SecurityPolicyInterface.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | interface Twig_Sandbox_SecurityPolicyInterface 18 | { 19 | public function checkSecurity($tags, $filters, $functions); 20 | 21 | public function checkMethodAllowed($obj, $method); 22 | 23 | public function checkPropertyAllowed($obj, $method); 24 | } 25 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/TestCallableInterface.php: -------------------------------------------------------------------------------- 1 | 16 | * @deprecated since 1.12 (to be removed in 2.0) 17 | */ 18 | interface Twig_TestCallableInterface 19 | { 20 | public function getCallable(); 21 | } 22 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/TestInterface.php: -------------------------------------------------------------------------------- 1 | 16 | * @deprecated since 1.12 (to be removed in 2.0) 17 | */ 18 | interface Twig_TestInterface 19 | { 20 | /** 21 | * Compiles a test. 22 | * 23 | * @return string The PHP code for the test 24 | */ 25 | public function compile(); 26 | } 27 | -------------------------------------------------------------------------------- /vendor/twig/twig/lib/Twig/TokenParser.php: -------------------------------------------------------------------------------- 1 | 16 | */ 17 | abstract class Twig_TokenParser implements Twig_TokenParserInterface 18 | { 19 | /** 20 | * @var Twig_Parser 21 | */ 22 | protected $parser; 23 | 24 | /** 25 | * Sets the parser associated with this token parser 26 | * 27 | * @param $parser A Twig_Parser instance 28 | */ 29 | public function setParser(Twig_Parser $parser) 30 | { 31 | $this->parser = $parser; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /vendor/twig/twig/phpunit.xml.dist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | 15 | 16 | ./test/Twig/ 17 | 18 | 19 | 20 | 21 | 22 | ./lib/Twig/ 23 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/AutoloaderTest.php: -------------------------------------------------------------------------------- 1 | assertFalse(class_exists('FooBarFoo'), '->autoload() does not try to load classes that does not begin with Twig'); 17 | 18 | $autoloader = new Twig_Autoloader(); 19 | $this->assertNull($autoloader->autoload('Foo'), '->autoload() returns false if it is not able to load a class'); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/errors/base.html: -------------------------------------------------------------------------------- 1 | {% block content %}{% endblock %} 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/errors/index.html: -------------------------------------------------------------------------------- 1 | {% extends 'base.html' %} 2 | {% block content %} 3 | {{ foo.bar }} 4 | {% endblock %} 5 | {% block foo %} 6 | {{ foo.bar }} 7 | {% endblock %} 8 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/unclosed_tag.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Exception for an unclosed tag 3 | --TEMPLATE-- 4 | {% block foo %} 5 | {% if foo %} 6 | 7 | 8 | 9 | 10 | {% for i in fo %} 11 | 12 | 13 | 14 | {% endfor %} 15 | 16 | 17 | 18 | {% endblock %} 19 | --EXCEPTION-- 20 | Twig_Error_Syntax: Unexpected tag name "endblock" (expecting closing tag for the "if" tag defined near line 4) in "index.twig" at line 16 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_trait.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Exception for an undefined trait 3 | --TEMPLATE-- 4 | {% use 'foo' with foobar as bar %} 5 | --TEMPLATE(foo)-- 6 | {% block bar %} 7 | {% endblock %} 8 | --EXCEPTION-- 9 | Twig_Error_Runtime: Block "foobar" is not defined in trait "foo" in "index.twig". 10 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/array_call.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports method calls 3 | --TEMPLATE-- 4 | {{ items.foo }} 5 | {{ items['foo'] }} 6 | {{ items[foo] }} 7 | {{ items[items[foo]] }} 8 | --DATA-- 9 | return array('foo' => 'bar', 'items' => array('foo' => 'bar', 'bar' => 'foo')) 10 | --EXPECT-- 11 | bar 12 | bar 13 | foo 14 | bar 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/binary.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports binary operations (+, -, *, /, ~, %, and, or) 3 | --TEMPLATE-- 4 | {{ 1 + 1 }} 5 | {{ 2 - 1 }} 6 | {{ 2 * 2 }} 7 | {{ 2 / 2 }} 8 | {{ 3 % 2 }} 9 | {{ 1 and 1 }} 10 | {{ 1 and 0 }} 11 | {{ 0 and 1 }} 12 | {{ 0 and 0 }} 13 | {{ 1 or 1 }} 14 | {{ 1 or 0 }} 15 | {{ 0 or 1 }} 16 | {{ 0 or 0 }} 17 | {{ 0 or 1 and 0 }} 18 | {{ 1 or 0 and 1 }} 19 | {{ "foo" ~ "bar" }} 20 | {{ foo ~ "bar" }} 21 | {{ "foo" ~ bar }} 22 | {{ foo ~ bar }} 23 | {{ 20 // 7 }} 24 | --DATA-- 25 | return array('foo' => 'bar', 'bar' => 'foo') 26 | --EXPECT-- 27 | 2 28 | 1 29 | 4 30 | 1 31 | 1 32 | 1 33 | 34 | 35 | 36 | 1 37 | 1 38 | 1 39 | 40 | 41 | 1 42 | foobar 43 | barbar 44 | foofoo 45 | barfoo 46 | 2 47 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/bitwise.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports bitwise operations 3 | --TEMPLATE-- 4 | {{ 1 b-and 5 }} 5 | {{ 1 b-or 5 }} 6 | {{ 1 b-xor 5 }} 7 | {{ (1 and 0 b-or 0) is same as(1 and (0 b-or 0)) ? 'ok' : 'ko' }} 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | 1 12 | 5 13 | 4 14 | ok 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/comparison.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports comparison operators (==, !=, <, >, >=, <=) 3 | --TEMPLATE-- 4 | {{ 1 > 2 }}/{{ 1 > 1 }}/{{ 1 >= 2 }}/{{ 1 >= 1 }} 5 | {{ 1 < 2 }}/{{ 1 < 1 }}/{{ 1 <= 2 }}/{{ 1 <= 1 }} 6 | {{ 1 == 1 }}/{{ 1 == 2 }} 7 | {{ 1 != 1 }}/{{ 1 != 2 }} 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | ///1 12 | 1//1/1 13 | 1/ 14 | /1 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/divisibleby.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the "divisible by" operator 3 | --TEMPLATE-- 4 | {{ 8 is divisible by(2) ? 'OK' }} 5 | {{ 8 is not divisible by(3) ? 'OK' }} 6 | {{ 8 is divisible by (2) ? 'OK' }} 7 | {{ 8 is not 8 | divisible 9 | by 10 | (3) ? 'OK' }} 11 | --DATA-- 12 | return array() 13 | --EXPECT-- 14 | OK 15 | OK 16 | OK 17 | OK 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/dotdot.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the .. operator 3 | --TEMPLATE-- 4 | {% for i in 0..10 %}{{ i }} {% endfor %} 5 | 6 | {% for letter in 'a'..'z' %}{{ letter }} {% endfor %} 7 | 8 | {% for letter in 'a'|upper..'z'|upper %}{{ letter }} {% endfor %} 9 | 10 | {% for i in foo[0]..foo[1] %}{{ i }} {% endfor %} 11 | 12 | {% for i in 0 + 1 .. 10 - 1 %}{{ i }} {% endfor %} 13 | --DATA-- 14 | return array('foo' => array(1, 10)) 15 | --EXPECT-- 16 | 0 1 2 3 4 5 6 7 8 9 10 17 | a b c d e f g h i j k l m n o p q r s t u v w x y z 18 | A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 19 | 1 2 3 4 5 6 7 8 9 10 20 | 1 2 3 4 5 6 7 8 9 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ends_with.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the "ends with" operator 3 | --TEMPLATE-- 4 | {{ 'foo' ends with 'o' ? 'OK' : 'KO' }} 5 | {{ not ('foo' ends with 'f') ? 'OK' : 'KO' }} 6 | {{ not ('foo' ends with 'foowaytoolong') ? 'OK' : 'KO' }} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | OK 11 | OK 12 | OK 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/grouping.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports grouping of expressions 3 | --TEMPLATE-- 4 | {{ (2 + 2) / 2 }} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | 2 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/literals.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports literals 3 | --TEMPLATE-- 4 | 1 {{ true }} 5 | 2 {{ TRUE }} 6 | 3 {{ false }} 7 | 4 {{ FALSE }} 8 | 5 {{ none }} 9 | 6 {{ NONE }} 10 | 7 {{ null }} 11 | 8 {{ NULL }} 12 | --DATA-- 13 | return array() 14 | --EXPECT-- 15 | 1 1 16 | 2 1 17 | 3 18 | 4 19 | 5 20 | 6 21 | 7 22 | 8 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/magic_call.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports __call() for attributes 3 | --TEMPLATE-- 4 | {{ foo.foo }} 5 | {{ foo.bar }} 6 | --DATA-- 7 | class TestClassForMagicCallAttributes 8 | { 9 | public function getBar() 10 | { 11 | return 'bar_from_getbar'; 12 | } 13 | 14 | public function __call($method, $arguments) 15 | { 16 | if ('foo' === $method) 17 | { 18 | return 'foo_from_call'; 19 | } 20 | 21 | return false; 22 | } 23 | } 24 | return array('foo' => new TestClassForMagicCallAttributes()) 25 | --EXPECT-- 26 | foo_from_call 27 | bar_from_getbar 28 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/matches.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the "matches" operator 3 | --TEMPLATE-- 4 | {{ 'foo' matches '/o/' ? 'OK' : 'KO' }} 5 | {{ 'foo' matches '/^fo/' ? 'OK' : 'KO' }} 6 | {{ 'foo' matches '/O/i' ? 'OK' : 'KO' }} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | OK 11 | OK 12 | OK 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/method_call.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports method calls 3 | --TEMPLATE-- 4 | {{ items.foo.foo }} 5 | {{ items.foo.getFoo() }} 6 | {{ items.foo.bar }} 7 | {{ items.foo['bar'] }} 8 | {{ items.foo.bar('a', 43) }} 9 | {{ items.foo.bar(foo) }} 10 | {{ items.foo.self.foo() }} 11 | {{ items.foo.is }} 12 | {{ items.foo.in }} 13 | {{ items.foo.not }} 14 | --DATA-- 15 | return array('foo' => 'bar', 'items' => array('foo' => new TwigTestFoo(), 'bar' => 'foo')) 16 | --CONFIG-- 17 | return array('strict_variables' => false) 18 | --EXPECT-- 19 | foo 20 | foo 21 | bar 22 | 23 | bar_a-43 24 | bar_bar 25 | foo 26 | is 27 | in 28 | not 29 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/operators_as_variables.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig allows to use named operators as variable names 3 | --TEMPLATE-- 4 | {% for match in matches %} 5 | {{- match }} 6 | {% endfor %} 7 | {{ in }} 8 | {{ is }} 9 | --DATA-- 10 | return array('matches' => array(1, 2, 3), 'in' => 'in', 'is' => 'is') 11 | --EXPECT-- 12 | 1 13 | 2 14 | 3 15 | in 16 | is 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/postfix.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig parses postfix expressions 3 | --TEMPLATE-- 4 | {% import _self as macros %} 5 | 6 | {% macro foo() %}foo{% endmacro %} 7 | 8 | {{ 'a' }} 9 | {{ 'a'|upper }} 10 | {{ ('a')|upper }} 11 | {{ -1|upper }} 12 | {{ macros.foo() }} 13 | {{ (macros).foo() }} 14 | --DATA-- 15 | return array(); 16 | --EXPECT-- 17 | a 18 | A 19 | A 20 | -1 21 | foo 22 | foo 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/sameas.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the "same as" operator 3 | --TEMPLATE-- 4 | {{ 1 is same as(1) ? 'OK' }} 5 | {{ 1 is not same as(true) ? 'OK' }} 6 | {{ 1 is same as(1) ? 'OK' }} 7 | {{ 1 is not same as(true) ? 'OK' }} 8 | {{ 1 is same as (1) ? 'OK' }} 9 | {{ 1 is not 10 | same 11 | as 12 | (true) ? 'OK' }} 13 | --DATA-- 14 | return array() 15 | --EXPECT-- 16 | OK 17 | OK 18 | OK 19 | OK 20 | OK 21 | OK 22 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/starts_with.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the "starts with" operator 3 | --TEMPLATE-- 4 | {{ 'foo' starts with 'f' ? 'OK' : 'KO' }} 5 | {{ not ('foo' starts with 'oo') ? 'OK' : 'KO' }} 6 | {{ not ('foo' starts with 'foowaytoolong') ? 'OK' : 'KO' }} 7 | {{ 'foo' starts with 'f' ? 'OK' : 'KO' }} 8 | {{ 'foo' starts 9 | with 'f' ? 'OK' : 'KO' }} 10 | --DATA-- 11 | return array() 12 | --EXPECT-- 13 | OK 14 | OK 15 | OK 16 | OK 17 | OK 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/strings.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports string interpolation 3 | --TEMPLATE-- 4 | {{ "foo #{"foo #{bar} baz"} baz" }} 5 | {{ "foo #{bar}#{bar} baz" }} 6 | --DATA-- 7 | return array('bar' => 'BAR'); 8 | --EXPECT-- 9 | foo foo BAR baz baz 10 | foo BARBAR baz 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the ternary operator 3 | --TEMPLATE-- 4 | {{ 1 ? 'YES' : 'NO' }} 5 | {{ 0 ? 'YES' : 'NO' }} 6 | {{ 0 ? 'YES' : (1 ? 'YES1' : 'NO1') }} 7 | {{ 0 ? 'YES' : (0 ? 'YES1' : 'NO1') }} 8 | {{ 1 == 1 ? 'foo
':'' }} 9 | {{ foo ~ (bar ? ('-' ~ bar) : '') }} 10 | --DATA-- 11 | return array('foo' => 'foo', 'bar' => 'bar') 12 | --EXPECT-- 13 | YES 14 | NO 15 | YES1 16 | NO1 17 | foo
18 | foo-bar 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_noelse.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the ternary operator 3 | --TEMPLATE-- 4 | {{ 1 ? 'YES' }} 5 | {{ 0 ? 'YES' }} 6 | --DATA-- 7 | return array() 8 | --EXPECT-- 9 | YES 10 | 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_nothen.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the ternary operator 3 | --TEMPLATE-- 4 | {{ 'YES' ?: 'NO' }} 5 | {{ 0 ?: 'NO' }} 6 | --DATA-- 7 | return array() 8 | --EXPECT-- 9 | YES 10 | NO 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/two_word_operators_as_variables.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig does not allow to use two-word named operators as variable names 3 | --TEMPLATE-- 4 | {{ starts with }} 5 | --DATA-- 6 | return array() 7 | --EXCEPTION-- 8 | Twig_Error_Syntax: Unexpected token "operator" of value "starts with" in "index.twig" at line 2 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports unary operators (not, -, +) 3 | --TEMPLATE-- 4 | {{ not 1 }}/{{ not 0 }} 5 | {{ +1 + 1 }}/{{ -1 - 1 }} 6 | {{ not (false or true) }} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | /1 11 | 2/-2 12 | 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_precedence.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig unary operators precedence 3 | --TEMPLATE-- 4 | {{ -1 - 1 }} 5 | {{ -1 - -1 }} 6 | {{ -1 * -1 }} 7 | {{ 4 / -1 * 5 }} 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | -2 12 | 0 13 | 1 14 | -20 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/abs.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "abs" filter 3 | --TEMPLATE-- 4 | {{ (-5.5)|abs }} 5 | {{ (-5)|abs }} 6 | {{ (-0)|abs }} 7 | {{ 0|abs }} 8 | {{ 5|abs }} 9 | {{ 5.5|abs }} 10 | {{ number1|abs }} 11 | {{ number2|abs }} 12 | {{ number3|abs }} 13 | {{ number4|abs }} 14 | {{ number5|abs }} 15 | {{ number6|abs }} 16 | --DATA-- 17 | return array('number1' => -5.5, 'number2' => -5, 'number3' => -0, 'number4' => 0, 'number5' => 5, 'number6' => 5.5) 18 | --EXPECT-- 19 | 5.5 20 | 5 21 | 0 22 | 0 23 | 5 24 | 5.5 25 | 5.5 26 | 5 27 | 0 28 | 0 29 | 5 30 | 5.5 31 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_float.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "batch" filter 3 | --TEMPLATE-- 4 | {% for row in items|batch(3.1) %} 5 |
6 | {% for column in row %} 7 |
{{ column }}
8 | {% endfor %} 9 |
10 | {% endfor %} 11 | --DATA-- 12 | return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j')) 13 | --EXPECT-- 14 |
15 |
a
16 |
b
17 |
c
18 |
d
19 |
20 |
21 |
e
22 |
f
23 |
g
24 |
h
25 |
26 |
27 |
i
28 |
j
29 |
30 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_empty_fill.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "batch" filter 3 | --TEMPLATE-- 4 | 5 | {% for row in items|batch(3, '') %} 6 | 7 | {% for column in row %} 8 | 9 | {% endfor %} 10 | 11 | {% endfor %} 12 |
{{ column }}
13 | --DATA-- 14 | return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j')) 15 | --EXPECT-- 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 |
abc
def
ghi
j
38 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_fill.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "batch" filter 3 | --TEMPLATE-- 4 | 5 | {% for row in items|batch(3, 'fill') %} 6 | 7 | {% for column in row %} 8 | 9 | {% endfor %} 10 | 11 | {% endfor %} 12 |
{{ column }}
13 | --DATA-- 14 | return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j')) 15 | --EXPECT-- 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 |
abc
def
ghi
jfillfill
38 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/convert_encoding.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "convert_encoding" filter 3 | --CONDITION-- 4 | function_exists('iconv') || function_exists('mb_convert_encoding') 5 | --TEMPLATE-- 6 | {{ "愛していますか?"|convert_encoding('ISO-2022-JP', 'UTF-8')|convert_encoding('UTF-8', 'ISO-2022-JP') }} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | 愛していますか? 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "date" filter 3 | --TEMPLATE-- 4 | {{ date1|date }} 5 | {{ date1|date('d/m/Y') }} 6 | --DATA-- 7 | date_default_timezone_set('UTC'); 8 | $twig->getExtension('core')->setDateFormat('Y-m-d', '%d days %h hours'); 9 | return array( 10 | 'date1' => mktime(13, 45, 0, 10, 4, 2010), 11 | ) 12 | --EXPECT-- 13 | 2010-10-04 14 | 04/10/2010 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format_interval.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "date" filter (interval support as of PHP 5.3) 3 | --CONDITION-- 4 | version_compare(phpversion(), '5.3.0', '>=') 5 | --TEMPLATE-- 6 | {{ date2|date }} 7 | {{ date2|date('%d days') }} 8 | --DATA-- 9 | date_default_timezone_set('UTC'); 10 | $twig->getExtension('core')->setDateFormat('Y-m-d', '%d days %h hours'); 11 | return array( 12 | 'date2' => new DateInterval('P2D'), 13 | ) 14 | --EXPECT-- 15 | 2 days 0 hours 16 | 2 days 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_interval.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "date" filter (interval support as of PHP 5.3) 3 | --CONDITION-- 4 | version_compare(phpversion(), '5.3.0', '>=') 5 | --TEMPLATE-- 6 | {{ date1|date }} 7 | {{ date1|date('%d days %h hours') }} 8 | {{ date1|date('%d days %h hours', timezone1) }} 9 | --DATA-- 10 | date_default_timezone_set('UTC'); 11 | return array( 12 | 'date1' => new DateInterval('P2D'), 13 | // This should have no effect on DateInterval formatting 14 | 'timezone1' => new DateTimeZone('America/New_York'), 15 | ) 16 | --EXPECT-- 17 | 2 days 18 | 2 days 0 hours 19 | 2 days 0 hours 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_modify.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "date_modify" filter 3 | --TEMPLATE-- 4 | {{ date1|date_modify('-1day')|date('Y-m-d H:i:s') }} 5 | {{ date2|date_modify('-1day')|date('Y-m-d H:i:s') }} 6 | --DATA-- 7 | date_default_timezone_set('UTC'); 8 | return array( 9 | 'date1' => '2010-10-04 13:45', 10 | 'date2' => new DateTime('2010-10-04 13:45'), 11 | ) 12 | --EXPECT-- 13 | 2010-10-03 13:45:00 14 | 2010-10-03 13:45:00 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_namedargs.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "date" filter 3 | --TEMPLATE-- 4 | {{ date|date(format='d/m/Y H:i:s P', timezone='America/Chicago') }} 5 | {{ date|date(timezone='America/Chicago', format='d/m/Y H:i:s P') }} 6 | {{ date|date('d/m/Y H:i:s P', timezone='America/Chicago') }} 7 | --DATA-- 8 | date_default_timezone_set('UTC'); 9 | return array('date' => mktime(13, 45, 0, 10, 4, 2010)) 10 | --EXPECT-- 11 | 04/10/2010 08:45:00 -05:00 12 | 04/10/2010 08:45:00 -05:00 13 | 04/10/2010 08:45:00 -05:00 14 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/dynamic_filter.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | dynamic filter 3 | --TEMPLATE-- 4 | {{ 'bar'|foo_path }} 5 | {{ 'bar'|a_foo_b_bar }} 6 | --DATA-- 7 | return array() 8 | --EXPECT-- 9 | foo/bar 10 | a/b/bar 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "escape" filter 3 | --TEMPLATE-- 4 | {{ "foo
"|e }} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | foo <br /> 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_html_attr.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "escape" filter does not escape with the html strategy when using the html_attr strategy 3 | --TEMPLATE-- 4 | {{ '
'|escape('html_attr') }} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | <br /> 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_non_supported_charset.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "escape" filter 3 | --TEMPLATE-- 4 | {{ "愛していますか?
"|e }} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | 愛していますか? <br /> 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/first.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "first" filter 3 | --TEMPLATE-- 4 | {{ [1, 2, 3, 4]|first }} 5 | {{ {a: 1, b: 2, c: 3, d: 4}|first }} 6 | {{ '1234'|first }} 7 | {{ arr|first }} 8 | {{ 'Ä€é'|first }} 9 | {{ ''|first }} 10 | --DATA-- 11 | return array('arr' => new ArrayObject(array(1, 2, 3, 4))) 12 | --EXPECT-- 13 | 1 14 | 1 15 | 1 16 | 1 17 | Ä 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/force_escape.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "escape" filter 3 | --TEMPLATE-- 4 | {% set foo %} 5 | foo
6 | {% endset %} 7 | 8 | {{ foo|e('html') -}} 9 | {{ foo|e('js') }} 10 | {% autoescape true %} 11 | {{ foo }} 12 | {% endautoescape %} 13 | --DATA-- 14 | return array() 15 | --EXPECT-- 16 | foo<br /> 17 | \x20\x20\x20\x20foo\x3Cbr\x20\x2F\x3E\x0A 18 | foo
19 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/format.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "format" filter 3 | --TEMPLATE-- 4 | {{ string|format(foo, 3) }} 5 | --DATA-- 6 | return array('string' => '%s/%d', 'foo' => 'bar') 7 | --EXPECT-- 8 | bar/3 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/join.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "join" filter 3 | --TEMPLATE-- 4 | {{ ["foo", "bar"]|join(', ') }} 5 | {{ foo|join(', ') }} 6 | {{ bar|join(', ') }} 7 | --DATA-- 8 | return array('foo' => new TwigTestFoo(), 'bar' => new ArrayObject(array(3, 4))) 9 | --EXPECT-- 10 | foo, bar 11 | 1, 2 12 | 3, 4 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/json_encode.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "json_encode" filter 3 | --TEMPLATE-- 4 | {{ "foo"|json_encode|raw }} 5 | {{ foo|json_encode|raw }} 6 | {{ [foo, "foo"]|json_encode|raw }} 7 | --DATA-- 8 | return array('foo' => new Twig_Markup('foo', 'UTF-8')) 9 | --EXPECT-- 10 | "foo" 11 | "foo" 12 | ["foo","foo"] 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/last.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "last" filter 3 | --TEMPLATE-- 4 | {{ [1, 2, 3, 4]|last }} 5 | {{ {a: 1, b: 2, c: 3, d: 4}|last }} 6 | {{ '1234'|last }} 7 | {{ arr|last }} 8 | {{ 'Ä€é'|last }} 9 | {{ ''|last }} 10 | --DATA-- 11 | return array('arr' => new ArrayObject(array(1, 2, 3, 4))) 12 | --EXPECT-- 13 | 4 14 | 4 15 | 4 16 | 4 17 | é 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "length" filter 3 | --TEMPLATE-- 4 | {{ array|length }} 5 | {{ string|length }} 6 | {{ number|length }} 7 | {{ markup|length }} 8 | --DATA-- 9 | return array('array' => array(1, 4), 'string' => 'foo', 'number' => 1000, 'markup' => new Twig_Markup('foo', 'UTF-8')) 10 | --EXPECT-- 11 | 2 12 | 3 13 | 4 14 | 3 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length_utf8.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "length" filter 3 | --CONDITION-- 4 | function_exists('mb_get_info') 5 | --TEMPLATE-- 6 | {{ string|length }} 7 | {{ markup|length }} 8 | --DATA-- 9 | return array('string' => 'été', 'markup' => new Twig_Markup('foo', 'UTF-8')) 10 | --EXPECT-- 11 | 3 12 | 3 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/merge.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "merge" filter 3 | --TEMPLATE-- 4 | {{ items|merge({'bar': 'foo'})|join }} 5 | {{ items|merge({'bar': 'foo'})|keys|join }} 6 | {{ {'bar': 'foo'}|merge(items)|join }} 7 | {{ {'bar': 'foo'}|merge(items)|keys|join }} 8 | {{ numerics|merge([4, 5, 6])|join }} 9 | --DATA-- 10 | return array('items' => array('foo' => 'bar'), 'numerics' => array(1, 2, 3)) 11 | --EXPECT-- 12 | barfoo 13 | foobar 14 | foobar 15 | barfoo 16 | 123456 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/nl2br.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "nl2br" filter 3 | --TEMPLATE-- 4 | {{ "I like Twig.\nYou will like it too.\n\nEverybody like it!"|nl2br }} 5 | {{ text|nl2br }} 6 | --DATA-- 7 | return array('text' => "If you have some HTML\nit will be escaped.") 8 | --EXPECT-- 9 | I like Twig.
10 | You will like it too.
11 |
12 | Everybody like it! 13 | If you have some <strong>HTML</strong>
14 | it will be escaped. 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "number_format" filter 3 | --TEMPLATE-- 4 | {{ 20|number_format }} 5 | {{ 20.25|number_format }} 6 | {{ 20.25|number_format(2) }} 7 | {{ 20.25|number_format(2, ',') }} 8 | {{ 1020.25|number_format(2, ',') }} 9 | {{ 1020.25|number_format(2, ',', '.') }} 10 | --DATA-- 11 | return array(); 12 | --EXPECT-- 13 | 20 14 | 20 15 | 20.25 16 | 20,25 17 | 1,020,25 18 | 1.020,25 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format_default.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "number_format" filter with defaults. 3 | --TEMPLATE-- 4 | {{ 20|number_format }} 5 | {{ 20.25|number_format }} 6 | {{ 20.25|number_format(1) }} 7 | {{ 20.25|number_format(2, ',') }} 8 | {{ 1020.25|number_format }} 9 | {{ 1020.25|number_format(2, ',') }} 10 | {{ 1020.25|number_format(2, ',', '.') }} 11 | --DATA-- 12 | $twig->getExtension('core')->setNumberFormat(2, '!', '='); 13 | return array(); 14 | --EXPECT-- 15 | 20!00 16 | 20!25 17 | 20!3 18 | 20,25 19 | 1=020!25 20 | 1=020,25 21 | 1.020,25 22 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/replace.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "replace" filter 3 | --TEMPLATE-- 4 | {{ "I like %this% and %that%."|replace({'%this%': "foo", '%that%': "bar"}) }} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | I like foo and bar. 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/reverse.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "reverse" filter 3 | --TEMPLATE-- 4 | {{ [1, 2, 3, 4]|reverse|join('') }} 5 | {{ '1234évènement'|reverse }} 6 | {{ arr|reverse|join('') }} 7 | {{ {'a': 'c', 'b': 'a'}|reverse()|join(',') }} 8 | {{ {'a': 'c', 'b': 'a'}|reverse(preserveKeys=true)|join(glue=',') }} 9 | {{ {'a': 'c', 'b': 'a'}|reverse(preserve_keys=true)|join(glue=',') }} 10 | --DATA-- 11 | return array('arr' => new ArrayObject(array(1, 2, 3, 4))) 12 | --EXPECT-- 13 | 4321 14 | tnemenèvé4321 15 | 4321 16 | a,c 17 | a,c 18 | a,c 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/round.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "round" filter 3 | --TEMPLATE-- 4 | {{ 2.7|round }} 5 | {{ 2.1|round }} 6 | {{ 2.1234|round(3, 'floor') }} 7 | {{ 2.1|round(0, 'ceil') }} 8 | 9 | {{ 21.3|round(-1)}} 10 | {{ 21.3|round(-1, 'ceil')}} 11 | {{ 21.3|round(-1, 'floor')}} 12 | --DATA-- 13 | return array() 14 | --EXPECT-- 15 | 3 16 | 2 17 | 2.123 18 | 3 19 | 20 | 20 21 | 30 22 | 20 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/sort.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "sort" filter 3 | --TEMPLATE-- 4 | {{ array1|sort|join }} 5 | {{ array2|sort|join }} 6 | --DATA-- 7 | return array('array1' => array(4, 1), 'array2' => array('foo', 'bar')) 8 | --EXPECT-- 9 | 14 10 | barfoo 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/special_chars.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "§" custom filter 3 | --TEMPLATE-- 4 | {{ 'foo'|§ }} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | §foo§ 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "split" filter 3 | --TEMPLATE-- 4 | {{ "one,two,three,four,five"|split(',')|join('-') }} 5 | {{ foo|split(',')|join('-') }} 6 | {{ foo|split(',', 3)|join('-') }} 7 | {{ baz|split('')|join('-') }} 8 | {{ baz|split('', 2)|join('-') }} 9 | {{ foo|split(',', -2)|join('-') }} 10 | --DATA-- 11 | return array('foo' => "one,two,three,four,five", 'baz' => '12345',) 12 | --EXPECT-- 13 | one-two-three-four-five 14 | one-two-three-four-five 15 | one-two-three,four,five 16 | 1-2-3-4-5 17 | 12-34-5 18 | one-two-three -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/trim.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "trim" filter 3 | --TEMPLATE-- 4 | {{ " I like Twig. "|trim }} 5 | {{ text|trim }} 6 | {{ " foo/"|trim("/") }} 7 | --DATA-- 8 | return array('text' => " If you have some HTML it will be escaped. ") 9 | --EXPECT-- 10 | I like Twig. 11 | If you have some <strong>HTML</strong> it will be escaped. 12 | foo 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "url_encode" filter 3 | --CONDITION-- 4 | defined('PHP_QUERY_RFC3986') 5 | --TEMPLATE-- 6 | {{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode }} 7 | {{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode|raw }} 8 | {{ {}|url_encode|default("default") }} 9 | {{ 'spéßi%le%c0d@dspa ce'|url_encode }} 10 | --DATA-- 11 | return array() 12 | --EXPECT-- 13 | foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce= 14 | foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce= 15 | default 16 | sp%C3%A9%C3%9Fi%25le%25c0d%40dspa%20ce 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode_deprecated.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "url_encode" filter for PHP < 5.4 and HHVM 3 | --CONDITION-- 4 | defined('PHP_QUERY_RFC3986') 5 | --TEMPLATE-- 6 | {{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode }} 7 | {{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode|raw }} 8 | {{ {}|url_encode|default("default") }} 9 | {{ 'spéßi%le%c0d@dspa ce'|url_encode }} 10 | --DATA-- 11 | return array() 12 | --EXPECT-- 13 | foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce= 14 | foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce= 15 | default 16 | sp%C3%A9%C3%9Fi%25le%25c0d%40dspa%20ce 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/attribute.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "attribute" function 3 | --TEMPLATE-- 4 | {{ attribute(obj, method) }} 5 | {{ attribute(array, item) }} 6 | {{ attribute(obj, "bar", ["a", "b"]) }} 7 | {{ attribute(obj, method) is defined ? 'ok' : 'ko' }} 8 | {{ attribute(obj, nonmethod) is defined ? 'ok' : 'ko' }} 9 | --DATA-- 10 | return array('obj' => new TwigTestFoo(), 'method' => 'foo', 'array' => array('foo' => 'bar'), 'item' => 'foo', 'nonmethod' => 'xxx') 11 | --EXPECT-- 12 | foo 13 | bar 14 | bar_a-b 15 | ok 16 | ko 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/block.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "block" function 3 | --TEMPLATE-- 4 | {% extends 'base.twig' %} 5 | {% block bar %}BAR{% endblock %} 6 | --TEMPLATE(base.twig)-- 7 | {% block foo %}{{ block('bar') }}{% endblock %} 8 | {% block bar %}BAR_BASE{% endblock %} 9 | --DATA-- 10 | return array() 11 | --EXPECT-- 12 | BARBAR 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/constant.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "constant" function 3 | --TEMPLATE-- 4 | {{ constant('DATE_W3C') == expect ? 'true' : 'false' }} 5 | {{ constant('ARRAY_AS_PROPS', object) }} 6 | --DATA-- 7 | return array('expect' => DATE_W3C, 'object' => new ArrayObject(array('hi'))); 8 | --EXPECT-- 9 | true 10 | 2 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/cycle.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "cycle" function 3 | --TEMPLATE-- 4 | {% for i in 0..6 %} 5 | {{ cycle(array1, i) }}-{{ cycle(array2, i) }} 6 | {% endfor %} 7 | --DATA-- 8 | return array('array1' => array('odd', 'even'), 'array2' => array('apple', 'orange', 'citrus')) 9 | --EXPECT-- 10 | odd-apple 11 | even-orange 12 | odd-citrus 13 | even-apple 14 | odd-orange 15 | even-citrus 16 | odd-apple 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/date_namedargs.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "date" function 3 | --TEMPLATE-- 4 | {{ date(date, "America/New_York")|date('d/m/Y H:i:s P', false) }} 5 | {{ date(timezone="America/New_York", date=date)|date('d/m/Y H:i:s P', false) }} 6 | --DATA-- 7 | date_default_timezone_set('UTC'); 8 | return array('date' => mktime(13, 45, 0, 10, 4, 2010)) 9 | --EXPECT-- 10 | 04/10/2010 09:45:00 -04:00 11 | 04/10/2010 09:45:00 -04:00 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "dump" function 3 | --CONDITION-- 4 | !extension_loaded('xdebug') 5 | --TEMPLATE-- 6 | {{ dump('foo') }} 7 | {{ dump('foo', 'bar') }} 8 | --DATA-- 9 | return array('foo' => 'foo', 'bar' => 'bar') 10 | --CONFIG-- 11 | return array('debug' => true, 'autoescape' => false); 12 | --EXPECT-- 13 | string(3) "foo" 14 | 15 | string(3) "foo" 16 | string(3) "bar" 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump_array.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "dump" function, xdebug is not loaded or xdebug <2.2-dev is loaded 3 | --CONDITION-- 4 | !extension_loaded('xdebug') || (($r = new ReflectionExtension('xdebug')) && version_compare($r->getVersion(), '2.2-dev', '<')) 5 | --TEMPLATE-- 6 | {{ dump() }} 7 | --DATA-- 8 | return array('foo' => 'foo', 'bar' => 'bar') 9 | --CONFIG-- 10 | return array('debug' => true, 'autoescape' => false); 11 | --EXPECT-- 12 | array(3) { 13 | ["foo"]=> 14 | string(3) "foo" 15 | ["bar"]=> 16 | string(3) "bar" 17 | ["global"]=> 18 | string(6) "global" 19 | } 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dynamic_function.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | dynamic function 3 | --TEMPLATE-- 4 | {{ foo_path('bar') }} 5 | {{ a_foo_b_bar('bar') }} 6 | --DATA-- 7 | return array() 8 | --EXPECT-- 9 | foo/bar 10 | a/b/bar 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/assignment.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function 3 | --TEMPLATE-- 4 | {% set tmp = include("foo.twig") %} 5 | 6 | FOO{{ tmp }}BAR 7 | --TEMPLATE(foo.twig)-- 8 | FOOBAR 9 | --DATA-- 10 | return array() 11 | --EXPECT-- 12 | FOO 13 | FOOBARBAR 14 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/autoescaping.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function is safe for auto-escaping 3 | --TEMPLATE-- 4 | {{ include("foo.twig") }} 5 | --TEMPLATE(foo.twig)-- 6 |

Test

7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 |

Test

11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function 3 | --TEMPLATE-- 4 | FOO 5 | {{ include("foo.twig") }} 6 | 7 | BAR 8 | --TEMPLATE(foo.twig)-- 9 | FOOBAR 10 | --DATA-- 11 | return array() 12 | --EXPECT-- 13 | FOO 14 | 15 | FOOBAR 16 | 17 | BAR 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/expression.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function allows expressions for the template to include 3 | --TEMPLATE-- 4 | FOO 5 | {{ include(foo) }} 6 | 7 | BAR 8 | --TEMPLATE(foo.twig)-- 9 | FOOBAR 10 | --DATA-- 11 | return array('foo' => 'foo.twig') 12 | --EXPECT-- 13 | FOO 14 | 15 | FOOBAR 16 | 17 | BAR 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/ignore_missing.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function 3 | --TEMPLATE-- 4 | {{ include(["foo.twig", "bar.twig"], ignore_missing = true) }} 5 | {{ include("foo.twig", ignore_missing = true) }} 6 | {{ include("foo.twig", ignore_missing = true, variables = {}) }} 7 | {{ include("foo.twig", ignore_missing = true, variables = {}, with_context = true) }} 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function 3 | --TEMPLATE-- 4 | {{ include("foo.twig") }} 5 | --DATA-- 6 | return array(); 7 | --EXCEPTION-- 8 | Twig_Error_Loader: Template "foo.twig" is not defined in "index.twig" at line 2. 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing_nested.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function 3 | --TEMPLATE-- 4 | {% extends "base.twig" %} 5 | 6 | {% block content %} 7 | {{ parent() }} 8 | {% endblock %} 9 | --TEMPLATE(base.twig)-- 10 | {% block content %} 11 | {{ include("foo.twig") }} 12 | {% endblock %} 13 | --DATA-- 14 | return array(); 15 | --EXCEPTION-- 16 | Twig_Error_Loader: Template "foo.twig" is not defined in "base.twig" at line 3. 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag sandboxed 3 | --TEMPLATE-- 4 | {{ include("foo.twig", sandboxed = true) }} 5 | --TEMPLATE(foo.twig)-- 6 | {{ foo|e }} 7 | --DATA-- 8 | return array() 9 | --EXCEPTION-- 10 | Twig_Sandbox_SecurityError: Filter "e" is not allowed in "index.twig" at line 2. 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/template_instance.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function accepts Twig_Template instance 3 | --TEMPLATE-- 4 | {{ include(foo) }} FOO 5 | --TEMPLATE(foo.twig)-- 6 | BAR 7 | --DATA-- 8 | return array('foo' => $twig->loadTemplate('foo.twig')) 9 | --EXPECT-- 10 | BAR FOO 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/templates_as_array.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function 3 | --TEMPLATE-- 4 | {{ include(["foo.twig", "bar.twig"]) }} 5 | {{- include(["bar.twig", "foo.twig"]) }} 6 | --TEMPLATE(foo.twig)-- 7 | foo 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | foo 12 | foo 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_context.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function accept variables and with_context 3 | --TEMPLATE-- 4 | {{ include("foo.twig") }} 5 | {{- include("foo.twig", with_context = false) }} 6 | {{- include("foo.twig", {'foo1': 'bar'}) }} 7 | {{- include("foo.twig", {'foo1': 'bar'}, with_context = false) }} 8 | --TEMPLATE(foo.twig)-- 9 | {% for k, v in _context %}{{ k }},{% endfor %} 10 | --DATA-- 11 | return array('foo' => 'bar') 12 | --EXPECT-- 13 | foo,global,_parent, 14 | global,_parent, 15 | foo,global,foo1,_parent, 16 | foo1,global,_parent, 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_variables.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" function accept variables 3 | --TEMPLATE-- 4 | {{ include("foo.twig", {'foo': 'bar'}) }} 5 | {{- include("foo.twig", vars) }} 6 | --TEMPLATE(foo.twig)-- 7 | {{ foo }} 8 | --DATA-- 9 | return array('vars' => array('foo' => 'bar')) 10 | --EXPECT-- 11 | bar 12 | bar 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/max.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "max" function 3 | --TEMPLATE-- 4 | {{ max([2, 1, 3, 5, 4]) }} 5 | {{ max(2, 1, 3, 5, 4) }} 6 | {{ max({2:"two", 1:"one", 3:"three", 5:"five", 4:"for"}) }} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | 5 11 | 5 12 | two 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/min.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "min" function 3 | --TEMPLATE-- 4 | {{ min(2, 1, 3, 5, 4) }} 5 | {{ min([2, 1, 3, 5, 4]) }} 6 | {{ min({2:"two", 1:"one", 3:"three", 5:"five", 4:"for"}) }} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | 1 11 | 1 12 | five 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/range.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "range" function 3 | --TEMPLATE-- 4 | {{ range(low=0+1, high=10+0, step=2)|join(',') }} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | 1,3,5,7,9 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/source.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "source" function 3 | --TEMPLATE-- 4 | FOO 5 | {{ source("foo.twig") }} 6 | 7 | BAR 8 | --TEMPLATE(foo.twig)-- 9 | {{ foo }}
10 | --DATA-- 11 | return array() 12 | --EXPECT-- 13 | FOO 14 | 15 | {{ foo }}
16 | 17 | BAR 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/special_chars.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "§" custom function 3 | --TEMPLATE-- 4 | {{ §('foo') }} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | §foo§ 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/functions/template_from_string.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "template_from_string" function 3 | --TEMPLATE-- 4 | {% include template_from_string(template) %} 5 | 6 | {% include template_from_string("Hello {{ name }}") %} 7 | {% include template_from_string('{% extends "parent.twig" %}{% block content %}Hello {{ name }}{% endblock %}') %} 8 | --TEMPLATE(parent.twig)-- 9 | {% block content %}{% endblock %} 10 | --DATA-- 11 | return array('name' => 'Fabien', 'template' => "Hello {{ name }}") 12 | --EXPECT-- 13 | Hello Fabien 14 | Hello Fabien 15 | Hello Fabien 16 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/macros/default_values.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | macro 3 | --TEMPLATE-- 4 | {% from _self import test %} 5 | 6 | {% macro test(a, b = 'bar') -%} 7 | {{ a }}{{ b }} 8 | {%- endmacro %} 9 | 10 | {{ test('foo') }} 11 | {{ test('bar', 'foo') }} 12 | --DATA-- 13 | return array(); 14 | --EXPECT-- 15 | foobar 16 | barfoo 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/macros/nested_calls.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | macro 3 | --TEMPLATE-- 4 | {% import _self as macros %} 5 | 6 | {% macro foo(data) %} 7 | {{ data }} 8 | {% endmacro %} 9 | 10 | {% macro bar() %} 11 |
12 | {% endmacro %} 13 | 14 | {{ macros.foo(macros.bar()) }} 15 | --DATA-- 16 | return array(); 17 | --EXPECT-- 18 |
19 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/macros/reserved_variables.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | macro 3 | --TEMPLATE-- 4 | {% from _self import test %} 5 | 6 | {% macro test(this) -%} 7 | {{ this }} 8 | {%- endmacro %} 9 | 10 | {{ test(this) }} 11 | --DATA-- 12 | return array('this' => 'foo'); 13 | --EXPECT-- 14 | foo 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/macros/simple.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | macro 3 | --TEMPLATE-- 4 | {% import _self as test %} 5 | {% from _self import test %} 6 | 7 | {% macro test(a, b) -%} 8 | {{ a|default('a') }}
9 | {{- b|default('b') }}
10 | {%- endmacro %} 11 | 12 | {{ test.test() }} 13 | {{ test() }} 14 | {{ test.test(1, "c") }} 15 | {{ test(1, "c") }} 16 | --DATA-- 17 | return array(); 18 | --EXPECT-- 19 | a
b
20 | a
b
21 | 1
c
22 | 1
c
23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/macros/with_filters.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | macro with a filter 3 | --TEMPLATE-- 4 | {% import _self as test %} 5 | 6 | {% macro test() %} 7 | {% filter escape %}foo
{% endfilter %} 8 | {% endmacro %} 9 | 10 | {{ test.test() }} 11 | --DATA-- 12 | return array(); 13 | --EXPECT-- 14 | foo<br /> 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/regression/empty_token.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig outputs 0 nodes correctly 3 | --TEMPLATE-- 4 | {{ foo }}0{{ foo }} 5 | --DATA-- 6 | return array('foo' => 'foo') 7 | --EXPECT-- 8 | foo0foo 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/regression/issue_1143.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | error in twig extension 3 | --TEMPLATE-- 4 | {{ object.region is not null ? object.regionChoices[object.region] }} 5 | --DATA-- 6 | class House 7 | { 8 | const REGION_S = 1; 9 | const REGION_P = 2; 10 | 11 | public static $regionChoices = array(self::REGION_S => 'house.region.s', self::REGION_P => 'house.region.p'); 12 | 13 | public function getRegionChoices() 14 | { 15 | return self::$regionChoices; 16 | } 17 | } 18 | 19 | $object = new House(); 20 | $object->region = 1; 21 | return array('object' => $object) 22 | --EXPECT-- 23 | house.region.s 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/regression/simple_xml_element.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig is able to deal with SimpleXMLElement instances as variables 3 | --CONDITION-- 4 | version_compare(phpversion(), '5.3.0', '>=') 5 | --TEMPLATE-- 6 | Hello '{{ images.image.0.group }}'! 7 | {{ images.image.0.group.attributes.myattr }} 8 | {{ images.children().image.count() }} 9 | {% for image in images %} 10 | - {{ image.group }} 11 | {% endfor %} 12 | --DATA-- 13 | return array('images' => new SimpleXMLElement('foobar')) 14 | --EXPECT-- 15 | Hello 'foo'! 16 | example 17 | 2 18 | - foo 19 | - bar 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/regression/strings_like_numbers.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig does not confuse strings with integers in getAttribute() 3 | --TEMPLATE-- 4 | {{ hash['2e2'] }} 5 | --DATA-- 6 | return array('hash' => array('2e2' => 'works')) 7 | --EXPECT-- 8 | works 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "autoescape" tag applies escaping on its children 3 | --TEMPLATE-- 4 | {% autoescape %} 5 | {{ var }}
6 | {% endautoescape %} 7 | {% autoescape 'html' %} 8 | {{ var }}
9 | {% endautoescape %} 10 | {% autoescape false %} 11 | {{ var }}
12 | {% endautoescape %} 13 | {% autoescape true %} 14 | {{ var }}
15 | {% endautoescape %} 16 | {% autoescape false %} 17 | {{ var }}
18 | {% endautoescape %} 19 | --DATA-- 20 | return array('var' => '
') 21 | --EXPECT-- 22 | <br />
23 | <br />
24 |

25 | <br />
26 |

27 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/blocks.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "autoescape" tag applies escaping on embedded blocks 3 | --TEMPLATE-- 4 | {% autoescape 'html' %} 5 | {% block foo %} 6 | {{ var }} 7 | {% endblock %} 8 | {% endautoescape %} 9 | --DATA-- 10 | return array('var' => '
') 11 | --EXPECT-- 12 | <br /> 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/double_escaping.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "autoescape" tag does not double-escape 3 | --TEMPLATE-- 4 | {% autoescape 'html' %} 5 | {{ var|escape }} 6 | {% endautoescape %} 7 | --DATA-- 8 | return array('var' => '
') 9 | --EXPECT-- 10 | <br /> 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/nested.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "autoescape" tags can be nested at will 3 | --TEMPLATE-- 4 | {{ var }} 5 | {% autoescape 'html' %} 6 | {{ var }} 7 | {% autoescape false %} 8 | {{ var }} 9 | {% autoescape 'html' %} 10 | {{ var }} 11 | {% endautoescape %} 12 | {{ var }} 13 | {% endautoescape %} 14 | {{ var }} 15 | {% endautoescape %} 16 | {{ var }} 17 | --DATA-- 18 | return array('var' => '
') 19 | --EXPECT-- 20 | <br /> 21 | <br /> 22 |
23 | <br /> 24 |
25 | <br /> 26 | <br /> 27 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/objects.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "autoescape" tag applies escaping to object method calls 3 | --TEMPLATE-- 4 | {% autoescape 'html' %} 5 | {{ user.name }} 6 | {{ user.name|lower }} 7 | {{ user }} 8 | {% endautoescape %} 9 | --DATA-- 10 | class UserForAutoEscapeTest 11 | { 12 | public function getName() 13 | { 14 | return 'Fabien
'; 15 | } 16 | 17 | public function __toString() 18 | { 19 | return 'Fabien
'; 20 | } 21 | } 22 | return array('user' => new UserForAutoEscapeTest()) 23 | --EXPECT-- 24 | Fabien<br /> 25 | fabien<br /> 26 | Fabien<br /> 27 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/raw.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "autoescape" tag does not escape when raw is used as a filter 3 | --TEMPLATE-- 4 | {% autoescape 'html' %} 5 | {{ var|raw }} 6 | {% endautoescape %} 7 | --DATA-- 8 | return array('var' => '
') 9 | --EXPECT-- 10 |
11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/strategy.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "autoescape" tag accepts an escaping strategy 3 | --TEMPLATE-- 4 | {% autoescape true js %}{{ var }}{% endautoescape %} 5 | 6 | {% autoescape true html %}{{ var }}{% endautoescape %} 7 | 8 | {% autoescape 'js' %}{{ var }}{% endautoescape %} 9 | 10 | {% autoescape 'html' %}{{ var }}{% endautoescape %} 11 | --DATA-- 12 | return array('var' => '
"') 13 | --EXPECT-- 14 | \x3Cbr\x20\x2F\x3E\x22 15 | <br />" 16 | \x3Cbr\x20\x2F\x3E\x22 17 | <br />" 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_filters_arguments.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "autoescape" tag do not applies escaping on filter arguments 3 | --TEMPLATE-- 4 | {% autoescape 'html' %} 5 | {{ var|nl2br("
") }} 6 | {{ var|nl2br("
"|escape) }} 7 | {{ var|nl2br(sep) }} 8 | {{ var|nl2br(sep|raw) }} 9 | {{ var|nl2br(sep|escape) }} 10 | {% endautoescape %} 11 | --DATA-- 12 | return array('var' => "\nTwig", 'sep' => '
') 13 | --EXPECT-- 14 | <Fabien>
15 | Twig 16 | <Fabien><br /> 17 | Twig 18 | <Fabien>
19 | Twig 20 | <Fabien>
21 | Twig 22 | <Fabien><br /> 23 | Twig 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "block" tag 3 | --TEMPLATE-- 4 | {% block title1 %}FOO{% endblock %} 5 | {% block title2 foo|lower %} 6 | --TEMPLATE(foo.twig)-- 7 | {% block content %}{% endblock %} 8 | --DATA-- 9 | return array('foo' => 'bar') 10 | --EXPECT-- 11 | FOObar 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/block_unique_name.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "block" tag 3 | --TEMPLATE-- 4 | {% block content %} 5 | {% block content %} 6 | {% endblock %} 7 | {% endblock %} 8 | --DATA-- 9 | return array() 10 | --EXCEPTION-- 11 | Twig_Error_Syntax: The block 'content' has already been defined line 2 in "index.twig" at line 3 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/special_chars.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "§" special chars in a block name 3 | --TEMPLATE-- 4 | {% block § %} 5 | § 6 | {% endblock § %} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | § 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "embed" tag 3 | --TEMPLATE-- 4 | FOO 5 | {% embed "foo.twig" %} 6 | {% block c1 %} 7 | {{ parent() }} 8 | block1extended 9 | {% endblock %} 10 | {% endembed %} 11 | 12 | BAR 13 | --TEMPLATE(foo.twig)-- 14 | A 15 | {% block c1 %} 16 | block1 17 | {% endblock %} 18 | B 19 | {% block c2 %} 20 | block2 21 | {% endblock %} 22 | C 23 | --DATA-- 24 | return array() 25 | --EXPECT-- 26 | FOO 27 | 28 | A 29 | block1 30 | 31 | block1extended 32 | B 33 | block2 34 | C 35 | BAR 36 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/error_line.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "embed" tag 3 | --TEMPLATE(index.twig)-- 4 | FOO 5 | {% embed "foo.twig" %} 6 | {% block c1 %} 7 | {{ nothing }} 8 | {% endblock %} 9 | {% endembed %} 10 | BAR 11 | --TEMPLATE(foo.twig)-- 12 | {% block c1 %}{% endblock %} 13 | --DATA-- 14 | return array() 15 | --EXCEPTION-- 16 | Twig_Error_Runtime: Variable "nothing" does not exist in "index.twig" at line 5 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/multiple.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "embed" tag 3 | --TEMPLATE-- 4 | FOO 5 | {% embed "foo.twig" %} 6 | {% block c1 %} 7 | {{ parent() }} 8 | block1extended 9 | {% endblock %} 10 | {% endembed %} 11 | 12 | {% embed "foo.twig" %} 13 | {% block c1 %} 14 | {{ parent() }} 15 | block1extended 16 | {% endblock %} 17 | {% endembed %} 18 | 19 | BAR 20 | --TEMPLATE(foo.twig)-- 21 | A 22 | {% block c1 %} 23 | block1 24 | {% endblock %} 25 | B 26 | {% block c2 %} 27 | block2 28 | {% endblock %} 29 | C 30 | --DATA-- 31 | return array() 32 | --EXPECT-- 33 | FOO 34 | 35 | A 36 | block1 37 | 38 | block1extended 39 | B 40 | block2 41 | C 42 | 43 | A 44 | block1 45 | 46 | block1extended 47 | B 48 | block2 49 | C 50 | BAR 51 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/nested.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "embed" tag 3 | --TEMPLATE-- 4 | {% embed "foo.twig" %} 5 | {% block c1 %} 6 | {{ parent() }} 7 | {% embed "foo.twig" %} 8 | {% block c1 %} 9 | {{ parent() }} 10 | block1extended 11 | {% endblock %} 12 | {% endembed %} 13 | 14 | {% endblock %} 15 | {% endembed %} 16 | --TEMPLATE(foo.twig)-- 17 | A 18 | {% block c1 %} 19 | block1 20 | {% endblock %} 21 | B 22 | {% block c2 %} 23 | block2 24 | {% endblock %} 25 | C 26 | --DATA-- 27 | return array() 28 | --EXPECT-- 29 | A 30 | block1 31 | 32 | 33 | A 34 | block1 35 | 36 | block1extended 37 | B 38 | block2 39 | C 40 | B 41 | block2 42 | C 43 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "filter" tag applies a filter on its children 3 | --TEMPLATE-- 4 | {% filter upper %} 5 | Some text with a {{ var }} 6 | {% endfilter %} 7 | --DATA-- 8 | return array('var' => 'var') 9 | --EXPECT-- 10 | SOME TEXT WITH A VAR 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/json_encode.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "filter" tag applies a filter on its children 3 | --TEMPLATE-- 4 | {% filter json_encode|raw %}test{% endfilter %} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | "test" 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/multiple.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "filter" tags accept multiple chained filters 3 | --TEMPLATE-- 4 | {% filter lower|title %} 5 | {{ var }} 6 | {% endfilter %} 7 | --DATA-- 8 | return array('var' => 'VAR') 9 | --EXPECT-- 10 | Var 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/nested.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "filter" tags can be nested at will 3 | --TEMPLATE-- 4 | {% filter lower|title %} 5 | {{ var }} 6 | {% filter upper %} 7 | {{ var }} 8 | {% endfilter %} 9 | {{ var }} 10 | {% endfilter %} 11 | --DATA-- 12 | return array('var' => 'var') 13 | --EXPECT-- 14 | Var 15 | Var 16 | Var 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_for_tag.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "filter" tag applies the filter on "for" tags 3 | --TEMPLATE-- 4 | {% filter upper %} 5 | {% for item in items %} 6 | {{ item }} 7 | {% endfor %} 8 | {% endfilter %} 9 | --DATA-- 10 | return array('items' => array('a', 'b')) 11 | --EXPECT-- 12 | A 13 | B 14 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_if_tag.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "filter" tag applies the filter on "if" tags 3 | --TEMPLATE-- 4 | {% filter upper %} 5 | {% if items %} 6 | {{ items|join(', ') }} 7 | {% endif %} 8 | 9 | {% if items.3 is defined %} 10 | FOO 11 | {% else %} 12 | {{ items.1 }} 13 | {% endif %} 14 | 15 | {% if items.3 is defined %} 16 | FOO 17 | {% elseif items.1 %} 18 | {{ items.0 }} 19 | {% endif %} 20 | 21 | {% endfilter %} 22 | --DATA-- 23 | return array('items' => array('a', 'b')) 24 | --EXPECT-- 25 | A, B 26 | 27 | B 28 | 29 | A 30 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/condition.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag takes a condition 3 | --TEMPLATE-- 4 | {% for i in 1..5 if i is odd -%} 5 | {{ loop.index }}.{{ i }}{{ foo.bar }} 6 | {% endfor %} 7 | --DATA-- 8 | return array('foo' => array('bar' => 'X')) 9 | --CONFIG-- 10 | return array('strict_variables' => false) 11 | --EXPECT-- 12 | 1.1X 13 | 2.3X 14 | 3.5X 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/context.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag keeps the context safe 3 | --TEMPLATE-- 4 | {% for item in items %} 5 | {% for item in items %} 6 | * {{ item }} 7 | {% endfor %} 8 | * {{ item }} 9 | {% endfor %} 10 | --DATA-- 11 | return array('items' => array('a', 'b')) 12 | --EXPECT-- 13 | * a 14 | * b 15 | * a 16 | * a 17 | * b 18 | * b 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/else.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag can use an "else" clause 3 | --TEMPLATE-- 4 | {% for item in items %} 5 | * {{ item }} 6 | {% else %} 7 | no item 8 | {% endfor %} 9 | --DATA-- 10 | return array('items' => array('a', 'b')) 11 | --EXPECT-- 12 | * a 13 | * b 14 | --DATA-- 15 | return array('items' => array()) 16 | --EXPECT-- 17 | no item 18 | --DATA-- 19 | return array() 20 | --CONFIG-- 21 | return array('strict_variables' => false) 22 | --EXPECT-- 23 | no item 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/inner_variables.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag does not reset inner variables 3 | --TEMPLATE-- 4 | {% for i in 1..2 %} 5 | {% for j in 0..2 %} 6 | {{k}}{% set k = k+1 %} {{ loop.parent.loop.index }} 7 | {% endfor %} 8 | {% endfor %} 9 | --DATA-- 10 | return array('k' => 0) 11 | --EXPECT-- 12 | 0 1 13 | 1 1 14 | 2 1 15 | 3 2 16 | 4 2 17 | 5 2 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag can iterate over keys 3 | --TEMPLATE-- 4 | {% for key in items|keys %} 5 | * {{ key }} 6 | {% endfor %} 7 | --DATA-- 8 | return array('items' => array('a', 'b')) 9 | --EXPECT-- 10 | * 0 11 | * 1 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys_and_values.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag can iterate over keys and values 3 | --TEMPLATE-- 4 | {% for key, item in items %} 5 | * {{ key }}/{{ item }} 6 | {% endfor %} 7 | --DATA-- 8 | return array('items' => array('a', 'b')) 9 | --EXPECT-- 10 | * 0/a 11 | * 1/b 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag adds a loop variable to the context 3 | --TEMPLATE-- 4 | {% for item in items %} 5 | * {{ loop.index }}/{{ loop.index0 }} 6 | * {{ loop.revindex }}/{{ loop.revindex0 }} 7 | * {{ loop.first }}/{{ loop.last }}/{{ loop.length }} 8 | 9 | {% endfor %} 10 | --DATA-- 11 | return array('items' => array('a', 'b')) 12 | --EXPECT-- 13 | * 1/0 14 | * 2/1 15 | * 1//2 16 | 17 | * 2/1 18 | * 1/0 19 | * /1/2 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context_local.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag adds a loop variable to the context locally 3 | --TEMPLATE-- 4 | {% for item in items %} 5 | {% endfor %} 6 | {% if loop is not defined %}WORKS{% endif %} 7 | --DATA-- 8 | return array('items' => array()) 9 | --EXPECT-- 10 | WORKS 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag 3 | --TEMPLATE-- 4 | {% for i, item in items if i > 0 %} 5 | {{ loop.last }} 6 | {% endfor %} 7 | --DATA-- 8 | return array('items' => array('a', 'b')) 9 | --EXCEPTION-- 10 | Twig_Error_Syntax: The "loop.last" variable is not defined when looping with a condition in "index.twig" at line 3 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined_cond.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag 3 | --TEMPLATE-- 4 | {% for i, item in items if loop.last > 0 %} 5 | {% endfor %} 6 | --DATA-- 7 | return array('items' => array('a', 'b')) 8 | --EXCEPTION-- 9 | Twig_Error_Syntax: The "loop" variable cannot be used in a looping condition in "index.twig" at line 2 10 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/nested_else.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag can use an "else" clause 3 | --TEMPLATE-- 4 | {% for item in items %} 5 | {% for item in items1 %} 6 | * {{ item }} 7 | {% else %} 8 | no {{ item }} 9 | {% endfor %} 10 | {% else %} 11 | no item1 12 | {% endfor %} 13 | --DATA-- 14 | return array('items' => array('a', 'b'), 'items1' => array()) 15 | --EXPECT-- 16 | no a 17 | no b 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/recursive.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tags can be nested 3 | --TEMPLATE-- 4 | {% for key, item in items %} 5 | * {{ key }} ({{ loop.length }}): 6 | {% for value in item %} 7 | * {{ value }} ({{ loop.length }}) 8 | {% endfor %} 9 | {% endfor %} 10 | --DATA-- 11 | return array('items' => array('a' => array('a1', 'a2', 'a3'), 'b' => array('b1'))) 12 | --EXPECT-- 13 | * a (2): 14 | * a1 (3) 15 | * a2 (3) 16 | * a3 (3) 17 | * b (2): 18 | * b1 (1) 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/values.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "for" tag iterates over item values 3 | --TEMPLATE-- 4 | {% for item in items %} 5 | * {{ item }} 6 | {% endfor %} 7 | --DATA-- 8 | return array('items' => array('a', 'b')) 9 | --EXPECT-- 10 | * a 11 | * b 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/from.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | global variables 3 | --TEMPLATE-- 4 | {% include "included.twig" %} 5 | {% from "included.twig" import foobar %} 6 | {{ foobar() }} 7 | --TEMPLATE(included.twig)-- 8 | {% macro foobar() %} 9 | called foobar 10 | {% endmacro %} 11 | --DATA-- 12 | return array(); 13 | --EXPECT-- 14 | called foobar 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "if" creates a condition 3 | --TEMPLATE-- 4 | {% if a is defined %} 5 | {{ a }} 6 | {% elseif b is defined %} 7 | {{ b }} 8 | {% else %} 9 | NOTHING 10 | {% endif %} 11 | --DATA-- 12 | return array('a' => 'a') 13 | --EXPECT-- 14 | a 15 | --DATA-- 16 | return array('b' => 'b') 17 | --EXPECT-- 18 | b 19 | --DATA-- 20 | return array() 21 | --EXPECT-- 22 | NOTHING 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/expression.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "if" takes an expression as a test 3 | --TEMPLATE-- 4 | {% if a < 2 %} 5 | A1 6 | {% elseif a > 10 %} 7 | A2 8 | {% else %} 9 | A3 10 | {% endif %} 11 | --DATA-- 12 | return array('a' => 1) 13 | --EXPECT-- 14 | A1 15 | --DATA-- 16 | return array('a' => 12) 17 | --EXPECT-- 18 | A2 19 | --DATA-- 20 | return array('a' => 7) 21 | --EXPECT-- 22 | A3 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag 3 | --TEMPLATE-- 4 | FOO 5 | {% include "foo.twig" %} 6 | 7 | BAR 8 | --TEMPLATE(foo.twig)-- 9 | FOOBAR 10 | --DATA-- 11 | return array() 12 | --EXPECT-- 13 | FOO 14 | 15 | FOOBAR 16 | BAR 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/expression.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag allows expressions for the template to include 3 | --TEMPLATE-- 4 | FOO 5 | {% include foo %} 6 | 7 | BAR 8 | --TEMPLATE(foo.twig)-- 9 | FOOBAR 10 | --DATA-- 11 | return array('foo' => 'foo.twig') 12 | --EXPECT-- 13 | FOO 14 | 15 | FOOBAR 16 | BAR 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/ignore_missing.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag 3 | --TEMPLATE-- 4 | {% include ["foo.twig", "bar.twig"] ignore missing %} 5 | {% include "foo.twig" ignore missing %} 6 | {% include "foo.twig" ignore missing with {} %} 7 | {% include "foo.twig" ignore missing with {} only %} 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag 3 | --TEMPLATE-- 4 | {% include "foo.twig" %} 5 | --DATA-- 6 | return array(); 7 | --EXCEPTION-- 8 | Twig_Error_Loader: Template "foo.twig" is not defined in "index.twig" at line 2. 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing_nested.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag 3 | --TEMPLATE-- 4 | {% extends "base.twig" %} 5 | 6 | {% block content %} 7 | {{ parent() }} 8 | {% endblock %} 9 | --TEMPLATE(base.twig)-- 10 | {% block content %} 11 | {% include "foo.twig" %} 12 | {% endblock %} 13 | --DATA-- 14 | return array(); 15 | --EXCEPTION-- 16 | Twig_Error_Loader: Template "foo.twig" is not defined in "base.twig" at line 3. 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/only.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag accept variables and only 3 | --TEMPLATE-- 4 | {% include "foo.twig" %} 5 | {% include "foo.twig" only %} 6 | {% include "foo.twig" with {'foo1': 'bar'} %} 7 | {% include "foo.twig" with {'foo1': 'bar'} only %} 8 | --TEMPLATE(foo.twig)-- 9 | {% for k, v in _context %}{{ k }},{% endfor %} 10 | --DATA-- 11 | return array('foo' => 'bar') 12 | --EXPECT-- 13 | foo,global,_parent, 14 | global,_parent, 15 | foo,global,foo1,_parent, 16 | foo1,global,_parent, 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/template_instance.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag accepts Twig_Template instance 3 | --TEMPLATE-- 4 | {% include foo %} FOO 5 | --TEMPLATE(foo.twig)-- 6 | BAR 7 | --DATA-- 8 | return array('foo' => $twig->loadTemplate('foo.twig')) 9 | --EXPECT-- 10 | BAR FOO 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/templates_as_array.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag 3 | --TEMPLATE-- 4 | {% include ["foo.twig", "bar.twig"] %} 5 | {% include ["bar.twig", "foo.twig"] %} 6 | --TEMPLATE(foo.twig)-- 7 | foo 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | foo 12 | foo 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/with_variables.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "include" tag accept variables 3 | --TEMPLATE-- 4 | {% include "foo.twig" with {'foo': 'bar'} %} 5 | {% include "foo.twig" with vars %} 6 | --TEMPLATE(foo.twig)-- 7 | {{ foo }} 8 | --DATA-- 9 | return array('vars' => array('foo' => 'bar')) 10 | --EXPECT-- 11 | bar 12 | bar 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends "foo.twig" %} 5 | 6 | {% block content %} 7 | FOO 8 | {% endblock %} 9 | --TEMPLATE(foo.twig)-- 10 | {% block content %}{% endblock %} 11 | --DATA-- 12 | return array() 13 | --EXPECT-- 14 | FOO 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | block_expr 3 | --TEMPLATE-- 4 | {% extends "base.twig" %} 5 | 6 | {% block element -%} 7 | Element: 8 | {{- parent() -}} 9 | {% endblock %} 10 | --TEMPLATE(base.twig)-- 11 | {% spaceless %} 12 | {% block element -%} 13 |
14 | {%- if item.children is defined %} 15 | {%- for item in item.children %} 16 | {{- block('element') -}} 17 | {% endfor %} 18 | {%- endif -%} 19 |
20 | {%- endblock %} 21 | {% endspaceless %} 22 | --DATA-- 23 | return array( 24 | 'item' => array( 25 | 'children' => array( 26 | null, 27 | null, 28 | ) 29 | ) 30 | ) 31 | --EXPECT-- 32 | Element:
Element:
Element:
33 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/conditional.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends standalone ? foo : 'bar.twig' %} 5 | 6 | {% block content %}{{ parent() }}FOO{% endblock %} 7 | --TEMPLATE(foo.twig)-- 8 | {% block content %}FOO{% endblock %} 9 | --TEMPLATE(bar.twig)-- 10 | {% block content %}BAR{% endblock %} 11 | --DATA-- 12 | return array('foo' => 'foo.twig', 'standalone' => true) 13 | --EXPECT-- 14 | FOOFOO 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/dynamic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends foo %} 5 | 6 | {% block content %} 7 | FOO 8 | {% endblock %} 9 | --TEMPLATE(foo.twig)-- 10 | {% block content %}{% endblock %} 11 | --DATA-- 12 | return array('foo' => 'foo.twig') 13 | --EXPECT-- 14 | FOO 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/empty.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends "foo.twig" %} 5 | --TEMPLATE(foo.twig)-- 6 | {% block content %}FOO{% endblock %} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | FOO 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends ["foo.twig", "bar.twig"] %} 5 | --TEMPLATE(bar.twig)-- 6 | {% block content %} 7 | foo 8 | {% endblock %} 9 | --DATA-- 10 | return array() 11 | --EXPECT-- 12 | foo 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends "layout.twig" %}{% block content %}{{ parent() }}index {% endblock %} 5 | --TEMPLATE(layout.twig)-- 6 | {% extends "base.twig" %}{% block content %}{{ parent() }}layout {% endblock %} 7 | --TEMPLATE(base.twig)-- 8 | {% block content %}base {% endblock %} 9 | --DATA-- 10 | return array() 11 | --EXPECT-- 12 | base layout index 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "block" tag 3 | --TEMPLATE-- 4 | {% extends "foo.twig" %} 5 | 6 | {% block content %} 7 | {% block subcontent %} 8 | {% block subsubcontent %} 9 | SUBSUBCONTENT 10 | {% endblock %} 11 | {% endblock %} 12 | {% endblock %} 13 | --TEMPLATE(foo.twig)-- 14 | {% block content %} 15 | {% block subcontent %} 16 | SUBCONTENT 17 | {% endblock %} 18 | {% endblock %} 19 | --DATA-- 20 | return array() 21 | --EXPECT-- 22 | SUBSUBCONTENT 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks_parent_only.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "block" tag 3 | --TEMPLATE-- 4 | {% block content %} 5 | CONTENT 6 | {%- block subcontent -%} 7 | SUBCONTENT 8 | {%- endblock -%} 9 | ENDCONTENT 10 | {% endblock %} 11 | --TEMPLATE(foo.twig)-- 12 | --DATA-- 13 | return array() 14 | --EXPECT-- 15 | CONTENTSUBCONTENTENDCONTENT 16 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_inheritance.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends "layout.twig" %} 5 | {% block inside %}INSIDE{% endblock inside %} 6 | --TEMPLATE(layout.twig)-- 7 | {% extends "base.twig" %} 8 | {% block body %} 9 | {% block inside '' %} 10 | {% endblock body %} 11 | --TEMPLATE(base.twig)-- 12 | {% block body '' %} 13 | --DATA-- 14 | return array() 15 | --EXPECT-- 16 | INSIDE 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends "foo.twig" %} 5 | 6 | {% block content %}{{ parent() }}FOO{{ parent() }}{% endblock %} 7 | --TEMPLATE(foo.twig)-- 8 | {% block content %}BAR{% endblock %} 9 | --DATA-- 10 | return array() 11 | --EXPECT-- 12 | BARFOOBAR 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_change.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends foo ? 'foo.twig' : 'bar.twig' %} 5 | --TEMPLATE(foo.twig)-- 6 | FOO 7 | --TEMPLATE(bar.twig)-- 8 | BAR 9 | --DATA-- 10 | return array('foo' => true) 11 | --EXPECT-- 12 | FOO 13 | --DATA-- 14 | return array('foo' => false) 15 | --EXPECT-- 16 | BAR 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_in_a_block.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% block content %} 5 | {% extends "foo.twig" %} 6 | {% endblock %} 7 | --EXCEPTION-- 8 | Twig_Error_Syntax: Cannot extend from a block in "index.twig" at line 3 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_isolation.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends "base.twig" %} 5 | {% block content %}{% include "included.twig" %}{% endblock %} 6 | 7 | {% block footer %}Footer{% endblock %} 8 | --TEMPLATE(included.twig)-- 9 | {% extends "base.twig" %} 10 | {% block content %}Included Content{% endblock %} 11 | --TEMPLATE(base.twig)-- 12 | {% block content %}Default Content{% endblock %} 13 | 14 | {% block footer %}Default Footer{% endblock %} 15 | --DATA-- 16 | return array() 17 | --EXPECT-- 18 | Included Content 19 | Default Footer 20 | Footer 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_nested.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag 3 | --TEMPLATE-- 4 | {% extends "foo.twig" %} 5 | 6 | {% block content %} 7 | {% block inside %} 8 | INSIDE OVERRIDDEN 9 | {% endblock %} 10 | 11 | BEFORE 12 | {{ parent() }} 13 | AFTER 14 | {% endblock %} 15 | --TEMPLATE(foo.twig)-- 16 | {% block content %} 17 | BAR 18 | {% endblock %} 19 | --DATA-- 20 | return array() 21 | --EXPECT-- 22 | 23 | INSIDE OVERRIDDEN 24 | 25 | BEFORE 26 | BAR 27 | 28 | AFTER 29 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "parent" tag 3 | --TEMPLATE-- 4 | {% block content %} 5 | {{ parent() }} 6 | {% endblock %} 7 | --EXCEPTION-- 8 | Twig_Error_Syntax: Calling "parent" on a template that does not extend nor "use" another template is forbidden in "index.twig" at line 3 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends_but_traits.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "parent" tag 3 | --TEMPLATE-- 4 | {% use 'foo.twig' %} 5 | 6 | {% block content %} 7 | {{ parent() }} 8 | {% endblock %} 9 | --TEMPLATE(foo.twig)-- 10 | {% block content %}BAR{% endblock %} 11 | --DATA-- 12 | return array() 13 | --EXPECT-- 14 | BAR 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/template_instance.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "extends" tag accepts Twig_Template instance 3 | --TEMPLATE-- 4 | {% extends foo %} 5 | 6 | {% block content %} 7 | {{ parent() }}FOO 8 | {% endblock %} 9 | --TEMPLATE(foo.twig)-- 10 | {% block content %}BAR{% endblock %} 11 | --DATA-- 12 | return array('foo' => $twig->loadTemplate('foo.twig')) 13 | --EXPECT-- 14 | BARFOO 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "macro" tag 3 | --TEMPLATE-- 4 | {% import _self as macros %} 5 | 6 | {{ macros.input('username') }} 7 | {{ macros.input('password', null, 'password', 1) }} 8 | 9 | {% macro input(name, value, type, size) %} 10 | 11 | {% endmacro %} 12 | --DATA-- 13 | return array() 14 | --EXPECT-- 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/endmacro_name.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "macro" tag supports name for endmacro 3 | --TEMPLATE-- 4 | {% import _self as macros %} 5 | 6 | {{ macros.foo() }} 7 | {{ macros.bar() }} 8 | 9 | {% macro foo() %}foo{% endmacro %} 10 | {% macro bar() %}bar{% endmacro bar %} 11 | --DATA-- 12 | return array() 13 | --EXPECT-- 14 | foo 15 | bar 16 | 17 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/external.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "macro" tag 3 | --TEMPLATE-- 4 | {% import 'forms.twig' as forms %} 5 | 6 | {{ forms.input('username') }} 7 | {{ forms.input('password', null, 'password', 1) }} 8 | --TEMPLATE(forms.twig)-- 9 | {% macro input(name, value, type, size) %} 10 | 11 | {% endmacro %} 12 | --DATA-- 13 | return array() 14 | --EXPECT-- 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/from.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "macro" tag 3 | --TEMPLATE-- 4 | {% from 'forms.twig' import foo %} 5 | {% from 'forms.twig' import foo as foobar, bar %} 6 | 7 | {{ foo('foo') }} 8 | {{ foobar('foo') }} 9 | {{ bar('foo') }} 10 | --TEMPLATE(forms.twig)-- 11 | {% macro foo(name) %}foo{{ name }}{% endmacro %} 12 | {% macro bar(name) %}bar{{ name }}{% endmacro %} 13 | --DATA-- 14 | return array() 15 | --EXPECT-- 16 | foofoo 17 | foofoo 18 | barfoo 19 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/global.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "macro" tag 3 | --TEMPLATE-- 4 | {% from 'forms.twig' import foo %} 5 | 6 | {{ foo('foo') }} 7 | {{ foo() }} 8 | --TEMPLATE(forms.twig)-- 9 | {% macro foo(name) %}{{ name|default('foo') }}{{ global }}{% endmacro %} 10 | --DATA-- 11 | return array() 12 | --EXPECT-- 13 | fooglobal 14 | fooglobal 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/self_import.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "macro" tag 3 | --TEMPLATE-- 4 | {% import _self as forms %} 5 | 6 | {{ forms.input('username') }} 7 | {{ forms.input('password', null, 'password', 1) }} 8 | 9 | {% macro input(name, value, type, size) %} 10 | 11 | {% endmacro %} 12 | --DATA-- 13 | return array() 14 | --EXPECT-- 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/special_chars.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "§" as a macro name 3 | --TEMPLATE-- 4 | {% import _self as macros %} 5 | 6 | {{ macros.§('foo') }} 7 | 8 | {% macro §(foo) %} 9 | §{{ foo }}§ 10 | {% endmacro %} 11 | --DATA-- 12 | return array() 13 | --EXPECT-- 14 | §foo§ 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "raw" tag 3 | --TEMPLATE-- 4 | {% raw %} 5 | {{ foo }} 6 | {% endraw %} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | {{ foo }} 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/mixed_usage_with_raw.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "raw" tag 3 | --TEMPLATE-- 4 | {% raw %} 5 | {{ foo }} 6 | {% endverbatim %} 7 | --DATA-- 8 | return array() 9 | --EXCEPTION-- 10 | Twig_Error_Syntax: Unexpected end of file: Unclosed "raw" block in "index.twig" at line 2 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/whitespace_control.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "raw" tag 3 | --TEMPLATE-- 4 | 1*** 5 | 6 | {%- raw %} 7 | {{ 'bla' }} 8 | {% endraw %} 9 | 10 | 1*** 11 | 2*** 12 | 13 | {%- raw -%} 14 | {{ 'bla' }} 15 | {% endraw %} 16 | 17 | 2*** 18 | 3*** 19 | 20 | {%- raw -%} 21 | {{ 'bla' }} 22 | {% endraw -%} 23 | 24 | 3*** 25 | 4*** 26 | 27 | {%- raw -%} 28 | {{ 'bla' }} 29 | {%- endraw %} 30 | 31 | 4*** 32 | 5*** 33 | 34 | {%- raw -%} 35 | {{ 'bla' }} 36 | {%- endraw -%} 37 | 38 | 5*** 39 | --DATA-- 40 | return array() 41 | --EXPECT-- 42 | 1*** 43 | {{ 'bla' }} 44 | 45 | 46 | 1*** 47 | 2***{{ 'bla' }} 48 | 49 | 50 | 2*** 51 | 3***{{ 'bla' }} 52 | 3*** 53 | 4***{{ 'bla' }} 54 | 55 | 4*** 56 | 5***{{ 'bla' }}5*** 57 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid1.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | sandbox tag 3 | --TEMPLATE-- 4 | {%- sandbox %} 5 | {%- include "foo.twig" %} 6 | a 7 | {%- endsandbox %} 8 | --TEMPLATE(foo.twig)-- 9 | foo 10 | --EXCEPTION-- 11 | Twig_Error_Syntax: Only "include" tags are allowed within a "sandbox" section in "index.twig" at line 4 12 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid2.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | sandbox tag 3 | --TEMPLATE-- 4 | {%- sandbox %} 5 | {%- include "foo.twig" %} 6 | 7 | {% if 1 %} 8 | {%- include "foo.twig" %} 9 | {% endif %} 10 | {%- endsandbox %} 11 | --TEMPLATE(foo.twig)-- 12 | foo 13 | --EXCEPTION-- 14 | Twig_Error_Syntax: Only "include" tags are allowed within a "sandbox" section in "index.twig" at line 5 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/simple.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | sandbox tag 3 | --TEMPLATE-- 4 | {%- sandbox %} 5 | {%- include "foo.twig" %} 6 | {%- endsandbox %} 7 | 8 | {%- sandbox %} 9 | {%- include "foo.twig" %} 10 | {%- include "foo.twig" %} 11 | {%- endsandbox %} 12 | 13 | {%- sandbox %}{% include "foo.twig" %}{% endsandbox %} 14 | --TEMPLATE(foo.twig)-- 15 | foo 16 | --DATA-- 17 | return array() 18 | --EXPECT-- 19 | foo 20 | foo 21 | foo 22 | foo 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "set" tag 3 | --TEMPLATE-- 4 | {% set foo = 'foo' %} 5 | {% set bar = 'foo
' %} 6 | 7 | {{ foo }} 8 | {{ bar }} 9 | 10 | {% set foo, bar = 'foo', 'bar' %} 11 | 12 | {{ foo }}{{ bar }} 13 | --DATA-- 14 | return array() 15 | --EXPECT-- 16 | foo 17 | foo<br /> 18 | 19 | 20 | foobar 21 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture-empty.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "set" tag block empty capture 3 | --TEMPLATE-- 4 | {% set foo %}{% endset %} 5 | 6 | {% if foo %}FAIL{% endif %} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "set" tag block capture 3 | --TEMPLATE-- 4 | {% set foo %}f
o
o{% endset %} 5 | 6 | {{ foo }} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | f
o
o 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/expression.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "set" tag 3 | --TEMPLATE-- 4 | {% set foo, bar = 'foo' ~ 'bar', 'bar' ~ 'foo' %} 5 | 6 | {{ foo }} 7 | {{ bar }} 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | foobar 12 | barfoo 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/spaceless/simple.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "spaceless" tag removes whites between HTML tags 3 | --TEMPLATE-- 4 | {% spaceless %} 5 | 6 |
foo
7 | 8 | {% endspaceless %} 9 | --DATA-- 10 | return array() 11 | --EXPECT-- 12 |
foo
13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/special_chars.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "§" custom tag 3 | --TEMPLATE-- 4 | {% § %} 5 | --DATA-- 6 | return array() 7 | --EXPECT-- 8 | § 9 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/aliases.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use "blocks.twig" with content as foo %} 5 | 6 | {{ block('foo') }} 7 | --TEMPLATE(blocks.twig)-- 8 | {% block content 'foo' %} 9 | --DATA-- 10 | return array() 11 | --EXPECT-- 12 | foo 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use "blocks.twig" %} 5 | 6 | {{ block('content') }} 7 | --TEMPLATE(blocks.twig)-- 8 | {% block content 'foo' %} 9 | --DATA-- 10 | return array() 11 | --EXPECT-- 12 | foo 13 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use "foo.twig" %} 5 | 6 | {{ block('content') }} 7 | {{ block('foo') }} 8 | {{ block('bar') }} 9 | --TEMPLATE(foo.twig)-- 10 | {% use "bar.twig" %} 11 | 12 | {% block content 'foo' %} 13 | {% block foo 'foo' %} 14 | --TEMPLATE(bar.twig)-- 15 | {% block content 'bar' %} 16 | {% block bar 'bar' %} 17 | --DATA-- 18 | return array() 19 | --EXPECT-- 20 | foo 21 | foo 22 | bar 23 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep_empty.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use "foo.twig" %} 5 | --TEMPLATE(foo.twig)-- 6 | {% use "bar.twig" %} 7 | --TEMPLATE(bar.twig)-- 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use "parent.twig" %} 5 | 6 | {{ block('container') }} 7 | --TEMPLATE(parent.twig)-- 8 | {% use "ancestor.twig" %} 9 | 10 | {% block sub_container %} 11 |
overriden sub_container
12 | {% endblock %} 13 | --TEMPLATE(ancestor.twig)-- 14 | {% block container %} 15 |
{{ block('sub_container') }}
16 | {% endblock %} 17 | 18 | {% block sub_container %} 19 |
sub_container
20 | {% endblock %} 21 | --DATA-- 22 | return array() 23 | --EXPECT-- 24 |
overriden sub_container
25 |
26 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance2.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use "ancestor.twig" %} 5 | {% use "parent.twig" %} 6 | 7 | {{ block('container') }} 8 | --TEMPLATE(parent.twig)-- 9 | {% block sub_container %} 10 |
overriden sub_container
11 | {% endblock %} 12 | --TEMPLATE(ancestor.twig)-- 13 | {% block container %} 14 |
{{ block('sub_container') }}
15 | {% endblock %} 16 | 17 | {% block sub_container %} 18 |
sub_container
19 | {% endblock %} 20 | --DATA-- 21 | return array() 22 | --EXPECT-- 23 |
overriden sub_container
24 |
25 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use "foo.twig" %} 5 | {% use "bar.twig" %} 6 | 7 | {{ block('content') }} 8 | {{ block('foo') }} 9 | {{ block('bar') }} 10 | --TEMPLATE(foo.twig)-- 11 | {% block content 'foo' %} 12 | {% block foo 'foo' %} 13 | --TEMPLATE(bar.twig)-- 14 | {% block content 'bar' %} 15 | {% block bar 'bar' %} 16 | --DATA-- 17 | return array() 18 | --EXPECT-- 19 | bar 20 | foo 21 | bar 22 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple_aliases.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use "foo.twig" with content as foo_content %} 5 | {% use "bar.twig" %} 6 | 7 | {{ block('content') }} 8 | {{ block('foo') }} 9 | {{ block('bar') }} 10 | {{ block('foo_content') }} 11 | --TEMPLATE(foo.twig)-- 12 | {% block content 'foo' %} 13 | {% block foo 'foo' %} 14 | --TEMPLATE(bar.twig)-- 15 | {% block content 'bar' %} 16 | {% block bar 'bar' %} 17 | --DATA-- 18 | return array() 19 | --EXPECT-- 20 | bar 21 | foo 22 | bar 23 | foo 24 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use 'file2.html.twig' with foobar as base_base_foobar %} 5 | {% block foobar %} 6 | {{- block('base_base_foobar') -}} 7 | Content of block (second override) 8 | {% endblock foobar %} 9 | --TEMPLATE(file2.html.twig)-- 10 | {% use 'file1.html.twig' with foobar as base_foobar %} 11 | {% block foobar %} 12 | {{- block('base_foobar') -}} 13 | Content of block (first override) 14 | {% endblock foobar %} 15 | --TEMPLATE(file1.html.twig)-- 16 | {% block foobar -%} 17 | Content of block 18 | {% endblock foobar %} 19 | --DATA-- 20 | return array() 21 | --EXPECT-- 22 | Content of block 23 | Content of block (first override) 24 | Content of block (second override) 25 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block2.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "use" tag 3 | --TEMPLATE-- 4 | {% use 'file2.html.twig'%} 5 | {% block foobar %} 6 | {{- parent() -}} 7 | Content of block (second override) 8 | {% endblock foobar %} 9 | --TEMPLATE(file2.html.twig)-- 10 | {% use 'file1.html.twig' %} 11 | {% block foobar %} 12 | {{- parent() -}} 13 | Content of block (first override) 14 | {% endblock foobar %} 15 | --TEMPLATE(file1.html.twig)-- 16 | {% block foobar -%} 17 | Content of block 18 | {% endblock foobar %} 19 | --DATA-- 20 | return array() 21 | --EXPECT-- 22 | Content of block 23 | Content of block (first override) 24 | Content of block (second override) 25 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/basic.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "verbatim" tag 3 | --TEMPLATE-- 4 | {% verbatim %} 5 | {{ foo }} 6 | {% endverbatim %} 7 | --DATA-- 8 | return array() 9 | --EXPECT-- 10 | {{ foo }} 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/mixed_usage_with_raw.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "verbatim" tag 3 | --TEMPLATE-- 4 | {% verbatim %} 5 | {{ foo }} 6 | {% endraw %} 7 | --DATA-- 8 | return array() 9 | --EXCEPTION-- 10 | Twig_Error_Syntax: Unexpected end of file: Unclosed "verbatim" block in "index.twig" at line 2 11 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/whitespace_control.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "verbatim" tag 3 | --TEMPLATE-- 4 | 1*** 5 | 6 | {%- verbatim %} 7 | {{ 'bla' }} 8 | {% endverbatim %} 9 | 10 | 1*** 11 | 2*** 12 | 13 | {%- verbatim -%} 14 | {{ 'bla' }} 15 | {% endverbatim %} 16 | 17 | 2*** 18 | 3*** 19 | 20 | {%- verbatim -%} 21 | {{ 'bla' }} 22 | {% endverbatim -%} 23 | 24 | 3*** 25 | 4*** 26 | 27 | {%- verbatim -%} 28 | {{ 'bla' }} 29 | {%- endverbatim %} 30 | 31 | 4*** 32 | 5*** 33 | 34 | {%- verbatim -%} 35 | {{ 'bla' }} 36 | {%- endverbatim -%} 37 | 38 | 5*** 39 | --DATA-- 40 | return array() 41 | --EXPECT-- 42 | 1*** 43 | {{ 'bla' }} 44 | 45 | 46 | 1*** 47 | 2***{{ 'bla' }} 48 | 49 | 50 | 2*** 51 | 3***{{ 'bla' }} 52 | 3*** 53 | 4***{{ 'bla' }} 54 | 55 | 4*** 56 | 5***{{ 'bla' }}5*** 57 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tests/array.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | array index test 3 | --TEMPLATE-- 4 | {% for key, value in days %} 5 | {{ key }} 6 | {% endfor %} 7 | --DATA-- 8 | return array('days' => array( 9 | 1 => array('money' => 9), 10 | 2 => array('money' => 21), 11 | 3 => array('money' => 38), 12 | 4 => array('money' => 6), 13 | 18 => array('money' => 6), 14 | 19 => array('money' => 3), 15 | 31 => array('money' => 11), 16 | )); 17 | --EXPECT-- 18 | 1 19 | 2 20 | 3 21 | 4 22 | 18 23 | 19 24 | 31 25 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tests/constant.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "const" test 3 | --TEMPLATE-- 4 | {{ 8 is constant('E_NOTICE') ? 'ok' : 'no' }} 5 | {{ 'bar' is constant('TwigTestFoo::BAR_NAME') ? 'ok' : 'no' }} 6 | {{ value is constant('TwigTestFoo::BAR_NAME') ? 'ok' : 'no' }} 7 | {{ 2 is constant('ARRAY_AS_PROPS', object) ? 'ok' : 'no' }} 8 | --DATA-- 9 | return array('value' => 'bar', 'object' => new ArrayObject(array('hi'))); 10 | --EXPECT-- 11 | ok 12 | ok 13 | ok 14 | ok -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tests/even.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "even" test 3 | --TEMPLATE-- 4 | {{ 1 is even ? 'ko' : 'ok' }} 5 | {{ 2 is even ? 'ok' : 'ko' }} 6 | {{ 1 is not even ? 'ok' : 'ko' }} 7 | {{ 2 is not even ? 'ko' : 'ok' }} 8 | --DATA-- 9 | return array() 10 | --EXPECT-- 11 | ok 12 | ok 13 | ok 14 | ok 15 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the in operator 3 | --TEMPLATE-- 4 | {% if bar in foo %} 5 | TRUE 6 | {% endif %} 7 | {% if not (bar in foo) %} 8 | {% else %} 9 | TRUE 10 | {% endif %} 11 | {% if bar not in foo %} 12 | {% else %} 13 | TRUE 14 | {% endif %} 15 | {% if 'a' in bar %} 16 | TRUE 17 | {% endif %} 18 | {% if 'c' not in bar %} 19 | TRUE 20 | {% endif %} 21 | {% if '' not in bar %} 22 | TRUE 23 | {% endif %} 24 | {% if '' in '' %} 25 | TRUE 26 | {% endif %} 27 | {% if '0' not in '' %} 28 | TRUE 29 | {% endif %} 30 | {% if 'a' not in '0' %} 31 | TRUE 32 | {% endif %} 33 | {% if '0' in '0' %} 34 | TRUE 35 | {% endif %} 36 | --DATA-- 37 | return array('bar' => 'bar', 'foo' => array('bar' => 'bar')) 38 | --EXPECT-- 39 | TRUE 40 | TRUE 41 | TRUE 42 | TRUE 43 | TRUE 44 | TRUE 45 | TRUE 46 | TRUE 47 | TRUE 48 | TRUE 49 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in_with_objects.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | Twig supports the in operator when using objects 3 | --TEMPLATE-- 4 | {% if object in object_list %} 5 | TRUE 6 | {% endif %} 7 | --DATA-- 8 | $foo = new TwigTestFoo(); 9 | $foo1 = new TwigTestFoo(); 10 | 11 | $foo->position = $foo1; 12 | $foo1->position = $foo; 13 | 14 | return array( 15 | 'object' => $foo, 16 | 'object_list' => array($foo1, $foo), 17 | ); 18 | --EXPECT-- 19 | TRUE 20 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tests/iterable.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "iterable" test 3 | --TEMPLATE-- 4 | {{ foo is iterable ? 'ok' : 'ko' }} 5 | {{ traversable is iterable ? 'ok' : 'ko' }} 6 | {{ obj is iterable ? 'ok' : 'ko' }} 7 | {{ val is iterable ? 'ok' : 'ko' }} 8 | --DATA-- 9 | return array( 10 | 'foo' => array(), 11 | 'traversable' => new ArrayIterator(array()), 12 | 'obj' => new stdClass(), 13 | 'val' => 'test', 14 | ); 15 | --EXPECT-- 16 | ok 17 | ok 18 | ko 19 | ko -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Fixtures/tests/odd.test: -------------------------------------------------------------------------------- 1 | --TEST-- 2 | "odd" test 3 | --TEMPLATE-- 4 | {{ 1 is odd ? 'ok' : 'ko' }} 5 | {{ 2 is odd ? 'ko' : 'ok' }} 6 | --DATA-- 7 | return array() 8 | --EXPECT-- 9 | ok 10 | ok -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named/index.html: -------------------------------------------------------------------------------- 1 | named path 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_bis/index.html: -------------------------------------------------------------------------------- 1 | named path (bis) 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_final/index.html: -------------------------------------------------------------------------------- 1 | named path (final) 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_ter/index.html: -------------------------------------------------------------------------------- 1 | named path (ter) 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal/index.html: -------------------------------------------------------------------------------- 1 | path 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_bis/index.html: -------------------------------------------------------------------------------- 1 | path (bis) 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_final/index.html: -------------------------------------------------------------------------------- 1 | path (final) 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_ter/index.html: -------------------------------------------------------------------------------- 1 | path (ter) 2 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme1/blocks.html.twig: -------------------------------------------------------------------------------- 1 | {% block b1 %}block from theme 1{% endblock %} 2 | 3 | {% block b2 %}block from theme 1{% endblock %} 4 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme2/blocks.html.twig: -------------------------------------------------------------------------------- 1 | {% use '@default_theme/blocks.html.twig' %} 2 | 3 | {% block b2 %}block from theme 2{% endblock %} 4 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FilterInclude.php: -------------------------------------------------------------------------------- 1 | addFilter(new Twig_SimpleFilter('anonymous', function () {})); 5 | 6 | return $env; 7 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FunctionInclude.php: -------------------------------------------------------------------------------- 1 | addFunction(new Twig_SimpleFunction('anonymous', function () {})); 5 | 6 | return $env; 7 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/TestInclude.php: -------------------------------------------------------------------------------- 1 | addTest(new Twig_SimpleTest('anonymous', function () {})); 5 | 6 | return $env; 7 | -------------------------------------------------------------------------------- /vendor/twig/twig/test/bootstrap.php: -------------------------------------------------------------------------------- 1 | 3 |
4 |
5 | 6 | 7 |
8 | 9 | {% endblock %} -------------------------------------------------------------------------------- /views/dynamic_form.html.twig: -------------------------------------------------------------------------------- 1 | 2 | {% block form %} 3 |
4 | 5 |
6 | {% endblock %} 7 | 8 | 9 | -------------------------------------------------------------------------------- /views/listRecurringTemplateFail.html.twig: -------------------------------------------------------------------------------- 1 | {% extends 'layout.html.twig' %} 2 | {% block head %} 3 | {% block javascripts %} 4 | {{ parent() }} 5 | 6 | {% endblock %} 7 | {% block stylesheets %} 8 | {{ parent() }} 9 | {% endblock %} 10 | {% endblock %} 11 | {% block body %} 12 | {{ parent() }} 13 | 14 |
15 |

Something went wrong! Check your database settings and privileges and try again.

16 |
17 | {% endblock %} 18 | 19 | -------------------------------------------------------------------------------- /views/open_tickets.html.twig: -------------------------------------------------------------------------------- 1 | 2 | {% block open_tickets %} 3 |
4 |
5 |
6 | 7 | 8 |
9 |
10 | {% endblock %} -------------------------------------------------------------------------------- /views/viewTemplate.html.twig: -------------------------------------------------------------------------------- 1 | {% extends 'layout.html.twig' %} 2 | 3 | {% block head %} 4 | {% block javascripts %} 5 | {{ parent() }} 6 | {% endblock %} 7 | {% block stylesheets %} 8 | {{ parent() }} 9 | {% endblock %} 10 | {% endblock %} 11 | 12 | {% block title %} 13 | {{ stitle }} 14 | {% endblock %} 15 | 16 | {% block pagetitle %} 17 | {{ stitle }} 18 | {% endblock %} 19 | 20 | {% block body %} 21 | {{ parent() }} 22 | 23 |
30 | {% include form_path ~ "/editForm.html.twig" %} 31 |
32 | {% endblock %} 33 | 34 | --------------------------------------------------------------------------------