diff roundup/cgi/templating.py @ 8289:46886073c665

refactor: change method used to assign radiobuttons for boolean use setdefault('type', 'radiobutton') rather than hardcoding the value into the underlying self.input (input_html4) call. Also add test for undefined radiobutton.
author John Rouillard <rouilj@ieee.org>
date Sat, 18 Jan 2025 17:43:08 -0500
parents 6445e63bb423
children ae7fadcac9e1
line wrap: on
line diff
--- a/roundup/cgi/templating.py	Sat Jan 18 16:54:35 2025 -0500
+++ b/roundup/cgi/templating.py	Sat Jan 18 17:43:08 2025 -0500
@@ -2165,26 +2165,27 @@
             n_label += '</label>'
 
         checked = value and "checked" or ""
+        kwargs.setdefault("type", "radio")
         if value:
-            y_rb = self.input(type="radio", name=self._formname, value="yes",
+            y_rb = self.input(name=self._formname, value="yes",
                               checked="checked", id="%s_%s" % (
                                   self._formname, 'yes'), **kwargs)
 
-            n_rb = self.input(type="radio", name=self._formname,  value="no",
+            n_rb = self.input(name=self._formname,  value="no",
                               id="%s_%s" % (
                                   self._formname, 'no'), **kwargs)
         else:
-            y_rb = self.input(type="radio", name=self._formname, value="yes",
+            y_rb = self.input(name=self._formname, value="yes",
                               id="%s_%s" % (self._formname, 'yes'), **kwargs)
 
-            n_rb = self.input(type="radio", name=self._formname,  value="no",
+            n_rb = self.input(name=self._formname,  value="no",
                               checked="checked", id="%s_%s" % (
                                   self._formname, 'no'), **kwargs)
 
         if (u_label):
             if (u_label is True):  # it was set via u_label=True
                 u_label = ''       # make it empty but a string not boolean
-            u_rb = self.input(type="radio", name=self._formname,  value="",
+            u_rb = self.input(name=self._formname,  value="",
                               id="%s_%s" % (self._formname, 'unk'), **kwargs)
         else:
             # don't generate a trivalue radiobutton.

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