forked from Seitanas/kvm-vdi
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvms_in_pool.php
46 lines (46 loc) · 1.61 KB
/
vms_in_pool.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
include ('functions/config.php');
require_once('functions/functions.php');
if (!check_session()){
header ("Location: $serviceurl/?error=1");
exit;
}
slash_vars();
$side=$_GET['side'];
$poolid=$_GET['poolid'];
$client_array=get_SQL_array("SELECT vms.id, vms.name FROM vms LEFT JOIN poolmap_vm ON vms.id=poolmap_vm.vmid WHERE poolmap_vm.poolid='$poolid' ORDER BY id");
if ($side=="from"){
if (isset($_GET['list_non_vdi_vms']))
if ($_GET['list_non_vdi_vms']==1)
$client_array_full=get_SQL_array("SELECT vms.id,vms.name FROM vms LEFT JOIN poolmap_vm ON vms.id=poolmap_vm.vmid WHERE vms.id NOT IN (SELECT poolmap_vm.vmid FROM (poolmap_vm)) AND vms.machine_type<>'vdimachine' ORDER BY id");
else
$client_array_full=get_SQL_array("SELECT vms.id,vms.name FROM vms LEFT JOIN poolmap_vm ON vms.id=poolmap_vm.vmid WHERE vms.id NOT IN (SELECT poolmap_vm.vmid FROM (poolmap_vm)) AND vms.machine_type='vdimachine' ORDER BY id");
if (!empty ($client_array)){
$clients= array_diff ($client_array_full,$client_array);
foreach($client_array_full as $aV){
$aTmp1[] = $aV['id'];
$aTmp1[] = $aV['name'];
}
foreach($client_array as $aV){
$aTmp2[] = $aV['id'];
$aTmp2[] = $aV['name'];
}
$tmp_array = array_diff($aTmp1,$aTmp2);
$tmp=$mode = current($tmp_array);
$x=0;
$client_array=array();
while ($tmp){
$client_array[$x]['id']=$tmp;
$tmp = next($tmp_array);
$client_array[$x]['name']=$tmp;
$tmp = next($tmp_array);
++$x;
}
}
else{
unset($client_array);
$client_array=$client_array_full;
}
}
echo json_encode($client_array);
?>