This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "FusionForge".

The branch, master has been updated
       via  20251b685ca66319b686d210489f8e2b72979587 (commit)
      from  9c0a01157e381a3fc31d8799f277341fc2cfbabb (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://scm.fusionforge.org/anonscm/gitweb/?p=fusionforge/fusionforge.git;a=commitdiff;h=20251b685ca66319b686d210489f8e2b72979587

commit 20251b685ca66319b686d210489f8e2b72979587
Author: Franck Villaume <[email protected]>
Date:   Tue Jun 18 22:29:34 2019 +0200

    quota_management: prepare the compute cronjob. fix HTML syntax. implement 
basic compute for FRS support

diff --git 
a/src/plugins/quota_management/common/quota_managementPlugin.class.php 
b/src/plugins/quota_management/common/quota_managementPlugin.class.php
index bf7037d..072f9e0 100644
--- a/src/plugins/quota_management/common/quota_managementPlugin.class.php
+++ b/src/plugins/quota_management/common/quota_managementPlugin.class.php
@@ -24,6 +24,9 @@
  */
 
 class quota_managementPlugin extends Plugin {
+
+       var $data_array;
+
        function __construct() {
                parent::__construct();
                $this->name = "quota_management";
@@ -37,19 +40,17 @@ to monitor disk and database usage per user, project.");
        }
 
        function CallHook($hookname, &$params) {
-               global $use_quota_managementplugin, $G_SESSION, $HTML;
                $returned = false;
                switch ($hookname) {
                        case "project_admin_plugins": {
                                // this displays the link in the project admin 
options page to it's  quota_management administration
-                               echo 
util_make_link('/plugins/quota_management/index.php?group_id='.$params['group_id'].'&type=projectadmin',
-                                               _('View the Quota Management 
Administration'));
-                               echo '<br />';
+                               echo html_e('p', array(), 
util_make_link('/plugins/'.$this->name.'/?type=projectadmin&group_id='.$params['group_id'],
+                                               _('Quota Management 
Administration')));
                                $returned = true;
                                break;
                        }
                        case "site_admin_option_hook": {
-                               echo '<li>'.$this->getAdminOptionLink().'</li>';
+                               echo html_e('li', array(), 
$this->getAdminOptionLink());
                                $returned = true;
                                break;
                        }
@@ -77,6 +78,32 @@ to monitor disk and database usage per user, project.");
                return "$size";
        }
 
+       function getDataArray($group_id) {
+               $res = db_query_params('select * from plugin_quota_management 
WHERE group_id = $1', array($group_id));
+               $this->data_array = db_fetch_array($res);
+       }
+
+       function getFTPSize($group_id) {
+               if (!isset($this->data_array['ftp_usage'])) {
+                       $this->getDataArray($group_id);
+               }
+               return $this->data_array['ftp_usage'];
+       }
+
+       function getHomeSize($group_id) {
+               if (!isset($this->data_array['home_usage'])) {
+                       $this->getDataArray($group_id);
+               }
+               return $this->data_array['home_usage'];
+       }
+
+       function getQuota($group_id, $quota_type) {
+               if (!isset($this->data_array[$quota_type])) {
+                       $this->getDataArray($group_id);
+               }
+               return $this->data_array[$quota_type];
+       }
+
        function getHeader($type, $group_id = 0) {
                switch ($type) {
                        case 'globaladmin': {
@@ -101,13 +128,13 @@ to monitor disk and database usage per user, project.");
        }
 
        function getDocumentsSizeForProject($group_id) {
-               return db_query_params('SELECT doc_data.group_id, 
SUM(doc_data_version.filesize) as size, 
SUM(octet_length(doc_data_version.data_words)) as size1, 
count(doc_data_version.serial_id) as nb
-                                       FROM doc_data, doc_data_version WHERE 
doc_data.docid = doc_data_version.docid AND doc_data.group_id = $1 GROUP BY 
doc_data.group_id',
+               return db_query_params('SELECT SUM(doc_data_version.filesize) 
as size, SUM(octet_length(doc_data_version.data_words)) as size1, 
count(doc_data_version.serial_id) as nb
+                                       FROM doc_data, doc_data_version WHERE 
doc_data.docid = doc_data_version.docid AND doc_data.group_id = $1',
                        array($group_id));
        }
 
        function getTrackerSizeForProject($group_id) {
-               return db_query_params('select 
SUM(octet_length(artifact.summary)+octet_length(artifact.details)+octet_length(artifact_message.body)+artifact_file.filesize)
 as size, count(artifact_group_list.group_artifact_id) as nb
+               return db_query_params('SELECT 
SUM(octet_length(artifact.summary)+octet_length(artifact.details)+octet_length(artifact_message.body)+artifact_file.filesize)
 as size, count(artifact_group_list.group_artifact_id) as nb
                                        FROM artifact, artifact_group_list, 
artifact_message, artifact_file
                                        WHERE artifact.group_artifact_id = 
artifact_group_list.group_artifact_id
                                        AND artifact.artifact_id = 
artifact_message.artifact_id
@@ -115,6 +142,15 @@ to monitor disk and database usage per user, project.");
                                        AND group_id = $1',
                        array($group_id));
        }
+
+       function getFRSSizeForProject($group_id) {
+               return db_query_params('SELECT 
SUM(octet_length(frs_package.name)+octet_length(frs_release.name)+octet_length(frs_release.notes)+octet_length(frs_release.changes)+frs_file.file_size)
 as size, count(frs_package.package_id) as nb
+                                       FROM frs_package, frs_release, frs_file
+                                       WHERE frs_package.package_id = 
frs_release.package_id
+                                       AND frs_release.release_id = 
frs_file.release_id
+                                       AND group_id = $1',
+                       array($group_id));
+       }
 }
 
 // Local Variables:
diff --git 
a/src/plugins/quota_management/db/20190618_quota_management-add_storage_columns_for_compute.sql
 
b/src/plugins/quota_management/db/20190618_quota_management-add_storage_columns_for_compute.sql
new file mode 100644
index 0000000..e39ea9f
--- /dev/null
+++ 
b/src/plugins/quota_management/db/20190618_quota_management-add_storage_columns_for_compute.sql
@@ -0,0 +1,2 @@
+ALTER TABLE plugin_quota_management ADD COLUMN home_usage INT DEFAULT 0;
+ALTER TABLE plugin_quota_management ADD COLUMN ftp_usage INT DEFAULT 0;
diff --git a/src/plugins/quota_management/view/quota_project.php 
b/src/plugins/quota_management/view/quota_project.php
index 65b1192..21f40b7 100644
--- a/src/plugins/quota_management/view/quota_project.php
+++ b/src/plugins/quota_management/view/quota_project.php
@@ -106,9 +106,20 @@ if ($group->usesTracker()) {
        $quotas[] = $q;
 }
 
+if ($group->usesFRS()) {
+       $res_db = $quota_management->getFRSSizeForProject($group_id);
+       $q["name"] = _('FRS');
+       $q["nb"] = 0; $q["size"] = 0;
+       if (db_numrows($res_db) > 0) {
+               $e = db_fetch_array($res_db);
+               $q["nb"] = $e["nb"];
+               $q["size"] = $e["size"];
+       }
+       $quotas[] = $q;
+}
+
 $quotas_disk = array();
 
-// espace disque
 // disk_total_space
 $_quota_block_size = trim(shell_exec('echo $BLOCK_SIZE')) + 0;
 if ($_quota_block_size == 0) $_quota_block_size = 1024;
@@ -128,18 +139,8 @@ $quota_tot_other = 0;
 $quota_tot_1 = 0;
 $quota_tot_scm = 0;
 
-$upload_dir = forge_get_config('upload_dir') . $group->getUnixName();
-$ftp_dir = forge_get_config('ftp_upload_dir')."/pub/".$group->getUnixName();
-$group_dir = forge_get_config('groupdir_prefix') . "/" . $group->getUnixName();
-
-$q["name"] = _('Download project directory');
-$q["path"] = "$upload_dir";
-$q["quota_label"] = _('Without quota control');
-$q["size"] = $quota_management->get_dir_size("$upload_dir");
-$quota_tot_other += $q["size"];
-$quotas_disk[] = $q;
-
 if (forge_get_config('use_shell')) {
+       $group_dir = forge_get_config('groupdir_prefix') . "/" . 
$group->getUnixName();
        $q["name"] = _('Home project directory');
        $q["path"] = "$group_dir"; $q["size"] = 
$quota_management->get_dir_size("$group_dir");
        $q["quota_label"] = _('With ftp and home quota control');
@@ -148,6 +149,7 @@ if (forge_get_config('use_shell')) {
 }
 
 if ($group->usesFTP()) {
+       $ftp_dir = 
forge_get_config('ftp_upload_dir')."/pub/".$group->getUnixName();
        $q["name"] = _('FTP project directory');
        $q["path"] = "$ftp_dir"; $q["size"] = 
$quota_management->get_dir_size("$ftp_dir");
        $q["quota_label"] = _('With ftp and home quota control');
@@ -159,14 +161,14 @@ plugin_hook_by_reference('quota_display', $quotas_disk);
 
 ?>
 
-<table width="500px" cellpadding="2" cellspacing="0" border="0">
+<table width="500" cellpadding="2" cellspacing="0" border="0">
        <tr style="font-weight:bold">
-               <td colspan="3" style="border-top:thick solid #808080" 
align="center"><?php echo _('Database'); ?></td>
+               <td colspan="3" style="border-top:thick solid #808080; 
text-align: center"><?php echo _('Database'); ?></td>
        </tr>
        <tr style="font-weight:bold">
                <td style="border-top:thin solid #808080"><?php echo _('quota 
type'); ?></td>
-               <td style="border-top:thin solid #808080" align="right"><?php 
echo _('quantity'); ?></td>
-               <td style="border-top:thin solid #808080" align="right"><?php 
echo _('size'); ?></td>
+               <td style="border-top:thin solid #808080; text-align: 
right"><?php echo _('quantity'); ?></td>
+               <td style="border-top:thin solid #808080; text-align: 
right"><?php echo _('size'); ?></td>
        </tr>
 <?php
 $sizetot = 0;
@@ -176,8 +178,8 @@ foreach ($quotas as $q) {
                ?>
                        <tr>
                                <td style="border-top:thin solid #808080"><?php 
echo $q["name"]; ?></td>
-                               <td style="border-top:thin solid #808080" 
align="right"><?php echo $q["nb"]; ?></td>
-                               <td style="border-top:thin solid #808080" 
align="right"><?php echo human_readable_bytes($q["size"]); ?></td>
+                               <td style="border-top:thin solid #808080; 
text-align: right"><?php echo $q["nb"]; ?></td>
+                               <td style="border-top:thin solid #808080; 
text-align: right"><?php echo human_readable_bytes($q["size"]); ?></td>
                        </tr>
 <?php
        }
@@ -188,16 +190,17 @@ foreach ($quotas as $q) {
                        <?php echo _('Total'); ?>
                </td>
                <td style="border-top:thick solid #808080;border-bottom:thick 
solid #808080">&nbsp;</td>
-               <td style="border-top:thick solid #808080;border-bottom:thick 
solid #808080" align="right">
+               <td style="border-top:thick solid #808080;border-bottom:thick 
solid #808080; text-align: right">
                        <?php echo human_readable_bytes($sizetot); ?>
                </td>
        </tr>
 </table>
 <br />
 <br />
-<table width="500px" cellpadding="2" cellspacing="0" border="0">
+<?php if (count($quotas_disk) > 0) { ?>
+<table width="500" cellpadding="2" cellspacing="0" border="0">
        <tr style="font-weight:bold">
-               <td colspan="3" style="border-top:thick solid #808080" 
align="center">
+               <td colspan="3" style="border-top:thick solid #808080; 
text-align: center">
                        <?php echo _('Disk space'); ?>
                </td>
        </tr>
@@ -205,8 +208,8 @@ foreach ($quotas as $q) {
                <td style="border-top:thin solid #808080">
                        <?php echo _('quota type'); ?>
                </td>
-               <td style="border-top:thin solid #808080" 
align="right">&nbsp;</td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: 
right">&nbsp;</td>
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php echo _('size'); ?>
                </td>
        </tr>
@@ -218,10 +221,10 @@ foreach ($quotas_disk as $q) {
 ?>
        <tr>
                <td style="border-top:thin solid #808080"><?php echo 
$q["name"]; ?></td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php echo $q["quota_label"]; ?>&nbsp;
                </td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php echo human_readable_bytes($q["size"]); ?>
                </td>
        </tr>
@@ -232,7 +235,7 @@ foreach ($quotas_disk as $q) {
        <tr style="font-weight:bold">
                <td style="border-top:thick solid #808080;border-bottom:thick 
solid #808080"><?php echo _('Total'); ?></td>
                <td style="border-top:thick solid #808080;border-bottom:thick 
solid #808080">&nbsp;</td>
-               <td style="border-top:thick solid #808080;border-bottom:thick 
solid #808080" align="right">
+               <td style="border-top:thick solid #808080;border-bottom:thick 
solid #808080; text-align: right">
                        <?php echo human_readable_bytes($sizetot); ?>
                </td>
        </tr>
@@ -241,6 +244,7 @@ foreach ($quotas_disk as $q) {
 <br />
 
 <?php
+}
 $color1 = "#ffffff";
 $color2 = "#ffffff";
 $msg1 = "&nbsp;";
@@ -256,21 +260,21 @@ if (($quota_tot_scm+0) > ($qs+0) && ($qs+0) > 0) {
 }
 ?>
 
-<table width="500px" cellpadding="2" cellspacing="0" border="0">
+<table width="500" cellpadding="2" cellspacing="0" border="0">
        <tr style="font-weight:bold">
-               <td colspan="4" style="border-top:thick solid #808080" 
align="center"><?php echo _('Quota disk management'); ?></td>
+               <td colspan="4" style="border-top:thick solid #808080; 
text-align: center"><?php echo _('Quota disk management'); ?></td>
        </tr>
        <tr style="font-weight:bold">
                <td style="border-top:thin solid #808080">
                        <?php echo _('Quota settings'); ?>
                </td>
-               <td style="border-top:thin solid #808080;font-weight:bold" 
align="right">
+               <td style="border-top:thin solid #808080;font-weight:bold; 
text-align: right">
                        &nbsp;
                </td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php echo _('Quota soft'); ?>
                </td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php echo _('Quota hard'); ?>
                </td>
        </tr>
@@ -278,10 +282,10 @@ if (($quota_tot_scm+0) > ($qs+0) && ($qs+0) > 0) {
                <td style="border-top:thin solid #808080">
                        <?php echo _('Home, Ftp'); ?>
                </td>
-               <td style="border-top:thin solid 
#808080;font-weight:bold;color:red" align="right">
+               <td style="border-top:thin solid 
#808080;font-weight:bold;color:red; text-align: right">
                        <?php echo $msg1; ?>
                </td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php
                                if ($quota_soft == 0) {
                                        echo "---";
@@ -291,7 +295,7 @@ if (($quota_tot_scm+0) > ($qs+0) && ($qs+0) > 0) {
                                }
                        ?>
                </td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php
                                if ($quota_hard == 0) {
                                        echo "---";
@@ -307,10 +311,10 @@ if (($quota_tot_scm+0) > ($qs+0) && ($qs+0) > 0) {
                <td style="border-top:thin solid #808080">
                        <?php echo _('SCM'); ?>
                </td>
-               <td style="border-top:thin solid 
#808080;font-weight:bold;color:red" align="right">
+               <td style="border-top:thin solid 
#808080;font-weight:bold;color:red; text-align: right">
                        <?php echo $msg2; ?>
                </td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php
                                if ($quota_soft == 0) {
                                        echo "---";
@@ -320,7 +324,7 @@ if (($quota_tot_scm+0) > ($qs+0) && ($qs+0) > 0) {
                                }
                        ?>
                        </td>
-               <td style="border-top:thin solid #808080" align="right">
+               <td style="border-top:thin solid #808080; text-align: right">
                        <?php
                                if ($quota_hard == 0) {
                                        echo "---";
@@ -333,7 +337,7 @@ if (($quota_tot_scm+0) > ($qs+0) && ($qs+0) > 0) {
        </tr>
 <?php } ?>
        <tr style="font-weight:bold">
-               <td colspan="4" style="border-top:thick solid #808080" 
align="center">&nbsp;</td>
+               <td colspan="4" style="border-top:thick solid 
#808080">&nbsp;</td>
        </tr>
 </table>
 <?php project_admin_footer();

-----------------------------------------------------------------------

Summary of changes:
 .../common/quota_managementPlugin.class.php        | 52 +++++++++++---
 ..._management-add_storage_columns_for_compute.sql |  2 +
 .../quota_management/view/quota_project.php        | 80 ++++++++++++----------
 3 files changed, 88 insertions(+), 46 deletions(-)
 create mode 100644 
src/plugins/quota_management/db/20190618_quota_management-add_storage_columns_for_compute.sql


hooks/post-receive
-- 
FusionForge

_______________________________________________
Fusionforge-commits mailing list
[email protected]
http://lists.fusionforge.org/cgi-bin/mailman/listinfo/fusionforge-commits

Reply via email to