37 Commits

Author SHA1 Message Date
Abhishek Kumar
1bfebd550c
ui: update project menu on projects change (#11369)
Fixes #11357

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-08-01 17:41:02 +05:30
Abhishek Kumar
951863c3fe
ui: add an infinite scroll select component (#10840)
Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2025-05-16 12:27:19 +02:00
Rohit Yadav
0a93dcec74
ui: load project list with minimum details (#9711)
This calls listProjects with details=min in the global header menu.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2024-09-20 08:53:28 -03:00
Rohit Yadav
5d9ae31f1b
UI: Admin, account and project dashboard improvements (#7956)
This PR aims at improving the CloudStack dashboard and introduces the following:

    Admin dashboard: six cards that are responsive to screen sizes and show zone specific compute, storage and network allocation, as well as instance/hosts stats, alerts and events. Now, by default, the admin dashboard shows aggegate data from all zones, with option for admin to select individual zone to see individual zone stats
    Account/project dashboard: six cards that are responsive to screen sizes and show account or project specific resource lists/counts, and limits shown in three cards as (a) compute (with running stopped instances), (b) storage and (c) network allocation, an admin-defined links/docs card (via config.json) and events cards. Admin is allowed to configure project limits on project dashboards.
    A global create button on the top global header/user-menu to allow for quick actions such as to deploy a VM, CKS cluster and create a volume (more actions can be added as desired via code changes) etc.

Doc PR - apache/cloudstack-documentation#349

---------

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2023-10-06 13:40:22 +05:30
Wei Zhou
3b05797344 Merge remote-tracking branch 'origin/4.18' 2023-08-24 18:32:56 +02:00
Charles Queiroz
2e1c2821a8
UI: Add central project store and watch functionality (#7900)
Added a new getter 'allProjects' and mutation 'RELOAD_ALL_PROJECTS' to centralize the tracking of available projects in the state.
This eliminates direct manipulation of the Project list in separate components and improves data consistency across the application.
A watcher in ProjectMenu.vue has been implemented to handle changes to the 'allProjects' getter.
The 'RELOAD_ALL_PROJECTS' mutation was also added where necessary to ensure projects list is updated in the state whenever changes occur.
2023-08-24 10:13:47 +02:00
Daan Hoogland
27f148e79e Merge branch '4.18' 2023-08-23 11:15:56 +02:00
Rohit Yadav
0e9a19f24d
ui: Fix project theme on reload or refresh (#7893)
* css fixes from main

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

* component: when in project, toggle the theme also

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

---------

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2023-08-22 14:20:45 +02:00
Harikrishna
b280370a98
Few UI fixes and details improvements (#7434)
* Better hover label and message for generate API/secret keys form

* Added a message to select network during instance deployment

* Removed project icon in dashboard listing

* Disable network operations for the user who does not have permission

* UI allignments

* added document help for sticky policy secion under load balancer

* Added tooltips and some form layout changes

* donot display options to configure when stickypolicy is none

* Network selection message allignment

* Fixed the grid view to be uniform in infra summary page
2023-05-02 17:06:54 +05:30
Hoang Nguyen
c8494354ca
UI: Fixes suffix icon on project selector not work (#6671)
* fix the animation suffix icon of select

* move style code
2022-08-25 22:14:31 +05:30
Hoang Nguyen
fecc5254de
ui: fixes style ui issues (#6261)
This PR for fixes some UI Bugs

 The project selected color is not displayed after switching project
 Project view, the cards are not separated but stick together
 Dashboard: The color of the selected zone is not displayed
 Dark mode: Hover through row tables that are discolored
2022-04-15 20:27:16 +05:30
Bryan Lima
603f88a9e5
[UI] Dont show project view menu when user doesn't have permission (#6081)
* Dont show project menu when user doesnt have permission

* Update ui/src/components/header/ProjectMenu.vue

Co-authored-by: Hoang Nguyen <hoangnm@unitech.vn>

* Removing unnecessary var

Co-authored-by: Hoang Nguyen <hoangnm@unitech.vn>
2022-03-12 00:11:03 -03:00
Hoang Nguyen
d258da5524
UI: Upgrade to Vue3 library (#5151)
* add new vue 3 library & and 2.x (beta)

* edit config files, settings, utils, store,... corresponding to Vue 3

* edit layout and config to suit the new library

* fix header & side menu

* components, autogenview

* fix dashboard & compute

* compute: fix form errors

* storage: fix form & template by vue3

* networks: fix form & template by vue3

* image: fix form & template by vue3

* project: fix by vue3 library

* user: fix by vue3

* iam: fix by vue3

* fix zoneWizard & tooltip click event

* fix infra > physicalnetwork & visible modal

* fix infra by vue3 & antdv 2x

* fix offerings by vue3

* fix plugin by vue3

* fix form & action form

* update the ant-design latest version

* fix icon, style dark mode, menu

* fix unittest

* fix babel plugins not found

* add name,ref missing & callback i18n not found

* fix slot & info icon

* fix unit test

* fix tooltip label of form item

* fix lint errors

* using global app, globalProperties

* add focus directive & edit the position of ctrl+Enter

* upgrage Vue 3 version

* fix main UT

* fix build failed

* using `optionFilterProp="label"' & fix build fail

* fix UT with new code

* fix icons of undefined

* fix error run app

* fix selectbox options

* add vue version for clear storage

* fix template

* fix template of iprange form

* fix warning test UT

* fix conflit

* fix build failed

* fix error run app the first time after upgrade

* fix auto-complete & watch object/array

* fix error run application

* fix error build

* fix form, icon, template & locales

* fix conflit & form

* remove slot errors

* fix error build & test UT

* fix error template

* Add licenses for missing files

* add scroll to first errors

* add scroll to first errors

* fix select filter, tag event

* add shallowRef async component are missing

* fix css, upgrade vue-cropper version

* fix css

* fix vue 3 coding for new components

* Remove unused components

* fixes `this` not found in @/roles

* fix redirect after login again when session expired error

* fix openKeys menu & watch router

* fixes

* fix build failed

* fixes

* fixes ut

* fixes

* fixes eslint

* fixes

* fixes

* fixes css

* fix menu sidebar css

* fix some css icon, images

* fix build fail

* fixes

* fixes

* fixes

* fixes

* fix publicip resource

* fixes ut

* fixes

* fixes

* fixes layout mode

* fixes dropdown filter columns

* fixes dashboard & hidden setting for normal user

* fixes

* fixes layout

* fixes avatar

* fixes

* Add missing else

* Fix query in routable paths

Co-authored-by: davidjumani <dj.davidjumani1994@gmail.com>
2022-03-09 09:47:09 -03:00
Pearl Dsilva
72a77d553d
UI: Fix issue while listing projects in the Project Menu - DashBoard (#6006) 2022-02-18 10:28:29 -03:00
Yashika
38181b2afa
Optional chaining used to enhance readability (#5961)
* Optional chaining used to enhance readability

* Added Suggested change

Co-authored-by: YashikaSarkar <65132044+YashikaSarkar@users.noreply.github.com>
2022-02-10 01:27:54 -03:00
Hoang Nguyen
121a72c4fa
UI - Fixes search error in selectbox (#5472)
* fix search select options

* fix error when selected zone

* fix filterOptions of selecbox
2021-09-20 14:42:18 -03:00
Pearl Dsilva
3f827ef22b
UI: Support to upload resource icons (#5157)
* Resource Icon support - backend

* Add API support for resourceicon

* update reponse params + ui support

* Add exclusive list api for icons and UI changes

* refactor upload view

* UI changes to support resource icon wherever necessary

* convert api to POST + refactor icon view

* Add response name to list API + cosmetic changes in UI

* Added support for the following:
resource icon support for vpcs, networks, domains, and projects
add icons to list view if reosurces support icons to be added
support for showing project icons in the project switching drop-down menu

* List resourceicon cmds to be allowed for user role too
Users to inherit account icon if present (in listUsers response)
Move common code to plugin.js
Add icon to project list view - while switching between projects - Dashboard page
Show icons against zones - Capacity Dashboard view
Show user / account icon at the login button if present

* cosmetic changes

* optimize ui code

* fix reload issue for domain view

* add access check for delete operation

* ui-related changes to show iso icons

* iso image in uservm response

* add icons to custom form's list resources

* some more custom forms aligned to show icon for resources

* conmitic changes + add listing of icons to listdomainchildren cmd

* Add backend/server-side validation for base64 string passed for image

* change preview border

* preselect zone if there's only one

* add default icon

* show icon for network list in deploy vm view

* add custom icons if any to the import-export VM view

* preselect zone persistence on clearing cache

* prevent root vol from inheriting template/iso icon

* show tempalte icon in the info card details

* fix icon not being show on hard-refresh / initial traversal

* fx success message
2021-09-15 00:50:42 -03:00
Hoang Nguyen
4dcd9a2329
ui: Moves fetchdata() to the created() (#4811)
This PR to move fetchData() to created() insteadof mount()
2021-04-05 14:28:00 +05:30
Hoang Nguyen
173b8e30ca project: The message empty or undefined when switch project (#735)
* fix message empty or undefined when switch project

* transalte message text

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:22 +05:30
davidjumani
1322990e73 saml: Adding Account Switcher for SAML Accounts (#575)
Adding Account Switcher for SAML Accounts in multiple domains matching the same saml user

Co-authored-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:21 +05:30
Pearl Dsilva
fa934769d6 projects: Enabling Role based Users in Projects (#382)
Enables creating role based users in projects
UI for feature: apache/cloudstack#4128

Also addresses issue: #485

Co-authored-by: Pearl Dsilva <pearl.dsilva@shapeblue.com>
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:20 +05:30
davidjumani
6f0522eaed src: Consolidated Bug fixes (#539)
Fixes :
- Don't allow users in UI to delete/archive events
- Fix button name in VM deployment form in its network section to Create new network
- Refresh after template / iso upload
- Making external-id mandatory in ImportBackupOffering
- Fixing visibility of assignVirtualMachineToBackupOffering
- Removing link on traffic label
- Defensive check in TrafficTypesTab
- Ensuring we get the user info so that store.getters.user is never empty when the page is freshly loaded
- Changing from report bug to report issue
- Ordering projects in menu
- Changing router get health check results
- Show configureHAForHost based on hypervisor
- Fix scale and migrate router
- Fix scale and migrate systemvm
- Fix show actionbutton for assignVirtualMachineToBackupOffering
- Fix show actionbutton for stopKubernetesCluster
- Fix show actions for volumes
- Fix show actions for snapshots
- Fix show actions for vm snapshots
- Fix show actions for backups
- Adding loading for tags and annotations
- Enter to submit advanced search
- Fixing show Project instead of account when passed as projectaccount passed in account field
- Show project name instead of displaytext
- Fixing template and iso actions
- Fixing tags with projectid
- Fix security groups ingress/egress rules view
- Removing redundant allocationstate from zones
- Adding managedstate to clusters
- Adding capacity tab to clusters and pods
- Adding routerlink to events in dashboard
- Set autofocus to username in login

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:20 +05:30
Nicolas Vazquez
df50082ddc locales: Add internationalization for the login, projects top bar, documentation and report errors (#494)
* Translate portal login
* Footer and header and more
* Internationalize header projects view
* Revert instance groups changes from this PR

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:20 +05:30
Rohit Yadav
0c0181511d compute: new instance hardware component
Refactor existing component in line of the VPC tab component

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:19 +05:30
Rohit Yadav
1b02a732c5 dashboard: loading and assorted fixes
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:19 +05:30
Rohit Yadav
2722202ccb dashboard: refresh on project change, fix project handlers
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:19 +05:30
Rohit Yadav
27292228be src: layout and notification fixes
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:18 +05:30
Rohit Yadav
2f02da1c95 config: automatic translation key migration (#370)
The new convention used:
- All lower keys
- Most keys start with `label.` prefix
- All spaces and underscores replaced with `.`

Quick ugly hack and similar for config `title`:
> IFS=$'\n'
> git grep -l "\$t('" | grep -v -e "\$t('label\." -e "\$t('message" -e "\$t('error" > ftr
> for f in $(cat ftr); do echo $f; for w in $(grep -Po '\$t\(\K[^)]*' $f | grep "^'" | grep -v -e ^\'message -e ^\'error -e ^\'label); do echo WORD IS $w; nw=$(echo $w | sed "s/$w/'label\.\L&/g" | sed "s/label\.'/label\./g" | sed "s/ /\./g" | sed "s/_/\./g"); echo $w = $nw; sed -i "s/\$t($w/\$t($nw/g" $f; done; done

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:18 +05:30
Rohit Yadav
a0910e18dc header: fix project dropdown lifecycle
Fixes #342

- Fix the project name to show currently selected project
- Reload project list of focus/clicking
- Fix icon size
- Remove code

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:18 +05:30
Hoang Nguyen
1312ec2b8b compute: Fix VM Deployment Wizard Issues (#273)
Fixes #254

 Pod, cluster, host should be hidden for normal and domain admin user
 Listing of all items are not done by passing account/domainid, or zoneid (for example listing of networks, template, isos for zone; keypair, affiinity groups etc for account/domain)
 Add a way to filter templates by featured, community, shared, mine?
 Multiple listing of templates for the same zone? (multiple radios button)
 Add button to add network that can open the add network popup or add a router-link?
 User data not properly base64 encoded (check encoding?)
 Add support for processing min/max cpu/ram based on type of compute offering selected and custom disk offering

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
Co-authored-by: Hoang Nguyen <hoangnm@unitech.vn>
Co-authored-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
Co-authored-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:17 +05:30
Hoang Nguyen
a8bdc99757 project: dashboard, custom actions and tabs (#73)
This fixes #41

Adds project specific dashboard tabs, custom actions and tabs for project view. Also adds quickview and other list/details view improvements.

Co-authored-by: hoangnm <hoangcit92@gmail.com>
Co-authored-by: Rohit Yadav <rohit@apache.org>
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:15 +05:30
Rohit Yadav
63e6173a26 components: styling and placement refactoring
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:14 +05:30
Rohit Yadav
d0393668c9 breadcrumb: reset to main view on home icon click
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:14 +05:30
Rohit Yadav
28088aa39e components: reusable details settings and new fixes/features (#38)
- Reusable details settings component for VM and templates, with autocompletion of options
- Instancegroup feature
- split monitor into individual event and alert tabs, move alerts to infra
- reimplement logo
- project selection refactorings
- use password input for relevant fields

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:14 +05:30
Gregor Riepl
eebf7fac8a eslint: fix missing eslint dependencies and lint errors (#19)
Fixes: #17
Fixes: #18

These dependencies are necessary or eslint will fail with the standard vue.js rule set.
The PR also includes fixes for all lint errors.

Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:14 +05:30
Rohit Yadav
db7265a1f7 src: add apache v2.0 license header to files
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:14 +05:30
Rohit Yadav
8b196ed56c src: codebase wide cleanup and refactorings
Signed-off-by: Rohit Yadav <rohit.yadav@shapeblue.com>
2021-01-20 07:06:14 +05:30