mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
Summary: resizeVolume needs to be available in UI
Detail: Adds UI element for resizing a volume BUG-ID: CLOUDSTACK-644 Reported-by: hongtu_zang@tcloudcomputing.com Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1360091087 -0700
This commit is contained in:
parent
750fb2c31e
commit
4f274d0b8e
@ -1545,3 +1545,9 @@ label.nicira.controller.address=Controller Address
|
|||||||
label.nicira.transportzoneuuid=Transport Zone Uuid
|
label.nicira.transportzoneuuid=Transport Zone Uuid
|
||||||
label.nicira.l3gatewayserviceuuid=L3 Gateway Service Uuid
|
label.nicira.l3gatewayserviceuuid=L3 Gateway Service Uuid
|
||||||
|
|
||||||
|
#resizeVolumes
|
||||||
|
label.resize.new.size=New Size(GB)
|
||||||
|
label.action.resize.volume=Resize Volume
|
||||||
|
label.action.resize.volume.processing=Resizing Volume....
|
||||||
|
label.resize.new.offering.id=New Offering
|
||||||
|
label.resize.shrink.ok=Shrink OK
|
||||||
@ -1510,3 +1510,9 @@ error.menu.select=Echec de l\'action car il n\'y a aucun
|
|||||||
error.mgmt.server.inaccessible=Le serveur de management est indisponible. Essayez plus tard.
|
error.mgmt.server.inaccessible=Le serveur de management est indisponible. Essayez plus tard.
|
||||||
error.session.expired=Votre session a expiré.
|
error.session.expired=Votre session a expiré.
|
||||||
error.unresolved.internet.name=Votre nom internet ne peut pas être résolu.
|
error.unresolved.internet.name=Votre nom internet ne peut pas être résolu.
|
||||||
|
#resizeVolumes
|
||||||
|
label.resize.new.size=New Size(GB)
|
||||||
|
label.action.resize.volume=Resize Volume
|
||||||
|
label.action.resize.volume.processing=Resizing Volume....
|
||||||
|
label.resize.new.offering.id=New Offering
|
||||||
|
label.resize.shrink.ok=Shrink OK
|
||||||
@ -1509,4 +1509,10 @@ error.login=ユーザー名/パスワードが記録と一致しません。
|
|||||||
error.menu.select=項目が選択されていないため操作を実行できません。
|
error.menu.select=項目が選択されていないため操作を実行できません。
|
||||||
error.mgmt.server.inaccessible=管理サーバーにアクセスできません。後で再実行してください。
|
error.mgmt.server.inaccessible=管理サーバーにアクセスできません。後で再実行してください。
|
||||||
error.session.expired=セッションの有効期限が切れました。
|
error.session.expired=セッションの有効期限が切れました。
|
||||||
error.unresolved.internet.name=インターネット名を解決できません。
|
|
||||||
|
#resizeVolumes
|
||||||
|
label.resize.new.size=New Size(GB)
|
||||||
|
label.action.resize.volume=Resize Volume
|
||||||
|
label.action.resize.volume.processing=Resizing Volume....
|
||||||
|
label.resize.new.offering.id=New Offering
|
||||||
|
label.resize.shrink.ok=Shrink OK
|
||||||
@ -1510,3 +1510,9 @@ error.menu.select=N
|
|||||||
error.mgmt.server.inaccessible=O servidor de gerenciamento está inacessível. Tente novamente mais tarde.
|
error.mgmt.server.inaccessible=O servidor de gerenciamento está inacessível. Tente novamente mais tarde.
|
||||||
error.session.expired=Sua sessão expirou.
|
error.session.expired=Sua sessão expirou.
|
||||||
error.unresolved.internet.name=Impossível resolver DNS
|
error.unresolved.internet.name=Impossível resolver DNS
|
||||||
|
#resizeVolumes
|
||||||
|
label.resize.new.size=New Size(GB)
|
||||||
|
label.action.resize.volume=Resize Volume
|
||||||
|
label.action.resize.volume.processing=Resizing Volume....
|
||||||
|
label.resize.new.offering.id=New Offering
|
||||||
|
label.resize.shrink.ok=Shrink OK
|
||||||
@ -1510,3 +1510,11 @@ error.menu.select=Не удается выполнить действие из-
|
|||||||
error.mgmt.server.inaccessible=Сервер управления недоступна. Попробуйте обратиться к нему позже.
|
error.mgmt.server.inaccessible=Сервер управления недоступна. Попробуйте обратиться к нему позже.
|
||||||
error.session.expired=Ваша сессия была завершена
|
error.session.expired=Ваша сессия была завершена
|
||||||
error.unresolved.internet.name=Ваше интернет-имя определить не удалось
|
error.unresolved.internet.name=Ваше интернет-имя определить не удалось
|
||||||
|
|
||||||
|
#resizeVolumes
|
||||||
|
label.resize.new.size=New Size(GB)
|
||||||
|
label.action.resize.volume=Resize Volume
|
||||||
|
label.action.resize.volume.processing=Resizing Volume....
|
||||||
|
label.resize.new.offering.id=New Offering
|
||||||
|
label.resize.shrink.ok=Shrink OK
|
||||||
|
|
||||||
|
|||||||
@ -1511,3 +1511,9 @@ error.mgmt.server.inaccessible=无法访问管理服务器。请稍后再试。
|
|||||||
error.session.expired=您的会话已过期。
|
error.session.expired=您的会话已过期。
|
||||||
error.unresolved.internet.name=无法解析您的 Internet 名称。
|
error.unresolved.internet.name=无法解析您的 Internet 名称。
|
||||||
|
|
||||||
|
#resizeVolumes
|
||||||
|
label.resize.new.size=New Size(GB)
|
||||||
|
label.action.resize.volume=Resize Volume
|
||||||
|
label.action.resize.volume.processing=Resizing Volume....
|
||||||
|
label.resize.new.offering.id=New Offering
|
||||||
|
label.resize.shrink.ok=Shrink OK
|
||||||
@ -11159,10 +11159,12 @@ div.ui-dialog div.autoscaler div.field-group div.form-container form div.form-it
|
|||||||
background-position: -100px -614px;
|
background-position: -100px -614px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.resize .icon,
|
||||||
.updateResourceCount .icon {
|
.updateResourceCount .icon {
|
||||||
background-position: -167px -66px;
|
background-position: -167px -66px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.resize:hover .icon,
|
||||||
.updateResourceCount:hover .icon {
|
.updateResourceCount:hover .icon {
|
||||||
background-position: -167px -648px;
|
background-position: -167px -648px;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1432,6 +1432,10 @@ dictionary = {
|
|||||||
'label.delete.NiciraNvp': '<fmt:message key="label.delete.NiciraNvp" />',
|
'label.delete.NiciraNvp': '<fmt:message key="label.delete.NiciraNvp" />',
|
||||||
'label.nicira.controller.address': '<fmt:message key="label.nicira.controller.address" />',
|
'label.nicira.controller.address': '<fmt:message key="label.nicira.controller.address" />',
|
||||||
'label.nicira.transportzoneuuid': '<fmt:message key="label.nicira.transportzoneuuid" />',
|
'label.nicira.transportzoneuuid': '<fmt:message key="label.nicira.transportzoneuuid" />',
|
||||||
'label.nicira.l3gatewayserviceuuid': '<fmt:message key="label.nicira.l3gatewayserviceuuid" />'
|
'label.nicira.l3gatewayserviceuuid': '<fmt:message key="label.nicira.l3gatewayserviceuuid" />',
|
||||||
|
'label.resize.new.size': '<fmt:message key="label.resize.new.size" />',
|
||||||
|
'label.action.resize.volume': '<fmt:message key="label.action.resize.volume" />',
|
||||||
|
'label.resize.new.offering.id': '<fmt:message key="label.resize.new.offering.id" />',
|
||||||
|
'label.resize.shrink.ok': '<fmt:message key="label.resize.shrink.ok" />'
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@ -1005,6 +1005,102 @@
|
|||||||
args.complete();
|
args.complete();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
resize: {
|
||||||
|
label: 'label.action.resize.volume',
|
||||||
|
messages: {
|
||||||
|
notification: function(args) {
|
||||||
|
return 'label.action.resize.volume';
|
||||||
|
}
|
||||||
|
},
|
||||||
|
createForm: {
|
||||||
|
title: 'label.action.resize.volume',
|
||||||
|
fields: {
|
||||||
|
newdiskoffering: {
|
||||||
|
label: 'label.resize.new.offering.id',
|
||||||
|
select: function(args) {
|
||||||
|
$.ajax({
|
||||||
|
url: createURL("listDiskOfferings"),
|
||||||
|
dataType: "json",
|
||||||
|
async: false,
|
||||||
|
success: function(json) {
|
||||||
|
diskofferingObjs = json.listdiskofferingsresponse.diskoffering;
|
||||||
|
var items = [];
|
||||||
|
$(diskofferingObjs).each(function(){
|
||||||
|
items.push({id: this.id, description: this.displaytext});
|
||||||
|
});
|
||||||
|
args.response.success({data: items});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
args.$select.change(function() {
|
||||||
|
var diskOfferingId = $(this).val();
|
||||||
|
$(diskofferingObjs).each(function(){
|
||||||
|
if(this.id == diskOfferingId) {
|
||||||
|
selectedDiskOfferingObj = this;
|
||||||
|
return false; //break the $.each() loop
|
||||||
|
}
|
||||||
|
});
|
||||||
|
if(selectedDiskOfferingObj == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
var $form = $(this).closest('form');
|
||||||
|
var $newsize = $form.find('.form-item[rel=newsize]');
|
||||||
|
if (selectedDiskOfferingObj.iscustomized == true) {
|
||||||
|
$newsize.css('display', 'inline-block');
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$newsize.hide();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
newsize: {
|
||||||
|
label: 'label.resize.new.size',
|
||||||
|
validation: { required: true, number: true },
|
||||||
|
isHidden: true
|
||||||
|
},
|
||||||
|
shrinkok: {label: 'label.resize.shrink.ok', isBoolean: true, isChecked: false}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
action: function(args){
|
||||||
|
var array1 = [];
|
||||||
|
array1.push("&shrinkok=" + (args.data.shrinkok == "on"));
|
||||||
|
var newDiskOffering = args.data.newdiskoffering;
|
||||||
|
var newSize;
|
||||||
|
if (selectedDiskOfferingObj.iscustomized == true) {
|
||||||
|
newSize = args.data.newsize;
|
||||||
|
}
|
||||||
|
if (newDiskOffering != null && newDiskOffering.length > 0){
|
||||||
|
array1.push("&diskofferingid=" + todb(newDiskOffering));
|
||||||
|
}
|
||||||
|
if (newSize != null && newSize.length > 0){
|
||||||
|
array1.push("&size=" + todb(newSize));
|
||||||
|
}
|
||||||
|
$.ajax({
|
||||||
|
url: createURL("resizeVolume&id=" + args.context.volumes[0].id + array1.join("")),
|
||||||
|
dataType: "json",
|
||||||
|
async: true,
|
||||||
|
success: function(json){
|
||||||
|
var jid = json.resizevolumeresponse.jobid;
|
||||||
|
args.response.success(
|
||||||
|
{_custom:
|
||||||
|
{jobId: jid,
|
||||||
|
getUpdatedItem: function(json) {
|
||||||
|
return json.queryasyncjobresultresponse.jobresult.volume;
|
||||||
|
},
|
||||||
|
getActionFilter: function() {
|
||||||
|
return volumeActionfilter;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
notification: {
|
||||||
|
poll: pollAsyncJobResult
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
tabs: {
|
tabs: {
|
||||||
@ -1430,6 +1526,9 @@
|
|||||||
if(jsonObj.hypervisor != "Ovm" && jsonObj.state == "Ready") {
|
if(jsonObj.hypervisor != "Ovm" && jsonObj.state == "Ready") {
|
||||||
allowedActions.push("takeSnapshot");
|
allowedActions.push("takeSnapshot");
|
||||||
allowedActions.push("recurringSnapshot");
|
allowedActions.push("recurringSnapshot");
|
||||||
|
if((jsonObj.hypervisor == "XenServer" || jsonObj.hypervisor == "KVM" || jsonObj.hypervisor == "VMware") && jsonObj.type == "DATADISK") {
|
||||||
|
allowedActions.push("resize");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if(jsonObj.state != "Allocated") {
|
if(jsonObj.state != "Allocated") {
|
||||||
if((jsonObj.vmstate == "Stopped" || jsonObj.virtualmachineid == null) && jsonObj.state == "Ready") {
|
if((jsonObj.vmstate == "Stopped" || jsonObj.virtualmachineid == null) && jsonObj.state == "Ready") {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user