Apply same dataProvider map to both ingress and egress rules

-Because the dataProvider for both ingress and egress rules are
 handled the same, use a shared data mapping for both
This commit is contained in:
Brian Federle 2012-10-22 17:20:06 -07:00
parent 7fda33bbd0
commit d01bbb9417
1 changed files with 21 additions and 28 deletions

View File

@ -16,6 +16,25 @@
// under the License.
(function(cloudStack, $) {
var ingressEgressDataMap = function(elem) {
var elemData = {
id: elem.ruleid,
protocol: elem.protocol,
startport: elem.startport,
endport: elem.endport,
cidr: elem.cidr ? elem.cidr : ''.concat(elem.account, ' - ', elem.securitygroupname)
};
if (elemData.startport == 0 && elemData.endport) {
elemData.startport = '0';
} else if (elem.icmptype && elem.icmpcode) {
elemData.startport = elem.icmptype;
elemData.endport = elem.icmpcode;
}
return elemData;
};
var ipChangeNotice = function() {
cloudStack.dialog.confirm({
message: 'message.ip.address.changed',
@ -3470,15 +3489,7 @@
data: $.map(
data.listsecuritygroupsresponse.securitygroup[0].ingressrule ?
data.listsecuritygroupsresponse.securitygroup[0].ingressrule : [],
function(elem) {
return {
id: elem.ruleid,
protocol: elem.protocol,
startport: elem.startport ? elem.startport : elem.icmptype,
endport: elem.endport ? elem.endport : elem.icmpcode,
cidr: elem.cidr ? elem.cidr : ''.concat(elem.account, ' - ', elem.securitygroupname)
};
}
ingressEgressDataMap
)
});
}
@ -3647,25 +3658,7 @@
data: $.map(
data.listsecuritygroupsresponse.securitygroup[0].egressrule ?
data.listsecuritygroupsresponse.securitygroup[0].egressrule : [],
function(elem) {
var elemData = {
id: elem.ruleid,
protocol: elem.protocol,
startport: elem.startport,
endport: elem.endport,
cidr: elem.cidr ? elem.cidr : ''.concat(elem.account, ' - ', elem.securitygroupname)
};
if (elemData.startport == 0 && elemData.endport) {
elemData.startport = '0';
} else if (elem.icmptype && elem.icmpcode) {
elemData.startport = elem.icmptype;
elemData.endport = elem.icmpcode;
}
return elemData;
}
ingressEgressDataMap
)
});
}