{"id":19640608,"url":"https://github.com/daniel-km/omeka-s-module-next","last_synced_at":"2025-07-27T01:06:15.821Z","repository":{"id":50454704,"uuid":"160270953","full_name":"Daniel-KM/Omeka-S-module-Next","owner":"Daniel-KM","description":"Module for Omeka S that brings together various features too small to be a full module; may be integrated in the next release of Omeka S, or not.","archived":false,"fork":false,"pushed_at":"2024-11-15T14:31:52.000Z","size":373,"stargazers_count":3,"open_issues_count":7,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-28T11:37:44.025Z","etag":null,"topics":["features","omeka-s","omeka-s-module"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Daniel-KM.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2018-12-04T00:14:00.000Z","updated_at":"2024-11-15T14:31:57.000Z","dependencies_parsed_at":"2024-07-22T19:10:38.072Z","dependency_job_id":"2ccbac27-3d2c-4bab-b69b-5ea56ca61a4f","html_url":"https://github.com/Daniel-KM/Omeka-S-module-Next","commit_stats":null,"previous_names":[],"tags_count":57,"template":false,"template_full_name":null,"purl":"pkg:github/Daniel-KM/Omeka-S-module-Next","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-Next","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-Next/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-Next/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-Next/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Daniel-KM","download_url":"https://codeload.github.com/Daniel-KM/Omeka-S-module-Next/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Daniel-KM%2FOmeka-S-module-Next/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267278657,"owners_count":24063253,"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","status":"online","status_checked_at":"2025-07-26T02:00:08.937Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["features","omeka-s","omeka-s-module"],"created_at":"2024-11-11T14:06:15.136Z","updated_at":"2025-07-27T01:06:15.809Z","avatar_url":"https://github.com/Daniel-KM.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"Next (module for Omeka S)\n=========================\n\n\u003e __New versions of this module and support for Omeka S version 3.0 and above\n\u003e are available on [GitLab], which seems to respect users and privacy better\n\u003e than the previous repository.__\n\n[Next] is a module for [Omeka S] that brings together various features too small\nto be a full module. They may be integrated in the next release of Omeka S, or\nnot.\n\nMost of features are now integrated in Omeka S or in modules, in particular\n[Block Plus], [Common] and [Easy Admin].\n\nTo use features from Omeka S v3.0 to Omeka S v4.0, you should use versions\nof the module until 3.4.48. New versions of the module will support only\nOmeka S v4.1 or greater.\n\n\nFeatures (all versions)\n-----------------------\n\n### Public\n\n#### Item set position\n\nDetermine the position of an item set in the site.\n\n### Admin\n\n#### Better display of json output in api\n\nThe json standard doesn’t require to escape anything, except \", \"\" and control\ncharacters. But php and Zend escape many other characters by default : tags,\nampersand, apostrophe and overall the slashes \"/\" and the unicode characters,\nmaking json unreadable in many cases, whereas it’s designed to be readable by\npeople and machines. So this feature displays the api output as unicode and\nunescaped, so it can be readable by people who don’t have a json viewer in their\nbrowser ([#1493]).\n\nOf course, when used inside html, it must be escaped.\n\n\nFeatures of older versions (\u003c Omeka 3.2)\n----------------------------------------\n\n### Public\n\n#### Breadcrumbs\n\nThis feature was moved to modules [Menu] and [Block Plus] and improved since version 3.3.41.\n\nA breadcrumb may be added on resources pages via the command `echo $this-\u003ebreadcrumbs();`.\nThe default template is `common/breadcrumbs.phtml`, so the breadcrumb can be\nthemed. Some options are available too.\nBy default, the breadcrumb for an item uses the first item set as the parent\ncrumb. The first item set is the item set with the smallest id. If you want to\nuse another item set, set it as resource in the property that is set in the main\nsettings, or in the options of the view helper.\n\n#### Previous/Next resources\n\nThis feature was moved to module [Menu] and improved since version 3.3.42.\n\nAllow to get the previous or the next resources, that simplifies browsing like\nin Omeka Classic. An option allows to use it in admin board. For sites, there is\na specific option to limit and to order items and item sets according to a\nstandard query.\n\nTo use it, you need to add this in the item, item set, or media show page of the\ntheme:\n\n```php\n\u003c?php\n$plugins = $this-\u003egetHelperPluginManager();\n$hasNext = $plugins-\u003ehas('previousResource');\n?\u003e\n\u003c?php if ($hasNext): ?\u003e\n\u003cdiv class=\"previous-next-items\"\u003e\n    \u003c?php if ($previous = $this-\u003epreviousResource($resource)): ?\u003e\n    \u003c?= $previous-\u003elink($translate('Previous item'), null, ['class' =\u003e 'previous-item']) ?\u003e\n    \u003c?php endif; ?\u003e\n    \u003c?php if ($next = $this-\u003enextResource($resource)): ?\u003e\n    \u003c?= $next-\u003elink($translate('Next item'), null, ['class' =\u003e 'next-item']) ?\u003e\n    \u003c?php endif; ?\u003e\n\u003c/div\u003e\n\u003c?php endif; ?\u003e\n```\n\n#### Simple mirror page\n\nThis block is now managed by module [Block Plus] since version 3.1.2.12.\n\nAllow to use a page as a block, so the same page can be use in multiple sites,\nfor example the page \"About\" or \"Privacy\". Of course, the page is a standard\npage and can be more complex with multiple blocks. May be fun.\nThis is an equivalent for the [shortcode as a page] in Omeka classic too.\n\n#### Is home page\n\nThis feature is now managed by modules [Block Plus] since version 3.4.15.11 and\nmodule [Menu] since version 3.4.8.\n\nAllow to check if the current page is the home page of the site, like in Omeka Classic.\n\n#### Thumbnail url\n\nThis feature was moved to module [Block Plus] since version 3.3.11.8.\n\nAllow to get the url of the thumbnail of a resource, a page or a site.\nWarning: For site, the module [Advanced Search Plus] is needed when there is no\npage with a thumbnail (the module provides the api for the url argument `has_thumbnails`).\n\n#### Direct links in user bar\n\nDisplay direct links to the current resource in the public user bar in order to\nsimplify edition and management of resources (fix [#1283], included in Omeka S 1.4).\nThe revert links are available too. They display the resource in the default\nsite, or in the first one (fix [#1259]).\n\n#### Random order of resources (only for Omeka S version \u003c 3)\n\nDisplay resources in a random order, for example for a carousel or a featured\nresource. Simply add `sort_by=random` to the query when needed, in particular\nin the page block `Browse preview` (fix [#1281]).\n\n#### Advanced search by start with, end with, or in list\n\nAllow to do more advanced search in public or admin board on values of the\nproperties: start with, end with, in list (fix [#1274], [#1276]).\nThis feature is moved to module [Advanced Search Plus] in Omeka 3.\n\n#### Advanced search with list of used properties and resource classes.\n\nDisplay only the used properties and resources classes in the advanced search\nform, via a site setting (fix [#1423]). This feature is integrated in Omeka 3.\n\nIn some cases, a change is required in the theme. In the files `themes/my-theme/common/advanced-search/properties.phtml`\nand `themes/my-theme/common/advanced-search/resource-classes.phtml`, add this option\nbelow `apply_templates`:\n```php\n    'used_terms' =\u003e $this-\u003esiteSetting('next_search_used_terms'),\n```\n\n#### Previous/Next resources\n\nThis feature was moved to module [Block Plus] and [Easy Admin] since version 3.4.47.\n\nAllow to get the previous or the next resources, that simplifies browsing like\nin Omeka Classic. An option allows to use it in admin board. For sites, there is\na specific option to limit and to order items and item sets according to a\nstandard query.\n\nTo use it, you need to add this in the item, item set, or media show page of the\ntheme:\n\n```php\n\u003c?php\n$plugins = $this-\u003egetHelperPluginManager();\n$hasNext = $plugins-\u003ehas('previousResource');\n?\u003e\n\u003c?php if ($hasNext): ?\u003e\n\u003cdiv class=\"previous-next-items\"\u003e\n    \u003c?php if ($previous = $this-\u003epreviousResource($resource)): ?\u003e\n    \u003c?= $previous-\u003elink($translate('Previous item'), null, ['class' =\u003e 'previous-item']) ?\u003e\n    \u003c?php endif; ?\u003e\n    \u003c?php if ($next = $this-\u003enextResource($resource)): ?\u003e\n    \u003c?= $next-\u003elink($translate('Next item'), null, ['class' =\u003e 'next-item']) ?\u003e\n    \u003c?php endif; ?\u003e\n\u003c/div\u003e\n\u003c?php endif; ?\u003e\n```\n\n#### Last browse page\n\nThis feature was moved to module [Block Plus] since version 3.4.47.\n\nAllow to go back to the last list of results in order to browse inside item sets,\nitems or media after a search without losing the search results. The helper is\nused by default in admin resources pages.\n\n#### Current site (Omeka S v3, integrated in core for v4)\n\nAllow to get the current site in public view, that may be missing in some cases.\n\n#### Default order of items in item set\n\nDisplay resources in a specific order in the item set main page in front-end,\nfor example by title or identifier. This option can be specified differently for\neach site.\n\n#### Citation\n\nSince 3.1.2.7, this feature has moved to module [Bibliography], that uses a\ntemplate view to easily customize it. The view helper doesn’t change.\n\n### Admin\n\n#### Trim property values\n\nRemove leading and trailing whitespaces preventively on any resource creation or\nupdate, or curatively via the batch edit, so values will be easier to find and\nto compare exactly (fix [#1258]).\n\nWarning: This feature is removed in the version for Omeka 3, but is available in\nan improved version in module [Bulk Edit].\n\n#### Deduplicate property values\n\nRemove exact duplicated values on any new or updated resource preventively.\nNote: preventive deduplication is case sensitive, but curative deduplication is\ncase insensitive (it uses a direct query and the Omeka database is case\ninsensitive by default).\n\nWarning: This feature is removed in the version for Omeka 3, but is available in\nan improved version in module [Bulk Edit].\n\n#### New links\n\n- From the site permissions to the user page (fix [#1301]).\n\n### Backend\n\n#### Button \"Public view\"\n\nDisplay a button \"Public view\" in resource show pages.\n\nThis feature was moved to module [Easy Admin] since version 3.4.8.\n\n#### Choice of columns in admin browse view\n\nAn option is added to select the metadata to display in the main browse view (fix [#1497]).\nThis option in no more integrated in the module, but available through the pull\nrequest.\nIncluded in Omeka S v4 via user settings.\n\n#### Logger in view\n\nAllow to use `$this-\u003elogger()` in the views (fix [#1371], included in Omeka S 1.4).\n\n#### Current site\n\nAllow to get the current site in public view, that may be missing in some cases\n(included in Omeka S v4).\n\n#### New links\n\n- From the list of jobs to each log (fix [#1156]), moved to module [Log].\n\n#### AbstractModule\n\nThis feature was moved to module [Generic] more simply, then to module [Common].\n\nA class to simplify management of generic methods of the module (install and\nsettings).\n\n#### Better identification of media types for xml and zip files\n\nThis feature was moved to module [XML Viewer] since version 3.3.40.\n\nIn Omeka core, all xml files are identified as `text/xml` and zip files as `application/zip`,\nso it’s not possible to make a distinction between a mets file and an ead file,\nor to identify an epub, that is a zipped xhtml. This feature is required to use\nthe module [Verovio] when files don’t use the extension \"mei\" ([#1464]).\n\n#### Cron tasks\n\nThis feature was moved to module [Easy Admin] since version 3.3.42.\n\nA script allows to run jobs from the command line, even if they are not\ninitialized. It’s useful to run cron tasks. See required and optional arguments:\n\n```sh\nphp /path/to/omeka/modules/Next/data/scripts/task.php --help\n```\n\nIn your cron tab, you can add a task like that:\n\n```sh\n/bin/su - www-data -C \"php /var/www/omeka/modules/Next/data/scripts/task.php\" --task MyTask --user-id 1\n```\n\nNote: since there is no job id, the job should not require it (for example,\nmethod `shouldStop()` should not be called. The use of the abstract class `AbstractTask`,\nthat extends `AbstractJob`, is recommended, as it takes care of this point.\n\n#### Loop items task\n\nThis feature was moved to module [Easy Admin] and improved since version 3.3.42.\n\nA task (job) allows to update all items, so all the modules that uses api events\nare triggered. This job can be use as a one-time task that help to process\nexisting items when a new feature is added in a module.\n\n```sh\nphp /path/to/omeka/modules/Next/data/scripts/task.php --task LoopItems --user-id 1\n```\n\n\nInstallation\n------------\n\nInstall module [Common] first, that is a required dependency.\n\nUncompress files and rename module folder `Next`. Then install it like any\nother Omeka module and follow the config instructions.\n\nSee general end user documentation for [installing a module].\n\n\nTODO\n----\n\n- [x] Normalize the breadcrumbs with Laminas navigation (module [Menu]).\n- [ ] Move all navigation and theme helpers to module BlockPlus.\n- [-] Site permission links to user page (v3)\n\n\nWarning\n-------\n\nUse it at your own risk.\n\nIt’s always recommended to backup your files and your databases and to check\nyour archives regularly so you can roll back if needed.\n\n\nTroubleshooting\n---------------\n\nSee online issues on the [module issues] page on GitLab.\n\n\nLicense\n-------\n\nThis module is published under the [CeCILL v2.1] license, compatible with\n[GNU/GPL] and approved by [FSF] and [OSI].\n\nIn consideration of access to the source code and the rights to copy, modify and\nredistribute granted by the license, users are provided only with a limited\nwarranty and the software’s author, the holder of the economic rights, and the\nsuccessive licensors only have limited liability.\n\nIn this respect, the risks associated with loading, using, modifying and/or\ndeveloping or reproducing the software by the user are brought to the user’s\nattention, given its Free Software status, which may make it complicated to use,\nwith the result that its use is reserved for developers and experienced\nprofessionals having in-depth computer knowledge. Users are therefore encouraged\nto load and test the suitability of the software as regards their requirements\nin conditions enabling the security of their systems and/or data to be ensured\nand, more generally, to use and operate it in the same conditions of security.\nThis Agreement may be freely reproduced and published, provided it is not\naltered, and that no provisions are either added or removed herefrom.\n\n\nCopyright\n---------\n\n* Copyright Daniel Berthereau, 2018-2024 (see [Daniel-KM] on GitLab)\n\n\n[Omeka S]: https://omeka.org/s\n[Next]: https://gitlab.com/Daniel-KM/Omeka-S-module-Next\n[shortcode as a page]: https://github.com/omeka/plugin-SimplePages/pull/24\n[#1156]: https://github.com/omeka/omeka-s/issues/1156\n[#1258]: https://github.com/omeka/omeka-s/issues/1258\n[#1259]: https://github.com/omeka/omeka-s/issues/1259\n[#1274]: https://github.com/omeka/omeka-s/issues/1274\n[#1276]: https://github.com/omeka/omeka-s/issues/1276\n[#1281]: https://github.com/omeka/omeka-s/issues/1281\n[#1283]: https://github.com/omeka/omeka-s/issues/1283\n[#1301]: https://github.com/omeka/omeka-s/issues/1301\n[#1371]: https://github.com/omeka/omeka-s/issues/1371\n[#1464]: https://github.com/omeka/omeka-s/issues/1464\n[#1493]: https://github.com/omeka/omeka-s/issues/1493\n[#1497]: https://github.com/omeka/omeka-s/issues/1497\n[Common]: https://gitlab.com/Daniel-KM/Omeka-S-module-Common\n[Generic]: https://gitlab.com/Daniel-KM/Omeka-S-module-Generic\n[Bibliography]: https://gitlab.com/Daniel-KM/Omeka-S-module-Bibliography\n[Advanced Search Plus]: https://gitlab.com/Daniel-KM/Omeka-S-module-AdvancedSearchPlus\n[Block Plus]: https://gitlab.com/Daniel-KM/Omeka-S-module-BlockPlus\n[Bulk Edit]: https://gitlab.com/Daniel-KM/Omeka-S-module-BulkEdit\n[Menu]: https://gitlab.com/Daniel-KM/Omeka-S-module-Menu\n[Easy Admin]: https://gitlab.com/Daniel-KM/Omeka-S-module-EasyAdmin\n[Log]: https://gitlab.com/Daniel-KM/Omeka-S-module-Log\n[Verovio]: https://gitlab.com/Daniel-KM/Omeka-S-module-Verovio\n[XML Viewer]: https://gitlab.com/Daniel-KM/Omeka-S-module-XmlViewer\n[installing a module]: https://omeka.org/s/docs/user-manual/modules/#installing-modules\n[module issues]: https://gitlab.com/Daniel-KM/Omeka-S-module-Next/-/issues\n[CeCILL v2.1]: https://www.cecill.info/licences/Licence_CeCILL_V2.1-en.html\n[GNU/GPL]: https://www.gnu.org/licenses/gpl-3.0.html\n[FSF]: https://www.fsf.org\n[OSI]: http://opensource.org\n[MIT]: http://opensource.org/licenses/MIT\n[GitLab]: https://gitlab.com/Daniel-KM\n[Daniel-KM]: https://gitlab.com/Daniel-KM \"Daniel Berthereau\"\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaniel-km%2Fomeka-s-module-next","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaniel-km%2Fomeka-s-module-next","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaniel-km%2Fomeka-s-module-next/lists"}