'.ucfirst($share['security']).''; } function globalInclude($name) { global $var; return substr($name,0,4)!='disk' || !$var['shareUserInclude'] || strpos("{$var['shareUserInclude']},","$name,")!==false; } function shareInclude($name) { global $include; return !$include || substr($name,0,4)!='disk' || strpos("$include,", "$name,")!==false; } // Compute all disk shares if ($compute=='yes') foreach ($disks as $name => $disk) if ($disk['exportable']=='yes') exec("webGui/scripts/disk_size ".escapeshellarg($name)." ssz2"); // global shares include/exclude $myDisks = array_filter(array_diff(array_keys($disks), explode(',',$var['shareUserExclude'])), 'globalInclude'); // Share size per disk $preserve = ($path==$prev || $compute=='yes'); $ssz2 = []; foreach (glob("state/*.ssz2", GLOB_NOSORT) as $entry) { if ($preserve) { $ssz2[basename($entry, ".ssz2")] = parse_ini_file($entry); } else { unlink($entry); } } // Build table $row = 0; foreach ($disks as $name => $disk) { if ($disk['type']=='Flash') continue; if ($disk['fsColor']=='grey-off') continue; if ($disk['exportable']=='no') continue; $row++; $ball = "/webGui/images/{$disk['fsColor']}.png"; switch ($disk['fsColor']) { case 'green-on': $help = 'All files protected'; break; case 'yellow-on': $help = 'All files unprotected'; break; } echo ""; echo "$help$name"; echo "{$disk['comment']}"; echo "".disk_share_settings($var['shareSMBEnabled'], $sec[$name]).""; echo "".disk_share_settings($var['shareNFSEnabled'], $sec_nfs[$name]).""; echo "".disk_share_settings($var['shareAFPEnabled'], $sec_afp[$name]).""; $cmd="/webGui/scripts/disk_size"."&arg1=".urlencode($name)."&arg2=ssz2"; if (array_key_exists($name, $ssz2)) { echo "".my_scale(($disk['fsSize'])*1024, $unit)." $unit"; echo "".my_scale($disk['fsFree']*1024, $unit)." $unit"; echo ""; echo ""; foreach ($ssz2[$name] as $sharename => $sharesize) { if ($sharename=='share.total') continue; $include = $shares[$sharename]['include']; $inside = in_array($disk['name'], array_filter(array_diff($myDisks, explode(',',$shares[$sharename]['exclude'])), 'shareInclude')); echo "" : " warning'>"); echo "$sharename:"; echo "".($inside ? "" : "Share is outside the list of designated disks").""; echo ""; echo ""; echo ""; echo "".my_scale($sharesize*1024, $unit)." $unit"; echo "".my_scale($disk['fsFree']*1024, $unit)." $unit"; echo ""; echo ""; } } else { echo "Compute..."; echo "".my_scale($disk['fsFree']*1024, $unit)." $unit"; echo ""; echo ""; } } if ($row==0) { echo "There are no exportable disk shares"; } ?>