* Add Smarty and Twig template engines
* Update composer.json
* Convert Widgets class to template engine and PHPStan fixes
* Fix widget initialisation
* Fix panel widget initialisation
* chore: remove debug return
* feat: convert 403/404 pages to new template system and general tidy
* chore: style fixes
* feat: update latest pages to new template engine
* feat: template base should not be nullable in onPageLoad
* feat: set template base directory upon initialisation and allow custom smarty security directories
* chore: fix style
* Dependency updates
* Start i18n conversion
* Switch to ellipsis character
* Add Dutch language json
* Remove Dutch PHP language files + fix variables
* Further variable fixes
* WIP i18n Language class conversion
* Convert Cookie Consent module to new language format
* Further progress including timeago translations
* Misc
* Replace {x}
* Replace more {x} usage
* {{time}}
this took way too long
* replace last {x}
* Remove comments
So searching for {x} produces relevant results
* forgot to save
* move to onPageLoad
* Accept both string and int
* types in doc
* Remove unused (broken?) function
* Don't convert to string first
* Last arg doesn't seem to be used anywhere
* Time `{x}` replacements
* Email `{x}` replacements
* misc `{x}` replacements
* misc `{x}` replacements
* misc `{x}` replacements
* misc `{x}` replacements
* misc `{x}` replacements
* misc `{x}` replacements
* misc `{x}` replacements
* misc `{x}` replacements
* misc `{x}` replacements
* remove comments (makes searching for "{x}" nicer)
* misc `{x}` replacements
* JS `{x}` replacements
* Cleanup language initialization
* Change language constant + add pluralForm support
* Misc language update things
* Add script to find unused terms
* Check all quote types
* Remove most english translations from non-english languages
* Also match with more args
* Missed some apparently
* Missed some (more) apparently
* Misc work
* Add script to convert *all* language files to json
* Fix language codes
* Remove a lot of unused terms
* Remove a lot more unused terms
* Convert everything to JSON, delete old files, get installer working with new system
* Fix general configuration language dropdown + email messages
* Fix page load time, fix language term `set` method
* Fix discord integration command
* Misc
* Misc
* Uncomment RTL definition
* Misc
* Convert links
* Convert links
* Convert links
* Convert links
* Misc work (bolding, fixes, etc)
* Style fix
* Fix variable
* Fix#2668
* Fix old page load timers
* Fix installer group sync injector error
* Convert integration language terms
* Fix more integration language things
* Re-add upgrade script language things
* Resolve PR comments
* Remove unnecessary date()
* Resolve some PR issues
* Fix endpoint
* Style
* Fix Semantic -> Fomantic
* Fix Semantic -> Fomantic
* Return locale short code, not language id/name
Only the short code is interesting to the API, return short code in user info endpoint just like in the website info endpoint.
Also renamed to locale because it's language + region
* Revert "warn people to not translate old language files"
This reverts commit 690b77afff.
* Fix query when there are no filters
* Update 200-pr12.php
* Update footer.php
* insert time into string using placeholder
* Fix getDisplayname case
* Clean username
* PR suggestions
* Include newly created language in converted languages (migration)
* PR suggestions
* PR suggestions
* Update init.php
* Fix default language
Co-authored-by: samerton <samerton@users.noreply.github.com>
Co-authored-by: Robin <robinslot@hotmail.nl>
Co-authored-by: Robin <robin+git@rkslot.nl>
Co-authored-by: Partydragen <adrian_kili@outlook.com>
* Initial commit, big additions. Linking/verifying discord id is complete
* Update admin.php
* Better validation errors + language updating
* Apply role change on user edit page - still some things to flush out though
* flush out some edge cases
* Add role in discord upon account validation & more
* Add api endpoint (need to test) & a lot of TODOs
* fix announcements a bit on Default template
* define bot url for easier move to self-hosting
* Add discord->website (adding) sync & lots of the TODOs
* Add discord role removal api endpoint
* Add logging od discord role add/remove & fix log table
* Add api_url to discord request for extra security & add todo's for error handling
* More API error handling for discord bot
* Add boilerplate error handling if bot throws error
* Add error messages for all discord linking
* If they have a role on the site, give it to them when they verify their id
* Resolve Sam's review
* Add info msgs so people know where to get discord IDs
* Add all language translations and update NMC version strings