{"id":31202105,"url":"https://github.com/programmfabrik/fylr-plugin-ejc","last_synced_at":"2026-02-16T17:02:41.097Z","repository":{"id":274783908,"uuid":"924055582","full_name":"programmfabrik/fylr-plugin-ejc","owner":"programmfabrik","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-29T10:52:17.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-20T13:11:25.013Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Makefile","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/programmfabrik.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2025-01-29T10:37:20.000Z","updated_at":"2025-01-29T10:51:10.000Z","dependencies_parsed_at":"2025-01-29T11:43:52.521Z","dependency_job_id":null,"html_url":"https://github.com/programmfabrik/fylr-plugin-ejc","commit_stats":null,"previous_names":["programmfabrik/fylr-plugin-ejc"],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/programmfabrik/fylr-plugin-ejc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/programmfabrik%2Ffylr-plugin-ejc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/programmfabrik%2Ffylr-plugin-ejc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/programmfabrik%2Ffylr-plugin-ejc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/programmfabrik%2Ffylr-plugin-ejc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/programmfabrik","download_url":"https://codeload.github.com/programmfabrik/fylr-plugin-ejc/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/programmfabrik%2Ffylr-plugin-ejc/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29513435,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-16T09:05:14.864Z","status":"ssl_error","status_checked_at":"2026-02-16T08:55:59.364Z","response_time":115,"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":[],"created_at":"2025-09-20T13:06:57.013Z","updated_at":"2026-02-16T17:02:41.092Z","avatar_url":"https://github.com/programmfabrik.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# fylr-ejc-plugin\nPlugin to support EJC classes\n\n## Installation\n\nThe latest version of this plugin can be found [here](https://github.com/programmfabrik/fylr-plugin-ejc/releases/latest/download/fylr-plugin-ejc.zip).\n\nThe ZIP can be downloaded and installed using the plugin manager, or used directly (recommended).\n\nGithub has an overwiew page to get a list of [all release](https://github.com/programmfabrik/fylr-plugin-ejc/releases/).\n\n## Config endpoint\n\nUse the following endpoints to work with preferences:\n\n### `GET /api/v1/config/plugin/ejc/config`\n\nReturns all preferences known to the plugin. Currently there is only `prefs` available.\n\nFor access the [GJSON Syntax](https://github.com/tidwall/gjson/blob/master/SYNTAX.md) is used. For that the path is converted to **GJSON** by replacing `/` with `.`. `.` is replaced by `\\.`. Make sure to escape all path elements using the URL % escape notation. A `#` becomes a `%23`.\n\n### `POST /api/v1/config/plugin/ejc/config/prefs`\n\nPost all prefs, supported top level keys are:\n\n* `viewsets`\n\nTo access deeper members of JSON data, [SJSON](https://github.com/tidwall/sjson) is used. The GET rules for path replacements are applied for SJSON too, see the Example section for an example.\n\n## Examples\n\n### Replace all prefs with new data\n\n```bash\n\u003e curl -X 'POST' -d '{\"viewsets\": {\"views\": [{\"a\": \"b\"},{\"c\": \"d\"}]}}' -H \"Authorization: Bearer $ACCESS_TOKEN\" http://localhost/api/v1/config/plugin/ejc/config/prefs\n{\n    \"viewsets\": {\n        \"views\": [\n            {\n                \"a\": \"b\"\n            },\n            {\n                \"c\": \"d\"\n            },\n        ]\n    },\n    \"viewsets:info\": {\n        \"is_default\": false\n    }\n}\n```\n\n### Append an deeper nested item\n\n```bash\n\u003e curl -X 'POST' -d '{\"e\": \"f\"}' -H \"Authorization: Bearer $ACCESS_TOKEN\" http://localhost/api/v1/config/plugin/ejc/config/prefs/viewsets/views/-1\nnull\n```\n`null` is returned, because the `-1` doesn't work as a `GJSON` path.\n\n### Delete the first item in viewsets.views\n\n```bash\n\u003e curl -X 'DELETE' -H \"Authorization: Bearer $ACCESS_TOKEN\" http://localhost/api/v1/config/plugin/ejc/config/prefs/viewsets/views/0\n{\n    \"c\": \"d\"\n}\n```\n\n### Get all prefs of the plugin\n\n```bash\n\u003e curl -X 'GET' -H \"Authorization: Bearer $ACCESS_TOKEN\" http://localhost/api/v1/config/plugin/ejc/config\n{\n    \"prefs\": {\n        \"viewsets\": {\n            \"views\": [\n                {\n                    \"c\": \"d\"\n                },\n                {\n                    \"e\": \"f\"\n                }\n            ]\n        },\n        \"viewsets:info\": {\n            \"is_default\": false\n        }\n    }\n}\n```\n\n### Deep filter prefs\n```bash\n\u003e curl -X 'GET' -H \"Authorization: Bearer $ACCESS_TOKEN\" http://localhost/api/v1/config/plugin/ejc/config/prefs/viewsets/views/%23(c=d)/c\"\n\"d\"\n```\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprogrammfabrik%2Ffylr-plugin-ejc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprogrammfabrik%2Ffylr-plugin-ejc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprogrammfabrik%2Ffylr-plugin-ejc/lists"}