{"id":21277956,"url":"https://github.com/b13/listelements","last_synced_at":"2025-07-11T08:32:19.053Z","repository":{"id":37455700,"uuid":"312562881","full_name":"b13/listelements","owner":"b13","description":"BETA: listelements","archived":false,"fork":false,"pushed_at":"2024-10-02T15:28:04.000Z","size":104,"stargazers_count":8,"open_issues_count":2,"forks_count":2,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-10-29T00:57:36.929Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/b13.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-11-13T11:56:33.000Z","updated_at":"2024-08-15T08:15:04.000Z","dependencies_parsed_at":"2024-06-03T09:16:52.883Z","dependency_job_id":"bc5e5e9e-8d0c-48c1-903b-aed10e34b03b","html_url":"https://github.com/b13/listelements","commit_stats":{"total_commits":49,"total_committers":9,"mean_commits":5.444444444444445,"dds":0.4693877551020408,"last_synced_commit":"ad4cb1667b3c02c5631b9aa53d5fc44d192272ad"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Flistelements","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Flistelements/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Flistelements/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Flistelements/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/b13","download_url":"https://codeload.github.com/b13/listelements/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225708281,"owners_count":17511635,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-21T10:08:24.461Z","updated_at":"2024-11-21T10:08:25.053Z","avatar_url":"https://github.com/b13.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# EXT:listelements #\n\n## About this extension\n\nThis extension adds list items to tt_content. It adds a database field `tx_listelements_list` to `tt_content` that \nallows adding flexible list items as IRRE records to any content element.\n\n## Installation\n\nAdd the extension to your project by installing and adding the TypoScript setup to your site-Extension setup:\n\n```\n@import 'EXT:listelements/Configuration/TypoScript/setup.typoscript'\n```\n\nThis adds the configuration for adding the list items as an array `listitems` to the variables available for your \ncontent element's Fluid template, like this:\n\n```\n\u003cf:for each=\"{listitems}\" as=\"item\"\u003e\n    ...    \n\u003c/f:for\u003e\n```\n\n## Backend PageLayoutView preview\n\nThis extension adds a Hook and a Service class to allow customized display using Fluid templates for the backend Page\nLayout View. Use this to add customized preview data if you add additional assets/image fields to be resolved for \nbackend preview:\n\n`EXT:site_extension/Classes/Hooks/DrawItem.php`:\n\n```\n\u003c?php\n\nnamespace B13\\SiteExtension\\Hooks;\n\nuse TYPO3\\CMS\\Backend\\View\\PageLayoutViewDrawItemHookInterface;\nuse TYPO3\\CMS\\Backend\\View\\PageLayoutView;\n\n/**\n * Class/Function to manipulate the rendering of item preview content\n *\n */\nclass DrawItem implements PageLayoutViewDrawItemHookInterface\n{\n\n    /**\n     * @param PageLayoutView $parentObject : The parent object that triggered this hook\n     * @param boolean $drawItem : A switch to tell the parent object, if the item still must be drawn\n     * @param string $headerContent : The content of the item header\n     * @param string $itemContent : The content of the item itself\n     * @param array $row : The current data row for this item\n     *\n     * @return void\n     */\n    public function preProcess(PageLayoutView \u0026$parentObject, \u0026$drawItem, \u0026$headerContent, \u0026$itemContent, array \u0026$row)\n    {\n\n        // get all list items (database column 'test_list') including all assets\n        if ($row['test_list']) {\n            // array \u0026$row, $field = '', $table = 'tt_content', $filereferences = 'assets, additional_assets'\n            \\B13\\Listelements\\Service\\ListService::resolveListitems($row, 'test_list', 'tt_content');\n        }\n\n    }\n\n}\n```\n\n## Important info on configuration\n\nRemember to add the `hiddenpalette` to all `showitems`-configuration for your own content elements to have invisible\nfields like the language uid saved for all list items.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fb13%2Flistelements","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fb13%2Flistelements","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fb13%2Flistelements/lists"}