19 include_once (
"VAULT/Class.VaultDiskStorage.php");
20 include_once (
"VAULT/Class.VaultDiskFsStorage.php");
21 include_once (
"FDL/Class.DocVaultIndex.php");
36 $q->order_by =
"id_fs";
37 $l =
$q->Query(0, 0,
"TABLE");
39 if (!is_array($l) || count($l) < 1) {
41 $action->lay->setBlockData(
"FS", $tfs);
42 echo _(
"no vault initialised.");
45 foreach ($l as $k => $fs) {
47 $sqlfs =
"id_fs=" . intval($fs[
"id_fs"]) .
" and ";
51 $nf =
$q->Query(0, 0,
"TABLE",
"select count(id_file),sum(size) from vaultdiskstorage where id_fs='" . $fs[
"id_fs"] .
"'");
53 $used_size = $nf0[
"sum"];
56 $no =
$q->Query(0, 0,
"TABLE",
"SELECT count(id_file), sum(size) from vaultdiskstorage where $sqlfs id_file not in (select vaultid from docvaultindex where docid>0)");
57 $nt =
$q->Query(0, 0,
"TABLE",
"SELECT count(id_file), sum(size) from vaultdiskstorage where $sqlfs id_file in (select vaultid from docvaultindex where docid in (select id from docread where doctype='Z'))");
58 $free = doubleval($fs[
"free_size"]);
59 $max = doubleval($fs[
"max_size"]);
60 $free = $max - $used_size;
61 $pci_used = (($max - $free) / $max * 100);
63 $effused = ($max - $free - $no[0][
"sum"] - $nt[0][
"sum"]);
64 $realused = ($max - $free);
65 $pci_realused = ($realused / $max * 100);
66 $pci_effused = ($effused / $max * 100);
67 $pceffused = sprintf(
"%d%%", $pci_effused);
68 $pci_free = (100 - $pci_used);
73 "fsid" => $fs[
"id_fs"],
79 "path" => $fs[
"r_path"]
82 $tfs[$k][
"count"] = sprintf(_(
"%d stored files") , $nf0[
"count"]);
83 $tfs[$k][
"orphan"] = ($no[0][
"count"] > 0);
84 $tfs[$k][
"orphean_count"] = $no[0][
"count"];
86 $pci_orphean = (($no[0][
"sum"] / $max) * 100);
88 $tfs[$k][
"trash_count"] = $nt[0][
"count"];
90 $pci_trash = (($nt[0][
"sum"] / $max) * 100);
92 $tfs[$k][
"pcminfree"] = ($pci_free > 1) ? sprintf(
"%.02f%%", $pci_free) : 1;
93 $tfs[$k][
"pcminoccuped"] = ($pci_effused > 1) ? sprintf(
"%.02f%%", $pci_effused) : 1;
94 $tfs[$k][
"pcmintrash"] = ($pci_trash > 1) ? sprintf(
"%.02f%%", $pci_trash) : 1;
96 $tfs[$k][
"pcminorphean"] = ($pci_orphean > 1) ? sprintf(
"%.02f%%", $pci_orphean) : 1;
97 $tfs[$k][
"pcoccupedandpctrash"] = sprintf(
"%.02f%%", ($pci_free + $pci_orphean));
99 $action->lay->setBlockData(
"FS", $tfs);
105 if ($bytes < 1024)
return sprintf(_(
"%d bytes") , $bytes);
106 if ($bytes < 10240)
return sprintf(_(
"%.02f Kb") , $bytes / 1024);
107 if ($bytes < 1048576)
return sprintf(_(
"%d Kb") , $bytes / 1024);
108 if ($bytes < 10485760)
return sprintf(_(
"%.02f Mb") , $bytes / 1048576);
109 if ($bytes < 1048576 * 1024)
return sprintf(_(
"%d Mb") , $bytes / 1048576);
110 if ($bytes < 1048576 * 10240)
return sprintf(_(
"%.02f Gb") , $bytes / 1048576 / 1024);
111 if ($bytes < 1048576 * 1048576)
return sprintf(_(
"%d Gb") , $bytes / 1048576 / 1024);
112 return sprintf(_(
"%d Tb") , $bytes / 1048576 / 1048576);
116 if ($pc < 1)
return sprintf(
"%.02f%%", $pc);
117 return sprintf(
"%d%%", $pc);