An issue was reported (see #1721) where, in docker containers where the
`LANG` was not being set, `Precious::App` would serve Mustache templates
in an ASCII encoding. This caused templates to error out.
In the past, this would have happened in environments where `LANG` was
not set and the Gollum applciation configuration had enabled MathJax.
Now, it happens even if MathJax is disabled because of a UTF-8 character
I added to the mobile navigation menu.
Basically, we should enforce a UTF-8 encoding from now on to avoid
runtime errors related to ASCII encoding.
* fixes#1723: Github Actions Supported
- This is to switch from Travis CI which is shutting down the org version,
and the .com version, a free account is limited.
- Switch test environment variable from TRAVIS to CI to be more generic.
* Adding jruby-9.2.18.0 to matrix for github actions
I made a mistake when I made `#title` a private method. I did not see
that it was being called from `layout.mustache` to generate the
`<title></title>` tag in the `<head></head>` of each page.
This fixes my error, and adds tests so the behaviour is more explicit.
* Fix tabnav styles on #create and #edit views
The Primer CSS-provided `tabnav` styles were not being used on the Edit
and Preview tabs on the create and edit pages.
After following Primer's documentation [1], it looks like we were using
the `aria-current` attribute incorrectly. Dynamically adding/removing
this attribute on the selected tab fixes the issue.
[1]: https://primer-css-git-next-inputs.primer.now.sh/css/components/navigation#tabnav
* Recompile static assets
It is more semantic to use a `<button>` tag in the place of an `<a>`
when there is no other page being linked to. In this circumstance, we're
using JavaScript to present a modal to the user on click.
This change makes the "Upload" and "Rename" buttons appear in the
browser's tab index.
There was a display issue, where navbar items's outline styles were
being cut off due to the parent `<nav>` element's margin and padding.
Fortunately, we can do away with the navbar wrapper div entirely. It was
not doing anything important except defining its children as
`TableObject` items. But we can just do this on the `<nav>` itself.
If the user has edit permissions, the "History" button is shown in a
button group with "Edit" and "Rename". If the user does not have edit
permissions, it's shown by itself.
This commit also renames the label from "Page History" to "History".
* Change footer and footer container spacing
This commit:
1. Removes the Primer `my-md-0` spacing from the `#wiki-footer`
container.
This gives it margins along the Y axis, spacing it out from
the sidebar and main wiki content containers on `md` and larger
screens.
2. Adds `px-4` padding to the `#footer-content`. which makes the
This makes the footer content inset the same way that sidebar
content is. This makes the content look more uniform on mobile
devices, when the sidebar and footer are presented one before
the other.
* Change spacing behaviour of `#wiki-sidebar`
To make `#wiki-sidebar` and `#wiki-footer` more similar, we can make
sure `px-4` padding is applied to the `-content` container, rather than
the outer container.
* If navbar is too wide, use overflow-x: scroll
* Add initial mobile nav menu
* Use CSS classes instead of IDs for jQuery events
* Change content x-axis padding for mobile devices
* Recompile assets for mobile menu feature
* Filter _Template content. Resolves#1603 and #1640.
* Introduces a Gollum::TemplateFilter class with methods to easily add _Template Filters.
* Adds support for relative _Template pages with fallback to _Template in root.