diff --git a/SCREENSHOTS.markdown b/SCREENSHOTS.markdown new file mode 100644 index 000000000..b9eb0f328 --- /dev/null +++ b/SCREENSHOTS.markdown @@ -0,0 +1,28 @@ +--- +title: hledger screenshots +--- + +# hledger screenshots + +Mouse over for captions, click to enlarge. + + + + + + + + + + + + + + + + + + diff --git a/SCREENSHOTS.rst b/SCREENSHOTS.rst deleted file mode 100644 index f66e5966b..000000000 --- a/SCREENSHOTS.rst +++ /dev/null @@ -1,52 +0,0 @@ ---- -title: hledger screenshots ---- -hledger screenshots -=================== - -.. .................................................................... -.. raw:: html - - - -Basic command-line reports, like ledger: - -.. image:: hledger-screen-1.png - :width: 571px - :height: 400px - -.. .................................................................... -.. raw:: html - -

- -The interactive curses interface ("hledger ui"): - -.. image:: sshot.png - :width: 802px - :height: 378px - -.. .................................................................... -.. raw:: html - -

- -A time dashboard in emacs. The upper window displays today's time report every minute (using ansi-term, watch, a helper script, and hledger invoked via "hours" symlink.) The lower window is viewing the timelog file, to tweak clock-ins/clock-outs made with C-x t i and C-x t o. (`ledgerutils.el `_ has some related bits.): - -.. image:: watchhours.png - :width: 756px - :height: 502px - -.. .................................................................... -.. raw:: html - -

- -Viewing a year of monthly expense charts in emacs. See examples in http://hledger.org/MANUAL#chart . - -.. image:: hledger-charts-2.png - :width: 1675px - :height: 1004px - :scale: 50 - :target: hledger-charts-2.png - diff --git a/site/hakyll.hs b/site/hakyll.hs index d750664d4..cf2cb9337 100644 --- a/site/hakyll.hs +++ b/site/hakyll.hs @@ -21,12 +21,31 @@ main = hakyllWithConfiguration cfg $ do ["README.rst" ,"README2.rst" ,"NEWS.rst" - ,"SCREENSHOTS.rst" + ,"SCREENSHOTS.markdown" ,"MANUAL.markdown" ,"CONTRIBUTORS.rst" ] mapM_ static ["style.css" + ,"highslide/highslide.js" + ,"highslide/highslide.css" + ,"highslide/highslide-ie6.css" + ,"highslide/graphics/zoomin.cur" + ,"highslide/graphics/zoomout.cur" + ,"highslide/graphics/outlines/rounded-black.png" + ,"highslide/graphics/outlines/rounded-white.png" + ,"highslide/graphics/outlines/beveled.png" + ,"highslide/graphics/outlines/drop-shadow.png" + ,"highslide/graphics/outlines/glossy-dark.png" + ,"highslide/graphics/outlines/outer-glow.png" + ,"highslide/graphics/loader.gif" + ,"highslide/graphics/loader.white.gif" + ,"highslide/graphics/icon.gif" + ,"highslide/graphics/resize.gif" + ,"highslide/graphics/fullexpand.gif" + ,"highslide/graphics/geckodimmer.png" + ,"highslide/graphics/close.png" + ,"highslide/graphics/closeX.png" ,"sshot.png" ,"watchhours.png" ,"hledger-screen-1.png" diff --git a/site/highslide/graphics/close.png b/site/highslide/graphics/close.png new file mode 100644 index 000000000..4de4396d4 Binary files /dev/null and b/site/highslide/graphics/close.png differ diff --git a/site/highslide/graphics/closeX.png b/site/highslide/graphics/closeX.png new file mode 100644 index 000000000..cf5d01817 Binary files /dev/null and b/site/highslide/graphics/closeX.png differ diff --git a/site/highslide/graphics/fullexpand.gif b/site/highslide/graphics/fullexpand.gif new file mode 100644 index 000000000..26d9ed02b Binary files /dev/null and b/site/highslide/graphics/fullexpand.gif differ diff --git a/site/highslide/graphics/geckodimmer.png b/site/highslide/graphics/geckodimmer.png new file mode 100644 index 000000000..309bb2783 Binary files /dev/null and b/site/highslide/graphics/geckodimmer.png differ diff --git a/site/highslide/graphics/icon.gif b/site/highslide/graphics/icon.gif new file mode 100644 index 000000000..b74a073c1 Binary files /dev/null and b/site/highslide/graphics/icon.gif differ diff --git a/site/highslide/graphics/loader.gif b/site/highslide/graphics/loader.gif new file mode 100644 index 000000000..0b31f6f9e Binary files /dev/null and b/site/highslide/graphics/loader.gif differ diff --git a/site/highslide/graphics/loader.white.gif b/site/highslide/graphics/loader.white.gif new file mode 100644 index 000000000..f2a1bc0c6 Binary files /dev/null and b/site/highslide/graphics/loader.white.gif differ diff --git a/site/highslide/graphics/outlines/beveled.png b/site/highslide/graphics/outlines/beveled.png new file mode 100644 index 000000000..fc428f415 Binary files /dev/null and b/site/highslide/graphics/outlines/beveled.png differ diff --git a/site/highslide/graphics/outlines/drop-shadow.png b/site/highslide/graphics/outlines/drop-shadow.png new file mode 100644 index 000000000..0186c2ee4 Binary files /dev/null and b/site/highslide/graphics/outlines/drop-shadow.png differ diff --git a/site/highslide/graphics/outlines/glossy-dark.png b/site/highslide/graphics/outlines/glossy-dark.png new file mode 100644 index 000000000..3c64c0d41 Binary files /dev/null and b/site/highslide/graphics/outlines/glossy-dark.png differ diff --git a/site/highslide/graphics/outlines/outer-glow.png b/site/highslide/graphics/outlines/outer-glow.png new file mode 100644 index 000000000..288d43fef Binary files /dev/null and b/site/highslide/graphics/outlines/outer-glow.png differ diff --git a/site/highslide/graphics/outlines/rounded-black.png b/site/highslide/graphics/outlines/rounded-black.png new file mode 100644 index 000000000..a77e65d8f Binary files /dev/null and b/site/highslide/graphics/outlines/rounded-black.png differ diff --git a/site/highslide/graphics/outlines/rounded-white.png b/site/highslide/graphics/outlines/rounded-white.png new file mode 100644 index 000000000..0d4b8176f Binary files /dev/null and b/site/highslide/graphics/outlines/rounded-white.png differ diff --git a/site/highslide/graphics/resize.gif b/site/highslide/graphics/resize.gif new file mode 100644 index 000000000..9100de776 Binary files /dev/null and b/site/highslide/graphics/resize.gif differ diff --git a/site/highslide/graphics/zoomin.cur b/site/highslide/graphics/zoomin.cur new file mode 100644 index 000000000..cb7912438 Binary files /dev/null and b/site/highslide/graphics/zoomin.cur differ diff --git a/site/highslide/graphics/zoomout.cur b/site/highslide/graphics/zoomout.cur new file mode 100644 index 000000000..acf619996 Binary files /dev/null and b/site/highslide/graphics/zoomout.cur differ diff --git a/site/highslide/highslide-ie6.css b/site/highslide/highslide-ie6.css new file mode 100644 index 000000000..e7adc1f2f --- /dev/null +++ b/site/highslide/highslide-ie6.css @@ -0,0 +1,71 @@ +.closebutton { + /* NOTE! This URL is relative to the HTML page, not the CSS */ + filter:progid:DXImageTransform.Microsoft.AlphaImageLoader( + src='../highslide/graphics/close.png', sizingMethod='scale'); + + background: none; + cursor: hand; +} + +/* Viewport fixed hack */ +.highslide-viewport { + position: absolute; + left: expression( ( ( ignoreMe1 = document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ) ) + 'px' ); + top: expression( ( ignoreMe2 = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ) + 'px' ); + width: expression( ( ( ignoreMe3 = document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth ) ) + 'px' ); + height: expression( ( ( ignoreMe4 = document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight ) ) + 'px' ); +} + +/* Thumbstrip PNG fix */ +.highslide-scroll-down, .highslide-scroll-up { + position: relative; + overflow: hidden; +} +.highslide-scroll-down div, .highslide-scroll-up div { + /* NOTE! This URL is relative to the HTML page, not the CSS */ + filter:progid:DXImageTransform.Microsoft.AlphaImageLoader( + src='../highslide/graphics/scrollarrows.png', sizingMethod='scale'); + background: none !important; + position: absolute; + cursor: hand; + width: 75px; + height: 75px !important; +} +.highslide-thumbstrip-horizontal .highslide-scroll-down div { + left: -50px; + top: -15px; +} +.highslide-thumbstrip-horizontal .highslide-scroll-up div { + top: -15px; +} +.highslide-thumbstrip-vertical .highslide-scroll-down div { + top: -50px; +} + +/* Thumbstrip marker arrow trasparent background fix */ +.highslide-thumbstrip .highslide-marker { + border-color: white; /* match the background */ +} +.dark .highslide-thumbstrip-horizontal .highslide-marker { + border-color: #111; +} +.highslide-viewport .highslide-marker { + border-color: #333; +} +.highslide-thumbstrip { + float: left; +} + +/* Positioning fixes for the control bar */ +.text-controls .highslide-controls { + width: 480px; +} +.text-controls a span { + width: 4em; +} +.text-controls .highslide-full-expand a span { + width: 0; +} +.text-controls .highslide-close a span { + width: 0; +} diff --git a/site/highslide/highslide.css b/site/highslide/highslide.css new file mode 100644 index 000000000..de37a4304 --- /dev/null +++ b/site/highslide/highslide.css @@ -0,0 +1,885 @@ +/** +* @file: highslide.css +* @version: 4.1.8 +*/ +.highslide-container div { + font-family: Verdana, Helvetica; + font-size: 10pt; +} +.highslide-container table { + background: none; +} +.highslide { + outline: none; + text-decoration: none; +} +.highslide img { + border: 2px solid silver; +} +.highslide:hover img { + border-color: gray; +} +.highslide-active-anchor img { + visibility: hidden; +} +.highslide-gallery .highslide-active-anchor img { + border-color: black; + visibility: visible; + cursor: default; +} +.highslide-image { + border-width: 2px; + border-style: solid; + border-color: white; + background: gray; +} +.highslide-wrapper, .highslide-outline { + background: white; +} +.glossy-dark { + background: #111; +} + +.highslide-image-blur { +} +.highslide-number { + font-weight: bold; + color: gray; + font-size: .9em; +} +.highslide-caption { + display: none; + font-size: 1em; + padding: 5px; + /*background: white;*/ +} +.highslide-heading { + display: none; + font-weight: bold; + margin: 0.4em; +} +.highslide-dimming { + position: absolute; + background: black; +} +a.highslide-full-expand { + background: url(graphics/fullexpand.gif) no-repeat; + display: block; + margin: 0 10px 10px 0; + width: 34px; + height: 34px; +} +.highslide-loading { + display: block; + color: black; + font-size: 9px; + font-weight: bold; + text-transform: uppercase; + text-decoration: none; + padding: 3px; + border: 1px solid white; + background-color: white; + padding-left: 22px; + background-image: url(graphics/loader.white.gif); + background-repeat: no-repeat; + background-position: 3px 1px; +} +a.highslide-credits, +a.highslide-credits i { + padding: 2px; + color: silver; + text-decoration: none; + font-size: 10px; +} +a.highslide-credits:hover, +a.highslide-credits:hover i { + color: white; + background-color: gray; +} +.highslide-move, .highslide-move * { + cursor: move; +} + +.highslide-viewport { + display: none; + position: fixed; + width: 100%; + height: 100%; + z-index: 1; + background: none; + left: 0; + top: 0; +} +.highslide-overlay { + display: none; +} +.hidden-container { + display: none; +} +/* Example of a semitransparent, offset closebutton */ +.closebutton { + position: relative; + top: -15px; + left: 15px; + width: 30px; + height: 30px; + cursor: pointer; + background: url(graphics/close.png); + /* NOTE! For IE6, you also need to update the highslide-ie6.css file. */ +} + +/*****************************************************************************/ +/* Thumbnail boxes for the galleries. */ +/* Remove these if you are not using a gallery. */ +/*****************************************************************************/ +.highslide-gallery ul { + list-style-type: none; + margin: 0; + padding: 0; +} +.highslide-gallery ul li { + display: block; + position: relative; + float: left; + width: 106px; + height: 106px; + border: 1px solid silver; + background: #ededed; + margin: 2px; + line-height: 0; + overflow: hidden; +} +.highslide-gallery ul a { + position: absolute; + top: 50%; + left: 50%; +} +.highslide-gallery ul img { + position: relative; + top: -50%; + left: -50%; +} +html>/**/body .highslide-gallery ul li { + display: table; + text-align: center; +} +html>/**/body .highslide-gallery ul li { + text-align: center; +} +html>/**/body .highslide-gallery ul a { + position: static; + display: table-cell; + vertical-align: middle; +} +html>/**/body .highslide-gallery ul img { + position: static; +} + +/*****************************************************************************/ +/* Controls for the galleries. */ +/* Remove these if you are not using a gallery */ +/*****************************************************************************/ +.highslide-controls { + width: 195px; + height: 40px; + background: url(graphics/controlbar-white.gif) 0 -90px no-repeat; + margin: 20px 15px 10px 0; +} +.highslide-controls ul { + position: relative; + left: 15px; + height: 40px; + list-style: none; + margin: 0; + padding: 0; + background: url(graphics/controlbar-white.gif) right -90px no-repeat; + +} +.highslide-controls li { + float: left; + padding: 5px 0; + margin:0; + list-style: none; +} +.highslide-controls a { + background-image: url(graphics/controlbar-white.gif); + display: block; + float: left; + height: 30px; + width: 30px; + outline: none; +} +.highslide-controls a.disabled { + cursor: default; +} +.highslide-controls a.disabled span { + cursor: default; +} +.highslide-controls a span { + /* hide the text for these graphic buttons */ + display: none; + cursor: pointer; +} + + +/* The CSS sprites for the controlbar - see http://www.google.com/search?q=css+sprites */ +.highslide-controls .highslide-previous a { + background-position: 0 0; +} +.highslide-controls .highslide-previous a:hover { + background-position: 0 -30px; +} +.highslide-controls .highslide-previous a.disabled { + background-position: 0 -60px !important; +} +.highslide-controls .highslide-play a { + background-position: -30px 0; +} +.highslide-controls .highslide-play a:hover { + background-position: -30px -30px; +} +.highslide-controls .highslide-play a.disabled { + background-position: -30px -60px !important; +} +.highslide-controls .highslide-pause a { + background-position: -60px 0; +} +.highslide-controls .highslide-pause a:hover { + background-position: -60px -30px; +} +.highslide-controls .highslide-next a { + background-position: -90px 0; +} +.highslide-controls .highslide-next a:hover { + background-position: -90px -30px; +} +.highslide-controls .highslide-next a.disabled { + background-position: -90px -60px !important; +} +.highslide-controls .highslide-move a { + background-position: -120px 0; +} +.highslide-controls .highslide-move a:hover { + background-position: -120px -30px; +} +.highslide-controls .highslide-full-expand a { + background-position: -150px 0; +} +.highslide-controls .highslide-full-expand a:hover { + background-position: -150px -30px; +} +.highslide-controls .highslide-full-expand a.disabled { + background-position: -150px -60px !important; +} +.highslide-controls .highslide-close a { + background-position: -180px 0; +} +.highslide-controls .highslide-close a:hover { + background-position: -180px -30px; +} + +/*****************************************************************************/ +/* Styles for the HTML popups */ +/* Remove these if you are not using Highslide HTML */ +/*****************************************************************************/ +.highslide-maincontent { + display: none; +} +.highslide-html { + background-color: white; +} +.highslide-html-content { + display: none; + width: 400px; + padding: 0 5px 5px 5px; +} +.highslide-header { + padding-bottom: 5px; +} +.highslide-header ul { + margin: 0; + padding: 0; + text-align: right; +} +.highslide-header ul li { + display: inline; + padding-left: 1em; +} +.highslide-header ul li.highslide-previous, .highslide-header ul li.highslide-next { + display: none; +} +.highslide-header a { + font-weight: bold; + color: gray; + text-transform: uppercase; + text-decoration: none; +} +.highslide-header a:hover { + color: black; +} +.highslide-header .highslide-move a { + cursor: move; +} +.highslide-footer { + height: 16px; +} +.highslide-footer .highslide-resize { + display: block; + float: right; + margin-top: 5px; + height: 11px; + width: 11px; + background: url(graphics/resize.gif) no-repeat; +} +.highslide-footer .highslide-resize span { + display: none; +} +.highslide-body { +} +.highslide-resize { + cursor: nw-resize; +} + +/*****************************************************************************/ +/* Styles for the Individual wrapper class names. */ +/* See www.highslide.com/ref/hs.wrapperClassName */ +/* You can safely remove the class name themes you don't use */ +/*****************************************************************************/ + +/* hs.wrapperClassName = 'draggable-header' */ +.draggable-header .highslide-header { + height: 18px; + border-bottom: 1px solid #dddddd; +} +.draggable-header .highslide-heading { + position: absolute; + margin: 2px 0.4em; +} + +.draggable-header .highslide-header .highslide-move { + cursor: move; + display: block; + height: 16px; + position: absolute; + right: 24px; + top: 0; + width: 100%; + z-index: 1; +} +.draggable-header .highslide-header .highslide-move * { + display: none; +} +.draggable-header .highslide-header .highslide-close { + position: absolute; + right: 2px; + top: 2px; + z-index: 5; + padding: 0; +} +.draggable-header .highslide-header .highslide-close a { + display: block; + height: 16px; + width: 16px; + background-image: url(graphics/closeX.png); +} +.draggable-header .highslide-header .highslide-close a:hover { + background-position: 0 16px; +} +.draggable-header .highslide-header .highslide-close span { + display: none; +} +.draggable-header .highslide-maincontent { + padding-top: 1em; +} + +/* hs.wrapperClassName = 'titlebar' */ +.titlebar .highslide-header { + height: 18px; + border-bottom: 1px solid #dddddd; +} +.titlebar .highslide-heading { + position: absolute; + width: 90%; + margin: 1px 0 1px 5px; + color: #666666; +} + +.titlebar .highslide-header .highslide-move { + cursor: move; + display: block; + height: 16px; + position: absolute; + right: 24px; + top: 0; + width: 100%; + z-index: 1; +} +.titlebar .highslide-header .highslide-move * { + display: none; +} +.titlebar .highslide-header li { + position: relative; + top: 3px; + z-index: 2; + padding: 0 0 0 1em; +} +.titlebar .highslide-maincontent { + padding-top: 1em; +} + +/* hs.wrapperClassName = 'no-footer' */ +.no-footer .highslide-footer { + display: none; +} + +/* hs.wrapperClassName = 'wide-border' */ +.wide-border { + background: white; +} +.wide-border .highslide-image { + border-width: 10px; +} +.wide-border .highslide-caption { + padding: 0 10px 10px 10px; +} + +/* hs.wrapperClassName = 'borderless' */ +.borderless .highslide-image { + border: none; +} +.borderless .highslide-caption { + border-bottom: 1px solid white; + border-top: 1px solid white; + background: silver; +} + +/* hs.wrapperClassName = 'outer-glow' */ +.outer-glow { + background: #444; +} +.outer-glow .highslide-image { + border: 5px solid #444444; +} +.outer-glow .highslide-caption { + border: 5px solid #444444; + border-top: none; + padding: 5px; + background-color: gray; +} + +/* hs.wrapperClassName = 'colored-border' */ +.colored-border { + background: white; +} +.colored-border .highslide-image { + border: 2px solid green; +} +.colored-border .highslide-caption { + border: 2px solid green; + border-top: none; +} + +/* hs.wrapperClassName = 'dark' */ +.dark { + background: #111; +} +.dark .highslide-image { + border-color: black black #202020 black; + background: gray; +} +.dark .highslide-caption { + color: white; + background: #111; +} +.dark .highslide-controls, +.dark .highslide-controls ul, +.dark .highslide-controls a { + background-image: url(graphics/controlbar-black-border.gif); +} + +/* hs.wrapperClassName = 'floating-caption' */ +.floating-caption .highslide-caption { + position: absolute; + padding: 1em 0 0 0; + background: none; + color: white; + border: none; + font-weight: bold; +} + +/* hs.wrapperClassName = 'controls-in-heading' */ +.controls-in-heading .highslide-heading { + color: gray; + font-weight: bold; + height: 20px; + overflow: hidden; + cursor: default; + padding: 0 0 0 22px; + margin: 0; + background: url(graphics/icon.gif) no-repeat 0 1px; +} +.controls-in-heading .highslide-controls { + width: 105px; + height: 20px; + position: relative; + margin: 0; + top: -23px; + left: 7px; + background: none; +} +.controls-in-heading .highslide-controls ul { + position: static; + height: 20px; + background: none; +} +.controls-in-heading .highslide-controls li { + padding: 0; +} +.controls-in-heading .highslide-controls a { + background-image: url(graphics/controlbar-white-small.gif); + height: 20px; + width: 20px; +} + +.controls-in-heading .highslide-controls .highslide-move { + display: none; +} + +.controls-in-heading .highslide-controls .highslide-previous a { + background-position: 0 0; +} +.controls-in-heading .highslide-controls .highslide-previous a:hover { + background-position: 0 -20px; +} +.controls-in-heading .highslide-controls .highslide-previous a.disabled { + background-position: 0 -40px !important; +} +.controls-in-heading .highslide-controls .highslide-play a { + background-position: -20px 0; +} +.controls-in-heading .highslide-controls .highslide-play a:hover { + background-position: -20px -20px; +} +.controls-in-heading .highslide-controls .highslide-play a.disabled { + background-position: -20px -40px !important; +} +.controls-in-heading .highslide-controls .highslide-pause a { + background-position: -40px 0; +} +.controls-in-heading .highslide-controls .highslide-pause a:hover { + background-position: -40px -20px; +} +.controls-in-heading .highslide-controls .highslide-next a { + background-position: -60px 0; +} +.controls-in-heading .highslide-controls .highslide-next a:hover { + background-position: -60px -20px; +} +.controls-in-heading .highslide-controls .highslide-next a.disabled { + background-position: -60px -40px !important; +} +.controls-in-heading .highslide-controls .highslide-full-expand a { + background-position: -100px 0; +} +.controls-in-heading .highslide-controls .highslide-full-expand a:hover { + background-position: -100px -20px; +} +.controls-in-heading .highslide-controls .highslide-full-expand a.disabled { + background-position: -100px -40px !important; +} +.controls-in-heading .highslide-controls .highslide-close a { + background-position: -120px 0; +} +.controls-in-heading .highslide-controls .highslide-close a:hover { + background-position: -120px -20px; +} + +/*****************************************************************************/ +/* Styles for text based controls. */ +/* You can safely remove this if you don't use text based controls */ +/*****************************************************************************/ + +.text-controls .highslide-controls { + width: auto; + height: auto; + margin: 0; + text-align: center; + background: none; +} +.text-controls ul { + position: static; + background: none; + height: auto; + left: 0; +} +.text-controls .highslide-move { + display: none; +} +.text-controls li { + background-image: url(graphics/controlbar-text-buttons.png); + background-position: right top !important; + padding: 0; + margin-left: 15px; + display: block; + width: auto; +} +.text-controls a { + background: url(graphics/controlbar-text-buttons.png) no-repeat; + background-position: left top !important; + position: relative; + left: -10px; + display: block; + width: auto; + height: auto; + text-decoration: none !important; +} +.text-controls a span { + background: url(graphics/controlbar-text-buttons.png) no-repeat; + margin: 1px 2px 1px 10px; + display: block; + min-width: 4em; + height: 18px; + line-height: 18px; + padding: 1px 0 1px 18px; + color: #333; + font-family: "Trebuchet MS", Arial, sans-serif; + font-size: 12px; + font-weight: bold; + white-space: nowrap; +} +.text-controls .highslide-next { + margin-right: 1em; +} +.text-controls .highslide-full-expand a span { + min-width: 0; + margin: 1px 0; + padding: 1px 0 1px 10px; +} +.text-controls .highslide-close a span { + min-width: 0; +} +.text-controls a:hover span { + color: black; +} +.text-controls a.disabled span { + color: #999; +} + +.text-controls .highslide-previous span { + background-position: 0 -40px; +} +.text-controls .highslide-previous a.disabled { + background-position: left top !important; +} +.text-controls .highslide-previous a.disabled span { + background-position: 0 -140px; +} +.text-controls .highslide-play span { + background-position: 0 -60px; +} +.text-controls .highslide-play a.disabled { + background-position: left top !important; +} +.text-controls .highslide-play a.disabled span { + background-position: 0 -160px; +} +.text-controls .highslide-pause span { + background-position: 0 -80px; +} +.text-controls .highslide-next span { + background-position: 0 -100px; +} +.text-controls .highslide-next a.disabled { + background-position: left top !important; +} +.text-controls .highslide-next a.disabled span { + background-position: 0 -200px; +} +.text-controls .highslide-full-expand span { + background: none; +} +.text-controls .highslide-full-expand a.disabled { + background-position: left top !important; +} +.text-controls .highslide-close span { + background-position: 0 -120px; +} + + +/*****************************************************************************/ +/* Styles for the thumbstrip. */ +/* See www.highslide.com/ref/hs.addSlideshow */ +/* You can safely remove this if you don't use a thumbstrip */ +/*****************************************************************************/ + +.highslide-thumbstrip { + height: 100%; +} +.highslide-thumbstrip div { + overflow: hidden; +} +.highslide-thumbstrip table { + position: relative; + padding: 0; + border-collapse: collapse; +} +.highslide-thumbstrip td { + padding: 1px; + /*text-align: center;*/ +} +.highslide-thumbstrip a { + outline: none; +} +.highslide-thumbstrip img { + display: block; + border: 1px solid gray; + margin: 0 auto; +} +.highslide-thumbstrip .highslide-active-anchor img { + visibility: visible; +} +.highslide-thumbstrip .highslide-marker { + position: absolute; + width: 0; + height: 0; + border-width: 0; + border-style: solid; + border-color: transparent; /* change this to actual background color in highslide-ie6.css */ +} +.highslide-thumbstrip-horizontal div { + width: auto; + /* width: 100% breaks in small strips in IE */ +} +.highslide-thumbstrip-horizontal .highslide-scroll-up { + display: none; + position: absolute; + top: 3px; + left: 3px; + width: 25px; + height: 42px; +} +.highslide-thumbstrip-horizontal .highslide-scroll-up div { + margin-bottom: 10px; + cursor: pointer; + background: url(graphics/scrollarrows.png) left center no-repeat; + height: 42px; +} +.highslide-thumbstrip-horizontal .highslide-scroll-down { + display: none; + position: absolute; + top: 3px; + right: 3px; + width: 25px; + height: 42px; +} +.highslide-thumbstrip-horizontal .highslide-scroll-down div { + margin-bottom: 10px; + cursor: pointer; + background: url(graphics/scrollarrows.png) center right no-repeat; + height: 42px; +} +.highslide-thumbstrip-horizontal table { + margin: 2px 0 10px 0; +} +.highslide-viewport .highslide-thumbstrip-horizontal table { + margin-left: 10px; +} +.highslide-thumbstrip-horizontal img { + width: auto; + height: 40px; +} +.highslide-thumbstrip-horizontal .highslide-marker { + top: 47px; + border-left-width: 6px; + border-right-width: 6px; + border-bottom: 6px solid gray; +} +.highslide-viewport .highslide-thumbstrip-horizontal .highslide-marker { + margin-left: 10px; +} +.dark .highslide-thumbstrip-horizontal .highslide-marker, .highslide-viewport .highslide-thumbstrip-horizontal .highslide-marker { + border-bottom-color: white !important; +} + +.highslide-thumbstrip-vertical-overlay { + overflow: hidden !important; +} +.highslide-thumbstrip-vertical div { + height: 100%; +} +.highslide-thumbstrip-vertical a { + display: block; +} +.highslide-thumbstrip-vertical .highslide-scroll-up { + display: none; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 25px; +} +.highslide-thumbstrip-vertical .highslide-scroll-up div { + margin-left: 10px; + cursor: pointer; + background: url(graphics/scrollarrows.png) top center no-repeat; + height: 25px; +} +.highslide-thumbstrip-vertical .highslide-scroll-down { + display: none; + position: absolute; + bottom: 0; + left: 0; + width: 100%; + height: 25px; +} +.highslide-thumbstrip-vertical .highslide-scroll-down div { + margin-left: 10px; + cursor: pointer; + background: url(graphics/scrollarrows.png) bottom center no-repeat; + height: 25px; +} +.highslide-thumbstrip-vertical table { + margin: 10px 0 0 10px; +} +.highslide-thumbstrip-vertical img { + max-width: 60px; +} +.highslide-thumbstrip-vertical .highslide-marker { + left: 0; + margin-top: 8px; + border-top-width: 6px; + border-bottom-width: 6px; + border-left: 6px solid gray; +} +.dark .highslide-thumbstrip-vertical .highslide-marker, .highslide-viewport .highslide-thumbstrip-vertical .highslide-marker { + border-left-color: white; +} + +.highslide-viewport .highslide-thumbstrip-float { + overflow: auto; +} +.highslide-thumbstrip-float ul { + margin: 2px 0; + padding: 0; +} +.highslide-thumbstrip-float li { + display: block; + height: 60px; + margin: 0 2px; + list-style: none; + float: left; +} +.highslide-thumbstrip-float img { + display: inline; + border-color: silver; + max-height: 56px; +} +.highslide-thumbstrip-float .highslide-active-anchor img { + border-color: black; +} +.highslide-thumbstrip-float .highslide-scroll-up div, .highslide-thumbstrip-float .highslide-scroll-down div { + display: none; +} +.highslide-thumbstrip-float .highslide-marker { + display: none; +} \ No newline at end of file diff --git a/site/highslide/highslide.js b/site/highslide/highslide.js new file mode 100644 index 000000000..408943e06 --- /dev/null +++ b/site/highslide/highslide.js @@ -0,0 +1,28 @@ +/****************************************************************************** +Name: Highslide JS +Version: 4.1.8 (October 27 2009) +Config: default -navigation -dragging -multiple +packed +Author: Torstein Hønsi +Support: http://highslide.com/support + +Licence: +Highslide JS is licensed under a Creative Commons Attribution-NonCommercial 2.5 +License (http://creativecommons.org/licenses/by-nc/2.5/). + +You are free: + * to copy, distribute, display, and perform the work + * to make derivative works + +Under the following conditions: + * Attribution. You must attribute the work in the manner specified by the + author or licensor. + * Noncommercial. You may not use this work for commercial purposes. + +* For any reuse or distribution, you must make clear to others the license + terms of this work. +* Any of these conditions can be waived if you get permission from the + copyright holder. + +Your fair use and other rights are in no way affected by the above. +******************************************************************************/ +eval(function(p,a,c,k,e,d){e=function(c){return(c35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--){d[e(c)]=k[c]||e(c)}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('q(!m){u m={1D:{71:\'6M\',68:\'84...\',6H:\'66 21 83\',6w:\'82 21 81 H (f)\',7x:\'85 2i 6D 6E\',7v:\'86 21 8a 6D 6E 89\',5O:\'66 21 2z 4e\'},3E:\'1t/88/\',4c:\'87.5Q\',3a:\'80.5Q\',6S:4l,7h:4l,3u:15,6P:15,4E:15,7I:15,3b:7Z,6l:0.75,5n:5,2B:2,7S:3,3h:1v,6V:\'2D 27\',6r:1,69:I,6T:\'7R://1t.7Q/\',7c:\'7O\',5C:[\'a\'],3p:6I,3A:6I,3l:I,1c:\'7P-7T\',3m:[],5h:I,X:[],5q:[\'3l\',\'1U\',\'1c\',\'2B\',\'7U\',\'7Y\',\'7X\',\'7z\',\'7W\',\'7V\',\'8b\',\'7j\',\'7C\',\'J\',\'11\',\'5b\',\'3p\',\'3A\',\'3O\',\'53\',\'2R\',\'1B\',\'6U\',\'6O\',\'1d\'],1r:[],3x:0,8c:{x:[\'6N\',\'18\',\'4N\',\'27\',\'7A\'],y:[\'3H\',\'14\',\'4U\',\'2D\',\'4A\']},3T:{},7j:{},7z:{},2f:[],2G:{},5d:{},3V:[],2Q:/8s\\/4\\.0/.1a(3g.3Y)?8:55((3g.3Y.42().4R(/.+(?:7k|8r|8q|1k)[\\/: ]([\\d.]+)/)||[0,\'0\'])[1]),1k:(O.39&&!1S.3K),4v:/8p/.1a(3g.3Y),6a:/7N.+7k:1\\.[0-8].+8t/.1a(3g.3Y),$:z(1m){q(1m)C O.8u(1m)},1Z:z(23,2o){23[23.Z]=2o},V:z(7p,2L,2h,5j,7n){u A=O.V(7p);q(2L)m.2l(A,2L);q(7n)m.R(A,{8y:0,8x:\'2T\',52:0});q(2h)m.R(A,2h);q(5j)5j.2d(A);C A},2l:z(A,2L){U(u x 2N 2L)A[x]=2L[x];C A},R:z(A,2h){U(u x 2N 2h){q(m.1k&&x==\'1j\'){q(2h[x]>0.99)A.F.8w(\'3q\');P A.F.3q=\'6u(1j=\'+(2h[x]*1N)+\')\'}P A.F[x]=2h[x]}},2U:z(A,Q,1X){u 2x,36,2w;q(1o 1X!=\'4S\'||1X===G){u 2s=62;1X={2C:2s[2],1B:2s[3],4C:2s[4]}}q(1o 1X.2C!=\'37\')1X.2C=4l;1X.1B=1f[1X.1B]||1f.7u;1X.3S=m.2l({},Q);U(u 1Y 2N Q){u e=1Q m.1h(A,1X,1Y);2x=55(m.4Q(A,1Y))||0;36=55(Q[1Y]);2w=1Y!=\'1j\'?\'D\':\'\';e.2j(2x,36,2w)}},4Q:z(A,Q){q(O.5H){C O.5H.64(A,G).5X(Q)}P{q(Q==\'1j\')Q=\'3q\';u 2o=A.8v[Q.2F(/\\-(\\w)/g,z(a,b){C b.8o()})];q(Q==\'3q\')2o=2o.2F(/6u\\(1j=([0-9]+)\\)/,z(a,b){C b/1N});C 2o===\'\'?1:2o}},43:z(){u d=O,w=1S,3G=d.4W&&d.4W!=\'7H\'?d.30:d.44;u J=m.1k?3G.6t:(d.30.6t||3P.8n),11=m.1k?3G.8g:3P.8f;m.2V={J:J,11:11,47:m.1k?3G.47:8e,48:m.1k?3G.48:8d}},5G:z(A){u p={x:A.6n,y:A.6o};3e(A.6i){A=A.6i;p.x+=A.6n;p.y+=A.6o;q(A!=O.44&&A!=O.30){p.x-=A.47;p.y-=A.48}}C p},4u:z(a,1O,2j,M){q(!a)a=m.V(\'a\',G,{2S:\'2T\'},m.1L);q(1o a.3s==\'z\')C 1O;1z{1Q m.3z(a,1O,2j);C 1v}1x(e){C I}},5J:z(a,3w){a.3s=a.2P;u p=a.3s?a.3s():G;a.3s=G;C(p&&1o p[3w]!=\'28\')?p[3w]:(1o m[3w]!=\'28\'?m[3w]:G)},5i:z(a){u 1d=m.5J(a,\'1d\');q(1d)C 1d;C a.32},3B:z(1m){u 3Z=m.$(1m),2J=m.5d[1m],a={};q(!3Z&&!2J)C G;q(!2J){2J=3Z.6B(I);2J.1m=\'\';m.5d[1m]=2J;C 3Z}P{C 2J.6B(I)}},34:z(d){q(d)m.5V.2d(d);m.5V.3C=\'\'},8h:z(K){m.1Z(m.1r,m.2l(K,{1V:\'1V\'+m.3x++}))},5F:z(5c,40){u A,2y=/^1t-W-([0-9]+)$/;A=5c;3e(A.3n){q(A.1m&&2y.1a(A.1m))C A.1m.2F(2y,"$1");A=A.3n}q(!40){A=5c;3e(A.3n){q(A.3L&&m.3N(A)){U(u N=0;N=k.1q.2C+k.5v){k.2H=k.36;k.E=k.5m=1;k.58();k.1q.3S[k.Q]=I;u 4Z=I;U(u i 2N k.1q.3S)q(k.1q.3S[i]!==I)4Z=1v;q(4Z){q(k.1q.4C)k.1q.4C.7F(k.1H)}C 1v}P{u n=t-k.5v;k.5m=n/k.1q.2C;k.E=k.1q.1B(n,0,1,k.1q.2C);k.2H=k.2x+((k.36-k.2x)*k.E);k.58()}C I}};m.2l(m.1h,{2n:{1j:z(1h){m.R(1h.1H,{1j:1h.2H})},6m:z(1h){1z{q(1h.1H.F&&1h.1H.F[1h.Q]!=G)1h.1H.F[1h.Q]=1h.2H+1h.2w;P 1h.1H[1h.Q]=1h.2H}1x(e){}}}});m.3y=z(1c,2v){k.2v=2v;k.1c=1c;u v=m.2Q,3U;k.5f=m.1k&&v>=5.5&&v<7;q(!1c){q(2v)2v();C}m.5r();k.2c=m.V(\'2c\',{9o:0},{17:\'1e\',19:\'1T\',9w:\'9n\',J:0},m.1L,I);u 5a=m.V(\'5a\',G,G,k.2c,1);k.1C=[];U(u i=0;i<=8;i++){q(i%3==0)3U=m.V(\'3U\',G,{11:\'2b\'},5a,I);k.1C[i]=m.V(\'1C\',G,G,3U,I);u F=i!=4?{9i:0,9h:0}:{19:\'4K\'};m.R(k.1C[i],F)}k.1C[4].1y=1c+\' 1t-1b\';k.6d()};m.3y.4d={6d:z(){u 1d=m.3E+(m.9j||"9k/")+k.1c+".9m";u 63=m.4v?m.1L:G;k.2a=m.V(\'16\',G,{19:\'1T\',14:\'-3c\'},63,I);u 5Y=k;k.2a.4f=z(){5Y.60()};k.2a.1d=1d},60:z(){u o=k.1g=k.2a.J/4,E=[[0,0],[0,-4],[-2,0],[0,-8],0,[-2,-8],[0,-2],[0,-6],[-2,-2]],1s={11:(2*o)+\'D\',J:(2*o)+\'D\'};U(u i=0;i<=8;i++){q(E[i]){q(k.5f){u w=(i==1||i==7)?\'1N%\':k.2a.J+\'D\';u 1J=m.V(\'1J\',G,{J:\'1N%\',11:\'1N%\',19:\'4K\',2I:\'1e\'},k.1C[i],I);m.V(\'1J\',G,{3q:"9l:9v.9E.9B(9x=9C, 1d=\'"+k.2a.1d+"\')",19:\'1T\',J:w,11:k.2a.11+\'D\',18:(E[i][0]*o)+\'D\',14:(E[i][1]*o)+\'D\'},1J,I)}P{m.R(k.1C[i],{9z:\'5s(\'+k.2a.1d+\') \'+(E[i][0]*o)+\'D \'+(E[i][1]*o)+\'D\'})}q(1S.3K&&(i==3||i==5))m.V(\'1J\',G,1s,k.1C[i],I);m.R(k.1C[i],1s)}}k.2a=G;q(m.2G[k.1c])m.2G[k.1c].4r();m.2G[k.1c]=k;q(k.2v)k.2v()},3k:z(E,1g,6q,2g,1B){u B=k.B,9A=B.W.F,1g=1g||0,E=E||{x:B.x.E+1g,y:B.y.E+1g,w:B.x.L(\'1p\')-2*1g,h:B.y.L(\'1p\')-2*1g};q(6q)k.2c.F.17=(E.h>=4*k.1g)?\'1M\':\'1e\';m.R(k.2c,{18:(E.x-k.1g)+\'D\',14:(E.y-k.1g)+\'D\',J:(E.w+2*k.1g)+\'D\'});E.w-=2*k.1g;E.h-=2*k.1g;m.R(k.1C[4],{J:E.w>=0?E.w+\'D\':0,11:E.h>=0?E.h+\'D\':0});q(k.5f)k.1C[3].F.11=k.1C[5].F.11=k.1C[4].F.11},4r:z(6j){q(6j)k.2c.F.17=\'1e\';P m.34(k.2c)}};m.4b=z(B,1s){k.B=B;k.1s=1s;k.2p=1s==\'x\'?\'9D\':\'9F\';k.2q=k.2p.42();k.3F=1s==\'x\'?\'9f\':\'8O\';k.54=k.3F.42();k.59=1s==\'x\'?\'8N\':\'8A\';k.8P=k.59.42();k.1w=k.24=0};m.4b.4d={L:z(N){8Q(N){2A\'5k\':C k.1l+k.25+(k.t-m.1A[\'1g\'+k.2p])/2;2A\'1p\':C k.H+2*k.T+k.1w+k.24;2A\'2W\':C k.4h-k.2E-k.49;2A\'4D\':C k.L(\'2W\')-2*k.T-k.1w-k.24;2A\'3r\':C k.E-(k.B.1b?k.B.1b.1g:0);2A\'5K\':C k.L(\'1p\')+(k.B.1b?2*k.B.1b.1g:0);2A\'46\':C k.1u?1f.4p((k.H-k.1u)/2):0}},4H:z(){k.T=(k.B.1i[\'1g\'+k.2p]-k.t)/2;k.49=m[\'52\'+k.59]},5u:z(){k.t=k.B.A[k.2q]?8T(k.B.A[k.2q]):k.B.A[\'1g\'+k.2p];k.1l=k.B.1l[k.1s];k.25=(k.B.A[\'1g\'+k.2p]-k.t)/2;q(k.1l==0||k.1l==-1){k.1l=(m.2V[k.2q]/2)+m.2V[\'2r\'+k.3F]}},4G:z(){u B=k.B;k.2X=\'2b\';k.E=k.1l-k.T+k.25;q(k.53&&k.1s==\'x\')B.3O=1f.20(B.3O||k.S,B.53*k.S/B.y.S);k.H=1f.20(k.S,B[\'5T\'+k.2p]||k.S);k.1K=B.3l?1f.20(B[\'20\'+k.2p],k.S):k.S;q(B.38&&B.1U){k.H=B[k.2q];k.1u=k.S}q(k.1s==\'x\'&&m.3h)k.1K=B.3p;k.2E=m[\'52\'+k.3F];k.2r=m.2V[\'2r\'+k.3F];k.4h=m.2V[k.2q]},5B:z(i){u B=k.B;q(B.38&&(B.1U||m.3h)){k.1u=i;k.H=1f.5T(k.H,k.1u);B.1i.F[k.54]=k.L(\'46\')+\'D\'}P k.H=i;B.1i.F[k.2q]=i+\'D\';B.W.F[k.2q]=k.L(\'1p\')+\'D\';q(B.1b)B.1b.3k();q(k.1s==\'x\'&&B.1n)B.2Y(I)},5P:z(i){k.E=i;k.B.W.F[k.54]=i+\'D\';q(k.B.1b)k.B.1b.3k()}};m.3z=z(a,1O,2j,2k){q(O.8R&&m.1k&&!m.57){m.1R(O,\'2u\',z(){1Q m.3z(a,1O,2j,2k)});C}k.a=a;k.2j=2j;k.2k=2k||\'4e\';k.38=!k.9g;m.5h=1v;k.1r=[];m.5r();u N=k.N=m.X.Z;U(u i=0;i(k.x.1u||k.x.H)){k.6f();q(k.1r.Z==1)k.2Y()}}k.7d()}1x(e){k.4I(e)}},2X:z(p,2Z){u 8I,8H=p.3d,1s=p==k.x?\'x\':\'y\';u 4F=1v;u 31=p.B.3l;p.E=1f.4p(p.E-((p.L(\'1p\')-p.t)/2));q(p.Ep.2r+p.4h-p.49){q(!2Z&&4F&&31){p.H=1f.20(p.H,p.L(1s==\'y\'?\'2W\':\'4D\'))}P q(p.L(\'1p\')1E){ 1I=2m*1E;q(1Ik.3A&&x.H>k.3p&&y.L(\'1p\')>y.L(\'2W\')){y.H-=10;q(1E)x.H=y.H*1E;k.2Y(0,1);29=I}}C 29},7d:z(){u x=k.x,y=k.y;k.4x(\'1e\');k.5I(1,{W:{J:x.L(\'1p\'),11:y.L(\'1p\'),18:x.E,14:y.E},1i:{18:x.1w+x.L(\'46\'),14:y.1w+y.L(\'46\'),J:x.1u||x.H,11:y.1u||y.H}},m.6S)},5I:z(22,21,2g){q(k.1b&&!k.2B){q(22)k.1b.3k();P k.1b.4r()}q(!22)k.7r();u B=k,x=B.x,y=B.y,1B=k.1B;q(!22)1B=k.6U||1B;u 6W=22?z(){q(B.1b)B.1b.2c.F.17="1M";5x(z(){B.76()},50)}:z(){B.4J()};q(22)m.R(k.W,{J:x.t+\'D\',11:y.t+\'D\'});q(k.6O){m.R(k.W,{1j:22?0:1});m.2l(21.W,{1j:22})}m.2U(k.W,21.W,{2C:2g,1B:1B,2n:z(2o,2s){q(B.1b&&B.2B&&2s.Q==\'14\'){u 3i=22?2s.E:1-2s.E;u E={w:x.t+(x.L(\'1p\')-x.t)*3i,h:y.t+(y.L(\'1p\')-y.t)*3i,x:x.1l+(x.E-x.1l)*3i,y:y.1l+(y.E-y.1l)*3i};B.1b.3k(E,0,1)}}});m.2U(k.1i,21.1i,2g,1B,6W);q(22){k.W.F.17=\'1M\';k.1i.F.17=\'1M\';k.a.1y+=\' 1t-73-6X\'}},76:z(){k.5A=I;k.4n();k.74();u p=m.2V,4M=m.3T.x+p.47,4O=m.3T.y+p.48;k.5g=k.x.E<4M&&4Mk.x.L(\'3r\')+k.x.L(\'5K\'));u 6F=(2e.y+2e.hk.y.L(\'3r\')+k.y.L(\'5K\'));u 3J=m.5F(Y[i]);q(!6c&&!6F&&3J!=k.N){q(!1F){Y[i].3t(\'1e-2i\',\'[\'+k.N+\']\');Y[i].5z=Y[i].F[Q];Y[i].F[Q]=\'1e\'}P q(1F.6v(\'[\'+k.N+\']\')==-1){Y[i].3t(\'1e-2i\',1F+\'[\'+k.N+\']\')}}P q((1F==\'[\'+k.N+\']\'||m.2M==3J)&&3J!=k.N){Y[i].3t(\'1e-2i\',\'\');Y[i].F[Q]=Y[i].5z||\'\'}P q(1F&&1F.6v(\'[\'+k.N+\']\')>-1){Y[i].3t(\'1e-2i\',1F.2F(\'[\'+k.N+\']\',\'\'))}}}}},4n:z(){k.W.F.1W=m.3b+=2;k.1i.3v=m.1D.5O;q(m.3a){m.5S=1S.3K?\'56\':\'5s(\'+m.3E+m.3a+\'), 56\';q(m.1k&&m.2Q<6)m.5S=\'93\';k.1i.F.5p=m.5S}m.2M=k.N},5Z:z(x,y){k.x.5P(x);k.y.5P(y)},6z:z(e){u w,h,r=e.J/e.11;w=1f.5T(e.J+e.91,1f.20(k.3p,k.x.S));q(k.38&&1f.8M(w-k.x.S)<12)w=k.x.S;h=w/r;q(h<1f.20(k.3A,k.y.S)){h=1f.20(k.3A,k.y.S);q(k.38)w=h*r}k.5e(w,h)},5e:z(w,h){k.y.5B(h);k.x.5B(w);k.W.F.11=k.y.L(\'1p\')+\'D\'},2z:z(){q(k.6h||!k.5A)C;k.6h=I;1z{k.1i.F.5p=\'8Z\';k.5I(0,{W:{J:k.x.t,11:k.y.t,18:k.x.1l-k.x.T+k.x.25,14:k.y.1l-k.y.T+k.y.25},1i:{18:0,14:0,J:k.x.t,11:k.y.t}},m.7h)}1x(e){k.4J()}},3o:z(o){u A=o.4B;q(1o A==\'5M\')A=m.3B(A);q(o.7E)A=m.V(\'1J\',{3C:o.7E});q(!A||1o A==\'5M\')C;A.F.2S=\'6R\';k.6s();u J=o.J&&/^[0-9]+(D|%)$/.1a(o.J)?o.J:\'2b\';q(/^(18|27)5R$/.1a(o.19)&&!/^[0-9]+D$/.1a(o.J))J=\'9b\';u K=m.V(\'1J\',{1m:\'1V\'+m.3x++,1V:o.1V},{19:\'1T\',17:\'1e\',J:J,70:m.1D.71||\'\',1j:0},k.1n,I);K.2d(A);m.2l(K,{1j:1,79:0,78:0,2g:(o.4P===0||o.4P===1v||(o.4P==2&&m.1k))?0:4l});m.2l(K,o);q(k.6x){k.4s(K);q(!K.4y||k.5g)m.2U(K,{1j:K.1j},K.2g)}m.1Z(k.1r,m.3x-1)},4s:z(K){u p=K.19||\'4U 4N\',4i=K.79,4q=K.78;q(K.3n!=k.1n)k.1n.2d(K);q(/18$/.1a(p))K.F.18=4i+\'D\';q(/4N$/.1a(p))m.R(K,{18:\'50%\',3u:(4i-1f.4p(K.3D/2))+\'D\'});q(/27$/.1a(p))K.F.27=-4i+\'D\';q(/^6N$/.1a(p)){m.R(K,{27:\'1N%\',6P:k.x.T+\'D\',14:-k.y.T+\'D\',2D:-k.y.T+\'D\',2I:\'2b\'});k.x.1w=K.3D}P q(/^7A$/.1a(p)){m.R(K,{18:\'1N%\',3u:k.x.T+\'D\',14:-k.y.T+\'D\',2D:-k.y.T+\'D\',2I:\'2b\'});k.x.24=K.3D}q(/^14/.1a(p))K.F.14=4q+\'D\';q(/^4U/.1a(p))m.R(K,{14:\'50%\',4E:(4q-1f.4p(K.33/2))+\'D\'});q(/^2D/.1a(p))K.F.2D=-4q+\'D\';q(/^3H$/.1a(p)){m.R(K,{18:(-k.x.1w-k.x.T)+\'D\',27:(-k.x.24-k.x.T)+\'D\',2D:\'1N%\',7I:k.y.T+\'D\',J:\'2b\'});k.y.1w=K.33}P q(/^4A$/.1a(p)){m.R(K,{19:\'4K\',18:(-k.x.1w-k.x.T)+\'D\',27:(-k.x.24-k.x.T)+\'D\',14:\'1N%\',4E:k.y.T+\'D\',J:\'2b\'});k.y.24=K.33;K.F.19=\'1T\'}},7e:z(){k.7f([\'7s\',\'8G\'],I);q(m.69)k.65();U(u i=0;i hledger.org - $title + + +