diff --git a/CHANGELOG.unreleased.md b/CHANGELOG.unreleased.md index 6590c2d3240..32ed66f307a 100644 --- a/CHANGELOG.unreleased.md +++ b/CHANGELOG.unreleased.md @@ -8,6 +8,7 @@ > Users must be able to say: “Nice enhancement, I'm eager to test it” - [Backup] Merge delta backups without copying data when using VHD directories on NFS/SMB/local remote(https://github.com/vatesfr/xen-orchestra/pull/6271)) +- [Proxies] Ability to copy the proxy access URL (PR [#6287](https://github.com/vatesfr/xen-orchestra/pull/6287)) ### Bug fixes @@ -42,5 +43,6 @@ - xo-remote-parser minor - xo-server minor - xo-vmdk-to-vhd patch +- xo-web minor diff --git a/packages/xo-web/src/common/intl/messages.js b/packages/xo-web/src/common/intl/messages.js index 40613405973..ffb8fd4789a 100644 --- a/packages/xo-web/src/common/intl/messages.js +++ b/packages/xo-web/src/common/intl/messages.js @@ -131,6 +131,7 @@ const messages = { // ----- Copiable component ----- copyToClipboard: 'Copy to clipboard', copyUuid: 'Copy {uuid}', + copyValue: 'Copy {value}', // ----- Pills ----- pillMaster: 'Master', @@ -2417,6 +2418,8 @@ const messages = { noProxiesAvailable: 'No proxies available', checkProxyHealth: 'Test your proxy', updateProxyApplianceSettings: 'Update appliance settings', + urlNotFound: 'URL not found', + proxyCopyUrl: 'Copy proxy URL', proxyTestSuccess: 'Test passed for {name}', proxyTestSuccessMessage: 'The proxy appears to work correctly', proxyTestFailed: 'Test failed for {name}', diff --git a/packages/xo-web/src/xo-app/proxies/index.js b/packages/xo-web/src/xo-app/proxies/index.js index c3b9074adf3..dfb66500b88 100644 --- a/packages/xo-web/src/xo-app/proxies/index.js +++ b/packages/xo-web/src/xo-app/proxies/index.js @@ -1,6 +1,7 @@ import _ from 'intl' import ActionButton from 'action-button' import addSubscriptions from 'add-subscriptions' +import copy from 'copy-to-clipboard' import decorate from 'apply-decorators' import Icon from 'icon' import NoObjects from 'no-objects' @@ -28,6 +29,7 @@ import Page from '../page' import deployProxy from './deploy-proxy' import { updateApplianceSettings } from './update-appliance-settings' +import Tooltip from '../../common/tooltip' import { getXoaPlan, SOURCES } from '../../common/xoa-plans' const _editProxy = (value, { name, proxy }) => editProxyAppliance(proxy, { [name]: value }) @@ -56,6 +58,17 @@ const ACTIONS = [ ] const INDIVIDUAL_ACTIONS = [ + { + collapsed: true, + disabled: ({ url }) => url === undefined, + handler: ({ url }) => copy(url), + icon: 'clipboard', + label: ({ url }) => ( + + {_('proxyCopyUrl')} + + ), + }, { collapsed: true, handler: (proxy, { deployProxy }) =>