1 /* Copyright 2016-2017, Huawei Technologies Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
7 * http://www.apache.org/licenses/LICENSE-2.0
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
15 function hideFirstCol() {
16 // $('table tr').find('th:eq(0)').hide();
17 // $('table tr').find('td:eq(0)').hide();
20 function deleteDatacenter(objectId) {
21 var requestUrl = app_url+ "/openoapi/resmgr/v1/datacenters/" + objectId;
25 contentType: "application/json",
26 success: function (jsonobj) {
27 $('#Datacenter_table').bootstrapTable('remove', {
31 bootbox.alert("Delete successfull !!!");
33 error: function (xhr, ajaxOptions, thrownError) {
34 bootbox.alert("Error on deleting data: " + xhr.responseText);
39 function loadDatacenterData() {
40 var requestUrl = app_url+"/openoapi/resmgr/v1/datacenters";
44 contentType: "application/json",
45 success: function (jsonobj) {
46 $.each(jsonobj.datacenters, function (n, v) {
47 v.cpu = "used:" + v.usedCPU + "<br>total:" + v.totalCPU;
48 v.memory = "used:" + v.usedMemory + "<br>total:" + v.totalMemory;
49 v.hardDisk = "used:" + v.usedDisk + "<br>total:" + v.totalDisk;
51 $('#Datacenter_table').bootstrapTable({
52 data: jsonobj.datacenters
54 $('#Datacenter_table').bootstrapTable('refresh');
57 error: function (xhr, ajaxOptions, thrownError) {
58 bootbox.alert("Error on getting site data : " + xhr.responseText);
62 function loadNetWorkData() {
63 var requestUrl = app_url+"/openoapi/resmgr/v1/networks";
67 contentType: "application/json",
68 success: function (jsonobj) {
69 $('#network_table').bootstrapTable({
70 data: jsonobj.networks
73 error: function (xhr, ajaxOptions, thrownError) {
74 bootbox.alert("Error on getting site data : " + xhr.responseText);
78 function loadPortData() {
79 var requestUrl = app_url+"/openoapi/resmgr/v1/ports";
83 contentType: "application/json",
84 success: function (jsonobj) {
85 $('#port_table').bootstrapTable({
89 error: function (xhr, ajaxOptions, thrownError) {
90 bootbox.alert("Error on getting site data : " + xhr.responseText);
94 function loadHostData() {
95 var requestUrl = app_url+"/openoapi/resmgr/v1/hosts";
99 contentType: "application/json",
100 success: function (jsonobj) {
101 $('#host_table').bootstrapTable({
105 error: function (xhr, ajaxOptions, thrownError) {
106 bootbox.alert("Error on getting site data : " + xhr.responseText);
112 function fillCountryData() {
114 var requestUrl = app_url+"/openoapi/resmgr/v1/locations/country";
115 var htmlContent = "";
119 contentType: "application/json",
120 success: function (jsonobj) {
121 var str = jsonobj.data.replace('[', '').replace(']', '').split(',')
122 $.each(str, function (n, v) {
123 htmlContent += "<option value='" + v + "'>" + v + "</option>";
124 $("#country").html(htmlContent);
128 error: function (xhr, ajaxOptions, thrownError) {
129 bootbox.alert("Error on getting country data : " + xhr.responseText);
134 function fillVimNameData() {
136 var requestUrl = app_url+"/openoapi/resmgr/v1/locations/cloudservice";
137 var htmlContent = "";
141 contentType: "application/json",
142 success: function (jsonobj) {
143 var str = jsonobj.data.replace('[', '').replace(']', '').split(',')
144 $.each(str, function (n, v) {
145 htmlContent += "<option value='" + v + "'>" + v + "</option>";
146 $("#vimName").html(htmlContent);
150 error: function (xhr, ajaxOptions, thrownError) {
151 bootbox.alert("Error on getting country data : " + xhr.responseText);
158 $("#vmAppForm").validate({
161 location: "required",
162 lantitude: "required",
163 longitude: "required"
167 $('.close,.button-previous').click(function () {
168 $('#vmAppDialog').removeClass('in').css('display', 'none');
170 $('.detail-top ul li').click(function () {
171 $(this).addClass('current').siblings().removeClass('current');
173 $('.basic').click(function () {
174 $('#flavorTab').css('display', 'none');
177 $('.table tbody tr').click(
179 $(this).addClass('openoTable_row_selected').siblings()
180 .removeClass('openoTable_row_selected');
182 $('.table tr:odd').addClass('active');
183 $('#false').click(function () {
184 $('#vmAppForm')[0].reset();
185 $('#vmAppDialog').addClass('in').css({
189 $('.close,.button-previous').click(function () {
190 $('#vmAppDialog').removeClass('in').css('display', 'none');
193 $.fn.serializeObject = function () {
195 var a = this.serializeArray();
196 $.each(a, function () {
197 if (o[this.name] !== undefined) {
198 if (!o[this.name].push) {
199 o[this.name] = [o[this.name]];
201 o[this.name].push(this.value || '');
203 o[this.name] = this.value || '';
208 $('#createDatacenter')
213 var formData = JSON.stringify($("#vmAppForm").serializeObject());
214 var jsonobj = JSON.parse(formData);
215 var requestUrl = app_url+"/openoapi/resmgr/v1/datacenters";
219 contentType: "application/json",
222 success: function (jsonResp) {
223 loadDatacenterData();
224 bootbox.alert(jsonResp.msg);
225 $('#vmAppDialog').removeClass('in').css({
229 error: function (xhr, ajaxOptions, thrownError) {
230 bootbox.alert("Error on page : " + xhr.responseText);
235 $('#country').change(function () {
236 var country = $(this).children('option:selected').val();
237 var requestUrl = app_url+"/openoapi/resmgr/v1/locations/locationbycountry?country=" + country;
239 var htmlContent = "<option value=''>--select--</option>";
243 contentType: "application/json",
244 success: function (jsonobj) {
245 $.each(jsonobj.data, function (n, v) {
246 htmlContent += "<option value='" + v + "'>" + v + "</option>";
247 $("#location").html(htmlContent);
252 error: function (xhr, ajaxOptions, thrownError) {
253 bootbox.alert("Error on getting location data : " + xhr.responseText);