42 Commits

Author SHA1 Message Date
fa02987225 Merge branch 'ReturnFI:main' into ordev3 2026-01-03 22:21:31 +03:30
1d7523490c feat(users): update user table to include status, traffic usage, and expiry date with improved class names 2025-12-24 15:17:14 +03:30
810577ccae feat(users): update user display to show usage days and remove expiry days column 2025-12-24 12:25:16 +03:30
0e27db2b56 feat(users): add option for displaying 1000 users in the selection dropdown 2025-12-20 14:29:27 +03:30
b84ec1a9ac feat(expiration): add validation for expiration days and update user interface 2025-12-19 19:33:10 +00:00
7ddb30f75f feat: Implement server-side search for users 2025-11-08 19:51:42 +00:00
b5ad962345 feat(ui): Add client-side password validation 2025-11-05 20:22:26 +00:00
b898db944e feat: Add password editing to user modal 2025-11-05 20:14:44 +00:00
f600c0c329 feat(webpanel): add icons to add/bulk user forms 2025-10-28 19:50:27 +00:00
0903222982 feat(webpanel): enable searching by user note 2025-10-28 19:45:58 +00:00
1e763781ce feat(webpanel): integrate user note functionality into UI 2025-10-28 16:37:59 +00:00
66b0b4d83a feat(webpanel): enhance edit user modal UI with icons 2025-10-28 15:35:31 +00:00
5c3062320b feat(webpanel): make edit user username readonly 2025-10-28 15:31:12 +00:00
17660d6a54 feat: Add paginated user list with selectable limit 2025-10-25 18:55:55 +00:00
105371cb07 refactor: Externalize all template 2025-09-24 19:38:47 +00:00
51f375d1e8 feat(ui): enhance user list responsiveness on mobile and tablet
Improves usability of the user list for smaller screens with responsive
detail views and filter controls.

- Added collapsible detail rows to show key user info (Status, Traffic, Expiry, etc.) via toggle button.
- Adjusted table column visibility using Bootstrap (`d-none`, `d-md-table-cell`).
- Updated JS event handlers and column indices for responsive layout support.
- Replaced filter button group with a hamburger dropdown on mobile/tablet.
- Used Bootstrap responsive display classes to toggle between dropdown and full button set.
- Optimized card header space for smaller devices.
2025-09-20 12:58:38 +00:00
6eccaa58c1 feat: Add 'Day Usage' column to user table 2025-09-20 12:33:45 +00:00
949a12cea7 perf(core): implement efficient bulk user deletion
Revamps the entire user deletion process to resolve critical performance bottlenecks that caused the web panel and database to freeze when removing multiple users.

- **Backend:** Core scripts (`kickuser.py`, `remove_user.py`) and the database layer are re-engineered to handle multiple users in a single, efficient batch operation using MongoDB's `delete_many`.
- **API:** A new `POST /api/v1/users/bulk-delete` endpoint is introduced for batch removals. The existing single-user `DELETE` endpoint is fixed to align with the new bulk logic.
- **Frontend:** The Users page now intelligently calls the bulk API when multiple users are selected, drastically improving UI responsiveness and reducing server load.
2025-09-13 16:15:41 +00:00
d5d4935f69 feat(users): Integrate real-time online status and enhance UI 2025-09-05 13:16:41 +02:00
18d3a1029b perf(api): optimize bulk user URI fetching in webpanel
Refactored the web panel's user link generation to resolve a major performance bottleneck. Previously, fetching links for N users would trigger N separate script executions, causing significant delays from process startup overhead.

- Introduced a new bulk API endpoint (`/api/v1/users/uri/bulk`) that accepts a list of usernames and calls the backend script only once.
- Updated the frontend JavaScript in `users.html` to use this new endpoint, replacing N parallel API calls with a single one.
- Cleaned up the `wrapper_uri.py` script for better readability and maintainability.
2025-08-27 17:22:04 +03:30
c494250f9f feat(frontend): add bulk user link export feature to users page 2025-08-27 16:43:33 +03:30
eef7342bc3 feat(webpanel): add distinct colors for user statuses 2025-08-26 00:24:27 +03:30
495ed3a334 feat(frontend): implement bulk user creation UI 2025-08-21 00:14:52 +03:30
8f684de732 Feat: Add online user filter to users page 2025-08-20 00:53:19 +03:30
be5fe69f0b feat(web): Conditionally display IP limit UI based on service status 2025-08-13 23:06:43 +03:30
6c6576ae87 feat(web): Add unlimited IP controls to users page 2025-08-12 23:41:15 +03:30
6fa89e19f0 fix(ui): correctly populate edit modal for unlimited users 2025-08-08 01:34:03 +03:30
5b04b47e60 feat(frontend): Enhance user management UI and error handling in users.html
-   Added default values for "Traffic Limit" and "Expiration Days" in the "Add User" modal.
2025-05-09 00:12:42 +03:30
72b372b978 feat: Add user count, ID column, and sorting to users table
- Display total user count in the card header.
- Add a new '#' column to the user table showing the row number.
- Sort the user list alphabetically by username (case-insensitive) using Jinja filter before rendering.
- Update JavaScript column index references (`td:eq(n)`) to reflect the added '#' column.
2025-04-28 19:38:31 +03:30
fb221d350e Changes log:
feat: add user URI API endpoint
feat: integrate show_user_uri_api in users page
refactor: remove URI generation from viewmodel
2025-04-19 18:18:01 +03:30
7ad4a9839e fix: reload page after user edit for traffic usage update 2025-04-09 23:18:23 +03:30
e38bb4f864 Fix: Update table index references for user status and quota in edit user modal 2025-04-09 18:55:25 +03:30
f17ab3aa19 Merge branch 'original' of https://github.com/SeyedHashtag/dijiq into original 2025-04-08 20:25:16 +03:30
704f0988f3 Refactor: Update traffic usage display and calculations in user model and template 2025-04-08 20:25:13 +03:30
22d9c99ced Fix: Enable "Save Changes" button in Edit User modal 2025-04-05 23:17:02 +03:30
552b0ab7ca Fixed QR Code Display for Domain-Based URIs 2025-03-19 21:41:15 +03:30
aa712e3e6f feat: Enhance user management with multi-select, filters, validation, and UI improvements
- Implemented multi-user selection and deletion with confirmation.
- Added filter buttons (All, Not Active, Enable, Disable) with client-side logic.
- Fixed "Select All" checkbox to only affect visible users after filtering.
- Implemented real-time username validation (alphanumeric only).
- Added a disable to prevent submit validation error
- Ensured that select all deselect button, work with filters and sorting
- Improve UI to be more intuitive.
-Improved responsivity buttons in smaller devices
2025-02-18 13:19:11 +03:30
64ed92b4cf Fix UI in users.html when there's no users 2025-02-08 01:11:28 +00:00
af6d01f446 Remove missed JS "debugger;" 2025-02-04 01:22:15 +00:00
ce065dcbb0 Show /users endpoints even if there is no user yet 2025-02-03 19:56:13 +00:00
40a80f7bf3 Change JS in frontend to use API 2025-02-03 00:52:17 +00:00
f44d1f8b3a Add new templates 2025-02-02 22:44:51 +00:00