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  35f383beae92939abbb29a22ddd5e6ce06f4159a (commit)
       via  38bce24cd906ff1d2a9dfad7ffaaceb5d760eee8 (commit)
      from  1345b75abcc4fb657aa62097582c478a0bc23704 (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=35f383beae92939abbb29a22ddd5e6ce06f4159a

commit 35f383beae92939abbb29a22ddd5e6ce06f4159a
Author: Franck Villaume <[email protected]>
Date:   Mon May 8 16:31:07 2017 +0200

    forge cli: support homepage creation on groupImport

diff --git a/src/bin/forge b/src/bin/forge
index 7334423..07294eb 100755
--- a/src/bin/forge
+++ b/src/bin/forge
@@ -471,6 +471,7 @@ class CliActions {
                                db_rollback();
                                return false;
                        } else {
+                               
$importRefMapping['group'][$stream['setup']['data_array']['group_id']] = 
$new_group->getID();
                                //add users as members to the project
                                $default_role_ids = $new_group->getRolesId();
                                $default_role_id = $default_role_ids[0];
@@ -510,6 +511,15 @@ class CliActions {
                                        }
                                        @unlink($filename);
                                }
+                               //setup homepage
+                               if (isset($stream['setup']['homepage'])) {
+                                       $lm = new WidgetLayoutManager();
+                                       if 
(!$lm->createLayoutForProjectFromArray($this->getMappingId($stream['setup']['data_array']['group_id'],
 'group'), $stream['setup']['homepage'])) {
+                                               echo _('Unable to create group 
homepage layout')."\n";
+                                               db_rollback();
+                                               return false;
+                                       }
+                               }
                                echo _('Group imported.')."\n";
                                db_commit();
                                return true;
@@ -726,6 +736,14 @@ class CliActions {
                                return false;
                        }
                        
$importRefMapping['artifact_type'][$stream['setup']['group_artifact_id']] = 
$at->getID();
+                       if 
(isset($stream['setup']['use_tracker_widget_display'])) {
+                               $lm = new WidgetLayoutManager();
+                               if 
(!$lm->createLayoutForTrackerFromArray($this->getMappingId($stream['setup']['group_artifact_id'],
 'artifact_type'), $stream['setup']['use_tracker_widget_display'])) {
+                                       echo _('Unable to create tracker 
layout')."\n";
+                                       db_rollback();
+                                       return false;
+                               }
+                       }
                        if (isset($stream['setup']['extra_fields']) && 
is_array($stream['setup']['extra_fields'])) {
                                foreach ($stream['setup']['extra_fields'] as 
$extra_field) {
                                        $ef = new ArtifactExtraField($at);
diff --git a/src/common/widget/WidgetLayoutManager.class.php 
b/src/common/widget/WidgetLayoutManager.class.php
index 1c05225..bfc0f41 100644
--- a/src/common/widget/WidgetLayoutManager.class.php
+++ b/src/common/widget/WidgetLayoutManager.class.php
@@ -2,7 +2,7 @@
 /**
  * Copyright (c) Xerox Corporation, Codendi Team, 2001-2009. All rights 
reserved
  * Copyright (C) 2011 Alain Peyrat - Alcatel-Lucent
- * Copyright 2013-2016, Franck Villaume - TrivialDev
+ * Copyright 2013-2017, Franck Villaume - TrivialDev
  *
  * This file is a part of Fusionforge.
  *
@@ -187,7 +187,7 @@ class WidgetLayoutManager {
                if (!$success) {
                        $success = db_error();
                        db_rollback();
-                       exit_error(sprintf(_('DB Error: %s'), $success), 
'widgets');
+                       exit_error(_('DB Error')._(': ').$success, 'widgets');
                }
                db_commit();
        }
@@ -217,7 +217,7 @@ class WidgetLayoutManager {
                if (!$success) {
                        $success = db_error();
                        db_rollback();
-                       exit_error(sprintf(_('DB Error: %s'), $success), 
'widgets');
+                       exit_error(_('DB Error')._(': ').$success, 'widgets');
                }
                db_commit();
        }
@@ -323,12 +323,25 @@ class WidgetLayoutManager {
                if (!$success) {
                        $success = db_error();
                        db_rollback();
-                       exit_error(sprintf(_('DB Error: %s'), $success), 
'widgets');
+                       exit_error(_('DB Error')._(': ').$success, 'widgets');
                }
                db_commit();
        }
 
        /**
+        * createLayoutForTrackerFromArray
+        *
+        * Create a specific layout for a new tracker, based on an descriptive 
array.
+        * The descriptive array is generated by getLayout function.
+        *
+        * @param       int     $owner_id       the id of the newly created 
tracker
+        * @param       array   $layoutDescArr  the descriptive array.
+        */
+       function createLayoutForTrackerFromArray($owner_id, $layoutDescArr) {
+               return true;
+       }
+
+       /**
         * createDefaultLayoutForProject
         *
         * Create the first layout for a new project, based on its parent 
template.
@@ -346,13 +359,13 @@ class WidgetLayoutManager {
                        WHERE owner_type = $2
                        AND owner_id = $3
                        ";
-               if (db_query_params($sql,array($group_id, 
self::OWNER_TYPE_GROUP,$template_id))) {
+               if (db_query_params($sql, array($group_id, 
self::OWNER_TYPE_GROUP, $template_id))) {
                        $sql = "SELECT layout_id, column_id, name, rank, 
is_minimized, is_removed, display_preferences, content_id
                                FROM layouts_contents
                                WHERE owner_type = $1
                                AND owner_id = $2
                                ";
-                       if ($req = db_query_params($sql,array( 
self::OWNER_TYPE_GROUP,$template_id))) {
+                       if ($req = db_query_params($sql, 
array(self::OWNER_TYPE_GROUP, $template_id))) {
                                while($data = db_fetch_array($req)) {
                                        $w = Widget::getInstance($data['name']);
                                        if ($w) {
@@ -362,7 +375,7 @@ class WidgetLayoutManager {
                                                        $sql = "INSERT INTO 
layouts_contents(owner_id, owner_type, content_id, layout_id, column_id, name, 
rank, is_minimized, is_removed, display_preferences)
                                                                VALUES 
($1,$2,$3,$4,$5,$6,$7,$8,$9,$10);
                                                        ";
-                                                       db_query_params($sql, 
array($group_id , self::OWNER_TYPE_GROUP , $content_id ,  $data['layout_id'] ,  
$data['column_id'] ,  $data['name'] ,  $data['rank'] ,  $data['is_minimized'] , 
 $data['is_removed'] ,  $data['display_preferences'] ));
+                                                       db_query_params($sql, 
array($group_id, self::OWNER_TYPE_GROUP, $content_id, $data['layout_id'], 
$data['column_id'], $data['name'], $data['rank'], $data['is_minimized'], 
$data['is_removed'], $data['display_preferences']));
                                                        echo db_error();
                                                }
                                        }
@@ -373,6 +386,57 @@ class WidgetLayoutManager {
        }
 
        /**
+        * createLayoutForProjectFromArray
+        *
+        * Create a specific layout for a new project, based on an descriptive 
array.
+        * The descriptive array is generated by getLayout function.
+        *
+        * @param       int     $group_id       the id of the newly created 
project
+        * @param       array   $layoutDescArr  the descriptive array.
+        */
+       function createLayoutForProjectFromArray($group_id, $layoutDescArr) {
+               if (isset($layoutDescArr['rows']) && 
is_array($layoutDescArr['rows'])) {
+                       $pm = ProjectManager::instance();
+                       $project = $pm->getProject($group_id);
+                       db_query_params('DELETE FROM layouts_contents WHERE 
owner_id = $1 AND owner_type = $2', array($group_id, self::OWNER_TYPE_GROUP));
+                       db_query_params('DELETE FROM owner_layouts WHERE 
owner_id = $1 AND owner_type = $2', array($group_id, self::OWNER_TYPE_GROUP));
+                       $sql = "INSERT INTO layouts(name, description, scope) 
VALUES ('custom', '', 'P')";
+                       if ($res = db_query_params($sql, array())) {
+                               if ($new_layout_id = db_insertid($res, 
'layouts', 'id')) {
+                                       $sql = 'INSERT INTO 
owner_layouts(layout_id, is_default, owner_id, owner_type) VALUES ($1, $2, $3, 
$4)';
+                                       if (db_query_params($sql, 
array($new_layout_id, 1, $group_id, self::OWNER_TYPE_GROUP))) {
+                                               //Create rows & columns
+                                               foreach($layoutDescArr['rows'] 
as $cols) {
+                                                       $sql = "INSERT INTO 
layouts_rows(layout_id, rank) VALUES ($1, $2)";
+                                                       if ($res = 
db_query_params($sql, array($new_layout_id, $cols['rank']))) {
+                                                               if ($row_id = 
db_insertid($res,'layouts_rows', 'id')) {
+                                                                       
foreach($cols['columns'] as $column) {
+                                                                               
$sql = "INSERT INTO layouts_rows_columns(layout_row_id, width) VALUES ($1, $2)";
+                                                                               
db_query_params($sql, array($row_id, $column['width']));
+                                                                               
$column_id = db_insertid($res,'layouts_rows_columns', 'id');
+                                                                               
foreach ($column['contents'] as $new_widget) {
+                                                                               
        $sql = "INSERT INTO layouts_contents (owner_id, owner_type, content_id, 
layout_id, column_id, name, rank, is_minimized, is_removed, display_preferences)
+                                                                               
                VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10);
+                                                                               
                ";
+                                                                               
        db_query_params($sql, array($group_id, self::OWNER_TYPE_GROUP, 
$new_widget['content']['content_id'], $new_layout_id, $column_id, 
$new_widget['content']['id'], 0, $new_widget['is_minimized'], 0, 
$new_widget['display_preferences']));
+                                                                               
        echo db_error();
+                                                                               
}
+                                                                       }
+                                                               }
+                                                       }
+                                               }
+                                       } else {
+                                               return false;
+                                       }
+                               }
+                       }
+                       return true;
+               } else {
+                       return false;
+               }
+       }
+
+       /**
         * displayAvailableWidgets - Display all widgets that the user can add 
to the layout
         *
         * @param       int     $owner_id
@@ -545,20 +609,17 @@ class WidgetLayoutManager {
                                        }
                                        //If the structure contains at least 
one column, create a new layout
                                        if (count($rows)) {
-                                               $sql = "INSERT INTO 
layouts(name, description, scope)
-                                                       VALUES ('custom', '', 
'P')";
+                                               $sql = "INSERT INTO 
layouts(name, description, scope) VALUES ('custom', '', 'P')";
                                                if ($res = 
db_query_params($sql, array())) {
                                                        if ($new_layout_id = 
db_insertid($res, 'layouts', 'id')) {
                                                                //Create rows & 
columns
                                                                $rank = 0;
                                                                foreach($rows 
as $cols) {
-                                                                       $sql = 
"INSERT INTO layouts_rows(layout_id, rank)
-                                                                               
VALUES ($1,$2)";
+                                                                       $sql = 
"INSERT INTO layouts_rows(layout_id, rank) VALUES ($1, $2)";
                                                                        if 
($res = db_query_params($sql, array($new_layout_id, $rank++))) {
                                                                                
if ($row_id = db_insertid($res,'layouts_rows', 'id')) {
                                                                                
        foreach($cols as $width) {
-                                                                               
                $sql = "INSERT INTO layouts_rows_columns(layout_row_id, width)
-                                                                               
                        VALUES ($1,$2)";
+                                                                               
                $sql = "INSERT INTO layouts_rows_columns(layout_row_id, width) 
VALUES ($1, $2)";
                                                                                
                db_query_params($sql, array($row_id, $width));
                                                                                
        }
                                                                                
}
@@ -605,15 +666,12 @@ class WidgetLayoutManager {
                                        if ($old_scope != 'S') {
                                                $structure = 
$this->_retrieveStructureOfLayout($old_layout_id);
                                                foreach($structure['rows'] as 
$row) {
-                                                       $sql = "DELETE FROM 
layouts_rows
-                                                               WHERE id  = $1";
+                                                       $sql = "DELETE FROM 
layouts_rows WHERE id = $1";
                                                        db_query_params($sql, 
array($row['id']));
-                                                       $sql = "DELETE FROM 
layouts_rows_columns
-                                                               WHERE 
layout_row_id  = $1";
+                                                       $sql = "DELETE FROM 
layouts_rows_columns WHERE layout_row_id = $1";
                                                        db_query_params($sql, 
array($row['id']));
                                                }
-                                               $sql = "DELETE FROM layouts
-                                                       WHERE id  = $1";
+                                               $sql = "DELETE FROM layouts 
WHERE id = $1";
                                                db_query_params($sql, 
array($old_layout_id));
                                        }
 
@@ -718,6 +776,7 @@ class WidgetLayoutManager {
                }
                return $categ;
        }
+
        /**
         * addWidget
         *
@@ -775,7 +834,7 @@ class WidgetLayoutManager {
                if (db_numrows($res) && !$widget->isUnique() && db_result($res, 
0, 'column_id') == 0) {
                        //search for rank
                        $sql = "SELECT min(rank) - 1 AS rank FROM 
layouts_contents WHERE owner_type =$1 AND owner_id = $2 AND layout_id = $3 AND 
column_id = $4 ";
-                       $res = db_query_params($sql,array($owner_type, 
$owner_id, $layout_id,$column_id));
+                       $res = db_query_params($sql, array($owner_type, 
$owner_id, $layout_id, $column_id));
                        echo db_error();
                        $rank = db_result($res, 0, 'rank');
 
@@ -786,7 +845,7 @@ class WidgetLayoutManager {
                                AND owner_id = $4
                                AND name = $5
                                AND layout_id = $6";
-                       
db_query_params($sql,array($column_id,$rank,$owner_type, $owner_id,$name, 
$layout_id));
+                       db_query_params($sql, array($column_id, 
$rank,$owner_type, $owner_id,$name, $layout_id));
                        echo db_error();
                } else {
                        //Insert
@@ -796,7 +855,7 @@ class WidgetLayoutManager {
                                LEFT JOIN layouts_contents AS R2 USING ( 
owner_type, owner_id, layout_id, column_id )
                                ORDER BY rank ASC
                                LIMIT 1";
-                       
db_query_params($sql,array($name,$content_id,$owner_type,$owner_id,$layout_id,$column_id));
+                       db_query_params($sql, array($name, $content_id, 
$owner_type, $owner_id, $layout_id, $column_id));
                        echo db_error();
                }
                $this->feedback();
@@ -819,7 +878,7 @@ class WidgetLayoutManager {
         */
        function removeWidget($owner_id, $owner_type, $layout_id, $name, 
$instance_id, &$widget) {
                $sql = "DELETE FROM layouts_contents WHERE owner_type =$1 AND 
owner_id = $2 AND layout_id = $3 AND name = $4 AND content_id = $5";
-               
db_query_params($sql,array($owner_type,$owner_id,$layout_id,$name,$instance_id));
+               db_query_params($sql, array($owner_type, $owner_id, $layout_id, 
$name, $instance_id));
                if (!db_error()) {
                        $widget->destroy($instance_id);
                }
@@ -836,7 +895,7 @@ class WidgetLayoutManager {
         */
        function mimizeWidget($owner_id, $owner_type, $layout_id, $name, 
$instance_id) {
                $sql = "UPDATE layouts_contents SET is_minimized = 1 WHERE 
owner_type = $1 AND owner_id = $2 AND layout_id = $3 AND name = $4 AND 
content_id = $5";
-               
db_query_params($sql,array($owner_type,$owner_id,$layout_id,$name,$instance_id));
+               db_query_params($sql, array($owner_type, $owner_id, $layout_id, 
$name, $instance_id));
                echo db_error();
        }
 
@@ -851,7 +910,7 @@ class WidgetLayoutManager {
         */
        function maximizeWidget($owner_id, $owner_type, $layout_id, $name, 
$instance_id) {
                $sql = "UPDATE layouts_contents SET is_minimized = 0 WHERE 
owner_type =$1 AND owner_id =$2 AND layout_id = $3 AND name = $4 AND content_id 
= $5";
-               
db_query_params($sql,array($owner_type,$owner_id,$layout_id,$name,$instance_id));
+               db_query_params($sql, array($owner_type, $owner_id, $layout_id, 
$name, $instance_id));
                echo db_error();
        }
 
@@ -866,7 +925,7 @@ class WidgetLayoutManager {
         */
        function displayWidgetPreferences($owner_id, $owner_type, $layout_id, 
$name, $instance_id) {
                $sql = "UPDATE layouts_contents SET display_preferences = 1, 
is_minimized = 0 WHERE owner_type = $1 AND owner_id = $2 AND layout_id = $3 AND 
name = $4 AND content_id = $5";
-               
db_query_params($sql,array($owner_type,$owner_id,$layout_id,$name,$instance_id));
+               db_query_params($sql, array($owner_type, $owner_id, $layout_id, 
$name, $instance_id));
                echo db_error();
        }
 
@@ -881,7 +940,7 @@ class WidgetLayoutManager {
         */
        function hideWidgetPreferences($owner_id, $owner_type, $layout_id, 
$name, $instance_id) {
                $sql = "UPDATE layouts_contents SET display_preferences = 0 
WHERE owner_type = $1 AND owner_id = $2 AND layout_id = $3 AND name = $4 AND 
content_id = $5";
-               
db_query_params($sql,array($owner_type,$owner_id,$layout_id,$name,$instance_id));
+               db_query_params($sql, array($owner_type, $owner_id, $layout_id, 
$name, $instance_id));
                echo db_error();
        }
 
@@ -910,7 +969,7 @@ class WidgetLayoutManager {
                                //Compute differences
                                $originals = array();
                                $sql = "SELECT * FROM layouts_contents WHERE 
owner_type = $1 AND owner_id = $2 AND column_id = $3 ORDER BY rank";
-                               $res = db_query_params($sql,array($owner_type, 
$owner_id, $column_id));
+                               $res = db_query_params($sql, array($owner_type, 
$owner_id, $column_id));
                                echo db_error();
                                while($data = db_fetch_array($res)) {
                                        $originals[] = 
array($data['content_id'], $data['name']);
@@ -934,7 +993,7 @@ class WidgetLayoutManager {
                                                WHERE owner_type = $1
                                                AND owner_id = $2
                                                AND column_id = $3". $_and;
-                                       db_query_params($sql,array($owner_type, 
$owner_id, $column_id));
+                                       db_query_params($sql, 
array($owner_type, $owner_id, $column_id));
                                        echo db_error();
                                }
 
@@ -957,7 +1016,7 @@ class WidgetLayoutManager {
                                                WHERE owner_type = $2
                                                AND owner_id = $3' . $_and ."
                                                AND layout_id = $4";
-                                       
db_query_params($sql,array($column_id,$owner_type,$owner_id,$layout_id));
+                                       db_query_params($sql, array($column_id, 
$owner_type, $owner_id, $layout_id));
                                        echo db_error();
                                }
 
@@ -966,7 +1025,7 @@ class WidgetLayoutManager {
                                $values = array();
                                foreach($names as $name) {
                                        $sql = 'UPDATE layouts_contents SET 
rank = $1 WHERE owner_type =$2 AND owner_id = $3 AND column_id = $4 AND name = 
$5 AND content_id = $6';
-                                       db_query_params($sql, 
array($rank++,$owner_type,$owner_id,$column_id,$name[1],$name[0]));
+                                       db_query_params($sql, array($rank++, 
$owner_type, $owner_id, $column_id, $name[1], $name[0]));
                                        echo db_error();
                                }
                        }
@@ -989,11 +1048,11 @@ class WidgetLayoutManager {
                        while ($data = db_fetch_array($req_rows)) {
                                $row = new WidgetLayout_Row($data['id'], 
$data['rank']);
                                $sql = 'SELECT * FROM layouts_rows_columns 
WHERE layout_row_id = $1';
-                               $req_cols = 
db_query_params($sql,array($row->id));
+                               $req_cols = db_query_params($sql, 
array($row->id));
                                while ($data = db_fetch_array($req_cols)) {
                                        $col = new 
WidgetLayout_Row_Column($data['id'], $data['width']);
                                        $sql = "SELECT * FROM layouts_contents 
WHERE owner_type = $1  AND owner_id = $2 AND column_id = $3 ORDER BY rank";
-                                       $req_content = 
db_query_params($sql,array($owner_type, $owner_id, $col->id));
+                                       $req_content = db_query_params($sql, 
array($owner_type, $owner_id, $col->id));
                                        while ($data = 
db_fetch_array($req_content)) {
                                                $c = 
Widget::getInstance($data['name']);
                                                if ($c && $c->isAvailable()) {

https://scm.fusionforge.org/anonscm/gitweb/?p=fusionforge/fusionforge.git;a=commitdiff;h=38bce24cd906ff1d2a9dfad7ffaaceb5d760eee8

commit 38bce24cd906ff1d2a9dfad7ffaaceb5d760eee8
Author: Franck Villaume <[email protected]>
Date:   Mon May 8 15:10:00 2017 +0200

    less string

diff --git a/src/www/include/user_home.php b/src/www/include/user_home.php
index d35a951..0d6c131 100644
--- a/src/www/include/user_home.php
+++ b/src/www/include/user_home.php
@@ -61,7 +61,7 @@ if (forge_get_config('use_diary')) {
 
        $res = db_query_params('SELECT count(*) from user_diary WHERE 
user_id=$1 AND is_public=1',
                                array($user_id));
-       echo _('Diary/Note entries:').' '.db_result($res, 0, 0).'
+       echo _('Diary/Note entries')._(': ').db_result($res, 0, 0).'
                <p>';
                //.'<span rel="foaf:weblog">'
                echo 
util_make_link('/developer/diary.php?diary_user='.$user_id,htmlentities(_('View 
Diary and Notes')));
@@ -93,7 +93,7 @@ if (count ($projects) < 1) {
        <p><?php echo _('This user is not a member of any project.') ?></p>
        <?php
 } else { // endif no groups
-       print "<p>"._('This user is a member of the following 
projects:')."</p>\n";
+       echo html_e('p', array(), _('This user is a member of the following 
projects')._(':'));
 
        foreach ($projects as $p) {
                if (!forge_check_perm('project_read', $p->getID())) {

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

Summary of changes:
 src/bin/forge                                   |  18 ++++
 src/common/widget/WidgetLayoutManager.class.php | 125 +++++++++++++++++-------
 src/www/include/user_home.php                   |   4 +-
 3 files changed, 112 insertions(+), 35 deletions(-)


hooks/post-receive
-- 
FusionForge

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

Reply via email to