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  374c8e6f878acb272c975216f95cdb3d815f8634 (commit)
       via  a496f1c4a60f5ec548949d9dacd36145556e8326 (commit)
       via  47d59f247eefb74c1766471205b16aa4163079e9 (commit)
       via  012b6dc99c9913288b17887f68c96c3a9c32c52c (commit)
       via  369f17609e87bbb63fcc9e4c8cbb55f1dfdeeb04 (commit)
       via  3094df86c1f748b7b97734586fb85f9a5155af81 (commit)
      from  3625083907c2b89c22661785f927a572d30230fa (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=374c8e6f878acb272c975216f95cdb3d815f8634

commit 374c8e6f878acb272c975216f95cdb3d815f8634
Merge: a496f1c 47d59f2
Author: Roland Mas <[email protected]>
Date:   Fri Jun 19 18:42:05 2015 +0200

    Merge branch '6.0'


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

commit a496f1c4a60f5ec548949d9dacd36145556e8326
Author: Roland Mas <[email protected]>
Date:   Fri Jun 19 18:14:58 2015 +0200

    Alter getContent() methods of widget classes to return the generated HTML 
rather than printing it directly

diff --git a/src/common/widget/Widget_ProjectDescription.class.php 
b/src/common/widget/Widget_ProjectDescription.class.php
index 362a096..7b09713 100644
--- a/src/common/widget/Widget_ProjectDescription.class.php
+++ b/src/common/widget/Widget_ProjectDescription.class.php
@@ -35,6 +35,8 @@ class Widget_ProjectDescription extends Widget {
        }
 
        public function getContent() {
+               $result = '';
+               
                $request =& HTTPRequest::instance();
                $group_id = $request->get('group_id');
                $pm = ProjectManager::instance();
@@ -45,14 +47,16 @@ class Widget_ProjectDescription extends Widget {
                        $project_description = $project->getDescription();
                        if ($project_description) {
                                // need to use a litteral version for content 
attribute since nl2br is for HTML
-                               print "<p>"
+                               $result .= "<p>"
                                        .'<span property="doap:description" 
content="'. preg_quote($project_description,'"') .'">'
                                        . nl2br($project_description)
                                        .'</span></p>';
                        } else {
-                               print "<p>" . _('This project has not yet 
submitted a description.') . '</p>';
+                               $result .= "<p>" . _('This project has not yet 
submitted a description.') . '</p>';
                        }
                }
+
+               return $result;
        }
 
        public function canBeUsedByProject(&$project) {
diff --git a/src/common/widget/Widget_ProjectDocumentsActivity.class.php 
b/src/common/widget/Widget_ProjectDocumentsActivity.class.php
index a271233..d94eba4 100644
--- a/src/common/widget/Widget_ProjectDocumentsActivity.class.php
+++ b/src/common/widget/Widget_ProjectDocumentsActivity.class.php
@@ -97,10 +97,11 @@ class Widget_ProjectDocumentsActivity extends Widget {
 
        function getContent() {
                require_once 
$GLOBALS['gfcommon'].'docman/DocumentManager.class.php';
+               $result = '';
                global $HTML;
                html_use_jqueryjqplotpluginBar();
-               echo $HTML->getJavascripts();
-               echo $HTML->getStylesheets();
+               $result .= $HTML->getJavascripts();
+               $result .= $HTML->getStylesheets();
                $request =& HTTPRequest::instance();
                $group_id = $request->get('group_id');
                $group = group_get_object($group_id);
@@ -153,55 +154,55 @@ class Widget_ProjectDocumentsActivity extends Widget {
                        }
                }
                if ($visibility) {
-                       echo '<script type="text/javascript">//<![CDATA['."\n";
+                       $result .= '<script 
type="text/javascript">//<![CDATA['."\n";
                        switch($this->_statistic_show) {
                                case 'F':
-                                       echo 'var s1 = 
['.$activitysArray[0]['docmannew'].', '.$activitysArray[1]['docmannew'].', 
'.$activitysArray[2]['docmannew'].', '.$activitysArray[3]['docmannew'].'];';
-                                       echo 'var series = [s1];';
-                                       echo 'var labels = [{label:\''._('new 
Files').'\'}];';
+                                       $result .= 'var s1 = 
['.$activitysArray[0]['docmannew'].', '.$activitysArray[1]['docmannew'].', 
'.$activitysArray[2]['docmannew'].', '.$activitysArray[3]['docmannew'].'];';
+                                       $result .= 'var series = [s1];';
+                                       $result .= 'var labels = 
[{label:\''._('new Files').'\'}];';
                                        break;
                                case 'U': {
-                                       echo 'var s2 = 
['.$activitysArray[0]['docmanupdate'].', 
'.$activitysArray[1]['docmanupdate'].', '.$activitysArray[2]['docmanupdate'].', 
'.$activitysArray[3]['docmanupdate'].'];';
-                                       echo 'var series = [s2];';
-                                       echo 'var labels = 
[{label:\''._('updated Files').'\'}];';
+                                       $result .= 'var s2 = 
['.$activitysArray[0]['docmanupdate'].', 
'.$activitysArray[1]['docmanupdate'].', '.$activitysArray[2]['docmanupdate'].', 
'.$activitysArray[3]['docmanupdate'].'];';
+                                       $result .= 'var series = [s2];';
+                                       $result .= 'var labels = 
[{label:\''._('updated Files').'\'}];';
                                        break;
                                }
                                case 'D': {
-                                       echo 'var s3 = 
['.$activitysArray[0]['docgroupnew'].', '.$activitysArray[1]['docgroupnew'].', 
'.$activitysArray[2]['docgroupnew'].', '.$activitysArray[3]['docgroupnew'].'];';
-                                       echo 'var series = [s3];';
-                                       echo 'var labels = [{label:\''._('new 
Directories').'\'}];';
+                                       $result .= 'var s3 = 
['.$activitysArray[0]['docgroupnew'].', '.$activitysArray[1]['docgroupnew'].', 
'.$activitysArray[2]['docgroupnew'].', '.$activitysArray[3]['docgroupnew'].'];';
+                                       $result .= 'var series = [s3];';
+                                       $result .= 'var labels = 
[{label:\''._('new Directories').'\'}];';
                                        break;
                                }
                                case 'FU': {
-                                       echo 'var s1 = 
['.$activitysArray[0]['docmannew'].', '.$activitysArray[1]['docmannew'].', 
'.$activitysArray[2]['docmannew'].', '.$activitysArray[3]['docmannew'].'];';
-                                       echo 'var s2 = 
['.$activitysArray[0]['docmanupdate'].', 
'.$activitysArray[1]['docmanupdate'].', '.$activitysArray[2]['docmanupdate'].', 
'.$activitysArray[3]['docmanupdate'].'];';
-                                       echo 'var series = [s1, s2];';
-                                       echo 'var labels = [{label:\''._('new 
Files').'\'},
+                                       $result .= 'var s1 = 
['.$activitysArray[0]['docmannew'].', '.$activitysArray[1]['docmannew'].', 
'.$activitysArray[2]['docmannew'].', '.$activitysArray[3]['docmannew'].'];';
+                                       $result .= 'var s2 = 
['.$activitysArray[0]['docmanupdate'].', 
'.$activitysArray[1]['docmanupdate'].', '.$activitysArray[2]['docmanupdate'].', 
'.$activitysArray[3]['docmanupdate'].'];';
+                                       $result .= 'var series = [s1, s2];';
+                                       $result .= 'var labels = 
[{label:\''._('new Files').'\'},
                                                        {label:\''._('updated 
Files').'\'}];';
                                        break;
                                }
                                case 'FD': {
-                                       echo 'var s1 = 
['.$activitysArray[0]['docmannew'].', '.$activitysArray[1]['docmannew'].', 
'.$activitysArray[2]['docmannew'].', '.$activitysArray[3]['docmannew'].'];';
-                                       echo 'var s3 = 
['.$activitysArray[0]['docgroupnew'].', '.$activitysArray[1]['docgroupnew'].', 
'.$activitysArray[2]['docgroupnew'].', '.$activitysArray[3]['docgroupnew'].'];';
-                                       echo 'var series = [s1, s3];';
-                                       echo 'var labels = [{label:\''._('new 
Files').'\'},
+                                       $result .= 'var s1 = 
['.$activitysArray[0]['docmannew'].', '.$activitysArray[1]['docmannew'].', 
'.$activitysArray[2]['docmannew'].', '.$activitysArray[3]['docmannew'].'];';
+                                       $result .= 'var s3 = 
['.$activitysArray[0]['docgroupnew'].', '.$activitysArray[1]['docgroupnew'].', 
'.$activitysArray[2]['docgroupnew'].', '.$activitysArray[3]['docgroupnew'].'];';
+                                       $result .= 'var series = [s1, s3];';
+                                       $result .= 'var labels = 
[{label:\''._('new Files').'\'},
                                                        {label:\''._('new 
Directories').'\'}];';
                                        break;
                                }
                                default: {
-                                       echo 'var s1 = 
['.$activitysArray[0]['docmannew'].', '.$activitysArray[1]['docmannew'].', 
'.$activitysArray[2]['docmannew'].', '.$activitysArray[3]['docmannew'].'];';
-                                       echo 'var s2 = 
['.$activitysArray[0]['docmanupdate'].', 
'.$activitysArray[1]['docmanupdate'].', '.$activitysArray[2]['docmanupdate'].', 
'.$activitysArray[3]['docmanupdate'].'];';
-                                       echo 'var s3 = 
['.$activitysArray[0]['docgroupnew'].', '.$activitysArray[1]['docgroupnew'].', 
'.$activitysArray[2]['docgroupnew'].', '.$activitysArray[3]['docgroupnew'].'];';
-                                       echo 'var series = [s1, s2, s3];';
-                                       echo 'var labels = [{label:\''._('new 
Files').'\'},
+                                       $result .= 'var s1 = 
['.$activitysArray[0]['docmannew'].', '.$activitysArray[1]['docmannew'].', 
'.$activitysArray[2]['docmannew'].', '.$activitysArray[3]['docmannew'].'];';
+                                       $result .= 'var s2 = 
['.$activitysArray[0]['docmanupdate'].', 
'.$activitysArray[1]['docmanupdate'].', '.$activitysArray[2]['docmanupdate'].', 
'.$activitysArray[3]['docmanupdate'].'];';
+                                       $result .= 'var s3 = 
['.$activitysArray[0]['docgroupnew'].', '.$activitysArray[1]['docgroupnew'].', 
'.$activitysArray[2]['docgroupnew'].', '.$activitysArray[3]['docgroupnew'].'];';
+                                       $result .= 'var series = [s1, s2, s3];';
+                                       $result .= 'var labels = 
[{label:\''._('new Files').'\'},
                                                        {label:\''._('updated 
Files').'\'},
                                                        {label:\''._('new 
Directories').'\'}];';
                                        break;
                                }
                        }
-                       echo 'var ticks = [\''._('3 weeks ago').'\', \''._('2 
weeks ago').'\', \''._('Last Week').'\', \''._('Current Week').'\'];';
-                       echo 'var plot1;';
-                       echo 'jQuery(document).ready(function(){
+                       $result .= 'var ticks = [\''._('3 weeks ago').'\', 
\''._('2 weeks ago').'\', \''._('Last Week').'\', \''._('Current Week').'\'];';
+                       $result .= 'var plot1;';
+                       $result .= 'jQuery(document).ready(function(){
                                        plot1 = jQuery.jqplot(\'chart1\', 
series, {
                                                seriesDefaults: {
                                                        
renderer:jQuery.jqplot.BarRenderer,
@@ -230,15 +231,17 @@ class Widget_ProjectDocumentsActivity extends Widget {
                                                }
                                        });
                                });';
-                       echo 'jQuery(window).resize(function() {
+                       $result .= 'jQuery(window).resize(function() {
                                        plot1.replot( { resetAxes: true } );
                                });'."\n";
-                       echo '//]]></script>';
-                       echo '<div id="chart1"></div>';
+                       $result .= '//]]></script>';
+                       $result .= '<div id="chart1"></div>';
                } else {
-                       echo $HTML->information(_('No activity to display'));
+                       $result .= $HTML->information(_('No activity to 
display'));
                }
-               echo html_e('div', array('class' => 'underline-link'), 
util_make_link('/docman/?group_id='.$group_id, _('Browse Documents Manager')));
+               $result .= html_e('div', array('class' => 'underline-link'), 
util_make_link('/docman/?group_id='.$group_id, _('Browse Documents Manager')));
+
+               return $result;
        }
 
        function getTitle() {
diff --git a/src/common/widget/Widget_ProjectInfo.class.php 
b/src/common/widget/Widget_ProjectInfo.class.php
index 6aa7254..59fa0bd 100644
--- a/src/common/widget/Widget_ProjectInfo.class.php
+++ b/src/common/widget/Widget_ProjectInfo.class.php
@@ -33,6 +33,8 @@ class Widget_ProjectInfo extends Widget {
        }
 
        public function getContent() {
+               $result = '';
+               
                $request =& HTTPRequest::instance();
                $group_id = $request->get('group_id');
                $pm = ProjectManager::instance();
@@ -40,29 +42,29 @@ class Widget_ProjectInfo extends Widget {
                // Tag list
                if (forge_get_config('use_project_tags')) {
                        $list_tag = list_project_tag($group_id);
-                       echo html_ao('p').html_image('ic/tag.png'). ' ';
+                       $result .= html_ao('p').html_image('ic/tag.png'). ' ';
                        if ($list_tag) {
-                               echo _('Tags')._(': '). $list_tag;
+                               $result .= _('Tags')._(': '). $list_tag;
                        } else {
                                $project = group_get_object($group_id);
                                if (forge_check_perm ('project_admin', 
$project->getID())) {
-                                       echo 
util_make_link('/project/admin/?group_id='.$group_id, _('No tag defined for 
this project'));
+                                       $result .= 
util_make_link('/project/admin/?group_id='.$group_id, _('No tag defined for 
this project'));
                                }
                                else {
-                                       echo html_e('span', array(), _('No tag 
defined for this project'), false);
+                                       $result .= html_e('span', array(), 
_('No tag defined for this project'), false);
                                }
                        }
-                       echo html_ac(html_ap() - 1);
+                       $result .= html_ac(html_ap() - 1);
                }
 
                if(forge_get_config('use_trove')) {
-                       echo html_e('br');
-                       print 
stripslashes(trove_getcatlisting($group_id,0,1,1))."\n";
+                       $result .= html_e('br');
+                       $result .= 
stripslashes(trove_getcatlisting($group_id,0,1,1))."\n";
                }
 
                // registration date
                $project_start_date = $project->getStartDate();
-               print(_('Registered')._(': ').
+               $result .=(_('Registered')._(': ').
                                '<span property="doap:created" 
content="'.date('Y-m-d', $project_start_date).'">'.
                                date(_('Y-m-d H:i'), $project_start_date).
                                "</span>\n");
@@ -80,12 +82,12 @@ class Widget_ProjectInfo extends Widget {
                        if (!$actv_res) {
                                $actv_res=0;
                        }
-                       print '<br />'.sprintf (_('Activity Ranking: 
<strong>%d</strong>'), $actv_res)."\n";
-                       print '<br />'._('View project').' 
'.util_make_link('/project/stats/?group_id='.$group_id, _('Statistics'));
+                       $result .= '<br />'.sprintf (_('Activity Ranking: 
<strong>%d</strong>'), $actv_res)."\n";
+                       $result .= '<br />'._('View project').' 
'.util_make_link('/project/stats/?group_id='.$group_id, _('Statistics'));
                        if ( ($project->usesTracker() && 
forge_get_config('use_tracker')) || ($project->usesPm() && 
forge_get_config('use_pm')) ) {
-                               print sprintf(_(' or <a 
href="%s">Activity</a>'),util_make_uri('/project/report/?group_id='.$group_id))."\n";
+                               $result .= sprintf(_(' or <a 
href="%s">Activity</a>'),util_make_uri('/project/report/?group_id='.$group_id))."\n";
                        }
-                       print '<br />'.sprintf(_('View list of <a href="%s">RSS 
feeds</a> available for this project.'), 
util_make_uri('/export/rss_project.php?group_id='.$group_id)). ' ' . 
html_image('ic/rss.png',16,16,array());
+                       $result .= '<br />'.sprintf(_('View list of <a 
href="%s">RSS feeds</a> available for this project.'), 
util_make_uri('/export/rss_project.php?group_id='.$group_id)). ' ' . 
html_image('ic/rss.png',16,16,array());
                }
 
                if(forge_get_config('use_people')) {
@@ -100,18 +102,18 @@ class Widget_ProjectInfo extends Widget {
                        if ($jobs_res) {
                                $num=db_numrows($jobs_res);
                                if ($num>0) {
-                                       print '<p>';
-                                       printf(
+                                       $result .= '<p>';
+                                       $result .= sprintf(
                                                        ngettext('HELP WANTED: 
This project is looking for a <a href="%1$s">"%2$s"</a>.',
                                                                'HELP WANTED: 
This project is looking for people to fill <a href="%1$s">several different 
positions</a>.',
                                                                $num),
                                                        
util_make_uri('/people/?group_id='.$group_id),
                                                        
db_result($jobs_res,0,"name"));
-                                       print "</p>\n";
-                                       //print '<div rel="fusionforge:has_job" 
typeof="fusionforge:Job" 
xmlns:fusionforge="http://fusionforge.org/fusionforge#";>';
-                                       //print '<span rel="dc:title" 
content="'. db_result($jobs_res,0,"name").'" 
xmlns:dc="http://purl.org/dc/elements/1.1/";>';
-                                       //print '</span>';
-                                       //echo '</div>';
+                                       $result .= "</p>\n";
+                                       //$result .= '<div 
rel="fusionforge:has_job" typeof="fusionforge:Job" 
xmlns:fusionforge="http://fusionforge.org/fusionforge#";>';
+                                       //$result .= '<span rel="dc:title" 
content="'. db_result($jobs_res,0,"name").'" 
xmlns:dc="http://purl.org/dc/elements/1.1/";>';
+                                       //$result .= '</span>';
+                                       //$result .= '</div>';
                                        //end of job description part
                                }
                        }
@@ -121,6 +123,8 @@ class Widget_ProjectInfo extends Widget {
                $hook_params['group_id'] = $group_id;
                plugin_hook("project_after_description",$hook_params);
                plugin_hook('hierarchy_views', array($group_id, 'home'));
+
+               return $result;
        }
 
        public function canBeUsedByProject(&$project) {
diff --git a/src/common/widget/Widget_ProjectLatestDocuments.class.php 
b/src/common/widget/Widget_ProjectLatestDocuments.class.php
index 43492cb..7d4748c 100644
--- a/src/common/widget/Widget_ProjectLatestDocuments.class.php
+++ b/src/common/widget/Widget_ProjectLatestDocuments.class.php
@@ -44,6 +44,8 @@ class Widget_ProjectLatestDocuments extends Widget {
        }
 
        function getContent() {
+               $result = '';
+               
                global $HTML;
                $request =& HTTPRequest::instance();
                $group_id = $request->get('group_id');
@@ -61,12 +63,12 @@ class Widget_ProjectLatestDocuments extends Widget {
 
                $rows_files = db_numrows($res_files);
                if (!$res_files || $rows_files < 1) {
-                       echo db_error();
+                       $result .= db_error();
                        // No documents
-                       echo $HTML->information(_('This project has not 
published any documents.'));
+                       $result .= $HTML->information(_('This project has not 
published any documents.'));
                } else {
                        use_javascript('/js/sortable.js');
-                       echo $HTML->getJavascripts();
+                       $result .= $HTML->getJavascripts();
                        $tabletop = array(_('Date'), _('File Name'), 
_('Title'), _('Author'), _('Path'));
                        $classth = array('', '', '', '', '');
                        if (session_loggedin()) {
@@ -75,7 +77,7 @@ class Widget_ProjectLatestDocuments extends Widget {
                                $tabletop[] = _('Actions');
                                $classth[] = 'unsortable';
                        }
-                       echo $HTML->listTableTop($tabletop, false, 
'sortable_widget_docman_listfile full', 'sortable', $classth);
+                       $result .= $HTML->listTableTop($tabletop, false, 
'sortable_widget_docman_listfile full', 'sortable', $classth);
                        for ($f=0; $f < $rows_files; $f++) {
                                $documentObject = 
document_get_object(db_result($res_files, $f, 'docid'));
                                $updatedate = $documentObject->getUpdated();
@@ -124,11 +126,13 @@ class Widget_ProjectLatestDocuments extends Widget {
                                        $cells[][] = $action;
                                }
 
-                               echo $HTML->multiTableRow(array(), $cells);
+                               $result .= $HTML->multiTableRow(array(), 
$cells);
                        }
-                       echo $HTML->listTableBottom();
+                       $result .= $HTML->listTableBottom();
                }
-               echo html_e('div', array('class' => 'underline-link'), 
util_make_link('/docman/?group_id='.$group_id, _('Browse Documents Manager')));
+               $result .= html_e('div', array('class' => 'underline-link'), 
util_make_link('/docman/?group_id='.$group_id, _('Browse Documents Manager')));
+
+               return $result;
        }
 
        function isAvailable() {
diff --git a/src/common/widget/Widget_ProjectLatestFileReleases.class.php 
b/src/common/widget/Widget_ProjectLatestFileReleases.class.php
index fb2c23c..4cee776 100644
--- a/src/common/widget/Widget_ProjectLatestFileReleases.class.php
+++ b/src/common/widget/Widget_ProjectLatestFileReleases.class.php
@@ -43,6 +43,8 @@ class Widget_ProjectLatestFileReleases extends Widget {
        }
 
        function getContent() {
+               $result = '';
+               
                $request =& HTTPRequest::instance();
                $pm = ProjectManager::instance();
                $group_id = $request->get('group_id');
@@ -52,28 +54,27 @@ class Widget_ProjectLatestFileReleases extends Widget {
                $frsrf = new FRSReleaseFactory($project);
                $frsrnrs = $frsrf->getFRSRNewReleases(true);
                if (count($frsrnrs) < 1) {
-                       echo $HTML->warning_msg(_('This project has not 
released any files.'));
+                       $result .= $HTML->warning_msg(_('This project has not 
released any files.'));
                } else {
                        use_javascript('/frs/scripts/FRSController.js');
-                       echo $HTML->getJavascripts();
-                       echo html_ao('script', array('type' => 
'text/javascript'));
-                       ?>
+                       $result .= $HTML->getJavascripts();
+                       $result .= html_ao('script', array('type' => 
'text/javascript'));
+                       $result .= '
                        //<![CDATA[
                        var controllerFRS;
                        jQuery(document).ready(function() {
                                controllerFRS = new FRSController();
                        });
-                       //]]>
-                       <?php
-                       echo html_ac(html_ap() - 1);
+                       //]]>';
+                       $result .= html_ac(html_ap() - 1);
                        $titleArr = array(_('Package'), _('Version'), 
_('Date'), _('Notes'));
                        if (session_loggedin()) {
                                $titleArr[] = _('Monitor');
                        }
                        $titleArr[] = _('Download');
                        use_javascript('/js/sortable.js');
-                       echo $HTML->getJavascripts();
-                       echo $HTML->listTableTop($titleArr, false, 
'sortable_widget_frs_listpackage full', 'sortable');
+                       $result .= $HTML->getJavascripts();
+                       $result .= $HTML->listTableTop($titleArr, false, 
'sortable_widget_frs_listpackage full', 'sortable');
                        foreach ($frsrnrs as $key => $frsrnr) {
                                $rel_date = $frsrnr->getReleaseDate();
                                $package_name = $frsrnr->FRSPackage->getName();
@@ -109,11 +110,13 @@ class Widget_ProjectLatestFileReleases extends Widget {
                                $t_link_anchor = 
$HTML->toSlug($package_name)."-".$HTML->toSlug($package_release)."-title-content";
                                $link = '/frs/?group_id=' . $group_id . 
'&amp;release_id='.$frsrnr->getID()."#".$t_link_anchor;
                                $cells[] = array(util_make_link ($link, 
$link_content), 'class' => 'align-center');
-                               echo $HTML->multiTableRow(array(), $cells);
+                               $result .= $HTML->multiTableRow(array(), 
$cells);
                        }
-                       echo $HTML->listTableBottom();
+                       $result .= $HTML->listTableBottom();
                }
-               echo html_e('div', array('class' => 'underline-link'), 
util_make_link('/frs/?group_id='.$group_id, _('View All Project Files')));
+               $result .= html_e('div', array('class' => 'underline-link'), 
util_make_link('/frs/?group_id='.$group_id, _('View All Project Files')));
+
+               return $result;
        }
 
        function isAvailable() {
diff --git a/src/common/widget/Widget_ProjectMembers.class.php 
b/src/common/widget/Widget_ProjectMembers.class.php
index ba55ac7..76c2d43 100644
--- a/src/common/widget/Widget_ProjectMembers.class.php
+++ b/src/common/widget/Widget_ProjectMembers.class.php
@@ -34,6 +34,8 @@ class Widget_ProjectMembers extends Widget {
        }
 
        public function getContent() {
+               $result = '';
+               
                $request =& HTTPRequest::instance();
                $group_id = $request->get('group_id');
                $pm = ProjectManager::instance();
@@ -45,22 +47,22 @@ class Widget_ProjectMembers extends Widget {
 
                $iam_member = false ;
                if (count($admins) > 0) {
-                       echo '<span class="develtitle">'._('Project 
Admins').'</span><br />';
+                       $result .= '<span class="develtitle">'._('Project 
Admins').'</span><br />';
                        foreach ($admins as $u) {
-                               echo '<div rel="doap:maintainer">'."\n";
+                               $result .= '<div rel="doap:maintainer">'."\n";
                                // A foaf:Person that holds an account on the 
forge
                                $developer_url = util_make_url_u 
($u->getUnixName(),$u->getID());
-                               echo '<div typeof="foaf:Person" about="'.
+                               $result .= '<div typeof="foaf:Person" about="'.
                                        $developer_url.'#person' .'" >'."\n";
-                               echo '<div rel="foaf:account">'."\n";
-                               echo '<div typeof="sioc:UserAccount" about="'.
+                               $result .= '<div rel="foaf:account">'."\n";
+                               $result .= '<div typeof="sioc:UserAccount" 
about="'.
                                        $developer_url.
                                        '">'."\n";
-                               echo 
util_display_user($u->getUnixName(),$u->getID(),$u->getRealName())."\n";
-                               echo "</div>\n"; // /sioc:UserAccount
-                               echo "</div>\n"; // /foaf:holdsAccount
-                               echo "</div>\n"; // /foaf:Person
-                               echo "</div>\n"; // /doap:maintainer|developer
+                               $result .= 
util_display_user($u->getUnixName(),$u->getID(),$u->getRealName())."\n";
+                               $result .= "</div>\n"; // /sioc:UserAccount
+                               $result .= "</div>\n"; // /foaf:holdsAccount
+                               $result .= "</div>\n"; // /foaf:Person
+                               $result .= "</div>\n"; // 
/doap:maintainer|developer
                                if ($u->getID() == user_getid()) {
                                        $iam_member = true ;
                                }
@@ -74,41 +76,43 @@ class Widget_ProjectMembers extends Widget {
                                        continue ;
                                }
                                if (!$seen_member) {
-                                       echo '<span class="develtitle">'. 
_('Members')._(':').'</span><br />';
+                                       $result .= '<span class="develtitle">'. 
_('Members')._(':').'</span><br />';
                                        $seen_member = true ;
                                }
-                               echo '<div rel="doap:developer">'."\n";
+                               $result .= '<div rel="doap:developer">'."\n";
                                // A foaf:Person that holds an account on the 
forge
                                $developer_url = util_make_url_u 
($u->getUnixName(),$u->getID());
-                               echo '<div typeof="foaf:Person" about="'.
+                               $result .= '<div typeof="foaf:Person" about="'.
                                        $developer_url.'#person' .'" >'."\n";
-                               echo '<div rel="foaf:account">'."\n";
-                               echo '<div typeof="sioc:UserAccount" about="'.
+                               $result .= '<div rel="foaf:account">'."\n";
+                               $result .= '<div typeof="sioc:UserAccount" 
about="'.
                                        $developer_url.
                                        '">'."\n";
-                               echo 
util_display_user($u->getUnixName(),$u->getID(),$u->getRealName())."\n";
-                               echo "</div>\n"; // /sioc:UserAccount
-                               echo "</div>\n"; // /foaf:holdsAccount
-                               echo "</div>\n"; // /foaf:Person
-                               echo "</div>\n"; // /doap:maintainer|developer
+                               $result .= 
util_display_user($u->getUnixName(),$u->getID(),$u->getRealName())."\n";
+                               $result .= "</div>\n"; // /sioc:UserAccount
+                               $result .= "</div>\n"; // /foaf:holdsAccount
+                               $result .= "</div>\n"; // /foaf:Person
+                               $result .= "</div>\n"; // 
/doap:maintainer|developer
                                if ($u->getID() == user_getid()) {
                                        $iam_member = true ;
                                }
                        }
                }
 
-               echo '<p><span rel="sioc:has_usergroup">';
-               echo '<span about="members/" typeof="sioc:UserGroup">';
-               echo '<span rel="http://www.w3.org/2002/07/owl#sameAs";>';
-               echo util_make_link 
('/project/memberlist.php?group_id='.$group_id,sprintf(_('View the %d 
Member(s)'),count($members)));
-               echo '</span>';
-               echo '</span>';
-               echo '</span></p>';
+               $result .= '<p><span rel="sioc:has_usergroup">';
+               $result .= '<span about="members/" typeof="sioc:UserGroup">';
+               $result .= '<span rel="http://www.w3.org/2002/07/owl#sameAs";>';
+               $result .= util_make_link 
('/project/memberlist.php?group_id='.$group_id,sprintf(_('View the %d 
Member(s)'),count($members)));
+               $result .= '</span>';
+               $result .= '</span>';
+               $result .= '</span></p>';
                // end of project usergroup description
 
                if (!$iam_member) {
-                       echo '<p>'.util_make_link 
('/project/request.php?group_id='.$group_id,_('Request to join')).'</p>';
+                       $result .= '<p>'.util_make_link 
('/project/request.php?group_id='.$group_id,_('Request to join')).'</p>';
                }
+
+               return $result;
        }
 
        public function canBeUsedByProject(&$project) {
diff --git a/src/common/widget/Widget_ProjectPublicAreas.class.php 
b/src/common/widget/Widget_ProjectPublicAreas.class.php
index 94704e6..543b52d 100644
--- a/src/common/widget/Widget_ProjectPublicAreas.class.php
+++ b/src/common/widget/Widget_ProjectPublicAreas.class.php
@@ -36,6 +36,8 @@ class Widget_ProjectPublicAreas extends Widget {
        }
 
        function getContent() {
+               $result = '';
+               
                $request =& HTTPRequest::instance();
                $group_id = $request->get('group_id');
                $pm = ProjectManager::instance();
@@ -43,18 +45,18 @@ class Widget_ProjectPublicAreas extends Widget {
                $HTML = $GLOBALS['HTML'];
                // ################# Homepage Link
 
-               echo '<div class="public-area-box" rel="doap:homepage">';
-               echo util_make_link($project->getHomePage(),
+               $result .= '<div class="public-area-box" rel="doap:homepage">';
+               $result .= util_make_link($project->getHomePage(),
                    $HTML->getHomePic(_('Home Page')) . ' ' .
                    _('Project Home Page'), false, true);
-               echo "</div>\n";
+               $result .= "</div>\n";
 
                // ################## ArtifactTypes
 
                if ($project->usesTracker()) {
-                       echo '<div class="public-area-box">'."\n";
+                       $result .= '<div class="public-area-box">'."\n";
                        $link_content = $HTML->getFollowPic(_('Tracker')) . ' ' 
. _('Tracker');
-                       echo util_make_link('/tracker/?group_id=' . $group_id, 
$link_content);
+                       $result .= util_make_link('/tracker/?group_id=' . 
$group_id, $link_content);
 
                        $result=db_query_params ('SELECT 
agl.*,aca.count,aca.open_count
                                        FROM artifact_group_list agl
@@ -72,34 +74,34 @@ class Widget_ProjectPublicAreas extends Widget {
                        }
 
                        if (count($rows) < 1) {
-                               echo "<br />\n<em>"._('There are no trackers 
available').'</em>';
+                               $result .= "<br />\n<em>"._('There are no 
trackers available').'</em>';
                        } else {
-                               echo "\n".'<ul class="tracker" 
rel="doap:bug-database">'."\n";
+                               $result .= "\n".'<ul class="tracker" 
rel="doap:bug-database">'."\n";
                                foreach ($rows as $row) {
                                        // tracker REST paths are something 
like : /tracker/cm/project/A_PROJECT/atid/NUMBER to plan compatibility
                                        // with OSLC-CM server API
                                        $group_artifact_id = 
$row['group_artifact_id'];
                                        $tracker_stdzd_uri = 
util_make_url('/tracker/cm/project/'. $project->getUnixName() .'/atid/'. 
$group_artifact_id);
-                                       echo "\t".'<li about="'. 
$tracker_stdzd_uri . '" typeof="sioc:Container">'."\n";
-                                       print '<span 
rel="http://www.w3.org/2002/07/owl#sameAs";>'."\n";
-                                       echo util_make_link('/tracker/?atid='. 
$group_artifact_id . '&group_id='.$group_id.'&func=browse', $row['name']) . ' ' 
;
-                                       echo "</span>\n"; // /owl:sameAs
-                                       printf(ngettext('(<strong>%1$s</strong> 
open / <strong>%2$s</strong> total)', '(<strong>%1$s</strong> open / 
<strong>%2$s</strong> total)', $row['open_count']), $row['open_count'], 
$row['count']);
-                                       echo '<br />';
-                                       print '<span rel="sioc:has_space" 
resource="" ></span>'."\n";
-                                       echo "</li>\n";
+                                       $result .= "\t".'<li about="'. 
$tracker_stdzd_uri . '" typeof="sioc:Container">'."\n";
+                                       $result .= '<span 
rel="http://www.w3.org/2002/07/owl#sameAs";>'."\n";
+                                       $result .= 
util_make_link('/tracker/?atid='. $group_artifact_id . 
'&group_id='.$group_id.'&func=browse', $row['name']) . ' ' ;
+                                       $result .= "</span>\n"; // /owl:sameAs
+                                       $result .= 
sprintf(ngettext('(<strong>%1$s</strong> open / <strong>%2$s</strong> total)', 
'(<strong>%1$s</strong> open / <strong>%2$s</strong> total)', 
$row['open_count']), $row['open_count'], $row['count']);
+                                       $result .= '<br />';
+                                       $result .= '<span rel="sioc:has_space" 
resource="" ></span>'."\n";
+                                       $result .= "</li>\n";
                                }
-                               echo "</ul>\n";
+                               $result .= "</ul>\n";
                        }
 
-                       echo "</div>\n";
+                       $result .= "</div>\n";
                }
 
                // ################## forums
 
                if ($project->usesForum()) {
-                       echo '<div class="public-area-box">'."\n";
-                       //      print '<hr size="1" /><a 
rel="sioc:container_of" href="'.util_make_url 
('/forum/?group_id='.$group_id).'">';
+                       $result .= '<div class="public-area-box">'."\n";
+                       //      $result .= '<hr size="1" /><a 
rel="sioc:container_of" href="'.util_make_url 
('/forum/?group_id='.$group_id).'">';
                        $ff = new ForumFactory($project);
                        $f_arr = $ff->getForums();
                        $forums_count = count($f_arr);
@@ -109,94 +111,94 @@ class Widget_ProjectPublicAreas extends Widget {
                        }
 
                        $link_content = $HTML->getForumPic('') . ' ' . 
_('Public Forums');
-                       echo util_make_link('/forum/?group_id=' . $group_id, 
$link_content);
-                       print ' (';
-                       printf(ngettext("<strong>%d</strong> 
message","<strong>%d</strong> messages",$messages_count),$messages_count);
-                       print ' ' . _('in') . ' ';
-                       printf(ngettext("<strong>%d</strong> 
forum","<strong>%d</strong> forums",$forums_count),$forums_count);
-                       print ')' ;
-                       print "\n</div>";
+                       $result .= util_make_link('/forum/?group_id=' . 
$group_id, $link_content);
+                       $result .= ' (';
+                       $result .= sprintf(ngettext("<strong>%d</strong> 
message","<strong>%d</strong> messages",$messages_count),$messages_count);
+                       $result .= ' ' . _('in') . ' ';
+                       $result .= sprintf(ngettext("<strong>%d</strong> 
forum","<strong>%d</strong> forums",$forums_count),$forums_count);
+                       $result .= ')' ;
+                       $result .= "\n</div>";
                }
 
                // ##################### Doc Manager
 
                if ($project->usesDocman()) {
-                       echo '<div class="public-area-box">';
+                       $result .= '<div class="public-area-box">';
                        $link_content = $HTML->getDocmanPic('') . ' ' . 
_('DocManager: Project Documentation');
                        //      <a rel="sioc:container_of" 
xmlns:sioc="http://rdfs.org/sioc/ns#"; href="'.util_make_url 
('/docman/?group_id='.$group_id).'">';
-                       echo util_make_link('/docman/?group_id='.$group_id, 
$link_content);
-                       echo '</div>';
+                       $result .= 
util_make_link('/docman/?group_id='.$group_id, $link_content);
+                       $result .= '</div>';
                }
 
                // ##################### FRS
 
                if ($project->usesFRS()) {
-                       echo '<div class="public-area-box">';
+                       $result .= '<div class="public-area-box">';
                        $link_content = $HTML->getDownloadPic('') . ' ' . 
_('Files');
                        //      <a rel="sioc:container_of" 
xmlns:sioc="http://rdfs.org/sioc/ns#"; href="'.util_make_url 
('/frs/?group_id='.$group_id).'">';
-                       echo util_make_link('/frs/?group_id='.$group_id, 
$link_content);
-                       echo '</div>';
+                       $result .= util_make_link('/frs/?group_id='.$group_id, 
$link_content);
+                       $result .= '</div>';
                }
 
                // ##################### Mailing lists
 
                if ($project->usesMail()) {
-                       echo '<div class="public-area-box">';
+                       $result .= '<div class="public-area-box">';
                        $link_content = $HTML->getMailPic('') . ' ' . 
_('Mailing Lists');
-                       print util_make_link('/mail/?group_id='.$group_id, 
$link_content);
+                       $result .= util_make_link('/mail/?group_id='.$group_id, 
$link_content);
                        $n = project_get_mail_list_count($group_id);
-                       echo ' ';
-                       printf(ngettext('(<strong>%s</strong> public mailing 
list)', '(<strong>%s</strong> public mailing lists)', $n), $n);
-                       echo "\n</div>\n";
+                       $result .= ' ';
+                       $result .= sprintf(ngettext('(<strong>%s</strong> 
public mailing list)', '(<strong>%s</strong> public mailing lists)', $n), $n);
+                       $result .= "\n</div>\n";
                }
 
                // ##################### Task Manager
 
                if ($project->usesPm()) {
-                       echo '<div class="public-area-box">';
+                       $result .= '<div class="public-area-box">';
                        $link_content = $HTML->getPmPic('') . ' ' . _('Tasks');
-                       echo util_make_link('/pm/?group_id='.$group_id, 
$link_content);
+                       $result .= util_make_link('/pm/?group_id='.$group_id, 
$link_content);
 
                        $pgf = new ProjectGroupFactory ($project);
                        $pgs = $pgf->getProjectGroups();
 
                        if (count($pgs) < 1) {
-                               echo "<br />\n<em>"._('There are no subprojects 
available').'</em>';
+                               $result .= "<br />\n<em>"._('There are no 
subprojects available').'</em>';
                        } else {
-                               echo "\n".'<ul class="task-manager">';
+                               $result .= "\n".'<ul class="task-manager">';
                                foreach ($pgs as $pg) {
-                                       echo "\n\t<li>";
-                                       echo 
util_make_link('/pm/task.php?group_project_id='.$pg->getID().'&group_id='.$group_id.'&func=browse',$pg->getName());
-                                       echo '</li>' ;
+                                       $result .= "\n\t<li>";
+                                       $result .= 
util_make_link('/pm/task.php?group_project_id='.$pg->getID().'&group_id='.$group_id.'&func=browse',$pg->getName());
+                                       $result .= '</li>' ;
                                }
-                               echo "\n</ul>";
+                               $result .= "\n</ul>";
                        }
-                       echo "\n</div>\n";
+                       $result .= "\n</div>\n";
                }
 
                // ######################### Surveys
 
                if ($project->usesSurvey()) {
-                       echo '<div class="public-area-box">'."\n";
+                       $result .= '<div class="public-area-box">'."\n";
                        $link_content = $HTML->getSurveyPic('') . ' ' . 
_('Surveys');
-                       echo util_make_link('/survey/?group_id='.$group_id, 
$link_content);
-                       echo ' (<strong>'. project_get_survey_count($group_id) 
.'</strong> ' . _('surveys').')';
-                       echo "\n</div>\n";
+                       $result .= 
util_make_link('/survey/?group_id='.$group_id, $link_content);
+                       $result .= ' (<strong>'. 
project_get_survey_count($group_id) .'</strong> ' . _('surveys').')';
+                       $result .= "\n</div>\n";
                }
 
                // ######################### SCM
 
                if ($project->usesSCM()) {
-                       echo '<div class="public-area-box">'."\n";
+                       $result .= '<div class="public-area-box">'."\n";
 
                        $link_content = $HTML->getScmPic('') . ' ' . _('SCM 
Repository');
-                       //      print '<hr size="1" /><a rel="doap:repository" 
href="'.util_make_url ('/scm/?group_id='.$group_id).'">';
-                       echo util_make_link('/scm/?group_id='.$group_id, 
$link_content);
+                       //      $result .= '<hr size="1" /><a 
rel="doap:repository" href="'.util_make_url ('/scm/?group_id='.$group_id).'">';
+                       $result .= util_make_link('/scm/?group_id='.$group_id, 
$link_content);
 
                        $hook_params = array () ;
                        $hook_params['group_id'] = $group_id ;
                        plugin_hook ("scm_stats", $hook_params) ;
-                       echo "\n</div>\n";
+                       $result .= "\n</div>\n";
                }
 
                // ######################### Plugins
@@ -210,18 +212,20 @@ class Widget_ProjectPublicAreas extends Widget {
                // CB hide FTP if desired
                if ($project->usesFTP()) {
                        if ($project->isActive()) {
-                               echo '<div class="public-area-box">'."\n";
+                               $result .= '<div class="public-area-box">'."\n";
 
                                $link_content = $HTML->getFtpPic('') . ' ' . 
_('Anonymous FTP Space');
-                               //              print '<a rel="doap:anonymous 
root" href="ftp://' . $project->getUnixName() . '.' . 
forge_get_config('web_host') . '/pub/'. $project->getUnixName() .'/">';
+                               //              $result .= '<a 
rel="doap:anonymous root" href="ftp://' . $project->getUnixName() . '.' . 
forge_get_config('web_host') . '/pub/'. $project->getUnixName() .'/">';
                                if (forge_get_config('use_project_vhost')) {
-                                       echo util_make_link('ftp://' . 
$project->getUnixName() . '.' . forge_get_config('web_host') . '/pub/'. 
$project->getUnixName(), $link_content, false, true);
+                                       $result .= util_make_link('ftp://' . 
$project->getUnixName() . '.' . forge_get_config('web_host') . '/pub/'. 
$project->getUnixName(), $link_content, false, true);
                                } else {
-                                       echo util_make_link('ftp://' . 
forge_get_config('web_host') . '/pub/'. $project->getUnixName(), $link_content, 
false, true);
+                                       $result .= util_make_link('ftp://' . 
forge_get_config('web_host') . '/pub/'. $project->getUnixName(), $link_content, 
false, true);
                                }
-                               echo "\n</div>\n";
+                               $result .= "\n</div>\n";
                        }
                }
+
+               return $result;
        }
 
        function canBeUsedByProject(&$project) {

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

Summary of changes:
 .../widget/Widget_ProjectDescription.class.php     |   8 +-
 .../Widget_ProjectDocumentsActivity.class.php      |  69 ++++----
 src/common/widget/Widget_ProjectInfo.class.php     |  42 ++---
 .../widget/Widget_ProjectLatestDocuments.class.php |  18 ++-
 .../Widget_ProjectLatestFileReleases.class.php     |  27 ++--
 src/common/widget/Widget_ProjectMembers.class.php  |  60 +++----
 .../widget/Widget_ProjectPublicAreas.class.php     | 122 +++++++-------
 src/plugins/scmsvn/common/SVNPlugin.class.php      | 176 +++++++++++++--------
 .../etc/httpd.conf.d/vhost-scm-plugin-scmsvn.inc   |  18 ++-
 src/plugins/scmsvn/libexec/svnlog.php              |  86 ++++++++++
 10 files changed, 399 insertions(+), 227 deletions(-)
 create mode 100644 src/plugins/scmsvn/libexec/svnlog.php


hooks/post-receive
-- 
FusionForge

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

Reply via email to