Commit Graph

74 Commits

Author SHA1 Message Date
Karolina Liskova
3f3cdd66a5 Allow configuring the bind address
Adds a config variable for bind address to support working in IPv6 environments.
2026-01-28 10:18:02 +00:00
Glenn de Haan
7af385c8fe Updated info.js to show deprecation messages when utilizing the options.json. Added translation status to info.js. Implemented the TRANSLATION_HIDDEN_LANGUAGES, TASK_CLEANUP_EXPIRED and TASK_CLEANUP_UNUSED environment variables in variables.js. Updated language dropdown to hide themselves if the number of allowed languages is lower than 2. Added the created at field within details.ejs. Implemented cleanup.js for automatically cleaning-up expired and unused vouchers. Updated the languages.js util with global filters. Added country flags to languages.js. Updated docker-compose.yml. Dependency updates. Updated README.md. Lowered log intensity within server.js 2025-08-26 18:21:30 +02:00
Glenn de Haan
f36fa1144a Refactored server.js into separate controllers. Implemented UNIFI_TOKEN startup check within info.js. Implemented KIOSK_HOMEPAGE environment variable. Implemented new / redirect structure base on KIOSK_HOMEPAGE variable. Implemented Admin UI button within kiosk.ejs. Updated array.js with new deprecated variables. Updated docker-compose.yml. Updated README.md. 2025-08-22 18:27:14 +02:00
Glenn de Haan
68dd918d31 Refactored print.js, bulk-print.ejs, details.ejs, email.ejs, print.ejs, voucher.ejs and size.js for object compatibility with the UniFi Integration API. Updated the unifi.js module to implement the UniFi Integration API. Added the UNIFI_TOKEN to variables.js. Added fetch.js util. Check for undefined state in notes.js. Added undici to the dependencies. server.js refactored for compatibility with the UniFi integration API. Fixed incorrect quote filter within server.js. Temporary fixed guest mapping to voucher_code instead of ids 2025-08-08 19:38:10 +02:00
Glenn de Haan
0c9aeac7a5 Updated to . Fixed bulk-print.ejs notes view. Updated details.ejs view with additional voucher metadata. Updated voucher.ejs notes view. Created notes.js utils for extracting voucher notes and metadata. Updated docker-compose.yml. Updated README.md. Implemented voucher note check for seperator misuse. Implemented new notes-metadata embed. Implemented new voucher filter within existing chain. Fixed notes sort to only filter on the notes not the metadata. Removed unused variable forward to voucher.ejs 2025-07-30 19:19:43 +02:00
bstrate
131f726d1c Cleanup code prior to pull request 2025-07-30 09:14:21 +02:00
bstrate
62db3af6db Cleanup code prior to pull request 2025-07-30 09:12:48 +02:00
bstrate
6951b99191 Merging PIN_OIDC_USER_TO_OWN_DOMAIN System to PR-Branch 2025-07-30 09:07:07 +02:00
Glenn de Haan
95cbad4fd8 Updated info.js to reflect auto kiosk print status. Implemented KIOSK_PRINTER environment variable. Updated docker-compose.yml. Dependency updates. Updated README.md. Implemented voucher auto-print within kiosk in server.js 2025-07-22 19:20:22 +02:00
Glenn de Haan
454d92b861 Updated kiosk.json with new translation strings. Updated info.js to reflect the multiple kiosk voucher types. Deprecated the KIOSK_VOUCHER_TYPE environment variable. Implemented the KIOSK_VOUCHER_TYPES environment variable with support for multiple voucher types. Moved the kiosk images (logo.png and bg.jpg) to a kiosk image sub-folder. Redesign of the kiosk.ejs language selector to provide space for custom images. Implemented voucher types within kiosk.ejs. Utilize the bytes converter within voucher.ejs to reformat bytes labels. Updated the docker-compose.yml. Updated the README.md. Implemented /kiosk custom assets overrides. Implemented a type check for the voucher types from kiosk requests 2025-07-09 18:57:32 +02:00
Glenn de Haan
5a59c93e2c Persist locale between kiosk voucher generation and email send page. Also ensure locale is used as language when sending the email from the kiosk page 2025-07-07 21:48:24 +02:00
Glenn de Haan
b3f1988982 Added guestName translation to kiosk.json. Implemented time.json to time util translations. Updated info.js to reflect kiosk name requirement. Updated mail.js and print.js for localized time translations. Implemented optional guest name (voucher note) within kiosk.ejs. Implemented translations within time.js. Updated docker-compose.yml. Updated dependencies. Updated README.md 2025-07-07 21:29:45 +02:00
Glenn de Haan
5b2f8a1b30 Updated info.js for new printers key. Updated print.js to forward ESC/POS printer IPs. Updated keys within variables.js. Added 'UI_BACK_BUTTON', 'PRINTER_TYPE' and 'PRINTER_IP' to the deprecated strings array.js. Updated status.js with new printing module. Updated docker-compose.yml environment variables. Updated dependencies. Hotfix body type for express v5. Updated README.md. Removed back button from navigation.ejs. Updated print.ejs and bulk-print.ejs with printer selection. Updated print logic within server.js to allow printer selection by user 2025-05-19 18:50:46 +02:00
Glenn de Haan
25d429a22b Dependency updates. Implemented en kiosk.json translations. Updated locale middleware config. Implemented translations within kiosk.ejs 2025-05-09 17:32:25 +02:00
Glenn de Haan
30ef63f277 Added the kiosk_example.png. Updated the README.md. Implemented timer styles within style.css. Added kiosk output within info.js. Set default locale to 'en' for mail.js. Implemented KIOSK_ENABLED and KIOSK_VOUCHER_TYPE environment variables within variables.js. Added kiosk_bg.jpg. Updated navigation.ejs with kiosk link. Added kiosk.ejs template. Updated status.ejs and status.js with kiosk module status. Updated docker-compose.yml. Added /kiosk routes to server.js. Added kioskEnabled states to required routes in server.js 2025-03-14 19:18:07 +01:00
Glenn de Haan
07d48578e7 Updated README.md. Implemented the /api/languages endpoint. Refactored the /api endpoint to return methods for each endpoint. Added the voucher id within /api/vouchers. Refactored the /api/voucher endpoint from GET to POST method. Implemented optional email sending within /api/voucher endpoint. Implemented missing comments within api code. Implemented missing HTTP status codes within api responses. Enabled JSON responses within Express 2025-02-25 19:21:36 +01:00
Glenn de Haan
ff455c57bf Updated screenshots. Fixed inconsistent 'unlimited' messaging. Implemented direct usage without overrides within unifi.js. Implemented voucher duration type dropdown during custom voucher creation. Implemented Multi-use (Limited/Quota) option during custom voucher creation. Updated README.md to reflect multi-use quota function within voucher type presets. 2025-01-21 17:34:24 +01:00
Glenn de Haan
9feeaa6bb6 Implemented expired states within templates. Implemented expired filter. Implemented notes within voucher creation. Implemented Notes within voucher overview and detail pages. Implemented notes sort option. Fixed incorrect voucher type when custom quotas are in use. Implemented quota display within templates. Implemented bulk printing for both PDF and ESC/POS modules. Updated README.md 2025-01-09 18:57:21 +01:00
Glenn de Haan
99382626de Implemented UI_BACK_BUTTON for kiosk users to navigate to the previous page. Removed h1 to clean-up UI 2025-01-05 16:18:05 +01:00
Glenn de Haan
5e6ddc7746 Dependency updates. Implemented TRANSLATION_DEFAULT to override default selected translation 2025-01-04 22:35:17 +01:00
Glenn de Haan
c3b36b55a3 Implemented the print.json translation file. Added a new print dialog. Moved /print function to a post request. Updated translation.js debug output. Implemented translator within print.js. Fixed typos. Removed unused utils from email and print components render function 2024-10-13 10:37:26 +02:00
Glenn de Haan
d5c19d021d Removed _locales.json implementation. Added language parameter to mail.js. Implemented regex check to translation.js. Added language dropdown to email component. Added languages.js 2024-10-10 19:36:07 +02:00
Glenn de Haan
1bc459de66 Swapped mail function parameters. Replaced throw errors for log warnings. Implemented fallback language in translation.js. Added express-locale for future web i18n use 2024-10-09 13:48:26 +02:00
Glenn de Haan
1fc446c72d Implemented sort and updated sync button layout 2024-10-09 09:58:13 +02:00
Glenn de Haan
7843a1e35d Implemented filters 2024-10-08 16:55:12 +02:00
Glenn de Haan
ded6547777 Implemented filter and sort selected functions 2024-10-08 15:29:05 +02:00
Glenn de Haan
a0b8520a6f Moved static routes before OIDC to prevent errors due to silent login 2024-10-07 15:51:23 +02:00
Glenn de Haan
f13ed225b3 Moved build info to variables.js. Simplified info.js build readout. Added versions to user dropdown 2024-10-07 11:34:06 +02:00
Glenn de Haan
7fb9956c10 Implemented Git version tag into docker build and GitHub actions. Implemented Release Notes button. Updated Documentation button to directly navigate to the README.md 2024-10-07 10:44:02 +02:00
Glenn de Haan
4418f9c347 Added Login with OIDC button to login page. Made login.ejs dynamic based on enabled authentication services. Made GitHub icon on login.ejs smaller. Refactored authorization.js middleware to support running both internal and OIDC authentication within the same instance. Added extra error to info.js when both authentication services are disabled but authentication itself is enabled. Updated status.js to correctly display both authentication services running at the same time. Updated README.md. Enabled /login when OIDC is enabled. Added missing middleware on /logout. Fixed JWT not initializing when authInternalEnabled is true 2024-10-03 13:56:28 +02:00
Glenn de Haan
3990144f07 Implemented new logout flow utilizing new /oidc/logout endpoints 2024-10-03 10:45:28 +02:00
Glenn de Haan
0dc4562ad8 Implemented the 'AUTH_INTERNAL_ENABLED' and 'AUTH_OIDC_ENABLED' environment variables. Removed complex if structures with 'AUTH_OIDC_ENABLED' checks. Updated README.md 2024-10-03 10:34:54 +02:00
Glenn de Haan
11873f4879 Replaced AUTH_PASSWORD with AUTH_INTERNAL_PASSWORD 2024-09-30 18:53:07 +02:00
Glenn de Haan
d653c124e2 Fixed error on force re-sync when UniFi is unavailable. Implemented check for deprecated environment variables. Implemented check for valid UniFi usernames. Implemented UniFi username check in unifi.js. Added array.js utils 2024-09-30 18:35:52 +02:00
Glenn de Haan
48f8bd3e36 Disabled userIcon for internal authentication 2024-09-24 20:56:46 +02:00
Glenn de Haan
be5f950568 Dependency updates. Fixed dark mode colors in details.ejs & email.ejs. Moved navigation to dedicated navigation.ejs file. Implemented user icon. Implemented user menu. Implemented /logout. Implemented Gravatar icon. Moved documentation and feature icons from menu to user menu 2024-09-24 19:09:28 +02:00
Glenn de Haan
b06a4ede65 Moved request logger to catch OIDC callback request for debugging 2024-09-22 21:48:20 +02:00
Glenn de Haan
73d17cdb3d Fixed missing email error response. Refactored email layout. Implemented voucher details in email layout 2024-09-21 08:09:07 +02:00
Glenn de Haan
8492616737 Created variables.js to replace duplicate code. Moved more cache.js logs to debug level. Fixed incorrect internal authentication state on status page. Updated dependencies. Fixed incorrect type check on /api/voucher/:type for HA users 2024-09-05 20:44:38 +02:00
Glenn de Haan
86ad4457de Moved application startup logs to dedicated info.js module. Lowered log output from unifi.js. Created tag.ejs partial. Implemented dedicated application status page. Updated voucher.ejs to implement status link. Lowered log output from cache.js. General cleanup of server.js. Implemented 501 Not Implemented responses when features are not enabled or configured properly 2024-09-04 18:01:41 +02:00
Glenn de Haan
1cd53e4227 Updated README.md. Reformat some docs. Implemented OIDC configuration verification on application start. Updated auth type check 2024-08-31 20:22:27 +02:00
Glenn de Haan
3c2155346a Migrated README.md images to .docs folder. Moved print logic to own module. Implemented ESC/POS printer support. Added logo_grayscale_dark.png. Replaced PDF logo. Implemented size.js util for dynamic PDF page length. Updated README.md. Updated auth output log with type. Updated print output log with printer ip 2024-08-30 20:56:11 +02:00
Glenn de Haan
3725698c46 Implemented custom express error page 2024-08-26 22:20:47 +02:00
Glenn de Haan
af3322cb7b Updated 'Voucher' log information. Implemented missing custom voucher log output. Implemented PRINTER_TYPE variable to prepare for future printers. Disabled printer function by default. Updated README.md 2024-08-25 10:18:37 +02:00
Glenn de Haan
bfe2d3998d Switched docker build to path based to allow .dockerignore to work. Implemented OIDC support. Updated README.md 2024-08-23 16:42:07 +02:00
Glenn de Haan
89bc27aef0 Fixed missing x-ingress-path within authorization.js redirects. Implemented local/development .options.json config 2024-08-21 21:05:31 +02:00
Glenn de Haan
3ba8d33456 Updated .dockerignore to remove unneeded files from container build. Updated docker-compose.yml with new environment variables. Updated README.md. Updated project description. Replaced DISABLE_AUTH with AUTH_DISABLE. Replaced SECURITY_CODE with AUTH_PASSWORD. Implemented AUTH_TOKEN for api authentication. Added migration guide. 2024-08-21 20:30:36 +02:00
Glenn de Haan
de07e51746 Hide email button when mail function is disabled 2024-08-17 14:11:27 +02:00
Glenn de Haan
c5cc7569f4 Implemented HA config parameters for mail functionality 2024-08-17 13:54:33 +02:00
Glenn de Haan
46dd565379 Updated Dependencies. Add axios override to patch CVE-2024-39338. Implemented email functionality. Updated README.md 2024-08-17 13:42:12 +02:00