changeset 7992:1e9c16b079fa

fix: issue2551341 - if @columns missing from an index url, the group headers colspan property = 0 Fix packaged templates with fix for group headers not spaning the whole table if @columns parameter is missing from the url.
author John Rouillard <rouilj@ieee.org>
date Sat, 25 May 2024 22:57:44 -0400
parents c80a67be2aad
children d614d8e1c09d
files CHANGES.txt doc/upgrading.txt share/roundup/templates/classic/html/issue.index.html share/roundup/templates/classic/html/user.index.html share/roundup/templates/devel/html/bug.index.html share/roundup/templates/devel/html/milestone.index.html share/roundup/templates/devel/html/task.index.html share/roundup/templates/devel/html/user.index.html share/roundup/templates/responsive/html/bug.index.html share/roundup/templates/responsive/html/milestone.index.html share/roundup/templates/responsive/html/task.index.html share/roundup/templates/responsive/html/user.index.html
diffstat 12 files changed, 39 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/CHANGES.txt	Sat May 25 22:32:30 2024 -0400
+++ b/CHANGES.txt	Sat May 25 22:57:44 2024 -0400
@@ -151,6 +151,9 @@
 - make classhelper link open in a new window by setting
   target="_blank". This prevents overwriting of current page with the
   classhelper if javascript is disabled. (John Rouillard)
+- issue2551341 - if @columns missing from an index url, the
+  group headers colspan property = 0. Add "or 100" in
+  stanza's so headers span all rows (up to 100).
 
 Features:
 
--- a/doc/upgrading.txt	Sat May 25 22:32:30 2024 -0400
+++ b/doc/upgrading.txt	Sat May 25 22:57:44 2024 -0400
@@ -356,6 +356,28 @@
 
 `You can see the diff in the Sourceforge web interface <https://sourceforge.net/p/roundup/code/ci/54eb12cd3be143b079809795dcb2f813f75a691c/tree/share/roundup/templates/devel/html/task.index.html?diff=c95870b2bbab822def6066498a4ef8634e76e0b3>`_.
 
+Make group headers span all columns (optional)
+----------------------------------------------
+
+In a number of index pages a version of the following TAL command
+appears::
+
+  <th tal:attributes="colspan python:len(request.columns)" class="group">
+
+If the ``@columns`` parameter (aka request.columns) is not set,
+all columns are shown. However the group header only spans the
+first column. Changing this to read::
+
+  <th tal:attributes="colspan python:len(request.columns) or 100" class="group">
+
+makes the group header span all the columns (if you have fewer
+than 100 columns). All of the supplied templates hae been
+upgraded with this change. `See issue 2551341 for details
+<https://issues.roundup-tracker.org/issue2551341>`_.
+
+Note the jinja2 template has the same issue, but the development
+team hasn't devised a solution.
+
 Use @current_user in Searches (optional)
 ----------------------------------------
 
--- a/share/roundup/templates/classic/html/issue.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/classic/html/issue.index.html	Sat May 25 22:57:44 2024 -0400
@@ -37,7 +37,7 @@
  <tal:block tal:repeat="i batch" condition=true>
   <tr tal:define="group python:[r[1] for r in request.group]"
       tal:condition="python:group and batch.propchanged(*group)">
-   <th tal:attributes="colspan python:len(request.columns)" class="group">
+   <th tal:attributes="colspan python:len(request.columns) or 100" class="group">
     <tal:block tal:repeat="g group">
      <tal:block i18n:translate="" tal:content="python:str(i[g]) or '(no %s set)'%g"/>
     </tal:block>
@@ -73,7 +73,7 @@
 
  <metal:index define-macro="batch-footer">
  <tr tal:condition="batch">
-  <th tal:attributes="colspan python:len(request.columns)">
+  <th tal:attributes="colspan python:len(request.columns) or 100">
    <table width="100%">
     <tr class="navigation">
      <th>
--- a/share/roundup/templates/classic/html/user.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/classic/html/user.index.html	Sat May 25 22:57:44 2024 -0400
@@ -75,7 +75,7 @@
 </tr>
 </tal:block>
  <tr tal:condition="batch">
-  <th tal:attributes="colspan python:len(request.columns)">
+  <th tal:attributes="colspan python:len(request.columns) or 100">
    <table width="100%">
     <tr class="navigation">
      <th>
--- a/share/roundup/templates/devel/html/bug.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/devel/html/bug.index.html	Sat May 25 22:57:44 2024 -0400
@@ -42,7 +42,7 @@
  <tal:block tal:repeat="i batch" condition="true">
   <tr tal:define="group python:[r[1] for r in request.group]"
       tal:condition="python:group and batch.propchanged(*group)">
-   <th tal:attributes="colspan python:len(request.columns)" class="group">
+   <th tal:attributes="colspan python:len(request.columns) or 100" class="group">
     <tal:block tal:repeat="g group">
      <tal:block tal:content="python:str(i[g]) or '(no %s set)'%g"/>
     </tal:block>
@@ -87,7 +87,7 @@
 
  <metal:index define-macro="batch-footer">
  <tr tal:condition="batch">
-  <th tal:attributes="colspan python:len(request.columns)">
+  <th tal:attributes="colspan python:len(request.columns) or 100">
    <table width="100%">
     <tr class="navigation">
      <th>
--- a/share/roundup/templates/devel/html/milestone.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/devel/html/milestone.index.html	Sat May 25 22:57:44 2024 -0400
@@ -31,7 +31,7 @@
  <tal:block tal:repeat="i batch" condition=true>
   <tr tal:define="group python:[r[1] for r in request.group]"
       tal:condition="python:group and batch.propchanged(*group)">
-   <th tal:attributes="colspan python:len(request.columns)" class="group">
+   <th tal:attributes="colspan python:len(request.columns) or 100" class="group">
     <tal:block tal:repeat="g group">
      <tal:block tal:content="python:str(i[g]) or '(no %s set)'%g"/>
     </tal:block>
@@ -52,7 +52,7 @@
 
  <metal:index define-macro="batch-footer">
  <tr tal:condition="batch">
-  <th tal:attributes="colspan python:len(request.columns)">
+  <th tal:attributes="colspan python:len(request.columns) or 100">
    <table width="100%">
     <tr class="navigation">
      <th>
--- a/share/roundup/templates/devel/html/task.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/devel/html/task.index.html	Sat May 25 22:57:44 2024 -0400
@@ -39,7 +39,7 @@
  <tal:block tal:repeat="i batch" condition="true">
   <tr tal:define="group python:[r[1] for r in request.group]"
       tal:condition="python:group and batch.propchanged(*group)">
-   <th tal:attributes="colspan python:len(request.columns)" class="group">
+   <th tal:attributes="colspan python:len(request.columns) or 100" class="group">
     <tal:block tal:repeat="g group">
      <tal:block tal:content="python:str(i[g]) or '(no %s set)'%g"/>
     </tal:block>
@@ -78,7 +78,7 @@
 
  <metal:index define-macro="batch-footer">
  <tr tal:condition="batch">
-  <th tal:attributes="colspan python:len(request.columns)">
+  <th tal:attributes="colspan python:len(request.columns) or 100">
    <table width="100%">
     <tr class="navigation">
      <th>
--- a/share/roundup/templates/devel/html/user.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/devel/html/user.index.html	Sat May 25 22:57:44 2024 -0400
@@ -69,7 +69,7 @@
 </tr>
 </tal:block>
  <tr tal:condition="batch">
-  <th tal:attributes="colspan python:len(request.columns)">
+  <th tal:attributes="colspan python:len(request.columns) or 100">
    <table width="100%">
     <tr class="navigation">
      <th>
--- a/share/roundup/templates/responsive/html/bug.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/responsive/html/bug.index.html	Sat May 25 22:57:44 2024 -0400
@@ -39,7 +39,7 @@
  <tal:block tal:repeat="i batch" condition="true">
   <tr tal:define="group python:[r[1] for r in request.group]"
       tal:condition="python:group and batch.propchanged(*group)">
-   <th tal:attributes="colspan python:len(request.columns)" class="group">
+   <th tal:attributes="colspan python:len(request.columns) or 100" class="group">
     <tal:block tal:repeat="g group">
      <tal:block tal:content="python:str(i[g]) or '(no %s set)'%g"/>
     </tal:block>
--- a/share/roundup/templates/responsive/html/milestone.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/responsive/html/milestone.index.html	Sat May 25 22:57:44 2024 -0400
@@ -31,7 +31,7 @@
  <tal:block tal:repeat="i batch" condition=true>
   <tr tal:define="group python:[r[1] for r in request.group]"
       tal:condition="python:group and batch.propchanged(*group)">
-   <th tal:attributes="colspan python:len(request.columns)" class="group">
+   <th tal:attributes="colspan python:len(request.columns) or 100" class="group">
     <tal:block tal:repeat="g group">
      <tal:block tal:content="python:str(i[g]) or '(no %s set)'%g"/>
     </tal:block>
--- a/share/roundup/templates/responsive/html/task.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/responsive/html/task.index.html	Sat May 25 22:57:44 2024 -0400
@@ -37,7 +37,7 @@
  <tal:block tal:repeat="i batch" condition="true">
   <tr tal:define="group python:[r[1] for r in request.group]"
       tal:condition="python:group and batch.propchanged(*group)">
-   <th tal:attributes="colspan python:len(request.columns)" class="group">
+   <th tal:attributes="colspan python:len(request.columns) or 100" class="group">
     <tal:block tal:repeat="g group">
      <tal:block tal:content="python:str(i[g]) or '(no %s set)'%g"/>
     </tal:block>
--- a/share/roundup/templates/responsive/html/user.index.html	Sat May 25 22:32:30 2024 -0400
+++ b/share/roundup/templates/responsive/html/user.index.html	Sat May 25 22:57:44 2024 -0400
@@ -70,7 +70,7 @@
 </tr>
 </tal:block>
  <tr tal:condition="batch">
-  <th tal:attributes="colspan python:len(request.columns)">
+  <th tal:attributes="colspan python:len(request.columns) or 100">
    <table>
     <tr class="navigation">
      <th>

Roundup Issue Tracker: http://roundup-tracker.org/