{"id":23149420,"url":"https://github.com/simonpoole/openinghoursfragment","last_synced_at":"2026-03-09T04:05:47.833Z","repository":{"id":36798801,"uuid":"41105615","full_name":"simonpoole/OpeningHoursFragment","owner":"simonpoole","description":"Android UI element for  displaying and editing an opening hours value","archived":false,"fork":false,"pushed_at":"2025-07-11T10:11:02.000Z","size":1440,"stargazers_count":9,"open_issues_count":17,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-13T12:49:48.530Z","etag":null,"topics":["android-library","openstreetmap"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/simonpoole.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.txt","contributing":null,"funding":null,"license":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2015-08-20T16:07:23.000Z","updated_at":"2025-07-11T10:07:55.000Z","dependencies_parsed_at":"2024-01-01T11:24:34.474Z","dependency_job_id":"d7734687-4901-4843-b3d8-a099df448639","html_url":"https://github.com/simonpoole/OpeningHoursFragment","commit_stats":null,"previous_names":[],"tags_count":54,"template":false,"template_full_name":null,"purl":"pkg:github/simonpoole/OpeningHoursFragment","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonpoole%2FOpeningHoursFragment","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonpoole%2FOpeningHoursFragment/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonpoole%2FOpeningHoursFragment/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonpoole%2FOpeningHoursFragment/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simonpoole","download_url":"https://codeload.github.com/simonpoole/OpeningHoursFragment/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonpoole%2FOpeningHoursFragment/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30282629,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-09T02:57:19.223Z","status":"ssl_error","status_checked_at":"2026-03-09T02:56:26.373Z","response_time":61,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["android-library","openstreetmap"],"created_at":"2024-12-17T17:54:44.516Z","updated_at":"2026-03-09T04:05:47.158Z","avatar_url":"https://github.com/simonpoole.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![build status](https://github.com/simonpoole/OpeningHoursFragment/actions/workflows/android.yml/badge.svg)](https://github.com/simonpoole/OpeningHoursFragment/actions) [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=OpeningHoursFragment%3Alib\u0026metric=alert_status)](https://sonarcloud.io/dashboard?id=OpeningHoursFragment) [![Coverage](https://sonarcloud.io/api/project_badges/measure?project=OpeningHoursFragment%3Alib\u0026metric=coverage)](https://sonarcloud.io/dashboard?id=OpeningHoursFragment) [![sonarcloud bugs](https://sonarcloud.io/api/project_badges/measure?project=OpeningHoursFragment%3Alib\u0026metric=bugs)](https://sonarcloud.io/component_measures?id=OpeningHoursFragment%3Alib\u0026metric=bugs) [![sonarcould maintainability](https://sonarcloud.io/api/project_badges/measure?project=OpeningHoursFragment%3Alib\u0026metric=sqale_rating)](https://sonarcloud.io/component_measures?id=OpeningHoursFragment%3Alib\u0026metric=Maintainability) [![sonarcloud security](https://sonarcloud.io/api/project_badges/measure?project=OpeningHoursFragment%3Alib\u0026metric=security_rating)](https://sonarcloud.io/component_measures?id=OpeningHoursFragment%3Alib\u0026metric=Security) [![sonarcloud reliability](https://sonarcloud.io/api/project_badges/measure?project=OpeningHoursFragment%3Alib\u0026metric=reliability_rating)](https://sonarcloud.io/component_measures?id=OpeningHoursFragment%3Alib\u0026metric=Reliability)\r\n\r\n# OpeningHoursFragment\r\n\r\nThis is a re-usable UI element for editing opening hour values that covers the complete specification, it is suitable for non-destructive editing (it will not overwrite or destroy valid opening hours values).\r\n\r\n![Screenshot](documentation/images/Screenshot_basic.png)\r\n\r\nPlease see the [end user documentation](lib/documentation/docs/help/en/Opening%20hours.md) for more information. \r\n\r\n## Usage\r\n\r\n### From a FragmentActivity\r\n\r\n``` java\r\n    FragmentManager fm = getSupportFragmentManager();\r\n    ...\r\n\tOpeningHoursFragment openingHoursDialog = OpeningHoursFragment.newInstance(key,finalValue, R.style.Theme_AppCompat_Light_Dialog_Alert, -1, true);\r\n\topeningHoursDialog.show(fm, \"fragment_opening_hours\");\r\n```\r\n\r\nThe calling activity needs to implement ch.poole.openinghoursfragement.OnSaveListener which will be used when the user saves a OH value. Have a look at the test app for a working trivial example.\r\n\r\n### From a Fragment\r\n\r\n``` java\r\n    FragmentManager fm = getChildFragmentManager();\r\n    ...\r\n\tOpeningHoursFragment openingHoursDialog = OpeningHoursFragment.newInstanceForFragment(key,finalValue, R.style.Theme_AppCompat_Light_Dialog_Alert, -1, true);\r\n\topeningHoursDialog.show(fm, \"fragment_opening_hours\");\r\n```\r\n\r\nThe calling Fragment needs to implement ch.poole.openinghoursfragement.OnSaveListener which will be used when the user saves a OH value. Have a look at the test app for a working trivial example.\r\n\r\nFor other variants please see the javadoc.\r\n\r\nIf you are overriding onActivityResult in the Activity calling the Fragment, you need to check that you calling through to super, or else loading and saving templates will fail silently. \r\n\r\n## Including in your project\r\n\r\nAdd the following to your *build.gradle* file(s):\r\n\r\n``` groovy\r\nrepositories {\r\n    maven {\r\n    \tmavenCentral()\r\n    }\r\n}\r\n```\r\n\r\n``` groovy\r\ndependencies {\r\n    compile \"ch.poole:OpeningHoursFragment:0.15.1\"\r\n}\r\n```\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonpoole%2Fopeninghoursfragment","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimonpoole%2Fopeninghoursfragment","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonpoole%2Fopeninghoursfragment/lists"}