summaryrefslogtreecommitdiffstats
path: root/ogcp/templates
Commit message (Collapse)AuthorAgeFilesLines
* Add and restyle clients statesJavier Sánchez Parra2021-07-201-5/+7
| | | | | | | | | | | | | | | | This patch adds new states: OPG for clients in ogLive, BSY for busy clients, VDI for clients in OpenGnsys VDI and WOL_SENT for booting clients. It also removes state ON because do not exists. ogCP currently uses the following colors: * OPG -> Solid yellow * BSY -> Solid red * VDI -> Solid green * WOL_SENT -> Solid brown * OFF -> Hollow grey
* Update scopes tree dynamicallyDaniel García Moreno2021-07-071-2/+18
| | | | | | | | | | | | | | | | | This patch adds a javascript function to update the scope tree (on/off) state. This javacript function is called every second, does a call to the new backend endpoint `/scopes/status` and updates the tree classes depending on the current data. The new `/scopes/status` endpoint just returns the scopes tree as json. This patch also adds an icon in the tree leafs, a filled green circle when the state is `on`, and a empty red circle when the state is `off`. There's also a new javascript function to unfold all collapses in the scope tree.
* Create "Add Center" form and viewJavier Sánchez Parra2021-06-302-0/+17
| | | | | | | | 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 new partition button in setup actionDaniel García Moreno2021-06-302-9/+74
| | | | | | | | | | | | | | | | | | | | | This patch adds a way to add a new partition to the setup.html template. This button opens a modal dialog with a new form and calls a new endpoint to create the new partition (this endpoint does nothing, it's needed to be implemented in the future). I've followed the initial design for this template, with one form per each partition, so every button will call a function and reload the page. It's possible to do all actions at once, but that will require a rework of this, to do that we can just define an unique form in the whole html, remove all the "Modify" buttons and add just one "Apply" button at the end. But maybe that option is a lot complex in the backend because will require to validate all the changes at once. This patch also improves the setup.html form without using flask-bootstrap and rendering the form in the template directly with the bootstrap4 classes.
* Add scopes_tree_collapse macroJose M. Guisado Gomez2021-06-303-2/+31
| | | | | | | | | | | | | 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.
* Keep the selection in the sidebar for mode & setupDaniel García Moreno2021-06-173-2/+3
|
* Don't show sidebar in login viewJose M. Guisado2021-06-171-2/+2
| | | | | Commit 22dcea19 introduced sidebar, which is not shown in index view. Disable sidebar in the login view too.
* Add commands view and macros.htmlJose M. Guisado2021-06-174-45/+67
| | | | | | | | | | | | 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 chart to dashboardDaniel García Moreno2021-06-082-66/+126
| | | | | | | This patch adds an example chart using chartjs to the dashboard to show the disk usage. https://www.chartjs.org/docs/latest/getting-started/
* Add sidebar and command bar to base templateDaniel García Moreno2021-06-084-67/+96
| | | | | | | | | | | | | 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.
* Restyle login.html templateDaniel García Moreno2021-06-011-5/+20
| | | | | | | | | Update the login template based on the AdminLTE extra page: https://adminlte.io/themes/v3/pages/examples/login.html This patch also adds a font-awesome icon to the login page, we've font-awesome from the AdminLTE plugins so we can use this icons in the interface.
* Use AdminLTE in base.htmlDaniel García Moreno2021-06-011-31/+44
| | | | | | | | | | This patch adds the css and js sources from the AdminLTE template to the base template so it can be used in all templates. There's also some flexbox bootstrap classes [1] to place the footer at the bootom always, even when there's no content to fill the page. [1] https://getbootstrap.com/docs/4.6/utilities/flex/
* Add "Delete Room" form and viewJavier Sánchez Parra2021-05-202-0/+17
| | | | | | | | 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-202-0/+17
| | | | | | | | | | | | | 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 ogLive list to the dashboardJavier Sánchez Parra2021-05-201-0/+15
| | | | | Add list with ogLives installed in the server and highlight the default ogLive.
* Add disk stats to the dashboardJavier Sánchez Parra2021-05-201-0/+33
| | | | | | | | | | | | Add the following disk stats to the dashboard: * Disk size: shows the amount of total disk size in Gibibytes. * used: shows the amount of used disk size in Gibibytes. * available: shows the amount of free disk size in Gibibytes. * use(%): shows the amount of used disk size in percentage.
* Add latest images to the dashboardJavier Sánchez Parra2021-05-201-0/+15
| | | | | | | Users want to know latest created/modified images to manage new images or changes made on existing images. This commit adds a list with the 10 latest created or modified images.
* Add number of images to the dashboardJavier Sánchez Parra2021-05-201-5/+15
| | | | Users want to easily know the number of images an ogServer has.
* Add cosmetic improvementsJose M. Guisado2021-03-2413-15/+85
| | | | | | | | * 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 loginJose M. Guisado2021-03-053-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | Ogcp requires a simple login page in order to avoid exposure of the ogServer API to anyone trying to access the web page. Because the main authorization mechanism in ogServer is the api token the login implemented for the ogcp does not include registration process but a single user and password specified in the ogcp.json. "USER": "user", "PASS": "pass" Adds two new views: /login and /logout. They are used to login the user so that the rest of views regarding ogServer functionality can be accessed in a "login required" fashion. Index view (/) is an exception, it can be accessed logged in or not so different data can be displayed. Templates can now access a variable "current_user" to get information about login status. This is a Flask-Login feature. - Templates regarding login can be found in templates/auth/ - Login form is defined in forms/auth.py to separate it from action_forms.py - Adds Flask-Login module to requirements.txt - Adds default user and pass in ogcp.json
* Make partition forms inline in setup/Jose M. Guisado2021-03-051-0/+4
| | | | | | | | quick_form macro from Flask-Bootstrap creates vertical forms by default, this rendered each partition spanning too much vertical space. Use form_type='inline' from quick_form macro to compact the whole setup form.
* Cosmetic enhacementsJose M. Guisado2021-03-051-1/+3
| | | | | | * Use validate_ips and flashed messages for some more actions. * Use extra_classes in quick_form macro to add bootstrap classes to rendered forms
* Add boot mode to actionsJose M. Guisado2021-02-172-0/+15
| | | | | | 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-163-7/+13
| | | | | | | | | | | | 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.
* Start using Flask flash messagesJose M. Guisado2021-02-161-0/+15
| | | | | | These are used to store a message string that can be later accessed. We can use Flask flash messages to alert about any error or providing info when processing a request.
* Add image create templateJose M. Guisado2021-02-101-0/+11
| | | | | | | | Image creation action was lacking a template to render the form. This patch adds said template. Also redirects to /scopes when the request was processed by the ogserver successfully.
* Add software actionJose M. Guisado2020-10-292-0/+13
| | | | | | | | 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 templates for clients, hardware, restore, session and setupRoberto Hueso Gómez2020-10-275-0/+73
| | | | These templates were not added in previous commits.
* 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 404 default error handler.Roberto Hueso Gómez2020-09-041-0/+9
| | | | This handles HTTP 404 page does not exist errors.
* 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-042-3/+17
| | | | | | 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.
* Add bootstrap bundleRoberto Hueso Gómez2020-09-021-0/+1
| | | | This is used for multiple bootstrap components such as dropdown menus.
* Add frontend basic structureRoberto Hueso Gómez2020-08-312-0/+36
This adds base.html and nav.html templates as well as its dependencies on Bootstrap and jQuery.