summaryrefslogtreecommitdiffstats
path: root/ogcp/templates/scopes.html
Commit message (Collapse)AuthorAgeFilesLines
* ogcp: add user permission mechanismAlejandro Sirgo Rica2024-06-271-13/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a new user permission system to control the allowed operations accessible from each account. Add a permission matrix editable through the user/add and user/edit views. The permission matrix has client, center, room, folder, image and repository as permission targets and add, update and delete as permission types. Restrict each view based on the user permissions, hide all actions from not autheticated users. permissions defined in the class UserForm. Serialize each user permissions into ogcp.json as: { ... "USERS" [ { "USER": "admin" ... "PERMISSIONS": { "CLIENT": { "ADD": true, "UPDATE": true, "DELETE": true, }, ... <- same structure for "CENTER", "ROOM", "FOLDER", "IMAGE" and "REPOSITORY" } }, ... ], ... } Grant all the permissions to old user configuration to not disrupt their workflow. The administrator will need to assign the permissions for each user. Ignore scope and permission restrictions for admin users. Save permissions and scopes even if the user is admin to account for the case of a temporal admin promotion without losing the previous configuration. Use template inheritance for add_user.html and edit_user.html to prevent big code duplication with the new HTML code to render the permission matrix. Make user administration an admin only feature. Define methods get_permission and target_is_disabled to improve readability in template conditionals that disable features based on user permissions.
* templates: rename Edit client to Update clientAlejandro Sirgo Rica2024-06-251-1/+1
| | | | | Rename Client/Edit client menu in scopes management view to keep the same naming pattern as the other menu elements.
* ogcp: add room details view to scopes managementAlejandro Sirgo Rica2024-06-171-0/+2
| | | | | | Add a readonly view for the room data. Mark all the form fields as readonly and set the hidden attribute to the submit field.
* ogcp: add center details view to scopes managementAlejandro Sirgo Rica2024-06-171-0/+2
| | | | | | Add a readonly view for the center data. Mark all the form fields as readonly and set the hidden attribute to the submit field.
* ogcp: add move client to scopes managementAlejandro Sirgo Rica2024-06-171-0/+2
| | | | | | | | | | Add front end for the client/move REST API. Enable the move of multiple clients selected from the sidebar of Scopes Management. Show the target of the move operation as a list of paths in a dropdown widget in the form. Each path will be structured as: Server/Center/Room The path will also contain folders if they are present.
* views: add update centerJavier Hernandez2024-02-091-0/+2
| | | | add view to update center data such as its name or comment.
* views: Add update roomJavier Hernandez2024-02-091-0/+2
| | | | Add view to modify room information such as name, gateway and netmask
* views: Add edit-folder1.1.3-15Javier Hernandez2024-02-051-0/+2
| | | | Add view to modify folder information such as name
* views: Add delete folderJavier Hernandez2024-01-101-0/+2
| | | | | | | Add functionality to allow the user to delete a folder. Show a confirmation page to the user listing the content of the folder that is about to delete
* src: Add support for adding foldersJavier Hernandez2024-01-101-0/+11
| | | | | | Add support to create a folder able to contain multiple computers. Add support for adding a folder able to contain rooms
* Add scope-management for non-admin usersJavier Hernandez2023-12-151-0/+4
| | | | | Add scope-management menu with limited commands for non-admin users; commands allowed are add/edit/edit/delete/import client(s)
* views: allow to edit a clientJavier Hernandez2023-11-241-0/+2
| | | | | | | | | | | Add a form to allow the user to update a client. ip field is in read only mode because this is the primary key to identify a client in db. Fields corresponding to boot mode (ie. oglivedir and boot) are also in read only for now; ogServer has to fix set boot mode functionality before it can be added here.
* Add different selection mode for the tree viewDaniel García Moreno2022-09-271-1/+1
|
* Add import clients actionJavier Sánchez Parra2022-04-191-0/+2
| | | | | | | | | | | Add import clients form with required inputs: room and dhcpd.conf. This permits users to rapidly add large amounts of clients to a room using dhcpd.conf's syntax. Users can copy full dhcpd.conf files to the text area and the parser only matches lines with the following format as clients: host dummy {hardware ethernet 12:34:56:78:90:ab; fixed-address 192.168.1.55; }
* Fix typo in scopes templateJavier Sánchez Parra2022-04-011-1/+1
| | | | | | Otherwise, scopes' actions do not set the scopes tree read only. Commit feed135554543 introduces this typo.
* Add back button to all actionsJavier Sánchez Parra2022-03-141-0/+5
| | | | Add a back button to facilitate users to return to the previous page.
* Disable scopes tree's checkboxes in action viewsJavier Sánchez Parra2022-03-101-1/+1
| | | | | Now users can select clients only in scopes and command views, in any other view we set the scopes tree read only.
* Set scopes nav buttons as activeJavier Sánchez Parra2022-03-071-9/+9
| | | | When loading any scopes view, its nav button becomes active.
* Group scopes buttons into dropdownsJavier Sánchez Parra2022-03-071-12/+33
| | | | | | Group related actions in the "scopes" section inside a dropdown button. Declutters the panel in which the buttons are displayed.
* Show selected clients in container blockJavier Sánchez Parra2022-02-231-0/+4
| | | | | | | | | | | | | | | | | | | On scopes and commands views, draw clients as users selects them in the scopes tree. Trigger client drawing on two events: 1."change" event, occurs when the user clicks a client checkbox. This event is standard [1]. 2. "show-client" event, fires when ogcp get selected clients from localStorage and when an user checks a parent checkbox. This event is custom. Dot characters (".") in clients names are replaced by underscore("_") when used as id to avoid errors. 1. https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/change_event
* Ask twice to delete clientsJavier Sánchez Parra2022-01-191-1/+1
| | | | | | | This commit adds an extra view to ensure users do not clients accidentally. It also includes Spanish translation of the new strings.
* Add "Delete center" actionJavier Sánchez Parra2021-07-301-0/+2
| | | | | | | | Creates "delete center" form with a select to choose a center to delete. Adds a new button in the scopes view. Because scopes checkboxes values maps to ips the only way to specify the center to delete is in the delete center form itself, using a select input.
* Add "Delete client" actionJavier Sánchez Parra2021-07-291-0/+2
| | | | | | | Adds a new button in the scopes view. This action handles clients deletion on one or multiple scopes. Users must select clients using the scopes tree.
* Create "Add Center" form and viewJavier Sánchez Parra2021-06-301-0/+2
| | | | | | | | Creates "add center" form with "name" as required input and "comment" as optional input. In the future, the CenterForm can be used to display center information once such functionality lands in the ogserver.
* Add scopes_tree_collapse macroJose M. Guisado Gomez2021-06-301-1/+1
| | | | | | | | | | | | | Being able to collapse the scopes tree allows to fit a bigger scopes tree. A new macro is introduced to generate the HTML code for the scope tree in such a way that each non-leaf level (center, room) are collapsible. macros.scopes_tree_collapse(scopes) As of now, the state of the scope tree is not saved when changing nav sections.
* Add commands view and macros.htmlJose M. Guisado2021-06-171-44/+3
| | | | | | | | | | | | Commands view has a scope sidebar with the content block filled with command buttons (poweroff, wol, etc.) This commit leaves scope create/delete/update buttons in the /scopes view, which serves that purpose. To avoid duplicating scope tree creation macro, an external macros.html is created, this template can be imported. Future macros needed can be written in there.
* Add sidebar and command bar to base templateDaniel García Moreno2021-06-081-46/+42
| | | | | | | | | | | | | Modify the base template to add the sidebar and command bar, implemented just in the scopes view. This patch also modifies the "actions/mode.html" template to be shown in the scopes page. Any other action that should be inside the scopes should do the same, add the scopes and clients to the template context and use the "scopes.html" as base in those actions. The notification has been also changed to use a toast notification instead of the usual alert to avoid changing the layout on error.
* Add "Delete Room" form and viewJavier Sánchez Parra2021-05-201-0/+2
| | | | | | | | Creates "delete room" form with a select to choose a room to delete. Adds a new button inside the button group in the scopes view. Because scopes checkboxes values maps to ips the only way to specify the room to delete is in the delete room form itself, using a select input.
* Create "Add Room" form and viewJose M. Guisado2021-05-201-0/+2
| | | | | | | | | | | | | Creates "add room" form with required inputs only: center, name and netmask. Adds a new button inside the button group in the scopes view. Because scopes checkboxes values maps to ips the only way to specify the center in which to add the room is in the add room form itself, using a select input. In the future, the RoomForm can be used to display room information once such functionality lands in the ogserver.
* Add cosmetic improvementsJose M. Guisado2021-03-241-6/+7
| | | | | | | | * Adds label for each action page. * Adds a colored state for opengnsys connected clients * Fix nav active item * Rename some actions * Adds DISK to partition and format form
* Add boot mode to actionsJose M. Guisado2021-02-171-0/+2
| | | | | | This action is related to /mode in ogServer API. Allows changing the netboot template for a set of given clients, previously selected in the /scopes view.
* Add some minor cosmetic changesJose M. Guisado2021-02-161-2/+2
| | | | | | | | | | | | This commit may serve for future reference as to how some cosmetic changes have been applied to the web. Primarily using bootstrap classes in order to adjust margin or padding, there are mechanisms that allow modifying the class of an underlying html element in WTForms. Bootstrap classes are written directly in html templates for Flask. Also add a Soleta branded footer.
* Add software actionJose M. Guisado2020-10-291-0/+2
| | | | | | | | This action lists every piece of software installed in an OS from a client. This action can handle listing the software from the DB as well as updating that DB with the latest client information.
* Add image create actionRoberto Hueso Gómez2020-10-291-0/+2
| | | | | This action handles the creation of the image in the DB as well as the '.img' file.
* Add image restore actionRoberto Hueso Gómez2020-10-231-0/+2
| | | | | This action provides the image restoring functionality on a specific client.
* Add session actionRoberto Hueso Gómez2020-10-221-0/+2
| | | | | This action provides the functionality to run one of the installed OSs in a client.
* Add client hardware actionRoberto Hueso Gómez2020-10-211-0/+2
| | | | This action lists all the hardware items in a client.
* Add create client actionRoberto Hueso Gómez2020-09-281-0/+2
| | | | | This action provides the functionality to add a new client to an ogServer.
* Add client details actionRoberto Hueso Gómez2020-09-281-0/+2
| | | | | This action is used to visualize the specific details of a client, such as its IP, Name, MAC, etc.
* Add partitions setup formsRoberto Hueso Gómez2020-09-141-1/+2
| | | | | This provides a menu to setup the internal partitions setup of each machine. Delete partitions is still just a placeholder.
* Add refresh actionRoberto Hueso Gómez2020-09-041-0/+3
| | | | This action can be applied on single or multiple scopes.
* Add WoL actionRoberto Hueso Gómez2020-09-041-3/+6
| | | | | | This action can be applied on one or multiple scopes. This implementation use Flask-WTF as a way to build and valdiate forms. As a side effect, this adds CSRF protection to all forms.
* Add reboot actionRoberto Hueso Gómez2020-09-031-0/+2
| | | | This action handles reboot on one or multiple scopes.
* Add scopes.html templateRoberto Hueso Gómez2020-09-021-0/+40
This template shows information about scopes and its states as well as a tool to apply actions on them. Style improvements are still necessary.