moving the onelab www to a fresh location
[plewww.git] / planetlab / includes / plc_sorts.php
1 <?php
2
3 // $Id$
4
5 // person sort on last name, first name, email
6 function __cmp_persons($a, $b) {
7   $persona = $a['last_name'] . $a['first_name'] . $a['email'];
8   $personb = $b['last_name'] . $b['first_name'] . $b['email'];
9   return strcmp($persona, $personb);
10 }
11
12 function sort_persons(&$persons) {
13   return usort($persons, "__cmp_persons");
14 }
15
16 function topdomain ($hostname) {
17   $exploded=array_reverse(explode(".",$hostname));
18   return $exploded[0];
19 }
20
21 function __cmp_nodes($a, $b) {
22  $as = array_reverse(explode(".", $a['hostname']));
23  $bs = array_reverse(explode(".", $b['hostname']));
24  foreach ($as as $key => $val) {
25    if ($val == $bs[$key]) {
26      continue;
27    }
28    return ($val < $bs[$key]) ? -1 : 1;
29  }
30 }
31
32 function sort_nodes(&$nodes) {
33   return usort($nodes, "__cmp_nodes");
34 }
35
36 // node group sort on name
37 function __cmp_nodegroups($a, $b) {
38         return strcasecmp($a['name'], $b['name']);
39 }
40
41 function sort_nodegroups(&$nodegroups) {
42         return usort($nodegroups, "__cmp_nodegroups");
43 }
44
45 // site sort on name
46 function __cmp_sites($a, $b) {
47   return strcasecmp($a['name'], $b['name']);
48 }
49
50 function sort_sites(&$sites) {
51   return usort($sites, "__cmp_sites");
52 }
53
54 // slice sort on name
55 function __cmp_slices($a, $b) {
56   return strcasecmp($a['name'], $b['name']);
57 }
58
59 function sort_slices(&$slices) {
60   return usort($slices, "__cmp_slices");
61 }
62
63 function __cmp_peers($a,$b) {
64   return strcmp($a['peername'],$b['peername']);
65 }
66
67 function sort_peers (&$peers) {
68   return usort ($peers, "__cmp_peers");
69 }
70
71 function __cmp_interface_tags($a,$b) {
72   $cat=strcmp($a['category'],$b['category']);
73   if ($cat != 0) {
74     return $cat;
75   } else {
76     return strcmp($a['name'],$b['name']);
77   }
78 }
79
80 function sort_interface_tags (&$interface_tags) {
81   return usort ($interface_tags,"__cmp_interface_tags");
82 }
83
84 ?>