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  d0ed1020d3e963aa44d928ed51cbaa2562eb42cf (commit)
      from  7d60ada5911a406b4d15bab18ebb2414c1988183 (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=d0ed1020d3e963aa44d928ed51cbaa2562eb42cf

commit d0ed1020d3e963aa44d928ed51cbaa2562eb42cf
Author: Ralf Habacker <[email protected]>
Date:   Mon May 10 11:23:56 2021 +0200

    [ffo#852] Add support to show packages using tabs
    
    To enable this support the configuration variable `frs_with_tabs` has
    been introduced.

diff --git a/src/common/frs/views/listpackages.php 
b/src/common/frs/views/listpackages.php
index e9d7dfe..4b628fe 100644
--- a/src/common/frs/views/listpackages.php
+++ b/src/common/frs/views/listpackages.php
@@ -82,16 +82,23 @@ EOS;
                echo html_e('p', array(), 
util_make_link('/frs/?view=qrs&group_id='.$group_id, _('To create a new release 
click here.')));
        }
 
+       $use_tabs = forge_get_config('frs_with_tabs');
+
        // Iterate and show the packages
        $current_groupid = $group_id;
+       $tabmenu = '';
+       $tabs = '';
        foreach ($FRSPackages as $FRSPackage) {
+               $package_name = $FRSPackage->getName();
+               $package_name_protected = $HTML->toSlug($package_name);
+               $tabmenu .= $use_tabs ? html_e('li', array(), html_e('a', 
array('href' => '#tabber-'.$package_name_protected), 
html_entity_decode($package_name))) : '';
+               $content = '';
 
                if ($FRSPackage->Group->getID() != $current_groupid) {
-                       echo html_e('h2', array(), sprintf(_('Child Project %s 
Packages'), util_make_link('/frs/?group_id='.$FRSPackage->Group->getID(), 
$FRSPackage->Group->getPublicName())));
+                       $content .= html_e('h2', array(), sprintf(_('Child 
Project %s Packages'), 
util_make_link('/frs/?group_id='.$FRSPackage->Group->getID(), 
$FRSPackage->Group->getPublicName())));
                        $current_groupid = $FRSPackage->Group->getID();
                }
                $package_id = $FRSPackage->getID();
-               $package_name = $FRSPackage->getName();
                $url = 
'/frs/?group_id='.$FRSPackage->Group->getID().'&package_id='.$package_id.'&action=monitor';
                if (session_loggedin()) {
                        if($FRSPackage->isMonitoring()) {
@@ -113,7 +120,6 @@ EOS;
                $FRSPackageReleases = $FRSPackage->getReleases(false);
                $num_releases = count($FRSPackageReleases);
 
-               $package_name_protected = $HTML->toSlug($package_name);
                $package_ziplink = '';
                if ($FRSPackageReleases && $num_releases >= 1 && 
class_exists('ZipArchive') && 
file_exists($FRSPackage->getReleaseZipPath($FRSPackage->getNewestReleaseID()))) 
{
                        // display link to latest-release-as-zip
@@ -121,10 +127,10 @@ EOS;
                                                                                
                                                $HTML->getZipPic(_('Download 
the newest release as ZIP.')
                                                                                
                                                .' '._('This link always points 
to the newest release as a ZIP file.'))));
                }
-               echo html_e('h2', array('id' => 'title_'. 
$package_name_protected), 
html_entity_decode($package_name).$package_monitor.$package_ziplink);
+               $content .= html_e('h2', array('id' => 
'title_'.$package_name_protected), 
html_entity_decode($package_name).$package_monitor.$package_ziplink);
 
                if ( !$FRSPackageReleases || $num_releases < 1 ) {
-                       echo $HTML->warning_msg(_('No releases'));
+                       $content .= $HTML->warning_msg(_('No releases'));
                } else {
                        // iterate and show the releases of the package
                        foreach ($FRSPackageReleases as $FRSPackageRelease) {
@@ -138,13 +144,13 @@ EOS;
                                if ( ! $release_id || $release_id == 
$package_release_id ) {
                                        // no release_id OR release_id is 
current one
                                        $release_title = 
util_make_link('/frs/?view=shownotes&group_id='.$group_id.'&release_id='.$package_release_id,
 $package_name.' '.$FRSPackageRelease->getName().' ('.date(_('Y-m-d H:i'), 
$FRSPackageRelease->getReleaseDate()).')');
-                                       echo 
$HTML->boxTop($release_title.$ziplink, $package_name.' 
'.$FRSPackageRelease->getName());
+                                       $content .= 
$HTML->boxTop($release_title.$ziplink, $package_name.' 
'.$FRSPackageRelease->getName());
                                } elseif ( $release_id != $package_release_id ) 
{
                                        // release_id but not current one
                                        $t_url_anchor = 
$HTML->toSlug($package_name).'-'.$HTML->toSlug($FRSPackageRelease->getName()).'-title-content';
                                        $t_url = 
'/frs/?group_id='.$group_id.'&release_id='.$package_release_id.'#'.$t_url_anchor;
                                        $release_title = util_make_link($t_url, 
$package_name.' '.$FRSPackageRelease->getName());
-                                       echo html_e('div', array('class' => 
'frs_release_name_version'), $release_title.$ziplink);
+                                       $content .= html_e('div', array('class' 
=> 'frs_release_name_version'), $release_title.$ziplink);
                                }
 
                                // display linked roadmaps if any
@@ -163,7 +169,7 @@ EOS;
                                                                $rnum++;
                                                        }
                                                }
-                                               echo html_e('span', array(), 
html_e('b', array(), _('Linked Roadmaps')._(': ')).$urls, false);
+                                               $content .= html_e('span', 
array(), html_e('b', array(), _('Linked Roadmaps')._(': ')).$urls, false);
                                        }
                                }
 
@@ -174,7 +180,7 @@ EOS;
                                if (!$release_id || $release_id == 
$package_release_id) {
                                        // no release_id OR no release_id OR 
release_id is current one
                                        if ( !$res_files || count($res_files) < 
1 ) {
-                                               echo $HTML->information(_('No 
files'));
+                                               $content .= 
$HTML->information(_('No files'));
                                        } else {
                                                $cell_data = array();
                                                $cell_data[] = _('File Name');
@@ -184,7 +190,7 @@ EOS;
                                                $cell_data[] = _('Arch');
                                                $cell_data[] = _('Type');
                                                $cell_data[] = _('Latest');
-                                               echo 
$HTML->listTableTop($cell_data);
+                                               $content .= 
$HTML->listTableTop($cell_data);
                                                // now iterate and show the 
files in this release....
                                                foreach ($res_files as 
$res_file) {
                                                        $cells = array();
@@ -195,14 +201,16 @@ EOS;
                                                        $cells[][] = 
$res_file->getProcessor();
                                                        $cells[][] = 
$res_file->getFileType();
                                                        $cells[][] = 
util_make_link('/frs/download.php/latestfile/'.$FRSPackage->getID().'/'.urlencode($res_file->getName()),
 _('Latest version'));
-                                                       echo 
$HTML->multiTableRow(array(), $cells);
+                                                       $content .= 
$HTML->multiTableRow(array(), $cells);
                                                }
-                                               echo $HTML->listTableBottom();
+                                               $content .= 
$HTML->listTableBottom();
                                        }
-                                       echo $HTML->boxBottom();
+                                       $content .= $HTML->boxBottom();
                                }
                        } //for: release(s)
                } //if: release(s) available
+               $tabs .= $use_tabs ? html_e('div', array('id' => 
'tabber-'.$package_name_protected, 'class' => 'tabbertab'), $content) : 
$content;
        }
+       echo $use_tabs ? html_e('div', array('id' => 'tabber'), html_e('ul', 
array(), $tabmenu).$tabs) : $tabs;
        echo html_ac(html_ap() -1);
 }
diff --git a/src/etc/config.ini.d/defaults.ini 
b/src/etc/config.ini.d/defaults.ini
index 1b82835..e55a7b9 100644
--- a/src/etc/config.ini.d/defaults.ini
+++ b/src/etc/config.ini.d/defaults.ini
@@ -59,6 +59,7 @@ use_diary = no
 use_forum = yes
 use_forum_mail_replies = no
 use_frs = yes
+frs_with_tabs = no
 fti_config = fusionforge
 use_ftp = yes
 use_gateways = yes

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

Summary of changes:
 src/common/frs/views/listpackages.php | 34 +++++++++++++++++++++-------------
 src/etc/config.ini.d/defaults.ini     |  1 +
 2 files changed, 22 insertions(+), 13 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