Setup Piwik tracking of page loads. The global array _paq is used to
communicate commands to the piwik tracker via the script piwik.js which
is loaded asynchronously from the analytics server. Every time a ajax
call is made successfully and content is loaded in the page, analytics
data is captured and sent to the tracker (the loadPageContent function).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Allow all robots to access any part of the site. This may change in the
future, as the html snippets that are generated for the posts and pages
should not be directly indexed.
See: http://www.robotstxt.org/robotstxt.html
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
The file posts/.markdown-test.markdown uses all features of
markdown (excluding code blocks). This is handy to check the styling of
various things (figures, inline images, tables, headings, etc..).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Give more space to tags, as 'Read More' and 'See Comments' each take a
static amount of space but the number of tags for a given post varies.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
The file/images directory is meant for images used for posts. They will
not be application cached (which is what one would want as otherwise the
application cache would become too large).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Instead of having a symbolic link from ./site to the executable in
dist/build/blog-rekahsoft-ca/blog-rekahsoft-ca, a separate test
running script ./site-test and a Makefile (which is redundant), have a
single shell script that wraps the blog-rekahsoft-ca executable and adds
a test option along with a switch to start selenium (-s|--run-selenium).
Updated README accordingly and removed unnecessary Makefile, and
site-test. Moved the symbolic link ./site to ./%site.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
When the site is viewed without javascript the navbar forever animates
and the opacity of #page-contents is set, thus making the no javascript
message display not acceptable. To get around this a noscript tag in the
header is added that sets specific CSS in the case the there is indeed
no javascript.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Now displays multiple error messages one after the other. Also fixed an
issue where when there is a status message being display and another
error happens, the status message slides up then down again with the new
message.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Added theming for tables, inline images, and figures. Inline images are
specified using the markdown syntax "![link text](link_href)" somewhere
within a paragraph. When a link is specified with the same syntax given
previously, Pandoc will generate it as a figure. Figures are displayed
across the whole width of the post and inline-images floated to the
right. Some javascript was added to js/default.js to enable the ability
to click to toggle fullscreen on images and figures.
Code blocks were previously themed but the styling needed to be updated
due to how an update to how pandoc generates code blocks.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
The type of the function `readPandocWith` changed slightly between
versions. This commit fixes the minor issue it caused.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
While testing I had the router allow infinite loops, but had support all
along to stop them if they occur. Though a message signaled to the user
using a status message would be mice, currently just log to console.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
In firefox, when going to site from another page was unable to go back.
The exact reason this happens in firefox and not in chromium is still a
mystery.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Numbered bullets didn't stand out and text wasn't formatted correctly
around them (within ol > li's). Also changed the amount of margin
spacing around nested ol/ul elements.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
For some reason changing from skeleton 1.2 -> 2.04 broke the "tagged"
image displayed before h1's on the tag pages.
See commit 06114cf
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
This is due to a change from skeleton 1.2 -> 2.04 that was missed in
commit 06114cf (last commit).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Skeleton switched from having 16 columns to 12. A few improvements to
skeleton also required a little tweaking of the current css as well as a
cleanup of templates/default.html.
Note: templates/default-nojs.html was not updated though an update will
be trivial. This is only relevant if the nojs section of the site is
revived.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Now when './site deploy' is run the empty files that are left over from
Hakyll generating the site are removed. Also rsync now uses verbose
output so that its easy to see what files are updated on the server.
Note, because the commands run by './site deploy' include 'echo' and
'find' this requires a posix environment (and thus can't be built on
Windows without cygwin).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Added spans that will show "First Page", "Previous Page", "Next Page",
"Last Page" when its unavailable. Eg. the user is on the last page so
there should be no link to click and instead just place holder text.
The css uses flexbox display and thus only works in modern
browsers (see: http://caniuse.com/#feat=flexbox). This may be changed in
the future as to support more browsers (IE9+ specifically).
Images/Icons for "First Page", "Previous Page", "Next Page", "Last Page"
have yet to be set (though would preferably be done in pure CSS).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
This post is just a filler post (lorem ipsum) to test pagination (along
with a couple others - which soon will be removed).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Stopped using git submodules (for jquery, jquery-address, skeleton, and
any other libraries used for this site) but forgot to remove the
.gitmodules file. This commit removed said empty file.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
The only checks that fail are the 'insecure regexp' checks (which in
this case are not insecure) as well as a few functions that take unused
parameters.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Wrapped client side url router in a function that returns an object (the
interface for the router). Because javascript passes by reference,
passing the array of handler/route objects to the router was an issue
so the array of routes used for this application was moved to within the
wrapper function. In the future this should be changed so
the array is supplied and can be modified with a method like addRoute.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Re-factored how urls are handled. Specifically, made it more clear which
urls are rewritten when as well as what to run beforeSending, onError
and onSuccess.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Use the unicode arrow '2192' infront of ol > li bullets. This must have
been missed while porting css from sass to clay.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Both the clay css and templates/partials/post.html added a horizontal
rule at the top of each post footer (using the css border property and
hr respectively). Opted for using the clay css one as its used on
multiple pages (eg. blog pages and tag pages).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
When a page listed in the navigation was opened in a new page/tab, the
url used to be the whole path (/#/pages/pagename.html). This commit
enables rewriting of the urls (using jquery address) so that the client
always sees a pretty url (eg /#/blog.html instead of
/#/pages/blog.html).
Also fixed issue introduced last commit (b6d6830) where when clicking on
post or tag links failed to activate the blog menuitem.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Previously, all anchor clicks within #page-content was handled by a
event listener that checked whether the anchor's href was to an
'external' url and if so loaded it directly. Otherwise it passed the
value of the anchors href attribute to the jquery address plugin (via
the $.address.value function).
This unfortunately cause clicking on anchors to work fine but when
opening them in a new page or window (or copying the link) caused the
link to reference the html snippet of the page/post instead of the
entire application.
To rectify this, this commit simply transforms internal urls href
attribute after the snippet is loaded into #page-content.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Excluding insecure regexps (used to check urls - which is not a security
risk in this case). In a future commit this can be fixed by adding
comments ignoring the jslint errors or by making the regexps more
specific.
Also in the ajax call in loadPageContent the callbacks fore beforeSend
and error have unused parameters (xhr and settings, though the error
callback uses its second argument status).
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Commit cd5ae7b652 (the switch to clay)
introduced a error rendering source code in posts.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>