From ca72a077109bc48544c38fbacfb1158db3b17ada Mon Sep 17 00:00:00 2001 From: ck <ckforall@gmail.com> Date: Mon, 7 May 2018 01:15:27 +0200 Subject: [PATCH] =?UTF-8?q?Version=204.0c=20enti=C3=A8rement=20repens?= =?UTF-8?q?=C3=A9=20sur=20la=20base=20de=20df=20-h=20<location>=20pour=20?= =?UTF-8?q?=C3=AAtre=20en=20phase=20avec=20le=20system=20d'exploitation=20?= =?UTF-8?q?debian?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit attention risque de ne pas fonctionner sur d'autre system autre que linux --- ddyoyock.php | 176 +++++++++++++++++++++++++++------------------------ 1 file changed, 94 insertions(+), 82 deletions(-) diff --git a/ddyoyock.php b/ddyoyock.php index 462e003..314ac2a 100644 --- a/ddyoyock.php +++ b/ddyoyock.php @@ -12,73 +12,60 @@ /* - * @version 3.0b + * @version 4.0c */ - // DD 1 -// 4 YOYO FILM +// 1 YOYO SERIES $yoyolocation = "/home/data"; + $totheformatyoyo = createarrayinfdata($yoyolocation); //hard disk for percentages - $dptotalyoyo = round_up(@disk_total_space($yoyolocation),0); //Total - $dptotalyoyosized = cksize2($dptotalyoyo); - $dpfreeyoyo = round_up(@disk_free_space($yoyolocation)); //Available - $dpusedyoyo = cksize2($dptotalyoyo-$dpfreeyoyo); //used - $dpfreesizedyoyo = cksize2($dpfreeyoyo); // Available human read - $barWidthyoyo = round_up((($dptotalyoyo-$dpfreeyoyo) / $dptotalyoyo ) * 100) ; - + $dptotalyoyo = formatarrygetdf($totheformatyoyo["total"]); //Total + $dpfreeyoyo = formatarrygetdf($totheformatyoyo["free"]); //Available + $dpusedyoyo = formatarrygetdf($totheformatyoyo["used"]); //used + $barWidthyoyo = str_ireplace("%", "", $totheformatyoyo["PUsed"]); // %P used; $linknetdatayoyo = '<embed src="https://www.nailis.fr/netdata/api/v1/badge.svg?chart=disk_space._home_data&alarm=disk_fill_rate&refresh=auto" type="image/svg+xml" height="20"/>'; - echo CreateTemplateDD("DD YOYO SERIES",$yoyolocation,$dptotalyoyo,$dptotalyoyosized,$dpfreeyoyo,$dpusedyoyo,$dpfreesizedyoyo,$barWidthyoyo,$linknetdatayoyo); + echo CreateTemplateDD("DD YOYO SERIES",$yoyolocation,$dptotalyoyo,$dpfreeyoyo,$dpusedyoyo,$barWidthyoyo,$linknetdatayoyo); -// DD 3 -// 4 YOYO FILM +// DD 4 +// 4 YOYO FILMS $yoyolocation4 = "/home/data4"; + $totheformatyoyo4 = createarrayinfdata($yoyolocation4); //hard disk for percentages - $dptotalyoyo4 = round_up(@disk_total_space($yoyolocation4),0); //Total - $dptotalyoyosized4 = cksize2($dptotalyoyo4); - $dpfreeyoyo4 = round_up(@disk_free_space($yoyolocation4)); //Available - $dpusedyoyo4 = cksize2($dptotalyoyo4 - $dpfreeyoyo4); //used - $dpfreesizedyoyo4 = cksize2($dpfreeyoyo4); // Available human read - $barWidthyoyo4 = round_up((($dptotalyoyo4-$dpfreeyoyo4) / $dptotalyoyo4 ) * 100) ; - - //echo cksize2(system("du -s ".$yoyolocation4)); - // cksize2(system("du -s ".$yoyolocation4)); - + $dptotalyoyo4 = formatarrygetdf($totheformatyoyo4["total"]); //Total + $dpfreeyoyo4 = formatarrygetdf($totheformatyoyo4["free"]); //Available + $dpusedyoyo4 = formatarrygetdf($totheformatyoyo4["used"]); //used + $barWidthyoyo4 = str_ireplace("%", "", $totheformatyoyo4["PUsed"]); // %P used; $linknetdatayoyo4 = '<embed src="https://www.nailis.fr/netdata/api/v1/badge.svg?chart=disk_space._home_data4&alarm=disk_fill_rate&refresh=auto" type="image/svg+xml" height="20"/>'; - echo CreateTemplateDD("DD YOYO FILMS",$yoyolocation4,$dptotalyoyo4,$dptotalyoyosized4,$dpfreeyoyo4,$dpusedyoyo4,$dpfreesizedyoyo4,$barWidthyoyo4,$linknetdatayoyo4); - - - + echo CreateTemplateDD("DD YOYO FILMS",$yoyolocation4,$dptotalyoyo4,$dpfreeyoyo4,$dpusedyoyo4,$barWidthyoyo4,$linknetdatayoyo4); // DD 2 -// 4 CK - $cklocation ="/home/data2"; +// 2 CK FILMS/SERIES + $yoyolocation2 = "/home/data2"; + $totheformatyoyo2 = createarrayinfdata($yoyolocation2); //hard disk for percentages - $dptotalck = round_up(@disk_total_space($cklocation),0); //Total unformated - $dptotalcksized = cksize2($dptotalck); - $dpfreeck = round_up(@disk_free_space($cklocation)); //Available - $dpusedck = cksize2(round_up($dptotalck-$dpfreeck)); //used - $dpfreesizedck = cksize2($dpfreeck); // Available human read - $barWidthck = round_up((($dptotalck-$dpfreeck) / $dptotalck ) * 100) ; - - $linknetdatack = '<embed src="https://www.nailis.fr/netdata/api/v1/badge.svg?chart=disk_space._home_data2&alarm=disk_fill_rate&refresh=auto" type="image/svg+xml" height="20"/>'; - echo CreateTemplateDD("DD CK SERIES",$cklocation,$dptotalck,$dptotalcksized,$dpfreeck,$dpusedck,$dpfreesizedck,$barWidthck,$linknetdatack); - + $dptotalyoyo2 = formatarrygetdf($totheformatyoyo2["total"]); //Total + $dpfreeyoyo2 = formatarrygetdf($totheformatyoyo2["free"]); //Available + $dpusedyoyo2 = formatarrygetdf($totheformatyoyo2["used"]); //used + $barWidthyoyo2 = str_ireplace("%", "", $totheformatyoyo2["PUsed"]); // %P used; + $linknetdatayoyo2 = '<embed src="https://www.nailis.fr/netdata/api/v1/badge.svg?chart=disk_space._home_data2&alarm=disk_fill_rate&refresh=auto" type="image/svg+xml" height="20"/>'; + echo CreateTemplateDD("DD CK FILMS/SERIES",$yoyolocation2,$dptotalyoyo2,$dpfreeyoyo2,$dpusedyoyo2,$barWidthyoyo2,$linknetdatayoyo2); // DD 3 -// 4 JK - $jklocation ="/home/data3"; +// 2 JK FILMS/SERIES + $yoyolocation3 = "/home/data3"; + $totheformatyoyo3 = createarrayinfdata($yoyolocation3); //hard disk for percentages - $dptotaljk = round_up(@disk_total_space($jklocation),0); //Total unformated - $dptotaljksized = cksize2($dptotaljk); - $dpfreejk = round_up(@disk_free_space($jklocation)); //Available - $dpusedjk = cksize2(round_up($dptotaljk-$dpfreejk)); //used - $dpfreesizedjk = cksize2($dpfreejk); // Available human read - $barWidthjk = round_up((($dptotaljk-$dpfreejk) / $dptotaljk ) * 100) ; - - $linknetdatajk = '<embed src="https://www.nailis.fr/netdata/api/v1/badge.svg?chart=disk_space._home_data3&alarm=disk_fill_rate&refresh=auto" type="image/svg+xml" height="20"/>'; - echo CreateTemplateDD("DD JK FILMS+SERIES",$jklocation,$dptotaljk,$dptotaljksized,$dpfreejk,$dpusedjk,$dpfreesizedjk,$barWidthjk,$linknetdatajk); + $dptotalyoyo3 = formatarrygetdf($totheformatyoyo3["total"]); //Total + $dpfreeyoyo3 = formatarrygetdf($totheformatyoyo3["free"]); //Available + $dpusedyoyo3 = formatarrygetdf($totheformatyoyo3["used"]); //used + $barWidthyoyo3 = str_ireplace("%", "", $totheformatyoyo3["PUsed"]); // %P used; + $linknetdatayoyo3 = '<embed src="https://www.nailis.fr/netdata/api/v1/badge.svg?chart=disk_space._home_data3&alarm=disk_fill_rate&refresh=auto" type="image/svg+xml" height="20"/>'; + echo CreateTemplateDD("DD JK FILMS/SERIES",$yoyolocation3,$dptotalyoyo3,$dpfreeyoyo3,$dpusedyoyo3,$barWidthyoyo3,$linknetdatayoyo3); + + + @@ -93,37 +80,63 @@ * en humain de l affichage *************************** */ - -function cksize2($Bytes) -{ - $Type=array("O", "KO", "MO", "GO", "TO", "PO", "EO", "ZO", "YO"); - $Index=0; - while($Bytes>=1024) - { - $Bytes/=1024; - $Index++; - } - return( "". round_up($Bytes) ." ".$Type[$Index]."" ); + +// pour formatage des chiffre obtenus ! +function formatarrygetdf($vartoconvert) { +$bytes = $vartoconvert; +$s = array('B', 'Kb', 'MB', 'GB', 'TB', 'PB'); +$e = floor(log($bytes)/log(1024)); +return sprintf('%.2f '.$s[$e], ($bytes/pow(1024, floor($e)))); } -/* - ************************** - * ARRONDI A LA DECIMALE - * PRECISION X - ************************* - */ -function round_up($value, $decimals) -{ -$decimals > "" ? $decimals : $decimals = 2; +/* ************ + * Fonction to extract + * df value from debian sys + * may not compatible with + * other system +*/ +function createarrayinfdata($location) { + +// 1 = TOTAL +// 2 = USED +// 3 = DISPO +// 4 = Pourcent Used +// 5 = path -// return floor($value*pow(10,$decimals)+0.5)/pow(10,$decimals); +$getdf = exec("df ".$location,$returnval); +$arrey_getdf = explode(' ', $getdf) ; -// attention la constante PHP_ROUND_HALF_UP peut ne pas fonctionner avec php < 5.3 -return sprintf ("%01.2f", round ($value , $decimals , PHP_ROUND_HALF_UP )) ; +$compt =0; +foreach ($arrey_getdf as &$value) { + + if ($value > "") + { + $arrey_getdf2[$compt] = $value; +$compt++; + + } +} + +//var_dump($arrey_getdf2); +//exit; + +$thebase = 1024; + +$toreturn4 = array( + "total" => $arrey_getdf2[1] * $thebase, + "used" => $arrey_getdf2[2] * $thebase, + "free" => $arrey_getdf2[3] * $thebase, + "PUsed" => $arrey_getdf2[4], + "path" => $location + ); + +return $toreturn4; } - + + + /* ************ * Fonction to generate @@ -132,13 +145,12 @@ return sprintf ("%01.2f", round ($value , $decimals , PHP_ROUND_HALF_UP )) ; * */ + function CreateTemplateDD ($namedd, /*DDNAME*/ $location, /*Target to get information, ex hard drive or folder*/ $dptotal="", /*Total space of HD*/ - $dptotalsized="", /*Total space of HD formatted*/ $dpfree="", /*Free space*/ $dpused="", /*Used space*/ - $dpfreesized="", /*Human size */ $barwidth_fonc, /*Barsized width */ $netdatalink="") /*Netdata Link */ @@ -165,9 +177,9 @@ $STP = T('DISK_SPACE'); $tocompile = <<<LECODE <!-- ADDON CK - {$namedd} --> <p class="nomargin">{$namedd} {$location} {$barWidth}</p> -<p class="nomargin">{$STF}: <span style="color:yellow; font-weight: 700; position: absolute; left: 100px;">{$dpfreesized}</span></p> +<p class="nomargin">{$STF}: <span style="color:yellow; font-weight: 700; position: absolute; left: 100px;">{$dpfree}</span></p> <p class="nomargin">{$STU}: <span style="font-weight: 700; position: absolute; left: 100px;">{$dpused}</span></p> -<p class="nomargin">{$STS}: <span style="font-weight: 700; position: absolute; left: 100px;">{$dptotalsized}</span></p> +<p class="nomargin">{$STS}: <span style="font-weight: 700; position: absolute; left: 100px;">{$dptotal}</span></p> <div class="row"> <div class="col-sm-8"> <h3>{$STP}</h3> @@ -186,10 +198,10 @@ LECODE; return $tocompile; } // END function CreateTemplateDD - - - +//<!-- version git add on --> +$versionAPP = exec('git rev-parse --short HEAD'); ?> - +<!-- version git add on --> +<span style="font-size:8px">version de l'add on ck : < <span style="color:yellow"><?=$versionAPP;?></span> ></span> <h3>LOCAL /HOME </h3> <!--FIN ADDON CK --> -- GitLab