mirror of https://github.com/apache/cloudstack.git
Update UI for 3.0.x
-Complete localization for all UI elements, in en and ja -Hide logo/EULA for OSS version, when no eula.html is present -Language select on login screen -Misc. fixes reviewed-by: jessica
This commit is contained in:
parent
aec1204eb2
commit
7921811f31
|
|
@ -1,4 +1,74 @@
|
|||
label.installWizard.title=Hello and Welcome to CloudStack™.
|
||||
#new labels (begin) **********************************************************************************************
|
||||
message.migrate.instance.to.host=Please confirm that you want to migrate instance to another host.
|
||||
label.migrate.instance.to.host=Migrate instance to another host
|
||||
message.migrate.instance.to.ps=Please confirm that you want to migrate instance to another primary storage.
|
||||
label.migrate.instance.to.ps=Migrate instance to another primary storage
|
||||
label.corrections.saved=Corrections saved
|
||||
message.installWizard.copy.whatIsSecondaryStorage=Secondary storage is associated with a zone, and it stores the following:<ul><li>Templates - OS images that can be used to boot VMs and can include additional configuration information, such as installed applications</li><li>ISO images - OS images that can be bootable or non-bootable</li><li>Disk volume snapshots - saved copies of VM data which can be used for data recovery or to create new templates</ul>
|
||||
message.installWizard.copy.whatIsPrimaryStorage=A CloudStack™ cloud infrastructure makes use of two types of storage: primary storage and secondary storage. Both of these can be iSCSI or NFS servers, or localdisk.<br/><br/><strong>Primary storage</strong> is associated with a cluster, and it stores the disk volumes of each guest VM for all the VMs running on hosts in that cluster. The primary storage server is typically located close to the hosts.
|
||||
message.installWizard.copy.whatIsAHost=A host is a single computer. Hosts provide the computing resources that run the guest virtual machines. Each host has hypervisor software installed on it to manage the guest VMs (except for bare metal hosts, which are a special case discussed in the Advanced Installation Guide). For example, a Linux KVM-enabled server, a Citrix XenServer server, and an ESXi server are hosts. In a Basic Installation, we use a single host running XenServer.<br/><br/>The host is the smallest organizational unit within a CloudStack™ deployment. Hosts are contained within clusters, clusters are contained within pods, and pods are contained within zones.
|
||||
message.installWizard.copy.whatIsACluster=A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Virtual machine instances (VMs) can be live-migrated from one host to another within the same cluster, without interrupting service to the user. A cluster is the third-largest organizational unit within a CloudStack™ deployment. Clusters are contained within pods, and pods are contained within zones.<br/><br/>CloudStack™ allows multiple clusters in a cloud deployment, but for a Basic Installation, we only need one cluster.
|
||||
message.installWizard.copy.whatIsAPod=A pod often represents a single rack. Hosts in the same pod are in the same subnet.<br/><br/>A pod is the second-largest organizational unit within a CloudStack™ deployment. Pods are contained within zones. Each zone can contain one or more pods; in the Basic Installation, you will have just one pod in your zone
|
||||
message.installWizard.copy.whatIsAZone=A zone is the largest organizational unit within a CloudStack™ deployment. A zone typically corresponds to a single datacenter, although it is permissible to have multiple zones in a datacenter. The benefit of organizing infrastructure into zones is to provide physical isolation and redundancy. For example, each zone can have its own power supply and network uplink, and the zones can be widely separated geographically (though this is not required).
|
||||
message.installWizard.copy.whatIsCloudStack=CloudStack™ is a software platform that pools computing resources to build public, private, and hybrid Infrastructure as a Service (IaaS) clouds. CloudStack™ manages the network, storage, and compute nodes that make up a cloud infrastructure. Use CloudStack™ to deploy, manage, and configure cloud computing environments.<br/><br/>Extending beyond individual virtual machine images running on commodity hardware, CloudStack™ provides a turnkey cloud infrastructure software stack for delivering virtual datacenters as a service - delivering all of the essential components to build, deploy, and manage multi-tier and multi-tenant cloud applications. Both open-source and Premium versions are available, with the open-source version offering nearly identical features.
|
||||
message.installWizard.tooltip.addSecondaryStorage.path=The exported path, located on the server you specified above
|
||||
message.installWizard.tooltip.addSecondaryStorage.nfsServer=The IP address of the NFS server hosting the secondary storage
|
||||
message.installWizard.tooltip.addPrimaryStorage.path=(for NFS) In NFS this is the exported path from the server. Path (for SharedMountPoint). With KVM this is the path on each host that is where this primary storage is mounted. For example, "/mnt/primary".
|
||||
message.installWizard.tooltip.addPrimaryStorage.server=(for NFS, iSCSI, or PreSetup) The IP address or DNS name of the storage device.
|
||||
message.installWizard.tooltip.addPrimaryStorage.name=The name for the storage device.
|
||||
message.installWizard.tooltip.addHost.password=This is the password for the user named above (from your XenServer install).
|
||||
message.installWizard.tooltip.addHost.username=Usually root.
|
||||
message.installWizard.tooltip.addHost.hostname=The DNS name or IP address of the host.
|
||||
message.installWizard.tooltip.addCluster.name=A name for the cluster. This can be text of your choosing and is not used by CloudStack.
|
||||
message.installWizard.tooltip.addPod.reservedSystemEndIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers.
|
||||
message.installWizard.tooltip.addPod.reservedSystemStartIp=This is the IP range in the private network that the CloudStack uses to manage Secondary Storage VMs and Console Proxy VMs. These IP addresses are taken from the same subnet as computing servers.
|
||||
message.installWizard.tooltip.addPod.reservedSystemNetmask=The netmask in use on the subnet the guests will use.
|
||||
message.installWizard.tooltip.addPod.reservedSystemGateway=The gateway for the hosts in that pod.
|
||||
message.installWizard.tooltip.addPod.name=A name for the pod
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestEndIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR.
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestStartIp=The range of IP addresses that will be available for allocation to guests in this zone. If one NIC is used, these IPs should be in the same CIDR as the pod CIDR.
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestNetmask=The netmask in use on the subnet that the guests should use
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestGateway=The gateway that the guests should use
|
||||
message.installWizard.tooltip.configureGuestTraffic.description=A description for your network
|
||||
message.installWizard.tooltip.configureGuestTraffic.name=A name for your network
|
||||
message.installWizard.tooltip.addZone.internaldns2=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here.
|
||||
message.installWizard.tooltip.addZone.internaldns1=These are DNS servers for use by system VMs in the zone. These DNS servers will be accessed via the private network interface of the System VMs. The private IP address you provide for the pods must have a route to the DNS server named here.
|
||||
message.installWizard.tooltip.addZone.dns2=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here.
|
||||
message.installWizard.tooltip.addZone.name=A name for the zone
|
||||
message.installWizard.tooltip.addZone.dns1=These are DNS servers for use by guest VMs in the zone. These DNS servers will be accessed via the public network you will add later. The public IP addresses for the zone must have a route to the DNS server named here.
|
||||
message.setup.successful=Cloud setup successful!
|
||||
label.may.continue=You may now continue.
|
||||
error.installWizard.message=Something went wrong; you may go back and correct any errors
|
||||
message.installWizard.now.building=Now building your cloud...
|
||||
message.installWizard.click.retry=Click the button to retry launch.
|
||||
label.launch=Launch
|
||||
label.installWizard.click.launch=Click the launch button.
|
||||
label.congratulations=Congratulations!
|
||||
label.installWizard.addSecondaryStorageIntro.subtitle=What is secondary storage?
|
||||
label.installWizard.addSecondaryStorageIntro.title=Let’s add secondary storage
|
||||
label.installWizard.addPrimaryStorageIntro.subtitle=What is primary storage?
|
||||
label.installWizard.addPrimaryStorageIntro.title=Let’s add primary storage
|
||||
label.installWizard.addHostIntro.subtitle=What is a host?
|
||||
label.installWizard.addHostIntro.title=Let’s add a host
|
||||
label.installWizard.addClusterIntro.subtitle=What is a cluster?
|
||||
label.installWizard.addClusterIntro.title=Let’s add a cluster
|
||||
label.installWizard.addPodIntro.subtitle=What is a pod?
|
||||
label.installWizard.addPodIntro.title=Let’s add a pod
|
||||
label.installWizard.addZone.title=Add zone
|
||||
label.installWizard.addZoneIntro.subtitle=What is a zone?
|
||||
label.installWizard.addZoneIntro.title=Let’s add a zone
|
||||
error.password.not.match=The password fields do not match
|
||||
label.confirm.password=Confirm password
|
||||
message.change.password=Please change your password.
|
||||
label.save.and.continue=Save and continue
|
||||
label.skip.guide=I have used CloudStack before, skip this guide
|
||||
label.continue.basic.install=Continue with basic installation
|
||||
label.introduction.to.cloudstack=Introduction to CloudStack™
|
||||
label.what.is.cloudstack=What is CloudStack™?
|
||||
label.hints=Hints
|
||||
label.installWizard.subtitle=This tour will aid you in setting up your CloudStack™ installation
|
||||
label.continue=Continue
|
||||
label.installWizard.title=Hello and Welcome to CloudStack™
|
||||
label.agree=Agree
|
||||
label.license.agreement=License Agreement
|
||||
label.license.agreement.subtitle=Please accept the CloudStack™ EULA before installing.
|
||||
|
|
@ -207,11 +277,176 @@ label.notifications=Notifications
|
|||
label.default.view=Default View
|
||||
label.project.view=Project View
|
||||
|
||||
#cloudstack 3.0 (end) **********************************************************************************************
|
||||
message.add.system.service.offering=Please fill in the following data to add a new system service offering.
|
||||
message.action.delete.system.service.offering=Please confirm that you want to delete this system service offering.
|
||||
label.action.delete.system.service.offering=Delete System Service Offering
|
||||
label.hypervisor.capabilities=Hypervisor capabilities
|
||||
label.hypervisor.version=Hypervisor version
|
||||
label.max.guest.limit=Max guest limit
|
||||
label.add.network.offering=Add network offering
|
||||
label.supported.services=Supported Services
|
||||
label.service.capabilities=Service Capabilities
|
||||
label.guest.type=Guest Type
|
||||
label.specify.IP.ranges=Specify IP ranges
|
||||
label.conserve.mode=Conserve mode
|
||||
label.created.by.system=Created by system
|
||||
label.menu.system.service.offerings=System Service Offerings
|
||||
label.add.system.service.offering=Add System Service Offering
|
||||
label.redundant.router.capability=Redundant router capability
|
||||
label.supported.source.NAT.type=Supported Source NAT type
|
||||
label.elastic.LB=Elastic LB
|
||||
label.LB.isolation=LB isolation
|
||||
label.elastic.IP=Elastic IP
|
||||
label.network.label.display.for.blank.value=Use default gateway
|
||||
label.xen.traffic.label=XenServer traffic label
|
||||
label.kvm.traffic.label=KVM traffic label
|
||||
label.vmware.traffic.label=VMware traffic label
|
||||
label.start.IP=Start IP
|
||||
label.end.IP=End IP
|
||||
label.remove.ip.range=Remove IP range
|
||||
label.ip.ranges=IP Ranges
|
||||
label.start.vlan=Start Vlan
|
||||
label.end.vlan=End Vlan
|
||||
label.broadcast.domain.range=Broadcast domain range
|
||||
label.compute=Compute
|
||||
message.add.guest.network=Please confirm that you would like to add a guest network
|
||||
label.subdomain.access=Subdomain Access
|
||||
label.guest.start.ip=Guest start IP
|
||||
label.guest.end.ip=Guest end IP
|
||||
label.virtual.router=Virtual Router
|
||||
label.physical.network.ID=Physical network ID
|
||||
label.destination.physical.network.id=Destination physical network ID
|
||||
label.dhcp=DHCP
|
||||
label.destroy.router=Destroy router
|
||||
message.confirm.destroy.router=Please confirm that you would like to destroy this router
|
||||
label.change.service.offering=Change service offering
|
||||
label.view.console=View console
|
||||
label.redundant.state=Redundant state
|
||||
label.enable.provider=Enable provider
|
||||
message.confirm.enable.provider=Please confirm that you would like to enable this provider
|
||||
label.disable.provider=Disable provider
|
||||
message.confirm.disable.provider=Please confirm that you would like to disable this provider
|
||||
label.shutdown.provider=Shutdown provider
|
||||
message.confirm.shutdown.provider=Please confirm that you would like to shutdown this provider
|
||||
label.netScaler=NetScaler
|
||||
label.add.new.NetScaler=Add new NetScaler
|
||||
label.capacity=Capacity
|
||||
label.dedicated=Dedicated
|
||||
label.f5=F5
|
||||
label.add.new.F5=Add new F5
|
||||
label.srx=SRX
|
||||
label.providers=Providers
|
||||
label.add.new.SRX=Add new SRX
|
||||
label.timeout=Timeout
|
||||
label.public.network=Public network
|
||||
label.private.network=Private network
|
||||
label.enable.swift=Enable Swift
|
||||
confirm.enable.swift=Please fill in the following information to enable support for Swift
|
||||
message.after.enable.swift=Swift configured. Note: When you leave this page, you will not be able to re-configure Swift again.
|
||||
label.key=Key
|
||||
label.delete.NetScaler=Delete NetScaler
|
||||
message.confirm.delete.NetScaler=Please confirm that you would like to delete NetScaler
|
||||
label.delete.F5=Delete F5
|
||||
message.confirm.delete.F5=Please confirm that you would like to delete F5
|
||||
label.delete.SRX=Delete SRX
|
||||
message.confirm.delete.SRX=Please confirm that you would like to delete SRX
|
||||
label.pods=Pods
|
||||
label.pod.name=Pod name
|
||||
label.reserved.system.gateway=Reserved system gateway
|
||||
label.reserved.system.netmask=Reserved system netmask
|
||||
label.start.reserved.system.IP=Start Reserved system IP
|
||||
label.end.reserved.system.IP=End Reserved system IP
|
||||
label.clusters=Clusters
|
||||
label.cluster.name=Cluster Name
|
||||
label.host.MAC=Host MAC
|
||||
label.agent.username=Agent Username
|
||||
label.agent.password=Agent Password
|
||||
message.confirm.action.force.reconnect=Please confirm that you want to force reconnect this host.
|
||||
label.resource.state=Resource state
|
||||
label.LUN.number=LUN #
|
||||
message.confirm.remove.IP.range=Please confirm that you would like to remove this IP range.
|
||||
message.tooltip.zone.name=A name for the zone.
|
||||
message.tooltip.dns.1=Name of a DNS server for use by VMs in the zone. The public IP addresses for the zone must have a route to this server.
|
||||
message.tooltip.dns.2=A second DNS server name for use by VMs in the zone. The public IP addresses for the zone must have a route to this server.
|
||||
message.tooltip.internal.dns.1=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server.
|
||||
message.tooltip.internal.dns.2=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server.
|
||||
message.tooltip.network.domain=A DNS suffix that will create a custom domain name for the network that is accessed by guest VMs.
|
||||
message.tooltip.pod.name=A name for this pod.
|
||||
message.tooltip.reserved.system.gateway=The gateway for the hosts in the pod.
|
||||
message.tooltip.reserved.system.netmask=The network prefix that defines the pod subnet. Uses CIDR notation.
|
||||
message.creating.zone=Creating zone
|
||||
message.creating.physical.networks=Creating physical networks
|
||||
message.configuring.physical.networks=Configuring physical networks
|
||||
message.adding.Netscaler.device=Adding Netscaler device
|
||||
message.creating.pod=Creating pod
|
||||
message.configuring.public.traffic=Configuring public traffic
|
||||
message.configuring.storage.traffic=Configuring storage traffic
|
||||
message.configuring.guest.traffic=Configuring guest traffic
|
||||
message.creating.cluster=Creating cluster
|
||||
message.adding.host=Adding host
|
||||
message.creating.primary.storage=Creating primary storage
|
||||
message.creating.secondary.storage=Creating secondary storage
|
||||
message.Zone.creation.complete=Zone creation complete
|
||||
message.enabling.zone=Enabling zone
|
||||
error.something.went.wrong.please.correct.the.following=Something went wrong; please correct the following
|
||||
error.could.not.enable.zone=Could not enable zone
|
||||
message.zone.creation.complete.would.you.like.to.enable.this.zone=Zone creation complete. Would you like to enable this zone?
|
||||
message.please.add.at.lease.one.traffic.range=Please add at lease one traffic range.
|
||||
message.you.must.have.at.least.one.physical.network=You must have at least one physical network
|
||||
message.please.select.a.different.public.and.management.network.before.removing=Please select a different public and management network before removing
|
||||
|
||||
label.zone.type=Zone Type
|
||||
label.setup.zone=Setup Zone
|
||||
label.setup.network=Setup Network
|
||||
label.add.resources=Add Resources
|
||||
label.launch=Launch
|
||||
label.set.up.zone.type=Set up zone type
|
||||
message.please.select.a.configuration.for.your.zone=Please select a configuration for your zone.
|
||||
message.desc.basic.zone=Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering)
|
||||
label.basic=Basic
|
||||
message.desc.advanced.zone=For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support.
|
||||
label.advanced=Advanced
|
||||
message.desc.zone=A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone.
|
||||
label.physical.network=Physical Network
|
||||
label.public.traffic=Public traffic
|
||||
label.guest.traffic=Guest Traffic
|
||||
label.storage.traffic=Storage Traffic
|
||||
message.setup.physical.network.during.zone.creation=When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the management server. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.<br/><br/><strong>Drag and drop one or more traffic types</strong> onto each physical network.
|
||||
label.add.physical.network=Add physical network
|
||||
label.traffic.types=Traffic Types
|
||||
label.management=Management
|
||||
label.guest=Guest
|
||||
label.please.specify.netscaler.info=Please specify Netscaler info
|
||||
message.public.traffic.in.advanced.zone=Public traffic is generated when VMs in the cloud access the internet. Publicly-accessible IPs must be allocated for this purpose. End users can use the CloudStack UI to acquire these IPs to implement NAT between their guest network and their public network.<br/><br/>Provide at lease one range of IP addresses for internet traffic.
|
||||
message.public.traffic.in.basic.zone=Public traffic is generated when VMs in the cloud access the Internet or provide services to clients over the Internet. Publicly accessible IPs must be allocated for this purpose. When a instance is created, an IP from this set of Public IPs will be allocated to the instance in addition to the guest IP address. Static 1-1 NAT will be set up automatically between the public IP and the guest IP. End users can also use the CloudStack UI to acquire additional IPs to implement static NAT between their instances and the public IP.
|
||||
message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud.
|
||||
message.guest.traffic.in.advanced.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of VLAN IDs to carry guest traffic for each physical network.
|
||||
message.guest.traffic.in.basic.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of IP addresses that CloudStack can assign to guest VMs. Make sure this range does not overlap the reserved system IP range.
|
||||
message.storage.traffic=Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here.
|
||||
message.desc.cluster=Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers.
|
||||
message.desc.host=Each cluster must contain at lease one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.<br/><br/>Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts.
|
||||
message.desc.primary.storage=Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor.
|
||||
message.desc.secondary.storage=Each zone must have at lease one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.<br/><br/>Provide the IP address and exported path.
|
||||
label.launch.zone=Launch zone
|
||||
message.please.wait.while.zone.is.being.created=Please wait while your zone is being created; this may take a while...
|
||||
|
||||
label.load.balancing=Load Balancing
|
||||
label.static.nat.enabled=Static NAT Enabled
|
||||
label.zones=Zones
|
||||
label.view.more=View more
|
||||
label.number.of.zones=Number of Zones
|
||||
label.number.of.pods=Number of Pods
|
||||
label.number.of.clusters=Number of Clusters
|
||||
label.number.of.hosts=Number of Hosts
|
||||
label.total.hosts=Total Hosts
|
||||
label.total.CPU=Total CPU
|
||||
label.total.memory=Total Memory
|
||||
label.total.storage=Total Storage
|
||||
|
||||
#new labels (end) **********************************************************************************************
|
||||
|
||||
|
||||
|
||||
#cloudstack 2.2.Y (begin) ******************************************************************************************
|
||||
label.action.migrate.router=Migrate Router
|
||||
label.action.migrate.router.processing=Migrating Router....
|
||||
message.migrate.router.confirm=Please confirm the host you wish to migrate the router to:
|
||||
|
|
@ -253,7 +488,7 @@ label.action.unmanage.cluster=Unmanage Cluster
|
|||
message.action.unmanage.cluster=Please confirm that you want to unmanage the cluster.
|
||||
label.action.unmanage.cluster.processing=Unmanaging Cluster....
|
||||
|
||||
allocation.state=Allocation State
|
||||
label.allocation.state=Allocation State
|
||||
managed.state=Managed State
|
||||
|
||||
label.default.use=Default Use
|
||||
|
|
@ -760,7 +995,7 @@ label.no=No
|
|||
label.none=None
|
||||
label.not.found=Not Found
|
||||
label.num.cpu.cores=# of CPU Cores
|
||||
label.numretries = Number of Retries
|
||||
label.numretries=Number of Retries
|
||||
label.offer.ha=Offer HA
|
||||
label.optional=Optional
|
||||
label.os.preference=OS Preference
|
||||
|
|
@ -1065,129 +1300,6 @@ error.mgmt.server.inaccessible=The Management Server is unaccessible. Please tr
|
|||
error.session.expired=Your session has expired.
|
||||
error.unresolved.internet.name=Your internet name cannot be resolved.
|
||||
|
||||
#Jes
|
||||
message.add.system.service.offering=Please fill in the following data to add a new system service offering.
|
||||
message.action.delete.system.service.offering=Please confirm that you want to delete this system service offering.
|
||||
label.action.delete.system.service.offering=Delete System Service Offering
|
||||
hypervisor.capabilities=Hypervisor capabilities
|
||||
hypervisor.version=Hypervisor version
|
||||
max.guest.limit=Max guest limit
|
||||
security.group.enabled=Security group enabled
|
||||
add.network.offering=Add network offering
|
||||
supported.services=Supported Services
|
||||
service.capabilities=Service Capabilities
|
||||
guest.type=Guest Type
|
||||
specify.IP.ranges=Specify IP ranges
|
||||
conserve.mode=Conserve mode
|
||||
created.by.system=Created by system
|
||||
label.menu.system.service.offerings=System Service Offerings
|
||||
label.add.system.service.offering=Add System Service Offering
|
||||
redundant.router.capability=Redundant router capability
|
||||
supported.source.NAT.type=Supported Source NAT type
|
||||
elastic.LB=Elastic LB
|
||||
LB.isolation=LB isolation
|
||||
elastic.IP=Elastic IP
|
||||
network.label.display.for.blank.value=Use default gateway
|
||||
Xen.traffic.label=XenServer traffic label
|
||||
KVM.traffic.label=KVM traffic label
|
||||
VMware.traffic.label=VMware traffic label
|
||||
start.IP=Start IP range
|
||||
end.IP=End IP range
|
||||
IP.range.is.added=IP range is added
|
||||
remove.IP.range=Remove IP range
|
||||
storage.traffic.type.is.updated=Storage traffic type is updated
|
||||
management.traffic.type.is.updated=Management traffic type is updated
|
||||
public.traffic.type.is.updated=Public traffic type is updated
|
||||
guest.traffic.type.is.updated=Guest traffic type is updated
|
||||
IP.ranges=IP Ranges
|
||||
start.Vlan=Start Vlan
|
||||
end.Vlan=End Vlan
|
||||
broadcast.domain.range=Broadcast domain range
|
||||
label.compute=Compute
|
||||
message.add.guest.network=Please confirm that you would like to add a guest network
|
||||
subdomain.access=Subdomain Access
|
||||
guest.start.IP=Guest start IP
|
||||
guest.end.IP=Guest end IP
|
||||
restart.required=Restart required
|
||||
virtual.router=Virtual Router
|
||||
physical.network.ID=Physical network ID
|
||||
destination.physical.network.ID=Destination physical network ID
|
||||
DHCP=DHCP
|
||||
destroy.router=Destroy router
|
||||
confirm.destroy.router=Please confirm that you would like to destroy this router
|
||||
change.service.offering=Change service offering
|
||||
view.console=View console
|
||||
redundant.state=Redundant state
|
||||
enable.provider=Enable provider
|
||||
confirm.enable.provider=Please confirm that you would like to enable this provider
|
||||
disable.provider=Disable provider
|
||||
confirm.disable.provider=Please confirm that you would like to disable this provider
|
||||
shutdown.provider=Shutdown provider
|
||||
confirm.shutdown.provider=Please confirm that you would like to shutdown this provider
|
||||
NetScaler=NetScaler
|
||||
add.new.NetScaler=Add new NetScaler
|
||||
number.of.retries=Number of retries
|
||||
capacity=Capacity
|
||||
dedicated=Dedicated
|
||||
F5=F5
|
||||
add.new.F5=Add new F5
|
||||
SRX=SRX
|
||||
providers=Providers
|
||||
add.new.SRX=Add new SRX
|
||||
timeout=Timeout
|
||||
public.network=Public network
|
||||
private.network=Private network
|
||||
public=Public
|
||||
enable.swift=Enable Swift
|
||||
confirm.enable.swift=Please fill in the following information to enable support for Swift
|
||||
message.after.enable.swift=Swift configured. Note: When you leave this page, you will not be able to re-configure Swift again.
|
||||
URL=URL
|
||||
key=Key
|
||||
domain=Domain
|
||||
delete.NetScaler=Delete NetScaler
|
||||
confirm.delete.NetScaler=Please confirm that you would like to delete NetScaler
|
||||
delete.F5=Delete F5
|
||||
confirm.delete.F5=Please confirm that you would like to delete F5
|
||||
delete.SRX=Delete SRX
|
||||
confirm.delete.SRX=Please confirm that you would like to delete SRX
|
||||
label.pods=Pods
|
||||
pod.name=Pod name
|
||||
reserved.system.gateway=Reserved system gateway
|
||||
reserved.system.netmask=Reserved system netmask
|
||||
start.reserved.system.IP=Start Reserved system IP
|
||||
end.reserved.system.IP=End Reserved system IP
|
||||
label.clusters=Clusters
|
||||
cluster.name=Cluster Name
|
||||
host.MAC=Host MAC
|
||||
agent.username=Agent Username
|
||||
agent.password=Agent Password
|
||||
confirm.action.force.reconnect=Please confirm that you want to force reconnect this host.
|
||||
resource.state=Resource state
|
||||
LUN.number=LUN #
|
||||
confirm.remove.IP.range=Please confirm that you would like to remove this IP range.
|
||||
tooltip.zone.name=A name for the zone.
|
||||
tooltip.dns.1=Name of a DNS server for use by VMs in the zone. The public IP addresses for the zone must have a route to this server.
|
||||
tooltip.dns.2=A second DNS server name for use by VMs in the zone. The public IP addresses for the zone must have a route to this server.
|
||||
tooltip.internal.dns.1=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server.
|
||||
tooltip.internal.dns.2=Name of a DNS server for use by CloudStack internal system VMs in the zone. The private IP address for the pods must have a route to this server.
|
||||
tooltip.network.domain=A DNS suffix that will create a custom domain name for the network that is accessed by guest VMs.
|
||||
tooltip.pod.name=A name for this pod.
|
||||
tooltip.reserved.system.gateway=The gateway for the hosts in the pod.
|
||||
tooltip.reserved.system.netmask=The network prefix that defines the pod subnet. Uses CIDR notation.
|
||||
creating.zone=Creating zone
|
||||
creating.physical.networks=Creating physical networks
|
||||
configuring.physical.networks=Configuring physical networks
|
||||
adding.Netscaler.device=Adding Netscaler device
|
||||
creating.pod=Creating pod
|
||||
configuring.public.traffic=Configuring public traffic
|
||||
configuring.storage.traffic=Configuring storage traffic
|
||||
configuring.guest.traffic=Configuring guest traffic
|
||||
creating.cluster=Creating cluster
|
||||
adding.host=Adding host
|
||||
creating.primary.storage=Creating primary storage
|
||||
creating.secondary.storage=Creating secondary storage
|
||||
Zone.creation.complete=Zone creation complete
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +1,74 @@
|
|||
label.installWizard.title=こんにちは、CloudStack™ へようこそ。
|
||||
#new labels (begin) **********************************************************************************************
|
||||
message.migrate.instance.to.host=別のホストにインスタンスを移行することを確認してください。
|
||||
label.migrate.instance.to.host=別のホストにインスタンスを移行する
|
||||
message.migrate.instance.to.ps=別のプライマリ·ストレージにインスタンスを移行することを確認してください。
|
||||
label.migrate.instance.to.ps=別のプライマリストレージにインスタンスを移行する
|
||||
label.corrections.saved=修正が保存され
|
||||
message.installWizard.copy.whatIsSecondaryStorage=セカンダリストレージは、ゾーンに関連付けられており、それは次のように格納されてい:<ul><li>テンプレート - OSイメージのVMを起動すると、インストール済みのアプリケーションなどの追加の構成情報を含めることができます使用することができます</li><li>ISOイメージ - ブートまたは非ブートできるOSイメージ</li><li>ディスクボリュームのスナップショット - データ復旧のために使用することができ、VMデータのコピーを保存したり、新しいテンプレートを作成する</ul>
|
||||
message.installWizard.copy.whatIsPrimaryStorage=プライマリストレージとセカンダリストレージ:CloudStack™クラウド·インフラストラクチャは、ストレージの2つのタイプを使用しています。これらの両方は、iSCSIまたはNFSサーバー、またはlocaldiskすることができます。<br/><br/>プライマリ·ストレージは、クラスタに関連付けられており、そのクラスタ内のホスト上で実行されているすべてのVMの各ゲストVMのディスクボリュームに格納されています。プライマリ·ストレージ·サーバーは通常、ホストの近くに位置しています。
|
||||
message.installWizard.copy.whatIsAHost=ホストは、単一のコンピュータです。ホストは、ゲスト仮想マシンを実行するコンピューティングリソースを提供しています。各ホストは、ゲストVMを(高度なインストレーション·ガイドで説明する特殊なケースであるベアメタルホストを除く)を管理するためにそれにインストールされているソフトウェアをハイパーバイザしています。たとえば、Linux KVM対応のサーバーは、Citrix XenServerサーバ、およびESXiサーバがホストです。基本インストールでは、我々は、XenServerを実行する単一ホストを使用します。<br/><br/>ホストはCloudStack™展開内で最小の組織単位です。ホストがクラスタ内に含まれている、クラスタは、ポッド内に含まれており、ポッドは、ゾーン内に含まれています。
|
||||
message.installWizard.copy.whatIsACluster=クラスタは、グループのホストにする方法を提供します。クラスタ内のホストはすべて同一のハードウェアを持っている、同じハイパーバイザー実行したのと同じサブネット上にあり、同じ共有ストレージにアクセスすることができます。仮想マシン·インスタンス(VMS)は、ユーザーにサービスを中断することなく、同じクラスタ内の別のホストからのライブ移行することができます。クラスタは、CloudStack内サード最大の組織単位™展開です。クラスタは、ポッド内に含まれており、ポッドは、ゾーン内に含まれています。<br/><br/>CloudStack™は、クラウドの展開で複数のクラスタを使用できますが、基本的なインストールのために、私達は1つのクラスタのみを必要としています。
|
||||
message.installWizard.copy.whatIsAPod=ポッドは、多くの場合、単一のラックを表しています。同じポッド内のホストが同じサブネット内にあります。<br/><br/>ポッドはCloudStack内で二番目に大きい組織単位™展開です。ポッドは、ゾーン内に含まれています。各ゾーンは、1つまたは複数のポッドを含めることができます。基本インストールでは、あなたのゾーンのひとつポッドを持っています。
|
||||
message.installWizard.copy.whatIsAZone=ゾーンはCloudStack内で最大の組織単位™展開です。それはデータセンター内の複数のゾーンを持つことが許されているが、ゾーンは、通常、単一のデータセンターに対応しています。ゾーンにインフラを整理することの利点は、物理的な分離と冗長性を提供することです。たとえば、各ゾーンは独自の電源とネットワークのアップリンクを持つことができ、ゾーンが広く(これは必須ではありませんが)地理的に分離することができます。
|
||||
message.installWizard.copy.whatIsCloudStack=CloudStack™は、プール·コンピューティング·リソースがサービス(IaaSの)雲のように、パブリック、プライベート、ハイブリッドインフラストラクチャを構築することがソフトウェアプラットフォームです。 CloudStack™は、ネットワーク、ストレージ、クラウドインフラストラクチャを構成する計算ノードを管理します。展開、管理、およびクラウドコンピューティング環境を構成するためにCloudStack™を使用しています。<br/><br/>コモディティ·ハードウェア上で実行されている個々の仮想マシンのイメージを超えて拡張すると、CloudStack™は、サービスとしての仮想データセンターを実現するためのターンキー·クラウド·インフラストラクチャ·ソフトウェア·スタックを提供します - マルチティアとマルチテナント型のクラウドを構築、デプロイ、および管理するために不可欠なすべてのコンポーネントを提供アプリケーション。オープンソースとプレミアムバージョンの両方がほぼ同じ機能を提供するオープンソースのバージョンでは、用意されています。
|
||||
message.installWizard.tooltip.addSecondaryStorage.path=あなたは上記で指定したサーバー上にあるエクスポートされたパス、
|
||||
message.installWizard.tooltip.addSecondaryStorage.nfsServer=セカンダリ·ストレージをホストしているNFSサーバのIPアドレス
|
||||
message.installWizard.tooltip.addPrimaryStorage.path=(NFS)のNFSでは、これはサーバーからエクスポートされたパスです。パス(SharedMountPoint用)。 KVMでこれは、このプライマリ·ストレージがマウントされている場所は、各ホスト上のパスです。たとえば、 /mnt/primary。
|
||||
message.installWizard.tooltip.addPrimaryStorage.server=(NFS、iSCSI、またはPreSetup)のIPアドレスまたはストレージデバイスのDNS名。
|
||||
message.installWizard.tooltip.addPrimaryStorage.name=ストレージデバイスの名前を入力します。
|
||||
message.installWizard.tooltip.addHost.password=これは上記の名前のユーザのパスワード(XenServerのインストールから)です。
|
||||
message.installWizard.tooltip.addHost.username=通常ルート。
|
||||
message.installWizard.tooltip.addHost.hostname=DNS名またはホストのIPアドレス。
|
||||
message.installWizard.tooltip.addCluster.name=クラスタの名前。これは任意のテキストにすることができ、CloudStack使用されていません。
|
||||
message.installWizard.tooltip.addPod.reservedSystemEndIp=これはCloudStackは、セカンダリストレージの仮想マシンとコンソールのプロキシ仮想マシンを管理するために使用するプライベートネットワーク内のIP範囲です。これらのIPアドレスは、コンピューティング·サーバーと同じサブネットから取得されます。
|
||||
message.installWizard.tooltip.addPod.reservedSystemStartIp=これはCloudStackは、セカンダリストレージの仮想マシンとコンソールのプロキシ仮想マシンを管理するために使用するプライベートネットワーク内のIP範囲です。これらのIPアドレスは、コンピューティング·サーバーと同じサブネットから取得されます。
|
||||
message.installWizard.tooltip.addPod.reservedSystemNetmask=お客様が使用されるサブネットで使用中のマスク。
|
||||
message.installWizard.tooltip.addPod.reservedSystemGateway=そのポッド内のホストに対するゲートウェイ。
|
||||
message.installWizard.tooltip.addPod.name=ポッドの名前
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestEndIp=このゾーンのゲストへの割り当てのために利用できるようになりますIPアドレスの範囲。つのNICが使用されている場合、これらのIPはポッドCIDR CIDRと同じである必要があります。
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestStartIp=このゾーンのゲストへの割り当てのために利用できるようになりますIPアドレスの範囲。つのNICが使用されている場合、これらのIPはポッドCIDR CIDRと同じである必要があります。
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestNetmask=ゲストが使用する必要があるサブネットで使用中のマスク
|
||||
message.installWizard.tooltip.configureGuestTraffic.guestGateway=ゲストが使用するゲートウェイ
|
||||
message.installWizard.tooltip.configureGuestTraffic.description=ネットワークの説明
|
||||
message.installWizard.tooltip.configureGuestTraffic.name=あなたのネットワークの名前
|
||||
message.installWizard.tooltip.addZone.internaldns2=これらは、ゾーン内のシステムのVMで使用するためのDNSサーバです。これらのDNSサーバーは、システムのVMのプライベート·ネットワーク·インタフェースを介してアクセスされます。あなたはポッドを提供するプライベートIPアドレスは、ここという名前のDNSサーバへのルートを持っている必要があります。
|
||||
message.installWizard.tooltip.addZone.internaldns1=これらは、ゾーン内のシステムのVMで使用するためのDNSサーバです。これらのDNSサーバーは、システムのVMのプライベート·ネットワーク·インタフェースを介してアクセスされます。あなたはポッドを提供するプライベートIPアドレスは、ここという名前のDNSサーバへのルートを持っている必要があります。
|
||||
message.installWizard.tooltip.addZone.dns2=これらは、ゾーン内のゲストVMで使用するためのDNSサーバです。これらのDNSサーバーは、後で追加され、パブリックネットワークを介してアクセスされます。ゾーンのパブリックIPアドレスは、ここで名前のDNSサーバへのルートを持っている必要があります。
|
||||
message.installWizard.tooltip.addZone.name=ゾーンの名前
|
||||
message.installWizard.tooltip.addZone.dns1=これらは、ゾーン内のゲストVMで使用するためのDNSサーバです。これらのDNSサーバーは、後で追加され、パブリックネットワークを介してアクセスされます。ゾーンのパブリックIPアドレスは、ここで名前のDNSサーバへのルートを持っている必要があります。
|
||||
message.setup.successful=雲のセットアップに成功!
|
||||
label.may.continue=あなたは今継続することができます。
|
||||
error.installWizard.message=何かが間違っていた、元に戻ってすべてのエラーを訂正することができる
|
||||
message.installWizard.now.building=今すぐあなたのクラウドを構築...
|
||||
message.installWizard.click.retry=起動を再試行する]ボタンをクリックします。
|
||||
label.launch=起動する
|
||||
label.installWizard.click.launch=起動ボタンをクリックします。
|
||||
label.congratulations=おめでとう!
|
||||
label.installWizard.addSecondaryStorageIntro.subtitle=二次記憶装置とは何ですか?
|
||||
label.installWizard.addSecondaryStorageIntro.title=のがセカンダリ·ストレージを追加してみましょう
|
||||
label.installWizard.addPrimaryStorageIntro.subtitle=プライマリストレージとは何ですか?
|
||||
label.installWizard.addPrimaryStorageIntro.title=のは、プライマリ·ストレージを追加してみましょう
|
||||
label.installWizard.addHostIntro.subtitle=ホストとは何ですか?
|
||||
label.installWizard.addHostIntro.title=のホストを追加してみましょう
|
||||
label.installWizard.addClusterIntro.subtitle=クラスタとは何ですか?
|
||||
label.installWizard.addClusterIntro.title=のクラスタを追加してみましょう
|
||||
label.installWizard.addPodIntro.subtitle=ポッドとは何ですか?
|
||||
label.installWizard.addPodIntro.title=のは、ポッドを追加してみましょう
|
||||
label.installWizard.addZone.title=ゾーンを追加する
|
||||
label.installWizard.addZoneIntro.subtitle=ゾーンとは何ですか?
|
||||
label.installWizard.addZoneIntro.title=ゾーンを追加する
|
||||
error.password.not.match=パスワードフィールドが一致しません
|
||||
label.confirm.password=パスワードを確認
|
||||
message.change.password=パスワードを変更してください。
|
||||
label.save.and.continue=保存して続行
|
||||
label.skip.guide=このガイドをスキップする前に、私はCloudStack使用している
|
||||
label.continue.basic.install=基本的なインストールを続行し
|
||||
label.introduction.to.cloudstack=CloudStack™するために導入
|
||||
label.what.is.cloudstack=CloudStack™ は何ですか?
|
||||
label.hints=ヒント
|
||||
label.installWizard.subtitle=このツアーでは、あなたのCloudStack™ のインストールを設定する際に役立ちます
|
||||
label.continue=続ける
|
||||
label.installWizard.title=こんにちは、CloudStack™ へようこそ。
|
||||
label.agree=同意する
|
||||
label.license.agreement=ライセンス契約
|
||||
label.license.agreement.subtitle=インストールする前に、CloudStack™ ライセンスに同意してください。
|
||||
|
|
@ -206,11 +276,178 @@ message.reset.password.warning.notStopped=インスタンスは、その現在
|
|||
label.notifications=通知
|
||||
label.default.view=デフォルトのビュー
|
||||
label.project.view=プロジェクトビュー
|
||||
#cloudstack 3.0 (end) **********************************************************************************************
|
||||
|
||||
message.add.system.service.offering=新しいシステム·サービスの提供を追加するには、次のデータを記入してください。
|
||||
message.action.delete.system.service.offering=このシステムサービスの提供を削除することを確認してください。
|
||||
label.action.delete.system.service.offering=削除システムサービスの提供
|
||||
label.hypervisor.capabilities=機能をハイパーバイザ
|
||||
label.hypervisor.version=のバージョンをハイパーバイザ
|
||||
label.max.guest.limit=最大ゲストの制限
|
||||
label.add.network.offering=ネットワークの提供を追加します。
|
||||
label.supported.services=サポートされているサービス
|
||||
label.service.capabilities=サービス機能
|
||||
label.guest.type=ゲストの種類
|
||||
label.specify.IP.ranges=指定したIPの範囲
|
||||
label.conserve.mode=モードを節約
|
||||
label.created.by.system=システムによって作成され
|
||||
label.menu.system.service.offerings=システムサービスの提供
|
||||
label.add.system.service.offering=システムサービスの提供を追加します。
|
||||
label.redundant.router.capability=Redundant router capability
|
||||
label.supported.source.NAT.type=Supported Source NAT type
|
||||
label.elastic.LB=Elastic LB
|
||||
label.LB.isolation=LB isolation
|
||||
label.elastic.IP=Elastic IP
|
||||
label.network.label.display.for.blank.value=デフォルトゲートウェイを使用する
|
||||
label.xen.traffic.label=XenServerのトラフィックのラベル
|
||||
label.kvm.traffic.label=KVMトラフィックのラベル
|
||||
label.vmware.traffic.label=VMwareのトラフィックのラベル
|
||||
label.start.IP=IPアドレスの範囲を起動します。
|
||||
label.end.IP=終了IPアドレスの範囲
|
||||
label.remove.ip.range=IPアドレス範囲を削除します。
|
||||
label.ip.ranges=IP範囲
|
||||
label.start.vlan=スタートVLAN
|
||||
label.end.vlan=エンドVLAN
|
||||
label.broadcast.domain.range=ドメインの範囲をブロードキャスト
|
||||
label.compute=計算
|
||||
message.add.guest.network=あなたがゲストネットワークを追加したいことを確認してください
|
||||
label.subdomain.access=サブドメインアクセス
|
||||
label.guest.start.ip=ゲストの開始IP
|
||||
label.guest.end.ip=ゲストの終了IP
|
||||
label.virtual.router=Virtual Router
|
||||
label.physical.network.ID=物理的なネットワークID
|
||||
label.destination.physical.network.id=先の物理的なネットワークID
|
||||
label.dhcp=DHCP
|
||||
label.destroy.router=ルータを破壊する
|
||||
message.confirm.destroy.router=このルータを破壊することを確認してください
|
||||
label.change.service.offering=サービス·オファリングを変更する
|
||||
label.view.console=コンソールを表示する
|
||||
label.redundant.state=冗長状態
|
||||
label.enable.provider=プロバイダを有効にする
|
||||
message.confirm.enable.provider=このプロバイダを有効にしたいことを確認してください
|
||||
label.disable.provider=プロバイダを無効にする
|
||||
message.confirm.disable.provider=このプロバイダを無効にしたいことを確認してください
|
||||
label.shutdown.provider=シャットダウン·プロバイダー
|
||||
message.confirm.shutdown.provider=このプロバイダをシャットダウンすることを確認してください
|
||||
label.netScaler=NetScaler
|
||||
label.add.new.NetScaler=新しいNetScalerを追加する
|
||||
number.of.retries=再試行の回数
|
||||
label.capacity=容量
|
||||
label.dedicated=専用の
|
||||
label.f5=F5
|
||||
label.add.new.F5=新しいF5キーを追加する
|
||||
label.srx=SRX
|
||||
label.providers=プロバイダー
|
||||
label.add.new.SRX=新しいSRXを追加します。
|
||||
label.timeout=タイムアウト
|
||||
label.public.network=パブリックネットワーク
|
||||
label.private.network=プライベートネットワーク
|
||||
label.enable.swift=スウィフトを有効にする
|
||||
confirm.enable.swift=スウィフトのサポートを有効にするには、次の情報を入力してください。
|
||||
message.after.enable.swift=スウィフトは、設定されています。注:このページを出るときは、もう一度再構成するスウィフトにはできません。
|
||||
label.key=キー
|
||||
label.delete.NetScaler=削除NetScalerは
|
||||
message.confirm.delete.NetScaler=あなたがNetScalerを削除したいことを確認してください
|
||||
label.delete.F5=削除F5
|
||||
message.confirm.delete.F5=F5キーを削除したいことを確認してください
|
||||
label.delete.SRX=削除SRX
|
||||
message.confirm.delete.SRX=あなたはSRXを削除したいことを確認してください
|
||||
label.pods=ポッド
|
||||
label.pod.name=ポッド名
|
||||
label.reserved.system.gateway=予約システムのゲートウェイ
|
||||
label.reserved.system.netmask=予約システムのネットマスク
|
||||
label.start.reserved.system.IP=予約システムのIPを起動します。
|
||||
label.end.reserved.system.IP=最後の予約システムのIP
|
||||
label.clusters=クラスタ
|
||||
label.cluster.name=クラスタ名
|
||||
label.host.MAC=ホストのMAC
|
||||
label.agent.username=エージェントのユーザー名
|
||||
label.agent.password=エージェントのパスワード
|
||||
message.confirm.action.force.reconnect=このホストを再接続を強制することを確認してください。
|
||||
label.resource.state=リソースの状態
|
||||
label.LUN.number=LUN #
|
||||
message.confirm.remove.IP.range=あなたがこのIPアドレス範囲の削除を希望することを確認してください。
|
||||
message.tooltip.zone.name=ゾーンの名前を入力します。
|
||||
message.tooltip.dns.1=ゾーン内のVMで使用するためにDNSサーバーの名前を指定します。ゾーンのパブリックIPアドレスは、このサーバへのルートを持っている必要があります。
|
||||
message.tooltip.dns.2=ゾーン内のVMで使用するための二次DNSサーバー名を指定します。ゾーンのパブリックIPアドレスは、このサーバへのルートを持っている必要があります
|
||||
message.tooltip.internal.dns.1=ゾーン内のCloudStack内部システムのVMによって使用されるDNSサーバーの名前を指定します。ポッド用のプライベートIPアドレスはこのサーバへのルートを持っている必要があります。
|
||||
message.tooltip.internal.dns.2=ゾーン内のCloudStack内部システムのVMによって使用されるDNSサーバーの名前を指定します。ポッド用のプライベートIPアドレスはこのサーバへのルートを持っている必要があります。
|
||||
message.tooltip.network.domain=ゲストVMによってアクセスされるネットワーク用のカスタムドメイン名を作成するDNSサフィックスです。
|
||||
message.tooltip.pod.name=このポッドの名前を入力します。
|
||||
message.tooltip.reserved.system.gateway=ポッド内のホストに対するゲートウェイ。
|
||||
message.tooltip.reserved.system.netmask=ポッドサブネットを定義するネットワーク接頭辞。 CIDR表記を使用しています。
|
||||
message.creating.zone=ゾーンを作成する
|
||||
message.creating.physical.networks=物理的なネットワークを作成する
|
||||
message.configuring.physical.networks=物理的なネットワークを構成する
|
||||
message.adding.Netscaler.device=NetScalerのデバイスを追加する
|
||||
message.creating.pod=ポッドを作成する
|
||||
message.configuring.public.traffic=公共交通を構成する
|
||||
message.configuring.storage.traffic=ストレージ·トラフィックの設定
|
||||
message.configuring.guest.traffic=ゲストのトラフィックを設定する
|
||||
message.creating.cluster=クラスタの作成
|
||||
message.adding.host=ホストを追加する
|
||||
message.creating.primary.storage=プライマリ·ストレージを作成する
|
||||
message.creating.secondary.storage=セカンダリ·ストレージを作成する
|
||||
message.Zone.creation.complete=完全なゾーンの作成
|
||||
message.enabling.zone=Enabling zone
|
||||
error.something.went.wrong.please.correct.the.following=Something went wrong; please correct the following
|
||||
error.could.not.enable.zone=Could not enable zone
|
||||
message.zone.creation.complete.would.you.like.to.enable.this.zone=Zone creation complete. Would you like to enable this zone?
|
||||
message.please.add.at.lease.one.traffic.range=Please add at lease one traffic range.
|
||||
message.you.must.have.at.least.one.physical.network=You must have at least one physical network
|
||||
message.please.select.a.different.public.and.management.network.before.removing=Please select a different public and management network before removing
|
||||
|
||||
label.zone.type=Zone Type
|
||||
label.setup.zone=Setup Zone
|
||||
label.setup.network=Setup Network
|
||||
label.add.resources=Add Resources
|
||||
label.launch=Launch
|
||||
label.set.up.zone.type=Set up zone type
|
||||
message.please.select.a.configuration.for.your.zone=Please select a configuration for your zone.
|
||||
message.desc.basic.zone=Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering)
|
||||
label.basic=Basic
|
||||
message.desc.advanced.zone=For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support.
|
||||
label.advanced=Advanced
|
||||
message.desc.zone=A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone.
|
||||
label.physical.network=Physical Network
|
||||
label.public.traffic=Public traffic
|
||||
label.guest.traffic=Guest Traffic
|
||||
label.storage.traffic=Storage Traffic
|
||||
message.setup.physical.network.during.zone.creation=When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the management server. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.<br/><br/><strong>Drag and drop one or more traffic types</strong> onto each physical network.
|
||||
label.add.physical.network=Add physical network
|
||||
label.traffic.types=Traffic Types
|
||||
label.management=Management
|
||||
label.guest=Guest
|
||||
label.please.specify.netscaler.info=Please specify Netscaler info
|
||||
message.public.traffic.in.advanced.zone=Public traffic is generated when VMs in the cloud access the internet. Publicly-accessible IPs must be allocated for this purpose. End users can use the CloudStack UI to acquire these IPs to implement NAT between their guest network and their public network.<br/><br/>Provide at lease one range of IP addresses for internet traffic.
|
||||
message.public.traffic.in.basic.zone=Public traffic is generated when VMs in the cloud access the Internet or provide services to clients over the Internet. Publicly accessible IPs must be allocated for this purpose. When a instance is created, an IP from this set of Public IPs will be allocated to the instance in addition to the guest IP address. Static 1-1 NAT will be set up automatically between the public IP and the guest IP. End users can also use the CloudStack UI to acquire additional IPs to implement static NAT between their instances and the public IP.
|
||||
message.add.pod.during.zone.creation=Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud.
|
||||
message.guest.traffic.in.advanced.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of VLAN IDs to carry guest traffic for each physical network.
|
||||
message.guest.traffic.in.basic.zone=Guest network traffic is communication between end-user virtual machines. Specify a range of IP addresses that CloudStack can assign to guest VMs. Make sure this range does not overlap the reserved system IP range.
|
||||
message.storage.traffic=Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here.
|
||||
message.desc.cluster=Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers.
|
||||
message.desc.host=Each cluster must contain at lease one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.<br/><br/>Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts.
|
||||
message.desc.primary.storage=Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor.
|
||||
message.desc.secondary.storage=Each zone must have at lease one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.<br/><br/>Provide the IP address and exported path.
|
||||
label.launch.zone=Launch zone
|
||||
message.please.wait.while.zone.is.being.created=Please wait while your zone is being created; this may take a while...
|
||||
|
||||
label.load.balancing=Load Balancing
|
||||
label.static.nat.enabled=Static NAT Enabled
|
||||
label.zones=Zones
|
||||
label.view.more=View more
|
||||
label.number.of.zones=Number of Zones
|
||||
label.number.of.pods=Number of Pods
|
||||
label.number.of.clusters=Number of Clusters
|
||||
label.number.of.hosts=Number of Hosts
|
||||
label.total.hosts=Total Hosts
|
||||
label.total.CPU=Total CPU
|
||||
label.total.memory=Total Memory
|
||||
label.total.storage=Total Storage
|
||||
|
||||
#new labels (end) **********************************************************************************************
|
||||
|
||||
|
||||
|
||||
#cloudstack 2.2.Y (begin) ******************************************************************************************
|
||||
label.action.migrate.router=ルータを移行する
|
||||
label.action.migrate.router.processing=ルータの移行....
|
||||
message.migrate.router.confirm=あなたがするようにルータを移行したいホストを確認してください。
|
||||
|
|
@ -252,7 +489,7 @@ label.action.unmanage.cluster=非管理対象クラスタ
|
|||
message.action.unmanage.cluster=クラスタを非管理対象にしてもよろしいですか?
|
||||
label.action.unmanage.cluster.processing=クラスタを非管理対象にしています....
|
||||
|
||||
allocation.state=アロケーション状態
|
||||
label.allocation.state=アロケーション状態
|
||||
managed.state=管理された状態
|
||||
|
||||
label.default.use=デフォルト使用
|
||||
|
|
@ -1065,129 +1302,9 @@ error.menu.select=アイテムが選択されていないためアクション
|
|||
error.mgmt.server.inaccessible=Management Serverにアクセスできません。後で、もう一度やり直してください
|
||||
error.session.expired=セッション有効期限が切れています
|
||||
error.unresolved.internet.name=名前解決に失敗しました
|
||||
#cloudstack 2.2.Y (end) ********************************************************************************************
|
||||
|
||||
|
||||
#Jes
|
||||
message.add.system.service.offering=新しいシステム·サービスの提供を追加するには、次のデータを記入してください。
|
||||
message.action.delete.system.service.offering=このシステムサービスの提供を削除することを確認してください。
|
||||
label.action.delete.system.service.offering=削除システムサービスの提供
|
||||
hypervisor.capabilities=機能をハイパーバイザ
|
||||
hypervisor.version=のバージョンをハイパーバイザ
|
||||
max.guest.limit=最大ゲストの制限
|
||||
security.group.enabled=セキュリティグループが有効になって
|
||||
add.network.offering=ネットワークの提供を追加します。
|
||||
supported.services=サポートされているサービス
|
||||
service.capabilities=サービス機能
|
||||
guest.type=ゲストの種類
|
||||
specify.IP.ranges=指定したIPの範囲
|
||||
conserve.mode=モードを節約
|
||||
created.by.system=システムによって作成され
|
||||
label.menu.system.service.offerings=システムサービスの提供
|
||||
label.add.system.service.offering=システムサービスの提供を追加します。
|
||||
redundant.router.capability=Redundant router capability
|
||||
supported.source.NAT.type=Supported Source NAT type
|
||||
elastic.LB=Elastic LB
|
||||
LB.isolation=LB isolation
|
||||
elastic.IP=Elastic IP
|
||||
network.label.display.for.blank.value=デフォルトゲートウェイを使用する
|
||||
Xen.traffic.label=XenServerのトラフィックのラベル
|
||||
KVM.traffic.label=KVMトラフィックのラベル
|
||||
VMware.traffic.label=VMwareのトラフィックのラベル
|
||||
start.IP=IPアドレスの範囲を起動します。
|
||||
end.IP=終了IPアドレスの範囲
|
||||
IP.range.is.added=IPアドレスの範囲が追加されました
|
||||
remove.IP.range=IPアドレス範囲を削除します。
|
||||
storage.traffic.type.is.updated=ストレージ·トラフィック·タイプが更新されます。
|
||||
management.traffic.type.is.updated=管理トラフィックタイプが更新されます。
|
||||
public.traffic.type.is.updated=公共交通の種類が更新されます。
|
||||
guest.traffic.type.is.updated=ゲストのトラフィック·タイプが更新されます。
|
||||
IP.ranges=IP範囲
|
||||
start.Vlan=スタートVLAN
|
||||
end.Vlan=エンドVLAN
|
||||
broadcast.domain.range=ドメインの範囲をブロードキャスト
|
||||
label.compute=計算
|
||||
message.add.guest.network=あなたがゲストネットワークを追加したいことを確認してください
|
||||
subdomain.access=サブドメインアクセス
|
||||
guest.start.IP=ゲストの開始IP
|
||||
guest.end.IP=ゲストの終了IP
|
||||
restart.required=要な再起動
|
||||
virtual.router=Virtual Router
|
||||
physical.network.ID=物理的なネットワークID
|
||||
destination.physical.network.ID=先の物理的なネットワークID
|
||||
DHCP=DHCP
|
||||
destroy.router=ルータを破壊する
|
||||
confirm.destroy.router=このルータを破壊することを確認してください
|
||||
change.service.offering=サービス·オファリングを変更する
|
||||
view.console=コンソールを表示する
|
||||
redundant.state=冗長状態
|
||||
enable.provider=プロバイダを有効にする
|
||||
confirm.enable.provider=このプロバイダを有効にしたいことを確認してください
|
||||
disable.provider=プロバイダを無効にする
|
||||
confirm.disable.provider=このプロバイダを無効にしたいことを確認してください
|
||||
shutdown.provider=シャットダウン·プロバイダー
|
||||
confirm.shutdown.provider=このプロバイダをシャットダウンすることを確認してください
|
||||
NetScaler=NetScaler
|
||||
add.new.NetScaler=新しいNetScalerを追加する
|
||||
number.of.retries=再試行の回数
|
||||
capacity=容量
|
||||
dedicated=専用の
|
||||
F5=F5
|
||||
add.new.F5=新しいF5キーを追加する
|
||||
SRX=SRX
|
||||
providers=プロバイダー
|
||||
add.new.SRX=新しいSRXを追加します。
|
||||
timeout=タイムアウト
|
||||
public.network=パブリックネットワーク
|
||||
private.network=プライベートネットワーク
|
||||
public=公共
|
||||
enable.swift=スウィフトを有効にする
|
||||
confirm.enable.swift=スウィフトのサポートを有効にするには、次の情報を入力してください。
|
||||
message.after.enable.swift=スウィフトは、設定されています。注:このページを出るときは、もう一度再構成するスウィフトにはできません。
|
||||
URL=URL
|
||||
key=キー
|
||||
domain=ドメイン
|
||||
delete.NetScaler=削除NetScalerは
|
||||
confirm.delete.NetScaler=あなたがNetScalerを削除したいことを確認してください
|
||||
delete.F5=削除F5
|
||||
confirm.delete.F5=F5キーを削除したいことを確認してください
|
||||
delete.SRX=削除SRX
|
||||
confirm.delete.SRX=あなたはSRXを削除したいことを確認してください
|
||||
label.pods=ポッド
|
||||
pod.name=ポッド名
|
||||
reserved.system.gateway=予約システムのゲートウェイ
|
||||
reserved.system.netmask=予約システムのネットマスク
|
||||
start.reserved.system.IP=予約システムのIPを起動します。
|
||||
end.reserved.system.IP=最後の予約システムのIP
|
||||
label.clusters=クラスタ
|
||||
cluster.name=クラスタ名
|
||||
host.MAC=ホストのMAC
|
||||
agent.username=エージェントのユーザー名
|
||||
agent.password=エージェントのパスワード
|
||||
confirm.action.force.reconnect=このホストを再接続を強制することを確認してください。
|
||||
resource.state=リソースの状態
|
||||
LUN.number=LUN #
|
||||
confirm.remove.IP.range=あなたがこのIPアドレス範囲の削除を希望することを確認してください。
|
||||
tooltip.zone.name=ゾーンの名前を入力します。
|
||||
tooltip.dns.1=ゾーン内のVMで使用するためにDNSサーバーの名前を指定します。ゾーンのパブリックIPアドレスは、このサーバへのルートを持っている必要があります。
|
||||
tooltip.dns.2=ゾーン内のVMで使用するための二次DNSサーバー名を指定します。ゾーンのパブリックIPアドレスは、このサーバへのルートを持っている必要があります
|
||||
tooltip.internal.dns.1=ゾーン内のCloudStack内部システムのVMによって使用されるDNSサーバーの名前を指定します。ポッド用のプライベートIPアドレスはこのサーバへのルートを持っている必要があります。
|
||||
tooltip.internal.dns.2=ゾーン内のCloudStack内部システムのVMによって使用されるDNSサーバーの名前を指定します。ポッド用のプライベートIPアドレスはこのサーバへのルートを持っている必要があります。
|
||||
tooltip.network.domain=ゲストVMによってアクセスされるネットワーク用のカスタムドメイン名を作成するDNSサフィックスです。
|
||||
tooltip.pod.name=このポッドの名前を入力します。
|
||||
tooltip.reserved.system.gateway=ポッド内のホストに対するゲートウェイ。
|
||||
tooltip.reserved.system.netmask=ポッドサブネットを定義するネットワーク接頭辞。 CIDR表記を使用しています。
|
||||
creating.zone=ゾーンを作成する
|
||||
creating.physical.networks=物理的なネットワークを作成する
|
||||
configuring.physical.networks=物理的なネットワークを構成する
|
||||
adding.Netscaler.device=NetScalerのデバイスを追加する
|
||||
creating.pod=ポッドを作成する
|
||||
configuring.public.traffic=公共交通を構成する
|
||||
configuring.storage.traffic=ストレージ·トラフィックの設定
|
||||
configuring.guest.traffic=ゲストのトラフィックを設定する
|
||||
creating.cluster=クラスタの作成
|
||||
adding.host=ホストを追加する
|
||||
creating.primary.storage=プライマリ·ストレージを作成する
|
||||
creating.secondary.storage=セカンダリ·ストレージを作成する
|
||||
Zone.creation.complete=完全なゾーンの作成
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -236,6 +236,27 @@ body.login {
|
|||
box-shadow: 0px 3px 5px #D5D5D5;
|
||||
}
|
||||
|
||||
.login .select-language {
|
||||
margin-top: 10px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.login .select-language select {
|
||||
width: 125px;
|
||||
border: 1px solid #808080;
|
||||
/*+border-radius:4px;*/
|
||||
-moz-border-radius: 4px;
|
||||
-webkit-border-radius: 4px;
|
||||
-khtml-border-radius: 4px;
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
font-size: 12px;
|
||||
/*+box-shadow:inset 0px 1px 1px #838383;*/
|
||||
-moz-box-shadow: inset 0px 1px 1px #838383;
|
||||
-webkit-box-shadow: inset 0px 1px 1px #838383;
|
||||
-o-box-shadow: inset 0px 1px 1px #838383;
|
||||
box-shadow: inset 0px 1px 1px #838383;
|
||||
}
|
||||
|
||||
.login .fields {
|
||||
width: 409px;
|
||||
float: left;
|
||||
|
|
@ -306,6 +327,10 @@ body.login {
|
|||
background: url(../images/logo-login.png) no-repeat;
|
||||
}
|
||||
|
||||
.login.nologo .logo {
|
||||
background-image: url(../images/logo-login-oss.png);
|
||||
}
|
||||
|
||||
.login form {
|
||||
display: block;
|
||||
width: 1000px;
|
||||
|
|
@ -494,9 +519,8 @@ body.login {
|
|||
|
||||
/*** EULA*/
|
||||
.install-wizard .eula-copy {
|
||||
width: 645px;
|
||||
width: 688px;
|
||||
height: 480px;
|
||||
overflow: auto;
|
||||
background: #FFFFFF;
|
||||
border: 1px solid #BCBCBC;
|
||||
/*+box-shadow:0px 4px 10px #B9B9B9;*/
|
||||
|
|
@ -504,12 +528,13 @@ body.login {
|
|||
-webkit-box-shadow: 0px 4px 10px #B9B9B9;
|
||||
-o-box-shadow: 0px 4px 10px #B9B9B9;
|
||||
box-shadow: 0px 4px 10px #B9B9B9;
|
||||
padding: 8px 20px;
|
||||
padding: 5px;
|
||||
/*+border-radius:4px;*/
|
||||
-moz-border-radius: 4px;
|
||||
-webkit-border-radius: 4px;
|
||||
-khtml-border-radius: 4px;
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.install-wizard .eula-copy p {
|
||||
|
|
@ -707,6 +732,12 @@ body.login {
|
|||
.install-wizard .step.intro {
|
||||
}
|
||||
|
||||
.install-wizard .step.intro iframe {
|
||||
width: 99%;
|
||||
height: 99%;
|
||||
margin: 4px;
|
||||
}
|
||||
|
||||
.install-wizard .step.intro .title {
|
||||
color: #565454;
|
||||
margin-left: 0;
|
||||
|
|
@ -1619,6 +1650,10 @@ div.detail-group.actions td {
|
|||
padding: 0 96px 0 0;
|
||||
}
|
||||
|
||||
#header div.controls.nologo {
|
||||
background-image: none;
|
||||
}
|
||||
|
||||
.button {
|
||||
float: left;
|
||||
background: url(../images/buttons.png) no-repeat;
|
||||
|
|
|
|||
Binary file not shown.
|
After Width: | Height: | Size: 2.5 KiB |
534
ui/index.jsp
534
ui/index.jsp
|
|
@ -50,6 +50,14 @@
|
|||
|
||||
<!-- Submit (login) -->
|
||||
<input type="submit" value="" />
|
||||
|
||||
<!-- Select language -->
|
||||
<div class="select-language">
|
||||
<select name="language">
|
||||
<option value="en"><fmt:message key="label.lang.english"/></option>
|
||||
<option value="ja"><fmt:message key="label.lang.japanese"/></option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
|
@ -153,16 +161,6 @@
|
|||
<div class="select-container">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
<ul>
|
||||
<li class="first last"><a href="#instance-wizard-all-isos">All ISOs</a></li>
|
||||
</ul>
|
||||
<div id="instance-wizard-all-isos">
|
||||
<div class="select-container">
|
||||
</div>
|
||||
</div>
|
||||
-->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -430,18 +428,18 @@
|
|||
<div class="multi-wizard zone-wizard">
|
||||
<div class="progress">
|
||||
<ul>
|
||||
<li class="first"><span class="number">1</span><span>Zone Type</span><span class="arrow"></span></li>
|
||||
<li><span class="number">2</span><span>Setup Zone</span><span class="arrow"></span></li>
|
||||
<li><span class="number">3</span><span>Setup Network</span><span class="arrow"></span></li>
|
||||
<li class="first"><span class="number">1</span><span><fmt:message key="label.zone.type"/></span><span class="arrow"></span></li>
|
||||
<li><span class="number">2</span><span><fmt:message key="label.setup.zone"/></span><span class="arrow"></span></li>
|
||||
<li><span class="number">3</span><span><fmt:message key="label.setup.network"/></span><span class="arrow"></span></li>
|
||||
<li style="display:none;"></li>
|
||||
<li style="display:none;"></li>
|
||||
<li style="display:none;"></li>
|
||||
<li style="display:none;"></li>
|
||||
<li><span class="number">4</span><span>Add Resources</span><span class="arrow"></span></li>
|
||||
<li><span class="number">4</span><span><fmt:message key="label.add.resources"/></span><span class="arrow"></span></li>
|
||||
<li style="display:none;"></li>
|
||||
<li style="display:none;"></li>
|
||||
<li style="display:none;"></li>
|
||||
<li class="last"><span class="number">5</span><span>Launch</span></li>
|
||||
<li class="last"><span class="number">5</span><span><fmt:message key="label.launch"/></span></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="steps">
|
||||
|
|
@ -451,21 +449,21 @@
|
|||
<div class="content">
|
||||
<!-- Select template -->
|
||||
<div class="section select-network-model">
|
||||
<h3>Set up zone type</h3>
|
||||
<p>Please select a configuration for your zone.</p>
|
||||
<h3><fmt:message key="label.set.up.zone.type"/></h3>
|
||||
<p><fmt:message key="message.please.select.a.configuration.for.your.zone"/></p>
|
||||
<div class="select-area">
|
||||
<div class="desc">
|
||||
Provide a single network where each VM instance is assigned an IP directly from the network. Guest isolation can be provided through layer-3 means such as security groups (IP address source filtering)
|
||||
<fmt:message key="message.desc.basic.zone"/>
|
||||
</div>
|
||||
<input type="radio" name="network-model" value="Basic" checked="checked" />
|
||||
<label>Basic</label>
|
||||
<label><fmt:message key="label.basic"/></label>
|
||||
</div>
|
||||
<div class="select-area">
|
||||
<div class="desc">
|
||||
For more sophisticated network topologies. This network model provides the most flexibility in defining guest networks and providing custom network offerings such as firewall, VPN, or load balancer support.
|
||||
</div>
|
||||
<fmt:message key="message.desc.advanced.zone"/>
|
||||
</div>
|
||||
<input type="radio" name="network-model" value="Advanced" />
|
||||
<label>Advanced</label>
|
||||
<label><fmt:message key="label.advanced"/></label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -476,8 +474,8 @@
|
|||
<div class="setup-zone" zone-wizard-form="zone"
|
||||
zone-wizard-step-id="addZone">
|
||||
<div class="info-desc">
|
||||
A zone is the largest organizational unit in CloudStack, and it typically corresponds to a single datacenter. Zones provide physical isolation and redundancy. A zone consists of one or more pods (each of which contains hosts and primary storage servers) and a secondary storage server which is shared by all pods in the zone.
|
||||
</div>
|
||||
<fmt:message key="message.desc.zone"/>
|
||||
</div>
|
||||
<div class="content input-area">
|
||||
<div class="select-container"></div>
|
||||
</div>
|
||||
|
|
@ -488,20 +486,20 @@
|
|||
zone-wizard-step-id="setupPhysicalNetwork"
|
||||
zone-wizard-prefilter="setupPhysicalNetwork">
|
||||
<ul class="subnav">
|
||||
<li class="physical-network active">Physical Network</li>
|
||||
<li class="public-network">Public traffic</li>
|
||||
<li class="pod">Pod</li>
|
||||
<li class="guest-traffic">Guest Traffic</li>
|
||||
<li class="conditional storage-traffic">Storage Traffic</li>
|
||||
<li class="physical-network active"><fmt:message key="label.physical.network"/></li>
|
||||
<li class="public-network"><fmt:message key="label.public.traffic"/></li>
|
||||
<li class="pod"><fmt:message key="label.pod"/></li>
|
||||
<li class="guest-traffic"><fmt:message key="label.guest.traffic"/></li>
|
||||
<li class="conditional storage-traffic"><fmt:message key="label.storage.traffic"/></li>
|
||||
</ul>
|
||||
<div class="info-desc">
|
||||
When adding an advanced zone, you need to set up one or more physical networks. Each network corresponds to a NIC on the management server. Each physical network can carry one or more types of traffic, with certain restrictions on how they may be combined.<br/><br/><strong>Drag and drop one or more traffic types</strong> onto each physical network.
|
||||
<fmt:message key="message.setup.physical.network.during.zone.creation"/>
|
||||
</div>
|
||||
<div class="button add new-physical-network"><span class="icon"> </span><span>Add physical network</span></div>
|
||||
<div class="button add new-physical-network"><span class="icon"> </span><span><fmt:message key="label.add.physical.network"/></span></div>
|
||||
|
||||
<!-- Traffic types drag area -->
|
||||
<div class="traffic-types-drag-area">
|
||||
<div class="header">Traffic Types</div>
|
||||
<div class="header"><fmt:message key="label.traffic.types"/></div>
|
||||
<ul>
|
||||
<li class="management">
|
||||
<ul class="container">
|
||||
|
|
@ -510,8 +508,8 @@
|
|||
class="traffic-type-draggable management"></li>
|
||||
</ul>
|
||||
<div class="info">
|
||||
<div class="title">Management</div>
|
||||
<div class="desc">Set up the network for traffic between end-user VMs.</div>
|
||||
<div class="title"><fmt:message key="label.management"/></div>
|
||||
<div class="desc"></div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="public">
|
||||
|
|
@ -521,8 +519,8 @@
|
|||
class="traffic-type-draggable public"></li>
|
||||
</ul>
|
||||
<div class="info">
|
||||
<div class="title">Public</div>
|
||||
<div class="desc">Set up the network for traffic between end-user VMs.</div>
|
||||
<div class="title"><fmt:message key="label.public"/></div>
|
||||
<div class="desc"></div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="guest">
|
||||
|
|
@ -532,8 +530,8 @@
|
|||
class="traffic-type-draggable guest clone"></li>
|
||||
</ul>
|
||||
<div class="info">
|
||||
<div class="title">Guest</div>
|
||||
<div class="desc">Set up the network for traffic between end-user VMs.</div>
|
||||
<div class="title"><fmt:message key="label.guest"/></div>
|
||||
<div class="desc"></div>
|
||||
</div>
|
||||
</li>
|
||||
<li class="storage">
|
||||
|
|
@ -543,8 +541,8 @@
|
|||
class="traffic-type-draggable storage"></li>
|
||||
</ul>
|
||||
<div class="info">
|
||||
<div class="title">Storage</div>
|
||||
<div class="desc">Set up the network for traffic between end-user VMs.</div>
|
||||
<div class="title"><fmt:message key="label.storage"/></div>
|
||||
<div class="desc"></div>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
@ -562,14 +560,14 @@
|
|||
zone-wizard-form="basicPhysicalNetwork"
|
||||
zone-wizard-prefilter="addNetscalerDevice">
|
||||
<ul class="subnav">
|
||||
<li class="conditional elb physical-network active">Netscaler</li>
|
||||
<li class="public-network">Public traffic</li>
|
||||
<li class="pod">Pod</li>
|
||||
<li class="guest-traffic">Guest Traffic</li>
|
||||
<li class="conditional storage-traffic">Storage Traffic</li>
|
||||
<li class="conditional elb physical-network active"><fmt:message key="label.netScaler"/></li>
|
||||
<li class="public-network"><fmt:message key="label.public.traffic"/></li>
|
||||
<li class="pod"><fmt:message key="label.pod"/></li>
|
||||
<li class="guest-traffic"><fmt:message key="label.guest.traffic"/></li>
|
||||
<li class="conditional storage-traffic"><fmt:message key="label.storage.traffic"/></li>
|
||||
</ul>
|
||||
|
||||
<div class="info-desc">Please specify Netscaler info</div>
|
||||
<div class="info-desc"><fmt:message key="label.please.specify.netscaler.info"/></div>
|
||||
<div class="content input-area">
|
||||
<div class="select-container"></div>
|
||||
</div>
|
||||
|
|
@ -579,15 +577,16 @@
|
|||
<div class="setup-public-traffic" zone-wizard-prefilter="addPublicNetwork"
|
||||
zone-wizard-step-id="configurePublicTraffic">
|
||||
<ul class="subnav">
|
||||
<li class="conditional elb physical-network">Netscaler</li>
|
||||
<li class="public-network active">Public traffic</li>
|
||||
<li class="pod">Pod</li>
|
||||
<li class="guest-traffic">Guest Traffic</li>
|
||||
<li class="conditional storage-traffic">Storage Traffic</li>
|
||||
<li class="conditional elb physical-network"><fmt:message key="label.netScaler"/></li>
|
||||
<li class="public-network active"><fmt:message key="label.public.traffic"/></li>
|
||||
<li class="pod"><fmt:message key="label.pod"/></li>
|
||||
<li class="guest-traffic"><fmt:message key="label.guest.traffic"/></li>
|
||||
<li class="conditional storage-traffic"><fmt:message key="label.storage.traffic"/></li>
|
||||
</ul>
|
||||
|
||||
<div class="info-desc">
|
||||
Public traffic is generated when VMs in the cloud access the internet. Publicly-accessible IPs must be allocated for this purpose. End users can use the CloudStack UI to acquire these IPs to implement NAT between their guest network and their public network.<br/><br/>Provide at lease one range of IP addresses for internet traffic.
|
||||
<div class="info-desc" id="add_zone_public_traffic_desc">
|
||||
<span id="for_basic_zone" style="display:none"><fmt:message key="message.public.traffic.in.basic.zone"/></span>
|
||||
<span id="for_advanced_zone" style="display:none"><fmt:message key="message.public.traffic.in.advanced.zone"/></span>
|
||||
</div>
|
||||
<div ui-custom="publicTrafficIPRange"></div>
|
||||
</div>
|
||||
|
|
@ -596,15 +595,15 @@
|
|||
<div class="add-pod" zone-wizard-form="pod"
|
||||
zone-wizard-step-id="addPod">
|
||||
<ul class="subnav">
|
||||
<li class="conditional elb physical-network">Netscaler</li>
|
||||
<li class="public-network">Public traffic</li>
|
||||
<li class="pod active">Pod</li>
|
||||
<li class="guest-traffic">Guest Traffic</li>
|
||||
<li class="conditional storage-traffic">Storage Traffic</li>
|
||||
<li class="conditional elb physical-network"><fmt:message key="label.netScaler"/></li>
|
||||
<li class="public-network"><fmt:message key="label.public.traffic"/></li>
|
||||
<li class="pod active"><fmt:message key="label.pod"/></li>
|
||||
<li class="guest-traffic"><fmt:message key="label.guest.traffic"/></li>
|
||||
<li class="conditional storage-traffic"><fmt:message key="label.storage.traffic"/></li>
|
||||
</ul>
|
||||
|
||||
<div class="info-desc">
|
||||
Each zone must contain in one or more pods, and we will add the first pod now. A pod contains hosts and primary storage servers, which you will add in a later step. First, configure a range of reserved IP addresses for CloudStack's internal management traffic. The reserved IP range must be unique for each zone in the cloud.
|
||||
<fmt:message key="message.add.pod.during.zone.creation"/>
|
||||
</div>
|
||||
<div class="content input-area">
|
||||
<div class="select-container"></div>
|
||||
|
|
@ -617,15 +616,16 @@
|
|||
zone-wizard-step-id="configureGuestTraffic"
|
||||
zone-wizard-prefilter="configureGuestTraffic">
|
||||
<ul class="subnav">
|
||||
<li class="conditional elb physical-network">Netscaler</li>
|
||||
<li class="public-network">Public traffic</li>
|
||||
<li class="pod">Pod</li>
|
||||
<li class="guest-traffic active">Guest Traffic</li>
|
||||
<li class="conditional storage-traffic">Storage Traffic</li>
|
||||
<li class="conditional elb physical-network"><fmt:message key="label.netScaler"/></li>
|
||||
<li class="public-network"><fmt:message key="label.public.traffic"/></li>
|
||||
<li class="pod"><fmt:message key="label.pod"/></li>
|
||||
<li class="guest-traffic active"><fmt:message key="label.guest.traffic"/></li>
|
||||
<li class="conditional storage-traffic"><fmt:message key="label.storage.traffic"/></li>
|
||||
</ul>
|
||||
|
||||
<div class="info-desc">
|
||||
Guest network traffic is communication between end-user virtual machines.
|
||||
<div class="info-desc" id="add_zone_guest_traffic_desc">
|
||||
<span id="for_basic_zone" style="display:none"><fmt:message key="message.guest.traffic.in.basic.zone"/></span>
|
||||
<span id="for_advanced_zone" style="display:none"><fmt:message key="message.guest.traffic.in.advanced.zone"/></span>
|
||||
</div>
|
||||
<div class="content input-area">
|
||||
<div class="select-container"></div>
|
||||
|
|
@ -636,15 +636,15 @@
|
|||
<div class="setup-storage-traffic" zone-wizard-prefilter="configureStorageTraffic"
|
||||
zone-wizard-step-id="configureStorageTraffic">
|
||||
<ul class="subnav">
|
||||
<li class="conditional elb physical-network">Netscaler</li>
|
||||
<li class="public-network">Public traffic</li>
|
||||
<li class="pod">Pod</li>
|
||||
<li class="guest-traffic">Guest Traffic</li>
|
||||
<li class="storage-traffic active">Storage Traffic</li>
|
||||
<li class="conditional elb physical-network"><fmt:message key="label.netScaler"/></li>
|
||||
<li class="public-network"><fmt:message key="label.public.traffic"/></li>
|
||||
<li class="pod"><fmt:message key="label.pod"/><</li>
|
||||
<li class="guest-traffic"><fmt:message key="label.guest.traffic"/></li>
|
||||
<li class="storage-traffic active"><fmt:message key="label.storage.traffic"/></li>
|
||||
</ul>
|
||||
|
||||
<div class="info-desc">
|
||||
Traffic between CloudStack's internal resources, including any components that communicate with the Management Server, such as hosts and CloudStack system VMs. Please configure storage traffic here.
|
||||
<fmt:message key="message.storage.traffic"/>
|
||||
</div>
|
||||
<div ui-custom="storageTrafficIPRange"></div>
|
||||
</div>
|
||||
|
|
@ -653,15 +653,15 @@
|
|||
<div class="add-cluster" zone-wizard-form="cluster"
|
||||
zone-wizard-step-id="addCluster">
|
||||
<ul class="subnav">
|
||||
<li class="cluster active">Cluster</li>
|
||||
<li class="host">Host</li>
|
||||
<li class="primary-storage">Primary Storage</li>
|
||||
<li class="secondary-storage">Secondary Storage</li>
|
||||
<li class="cluster active"><fmt:message key="label.cluster"/></li>
|
||||
<li class="host"><fmt:message key="label.host"/></li>
|
||||
<li class="primary-storage"><fmt:message key="label.primary.storage"/></li>
|
||||
<li class="secondary-storage"><fmt:message key="label.secondary.storage"/></li>
|
||||
</ul>
|
||||
|
||||
<div class="info-desc">
|
||||
Each pod must contain one or more clusters, and we will add the first cluster now. A cluster provides a way to group hosts. The hosts in a cluster all have identical hardware, run the same hypervisor, are on the same subnet, and access the same shared storage. Each cluster consists of one or more hosts and one or more primary storage servers.
|
||||
</div>
|
||||
<fmt:message key="message.desc.cluster"/>
|
||||
</div>
|
||||
<div class="content input-area">
|
||||
<div class="select-container"></div>
|
||||
</div>
|
||||
|
|
@ -671,14 +671,14 @@
|
|||
<div class="add-cluster" zone-wizard-form="host"
|
||||
zone-wizard-step-id="addHost" zone-wizard-prefilter="addHost">
|
||||
<ul class="subnav">
|
||||
<li class="cluster">Cluster</li>
|
||||
<li class="host active">Host</li>
|
||||
<li class="primary-storage">Primary Storage</li>
|
||||
<li class="secondary-storage">Secondary Storage</li>
|
||||
<li class="cluster"><fmt:message key="label.cluster"/></li>
|
||||
<li class="host active"><fmt:message key="label.host"/></li>
|
||||
<li class="primary-storage"><fmt:message key="label.primary.storage"/></li>
|
||||
<li class="secondary-storage"><fmt:message key="label.secondary.storage"/></li>
|
||||
</ul>
|
||||
<div class="info-desc">
|
||||
Each cluster must contain at lease one host (computer) for guest VMs to run on, and we will add the first host now. For a host to function in CloudStack, you must install hypervisor software on the host, assign an IP address to the host, and ensure the host is connected to the CloudStack management server.<br/><br/>Give the host's DNS or IP address, the user name (usually root) and password, and any labels you use to categorize hosts.
|
||||
</div>
|
||||
<fmt:message key="message.desc.host"/>
|
||||
</div>
|
||||
<div class="content input-area">
|
||||
<div class="select-container"></div>
|
||||
</div>
|
||||
|
|
@ -688,14 +688,14 @@
|
|||
<div class="add-cluster" zone-wizard-form="primaryStorage"
|
||||
zone-wizard-step-id="addPrimaryStorage">
|
||||
<ul class="subnav">
|
||||
<li class="cluster">Cluster</li>
|
||||
<li class="host">Host</li>
|
||||
<li class="primary-storage active">Primary Storage</li>
|
||||
<li class="secondary-storage">Secondary Storage</li>
|
||||
<li class="cluster"><fmt:message key="label.cluster"/></li>
|
||||
<li class="host"><fmt:message key="label.host"/></li>
|
||||
<li class="primary-storage active"><fmt:message key="label.primary.storage"/></li>
|
||||
<li class="secondary-storage"><fmt:message key="label.secondary.storage"/></li>
|
||||
</ul>
|
||||
<div class="info-desc">
|
||||
Each cluster must contain one or more primary storage servers, and we will add the first one now. Primary storage contains the disk volumes for all the VMs running on hosts in the cluster. Use any standards-compliant protocol that is supported by the underlying hypervisor.
|
||||
</div>
|
||||
<fmt:message key="message.desc.primary.storage"/>
|
||||
</div>
|
||||
<div class="content input-area">
|
||||
<div class="select-container"></div>
|
||||
</div>
|
||||
|
|
@ -705,14 +705,14 @@
|
|||
<div class="add-cluster" zone-wizard-form="secondaryStorage"
|
||||
zone-wizard-step-id="addSecondaryStorage">
|
||||
<ul class="subnav">
|
||||
<li class="cluster">Cluster</li>
|
||||
<li class="host">Host</li>
|
||||
<li class="primary-storage">Primary Storage</li>
|
||||
<li class="secondary-storage active">Secondary Storage</li>
|
||||
<li class="cluster"><fmt:message key="label.cluster"/></li>
|
||||
<li class="host"><fmt:message key="label.host"/></li>
|
||||
<li class="primary-storage"><fmt:message key="label.primary.storage"/></li>
|
||||
<li class="secondary-storage active"><fmt:message key="label.secondary.storage"/></li>
|
||||
</ul>
|
||||
<div class="info-desc">
|
||||
Each zone must have at lease one NFS or secondary storage server, and we will add the first one now. Secondary storage stores VM templates, ISO images, and VM disk volume snapshots. This server must be available to all hosts in the zone.<br/><br/>Provide the IP address and exported path.
|
||||
</div>
|
||||
<fmt:message key="message.desc.secondary.storage"/>
|
||||
</div>
|
||||
<div class="content input-area">
|
||||
<div class="select-container"></div>
|
||||
</div>
|
||||
|
|
@ -720,9 +720,9 @@
|
|||
|
||||
<!-- Step 5: Launch -->
|
||||
<div class="review" zone-wizard-step-id="launch">
|
||||
<div class="main-desc">Launch zone</div>
|
||||
<div class="main-desc"><fmt:message key="label.launch.zone"/></div>
|
||||
<div class="main-desc launch" style="display:none;">
|
||||
Please wait while your zone is being created; this may take a while...
|
||||
<fmt:message key="message.please.wait.while.zone.is.being.created"/>
|
||||
</div>
|
||||
<form>
|
||||
</form>
|
||||
|
|
@ -734,9 +734,9 @@
|
|||
|
||||
<!-- Buttons -->
|
||||
<div class="buttons">
|
||||
<div class="button previous"><span>Previous</span></div>
|
||||
<div class="button cancel"><span>Cancel</span></div>
|
||||
<div class="button next"><span>Next</span></div>
|
||||
<div class="button previous"><span><fmt:message key="label.previous"/></span></div>
|
||||
<div class="button cancel"><span><fmt:message key="label.cancel"/></span></div>
|
||||
<div class="button next"><span><fmt:message key="label.next"/></span></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
@ -744,16 +744,16 @@
|
|||
<div class="network-chart normal">
|
||||
<ul>
|
||||
<li class="firewall">
|
||||
<div class="name"><span>Firewall</span></div>
|
||||
<div class="view-details" net-target="firewall">View All</div>
|
||||
<div class="name"><span><fmt:message key="label.firewall"/></span></div>
|
||||
<div class="view-details" net-target="firewall"><fmt:message key="label.view.all"/></div>
|
||||
</li>
|
||||
<li class="loadBalancing">
|
||||
<div class="name"><span>Load Balancing</span></div>
|
||||
<div class="view-details" net-target="loadBalancing">View All</div>
|
||||
<div class="name"><span><fmt:message key="label.load.balancing"/></span></div>
|
||||
<div class="view-details" net-target="loadBalancing"><fmt:message key="label.view.all"/></div>
|
||||
</li>
|
||||
<li class="portForwarding">
|
||||
<div class="name"><span>Port Forwarding</span></div>
|
||||
<div class="view-details" net-target="portForwarding">View All</div>
|
||||
<div class="name"><span><fmt:message key="label.port.forwarding"/></span></div>
|
||||
<div class="view-details" net-target="portForwarding"><fmt:message key="label.view.all"/></div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -762,12 +762,12 @@
|
|||
<div class="network-chart static-nat">
|
||||
<ul>
|
||||
<li class="static-nat-enabled">
|
||||
<div class="name"><span>Static NAT Enabled</span></div>
|
||||
<div class="name"><span><fmt:message key="label.static.nat.enabled"/></span></div>
|
||||
<div class="vmname"></div>
|
||||
</li>
|
||||
<li class="firewall">
|
||||
<div class="name"><span>Firewall</span></div>
|
||||
<div class="view-details" net-target="staticNAT">View All</div>
|
||||
<div class="name"><span><fmt:message key="label.firewall"/></span></div>
|
||||
<div class="view-details" net-target="staticNAT"><fmt:message key="label.view.all"/></div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
|
@ -907,31 +907,31 @@
|
|||
<div class="system-dashboard-view">
|
||||
<div class="toolbar">
|
||||
<div class="button refresh">
|
||||
<span>Refresh</span>
|
||||
<span><fmt:message key="label.refresh"/></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Zone dashboard -->
|
||||
<div class="system-dashboard">
|
||||
<div class="head">
|
||||
<span>Zones</span>
|
||||
<div class="view-more"><span>View more</span></div>
|
||||
<span><fmt:message key="label.zones"/></span>
|
||||
<div class="view-more"><span><fmt:message key="label.view.more"/></span></div>
|
||||
</div>
|
||||
<ul class="status_box good">
|
||||
<li class="block">
|
||||
<span class="header">Number of Zones</span>
|
||||
<span class="header"><fmt:message key="label.number.of.zones"/></span>
|
||||
<span class="overview total" data-item="zoneCount"></span>
|
||||
</li>
|
||||
<li class="block">
|
||||
<span class="header">Number of Pods</span>
|
||||
<span class="header"><fmt:message key="label.number.of.pods"/></span>
|
||||
<span class="overview total" data-item="podCount"></span>
|
||||
</li>
|
||||
<li class="block">
|
||||
<span class="header">Number of Clusters</span>
|
||||
<span class="header"><fmt:message key="label.number.of.clusters"/></span>
|
||||
<span class="overview total" data-item="clusterCount"></span>
|
||||
</li>
|
||||
<li class="block last">
|
||||
<span class="header">Number of Hosts</span>
|
||||
<span class="header"><fmt:message key="label.number.of.hosts"/></span>
|
||||
<span class="overview total" data-item="hostCount"></span>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
@ -940,24 +940,24 @@
|
|||
<!-- Host dashboard -->
|
||||
<div class="system-dashboard">
|
||||
<div class="head">
|
||||
<span>Hosts</span>
|
||||
<div class="view-more"><span>View more</span></div>
|
||||
<span<fmt:message key="label.hosts"/></span>
|
||||
<div class="view-more"><span><fmt:message key="label.view.more"/></span></div>
|
||||
</div>
|
||||
<ul class="status_box good">
|
||||
<li class="block">
|
||||
<span class="header">Total Hosts</span>
|
||||
<span class="header"><fmt:message key="label.total.hosts"/></span>
|
||||
<span class="overview total" data-item="hostCount"></span>
|
||||
</li>
|
||||
<li class="block capacity">
|
||||
<span class="header">Total CPU</span>
|
||||
<span class="header"><fmt:message key="label.total.CPU"/></span>
|
||||
<span class="overview total" data-item="cpuCapacityTotal"></span>
|
||||
</li>
|
||||
<li class="block capacity">
|
||||
<span class="header">Total Memory</span>
|
||||
<span class="header"><fmt:message key="label.total.memory"/></span>
|
||||
<span class="overview total" data-item="memCapacityTotal"></span>
|
||||
</li>
|
||||
<li class="block last capacity">
|
||||
<span class="header">Total Storage</span>
|
||||
<span class="header"><fmt:message key="label.total.storage"/></span>
|
||||
<span class="overview total" data-item="storageCapacityTotal"></span>
|
||||
</li>
|
||||
</ul>
|
||||
|
|
@ -1614,6 +1614,76 @@
|
|||
|
||||
<script language="javascript">
|
||||
dictionary = {
|
||||
'message.migrate.instance.to.host': '<fmt:message key="message.migrate.instance.to.host"/>',
|
||||
'label.migrate.instance.to.host': '<fmt:message key="label.migrate.instance.to.host"/>',
|
||||
'message.migrate.instance.to.ps': '<fmt:message key="message.migrate.instance.to.ps"/>',
|
||||
'label.migrate.instance.to.ps': '<fmt:message key="label.migrate.instance.to.ps"/>',
|
||||
'label.corrections.saved': '<fmt:message key="label.corrections.saved"/>',
|
||||
'message.installWizard.copy.whatIsSecondaryStorage': '<fmt:message key="message.installWizard.copy.whatIsSecondaryStorage"/>',
|
||||
'message.installWizard.copy.whatIsPrimaryStorage': '<fmt:message key="message.installWizard.copy.whatIsPrimaryStorage"/>',
|
||||
'message.installWizard.copy.whatIsAHost': '<fmt:message key="message.installWizard.copy.whatIsAHost"/>',
|
||||
'message.installWizard.copy.whatIsACluster': '<fmt:message key="message.installWizard.copy.whatIsACluster"/>',
|
||||
'message.installWizard.copy.whatIsACluster': '<fmt:message key="message.installWizard.copy.whatIsACluster"/>',
|
||||
'message.installWizard.copy.whatIsAPod': '<fmt:message key="message.installWizard.copy.whatIsAPod"/>',
|
||||
'message.installWizard.copy.whatIsAZone': '<fmt:message key="message.installWizard.copy.whatIsAZone"/>',
|
||||
'message.installWizard.copy.whatIsCloudStack': '<fmt:message key="message.installWizard.copy.whatIsCloudStack"/>',
|
||||
'message.installWizard.tooltip.addSecondaryStorage.path': '<fmt:message key="message.installWizard.tooltip.addSecondaryStorage.path"/>',
|
||||
'message.installWizard.tooltip.addSecondaryStorage.nfsServer': '<fmt:message key="message.installWizard.tooltip.addSecondaryStorage.nfsServer"/>',
|
||||
'message.installWizard.tooltip.addPrimaryStorage.path': '<fmt:message key="message.installWizard.tooltip.addPrimaryStorage.path"/>',
|
||||
'message.installWizard.tooltip.addPrimaryStorage.server': '<fmt:message key="message.installWizard.tooltip.addPrimaryStorage.server"/>',
|
||||
'message.installWizard.tooltip.addPrimaryStorage.name': '<fmt:message key="message.installWizard.tooltip.addPrimaryStorage.name"/>',
|
||||
'message.installWizard.tooltip.addHost.password': '<fmt:message key="message.installWizard.tooltip.addHost.password"/>',
|
||||
'message.installWizard.tooltip.addHost.username': '<fmt:message key="message.installWizard.tooltip.addHost.username"/>',
|
||||
'message.installWizard.tooltip.addHost.hostname': '<fmt:message key="message.installWizard.tooltip.addHost.hostname"/>',
|
||||
'message.installWizard.tooltip.addCluster.name': '<fmt:message key="message.installWizard.tooltip.addCluster.name"/>',
|
||||
'message.installWizard.tooltip.addPod.reservedSystemEndIp': '<fmt:message key="message.installWizard.tooltip.addPod.reservedSystemEndIp"/>',
|
||||
'message.installWizard.tooltip.addPod.reservedSystemStartIp': '<fmt:message key="message.installWizard.tooltip.addPod.reservedSystemStartIp"/>',
|
||||
'message.installWizard.tooltip.addPod.reservedSystemNetmask': '<fmt:message key="message.installWizard.tooltip.addPod.reservedSystemNetmask"/>',
|
||||
'message.installWizard.tooltip.addPod.reservedSystemGateway': '<fmt:message key="message.installWizard.tooltip.addPod.reservedSystemGateway"/>',
|
||||
'message.installWizard.tooltip.addPod.name': '<fmt:message key="message.installWizard.tooltip.addPod.name"/>',
|
||||
'message.installWizard.tooltip.configureGuestTraffic.guestEndIp': '<fmt:message key="message.installWizard.tooltip.configureGuestTraffic.guestEndIp"/>',
|
||||
'message.installWizard.tooltip.configureGuestTraffic.guestStartIp': '<fmt:message key="message.installWizard.tooltip.configureGuestTraffic.guestStartIp"/>',
|
||||
'message.installWizard.tooltip.configureGuestTraffic.guestNetmask': '<fmt:message key="message.installWizard.tooltip.configureGuestTraffic.guestNetmask"/>',
|
||||
'message.installWizard.tooltip.configureGuestTraffic.guestGateway': '<fmt:message key="message.installWizard.tooltip.configureGuestTraffic.guestGateway"/>',
|
||||
'message.installWizard.tooltip.configureGuestTraffic.description': '<fmt:message key="message.installWizard.tooltip.configureGuestTraffic.description"/>',
|
||||
'message.installWizard.tooltip.configureGuestTraffic.name': '<fmt:message key="message.installWizard.tooltip.configureGuestTraffic.name"/>',
|
||||
'message.installWizard.tooltip.addZone.internaldns2': '<fmt:message key="message.installWizard.tooltip.addZone.internaldns2"/>',
|
||||
'message.installWizard.tooltip.addZone.internaldns1': '<fmt:message key="message.installWizard.tooltip.addZone.internaldns1"/>',
|
||||
'message.installWizard.tooltip.addZone.dns2': '<fmt:message key="message.installWizard.tooltip.addZone.dns2"/>',
|
||||
'message.installWizard.tooltip.addZone.dns1': '<fmt:message key="message.installWizard.tooltip.addZone.dns1"/>',
|
||||
'message.installWizard.tooltip.addZone.name': '<fmt:message key="message.installWizard.tooltip.addZone.name"/>',
|
||||
'label.launch': '<fmt:message key="label.launch"/>',
|
||||
'label.hints': '<fmt:message key="label.hints"/>',
|
||||
'label.continue': '<fmt:message key="label.continue"/>',
|
||||
'message.setup.successful': '<fmt:message key="message.setup.successful"/>',
|
||||
'label.may.continue': '<fmt:message key="label.may.continue"/>',
|
||||
'error.installWizard.message': '<fmt:message key="error.installWizard.message"/>',
|
||||
'message.installWizard.now.building': '<fmt:message key="message.installWizard.now.building"/>',
|
||||
'message.installWizard.click.retry': '<fmt:message key="message.installWizard.click.retry"/>',
|
||||
'label.installWizard.click.launch': '<fmt:message key="label.installWizard.click.launch"/>',
|
||||
'label.congratulations': '<fmt:message key="label.congratulations"/>',
|
||||
'label.installWizard.addSecondaryStorageIntro.subtitle': '<fmt:message key="label.installWizard.addSecondaryStorageIntro.subtitle"/>',
|
||||
'label.installWizard.addSecondaryStorageIntro.title': '<fmt:message key="label.installWizard.addSecondaryStorageIntro.title"/>',
|
||||
'label.installWizard.addPrimaryStorageIntro.subtitle': '<fmt:message key="label.installWizard.addPrimaryStorageIntro.subtitle"/>',
|
||||
'label.installWizard.addPrimaryStorageIntro.title': '<fmt:message key="label.installWizard.addPrimaryStorageIntro.title"/>',
|
||||
'label.installWizard.addHostIntro.subtitle': '<fmt:message key="label.installWizard.addHostIntro.subtitle"/>',
|
||||
'label.installWizard.addHostIntro.title': '<fmt:message key="label.installWizard.addHostIntro.title"/>',
|
||||
'label.installWizard.addClusterIntro.subtitle': '<fmt:message key="label.installWizard.addClusterIntro.subtitle"/>',
|
||||
'label.installWizard.addClusterIntro.title': '<fmt:message key="label.installWizard.addClusterIntro.title"/>',
|
||||
'label.installWizard.addPodIntro.subtitle': '<fmt:message key="label.installWizard.addPodIntro.subtitle"/>',
|
||||
'label.installWizard.addPodIntro.title': '<fmt:message key="label.installWizard.addPodIntro.title"/>',
|
||||
'label.installWizard.addZone.title': '<fmt:message key="label.installWizard.addZone.title"/>',
|
||||
'error.password.not.match': '<fmt:message key="error.password.not.match"/>',
|
||||
'label.installWizard.addZoneIntro.subtitle': '<fmt:message key="label.installWizard.addZoneIntro.subtitle"/>',
|
||||
'label.installWizard.addZoneIntro.title': '<fmt:message key="label.installWizard.addZoneIntro.title"/>',
|
||||
'label.confirm.password': '<fmt:message key="label.confirm.password"/>',
|
||||
'message.change.password': '<fmt:message key="message.change.password"/>',
|
||||
'label.save.and.continue': '<fmt:message key="label.save.and.continue"/>',
|
||||
'label.continue.basic.install': '<fmt:message key="label.continue.basic.install"/>',
|
||||
'label.skip.guide': '<fmt:message key="label.skip.guide"/>',
|
||||
'label.introduction.to.cloudstack': '<fmt:message key="label.introduction.to.cloudstack"/>',
|
||||
'label.what.is.cloudstack': '<fmt:message key="label.what.is.cloudstack"/>',
|
||||
'label.installWizard.subtitle': '<fmt:message key="label.installWizard.subtitle"/>',
|
||||
'label.installWizard.title': '<fmt:message key="label.installWizard.title"/>',
|
||||
'label.agree': '<fmt:message key="label.agree"/>',
|
||||
'label.license.agreement.subtitle': '<fmt:message key="label.license.agreement.subtitle"/>',
|
||||
|
|
@ -1849,7 +1919,7 @@ dictionary = {
|
|||
'label.action.unmanage.cluster': '<fmt:message key="label.action.unmanage.cluster" />',
|
||||
'message.action.unmanage.cluster': '<fmt:message key="message.action.unmanage.cluster" />',
|
||||
'label.action.unmanage.cluster.processing': '<fmt:message key="label.action.unmanage.cluster.processing" />',
|
||||
'allocation.state': '<fmt:message key="allocation.state" />',
|
||||
'label.allocation.state': '<fmt:message key="label.allocation.state" />',
|
||||
'managed.state': '<fmt:message key="managed.state" />',
|
||||
'label.default.use': '<fmt:message key="label.default.use" />',
|
||||
'label.host.tags': '<fmt:message key="label.host.tags" />',
|
||||
|
|
@ -2644,123 +2714,119 @@ dictionary = {
|
|||
'message.add.system.service.offering': '<fmt:message key="message.add.system.service.offering" />', //Jes
|
||||
'message.action.delete.system.service.offering': '<fmt:message key="message.action.delete.system.service.offering" />',
|
||||
'label.action.delete.system.service.offering': '<fmt:message key="label.action.delete.system.service.offering" />',
|
||||
'hypervisor.capabilities': '<fmt:message key="hypervisor.capabilities" />',
|
||||
'hypervisor.version': '<fmt:message key="hypervisor.version" />',
|
||||
'max.guest.limit': '<fmt:message key="max.guest.limit" />',
|
||||
'security.group.enabled': '<fmt:message key="security.group.enabled" />',
|
||||
'add.network.offering': '<fmt:message key="add.network.offering" />',
|
||||
'supported.services': '<fmt:message key="supported.services" />',
|
||||
'service.capabilities': '<fmt:message key="service.capabilities" />',
|
||||
'guest.type': '<fmt:message key="guest.type" />',
|
||||
'specify.IP.ranges': '<fmt:message key="specify.IP.ranges" />',
|
||||
'conserve.mode': '<fmt:message key="conserve.mode" />',
|
||||
'created.by.system': '<fmt:message key="created.by.system" />',
|
||||
'label.hypervisor.capabilities': '<fmt:message key="label.hypervisor.capabilities" />',
|
||||
'label.hypervisor.version': '<fmt:message key="label.hypervisor.version" />',
|
||||
'label.max.guest.limit': '<fmt:message key="label.max.guest.limit" />',
|
||||
'label.add.network.offering': '<fmt:message key="label.add.network.offering" />',
|
||||
'label.supported.services': '<fmt:message key="label.supported.services" />',
|
||||
'label.service.capabilities': '<fmt:message key="label.service.capabilities" />',
|
||||
'label.guest.type': '<fmt:message key="label.guest.type" />',
|
||||
'label.specify.IP.ranges': '<fmt:message key="label.specify.IP.ranges" />',
|
||||
'label.conserve.mode': '<fmt:message key="label.conserve.mode" />',
|
||||
'label.created.by.system': '<fmt:message key="label.created.by.system" />',
|
||||
'label.menu.system.service.offerings': '<fmt:message key="label.menu.system.service.offerings" />',
|
||||
'label.add.system.service.offering': '<fmt:message key="label.add.system.service.offering" />',
|
||||
'redundant.router.capability': '<fmt:message key="redundant.router.capability" />',
|
||||
'supported.source.NAT.type': '<fmt:message key="supported.source.NAT.type" />',
|
||||
'elastic.LB': '<fmt:message key="elastic.LB" />',
|
||||
'LB.isolation': '<fmt:message key="LB.isolation" />',
|
||||
'elastic.IP': '<fmt:message key="elastic.IP" />',
|
||||
'network.label.display.for.blank.value': '<fmt:message key="network.label.display.for.blank.value" />',
|
||||
'Xen.traffic.label': '<fmt:message key="Xen.traffic.label" />',
|
||||
'KVM.traffic.label': '<fmt:message key="KVM.traffic.label" />',
|
||||
'VMware.traffic.label': '<fmt:message key="VMware.traffic.label" />',
|
||||
'start.IP': '<fmt:message key="start.IP" />',
|
||||
'end.IP': '<fmt:message key="end.IP" />',
|
||||
'IP.range.is.added': '<fmt:message key="IP.range.is.added" />',
|
||||
'remove.IP.range': '<fmt:message key="remove.IP.range" />',
|
||||
'storage.traffic.type.is.updated': '<fmt:message key="storage.traffic.type.is.updated" />',
|
||||
'management.traffic.type.is.updated': '<fmt:message key="management.traffic.type.is.updated" />',
|
||||
'public.traffic.type.is.updated': '<fmt:message key="public.traffic.type.is.updated" />',
|
||||
'guest.traffic.type.is.updated': '<fmt:message key="guest.traffic.type.is.updated" />',
|
||||
'IP.ranges': '<fmt:message key="IP.ranges" />',
|
||||
'start.Vlan': '<fmt:message key="start.Vlan" />',
|
||||
'end.Vlan': '<fmt:message key="end.Vlan" />',
|
||||
'broadcast.domain.range': '<fmt:message key="broadcast.domain.range" />',
|
||||
'label.redundant.router.capability': '<fmt:message key="label.redundant.router.capability" />',
|
||||
'label.supported.source.NAT.type': '<fmt:message key="label.supported.source.NAT.type" />',
|
||||
'label.elastic.LB': '<fmt:message key="label.elastic.LB" />',
|
||||
'label.LB.isolation': '<fmt:message key="label.LB.isolation" />',
|
||||
'label.elastic.IP': '<fmt:message key="label.elastic.IP" />',
|
||||
'label.network.label.display.for.blank.value': '<fmt:message key="label.network.label.display.for.blank.value" />',
|
||||
'label.xen.traffic.label': '<fmt:message key="label.xen.traffic.label" />',
|
||||
'label.kvm.traffic.label': '<fmt:message key="label.kvm.traffic.label" />',
|
||||
'label.vmware.traffic.label': '<fmt:message key="label.vmware.traffic.label" />',
|
||||
'label.start.IP': '<fmt:message key="label.start.IP" />',
|
||||
'label.end.IP': '<fmt:message key="label.end.IP" />',
|
||||
'label.remove.ip.range': '<fmt:message key="label.remove.ip.range" />',
|
||||
'label.ip.ranges': '<fmt:message key="label.ip.ranges" />',
|
||||
'label.start.vlan': '<fmt:message key="label.start.vlan" />',
|
||||
'label.end.vlan': '<fmt:message key="label.end.vlan" />',
|
||||
'label.broadcast.domain.range': '<fmt:message key="label.broadcast.domain.range" />',
|
||||
'label.compute': '<fmt:message key="label.compute" />',
|
||||
'message.add.guest.network': '<fmt:message key="message.add.guest.network" />',
|
||||
'subdomain.access': '<fmt:message key="subdomain.access" />',
|
||||
'guest.start.IP': '<fmt:message key="guest.start.IP" />',
|
||||
'guest.end.IP': '<fmt:message key="guest.end.IP" />',
|
||||
'restart.required': '<fmt:message key="restart.required" />',
|
||||
'virtual.router': '<fmt:message key="virtual.router" />',
|
||||
'physical.network.ID': '<fmt:message key="physical.network.ID" />',
|
||||
'destination.physical.network.ID': '<fmt:message key="destination.physical.network.ID" />',
|
||||
'DHCP': '<fmt:message key="DHCP" />',
|
||||
'destroy.router': '<fmt:message key="destroy.router" />',
|
||||
'confirm.destroy.router': '<fmt:message key="confirm.destroy.router" />',
|
||||
'change.service.offering': '<fmt:message key="change.service.offering" />',
|
||||
'view.console': '<fmt:message key="view.console" />',
|
||||
'redundant.state': '<fmt:message key="redundant.state" />',
|
||||
'enable.provider': '<fmt:message key="enable.provider" />',
|
||||
'confirm.enable.provider': '<fmt:message key="confirm.enable.provider" />',
|
||||
'disable.provider': '<fmt:message key="disable.provider" />',
|
||||
'confirm.disable.provider': '<fmt:message key="confirm.disable.provider" />',
|
||||
'shutdown.provider': '<fmt:message key="shutdown.provider" />',
|
||||
'confirm.shutdown.provider': '<fmt:message key="confirm.shutdown.provider" />',
|
||||
'NetScaler': '<fmt:message key="NetScaler" />',
|
||||
'add.new.NetScaler': '<fmt:message key="add.new.NetScaler" />',
|
||||
'number.of.retries': '<fmt:message key="number.of.retries" />',
|
||||
'capacity': '<fmt:message key="capacity" />',
|
||||
'dedicated': '<fmt:message key="dedicated" />',
|
||||
'F5': '<fmt:message key="F5" />',
|
||||
'add.new.F5': '<fmt:message key="add.new.F5" />',
|
||||
'SRX': '<fmt:message key="SRX" />',
|
||||
'providers': '<fmt:message key="providers" />',
|
||||
'add.new.SRX': '<fmt:message key="add.new.SRX" />',
|
||||
'timeout': '<fmt:message key="timeout" />',
|
||||
'public.network': '<fmt:message key="public.network" />',
|
||||
'private.network': '<fmt:message key="private.network" />',
|
||||
'public': '<fmt:message key="public" />',
|
||||
'enable.swift': '<fmt:message key="enable.swift" />',
|
||||
'label.subdomain.access': '<fmt:message key="label.subdomain.access" />',
|
||||
'label.guest.start.ip': '<fmt:message key="label.guest.start.ip" />',
|
||||
'label.guest.end.ip': '<fmt:message key="label.guest.end.ip" />',
|
||||
'label.virtual.router': '<fmt:message key="label.virtual.router" />',
|
||||
'label.physical.network.ID': '<fmt:message key="label.physical.network.ID" />',
|
||||
'label.destination.physical.network.id': '<fmt:message key="label.destination.physical.network.id" />',
|
||||
'label.dhcp': '<fmt:message key="label.dhcp" />',
|
||||
'label.destroy.router': '<fmt:message key="label.destroy.router" />',
|
||||
'message.confirm.destroy.router': '<fmt:message key="message.confirm.destroy.router" />',
|
||||
'label.change.service.offering': '<fmt:message key="label.change.service.offering" />',
|
||||
'label.view.console': '<fmt:message key="label.view.console" />',
|
||||
'label.redundant.state': '<fmt:message key="label.redundant.state" />',
|
||||
'label.enable.provider': '<fmt:message key="label.enable.provider" />',
|
||||
'message.confirm.enable.provider': '<fmt:message key="message.confirm.enable.provider" />',
|
||||
'label.disable.provider': '<fmt:message key="label.disable.provider" />',
|
||||
'message.confirm.disable.provider': '<fmt:message key="message.confirm.disable.provider" />',
|
||||
'label.shutdown.provider': '<fmt:message key="label.shutdown.provider" />',
|
||||
'message.confirm.shutdown.provider': '<fmt:message key="message.confirm.shutdown.provider" />',
|
||||
'label.netScaler': '<fmt:message key="label.netScaler" />',
|
||||
'label.add.new.NetScaler': '<fmt:message key="label.add.new.NetScaler" />',
|
||||
'label.capacity': '<fmt:message key="label.capacity" />',
|
||||
'label.dedicated': '<fmt:message key="label.dedicated" />',
|
||||
'label.f5': '<fmt:message key="label.f5" />',
|
||||
'label.add.new.F5': '<fmt:message key="label.add.new.F5" />',
|
||||
'label.srx': '<fmt:message key="label.srx" />',
|
||||
'label.providers': '<fmt:message key="label.providers" />',
|
||||
'label.add.new.SRX': '<fmt:message key="label.add.new.SRX" />',
|
||||
'label.timeout': '<fmt:message key="label.timeout" />',
|
||||
'label.public.network': '<fmt:message key="label.public.network" />',
|
||||
'label.private.network': '<fmt:message key="label.private.network" />',
|
||||
'label.enable.swift': '<fmt:message key="label.enable.swift" />',
|
||||
'confirm.enable.swift': '<fmt:message key="confirm.enable.swift" />',
|
||||
'message.after.enable.swift': '<fmt:message key="message.after.enable.swift" />',
|
||||
'URL': '<fmt:message key="URL" />',
|
||||
'key': '<fmt:message key="key" />',
|
||||
'domain': '<fmt:message key="domain" />',
|
||||
'delete.NetScaler': '<fmt:message key="delete.NetScaler" />',
|
||||
'confirm.delete.NetScaler': '<fmt:message key="confirm.delete.NetScaler" />',
|
||||
'delete.F5': '<fmt:message key="delete.F5" />',
|
||||
'confirm.delete.F5': '<fmt:message key="confirm.delete.F5" />',
|
||||
'delete.SRX': '<fmt:message key="delete.SRX" />',
|
||||
'confirm.delete.SRX': '<fmt:message key="confirm.delete.SRX" />',
|
||||
'label.key': '<fmt:message key="label.key" />',
|
||||
'label.delete.NetScaler': '<fmt:message key="label.delete.NetScaler" />',
|
||||
'message.confirm.delete.NetScaler': '<fmt:message key="message.confirm.delete.NetScaler" />',
|
||||
'label.delete.F5': '<fmt:message key="label.delete.F5" />',
|
||||
'message.confirm.delete.F5': '<fmt:message key="message.confirm.delete.F5" />',
|
||||
'label.delete.SRX': '<fmt:message key="label.delete.SRX" />',
|
||||
'message.confirm.delete.SRX': '<fmt:message key="message.confirm.delete.SRX" />',
|
||||
'label.pods': '<fmt:message key="label.pods" />',
|
||||
'pod.name': '<fmt:message key="pod.name" />',
|
||||
'reserved.system.gateway': '<fmt:message key="reserved.system.gateway" />',
|
||||
'reserved.system.netmask': '<fmt:message key="reserved.system.netmask" />',
|
||||
'start.reserved.system.IP': '<fmt:message key="start.reserved.system.IP" />',
|
||||
'end.reserved.system.IP': '<fmt:message key="end.reserved.system.IP" />',
|
||||
'label.pod.name': '<fmt:message key="label.pod.name" />',
|
||||
'label.reserved.system.gateway': '<fmt:message key="label.reserved.system.gateway" />',
|
||||
'label.reserved.system.netmask': '<fmt:message key="label.reserved.system.netmask" />',
|
||||
'label.start.reserved.system.IP': '<fmt:message key="label.start.reserved.system.IP" />',
|
||||
'label.end.reserved.system.IP': '<fmt:message key="label.end.reserved.system.IP" />',
|
||||
'label.clusters': '<fmt:message key="label.clusters" />',
|
||||
'cluster.name': '<fmt:message key="cluster.name" />',
|
||||
'host.MAC': '<fmt:message key="host.MAC" />',
|
||||
'agent.username': '<fmt:message key="agent.username" />',
|
||||
'agent.password': '<fmt:message key="agent.password" />',
|
||||
'confirm.action.force.reconnect': '<fmt:message key="confirm.action.force.reconnect" />',
|
||||
'resource.state': '<fmt:message key="resource.state" />',
|
||||
'LUN.number': '<fmt:message key="LUN.number" />',
|
||||
'confirm.remove.IP.range': '<fmt:message key="confirm.remove.IP.range" />',
|
||||
'tooltip.zone.name': '<fmt:message key="tooltip.zone.name" />',
|
||||
'tooltip.dns.1': '<fmt:message key="tooltip.dns.1" />',
|
||||
'tooltip.dns.2': '<fmt:message key="tooltip.dns.2" />',
|
||||
'tooltip.internal.dns.1': '<fmt:message key="tooltip.internal.dns.1" />',
|
||||
'tooltip.internal.dns.2': '<fmt:message key="tooltip.internal.dns.2" />',
|
||||
'tooltip.network.domain': '<fmt:message key="tooltip.network.domain" />',
|
||||
'tooltip.pod.name': '<fmt:message key="tooltip.pod.name" />',
|
||||
'tooltip.reserved.system.gateway': '<fmt:message key="tooltip.reserved.system.gateway" />',
|
||||
'tooltip.reserved.system.netmask': '<fmt:message key="tooltip.reserved.system.netmask" />',
|
||||
'creating.zone': '<fmt:message key="creating.zone" />',
|
||||
'creating.physical.networks': '<fmt:message key="creating.physical.networks" />',
|
||||
'configuring.physical.networks': '<fmt:message key="configuring.physical.networks" />',
|
||||
'adding.Netscaler.device': '<fmt:message key="adding.Netscaler.device" />',
|
||||
'creating.pod': '<fmt:message key="creating.pod" />',
|
||||
'configuring.public.traffic': '<fmt:message key="configuring.public.traffic" />',
|
||||
'configuring.storage.traffic': '<fmt:message key="configuring.storage.traffic" />',
|
||||
'configuring.guest.traffic': '<fmt:message key="configuring.guest.traffic" />',
|
||||
'creating.cluster': '<fmt:message key="creating.cluster" />',
|
||||
'adding.host': '<fmt:message key="adding.host" />',
|
||||
'creating.primary.storage': '<fmt:message key="creating.primary.storage" />',
|
||||
'creating.secondary.storage': '<fmt:message key="creating.secondary.storage" />',
|
||||
'Zone.creation.complete': '<fmt:message key="Zone.creation.complete" />'
|
||||
'label.cluster.name': '<fmt:message key="label.cluster.name" />',
|
||||
'label.host.MAC': '<fmt:message key="label.host.MAC" />',
|
||||
'label.agent.username': '<fmt:message key="label.agent.username" />',
|
||||
'label.agent.password': '<fmt:message key="label.agent.password" />',
|
||||
'message.confirm.action.force.reconnect': '<fmt:message key="message.confirm.action.force.reconnect" />',
|
||||
'label.resource.state': '<fmt:message key="label.resource.state" />',
|
||||
'label.LUN.number': '<fmt:message key="label.LUN.number" />',
|
||||
'message.confirm.remove.IP.range': '<fmt:message key="message.confirm.remove.IP.range" />',
|
||||
'message.tooltip.zone.name': '<fmt:message key="message.tooltip.zone.name" />',
|
||||
'message.tooltip.dns.1': '<fmt:message key="message.tooltip.dns.1" />',
|
||||
'message.tooltip.dns.2': '<fmt:message key="message.tooltip.dns.2" />',
|
||||
'message.tooltip.internal.dns.1': '<fmt:message key="message.tooltip.internal.dns.1" />',
|
||||
'message.tooltip.internal.dns.2': '<fmt:message key="message.tooltip.internal.dns.2" />',
|
||||
'message.tooltip.network.domain': '<fmt:message key="message.tooltip.network.domain" />',
|
||||
'message.tooltip.pod.name': '<fmt:message key="message.tooltip.pod.name" />',
|
||||
'message.tooltip.reserved.system.gateway': '<fmt:message key="message.tooltip.reserved.system.gateway" />',
|
||||
'message.tooltip.reserved.system.netmask': '<fmt:message key="message.tooltip.reserved.system.netmask" />',
|
||||
'message.creating.zone': '<fmt:message key="message.creating.zone" />',
|
||||
'message.creating.physical.networks': '<fmt:message key="message.creating.physical.networks" />',
|
||||
'message.configuring.physical.networks': '<fmt:message key="message.configuring.physical.networks" />',
|
||||
'message.adding.Netscaler.device': '<fmt:message key="message.adding.Netscaler.device" />',
|
||||
'message.creating.pod': '<fmt:message key="message.creating.pod" />',
|
||||
'message.configuring.public.traffic': '<fmt:message key="message.configuring.public.traffic" />',
|
||||
'message.configuring.storage.traffic': '<fmt:message key="message.configuring.storage.traffic" />',
|
||||
'message.configuring.guest.traffic': '<fmt:message key="message.configuring.guest.traffic" />',
|
||||
'message.creating.cluster': '<fmt:message key="message.creating.cluster" />',
|
||||
'message.adding.host': '<fmt:message key="message.adding.host" />',
|
||||
'message.creating.primary.storage': '<fmt:message key="message.creating.primary.storage" />',
|
||||
'message.creating.secondary.storage': '<fmt:message key="message.creating.secondary.storage" />',
|
||||
'message.Zone.creation.complete': '<fmt:message key="message.Zone.creation.complete" />',
|
||||
'message.enabling.zone': '<fmt:message key="message.enabling.zone" />',
|
||||
'error.something.went.wrong.please.correct.the.following': '<fmt:message key="error.something.went.wrong.please.correct.the.following" />',
|
||||
'error.could.not.enable.zone': '<fmt:message key="error.could.not.enable.zone" />',
|
||||
'message.zone.creation.complete.would.you.like.to.enable.this.zone': '<fmt:message key="message.zone.creation.complete.would.you.like.to.enable.this.zone" />',
|
||||
'message.please.add.at.lease.one.traffic.range': '<fmt:message key="message.please.add.at.lease.one.traffic.range" />',
|
||||
'message.you.must.have.at.least.one.physical.network': '<fmt:message key="message.you.must.have.at.least.one.physical.network" />',
|
||||
'message.please.select.a.different.public.and.management.network.before.removing': '<fmt:message key="message.please.select.a.different.public.and.management.network.before.removing" />'
|
||||
};
|
||||
</script>
|
||||
|
|
|
|||
|
|
@ -281,17 +281,22 @@
|
|||
response: {
|
||||
success: function(args) {
|
||||
if (args.doInstall && cloudStack.context.users[0].role == 'admin') {
|
||||
cloudStack.uiCustom.installWizard({
|
||||
$container: $container,
|
||||
context: context,
|
||||
complete: function() {
|
||||
// Show cloudStack main UI
|
||||
$container.cloudStack(cloudStackArgs);
|
||||
}
|
||||
});
|
||||
var initInstallWizard = function(eulaHTML) {
|
||||
cloudStack.uiCustom.installWizard({
|
||||
$container: $container,
|
||||
context: context,
|
||||
eula: eulaHTML,
|
||||
complete: function() {
|
||||
// Show cloudStack main UI
|
||||
$container.cloudStack(cloudStackArgs);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
initInstallWizard(loginArgs.eula);
|
||||
} else {
|
||||
// Show cloudStack main UI
|
||||
$container.cloudStack(cloudStackArgs);
|
||||
$container.cloudStack($.extend(cloudStackArgs, { hasLogo: loginArgs.eula }));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -306,7 +311,17 @@
|
|||
}
|
||||
};
|
||||
|
||||
cloudStack.uiCustom.login(loginArgs);
|
||||
// EULA check
|
||||
$.ajax({
|
||||
url: 'eula.html',
|
||||
dataType: 'html',
|
||||
success: function(html) {
|
||||
cloudStack.uiCustom.login($.extend(loginArgs, { eula: html, hasLogo: true }));
|
||||
},
|
||||
error: function() {
|
||||
cloudStack.uiCustom.login(loginArgs);
|
||||
}
|
||||
});
|
||||
|
||||
// Localization
|
||||
cloudStack.localizationFn = function(str) {
|
||||
|
|
|
|||
|
|
@ -896,14 +896,14 @@
|
|||
|
||||
hypervisorCapabilities: {
|
||||
type: 'select',
|
||||
title: 'hypervisor.capabilities',
|
||||
title: 'label.hypervisor.capabilities',
|
||||
listView: {
|
||||
id: 'hypervisorCapabilities',
|
||||
label: 'hypervisor.capabilities',
|
||||
label: 'label.hypervisor.capabilities',
|
||||
fields: {
|
||||
hypervisor: { label: 'label.hypervisor' },
|
||||
hypervisorversion: { label: 'hypervisor.version' },
|
||||
maxguestslimit: { label: 'max.guest.limit' }
|
||||
hypervisorversion: { label: 'label.hypervisor.version' },
|
||||
maxguestslimit: { label: 'label.max.guest.limit' }
|
||||
},
|
||||
dataProvider: function(args) {
|
||||
var array1 = [];
|
||||
|
|
@ -962,14 +962,10 @@
|
|||
{
|
||||
id: { label: 'label.id' },
|
||||
hypervisor: { label: 'label.hypervisor' },
|
||||
hypervisorversion: { label: 'hypervisor.version' },
|
||||
hypervisorversion: { label: 'label.hypervisor.version' },
|
||||
maxguestslimit: {
|
||||
label: 'max.guest.limit',
|
||||
label: 'label.max.guest.limit',
|
||||
isEditable: true
|
||||
},
|
||||
securitygroupenabled: {
|
||||
label: 'security.group.enabled',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
}
|
||||
}
|
||||
],
|
||||
|
|
@ -1047,10 +1043,10 @@
|
|||
|
||||
actions: {
|
||||
add: {
|
||||
label: 'add.network.offering',
|
||||
label: 'label.add.network.offering',
|
||||
|
||||
createForm: {
|
||||
title: 'add.network.offering',
|
||||
title: 'label.add.network.offering',
|
||||
preFilter: function(args) {
|
||||
var $availability = args.$form.find('.form-item[rel=availability]');
|
||||
var $serviceOfferingId = args.$form.find('.form-item[rel=serviceOfferingId]');
|
||||
|
|
@ -1107,7 +1103,7 @@
|
|||
},
|
||||
|
||||
guestIpType: {
|
||||
label: 'guest.type',
|
||||
label: 'label.guest.type',
|
||||
select: function(args) {
|
||||
args.response.success({
|
||||
data: [
|
||||
|
|
@ -1131,7 +1127,7 @@
|
|||
specifyVlan: { label: 'label.specify.vlan', isBoolean: true },
|
||||
|
||||
supportedServices: {
|
||||
label: 'supported.services',
|
||||
label: 'label.supported.services',
|
||||
|
||||
dynamic: function(args) {
|
||||
$.ajax({
|
||||
|
|
@ -1149,7 +1145,7 @@
|
|||
// Sanitize names
|
||||
switch (serviceName) {
|
||||
case 'Vpn': serviceDisplayName = 'VPN'; break;
|
||||
case 'Dhcp': serviceDisplayName = 'DHCP'; break;
|
||||
case 'Dhcp': serviceDisplayName = dictionary['label.dhcp']; break;
|
||||
case 'Dns': serviceDisplayName = 'DNS'; break;
|
||||
case 'Lb': serviceDisplayName = 'Load Balancer'; break;
|
||||
case 'SourceNat': serviceDisplayName = 'Source NAT'; break;
|
||||
|
|
@ -1281,14 +1277,14 @@
|
|||
},
|
||||
|
||||
"service.SourceNat.redundantRouterCapabilityCheckbox" : {
|
||||
label: "redundant.router.capability",
|
||||
label: "label.redundant.router.capability",
|
||||
isHidden: true,
|
||||
dependsOn: 'service.SourceNat.isEnabled',
|
||||
isBoolean: true
|
||||
},
|
||||
|
||||
"service.SourceNat.sourceNatTypeDropdown": {
|
||||
label: 'supported.source.NAT.type',
|
||||
label: 'label.supported.source.NAT.type',
|
||||
isHidden: true,
|
||||
dependsOn: 'service.SourceNat.isEnabled',
|
||||
select: function(args) {
|
||||
|
|
@ -1301,13 +1297,13 @@
|
|||
}
|
||||
},
|
||||
"service.Lb.elasticLbCheckbox" : {
|
||||
label: "elastic.LB",
|
||||
label: "label.elastic.LB",
|
||||
isHidden: true,
|
||||
dependsOn: 'service.Lb.isEnabled',
|
||||
isBoolean: true
|
||||
},
|
||||
"service.Lb.lbIsolationDropdown": {
|
||||
label: 'LB.isolation',
|
||||
label: 'label.LB.isolation',
|
||||
isHidden: true,
|
||||
dependsOn: 'service.Lb.isEnabled',
|
||||
select: function(args) {
|
||||
|
|
@ -1320,7 +1316,7 @@
|
|||
}
|
||||
},
|
||||
"service.StaticNat.elasticIpCheckbox" : {
|
||||
label: "elastic.IP",
|
||||
label: "label.elastic.IP",
|
||||
isHidden: true,
|
||||
dependsOn: 'service.StaticNat.isEnabled',
|
||||
isBoolean: true
|
||||
|
|
@ -1328,7 +1324,7 @@
|
|||
//show or hide upon checked services and selected providers above (end)
|
||||
|
||||
|
||||
conservemode: { label: 'conserve.mode', isBoolean: true },
|
||||
conservemode: { label: 'label.conserve.mode', isBoolean: true },
|
||||
|
||||
tags: { label: 'label.tags' },
|
||||
|
||||
|
|
@ -1633,7 +1629,7 @@
|
|||
},
|
||||
state: { label: 'label.state' },
|
||||
guestiptype: {
|
||||
label: 'guest.type'
|
||||
label: 'label.guest.type'
|
||||
},
|
||||
availability: {
|
||||
label: 'label.availability',
|
||||
|
|
@ -1647,7 +1643,7 @@
|
|||
}
|
||||
},
|
||||
isdefault: { //created by system by default
|
||||
label: 'created.by.system',
|
||||
label: 'label.created.by.system',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
specifyvlan: {
|
||||
|
|
@ -1655,11 +1651,11 @@
|
|||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
specifyipranges: {
|
||||
label: 'specify.IP.ranges',
|
||||
label: 'label.specify.IP.ranges',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
conservemode: {
|
||||
label: 'conserve.mode',
|
||||
label: 'label.conserve.mode',
|
||||
converter: cloudStack.converters.toBooleanText
|
||||
},
|
||||
networkrate: {
|
||||
|
|
@ -1679,10 +1675,10 @@
|
|||
label: 'label.traffic.type'
|
||||
},
|
||||
supportedServices: {
|
||||
label: 'supported.services'
|
||||
label: 'label.supported.services'
|
||||
},
|
||||
serviceCapabilities: {
|
||||
label: 'service.capabilities'
|
||||
label: 'label.service.capabilities'
|
||||
}
|
||||
}
|
||||
],
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -1230,32 +1230,24 @@
|
|||
},
|
||||
|
||||
createTemplate: {
|
||||
label: 'Create template',
|
||||
label: 'label.create.template',
|
||||
messages: {
|
||||
confirm: function(args) {
|
||||
/*
|
||||
if (getUserPublicTemplateEnabled() == "true" || isAdmin()) {
|
||||
$dialogCreateTemplate.find("#create_template_public_container").show();
|
||||
}
|
||||
*/
|
||||
return 'Are you sure you want to create template?';
|
||||
},
|
||||
success: function(args) {
|
||||
return 'Template is being created.';
|
||||
return 'message.create.template';
|
||||
},
|
||||
notification: function(args) {
|
||||
return 'Creating template';
|
||||
return 'label.create.template';
|
||||
}
|
||||
},
|
||||
createForm: {
|
||||
title: 'Create Template',
|
||||
desc: '',
|
||||
title: 'label.create.template',
|
||||
desc: 'label.create.template',
|
||||
preFilter: cloudStack.preFilter.createTemplate,
|
||||
fields: {
|
||||
name: { label: 'Name', validation: { required: true }},
|
||||
displayText: { label: 'Description', validation: { required: true }},
|
||||
name: { label: 'label.name', validation: { required: true }},
|
||||
displayText: { label: 'label.description', validation: { required: true }},
|
||||
osTypeId: {
|
||||
label: 'OS Type',
|
||||
label: 'label.os.type',
|
||||
select: function(args) {
|
||||
$.ajax({
|
||||
url: createURL("listOsTypes"),
|
||||
|
|
@ -1272,8 +1264,8 @@
|
|||
});
|
||||
}
|
||||
},
|
||||
isPublic: { label: 'Public', isBoolean: true },
|
||||
url: { label: 'Image directory', validation: { required: true } }
|
||||
isPublic: { label: 'label.public', isBoolean: true },
|
||||
url: { label: 'image.directory', validation: { required: true } }
|
||||
}
|
||||
},
|
||||
action: function(args) {
|
||||
|
|
@ -1324,21 +1316,21 @@
|
|||
},
|
||||
|
||||
migrate: {
|
||||
label: 'Migrate instance to another host',
|
||||
label: 'label.migrate.instance.to.host',
|
||||
messages: {
|
||||
confirm: function(args) {
|
||||
return 'Please confirm that you want to migrate instance to another host.';
|
||||
return 'message.migrate.instance.to.host';
|
||||
},
|
||||
notification: function(args) {
|
||||
return 'Migrating instance to another host.';
|
||||
return 'label.migrate.instance.to.host';
|
||||
}
|
||||
},
|
||||
createForm: {
|
||||
title: 'Migrate instance',
|
||||
title: 'label.migrate.instance.to.host',
|
||||
desc: '',
|
||||
fields: {
|
||||
hostId: {
|
||||
label: 'Host',
|
||||
label: 'label.host',
|
||||
validation: { required: true },
|
||||
select: function(args) {
|
||||
$.ajax({
|
||||
|
|
@ -1402,21 +1394,21 @@
|
|||
},
|
||||
|
||||
migrateToAnotherStorage: {
|
||||
label: 'Migrate instance to another primary storage',
|
||||
label: 'label.migrate.instance.to.ps',
|
||||
messages: {
|
||||
confirm: function(args) {
|
||||
return 'Please confirm that you want to migrate instance to another primary storage.';
|
||||
return 'message.migrate.instance.to.ps';
|
||||
},
|
||||
notification: function(args) {
|
||||
return 'Migrating instance to another primary storage.';
|
||||
return 'label.migrate.instance.to.ps';
|
||||
}
|
||||
},
|
||||
createForm: {
|
||||
title: 'Migrate instanceto another primary storage',
|
||||
title: 'label.migrate.instance.to.ps',
|
||||
desc: '',
|
||||
fields: {
|
||||
storageId: {
|
||||
label: 'Primary storage',
|
||||
label: 'label.primary.storage',
|
||||
validation: { required: true },
|
||||
select: function(args) {
|
||||
$.ajax({
|
||||
|
|
@ -1464,7 +1456,7 @@
|
|||
},
|
||||
|
||||
viewConsole: {
|
||||
label: 'View console',
|
||||
label: 'label.view.console',
|
||||
action: {
|
||||
externalLink: {
|
||||
url: function(args) {
|
||||
|
|
@ -1592,13 +1584,13 @@
|
|||
* Security Groups tab
|
||||
*/
|
||||
securityGroups: {
|
||||
title: 'Security groups',
|
||||
title: 'label.menu.security.groups',
|
||||
multiple: true,
|
||||
fields: [
|
||||
{
|
||||
id: { label: 'ID' },
|
||||
name: { label: 'Name' },
|
||||
description: { label: 'Description' }
|
||||
name: { label: 'label.name' },
|
||||
description: { label: 'label.description' }
|
||||
}
|
||||
],
|
||||
dataProvider: function(args) {
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
|
|
@ -3,8 +3,8 @@
|
|||
var context = args.context;
|
||||
var $installWizard = $('<div>').addClass('install-wizard');
|
||||
var $container = args.$container;
|
||||
var eulaHTML = args.eula;
|
||||
var state = {}; // Hold wizard form state
|
||||
|
||||
var launchStart; // Holds last launch callback, in case of error
|
||||
var $launchState;
|
||||
|
||||
|
|
@ -27,7 +27,7 @@
|
|||
cloudStack.installWizard.copy[id]({
|
||||
response: {
|
||||
success: function(args) {
|
||||
$elem.append(args.text);
|
||||
$elem.append(_l(args.text));
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
@ -79,7 +79,7 @@
|
|||
var $subtitle = $('<div></div>').addClass('subtitle')
|
||||
.html(subtitle);
|
||||
var $copy = getCopy(copyID, $('<p></p>'));
|
||||
var $prev = elems.prevButton('Go back');
|
||||
var $prev = elems.prevButton(_l('label.back'));
|
||||
var $continue = elems.nextButton('OK');
|
||||
|
||||
$continue.click(function() {
|
||||
|
|
@ -121,9 +121,9 @@
|
|||
|
||||
var $container = $('<div></div>').addClass(id);
|
||||
var $form = $('<div>').addClass('setup-form');
|
||||
var $save = elems.nextButton('Continue', { type: 'submit' });
|
||||
var $prev = elems.prevButton('Go back');
|
||||
var $title = $('<div></div>').addClass('title').html(title);
|
||||
var $save = elems.nextButton(_l('label.continue'), { type: 'submit' });
|
||||
var $prev = elems.prevButton(_l('label.back'));
|
||||
var $title = $('<div></div>').addClass('title').html(_l(title));
|
||||
|
||||
// Generate form
|
||||
form = cloudStack.dialog.createForm({
|
||||
|
|
@ -190,8 +190,8 @@
|
|||
tooltip: function(title, content) {
|
||||
return $('<div>').addClass('tooltip-info').append(
|
||||
$('<div>').addClass('arrow'),
|
||||
$('<div>').addClass('title').html(title),
|
||||
$('<div>').addClass('content').append($('<p>').html(content))
|
||||
$('<div>').addClass('title').html(_l(title)),
|
||||
$('<div>').addClass('content').append($('<p>').html(_l(content)))
|
||||
);
|
||||
},
|
||||
|
||||
|
|
@ -203,7 +203,7 @@
|
|||
.append(
|
||||
$.merge(
|
||||
$('<h2></h2>').html(_l('label.installWizard.title')),
|
||||
$('<h3></h3>').html('This tour will aid you in setting up your CloudStack installation')
|
||||
$('<h3></h3>').html(_l('label.installWizard.subtitle'))
|
||||
)
|
||||
);
|
||||
},
|
||||
|
|
@ -257,7 +257,7 @@
|
|||
* Show tooltip for focused form elements
|
||||
*/
|
||||
var showTooltip = function($formContainer, sectionID) {
|
||||
var $tooltip = elems.tooltip('Hints', '');
|
||||
var $tooltip = elems.tooltip(_l('label.hints'), '');
|
||||
|
||||
$formContainer.find('input[type=text]').focus(function() {
|
||||
var $input = $(this);
|
||||
|
|
@ -287,7 +287,7 @@
|
|||
var $intro = $('<div></div>').addClass('intro eula');
|
||||
var $title = $('<div></div>').addClass('title').html(_l('label.license.agreement'));
|
||||
var $subtitle = $('<div></div>').addClass('subtitle').html(_l('label.license.agreement.subtitle'));
|
||||
var $copy = getCopy('eula', $('<div></div>').addClass('eula-copy'));
|
||||
var $copy = $('<div></div>').addClass('eula-copy').html(eulaHTML);
|
||||
var $continue = elems.nextButton(_l('label.agree'));
|
||||
|
||||
$continue.click(function() {
|
||||
|
|
@ -303,11 +303,11 @@
|
|||
|
||||
intro: function(args) {
|
||||
var $intro = $('<div></div>').addClass('intro what-is-cloudstack');
|
||||
var $title = $('<div></div>').addClass('title').html('What is CloudStack™?');
|
||||
var $subtitle = $('<div></div>').addClass('subtitle').html('Introduction to CloudStack™');
|
||||
var $title = $('<div></div>').addClass('title').html(_l('label.what.is.cloudstack'));
|
||||
var $subtitle = $('<div></div>').addClass('subtitle').html(_l('label.introduction.to.cloudstack'));
|
||||
var $copy = getCopy('whatIsCloudStack', $('<p></p>'));
|
||||
var $continue = elems.nextButton('Continue with basic installation');
|
||||
var $advanced = elems.nextButton('I have used Cloudstack before, skip this guide').addClass('advanced-installation');
|
||||
var $continue = elems.nextButton(_l('label.continue.basic.install'));
|
||||
var $advanced = elems.nextButton(_l('label.skip.guide')).addClass('advanced-installation');
|
||||
|
||||
$continue.click(function() {
|
||||
goTo('changeUser');
|
||||
|
|
@ -332,17 +332,25 @@
|
|||
var $form = $('<form></form>').appendTo($changeUser);
|
||||
|
||||
// Fields
|
||||
var $password = $('<input>').addClass('required').attr({ id: 'password', type: 'password', name: 'password' });
|
||||
var $passwordConfirm = $('<input>').addClass('required').attr({ id: 'password-confirm', type: 'password', name: 'password-confirm' });
|
||||
var $save = elems.nextButton('Save and continue', { type: 'submit' });
|
||||
var $password = $('<input>').addClass('required').attr({
|
||||
id: 'password',
|
||||
type: 'password',
|
||||
name: 'password'
|
||||
});
|
||||
var $passwordConfirm = $('<input>').addClass('required').attr({
|
||||
id: 'password-confirm',
|
||||
type: 'password',
|
||||
name: 'password-confirm'
|
||||
});
|
||||
var $save = elems.nextButton(_l('label.save.and.continue'), { type: 'submit' });
|
||||
|
||||
$form.append(
|
||||
$('<div></div>').addClass('title').html('Please change your password.'),
|
||||
$('<div></div>').addClass('title').html(_l('message.change.password')),
|
||||
$('<div></div>').addClass('field').append(
|
||||
$('<label>New Password:</label>'), $password
|
||||
$('<label>' + _l('label.new.password') + ':</label>'), $password
|
||||
),
|
||||
$('<div></div>').addClass('field').append(
|
||||
$('<label>Confirm Password:</label>'), $passwordConfirm
|
||||
$('<label>' + _l('label.confirm.password') + ':</label>'), $passwordConfirm
|
||||
),
|
||||
$save
|
||||
);
|
||||
|
|
@ -355,7 +363,7 @@
|
|||
},
|
||||
messages: {
|
||||
'password-confirm': {
|
||||
equalTo: 'The password fields do not match.'
|
||||
equalTo: _l('error.password.not.match')
|
||||
}
|
||||
}
|
||||
});
|
||||
|
|
@ -385,8 +393,8 @@
|
|||
* @param args
|
||||
*/
|
||||
addZoneIntro: elems.stepIntro({
|
||||
title: "Let's add a zone",
|
||||
subtitle: 'What is a zone?',
|
||||
title: _l('label.installWizard.addZoneIntro.title'),
|
||||
subtitle: _l('label.installWizard.addZoneIntro.subtitle'),
|
||||
copyID: 'whatIsAZone',
|
||||
prevStepID: 'changeUser',
|
||||
nextStepID: 'addZone',
|
||||
|
|
@ -397,7 +405,7 @@
|
|||
* Add zone form
|
||||
*/
|
||||
addZone: elems.step({
|
||||
title: 'Add zone',
|
||||
title: _l('label.installWizard.addZone.title'),
|
||||
id: 'add-zone',
|
||||
stateID: 'zone',
|
||||
tooltipID: 'addZone',
|
||||
|
|
@ -405,11 +413,11 @@
|
|||
prevStepID: 'addZoneIntro',
|
||||
nextStepID: 'addPodIntro',
|
||||
form: {
|
||||
name: { label: 'Name', validation: { required: true } },
|
||||
dns1: { label: 'DNS 1', validation: { required: true } },
|
||||
dns2: { label: 'DNS 2' },
|
||||
internaldns1: { label: 'Internal DNS 1', validation: { required: true } },
|
||||
internaldns2: { label: 'Internal DNS 2' }
|
||||
name: { label: 'label.name', validation: { required: true } },
|
||||
dns1: { label: 'label.dns.1', validation: { required: true } },
|
||||
dns2: { label: 'label.dns.2' },
|
||||
internaldns1: { label: 'label.internal.dns.1', validation: { required: true } },
|
||||
internaldns2: { label: 'label.internal.dns.2' }
|
||||
}
|
||||
}),
|
||||
|
||||
|
|
@ -418,8 +426,8 @@
|
|||
* @param args
|
||||
*/
|
||||
addPodIntro: elems.stepIntro({
|
||||
title: "Let's add a pod.",
|
||||
subtitle: 'What is a pod?',
|
||||
title: _l('label.installWizard.addPodIntro.title'),
|
||||
subtitle: _l('label.installWizard.addPodIntro.subtitle'),
|
||||
copyID: 'whatIsAPod',
|
||||
prevStepID: 'addZone',
|
||||
nextStepID: 'addPod',
|
||||
|
|
@ -431,7 +439,7 @@
|
|||
* @param args
|
||||
*/
|
||||
addPod: elems.step({
|
||||
title: 'Add pod',
|
||||
title: _l('label.add.pod'),
|
||||
id: 'add-pod',
|
||||
stateID: 'pod',
|
||||
tooltipID: 'addPod',
|
||||
|
|
@ -439,11 +447,11 @@
|
|||
prevStepID: 'addPodIntro',
|
||||
nextStepID: 'configureGuestTraffic',
|
||||
form: {
|
||||
name: { label: 'Name', validation: { required: true }},
|
||||
reservedSystemGateway: { label: 'Gateway', validation: { required: true }},
|
||||
reservedSystemNetmask: { label: 'Netmask', validation: { required: true }},
|
||||
name: { label: 'label.name', validation: { required: true }},
|
||||
reservedSystemGateway: { label: 'label.gateway', validation: { required: true }},
|
||||
reservedSystemNetmask: { label: 'label.netmask', validation: { required: true }},
|
||||
ipRange: {
|
||||
label: 'IP Range',
|
||||
label: 'label.ip.range',
|
||||
range: ['reservedSystemStartIp', 'reservedSystemEndIp'],
|
||||
validation: { required: true }
|
||||
}
|
||||
|
|
@ -454,7 +462,7 @@
|
|||
* Add guest network form
|
||||
*/
|
||||
configureGuestTraffic: elems.step({
|
||||
title: 'Add guest network',
|
||||
title: _l('label.add.guest.network'),
|
||||
id: 'add-guest-network',
|
||||
stateID: 'guestTraffic',
|
||||
tooltipID: 'configureGuestTraffic',
|
||||
|
|
@ -462,9 +470,9 @@
|
|||
prevStepID: 'addPod',
|
||||
nextStepID: 'addClusterIntro',
|
||||
form: {
|
||||
guestGateway: { label: 'Gateway', validation: { required: true } },
|
||||
guestNetmask: { label: 'Netmask', validation: { required: true } },
|
||||
guestIPRange: { label: 'IP Range', range: ['guestStartIp', 'guestEndIp'], validation: { required: true } }
|
||||
guestGateway: { label: 'label.gateway', validation: { required: true } },
|
||||
guestNetmask: { label: 'label.netmask', validation: { required: true } },
|
||||
guestIPRange: { label: 'label.ip.range', range: ['guestStartIp', 'guestEndIp'], validation: { required: true } }
|
||||
}
|
||||
}),
|
||||
|
||||
|
|
@ -473,8 +481,8 @@
|
|||
* @param args
|
||||
*/
|
||||
addClusterIntro: elems.stepIntro({
|
||||
title: "Let's add a cluster.",
|
||||
subtitle: 'What is a cluster?',
|
||||
title: _l('label.installWizard.addClusterIntro.title'),
|
||||
subtitle: _l('label.installWizard.addClusterIntro.subtitle'),
|
||||
copyID: 'whatIsACluster',
|
||||
prevStepID: 'configureGuestTraffic',
|
||||
nextStepID: 'addCluster',
|
||||
|
|
@ -486,7 +494,7 @@
|
|||
* @param args
|
||||
*/
|
||||
addCluster: elems.step({
|
||||
title: 'Add cluster',
|
||||
title: _l('label.add.cluster'),
|
||||
id: 'add-cluster',
|
||||
stateID: 'cluster',
|
||||
tooltipID: 'addCluster',
|
||||
|
|
@ -495,7 +503,7 @@
|
|||
diagram: '.part.zone, .part.cluster',
|
||||
form: {
|
||||
hypervisor: {
|
||||
label: 'Hypervisor',
|
||||
label: 'label.hypervisor',
|
||||
select: function(args) {
|
||||
args.response.success({ data: [
|
||||
{ id: 'XenServer', description: 'XenServer' },
|
||||
|
|
@ -503,7 +511,7 @@
|
|||
]});
|
||||
}
|
||||
},
|
||||
name: { label: 'Name', validation: { required: true }}
|
||||
name: { label: 'label.name', validation: { required: true }}
|
||||
}
|
||||
}),
|
||||
|
||||
|
|
@ -512,8 +520,8 @@
|
|||
* @param args
|
||||
*/
|
||||
addHostIntro: elems.stepIntro({
|
||||
title: "Let's add a host.",
|
||||
subtitle: 'What is a host?',
|
||||
title: _l('label.installWizard.addHostIntro.title'),
|
||||
subtitle: _l('label.installWizard.addHostIntro.subtitle'),
|
||||
copyID: 'whatIsAHost',
|
||||
prevStepID: 'addCluster',
|
||||
nextStepID: 'addHost',
|
||||
|
|
@ -525,7 +533,7 @@
|
|||
* @param args
|
||||
*/
|
||||
addHost: elems.step({
|
||||
title: 'Add host',
|
||||
title: _l('label.add.host'),
|
||||
id: 'add-host',
|
||||
stateID: 'host',
|
||||
tooltipID: 'addHost',
|
||||
|
|
@ -534,17 +542,17 @@
|
|||
diagram: '.part.zone, .part.host',
|
||||
form: {
|
||||
hostname: {
|
||||
label: 'Host name',
|
||||
label: 'label.host.name',
|
||||
validation: { required: true }
|
||||
},
|
||||
|
||||
username: {
|
||||
label: 'User name',
|
||||
label: 'label.username',
|
||||
validation: { required: true }
|
||||
},
|
||||
|
||||
password: {
|
||||
label: 'Password',
|
||||
label: 'label.password',
|
||||
validation: { required: true },
|
||||
isPassword: true
|
||||
}
|
||||
|
|
@ -556,8 +564,8 @@
|
|||
* @param args
|
||||
*/
|
||||
addPrimaryStorageIntro: elems.stepIntro({
|
||||
title: "Let's add primary storage.",
|
||||
subtitle: 'What is primary storage?',
|
||||
title: _l('label.installWizard.addPrimaryStorageIntro.title'),
|
||||
subtitle: _l('label.installWizard.addPrimaryStorageIntro.subtitle'),
|
||||
copyID: 'whatIsPrimaryStorage',
|
||||
prevStepID: 'addHost',
|
||||
nextStepID: 'addPrimaryStorage',
|
||||
|
|
@ -569,7 +577,7 @@
|
|||
* @param args
|
||||
*/
|
||||
addPrimaryStorage: elems.step({
|
||||
title: 'Add primary storage',
|
||||
title: _l('label.add.primary.storage'),
|
||||
id: 'add-primary-storage',
|
||||
stateID: 'primaryStorage',
|
||||
tooltipID: 'addPrimaryStorage',
|
||||
|
|
@ -578,12 +586,12 @@
|
|||
diagram: '.part.zone, .part.primaryStorage',
|
||||
form: {
|
||||
name: {
|
||||
label: 'Name',
|
||||
label: 'label.name',
|
||||
validation: { required: true }
|
||||
},
|
||||
|
||||
protocol: {
|
||||
label: 'Protocol',
|
||||
label: 'label.protocol',
|
||||
select: function(args) {
|
||||
args.response.success({
|
||||
data: { id: 'nfs', description: 'NFS' }
|
||||
|
|
@ -592,12 +600,12 @@
|
|||
},
|
||||
|
||||
server: {
|
||||
label: 'Server',
|
||||
label: 'label.server',
|
||||
validation: { required: true }
|
||||
},
|
||||
|
||||
path: {
|
||||
label: 'Path',
|
||||
label: 'label.path',
|
||||
validation: { required: true }
|
||||
}
|
||||
}
|
||||
|
|
@ -608,8 +616,8 @@
|
|||
* @param args
|
||||
*/
|
||||
addSecondaryStorageIntro: elems.stepIntro({
|
||||
title: "Let's add secondary storage.",
|
||||
subtitle: 'What is secondary storage?',
|
||||
title: _l('label.installWizard.addSecondaryStorageIntro.title'),
|
||||
subtitle: _l('label.installWizard.addSecondaryStorageIntro.subtitle'),
|
||||
copyID: 'whatIsSecondaryStorage',
|
||||
prevStepID: 'addPrimaryStorage',
|
||||
nextStepID: 'addSecondaryStorage',
|
||||
|
|
@ -621,7 +629,7 @@
|
|||
* @param args
|
||||
*/
|
||||
addSecondaryStorage: elems.step({
|
||||
title: 'Add secondary storage',
|
||||
title: _l('label.add.secondary.storage'),
|
||||
id: 'add-secondary-storage',
|
||||
stateID: 'secondaryStorage',
|
||||
tooltipID: 'addSecondaryStorage',
|
||||
|
|
@ -630,11 +638,11 @@
|
|||
diagram: '.part.zone, .part.secondaryStorage',
|
||||
form: {
|
||||
nfsServer: {
|
||||
label: 'NFS Server',
|
||||
label: 'label.nfs.server',
|
||||
validation: { required: true }
|
||||
},
|
||||
path: {
|
||||
label: 'Path',
|
||||
label: 'label.path',
|
||||
validation: { required: true }
|
||||
}
|
||||
}
|
||||
|
|
@ -646,11 +654,11 @@
|
|||
launchInfo: function(args) {
|
||||
var $intro = $('<div></div>').addClass('intro');
|
||||
var $title = $('<div></div>').addClass('title')
|
||||
.html('Congratulations!.');
|
||||
.html(_l('label.congratulations'));
|
||||
var $subtitle = $('<div></div>').addClass('subtitle')
|
||||
.html('Click the launch button.');
|
||||
var $continue = elems.nextButton('Launch');
|
||||
var $prev = elems.prevButton('Go back');
|
||||
.html(_l('label.installWizard.click.launch'));
|
||||
var $continue = elems.nextButton(_l('label.launch'));
|
||||
var $prev = elems.prevButton(_l('label.back'));
|
||||
|
||||
$continue.click(function() {
|
||||
goTo('launch');
|
||||
|
|
@ -676,10 +684,10 @@
|
|||
launchInfoError: function(args) {
|
||||
var $intro = $('<div></div>').addClass('intro');
|
||||
var $title = $('<div></div>').addClass('title')
|
||||
.html('Corrections saved.');
|
||||
.html(_l('label.corrections.saved'));
|
||||
var $subtitle = $('<div></div>').addClass('subtitle')
|
||||
.html('Click the button to retry launch.');
|
||||
var $continue = elems.nextButton('Launch');
|
||||
.html(_l('message.installWizard.click.retry'));
|
||||
var $continue = elems.nextButton(_l('label.launch'));
|
||||
|
||||
$continue.click(function() {
|
||||
goTo('launch');
|
||||
|
|
@ -701,7 +709,7 @@
|
|||
launch: function(args) {
|
||||
var $intro = $('<div>').addClass('intro');
|
||||
var $title = $('<div>').addClass('title')
|
||||
.html('Now building your cloud...');
|
||||
.html(_l('message.installWizard.now.building'));
|
||||
var $subtitle = $('<div></div>').addClass('subtitle');
|
||||
|
||||
showDiagram('.part.loading');
|
||||
|
|
@ -714,7 +722,7 @@
|
|||
startFn: launchStart,
|
||||
response: {
|
||||
message: function(msg) {
|
||||
var $li = $('<li>').html(msg);
|
||||
var $li = $('<li>').html(_l(msg));
|
||||
|
||||
$subtitle.append($li);
|
||||
$li.siblings().addClass('complete');
|
||||
|
|
@ -728,11 +736,11 @@
|
|||
|
||||
$subtitle.append(
|
||||
$('<p>').html(
|
||||
'Something went wrong; you may go back and correct any errors:<br/>'
|
||||
_l('error.installWizard.message') + ':<br/>'
|
||||
+ message
|
||||
),
|
||||
$('<div>').addClass('button').append(
|
||||
$('<span>').html('Go back')
|
||||
$('<span>').html(_l('label.back'))
|
||||
).click(function() {
|
||||
goTo(stepID, null, null, {
|
||||
nextStep: 'launchInfoError'
|
||||
|
|
@ -749,10 +757,10 @@
|
|||
complete: function(args) {
|
||||
var $intro = $('<div></div>').addClass('intro');
|
||||
var $title = $('<div></div>').addClass('title')
|
||||
.html('Cloud setup successful');
|
||||
.html(_l('message.setup.successful'));
|
||||
var $subtitle = $('<div></div>').addClass('subtitle')
|
||||
.html('You may now continue.');
|
||||
var $continue = elems.nextButton('Launch');
|
||||
.html(_l('label.may.continue'));
|
||||
var $continue = elems.nextButton(_l('label.launch'));
|
||||
|
||||
showDiagram('');
|
||||
|
||||
|
|
@ -768,7 +776,9 @@
|
|||
}
|
||||
};
|
||||
|
||||
var initialStep = steps.eula().addClass('step');
|
||||
var initialStep = eulaHTML ?
|
||||
steps.eula().addClass('step') : steps.intro().addClass('step');
|
||||
|
||||
showDiagram('');
|
||||
$('html body').addClass('install-wizard');
|
||||
|
||||
|
|
|
|||
|
|
@ -47,6 +47,8 @@
|
|||
return true;
|
||||
});
|
||||
|
||||
if (!args.hasLogo) $login.addClass('nologo');
|
||||
|
||||
// Labels cause related input to be focused
|
||||
$login.find('label').click(function() {
|
||||
var $input = $inputs.filter('[name=' + $(this).attr('for') + ']');
|
||||
|
|
@ -80,5 +82,13 @@
|
|||
|
||||
return false;
|
||||
});
|
||||
|
||||
// Select language
|
||||
var $languageSelect = $login.find('select[name=language]');
|
||||
$languageSelect.change(function() {
|
||||
$.cookie('lang', $(this).val());
|
||||
document.location.reload();
|
||||
});
|
||||
$languageSelect.val($.cookie('lang'));
|
||||
};
|
||||
})(jQuery, cloudStack);
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@
|
|||
}
|
||||
|
||||
cloudStack.dialog.notice({
|
||||
message: 'Please add at lease one traffic range.'
|
||||
message: dictionary['message.please.add.at.lease.one.traffic.range']
|
||||
});
|
||||
return false;
|
||||
}
|
||||
|
|
@ -497,11 +497,11 @@
|
|||
|
||||
if (!$item.siblings().size()) {
|
||||
cloudStack.dialog.notice({
|
||||
message: 'You must have at least 1 physical network'
|
||||
message: dictionary['message.you.must.have.at.least.one.physical.network']
|
||||
});
|
||||
} else if ($item.find('input[type=radio]:checked').size()) {
|
||||
cloudStack.dialog.notice({
|
||||
message: 'Please select a different public and/or management network before removing'
|
||||
message: dictionary['message.please.select.a.different.public.and.management.network.before.removing']
|
||||
});
|
||||
} else {
|
||||
// Put any traffic type symbols back in original container
|
||||
|
|
@ -709,7 +709,7 @@
|
|||
};
|
||||
|
||||
var enableZone = function() {
|
||||
makeMessage('Enabling zone');
|
||||
makeMessage(dictionary['message.enabling.zone']);
|
||||
|
||||
enableZoneAction({
|
||||
formData: data,
|
||||
|
|
@ -721,14 +721,14 @@
|
|||
},
|
||||
|
||||
error: function(message) {
|
||||
cloudStack.dialog.notice({ message: 'Could not enable zone:</br>' + message });
|
||||
cloudStack.dialog.notice({ message: dictionary['error.could.not.enable.zone'] + ':</br>' + message });
|
||||
}
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
cloudStack.dialog.confirm({
|
||||
message: 'Zone creation complete. Would you like to enable this zone?',
|
||||
message: dictionary['message.zone.creation.complete.would.you.like.to.enable.this.zone'],
|
||||
action: function() {
|
||||
enableZone();
|
||||
},
|
||||
|
|
@ -750,7 +750,7 @@
|
|||
.removeClass('final')
|
||||
.html('<span>Fix errors</span>')
|
||||
.click(goNextOverride);
|
||||
makeMessage('Something went wrong; please correct the following:<br/>' + message, true);
|
||||
makeMessage(dictionary['error.something.went.wrong.please.correct.the.following'] + ':<br/>' + message, true);
|
||||
$wizard.data('startfn', start);
|
||||
},
|
||||
message: makeMessage
|
||||
|
|
|
|||
|
|
@ -293,6 +293,9 @@
|
|||
}
|
||||
}
|
||||
});
|
||||
|
||||
// Hide logo conditionally
|
||||
if (!args.hasLogo) $('#header .controls').addClass('nologo');
|
||||
|
||||
return this;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -14,12 +14,26 @@
|
|||
return $('<div>').multiEdit({
|
||||
context: args.context,
|
||||
noSelect: true,
|
||||
|
||||
preFilter: function(args) { //Brian, preFilter doesn't get picked up here
|
||||
var $publicTrafficDesc = $("#add_zone_public_traffic_desc");
|
||||
//debugger;
|
||||
if (args.data['network-model'] == 'Basic') {
|
||||
$publicTrafficDesc.find("#for_basic_zone").css('display', 'inline');
|
||||
$publicTrafficDesc.find("#for_advanced_zone").hide();
|
||||
}
|
||||
else { //args.data['network-model'] == 'Advanced'
|
||||
$publicTrafficDesc.find("#for_advanced_zone").css('display', 'inline');
|
||||
$publicTrafficDesc.find("#for_basic_zone").hide();
|
||||
}
|
||||
},
|
||||
|
||||
fields: {
|
||||
'gateway': { edit: true, label: 'label.gateway' },
|
||||
'netmask': { edit: true, label: 'label.netmask' },
|
||||
'vlanid': { edit: true, label: 'label.vlan', isOptional: true },
|
||||
'startip': { edit: true, label: 'start.IP' },
|
||||
'endip': { edit: true, label: 'end.IP' },
|
||||
'startip': { edit: true, label: 'label.start.IP' },
|
||||
'endip': { edit: true, label: 'label.end.IP' },
|
||||
'add-rule': { label: 'label.add', addButton: true }
|
||||
},
|
||||
add: {
|
||||
|
|
@ -62,8 +76,8 @@
|
|||
fields: {
|
||||
'netmask': { edit: true, label: 'label.netmask' },
|
||||
'vlanid': { edit: true, label: 'label.vlan', isOptional: true },
|
||||
'startip': { edit: true, label: 'start.IP' },
|
||||
'endip': { edit: true, label: 'end.IP' },
|
||||
'startip': { edit: true, label: 'label.start.IP' },
|
||||
'endip': { edit: true, label: 'label.end.IP' },
|
||||
'add-rule': { label: 'label.add', addButton: true }
|
||||
},
|
||||
add: {
|
||||
|
|
@ -175,23 +189,23 @@
|
|||
fields: {
|
||||
name: {
|
||||
label: 'label.name', validation: { required: true },
|
||||
desc: 'tooltip.zone.name'
|
||||
desc: 'message.tooltip.zone.name'
|
||||
},
|
||||
dns1: {
|
||||
label: 'label.dns.1', validation: { required: true },
|
||||
desc: 'tooltip.dns.1'
|
||||
desc: 'message.tooltip.dns.1'
|
||||
},
|
||||
dns2: {
|
||||
label: 'label.dns.2',
|
||||
desc: 'tooltip.dns.2'
|
||||
desc: 'message.tooltip.dns.2'
|
||||
},
|
||||
internaldns1: {
|
||||
label: 'label.internal.dns.1', validation: { required: true },
|
||||
desc: 'tooltip.internal.dns.1'
|
||||
desc: 'message.tooltip.internal.dns.1'
|
||||
},
|
||||
internaldns2: {
|
||||
label: 'label.internal.dns.2',
|
||||
desc: 'tooltip.internal.dns.2'
|
||||
desc: 'message.tooltip.internal.dns.2'
|
||||
},
|
||||
networkOfferingId: {
|
||||
label: 'label.network.offering',
|
||||
|
|
@ -254,7 +268,7 @@
|
|||
},
|
||||
networkdomain: {
|
||||
label: 'label.network.domain',
|
||||
desc: 'tooltip.network.domain'
|
||||
desc: 'message.tooltip.network.domain'
|
||||
},
|
||||
guestcidraddress: {
|
||||
label: 'label.guest.cidr',
|
||||
|
|
@ -297,26 +311,26 @@
|
|||
pod: {
|
||||
fields: {
|
||||
name: {
|
||||
label: 'pod.name',
|
||||
label: 'label.pod.name',
|
||||
validation: { required: true },
|
||||
desc: 'tooltip.pod.name'
|
||||
desc: 'message.tooltip.pod.name'
|
||||
},
|
||||
reservedSystemGateway: {
|
||||
label: 'reserved.system.gateway',
|
||||
label: 'label.reserved.system.gateway',
|
||||
validation: { required: true },
|
||||
desc: 'tooltip.reserved.system.gateway'
|
||||
desc: 'message.tooltip.reserved.system.gateway'
|
||||
},
|
||||
reservedSystemNetmask: {
|
||||
label: 'reserved.system.netmask',
|
||||
label: 'label.reserved.system.netmask',
|
||||
validation: { required: true },
|
||||
desc: 'tooltip.reserved.system.netmask'
|
||||
desc: 'message.tooltip.reserved.system.netmask'
|
||||
},
|
||||
reservedSystemStartIp: {
|
||||
label: 'start.reserved.system.IP',
|
||||
label: 'label.start.reserved.system.IP',
|
||||
validation: { required: true }
|
||||
},
|
||||
reservedSystemEndIp: {
|
||||
label: 'End Reserved system IP',
|
||||
label: 'label.end.reserved.system.IP',
|
||||
validation: { required: false }
|
||||
}
|
||||
}
|
||||
|
|
@ -351,15 +365,15 @@
|
|||
label: 'label.private.interface'
|
||||
},
|
||||
numretries: {
|
||||
label: 'number.of.retries',
|
||||
label: 'label.numretries',
|
||||
defaultValue: '2'
|
||||
},
|
||||
capacity: {
|
||||
label: 'capacity',
|
||||
label: 'label.capacity',
|
||||
validation: { required: false, number: true }
|
||||
},
|
||||
dedicated: {
|
||||
label: 'dedicated',
|
||||
label: 'label.dedicated',
|
||||
isBoolean: true,
|
||||
isChecked: false
|
||||
}
|
||||
|
|
@ -367,7 +381,18 @@
|
|||
},
|
||||
|
||||
guestTraffic: {
|
||||
preFilter: function(args) {
|
||||
preFilter: function(args) {
|
||||
var $guestTrafficDesc = $("#add_zone_guest_traffic_desc");
|
||||
//debugger; //Brian, please take a look here
|
||||
if (args.data['network-model'] == 'Basic') {
|
||||
$guestTrafficDesc.find("#for_basic_zone").css('display', 'inline');
|
||||
$guestTrafficDesc.find("#for_advanced_zone").hide();
|
||||
}
|
||||
else { //args.data['network-model'] == 'Advanced'
|
||||
$guestTrafficDesc.find("#for_advanced_zone").css('display', 'inline');
|
||||
$guestTrafficDesc.find("#for_basic_zone").hide();
|
||||
}
|
||||
|
||||
var selectedZoneObj = {
|
||||
networktype: args.data['network-model']
|
||||
};
|
||||
|
|
@ -402,8 +427,8 @@
|
|||
//Basic (start)
|
||||
guestGateway: { label: 'label.guest.gateway' },
|
||||
guestNetmask: { label: 'label.guest.netmask' },
|
||||
guestStartIp: { label: 'guest.start.IP' },
|
||||
guestEndIp: { label: 'guest.end.IP' },
|
||||
guestStartIp: { label: 'label.guest.start.ip' },
|
||||
guestEndIp: { label: 'label.guest.end.ip' },
|
||||
//Basic (end)
|
||||
|
||||
//Advanced (start)
|
||||
|
|
@ -458,7 +483,7 @@
|
|||
}
|
||||
},
|
||||
name: {
|
||||
label: 'cluster.name',
|
||||
label: 'label.cluster.name',
|
||||
validation: { required: true }
|
||||
},
|
||||
|
||||
|
|
@ -615,7 +640,7 @@
|
|||
isHidden: true
|
||||
},
|
||||
baremetalMAC: {
|
||||
label: 'host.MAC',
|
||||
label: 'label.host.MAC',
|
||||
validation: { required: true },
|
||||
isHidden: true
|
||||
},
|
||||
|
|
@ -623,12 +648,12 @@
|
|||
|
||||
//input_group="OVM" starts here
|
||||
agentUsername: {
|
||||
label: 'agent.username',
|
||||
label: 'label.agent.username',
|
||||
validation: { required: false },
|
||||
isHidden: true
|
||||
},
|
||||
agentPassword: {
|
||||
label: 'agent.password',
|
||||
label: 'label.agent.password',
|
||||
validation: { required: true },
|
||||
isHidden: true,
|
||||
isPassword: true
|
||||
|
|
@ -889,7 +914,7 @@
|
|||
isHidden: true
|
||||
},
|
||||
lun: {
|
||||
label: 'LUN.number',
|
||||
label: 'label.LUN.number',
|
||||
validation: { required: false }, // Primary storage is not required. User can use local storage instead of primary storage.
|
||||
isHidden: true
|
||||
},
|
||||
|
|
@ -946,8 +971,8 @@
|
|||
var data = args.data;
|
||||
|
||||
var stepFns = {
|
||||
addZone: function() {
|
||||
message('creating.zone');
|
||||
addZone: function() {
|
||||
message(dictionary['message.creating.zone']);
|
||||
|
||||
var array1 = [];
|
||||
var networkType = args.data.zone.networkType; //"Basic", "Advanced"
|
||||
|
|
@ -996,7 +1021,7 @@
|
|||
},
|
||||
|
||||
addPhysicalNetworks: function(args) {
|
||||
message('creating.physical.networks');
|
||||
message(dictionary['message.creating.physical.networks']);
|
||||
|
||||
var returnedPhysicalNetworks = [];
|
||||
|
||||
|
|
@ -1279,7 +1304,7 @@
|
|||
|
||||
//afterCreateZonePhysicalNetworkTrafficTypes: enable physical network, enable virtual router element, enable network service provider
|
||||
configurePhysicalNetwork: function(args) {
|
||||
message('configuring.physical.networks');
|
||||
message(dictionary['message.configuring.physical.networks']);
|
||||
|
||||
if(args.data.zone.networkType == "Basic") {
|
||||
$.ajax({
|
||||
|
|
@ -1707,7 +1732,7 @@
|
|||
},
|
||||
|
||||
addNetscalerDevice: function(args) {
|
||||
message('adding.Netscaler.device');
|
||||
message(dictionary['message.adding.Netscaler.device']);
|
||||
|
||||
var array1 = [];
|
||||
array1.push("&physicalnetworkid=" + args.data.returnedBasicPhysicalNetwork.id);
|
||||
|
|
@ -1888,7 +1913,7 @@
|
|||
},
|
||||
|
||||
addPod: function(args) {
|
||||
message('creating.pod');
|
||||
message(dictionary['message.creating.pod']);
|
||||
|
||||
var array3 = [];
|
||||
array3.push("&zoneId=" + args.data.returnedZone.id);
|
||||
|
|
@ -1923,7 +1948,7 @@
|
|||
if((args.data.zone.networkType == "Basic" && (selectedNetworkOfferingHavingSG == true && selectedNetworkOfferingHavingEIP == true && selectedNetworkOfferingHavingELB == true))
|
||||
||(args.data.zone.networkType == "Advanced")) {
|
||||
|
||||
message('configuring.public.traffic');
|
||||
message(dictionary['message.configuring.public.traffic']);
|
||||
|
||||
var stopNow = false;
|
||||
|
||||
|
|
@ -2009,7 +2034,7 @@
|
|||
return complete({});
|
||||
}
|
||||
|
||||
message('configuring.storage.traffic');
|
||||
message(dictionary['message.configuring.storage.traffic']);
|
||||
|
||||
var storageIPRanges = args.data.storageTraffic;
|
||||
var tasks = [];
|
||||
|
|
@ -2088,7 +2113,7 @@
|
|||
},
|
||||
|
||||
configureGuestTraffic: function(args) {
|
||||
message('configuring.guest.traffic');
|
||||
message(dictionary['message.configuring.guest.traffic']);
|
||||
|
||||
if(args.data.returnedZone.networktype == "Basic") { //create an VlanIpRange for guest network in basic zone
|
||||
var array1 = [];
|
||||
|
|
@ -2191,7 +2216,7 @@
|
|||
},
|
||||
|
||||
addCluster: function(args) {
|
||||
message('creating.cluster');
|
||||
message(dictionary['message.creating.cluster']);
|
||||
|
||||
var array1 = [];
|
||||
array1.push("&zoneId=" + args.data.returnedZone.id);
|
||||
|
|
@ -2255,7 +2280,7 @@
|
|||
},
|
||||
|
||||
addHost: function(args) {
|
||||
message('adding.host');
|
||||
message(dictionary['message.adding.host']);
|
||||
|
||||
var array1 = [];
|
||||
array1.push("&zoneid=" + args.data.returnedZone.id);
|
||||
|
|
@ -2328,7 +2353,7 @@
|
|||
return;
|
||||
}
|
||||
|
||||
message('creating.primary.storage');
|
||||
message(dictionary['message.creating.primary.storage']);
|
||||
|
||||
var array1 = [];
|
||||
array1.push("&zoneid=" + args.data.returnedZone.id);
|
||||
|
|
@ -2418,7 +2443,7 @@
|
|||
},
|
||||
|
||||
addSecondaryStorage: function(args) {
|
||||
message('creating.secondary.storage');
|
||||
message(dictionary['message.creating.secondary.storage']);
|
||||
|
||||
var nfs_server = args.data.secondaryStorage.nfsServer;
|
||||
var path = args.data.secondaryStorage.path;
|
||||
|
|
@ -2443,7 +2468,7 @@
|
|||
};
|
||||
|
||||
var complete = function(args) {
|
||||
message('Zone.creation.complete');
|
||||
message(dictionary['message.Zone.creation.complete']);
|
||||
success(args);
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue