Commit Graph

31 Commits

Author SHA1 Message Date
xboard
8f66a9af94 feat: add admin user plugin hooks
Added hooks:

- admin.user.fetch.query

- admin.user.transform

- admin.user.detail

- admin.user.update.rules

- admin.user.update.messages

- admin.user.update.params

- admin.user.update.before

- admin.user.update.after

- admin.user.secret.reset

- admin.user.destroy.before

- admin.user.destroy.after
2026-05-26 02:23:23 +08:00
xboard
1eb085d4c0 fix(security): harden password reset email code validation 2026-05-22 21:52:34 +08:00
xboard
135164056a fix: restore stripped protocol_settings fields for tuic/mieru/vmess 2026-04-19 00:45:47 +08:00
xboard
d406e440a7 feat: email template management with DB override, modern mail redesign 2026-04-18 15:41:23 +08:00
xboard
6796b70179 feat: machine mode, ECH subscriptions, batch ops & security hardening 2026-04-17 03:02:53 +08:00
xboard
209e862374 feat: add Vless Encryption support 2026-03-30 17:03:37 +08:00
xboard
1e7fa93f99 feat: node traffic limit & batch operations
- Traffic monitoring with transfer_enable limit
- Batch delete nodes
- Reset traffic (single/batch)
2026-03-30 02:50:56 +08:00
xboard
8b776b1ea1 feat: Trojan Reality support and protocol distribution optimizations 2026-03-23 14:56:41 +08:00
xboard
2e4bfe08df feat: Refactor uTLS & Multiplex Support, Node Status Push Optimization
- Server/ServerSave/Server.php: Unified utls and multiplex schema, validation, and defaults for vmess/vless/trojan/mieru protocols, enabling more flexible protocol configuration.
- Protocols (SingBox/ClashMeta/Shadowrocket/Stash/General): All protocol generators now support utls (client-fingerprint/fp) and multiplex options. Removed getRandFingerprint, replaced with getTlsFingerprint supporting random/custom fingerprints.
- Helper.php: Refactored TLS fingerprint utility to support object/string/random input.
- ServerService: Abstracted updateMetrics method to unify HTTP/WS node status caching logic.
- NodeWebSocketServer: Improved node connection, status push, and full sync logic; adjusted log levels; clarified push logic.
- ServerController: Reused ServerService for node metrics handling, reducing code duplication.
- Docs: Improved aapanel installation docs, added fix for empty admin dashboard.
2026-03-16 23:09:56 +08:00
xboard
d92c32fab5 feat: introduce WebSocket sync for XBoard nodes
- Implement Workerman-based `xboard:ws-server` for real-time node synchronization.
- Support custom routes, outbounds, and certificate configurations via JSON.
- Optimize scheduled tasks with `lazyById` to minimize memory footprint.
- Enhance reactivity using Observers for `Plan`, `Server`, and `ServerRoute`.
- Expand protocol support for `httpupgrade`, `h2`, and `mieru`.
2026-03-15 09:49:11 +08:00
xboard
662e1343d2 feat: add configurable ticket_must_wait_reply setting 2026-03-11 07:31:09 +08:00
xboard
ac8283a7bf feat(config): support custom telegram webhook url 2026-03-11 02:50:33 +08:00
xboard
9ef40d4918 allow free plans 2025-09-24 22:19:04 +08:00
xboard
6ac0cc7ce5 feat: support theme update and various improvements
- Add support for updating themes if a newer version is uploaded
- Hide config button for plugins without configuration items
- Auto refresh theme cache after panel update
- Fix issue where user used traffic cannot be set as a decimal
- Fix subscription issue for shadowrocket in v2board theme
2025-07-15 01:26:14 +08:00
xboard
c80dd82558 feat: multiple improvements and bug fixes
- Add gift card redemption feature
- Resolve custom range selection issue in overview
- Allow log page size to be modified
- Add subscription path change notification
- Improve dynamic node rate feature
- Support markdown documentation display for plugins
- Reduce power reset service logging
- Fix backend version number not updating after update
2025-07-14 00:33:04 +08:00
xboard
03a55bdd77 feat: add tags to plans, refactor order service, adn fix ticket lock 2025-07-01 11:14:18 +08:00
xboard
669eef6569 eat: add reCAPTCHA v3 and Cloudflare Turnstile verification support
- Implement reCAPTCHA v3 with score-based validation
- Add Cloudflare Turnstile as captcha alternative
- Create reusable CaptchaService for unified validation
- Support switching between recaptcha, recaptcha-v3, and turnstile
- Maintain backward compatibility with existing configurations
2025-06-28 18:01:59 +08:00
xboard
449c30d64e fix: resolve known issues and improve code standards
- Fix known bugs in user, plan, and server modules
- Standardize code formatting and structure
- Optimize database queries and model relationships
- Improve request validation and error handling
- Update admin controllers for better consistency
2025-06-22 17:38:17 +08:00
xboard
8f07e03b6e feat: enhance plan validation, traffic system and email verification
- feat: add plan price validation
- feat: make traffic packages stackable
- feat: add commission and invite info to admin order details
- feat: apply email whitelist to verification code API
- fix: subscription link copy compatibility for non-HTTPS
- fix: resolve route editing 500 error in certain cases
- refactor: restructure traffic reset logic
2025-06-22 01:18:38 +08:00
xboard
b271238094 fix: improve node filtering by client base_version, set subscription content-type, and add hop_interval support for hysteria2
- Refactor node filtering logic to correctly handle client base_version requirements.
- Set appropriate Content-Type header for subscription responses.
- Add support for hop_interval configuration in hysteria2 node delivery.
2025-05-24 13:45:32 +08:00
xboard
819d57dfe6 fix: resolve AnyTLS padding scheme modification issue 2025-05-23 20:47:17 +08:00
xboard
af420ea83a feat: add AnyTLS support and improve system functionality
- Add AnyTLS protocol support
- Add system logs viewing in admin panel
- Refactor client subscription delivery code
- Refactor hook mechanism
- Add plugin support for Shadowsocks protocol
- Add CSV export option for batch user creation
- Fix mobile admin login page width display issue
2025-05-22 17:58:22 +08:00
xboard
75c6d854b4 feat(admin): optimize subscription template configuration and add Surfboard subscription template
- Improved the code structure for subscription template configuration.
- Added a new feature in the admin panel to configure Surfboard subscription templates.
2025-05-16 05:13:49 +08:00
xboard
4845ff0739 fix: resolve PHPStan static analysis warnings 2025-05-07 19:48:19 +08:00
xboard
ea424ad0a8 Revert "fix: resolve PHPStan static analysis warnings"
This reverts commit b885e644a8.
2025-04-14 21:23:08 +08:00
xboard
b885e644a8 fix: resolve PHPStan static analysis warnings 2025-04-14 02:12:42 +08:00
xboard
7d5ef44e9f Fix: Handle null content in PlanResource::formatContent method
- Fix deprecated warning when passing null to str_replace() function\n- Use null coalescing operator to provide empty string as default value\n- Comply with PHP 8.2+ type requirements
2025-02-25 19:14:19 +08:00
xboard
58a9303e5f feat(admin): Add subscription template configuration and fix minor issues 2025-02-16 18:05:03 +08:00
xboard
a9516400c6 feat: new xboard 2025-01-21 14:57:54 +08:00
xboard
3e537cf544 fix: 修复用户订阅到期提醒、流量告急提醒的默认设置修改无效的问题 2023-11-23 23:59:08 +08:00
xboard
4ab8a9cb3c Initial commit 2023-11-17 14:44:01 +08:00