summaryrefslogtreecommitdiffstats
path: root/ogcp/views.py
Commit message (Collapse)AuthorAgeFilesLines
* views.py: prevent backtrace with unregistered clientAlejandro Sirgo Rica2024-10-101-0/+3
| | | | | Add check to skip unregistered clients in get_server_data_from_scopes to prevent KeyError exception.
* ogcp: add view to identify clients setup diferences before restoreAlejandro Sirgo Rica2024-10-021-23/+55
| | | | | | | | Add view to provide information before a restore operation where the selected clients have a not uniform partition setup. Show the view if only clients with not partition valid for a restore operation are selected.
* views: rename reference partitions variable in /image/restoreAlejandro Sirgo Rica2024-09-261-5/+5
| | | | | | Rename part_choices variable to reference_patitioning to improve readability and intent in the code that checks the uniformity of the client's partitions.
* views: ignore unsuported part types in /image/restore checksAlejandro Sirgo Rica2024-09-261-8/+10
| | | | | Evaluate only the viable partitions for a restore operation during checks for partition uniformity.
* views: report clients without cache in fetch and restoreAlejandro Sirgo Rica2024-09-261-1/+6
| | | | | Report clients without cache partition inthe decks of the target clients with enough cache to fit the target image.
* ogcp: improve cache report wordingAlejandro Sirgo Rica2024-09-261-1/+1
| | | | | | Use "Cache size" instead of "Disk size" in cache inspector. Inform that the missing space when the image does not fit in cache is additional space on top of the available space.
* templates: show real sizes in cache inspectorAlejandro Sirgo Rica2024-09-261-4/+4
| | | | Use real free and available cache in cache_inspector.html
* views: check if image fits in cache before /cache/fetchAlejandro Sirgo Rica2024-09-261-0/+11
| | | | | Check if the image fits in cache before a /cache/fetch request. Report the clients unable to store the image.
* views: improve checks for space available in cacheAlejandro Sirgo Rica2024-09-261-5/+2
| | | | | | Use the new "free_cache" field in GET /cache/list to check against the real available space to check if an image fits in cache.
* templates: improve client report in image create viewAlejandro Sirgo Rica2024-09-161-1/+4
| | | | | | | Remove the line reporting the IP of the selected client. No other view does that and that information is already available in the client pills. Add client pills widget.
* templates: add name and status to client listAlejandro Sirgo Rica2024-09-111-13/+28
| | | | | | | | | | | | | | | | Add a client name column to the client list view accessed through the Dashboard. Add status column to the client list. Move client status leyend into a separate file. Show the client status leyend in client list. Fix the 0 link speed conditional. Reuse the data returned by get_scopes() to reduce the number of requests.
* ogcp: add view to assign repo to clientsAlejandro Sirgo Rica2024-09-101-1/+61
| | | | | | | | | Add /action/repo/set in Commands to assign a repository to multiple clients. The view includes the actual repo assigned in the client pills and shows a table with the clients grouped by repo when multiple repos are assigned among the selected clients.
* templates: add efi data to /client/infoAlejandro Sirgo Rica2024-09-101-1/+10
| | | | Show EFI info obtained through GET /efi.
* views: set repo address limit to 128v1.1.3-31Alejandro Sirgo Rica2024-09-101-2/+3
| | | | Allow up to 128 IP addresses for repositories.
* views: sort repositories by nameAlejandro Sirgo Rica2024-09-041-6/+17
| | | | | | | Show repositories sorted in an alphanumeric fashion inside the sidebar of /images and the respective child views. Sort repositories in the sidebar of /repos.
* templates: add image name to title in image/configAlejandro Sirgo Rica2024-09-041-0/+1
| | | | Add image name to the title in the view image/config.
* ogcp: add server ip configurationAlejandro Sirgo Rica2024-09-031-1/+90
| | | | | | | | | | Enable server view in the main toolbar. Hide Add server and Delete server buttons. Add Update server button. Add server/update view to edit the server addresses.
* templates: show excluded clients from partition operationAlejandro Sirgo Rica2024-09-031-3/+11
| | | | | Show the list of IPs of the clients withut the selected disk to partition in the partition and format form.
* views: restrict image restore update and create to disk 1Alejandro Sirgo Rica2024-09-021-0/+8
| | | | | | Keep restore update and create image operations restricted to the first disk as enabling it for multiple disk is untested and requires more work.
* ogcp: add support for multi-disk partition and formatAlejandro Sirgo Rica2024-09-021-88/+104
| | | | | | | | | | | | | | | | | | Add support for selecting different disks in the disk inspector. Add disk_inspector.html as a template to show the disk contents of a client. The view can define the variable readonly_disk_inspector to make the view non editable. Use disk_inspector.html in the following views: - client details - partition and format Update code to obtain the partitions of a client to better fit the requirements of disk_inspector.html Remove code to setup the SetupForm as the contents of the disks are now dynamically loaded through javascript.
* ogcp: add support for multi-ip repositoriesAlejandro Sirgo Rica2024-08-301-25/+59
| | | | | | | | | | | | Add support for the new API REST for repository management where the address is a list of ips instead of a single string. Add dynamic address creation in /action/repo/update and /action/repo/add forms through delete and add buttons in the form. Update /image/restore and /cache/fetch to use repository_id. Add additional repository form validations.
* ogcp: add disk restrictions in partition and formatAlejandro Sirgo Rica2024-08-221-16/+29
| | | | | | | | | | | | Use common disk space across all the selected clients. Show dynamic disk partition graph in the partition view. Limit partition sizes dynamically in the form. Move js code to handle the addition and removal of partitions into the html file to debloat ogcp.js and keep the functions local to the only file they manipulate.
* views: remove accents in image nameAlejandro Sirgo Rica2024-08-211-1/+6
| | | | | Remove accents in image name string. Special characters are not supported for image names.
* ogcp: Add /action/cache/fetch endpointAlejandro Sirgo Rica2024-08-091-1/+90
| | | | Add view to request the download of images into the client's cache.
* views: enable multi-image deletionAlejandro Sirgo Rica2024-08-061-17/+20
| | | | Allow the deletion of multiple images in image/delete.
* views: fix image create backtracev1.1.3-28Alejandro Sirgo Rica2024-08-061-2/+0
| | | | | | Fix backtrace caused by efd0b8ac Don't access the field scopes in ImageCreateForm as it does not exist.
* views: sort images based on alphabetical name orderAlejandro Sirgo Rica2024-08-061-0/+13
| | | | | | Show images in alphabetical order in every views listing images. The only exception is the dashboard as it shows them from newer to older.
* ogcp: add connected clients list viewAlejandro Sirgo Rica2024-08-051-0/+22
| | | | | | Add view to show the connected clients with access to the client details of each one. The view is accessible through the main dashboard.
* views: add missing checks for offline ogServerv1.1.3-27Alejandro Sirgo Rica2024-07-251-5/+63
| | | | | check when the API REST responses are null and report that ogServer might be offline.
* views: restrict EFI part size to 500MiB or higherAlejandro Sirgo Rica2024-07-251-0/+5
| | | | | | | Modern Windows systems require higher EFI partition sizes than most other OS. Validate partition & format form to ensure the EFI partition has as size of 500MiB or higher.
* ogcp: add image restrict functionalityAlejandro Sirgo Rica2024-07-251-24/+106
| | | | | | | | | | | Add center scope restriction using /image/restrict. Add view in Images to update scope permissions. Disable images in Commands for image update and restore if the client belongs to a disabled center. Consolidate template code to render scope selection checkboxes.
* views: add repository_id to image/update payloadv1.1.3-26Alejandro Sirgo Rica2024-07-191-1/+1
| | | | | Give ogServer context about the proper repository to process the correct image.
* views: exclude clients with no partition in image/restore1.1.3-25Alejandro Sirgo Rica2024-07-171-0/+11
| | | | | | Clients cannot have an image restore when no partition configuration is available. Shown an error listing all the clients with no partitions.
* ogcp: show oglive client groups by ipAlejandro Sirgo Rica2024-07-171-3/+2
| | | | | Use the same visualization as the other parts of the web in the table that groups clients by ogLive.
* views: list default oglive in Set ogLive formAlejandro Sirgo Rica2024-07-171-10/+11
| | | | | | | Show default oglive as "ogLive (live name)" as the last option int the Set ogLive form. The previous implementation defined the default oglive as the most used when the default one is defined by /oglive/list.
* ogcp: show cache contents in client detailsAlejandro Sirgo Rica2024-07-161-28/+53
| | | | | | Show cache contents in client details for a more complete view of the client's state. Move the cache inspector code to its own template for reusability.
* ogcp: enable modification of client ipAlejandro Sirgo Rica2024-07-151-1/+2
| | | | | | Add 'id' value to the /client/update payload. Enable modification for the ip input field in the client update form.
* ogcp: show checksum in image infoAlejandro Sirgo Rica2024-07-121-0/+6
| | | | | | | Improve potential image troubleshooting within ogCP. Add checksum to the image info view. Show "Unknown" when no checksum is available.
* ogcp: add checksum to images in Manage cacheAlejandro Sirgo Rica2024-07-121-0/+1
| | | | | Ease detection of potential problems with images in cache. Show checksum under each image in the form.
* views: fix user scope filteringAlejandro Sirgo Rica2024-07-091-1/+2
| | | | | | | Create a copy of the array with scope references before the iteration and modification of the scopes dictionary. Prevent skipping values after deleting an element during the scope iteration.
* views: skip cache space checks if already contains the imageAlejandro Sirgo Rica2024-07-091-10/+23
| | | | | | | Skip checks of image_fits_in_cache() if the image data contains not 'size' or 'checksum' information. Skip checks for the clients with the image already in cache.
* ogcp: select images of selected partition in image/updateAlejandro Sirgo Rica2024-07-091-2/+14
| | | | | | | | | | | Select the image field value containing the restored image of the partition selected by the user. Create a dictionary where the key is the value= of the partition field and the value is the id of the image restored in the partition. Add each dictionary entry only only if the corresponding image exists in the repository. Pass the dictionary to the HTML template and convert it to JS.
* views: add auxiliar function is_valid_ip()Alejandro Sirgo Rica2024-07-091-9/+10
| | | | | Move ip validation logic to a separate function to make the code more expressive and reusable.
* ogcp: make client name field mandatory in client formAlejandro Sirgo Rica2024-07-091-0/+6
| | | | | | Add InputRequired validator to the name field of the ClientDetailsForm. Validate name value in the POST function.
* ogcp: use csv as new format for import clientsAlejandro Sirgo Rica2024-07-091-24/+47
| | | | | | | | | | | Replace dhcpd format with the simpler csv format to configure the list of clients to import in /action/clients/import. Replace regex parsing with a simpler manual parsing. Improve error report. Example configuration: client_name1,94:c6:91:a6:25:1a,10.141.10.100 client_name2,94:c6:91:a6:25:1b,10.141.10.101
* views: check invalid values in prettify_mac()Alejandro Sirgo Rica2024-07-041-3/+7
| | | | Return without modification if the MAC is not valid.
* views: validate MAC address after POSTAlejandro Sirgo Rica2024-07-031-2/+21
| | | | | | Check if the provided MAC address is valid in every form where the use has to provide one. Show an error message when the format is incorrect.
* views: show MAC as lowercase with colon separatorsAlejandro Sirgo Rica2024-07-031-4/+7
| | | | | | | Define a function to format the MAC string for every view in the web. Example of formatted MAC address: aa:bb:cc:dd:ee:aa Show MAC address in client pills in that same format.
* views: normalize every MAC address during POST processingAlejandro Sirgo Rica2024-07-031-3/+6
| | | | | | | | | | Use aabbccddeeaa as MAC format in every payload. List of accepted MAC formats: aabbccddeeaa aa:bb:cc:dd:ee:aa aa-bb-cc-dd-ee-aa aa.bb.cc.dd.ee.aa
* views: remove debug messages with payload infoAlejandro Sirgo Rica2024-07-011-2/+2
| | | | Remove print statements in views.py to reduce logging noise.