Commit Graph

327 Commits

Author SHA1 Message Date
f0b401767b fix: remove icon loading from base mount() to prevent interference
- Moved icon loading to openIconModal() method instead
- This prevents any potential issues with child component mount methods
- Icon values are now lazy-loaded when modal is opened
2025-12-06 09:29:36 -05:00
93525f4908 fix: handle existing ri- prefix in stored icon names
- Check if icon already has ri- prefix before adding it
- Prevents ri-ri-icon-name double prefix error
2025-12-06 09:27:02 -05:00
ecd2e3fccd fix: correct escaped quotes in modal backdrop and match server list icon style
- Fixed escaped quotes in Alpine.js directives that were breaking the modal
- Changed icon button styling to match server list (bg-secondary/10 p-2 rounded-lg)
- Use x-dynamic-component for custom icons, x-ri-server-line for default
- Properly format all x-transition and @click attributes
2025-12-06 09:23:19 -05:00
374713faa6 fix: ensure Remix Icon CSS loads and add SVG fallback for default icon
- Added inline CSS link as fallback (in addition to @push)
- Changed default icon to use <x-ri-server-line> SVG component instead of font icon
- This ensures icon displays even if CDN CSS hasn't loaded yet
2025-12-06 09:19:47 -05:00
1a96bfdee0 fix: make server icon customization available on all pages
- Moved icon modal properties and methods from Overview.php to base Component.php
- All Proxmox Livewire components now inherit icon customization functionality
- Removed view restriction so modal works on all server pages (not just overview)
- Icon button is now clickable and functional on Network, Storage, Backups, etc.
2025-12-06 09:16:58 -05:00
60c5e5d93d refactor: switch server icon customization to use Remix Icon font
- Added Remix Icon CDN CSS (remixicon@4.5.0) to layout
- Replaced Heroicon components with Remix Icon font classes (ri-*)
- Using dynamic icon class binding in Alpine.js for modal grid
- Icon names updated to Remix format (e.g., server-line, github-line)
- Added more icons including gaming, OS, and brand icons
- Simplified icon rendering - no more individual template/x-if blocks
2025-12-06 08:45:03 -05:00
40a8392f0f refactor: replace Remix Icons with Heroicons for server icon customization
- Added blade-ui-kit/blade-heroicons to composer.json
- Replaced all ri-* icons with heroicon-o-* equivalents
- Updated icon names to use simple names (e.g., 'server' instead of 'ri-server-line')
- Updated icon button display switch statement
- Updated modal icon grid with Heroicons
- 80+ icons available for server customization
2025-12-06 08:34:27 -05:00
6f88c95e2a fix: add legacy iconSearchQuery property for stale sessions 2025-12-06 08:12:43 -05:00
b95c59be81 feat: reimplement server icon customization feature
- Add user_set_icon and user_set_icon_color to Server model fillable
- Add icon modal properties and methods to Overview component
- Add clickable icon button next to server hostname in layout
- Add icon picker modal with search, color selection, and preview
- Support for 100+ Remix icons across various categories
- Icons persist to database and display on page load
2025-12-06 08:07:52 -05:00
a0b43dde55 ui: move reinstall confirmation checkbox outside scroll area
Makes the confirmation checkbox always visible at the bottom of the modal
instead of being hidden inside the scrollable template list.
2025-12-06 07:58:04 -05:00
0c64561b4f fix: add legacy showIconModal property to prevent stale session errors
Users with cached Livewire state from before rollback were getting errors
because their browser was trying to set showIconModal which no longer existed.
Adding an empty property prevents these errors until they refresh.
2025-12-06 07:56:04 -05:00
3508a032db perf: make delete statistics modal open instantly
- Remove @entangle which caused server round-trip on modal open
- Pass statistic data inline via Alpine event dispatch instead of fetching from DB
- Add direct deleteStatistic(id) method for simpler deletion
- Modal now opens immediately without any server communication
2025-12-06 07:38:19 -05:00
f8427d8773 fix: dispatch proxmox-all-stats-loaded event on window instead of document
Alpine.js @event.window modifier listens on window object, not document.
This fix ensures the chartsLoaded state becomes true, removing the
max-h-[260px] constraint and allowing all 4 graphs to display.
2025-12-06 07:34:12 -05:00
d24fa0140f refactor: align storage calculations with Storage page logic for consistency 2025-12-05 07:02:50 -05:00
fc21cbe802 style: enhance warning messages for VM power state and storage quota exceeded 2025-12-05 06:58:11 -05:00
365aad5cb7 style: update warning messages for VM power state and storage quota exceeded 2025-12-05 06:54:46 -05:00
21cd954bc2 feat: add storage over-provisioned warning for exceeded quota 2025-12-05 06:52:31 -05:00
61b74aa0a1 feat: implement storage quota checks and VM state validation for drive management 2025-12-05 06:47:33 -05:00
2a07fe78fc fix: update storage quota checks to use 'meets or exceeds' logic for better clarity 2025-12-05 06:31:54 -05:00
0ba669340e feat: implement drive detachment limits and storage quota checks in Proxmox configuration 2025-12-05 06:27:54 -05:00
0d253e4d8b fix: update Proxmox instantiation and correct VM ID reference in storage content request 2025-12-05 06:19:52 -05:00
161af0f090 feat: enhance delete button styles and interactions for better user experience 2025-12-05 06:08:18 -05:00
b0388874d5 feat: enhance slot availability check for reattaching drives in Proxmox configuration 2025-12-05 06:05:38 -05:00
d467368ed8 feat: improve slot availability check for drive assignment in Proxmox configuration 2025-12-05 06:03:05 -05:00
63129a61ae feat: dispatch browser event to refresh page after successful drive move 2025-12-05 05:59:07 -05:00
ae2ab22453 feat: update drive removal logic to use 'delete' instead of 'none' to prevent CD-ROM creation 2025-12-05 05:57:37 -05:00
f40b53e301 feat: prevent moving drive to the same bus type and update UI to reflect current bus status 2025-12-05 05:56:13 -05:00
48f752c0f6 feat: update drive removal logic to use 'delete' instead of 'none' for SCSI configurations 2025-12-05 05:05:58 -05:00
43ebd70abe feat: add browser event dispatch for page refresh after drive detachment 2025-12-05 05:02:21 -05:00
f5a1fa6af5 feat: update drive bus change logic to preserve volume data and improve error messaging 2025-12-05 05:00:22 -05:00
060c7182c9 feat: enhance drive display with improved styling for size, cache, and AIO information 2025-12-05 04:58:34 -05:00
8f6ca9f7a5 feat: enhance drive information display with improved visual separators 2025-12-05 04:57:18 -05:00
352b98e0c7 feat: improve drive reattachment logic to safely remove unused entry after attaching volume 2025-12-05 04:55:21 -05:00
9f8c4eef04 feat: update drive reattachment logic to first set the disk on the new bus before clearing the unused slot 2025-12-05 04:46:55 -05:00
e765a87fa4 feat: update drive removal logic to first preserve volume data in an unused slot 2025-12-05 04:43:55 -05:00
6f75897266 feat: update drive detachment logic to preserve volume data by moving to unused slot 2025-12-05 04:41:42 -05:00
db6575a5de feat: enhance detach drive button styling and interactivity 2025-12-05 04:39:42 -05:00
edc9605191 feat: improve unused drive handling by retrieving exact disk value before reattachment 2025-12-05 04:37:52 -05:00
77ac1b1a4f feat: enhance drive reattachment UI by updating bus type labels and improving slot availability logic 2025-12-05 04:36:30 -05:00
adc4632e24 feat: implement reattach and delete functionality for unused drives with UI updates 2025-12-05 04:34:09 -05:00
dfb1de9abf feat: add unused drives handling and update device bus modal labels for clarity 2025-12-05 04:28:15 -05:00
3a42c267b0 feat: simplify drive display by removing advanced view conditions 2025-12-05 04:23:56 -05:00
62583abec8 feat: simplify SCSI controller configuration UI by removing advanced view restrictions 2025-12-05 04:23:24 -05:00
e37165e06e feat: add confirmation modals for detaching and deleting drives to enhance user experience 2025-12-05 04:21:36 -05:00
940c97da9f feat: enhance max allowed storage loading by integrating ExtensionHelper for improved settings management 2025-12-05 04:15:49 -05:00
061ec6145c Add storage management functionality to Proxmox extension
- Registered Livewire component for storage management.
- Updated routes to include storage management endpoint.
- Modified layout to add storage management link.
- Created storage management view with features to add, edit, and manage drives.
- Implemented modals for adding and editing drives with appropriate validations and options.
2025-12-05 04:11:20 -05:00
1a942c5975 feat: add help modal for mounting ISO images to enhance user guidance 2025-12-04 23:14:34 -05:00
061d4d3281 feat: remove help modal for ISO selection to simplify user interface 2025-12-04 23:13:16 -05:00
437b5e61d8 feat: remove modal for mounting ISO images to streamline user interface 2025-12-04 23:11:45 -05:00
dff21ea7cc feat: add global loader styles and replace SVG loaders with CSS loaders for improved performance 2025-12-04 23:06:57 -05:00