[PATCH] Make the templated footer configurable.

Mike McLean mikem at redhat.com
Sat Jun 6 20:35:45 UTC 2015


On 06/06/2015 03:53 PM, Ralph Bean wrote:
> We ran into a problem[1] where old footers would cause syntax errors when
> interpreted as templates.  This makes that behavior configurable and defaults
> to the old literal interpretation.

ack. thanks for the fix

> [1] https://lists.fedoraproject.org/pipermail/buildsys/2015-May/004751.html
> ---
>   www/conf/web.conf                 | 5 +++++
>   www/kojiweb/includes/footer.chtml | 5 +++++
>   www/kojiweb/wsgi_publisher.py     | 1 +
>   www/lib/kojiweb/util.py           | 1 +
>   4 files changed, 12 insertions(+)
>
> diff --git a/www/conf/web.conf b/www/conf/web.conf
> index 171349b..38f0b61 100644
> --- a/www/conf/web.conf
> +++ b/www/conf/web.conf
> @@ -24,3 +24,8 @@ LoginTimeout = 72
>   # Secret = CHANGE_ME
>
>   LibPath = /usr/share/koji-web/lib
> +
> +# If set to True, then the footer will be included literally.
> +# If False, then the footer will be included as another Kid Template.
> +# Defaults to True
> +LiteralFooter = True
> diff --git a/www/kojiweb/includes/footer.chtml b/www/kojiweb/includes/footer.chtml
> index 684e5a4..8e22022 100644
> --- a/www/kojiweb/includes/footer.chtml
> +++ b/www/kojiweb/includes/footer.chtml
> @@ -8,8 +8,13 @@
>
>   #set $localfooterpath=$util.themePath("extra-footer.html", local=True)
>   #if os.path.exists($localfooterpath)
> +#if $literalFooter
> +#set $localfooter="".join(open($localfooterpath).readlines())
> +#$localfooter
> +#else
>   #include $localfooterpath
>   #end if
> +#end if
>
>         </div>
>       </div>
> diff --git a/www/kojiweb/wsgi_publisher.py b/www/kojiweb/wsgi_publisher.py
> index 4f58b8e..e790815 100644
> --- a/www/kojiweb/wsgi_publisher.py
> +++ b/www/kojiweb/wsgi_publisher.py
> @@ -69,6 +69,7 @@ class Dispatcher(object):
>           ['KojiFilesURL', 'string', 'http://localhost/kojifiles'],
>           ['KojiTheme', 'string', None],
>           ['KojiGreeting', 'string', 'Welcome to Koji Web'],
> +        ['LiteralFooter', 'boolean', True],
>
>           ['WebPrincipal', 'string', None],
>           ['WebKeytab', 'string', '/etc/httpd.keytab'],
> diff --git a/www/lib/kojiweb/util.py b/www/lib/kojiweb/util.py
> index ddee29a..d2777b1 100644
> --- a/www/lib/kojiweb/util.py
> +++ b/www/lib/kojiweb/util.py
> @@ -54,6 +54,7 @@ def _initValues(environ, title='Build System Info', pageID='summary'):
>       values['title'] = title
>       values['pageID'] = pageID
>       values['currentDate'] = str(datetime.datetime.now())
> +    values['literalFooter'] = environ['koji.options'].get('LiteralFooter', True)
>       themeCache.clear()
>       themeInfo.clear()
>       themeInfo['name'] = environ['koji.options'].get('KojiTheme', None)
>



More information about the buildsys mailing list