Commit Graph

554 Commits

Author SHA1 Message Date
ernjvr a3d999c203 ui: change table header cursor for sortable columns to pointer (#2788)
In the UI, when a user navigates to a screen that displays a table of data and hovers the mouse over a sortable column header, the cursor does not change to a hand pointer, indicating to the user that it can be clicked on, in order to sort the table's data rows according to that column.
When the mouse hovers over the non-sortable 'Quickview' column header, it incorrectly displays a hand pointer cursor instead of a default cursor.
When the mouse hovers over a column header, it also does not display the column header's value as a tooltip.

Expected Behaviour:
The cursor type for a sortable column header must display a hand pointer.
The cursor type for the non-sortable 'Quickview' column header must display a default pointer.
When the mouse hovers over a column header it must display the column header's value as a tooltip.

Actual Behaviour:
The cursor type for a sortable column header incorrectly displays a default pointer.
The cursor type for the non-sortable 'Quickview' column header incorrectly displays a hand pointer.
When the mouse hovers over a column header it does not display the column header's value as a tooltip.

To Reproduce:
In the UI, navigate to a screen that displays a table of data and hover the mouse over a sortable column header, the cursor does not change to a hand pointer.
Hover the mouse over the non-sortable 'Quickview' column header and notice that it incorrectly displays a hand pointer cursor instead of a default cursor.
Hover the mouse over a column header and notice that it does not display the column header's value as a tooltip.
2018-08-08 12:09:38 +05:30
Nicolas Vazquez bf4f1bbb90 CLOUDSTACK-10126: Separate Subnet for SSVM and CPVM (#2368)
This extends work presented on #2048 on which the ability to extend the management range is provided.

Aim
This PR allows separating the management network subnet on which SSVM and CPVM are from the virtual routers management subnet.

Detailed use case
PCI compliance requires that network elements are defined as ‘in scope’ or ‘out of scope’, for compliance purposes. The SSVM and CPVM are both in scope as they allow public HTTP or HTTPS connections. The virtual routers have been defined as out of scope as they have been placed entirely in a firewalled network's segment. However, all of the system VM types share management network. As SSVM and CPVM are both in scope this would bring the virtual routers into scope as well, requiring individual audits of every virtual router. As this is not practical, the ‘management network’ which the SSVM and CPVM are on, and the management network which the virtual routers are on, must be separated by a firewall.

Description
By this feature it is possible to dedicate a created range for SSVM and CPVM (system vms) and provide a VLAN ID for its range.

A new boolean global configuration is added: system.vm.management.ip.reservation.mode.strictness. If enabled, the use of System VMs management IP reservation is strict, preferred if not. Default value is false (preferred).

Strict reservation: System VMs should try to get a private IP from a range marked for system vms. If not available, deployment fails
Preferred reservation: System VMS will try to get a private IP from a range marked for system vms. If not available, IP for range not marked for system vms is taken.
2018-01-05 13:19:03 +05:30
Rohit Yadav facc5945f0 CLOUDSTACK-10193: Fix smoke tests failures with new systemvmtemplate
- Several systemvmtemplate optimizations
- Uses new macchinina template for running smoke tests
- Switch to latest Debian 9.3.0 release for systemvmtemplate
- Introduce a new `get_test_template` that uses tiny test template
  such as macchinina as defined test_data.py
- rVR related fixes and improvements

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2017-12-23 09:22:44 +05:30
Rohit Yadav 0102e8593d CLOUDSTACK-10129: UX improvements and event timeline
- Fixes timezone issue where dates show up as nvalid in UI
- Introduces new event timeline listing/filtering of events
- Several UI improvements to add columns in list views
- Bulk operations support in instance list view to shutdown and destroy
  multiple-selected VMs (limitation: after operation, redundant entries
  may show up in the list view, refreshing VM list view fixes that)
- Align table thead/tbody to avoid splitting of tables

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2017-12-23 09:22:44 +05:30
Sigert Goeminne 880e475f40 CLOUDSTACK-9806: Nuage domain template selection per VPC
Co-Authored-By: Prashanth Manthena <prashanth.manthena@nuagenetworks.net>
Co-Authored-By: Frank Maximus <frank.maximus@nuagenetworks.net>

Bug: https://issues.apache.org/jira/browse/CLOUDSTACK-9806

Design Document: https://cwiki.apache.org/confluence/display/CLOUDSTACK/Nuage+domain+template+selection+per+VPC
2017-11-15 14:40:30 +01:00
Nicolas Vazquez 3f330a2199 CLOUDSTACK-10044: Update role permission (#2236)
This feature allows changing permission for existing role permissions, as those were static and could not be changed once created. It also provides the ability to change these permissions in the UI using a drop down menu for each permission rule, in which admin can select ‘Allow’ or ‘Deny’ permission.

Changes in the API:

This feature modifies behaviour of updateRolePermission API method:

New optional parameters ‘ruleid’ and ‘permission’ are introduced, they are mutual exclusive to ‘ruleorder’ parameter. This defines two use cases:
Update role permission: ‘ruleid’ and ‘permission’ parameters needed
Update rules order: ‘ruleorder’ parameter needed
Parameter ‘ruleorder’ is now optional
updateRolePermission providing ‘ruleorder’ parameter should be sent via POST
2017-08-11 12:24:50 +02:00
rashmidixit 49a862b223 CLOUDSTACK-9700: Allow user to Register/Copy templates to multiple zones at the same time 2017-05-15 14:07:22 +05:30
Rajani Karuturi 64776f38d6 Merge pull request #1852 from Accelerite/CLOUDSTACK-9695
CLOUDSTACK-9695: VM snapshot is disabled if the VM Instance is off
2017-04-27 11:15:31 +05:30
Sanket Thite bd80c8e179 VM snapshot is disabled if the VM Instance is off 2017-02-28 13:58:55 +05:30
Rohit Yadav 402253504e CLOUDSTACK-9783: Improve metrics view performance
This improves the metrics view feature by improving the rendering performance
of metrics view tables, by reimplementing the logic at the backend and data
served via APIs. In large environments, the older implementation would
make several API calls that increases both network and database load.

List of APIs introduced for improving the performance:

    listClustersMetrics
    listHostsMetrics
    listInfrastructure
    listStoragePoolsMetrics
    listVMsMetrics
    listVolumesMetrics
    listZonesMetrics

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2017-02-28 13:45:03 +05:30
Will Stevens 1f53adbac6 Merge pull request #1270 from anshul1886/CLOUDSTACK-9194
CLOUDSTACK-9194:  Making the console popup window resizable in IE to make sure the focus is not losthttps://issues.apache.org/jira/browse/CLOUDSTACK-9194

To test:

Open any VM console in IE, and try resizing the browser window of console
It should be resizable.

* pr/1270:
  CLOUDSTACK-9194:  Making the console popup window resizable in IE to make sure the focus is not lost.

Signed-off-by: Will Stevens <williamstevens@gmail.com>
2016-04-28 16:00:47 -04:00
Nitin Kumar Maharana a68918fef7 CLOUDSTACK-9268: Display VM in Load balancing rule in UI
Added jsonObj to newly created row in multiedit.js to stop listing the same VM again.
2016-02-02 22:54:53 +05:30
Remi Bergsma 0c8313acaa CLOUDSTACK-9254: Make longer names display pretty 2016-01-23 22:50:22 +01:00
Anshul Gangwar e985db9057 CLOUDSTACK-9194: Making the console popup window resizable in IE to make sure the focus is not lost. 2015-12-22 11:23:46 +05:30
Abhinandan Prateek 987fcbd441 CLOUDSTACK-8592: Implement Quota service
Quota service while allowing for scalability will make sure that the cloud is
not exploited by attacks, careless use and program errors. To address this
problem, we propose to employ a quota-enforcement service that allows resource
usage within certain bounds as defined by policies and available quotas for
various entities.  Quota service extends the functionality of usage server to
provide a measurement for the resources used by the accounts and domains using a
common unit referred to as cloud currency in this document. It can be configured
to ensure that your usage won’t exceed the budget allocated to accounts/domain
in cloud currency.  It will let user know how much of the cloud resources he is
using. It will help the cloud admins, if they want, to ensure that a user does
not go beyond his allocated quota. Per usage cycle if a account is found to be
exceeding its quota then it is locked. Locking an account means that it will not
be able to initiat e a new resource allocation request, whether it is more
storage or an additional ip. Needless to say quota service as well as any action
on the account is configurable.

Changes from Github code review:

- Added marvin test for quota plugin API
- removed unused commented code
- debug messages in debug enabled check
- checks for nulls, fixed access to member variables and feature
- changes based on PR comments
- unit tests for UsageTypes
- unit tests for all Cmd classes
- unit tests for all service and manager impls
- try-catch-finally or try-with-resource in dao impls for failsafe db switching
- remove dead code
- add missing quota calculation case (regression fixed)
- replace tabs with spaces in pom.xmls
- quota: though default value for quota_calculated is 0, the usage server
  makes it null while entering usage entries. Flipping the condition so
  as to acocunt for that.
- quotatypes: fix NPE in quota type
- quota framework test fixes
- made statement period configurable
- changed default email templates to reflect the fact that exhausted quota may not result in a locked account
- added quotaUpdateCmd that refreshes quota balances and sends alerts and statements
- report quotaSummary command returns quota balance, quota usage and state for all account
- made UI framework changes to allow for text area input in edit views
- process usage entries that have greater than 0 usage
- orocess quota entries only if tariff is non zero
- if there are credit entries but no balance entry create a dummy balance entry
- remove any credit entries that are before the last balance entry
  when displaying balance statement
- on a rerun the last balance is now getting added

FS: https://cwiki.apache.org/confluence/display/CLOUDSTACK/Quota+Service+-+FS
PR: https://github.com/apache/cloudstack/pull/768

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-12-07 23:02:48 +05:30
Remi Bergsma 2ae3e0c961 Merge release branch 4.6 to master
* 4.6:
  Fix event UUIDS missing on event bus
  Add select template dropdown when reinstall VM
  CLOUDSTACK-9068: Listing Port Forwarding Rules take too much time to load
2015-11-28 15:12:49 +01:00
Rohit Yadav ad592835c8 CLOUDSTACK-9020: Metrics views for CloudStack UI
Implements various metrics views based on a listView based widget that has following
properties:
  - vertically and horizontally scrollable with pagination/infinite scrolling
  - sortable columns (client side)
  - groupable/collapsible columns
  - alternate row coloring
  - refresh button to refresh views
  - threshold table cell coloring
  - panel/breadcrumb navigation
  - quick view action column
  - translatable labels
  - sorts after metrics is refreshed, if a column was previously sorted
  - sorts after adding rows on infinite scrolling if a column was pre-sorted
- Metrics views: Zones, Clusters, Hosts, Instances, Storage pools, Volumes
- Resource filtering/navigation: Zones->Clusters->Hosts->Instances->Volumes,
                                 Storage Pool->Volumes

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-11-19 15:17:44 +05:30
Rohit Yadav 0845edce1a CLOUDSTACK-9020: Implement collapsible columns and threshold colorings
Implements following in listView that generates tabular views;
- Collapsible columns in case of multi-header groupable columns
- Implements threshold coloring of cells in table
- Implements option to render a table that is scrollable in both x-y directions
- Support to only display status icon instead of label if compact is set to true
- Fixes quick-view alignment issue on Safari
- If a column was previously sorted, sorts after adding new rows
- If a supercolumn was collapsed, hides cell after adding new rows

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-11-19 15:17:43 +05:30
Rohit Yadav 106e9106c9 CLOUDSTACK-9020: Implement sorting for tables
Implements sorting for tables across CloudStack UI;
- General alphabetic/string based sorting
- Numeric sorting for columns if data appears numeric
- Special sorting comparator for state columns
- Avoids sorting quick view columns and other specific columns

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-11-19 15:17:43 +05:30
Rohit Yadav a48a224eae CLOUDSTACK-9020: Method to remove last panel from the breadcrumb
Adds a new method to cloudBrowser that can remove the last panel and link/ref
from the breadcrumb

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-11-19 15:17:43 +05:30
Nitin Kumar Maharana 48df255f71 CLOUDSTACK-9068: Listing Port Forwarding Rules take too much time to load
For setting the width of each data item for each row of Port Forwarding rules, it was processing all rules.

Basically for each data item, it was searching in all rules, which is un-necessary.
If there are N-Rules, It was processing N-times.

Now, it only processes one time by taking all N-rules at a time.
The previous solution was of O(NxN). Now its changed to O(N).
2015-11-17 23:02:55 +05:30
Milamber e64025a2b8 PR 906 (CLOUDSTACK-8930) and PR 912 combined. Bugs on localization buttons in zone wizard final step and Advanced search popup 2015-10-07 07:50:04 +01:00
Milamber 267994fa0b CLOUDSTACK-8744 Add missing localization (l10n) for several parts in the UI
- l10n for the SSH Key Pairs behavior
- l10n for Autoscaling / LB sections
- l10n for Reset password
- l10n on some strings for the installation Wizard
- l10n on some strings in VPN/VPC section
- l10n on Service offerings sections
- improve some FR translations
2015-08-18 11:16:14 +01:00
Kevin Dierkx 3acdd916b0 Removed large chunks of commented code 2015-08-07 14:55:59 +02:00
Kevin Dierkx 471a02d6a4 Removed leading tabs from ui/scripts/*.js 2015-08-07 11:58:13 +02:00
Kevin Dierkx 2bdbaf453e Removed trailing whitespace from ui/scripts/*.js 2015-08-07 11:25:15 +02:00
Rohit Yadav 7c206c30a5 CLOUDSTACK-8621: Allow UI plugins to be shown on navigation bar
Introduces a boolean option in UI plugins setting it to 'true' would display
the UI plugin on the left navigation bar.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>

This closes #563
2015-07-09 15:25:13 +05:30
Rajani Karuturi 0b8355920e Merge branch 'volume-upload' into master
This closes #206
2015-04-29 11:12:53 +05:30
Brian Federle 5608982c43 Fix encoding for user account label in header
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
(cherry picked from commit bfcdbeca29)
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-13 15:02:26 +05:30
ramamurtis 8591383bcc CLOUDSTACK-8307: UI not showing all Domains, if there are more than 24 domains then the last domain gets cut off on firefox and IE. Added a flag in treeview widget and based on the flag adding css class which will make overflow as scroll instead of the default auto.
Fixes #101

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2015-03-09 14:26:29 +05:30
ramamurtis da1d8f9dce volume upload: fixed the UI after the change to move params to header.
Signed-off-by: Rajani Karuturi <rajanikaruturi@gmail.com>
2015-02-27 17:40:06 +05:30
Jessica Wang 31dea7de2e volume-upload: UI > dialog widget - args.form.fileUpload.postUpload - fix a bug that loading image (spinning wheel, freezing screen) does not disappear after action succeeds/fails. 2015-01-30 17:08:21 -08:00
Jessica Wang c16d5a8221 volume-upload: UI > dialog widget > display $frameForm(the hidden form to submit file with signature/expires/metadata) in console log. 2015-01-22 15:45:08 -08:00
Jessica Wang 818f9cfcc7 volume-upload: UI > dialog widget > write log in console indicating callback() is triggered. 2015-01-21 15:11:44 -08:00
Jessica Wang eb180b131d UI > dialog widget > Allow passing custom data in POST request. 2015-01-21 12:33:16 -08:00
Brian Federle e92e46aba5 Dialog uploader -> getURL(): Pass $form 2015-01-20 10:53:24 -08:00
Jessica Wang f10709c756 Revert "Allow passing custom data in POST request"
This reverts commit e4d1049096.
2015-01-19 15:56:13 -08:00
Brian Federle e4d1049096 Allow passing custom data in POST request 2015-01-19 11:35:42 -08:00
Brian Federle d9a3268db6 Close dialog after upload 2015-01-16 09:24:29 -08:00
Brian Federle f243ae135b Add front-end file uploader 2015-01-14 11:26:38 -08:00
Brian Federle 82fa9184bf UI validation: Fix asterisk showing up on non-required fields 2015-01-07 08:49:27 -08:00
Wei Zhou 54db0d2a70 show Warning instead of Confirmation in confirm dialog if isWarning is set to true 2014-12-19 10:06:31 +01:00
Wei Zhou 19e99848c8 CLOUDSTACK-7882: SSH Keypair Creation/Selection in UI
Thanks Ilia Shakitko for the porting and testing.
2014-12-12 14:30:34 +01:00
Wei Zhou ed6333f3e4 [UI] bug fix: updateNetwork keep polling 2014-12-11 14:23:43 +01:00
Brian Federle db9c97e7f4 UI cleanup 2014-11-26 11:48:27 -08:00
Jessica Wang b11380eebe CLOUDSTACK-7943: UI > dialog widget > checkbox field > isChecked property > if isChecked property is a funciton, pass "args" along when calling isChecked() function. 2014-11-19 12:04:16 -08:00
Jessica Wang 21f39577e4 CLOUDSTACK-7826: UI - dialog widget - dependent dropdown field (dependsOn property specified) - fix a bug that default opton in dependent dropdown field didn't trigger change event handler until another option in dependent dropdown field was selected. 2014-10-31 15:33:07 -07:00
Gabor Apati-Nagy 94b16b3bd5 CLOUDSTACK-7766: Field Validations Missing for Ingress and Egress Rules 2014-10-29 10:19:22 -07:00
Gabor Apati-Nagy 70c09ed92a CLOUDSTACK-7659: UI: Upgrade jquery-validate lib to the latest 1.13.0 version with the additional-methods included. 2014-10-28 14:20:56 -07:00
Jessica Wang a3eaff8bb6 CLOUDSTACK-7736: UI - listView widget - select view dropdown on top of listView - prefilter() - include original args.context when passing it to prefilter(). 2014-10-16 12:34:26 -07:00