diff options
Diffstat (limited to 'web')
197 files changed, 6048 insertions, 3005 deletions
diff --git a/web/cobrands/borsetshire/base.scss b/web/cobrands/borsetshire/base.scss index 813c0fc59..a92d54427 100644 --- a/web/cobrands/borsetshire/base.scss +++ b/web/cobrands/borsetshire/base.scss @@ -9,7 +9,7 @@ background-size: 120px 32px; height: 32px; width: 120px; - @include high-dpi-background-image('images/site-logo-mobile'); + @include svg-background-image('images/site-logo-mobile'); } #site-header { @@ -22,3 +22,96 @@ .site-header__fake-nav { display: none; } + +.homepage-login-hint { + padding: 1.5em 0; + background-color: rgb(0, 61, 101); + background-color: darken($color-borsetshire-blue, 20%); + color: #fff; + + .container { + position: relative; + + // Little arrow. + &:before { + content: ""; + display: block; + width: 0; + height: 0; + position: absolute; + border: 0.5em solid transparent; + border-top-width: 0; + border-bottom-color: darken($color-borsetshire-blue, 20%); + top: -1.5em; + right: 1em; + margin-top: -0.5em; + } + } + + h2 { + margin: 0; + font-size: 1.3em; + } + + p { + margin: 0.5em 0 0 0; + } + + a { + font-weight: bold; + color: inherit; + text-decoration: underline; + } +} + +body.authpage { + .content { + max-width: 27em; + margin-#{$left}: auto; + margin-#{$right}: auto; + } +} + +#demo-user-list { + @include list-reset-soft(); + border-bottom: 1px solid #eee; + margin-bottom: 2em; + + li { + margin: 2em 0; + } + + button { + width: 100%; + } + + span { + color: #666; + font-size: (14em / 16); + display: block; + margin-top: 0.5em; + } +} + +.fms-pro-promo { + margin: 2em -1em; + padding: 1em; + background: $primary; + color: $primary_text; + + .lead { + font-weight: bold; + } + + & > :first-child { + margin-top: 0; + } + + & > :last-child { + margin-bottom: 0; + } +} + +.btn--borsetshire { + @include button-reset($text: #000, $hover-text: #000); +} diff --git a/web/cobrands/borsetshire/images/site-logo-mobile@2x.png b/web/cobrands/borsetshire/images/site-logo-mobile@2x.png Binary files differdeleted file mode 100644 index d19fdcebb..000000000 --- a/web/cobrands/borsetshire/images/site-logo-mobile@2x.png +++ /dev/null diff --git a/web/cobrands/borsetshire/images/site-logo@2x.png b/web/cobrands/borsetshire/images/site-logo@2x.png Binary files differdeleted file mode 100644 index 1840d6206..000000000 --- a/web/cobrands/borsetshire/images/site-logo@2x.png +++ /dev/null diff --git a/web/cobrands/borsetshire/js.js b/web/cobrands/borsetshire/js.js index eee78df43..2888a9548 100644 --- a/web/cobrands/borsetshire/js.js +++ b/web/cobrands/borsetshire/js.js @@ -1,7 +1,11 @@ (function(){ + if (typeof jQuery === 'undefined') { + return; + } + function set_redirect(form) { - var e = form.email.value; + var e = form.username.value; if (e == 'inspector@example.org') { form.r.value = 'my/planned'; } else if (e == 'cs@example.org') { @@ -11,9 +15,9 @@ } } - $('#demo-user-list dt').click(function(){ + $('#demo-user-list button').click(function(){ var form = document.forms.general_auth; - form.email.value = $(this).text(); + form.username.value = $(this).data('email'); form.password_sign_in.value = 'password'; set_redirect(form); form.submit(); diff --git a/web/cobrands/borsetshire/layout.scss b/web/cobrands/borsetshire/layout.scss index b6d411e1f..66d1bb692 100644 --- a/web/cobrands/borsetshire/layout.scss +++ b/web/cobrands/borsetshire/layout.scss @@ -9,7 +9,7 @@ background-size: 180px 48px; height: 48px; width: 180px; - @include high-dpi-background-image('images/site-logo'); + @include svg-background-image('images/site-logo'); } #site-header { @@ -46,3 +46,59 @@ margin: 0 0.5em 0 0; } } + +.homepage-login-hint { + .container { + &:before { + right: 16.4em; + } + } +} + +body.authpage { + .content { + width: auto; + max-width: 30em; + } + + input { + max-width: none; + } +} + +#demo-user-list { + li { + @include clearfix(); + } + + button { + float: left; + width: 40%; + } + + span { + float: right; + width: 55%; + margin-top: 0; + } +} + +.fms-pro-promo { + margin: 1em 0 3em 0; + padding: 2em; + + p { + font-size: 1.2em; + max-width: 26em; + } + + h2 { + font-family: inherit; + font-weight: bold; + font-size: 2em; + } + + @media (min-width: 60em) { + padding: 3em; + } +} diff --git a/web/cobrands/bromley/base.scss b/web/cobrands/bromley/base.scss index e6c29bed2..768a3ec67 100644 --- a/web/cobrands/bromley/base.scss +++ b/web/cobrands/bromley/base.scss @@ -95,9 +95,14 @@ a:active { // Darken the "key tools" links because we've darkened our background and as a // result they have very little contrast -.shadow-wrap ul#key-tools li a, -.shadow-wrap ul#key-tools li input[type=submit] { - background-color: darken(#f5f5f5, 10%); +#key-tools { + a, button { + background-color: darken(#f5f5f5, 10%); + + &:after { + @include svg-background-image("/cobrands/bromley/images/report-tools"); + } + } } .item-list--reports__item a { diff --git a/web/cobrands/bromley/images/report-tools.png b/web/cobrands/bromley/images/report-tools.png Binary files differnew file mode 100644 index 000000000..4720d427f --- /dev/null +++ b/web/cobrands/bromley/images/report-tools.png diff --git a/web/cobrands/bromley/images/report-tools.svg b/web/cobrands/bromley/images/report-tools.svg new file mode 100644 index 000000000..d812b350b --- /dev/null +++ b/web/cobrands/bromley/images/report-tools.svg @@ -0,0 +1 @@ +<svg width="112" height="16" viewBox="0 0 112 16" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M104 1c.3 0 .6.2.8.4l7 12.3c.2.2.2.6 0 .9 0 .2-.4.4-.7.4H97a.9.9 0 0 1-.8-.4.9.9 0 0 1 0-1l7.1-12.2c.2-.2.5-.4.8-.4zm-1 10.2v2h2v-2h-2zm0-6.1v5h2v-5h-2z" fill="#999" fill-rule="nonzero"/><g transform="translate(81)"><path stroke="#999" stroke-width="2" d="M11 3L3 8l8 5"/><circle fill="#999" cx="11" cy="3" r="3"/><circle fill="#999" cx="3" cy="8" r="3"/><circle fill="#999" cx="11" cy="13" r="3"/></g><path d="M68.8 13.1a1.9 1.9 0 1 1-3.8 0 1.9 1.9 0 0 1 3.8 0zM65 5.8v2.8c3.5 0 6.4 2.9 6.4 6.4h2.8c0-5-4.1-9.2-9.2-9.2zm0-2c6.2 0 11.2 5 11.2 11.2H79A14 14 0 0 0 65 1v2.8zM18 0h6.5L31 8l-6.5 8H18l6.5-8M48 2v6.5L40 15l-8-6.5V2l8 6.5M48 14V7.5L56 1l8 6.5V14l-8-6.5M14 0H7.5L1 8l6.5 8H14L7.5 8" fill="#999" fill-rule="nonzero"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fiksgatami/_colours.scss b/web/cobrands/fiksgatami/_colours.scss index 8924e577a..c7fb8b127 100644 --- a/web/cobrands/fiksgatami/_colours.scss +++ b/web/cobrands/fiksgatami/_colours.scss @@ -1,5 +1,3 @@ -$image-sprite: 'sprite.png'; - /* COLOURS */ $header_darker: #0a3f6f; diff --git a/web/cobrands/fiksgatami/base.scss b/web/cobrands/fiksgatami/base.scss index b69a96152..d29ca8455 100644 --- a/web/cobrands/fiksgatami/base.scss +++ b/web/cobrands/fiksgatami/base.scss @@ -13,6 +13,10 @@ } } +#site-logo { + background: transparent url('images/site-logo.png') 0 50% no-repeat; +} + .nav-menu--mysoc { a { color: $primary_text; diff --git a/web/cobrands/fiksgatami/images/homepage-logo.png b/web/cobrands/fiksgatami/images/homepage-logo.png Binary files differnew file mode 100644 index 000000000..01bf0e44a --- /dev/null +++ b/web/cobrands/fiksgatami/images/homepage-logo.png diff --git a/web/cobrands/fiksgatami/images/site-logo.png b/web/cobrands/fiksgatami/images/site-logo.png Binary files differnew file mode 100644 index 000000000..4d65653db --- /dev/null +++ b/web/cobrands/fiksgatami/images/site-logo.png diff --git a/web/cobrands/fiksgatami/layout.scss b/web/cobrands/fiksgatami/layout.scss index 02bceb04d..b0581ba92 100644 --- a/web/cobrands/fiksgatami/layout.scss +++ b/web/cobrands/fiksgatami/layout.scss @@ -37,6 +37,6 @@ body.frontpage { margin: 2em 0; width: 300px; height: 60px; - background: url($image-sprite) -2px -108px no-repeat; + background: transparent url('images/homepage-logo.png') 0 50% no-repeat; } } diff --git a/web/cobrands/fiksgatami/sprite.png b/web/cobrands/fiksgatami/sprite.png Binary files differdeleted file mode 100644 index c1c5e9d88..000000000 --- a/web/cobrands/fiksgatami/sprite.png +++ /dev/null diff --git a/web/cobrands/fixamingata/_colours.scss b/web/cobrands/fixamingata/_colours.scss index 84132f804..555c2d7ae 100644 --- a/web/cobrands/fixamingata/_colours.scss +++ b/web/cobrands/fixamingata/_colours.scss @@ -1,6 +1,5 @@ /* COLOURS */ -$image-sprite: 'images/sprite.png'; $menu-image: 'menu-black'; $primary: #00b1da; diff --git a/web/cobrands/fixamingata/base.scss b/web/cobrands/fixamingata/base.scss index 52c4b50da..ceb90f878 100644 --- a/web/cobrands/fixamingata/base.scss +++ b/web/cobrands/fixamingata/base.scss @@ -18,7 +18,7 @@ #site-logo { width: 185px; height: 38px; - background: url('images/fms-logo.png') 0 50% no-repeat; + background: transparent url('images/site-logo.png') 0 50% no-repeat; } #report-cta { diff --git a/web/cobrands/fixamingata/images/homepage-logo.png b/web/cobrands/fixamingata/images/homepage-logo.png Binary files differnew file mode 100644 index 000000000..fb51ef381 --- /dev/null +++ b/web/cobrands/fixamingata/images/homepage-logo.png diff --git a/web/cobrands/fixamingata/images/fms-logo.png b/web/cobrands/fixamingata/images/site-logo.png Binary files differindex 314c81843..314c81843 100644 --- a/web/cobrands/fixamingata/images/fms-logo.png +++ b/web/cobrands/fixamingata/images/site-logo.png diff --git a/web/cobrands/fixamingata/images/sprite.png b/web/cobrands/fixamingata/images/sprite.png Binary files differdeleted file mode 100644 index 5946c4bbc..000000000 --- a/web/cobrands/fixamingata/images/sprite.png +++ /dev/null diff --git a/web/cobrands/fixamingata/layout.scss b/web/cobrands/fixamingata/layout.scss index 549d29540..2d82af1ad 100644 --- a/web/cobrands/fixamingata/layout.scss +++ b/web/cobrands/fixamingata/layout.scss @@ -76,7 +76,7 @@ body.frontpage { #site-logo { width: 300px; height: 55px; - background: url($image-sprite) -2px -115px no-repeat; + background: transparent url('images/homepage-logo.png') 0 50% no-repeat; } #main-nav { diff --git a/web/cobrands/fixmystreet-uk-councils/js.js b/web/cobrands/fixmystreet-uk-councils/js.js index 6066db9c5..5c550f56f 100644 --- a/web/cobrands/fixmystreet-uk-councils/js.js +++ b/web/cobrands/fixmystreet-uk-councils/js.js @@ -1,4 +1,7 @@ (function(){ + if (typeof jQuery === 'undefined' || !jQuery.validator) { + return; + } var validNamePat = /\ba\s*n+on+((y|o)mo?u?s)?(ly)?\b/i; function valid_name(value, element) { return this.optional(element) || value.length > 5 && value.match( /\S/ ) && value.match( /\s/ ) && !value.match( validNamePat ); diff --git a/web/cobrands/fixmystreet.com/base.scss b/web/cobrands/fixmystreet.com/base.scss index 4f2a7b1de..d8f8f123e 100644 --- a/web/cobrands/fixmystreet.com/base.scss +++ b/web/cobrands/fixmystreet.com/base.scss @@ -4,16 +4,50 @@ * layout for browsers that can't handle media queries. Baseline grid of 1.5em. */ +@namespace svg "http://www.w3.org/2000/svg"; + @import "../sass/h5bp"; @import "_colours"; @import "../sass/base"; @import "../sass/top-banner"; +// Don't need these styles from core any more, +// as we do funky stuff with the FMS.com logo. #site-logo { - background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAK8AAAAoCAYAAACIJ6oVAAAACW9GRnMAAAADAAAAAwB3k5ejAAAACXBIWXMAAABIAAAASABGyWs+AAAACXZwQWcAAAF5AAAQZgCwCYXlAAAABmJLR0QA/wD/AP+gvaeTAAAag0lEQVR42u1cB1RWx7YeBBW7YAOViL0bNSomdsWADVsQbEHFiAUUMYmiokEUWzQiiQ0VNSC2gFiJmthbiF1jwxaNGr0pKra8t1be3r/frLc99/zwo7nv3rzFWWuv/z9zZs6ZM/PtPd/eM3OUyj1yj9wj98g9co/cI/fIPXKP3MPaYQfJY6Po/LlH7vFvBa09ST6SIiROJM7ZiBPy5kPZXBDnHv8W0OYHGCuSeJB4kniReFsRL+TxQBkngDhPbpPmHv8XRx4AjoFXiaQFSUDXrl2XxMfHp585c+b2nyZHZmbmM742b968gx4eHvO5DElzkgokhXKtcO7xrz7sAbQKAF7AoEGDEk+ePPnznzk8tm3bdhUg7kFSE5QiJ1bY7jXkrxyB/pX5/4o2yD0EcKuQdHdzc5t14MCBm3++5rFy5cqjdL9AKMMbJAWzAbB0DLlODlmIPeSvdBrNnFNr97LmyL4OsOQ97bNoA/nuf1eA/yX1zCOA69uxY8eEhw8f/mEGxrt37z5OS0vLWLZs2QmS4yzr168/d/Xq1V+sAfjKlSu/kjLMpHv7AMD5TCprJ7h2XvDtAqgXS2EhOq0g8jgiv5Z8ooNtbRj5fAfcI5+VexkBlhf5XvXZRsXVz3fEOxrbQL+7I/LlNVFio2Lb/YeBNqt62uXkRvlAFboDuP9lQgOudenSZRmsqI+Js+bj6en58erVq/cT/31uLH/p0qUHAHALUAj7LJzEQuDcpUlcScqRlBfC52VJypCUElEOluIkRdG5OYl4GJ9fVNyrENKlpcsD0DgiulIczy+G/DmNtkjFLYj7lCRxsfL+Lnh3JwC6gEGBHYVS531FZfpXWVppoMzqabOy2aMBmjNHNVrcCxcuPPL29l4D0LYkqQzQlICUhJSB5W5ZtWrV4KNHj14xs8C4T010cB4rIbkycBbrkLyF6EVTIU1IGpHUJ6lFUg31qowoR3nUqbCNIJLALQqleQP3egPnRXHdwQAyZ4CpEp5fAfmLCMDb2QjcfKgzg9Id79YQ7/82yTv49UC71EWblxdALo46lUT/FLeifLZSjFelIXZZjFTaQBQX+HFGGxdA22YLYDvciBs+4NSpUy85ZhcvXnxUtmzZhXTNTzhdjrh5ATxMx3eLocNKIK9fbGzsXiOAU1JSTsKJqyDogx1AUQgdX33RRDX84EqV8G2cWrdzkfpqx0KVzML/dy5WX1H6+n3LVdKsUPUR5W/DFn3BeBV8ap2KS5hmUZBK6NBC2TSGUXHY0tc4s0EtObFWLW3R0HLvGkgvIqhBQbwrP6dB0gwVfixJLY+brIYivwuAmF1H2IkITxGU4/LvvPnmm73IZ1hAo9axe/fu3dBtyP8vX76cnpSUFPPWW291pbyNAXStwNXQBzWggC7oH0dh3ewNw7Y138HeRPKYgNnOCl+3N3B3R9TFBW3H9ayNOruhTQvZAmBtdVtOnz59i9HiAri+JFVFRxhjv+1I2nIHwmLqYZTL+JoBGFGI5riPvei8orB0jffHq9V/nlR/2iLV3dUQKtNrz1K1ls/TE9UKWGU3aLcjGi6PlUbOJxWHFUHfmxUEI051XC8M4DrBOjauV035PU9XmSJ/M1jEElByBxM+Z2diccsAhG0GDx4c/vTp0yfZOcTPnj17PGnSpEjE2LmeLVJTU2fytT/++OPR2rVrxwIc5dAWBcVQbSb5BdfXfkdBIVnxbAcDHSggRPP34qhL7QEDBrz3+PHju1xXUsY0KGEVWOKCot2scl0GYYDkqcx5GzZsuAoWVwL3pTAaNfCqmJiY/dOmTdtepUqVkRjGCgsrymX9jBSCoxiIA1cUw1l+vJgltuzdTI0a5quWaBD17ahS+3dWyQFd1PoAH7V2YFeV9Mte9RtfG9lbxVKZYUsi1PKbX6sf1sxU8zDEVhVDfgHhTDkYnKLCAFpF0BJf/dzf96t/QIGbAqzOqCdb4noknbZ+rjbr/Fti1Rb4BA0wnBcXzzZyZiNVYOvTysvLa/QTOnIS1RkzZswcKtufhQGt02/dunUOxqUOlLm0GKpL4rlaSor3K442KQUr6WrCsx0NQC8oRuNSUMYy4t6l0CZcl3a7du3aIN/Bx8cnCLSokhjlTWlXHjyo6cyZM1PlTRYvXnxWcFMJXEsYjfNLsGdkZPzm7u4+AR1WWHQM/6/JjpzRiYP19YCV1p1YHABi5ehHMlGDgv4vImFQstMXTTLtYqq6xtdG+CkeIUJJRpAMIunJIEAjVUCjlxDOV0HhlDmjgSvAWncK7afmScv+ebj6ktOhnOVxvyp6AufXfS+UiOXgCnUcINLWuhyeXUTwOQfh7GmOXVkrzqFDh743gvO77777nQzFtfnz51/ZvXv3P8Xdjx07dpHKch9EyHTqmwy0ZRu8n6YTtdA+daGEdZFWHe9WFXnrgXc3wm8dXC8HQBaDOKNdKkAJ6+J59fFfP/dNKFP/DRs27JJ1DQkJ+ZzxBT5fDm2W18z62kMTOh0+fPiatLrly5efi8Z3FhaKh/NuNCQdN/Dih+XKlfuCrnVFHkcxdORHx7XcsmXLd7Icz8RhKtlJOEBFAI5GAOAYAd5Z3DEkYSRs5UcBsKMgnBZM8gFGjHehHPXQcFVQP1eA1RXnVdBpDdDB/Yf0VMv5mZmH1XP+ZQtP6e8DrDVQhvN3mT/2Bb3ReS9sVDcofTjA7mHo7BIiMqCpRzncsyksdsiNGzfuybaaM2fObUrn9tpFso1kO1naMzIP9eF1Sud+WCTTf/jhBx7lPibpizq9O3r06BHdu3dn49SN/Y8uXboMjYyMjECaN/qlPeevXbt2/wkTJkSNHz9+6sSJE6d07dr1A1xvjHatiBGpGoDavH79+j2nTJkykekMCyxqJ1CbzlDu8BUrVqTLugYEBKxD27VHm5REW9mbOWqs7YPkDQhk12F1KyNPHoCqyZAhQ5YbeHEm8eI4QS+KoHNc8ELa4lRh6yvL8lQyGspZEPoCsEK1AL4PBHiZuzG37Q1g98RzuSEGX9umLl3dqi6nr1aH331bjYFT6H1vtzpJVOJAYrTFKjUBmGvDAniwk8V5yNFLpvP3GDxMS/iZqTHq1t1v1GP+/8lQtRwK2hSWgYH+/i+wultj1XX+/SFFMVj4+X1C+6pgvvf5FLUWHasjNU5oG1aeeuMDVeC5ZPXt9e2KrecUo1Ul0Nyi9H0kTEk2QFK++OKLi3rka9u27ba4uLhT1mjF7du3f2Jg7N279xudRqBMSEtLO2Ri/UIqVqw4jhTie7N7Xbt27RJhYSzA2Bwc35OBfvz48QNWYv0Z/v7+bIBC33777bnEdZ+Z5SO29DQiIiISylFeWN+XwMuJHrxmwVD5HdCSUoKjcWN7Hjly5KoB6GxlhsG6FMMQyB3Uvm7dur0BwqLoMJ+ff/75kVwLIcCrCb/kvdwofQV4QxgQJB0x7LSBBejC6XKY3xRjsU4DjenEoT/Eu/FzO++Gg8fCXBlKGx7zsdrPafR7Lay/Osv/iaKwUg+G5eBO8x3ZR8XytZ+/VY/oPJn/39+jHtD/8axo4YFqmr7/jkUW2uMhvGp3KJDn5c0qXbxnjNl0/DfffHM/Ojr6LLXrJsqTSLKahEOYrBjsJGY7jc90S57L/tDH8uXLvyfOvd4auCTIevfuPR2+S0CbNm0mZOdg8j3p3mup3Las8q2hg+7ZGlgqjpH/Jb5rAWTfvn1TDaQ5DtalqAAVA8ybAWcSt+0HE18WYPWdPXt2CvG2Y2JCgs1/B+OiHhPwaurgho7uJTo1FEO3D0DbCuIFCxw8O+wFgDZ8qr4BleCw1fBdi9VeTv9tv/oFvHhonw7UkZT29Kh60ruDmg6rzkNWRPwU9T3Ay4DdTdY3E+BfAgBzPYZf2vSCc48frA7R+TpR14mgMcNH9VHzOe3BQXUfitZU8MG27Jjy9SdH1dNypVUMpS0MDw8/klXn3r17N5PXjgwdOnQv5Wc+vpLF19f3W+K+L810Mg08ceLEPZ4JpTyLs7rvo0eP/qhVq9aeS5cuPZTp5PQ9Jyucyb8y/dy5czwicNtFG6kO5X1Gxu4R0ZYnxsmqUqVK7SJl/IfxfkxB2UBWqlTpI1CHqsBpfiN4LYAkLdhqANRwkHZHEX8tExwcHGpFm9nK9AJ/GkpcZ6fgWu2FV+vNDZgFePWzCoMHNpZeP1mnK0wN2ELe3qXOkLU7xUMy7sHgHTm4u1rFedfMVNypH4EDM4gnEhe1DOuJ09UBOp9B97nL53GTLVZ6NMDLYJ+wYor6jq9FjVAXmGdGh6gzfL47TrEjO4mt8wc91ApOozo8BHhWCfBGCD4+lhy6Xzn9owEW3t4FSsejhy+PEnxtzzJ1hs4/ZctLsiwxMTHDligDWc9MomSpXAZA3iyvp6en/waawbQn3lj+/Pnzj4lrniOjdYKu7xk1atRlQ2TomZOTE1M8ph03k5KSXrLWrVu33kUU4qBMO3v2LJfhUZkxcHP16tUvlSHacJrSj82aNeu+TO/Wrdt3lB6LfmiTleW1Bbw6YlCLONV4s8a7fPny79u3b88g/nRw+vTppw2TEZ5iFs57xIgRu3II3l7ZxXhxDw5lhQQCvEkzLPyQKUIQGiK8UW21+PER9Yyvpy1Qly38NNnSuJPxzv0wBH6Ynqgy+HqPdhagby7trLZoh6xBDZVAaZ+TNb/A58sjFY8wbJEXE2e9z2lvuKhpAC5TnbEzQ9VGTj+9wQLQQeDWrPBBGtidW6p4Op9KEgUQx/fo0eMQ04XsAMyRnPbt26dwGZL1higEh/o47LmAJM5YFqBlLr2RncHk5OS78vrmzZufR0VFPWGZOnXqk4SEhKfyOjlkNzZs2HDfUOYZ5X3M+Vm+/PLLpyYO6AkC70vWumfPnvvZsMCPaYoR+J84r1Xa4OHhEYuCxcRkgx87ZmZrHqwd48aNW4uhX8/RdyAivs8G8BYCBWkkLS/9j4Q11U6bDyy7J8Irwwf3UCuF5R2l4574P2POGHVU34/B2LCmZTIjHKDtBiUI5ogB5+n1rtoJbpm0eOIL7rv1c3WtbhW1Rd/DtaQFMBz2m8fOGqcHvWexgiOhOKPdXNT0J0fUU77WvIFlmGXqEhwx5IWy/UijADtqJOPwjmy5OeLD9UvhYXbAgAFn4uPjf6LDlIsePHjwBqxvgkwnHnwPwGWFiDUZOdkqL0UoMsFIO7I7ZsyY8Ss9O0cxaQIvW/H0Tz/99I5M79Wr1y5Qru5wrMsgKmNvk8M2cuTINPDI8rDAvjzTxjNutlbu9OnTd8ELK+LhFodt3bp1P2ThsJmBt6ch2sBg8IfT1RoTEc1wPuSDnjQsUt61s9QeWNNeiEow4KM8PdQmfT/msRiixiCfFxTiA81l+3VSKTr85FJCJT06pJ6T/EFD/U1QjpMY5hmQM86nqB85fUhPC6BDYGXZoR2/ef4Lpwy0hYE65ViSushp00daLN8ETTWaNWs2kxc4YaIoHg7aWljHHdWrVz9u5JIAIoN3hUw7deoU98VnHBdnhTApswD14RFoHoM9J0D8+OOPf2NqkZMykydPvkrP2j937txbMt3f3387RswOwF4JEfHKPlTGAINlY1D4M3B5jYOtFeOlke7u7hGYKXECeDnOGZiRkfG7lVCZGXg5IN5NgDcIw20bALsO4oz1YX0H6fgswDsM+bshijDl6lb1C19/SADk35VR6qgBvMxHA/VQjg7/BMP5fLrveWm5yeouxzUG3ifMW/nauEGWKEAwrD5b9dAmddQXfI2pCysD0w9xPgWdFtKiRYso2Z59+vTZzJQEws9bzzy8Y8eOF02A+E+8FuCdBwX7zKTMVCgajwafkOF5yRrSkK8pQCZ+Lf+jo6MfBgUFsRN6hSzvU0OZ56JM5rRp0zj/A+a4zKlpJGGHOi0mJua6LMdRCPSHF6IyzmbgtTpJwR4nhugxrq6uy2y1uBwGWbNmzV6yCkMBXBfEbS2TFLycMotJCiN4XTEJ4CPA2xtOTj1YdL1MsBomVAJouF4qwDsCjhxTgSCmEnzt+Br1j5qV1F62onze09NiOd8XtCFIPPMjPcTzcEY0I15f+2qOhb9OR2NbuO3qGS9CbKAtwXj+e1CeieeS1S2+Hh6ojiyJeAH01HmWGTkdnQg2zjoxn61fv34SLORCOGXbiGteN+aD5V1mQhsWA8ALTcA7DgrGijaGOO9LsWIC3iM4axxZuEWO2E9jx479NTw8nO/LjteJuLi4+4YyPKrdRpmbVOZHzk+08UcGLRRwQ2xsbIbB8qahPp0RuSopfC/bpod59oa0Ywd5opnWwMr8t1+/filhYWFzQkJCRoF/yo2XeoEOW8dAXg+cxfSwnQl4LVO1AkjdkF+vFtNz7+5Qlr5Dfckh+V/wcARhAIufl5oFa/msThW1lWOys0LVMU67tUPdAfgGIgw2WjxT0xRfXP+IhvjNidHqYNN6lqF4JIDPMlIriADve6A0DOLRYf1VKl/fu0zdvoPJD3YkoQD87KE8cWDmkPEGgKVLl57kqXuz6WFymq+Cty42hr849IaIRKIJeEdj5OFJnaCBAwcmGfOQI/5b48aNf/Lz87vLkQSdHhkZeZnK7CSak25WpnLlyjepzB1ZhrB2AkoWv3DhwvPGrWODBw9eWbNmzYGYCHIFHhyyXJjDIRd9kwcPHvy3fKAZcDt06JCITqklZo2KiEXFhbWzxyDPYmGO2bJIF1hYbwGkjrDG5eAE6kUgOjLhN9xPLcJs11FwZLaaI27vVD9x+vyxlijEIkQHFmlLuG62+panUJvVVzPIKiZx2u1dFqsRAP7VGjN+vrCiQbjWA9d55m3wp2HqK1j3C6P6Wix6Tyh1Z0xbR/OEhn6nQ6ssceRIMaXNEY8xHGbMCYdkgMI68+Kcz+7du2c6WrZq1Wq3CXiHgy55QVF5Zu26Lc/FGhgOE65OSEi4aksZcjq/Rz1jrM0IkqJuxCSVO/o4b46WRNoAXLlU0sGwLE4D1+LsGaMU7CQalkQqAd6CmCLmKdx2ArztkFZGLK4uhHOeqeqqJwREmbCNn6k0/n8pVV0Dt5wEbz6SeaiOAnRppZbqYZ+Fp5phkVpAkd6E5W+NurTCeSP89wv2f8FrxfN7gKO3BzAj5n6oDuvroX0tjloYLHR7WGm2Op8QfThrS3/cuXPncfv27ZOxWIlj7pM2btx43Cxvy5Yt93F+fX7z5s07GJ084fwygAe5ubnNJh77Y3a+TaNGjZYitMfPXrB169ZrWZUhpXrYpEmTzxHhmUQOabzZrhu6z2a0sekkhU2L0c2A6+XltQ4aWh2W1sGwQt5ZL0Y3c/asLEaXi8IdQQe44m8f+VKtYgE1qCrWyOYTnLo6+PD7q6aq5OS5ageDlukATwIQr9zu722ZIBgq+B0P06ETBqsEGub3MB0Y1E0lcoyYZ+j6d7YAvROsvd6dUQHOZzWxa6MygM0dP2DlVJWS8pn6evsXKhUWWYPdYtW83nkxJY3JjSkAT1sMk01gyblukQ0aNEhYsmTJaZ4h41k1uYpv//79t4hiHECYbiIc1AGIrIyLior6+tChQze4T3mkGzZsGFOZhHbt2m2h9Ovp6emXaUifjb7wELtWvDESRJGzuIWfw7F8rSh8v8mTJ+/mDbqgTYNQX6Y+M8jp2sIgNpYhH+cAlZmB0VDXM5wNIQcJOA878VT2KO/EQZtkCd5stwFJKsGai0o2Ewu9C8O0l0JHsvMUyFuHbt++/dTGbUByR0F+0AI3TKN6QOoirZjYjqMXsLshOuENkASAh/bDaqo+GCk6wRK2BA14D40fgvf6EJZwCIb8ZmJNcHE828mwZ64UQNwI1KYPnu2H83aoF9dlPCnVCQZv7DiLUxkm1v7qXRD1Ubf3cT0SK+rmCJmNSMh4gMEfz2gL8PfGO0UgX7SYAIkUDqI/Ro2aYtuTfP4YKNhsPHcWyoehjTujPdviPQaiDbMq0wWWXrfVSNQzCr8jhEJVQJvne60NmGvWrHmAEEckXlqvKHoLvwyMQBoWFhidMxs3YCpBOwrC03wD4KmK/3qFfV6xraQA7ueul+QBMJ5il0crWO76WIdRFZZGfwXIB0D2FTz2HXSq3v5j3KGcXyxkL4nRqyEsrTc6pyM6mOnHcDcXNVPP8vF/dHZLWHO9SLw8/Agdv9bKOAiKHwjL1QdOrCcsdm28W13UXc889jUosb9Q5OZil4Xek2jt+QOFUuqy9TAKVcPo0wLva61MC7HvsB7q2QH16YN8nZFeQ1BEh9fe+s7Wd9OmTTd5Kphn5tgzDQoKWsa/c+fOPbxv376fXmPru3E/WSGAsjTE2bArVy7mkRshK4NG1IBUB1h1eK0UOkkvQK8uFly/BStYB2B0Mdl4adzbpeuqlzjWBpjadG+rAu/vUdenBatFHMb7MU39LNYxhGEmqQHi2kXFAvnSOdiAWRWAKy12PbiLGHgjOLSN8V+/Y23xjsXENh+z5zcRG18bIr2iWORfAv8r2lCmrNgVbqxnQyttb/93+uiIvdhpIPdO5TX5foJxC7qTYVdzCbG1pbDYU6WBUkI0ptlWl+x23UoFchKWq/mCCS9WrklhAL/hahkiB8BKVzVsbM33Clvfi4hvWBRC2RJi0X1Zw/uVMXnHvIKKGZ9fVnxuwEXsoCgk9r4VsqFMcbEH0KyeLugLY9vbvA3+3/25JzvDxzekmH2Uwvjxj/xWNhbmEx1kb9jDVkA0aEHxDQRbvndgBLDeC8cWx4ccv8iv5qidHPudGWpx4sLh4HTEUOtq2GWc04+O5M/Be0kpYPKthOyeb/zYiYNhZ7AtZfKa7CEskEW9cvStif+UD+3l5NNFdla+wmKfxRdZrH1S6VW+NGPcvu6K4a8N+O4QTFoMA//sgOG7AqxRfisjyqt+7slaG2TXJsqG59v6XFvK2NJXr/Rlk7/rJ07tXhH4r/uNLxnqc9JbfOCQdRA7MHTcuAJGI7013i6Hdcuujn/FRwn/6ue+rpF6pQ7J/bi07dZXR0D05soqcI7qiA2LLmJLvIP6z/uW2P+7jsn9rL/tAJYOpLP4LoLx80u5wLXx+B+cTUKEm3GYQAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxMi0wNS0wMlQxOTo0Njo1MSswMTowMBx1tHgAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTItMDUtMDJUMTk6NDY6NTErMDE6MDBtKAzEAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAABJRU5ErkJggg==') -5px 8px no-repeat; + text-indent: 0; + background: none; + + // Vertically centre the 35px SVG in the 60px mobile header. + svg { + margin-top: ((60px - 35px) / 2); + } } -.ie7 #site-logo { - background: url($image-sprite) -8px 0px no-repeat; + +// Hide SVG logo (on homepage, see header_logo.html) by default. +.site-logo__svg { + display: none; + visibility: hidden; +} + +// Then show it again for browsers that support inline SVGs. +// (https://codepen.io/tigt/post/inline-svg-fallback-without-javascript-take-2) +svg|g.site-logo__svg { + display: inline; + visibility: visible; +} + +// Fall back to SVG/PNG background-image on non-homepage pages, +// and on the homepage when a browser doesn't support inline SVGs. +.site-logo__fallback { + display: block; + width: 175px; + height: 0; + padding-top: 60px; + overflow: hidden; + background-position: 0 50%; + background-repeat: no-repeat; + background-size: 175px 35px; + @include svg-background-image("/cobrands/fixmystreet/images/site-logo"); } .next-steps { @@ -220,12 +254,9 @@ $grid-breakpoint-sm: $mysoc-footer-breakpoint-sm; .mysoc-footer__org__logo--fms-platform { width: 205px; - background: transparent url('#{$mysoc-footer-image-path}logo-fms-platform.png') 0 0 no-repeat; + background-repeat: no-repeat; background-size: 205px 32px; - @media ($high-dpi-screen) { - background-image: url('#{$mysoc-footer-image-path}logo-fms-platform@2x.png'); - } - background-image: url('#{$mysoc-footer-image-path}logo-fms-platform.svg'), none; + @include svg-background-image('#{$mysoc-footer-image-path}logo-fms-platform'); } .fms-app-badges { diff --git a/web/cobrands/fixmystreet.com/fmsforcouncils.scss b/web/cobrands/fixmystreet.com/fmsforcouncils.scss index ee166b8fd..ce4828416 100644 --- a/web/cobrands/fixmystreet.com/fmsforcouncils.scss +++ b/web/cobrands/fixmystreet.com/fmsforcouncils.scss @@ -60,16 +60,6 @@ $fms-pink: #E65376; overflow: hidden; } - .councils-content-wrapper { - max-width: 66em; - margin: 0 auto; - padding: 0 1.5em; - @media (min-width: 60em) { - padding: 0 3em; - } - - } - .councils-logo { background-image: url('images/fms-for-councils/fms-fc-logo.svg'); background-size: 260px 68px; @@ -86,68 +76,12 @@ $fms-pink: #E65376; padding-bottom: 2em; } - .councils-hero__presentation { - background-color: #FED876; - padding-top: 1em; - padding-bottom: 3em; - margin-bottom: 175px; - } - - .councils-hero__title { - text-align: center; - font-weight: 500; - margin-left: auto; - margin-right: auto; - font-size: 1.35em; - margin-bottom: -150px; - max-width: 23em; - @media (min-width: 44em) { - font-size: 2.5em - } - } - - .councils-hero__product { - position: relative; - bottom: -170px; - max-width: 800px; - margin: 0 auto; - text-align: center; - display: block; - width: 100%; - @media (min-width: 44em) { - bottom: -200px; - } - } - - .councils-hero__subtitle { - max-width: 40em; - margin-left: auto; - margin-right: auto; - font-size: 1.125em; - line-height: 1.5em; - text-align: center; - padding: 0 1em; - @media (min-width: 44em) { - font-size: 1.3125em; - line-height: 1.5em; - } - } - - .councils-hero__subtitle__primary { - font-size: 1.35em; - line-height: 1.35em; - } - - .councils-hero__subtitle__secondary { - color: #777; - } - .councils-hero__demo-access { background-color: $fms-pink; border-radius: 3px; color: #fff; padding: 2em; - margin: 4em auto -4em auto; + margin: 4em auto 4em auto; max-width: 26em; position: relative; z-index: 1; @@ -205,580 +139,6 @@ $fms-pink: #E65376; } } - .councils-sales { - padding: 2em 0 5em; - .councils-content-wrapper { - max-width: 58em; - } - } - - .councils-sales__grid { - .flex & { - @include flex-container(); - @include flex-wrap(wrap); - @include justify-content(space-between); - } - .no-js &, - .no-flex & { - @include clearfix(); - } - - } - - .councils-features__feature { - width: 100%; - .no-js &, - .no-flex & { - float: left; - } - @media (min-width: 44em) { - width: 47%; - .no-js &, - .no-flex & { - margin-right: 3%; - } - } - h3 { - font-weight: normal; - margin-bottom: 0.25em; - } - p { - color: #777; - font-size: 0.875em; - } - } - - .councils-sales--benefits { - background-color: #F7F6F5; - border-bottom: 1px solid #e9e9e9; - padding-top: 5em; - - h2 { - font-size: 2.5em; - text-align: center; - color: $fms-pink; - } - p { - color: #666; - } - } - - .councils-sales--features { - border-top: 1px solid #e9e9e9; - padding-top: 2em; - h2 { - font-size: 2.5em; - text-align: center; - color: $fms-pink; - } -} - - .councils-features__thumb { - height: 63px; - width: 63px; - background-size: cover; - background-color: transparent; - background-repeat: no-repeat; - float: left; - margin-top: 18px; - } - - .councils-features__thumb--authority { - background-image: url('images/fms-for-councils/authority.svg'); - } - - .councils-features__thumb--automated-instruction { - background-image: url('images/fms-for-councils/automated-instruction.svg'); - } - - .councils-features__thumb--brand { - background-image: url('images/fms-for-councils/brand.svg'); - } - - .councils-features__thumb--customise { - background-image: url('images/fms-for-councils/customise.svg'); - } - - .councils-features__thumb--dashboard { - background-image: url('images/fms-for-councils/dashboard.svg'); - } - - .councils-features__thumb--end-to-end { - background-image: url('images/fms-for-councils/end-to-end.svg'); - } - - .councils-features__thumb--inspection { - background-image: url('images/fms-for-councils/inspection.svg'); - } - - .councils-features__thumb--integrated { - background-image: url('images/fms-for-councils/integrated.svg'); - } - - .councils-features__thumb--intelligent-routing { - background-image: url('images/fms-for-councils/intelligent-routing.svg'); - } - - .councils-features__thumb--open-standards { - background-image: url('images/fms-for-councils/open-standards.svg'); - } - - .councils-features__thumb--map-centric { - background-image: url('images/fms-for-councils/map-centric.svg'); - } - - .councils-features__thumb--mobile-app { - background-image: url('images/fms-for-councils/mobile-app.svg'); - } - - .councils-features__thumb--responsive-web { - background-image: url('images/fms-for-councils/responsive-web.svg'); - } - - .councils-features__thumb--syncronised { - background-image: url('images/fms-for-councils/syncronised.svg'); - } - - .order-now-button { - background-color: $fms-pink; - color: #fff; - border: 0; - text-transform: none; - padding: 0.6em 1.5em; - text-align: center; - display: block; - margin: 2em auto 0; - border-radius: 3px; - max-width: 5em; - &:hover, - &:active, - &:focus { - background-color: desaturate(darken($fms-pink, 10%), 10%); - text-decoration: none; - } - } - - .councils-clients { - background-color: #FED876; - padding: 1em 0 2.5em; - h2 { - font-size: 2.5em; - text-align: center; - color: #333; - } - } - - .councils-clients__grid { - .flex & { - @include flex-container(); - @include justify-content(space-around); - @include flex-align(center); - @include flex-wrap(wrap); - } - .no-js &, - .no-flex & { - @include clearfix(); - } - margin: 0 2%; - @media (min-width: 44em) { - flex-wrap: nowrap; - } - } - - .councils-clients__client { - text-align: left; - .no-js &, - .no-flex & { - float: left; - width: 50%; - @media (min-width: 44em) { - width: 20%; - } - } - } - - - .screenshot-of-themes { - background-color: #FED876; - } - - .councils-compatibility { - background-color: $fms-pink; - padding: 0.5em 0 2.5em; - a { - color: #fff; - opacity: 0.8; - } - h2, h3 { - color: #fff; - } - h2 { - margin-top: 1em; - margin-bottom: 0.25em; - } - h3 { - font-size: 0.875em; - } - ul { - list-style: none outside none; - padding: 0; - margin: 0; - li { - list-style: none outside none; - font-size: 0.875em; - } - } - } - - .councils-compatibility__grid { - .flex & { - @include flex-container(); - @include flex-wrap(wrap); - @include justify-content(flex-start); - } - - .no-js &, - .no-flex & { - @include clearfix(); - } - - @media (min-width: 44em) { - flex-wrap: nowrap; - } - } - - .councils-compatibility__item { - width: 100%; - .no-js &, - .no-flex & { - float: left; - } - @media (min-width: 44em) { - width: 25%; - .no-js &, - .no-flex & { - margin-right: 3%; - } - } - } - - .split-list { - @include flex-container(); - @include justify-content(flex-start); - @include flex-align(flex-start); - @include flex-direction(row); - @include flex-wrap(wrap); - - li { - width: 50%; - -webkit-flex-grow: 1; - -ms-flex-grow: 1; - flex-grow: 1; - } - } - - .councils-compatibility__item--wide { - width: 100%; - .no-js &, - .no-flex & { - float: left; - } - @media (min-width: 44em) { - width: 50%; - .no-js &, - .no-flex & { - margin-right: 3%; - } - } - } - - .councils-pricing { - padding: 2em 0; - margin-bottom: 3em; - h2 { - font-size: 2.5em; - text-align: center; - color: #FEC32B; - } - } - - .pricing-table { - th, td { - text-align: left; - font-weight: normal; - vertical-align: middle; - border: 1px solid #e9e9e9; - } - - th { - background-color: #F7F6F5; - - &.blank { - background-color: transparent; - border: none; - } - } - - th[scope="row"] { - @media (min-width: 44em) { - width: 30%; - } - } - - td { - width: 15%; - line-height: 1.5em; - } - - span { - display: inline-block; - padding: 0.666em 1em; - box-sizing: border-box; - } - } - - .pricing-table__tier-name { - font-weight: 500; - font-size: 1.25em; - } - - .pricing-table__feature-name { - text-align: left; - font-size: 0.875em; - } - - .pricing-table__feature-value { - font-size: 0.875em; - line-height: 1.4em; - width: 100%; - } - - .pricing-table__show-more { - td { - border: none; - padding: 2em 1em; - text-align: center; - } - - .button { - display: inline-block; - padding: 0.6em 1.5em; - text-align: center; - - border-radius: 3px; - border: none; - background-color: #F7F6F5; - color: #333; - font-size: 0.875em; - line-height: 1.5em; - font-weight: normal; - - &:hover, - &:active, - &:focus { - text-decoration: none; - background-color: #FED876; - } - } - } - - .pricing-table__prices { - td { - background-color: $fms-pink; - color: #fff; - border-color: darken($fms-pink, 10%); - } - } - - .pricing-table__price { - font-weight: 500; - font-size: 1.25em; - } - - .boolean-icon { - margin: 0 auto; - display: inline-block; - font-style: normal; - width: 24px; - height: 24px; - background-image: url('images/fms-for-councils/boolean-no.svg'); - background-repeat: no-repeat; - background-position: center; - text-indent: 100%; - white-space: nowrap; - overflow: hidden; - } - - .boolean-icon--no { - background-image: url('images/fms-for-councils/boolean-no.svg'); - } - - .boolean-icon--yes { - background-image: url('images/fms-for-councils/boolean-yes.svg'); - } - - // Verticalise the table on narrow screens - @media (max-width: 54em) { - .pricing-table { - &, - tr, - th, - th[scope="row"], - td, - tbody, - span { - display: block; - width: auto; - } - - thead { - display: none; - } - - th, - td { - @include clearfix(); - border: none; - } - - tr { - border: 1px solid #e9e9e9; - } - - .pricing-table__show-more tr { - border: none; - } - - tr + tr { - border-top: none; - } - - td[data-tier-name] { - &:before { - content: attr(data-tier-name); - display: block; - font-size: 0.875em; - line-height: 1.4em; - color: darken(#FEC32B, 15%); - float: left; - padding: 0.666em 1em; - width: 5em; - } - } - - // Collapse padding between "rows" of a feature - td + td .pricing-table__feature-value, - td + td[data-tier-name]:before { - padding-top: 0; - } - - .boolean-icon { - margin: -0.33em 0; - } - } - } - - .council-case-studies { - margin-bottom: 3em; - border-top: 1px solid #e9e9e9; - background-color: #60B6C7; - padding: 2em 0; - h2 { - text-align: center; - color: #fff; - margin-bottom: 1.5em; - } - } - - .council-case-studies__grid { - .flex & { - @include flex-container(); - @include justify-content(space-around); - @include flex-wrap(wrap); - @include flex-align(center); - } - .no-js &, - .no-flex & { - @include clearfix(); - } - @media (min-width: 44em) { - @include flex-wrap(nowrap); - @include justify-content(space-between); - } - margin: 0 3.3334%; - } - - .council-case-studies__grid-item { - width: 100%; - max-width: 380px; - .no-js &, - .no-flex & { - float: left; - margin: 0 auto; - } - @media (min-width: 44em) { - width: 31%; - .no-js &, - .no-flex & { - margin-right: 2%; - max-width: none; - } - } - } - - .council-case-studies__case-study { - background-repeat: no-repeat; - background-size: cover; - background-position: center; - a { - display: block; - color: #fff; - font-size: 1.25em; - display: block; - background-color: rgba(0,0,0,0.3); - padding: 5em 2em; - text-align: center; - margin-bottom: 1em; - @media (min-width: 30em) { - margin-bottom: 4em; - padding: 3em 2em; - } - @media (min-width: 48em) { - padding: 5em 2em; - } - &:hover, - &:active, - &:focus { - text-decoration: none; - background-color: rgba(0,0,0,0.1); - text-shadow: 0 2px 1px rgba(0,0,0,0.8); - } - } - } - - .council-case-studies__case-study--bristol { - background-image: url('images/fms-for-councils/bristol.jpg'); - } - - .council-case-studies__case-study--zurich { - background-image: url('images/fms-for-councils/zurich.jpg'); - } - - .council-case-studies__case-study--barnet { - background-image: url('images/fms-for-councils/barnet.jpg'); - } - - .radio-as-buttons { - label { - margin-right: 0.5em; - margin-top: 0; - font-size: 0.875em; - } - input { - margin-right: 1em; - } - } - .checkbox-label { margin-left: 25px; } @@ -794,60 +154,6 @@ $fms-pink: #E65376; color: #777; } - .council-order { - position: relative; - background-color: #F7F6F5; - border: 1px solid #e9e9e9; - border-left: 0; - border-right: 0; - padding: 4em 0; - h2 { - color: $fms-pink; - font-size: 2.5em; - } - } - - .council-order__form { - max-width: 48em; - padding-bottom: 3em; - position: relative; - z-index: 1; - label { - font-weight: normal; - } - textarea { - height: 10em; - } - textarea, - input[type="text"], - input[type="tel"], - input[type="email"] { - border: 1px solid #ccc; - width: 100%; - padding: 0.5em; - border-radius: 3px; - font-size: 1em; - box-sizing: border-box; - @media (min-width: 44em) { - max-width: 27em; - } - } - input[type="submit"] { - background-image: none; - background-color: $fms-pink; - color: #fff; - border: 0; - text-transform: none; - padding: 0.6em 1.5em; - font-family: 'Rubik', sans-serif; - &:hover, - &:active, - &:focus { - background-color: desaturate(darken($fms-pink, 10%), 10%); - } - } - } - .form-group { position: relative; @media (min-width: 44em) { @@ -874,28 +180,6 @@ $fms-pink: #E65376; } } - .council-order__screenshot { - display: none; - @media (min-width: 44em) { - display: block; - background-image: url('images/fms-for-councils/window-mockup.jpg'); - background-repeat: no-repeat; - background-position: top left; - background-size: cover; - height: 750px; - position: absolute; - z-index: 0; - right: 0; - width: 500px; - bottom: 50px; - } - @media (min-width: 82em) { - width: 748px; - right: 46px; - } - - } - .credits { color: #777; border-top: 1px solid #e9e9e9; diff --git a/web/cobrands/fixmystreet.com/front.js b/web/cobrands/fixmystreet.com/front.js new file mode 100644 index 000000000..f544fb657 --- /dev/null +++ b/web/cobrands/fixmystreet.com/front.js @@ -0,0 +1,38 @@ +(function(){ + if (!document.querySelector) { return; } + if ( -1 !== navigator.userAgent.indexOf('Google Page Speed')) { return; } + if (document.cookie.indexOf('has_seen_country_message') !== -1) { return; } + + /* Front page banner for other countries */ + var request = new XMLHttpRequest(); + request.open('GET', 'https://gaze.mysociety.org/gaze-rest?f=get_country_from_ip', true); + request.onreadystatechange = function() { + if (this.readyState === 4) { + if (this.status >= 200 && this.status < 400) { + var data = this.responseText; + if ( data && data != 'GB\n' ) { + var banner = document.createElement('div'); + banner.className = 'top_banner top_banner--country'; + var close = document.createElement('a'); + close.className = 'top_banner__close'; + close.innerHTML = 'Close'; + close.href = '#'; + close.onclick = function(e) { + document.querySelector('.top_banner--country').style.display = 'none'; + var t = new Date(); t.setFullYear(t.getFullYear() + 1); + document.cookie = 'has_seen_country_message=1; path=/; expires=' + t.toUTCString(); + }; + var p = document.createElement('p'); + p.innerHTML = 'This site is for reporting <strong>problems in the UK</strong>. There are FixMyStreet sites <a href="http://fixmystreet.org/sites/">all over the world</a>, or you could set up your own using the <a href="http://fixmystreet.org/">FixMyStreet Platform</a>.'; + banner.appendChild(close); + banner.appendChild(p); + document.body.insertBefore(banner, document.body.firstChild); + document.querySelector('.top_banner--country').style.display = 'block'; + } + } + } + }; + request.send(); + request = null; + +})(); diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/all-yellow.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/all-yellow.jpg Binary files differdeleted file mode 100644 index e56ab32d2..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/all-yellow.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/angus-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/angus-logo.png Binary files differdeleted file mode 100644 index 74b5c7345..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/angus-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/authority.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/authority.svg deleted file mode 100644 index 7d32cfb71..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/authority.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>authority</title><g fill="#E65376" fill-rule="evenodd"><path d="M54.214 57.693h-4.29v-4.26h-3.06v4.26h-4.29v-25.74l11.64 2.62v23.12zm-36.892-37.67l21.928-3.41v41.08h-8.382v-8.32h-5.163v8.32h-8.383v-37.67zm39.487 9.6l-13.27-3.25c-.327-.08-.653-.09-.966-.05v-10.6c.713-.58 1.116-1.5.965-2.47-.227-1.45-1.59-2.45-3.038-2.22l-25.25 3.93c-1.453.22-2.445 1.58-2.22 3.03.107.69.466 1.26.966 1.66v39.7c0 .92.743 1.66 1.662 1.66h40.217c.917 0 1.66-.74 1.66-1.66v-24.87c.588-.35 1.045-.92 1.22-1.64.35-1.43-.522-2.87-1.948-3.22z"/><path d="M25.705 26.403h5.163v-5.03h-5.163M25.705 35.503h5.163v-5.03h-5.163M25.705 44.603h5.163v-5.03h-5.163M46.864 39.433h3.06v-2.98h-3.06M46.864 44.823h3.06v-2.98h-3.06M46.864 50.213h3.06v-2.98h-3.06"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/automated-instruction.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/automated-instruction.svg deleted file mode 100644 index 3cc613005..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/automated-instruction.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>automated-instruction</title><g fill="#E65376" fill-rule="evenodd"><path d="M47.666 27.09c-1.9 0-3.44-1.54-3.44-3.44s1.54-3.44 3.44-3.44 3.44 1.54 3.44 3.44-1.54 3.44-3.44 3.44zm10.816-5.19l-2.878-.76c-.152-.48-.348-.94-.58-1.38l1.504-2.58c.477-.88.683-1.79 0-2.47-.683-.69-1.646-.47-2.475 0l-2.62 1.52c-.422-.21-.863-.4-1.323-.54l-.775-2.94c-.29-.96-.785-1.75-1.75-1.75-.968 0-1.493.84-1.752 1.75l-.79 3c-.43.15-.84.32-1.234.53l-2.695-1.57c-.885-.48-1.792-.69-2.474 0-.684.68-.464 1.64 0 2.47l1.594 2.73c-.19.38-.358.77-.49 1.18l-3.058.81c-.963.29-1.75.78-1.75 1.75s.834 1.49 1.75 1.75l3.058.81c.132.4.298.8.49 1.18l-1.593 2.73c-.477.88-.684 1.79 0 2.47.683.69 1.645.47 2.475 0l2.694-1.57c.392.21.804.38 1.232.53l.79 3c.29.96.785 1.75 1.752 1.75.966 0 1.492-.84 1.75-1.75l.776-2.94c.46-.14.9-.33 1.323-.54l2.62 1.52c.886.48 1.792.69 2.475 0 .684-.68.464-1.64 0-2.47l-1.503-2.58c.232-.44.428-.9.58-1.38l2.877-.76c.963-.29 1.752-.78 1.752-1.75s-.836-1.49-1.752-1.75z"/><path d="M27.5 48.78c-2.76 0-4.998-2.24-4.998-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm14.752-6.75l-2.922-.77c-.087-.41-.197-.82-.326-1.21l2.146-2.13c.692-.73 1.127-1.56.642-2.39-.484-.84-1.47-.88-2.392-.64l-2.927.79c-.278-.3-.57-.6-.877-.87l.798-2.93c.23-.98.195-1.91-.643-2.39-.836-.49-1.707-.03-2.39.64l-2.128 2.14c-.395-.12-.798-.23-1.21-.32l-.77-2.92c-.29-.97-.784-1.75-1.75-1.75-.967 0-1.492.83-1.75 1.75l-.77 2.92c-.412.09-.815.2-1.21.32l-2.13-2.14c-.733-.69-1.553-1.13-2.39-.64-.84.48-.876 1.47-.642 2.39l.8 2.93c-.31.27-.602.56-.88.87l-2.927-.79c-.98-.24-1.908-.2-2.39.64-.485.83-.024 1.71.64 2.39l2.144 2.13c-.128.39-.238.8-.325 1.21l-2.92.77c-.964.29-1.752.78-1.752 1.75 0 .96.835 1.49 1.75 1.75l2.922.77c.087.41.197.81.325 1.21l-2.145 2.13c-.69.73-1.124 1.55-.64 2.39.483.84 1.468.87 2.39.64l2.928-.8c.278.31.57.6.878.88l-.798 2.93c-.23.98-.197 1.91.64 2.39.84.48 1.71.02 2.392-.64l2.13-2.15c.394.13.798.24 1.21.33l.77 2.92c.288.96.783 1.75 1.75 1.75.966 0 1.49-.84 1.75-1.75l.77-2.92c.412-.09.816-.2 1.21-.33l2.13 2.15c.73.69 1.553 1.12 2.39.64.838-.48.874-1.47.642-2.39l-.798-2.93c.307-.28.6-.57.877-.88l2.927.8c.98.23 1.908.2 2.392-.64.485-.84.023-1.71-.642-2.39l-2.146-2.13c.13-.4.24-.8.326-1.21l2.922-.77c.963-.29 1.75-.79 1.75-1.75 0-.97-.834-1.49-1.75-1.75z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/barnet-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/barnet-logo.png Binary files differdeleted file mode 100644 index 1a2fc0f56..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/barnet-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/barnet.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/barnet.jpg Binary files differdeleted file mode 100644 index f25f0418d..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/barnet.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/boolean-no.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/boolean-no.svg deleted file mode 100644 index 3e5743da8..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/boolean-no.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Artboard</title><path d="M5 10h14v4H5z" fill="#EFECEA" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/boolean-yes.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/boolean-yes.svg deleted file mode 100644 index fa532daeb..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/boolean-yes.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Artboard Copy</title><g fill="#FED876" fill-rule="evenodd"><path d="M7 16.763L18.764 5l2.828 2.828L9.83 19.592z"/><path d="M6.828 11l5.02 5.02-2.827 2.83L4 13.828z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/brand.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/brand.svg deleted file mode 100644 index 92edb9b78..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/brand.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>brand</title><g fill="#E65376" fill-rule="evenodd"><path d="M27.308 28.975c-.42-.42-1.097-.45-1.554-.07l-1.388 1.18c-9.047 7.56-12.396 8.32-12.4 8.32-.427.07-.78.37-.91.78-.133.41-.025.86.28 1.17l2.065 2.07c.358.35.903.43 1.346.2l3.55-1.85-2.267 2.83c-.37.45-.332 1.11.082 1.53l1.722 1.72c.347.34.874.43 1.315.22l2.786-1.35-1.36 2.77c-.218.44-.13.97.217 1.32l.888.88c.393.4 1.01.45 1.467.14l3.127-2.18-1.998 3.43c-.262.45-.187 1.02.182 1.39l.82.82c.42.42 1.09.45 1.545.08l4.002-3.31-2.515 5.17c-.213.44-.125.97.222 1.32l2.21 2.2c.298.3.737.4 1.144.28.403-.12.71-.47.797-.88.004-.02.488-2.18 4.54-7.64l5.1-6.04c.385-.45.358-1.13-.066-1.55l-14.95-14.95M51.68 17.025c.7-.7 1.83-.7 2.528 0 .696.7.696 1.83 0 2.53-.7.69-1.83.69-2.528 0-.7-.7-.7-1.83 0-2.53zm-5.478 13.9l11.9-7.48c2.844-2.84 2.844-7.47 0-10.32-2.844-2.84-7.473-2.84-10.353.04l-7.41 11.81s-1.575 2.13-2.882 1.82l-1.817-1.82c-2.115-2.11-4.145-1.33-4.965-.59l-1.236 1.23c-.45.45-.45 1.18 0 1.63l14.413 14.41c.45.45 1.175.45 1.624 0l1.276-1.27c.704-.78 1.478-2.82-.635-4.93l-1.69-1.69c-.275-1.19 1.456-2.59 1.774-2.84z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/bringyourown.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/bringyourown.svg deleted file mode 100644 index 01cc7f83e..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/bringyourown.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>bringyourown</title><g fill="#E65376" fill-rule="evenodd"><path d="M58.325 56.036H54.18c-.957 0-1.728.773-1.728 1.727 0 .954.77 1.727 1.728 1.727h4.145c.952 0 1.725-.773 1.725-1.727 0-.954-.773-1.727-1.725-1.727M47.96 56.036H43.82c-.956 0-1.73.773-1.73 1.727 0 .954.774 1.727 1.73 1.727h4.143c.956 0 1.73-.773 1.73-1.727 0-.954-.774-1.727-1.73-1.727M27.236 56.036H23.09c-.952 0-1.725.773-1.725 1.727 0 .954.773 1.727 1.726 1.727h4.146c.955 0 1.727-.773 1.727-1.727 0-.954-.772-1.727-1.727-1.727M16.873 56.036H12.73c-.954 0-1.73.773-1.73 1.727 0 .954.776 1.727 1.73 1.727h4.143c.954 0 1.727-.773 1.727-1.727 0-.954-.773-1.727-1.727-1.727M25.127 41.04v-4.135c2.596 1.472 6.656 2.23 10.687 2.23 4.033 0 8.092-.76 10.688-2.23v4.135c0 1.146-3.984 3.24-10.507 3.28-.127-.038-.642-.04-.76-.01-6.28-.12-10.108-2.147-10.108-3.27zm21.375-23.96c0 1.16-4.055 3.283-10.688 3.283-6.63 0-10.687-2.124-10.687-3.282 0-1.157 4.058-3.282 10.687-3.282 6.633 0 10.688 2.125 10.688 3.283zM25.127 28.92c2.596 1.47 6.656 2.23 10.687 2.23 4.033 0 8.092-.76 10.688-2.232v4.135c0 1.158-4.055 3.283-10.688 3.283-6.63 0-10.687-2.125-10.687-3.283V28.92zm0-7.988c2.596 1.472 6.656 2.23 10.687 2.23 4.033 0 8.092-.76 10.688-2.23v4.134c0 1.158-4.055 3.284-10.688 3.284-6.63 0-10.687-2.126-10.687-3.284v-4.134zM37 55.352v-8.254c6.294-.232 12.302-2.303 12.302-6.058V17.132l-.002-.018.002-.033c0-3.99-6.784-6.08-13.488-6.08-6.7 0-13.484 2.09-13.484 6.08v23.96c0 3.67 5.74 5.73 11.872 6.038v8.274c-.834.485-1.402 1.378-1.402 2.41 0 1.544 1.257 2.8 2.8 2.8 1.545 0 2.802-1.256 2.802-2.8 0-1.032-.568-1.925-1.4-2.41z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/bristol-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/bristol-logo.png Binary files differdeleted file mode 100644 index 27c05d66f..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/bristol-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/bristol.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/bristol.jpg Binary files differdeleted file mode 100644 index 9db9ce8e0..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/bristol.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/bromley-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/bromley-logo.png Binary files differdeleted file mode 100644 index 4cd1c60a4..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/bromley-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/customise.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/customise.svg deleted file mode 100644 index 354ebb025..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/customise.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>customise</title><g fill="#E65376" fill-rule="evenodd"><path d="M54.846 58.906l-5.28-7.96 3.102-2.06 5.282 7.95-3.104 2.07zm-23.733-35.75l-5.35-8.05 3.104-2.06 5.35 8.05-3.104 2.06zm28.808 33.37l-6.198-9.33-.002-.01-17.527-26.39h-.004-.002l-6.268-9.44c-.246-.38-.81-.47-1.218-.2l-4.614 3.06c-.422.28-.554.81-.297 1.2l6.265 9.43c.002 0 .004 0 .005.01h.002l17.536 26.41s.003 0 .005.01l6.19 9.32c.148.22.403.36.683.36.19 0 .375-.06.535-.17l4.614-3.06c.42-.28.553-.8.297-1.2zM24.984 33.536c.065 0 .13-.02.183-.06.106-.08.152-.21.113-.34l-.993-3.24 2.73-2.05c.106-.08.15-.22.11-.34-.04-.13-.157-.21-.288-.22l-3.43-.07-1.124-3.2c-.044-.12-.16-.21-.293-.21-.13 0-.247.09-.29.21l-1.126 3.2-3.428.07c-.133.01-.25.09-.29.22-.04.12.004.26.11.34l2.73 2.05-.993 3.24c-.038.13.007.26.113.34.107.08.25.08.358 0l2.815-1.93 2.816 1.93c.053.04.112.06.174.06M29.335 39.356l-2.295-.05-.754-2.14c-.028-.08-.107-.14-.194-.14-.088 0-.166.06-.195.14l-.753 2.14-2.296.05c-.087 0-.165.06-.192.14-.027.09.003.18.072.23l1.827 1.37-.664 2.17c-.024.09.007.18.078.23.07.05.168.05.24 0l1.884-1.29 1.884 1.29c.036.03.077.04.117.04.044 0 .086-.01.123-.04.07-.05.1-.14.076-.23l-.665-2.17 1.828-1.37c.07-.05.1-.14.073-.23-.028-.08-.105-.14-.193-.14M16.795 35.306l-1.645-.03-.54-1.54c-.02-.06-.078-.1-.14-.1-.063 0-.12.04-.14.1l-.54 1.54-1.645.03c-.063 0-.12.05-.138.1-.02.06.002.13.052.17l1.31.98-.478 1.56c-.018.06.003.12.055.16.05.04.12.04.17 0l1.353-.92 1.35.92c.027.02.056.03.085.03.03 0 .062-.01.088-.03.05-.04.072-.1.054-.16l-.477-1.56 1.31-.98c.052-.04.073-.11.054-.17-.02-.05-.076-.1-.14-.1"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/dashboard.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/dashboard.svg deleted file mode 100644 index 84d98dd45..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/dashboard.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>dashboard</title><path d="M13.844 23.23h-1.472c-.758 0-1.372-.61-1.372-1.37 0-.75.614-1.37 1.372-1.37h1.473C14.4 19.04 15.803 18 17.447 18c1.643 0 3.047 1.04 3.602 2.49h.913c.555-1.45 1.958-2.49 3.603-2.49 1.643 0 3.047 1.04 3.6 2.49h.917c.555-1.45 1.957-2.49 3.602-2.49 1.644 0 3.047 1.04 3.602 2.49h21.995c.757 0 1.37.62 1.37 1.37 0 .76-.613 1.37-1.37 1.37H37.287c-.554 1.45-1.958 2.49-3.602 2.49-1.645 0-3.048-1.04-3.602-2.49h-.915c-.554 1.45-1.958 2.49-3.602 2.49-1.645 0-3.05-1.04-3.603-2.49h-.914c-.556 1.45-1.96 2.49-3.603 2.49-1.644 0-3.05-1.04-3.603-2.49zM59.282 34.7c.757 0 1.37.61 1.37 1.37 0 .76-.613 1.37-1.37 1.37h-9.816c-.554 1.45-1.958 2.49-3.602 2.49-1.645 0-3.05-1.04-3.603-2.49h-.913c-.555 1.45-1.958 2.49-3.603 2.49-1.643 0-3.048-1.04-3.602-2.49H21.05c-.556 1.45-1.96 2.49-3.603 2.49-1.644 0-3.05-1.04-3.603-2.49h-1.472c-.758 0-1.372-.61-1.372-1.37 0-.76.614-1.37 1.372-1.37h1.473c.553-1.45 1.958-2.49 3.602-2.49 1.643 0 3.047 1.04 3.602 2.49H34.14c.555-1.45 1.96-2.49 3.602-2.49 1.645 0 3.048 1.04 3.602 2.49h.915c.555-1.45 1.96-2.49 3.604-2.49 1.644 0 3.047 1.04 3.6 2.49h9.818zm-1.697 14.21h1.697c.757 0 1.37.61 1.37 1.37 0 .76-.613 1.37-1.37 1.37h-1.697c-.554 1.45-1.958 2.49-3.602 2.49-1.645 0-3.05-1.04-3.603-2.49h-.914c-.554 1.45-1.958 2.49-3.602 2.49-1.645 0-3.05-1.04-3.603-2.49h-.913c-.555 1.45-1.958 2.49-3.603 2.49-1.643 0-3.048-1.04-3.602-2.49h-21.77c-.758 0-1.372-.61-1.372-1.37 0-.76.614-1.37 1.372-1.37h21.77c.555-1.45 1.96-2.49 3.602-2.49 1.645 0 3.048 1.04 3.602 2.49h.915c.555-1.45 1.96-2.49 3.604-2.49 1.644 0 3.047 1.04 3.6 2.49h.916c.554-1.45 1.958-2.49 3.603-2.49 1.644 0 3.047 1.04 3.602 2.49z" fill="#E65376" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/device-mockup.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/device-mockup.png Binary files differdeleted file mode 100644 index f58fe121a..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/device-mockup.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/download-icon.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/download-icon.png Binary files differdeleted file mode 100644 index 2bd373f70..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/download-icon.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/end-to-end.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/end-to-end.svg deleted file mode 100644 index 85243faeb..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/end-to-end.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>end-to-end</title><g fill="#E65376" fill-rule="evenodd"><path d="M51.637 44.288l-11.567 1.84c-.382.06-.698.33-.818.7-.12.36-.022.77.252 1.04l2.712 2.71c-4.223 1.11-8.826.3-12.516-2.49-1.06-.8-2.565-.59-3.364.47-.8 1.06-.59 2.56.468 3.36 3.5 2.65 7.617 3.96 11.727 3.96 2.54 0 5.075-.52 7.463-1.52l3.244 3.25c.197.19.46.3.728.3.108 0 .215-.02.32-.05.367-.12.637-.44.698-.82l1.833-11.57c.052-.32-.056-.65-.29-.89-.232-.23-.562-.34-.89-.29M50.006 20.738l1.12-4.45c.097-.38-.028-.78-.32-1.03-.29-.26-.7-.33-1.06-.18l-10.87 4.35c-.307.13-.536.39-.616.71-.08.32-.004.66.208.91l7.505 8.99c.198.24.488.37.79.37.075 0 .154-.01.23-.03.377-.08.674-.37.768-.75l.938-3.71c3.074 3.03 4.74 7.33 4.294 11.86-.13 1.32.835 2.5 2.156 2.63.08.01.16.01.237.01 1.22 0 2.267-.93 2.39-2.17.684-6.97-2.384-13.53-7.77-17.51M29.044 31.778c-.264-.29-.665-.4-1.037-.3l-3.692 1.04c1.102-4.22 4.053-7.82 8.27-9.68 1.216-.53 1.77-1.95 1.235-3.16-.534-1.22-1.952-1.77-3.166-1.24-6.48 2.85-10.705 8.81-11.483 15.52l-4.417 1.24c-.374.1-.657.41-.733.79-.076.38.068.77.37 1.01l9.19 7.26c.182.15.407.23.636.23.093 0 .187-.02.28-.04.315-.09.572-.33.686-.64l4.07-10.98c.133-.36.053-.77-.208-1.05"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/greenwich-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/greenwich-logo.png Binary files differdeleted file mode 100644 index 0f202c7e7..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/greenwich-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/hart-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/hart-logo.png Binary files differdeleted file mode 100644 index 376623469..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/hart-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/hart.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/hart.png Binary files differdeleted file mode 100644 index 362df3dc8..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/hart.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/highway.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/highway.jpg Binary files differdeleted file mode 100644 index 98f53617b..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/highway.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/inspection.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/inspection.svg deleted file mode 100644 index 6c9b6c0fa..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/inspection.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>inspection</title><g fill="#E65376" fill-rule="evenodd"><path d="M39.66 54.65l-2.232 2.2-4.06-4.01c-.323-.32-.742-.48-1.16-.48-.42 0-.84.16-1.16.48l-4.06 4.01-4.06-4.01c-.644-.63-1.677-.63-2.32 0l-3.904 3.86-2.4-2.38V15.3H39.66v1.6c1.168.42 2.276.96 3.3 1.63v-4.88c0-.91-.737-1.65-1.65-1.65H12.652c-.91 0-1.652.74-1.652 1.65v41.36c0 .45.178.87.492 1.18l4.05 4c.645.64 1.677.64 2.323 0l3.903-3.86 4.058 4.01c.645.64 1.678.64 2.322 0l4.06-4.01 4.06 4.01c.322.32.74.48 1.16.48.42 0 .838-.16 1.16-.48l3.884-3.83c.313-.31.49-.73.49-1.17v-9.95c-1.026.66-2.134 1.22-3.302 1.63v7.63"/><path d="M39.66 40.65c-1.558.97-3.39 1.53-5.36 1.54-3.436-.01-6.464-1.71-8.317-4.31h9.857c.91 0 1.65-.74 1.65-1.65 0-.91-.74-1.65-1.65-1.65H24.558c-.042 0-.082.01-.125.01-.225-.84-.358-1.72-.36-2.63.002-.93.138-1.82.37-2.68.04.01.075.02.115.02H35.84c.91 0 1.65-.74 1.65-1.65 0-.92-.74-1.66-1.65-1.66h-9.826c1.855-2.57 4.87-4.25 8.287-4.26 1.97.01 3.802.57 5.36 1.53 1.337.83 2.467 1.95 3.3 3.28.988 1.57 1.568 3.43 1.572 5.42-.004 1.99-.584 3.85-1.57 5.42-.835 1.33-1.965 2.45-3.302 3.27zm7.993-8.69c0-4.07-1.825-7.7-4.692-10.15-.985-.84-2.094-1.54-3.3-2.07-1.64-.72-3.452-1.13-5.36-1.13-3.378 0-6.455 1.27-8.806 3.34h-6.832c-.365 0-.66.29-.66.66 0 .36.295.66.66.66h5.522c-1.254 1.46-2.193 3.19-2.727 5.09h-2.795c-.365 0-.66.3-.66.66 0 .31.204.55.48.63.057.02.117.04.18.04h2.5c-.128.74-.208 1.49-.208 2.27 0 1.01.12 1.99.333 2.93h-2.625c-.025 0-.048.01-.074.01-.328.04-.586.31-.586.65 0 .36.295.66.66.66h2.994c.665 1.98 1.774 3.76 3.22 5.2h-6.214c-.365 0-.66.3-.66.66 0 .36.295.66.66.66h7.778c2.207 1.61 4.92 2.58 7.86 2.58 1.908 0 3.72-.41 5.36-1.13 1.206-.53 2.315-1.23 3.3-2.07 2.868-2.45 4.693-6.09 4.693-10.15zM59.687 51.88l-11.68-11.69-.04-.04c-1.236 2.06-2.916 3.82-4.92 5.14l.03.03L54.66 56.91c1.147 1.14 3.025 1.14 4.17-.01l.857-.85c1.148-1.15 1.148-3.03 0-4.17"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/integrated.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/integrated.svg deleted file mode 100644 index 9fdf394a5..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/integrated.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>integrated</title><path d="M54.917 19.475c-1.983 0-3.59-1.598-3.59-3.587 0-1.977 1.607-3.587 3.59-3.587 1.983 0 3.59 1.61 3.59 3.588 0 1.99-1.607 3.587-3.59 3.587zm-18.91 0c-1.983 0-3.59-1.598-3.59-3.587 0-1.977 1.607-3.587 3.59-3.587 1.982 0 3.588 1.61 3.588 3.588 0 1.99-1.606 3.587-3.588 3.587zm-18.91 0c-1.98 0-3.59-1.598-3.59-3.587 0-1.977 1.61-3.587 3.59-3.587 1.984 0 3.588 1.61 3.588 3.588 0 1.99-1.604 3.587-3.59 3.587zm18.91 25.203c4.21 0 7.63 3.433 7.63 7.636 0 4.214-3.42 7.635-7.63 7.635s-7.63-3.422-7.63-7.636c0-4.203 3.42-7.636 7.63-7.636zm-16.86-16.704c0 .9.274 1.468.82 1.682.55.224 1.187.33 1.916.33 1.26 0 2.414-.13 3.457-.39 1.044-.272 2.098-.402 3.158-.402 2.355 0 4.094.343 5.22 1.018 1.13.675 1.857 1.49 2.19 2.462h.2c.33-.97 1.062-1.787 2.186-2.462 1.128-.675 2.87-1.018 5.222-1.018 1.093 0 2.12.13 3.085.402.96.26 1.954.39 2.984.39.86 0 1.624-.106 2.286-.33.664-.214.997-.782.997-1.682 0-.532.115-1.04.346-1.527.232-.473.78-.722 1.64-.722.5 0 .906.12 1.22.355.312.237.555.52.722.876.164.356.28.734.347 1.15.066.4.1.792.1 1.135 0 1.292-.325 2.357-.97 3.21-.647.852-1.486 1.503-2.513 1.953-1.028.46-2.172.722-3.43.793-1.26.07-2.504-.024-3.73-.284-2.52-.533-4.54-.52-6.07.023-1.523.533-2.283 1.54-2.283 3.007 0 .675-.22 1.208-.65 1.598-.427.403-.96.592-1.59.592-.63 0-1.16-.19-1.59-.592-.432-.39-.647-.923-.647-1.598 0-1.468-.763-2.474-2.287-3.007-1.525-.544-3.55-.556-6.067-.023-1.23.26-2.472.355-3.732.284-1.258-.07-2.404-.332-3.43-.793-1.027-.45-1.866-1.1-2.512-1.954-.647-.853-.968-1.918-.968-3.21 0-.342.032-.733.096-1.135.068-.415.184-.793.35-1.15.166-.354.397-.638.698-.875.298-.236.694-.355 1.19-.355.897 0 1.46.25 1.692.722.233.486.347.995.347 1.527z" fill="#E95376" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/intelligent-routing.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/intelligent-routing.svg deleted file mode 100644 index ce9a3dc5b..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/intelligent-routing.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>intelligent-routing</title><g fill="#E65376" fill-rule="evenodd"><path d="M31.97 61.13h7.047v-6.3H31.97M35.494 24.19c-2.43 0-4.397-1.91-4.397-4.26 0-2.35 1.968-4.25 4.397-4.25 2.43 0 4.397 1.9 4.397 4.25s-1.967 4.26-4.396 4.26zm0 11.89c-2.43 0-4.397-1.9-4.397-4.25s1.968-4.26 4.397-4.26c2.43 0 4.397 1.91 4.397 4.26 0 2.35-1.967 4.25-4.396 4.25zm0 11.9c-2.43 0-4.397-1.91-4.397-4.26 0-2.35 1.968-4.26 4.397-4.26 2.43 0 4.397 1.91 4.397 4.26 0 2.35-1.967 4.26-4.396 4.26zM54.23 25.19c0-.38-.31-.69-.693-.69-.045 0-.084.01-.126.02-.053-.01-.107-.02-.164-.02h-7.15l.237-5.63c4.694-1.22 7.898-3.94 7.898-7.17 0-.39-.31-.7-.693-.7-.045 0-.084.02-.126.03-.053-.02-.107-.03-.164-.03H17.694c-.086 0-.167.02-.244.05-.025.01-.046.02-.07.04-.05.02-.096.05-.138.09l-.06.06c-.038.04-.07.09-.097.14-.01.02-.026.04-.034.06 0 .01-.006.01-.008.02-.027.07-.038.15-.04.23 0 0-.002 0-.002.01 0 3.18 3.094 5.85 7.652 7.1l.24 5.7h-7.198c-.086 0-.167.02-.244.04-.025.01-.046.03-.07.04-.05.02-.096.05-.138.09l-.06.06c-.038.04-.07.09-.097.14-.01.02-.026.04-.034.06 0 .01-.006.02-.008.02-.027.08-.038.15-.04.23l-.002.01c0 3.31 3.35 6.09 8.228 7.26l.192 4.54h-7.032c-.085 0-.167.02-.244.05l-.07.03c-.05.03-.096.06-.14.1-.02.02-.04.03-.057.05-.04.05-.07.1-.098.15-.012.02-.026.04-.035.06-.003.01-.007.01-.01.02-.026.07-.038.15-.04.22v.01c0 3.28 3.275 6.03 8.06 7.22l.14 3.36c0 2.41 1.967 4.38 4.382 4.38H40.71c2.416 0 4.382-1.97 4.38-4.35l.14-3.33c4.92-1.16 8.307-3.94 8.307-7.28 0-.38-.31-.69-.695-.69-.044 0-.083.02-.126.03-.053-.02-.107-.03-.164-.03h-6.985l.19-4.49c5.007-1.14 8.474-3.94 8.474-7.31z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/iphone.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/iphone.png Binary files differdeleted file mode 100644 index 68557a2a2..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/iphone.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/map-centric.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/map-centric.svg deleted file mode 100644 index c4f39ac40..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/map-centric.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>map-centric</title><g fill="#E65376" fill-rule="evenodd"><path d="M59.06 13.376l-10.12-2.333c-.363-.083-.745-.044-1.086.11L35.997 16.58l-10.91-4.55c-.406-.167-.86-.174-1.268-.015L12.08 16.59c-.652.253-1.08.88-1.08 1.58V50.38c0 .56.275 1.085.738 1.4.46.316 1.05.383 1.57.18l11.106-4.327 10.96 4.573c.21.085.432.13.654.13.24 0 .482-.052.706-.154l.88-.402-1.505-3.04-.113.05-10.91-4.55c-.208-.086-.43-.13-.653-.13-.208 0-.417.04-.615.115L14.39 47.9V19.33l10.024-3.908 10.96 4.572c.438.182.93.174 1.36-.023l12.007-5.493 8.244 1.9V45.11l-1.598-.367-.806 1.63c-.127.286-.266.567-.418.842l-.026.054-.295.596 4.46 1.027c.502.116 1.03-.004 1.435-.326.404-.32.64-.81.64-1.326V15.03c0-.79-.545-1.475-1.315-1.654"/><path d="M23.756 19.79v20.44c0 .376.304.68.678.68.374 0 .68-.304.68-.68V19.79c0-.375-.306-.68-.68-.68-.374 0-.678.305-.678.68M35.35 23.747v10.287c0 .375.304.678.678.678.374 0 .68-.303.68-.678V23.747c0-.375-.306-.68-.68-.68-.374 0-.68.305-.68.68M49.464 30.76V18.34c0-.375-.304-.68-.68-.68-.374 0-.677.305-.677.68V30.76c0 .375.303.68.678.68.375 0 .68-.305.68-.68M44.76 44.436c-1.862 0-3.372-1.51-3.372-3.37s1.51-3.37 3.37-3.37c1.863 0 3.37 1.51 3.37 3.37s-1.507 3.37-3.37 3.37zm0-10.402c-4.43 0-8.023 3.592-8.023 8.02 0 1.462.4 2.83 1.08 4.01h-.006l.767 1.548 6.18 12.49 6.366-12.863.582-1.175h-.008c.356-.615.63-1.283.816-1.984.17-.648.268-1.326.268-2.026 0-4.428-3.593-8.02-8.02-8.02z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/minus.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/minus.svg deleted file mode 100644 index 5623cc577..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/minus.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="36" height="36" viewBox="0 0 36 36" xmlns="http://www.w3.org/2000/svg"><title>Group 2 Copy</title><g fill="#333" fill-rule="evenodd"><path d="M32 18c0-7.732-6.268-14-14-14S4 10.268 4 18s6.268 14 14 14 14-6.268 14-14zM0 18C0 8.06 8.06 0 18 0s18 8.06 18 18-8.06 18-18 18S0 27.94 0 18z"/><path d="M10.5 16c-1.105 0-2 .895-2 2s.895 2 2 2h15c1.105 0 2-.895 2-2s-.895-2-2-2h-15z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/mobile-app.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/mobile-app.svg deleted file mode 100644 index 31b4ade23..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/mobile-app.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>mobile-app</title><path d="M23.665 52.772H48.54V15.958H23.665v36.814zm12.438 8.418c-1.64 0-2.964-1.325-2.964-2.96 0-1.637 1.324-2.964 2.963-2.964 1.64 0 2.963 1.327 2.963 2.963 0 1.635-1.324 2.96-2.963 2.96zM25.243 8c-2.715 0-4.936 2.222-4.936 4.936v46.108c0 2.715 2.22 4.935 4.937 4.935H46.96c2.717 0 4.938-2.22 4.938-4.936V12.936c0-2.714-2.22-4.936-4.937-4.936H25.245zm5.585 36.968l6.928-7.077c.033-.03.056-.073.087-.106.563.14 1.142.236 1.747.236 2.03.006 3.87-.805 5.203-2.12 1.333-1.316 2.16-3.136 2.167-5.148.004-.642-.105-1.256-.262-1.855l-3.87 3.818-4.28-.918-.9-4.252 3.88-3.82c-.606-.168-1.234-.286-1.894-.287-4.057-.01-7.358 3.237-7.37 7.267-.003.855.17 1.663.44 2.426L25.68 40.3s5.148 4.675 5.148 4.668z" fill="#E65376" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/open-standards.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/open-standards.svg deleted file mode 100644 index 4960b48d4..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/open-standards.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>open-standards</title><path d="M29.087 50.594c.156-.008.34-.035.495-.103l5.21-2.31c.57.305 1.084.7 1.518 1.16l-6.193 2.764H27.5c-1.33 0-2.322-.162-2.953-.482-.506-.256-.746-.586-.766-1.063l5.307.034zm-7.927-4.572c0-.163.05-.35.142-.55.99.415 2.285.616 3.938.616h1.783c.17 0 .337-.037.492-.105l5.112-2.295c.796.244 1.515.714 2.146 1.4L28.8 47.73h-3.746c-1.39 0-2.425-.165-3.073-.49-.56-.298-.82-.685-.82-1.218zm9.616 10.584c-1.065 0-1.856-.172-2.352-.512-.36-.248-.57-.6-.63-1.068h2.654c.17 0 .336-.037.49-.106l4.776-2.132c.564.46 1.015.933 1.373 1.445l.006.008-5.244 2.366h-1.074zm7.67.107l1.698-.76c.303-.134.537-.39.645-.704.108-.316.08-.662-.076-.956-.588-1.11-1.306-2.05-2.142-2.81l.82-.386c.31-.144.54-.418.64-.746.097-.328.05-.682-.132-.973-.656-1.06-1.36-1.91-2.105-2.547.274-.14.486-.38.59-.67.113-.318.087-.666-.07-.964-.677-1.28-1.543-2.283-2.583-2.995.172-.142.303-.33.376-.546.104-.312.077-.65-.075-.94-1.527-2.915-3.872-4.39-6.97-4.39-.626 0-1.317.092-2.046.272-.67.153-1.41.402-2.322.78l-1.34.02c-.476.005-.904.292-1.09.73-.186.437-.096.944.23 1.29l.468.502c.24.256.582.4.93.38l1.294-.06c.138-.005.273-.033.4-.087.93-.38 1.645-.64 2.237-.817.643-.173 1.157-.263 1.525-.263 1.292 0 2.34.493 3.18 1.504l-5.874 2.65-2.113-.024c-1.322 0-2.405-.428-3.315-1.308-.907-.87-1.348-1.91-1.348-3.17 0-.84.268-2.065 2.574-2.976 1.872-.734 4.73-1.104 8.495-1.104h.632c.682-.024 1.208-.536 1.208-1.202 0-.076-.007-.153-.022-.227l-.005-.13c0-2.95-.982-6.08-2.922-9.298-.002-.006-.005-.013-.01-.02l-.46-.79c-.77-1.274-1.16-2.474-1.16-3.564 0-1.013.268-1.87.797-2.548.444-.567 1.088-1.034 1.922-1.397l1.28 5.947c.045.213.15.41.3.57l7.154 7.614c1.314 1.645 2.197 2.78 2.77 3.563 2.42 3.403 3.396 3.852 3.71 3.996.31.142 1.23.573 5.582.595.72 2.112 1.084 4.29 1.084 6.477 0 1.855-.328 3.803-.978 5.795h-4.295c-.373 0-.723.172-.95.466-1.906 2.458-4.2 4.423-7.21 6.178l-.93.04zm15.46-21.27c-.192-.435-.623-.714-1.097-.714h-3.83c-.858 0-1.493-.136-1.85-.4-.272-.197-.872-.804-2.194-2.595l-1.01-1.334c-1.283-1.706-1.98-2.606-2.445-3.146l-6.617-7.043-1.643-7.274c-.07-.314-.265-.588-.54-.758-.274-.17-.604-.22-.918-.144l-.383.094c-4.068.955-6.13 3.408-6.13 7.29 0 1.4.634 3.297 1.964 5.838l.565.98c.915 1.794 1.537 3.66 1.852 5.554h-.283c-3.626 0-6.598.63-8.845 1.88C18.178 34.98 17 36.754 17 38.938c0 1.754.6 3.313 1.832 4.754-.446.8-.67 1.582-.67 2.33 0 1.055.293 1.94.867 2.623.48.594 1.165 1.05 2.032 1.358-.02.253-.03.464-.03.635 0 2.39 1.333 3.837 3.866 4.206-.006.07-.008.133-.008.192 0 1.987 1.022 4.355 5.886 4.355h1.402c.19 0 .375-.042.544-.128l.977-.495c1.55.415 2.95.624 4.16.624.44 0 1.08-.034 1.962-.104.14-.013.277-.05.406-.108 2.863-1.328 5.56-3.41 8.012-6.187h4.732c.496 0 .94-.304 1.12-.765 1.09-2.797 1.64-5.618 1.64-8.387 0-2.853-.614-5.677-1.825-8.396z" fill="#E65376" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/oxfordshire-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/oxfordshire-logo.png Binary files differdeleted file mode 100644 index 0b479791a..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/oxfordshire-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/plus.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/plus.svg deleted file mode 100644 index c1dba62f8..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/plus.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="36" height="36" viewBox="0 0 36 36" xmlns="http://www.w3.org/2000/svg"><title>Group 2 Copy</title><g fill="#333" fill-rule="evenodd"><path d="M32 18c0-7.732-6.268-14-14-14S4 10.268 4 18s6.268 14 14 14 14-6.268 14-14zM0 18C0 8.06 8.06 0 18 0s18 8.06 18 18-8.06 18-18 18S0 27.94 0 18z"/><path d="M16 25.5c0 1.105.895 2 2 2s2-.895 2-2v-15c0-1.105-.895-2-2-2s-2 .895-2 2v15z"/><path d="M10.5 16c-1.105 0-2 .895-2 2s.895 2 2 2h15c1.105 0 2-.895 2-2s-.895-2-2-2h-15z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/responsive-web.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/responsive-web.svg deleted file mode 100644 index ff685af03..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/responsive-web.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>responsive-web</title><g fill="#E65376" fill-rule="evenodd"><path d="M19.96 27.453c-.126-.12-.296-.18-.51-.18-.22 0-.402.06-.537.18-.133.118-.202.25-.202.4v3.115c0 .386.038.745.11 1.077.075.333.203.62.384.862.18.243.423.432.727.567.304.136.682.203 1.134.203.467 0 .85-.085 1.15-.252.3-.168.54-.396.722-.684.172.29.406.517.7.685.297.167.687.252 1.17.252.452 0 .828-.067 1.128-.203.3-.135.54-.324.72-.567.18-.24.308-.53.382-.862.075-.332.11-.69.11-1.077v-3.116c0-.148-.066-.28-.197-.4-.132-.12-.313-.178-.542-.178-.206 0-.373.06-.5.18-.128.117-.19.25-.19.398v3.165c0 .45-.082.784-.245.998-.165.215-.43.32-.79.32-.37 0-.632-.105-.788-.32-.155-.214-.235-.547-.235-.998V27.84c0-.18-.077-.32-.233-.42-.155-.096-.315-.146-.48-.146-.073 0-.153.014-.24.043-.087.03-.167.066-.24.11-.073.047-.136.1-.184.168-.05.064-.075.135-.075.208v3.214c0 .45-.078.784-.234.998-.156.215-.42.32-.787.32-.37 0-.637-.105-.795-.32-.16-.214-.24-.547-.24-.998v-3.165c0-.148-.065-.28-.19-.4M36.332 27.274c-.205 0-.372.06-.5.18-.125.117-.19.25-.19.398v3.165c0 .45-.08.784-.245.998-.164.215-.427.32-.788.32-.37 0-.633-.105-.79-.32-.155-.214-.234-.547-.234-.998V27.84c0-.18-.077-.32-.233-.42-.155-.096-.316-.146-.482-.146-.073 0-.15.014-.238.043-.086.03-.166.066-.24.11-.073.047-.135.1-.184.168-.05.064-.075.135-.075.208v3.214c0 .45-.077.784-.233.998-.156.215-.42.32-.787.32-.37 0-.635-.105-.796-.32-.16-.214-.24-.547-.24-.998v-3.165c0-.148-.064-.28-.19-.4-.13-.12-.298-.178-.512-.178-.222 0-.4.06-.535.18-.136.117-.204.25-.204.398v3.116c0 .386.037.745.11 1.077.074.333.202.62.382.862.182.243.424.432.727.567.304.136.68.203 1.134.203.466 0 .85-.085 1.15-.252.3-.168.54-.396.72-.684.173.29.408.517.702.685.295.167.686.252 1.17.252.45 0 .827-.067 1.127-.203.298-.135.538-.324.72-.567.18-.24.308-.53.382-.862.073-.332.11-.69.11-1.077v-3.116c0-.148-.067-.28-.2-.4-.128-.12-.31-.178-.54-.178M39.812 27.453c-.127-.12-.297-.18-.51-.18-.223 0-.4.06-.537.18-.135.118-.203.25-.203.4v3.115c0 .386.037.745.11 1.077.073.333.2.62.383.862.18.243.42.432.726.567.305.136.682.203 1.135.203.466 0 .85-.085 1.15-.252.3-.168.54-.396.72-.684.173.29.408.517.704.685.293.167.683.252 1.168.252.45 0 .827-.067 1.126-.203.3-.135.54-.324.72-.567.18-.24.31-.53.38-.862.077-.332.114-.69.114-1.077v-3.116c0-.148-.066-.28-.2-.4-.13-.12-.31-.178-.54-.178-.204 0-.372.06-.5.18-.126.117-.19.25-.19.398v3.165c0 .45-.08.784-.246.998-.164.215-.427.32-.788.32-.37 0-.63-.105-.788-.32-.155-.214-.233-.547-.233-.998V27.84c0-.18-.08-.32-.235-.42-.155-.096-.317-.146-.48-.146-.073 0-.153.014-.242.043-.085.03-.164.066-.237.11-.076.047-.137.1-.186.168-.05.064-.074.135-.074.208v3.214c0 .45-.08.784-.236.998-.154.215-.418.32-.786.32-.37 0-.634-.105-.794-.32-.16-.214-.242-.547-.242-.998v-3.165c0-.148-.06-.28-.19-.4M48.482 32.347c-.145.124-.216.264-.216.42v.307c0 .155.07.296.216.42.142.122.34.183.583.183.222 0 .406-.06.55-.184.14-.123.214-.264.214-.42v-.307c0-.155-.074-.295-.215-.42-.144-.122-.328-.183-.55-.183-.244 0-.44.06-.583.184M51.63 24.776v11.4c0 .276.225.5.5.5.278 0 .5-.224.5-.5v-11.4c0-.276-.222-.5-.5-.5-.275 0-.5.224-.5.5M46.248 48.754l2.656-.524c.185-.036.335-.175.385-.358.05-.182-.01-.377-.15-.504l-10.744-9.653c-.158-.143-.39-.168-.576-.065-.187.103-.287.313-.25.523l2.454 14.067c.03.184.163.334.34.39.174.056.374.01.505-.123l2.124-2.128 2.655 4.66c.068.122.183.208.32.24.037.01.075.013.113.013.1 0 .197-.03.28-.085l2.723-1.835c.114-.077.192-.197.214-.333.023-.135-.012-.274-.095-.383l-2.957-3.903M58.76 39.907H45.326l4.007 3.6h9.43c.993 0 1.8-.806 1.8-1.8s-.807-1.8-1.8-1.8"/><path d="M14.6 39.907V20.6h44.16c.995 0 1.8-.806 1.8-1.8s-.805-1.8-1.8-1.8H12.8c-.994 0-1.8.806-1.8 1.8v22.907c0 .994.806 1.8 1.8 1.8h22.655l-.628-3.6H14.6"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/responsive.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/responsive.png Binary files differdeleted file mode 100644 index dc7468397..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/responsive.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/screenshot-of-themes.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/screenshot-of-themes.jpg Binary files differdeleted file mode 100644 index 21744f3cd..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/screenshot-of-themes.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/stevenage-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/stevenage-logo.png Binary files differdeleted file mode 100644 index 7b4d36a67..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/stevenage-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/street-crossing.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/street-crossing.jpg Binary files differdeleted file mode 100644 index 296db5f3b..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/street-crossing.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/street-scene.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/street-scene.jpg Binary files differdeleted file mode 100644 index 9c13bbaa8..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/street-scene.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/street-sunset.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/street-sunset.jpg Binary files differdeleted file mode 100644 index 0f0bb1800..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/street-sunset.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/syncronised.svg b/web/cobrands/fixmystreet.com/images/fms-for-councils/syncronised.svg deleted file mode 100644 index f95a20865..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/syncronised.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="72" height="72" viewBox="0 0 72 72" xmlns="http://www.w3.org/2000/svg"><title>syncronised</title><g fill="#E65376" fill-rule="evenodd"><path d="M58.505 43.558l-9.476-6.89c-.314-.22-.73-.26-1.074-.08-.345.18-.562.53-.562.92v4.48h-30.99c-1.328 0-2.404 1.07-2.404 2.4 0 1.33 1.076 2.4 2.403 2.4h30.99v4.48c0 .39.218.74.563.92.148.07.308.11.468.11.213 0 .426-.06.605-.19l9.475-6.89c.266-.19.423-.5.423-.83 0-.33-.157-.64-.423-.83M14.425 28.748l9.476 6.88c.18.13.392.2.607.2.158 0 .318-.04.466-.11.345-.18.562-.53.562-.92v-4.48h30.99c1.33 0 2.403-1.08 2.403-2.41 0-1.32-1.074-2.4-2.402-2.4h-30.99v-4.48c0-.38-.218-.74-.563-.92-.344-.17-.76-.14-1.072.09l-9.475 6.88c-.267.2-.425.51-.425.83 0 .33.158.64.425.84"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/test-device-mockup.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/test-device-mockup.png Binary files differdeleted file mode 100644 index 55f1b156f..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/test-device-mockup.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/warwickshire-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/warwickshire-logo.png Binary files differdeleted file mode 100644 index 69c189581..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/warwickshire-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/window-mockup.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/window-mockup.jpg Binary files differdeleted file mode 100644 index 86345b7e4..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/window-mockup.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/zurich-logo.png b/web/cobrands/fixmystreet.com/images/fms-for-councils/zurich-logo.png Binary files differdeleted file mode 100644 index efdaf2fe8..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/zurich-logo.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/fms-for-councils/zurich.jpg b/web/cobrands/fixmystreet.com/images/fms-for-councils/zurich.jpg Binary files differdeleted file mode 100644 index 3f064d5d4..000000000 --- a/web/cobrands/fixmystreet.com/images/fms-for-councils/zurich.jpg +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/mysoc-footer/logo-fms-platform@2x.png b/web/cobrands/fixmystreet.com/images/mysoc-footer/logo-fms-platform@2x.png Binary files differdeleted file mode 100644 index bdb8eb121..000000000 --- a/web/cobrands/fixmystreet.com/images/mysoc-footer/logo-fms-platform@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet.com/images/site-logo-homepage.png b/web/cobrands/fixmystreet.com/images/site-logo-homepage.png Binary files differnew file mode 100644 index 000000000..f987f8bb9 --- /dev/null +++ b/web/cobrands/fixmystreet.com/images/site-logo-homepage.png diff --git a/web/cobrands/fixmystreet.com/images/tile-y.jpg b/web/cobrands/fixmystreet.com/images/tile-y.jpg Binary files differindex 3c8383714..80243e0d9 100644 --- a/web/cobrands/fixmystreet.com/images/tile-y.jpg +++ b/web/cobrands/fixmystreet.com/images/tile-y.jpg diff --git a/web/cobrands/fixmystreet.com/js.js b/web/cobrands/fixmystreet.com/js.js index 5aecd820e..9ecb8b8c2 100644 --- a/web/cobrands/fixmystreet.com/js.js +++ b/web/cobrands/fixmystreet.com/js.js @@ -1,4 +1,7 @@ (function(){ + if (!jQuery.validator) { + return; + } var validNamePat = /\ba\s*n+on+((y|o)mo?u?s)?(ly)?\b/i; function valid_name_factory(single) { return function(value, element) { @@ -8,73 +11,3 @@ jQuery.validator.addMethod('validName', valid_name_factory(0), translation_strings.name.required); jQuery.validator.addMethod('validNameU', valid_name_factory(1), translation_strings.name.required); })(); - -$(function(){ - - /* Front page banner for other countries */ - - $('.top_banner__close').live('click', function() { - $('.top_banner--country').hide(); - $.cookie('has_seen_country_message', 1, {expires: 365, path: '/'}); - }); - - if ( $('body.frontpage').length && -1 == navigator.userAgent.indexOf('Google Page Speed')) { - if (!$.cookie('has_seen_country_message')) { - $.ajax({ - url: 'https://gaze.mysociety.org/gaze-rest?f=get_country_from_ip', - success: function(data) { - if ( data && data != 'GB\n' ) { - var banner = '<div class="top_banner top_banner--country"><a href="#" class="top_banner__close">Close</a> <p>This site is for reporting <strong>problems in the UK</strong>. There are FixMyStreet sites <a href="http://www.fixmystreet.org/sites/">all over the world</a>, or you could set up your own using the <a href="http://www.fixmystreet.org/">FixMyStreet Platform</a>.</p></div>'; - $('body').prepend(banner); - $('.top_banner--country').slideDown('slow'); - } - } - }); - } - } - -}); - -$(function(){ - // "Fold out" additional rows in pricing grid - $('.js-extra-features').each(function(){ - var $t3 = $(this); - var $t2 = $('<tbody>'); - var cols = $t3.find('tr').eq(0).children().length; - - $t2.addClass('pricing-table__show-more'); - $t2.html('<tr><td colspan="' + cols + '"><button class="button">Compare more features</button></td></tr>'); - $t2.on('click', '.button', function(){ - $t3.toggle(); - }); - - $t2.insertBefore($t3); - $t3.hide(); - }); - - // Add tier names to cells, to be displayed on narrow screens - $('.pricing-table thead th').each(function(){ - var $table = $(this).parents('.pricing-table'); - var colIndex = $(this).prevAll().length; - - // Ignore first column - if (colIndex > 0) { - var tierName = $(this).text(); - $table.find('tbody tr').each(function(){ - $(this).children().eq(colIndex).attr('data-tier-name', tierName); - }); - } - }); - - // Hide the demo access form behind a button, to save space on initial page load - $('.js-fms-pro-demo-form').each(function(){ - var $form = $(this); - var $revealBtn = $('<button>').addClass('btn').text('Request access').on('click', function(){ - $form.slideDown(250, function(){ - $form.find('input[type="text"], input[type="text"]').eq(0).focus(); - }); - $(this).remove(); - }).insertAfter($form); - $form.hide(); - }); -}); diff --git a/web/cobrands/fixmystreet.com/layout.scss b/web/cobrands/fixmystreet.com/layout.scss index 60b65569f..e42dbacf7 100644 --- a/web/cobrands/fixmystreet.com/layout.scss +++ b/web/cobrands/fixmystreet.com/layout.scss @@ -155,12 +155,14 @@ body.fullwidthpage { height: 34px; padding-#{$left}: 24px; margin-top: 0.25em; - @media only screen and (min-resolution: 320dpi), - only screen and (-webkit-min-device-pixel-ratio: 2) { + @media ($high-dpi-screen) { background-image: url(images/locate-me@2.png); background-size: 22px 34px; } } + a#geolocate_link.loading { + background: url("/cobrands/fixmystreet/images/spinner-yellow.gif") 100% 33% no-repeat + } } } @@ -169,7 +171,25 @@ body.frontpage { margin: 2em 0; width: 300px; height: 60px; - background: url($image-sprite) -2px -108px no-repeat; + background: none; + + // Override the width="175" height="35" attributes on the svg element, + // forcing the SVG contents to stretch to the new, larger, size. + svg { + width: 300px; + height: 60px; + margin-top: 0; // no need for the vertical centering any more + } + } + + .site-logo__fallback { + width: 300px; + padding-top: 60px; + // No need for svg-background-image() here because the + // logo on the homepage is an inline SVG, and the only browsers + // not to show it will be IE8 and below, which are @1x. + background-image: url("/cobrands/fixmystreet.com/images/site-logo-homepage.png"); + background-size: 300px 60px; } .content { @@ -254,7 +274,7 @@ body.unresponsive-council { background-position: $right center; background-repeat: no-repeat; - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { + @media ($high-dpi-screen) { background-image: url(images/unresponsive-council-cta-arrow@2.png); background-size: 60px; } diff --git a/web/cobrands/fixmystreet.com/vendor/jquery.cookie.min.js b/web/cobrands/fixmystreet.com/vendor/jquery.cookie.min.js deleted file mode 100644 index 3fa82b82b..000000000 --- a/web/cobrands/fixmystreet.com/vendor/jquery.cookie.min.js +++ /dev/null @@ -1,13 +0,0 @@ - -(function(factory){if(typeof define==='function'&&define.amd){define(['jquery'],factory);}else if(typeof exports==='object'){factory(require('jquery'));}else{factory(jQuery);}}(function($){var pluses=/\+/g;function encode(s){return config.raw?s:encodeURIComponent(s);} -function decode(s){return config.raw?s:decodeURIComponent(s);} -function stringifyCookieValue(value){return encode(config.json?JSON.stringify(value):String(value));} -function parseCookieValue(s){if(s.indexOf('"')===0){s=s.slice(1,-1).replace(/\\"/g,'"').replace(/\\\\/g,'\\');} -try{s=decodeURIComponent(s.replace(pluses,' '));return config.json?JSON.parse(s):s;}catch(e){}} -function read(s,converter){var value=config.raw?s:parseCookieValue(s);return $.isFunction(converter)?converter(value):value;} -var config=$.cookie=function(key,value,options){if(value!==undefined&&!$.isFunction(value)){options=$.extend({},config.defaults,options);if(typeof options.expires==='number'){var days=options.expires,t=options.expires=new Date();t.setTime(+t+days*864e+5);} -return(document.cookie=[encode(key),'=',stringifyCookieValue(value),options.expires?'; expires='+options.expires.toUTCString():'',options.path?'; path='+options.path:'',options.domain?'; domain='+options.domain:'',options.secure?'; secure':''].join(''));} -var result=key?undefined:{};var cookies=document.cookie?document.cookie.split('; '):[];for(var i=0,l=cookies.length;i<l;i++){var parts=cookies[i].split('=');var name=decode(parts.shift());var cookie=parts.join('=');if(key&&key===name){result=read(cookie,value);break;} -if(!key&&(cookie=read(cookie))!==undefined){result[name]=cookie;}} -return result;};config.defaults={};$.removeCookie=function(key,options){if($.cookie(key)===undefined){return false;} -$.cookie(key,'',$.extend({},options,{expires:-1}));return!$.cookie(key);};}));
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/admin.js b/web/cobrands/fixmystreet/admin.js index 2af950b28..f5ae082c0 100644 --- a/web/cobrands/fixmystreet/admin.js +++ b/web/cobrands/fixmystreet/admin.js @@ -48,8 +48,6 @@ $(function(){ } }); - $("select.js-multiple[multiple]").make_multi(); - // on a body's page, hide/show deleted contact categories var $table_with_deleted_contacts = $('table tr.is-deleted td.contact-category').closest('table'); if ($table_with_deleted_contacts.length == 1) { @@ -68,36 +66,11 @@ $(function(){ }); } - // On some cobrands the datepicker ends up beneath items in the header, e.g. - // the logo. - // This function sets an appropriate z-index when the datepicker is shown. - // Sadly there's no way to set the z-index when creating the datepicker, so - // we have to run this little helper using the datepicker beforeShow - // handler. - function fixZIndex() { - setTimeout(function() { - $('.ui-datepicker').css('z-index', 10); - }, 0); - } - - $( "#start_date" ).datepicker({ - defaultDate: "-1w", - changeMonth: true, - dateFormat: 'dd/mm/yy' , - // This sets the other fields minDate to our date - onClose: function( selectedDate ) { - $( "#end_date" ).datepicker( "option", "minDate", selectedDate ); - }, - beforeShow: fixZIndex + $("#start_date").change(function(){ + $('#end_date').attr('min', $(this).val()); }); - $( "#end_date" ).datepicker({ - /// defaultDate: "+1w", - changeMonth: true, - dateFormat: 'dd/mm/yy' , - onClose: function( selectedDate ) { - $( "#start_date" ).datepicker( "option", "maxDate", selectedDate ); - }, - beforeShow: fixZIndex + $("#end_date").change(function(){ + $('#start_date').attr('max', $(this).val()); }); // On user edit page, hide the area/categories fields if body changes diff --git a/web/cobrands/fixmystreet/dashboard.scss b/web/cobrands/fixmystreet/dashboard.scss index fb4fd7a8a..302afbf80 100644 --- a/web/cobrands/fixmystreet/dashboard.scss +++ b/web/cobrands/fixmystreet/dashboard.scss @@ -5,15 +5,9 @@ } #overview { - margin-top: 1em; - th[scope=col] { font-size:0.8em; } - - tr:nth-child(2) { - background-color:#fee; - } } th { @@ -66,40 +60,15 @@ } } - .filters{ - background-color:#ffec99; - margin:0 -1em; - border-top:#ffd000 solid 0.75em; - padding:0 1em; - - p { - float: $left; - padding:0 1em; - width:25%; - font-size:0.75em; - color:#333333; - input { - margin-top: 2.5em; - } - } - select { - width:100%; - } - } - hgroup { h2 { color:#737373; font-size:1.25em; margin-bottom:0.5em; + margin-top: 0; } h1 { color:#333; font-size:2.25em; } } - - .export_as_csv { - font-size: 0.75em; - font-weight: bold; - } diff --git a/web/cobrands/fixmystreet/fixmystreet.js b/web/cobrands/fixmystreet/fixmystreet.js index 8673b6b76..d6ea9de18 100644 --- a/web/cobrands/fixmystreet/fixmystreet.js +++ b/web/cobrands/fixmystreet/fixmystreet.js @@ -112,17 +112,38 @@ function isR2L() { }, make_multi: function() { - var $this = $(this), - all = $this.data('all'); - $this.multiSelect({ - allText: all, - noneText: all, - positionMenuWithin: $('#side'), - presets: [{ - name: all, - options: [] - }] - }); + // A convenience wrapper around $.multiSelect() that translates HTML + // data-* attributes into settings for the multiSelect constructor. + var $select = $(this); + var settings = {}; + + if ( $select.data('none') ) { + settings.noneText = $select.data('none'); + } + + if ( $select.data('all') ) { + settings.allText = $select.data('all'); + settings.noneText = settings.noneText || settings.allText; + settings.presets = []; + settings.presets.push({ + name: settings.allText, + options: $select.data('all-options') || [] + }); + } + + if ( $select.data('extra') && $select.data('extra-options') ) { + settings.presets = settings.presets || []; + settings.presets.push({ + name: $select.data('extra'), + options: $select.data('extra-options') + }); + } + + if ( document.querySelector('#side') && document.querySelector('#side').contains($select[0]) ) { + settings.positionMenuWithin = $('#side'); + } + + $select.multiSelect(settings); } }); @@ -161,12 +182,12 @@ fixmystreet.resize_to = { if ($rapSidebar.length) { $rapSidebar.hide(); $('<a>') - .addClass('rap-notes-trigger button-fwd') + .addClass('rap-notes-trigger btn btn--block btn--forward') .html(translation_strings.how_to_send) .insertBefore($rapSidebar) .on('click', function(){ $rapSidebar.slideToggle(100); - $(this).toggleClass('clicked'); + $(this).toggleClass('btn--forward btn--cancel'); }); } @@ -195,40 +216,6 @@ fixmystreet.resize_to = { } }; -fixmystreet.geolocate = { - setup: function(success_callback) { - $('#geolocate_link').click(function(e) { - var $link = $(this); - e.preventDefault(); - // Spinny thing! - if ($('.mobile').length) { - $link.append(' <img src="/cobrands/fixmystreet/images/spinner-black.gif" alt="" align="bottom">'); - } else { - var spincolor = $('<span>').css("color","white").css("color") === $('#front-main').css("background-color") ? 'white' : 'yellow'; - $link.append(' <img src="/cobrands/fixmystreet/images/spinner-' + spincolor + '.gif" alt="" align="bottom">'); - } - geo_position_js.getCurrentPosition(function(pos) { - $link.find('img').remove(); - success_callback(pos); - }, function(err) { - $link.find('img').remove(); - if (err.code === 1) { // User said no - $link.html(translation_strings.geolocation_declined); - } else if (err.code === 2) { // No position - $link.html(translation_strings.geolocation_no_position); - } else if (err.code === 3) { // Too long - $link.html(translation_strings.geolocation_no_result); - } else { // Unknown - $link.html(translation_strings.geolocation_unknown); - } - }, { - enableHighAccuracy: true, - timeout: 10000 - }); - }); - } -}; - fixmystreet.update_list_item_buttons = function($list) { if (!$list) { return; @@ -293,8 +280,10 @@ $.extend(fixmystreet.set_up, { form_validation: function() { // FIXME - needs to use translated string - jQuery.validator.addMethod('validCategory', function(value, element) { - return this.optional(element) || value != '-- Pick a category --'; }, translation_strings.category ); + if (jQuery.validator) { + jQuery.validator.addMethod('validCategory', function(value, element) { + return this.optional(element) || value != '-- Pick a category --'; }, translation_strings.category ); + } var submitted = false; @@ -343,9 +332,8 @@ $.extend(fixmystreet.set_up, { } ); $('#facebook_sign_in, #twitter_sign_in').click(function(e){ - $('#form_email').removeClass(); - $('#form_rznvy').removeClass(); - $('#email').removeClass(); + $('#form_username').removeClass(); + $('#username').removeClass(); }); $('#planned_form').submit(function(e) { @@ -399,27 +387,6 @@ $.extend(fixmystreet.set_up, { }); }, - report_geolocation: function() { - if (!geo_position_js.init()) { - return; - } - if ($('.js-geolocate').length) { - var link = $('.js-geolocate').attr('action'); - link = '<a href="' + link + '" id="geolocate_link">… ' + translation_strings.geolocate + '</a>'; - if ($('body.frontpage').length) { - $('.js-geolocate').after(link); - } else{ - $('.js-geolocate').append(link); - } - fixmystreet.geolocate.setup(function(pos) { - var latitude = pos.coords.latitude; - var longitude = pos.coords.longitude; - var page = $('#geolocate_link').attr('href'); - location.href = page + '?latitude=' + latitude + ';longitude=' + longitude; - }); - } - }, - category_change: function() { // Deal with changes to report category. @@ -427,12 +394,11 @@ $.extend(fixmystreet.set_up, { // Delegation is necessary because #form_category may be replaced during the lifetime of the page $("#problem_form").on("change.category", "select#form_category", function(){ var args = { - category: $(this).val() + category: $(this).val(), + latitude: $('input[name="latitude"]').val(), + longitude: $('input[name="longitude"]').val() }; - args.latitude = $('input[name="latitude"]').val(); - args.longitude = $('input[name="longitude"]').val(); - $.getJSON('/report/new/category_extras', args, function(data) { var $category_meta = $('#category_meta'); $('#js-councils_text').html(data.councils_text); @@ -449,11 +415,84 @@ $.extend(fixmystreet.set_up, { }); if (fixmystreet.hooks.update_problem_fields) { - fixmystreet.hooks.update_problem_fields($(this).data('role'), $(this).data('body'), args); + args.prefill_reports = $(this).data('prefill'); + args.role = $(this).data('role'); + args.body = $(this).data('body'); + + fixmystreet.hooks.update_problem_fields(args); } }); }, + category_groups: function() { + var $category_select = $("select#form_category.js-grouped-select"); + if ($category_select.length === 0) { + return; + } + var $group_select = $("<select></select>").addClass("form-control"); + var $subcategory_label = $("#form_subcategory_label"); + var $empty_option = $category_select.find("option").first(); + + $group_select.change(function() { + var subcategory_id = $(this).find(":selected").data("subcategory_id"); + $(".js-subcategory").hide(); + if (subcategory_id === undefined) { + $subcategory_label.addClass("hidden"); + $category_select.val($(this).val()).change(); + } else { + $("#" + subcategory_id).show().change(); + $("#form_subcategory_label").removeClass("hidden"); + } + }); + + var subcategory_change = function() { + $category_select.val($(this).val()).change(); + }; + + var add_optgroup = function(el) { + var $el = $(el); + var $options = $el.find("option"); + + if ($options.length == 1) { + add_option($options.get(0)); + } else { + var label = $el.attr("label"); + var subcategory_id = "subcategory_" + label.replace(/[^a-zA-Z]+/g, ''); + var $opt = $("<option></option>").text(label).val(label); + $opt.data("subcategory_id", subcategory_id); + $group_select.append($opt); + + var $sub_select = $("<select></select>").addClass("form-control js-subcategory"); + $sub_select.attr("id", subcategory_id); + $sub_select.append($empty_option.clone()); + $options.each(function() { + var $newopt = $(this).clone(); + $sub_select.append($newopt); + // Make sure any preselected value is preserved in the new UI: + if ($newopt.attr('selected')) { + $group_select.val(label); + } + }); + $sub_select.hide().insertAfter($subcategory_label).change(subcategory_change); + } + }; + + var add_option = function(el) { + $group_select.append($(el).clone()); + }; + + $category_select.hide(); + $group_select.insertAfter($category_select); + $category_select.find("optgroup, > option").each(function() { + if (this.tagName.toLowerCase() === 'optgroup') { + add_optgroup(this); + } else if (this.tagName.toLowerCase() === 'option') { + add_option(this); + } + }); + $group_select.change(); + }, + hide_name: function() { $('body').on('click', '.js-hide-name', function(e){ e.preventDefault(); @@ -592,31 +631,17 @@ $.extend(fixmystreet.set_up, { } }, - fixed_thead: function() { - var thead = $('.nicetable thead'); - if (thead.fixedThead) { - thead.fixedThead(); - } - }, - report_list_filters: function() { // Hide the pin filter submit button. Not needed because we'll use JS // to refresh the map when the filter inputs are changed. $(".report-list-filters [type=submit]").hide(); - $('#statuses').make_multi(); - $('#filter_categories').make_multi(); + $('.js-multiple').make_multi(); }, mobile_ui_tweaks: function() { //move 'skip this step' link on mobile $('.mobile #skip-this-step').addClass('chevron').wrap('<li>').parent().appendTo('#key-tools'); - - // nicetable - on mobile shift 'name' col to be a row - $('.mobile .nicetable th.title').remove(); - $('.mobile .nicetable td.title').each(function(i) { - $(this).attr('colspan', 5).insertBefore($(this).parent('tr')).wrap('<tr class="heading" />'); - }); }, on_mobile_nav_click: function() { @@ -660,7 +685,7 @@ $.extend(fixmystreet.set_up, { } $('#key-tools li:empty').remove(); $('#report-updates-data').insertAfter($('#map_box')); - if (fixmystreet.page === 'report' || fixmystreet.page === 'reports') { + if (fixmystreet.page !== 'around' && !$('#toggle-fullscreen').length) { $('#sub_map_links').append('<a href="#" id="toggle-fullscreen" class="expand" data-expand-text="'+ translation_strings.expand_map +'" data-compress-text="'+ translation_strings.collapse_map +'" >'+ translation_strings.expand_map +'</span>'); } } @@ -675,7 +700,6 @@ $.extend(fixmystreet.set_up, { //add open/close toggle button (if its not there) if ($('#map_links_toggle').length === 0) { $('<span>') - .html(' ') .attr('id', 'map_links_toggle') .on('click', function() { var sub_map_links_css = {}, @@ -692,7 +716,7 @@ $.extend(fixmystreet.set_up, { .prependTo('#sub_map_links'); } - $('#toggle-fullscreen').click(function() { + $('#toggle-fullscreen').off('click').on('click', function() { var btnClass = $('html').hasClass('map-fullscreen') ? 'expand' : 'compress'; var text = $(this).data(btnClass + '-text'); @@ -737,6 +761,19 @@ $.extend(fixmystreet.set_up, { } }, + reporting_hide_phone_email: function() { + $('#form_username').on('keyup change', function() { + var username = $(this).val(); + if (/^[^a-z]+$/i.test(username)) { + $('#js-hide-if-username-phone').hide(); + $('#js-hide-if-username-email').show(); + } else { + $('#js-hide-if-username-phone').show(); + $('#js-hide-if-username-email').hide(); + } + }); + }, + fancybox_images: function() { // Fancybox fullscreen images if (typeof $.fancybox == 'function') { @@ -783,26 +820,6 @@ $.extend(fixmystreet.set_up, { }); }, - promo_elements: function() { - // Add close buttons for .promo's - if ($('.promo').length) { - $('.promo').append('<a href="#" class="close-promo">x</a>'); - } - //only close its own parent - $('.promo').on('click', '.close-promo', function(e) { - e.preventDefault(); - $(this).parent('.promo').animate({ - 'height':0, - 'margin-bottom':0, - 'padding-top':0, - 'padding-bottom':0 - },{ - duration:500, - queue:false - }).fadeOut(500); - }); - }, - ajax_history: function() { $('#map_sidebar').on('click', '.item-list--reports a', function(e) { if (e.metaKey || e.ctrlKey) { @@ -914,6 +931,7 @@ fixmystreet.update_pin = function(lonlat, savePushState) { if (category_select.val() != '-- Pick a category --') { category_select.change(); } + fixmystreet.run(fixmystreet.set_up.category_groups); if (data.contribute_as) { var $select = $('.js-contribute-as'); @@ -930,6 +948,7 @@ fixmystreet.update_pin = function(lonlat, savePushState) { if (!data.contribute_as.body) { $select.find('option[value=body]').remove(); } + $select.change(); $('#js-contribute-as-wrapper').show(); } else { $('#js-contribute-as-wrapper').hide(); @@ -993,6 +1012,7 @@ fixmystreet.display = { } $('#sub_map_links').hide(); + $('.big-hide-pins-link').hide(); if ($('html').hasClass('mobile')) { var $map_box = $('#map_box'), width = $map_box.width(), @@ -1072,6 +1092,8 @@ fixmystreet.display = { fixmystreet.map.updateSize(); } + $('.big-hide-pins-link').hide(); + // If this is the first individual report we've loaded, remove the // "all reports" sub_map_links but store them in a global variable // so we can reinsert them when the user returns to the all reports @@ -1132,8 +1154,12 @@ fixmystreet.display = { reports_list: function(reportListUrl, callback) { // If the report list is already in the DOM, // just reveal it, rather than loading new page. - if ($('#side').length) { - $('#side').show(); + var side = document.getElementById('side'); + if (side) { + if (side.style.display !== 'none') { + return; + } + side.style.display = ''; $('#side-form').hide(); // Report page may have been one or two columns, remove either $('#side-report').remove(); @@ -1151,6 +1177,7 @@ fixmystreet.display = { $('#sub_map_links').replaceWith(fixmystreet.original.sub_map_links); delete fixmystreet.original.sub_map_links; } + $('.big-hide-pins-link').show(); fixmystreet.set_up.map_controls(); window.selected_problem_id = undefined; @@ -1216,17 +1243,27 @@ $(function() { $('#filter_categories').add('#statuses').add('#sort').find('option') .prop('selected', function() { return this.defaultSelected; }) .trigger('change.multiselect'); + if (fixmystreet.utils && fixmystreet.utils.parse_query_string) { + var qs = fixmystreet.utils.parse_query_string(); + var page = qs.p || 1; + $('.pagination').data('page', page) + .trigger('change.filters'); + } fixmystreet.display.reports_list(location.href); } else if ('reportId' in e.state) { fixmystreet.display.report(e.state.reportPageUrl, e.state.reportId); } else if ('newReportAtLonlat' in e.state) { fixmystreet.display.begin_report(e.state.newReportAtLonlat, false); + } else if ('page_change' in e.state) { + $('.pagination').data('page', e.state.page_change.page) + .trigger('change.filters'); } else if ('filter_change' in e.state) { $('#filter_categories').val(e.state.filter_change.filter_categories); $('#statuses').val(e.state.filter_change.statuses); $('#sort').val(e.state.filter_change.sort); $('#filter_categories').add('#statuses') .trigger('change.filters').trigger('change.multiselect'); + fixmystreet.display.reports_list(location.href); } else if ('hashchange' in e.state) { // This popstate was just here because the hash changed. // (eg: mobile nav click.) We want to ignore it. diff --git a/web/cobrands/fixmystreet/front.js b/web/cobrands/fixmystreet/front.js deleted file mode 100644 index a5e3bac98..000000000 --- a/web/cobrands/fixmystreet/front.js +++ /dev/null @@ -1,12 +0,0 @@ -yepnope.addPrefix( 'preload', function ( resource ) { - resource.noexec = true; - return resource; -}); - -(function(){ - var scripts = document.getElementById('script_front').getAttribute('data-scripts').split(','); - for (var i=0; i<scripts.length; i++) { - scripts[i] = 'preload!' + scripts[i]; - } - yepnope({ load: scripts }); -})(); diff --git a/web/cobrands/fixmystreet/images/button-icons.png b/web/cobrands/fixmystreet/images/button-icons.png Binary files differnew file mode 100644 index 000000000..3808ba558 --- /dev/null +++ b/web/cobrands/fixmystreet/images/button-icons.png diff --git a/web/cobrands/fixmystreet/images/button-icons.svg b/web/cobrands/fixmystreet/images/button-icons.svg new file mode 100644 index 000000000..216d2e89a --- /dev/null +++ b/web/cobrands/fixmystreet/images/button-icons.svg @@ -0,0 +1 @@ +<svg width="112" height="16" viewBox="0 0 112 16" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path fill="#000" fill-rule="nonzero" d="M18 0h6.5L31 8l-6.5 8H18l6.5-8M14 0H7.5L1 8l6.5 8H14L7.5 8"/><path d="M109 8.5a5 5 0 0 1-4.5 4.4v-3h-1v3A5 5 0 0 1 99 8.5h3v-1h-3a5 5 0 0 1 4.5-4.5v3h1V3a5 5 0 0 1 4.5 4.5h-3v1h3zm1-1a6 6 0 0 0-5.5-5.5V0h-1v2A6 6 0 0 0 98 7.5h-2v1h2a6 6 0 0 0 5.5 5.4V16h1v-2a6 6 0 0 0 5.5-5.5h2v-1h-2zM95.3 0h-.2L80.3 7a.6.6 0 0 0 0 1.2l5.4 2 2.1 5.4c.1.2.3.4.6.4.2 0 .4-.1.5-.3L96 .9V.3a.6.6 0 0 0-.6-.3zm-2.8 2.6l-6.4 6.5-4-1.6 10.4-4.9zm.9.9l-5 10.4-1.5-4 6.5-6.4zM40 4.5L35.5 0 32 3.5 36.5 8 32 12.5l3.5 3.5 4.5-4.5 4.5 4.5 3.5-3.5L43.5 8 48 3.5 44.5 0 40 4.5" fill="#000"/><path d="M67.4 15.2l-.2-.4 4.8-2.6 4.8 2.6-.2.4-.3-.4a7.8 7.8 0 0 0 .5-.4l.4.4-.5.1-1-5.4 4-3.8.3.4-.5.1a7.7 7.7 0 0 0-.2-.6l.5-.2V6l-5.5-.8-2.3-5 .4-.2v.5a8 8 0 0 0-.6 0V0l.4.2-2.4 5-5.4.7v-.5l.4.2a7.7 7.7 0 0 0-.2.6l-.5-.1.3-.4 4 3.8-1 5.4h-.5l.4-.5a7.8 7.8 0 0 0 .5.4l-.3.4z" stroke="#000"/><path d="M51.4 15.2l4.6-2.4 4.6 2.4.6-.4-1-5.1L64 6.1l-.2-.7-5.2-.7L56.3 0a8.4 8.4 0 0 0-.6 0l-2.3 4.7-5.2.7-.2.7 3.7 3.6-.9 5.1.6.4z" fill="#00BD08"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/chevron-grey-left.svg b/web/cobrands/fixmystreet/images/chevron-grey-left.svg deleted file mode 100644 index 522a6f920..000000000 --- a/web/cobrands/fixmystreet/images/chevron-grey-left.svg +++ /dev/null @@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="27" height="33"><path fill="#d1d1d1" d="M26 0H13L0 16l13 16h13L13 16"/></svg> diff --git a/web/cobrands/fixmystreet/images/chevron-grey-right.svg b/web/cobrands/fixmystreet/images/chevron-grey-right.svg deleted file mode 100644 index 4715a03f8..000000000 --- a/web/cobrands/fixmystreet/images/chevron-grey-right.svg +++ /dev/null @@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="27" height="33"><path fill="#d1d1d1" d="M0 0h13l13 16-13 16H0l13-16"/></svg> diff --git a/web/cobrands/fixmystreet/images/compress.png b/web/cobrands/fixmystreet/images/compress.png Binary files differdeleted file mode 100644 index 500673956..000000000 --- a/web/cobrands/fixmystreet/images/compress.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/compress.svg b/web/cobrands/fixmystreet/images/compress.svg deleted file mode 100644 index 68efd6b31..000000000 --- a/web/cobrands/fixmystreet/images/compress.svg +++ /dev/null @@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="384" height="448" viewBox="0 0 384 448"><path fill="#fff" d="M192 240v112c0 8.75-7.25 16-16 16-4.25 0-8.25-1.75-11.25-4.75l-36-36-83 83c-1.5 1.5-3.75 2.5-5.75 2.5s-4.25-1-5.75-2.5l-28.5-28.5c-1.5-1.5-2.5-3.75-2.5-5.75s1-4.25 2.5-5.75l83-83-36-36c-3-3-4.75-7-4.75-11.25 0-8.75 7.25-16 16-16h112c8.75 0 16 7.25 16 16zM380.75 72c0 2-1 4.25-2.5 5.75l-83 83 36 36c3 3 4.75 7 4.75 11.25 0 8.75-7.25 16-16 16H208c-8.75 0-16-7.25-16-16V96c0-8.75 7.25-16 16-16 4.25 0 8.25 1.75 11.25 4.75l36 36 83-83c1.5-1.5 3.75-2.5 5.75-2.5s4.25 1 5.75 2.5l28.5 28.5c1.5 1.5 2.5 3.75 2.5 5.75z"/></svg> diff --git a/web/cobrands/fixmystreet/images/compress@2x.png b/web/cobrands/fixmystreet/images/compress@2x.png Binary files differdeleted file mode 100644 index 8acf34850..000000000 --- a/web/cobrands/fixmystreet/images/compress@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/cross-white.png b/web/cobrands/fixmystreet/images/cross-white.png Binary files differdeleted file mode 100644 index eb21ae816..000000000 --- a/web/cobrands/fixmystreet/images/cross-white.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/cross-white.svg b/web/cobrands/fixmystreet/images/cross-white.svg deleted file mode 100644 index 8b57e699a..000000000 --- a/web/cobrands/fixmystreet/images/cross-white.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="26" height="26" viewBox="0 0 26 26" xmlns="http://www.w3.org/2000/svg"><title>Artboard 1 Copy</title><path d="M12.993 7.336L5.657 0 0 5.657l7.336 7.336L0 20.33l5.657 5.656 7.336-7.336 7.336 7.336 5.656-5.657-7.336-7.337 7.336-7.336L20.33 0l-7.337 7.336" fill="#FFF" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/crosshairs.png b/web/cobrands/fixmystreet/images/crosshairs.png Binary files differdeleted file mode 100644 index e3f216814..000000000 --- a/web/cobrands/fixmystreet/images/crosshairs.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/crosshairs.svg b/web/cobrands/fixmystreet/images/crosshairs.svg deleted file mode 100644 index 80b5172c6..000000000 --- a/web/cobrands/fixmystreet/images/crosshairs.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><title>icon-crosshairs</title><path d="M13.013 8.48c-.242 2.344-2.117 4.204-4.475 4.445V9.977H7.534v2.953c-2.375-.225-4.268-2.095-4.512-4.45h3.005v-.997H3.02C3.246 5.113 5.146 3.227 7.533 3v2.986h1.004V3.003c2.37.243 4.25 2.12 4.478 4.48h-2.97v.998h2.967zm1.008-.997c-.232-2.91-2.558-5.232-5.482-5.48V0H7.534v2.002c-2.942.233-5.285 2.56-5.52 5.48H0v1h2.017c.25 2.904 2.587 5.214 5.517 5.446V16h1.004v-2.074c2.912-.247 5.232-2.55 5.48-5.445H16v-.997h-1.98z" fill="#000" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/crosshairs@2x.png b/web/cobrands/fixmystreet/images/crosshairs@2x.png Binary files differdeleted file mode 100644 index c7caa518a..000000000 --- a/web/cobrands/fixmystreet/images/crosshairs@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/expand.png b/web/cobrands/fixmystreet/images/expand.png Binary files differdeleted file mode 100644 index c0c129fb7..000000000 --- a/web/cobrands/fixmystreet/images/expand.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/expand.svg b/web/cobrands/fixmystreet/images/expand.svg deleted file mode 100644 index 1f063b4b7..000000000 --- a/web/cobrands/fixmystreet/images/expand.svg +++ /dev/null @@ -1 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" width="384" height="448" viewBox="0 0 384 448"><path fill="#fff" d="M188.75 264c0 2-1 4.25-2.5 5.75l-83 83 36 36c3 3 4.75 7 4.75 11.25 0 8.75-7.25 16-16 16H16c-8.75 0-16-7.25-16-16V288c0-8.75 7.25-16 16-16 4.25 0 8.25 1.75 11.25 4.75l36 36 83-83c1.5-1.5 3.75-2.5 5.75-2.5s4.25 1 5.75 2.5l28.5 28.5c1.5 1.5 2.5 3.75 2.5 5.75zM384 48v112c0 8.75-7.25 16-16 16-4.25 0-8.25-1.75-11.25-4.75l-36-36-83 83c-1.5 1.5-3.75 2.5-5.75 2.5s-4.25-1-5.75-2.5l-28.5-28.5c-1.5-1.5-2.5-3.75-2.5-5.75s1-4.25 2.5-5.75l83-83-36-36c-3-3-4.75-7-4.75-11.25 0-8.75 7.25-16 16-16h112c8.75 0 16 7.25 16 16z"/></svg> diff --git a/web/cobrands/fixmystreet/images/expand@2x.png b/web/cobrands/fixmystreet/images/expand@2x.png Binary files differdeleted file mode 100644 index 6abc9c1a4..000000000 --- a/web/cobrands/fixmystreet/images/expand@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/fms-pan-zoom.png b/web/cobrands/fixmystreet/images/fms-pan-zoom.png Binary files differnew file mode 100644 index 000000000..37fdc5335 --- /dev/null +++ b/web/cobrands/fixmystreet/images/fms-pan-zoom.png diff --git a/web/cobrands/fixmystreet/images/fms-pan-zoom.svg b/web/cobrands/fixmystreet/images/fms-pan-zoom.svg new file mode 100644 index 000000000..7ac54539f --- /dev/null +++ b/web/cobrands/fixmystreet/images/fms-pan-zoom.svg @@ -0,0 +1 @@ +<svg width="156" height="72" viewBox="0 0 156 72" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><rect fill="#222" width="36" height="72" rx="4"/><path d="M120 68V4a4 4 0 0 0-4-4H88a4 4 0 0 0-4 4v68h36v-4zM156 4V0h-36v68a4 4 0 0 0 4 4h28a4 4 0 0 0 4-4V4zM80 0H40a4 4 0 0 0-4 4v28a4 4 0 0 0 4 4h44V0h-4zM40 36h40a4 4 0 0 1 4 4v28a4 4 0 0 1-4 4H36V36h4z" fill="#222"/><path fill="#FFF" d="M18 15l5 6H13zM51 18l6-5v10zM69 54l-6 5V49zM18 57l5-6H13zM94 19h16v4H94z"/><path fill="#FFF" d="M104 13v16h-4V13zM130 52h16v4h-16z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/hide-pins-link.png b/web/cobrands/fixmystreet/images/hide-pins-link.png Binary files differnew file mode 100644 index 000000000..0171eef35 --- /dev/null +++ b/web/cobrands/fixmystreet/images/hide-pins-link.png diff --git a/web/cobrands/fixmystreet/images/hide-pins-link.svg b/web/cobrands/fixmystreet/images/hide-pins-link.svg new file mode 100644 index 000000000..5043fafa5 --- /dev/null +++ b/web/cobrands/fixmystreet/images/hide-pins-link.svg @@ -0,0 +1 @@ +<svg width="36" height="36" viewBox="0 0 36 36" xmlns="http://www.w3.org/2000/svg"><g fill="#FFF" fill-rule="evenodd"><path d="M25.4 21.1l-3.7-3.6A4 4 0 0 0 18 12a4 4 0 0 0-1.5.3L13 8.6a9 9 0 0 1 12.5 12.5zm-4.5 4l-3 6-3.4-6.8a9 9 0 0 1-5.2-10.7L21 25.2zM7.4 6L30 28.6 28.6 30 6 7.4z"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-active-hover@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-active-hover@2x.png Binary files differdeleted file mode 100644 index b52123a4a..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-active-hover@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-active@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-active@2x.png Binary files differdeleted file mode 100644 index bcd5d8c0d..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-active@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-down-hover@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-down-hover@2x.png Binary files differdeleted file mode 100644 index 3deb4c1d1..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-down-hover@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-down@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-down@2x.png Binary files differdeleted file mode 100644 index cfdadf2e4..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-down@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-inactive-hover@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-inactive-hover@2x.png Binary files differdeleted file mode 100644 index b561473fd..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-inactive-hover@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-inactive@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-inactive@2x.png Binary files differdeleted file mode 100644 index 47b86d144..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-inactive@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-mini.png b/web/cobrands/fixmystreet/images/icon-shortlist-mini.png Binary files differdeleted file mode 100644 index 730dd49df..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-mini.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-mini.svg b/web/cobrands/fixmystreet/images/icon-shortlist-mini.svg deleted file mode 100644 index 98b89ab2e..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-mini.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><title>icon-shortlist</title><defs><path d="M3.4 15.22L8 12.804l4.6 2.418c.19-.126.377-.262.557-.405l-.88-5.12L16 6.067c-.062-.222-.133-.44-.212-.654l-5.144-.747-2.3-4.66C8.232.003 8.117 0 8 0c-.116 0-.23.002-.345.007l-2.3 4.66-5.143.746c-.08.214-.15.432-.212.654l3.722 3.628-.88 5.12c.18.143.367.28.56.406z" id="a"/><mask id="b" x="0" y="0" width="16" height="15.221" fill="#fff"><use xlink:href="#a"/></mask></defs><use mask="url(#b)" xlink:href="#a" stroke-width="2" stroke="#000" fill="none" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-mini@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-mini@2x.png Binary files differdeleted file mode 100644 index 5a332f431..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-mini@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-taken-hover@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-taken-hover@2x.png Binary files differdeleted file mode 100644 index 3e8bbcd58..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-taken-hover@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-taken@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-taken@2x.png Binary files differdeleted file mode 100644 index 1c5759701..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-taken@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-up-hover@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-up-hover@2x.png Binary files differdeleted file mode 100644 index 233864de9..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-up-hover@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlist-up@2x.png b/web/cobrands/fixmystreet/images/icon-shortlist-up@2x.png Binary files differdeleted file mode 100644 index 922cc0a94..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlist-up@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlisted-mini.png b/web/cobrands/fixmystreet/images/icon-shortlisted-mini.png Binary files differdeleted file mode 100644 index 94cdd14fb..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlisted-mini.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/icon-shortlisted-mini.svg b/web/cobrands/fixmystreet/images/icon-shortlisted-mini.svg deleted file mode 100644 index 1df25d7e7..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlisted-mini.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><title>icon-shortlisted</title><path d="M3.4 15.22L8 12.804l4.6 2.418c.19-.126.377-.262.557-.405l-.88-5.12L16 6.067c-.062-.222-.133-.44-.212-.654l-5.144-.747-2.3-4.66C8.232.003 8.117 0 8 0c-.116 0-.23.002-.345.007l-2.3 4.66-5.143.746c-.08.214-.15.432-.212.654l3.722 3.628-.88 5.12c.18.143.367.28.56.406z" fill="#00BD08" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/icon-shortlisted-mini@2x.png b/web/cobrands/fixmystreet/images/icon-shortlisted-mini@2x.png Binary files differdeleted file mode 100644 index 8da64e9ec..000000000 --- a/web/cobrands/fixmystreet/images/icon-shortlisted-mini@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/ie_key_tools_sprite.gif b/web/cobrands/fixmystreet/images/ie_key_tools_sprite.gif Binary files differdeleted file mode 100644 index aed0bafa3..000000000 --- a/web/cobrands/fixmystreet/images/ie_key_tools_sprite.gif +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/ie_sub_map_links_sprite.gif b/web/cobrands/fixmystreet/images/ie_sub_map_links_sprite.gif Binary files differdeleted file mode 100644 index 1afd136e7..000000000 --- a/web/cobrands/fixmystreet/images/ie_sub_map_links_sprite.gif +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/magnify.png b/web/cobrands/fixmystreet/images/magnify.png Binary files differnew file mode 100644 index 000000000..372818a04 --- /dev/null +++ b/web/cobrands/fixmystreet/images/magnify.png diff --git a/web/cobrands/fixmystreet/images/magnify.svg b/web/cobrands/fixmystreet/images/magnify.svg new file mode 100644 index 000000000..30f7e68ff --- /dev/null +++ b/web/cobrands/fixmystreet/images/magnify.svg @@ -0,0 +1 @@ +<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M12.8 10.8L16 14l-2 2-3.2-3.2a7 7 0 1 1 2-2zM8 6h2v2H8v2H6V8H4V6h2V4h2v2zm-1 6A5 5 0 1 0 7 2a5 5 0 0 0 0 10z" fill="#000" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/map-marker.png b/web/cobrands/fixmystreet/images/map-marker.png Binary files differdeleted file mode 100644 index 5f124dbc6..000000000 --- a/web/cobrands/fixmystreet/images/map-marker.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/map-marker.svg b/web/cobrands/fixmystreet/images/map-marker.svg deleted file mode 100755 index a84a14526..000000000 --- a/web/cobrands/fixmystreet/images/map-marker.svg +++ /dev/null @@ -1,6 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- Generated by IcoMoon.io --> -<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> -<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="28" viewBox="0 0 16 28"> -<path fill="#fff" d="M12 10c0-2.203-1.797-4-4-4s-4 1.797-4 4 1.797 4 4 4 4-1.797 4-4zM16 10c0 0.953-0.109 1.937-0.516 2.797l-5.688 12.094c-0.328 0.688-1.047 1.109-1.797 1.109s-1.469-0.422-1.781-1.109l-5.703-12.094c-0.406-0.859-0.516-1.844-0.516-2.797 0-4.422 3.578-8 8-8s8 3.578 8 8z"></path> -</svg> diff --git a/web/cobrands/fixmystreet/images/map-marker@2x.png b/web/cobrands/fixmystreet/images/map-marker@2x.png Binary files differdeleted file mode 100644 index dd2df39d3..000000000 --- a/web/cobrands/fixmystreet/images/map-marker@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/map-tools.png b/web/cobrands/fixmystreet/images/map-tools.png Binary files differnew file mode 100644 index 000000000..037fb7af2 --- /dev/null +++ b/web/cobrands/fixmystreet/images/map-tools.png diff --git a/web/cobrands/fixmystreet/images/map-tools.svg b/web/cobrands/fixmystreet/images/map-tools.svg new file mode 100644 index 000000000..5be4d71d0 --- /dev/null +++ b/web/cobrands/fixmystreet/images/map-tools.svg @@ -0,0 +1 @@ +<svg width="96" height="12" viewBox="0 0 96 12" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M15.7 9.6a1.4 1.4 0 1 1-2.7 0 1.4 1.4 0 0 1 2.7 0zM13 4.4v2c2.5 0 4.6 2 4.6 4.6h2c0-3.6-3-6.6-6.6-6.6zM13 3a8 8 0 0 1 8 8h2A10 10 0 0 0 13 1v2z" fill="#FFF" fill-rule="nonzero"/><path d="M26 4L31 9.2 29.7 12 28 8.7A3.9 3.9 0 0 1 26 4zm1.8-2.2A4 4 0 0 1 33.1 7l-5.3-5.3zM25.7 1L34 9.3l-.7.7L25 1.7l.7-.7zM42.5 12a5.5 5.5 0 1 1 0-11 5.5 5.5 0 0 1 0 11zm0-1.5a4 4 0 1 0 0-8 4 4 0 0 0 0 8z" fill="#FFF"/><path stroke="#FFF" d="M42 3v3l2 2"/><path fill="#FFF" d="M5 2L1 6l4 4zM7 2l4 4-4 4z"/><g fill="#FFF"><path d="M54 5.4l1-1.1c.2 0 .3.2.4.3a3 3 0 0 1 0 4.2L54 10.2A3 3 0 1 1 49.8 6l1-1-.3.3.6 1.5-.3.3A1.5 1.5 0 0 0 53 9l1.5-1.3a1.5 1.5 0 0 0-.5-2.4z"/><path d="M54 6.6l-1 1.1a3 3 0 0 1-.4-4.6L54 1.9A3 3 0 1 1 58.2 6l-1 1 .3-.3-.6-1.5.3-.3A1.5 1.5 0 0 0 55 3l-1.5 1.3a1.5 1.5 0 0 0 .5 2.4z"/></g><path d="M62.6 12l3.4-1.7 3.4 1.7c.2 0 .3-.2.5-.3L69.2 8 72 5.4l-.2-.5-3.8-.5L66.3 1a6.6 6.6 0 0 0-.6 0L64 4.4l-3.8.5-.2.5L62.8 8l-.7 3.7.5.3zM88.6 6H90v5l-1.8-1.8-2.5 2.5-1.4-1.4 2.5-2.5L85 6h3.6zm3.2-3.2L94.3.3l1.4 1.4-2.5 2.5L95.1 6H90V1l1.8 1.8zM78 7.4l-2.8 2.8 1.9 1.8H72V7l1.8 1.8L76.6 6 78 7.4zM79.4 6l2.8-2.8L84.1 5 84 0h-5l1.8 1.8L78 4.6 79.4 6z" fill="#FFF"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/navigate.png b/web/cobrands/fixmystreet/images/navigate.png Binary files differdeleted file mode 100644 index c37331e0d..000000000 --- a/web/cobrands/fixmystreet/images/navigate.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/navigate.svg b/web/cobrands/fixmystreet/images/navigate.svg deleted file mode 100644 index a00b08825..000000000 --- a/web/cobrands/fixmystreet/images/navigate.svg +++ /dev/null @@ -1 +0,0 @@ -<svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><title>icon-navigate</title><path d="M15.348.002c-.072.007-.142.026-.206.057L.342 7.057c-.216.103-.35.324-.342.562.008.24.158.45.38.538l5.356 2.106 2.106 5.356c.088.222.3.372.538.38.238.008.46-.126.562-.342l7-14.8c.092-.194.074-.423-.05-.6-.122-.177-.33-.274-.544-.256zm-2.82 2.62L6.055 9.095 2.11 7.546 12.53 2.62zm.857.836l-4.937 10.43-1.55-3.942 6.487-6.488z" fill="#000" fill-rule="evenodd"/></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/navigate@2x.png b/web/cobrands/fixmystreet/images/navigate@2x.png Binary files differdeleted file mode 100644 index 1ea3659eb..000000000 --- a/web/cobrands/fixmystreet/images/navigate@2x.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/padlock@2.png b/web/cobrands/fixmystreet/images/padlock@2.png Binary files differdeleted file mode 100644 index 368d344e3..000000000 --- a/web/cobrands/fixmystreet/images/padlock@2.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/phone-in-circle-100px.png b/web/cobrands/fixmystreet/images/phone-in-circle-100px.png Binary files differnew file mode 100644 index 000000000..0fab32f8a --- /dev/null +++ b/web/cobrands/fixmystreet/images/phone-in-circle-100px.png diff --git a/web/cobrands/fixmystreet/images/report-tools.png b/web/cobrands/fixmystreet/images/report-tools.png Binary files differnew file mode 100644 index 000000000..5a6a2cdfc --- /dev/null +++ b/web/cobrands/fixmystreet/images/report-tools.png diff --git a/web/cobrands/fixmystreet/images/report-tools.svg b/web/cobrands/fixmystreet/images/report-tools.svg new file mode 100644 index 000000000..6512fde8a --- /dev/null +++ b/web/cobrands/fixmystreet/images/report-tools.svg @@ -0,0 +1 @@ +<svg width="112" height="16" viewBox="0 0 112 16" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M104 1c.3 0 .6.2.8.4l7 12.3c.2.2.2.6 0 .9 0 .2-.4.4-.7.4H97a.9.9 0 0 1-.8-.4.9.9 0 0 1 0-1l7.1-12.2c.2-.2.5-.4.8-.4zm-1 10.2v2h2v-2h-2zm0-6.1v5h2v-5h-2z" fill="#D1D1D1" fill-rule="nonzero"/><g transform="translate(81)"><path stroke="#D1D1D1" stroke-width="2" d="M11 3L3 8l8 5"/><circle fill="#D1D1D1" cx="11" cy="3" r="3"/><circle fill="#D1D1D1" cx="3" cy="8" r="3"/><circle fill="#D1D1D1" cx="11" cy="13" r="3"/></g><path d="M68.8 13.1a1.9 1.9 0 1 1-3.8 0 1.9 1.9 0 0 1 3.8 0zM65 5.8v2.8c3.5 0 6.4 2.9 6.4 6.4h2.8c0-5-4.1-9.2-9.2-9.2zm0-2c6.2 0 11.2 5 11.2 11.2H79A14 14 0 0 0 65 1v2.8zM18 0h6.5L31 8l-6.5 8H18l6.5-8M48 2v6.5L40 15l-8-6.5V2l8 6.5m8 5.5V7.5L56 1l8 6.5V14l-8-6.5M14 0H7.5L1 8l6.5 8H14L7.5 8" fill="#D1D1D1" fill-rule="nonzero"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/share.png b/web/cobrands/fixmystreet/images/share.png Binary files differdeleted file mode 100644 index 6eb1b6cdb..000000000 --- a/web/cobrands/fixmystreet/images/share.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/shortlist@2.png b/web/cobrands/fixmystreet/images/shortlist@2.png Binary files differdeleted file mode 100644 index d786b33d3..000000000 --- a/web/cobrands/fixmystreet/images/shortlist@2.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/site-logo.png b/web/cobrands/fixmystreet/images/site-logo.png Binary files differnew file mode 100644 index 000000000..95075b1f8 --- /dev/null +++ b/web/cobrands/fixmystreet/images/site-logo.png diff --git a/web/cobrands/fixmystreet/images/site-logo.svg b/web/cobrands/fixmystreet/images/site-logo.svg new file mode 100644 index 000000000..b648646d2 --- /dev/null +++ b/web/cobrands/fixmystreet/images/site-logo.svg @@ -0,0 +1 @@ +<svg width="175" height="35" viewBox="0 0 175 35" xmlns="http://www.w3.org/2000/svg"><g fill="none" fill-rule="evenodd"><path d="M16.8 30c-2.2 0-4.3-.5-6.1-1.5l5.6-5.8 1.5.1a6 6 0 0 0 5.7-7.4l-3 3.1-3.6-.7-.7-3.4 3.2-3.1c-.5-.2-1-.3-1.6-.3a6 6 0 0 0-6 6c0 .6.2 1.3.4 1.9l-5.7 5.8c-1.4-2-2.2-4.4-2.2-7 0-6.8 5.6-12.4 12.5-12.4 6.8 0 12.4 5.6 12.4 12.4 0 6.8-5.6 12.4-12.4 12.4m0-28C8 2 1 9 1 17.7s7 15.6 15.8 15.6c8.7 0 15.7-7 15.7-15.6s-7-15.6-15.7-15.6" fill="#FFF"/><path d="M94.4 30.2c1.1 0 1.9-.9 2.3-2l.8-1.8L93 16c-.2-.4-.5-.5-1-.5H92V14h.8c1.1 0 1.5.2 2 1.4l3.2 7.8.4 1.3.5-1.3 3.1-7.8c.4-1.2.8-1.4 2-1.4h.7v1.5h-.2c-.5 0-.7 0-.9.5l-5.4 13.1c-.7 1.6-2 2.6-3.6 2.6-1.8 0-2.8-1.2-2.8-1.2l.8-1.2s.8.9 2 .9M70.8 25h1c.3 0 .5-.2.5-.6L73.6 9h1.8l4.7 10.2.8 2 1-2L86.4 9h1.8l1.2 15.4c0 .4.2.6.6.6h.9v1.5h-1.7c-1 0-1.5-.5-1.5-1.5l-.9-10.6v-2.5l-1 2.5-4.2 8.8h-1.5L76 14.4l-1-2.5v2.5L74 25c0 1-.4 1.5-1.5 1.5h-1.7V25zm-7.6-5l-2.8-4c-.3-.4-.6-.5-1.1-.5h-.5V14h.9c1.3 0 1.6.2 2.3 1.4L64 18l.5.8.4-.8 1.9-2.7c.7-1.2 1-1.4 2.3-1.4h1v1.5h-.6c-.5 0-.9 0-1.2.5l-2.7 4 4.4 6.5h-2l-3-4.7-.5-.6-.5.6-3 4.7h-2l4.4-6.5zm-9-11H56v2.2h-1.6V9zm.1 7c0-.3-.2-.5-.5-.5h-1V14h1.7c1 0 1.5.4 1.5 1.5v9c0 .4.2.5.6.5h1v1.5H56c-1.1 0-1.6-.5-1.6-1.5v-9zm-12.1-5.4h-1.6V9H50c1.1 0 1.5.5 1.5 1.5v1.8H50V11c0-.4-.2-.5-.5-.5H44V17h6.3v1.6h-6.3v7.8h-1.8v-16z" fill="#FDD008"/><path d="M170.4 13.6l1.6.1c.2.1.7.5.7 1.2l-.2.7c-.4.7-.9.7-2.1.7v6.2c0 1.1.4 1.2 1.3 1.2 1 0 1.2.8 1.2 1.3 0 1.5-1.7 1.6-2.7 1.6-3.4 0-3.5-2-3.5-3.4v-6.9l-1.2-.1c0-.1-.6-.4-.6-1.3v-.6c.4-.7 1.2-.7 1.8-.7v-1.8c0-.6 0-1.2.5-1.7 0-.1.5-.6 1.3-.6l.7.1c1.1.4 1.1 1.5 1.2 2.2v1.8zm-9.4 4.8c-.1-.4-.2-.8-.5-1.2-.4-.7-1.2-1-2-1-2 0-2.5 1.4-2.8 2.2h5.3zm-5.3 2.8c0 .6.2 1.3.8 2 .8.8 1.8.8 2 .8 1 0 1.6-.4 1.8-.7l.5-.4c.4-.3.7-.4 1-.4 1 0 1.7.7 1.7 1.6 0 .6-.3 1.1-1 1.6a7 7 0 0 1-4 1.1c-5 0-6.6-3.6-6.6-6.7 0-3.8 2.5-6.8 6.6-6.8 4.6 0 6 3.7 6 6.1 0 1.7-1 1.7-1.6 1.8h-7.2zm-8.3-2.8c-.1-.4-.2-.8-.5-1.2-.4-.7-1.2-1-2-1-2 0-2.5 1.4-2.8 2.2h5.3zm-5.3 2.8c.1.6.2 1.3.8 2 .8.8 1.8.8 2 .8 1 0 1.6-.4 1.9-.7l.4-.4c.4-.3.8-.4 1-.4 1 0 1.7.7 1.7 1.6 0 .6-.2 1.1-1 1.6a7 7 0 0 1-4 1.1c-5 0-6.6-3.6-6.6-6.7 0-3.8 2.5-6.8 6.6-6.8 4.6 0 6 3.7 6 6.1 0 1.7-1 1.7-1.6 1.8h-7.2zm-12.3-5.4c0-.6 0-1.3.6-1.9.2-.2.6-.4 1.2-.4l.8.1c1 .5 1 1.6 1 2v.4c0-.4.2-.8.5-1.2a3 3 0 0 1 2.6-1.4c1.3 0 1.8.8 1.8 1.6 0 .5-.1 1-.4 1.2-.4.4-.9.5-1.3.5h-1c-2 .4-2 2.3-2 3.7v4c0 .5 0 1.3-.5 1.7-.3.4-.8.6-1.3.6l-.7-.1c-1.2-.4-1.3-1.5-1.3-2.3v-8.5zm-3.6-2.2l1.6.1c.2.1.7.5.7 1.2 0 .3 0 .5-.2.7-.3.7-.8.7-2.1.7v6.2c0 1.1.4 1.2 1.3 1.2 1 0 1.2.8 1.2 1.3 0 1.5-1.7 1.6-2.7 1.6-3.4 0-3.5-2-3.5-3.4v-6.9l-1.1-.1c-.2-.1-.7-.4-.7-1.3l.1-.6c.4-.7 1.1-.7 1.7-.7v-1.8c0-.6 0-1.2.5-1.7.1-.1.5-.6 1.4-.6l.7.1c1 .4 1 1.5 1 2.2v1.8zm-6.3-1c0 1.1-1.1 1.8-2 1.8-.6 0-1-.2-1.5-.9l-.4-.5c-.6-.7-1.5-1.2-3-1.2-1.7 0-3 .6-3 1.8 0 .4.2.7.5 1 .4.3 1 .5 2.3.8 3.9 1 4.3 1.2 5.2 1.8 1 .7 2.2 2 2.2 4 0 1.8-.9 3.3-2 4.2a8.4 8.4 0 0 1-5.3 1.5c-1.8 0-3.4-.3-4.7-1-2.7-1.3-2.8-3-2.8-3.4 0-1.2 1-2 2-2 .7 0 1.3.5 1.8 1.4.6.8 1.2 1.7 3.8 1.7.6 0 1.2 0 1.7-.3.2 0 1.4-.5 1.4-1.8 0-.7-.3-1-.8-1.4-.5-.3-.8-.4-3.2-1-3-.8-6.2-1.6-6.2-5.3 0-3.1 2.5-5.3 7.1-5.3 4.4 0 6.9 2.3 6.9 4z" fill="#FFF"/></g></svg>
\ No newline at end of file diff --git a/web/cobrands/fixmystreet/images/sprite.png b/web/cobrands/fixmystreet/images/sprite.png Binary files differdeleted file mode 100644 index 61c27b32a..000000000 --- a/web/cobrands/fixmystreet/images/sprite.png +++ /dev/null diff --git a/web/cobrands/fixmystreet/images/triangle-grey-left.svg b/web/cobrands/fixmystreet/images/triangle-grey-left.svg deleted file mode 100644 index 26ea59a23..000000000 --- a/web/cobrands/fixmystreet/images/triangle-grey-left.svg +++ /dev/null @@ -1,3 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="4" height="7"> - <polygon points="3,0 0,3 3,6" fill="#f1f1f1"/> -</svg> diff --git a/web/cobrands/fixmystreet/images/triangle-grey-right.svg b/web/cobrands/fixmystreet/images/triangle-grey-right.svg deleted file mode 100644 index 8ea307b21..000000000 --- a/web/cobrands/fixmystreet/images/triangle-grey-right.svg +++ /dev/null @@ -1,3 +0,0 @@ -<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="4" height="7"> - <polygon points="0,0 3,3 0,6" fill="#f1f1f1"/> -</svg> diff --git a/web/cobrands/fixmystreet/map.js b/web/cobrands/fixmystreet/map.js index f3bf1a19f..9303c22b7 100644 --- a/web/cobrands/fixmystreet/map.js +++ b/web/cobrands/fixmystreet/map.js @@ -3,7 +3,7 @@ var fixmystreet = fixmystreet || {}; (function(){ var map_data = document.getElementById('js-map-data'), - map_keys = [ 'area', 'all_pins', 'latitude', 'longitude', 'zoomToBounds', 'zoom', 'pin_prefix', 'pin_new_report_colour', 'numZoomLevels', 'zoomOffset', 'map_type', 'key' ], + map_keys = [ 'area', 'latitude', 'longitude', 'zoomToBounds', 'zoom', 'pin_prefix', 'pin_new_report_colour', 'numZoomLevels', 'zoomOffset', 'map_type', 'key' ], numeric = { zoom: 1, numZoomLevels: 1, zoomOffset: 1, id: 1 }, pin_keys = [ 'lat', 'lon', 'colour', 'id', 'title', 'type' ]; diff --git a/web/cobrands/fixmystreet/prefetch-polyfill.js b/web/cobrands/fixmystreet/prefetch-polyfill.js new file mode 100644 index 000000000..a8b0f3dbf --- /dev/null +++ b/web/cobrands/fixmystreet/prefetch-polyfill.js @@ -0,0 +1,28 @@ +(function(){ + function has_prefetch() { + // IE11 + Edge support prefetch, but do not support relList.supports, sigh + var ua = navigator.userAgent; + if (ua.indexOf('Edge/') > -1 || ua.indexOf('Trident/7') > -1) { + return true; + } + // e.g. Firefox + Chrome will pass this test, and Safari will fail. + var l = document.createElement("link"), + rl = l.relList; + if (rl && rl.supports) { + return rl.supports('prefetch'); + } + } + + // If we don't support the <link rel="prefetch">s in the header, manually + // prefetch them by storing them in images. + if (!has_prefetch()) { + var links = document.getElementsByTagName('link'), + llen = links.length; + for (var x = 0; x < llen; x++) { + var link = links[x]; + if (link.nodeName === "LINK" && link.rel && link.rel === 'prefetch') { + (new Image()).src = link.href; + } + } + } +})(); diff --git a/web/cobrands/fixmystreet/staff.js b/web/cobrands/fixmystreet/staff.js index 07a2729e2..2b7c5b010 100644 --- a/web/cobrands/fixmystreet/staff.js +++ b/web/cobrands/fixmystreet/staff.js @@ -171,7 +171,7 @@ $.extend(fixmystreet.set_up, { var opt = this.options[this.selectedIndex], val = opt.value, txt = opt.text; - var $emailInput = $('input[name=email]').add('input[name=rznvy]'); + var $emailInput = $('input[name=username]'); var $nameInput = $('input[name=name]'); var $phoneInput = $('input[name=phone]'); var $showNameCheckbox = $('input[name=may_show_name]'); @@ -299,8 +299,23 @@ $.extend(fixmystreet.set_up, { toggle_public_update(); }); - if (geo_position_js.init()) { - fixmystreet.geolocate.setup(function(pos) { + if ($('#detailed_information').data('max-length')) { + $('#detailed_information').on('keyup', function() { + var $this = $(this), + counter = $('#detailed_information_length'); + var chars_left = $this.data('max-length') - $this.val().length; + counter.html(chars_left); + if (chars_left < 0) { + counter.addClass('error'); + } else { + counter.removeClass('error'); + } + }); + } + + if ('geolocation' in navigator) { + var el = document.querySelector('.btn--geolocate'); + fixmystreet.geolocate(el, function(pos) { var latlon = new OpenLayers.LonLat(pos.coords.longitude, pos.coords.latitude); var bng = latlon.clone().transform( new OpenLayers.Projection("EPSG:4326"), @@ -315,16 +330,11 @@ $.extend(fixmystreet.set_up, { }); } - // Make the "Provide an update" form toggleable, and hide it by default. + // Make the "Provide an update" form toggleable, hidden by default. // (Inspectors will normally just use the #public_update box instead). - var $updateFormH2 = $('.update-form-heading'); - var $updateFormBtn = $('<button>').insertBefore( $updateFormH2 ); - $updateFormH2.hide().nextAll().hide(); - $updateFormBtn.addClass('btn btn--provide-update'); - $updateFormBtn.text( $updateFormH2.text() ); - $updateFormBtn.on('click', function(e) { + $('.js-provide-update').on('click', function(e) { e.preventDefault(); - $updateFormH2.nextAll().toggle(); + $(this).next().toggleClass('hidden-js'); }); }, @@ -415,10 +425,10 @@ $.extend(fixmystreet.set_up, { }); $.extend(fixmystreet.hooks, { - update_problem_fields: function(role, body, args) { - if (role == 'inspector') { + update_problem_fields: function(args) { + if (args.prefill_reports && args.role == 'inspector') { var title = args.category + ' problem has been scheduled for fixing'; - var description = args.category + ' problem found - scheduled for fixing by ' + body; + var description = args.category + ' problem found - scheduled for fixing by ' + args.body; var $title_field = $('#form_title'); var $description_field = $('#form_detail'); diff --git a/web/cobrands/oxfordshire/js.js b/web/cobrands/oxfordshire/js.js index 17cb0dd8f..ad9639383 100644 --- a/web/cobrands/oxfordshire/js.js +++ b/web/cobrands/oxfordshire/js.js @@ -1,7 +1,5 @@ fixmystreet.utils = fixmystreet.utils || {}; -$.extend(fixmystreet.utils, { - defect_type_format: function(data) { - return data.extra.defect_code + ' - ' + data.extra.activity_code + ' (' + data.name + ')'; - } -}); +fixmystreet.utils.defect_type_format = function(data) { + return data.extra.defect_code + ' - ' + data.extra.activity_code + ' (' + data.name + ')'; +}; diff --git a/web/cobrands/oxfordshire/layout.scss b/web/cobrands/oxfordshire/layout.scss index fc89b854f..ff5a2c009 100644 --- a/web/cobrands/oxfordshire/layout.scss +++ b/web/cobrands/oxfordshire/layout.scss @@ -225,11 +225,9 @@ h4.static-with-rule { } } -.shadow-wrap { - ul#key-tools { - @include box-shadow(0 0 1em 1em $oxfordshire_very_light_green); - border-top-width: 2px; - } +#key-tools { + @include box-shadow(0 0 1em 1em $oxfordshire_very_light_green); + border-top-width: 2px; } #oxford-wrapper #front-main #postcodeForm div { diff --git a/web/cobrands/sass/_base.scss b/web/cobrands/sass/_base.scss index d02efe489..109a67d64 100644 --- a/web/cobrands/sass/_base.scss +++ b/web/cobrands/sass/_base.scss @@ -3,7 +3,6 @@ $body-font: MuseoSans, Helmet, Freesans, sans-serif !default; $meta-font: Helmet, Freesans, sans-serif !default; $heading-font: 'Museo300-display', MuseoSans, Helmet, Freesans, sans-serif !default; -$image-sprite: '../fixmystreet/images/sprite.png' !default; $menu-image: 'menu-white' !default; $itemlist_item_background: #f6f6f6 !default; @@ -228,9 +227,15 @@ input[type=file] { width: 100%; } +input[type=tel], +input[type=number], input[type=text], input[type=password], input[type=email], +input[type=date], +input[type=time], +input[type=datetime], +input[type=url], textarea { @include box-sizing(border-box); display: block; @@ -289,6 +294,9 @@ select.form-control { &[multiple] { height: auto; } + + // Prevent a flash of tall select elements + // before $.multiSelect() has replaced them. .js &.js-multiple[multiple] { height: 2.2em; } @@ -322,17 +330,10 @@ select.form-control { display: inline-block; width: 16px; height: 18px; - background: transparent url(/cobrands/fixmystreet/images/padlock.png) 0 0 no-repeat; + background-repeat: no-repeat; + @include svg-background-image('/cobrands/fixmystreet/images/padlock'); background-size: 16px 18px; margin-#{$right}: 0.5em; - - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/padlock@2.png); - } - - @media all { - background-image: url(/cobrands/fixmystreet/images/padlock.svg), none; - } } } @@ -402,6 +403,8 @@ select.form-control { .form-txt-submit-box { @include clearfix(); input[type=password], + input[type=tel], + input[type=number], input[type=text], input[type=email] { width: 65%; @@ -499,7 +502,10 @@ ul.error { display: block; width: 175px; height: 60px; - background: url($image-sprite) -8px 5px no-repeat; + background-position: 0 50%; + background-repeat: no-repeat; + background-size: 175px 35px; + @include svg-background-image("/cobrands/fixmystreet/images/site-logo"); text-indent: -999999px; } @@ -564,71 +570,81 @@ ul.error { } } -// #key-tools is the list that's pulled out an stick to the bottom of the page of desktop, below is mostly just aesthetic .shadow-wrap { margin: 0 -1em; - ul#key-tools{ - @include list-reset-soft; - margin-bottom: 1em; - display: table; - width:100%; - li{ - display: table-cell; - vertical-align: bottom; - text-align: center; - border-#{$right}: 0.25em solid #fff; - &:last-child { - border-#{$right}: none; - } - input[type=submit] { - width: 100%; - border: none; - } - a, input[type=submit] { - display: block; - background-color: #f5f5f5; - background-repeat: no-repeat; - color: #333 !important; - padding:4em 2em 1em; - text-transform:uppercase; - font: { - size:0.6875em; - family: $meta-font; - weight: normal; - } - line-height: 1.2em; - white-space: normal; - border-radius: 0; - &:hover, &.hover { - text-decoration:none; - background-color:#333; - color: #fff !important; - } - &.abuse { - background-image: url($image-sprite); - background-position: center -2424px; - } - &.feed { - background-image: url($image-sprite); - background-position: center -2563px; - } +} - &.share { - background-image: url('/cobrands/fixmystreet/images/share.png'); - background-position: center 25%; - } - &.chevron { - background-image: inline-image("../fixmystreet/images/chevron-grey-#{$right}.svg"); - background-position: center 25%; - background-size: 20px 25px; - } - &.chevron.hover { - background-size: auto auto; - } - &.hover { - background-image: url($image-sprite); - background-position: center -2064px; - } +#key-tools { + @include list-reset-soft; + margin-bottom: 1em; + display: table; + width: 100%; + + li { + display: table-cell; + vertical-align: bottom; + text-align: center; + border-#{$right}: 0.25em solid #fff; + + &:last-child { + border-#{$right}: none; + } + } + + button { + width: 100%; + border: none; + } + + a, button { + display: block; + background-color: #f5f5f5; + background-repeat: no-repeat; + color: #333 !important; + padding: 1em; + text-transform: uppercase; + font-size: 0.6875em; + font-family: $meta-font; + font-weight: normal; + line-height: 1.2em; + white-space: normal; + border-radius: 0; + + &:hover, &.hover { + text-decoration:none; + background-color:#333; + color: #fff !important; + } + + &:after { + content: ""; + display: inline-block; + width: 16px; + height: 16px; + margin-#{$left}: 0.5em; + vertical-align: -0.25em; + background-size: 112px 16px; + background-repeat: no-repeat; + @include svg-background-image('/cobrands/fixmystreet/images/report-tools'); + } + + &.abuse:after { + background-position: -96px 0; + } + + &.feed:after { + background-position: -64px 0; + } + + &.share:after { + background-position: -80px 0; + } + + &.chevron:after { + @if ($right == 'right') { + background-position: -16px 0; + } @else { + background-position: 0 0; } } } @@ -636,23 +652,17 @@ ul.error { //because display:table doesn't work we float .ie7 { - .shadow-wrap { - ul#key-tools{ - background:#f5f5f5; - li{ - float: $left; - a { - padding-#{$left}: 1.5em; - padding-#{$right}: 3em; - } - } + #key-tools { + background: #f5f5f5; + + li { + float: $left; + } + + a { + padding-#{$left}: 1.5em; + padding-#{$right}: 3em; } - } -} -.iel8 { - .shadow-wrap ul#key-tools li a.chevron { - background-image:url('/cobrands/fixmystreet/images/ie_key_tools_sprite.gif'); - background-position: $right -116px; } } @@ -758,6 +768,9 @@ input.final-submit { } } +.btn--back, +.btn--forward, +.btn--cancel, .btn--navigate, .btn--geolocate, .btn--shortlist, @@ -767,60 +780,61 @@ input.final-submit { display: inline-block; width: 16px; height: 16px; - background: transparent url(/cobrands/fixmystreet/images/navigate.png) no-repeat 0 0; - background-size: 16px 16px; + background-repeat: no-repeat; + background-size: 112px 16px; + @include svg-background-image('/cobrands/fixmystreet/images/button-icons'); margin-#{$right}: 0.5em; vertical-align: -0.1em; // vertically centre icon in button + } +} - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/navigate@2x.png); +.btn--back { + &:before { + @if ($right == 'right') { + background-position: 0 0; + } @else { + background-position: -16px 0; } + } +} - @media all { - background-image: url(/cobrands/fixmystreet/images/navigate.svg), none; +.btn--forward { + &:before { + @if ($right == 'right') { + background-position: -16px 0; + } @else { + background-position: 0 0; } } } -.btn--geolocate { +.btn--cancel { &:before { - background-image: url(/cobrands/fixmystreet/images/crosshairs.png); + background-position: -32px 0; + } +} - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/crosshairs@2x.png); - } +.btn--navigate { + &:before { + background-position: -80px 0; + } +} - @media all { - background-image: url(/cobrands/fixmystreet/images/crosshairs.svg), none; - } +.btn--geolocate { + &:before { + background-position: -96px 0; } } .btn--shortlist { &:before { - background-image: url(/cobrands/fixmystreet/images/icon-shortlist-mini.png); - - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/icon-shortlist-mini@2x.png); - } - - @media all { - background-image: url(/cobrands/fixmystreet/images/icon-shortlist-mini.svg), none; - } + background-position: -64px 0; } } .btn--shortlisted { &:before { - background-image: url(/cobrands/fixmystreet/images/icon-shortlisted-mini.png); - - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/icon-shortlisted-mini@2x.png); - } - - @media all { - background-image: url(/cobrands/fixmystreet/images/icon-shortlisted-mini.svg), none; - } + background-position: -48px 0; } } @@ -849,56 +863,6 @@ input.final-submit { display: none; } -.button-fwd { - padding: flip(1em 3em 1em 1em, 1em 1em 1em 3em); - background: inline-image("../fixmystreet/images/chevron-grey-#{$right}.svg") $right 50% no-repeat; -} -.button-back { - padding: flip(1em 1em 1em 3em, 1em 3em 1em 1em); - background: inline-image("../fixmystreet/images/chevron-grey-#{$left}.svg") $left 50% no-repeat; -} -.button-fwd, -.button-back { - @include inline-block; - cursor:pointer; - font-size: 1em; - line-height: 1; - margin:0; - border:1px solid #999; - color:#333; - background-color: #eee; - background-size: 20px+16px 25px; - @include border-radius(4px); - &:hover{ - color:#fff; - background-color: #777; - text-decoration: none; - border:1px solid #666; - } -} -.iel8 { - .button-fwd, .button-back { - background-image: url($image-sprite); - background-repeat: no-repeat; - } - .button-fwd { - background-position: right -686px; - } - .button-back { - background-position: -18px -802px; - } -} - -.rap-notes-trigger { - &.clicked { - background-image: inline-image("../fixmystreet/images/cross-grey.svg"); - - .iel8 & { - background-image: url("../fixmystreet/images/cross-grey.png"); - } - } -} - .banner { position: relative; p { @@ -926,12 +890,14 @@ input.final-submit { border-#{$left}: 0.5em solid transparent; border-bottom: 0.5em solid #888; } - &#fixed { - color:#fff; - background: $col_fixed_label; - &:before { - border-bottom: 0.5em solid $col_fixed_label_dark; - } + } + + #fixed { + color:#fff; + background: $col_fixed_label; + + &:before { + border-bottom: 0.5em solid $col_fixed_label_dark; } } } @@ -1120,31 +1086,31 @@ input.final-submit { .item-list__item__shortlist-add { @extend %list-item-action-button; - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-inactive'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-inactive'); &:hover, &:focus { - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-inactive-hover'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-inactive-hover'); } } .item-list__item__shortlist-remove { @extend %list-item-action-button; - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-active'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-active'); &:hover, &:focus { - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-active-hover'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-active-hover'); } } .item-list__item__shortlist-take { @extend %list-item-action-button; - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-taken'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-taken'); &:hover, &:focus { - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-taken-hover'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-taken-hover'); } } @@ -1154,18 +1120,18 @@ input.final-submit { padding-top: 24px; // half the normal height, because shorter icon background-size: 24px 14px; - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-up'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-up'); &:hover, &:focus { - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-up-hover'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-up-hover'); } &[disabled] { opacity: 0.5; cursor: default; - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-up'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-up'); } } @@ -1176,18 +1142,18 @@ input.final-submit { padding-top: 24px; // half the normal height, because shorter icon background-size: 24px 14px; - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-down'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-down'); &:hover, &:focus { - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-down-hover'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-down-hover'); } &[disabled] { opacity: 0.5; cursor: default; - @include high-dpi-background-image('/cobrands/fixmystreet/images/icon-shortlist-down'); + @include svg-background-image('/cobrands/fixmystreet/images/icon-shortlist-down'); } } @@ -1291,19 +1257,24 @@ input.final-submit { a { display: block; position: relative; + span { - position:absolute; - top:0; + position: absolute; + top: 0; #{$right}: 0; - display:block; - width:20px; - height:20px; + display: block; + width: 20px; + height: 0; + padding-top: 20px; opacity: 0.5; - background:#fff url($image-sprite) -16px -1098px no-repeat; - //hide text - http://nicolasgallagher.com/another-css-image-replacement-technique/ - font: 0/0 a; - color: transparent; + overflow: hidden; + background-color: #fff; + background-repeat: no-repeat; + background-position: 50% 50%; + background-size: 16px 16px; + @include svg-background-image('/cobrands/fixmystreet/images/magnify'); } + &:hover span { opacity: 1; } @@ -1316,14 +1287,28 @@ input.final-submit { line-height: 1.2em; margin-bottom: 1em; padding-bottom: 0.8em; - padding-#{$left}: 22px; - background: transparent url(/cobrands/fixmystreet/images/chevron-grey-#{$left}.svg) #{$left} 0 no-repeat; - background-size: 13px 16px; border-bottom: 1px solid #eee; &:link, &:visited, &:hover { color: #666; } + + &:before { + content: ""; + display: inline-block; + width: 16px; + height: 16px; + margin-#{$right}: 0.5em; + vertical-align: -0.15em; + background-size: 112px 16px; + background-repeat: no-repeat; + @include svg-background-image('/cobrands/fixmystreet/images/report-tools'); + @if ($right == 'right') { + background-position: 0 0; + } @else { + background-position: -16px 0; + } + } } .problem-header { @@ -1365,16 +1350,11 @@ input.final-submit { padding: 1em 1em 1em 4em; // Icon is always displayed on left, even in RtL mode border-radius: 0.25em; border: 1px solid rgba(0, 0, 0, 0.1); - background: rgba(255, 255, 255, 0.5) url(/cobrands/fixmystreet/images/shortlist.png) 1em 50% no-repeat; + background-color: rgba(255, 255, 255, 0.5); + background-position: 1em 50%; + background-repeat: no-repeat; background-size: 2em 2em; - - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/shortlist@2.png); - } - - @media all { - background-image: url(/cobrands/fixmystreet/images/shortlist.svg), none; - } + @include svg-background-image('/cobrands/fixmystreet/images/shortlist'); h3 { margin: 0; @@ -1437,47 +1417,50 @@ html.js #map .noscript { position: absolute; cursor: pointer; width: 36px; - height: 36px; - text-indent: flip(-999999px, 999999px); // text-align from OL style makes this necessary - background: url($image-sprite) no-repeat; + height: 0; + padding-top: 36px; + overflow: hidden; + @include svg-background-image('/cobrands/fixmystreet/images/fms-pan-zoom'); + background-size: 156px 72px; + background-repeat: no-repeat; filter: none !important; // Override OpenLayers PNG handling of the navigation } #fms_pan_zoom_panup { - background-position: -42px -222px; + background-position: 0 0; #{$right}: 30px; #{$left}: auto; top: 0; } #fms_pan_zoom_pandown { - background-position: -42px -282px; + background-position: 0 -36px; #{$right}: 30px; #{$left}: auto; top: 72px; } #fms_pan_zoom_panleft { - background-position: -12px -252px; + background-position: -36px 0; width: 48px; #{$right}: flip(48px, 0); #{$left}: auto; top: 36px; } #fms_pan_zoom_panright { - background-position: -60px -252px; + background-position: -36px -36px; width: 48px; #{$right}: flip(0, 48px); #{$left}: auto; top: 36px; } #fms_pan_zoom_zoomin { - background-position: -152px -223px; - height: 44px; + background-position: -84px 0; + padding-top: 44px; #{$left}: 0; top: 0; } #fms_pan_zoom_zoomout { - background-position: -152px -259px; - height: 44px; + background-position: -120px 100%; + padding-top: 44px; #{$left}: 0; top: 44px; } @@ -1488,90 +1471,55 @@ html.js #map .noscript { #{$left}: 0; #{$right}: 0; bottom: 0; - background:#333; - background:rgba(0, 0, 0, 0.7); - margin:0; + background: #333; + background: rgba(0, 0, 0, 0.7); + margin: 0; + a { - @include inline-block; - font-size:0.6875em; - color:#fff; - padding: flip(0.6em 3em 0.5em 1em, 0.6em 1em 0.5em 3em); - background-repeat:no-repeat; - &#hide_pins_link { - background-image:url($image-sprite); - background-position: flip(right, -341px) -3976px; - } - &#all_pins_link { - background-image:url($image-sprite); - background-position: flip(right, -337px) -4022px; - } - &#map_permalink { - background-image:url($image-sprite); - background-position: flip(right, -341px) -4070px; - } - &#fms_shortlist_all { - padding: 0.6em 1em 0.5em 1em; - &:after { - content: ""; - display: inline-block; - width: 16px; - height: 16px; - background-image: url(/cobrands/fixmystreet/images/map-marker.png); - - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/map-marker@2x.png); - } - - @media all { - background-image: url(/cobrands/fixmystreet/images/map-marker.svg), none; - } - background-size: 16px 16px; - vertical-align: middle; - margin: flip(0 0 0 8px, 0 8px 0 0); - } - } - &.feed { - background-image:url($image-sprite); - background-position: flip(right, -341px) -3936px; - } - &#toggle-fullscreen { - padding: 0.6em 1em 0.5em 1em; - &:after { - content: ""; - display: inline-block; - width: 16px; - height: 16px; - background-size: 16px 16px; - vertical-align: middle; - margin-#{$left}: 8px; - } - &.expand:after { - background-image: url(/cobrands/fixmystreet/images/expand.png); + display: inline-block; + font-size: 0.6875em; + color: #fff; + padding: 0.6em 1em 0.5em 1em; - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/expand@2x.png); - } + &:hover { + background-color: #000; + text-decoration: none; + } - @media all { - background-image: url(/cobrands/fixmystreet/images/expand.svg), none; - } - } - &.compress:after { - background-image: url(/cobrands/fixmystreet/images/compress.png); + &:after { + content: ""; + display: inline-block; + width: 12px; + height: 12px; + margin-#{left}: 8px; + vertical-align: -0.1em; + background-size: 96px 12px; + @include svg-background-image('/cobrands/fixmystreet/images/map-tools'); + } + } - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/compress@2x.png); - } + .feed:after { + background-position: -12px 0; + } - @media all { - background-image: url(/cobrands/fixmystreet/images/compress.svg), none; - } - } - } - &:hover { - background-color:#000; - text-decoration:none; - } + #hide_pins_link:after { + background-position: -24px 0; + } + + #map_permalink:after { + background-position: -48px 0; + } + + #fms_shortlist_all:after { + background-position: -60px 0; + } + + #toggle-fullscreen:after { + background-position: -72px 0; + } + + #toggle-fullscreen.compress:after { + background-position: -84px 0; } } @@ -1613,31 +1561,26 @@ html.js #map .noscript { display: block; #{$right}: 1em; bottom: 0; - height: 20px; - padding-top: 30px; width: 4em; - background: #fff url($image-sprite) 12px -4140px no-repeat; + background: #fff; color: #000; + + &:before { + content: ""; + display: block; + width: 16px; + height: 16px; + margin: 0 auto 2px auto; + background-size: 112px 16px; + @include svg-background-image('/cobrands/fixmystreet/images/report-tools'); + background-position: -32px 0; + } } } } -// Loading indicator - -#loading-indicator { - position: absolute; - width: 100%; - height: 100%; - background-color: #000; - opacity: 0.4; - text-align: center; - - img { - position: absolute; - left: 50%; - top: 50%; - transform: translate(-50%, -50%); - } +.big-hide-pins-link { + display: none; // will become `block` in layout.scss } .big-green-banner { @@ -1715,20 +1658,15 @@ html.js #map .noscript { img { cursor: move; } - img.pin { - z-index: 100; - background-color: inherit; - } - a img.pin { - cursor: pointer; - cursor: hand; - } } -// only on mobile -a.rap-notes-trigger, -a:hover.rap-notes-trigger { - display: block; +/* For non-JS situations, as the image file is 2x pixel size */ +img.pin { + width: 48px; + height: 64px; +} + +.rap-notes-trigger { margin-bottom: 1em; } @@ -1782,6 +1720,23 @@ a:hover.rap-notes-trigger { } } +#loading-indicator { + height: 32px; + width: 32px; + position: relative; + background-color: #333; + border-radius: 0.25em; + padding: 0.25em; + // Offset from top same as fms_pan_zoom, from left so as not + // to appear on top of zoom buttons (0.5em, 36px, 0.5em) + top: 0.5em; + left: 3.25em; + .map-reporting & { + // Same as fms_pan_zoom above, leaving space for the top bar when reporting + top: 2.75em; + } +} + /* Reporting a problem bits */ label .muted { @@ -1863,6 +1818,13 @@ label .muted { padding: 1em; margin: 0 -1em; background-color: #E9F2FF; + + #detailed_information_length { + float: right; + &.error { + color: red; + } + } } .inspect-form-heading { @@ -1895,67 +1857,6 @@ label .muted { } -table.nicetable { - width:100%; - margin-bottom:2em; - thead { - border-bottom:0.25em solid #ccc; - th { - font-size:0.75em; - } - } - tr { - &.a { - background:#f6f6f6; - } - &.gone { - color: #666666; - background-color: #cccccc; - } - &:hover { - background:#FFF5CC; - cursor:pointer; - } - td { - padding:0.25em; - a { - &:hover { - text-decoration:none; - } - } - } - } - .title { - text-align: $left; - } - .data { - width:12%; - } -} - -.promo { - margin: 0 -1em 1em; - color: $primary_text; - background: $primary; - padding:1em; - overflow:hidden; - position: relative; - .close-promo { - position:absolute; - top:0.5em; - #{$right}: 0.5em; - display:block; - width:16px; - height:16px; - text-indent:-999999px; - background:url($image-sprite) -341px -263px no-repeat; - @include border-radius(4px); - &:hover { - background:#222 url($image-sprite) -341px -223px no-repeat; - } - } -} - .alert { margin: 0 -1em 1em; background:#ff0000; @@ -2081,6 +1982,19 @@ table.nicetable { background:#2a2a2a; } } + a#geolocate_link.loading { + background: #1a1a1a url("/cobrands/fixmystreet/images/spinner-black.gif") 100% 50% no-repeat; + border-right: solid 0.5em #1a1a1a; + padding-right: 1.5em; + } +} +.no-js #geolocate_link { + display: none !important; +} + +a#geolocate_link.loading, .btn--geolocate.loading { + background: url("/cobrands/fixmystreet/images/spinner-white.gif") 100% 50% no-repeat; + padding-right: 1.5em; } #front-howto { @@ -2099,11 +2013,11 @@ table.nicetable { size:0.8125em; weight:bold; } - big { - display:block; - margin-bottom:0.5em; - font-size:1.5385em; - } + } + big { + display:block; + margin-bottom:0.5em; + font-size:1.5385em; } } } @@ -2193,6 +2107,10 @@ table.nicetable { background-image: url(/cobrands/fixmystreet/images/inbox-in-circle-100px.png); } + &.confirmation-header--phone { + background-image: url(/cobrands/fixmystreet/images/phone-in-circle-100px.png); + } + h1, h2 { margin: 0; line-height: 1.2em; @@ -2467,7 +2385,6 @@ table.nicetable { } @import "_admin"; -@import "_fixedthead"; @import "_dropzone"; @import "_multiselect"; @import "_autocomplete"; diff --git a/web/cobrands/sass/_dashboard.scss b/web/cobrands/sass/_dashboard.scss index aae8aa98b..1d3066e7c 100644 --- a/web/cobrands/sass/_dashboard.scss +++ b/web/cobrands/sass/_dashboard.scss @@ -25,7 +25,7 @@ padding: 1em; @media (min-width: 48em) { - float: left; + float: $left; padding: 2em; } @@ -53,15 +53,20 @@ } .labelled-line-chart, -.labelled-sparkline { +.labelled-sparkline, +.responsive-bar-chart { position: relative; width: 100%; - line-height: 1.2em; canvas { width: 100% !important; height: auto !important; } +} + +.labelled-line-chart, +.labelled-sparkline { + line-height: 1.2em; .label { strong { @@ -78,19 +83,19 @@ @include box-sizing(border-box); @media (min-width: 48em) { - padding-right: 20%; + padding-#{$right}: 20%; } .label { - float: left; - margin-right: 2em; + float: $left; + margin-#{$right}: 2em; } } .js .labelled-line-chart .label { @media (min-width: 48em) { position: absolute; margin-top: -1em; - margin-right: 0; + margin-#{$right}: 0; } } @@ -150,13 +155,13 @@ .dashboard-search__input { @include box-sizing(border-box); width: 80%; - float: left; - padding-right: 1em; + float: $left; + padding-#{$right}: 1em; } .dashboard-search__submit { width: 20%; - float: right; + float: $right; input { width: 100%; @@ -175,25 +180,19 @@ display: inline-block; width: 16px; height: 16px; - background: transparent url(/cobrands/fixmystreet/images/crosshairs.png) no-repeat 0 0; - background-size: 16px 16px; + background-repeat: no-repeat; + background-size: 112px 16px; + @include svg-background-image('/cobrands/fixmystreet/images/button-icons'); + background-position: -96px 0; margin-#{$right}: 0.5em; vertical-align: -0.1em; - - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url(/cobrands/fixmystreet/images/crosshairs@2x.png); - } - - @media all { - background-image: url(/cobrands/fixmystreet/images/crosshairs.svg), none; - } } } .dashboard-ranking-table { width: 100%; - td { + td, th { padding: 0.4em 0.8em; &:last-child { @@ -201,13 +200,125 @@ } } - tbody tr:nth-child(odd) { - td { - background-color: mix($primary, #fff, 15%); - } + th { + text-align: inherit; } - tfoot td { + tbody tr:nth-child(odd) > * { + background-color: mix($primary, #fff, 15%); + } + + tfoot tr > * { font-weight: bold; } } + +.filters { + @include clearfix(); + background-color: mix(#fff, $primary, 60%); + margin: 0 -1em 1em -1em; + border-top: $primary solid 0.75em; + padding: 0 1em; + + // No border-top when visually preceded by .dashboard-header + .dashboard-header + * & { + border-top: none; + } + + // Quick fix for too much spacing when followed by .dashboard-item(s) + & + .dashboard-row { + margin-top: -1em; + } + + p { + padding: 0 1em; + font-size: 0.75em; + + @media (min-width: 48em) { + float: $left; + max-width: 25%; + } + } + + .no-label { + margin-top: 1.25em + 1.5em + 0.5em; // label line-height + margin-top + margin-bottom + } + + select { + width: 100%; + } + + .pro-feature { + color: mix(#222, mix(#fff, $primary, 60%), 30%); + cursor: help; + + label { + cursor: inherit; + + &:after { + display: inline-block; + content: "PRO"; + color: #fff; + background: mix(#222, mix(#fff, $primary, 60%), 30%); + border-radius: 0.3em; + padding: 0.2em 0.4em; + margin-#{$left}: 1em; + font-size: 0.8em; + line-height: 1em; + } + } + } + + .form-control[disabled] { + border-color: #ccc; + color: #999; + box-shadow: none; + } + + .btn { + padding: 0.5em 0.75em; + } +} + +.dashboard-options-tabs { + @include clearfix(); + @include list-reset-soft(); + border-bottom: 1px solid #ddd; + margin-bottom: 2em; + + li { + float: $left; + } + + .pull-right { + float: $right; + } + + a, span, strong { + display: inline-block; + padding: 0.4em 0.8em; + } + + strong { + background: #fff; + border: 1px solid #ddd; + border-bottom-color: #fff; + border-radius: 0.3em 0.3em 0 0; + margin-bottom: -1px; + } +} + +.dashboard-options-tabs--below { + margin-bottom: 0; + margin-top: 2em; + border-bottom: none; + border-top: 1px solid #ddd; + + strong { + border-top-color: #fff; + border-bottom-color: #ddd; + border-radius: 0 0 0.3em 0.3em; + margin-bottom: 0; + margin-top: -1px; + } +} diff --git a/web/cobrands/sass/_fixedthead.scss b/web/cobrands/sass/_fixedthead.scss deleted file mode 100644 index c1896e5d8..000000000 --- a/web/cobrands/sass/_fixedthead.scss +++ /dev/null @@ -1,4 +0,0 @@ -.js-fixed-thead__clone { - position: fixed; - background: #fff; -}
\ No newline at end of file diff --git a/web/cobrands/sass/_layout.scss b/web/cobrands/sass/_layout.scss index a0c27863e..1d1ecf205 100644 --- a/web/cobrands/sass/_layout.scss +++ b/web/cobrands/sass/_layout.scss @@ -1,6 +1,5 @@ @import "_mixins"; -$image-sprite: '../fixmystreet/images/sprite.png' !default; $layout_front_stats_color: $primary !default; $mappage-header-height: 4em !default; // eg: might want this to equal outer height of #site-header on normal pages $mappage-sidebar-width: 29em; @@ -586,7 +585,8 @@ body.authpage { #fms_pan_zoom_panleft, #fms_pan_zoom_panright, #fms_pan_zoom_zoomin, -#fms_pan_zoom_zoomout { +#fms_pan_zoom_zoomout, +.big-hide-pins-link { opacity: 0.85; &:hover { opacity: 1; @@ -613,31 +613,95 @@ body.authpage { #sub_map_links { #{$left}: auto; bottom: 2em; - #map_links_toggle { - display:block; - cursor: pointer; - position:absolute; - #{$left}: -0.97em; /* 1em leaves a tiny gap, font issue */ - width: 1em; - height:100%; - background:#000 inline-image("../fixmystreet/images/triangle-grey-#{$right}.svg") 50% 50% no-repeat; - @include border-radius(flip(0.25em 0 0 0.25em, 0 0.25em 0.25em 0)); +} + +// Show the extra button if there is vertical space. +@media (min-height: 450px) { + .big-hide-pins-link { + $fms_pan_zoom_top: 8px; + $fms_pan_zoom_right: 8px; + $fms_pan_zoom_zoomout_top: 174px; + $fms_pan_zoom_zoomout_right: 30px; + $fms_pan_zoom_zoomout_height: 44px; + $gap: 22px; + + display: block; + position: absolute; + top: $fms_pan_zoom_top + $fms_pan_zoom_zoomout_top + $fms_pan_zoom_zoomout_height + $gap; + right: $fms_pan_zoom_right + $fms_pan_zoom_zoomout_right; + border-radius: 5px; + color: #fff; + width: 36px; + height: 0; + padding-top: 36px; + overflow: hidden; + + background: #222; + background-size: 36px 36px; + background-repeat: no-repeat; + background-position: 100% 0; + @include svg-background-image('/cobrands/fixmystreet/images/hide-pins-link'); + &:hover { - #{$left}: -1.5em; - //use border so we don't have to redefine the background-position - border-#{$right}: 0.5em solid #000; - } - &.closed { - background-image: inline-image("../fixmystreet/images/triangle-grey-#{$left}.svg"); + text-decoration: none; + color: #fff; + width: auto; + height: auto; + padding: 6px 40px 6px 10px; + overflow: visible; } } } -.iel8 #sub_map_links #map_links_toggle { - height: 1.75em; - background: #000 url('../fixmystreet/images/ie_sub_map_links_sprite.gif') center -143px no-repeat; - &.closed { - background-position: center -183px; + +#map_links_toggle { + display: block; + cursor: pointer; + position: absolute; + #{$left}: -1em; + width: 1em; + height: 100%; + border-radius: flip(0.25em 0 0 0.25em, 0 0.25em 0.25em 0); + background-color: #333; + + &:hover { + #{$left}: -1.2em; + width: 1.2em; + background-color: #000; + } + + &:after { + content: ""; + display: inline-block; + vertical-align: middle; + width: 6px; + height: 12px; + margin-#{$left}: ((16px - 6px) / 2); // horizontally centre in 16px wide parent + background-size: 96px 12px; + @include svg-background-image('/cobrands/fixmystreet/images/map-tools'); + } + + // Expanded arrow points towards edge of window. + // Closed arrow points away from edge of window. + @if ($right == 'right') { + + &:after { + background-position: -6px 0; + } + + &.closed:after { + background-position: 0 0; + } + + } @else { + + &:after { + background-position: 0 0; + } + + &.closed:after { + background-position: -6px 0; } + } } @@ -652,58 +716,6 @@ body.authpage { overflow: hidden; padding-top: 2em; - ul#key-tools { - border-top: 0.25em solid $primary; - margin: 0; - @include box-shadow(0 0 1em 1em #fff); - li { - border:none; - a, input[type=submit] { - font-size: 0.75em; - line-height: 18px; // match `body` - color:#666; - padding: flip(0.5em 1.5em 0.5em 0, 0.5em 0 0.5em 1.5em); - text-transform:none; - &.abuse { - background-image:url($image-sprite); - background-position: flip(right, -337px) -2935px; - } - &.feed { - background-image:url($image-sprite); - background-position: flip(right, -337px) -3074px; - } - &.share { - min-width: 5em; - background-image: url(/cobrands/fixmystreet/images/share.png); - background-position: flip(80%, 20%) 50%; - } - &.chevron { - border-#{$right}: solid 1em transparent; - padding-#{$right}: 0.5em; - background-position: $right 50%; - background-size: 12px 15px; - } - &.chevron.hover { - // Reset things that changed - border-#{$right}: none; - padding-#{$right}: 1.5em; - background-size: auto auto; - } - &.hover { - background-image: url($image-sprite); - background-position: flip(right, -337px) -1876px; - } - } - } - &.singleton { - li { - text-align: $right; - a { - padding-#{$right}: 3em; - } - } - } - } &.static { padding: 0 0 1em; position: static; @@ -711,6 +723,29 @@ body.authpage { } } +#key-tools { + border-top: 0.25em solid $primary; + margin: 0; + @include box-shadow(0 0 1em 1em #fff); + + li { + border-#{$right}: none; // undo border-right/left from _base.scss + + // Cancel centre alignment, if the *only child* in list. + &:first-child:last-child { + text-align: $right; + } + } + + a, button { + font-size: 0.75em; + line-height: 18px; // match `body` + color: #666; + padding: 0.5em; + text-transform: none; // undo uppercase from _base.scss + } +} + // If JS is disabled, these are still CSS positioned, so don't want behind shining through. #report-share, #report-updates-data { background-color: #fff; @@ -720,6 +755,14 @@ body.authpage { margin-bottom: 0; } +#loading-indicator { + height: 64px; + width: 64px; + background-color: rgba(0, 0, 0, 0.7); + // Reset the base left, as zoom buttons now elsewhere + left: 0.5em; +} + .big-green-banner { top: auto; margin: (-1em/1.375) (-1em/1.375) 0 (-1em/1.375); @@ -750,23 +793,24 @@ body.authpage { border-#{$left}: 0.75em solid transparent; border-bottom: 0.75em solid #888; } - &#fixed { - padding-top:5em; - background-image:url($image-sprite); - background-position:-324px -326px; - background-repeat:no-repeat; - &:before { - border-bottom: 0.75em solid $col_fixed_label_dark; - } + } + + #fixed, + #closed { + padding-top: 48px; + padding-top: calc(1.5em + 32px); + background-image: url('/i/pin-flat-white-small.png'); + background-size: 24px 32px; + background-position: 50% 1em; + background-repeat:no-repeat; + &:before { + border-bottom: 0.75em solid $col_fixed_label_dark; } - &#closed { - padding-top:5em; - background-image:url($image-sprite); - background-position:-318px -326px; - background-repeat:no-repeat; - &:before { - border-bottom: 0.75em solid #666; - } + } + + #closed { + &:before { + border-bottom-color: #666; } } } @@ -904,6 +948,9 @@ textarea.form-error { background:none; } } + a#geolocate_link.loading { + border-right: none; + } } .ie7 #front-main { #postcodeForm { @@ -923,10 +970,16 @@ textarea.form-error { color: #222; border-top:0.25em solid $primary; padding-top:1em; - div { - big { - color: $layout_front_stats_color; - font-size: 3.2308em; + big { + color: $layout_front_stats_color; + font-size: 2em; + @media (min-width: 54em) { + // 54em roughly halfway between 48em and 62em + font-size: 2.5em; + } + @media (min-width: 62em) { + // container max-width 60em + 2em side padding + font-size: 3em; } } } diff --git a/web/cobrands/sass/_mixins.scss b/web/cobrands/sass/_mixins.scss index 08e36e86a..392739db8 100644 --- a/web/cobrands/sass/_mixins.scss +++ b/web/cobrands/sass/_mixins.scss @@ -206,14 +206,7 @@ $right: right; order: $order; } -@mixin high-dpi-background-image($path) { +@mixin svg-background-image($path) { background-image: url("#{$path}.png"); - - @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { - background-image: url("#{$path}@2x.png"); - } - - @media screen { - background-image: url("#{$path}.svg"), none; - } + background-image: url("#{$path}.svg"), none; } diff --git a/web/cobrands/sass/_multiselect.scss b/web/cobrands/sass/_multiselect.scss index 9dda17fea..ba90c0d89 100644 --- a/web/cobrands/sass/_multiselect.scss +++ b/web/cobrands/sass/_multiselect.scss @@ -1,14 +1,15 @@ .multi-select-container { position: relative; + display: inline-block; // shrink to width of .multi-select-button } .multi-select-menu { position: absolute; left: 0; top: 0.8em; - z-index: 1; - float: left; - min-width: 100%; + z-index: 2; // stack above mysoc-footer + float: left; // shrink to width of child elements + min-width: 100%; // always at least as wide as its .multi-select-button sibling background: #fff; margin: 1em 0; border: 1px solid #aaa; @@ -20,6 +21,7 @@ display: block; font-size: 0.875em; padding: 0.6em 1em 0.6em 30px; + margin: 0; white-space: nowrap; & + & { diff --git a/web/cobrands/warwickshire/_colours.scss b/web/cobrands/warwickshire/_colours.scss index 8c2c41406..154cf1bef 100644 --- a/web/cobrands/warwickshire/_colours.scss +++ b/web/cobrands/warwickshire/_colours.scss @@ -1,6 +1,7 @@ /* COLOURS */ $green: #006d3c; +$purple: #90428C; $primary: $green; $primary_b: #000000; @@ -13,7 +14,9 @@ $map_nav_bg: #fff; $nav_fg: #000; $nav_fg_hover: $primary; -$col_click_map: $green; +$col_click_map: $purple; $col_fixed_label: #00BD08; $col_fixed_label_dark: #4B8304; + +$header-top-border: false; diff --git a/web/cobrands/warwickshire/base.scss b/web/cobrands/warwickshire/base.scss index eeefc0d80..bb4b3d08a 100644 --- a/web/cobrands/warwickshire/base.scss +++ b/web/cobrands/warwickshire/base.scss @@ -18,30 +18,13 @@ color: white; } -#mega-menu-navbar { - margin-bottom: 0; - margin-top: 5px; -} - -#site-search input[type=text] { - display: inline-block; -} - - -.navbar-fixed-top { - position: static; -} - body { font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px; line-height: 20px; -} -#site-header { - nav ul li, ul.nav li { - list-style: none; - margin-bottom: 0; + @media (max-width: 767px) { + min-width: 0; // why does Warwickshire even set a min-width on the body!? } } @@ -49,67 +32,100 @@ body.mappage > div.container { padding-top: 0; } -.footer-container { - font-size: 16px; -} +body > .navbar { + font-size: 15px; // match body {font-size: 15px } from the live site -@media (max-width: 767px) { - body { - padding-left: 0; - padding-right: 0; + .nav li { + list-style: none; // override our default list styles from _base.scss + margin-bottom: 0; // override our default list styles from _base.scss } +} - .navbar-fixed-top { - margin-left: 0; - margin-right: 0; +body.style-1 > footer { + @media (max-width: 767px) { + margin: 0 -20px; // fix a bug in Warwickshire's CSS that leaves a gap either side of footer } +} - .style-1-gradient { - margin-left: 0 !important; - margin-right: 0 !important; +body > div.container { + @media (max-width: 380px) { + margin: 0 -20px; // fix a bug in Warwickshire's CSS that leaves a gap either side of .container elements } +} - body.frontpage #wrapper { - padding: 5px 0; - } +// Quick way to fix search not fitting on a single line with nav bar! +#site-search { + display: none; +} - body.mappage #wrapper { - padding-top: 0; - } +// The custom FMS nav links just below the masthead +#main-nav { + background-color: $green; + color: #fff; + padding: 10px 0; + margin: 0 -20px; // overlap 20px padding either side of body + text-align: center; - #front-howto, #front-recently { - padding-left: 15px; + li { + display: inline-block; + list-style: none; + margin: 0; + padding: 0; + } - section.full-width { - margin: 0 0 0 -15px; - } + a, + span { + display: inline-block; + padding: 5px 10px; } - #top-header .container { - padding: 0 1em; + span { + color: mix(#fff, $green, 70%); } - #mega-menu-navbar .navbar-inner { - padding: 0; + a { + color: #fff; - #mega-menu li a { - padding: 4px 8px; + &:hover, + &:focus { + color: #fff; + text-decoration: none; } } +} - .navbar .nav { - margin: 0; +// Bootstrap messes up our inputs! +select, +textarea, +input[type="text"], +input[type="password"], +input[type="datetime"], +input[type="datetime-local"], +input[type="date"], +input[type="month"], +input[type="time"], +input[type="week"], +input[type="number"], +input[type="email"], +input[type="url"], +input[type="search"], +input[type="tel"], +input[type="color"], +.uneditable-input { + height: auto; + + &.form-control { + border: 1px solid #aaa; + box-shadow: inset 0 1px 3px rgba(0,0,0,0.2); } - } -#mega-menu-navbar .navbar-inner { - display: block; +// Bootstrap adds underlines to all our sidebar links! +.item-list a { + text-decoration: none !important; } -@media (max-width: 979px) { - .navbar-fixed-top .navbar-inner { - padding-top: 0; - padding-bottom: 0; - } +// Bootstrap messes up our map tiles if we don't disable the max-width. +#map_box img { + max-width: none !important; } diff --git a/web/cobrands/warwickshire/layout.scss b/web/cobrands/warwickshire/layout.scss index 0415d1f2a..53ec9e4b7 100644 --- a/web/cobrands/warwickshire/layout.scss +++ b/web/cobrands/warwickshire/layout.scss @@ -1,4 +1,4 @@ -$mappage-header-height: 41px + 100px + 37px; // .navbar-inverse + #top-header + #mega-menu-navbar +$mappage-header-height: 49px + 50px; // .navbar + #main-nav @import "_colours"; @import "../sass/layout"; @@ -10,25 +10,6 @@ $mappage-header-height: 41px + 100px + 37px; // .navbar-inverse + #top-header + } } -body.mappage { - footer, .footer-container, #footer-container, #footer-logos-bottom { - display: none; - } - - #wrapper.container:before, #wrapper.container:after { - display: none; - } - - #site-header .navbar { - margin-top: 0; // remove space between FMS nav links and green header - } - - #mega-menu-navbar .navbar-inner { - border-width: 0 0 1px 0; - border-radius: 0; - } -} - body.twothirdswidthpage .content .sticky-sidebar { z-index: 0; @@ -37,28 +18,16 @@ body.twothirdswidthpage .content .sticky-sidebar { } } -#footer-logos-bottom .container { - background: $base_bg; +#main-nav { + text-align: inherit; + min-height: 0; + display: block; // undo flex-container() + float: none; } -#top-header { - [class*="span"] { - margin-left: 2%; - } - - .span12 { - width: 98%; - } - - .span3 { - width: 23%; - } - - .span9 { - width: 73%; +body.mappage { + & > .navbar .container, + & > #main-nav .container { + width: auto !important; // override bootstrap media queries } } - -#site-search.navbar-form input { - width: 16em; -}
\ No newline at end of file diff --git a/web/cobrands/warwickshire/vendor/gamma/bootstrap-responsive.css b/web/cobrands/warwickshire/vendor/gamma/bootstrap-responsive.css index 2dbc61a6e..0e566eca6 100644 --- a/web/cobrands/warwickshire/vendor/gamma/bootstrap-responsive.css +++ b/web/cobrands/warwickshire/vendor/gamma/bootstrap-responsive.css @@ -790,8 +790,13 @@ body { padding-right: 20px; padding-left: 20px; - min-width:320px; /*PL edit*/ + min-width:320px; /*PL edit*/ } + + .show-search .mobile-search{ + display:block; + } + .navbar-fixed-top, .navbar-fixed-bottom, .navbar-static-top { @@ -800,6 +805,8 @@ } .container-fluid { padding: 0; + padding-left: 10%; /*added 05-09-2016 - DJ */ + padding-right: 10%; } .dl-horizontal dt { float: none; @@ -889,6 +896,9 @@ .nav-collapse { -webkit-transform: translate3d(0, 0, 0); } + + + .page-header h1 small { display: block; line-height: 20px; @@ -941,6 +951,15 @@ body { padding-top: 0; } + + .show-search .mobile-search{ + display:block; + } + +nav #site-search{ + display: none; +} + .navbar-fixed-top, .navbar-fixed-bottom { position: static; @@ -989,8 +1008,9 @@ .nav-collapse .nav > li > a, .nav-collapse .dropdown-menu a { padding: 9px 15px; - font-weight: bold; + font-weight: normal; /*bold;*/ color: #777777; + text-decoration: none; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; @@ -1079,8 +1099,10 @@ height: 0; overflow: hidden; } - .navbar .btn-navbar { + /*added margin top to icons */ + .navbar .btn-navbar, .navbar .btn-search { display: block; + margin-top: 10px; } .navbar-static .navbar-inner { padding-right: 10px; @@ -1093,4 +1115,20 @@ height: auto !important; overflow: visible !important; } + .show-search{ + height: 10px !important; + } + + .sign-in::before { + content: "| "; +} + + .sign-in::after { + content: " |"; +} + + + + + } diff --git a/web/cobrands/warwickshire/vendor/gamma/homepage-slider-test.js b/web/cobrands/warwickshire/vendor/gamma/homepage-slider-test.js new file mode 100644 index 000000000..d02a1e3f6 --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/homepage-slider-test.js @@ -0,0 +1,27 @@ +function GetContent(url) { + var api = "//query.yahooapis.com/v1/public/yql?q=" + encodeURIComponent("select * from xml where url = '" + url + "'") + "&format=json"; + + $.getJSON(api, function(data){ + if (data.query.count > 0) { + for (var i = 0; i < data.query.results.rss.channel.item.length; i++) { + // get item and thumbnail from feed item + item = data.query.results.rss.channel.item[i]; + itemThumb = item.content.thumbnail; + //build up item to insert + rssLink = '<a href="' + item.link + '"><img class="featured-news-image" src="' + itemThumb.url + '" alt="' + item.title + '" height>' + '</a>'; + rssCapt = '<div class="carousel-caption"><h3><a href="' + item.link + '">' + item.title + '</a></h3></div>'; + rssSpan = '<span class="wrap" style="height:300px;">' + rssLink + rssCapt + '</span>'; + rssItem = '<div class="item slide pane-' + (i + 1) + '">' + rssSpan + '</div>'; + jQuery('#latest-news').append(rssItem); + } + // after our JSON has loaded successfully, then we begin to slide + jQuery('#latest-news .slide').first().addClass('active'); + jQuery('#featured-slider').carousel('pause'); + } + else { + // no content from the feed, log data for analysis and show message + console.log( data ); + jQuery('#latest-news').append('<div class="item slide"><span class="wrap" style="height:300px;"></span><div class="carousel-caption"><h3>Sorry, something went wrong when we tried to get those stories for you.</h3></div></div>'); + } + }); +}
\ No newline at end of file diff --git a/web/cobrands/warwickshire/vendor/gamma/image-navigation.css b/web/cobrands/warwickshire/vendor/gamma/image-navigation.css new file mode 100644 index 000000000..67e316385 --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/image-navigation.css @@ -0,0 +1,664 @@ +/* formerly wedding style css +stylesheet created by Dave Jennings, e-services, WCC on 25/01/2016 */ +/* latest version 13-01--2017 - DJ */ + +.redtext { +color:red; +} + +#spanDate { + font-weight: bold; +color:transparent; +} + +div.page-intro { +margin-bottom:0px; +} + +.promo-box img { +padding:5px; +} + +.promo-box { +/*background-color:rgb(200,225,200);*/ +background-color:rgba(208,208,208,.41); +margin-left:0; +} + +.promo-title-text a { +color:black; +background-color:#2b4d42; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.promo-text { +color:black; +margin:7px; +} + +.promo-link { +margin:10px; +} + +.title-text { +font-size:15px; +color:white; +background-color:rgba(15, 15, 15, 0.70); /* changed from #2b4d42 - DJ - 25-01-2016 */ + +position:absolute; +} + +.image-nav-large img { +width:auto; +margin:auto; +display:block; +} + +div.image-nav-large:hover { +/*ckground-color:#C8E1C8;*/ +background-color:rgba(208, 208, 208, 0.27) +} + +.image-nav-large a:hover { +text-decoration:none; +color:black; +background-color:rgba(208, 208, 208, 0.27) +} + +.desc-text { +padding-bottom:10px; +margin-bottom:0px; +text-decoration: none; +font-weight: lighter; +} + + + +@media (min-width: 1200px) { + +.photo-mobile { +display:none !important; +} + +.title-text { +margin-left:32px; /* changed from 25px - DJ - 25-01-2016 */ +margin-top:-211px; /* changed from -70px - DJ - 25-01-2016 */ +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.desc-text { +margin-left:25px; +margin-right:25px; +padding-bottom:25px; +} + +#image-a { + text-decoration: none; /* created as id as could not get class to work - DJ - 25-01-2016 */ +} + +.navigation-photo { +padding-top:20px; +} + +} + +@media (min-width: 981px) and (max-width: 1199px) { + +.photo-mobile { +display:none !important; +} + +.image-nav-large img { +width:90%; +} + +.title-text { +margin-left:15px; +margin-top:-70px; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.desc-text { +margin-left:15px; +margin-right:15px; +padding-bottom:15px; +} + +#image-a { + text-decoration: none; /* created as id as could not get class to work - DJ - 25-01-2016 */ +} + +.navigation-photo { +padding-top:15px; +} + +} + +@media (min-width: 768px) and (max-width: 980px) { + +.photo-mobile { +display:none !important; +} + +div.page-intro-intro { +margin-bottom:0px !important; +} + +.image-nav-large img { +width:90%; +} + +.title-text { +margin-left:11px; +margin-top:-70px; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.desc-text { +margin-left:10px; +margin-right:10px; +padding-bottom:10px; +} + +#image-a { + text-decoration: none; /* created as id as could not get class to work - DJ - 25-01-2016 */ +} + +.navigation-photo { +padding-top:13px; +} + +.promo-box a { +padding-bottom:5px; +} + +} + +@media (max-width: 767px) { + +.photo-mobile { +display:block !important; +padding:5px; +background-color: transparent; +} + +.photo-mobile img { +height:60px; +margin-left:0px; +} + +div.image-nav-large { +/*background-color:#C8E1C8;*/ +background-color:rgb(208,208,208); +border-radius:10px; +margin-top:5px; +min-height:60px; +} + +.title-text { +/*background-color:#C8E1C8;*/ +background-color:rgb(208,208,208); +font-size:20px; +color:#006D3C; +position:absolute; +margin-left:80px; +margin-top:-56px; +padding-left:0px; +padding-right:0px; +padding-top:0px; +padding-bottom:0px; +} + +.desc-text { +display:none; +} + +.desc-text a:hover{ +color:black; +} + +.promo-box img { +width:97%; +} + +.image-nav-large img { +display:none; +margin:0px; +} + +.navigation-page-row { +margin-top:-5px; +} + +.promo-box h2 { +padding-left:5px; +} + +.promo-box a { +margin-left:5px; +padding-bottom:5px; +} +} + +/* venue styling */ + +.venue-title { +font-size:20px; /* changed from 16px DJ - 27-01-2016 */ +font-weight: normal; /* changed from bold - DJ - 27-01-2016 */ +margin:10px; +line-height:20px; +color: black; +padding-top: 0px; +} + +.venue-title-med { +font-size:20px; /* changed from 16px DJ - 27-01-2016 */ +font-weight: normal; /* changed from bold - DJ - 27-01-2016 */ +margin:10px; +line-height:20px; +color: black; +margin-left: 25px; +} + +/*div.weddings-intro { +margin-bottom:0px; +} +*/ + +/*.title-text { +font-size:15px; +color:white; +background-color:#2b4d42; +position:absolute; +} +*/ + +/*.wedding-nav-large img { +width:auto; +margin:auto; +display:block; +} +*/ + +.nav-small img { +width:auto; +margin:auto; +display:block; +} + +/*div.wedding-nav-large:hover { +background-color:rgb(200,225,200); +} +*/ + +div.nav-small:hover { +/*background-color:rgb(200,225,200);*/ +background-color:rgba(208, 208, 208, 0.27) +} + +.wedding-nav-large a:hover { +text-decoration:none; +color:black; +} + +.nav-small a:hover { +text-decoration:none; +color:black; +} + +#venue-description { + padding-left: 10px; + margin-bottom: 20px; +} + + +#venue-description-med { + padding-left: 25px; + margin-bottom: 20px; +} + +.desc-text { +padding-bottom:0px; +margin-bottom:0px; +text-decoration: none; +font-weight: lighter; +} + +.venue-text { +padding:10px 10px 10px 10px; +margin:10px; +text-decoration: none; +font-weight: lighter; +} + +@media (min-width: 1200px) { + +.photo-mobile { +display:none !important; +} + +/*.title-text { +margin-left:25px; +margin-top:-70px; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} +*/ + +.desc-text { +margin-left:25px; +margin-right:25px; +padding-bottom:25px; +} + +.nav-photo-small { +padding-top:15px; +} + +.alt-nav-photo-small { +padding-top:20px; +} + +} + +@media (min-width: 981px) and (max-width: 1199px) { + + + +.photo-mobile { +display:none !important; +} + +.wedding-nav-large img { +width:90%; +} + +.nav-small img { +width:90%; +} + +.title-text { +margin-left:15px; +margin-top:-70px; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.desc-text { +margin-left:15px; +margin-right:15px; +padding-bottom:15px; +} + +.nav-photo-small { +padding-top:15px; +} + +.alt-nav-photo-small { +padding-top:15px; +} + +} + +@media (min-width: 768px) and (max-width: 980px) { + +.photo-mobile { +display:none !important; +} + +.wedding-nav-large img { +width:90%; +} + +.nav-small img { +width:90%; +} + +.title-text { +margin-left:11px; +margin-top:-70px; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.desc-text { +margin-left:10px; +margin-right:10px; +padding-bottom:10px; +} + +.venue-photo { +padding-top:10px; +} + +.alt-nav-photo-small { +padding-top:10px; +} +} + +@media (max-width: 767px) { + +.venue-title /*h3*/ { +line-height:20px !important; +/*font-size: 14px;*/ +font-size:20px; /* changed from 14px DJ - 27-01-2016 */ +font-weight: normal; /* changed from bold - DJ - 27-01-2016 */ +} + +.nav-photo-small img { +padding-top:5px; +display:inline; +max-width:75%; +} + +#image-a { + text-decoration: none; /* created as id as could not get class to work - DJ - 25-01-2016 */ +} + +#venue-description a{ + text-decoration: none; +} + +.photo-mobile { +display:block !important; +padding:5px; +margin-left:0px !important; +} + +.photo-mobile img { +height:60px; +margin-left:0px; +} + +/*div.wedding-nav-large { +background-color:#C8E1C8; +border-radius:10px; +margin-top:5px; +min-height:60px; +} +*/ + +div.nav-small { +min-height:110px; +} + +.nav-small img { +height:100px; +display:block; +float:left; +padding:5px; +text-decoration: none; +} + + +/*.title-text { +background-color:#C8E1C8; +font-size:20px; +color:#006D3C; +position:absolute; +margin-left:80px; +margin-top:-56px; +padding-left:0px; +padding-right:0px; +padding-top:0px; +padding-bottom:0px; +} +*/ +.desc-text { +display:none; +} + +.venue-text { +font-size:14px; +} + +.desc-text a:hover{ +color:black; +} + +.alt-nav-photo-small { +display:none !important; +} + +.navigation-page-row { +margin-top:-5px; +} + +} + +.goog-te-gadget { + font-family: arial; + /* font-size: 11px; */ + color: white!important; + white-space: nowrap; +} + +#skiptomain { +color:white!important; +} + + +div#multiColumn { + -moz-column-count: 2; + -moz-column-gap: 20px; + -webkit-column-count: 2; + -webkit-column-gap: 20px; + column-count: 2; + column-gap: 20px; +} + +/* print */ +@media print { +body {background:white; + font-size:10pt; + margin:0 } +#sidebar { display:none } +#header { height:75px } +#content{ margin-left:0; + float:none; + width:auto } +.demo .red { color:black; + font-weight:bold } +#content a { font-weight:bold; + color:#000066; + text-decoration:underline } +#content{ margin-left:0; + float:none; + width:auto } +#footer, .ad { display:none } +h1, h2, h3, h4, h5, h6 { page-break-after:avoid; + page-break-inside:avoid } +h3 { margin-left:10px; + margin-bottom:0px; + padding-bottom:0px } +blockquote, table, pre { page-break-inside:avoid } +ul, ol, dl { page-break-before:avoid } +img.centered { display: block; + margin-left: auto; + margin-right: auto; } +img.right { padding: 4px; + margin: 0 0 2px 7px; + display: inline; } +img.left { padding: 4px; + margin: 0 7px 2px 0; + display: inline; } +.right { float: right; } +.left { float: left } +img { page-break-inside:avoid; + page-break-after:avoid; } +} + +.rss-list-item-first { +padding-bottom:0px; +border-bottom: solid; +border-width: 1px; +border-color: #ddd; +} + +.rss-list-item-sub { +padding-bottom:0px!important; +border-bottom: solid; +border-width: 1px; +border-color: #ddd; +} +.snippet { +margin-bottom: 0px; +} + +.rss-list-item-first h4 { +font-size:16px; +font-weight:bold; +margin-bottom:5px; +} + +.rss-list-item-first h5 { + font-size: 12px; + font-weight: bold; +padding-top:0px; +margin-top:5px; +margin-bottom:5px; +} + + +.rss-list-item-sub { +padding-bottom:0px!important; +} +.rss-list-item-sub h4 { + font-size: 16px; + font-weight: bold; +padding-top:0px; +margin-bottom:5px; +} + +.rss-list-item-sub h5 { + font-size: 12px; + font-weight: bold; + padding-top: 0px; +margin-top:5px; +margin-bottom:5px +} + +#rss-box-1 h4 { + margin-bottom: -5px; +} +.rss2html-note { +display:none; +} diff --git a/web/cobrands/warwickshire/vendor/gamma/images/apple-touch-icon-WCC.png b/web/cobrands/warwickshire/vendor/gamma/images/apple-touch-icon-WCC.png Binary files differnew file mode 100644 index 000000000..3390358fb --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/images/apple-touch-icon-WCC.png diff --git a/web/cobrands/warwickshire/vendor/gamma/images/favicon-WCC.png b/web/cobrands/warwickshire/vendor/gamma/images/favicon-WCC.png Binary files differnew file mode 100644 index 000000000..f216b2e1d --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/images/favicon-WCC.png diff --git a/web/cobrands/warwickshire/vendor/gamma/images/favicon.ico b/web/cobrands/warwickshire/vendor/gamma/images/favicon.ico Binary files differdeleted file mode 100644 index 53e51b914..000000000 --- a/web/cobrands/warwickshire/vendor/gamma/images/favicon.ico +++ /dev/null diff --git a/web/cobrands/warwickshire/vendor/gamma/images/favicon_wcc.ico b/web/cobrands/warwickshire/vendor/gamma/images/favicon_wcc.ico Binary files differnew file mode 100644 index 000000000..1c9b0b4b9 --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/images/favicon_wcc.ico diff --git a/web/cobrands/warwickshire/vendor/gamma/images/glyphicons-halflings-white.png b/web/cobrands/warwickshire/vendor/gamma/images/glyphicons-halflings-white.png Binary files differnew file mode 100644 index 000000000..3bf6484a2 --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/images/glyphicons-halflings-white.png diff --git a/web/cobrands/warwickshire/vendor/gamma/jquery.cycle.js b/web/cobrands/warwickshire/vendor/gamma/jquery.cycle.js new file mode 100644 index 000000000..666afdaf9 --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/jquery.cycle.js @@ -0,0 +1,1538 @@ +/*! + * jQuery Cycle Plugin (with Transition Definitions) + * Examples and documentation at: http://jquery.malsup.com/cycle/ + * Copyright (c) 2007-2012 M. Alsup + * Version: 2.9999.81 (15-JAN-2013) + * Dual licensed under the MIT and GPL licenses. + * http://jquery.malsup.com/license.html + * Requires: jQuery v1.7.1 or later + */ +;(function($, undefined) { +"use strict"; + +var ver = '2.9999.81'; + +function debug(s) { + if ($.fn.cycle.debug) + log(s); +} +function log() { + if (window.console && console.log) + console.log('[cycle] ' + Array.prototype.join.call(arguments,' ')); +} +$.expr[':'].paused = function(el) { + return el.cyclePause; +}; + + +// the options arg can be... +// a number - indicates an immediate transition should occur to the given slide index +// a string - 'pause', 'resume', 'toggle', 'next', 'prev', 'stop', 'destroy' or the name of a transition effect (ie, 'fade', 'zoom', etc) +// an object - properties to control the slideshow +// +// the arg2 arg can be... +// the name of an fx (only used in conjunction with a numeric value for 'options') +// the value true (only used in first arg == 'resume') and indicates +// that the resume should occur immediately (not wait for next timeout) + +$.fn.cycle = function(options, arg2) { + var o = { s: this.selector, c: this.context }; + + // in 1.3+ we can fix mistakes with the ready state + if (this.length === 0 && options != 'stop') { + if (!$.isReady && o.s) { + log('DOM not ready, queuing slideshow'); + $(function() { + $(o.s,o.c).cycle(options,arg2); + }); + return this; + } + // is your DOM ready? http://docs.jquery.com/Tutorials:Introducing_$(document).ready() + log('terminating; zero elements found by selector' + ($.isReady ? '' : ' (DOM not ready)')); + return this; + } + + // iterate the matched nodeset + return this.each(function() { + var opts = handleArguments(this, options, arg2); + if (opts === false) + return; + + opts.updateActivePagerLink = opts.updateActivePagerLink || $.fn.cycle.updateActivePagerLink; + + // stop existing slideshow for this container (if there is one) + if (this.cycleTimeout) + clearTimeout(this.cycleTimeout); + this.cycleTimeout = this.cyclePause = 0; + this.cycleStop = 0; // issue #108 + + var $cont = $(this); + var $slides = opts.slideExpr ? $(opts.slideExpr, this) : $cont.children(); + var els = $slides.get(); + + if (els.length < 2) { + log('terminating; too few slides: ' + els.length); + return; + } + + var opts2 = buildOptions($cont, $slides, els, opts, o); + if (opts2 === false) + return; + + var startTime = opts2.continuous ? 10 : getTimeout(els[opts2.currSlide], els[opts2.nextSlide], opts2, !opts2.backwards); + + // if it's an auto slideshow, kick it off + if (startTime) { + startTime += (opts2.delay || 0); + if (startTime < 10) + startTime = 10; + debug('first timeout: ' + startTime); + this.cycleTimeout = setTimeout(function(){go(els,opts2,0,!opts.backwards);}, startTime); + } + }); +}; + +function triggerPause(cont, byHover, onPager) { + var opts = $(cont).data('cycle.opts'); + if (!opts) + return; + var paused = !!cont.cyclePause; + if (paused && opts.paused) + opts.paused(cont, opts, byHover, onPager); + else if (!paused && opts.resumed) + opts.resumed(cont, opts, byHover, onPager); +} + +// process the args that were passed to the plugin fn +function handleArguments(cont, options, arg2) { + if (cont.cycleStop === undefined) + cont.cycleStop = 0; + if (options === undefined || options === null) + options = {}; + if (options.constructor == String) { + switch(options) { + case 'destroy': + case 'stop': + var opts = $(cont).data('cycle.opts'); + if (!opts) + return false; + cont.cycleStop++; // callbacks look for change + if (cont.cycleTimeout) + clearTimeout(cont.cycleTimeout); + cont.cycleTimeout = 0; + if (opts.elements) + $(opts.elements).stop(); + $(cont).removeData('cycle.opts'); + if (options == 'destroy') + destroy(cont, opts); + return false; + case 'toggle': + cont.cyclePause = (cont.cyclePause === 1) ? 0 : 1; + checkInstantResume(cont.cyclePause, arg2, cont); + triggerPause(cont); + return false; + case 'pause': + cont.cyclePause = 1; + triggerPause(cont); + return false; + case 'resume': + cont.cyclePause = 0; + checkInstantResume(false, arg2, cont); + triggerPause(cont); + return false; + case 'prev': + case 'next': + opts = $(cont).data('cycle.opts'); + if (!opts) { + log('options not found, "prev/next" ignored'); + return false; + } + $.fn.cycle[options](opts); + return false; + default: + options = { fx: options }; + } + return options; + } + else if (options.constructor == Number) { + // go to the requested slide + var num = options; + options = $(cont).data('cycle.opts'); + if (!options) { + log('options not found, can not advance slide'); + return false; + } + if (num < 0 || num >= options.elements.length) { + log('invalid slide index: ' + num); + return false; + } + options.nextSlide = num; + if (cont.cycleTimeout) { + clearTimeout(cont.cycleTimeout); + cont.cycleTimeout = 0; + } + if (typeof arg2 == 'string') + options.oneTimeFx = arg2; + go(options.elements, options, 1, num >= options.currSlide); + return false; + } + return options; + + function checkInstantResume(isPaused, arg2, cont) { + if (!isPaused && arg2 === true) { // resume now! + var options = $(cont).data('cycle.opts'); + if (!options) { + log('options not found, can not resume'); + return false; + } + if (cont.cycleTimeout) { + clearTimeout(cont.cycleTimeout); + cont.cycleTimeout = 0; + } + go(options.elements, options, 1, !options.backwards); + } + } +} + +function removeFilter(el, opts) { + if (!$.support.opacity && opts.cleartype && el.style.filter) { + try { el.style.removeAttribute('filter'); } + catch(smother) {} // handle old opera versions + } +} + +// unbind event handlers +function destroy(cont, opts) { + if (opts.next) + $(opts.next).unbind(opts.prevNextEvent); + if (opts.prev) + $(opts.prev).unbind(opts.prevNextEvent); + + if (opts.pager || opts.pagerAnchorBuilder) + $.each(opts.pagerAnchors || [], function() { + this.unbind().remove(); + }); + opts.pagerAnchors = null; + $(cont).unbind('mouseenter.cycle mouseleave.cycle'); + if (opts.destroy) // callback + opts.destroy(opts); +} + +// one-time initialization +function buildOptions($cont, $slides, els, options, o) { + var startingSlideSpecified; + // support metadata plugin (v1.0 and v2.0) + var opts = $.extend({}, $.fn.cycle.defaults, options || {}, $.metadata ? $cont.metadata() : $.meta ? $cont.data() : {}); + var meta = $.isFunction($cont.data) ? $cont.data(opts.metaAttr) : null; + if (meta) + opts = $.extend(opts, meta); + if (opts.autostop) + opts.countdown = opts.autostopCount || els.length; + + var cont = $cont[0]; + $cont.data('cycle.opts', opts); + opts.$cont = $cont; + opts.stopCount = cont.cycleStop; + opts.elements = els; + opts.before = opts.before ? [opts.before] : []; + opts.after = opts.after ? [opts.after] : []; + + // push some after callbacks + if (!$.support.opacity && opts.cleartype) + opts.after.push(function() { removeFilter(this, opts); }); + if (opts.continuous) + opts.after.push(function() { go(els,opts,0,!opts.backwards); }); + + saveOriginalOpts(opts); + + // clearType corrections + if (!$.support.opacity && opts.cleartype && !opts.cleartypeNoBg) + clearTypeFix($slides); + + // container requires non-static position so that slides can be position within + if ($cont.css('position') == 'static') + $cont.css('position', 'relative'); + if (opts.width) + $cont.width(opts.width); + if (opts.height && opts.height != 'auto') + $cont.height(opts.height); + + if (opts.startingSlide !== undefined) { + opts.startingSlide = parseInt(opts.startingSlide,10); + if (opts.startingSlide >= els.length || opts.startSlide < 0) + opts.startingSlide = 0; // catch bogus input + else + startingSlideSpecified = true; + } + else if (opts.backwards) + opts.startingSlide = els.length - 1; + else + opts.startingSlide = 0; + + // if random, mix up the slide array + if (opts.random) { + opts.randomMap = []; + for (var i = 0; i < els.length; i++) + opts.randomMap.push(i); + opts.randomMap.sort(function(a,b) {return Math.random() - 0.5;}); + if (startingSlideSpecified) { + // try to find the specified starting slide and if found set start slide index in the map accordingly + for ( var cnt = 0; cnt < els.length; cnt++ ) { + if ( opts.startingSlide == opts.randomMap[cnt] ) { + opts.randomIndex = cnt; + } + } + } + else { + opts.randomIndex = 1; + opts.startingSlide = opts.randomMap[1]; + } + } + else if (opts.startingSlide >= els.length) + opts.startingSlide = 0; // catch bogus input + opts.currSlide = opts.startingSlide || 0; + var first = opts.startingSlide; + + // set position and zIndex on all the slides + $slides.css({position: 'absolute', top:0, left:0}).hide().each(function(i) { + var z; + if (opts.backwards) + z = first ? i <= first ? els.length + (i-first) : first-i : els.length-i; + else + z = first ? i >= first ? els.length - (i-first) : first-i : els.length-i; + $(this).css('z-index', z); + }); + + // make sure first slide is visible + $(els[first]).css('opacity',1).show(); // opacity bit needed to handle restart use case + removeFilter(els[first], opts); + + // stretch slides + if (opts.fit) { + if (!opts.aspect) { + if (opts.width) + $slides.width(opts.width); + if (opts.height && opts.height != 'auto') + $slides.height(opts.height); + } else { + $slides.each(function(){ + var $slide = $(this); + var ratio = (opts.aspect === true) ? $slide.width()/$slide.height() : opts.aspect; + if( opts.width && $slide.width() != opts.width ) { + $slide.width( opts.width ); + $slide.height( opts.width / ratio ); + } + + if( opts.height && $slide.height() < opts.height ) { + $slide.height( opts.height ); + $slide.width( opts.height * ratio ); + } + }); + } + } + + if (opts.center && ((!opts.fit) || opts.aspect)) { + $slides.each(function(){ + var $slide = $(this); + $slide.css({ + "margin-left": opts.width ? + ((opts.width - $slide.width()) / 2) + "px" : + 0, + "margin-top": opts.height ? + ((opts.height - $slide.height()) / 2) + "px" : + 0 + }); + }); + } + + if (opts.center && !opts.fit && !opts.slideResize) { + $slides.each(function(){ + var $slide = $(this); + $slide.css({ + "margin-left": opts.width ? ((opts.width - $slide.width()) / 2) + "px" : 0, + "margin-top": opts.height ? ((opts.height - $slide.height()) / 2) + "px" : 0 + }); + }); + } + + // stretch container + var reshape = (opts.containerResize || opts.containerResizeHeight) && !$cont.innerHeight(); + if (reshape) { // do this only if container has no size http://tinyurl.com/da2oa9 + var maxw = 0, maxh = 0; + for(var j=0; j < els.length; j++) { + var $e = $(els[j]), e = $e[0], w = $e.outerWidth(), h = $e.outerHeight(); + if (!w) w = e.offsetWidth || e.width || $e.attr('width'); + if (!h) h = e.offsetHeight || e.height || $e.attr('height'); + maxw = w > maxw ? w : maxw; + maxh = h > maxh ? h : maxh; + } + if (opts.containerResize && maxw > 0 && maxh > 0) + $cont.css({width:maxw+'px',height:maxh+'px'}); + if (opts.containerResizeHeight && maxh > 0) + $cont.css({height:maxh+'px'}); + } + + var pauseFlag = false; // https://github.com/malsup/cycle/issues/44 + if (opts.pause) + $cont.bind('mouseenter.cycle', function(){ + pauseFlag = true; + this.cyclePause++; + triggerPause(cont, true); + }).bind('mouseleave.cycle', function(){ + if (pauseFlag) + this.cyclePause--; + triggerPause(cont, true); + }); + + if (supportMultiTransitions(opts) === false) + return false; + + // apparently a lot of people use image slideshows without height/width attributes on the images. + // Cycle 2.50+ requires the sizing info for every slide; this block tries to deal with that. + var requeue = false; + options.requeueAttempts = options.requeueAttempts || 0; + $slides.each(function() { + // try to get height/width of each slide + var $el = $(this); + this.cycleH = (opts.fit && opts.height) ? opts.height : ($el.height() || this.offsetHeight || this.height || $el.attr('height') || 0); + this.cycleW = (opts.fit && opts.width) ? opts.width : ($el.width() || this.offsetWidth || this.width || $el.attr('width') || 0); + + if ( $el.is('img') ) { + var loading = (this.cycleH === 0 && this.cycleW === 0 && !this.complete); + // don't requeue for images that are still loading but have a valid size + if (loading) { + if (o.s && opts.requeueOnImageNotLoaded && ++options.requeueAttempts < 100) { // track retry count so we don't loop forever + log(options.requeueAttempts,' - img slide not loaded, requeuing slideshow: ', this.src, this.cycleW, this.cycleH); + setTimeout(function() {$(o.s,o.c).cycle(options);}, opts.requeueTimeout); + requeue = true; + return false; // break each loop + } + else { + log('could not determine size of image: '+this.src, this.cycleW, this.cycleH); + } + } + } + return true; + }); + + if (requeue) + return false; + + opts.cssBefore = opts.cssBefore || {}; + opts.cssAfter = opts.cssAfter || {}; + opts.cssFirst = opts.cssFirst || {}; + opts.animIn = opts.animIn || {}; + opts.animOut = opts.animOut || {}; + + $slides.not(':eq('+first+')').css(opts.cssBefore); + $($slides[first]).css(opts.cssFirst); + + if (opts.timeout) { + opts.timeout = parseInt(opts.timeout,10); + // ensure that timeout and speed settings are sane + if (opts.speed.constructor == String) + opts.speed = $.fx.speeds[opts.speed] || parseInt(opts.speed,10); + if (!opts.sync) + opts.speed = opts.speed / 2; + + var buffer = opts.fx == 'none' ? 0 : opts.fx == 'shuffle' ? 500 : 250; + while((opts.timeout - opts.speed) < buffer) // sanitize timeout + opts.timeout += opts.speed; + } + if (opts.easing) + opts.easeIn = opts.easeOut = opts.easing; + if (!opts.speedIn) + opts.speedIn = opts.speed; + if (!opts.speedOut) + opts.speedOut = opts.speed; + + opts.slideCount = els.length; + opts.currSlide = opts.lastSlide = first; + if (opts.random) { + if (++opts.randomIndex == els.length) + opts.randomIndex = 0; + opts.nextSlide = opts.randomMap[opts.randomIndex]; + } + else if (opts.backwards) + opts.nextSlide = opts.startingSlide === 0 ? (els.length-1) : opts.startingSlide-1; + else + opts.nextSlide = opts.startingSlide >= (els.length-1) ? 0 : opts.startingSlide+1; + + // run transition init fn + if (!opts.multiFx) { + var init = $.fn.cycle.transitions[opts.fx]; + if ($.isFunction(init)) + init($cont, $slides, opts); + else if (opts.fx != 'custom' && !opts.multiFx) { + log('unknown transition: ' + opts.fx,'; slideshow terminating'); + return false; + } + } + + // fire artificial events + var e0 = $slides[first]; + if (!opts.skipInitializationCallbacks) { + if (opts.before.length) + opts.before[0].apply(e0, [e0, e0, opts, true]); + if (opts.after.length) + opts.after[0].apply(e0, [e0, e0, opts, true]); + } + if (opts.next) + $(opts.next).bind(opts.prevNextEvent,function(){return advance(opts,1);}); + if (opts.prev) + $(opts.prev).bind(opts.prevNextEvent,function(){return advance(opts,0);}); + if (opts.pager || opts.pagerAnchorBuilder) + buildPager(els,opts); + + exposeAddSlide(opts, els); + + return opts; +} + +// save off original opts so we can restore after clearing state +function saveOriginalOpts(opts) { + opts.original = { before: [], after: [] }; + opts.original.cssBefore = $.extend({}, opts.cssBefore); + opts.original.cssAfter = $.extend({}, opts.cssAfter); + opts.original.animIn = $.extend({}, opts.animIn); + opts.original.animOut = $.extend({}, opts.animOut); + $.each(opts.before, function() { opts.original.before.push(this); }); + $.each(opts.after, function() { opts.original.after.push(this); }); +} + +function supportMultiTransitions(opts) { + var i, tx, txs = $.fn.cycle.transitions; + // look for multiple effects + if (opts.fx.indexOf(',') > 0) { + opts.multiFx = true; + opts.fxs = opts.fx.replace(/\s*/g,'').split(','); + // discard any bogus effect names + for (i=0; i < opts.fxs.length; i++) { + var fx = opts.fxs[i]; + tx = txs[fx]; + if (!tx || !txs.hasOwnProperty(fx) || !$.isFunction(tx)) { + log('discarding unknown transition: ',fx); + opts.fxs.splice(i,1); + i--; + } + } + // if we have an empty list then we threw everything away! + if (!opts.fxs.length) { + log('No valid transitions named; slideshow terminating.'); + return false; + } + } + else if (opts.fx == 'all') { // auto-gen the list of transitions + opts.multiFx = true; + opts.fxs = []; + for (var p in txs) { + if (txs.hasOwnProperty(p)) { + tx = txs[p]; + if (txs.hasOwnProperty(p) && $.isFunction(tx)) + opts.fxs.push(p); + } + } + } + if (opts.multiFx && opts.randomizeEffects) { + // munge the fxs array to make effect selection random + var r1 = Math.floor(Math.random() * 20) + 30; + for (i = 0; i < r1; i++) { + var r2 = Math.floor(Math.random() * opts.fxs.length); + opts.fxs.push(opts.fxs.splice(r2,1)[0]); + } + debug('randomized fx sequence: ',opts.fxs); + } + return true; +} + +// provide a mechanism for adding slides after the slideshow has started +function exposeAddSlide(opts, els) { + opts.addSlide = function(newSlide, prepend) { + var $s = $(newSlide), s = $s[0]; + if (!opts.autostopCount) + opts.countdown++; + els[prepend?'unshift':'push'](s); + if (opts.els) + opts.els[prepend?'unshift':'push'](s); // shuffle needs this + opts.slideCount = els.length; + + // add the slide to the random map and resort + if (opts.random) { + opts.randomMap.push(opts.slideCount-1); + opts.randomMap.sort(function(a,b) {return Math.random() - 0.5;}); + } + + $s.css('position','absolute'); + $s[prepend?'prependTo':'appendTo'](opts.$cont); + + if (prepend) { + opts.currSlide++; + opts.nextSlide++; + } + + if (!$.support.opacity && opts.cleartype && !opts.cleartypeNoBg) + clearTypeFix($s); + + if (opts.fit && opts.width) + $s.width(opts.width); + if (opts.fit && opts.height && opts.height != 'auto') + $s.height(opts.height); + s.cycleH = (opts.fit && opts.height) ? opts.height : $s.height(); + s.cycleW = (opts.fit && opts.width) ? opts.width : $s.width(); + + $s.css(opts.cssBefore); + + if (opts.pager || opts.pagerAnchorBuilder) + $.fn.cycle.createPagerAnchor(els.length-1, s, $(opts.pager), els, opts); + + if ($.isFunction(opts.onAddSlide)) + opts.onAddSlide($s); + else + $s.hide(); // default behavior + }; +} + +// reset internal state; we do this on every pass in order to support multiple effects +$.fn.cycle.resetState = function(opts, fx) { + fx = fx || opts.fx; + opts.before = []; opts.after = []; + opts.cssBefore = $.extend({}, opts.original.cssBefore); + opts.cssAfter = $.extend({}, opts.original.cssAfter); + opts.animIn = $.extend({}, opts.original.animIn); + opts.animOut = $.extend({}, opts.original.animOut); + opts.fxFn = null; + $.each(opts.original.before, function() { opts.before.push(this); }); + $.each(opts.original.after, function() { opts.after.push(this); }); + + // re-init + var init = $.fn.cycle.transitions[fx]; + if ($.isFunction(init)) + init(opts.$cont, $(opts.elements), opts); +}; + +// this is the main engine fn, it handles the timeouts, callbacks and slide index mgmt +function go(els, opts, manual, fwd) { + var p = opts.$cont[0], curr = els[opts.currSlide], next = els[opts.nextSlide]; + + // opts.busy is true if we're in the middle of an animation + if (manual && opts.busy && opts.manualTrump) { + // let manual transitions requests trump active ones + debug('manualTrump in go(), stopping active transition'); + $(els).stop(true,true); + opts.busy = 0; + clearTimeout(p.cycleTimeout); + } + + // don't begin another timeout-based transition if there is one active + if (opts.busy) { + debug('transition active, ignoring new tx request'); + return; + } + + + // stop cycling if we have an outstanding stop request + if (p.cycleStop != opts.stopCount || p.cycleTimeout === 0 && !manual) + return; + + // check to see if we should stop cycling based on autostop options + if (!manual && !p.cyclePause && !opts.bounce && + ((opts.autostop && (--opts.countdown <= 0)) || + (opts.nowrap && !opts.random && opts.nextSlide < opts.currSlide))) { + if (opts.end) + opts.end(opts); + return; + } + + // if slideshow is paused, only transition on a manual trigger + var changed = false; + if ((manual || !p.cyclePause) && (opts.nextSlide != opts.currSlide)) { + changed = true; + var fx = opts.fx; + // keep trying to get the slide size if we don't have it yet + curr.cycleH = curr.cycleH || $(curr).height(); + curr.cycleW = curr.cycleW || $(curr).width(); + next.cycleH = next.cycleH || $(next).height(); + next.cycleW = next.cycleW || $(next).width(); + + // support multiple transition types + if (opts.multiFx) { + if (fwd && (opts.lastFx === undefined || ++opts.lastFx >= opts.fxs.length)) + opts.lastFx = 0; + else if (!fwd && (opts.lastFx === undefined || --opts.lastFx < 0)) + opts.lastFx = opts.fxs.length - 1; + fx = opts.fxs[opts.lastFx]; + } + + // one-time fx overrides apply to: $('div').cycle(3,'zoom'); + if (opts.oneTimeFx) { + fx = opts.oneTimeFx; + opts.oneTimeFx = null; + } + + $.fn.cycle.resetState(opts, fx); + + // run the before callbacks + if (opts.before.length) + $.each(opts.before, function(i,o) { + if (p.cycleStop != opts.stopCount) return; + o.apply(next, [curr, next, opts, fwd]); + }); + + // stage the after callacks + var after = function() { + opts.busy = 0; + $.each(opts.after, function(i,o) { + if (p.cycleStop != opts.stopCount) return; + o.apply(next, [curr, next, opts, fwd]); + }); + if (!p.cycleStop) { + // queue next transition + queueNext(); + } + }; + + debug('tx firing('+fx+'); currSlide: ' + opts.currSlide + '; nextSlide: ' + opts.nextSlide); + + // get ready to perform the transition + opts.busy = 1; + if (opts.fxFn) // fx function provided? + opts.fxFn(curr, next, opts, after, fwd, manual && opts.fastOnEvent); + else if ($.isFunction($.fn.cycle[opts.fx])) // fx plugin ? + $.fn.cycle[opts.fx](curr, next, opts, after, fwd, manual && opts.fastOnEvent); + else + $.fn.cycle.custom(curr, next, opts, after, fwd, manual && opts.fastOnEvent); + } + else { + queueNext(); + } + + if (changed || opts.nextSlide == opts.currSlide) { + // calculate the next slide + var roll; + opts.lastSlide = opts.currSlide; + if (opts.random) { + opts.currSlide = opts.nextSlide; + if (++opts.randomIndex == els.length) { + opts.randomIndex = 0; + opts.randomMap.sort(function(a,b) {return Math.random() - 0.5;}); + } + opts.nextSlide = opts.randomMap[opts.randomIndex]; + if (opts.nextSlide == opts.currSlide) + opts.nextSlide = (opts.currSlide == opts.slideCount - 1) ? 0 : opts.currSlide + 1; + } + else if (opts.backwards) { + roll = (opts.nextSlide - 1) < 0; + if (roll && opts.bounce) { + opts.backwards = !opts.backwards; + opts.nextSlide = 1; + opts.currSlide = 0; + } + else { + opts.nextSlide = roll ? (els.length-1) : opts.nextSlide-1; + opts.currSlide = roll ? 0 : opts.nextSlide+1; + } + } + else { // sequence + roll = (opts.nextSlide + 1) == els.length; + if (roll && opts.bounce) { + opts.backwards = !opts.backwards; + opts.nextSlide = els.length-2; + opts.currSlide = els.length-1; + } + else { + opts.nextSlide = roll ? 0 : opts.nextSlide+1; + opts.currSlide = roll ? els.length-1 : opts.nextSlide-1; + } + } + } + if (changed && opts.pager) + opts.updateActivePagerLink(opts.pager, opts.currSlide, opts.activePagerClass); + + function queueNext() { + // stage the next transition + var ms = 0, timeout = opts.timeout; + if (opts.timeout && !opts.continuous) { + ms = getTimeout(els[opts.currSlide], els[opts.nextSlide], opts, fwd); + if (opts.fx == 'shuffle') + ms -= opts.speedOut; + } + else if (opts.continuous && p.cyclePause) // continuous shows work off an after callback, not this timer logic + ms = 10; + if (ms > 0) + p.cycleTimeout = setTimeout(function(){ go(els, opts, 0, !opts.backwards); }, ms); + } +} + +// invoked after transition +$.fn.cycle.updateActivePagerLink = function(pager, currSlide, clsName) { + $(pager).each(function() { + $(this).children().removeClass(clsName).eq(currSlide).addClass(clsName); + }); +}; + +// calculate timeout value for current transition +function getTimeout(curr, next, opts, fwd) { + if (opts.timeoutFn) { + // call user provided calc fn + var t = opts.timeoutFn.call(curr,curr,next,opts,fwd); + while (opts.fx != 'none' && (t - opts.speed) < 250) // sanitize timeout + t += opts.speed; + debug('calculated timeout: ' + t + '; speed: ' + opts.speed); + if (t !== false) + return t; + } + return opts.timeout; +} + +// expose next/prev function, caller must pass in state +$.fn.cycle.next = function(opts) { advance(opts,1); }; +$.fn.cycle.prev = function(opts) { advance(opts,0);}; + +// advance slide forward or back +function advance(opts, moveForward) { + var val = moveForward ? 1 : -1; + var els = opts.elements; + var p = opts.$cont[0], timeout = p.cycleTimeout; + if (timeout) { + clearTimeout(timeout); + p.cycleTimeout = 0; + } + if (opts.random && val < 0) { + // move back to the previously display slide + opts.randomIndex--; + if (--opts.randomIndex == -2) + opts.randomIndex = els.length-2; + else if (opts.randomIndex == -1) + opts.randomIndex = els.length-1; + opts.nextSlide = opts.randomMap[opts.randomIndex]; + } + else if (opts.random) { + opts.nextSlide = opts.randomMap[opts.randomIndex]; + } + else { + opts.nextSlide = opts.currSlide + val; + if (opts.nextSlide < 0) { + if (opts.nowrap) return false; + opts.nextSlide = els.length - 1; + } + else if (opts.nextSlide >= els.length) { + if (opts.nowrap) return false; + opts.nextSlide = 0; + } + } + + var cb = opts.onPrevNextEvent || opts.prevNextClick; // prevNextClick is deprecated + if ($.isFunction(cb)) + cb(val > 0, opts.nextSlide, els[opts.nextSlide]); + go(els, opts, 1, moveForward); + return false; +} + +function buildPager(els, opts) { + var $p = $(opts.pager); + $.each(els, function(i,o) { + $.fn.cycle.createPagerAnchor(i,o,$p,els,opts); + }); + opts.updateActivePagerLink(opts.pager, opts.startingSlide, opts.activePagerClass); +} + +$.fn.cycle.createPagerAnchor = function(i, el, $p, els, opts) { + var a; + if ($.isFunction(opts.pagerAnchorBuilder)) { + a = opts.pagerAnchorBuilder(i,el); + debug('pagerAnchorBuilder('+i+', el) returned: ' + a); + } + else + a = '<a href="#">'+(i+1)+'</a>'; + + if (!a) + return; + var $a = $(a); + // don't reparent if anchor is in the dom + if ($a.parents('body').length === 0) { + var arr = []; + if ($p.length > 1) { + $p.each(function() { + var $clone = $a.clone(true); + $(this).append($clone); + arr.push($clone[0]); + }); + $a = $(arr); + } + else { + $a.appendTo($p); + } + } + + opts.pagerAnchors = opts.pagerAnchors || []; + opts.pagerAnchors.push($a); + + var pagerFn = function(e) { + e.preventDefault(); + opts.nextSlide = i; + var p = opts.$cont[0], timeout = p.cycleTimeout; + if (timeout) { + clearTimeout(timeout); + p.cycleTimeout = 0; + } + var cb = opts.onPagerEvent || opts.pagerClick; // pagerClick is deprecated + if ($.isFunction(cb)) + cb(opts.nextSlide, els[opts.nextSlide]); + go(els,opts,1,opts.currSlide < i); // trigger the trans +// return false; // <== allow bubble + }; + + if ( /mouseenter|mouseover/i.test(opts.pagerEvent) ) { + $a.hover(pagerFn, function(){/* no-op */} ); + } + else { + $a.bind(opts.pagerEvent, pagerFn); + } + + if ( ! /^click/.test(opts.pagerEvent) && !opts.allowPagerClickBubble) + $a.bind('click.cycle', function(){return false;}); // suppress click + + var cont = opts.$cont[0]; + var pauseFlag = false; // https://github.com/malsup/cycle/issues/44 + if (opts.pauseOnPagerHover) { + $a.hover( + function() { + pauseFlag = true; + cont.cyclePause++; + triggerPause(cont,true,true); + }, function() { + if (pauseFlag) + cont.cyclePause--; + triggerPause(cont,true,true); + } + ); + } +}; + +// helper fn to calculate the number of slides between the current and the next +$.fn.cycle.hopsFromLast = function(opts, fwd) { + var hops, l = opts.lastSlide, c = opts.currSlide; + if (fwd) + hops = c > l ? c - l : opts.slideCount - l; + else + hops = c < l ? l - c : l + opts.slideCount - c; + return hops; +}; + +// fix clearType problems in ie6 by setting an explicit bg color +// (otherwise text slides look horrible during a fade transition) +function clearTypeFix($slides) { + debug('applying clearType background-color hack'); + function hex(s) { + s = parseInt(s,10).toString(16); + return s.length < 2 ? '0'+s : s; + } + function getBg(e) { + for ( ; e && e.nodeName.toLowerCase() != 'html'; e = e.parentNode) { + var v = $.css(e,'background-color'); + if (v && v.indexOf('rgb') >= 0 ) { + var rgb = v.match(/\d+/g); + return '#'+ hex(rgb[0]) + hex(rgb[1]) + hex(rgb[2]); + } + if (v && v != 'transparent') + return v; + } + return '#ffffff'; + } + $slides.each(function() { $(this).css('background-color', getBg(this)); }); +} + +// reset common props before the next transition +$.fn.cycle.commonReset = function(curr,next,opts,w,h,rev) { + $(opts.elements).not(curr).hide(); + if (typeof opts.cssBefore.opacity == 'undefined') + opts.cssBefore.opacity = 1; + opts.cssBefore.display = 'block'; + if (opts.slideResize && w !== false && next.cycleW > 0) + opts.cssBefore.width = next.cycleW; + if (opts.slideResize && h !== false && next.cycleH > 0) + opts.cssBefore.height = next.cycleH; + opts.cssAfter = opts.cssAfter || {}; + opts.cssAfter.display = 'none'; + $(curr).css('zIndex',opts.slideCount + (rev === true ? 1 : 0)); + $(next).css('zIndex',opts.slideCount + (rev === true ? 0 : 1)); +}; + +// the actual fn for effecting a transition +$.fn.cycle.custom = function(curr, next, opts, cb, fwd, speedOverride) { + var $l = $(curr), $n = $(next); + var speedIn = opts.speedIn, speedOut = opts.speedOut, easeIn = opts.easeIn, easeOut = opts.easeOut; + $n.css(opts.cssBefore); + if (speedOverride) { + if (typeof speedOverride == 'number') + speedIn = speedOut = speedOverride; + else + speedIn = speedOut = 1; + easeIn = easeOut = null; + } + var fn = function() { + $n.animate(opts.animIn, speedIn, easeIn, function() { + cb(); + }); + }; + $l.animate(opts.animOut, speedOut, easeOut, function() { + $l.css(opts.cssAfter); + if (!opts.sync) + fn(); + }); + if (opts.sync) fn(); +}; + +// transition definitions - only fade is defined here, transition pack defines the rest +$.fn.cycle.transitions = { + fade: function($cont, $slides, opts) { + $slides.not(':eq('+opts.currSlide+')').css('opacity',0); + opts.before.push(function(curr,next,opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.cssBefore.opacity = 0; + }); + opts.animIn = { opacity: 1 }; + opts.animOut = { opacity: 0 }; + opts.cssBefore = { top: 0, left: 0 }; + } +}; + +$.fn.cycle.ver = function() { return ver; }; + +// override these globally if you like (they are all optional) +$.fn.cycle.defaults = { + activePagerClass: 'activeSlide', // class name used for the active pager link + after: null, // transition callback (scope set to element that was shown): function(currSlideElement, nextSlideElement, options, forwardFlag) + allowPagerClickBubble: false, // allows or prevents click event on pager anchors from bubbling + animIn: null, // properties that define how the slide animates in + animOut: null, // properties that define how the slide animates out + aspect: false, // preserve aspect ratio during fit resizing, cropping if necessary (must be used with fit option) + autostop: 0, // true to end slideshow after X transitions (where X == slide count) + autostopCount: 0, // number of transitions (optionally used with autostop to define X) + backwards: false, // true to start slideshow at last slide and move backwards through the stack + before: null, // transition callback (scope set to element to be shown): function(currSlideElement, nextSlideElement, options, forwardFlag) + center: null, // set to true to have cycle add top/left margin to each slide (use with width and height options) + cleartype: !$.support.opacity, // true if clearType corrections should be applied (for IE) + cleartypeNoBg: false, // set to true to disable extra cleartype fixing (leave false to force background color setting on slides) + containerResize: 1, // resize container to fit largest slide + containerResizeHeight: 0, // resize containers height to fit the largest slide but leave the width dynamic + continuous: 0, // true to start next transition immediately after current one completes + cssAfter: null, // properties that defined the state of the slide after transitioning out + cssBefore: null, // properties that define the initial state of the slide before transitioning in + delay: 0, // additional delay (in ms) for first transition (hint: can be negative) + easeIn: null, // easing for "in" transition + easeOut: null, // easing for "out" transition + easing: null, // easing method for both in and out transitions + end: null, // callback invoked when the slideshow terminates (use with autostop or nowrap options): function(options) + fastOnEvent: 0, // force fast transitions when triggered manually (via pager or prev/next); value == time in ms + fit: 0, // force slides to fit container + fx: 'fade', // name of transition effect (or comma separated names, ex: 'fade,scrollUp,shuffle') + fxFn: null, // function used to control the transition: function(currSlideElement, nextSlideElement, options, afterCalback, forwardFlag) + height: 'auto', // container height (if the 'fit' option is true, the slides will be set to this height as well) + manualTrump: true, // causes manual transition to stop an active transition instead of being ignored + metaAttr: 'cycle', // data- attribute that holds the option data for the slideshow + next: null, // element, jQuery object, or jQuery selector string for the element to use as event trigger for next slide + nowrap: 0, // true to prevent slideshow from wrapping + onPagerEvent: null, // callback fn for pager events: function(zeroBasedSlideIndex, slideElement) + onPrevNextEvent: null, // callback fn for prev/next events: function(isNext, zeroBasedSlideIndex, slideElement) + pager: null, // element, jQuery object, or jQuery selector string for the element to use as pager container + pagerAnchorBuilder: null, // callback fn for building anchor links: function(index, DOMelement) + pagerEvent: 'click.cycle', // name of event which drives the pager navigation + pause: 0, // true to enable "pause on hover" + pauseOnPagerHover: 0, // true to pause when hovering over pager link + prev: null, // element, jQuery object, or jQuery selector string for the element to use as event trigger for previous slide + prevNextEvent: 'click.cycle',// event which drives the manual transition to the previous or next slide + random: 0, // true for random, false for sequence (not applicable to shuffle fx) + randomizeEffects: 1, // valid when multiple effects are used; true to make the effect sequence random + requeueOnImageNotLoaded: true, // requeue the slideshow if any image slides are not yet loaded + requeueTimeout: 250, // ms delay for requeue + rev: 0, // causes animations to transition in reverse (for effects that support it such as scrollHorz/scrollVert/shuffle) + shuffle: null, // coords for shuffle animation, ex: { top:15, left: 200 } + skipInitializationCallbacks: false, // set to true to disable the first before/after callback that occurs prior to any transition + slideExpr: null, // expression for selecting slides (if something other than all children is required) + slideResize: 1, // force slide width/height to fixed size before every transition + speed: 1000, // speed of the transition (any valid fx speed value) + speedIn: null, // speed of the 'in' transition + speedOut: null, // speed of the 'out' transition + startingSlide: undefined,// zero-based index of the first slide to be displayed + sync: 1, // true if in/out transitions should occur simultaneously + timeout: 4000, // milliseconds between slide transitions (0 to disable auto advance) + timeoutFn: null, // callback for determining per-slide timeout value: function(currSlideElement, nextSlideElement, options, forwardFlag) + updateActivePagerLink: null,// callback fn invoked to update the active pager link (adds/removes activePagerClass style) + width: null // container width (if the 'fit' option is true, the slides will be set to this width as well) +}; + +})(jQuery); + + +/*! + * jQuery Cycle Plugin Transition Definitions + * This script is a plugin for the jQuery Cycle Plugin + * Examples and documentation at: http://malsup.com/jquery/cycle/ + * Copyright (c) 2007-2010 M. Alsup + * Version: 2.73 + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html + */ +(function($) { +"use strict"; + +// +// These functions define slide initialization and properties for the named +// transitions. To save file size feel free to remove any of these that you +// don't need. +// +$.fn.cycle.transitions.none = function($cont, $slides, opts) { + opts.fxFn = function(curr,next,opts,after){ + $(next).show(); + $(curr).hide(); + after(); + }; +}; + +// not a cross-fade, fadeout only fades out the top slide +$.fn.cycle.transitions.fadeout = function($cont, $slides, opts) { + $slides.not(':eq('+opts.currSlide+')').css({ display: 'block', 'opacity': 1 }); + opts.before.push(function(curr,next,opts,w,h,rev) { + $(curr).css('zIndex',opts.slideCount + (rev !== true ? 1 : 0)); + $(next).css('zIndex',opts.slideCount + (rev !== true ? 0 : 1)); + }); + opts.animIn.opacity = 1; + opts.animOut.opacity = 0; + opts.cssBefore.opacity = 1; + opts.cssBefore.display = 'block'; + opts.cssAfter.zIndex = 0; +}; + +// scrollUp/Down/Left/Right +$.fn.cycle.transitions.scrollUp = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push($.fn.cycle.commonReset); + var h = $cont.height(); + opts.cssBefore.top = h; + opts.cssBefore.left = 0; + opts.cssFirst.top = 0; + opts.animIn.top = 0; + opts.animOut.top = -h; +}; +$.fn.cycle.transitions.scrollDown = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push($.fn.cycle.commonReset); + var h = $cont.height(); + opts.cssFirst.top = 0; + opts.cssBefore.top = -h; + opts.cssBefore.left = 0; + opts.animIn.top = 0; + opts.animOut.top = h; +}; +$.fn.cycle.transitions.scrollLeft = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push($.fn.cycle.commonReset); + var w = $cont.width(); + opts.cssFirst.left = 0; + opts.cssBefore.left = w; + opts.cssBefore.top = 0; + opts.animIn.left = 0; + opts.animOut.left = 0-w; +}; +$.fn.cycle.transitions.scrollRight = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push($.fn.cycle.commonReset); + var w = $cont.width(); + opts.cssFirst.left = 0; + opts.cssBefore.left = -w; + opts.cssBefore.top = 0; + opts.animIn.left = 0; + opts.animOut.left = w; +}; +$.fn.cycle.transitions.scrollHorz = function($cont, $slides, opts) { + $cont.css('overflow','hidden').width(); + opts.before.push(function(curr, next, opts, fwd) { + if (opts.rev) + fwd = !fwd; + $.fn.cycle.commonReset(curr,next,opts); + opts.cssBefore.left = fwd ? (next.cycleW-1) : (1-next.cycleW); + opts.animOut.left = fwd ? -curr.cycleW : curr.cycleW; + }); + opts.cssFirst.left = 0; + opts.cssBefore.top = 0; + opts.animIn.left = 0; + opts.animOut.top = 0; +}; +$.fn.cycle.transitions.scrollVert = function($cont, $slides, opts) { + $cont.css('overflow','hidden'); + opts.before.push(function(curr, next, opts, fwd) { + if (opts.rev) + fwd = !fwd; + $.fn.cycle.commonReset(curr,next,opts); + opts.cssBefore.top = fwd ? (1-next.cycleH) : (next.cycleH-1); + opts.animOut.top = fwd ? curr.cycleH : -curr.cycleH; + }); + opts.cssFirst.top = 0; + opts.cssBefore.left = 0; + opts.animIn.top = 0; + opts.animOut.left = 0; +}; + +// slideX/slideY +$.fn.cycle.transitions.slideX = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $(opts.elements).not(curr).hide(); + $.fn.cycle.commonReset(curr,next,opts,false,true); + opts.animIn.width = next.cycleW; + }); + opts.cssBefore.left = 0; + opts.cssBefore.top = 0; + opts.cssBefore.width = 0; + opts.animIn.width = 'show'; + opts.animOut.width = 0; +}; +$.fn.cycle.transitions.slideY = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $(opts.elements).not(curr).hide(); + $.fn.cycle.commonReset(curr,next,opts,true,false); + opts.animIn.height = next.cycleH; + }); + opts.cssBefore.left = 0; + opts.cssBefore.top = 0; + opts.cssBefore.height = 0; + opts.animIn.height = 'show'; + opts.animOut.height = 0; +}; + +// shuffle +$.fn.cycle.transitions.shuffle = function($cont, $slides, opts) { + var i, w = $cont.css('overflow', 'visible').width(); + $slides.css({left: 0, top: 0}); + opts.before.push(function(curr,next,opts) { + $.fn.cycle.commonReset(curr,next,opts,true,true,true); + }); + // only adjust speed once! + if (!opts.speedAdjusted) { + opts.speed = opts.speed / 2; // shuffle has 2 transitions + opts.speedAdjusted = true; + } + opts.random = 0; + opts.shuffle = opts.shuffle || {left:-w, top:15}; + opts.els = []; + for (i=0; i < $slides.length; i++) + opts.els.push($slides[i]); + + for (i=0; i < opts.currSlide; i++) + opts.els.push(opts.els.shift()); + + // custom transition fn (hat tip to Benjamin Sterling for this bit of sweetness!) + opts.fxFn = function(curr, next, opts, cb, fwd) { + if (opts.rev) + fwd = !fwd; + var $el = fwd ? $(curr) : $(next); + $(next).css(opts.cssBefore); + var count = opts.slideCount; + $el.animate(opts.shuffle, opts.speedIn, opts.easeIn, function() { + var hops = $.fn.cycle.hopsFromLast(opts, fwd); + for (var k=0; k < hops; k++) { + if (fwd) + opts.els.push(opts.els.shift()); + else + opts.els.unshift(opts.els.pop()); + } + if (fwd) { + for (var i=0, len=opts.els.length; i < len; i++) + $(opts.els[i]).css('z-index', len-i+count); + } + else { + var z = $(curr).css('z-index'); + $el.css('z-index', parseInt(z,10)+1+count); + } + $el.animate({left:0, top:0}, opts.speedOut, opts.easeOut, function() { + $(fwd ? this : curr).hide(); + if (cb) cb(); + }); + }); + }; + $.extend(opts.cssBefore, { display: 'block', opacity: 1, top: 0, left: 0 }); +}; + +// turnUp/Down/Left/Right +$.fn.cycle.transitions.turnUp = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,false); + opts.cssBefore.top = next.cycleH; + opts.animIn.height = next.cycleH; + opts.animOut.width = next.cycleW; + }); + opts.cssFirst.top = 0; + opts.cssBefore.left = 0; + opts.cssBefore.height = 0; + opts.animIn.top = 0; + opts.animOut.height = 0; +}; +$.fn.cycle.transitions.turnDown = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,false); + opts.animIn.height = next.cycleH; + opts.animOut.top = curr.cycleH; + }); + opts.cssFirst.top = 0; + opts.cssBefore.left = 0; + opts.cssBefore.top = 0; + opts.cssBefore.height = 0; + opts.animOut.height = 0; +}; +$.fn.cycle.transitions.turnLeft = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,true); + opts.cssBefore.left = next.cycleW; + opts.animIn.width = next.cycleW; + }); + opts.cssBefore.top = 0; + opts.cssBefore.width = 0; + opts.animIn.left = 0; + opts.animOut.width = 0; +}; +$.fn.cycle.transitions.turnRight = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,true); + opts.animIn.width = next.cycleW; + opts.animOut.left = curr.cycleW; + }); + $.extend(opts.cssBefore, { top: 0, left: 0, width: 0 }); + opts.animIn.left = 0; + opts.animOut.width = 0; +}; + +// zoom +$.fn.cycle.transitions.zoom = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,false,true); + opts.cssBefore.top = next.cycleH/2; + opts.cssBefore.left = next.cycleW/2; + $.extend(opts.animIn, { top: 0, left: 0, width: next.cycleW, height: next.cycleH }); + $.extend(opts.animOut, { width: 0, height: 0, top: curr.cycleH/2, left: curr.cycleW/2 }); + }); + opts.cssFirst.top = 0; + opts.cssFirst.left = 0; + opts.cssBefore.width = 0; + opts.cssBefore.height = 0; +}; + +// fadeZoom +$.fn.cycle.transitions.fadeZoom = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,false); + opts.cssBefore.left = next.cycleW/2; + opts.cssBefore.top = next.cycleH/2; + $.extend(opts.animIn, { top: 0, left: 0, width: next.cycleW, height: next.cycleH }); + }); + opts.cssBefore.width = 0; + opts.cssBefore.height = 0; + opts.animOut.opacity = 0; +}; + +// blindX +$.fn.cycle.transitions.blindX = function($cont, $slides, opts) { + var w = $cont.css('overflow','hidden').width(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.animIn.width = next.cycleW; + opts.animOut.left = curr.cycleW; + }); + opts.cssBefore.left = w; + opts.cssBefore.top = 0; + opts.animIn.left = 0; + opts.animOut.left = w; +}; +// blindY +$.fn.cycle.transitions.blindY = function($cont, $slides, opts) { + var h = $cont.css('overflow','hidden').height(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.animIn.height = next.cycleH; + opts.animOut.top = curr.cycleH; + }); + opts.cssBefore.top = h; + opts.cssBefore.left = 0; + opts.animIn.top = 0; + opts.animOut.top = h; +}; +// blindZ +$.fn.cycle.transitions.blindZ = function($cont, $slides, opts) { + var h = $cont.css('overflow','hidden').height(); + var w = $cont.width(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.animIn.height = next.cycleH; + opts.animOut.top = curr.cycleH; + }); + opts.cssBefore.top = h; + opts.cssBefore.left = w; + opts.animIn.top = 0; + opts.animIn.left = 0; + opts.animOut.top = h; + opts.animOut.left = w; +}; + +// growX - grow horizontally from centered 0 width +$.fn.cycle.transitions.growX = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,true); + opts.cssBefore.left = this.cycleW/2; + opts.animIn.left = 0; + opts.animIn.width = this.cycleW; + opts.animOut.left = 0; + }); + opts.cssBefore.top = 0; + opts.cssBefore.width = 0; +}; +// growY - grow vertically from centered 0 height +$.fn.cycle.transitions.growY = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,false); + opts.cssBefore.top = this.cycleH/2; + opts.animIn.top = 0; + opts.animIn.height = this.cycleH; + opts.animOut.top = 0; + }); + opts.cssBefore.height = 0; + opts.cssBefore.left = 0; +}; + +// curtainX - squeeze in both edges horizontally +$.fn.cycle.transitions.curtainX = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,false,true,true); + opts.cssBefore.left = next.cycleW/2; + opts.animIn.left = 0; + opts.animIn.width = this.cycleW; + opts.animOut.left = curr.cycleW/2; + opts.animOut.width = 0; + }); + opts.cssBefore.top = 0; + opts.cssBefore.width = 0; +}; +// curtainY - squeeze in both edges vertically +$.fn.cycle.transitions.curtainY = function($cont, $slides, opts) { + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,false,true); + opts.cssBefore.top = next.cycleH/2; + opts.animIn.top = 0; + opts.animIn.height = next.cycleH; + opts.animOut.top = curr.cycleH/2; + opts.animOut.height = 0; + }); + opts.cssBefore.height = 0; + opts.cssBefore.left = 0; +}; + +// cover - curr slide covered by next slide +$.fn.cycle.transitions.cover = function($cont, $slides, opts) { + var d = opts.direction || 'left'; + var w = $cont.css('overflow','hidden').width(); + var h = $cont.height(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts); + opts.cssAfter.display = ''; + if (d == 'right') + opts.cssBefore.left = -w; + else if (d == 'up') + opts.cssBefore.top = h; + else if (d == 'down') + opts.cssBefore.top = -h; + else + opts.cssBefore.left = w; + }); + opts.animIn.left = 0; + opts.animIn.top = 0; + opts.cssBefore.top = 0; + opts.cssBefore.left = 0; +}; + +// uncover - curr slide moves off next slide +$.fn.cycle.transitions.uncover = function($cont, $slides, opts) { + var d = opts.direction || 'left'; + var w = $cont.css('overflow','hidden').width(); + var h = $cont.height(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,true,true); + if (d == 'right') + opts.animOut.left = w; + else if (d == 'up') + opts.animOut.top = -h; + else if (d == 'down') + opts.animOut.top = h; + else + opts.animOut.left = -w; + }); + opts.animIn.left = 0; + opts.animIn.top = 0; + opts.cssBefore.top = 0; + opts.cssBefore.left = 0; +}; + +// toss - move top slide and fade away +$.fn.cycle.transitions.toss = function($cont, $slides, opts) { + var w = $cont.css('overflow','visible').width(); + var h = $cont.height(); + opts.before.push(function(curr, next, opts) { + $.fn.cycle.commonReset(curr,next,opts,true,true,true); + // provide default toss settings if animOut not provided + if (!opts.animOut.left && !opts.animOut.top) + $.extend(opts.animOut, { left: w*2, top: -h/2, opacity: 0 }); + else + opts.animOut.opacity = 0; + }); + opts.cssBefore.left = 0; + opts.cssBefore.top = 0; + opts.animIn.left = 0; +}; + +// wipe - clip animation +$.fn.cycle.transitions.wipe = function($cont, $slides, opts) { + var w = $cont.css('overflow','hidden').width(); + var h = $cont.height(); + opts.cssBefore = opts.cssBefore || {}; + var clip; + if (opts.clip) { + if (/l2r/.test(opts.clip)) + clip = 'rect(0px 0px '+h+'px 0px)'; + else if (/r2l/.test(opts.clip)) + clip = 'rect(0px '+w+'px '+h+'px '+w+'px)'; + else if (/t2b/.test(opts.clip)) + clip = 'rect(0px '+w+'px 0px 0px)'; + else if (/b2t/.test(opts.clip)) + clip = 'rect('+h+'px '+w+'px '+h+'px 0px)'; + else if (/zoom/.test(opts.clip)) { + var top = parseInt(h/2,10); + var left = parseInt(w/2,10); + clip = 'rect('+top+'px '+left+'px '+top+'px '+left+'px)'; + } + } + + opts.cssBefore.clip = opts.cssBefore.clip || clip || 'rect(0px 0px 0px 0px)'; + + var d = opts.cssBefore.clip.match(/(\d+)/g); + var t = parseInt(d[0],10), r = parseInt(d[1],10), b = parseInt(d[2],10), l = parseInt(d[3],10); + + opts.before.push(function(curr, next, opts) { + if (curr == next) return; + var $curr = $(curr), $next = $(next); + $.fn.cycle.commonReset(curr,next,opts,true,true,false); + opts.cssAfter.display = 'block'; + + var step = 1, count = parseInt((opts.speedIn / 13),10) - 1; + (function f() { + var tt = t ? t - parseInt(step * (t/count),10) : 0; + var ll = l ? l - parseInt(step * (l/count),10) : 0; + var bb = b < h ? b + parseInt(step * ((h-b)/count || 1),10) : h; + var rr = r < w ? r + parseInt(step * ((w-r)/count || 1),10) : w; + $next.css({ clip: 'rect('+tt+'px '+rr+'px '+bb+'px '+ll+'px)' }); + (step++ <= count) ? setTimeout(f, 13) : $curr.css('display', 'none'); + })(); + }); + $.extend(opts.cssBefore, { display: 'block', opacity: 1, top: 0, left: 0 }); + opts.animIn = { left: 0 }; + opts.animOut = { left: 0 }; +}; + +})(jQuery); diff --git a/web/cobrands/warwickshire/vendor/gamma/jquery.tabSlideOut.v1.3.js b/web/cobrands/warwickshire/vendor/gamma/jquery.tabSlideOut.v1.3.js new file mode 100644 index 000000000..98ca3af4d --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/jquery.tabSlideOut.v1.3.js @@ -0,0 +1,215 @@ +/* + tabSlideOUt v1.3 + + By William Paoli: http://wpaoli.building58.com + + To use you must have an image ready to go as your tab + Make sure to pass in at minimum the path to the image and its dimensions: + + example: + + $('.slide-out-div').tabSlideOut({ + tabHandle: '.handle', //class of the element that will be your tab -doesnt have to be an anchor + pathToTabImage: 'images/contact_tab.gif', //relative path to the image for the tab *required* + imageHeight: '133px', //height of tab image *required* + imageWidth: '44px', //width of tab image *required* + }); + + last updated 06-01-2016 DJ +*/ + + +(function($){ + $.fn.tabSlideOut = function(callerSettings) { + var settings = $.extend({ + tabHandle: '.handle', + speed: 300, + action: 'click', + tabLocation: 'left', + topPos: '200px', + leftPos: '20px', + fixedPosition: false, + positioning: 'absolute', + pathToTabImage: null, + imageHeight: null, + imageWidth: null, + onLoadSlideOut: false + }, callerSettings||{}); + + settings.tabHandle = $(settings.tabHandle); + var obj = this; + if (settings.fixedPosition === true) { + settings.positioning = 'fixed'; + } else { + settings.positioning = 'absolute'; + } + + //ie6 doesn't do well with the fixed option + if (document.all && !window.opera && !window.XMLHttpRequest) { + settings.positioning = 'absolute'; + } + + + + //set initial tabHandle css + + if (settings.pathToTabImage != null) { + settings.tabHandle.css({ + 'background' : 'url('+settings.pathToTabImage+') no-repeat', + 'width' : settings.imageWidth, + 'height': settings.imageHeight + }); + } + + settings.tabHandle.css({ + 'display': 'block', + 'textIndent' : '-99999px', + //'outline' : 'none', + 'position' : 'absolute' + }); + + obj.css({ + 'line-height' : '1', + 'position' : settings.positioning + }); + + + var properties = { + containerWidth: parseInt(obj.outerWidth(), 10) + 'px', + containerHeight: parseInt(obj.outerHeight(), 10) + 'px', + tabWidth: parseInt(settings.tabHandle.outerWidth(), 10) + 'px', + tabHeight: parseInt(settings.tabHandle.outerHeight(), 10) + 'px' + }; + + //set calculated css + if(settings.tabLocation === 'top' || settings.tabLocation === 'bottom') { + obj.css({'left' : settings.leftPos}); + settings.tabHandle.css({'right' : 0}); + } + + if(settings.tabLocation === 'top') { + obj.css({'top' : '-' + properties.containerHeight}); + settings.tabHandle.css({'bottom' : '-' + properties.tabHeight}); + } + + if(settings.tabLocation === 'bottom') { + obj.css({'bottom' : '-' + properties.containerHeight, 'position' : 'fixed'}); + settings.tabHandle.css({'top' : '-' + properties.tabHeight}); + + } + + if(settings.tabLocation === 'left' || settings.tabLocation === 'right') { + obj.css({ + 'height' : properties.containerHeight, + 'top' : settings.topPos + }); + + settings.tabHandle.css({'top' : 0}); + } + + if(settings.tabLocation === 'left') { + obj.css({ 'left': '-' + properties.containerWidth}); + settings.tabHandle.css({'right' : '-' + properties.tabWidth}); + } + + if(settings.tabLocation === 'right') { + obj.css({ 'right': '-' + properties.containerWidth}); + settings.tabHandle.css({'left' : '-' + properties.tabWidth}); + + $('html').css('overflow-x', 'hidden'); + } + + //functions for animation events + + settings.tabHandle.click(function(event){ + event.preventDefault(); + }); + + var slideIn = function() { + + if (settings.tabLocation === 'top') { + obj.animate({top:'-' + properties.containerHeight}, settings.speed).removeClass('open'); + } else if (settings.tabLocation === 'left') { + obj.animate({left: '-' + properties.containerWidth}, settings.speed).removeClass('open'); + } else if (settings.tabLocation === 'right') { + obj.animate({right: '-' + properties.containerWidth}, settings.speed).removeClass('open'); + } else if (settings.tabLocation === 'bottom') { + obj.animate({bottom: '-' + properties.containerHeight}, settings.speed).removeClass('open'); + } + + }; + + var slideOut = function() { + + if (settings.tabLocation == 'top') { + obj.animate({top:'-3px'}, settings.speed).addClass('open'); + } else if (settings.tabLocation == 'left') { + obj.animate({left:'-3px'}, settings.speed).addClass('open'); + } else if (settings.tabLocation == 'right') { + obj.animate({right:'-3px'}, settings.speed).addClass('open'); + } else if (settings.tabLocation == 'bottom') { + obj.animate({bottom:'-3px'}, settings.speed).addClass('open'); + } + }; + + var clickScreenToClose = function() { + obj.click(function(event){ + event.stopPropagation(); + }); + + $(document).click(function(){ + slideIn(); + }); + }; + + var clickAction = function(){ + settings.tabHandle.click(function(event){ + if (obj.hasClass('open')) { + slideIn(); + } else { + slideOut(); + } + }); + + clickScreenToClose(); + }; + + var hoverAction = function(){ + obj.hover( + function(){ + slideOut(); + }, + + function(){ + slideIn(); + }); + + settings.tabHandle.click(function(event){ + if (obj.hasClass('open')) { + slideIn(); + } + }); + clickScreenToClose(); + + }; + + var slideOutOnLoad = function(){ + slideIn(); + setTimeout(slideOut, 500); + }; + + //choose which type of action to bind + if (settings.action === 'click') { + clickAction(); + } + + if (settings.action === 'hover') { + hoverAction(); + } + + if (settings.onLoadSlideOut) { + slideOutOnLoad(); + }; + + }; +})(jQuery); diff --git a/web/cobrands/warwickshire/vendor/gamma/jquery.zrssfeed.o.js b/web/cobrands/warwickshire/vendor/gamma/jquery.zrssfeed.o.js new file mode 100644 index 000000000..60d5eb33a --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/jquery.zrssfeed.o.js @@ -0,0 +1,139 @@ +/** + * Plugin: jquery.zRSSFeed + * + * Version: 1.0.1m + * (c) Copyright 2010, Zazar Ltd + * + * Description: jQuery plugin for display of RSS feeds via Google Feed API + * (Based on original plugin jGFeed by jQuery HowTo) + * + * History: + * 1.0.1 - Corrected issue with multiple instances + * 1.0.1m - fixed content showing issue - PL + * + **/ + +(function($){ + + var current = null; + + $.fn.rssfeed = function(url, options) { + + // Set pluign defaults + var defaults = { + limit: 10, + header: false, + titletag: 'h4', + date: true, + content: true, + snippet: true, + showerror: true, + errormsg: '', + key: null + }; + var options = $.extend(defaults, options); + + // Functions + return this.each(function(i, e) { + var $e = $(e); + + // Add feed class to user div + if (!$e.hasClass('rssFeed')) $e.addClass('rssFeed'); + + // Check for valid url + if(url == null) return false; + + // Create Google Feed API address + var api = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&callback=?&q=" + url; + if (options.limit != null) api += "&num=" + options.limit; + if (options.key != null) api += "&key=" + options.key; + + // Send request + $.getJSON(api, function(data){ + + // Check for error + if (data.responseStatus == 200) { + + // Process the feeds + _callback(e, data.responseData.feed, options); + } else { + + // Handle error if required + if (options.showerror) + if (options.errormsg != '') { + var msg = options.errormsg; + } else { + var msg = data.responseDetails; + }; + $(e).html('<div class="rssError"><p>'+ msg +'</p></div>'); + }; + }); + }); + }; + + // Callback function to create HTML result + var _callback = function(e, feeds, options) { + if (!feeds) { + return false; + } + var html = ''; + var row = 'first'; + + // Add header if required + if (options.header) + html += '<h3 class="news-feed-header">' + + '<a href="'+ feeds.link +'" title="'+ feeds.description +'">'+ feeds.title +'</a>' + + '</h3>'; + + // Add body + html += '<ul class="rss-list">'; + + // Add feeds + for (var i=0; i<feeds.entries.length; i++) { + + // Get individual feed + var entry = feeds.entries[i]; + + // Format published date + var entryDate = new Date(entry.publishedDate); + var pubDate = entryDate.toLocaleDateString() + ' ' + entryDate.toLocaleTimeString(); + + // Add feed row + html += '<li class="rss-list-item-'+ row +'">' + + '<'+ options.titletag +'><a href="'+ entry.link +'" title="View this feed at '+ feeds.title +'">'+ entry.title +'</a></'+ options.titletag +'>' + if (options.date) html += '<h5>'+ pubDate +'</h5>' + if (options.content) { + + // Use feed snippet if available and optioned + if (options.snippet != '') { + var content = entry.contentSnippet; + } else if (entry.contentSnippet != '') { + var content = ''; + } + else { + var content = ''; + } + + html += '<p class="snippet">'+ content +'</p>' + } + + html += '</li>'; + + // Alternate row classes + if (row = 'first') { + row = 'sub'; + } else { + if (row == 'first') { + row = 'even'; + } else { + row = 'first'; + } + + } + } + + html += '</ul>' + + $(e).html(html); + }; +})(jQuery); diff --git a/web/cobrands/warwickshire/vendor/gamma/print.css b/web/cobrands/warwickshire/vendor/gamma/print.css new file mode 100644 index 000000000..ac40d74d3 --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/print.css @@ -0,0 +1,76 @@ +/* Latest version 15/02/2016 - DJ the Great */ + +/* Print Style Sheet */ + + +@media print { + * { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + box-shadow: none !important; + } +/* header image added DJ - 17-02-2016 */ +header:before { + content: url(http://www.warwickshire.gov.uk/wp-content/uploads/2016/02/WCC-Logo.gif); + +} + /*header.entry-header {left:none;}*/ + + a[href]:after { content: " (" attr(href) ")"; } + .slide-out-div {display: none;} + .slide-out-div-open {display: none;} + #multiColumn {display: none;} + #hero-header-button {display: none!important;} + .accordion-slide-content {display: block!important} + .pager li {display: none;} + .post-edit-link {display: none;} + .btn-danger {display: none;} + .btn-big {display: none;} + .navbar-inverse .navbar-inner {display: none;} + .handle {display: none;} + .section-header {display: none;} + .entry-header-hero img {display: none;} + #secondary {display: none;} + #footer {display: none;} + #footer-logos-bottom {display: none;} + .textwidget {display: none;} + /*.brand {display: block;}*/ + .entry-hero-button {display: none;} + .print-page {display: none;} + #brand {display: block!important;} + h1, h2, h3, h4, h5, h6 { + page-break-after:avoid; + page-break-inside:avoid; + page-break-inside: avoid; } + h1 {font-size: 25px;} + h2 {font-size: 20px;} + h3 {font-size: 18px;} + h4 {font-size: 15px;} + .breadcrumb {display: none;} + .widget {display: none;} +#printfooter {display: block!important;} + } + #printfooter +{ + page-break-after:avoid; + page-break-inside:avoid; + page-break-inside: avoid; } + + /*header.print {display: block;}*/ + + body:after { + content: "If you have any comments or complaints about our services, please let us know. Phone: 01926 410410 Email: customerrelations@warwickshire.gov.uk. We will aim to provide this information in a format suitable for your needs. Please contact us so we can discuss your requirements."; + +} + +} +/*footer { + content: url(http://www.warwickshire.gov.uk/wp-content/uploads/2016/02/footer-text.jpg); + + } + */ + + + + diff --git a/web/cobrands/warwickshire/vendor/gamma/style.css b/web/cobrands/warwickshire/vendor/gamma/style.css index 99e4d47e5..a558d761f 100644 --- a/web/cobrands/warwickshire/vendor/gamma/style.css +++ b/web/cobrands/warwickshire/vendor/gamma/style.css @@ -1,4 +1,4 @@ -delicious/* +/* Theme Name: Gamma Description: A theme for Warwickshire, based on RELSUB and Bootstrap. Author: Pete Lancaster, Matt Pearce, Guy Eastwood, Nivi Morales, Tom Rudge, Rebecca Francis, Dave Jennings and Adam Firth @@ -6,7 +6,14 @@ Version: 1.0.15 Template: relsub Licence: Bootstrap is Copyright 2013 Twitter, Inc. Licensed under the Apache License v2.0. License URI: http://www.apache.org/licenses/LICENSE-2.0 -*/ + + + + +//latest version - 11-08-2016 - DJ + + + article, aside, @@ -22,7 +29,7 @@ section { } a { - font-weight:bold; + font-weight:normal; /* changed from bold to bring site closer to gov.uk - 12-01-2016 -DJ */ } audio, canvas, @@ -141,6 +148,8 @@ textarea { vertical-align: top; } + +/* @media print { * { color: #000 !important; @@ -148,7 +157,7 @@ textarea { background: transparent !important; box-shadow: none !important; } - a, + /*a, a:visited { text-decoration: underline; } @@ -157,12 +166,38 @@ textarea { } abbr[title]:after { content: " (" attr(title) ")"; - } - .ir a:after, + }*/ + /* Enables hiding some elements from printing layout */ + /*.visible-print { display: inherit !important; } + .hidden-print { display: none !important; } + .slide-out-div {display: none;} + .slide-out-div-open {display: none;} + #multiColumn {display: none;} + .hero-header-button {display: none;} + .accordion-slide {display: block;} + .accordion-slide-content {display: block;} + .navbar-inverse .navbar-inner {display: none;} + .handle {display: none;} + .section-header {display: none;} + .entry-header-hero img {display: none;} + #secondary {display: none;} + #footer {display: none;} + #footer-logos-bottom {display: none;} + .textwidget {display: none;} + .brand {display: block;} + .entry-hero-button {display: none;} + .print-page {display: none;} + + + } + */ + + + /*.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; - } + }*/ pre, blockquote { border: 1px solid #999; @@ -193,6 +228,22 @@ textarea { } } +/*@media print { + +body { background:black; color:black; margin:0 } +#header {disply:block; } +#content {disply:none;} +#comments {disply:none;} +#sidebar {disply:none;} +#footer {disply:none;} +#secondary {display: none;} +#handle {display: none;} +#slide-out-div {display: none;} +} +*/ + + + .clearfix { *zoom: 1; } @@ -228,36 +279,55 @@ textarea { body { margin: 0; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; - font-size: 14px; - line-height: 20px; + font-size: 15px; /* changed from 14px to bring site closer to gov.uk - 08-06-2016 -DJ */ + line-height: 20px; /* changed from 20px to bring it closer to gov.uk - 08-06-2016 - DJ*/ color: #333333; background-color: #ffffff; } -.style-1 a, .style-2 a, .style-3 a { +.style-2 a, .style-3 a { color: #006d3c; - text-decoration: none; + text-decoration: underline;.body /*changed from text-decoration : none; to bring site closer to gov.uk - 12-01-2016 -DJ */ + +} + +.style-1 a { + color: #006d3c; + text-decoration: underline; /* changed from text-decoration: none; - DJ - 20-01-2016 */ } +.style-1 li a { + color: #006d3c; + text-decoration: underline;.body + } /* created so as to underline links in list items - DJ - 14-01-2016 */ + +.style-2 li a, .style-5 li a { + color: #0055A1; + text-decoration: underline;.body + } /* created so as to underline links in list items - DJ - 14-01-2016 */ .style-4 a { color: #004aac; /* color: #48555E; */ - text-decoration: none; + text-decoration: underline; /* changed from text-decoration: none; - DJ - 20-01-2016 */ } +.style-4 li a { + color: #004aac; + text-decoration: underline; + } /* created so as to underline links in list items - DJ - 14-01-2016 */ .style-5 a { color: #444444; - text-decoration: none; + text-decoration: underline; /* changed from text-decoration: none; - DJ - 20-01-2016 */ } - -.style-4 p a, .style-4 li a, .style-5 p a, .style-5 li a { /*Change colours of links in paragraphs/lists to blue for coporporate/spp style. AF - 08.07.14 */ + +.style-4 p a, .style-5 p a { /*Change colours of links in paragraphs/lists to blue for coporporate/spp style. AF - 08.07.14 */ color: #004aac; - text-decoration: none; +text-decoration: underline; /* changed from text-decoration: none; - DJ - 20-01-2016 */ } .style-1 a:hover, .style-2 a:hover , .style-3 a:hover { @@ -272,9 +342,26 @@ body { .style-5 a:hover { color: #005580; - text-decoration: underline; + } + +.style-1 h4 a {text-decoration: none; + margin:-5px 0; } +.style-2 h4 a {text-decoration: none; +} + + +.style-3 h4 a {text-decoration: none; +} + +.style-4 h4 a {text-decoration: none; +} + +.style-5 h4 a {text-decoration: none; +} + + .img-rounded { -webkit-border-radius: 6px; -moz-border-radius: 6px; @@ -366,6 +453,18 @@ body { width: 300px; } +/* added black bar to top of right-hand column in 2 column pages - DJ - 22-02-2016 */ +div#secondary { +border-top-color: rgb(0, 0, 0); +border-width: 10px; +border-style: solid; +border-bottom: none; +border-left: none; +border-right: none; +/* border-top: none; */ +border-bottom: 5px; +margin-top: 25px; +} .span3 { width: 220px; @@ -845,6 +944,14 @@ h4 small { font-size: 14px; } +.site-list-title { + + padding-top: 0px; + margin-top: -20px; + +} + + .page-header { padding-bottom: 9px; margin: 20px 0 30px; @@ -865,7 +972,8 @@ ol ul { } li { - line-height: 20px; + line-height: 20px; /*Line height originally changed from 20px to 26px for accessibility on mobile devices. Changed back to 20px as long bullet points have large spacing - DJ 09/11/2015 */ + padding-bottom: 10px; /* Added padding-bottom to increase spacing between bullet points without increasing line spacing on long bullet ponts - DJ - 09/11/2015 */ } ul.unstyled, @@ -953,6 +1061,47 @@ abbr.initialism { text-transform: uppercase; } +.blockquote { + background: #f9f9f9; + border-left: 10px solid #ccc; + font-style: italic; +border-top:none; +border-right:none; +border-bottom:none; + margin: 1.5em 10px; + padding: 0.5em 10px; + quotes: "\201C""\201D""\2018""\2019"; +} +.blockquote:before { + color: #ccc; + content: open-quote; + font-size: 4em; + line-height: 0.1em; + margin-right: 0.25em; + vertical-align: -0.4em; +} +.blockquote p { + display: inline; +margin-bottom: 0; +font-size: 15px; +font-weight: 300; +line-height: 25px; +font-style: italic; +} + + + +.blockquote:after +{color:#ccc; +content:close-quote; +font-size:4em; +line-height:.1em; +margin-right:.25em; +vertical-align:-.48em; +padding-left: 10px; +} + +/* blockquote { padding: 0 0 0 15px; margin: 0 0 20px; @@ -1004,7 +1153,7 @@ blockquote:before, blockquote:after { content: ""; } - +*/ address { display: block; margin-bottom: 20px; @@ -1106,7 +1255,7 @@ textarea { font-weight: normal; line-height: 20px; } - +label, /* added by DJ 04-12-2015 */ input, button, select, @@ -1140,9 +1289,7 @@ input[type="tel"], input[type="color"], .uneditable-input { display: inline-block; - /* - height: 20px; // override for FMS as this breaks FireFox and our local styling - */ + height: 20px; padding: 4px 6px; margin-bottom: 10px; font-size: 14px; @@ -1163,7 +1310,7 @@ textarea, textarea { height: auto; } - +label [postcode] textarea, input[type ="text"], @@ -1694,6 +1841,20 @@ select:focus:invalid:focus { box-shadow: 0 0 6px #f8b9b7; } + +.handle{ margin-top: -2px;} + +.slide-out-div { + padding: 20px; + width: 200px; + background: #f2f2f2; + border: #29216d 1px solid; + height: 62px; + /* start of shadow */ -webkit-box-shadow: -1px 16px 12px 0px rgba(0,0,0,0.67); +-moz-box-shadow: -4px 5px 17px 0px rgba(0,0,0,0.67); +box-shadow: -4px 5px 17px 0px rgba(0,0,0,0.67); /* endo of shadow - DJ - 05-02-2016 */ + } + .form-actions { padding: 19px 20px 20px; margin-top: 20px; @@ -2987,7 +3148,7 @@ table th[class*="span"], position: absolute; top: 100%; left: 0; - z-index: 1000; + z-index: 1001; /* changed from 1000 to stop dropdown menu going behing header - DJ 15/12/2015 */ display: none; float: left; min-width: 160px; @@ -3033,6 +3194,7 @@ table th[class*="span"], line-height: 20px; color: #333333; white-space: nowrap; + text-decoration: none; /*added 08-06-2015 - DJ */ } @@ -3223,6 +3385,107 @@ table th[class*="span"], border-radius: 3px; } +/* Plain boxes - used mainly on contact pages */ +.well-large-plain-box { + background-color: #F9FFF8 !important; + border: 1px solid #999 !important; + padding-top: 10px; +padding-bottom: 10px; +padding-right: 24px; +padding-left: 24px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + + } + + .well-large-plain-box h1 { + padding-top: 0px!important; +} + +.well-large-plain-box h2 { + padding-top: 0px!important; +} + +.well-large-plain-box h3 { + padding-top: 0px!important; +} + +.well-large-plain-box h4 { + padding-top: 0px!important; +} + +.well-large-plain-box h5 { + padding-top: 0px!important; +} + +/*added red box for JW 17-02-2016 - DJ */ +.well-large-red-box { + background-color: #F9FFF8 !important; + border: 2px solid #FC0A0A !important; + padding-top: 10px; +padding-bottom: 10px; +padding-right: 24px; +padding-left: 24px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + } +.well-large-red-box h1 { + padding-top: 0px!important; +} + +.well-large-red-box h2 { + padding-top: 0px!important; +} + +.well-large-red-box h3 { + padding-top: 0px!important; +} + +.well-large-red-box h4 { + padding-top: 0px!important; +} + +.well-large-red-box h5 { + padding-top: 0px!important; +} + +/*added green box for JW 17-02-2016 - DJ */ +.well-large-green-box { + background-color: #F9FFF8 !important; + border: 2px solid #34F09B !important; + padding-top: 10px; +padding-bottom: 10px; +padding-right: 24px; +padding-left: 24px; + -webkit-border-radius: 6px; + -moz-border-radius: 6px; + border-radius: 6px; + } + +.well-large-green-box h1 { + padding-top: 0px!important; +} + +.well-large-green-box h2 { + padding-top: 0px!important; +} + +.well-large-green-box h3 { + padding-top: 0px!important; +} + +.well-large-green-box h4 { + padding-top: 0px!important; +} + +.well-large-green-box h5 { + padding-top: 0px!important; +} + + + .fade { opacity: 0; -webkit-transition: opacity 0.15s linear; @@ -3974,11 +4237,16 @@ input[type="submit"].btn.btn-mini { .alert, .alert h4 { - color: #c09853; + /*color: #c09853;*/ + color: #0000000; + size: 16px; } + .alert h4 { margin: 0; + font-size: 18px; + padding-bottom: 25px; /*added to avoind h4 overlapping with text - DJ - 22-02-2016 */ } .alert .close { @@ -4007,7 +4275,25 @@ input[type="submit"].btn.btn-mini { .alert-danger h4, .alert-error h4 { - color: #b94a48; + /*color: #b94a48; changed by DJ - 07-03-2016 */ + color: black ; +} + +.alert-warning h3 { + font-size: 20px; + font-weight: bold; + padding-top: 5px; + margin-top: 5px; +margin-bottom: 5px; +} + +.alert-warning h4 { + font-size: 20px; + font-weight: bold; + padding-top: 5px; + padding-bottom: 5px; +margin-top: 5px; +margin-bottom: 5px; } .alert-info { @@ -4157,9 +4443,10 @@ input[type="submit"].btn.btn-mini { .nav-tabs > li > a { padding-top: 8px; + text-decoration: none; padding-bottom: 8px; line-height: 20px; - border: 1px solid #999; + border: 1px solid #999; -webkit-border-radius: 4px 4px 0 0; -moz-border-radius: 4px 4px 0 0; border-radius: 4px 4px 0 0; @@ -4516,6 +4803,155 @@ input[type="submit"].btn.btn-mini { text-decoration: none; } +.govdelmobile{ + padding-top: 3px; + padding-right: 10px; + padding-left: 10px; + margin-top: 10px; +} + +.govdelmobile2{ + padding-top: 6px; + padding-right: 10px; + padding-left: 10px; + margin-top: 10px; +} + + +/*.gds added 22-04-2016*/ + a.gdslogo { + display: block; + float: left; + padding: 5px 0px; + padding-left: 10px; + /*margin-left: 5px;*/ + margin-top: 8px; + /* font-size: 20px; */ + font-weight: 200; + color: #d9d9d9!important; + /* text-shadow: 0 1px 0 #ffffff; */ + text-decoration: none; + } + + +a.gdslogo2 { + display: block; + float: left; + padding: 5px 0px; + padding-left: 11px; + /*margin-left: 5px;*/ + margin-top: 10px; + /* font-size: 20px; */ + font-weight: 200; + color: #d9d9d9!important; + /* text-shadow: 0 1px 0 #ffffff; */ + text-decoration: none; + } + + + + a.gds:hover { + color:#ffffff!important; + text-decoration: none!important; + } + + + a.gdstext { + display: block; + float: left; + padding: 5px 0px; + padding-left: 10px; + padding-right: 10px; + /* margin-left: 5px; */ + margin-top: 10px; + /* font-size: 20px; */ + font-weight: 200; + color: #d9d9d9!important; + /* text-shadow: 0 1px 0 #ffffff; */ + text-decoration: none!important; +} + +a.gdstext2 { + display: block; + float: left; + padding: 5px 0px; + padding-left: 10px; + padding-right: 10px; + /* margin-left: 5px; */ + margin-top: 9px; + /* font-size: 20px; */ + font-weight: 200; + color: #d9d9d9!important; + /* text-shadow: 0 1px 0 #ffffff; */ + text-decoration: none!important; +} + + + a.gdstext:hover { + color:#ffffff!important; + text-decoration: none!important; + } + + +@media (max-width: 480px) { +a.gdslogo{ + padding-left: 45%!important;/*160px!important;}*/ + margin-bottom: 5px} +a.gdstext { + display: none; +} +a.gdstext2 { + display: none; +} +} + + + +@media (max-width: 767px) { +a.gdslogo{ + padding-left: 68%; + margin-bottom: 5px +} +a.gdstext { + display: none; +} +a.gdstext2 { + display: none; +} +} + + +@media (max-width: 979px) { +a.gdslogo{ + display: none!important; +} +a.gdslogo2{ + display: none!important; +} +a.gdstext { + display: none; +} +a.gdstext2 { + display: none; +} +} + +@media (min-width: 979px) { +.govdelmobile { +display:none!important; +} +.govdelmobile2 { +display:none!important; +} +} + +/*end of gds*/ + + /*.style-1 .gds a:hover { + color:#ffffff!important; + text-decoration: none!important; + }*/ + .navbar-text { margin-bottom: 0; line-height: 40px; @@ -4539,7 +4975,7 @@ input[type="submit"].btn.btn-mini { .navbar .btn, .navbar .btn-group { - margin-top: 5px; + /* margin-top: 5px;*/ } .navbar .btn-group .btn, @@ -4631,7 +5067,7 @@ input[type="submit"].btn.btn-mini { .navbar-fixed-top, .navbar-fixed-bottom { - position: fixed; + position: static; /*changed from Fixed so as not to interfere with recycling a-z DJ 17/11/2015*/ right: 0; left: 0; z-index: 1030; @@ -4702,7 +5138,7 @@ input[type="submit"].btn.btn-mini { .navbar .nav > li > a { float: none; - padding: 10px 15px 10px; + padding: 12px 15px 10px; color: #777777; text-decoration: none; text-shadow: 0 1px 0 #ffffff; @@ -4731,6 +5167,44 @@ input[type="submit"].btn.btn-mini { box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); } + +.btn-search{ + display: none; + padding: 5px; +} + +.show-search{ + height: 50px !important; +} + + +#top-header #site-search{ + margin:10px; + + float: right; + +} + + +#top-header #site-search input{ + display: inline-block; + width:200px; + +} + + +#top-header #site-search button{ + height: 30px; + margin-top: -10px; + margin-left: 10px; + + width: 60px; +} + + + + + .navbar .btn-navbar { display: none; float: right; @@ -4788,6 +5262,11 @@ input[type="submit"].btn.btn-mini { margin-top: 3px; } + +/*.sign-in{ border-left: 1px solid #FFFFFF; border-right: solid 1px #FFFFFF;}*/ + + + .navbar .nav > li > .dropdown-menu:before { position: absolute; top: -7px; @@ -5053,7 +5532,9 @@ input[type="submit"].btn.btn-mini { .breadcrumb > li > .divider { padding: 0 5px; - color: #999999; + /*color: #999999;*/ /* changed to black to improve contrast - 13-04-2016 - DJ */ + color: #000000; + font-weight: 600; } .breadcrumb > .active { @@ -6277,7 +6758,7 @@ font-weight:bold; * By E-Services * * - * + * ***************************************************/ /*Site wide styles @@ -6290,28 +6771,36 @@ body{ } body > div.container{ - background-color: #F9FFF8; + background-color: #F9FFF8; /*box-shadow: 0px 2px 6px rgba(100, 100, 100, .3); -webkit-box-shadow: 0px 2px 6px rgba(100, 100, 100, .3); -moz-box-shadow: 0px 2px 6px rgba(100, 100, 100, .3); shadow hidden for redesign AF-06.06.14*/ - padding:15px; margin-top: 0px!important; } +/* Fixes issue with wide margins on mobile devices - NM 17.2.15*/ +@media (max-width: 480px) { body > div.container{ - background-color: #F9FFF8; - /*box-shadow: 0px 2px 6px rgba(100, 100, 100, .3); - -webkit-box-shadow: 0px 2px 6px rgba(100, 100, 100, .3); - -moz-box-shadow: 0px 2px 6px rgba(100, 100, 100, .3); shadow hidden for redesign AF-06.06.14*/ + background-color: #F9FFF8; + padding:15px; + margin-left: -15px; + margin-right: -15px; + margin-top: 0px!important;} +} +/* Fixes issue with wide margins on mobile devices - NM 17.2.15*/ +@media (max-width: 380px) { +body > div.container{ + background-color: #F9FFF8; padding:15px; - margin-top: 0px!important; + margin-left: -25px; + margin-right: -25px; + margin-top: 0px!important;} } .entry-content{ background-color: #F9FFF8; - } h1, h2, h3, @@ -6325,36 +6814,48 @@ h4, h5, h6 line-height: 20px; font-weight: lighter; + } h1 { - font-size: 32px; - font-weight: lighter; + font-size: 43px; /* changed from 33px to bring site closer to gov.uk - 12-01-2016 - DJ */ + font-weight: bold; /* changed from font-weight:lighter, to bring site sloser to GovUK - DJ - 21-01-2016 */ + padding-top: 20px; /* added by DJ - 04-02-2016 */ } h2 { - font-size: 24px; + font-size: 33px; /* changed from 24 px to look more like gov uk - DJ - 12-01-2016 */ font-weight: lighter; + line-height: 1.4; /* Adding line height to target large gap on h2 longer than a single line - NM - 18.2.15 */ + padding-top: 20px; /* added by DJ - 04-02-2016 */ } h3 { - font-size: 19px; - font-weight: lighter; + font-size: 25px; /* changed from 20 px to bring site closer to gov.uk - 12-01-2016 - DJ */ + font-weight: lighter; + padding-top: 20px; /* added by DJ - 04-02-2016 */ } h4 { - font-size: 16px; - font-weight: bold; + font-size: 20px; /* changed from 18px to bring site closer to gov.uk - 12-01-2016 - DJ */ + font-weight: normal; /* changed from bold - DJ 12-01-2016 */ + padding-top: 20px; /* added by DJ - 04-02-2016 */ } h5 { - font-size: 13px; - font-weight: lighter; + font-size: 16px; + font-weight: bold; + padding-top: 20px; /* added by DJ - 04-02-2016 */ + /* font-size: 13px; + font-weight: lighter;*/ } h6 { - font-size: 11px; - font-weight: lighter; + font-size: 14px; + font-weight: bold; + padding-top: 20px; /* added by DJ - 04-02-2016 */ + /*font-size: 11px; + font-weight: lighter;*/ } h1 small { @@ -6374,7 +6875,7 @@ h4 small { } .breadcrumb { - margin: -5px 0 -5px; + margin: -20px 0 -5px; /* changed from margin: -5px 0 -5px; to prevent breadcrumb overlappingtest - DJ - 02-02-2016 */ } @@ -6398,6 +6899,25 @@ hr { border-bottom: 1px solid white; } +/* +.hrt { + margin: 15px 0; + border: 0; + border-top: 5px solid #000000; + + border-bottom: 1px solid white; +} +*/ + +.section-header { +margin: 15px 0; +margin-top: auto; + border: 0; + border-top: 5px solid #000000; + border-bottom: 1px solid white; +} + + .cleaner { clear:both; font-size:10%; @@ -6407,7 +6927,7 @@ hr { /*Gradients for headers etc*/ .style-1-gradient, .style-2-gradient, .style-3-gradient { -background:rgb(0,109,60); +background:rgb(0,109,60); /* background:rgb(16,149,45); Changed colour to actual wcc green DJ */ /* Removed gradients for redesign DJ 13/06/2014 background:-moz-linear-gradient(top, rgb(16,149,45) 0%, rgb(0,109,60) 100%); @@ -6433,13 +6953,13 @@ filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#708799', endC } .style-5-gradient { -background:rgb(68,68,68); +background:rgb(68,68,68); /* Removed gradients for redesign DJ 13/06/2014 -background:-moz-linear-gradient(top, rgb(102,102,102) 0%, rgb(68,68,68) 100%); -background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(102,102,102)), color-stop(100%,rgb(68,68,68))); -background:-webkit-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); -background:-o-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); -background:-ms-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); +background:-moz-linear-gradient(top, rgb(102,102,102) 0%, rgb(68,68,68) 100%); +background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(102,102,102)), color-stop(100%,rgb(68,68,68))); +background:-webkit-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); +background:-o-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); +background:-ms-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); background:linear-gradient(to bottom, rgb(102,102,102) 0%,rgb(68,68,68) 100%); filter:progid:DXImageTransform.Microsoft.gradient( startColorstr @@ -6647,112 +7167,137 @@ background: url(images/icon-email.png) no-repeat center left; display:inline-block; } +/*Adds print icon to print page link across theme */ +a[href*="window.print()"] { +padding-left: 1.563em; +background: url(images/icon-print.png) no-repeat center left; +display:inline-block; +} + +/* Removig webmail.nsf icon in preparation for new feedback system roll out a[href*="webmailf.nsf"] { padding-left: 1.563em; background: url(images/icon-email.png) no-repeat center left; display:inline-block; -} +} */ a.exclude-link-img { padding-left:0; background-image:none; } -/*Floats on wp image align class*/ +/*Floats on wp image align class*/ -img.alignright { - float: right; - margin-left:1em; - margin-bottom:1em; -} +img.alignright { + float: right; + margin-left:1em; + margin-bottom:1em; +} -img.alignleft { - float: left; - margin-right:1em; - margin-bottom:1em; +img.alignleft { + float: left; + margin-right:1em; + margin-bottom:1em; } /* Hiding when a page was last updated */ -p.modified {display: none;} +p.modified {display: none;} + + +p.print-page { +color: white; +text-align: left; +} + + +/*Skip to main navigation link for accesibility */ + +#skiptomain { + height: 1px; + width: 1px; + position: absolute; + overflow: hidden; + top: -10px; +} /*site Themes*/ -.style-1 h1.entry-title, .style-1 .span4 h3.widget-title{ - background: rgb(249,255,248); - /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ - background: -moz-linear-gradient(top, #10952D 0%, #006D3C 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#10952D), color-stop(100%,#006D3C)); - background: -webkit-linear-gradient(top, #10952D 0%,#006D3C 100%); - background: -o-linear-gradient(top, #10952D 0%,#006D3C 100%); - background: -ms-linear-gradient(top, #10952D 0%,#006D3C 100%); - background: linear-gradient(to bottom, #10952D 0%,#006D3C 100%); - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#10952d', endColorstr='#006d3c',GradientType=0 ); +.style-1 h1.entry-title, .style-1 .span4 h3.widget-title{ + background: rgb(249,255,248); + /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ + background: -moz-linear-gradient(top, #10952D 0%, #006D3C 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#10952D), color-stop(100%,#006D3C)); + background: -webkit-linear-gradient(top, #10952D 0%,#006D3C 100%); + background: -o-linear-gradient(top, #10952D 0%,#006D3C 100%); + background: -ms-linear-gradient(top, #10952D 0%,#006D3C 100%); + background: linear-gradient(to bottom, #10952D 0%,#006D3C 100%); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#10952d', endColorstr='#006d3c',GradientType=0 ); color: white; */ - border: solid; border-color: #006D3C; border-width: 2px; border-top: none; border-left: none; border-right: none; -} - -.style-2 h1.entry-title, .style-2 .span4 h3.widget-title{ - background: #10952D; - /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ - background: -moz-linear-gradient(top, #10952D 0%, #006D3C 100%); - background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#10952D), color-stop(100%,#006D3C)); - background: -webkit-linear-gradient(top, #10952D 0%,#006D3C 100%); - background: -o-linear-gradient(top, #10952D 0%,#006D3C 100%); - background: -ms-linear-gradient(top, #10952D 0%,#006D3C 100%); - background: linear-gradient(to bottom, #10952D 0%,#006D3C 100%); - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#10952d', endColorstr='#006d3c',GradientType=0 ); + border: none; /* changed from solid DJ - 14-01-2016 */ border-color: #006D3C; border-width: 2px; border-top: none; border-left: none; border-right: none; +} + +.style-2 h1.entry-title, .style-2 .span4 h3.widget-title{ + background: #10952D; + /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ + background: -moz-linear-gradient(top, #10952D 0%, #006D3C 100%); + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#10952D), color-stop(100%,#006D3C)); + background: -webkit-linear-gradient(top, #10952D 0%,#006D3C 100%); + background: -o-linear-gradient(top, #10952D 0%,#006D3C 100%); + background: -ms-linear-gradient(top, #10952D 0%,#006D3C 100%); + background: linear-gradient(to bottom, #10952D 0%,#006D3C 100%); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#10952d', endColorstr='#006d3c',GradientType=0 ); color: white; */ - border: solid; border-color: #0055A1; border-width: 2px; border-top: none; border-left: none; border-right: none; -} - -.style-3 h1.entry-title, .style-3 .span4 h3.widget-title{ - background: rgb(249,255,248); - /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ - background:-moz-linear-gradient(top, rgb(112,135,153) 0%, rgb(72,85,94) 100%); - background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(112,135,153)), color-stop(100%,rgb(72,85,94))); - background:-webkit-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); - background:-o-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); - background:-ms-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); - - background:linear-gradient(to bottom, rgb(112,135,153) 0%,rgb(72,85,94) 100%); - filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#708799', endColorstr='#48555e',GradientType=0 ); + border: none; border-color: #0055A1; border-width: 2px; border-top: none; border-left: none; border-right: none; +} + +.style-3 h1.entry-title, .style-3 .span4 h3.widget-title{ + background: rgb(249,255,248); + /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ + background:-moz-linear-gradient(top, rgb(112,135,153) 0%, rgb(72,85,94) 100%); + background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(112,135,153)), color-stop(100%,rgb(72,85,94))); + background:-webkit-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); + background:-o-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); + background:-ms-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); + + background:linear-gradient(to bottom, rgb(112,135,153) 0%,rgb(72,85,94) 100%); + filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#708799', endColorstr='#48555e',GradientType=0 ); color: white; */ - border: solid; border-color: #0055A1; border-width: 2px; border-top: none; border-left: none; border-right: none; -} - -.style-4 h1.entry-title, .style-4 .span4 h3.widget-title{ - background: rgb(249,255,248); - /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ - background:-moz-linear-gradient(top, rgb(112,135,153) 0%, rgb(72,85,94) 100%); - background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(112,135,153)), color-stop(100%,rgb(72,85,94))); - background:-webkit-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); - background:-o-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); - background:-ms-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); - - background:linear-gradient(to bottom, rgb(112,135,153) 0%,rgb(72,85,94) 100%); - filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#708799', endColorstr='#48555e',GradientType=0 ); + border: none; /* changed from solid DJ - 14-01-2016 */ border-color: #0055A1; border-width: 2px; border-top: none; border-left: none; border-right: none; +} + +.style-4 h1.entry-title, .style-4 .span4 h3.widget-title{ + background: rgb(249,255,248); + /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ + background:-moz-linear-gradient(top, rgb(112,135,153) 0%, rgb(72,85,94) 100%); + background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(112,135,153)), color-stop(100%,rgb(72,85,94))); + background:-webkit-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); + background:-o-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); + background:-ms-linear-gradient(top, rgb(112,135,153) 0%,rgb(72,85,94) 100%); + + background:linear-gradient(to bottom, rgb(112,135,153) 0%,rgb(72,85,94) 100%); + filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#708799', endColorstr='#48555e',GradientType=0 ); color: white; */ - border: solid; border-color: rgb(112, 135, 153); border-width: 2px; border-top: none; border-left: none; border-right: none; -} - - -.style-5 h1.entry-title, .style-5 .span4 h3.widget-title{ - background: rgb(249,255,248); - /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ - background:-moz-linear-gradient(top, rgb(102,102,102) 0%, rgb(68,68,68) 100%); - background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(102,102,102)), color-stop(100%,rgb(68,68,68))); - background:-webkit-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); - background:-o-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); - background:-ms-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); - background:linear-gradient(to bottom, rgb(102,102,102) 0%,rgb(68,68,68) 100%); - filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#444444',GradientType=0 ); + border: none; /* changed from solid DJ - 14-01-2016 */ border-color: rgb(112, 135, 153); border-width: 2px; border-top: none; border-left: none; border-right: none; +} + + +.style-5 h1.entry-title, .style-5 .span4 h3.widget-title{ + background: rgb(249,255,248); + /* Removed chunky headers for flat design. Changed font colour to black and thined borders below page and widget titles - DJ 16/03/2014/ + background:-moz-linear-gradient(top, rgb(102,102,102) 0%, rgb(68,68,68) 100%); + background:-webkit-gradient(linear, left top, left bottom, color-stop(0%,rgb(102,102,102)), color-stop(100%,rgb(68,68,68))); + background:-webkit-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); + background:-o-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); + background:-ms-linear-gradient(top, rgb(102,102,102) 0%,rgb(68,68,68) 100%); + background:linear-gradient(to bottom, rgb(102,102,102) 0%,rgb(68,68,68) 100%); + filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#444444',GradientType=0 ); color: white; */ - border: solid; border-color: rgb(68, 68, 68); border-width: 2px; border-top: none; border-left: none; border-right: none; -} + border: none; /* changed from solid DJ - 14-01-2016 */ border-color: rgb(68, 68, 68); border-width: 2px; border-top: none; border-left: none; border-right: none; +} -.style-1 .span4 h3.widget-title, .style-2 .span4 h3.widget-title, .style-3 .span4 h3.widget-title, .style-4 .span4 h3.widget-title, .style-5 .span4 h3.widget-title { - font-size:16px; +.style-1 .span4 h2.widget-title, .style-2 .span4 h2.widget-title, .style-3 .span4 h2.widget-title, .style-4 .span4 h2.widget-title, .style-5 .span4 h2.widget-title { + font-size:20px; /* changed from 16px 12-01-2016 - DJ */ line-height:2.1em; } @@ -6760,26 +7305,30 @@ p.modified {display: none;} ****************/ .attachment-portal-summary-image { width: 100%; -top: -16px; -/*top: -21px;*/ +top: -25px; /* changed from -15px DJ - 04-01-2016 */ +/*top: -16px; +top: -21px;*/ position: relative; display: inline; } #portal-page-breadcrumbs { - margin-top: 467px; + margin-top: -50px; /*-32px*/ +/* margin-top: 375px; + margin-top: 467px; */ /* margin-top: 433px; */ - position: absolute; + margin-bottom: 10px; /*27-06-2016 - DJ */ + position: relative; /*absolute*/ z-index: 1000; } #portal-header-wrap { - margin-bottom: 30px; + margin-bottom: -15px; } h1.entry-title-portal { padding: 10px 10px; -top: 180px; +top: -355px; /* changed to reposition header after navbar changes - DJ 16-12-2015 */ font-size: 3.5em; margin-left: 15px; font-weight: lighter; @@ -6787,7 +7336,7 @@ background-color: #000; /* IE 8 */ background-color: rgba(0,0,0,0.65); color: white; margin-bottom: -20px; -position: absolute; +position: relative; /* changed to reposition header after navbar changes - DJ 16-12-2015 */ z-index: 1000; display: inline; } @@ -6795,27 +7344,35 @@ display: inline; @media (min-width: 1024px) and (max-width: 1200px) { #portal-page-breadcrumbs { - margin-top: 374px; + margin-top: 10px; /*-32px */ + /* margin-top: 300px; + margin-top: 374px; */ /*margin-top: 346px;*/ } h1.entry-title-portal { - font-size: 3em; + font-size: 2.8em; + margin-left: 20px; + /* font-size: 3em; */ padding: 5px 10px; - top:180px; + top:100px; position: absolute;} } @media (min-width: 979px) and (max-width: 1024px) { #portal-page-breadcrumbs { - margin-top: 374px; + margin-top: -32px; + /* margin-top: 300px; + margin-top: 374px; */ /*margin-top: 346px;*/ } h1.entry-title-portal { - font-size: 3em; + font-size: 2.8em; + margin-left: 20px; +/* font-size: 3em; */ padding: 5px 10px; - top:180px; + top:100px; position: absolute;} #portal-header-wrap { @@ -6829,16 +7386,18 @@ position: relative;} @media (min-width: 768px) and (max-width: 979px) { #portal-page-breadcrumbs { - margin-top: 287px; + margin-top: -32px; + /* margin-top: 230px; + margin-top: 287px; */ /*margin-top: 261px;*/ } h1.entry-title-portal { padding: 0px 10px;; font-size: 2em; - top: 170px; + top: 80px; position: absolute; - margin-left: 5px;} + margin-left: 20px;} #portal-header-wrap { margin-bottom: 30px; @@ -6856,8 +7415,8 @@ display: none;} h1.entry-title-portal { padding: 0px 10px; -margin-left: 5px; -top: 120px; +margin-left: 20px; +top: 80px; /* top: 205px; */ font-size: 1.8em; position: absolute;} @@ -6872,7 +7431,7 @@ position: relative;} @media (min-width: 513px) and (max-width: 620px) { #portal-header-wrap { - top: -55px; + top: -65px; /*top: -60px;*/ margin-bottom: -60px; padding: 0; @@ -6898,7 +7457,7 @@ display: none;} @media (min-width: 420px) and (max-width: 513px) { #portal-header-wrap { - top: -55px; + top: -65px; /*top: -60px;*/ margin-bottom: -60px; padding: 0; @@ -6925,7 +7484,7 @@ display: none;} @media (max-width: 420px) { #portal-header-wrap { - top: -55px; + top: -65px; /* changed from -55px DJ 05-01-2016 */ /*top: -60px;*/ margin-bottom: -60px; padding: 0; @@ -6934,7 +7493,7 @@ display: none;} position: relative; background-color: rgba(0, 0, 0, 0.65);} - + h1.entry-title-portal { padding: 0px 10px; margin-left: 0; @@ -6955,7 +7514,7 @@ display: none;} h1.entry-title-hero-header { padding: 10px 10px; - top: 180px; + top: -355px; /* changed from 180px when header text changed to realitive - DJ 15/12/2015*/ font-size: 3.5em; margin-left: 15px; font-weight: lighter; @@ -6963,30 +7522,39 @@ h1.entry-title-hero-header { background-color: rgba(0,0,0,0.65); color: white; margin-bottom: -20px; - position: absolute; + position: relative; /* changed from fixed to relative so as to not intefere with cookie message and burger menu */ z-index: 1000; display: inline; } #hero-header-button { - top: -115px; - margin-left: 55px; + top: -130px; /*-115*/ + margin-left: 20px; +/* margin-left: 55px; */ margin-bottom: -60px; padding: 0; position: relative; } - #hero-header-button a { - width: auto;} + /* #hero-header-button a { + width: auto;} */ - #hero-header-breadcrumbs { - margin-top: 463px; + /*#hero-header-breadcrumbs { + /* margin-top: -42px; /*changed from -2px to reduce gap between image and breadcrumb caused by new black bar */ + /*margin-top: -60px; position: absolute; - z-index: 1000;} + z-index: 1000;}*/ + + #hero-header-breadcrumbs { + margin-top: -60px; + /* margin-top: 365px; */ + /* position: absolute; */ + z-index: 1000; +} .attachment-hero-summary-image { width: 100%; - top: -16px; + top: -25px; /* changed from -15, DJ - 05-01-2016 */ /* top: -21px; */ position: relative; display: inline; @@ -6994,80 +7562,94 @@ h1.entry-title-hero-header { @media (min-width: 1024px) and (max-width: 1200px) { #hero-header-breadcrumbs { - margin-top: 370px;} + margin-top: -2px; + /* margin-top: 290px; */} h1.entry-title-hero-header { - padding: 0px 15px;; + /* padding: 0px 15px; */ + padding: 5px 5px; font-size: 2.8em; - top: 170px; + top: 100px; /*170px*/ position: absolute; - margin-left: 5px;} + margin-left: 20px; +/* margin-left: 5px; */} #hero-header-button { - top: -125px; + top: -85px; /*-105*/ margin-bottom: -80px; - margin-left: 40px;} + margin-left: 20px; +/* margin-left: 40px;*/} #hero-header-button a { - /*top: 20px;*/ position: relative; - padding: 13px; + padding: 10px; line-height: 1;} + /* top: 20px; */ } @media (min-width: 979px) and (max-width: 1024px) { #hero-header-button a { top: 20px; position: relative; - padding: 13px; + padding: 10px;; + margin-left: 20px; +/* padding: 13px; */ line-height: 1;} h1.entry-title-hero-header { - padding: 0px 10px;; - font-size: 2em; - top: 170px; + padding: 5px 10px; + font-size: 2.6em; +/* padding: 0px 10px; + font-size: 2em; */ + top: 100px; /*170*/ position: absolute; - margin-left: 5px;} + margin-left: 20px;} #hero-header-button { - top: -145px; - margin-left: 40px; + top: -100px; /*120px*/ +/* top: -145px; */ + margin-left: 10px; +/* margin-left: 40px;*/ margin-bottom: -80px;} #hero-header-button a { width: auto;} #hero-header-breadcrumbs { - margin-top: 370px;} + margin-top: -2px; + /* margin-top: 290px; */} } @media (min-width: 768px) and (max-width: 979px) { h1.entry-title-hero-header { padding: 0px 10px;; font-size: 2em; - top: 170px; + top: 70px; /*170*/ position: absolute; - margin-left: 5px;} + margin-left: 15px;} - #hero-header-button { - top: -80px; - margin-bottom: -20px; + #hero-header-button { + top: -90px; + margin-bottom: -45px; + /* margin-bottom: -20px; */ position: relative; - margin-left: 40px;} + margin-left: 15px; +/* margin-left: 40px; */} - #hero-header-button a { - width: 130%;} + /* #hero-header-button a { + width: 130%;} */ #hero-header-breadcrumbs { - margin-top: 285px;} + margin-top: -2px; + /* margin-top: 222px; */} } @media (min-width: 620px) and (max-width: 767px) { h1.entry-title-hero-header { padding: 0px 10px; - margin-left: 5px; - top: 125px; + margin-left: 20px; + top: 70px; /*125px*/ /* top: 205px; */ font-size: 1.8em; position: absolute;} @@ -7075,13 +7657,17 @@ h1.entry-title-hero-header { #hero-header-button { top: -85px; - margin-bottom: -75px; + /*margin-bottom: -75px;*/ position: relative; margin-left: 20px;} #hero-header-button a { width: auto;} + #hero-header-wrap { +/* margin-bottom: 10px; */ + margin-bottom: -15px;} /* changed from 30px DJ 05-01-2016 */ + #hero-header-breadcrumbs { display: none;} } @@ -7100,9 +7686,10 @@ h1.entry-title-hero-header { background-color: none;} #hero-header-wrap { - top: -55px; - /* top: -60px; */ - margin-bottom: -60px; + top: -65px; /* changed from -55px - DJ - 16-02-2016 */ + /* top: -60px; + margin-bottom: -10px;*/ + margin-bottom: 10px; padding: 0; height: 40px; z-index: 10064; @@ -7114,11 +7701,11 @@ h1.entry-title-hero-header { margin-bottom: 15px; /* margin-bottom: -10px; */ margin-left: 0; - position: relative;} + position: relative;} #hero-header-button a { - width: 92%;} - + margin-top: 5px; /*35*/ + width: 92.5%;} #hero-header-breadcrumbs { display: none;} @@ -7139,9 +7726,10 @@ h1.entry-title-hero-header { background-color: none;} #hero-header-wrap { - top: -55px; - /*top: -60px;*/ - margin-bottom: -60px; + top: -65px; /*-55*/ + /*top: -60px; + margin-bottom: -10px;*/ + margin-bottom: 10px; padding: 0; height: 40px; z-index: 10064; @@ -7153,21 +7741,29 @@ h1.entry-title-hero-header { margin-bottom: 15px; /* margin-bottom: -10px; */ margin-left: 0; - position: relative;} + position: relative;} #hero-header-button a { - width: 90%;} + width: 91%; + margin-top: 5px; /*35px*/ + } #hero-header-breadcrumbs { display: none;} } + @media (max-width: 470px) { + #hero-header-button a { + width: 89%; } + } + @media (max-width: 420px) { #hero-header-wrap { - top: -55px; - /*top: -60px;*/ - margin-bottom: -60px; + top: -65px; /* changed from -55px DJ - 05-01-2016 */ + /*top: -60px; + margin-bottom:10px;*/ + margin-bottom:20px; padding: 0; height: 40px; z-index: 10064; @@ -7186,14 +7782,16 @@ h1.entry-title-hero-header { background-color: none;} #hero-header-button { - top: 7px; + top: -25px; /* changed from 7px to align correctly - DJ - 02-02-2016 */ margin-bottom: 15px; /* margin-bottom: -10px; */ margin-left: 0; - position: relative;} + position: relative;} #hero-header-button a { - width: 88%; + /* width: 88%;*/ + width: 86.5%; + margin-top: 36px; overflow: hidden;} #hero-header-breadcrumbs { @@ -7299,7 +7897,7 @@ position: relative;} @media (min-width: 768px) and (max-width: 979px) { .span4-header-button-mobile { top: -55px; - margin-bottom: -35px; + margin-bottom: -35px; margin-left: 10px !important; position: relative;} } @@ -7348,20 +7946,25 @@ position: relative;} #fostering-11 { background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/03/11-how-do-I-become-foster-carer.png); background-repeat: no-repeat; padding: 10px 0 7px 60px;} #fostering-12 { background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/03/12-foster-carer-training-.png); background-repeat: no-repeat; padding: 10px 0 7px 60px;} -/*Header -****************/ +/*************Header****************/ + +#top-header { + height:10px; + overflow: hidden; + margin-bottom: 10px; +} #top-header .container .span12 .row > .span9{ - height:50px; + height:10px; } /*Navigation bar*/ .navbar { -margin-bottom: 5px;} +margin-bottom: 0px;} /* changed from 5px to 0px when black bar changed to static - DJ 17/11/2015*/ .navbar .nav > li > a { font-weight:normal; -padding:10px 10px 10px; +padding:14px 10px 4px; } .nav-header { @@ -7369,7 +7972,7 @@ color: #6B6B6B; } -.navbar .nav > li > .dropdown-menu:before, .navbar .nav > li > .dropdown-menu:after { +.navbar .nav > li > .dropdown-menu:before, .navbar .nav > li > .dropdown-menu:after { display:none; } @@ -7418,20 +8021,50 @@ margin-right:0px; /**search box*/ + +.navbar #site-search input{ width: 250px; } +.search{display:none;} + #site-search{ - margin: 0; - margin-top:30px; + margin: 0; + margin-top:10px; + +} + +.mobile-search{ + margin-top:15px; + display: none; + } + #site-search.navbar-form input{ font-size: 16px !important; /*Increase text size on search bar - NM 11.06.14 */ - margin-top:0; + margin-top:0; padding: 0 6px; - height:35px; /*height changed for redesign - af 100614*/ - width:350px; /*width changed for redesign - af 100614*/ + height:26px; /*height changed for redesign - af 100614*/ + width:175px; /*width changed for redesign - af 100614*/ /* height:22px; */ } +#site-search.navbar-form .searchbutton { + /* Specific style for search button on the nav bar */ + padding: 0px 4px; + /* padding: 0 6px */ + font-size: 16px; /*button text increased - af 100614*/ + height: 28px; /*button height increased to match bar - af 100614*/ + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; /*border radius increased - af 100614*/ + background-image: none; + background-image: none; + background-image: none; + background-image: none; + background-image: none; /*gradient removed - af 100614*/ +} + + + .searchbutton { /* Specific style for search button on the nav bar */ padding: 0px 4px; @@ -7459,6 +8092,38 @@ margin-right:0px; } } + +/* search box 404 page*/ + +#site-search.site-search-404 input { + font-size: 16px !important; /*Increase text size on search bar - NM 11.06.14 */ + margin-top:0; + margin-right: 5px; + padding: 0 6px; + height:35px; + width: 450px; /* specific size for 404 error page - NM 17.11.14*/ + /* height:22px; */ +} + +.searchbutton-404 { + /* Specific style for search button for 404 error page */ + + padding: 0px 4px; + /* padding: 0 6px */ + font-size: 16px; /*button text increased - af 100614*/ + height: 35px; /*button height increased to match bar - af 100614*/ + -webkit-border-radius: 3px; + -moz-border-radius: 3px; + border-radius: 3px; /*border radius increased - af 100614*/ + background-image: none; + background-image: none; + background-image: none; + background-image: none; + background-image: none; /*gradient removed - af 100614*/ +} + + + /*Can't find class in HTML #header-search { @@ -7473,17 +8138,17 @@ margin-top:0px; /*Mobile header*/ -@media (max-width: 767px) { -#site-tabs ul.nav{ - margin-top:0!important; - margin-left:10px; - margin-right:10px; - margin-bottom:1px; - } +@media (max-width: 767px) { +#site-tabs ul.nav{ + margin-top:0!important; + margin-left:10px; + margin-right:10px; + margin-bottom:1px; + } #logo-wrap{ - padding-top: 5px !important; - padding-bottom: 5px !important; + padding-top: 5px !important; + padding-bottom: 5px !important; } #logo-wrap img { @@ -7526,6 +8191,14 @@ height:auto!important; /*Side bar **********/ +#rss-libraries h4 { + margin-bottom: -22px; +} + +#rss-box-1 h4 { + margin-bottom: -22px; +} + .span4 h3.widget-title { padding-top: 22px; /* Added top padding in to widget area so both page title and widget title bottom border are alighned - NM 16.06.2014 */ padding-left:0; /* Removed right padding from widget title. No longer needed after removing chunky headers - NM 16.06.14 */ @@ -7567,6 +8240,17 @@ padding-right:9px; margin-bottom:20px; } +#contact-details .team-name .hidden-title { + display: none; +} + + +.feedback-details { + margin-top: 0px; /* changed from 110px when contact us heading was removed - DJ - 08-04-2016 */ + margin-bottom: 10px; + text-align: left; /* changed from text-align: center to bring button in line with surrounding content in side widgets - DJ - 20-01-2016 */ +} + #contact-details .tab-content { padding-left:9px; padding-right:9px; @@ -7594,6 +8278,13 @@ line-height:1em; padding:5px; } + +.style-1 .span4 h2.widget-title-contact, .style-2 .span4 h2.widget-title-contact, .style-3 .span4 h2.widget-title-contact, .style-4 .span4 h2.widget-title-contact, .style-5 .span4 h2.widget-title-contact { + /* font-size:20px; /* changed from 16px 12-04-2016 - DJ */ + display: none; + line-height:2.1em; +} + .website-link, .email-link { width: 90%; word-wrap: break-word; @@ -7606,12 +8297,12 @@ width:100%; display:inline; } -/*Break for long words in sidebar addresses*/ -#contact-details div.tab-pain > p { - -ms-word-break: break-all; - word-break: break-all; - word-break: break-word; -} +/*Break for long words in sidebar addresses*/ +#contact-details div.tab-pain > p { + -ms-word-break: break-all; + word-break: break-all; + word-break: break-word; +} /*Footer @@ -7630,13 +8321,13 @@ footer .widget{ footer .widget a { text-decoration: none; - color: white !important; - font-weight: bold; + color: white !important; + font-weight: normal; /* changed from bold to look more like gov uk - DJ - 12-01-2015 */ } -footer .widget a:hover { +footer .widget a:hover { color:white !important; - text-decoration: underline; + text-decoration: underline; } .style-1 > footer { @@ -7659,7 +8350,7 @@ footer .widget a:hover { color: white; /* margin: 0 -15px -15px -15px; */ padding-top: 15px; -/* Removed gradients from footer - NM 13.06.14 +/* Removed gradients from footer - NM 13.06.14 background: -webkit-gradient(linear, left top, left bottom, from(#0B8931), to(#006D3C)); background: -moz-linear-gradient(top, #0B8931, #006D3C); -webkit-box-shadow: 0em 0em 0.188em #7997A1; @@ -7725,7 +8416,7 @@ margin:5px 0; footer p { color:white; - text-align: center; + text-align: left; /* changed from text-align: center - DJ - 20-01-2016 */ } #footer-logos-bottom .container { @@ -7772,7 +8463,7 @@ footer p { background-image: none; background-image: none; background-image: none; - background-image: none; + background-image: none; background-repeat: no-repeat; display: none; /*Hiding mega menus on desktop for redesign - NM 5.8.2014 */ } @@ -7886,7 +8577,7 @@ padding-bottom:3px; width:50%; margin:0; } - + #mega-menu .dropdown-menu .top-tasks-top-left ul{ height:150px; } @@ -8088,9 +8779,9 @@ border-radius:5px; @media (max-width: 978px){ /* mega-menu removed on mobile devices af - 100614*/ - #mega-menu-navbar .navbar-inner + #mega-menu-navbar .navbar-inner {display: none;} -} +} .top-tasks-custom-box ul li { font-size:12px; @@ -8168,7 +8859,7 @@ border-radius:5px; .style-1 #super-box, .style-2 #super-box, .style-3 #super-box { height:300px; - margin-bottom:0; + margin-bottom:0; /* Made drop shadow more stubtle to enhance flat design - NM 10.06.14 */ -moz-box-shadow: inset 0px 0px 0px -2px rgba(50, 50, 50, 0.3); -webkit-box-shadow: inset 0px 0px 0px -2px rgba(100, 100, 100, 0.3); @@ -8178,9 +8869,6 @@ border-radius:5px; box-shadow: 0px 2px 8px rgba(100, 100, 100, 0.3); -moz-box-shadow: 0px 2px 8px rgba(100, 100, 100, 0.3); =webkit-box-shadow: 0px 2px 8px rgba(100, 100, 100, 0.3); */ - - - } .style-1 ul#super-menu, .style-3 ul#super-menu{ @@ -8202,19 +8890,20 @@ border-radius:5px; /* border-top: solid 1px #FFFFFF !important; */ } - + .style-1 ul#super-menu li, .style-3 ul#super-menu li, .style-3 ul#super-menu li { padding: 0px; height: 50px; margin-bottom:0; - background: #006D3C; + background: rgb(0, 109, 60); + /* background: #006D3C; background: -moz-linear-gradient(left, #006D3C 39%, #007F41 100%); background: -webkit-gradient(linear, left top, right top, color-stop(39%,#006D3C), color-stop(100%,#007F41)); background: -webkit-linear-gradient(left, #006D3C 39%,#007F41 100%); background: -o-linear-gradient(left, #006D3C 39%,#007F41 100%); background: -ms-linear-gradient(left, #006D3C 39%,#007F41 100%); background: linear-gradient(to right, #006D3C 39%,#007F41 100%); - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#006d3c', endColorstr='#007f41',GradientType=1 ); + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#006d3c', endColorstr='#007f41',GradientType=1 ); */ } .style-1 ul#super-menu li a, .style-3 ul#super-menu li a { @@ -8224,7 +8913,7 @@ border-radius:5px; font-weight:500; color:white; text-decoration:none; - background-image: url(https://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow.png); + /* background-image: url(http://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow.png);*/ background-size:25px 20px; background-repeat:no-repeat; background-position: 130px 15px; @@ -8232,6 +8921,10 @@ border-radius:5px; -webkit-border-radius:0; -moz-border-radius:0; border-radius:0; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + -o-text-overflow: ellipsis; } .style-2 ul#super-menu li a { @@ -8243,7 +8936,7 @@ border-radius:5px; font-weight:500; color:white; text-decoration:none; - background-image: url(https://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png); + background-image: url(http://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png); background-size:25px 20px; background-repeat:no-repeat; background-position: 155px 15px; @@ -8254,32 +8947,33 @@ border-radius:5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; - -o-text-overflow: ellipsis; + -o-text-overflow: ellipsis; } .style-1 ul#super-menu li a:hover, .style-3 ul#super-menu li a:hover{ - background: -moz-linear-gradient(left, #0F7C4B 39%, #0F8E50 100%); /* FF3.6+ */ - background: -moz-linear-gradient(left, #0F7C4B 39%, #0F8E50 100%); /* FF3.6+ */ - background: -webkit-gradient(linear, left top, right top, color-stop(39%,#0F7C4B), color-stop(100%,#0F8E50)); /* Chrome,Safari4+ */ - background: -webkit-linear-gradient(left, #0F7C4B 39%,#0F8E50 100%); /* Chrome10+,Safari5.1+ */ - background: -o-linear-gradient(left, #0F7C4B 39%,#0F8E50 100%); /* Opera 11.10+ */ - background: -ms-linear-gradient(left, #0F7C4B 39%,#0F8E50 100%); /* IE10+ */ - background: linear-gradient(to right, #0F7C4B 39%,#0F8E50 100%); /* W3C */ - filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0F7C4B', endColorstr='#0F8E50',GradientType=1 ); - background-image: url(https://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow.png); + background: rgb(0, 109, 60); +/* background: -moz-linear-gradient(left, #0F7C4B 39%, #0F8E50 100%); /* FF3.6+ */ +/* background: -moz-linear-gradient(left, #0F7C4B 39%, #0F8E50 100%); /* FF3.6+ */ +/* background: -webkit-gradient(linear, left top, right top, color-stop(39%,#0F7C4B), color-stop(100%,#0F8E50)); /* Chrome,Safari4+ */ +/* background: -webkit-linear-gradient(left, #0F7C4B 39%,#0F8E50 100%); /* Chrome10+,Safari5.1+ */ +/* background: -o-linear-gradient(left, #0F7C4B 39%,#0F8E50 100%); /* Opera 11.10+ */ +/* background: -ms-linear-gradient(left, #0F7C4B 39%,#0F8E50 100%); /* IE10+ */ +/* background: linear-gradient(to right, #0F7C4B 39%,#0F8E50 100%); /* W3C */ +/* filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0F7C4B', endColorstr='#0F8E50',GradientType=1 ); +/* background-image: url(http://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow.png); background-size:25px 20px; - background-repeat:no-repeat; - background-position: 130px 15px; + background-position: 130px 15px;*/ + /* background-repeat:no-repeat; */ + } .style-2 ul#super-menu li a:hover { background: rgb(0, 85, 161); - background-image: url(https://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png); + /* background-image: url(http://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png);*/ background-repeat: no-repeat; background-size:25px 20px; background-position: 155px 15px; /* border-bottom: solid 1px #FFFFFF; */ - } @@ -8287,7 +8981,8 @@ border-radius:5px; color:#006D3C; background-color: #F2F5F2; background: #F2F5F2; - background-image: url(https://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png); + background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/menu-arrow1.png); + /* background-image: url(http://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png); */ background-size: 25px 20px; background-repeat: no-repeat; background-position: 130px 15px; @@ -8296,7 +8991,7 @@ border-radius:5px; .style-2 ul#super-menu li.active a { color:#0055A1; background-color: #F2F5F2; - background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/menu-arrow4.png); + background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/menu-arrow2.png); background-size: 25px 20px; background-repeat: no-repeat; background-position: 155px 15px; @@ -8318,30 +9013,29 @@ color:#fff; height:300px; } -@media (min-width: 1200px) { + .style-1 ul#super-menu, .style-2 ul#super-menu, .style-3 ul#super-menu, .style-5 ul#super-menu{ - width:190px; + width:190px; } + .style-1 ul#super-menu li.active a, .style-3 ul#super-menu li.active a, -.style-1 ul#super-menu li a, .style-2 ul#super-menu li a, +.style-1 ul#super-menu li a, .style-2 ul#super-menu li a, .style-3 ul#super-menu li a, .style-1 ul#super-menu li a:hover, .style-2 ul#super-menu li a:hover, .style-3 ul#super-menu li a:hover{ background-position: 155px 15px;} -} -@media (min-width: 768px) and (max-width: 979px) { +@media (min-width: 979px) and (max-width: 1200px) {} +@media (min-width: 768px) and (max-width: 979px) { .style-1 ul#super-menu, .style-2 ul#super-menu, .style-3 ul#super-menu, .style-5 ul#super-menu{ width:160px;} } - + @media (max-width: 767px) { .style-1 ul#super-menu, .style-2 ul#super-menu, .style-3 ul#super-menu, .style-5 ul#super-menu{ width:125px;} .style-1 #super-box, .style-2 #super-box, .style-3 #super-box{ - - margin-bottom: 15px; + margin-bottom: 15px;} } -} - + @media (max-width: 480px) { .style-1 ul#super-menu, .style-2 ul#super-menu, .style-3 ul#super-menu, .style-5 ul#super-menu{ width:190px;} @@ -8350,10 +9044,10 @@ color:#fff; /*Super box slide content*/ #super-box a { -font-size: 16px; -} +font-size: 16px;} -.style-1 #super-box .tab-content,.style-2 #super-box .tab-content, .style-3 #super-box .tab-content, .style-5 #super-box .tab-content{ +.style-1 #super-box .tab-content,.style-2 #super-box .tab-content, .style-3 #super-box .tab-content, .style-4 #super-box .tab-content, .style-5 #super-box .tab-content{ +/* .style-1 #super-box .tab-content,.style-2 #super-box .tab-content, .style-3 #super-box .tab-content, .style-5 #super-box .tab-content{ */ overflow: hidden; height: 100%; margin: 0; @@ -8368,24 +9062,24 @@ font-size: 16px; box-shadow: inset 10px 0px 20px -5px rgba(50, 50, 50, 0.4); */ } -.style-1 .tab-content h4, .style-3 .tab-content h4, .style-3 .tab-content h4, .style-5 .tab-content h4 { +.style-1 .tab-content h4, .style-3 .tab-content h4, .style-3 .tab-content h4, .style-4 .tab-content h4, .style-5 .tab-content h4 { margin:0; margin-bottom:0.75em; + font-size: 18px } -.style-1 .tab-content p, .style-2 .tab-content p, .style-3 .tab-content p, .style-5 .tab-content p{ +.style-1 .tab-content p, .style-2 .tab-content p, .style-3 .tab-content p, .style-4 .tab-content p, .style-5 .tab-content p{ margin:0; margin-bottom:0.75em; } -.style-1 .tab-content ul, .style-2 .tab-content ul, .style-3 .tab-content ul, .style-5 .tab-content ul { +.style-1 .tab-content ul, .style-2 .tab-content ul, .style-3 .tab-content ul, .style-4 .tab-content ul, .style-5 .tab-content ul { padding-left:0; padding-bottom:0; margin:0; - list-style:none; - } + list-style:none;} -.style-1 .tab-content ul li, .style-2 .tab-content ul li, .style-3 .tab-content ul li, .style-5 .tab-content ul li { +.style-1 .tab-content ul li, .style-2 .tab-content ul li, .style-3 .tab-content ul li, .style-4 .tab-content ul li, .style-5 .tab-content ul li { line-height:1.2; margin-bottom:0.6em; } @@ -8396,10 +9090,10 @@ font-size: 16px; .style-1 .tab-content a, .style-3 .tab-content a { color: #006D3C; - text-decoration:none; + text-decoration:underline; /*changed fron none - DJ - 22-02-2016 */ } - -.style-1 .tab-content a:hover, .style-2 .tab-content a:hover, .style-3 .tab-content a:hover{ + +.style-1 .tab-content a:hover, .style-2 .tab-content a:hover, .style-3 .tab-content a:hover, .style-4 .tab-content a:hover{ text-decoration: underline; } @@ -8413,7 +9107,7 @@ font-size: 16px; height:auto; } -.style-1 .tab-content #libraries-nav-search-button, .style-2 .tab-content #libraries-nav-search-button, +.style-1 .tab-content #libraries-nav-search-button, .style-2 .tab-content #libraries-nav-search-button, .style-3 .tab-content #libraries-nav-search-button, .style-5 .tab-content #libraries-nav-search-button { margin:0; } @@ -8421,18 +9115,15 @@ font-size: 16px; /*Super box RSS feeds*/ #super-box li.rssRow > div, #super-box .rss-feed li.rssRow > p { - display:none; -} + display:none;} #super-box .rss-feed h4, #super-box .rss-feed p{ margin-bottom: 0!important; - line-height: 1.1!important; - -} + line-height: 1.1!important;} -/*Super box Style 5*/ +/*Super box Style 4 and Style 5*/ -.style-5 #super-box { +.style-5 #super-box, .style-4 #super-box { height:300px; margin-bottom:0; /* Made drop shadow more stubtle to enhance flat design - NM 10.06.14 */ @@ -8445,7 +9136,7 @@ font-size: 16px; =webkit-box-shadow: 0px 2px 8px rgba(100, 100, 100, 0.3); */ } -.style-5 ul#super-menu{ +.style-5 ul#super-menu { width:160px; height:100%; margin:0; @@ -8453,18 +9144,34 @@ font-size: 16px; background-color: rgb(68, 68, 68); border-right: 0; } - -.style-5 ul#super-menu li{ + +.style-4 ul#super-menu{ + width:160px; + height:100%; + margin:0; + padding:0; + background: rgb(71, 101, 127); + border-right: 0; +} + + .style-5 ul#super-menu li{ padding: 0px; height: 50px; margin-bottom:0; background: rgb(68, 68, 68); } -.style-5 ul#super-menu li a { +.style-4 ul#super-menu li{ + padding: 0px; + height: 50px; + margin-bottom:0; + background: rgb(71, 101, 127); + } + +.style-5 ul#super-menu li a, .style-4 ul#super-menu li a { padding:15px 15px 14px 15px; border:0; - border-bottom: solid 1px #80B280; + border-bottom: solid 1px #FFFFFF; font-weight:500; color:white; text-decoration:none; @@ -8474,19 +9181,23 @@ font-size: 16px; margin:0; -webkit-border-radius:0; -moz-border-radius:0; - border-radius:0; -} + border-radius:0;} -.style-5 ul#super-menu li a:hover{ +.style-5 ul#super-menu li a:hover { background: rgb(68, 68, 68); background-size:25px 20px; background-repeat:no-repeat; - background-position: 130px 15px; -} + background-position: 130px 15px;} -.style-5 ul#super-menu li.active a{ - color:#006D3C; - background-color: #F2F5F2; +.style-4 ul#super-menu li a:hover{ + background: rgb(71, 101, 127); + background-size:25px 20px; + background-repeat:no-repeat; + background-position: 130px 15px;} + + +.style-5 ul#super-menu li.active a, .style-4 ul#super-menu li.active a{ + color:#FFFFFF; background: #F2F5F2; background-size: 25px 20px; background-repeat: no-repeat; @@ -8494,17 +9205,18 @@ font-size: 16px; } @media (min-width: 1200px) { -.style-5 ul#super-menu{ - width:190px; -} -.style-5 ul#super-menu li.active a, .style-5 ul#super-menu li a, .style-5 ul#super-menu li a:hover{ +.style-5 ul#super-menu, .style-4 ul#super-menu{ + width:190px;} + +.style-5 ul#super-menu li.active a, .style-5 ul#super-menu li a, .style-5 ul#super-menu li a:hover, +.style-4 ul#super-menu li.active a, .style-4 ul#super-menu li a, .style-4 ul#super-menu li a:hover{ background-position: 155px 15px;} } /*Super box slide content*/ -.style-5 #super-box .tab-content{ +.style-5 #super-box .tab-content, .style-4 #super-box .tab-content{ overflow: hidden; height: 100%; @@ -8518,55 +9230,64 @@ font-size: 16px; box-shadow: inset 10px 0px 20px -5px rgba(50, 50, 50, 0.4);*/ } -.style-5 .tab-content h4 { +.style-5 .tab-content h4, .style-4 .tab-content h4 { margin:0; margin-bottom:0.75em; } -.style-5 .tab-content p{ +.style-5 .tab-content p, .style-4 .tab-content p{ margin:0; margin-bottom:0.75em; } -.style-5 .tab-content ul { +.style-5 .tab-content ul, .style-4 .tab-content ul { padding-left:0; padding-bottom:0; margin:0; list-style:none; } -.style-5 .tab-content ul li { +.style-5 .tab-content ul li, .style-4 .tab-content ul li { line-height:1.2; margin-bottom:0.6em; } - -.style-5 .tab-content a { - text-decoration:none; +.style-5 .tab-content a, .style-4 .tab-content a { + text-decoration:underline; /* changed from none - DJ - 23-02-2016 */ } -.style-5 .tab-content a:hover{ +.style-5 .tab-content a:hover, style-4 .tab-content a:hover{ text-decoration: underline; } -.style-5 .tab-content form { +.style-5 .tab-content form, .style-4 .tab-content form { height:auto !important; margin:0 0 10px 0; } -.style-5 ul#super-menu li a { +.style-5 ul#super-menu li a:hover, .style-4 ul#super-menu li a:hover { border-bottom: solid 1px #FFFFFF; -background-image: url(https://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png); +/*background-image: url(//www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png);*/ } -.style-5 ul#super-menu li a:hover { -background-image: url(https://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png); + +/*.style-5 ul#super-menu li a:hover, .style-4 ul#super-menu li a:hover { + .style-5 ul#super-menu li a:hover { +background-image: url(http://www.warwickshire.gov.uk/Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/menu-arrow2.png); +}*/ +.style-4 ul#super-menu li.active a{ +background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2014/10/menu-arrow4.png); +color:#666666; } -.style-5 ul#super-menu li.active a { -background-image: url(http://www-int.warwickshire.gov.uk/wp-content/uploads/2013/06/menu-arrow5.png); + +.style-5 ul#super-menu li.active a{ +background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/06/menu-arrow5.png); color:#666666; } -.style-5 .carousel-caption a { + + + +.style-5 .carousel-caption a, .style-4 .carousel-caption a { color:white; } @@ -8602,7 +9323,6 @@ color:white; #super-box .small-text, #super-box .small-text a{ font-size: 12px; line-height: 1.2; - } .style-1 .date-box p, .style-2 .date-box p, .style-3 .date-box p { @@ -8612,7 +9332,7 @@ color:white; } /*report it slide*/ - + #super-box a {font-size: 14px;} #super-box a {font-size: 14px;} #super-box .sb-icon-button a{ font-size: 14px; line-height: 1.2; @@ -8631,7 +9351,7 @@ color:white; .style-1 .sb-icon-button:hover, .style-2 .sb-icon-button:hover, .style-3 .sb-icon-button:hover, .style-1 .sb-icon-button a:hover, .style-2 .sb-icon-button a:hover, .style-3 .sb-icon-button a:hover{ background-color:rgb(200,225,200); } - + .style-1 .sb-icon-button:hover, .style-2 .sb-icon-button:hover, .style-3 .sb-icon-button:hover{ -moz-box-shadow:1px 1px 3px rgba(0,0,0,0.3); -webkit-box-shadow:1px 1px 3px rgba(0,0,0,0.3); @@ -8646,9 +9366,11 @@ color:white; .style-1 .sb-icon-button img, .style-2 .sb-icon-button img, .style-3 .sb-icon-button img { height:auto; - width:100%; +/* width:100%; */ + width: auto; max-height:70px; - max-width:80px; + max-width:70px; +/* max-width:80px; */ } .slide-image { @@ -8657,14 +9379,14 @@ color:white; } .sb-row .form-input{ - height:auto; + height:auto; width:70%; margin-bottom: 10px; } .sb-row .form-label { - width:15%; - display:inline-block; + width:15%; + display:inline-block; } #efaForm p{ @@ -8675,7 +9397,8 @@ color:white; padding:15px 0 0; } -@media (min-width: 768px) and (max-width: 979px) { + +@media (min-width: 768px) and (max-width: 979px) { #super-box a {font-size: 14px;} #sb-twitter-accounts {width:100%!important;} #sb-twitter-list {display:none;} @@ -8683,7 +9406,6 @@ color:white; @media (max-width: 767px) { #sb-twitter-accounts {width:100%!important;} - #sb-twitter-list {display:none;} #super-box a {font-size: 14px;} } @@ -8711,8 +9433,7 @@ ul#super-menu {display:none!important;} /* box-shadow: 0px 2px 8px rgba(100, 100, 100, 0.3); -moz-box-shadow: 0px 2px 8px rgba(100, 100, 100, 0.3); - =webkit-box-shadow: 0px 2px 8px rgba(100, 100, 100, 0.3); */ -} + =webkit-box-shadow: 0px 2px 8px rgba(100, 100, 100, 0.3); */} #nb h2 { position:absolute; @@ -8743,13 +9464,13 @@ line-height:1.2em; color:white; } -.style-1 .carousel-caption h3 a, -.style-3 .carousel-caption h3 a, .style-3 .carousel-caption h3 a, -.style-1 a.carousel-control, .style-1 a.carousel-control:hover, -.style-1 a.carousel-control,.style-1 a.carousel-control:hover, -.style-2 a.carousel-control, .style-2 a.carousel-control:hover, -.style-3 a.carousel-control, .style-3 a.carousel-control:hover, -.style-4 a.carousel-control, .style-4 a.carousel-control:hover, +.style-1 .carousel-caption h3 a, +.style-3 .carousel-caption h3 a, .style-3 .carousel-caption h3 a, +.style-1 a.carousel-control, .style-1 a.carousel-control:hover, +.style-1 a.carousel-control,.style-1 a.carousel-control:hover, +.style-2 a.carousel-control, .style-2 a.carousel-control:hover, +.style-3 a.carousel-control, .style-3 a.carousel-control:hover, +.style-4 a.carousel-control, .style-4 a.carousel-control:hover, .style-5 a.carousel-control, .style-5 a.carousel-control:hover { color:white; text-decoration:none; @@ -8774,11 +9495,10 @@ height: 300px; @media (max-width: 480px){ .carousel-caption { -position: absolute !important; -} +position: absolute !important;} } -/*Feature box style-4*/ +/*Feature box style-4 .style-4 #feature { margin-bottom: 20px; @@ -8793,9 +9513,9 @@ position: absolute !important; .style-4 #super-box { background-color: rgb(71, 101, 127); -/* background-color: #47555E; */ -} - +/* background-color: #47555E; +}*/ + /* .style-4 #super-box .tab-content img { width:100%; } @@ -8807,7 +9527,7 @@ position: absolute !important; .style-4 #super-box .tab-content .feature-links { padding:0; - background-color: black; + background-color: black; bottom: 0; width:100%; } @@ -8848,16 +9568,16 @@ position: absolute !important; } .style-4 #super-box .tab-content ul li { - padding-left: 10px; + padding-left: 10px; padding-right: 10px; } .style-4 #super-box #super-menu { margin-right: 0; margin-bottom: 0; -} +}*/ -/* Style-4 feature box Nav tabs*/ +/* Style-4 feature box Nav tabs .style-4 #super-box .nav-tabs { height: auto; @@ -8866,10 +9586,10 @@ margin-bottom: 0; /* background: #48555E; background: -webkit-gradient(linear, left top, left bottom, from(#708799), to(#48555E)); background: -moz-linear-gradient(top, #708799, #48555E); - background-repeat: repeat-x; */ - -} + background-repeat: repeat-x; +}*/ +/* .style-4 #super-box .nav-tabs li { margin-bottom: 0; width: 275px; @@ -8892,25 +9612,17 @@ margin-bottom: 0; .style-4 #super-box .nav-tabs li a:hover{ background: rgb(65, 93, 117); - /* background: #95A5B0; */ -} + /* background: #95A5B0; +}*/ + -.style-4 #super-box .nav-tabs li.active a{ - background:rgb(84, 121, 150); - /* background: #48555E; */ - border:0; -} .style-4 #super-box .nav-tabs li.active a:hover { - color:white; - border:0; + color: rgb(71, 101, 127); + } -@media (min-width: 1200px) {} -@media (min-width: 979px) and (max-width: 1200px) {} -@media (min-width: 768px) and (max-width: 979px) {} -@media (max-width: 767px) {} /*End of feature box Nav tabs*/ @@ -8931,29 +9643,35 @@ box-shadow: -1px 2px 8px rgba(100, 100, 100, 0.3); } p.job-slide-content { - font-size:16px; + font-size:16px !important; } @media (min-width: 979px) and (max-width: 1200px) { - p.job-slide-content, p.job-slide-content a { - font-size:14px !important; + p.job-slide-content, p.job-slide-content a { + font-size:14px; } img.alignright-slide { - display:none; - } + display:none;} } @media (min-width: 768px) and (max-width: 979px) { - p.job-slide-content, p.job-slide-content a { - font-size:12px !important; -} +.style-1 ul#super-menu li.active a, .style-2 ul#super-menu li.active a, .style-3 ul#super-menu li.active a, + .style-4 ul#super-menu li.active a, .style-5 ul#super-menu li.active a{ +background-image: none;} + + p.job-slide-content, p.job-slide-content a { + font-size:12px !important;} } + @media (max-width: 767px) { - p.job-slide-content, p.job-slide-content a { - font-size:12px !important; -} +.style-1 ul#super-menu li.active a, .style-2 ul#super-menu li.active a, .style-3 ul#super-menu li.active a, + .style-4 ul#super-menu li.active a, .style-5 ul#super-menu li.active a{ +background-image: none;} + + p.job-slide-content, p.job-slide-content a { + font-size:12px !important;} } @@ -8961,9 +9679,9 @@ img.alignright-slide { /*General page content **********************/ .homepage-box p a { - -ms-word-break: break-all; - word-break: break-all; - word-break: break-word; + -ms-word-break: break-all; + word-break: break-all; + word-break: break-word; } .entry-content .tabbable { @@ -8996,23 +9714,30 @@ color:white !important; } article .alert { - margin-top:20px; - margin-bottom:20px; + /* margin-top:-25px;*/ /*changed from margin-top: 20px as the alerts box was too far down teh page - DJ - 17-02-2016 */; + margin-bottom:20px; } -.alert-block{ - color: #0D0D00; +.alert-block { + /*color: #0D0D00; background-color: #FDEFA6; - border-color: #F5DC63; + border-color: #F5DC63;*/ + color: #0D0D00; +background-color: lightgrey; /* changed from #E3D4E7 - DJ - 23-02-2016 */ +border-color: #000000; } .alert-danger, .alert-error { - color: #260102; + /*color: #260102; background-color: #FFD1D1; - border-color: #D95D59; + border-color: #D95D59;*/ +color: #260102; +background-color: #E7E7E7; /* changed DJ - 22-02-2016 */ +border-color: #000000; } + .highlight-style-1{ min-height: 20px; padding: 19px; @@ -9051,7 +9776,7 @@ article .alert { } .style-4 .table th { - background-color: #47657F; + background-color: #47657F; /* background-color: #48565F; */ color:white; } @@ -9066,36 +9791,36 @@ article .alert { } /*Accordions*/ -.accordion-slide-header { - font-size:20px; - margin:0; - background-color: #fafafa; - background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2); - background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2)); - background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2); - background-image: -o-linear-gradient(top, #ffffff, #f2f2f2); - background-image: linear-gradient(to bottom, #ffffff, #f2f2f2); - background-repeat: repeat-x; - border: 1px solid #d4d4d4; - -webkit-border-radius: 4px; - -moz-border-radius: 4px; - border-radius: 4px; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0); - cursor:pointer; - background-image:url('//www.warwickshire.gov.uk/wp-content/uploads/2014/02/down.png'); - background-position:98% 50%; - background-repeat:no-repeat; - margin-left:0; - margin-right:0; +.accordion-slide-header { + font-size:20px; + margin:0; + background-color: #fafafa; + background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2)); + background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2); + background-image: -o-linear-gradient(top, #ffffff, #f2f2f2); + background-image: linear-gradient(to bottom, #ffffff, #f2f2f2); + background-repeat: repeat-x; + border: 1px solid #d4d4d4; + -webkit-border-radius: 4px; + -moz-border-radius: 4px; + border-radius: 4px; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0); + cursor:pointer; + background-image:url('//www.warwickshire.gov.uk/wp-content/uploads/2014/02/down.png'); + background-position:98% 50%; + background-repeat:no-repeat; + margin-left:0; + margin-right:0; padding-top:20px; padding-bottom:20px; -/* padding-top:5px; - padding-bottom:5px; */ - margin-top:0; - margin-bottom:0; - padding-left:10px; - padding-right: 50px; - border-bottom:solid 1px #C3C3C3; +/* padding-top:5px; + padding-bottom:5px; */ + margin-top:0; + margin-bottom:0; + padding-left:10px; + padding-right: 50px; + border-bottom:solid 1px #C3C3C3; width:auto; } @@ -9145,17 +9870,18 @@ article .alert { -moz-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.5); } .google-form { - height:auto !important; + height:auto !important; } /*RSS*/ -.style-1 #secondary .rss-feed, .style-2 #secondary .rss-feed, .style-3 #secondary .rss-feed, + +.style-1 #secondary .rss-feed, .style-2 #secondary .rss-feed, .style-3 #secondary .rss-feed, .style-4 #secondary .rss-feed, .style-5 #secondary .rss-feed { margin-left:0; } -.style-1 #secondary .rss-feed p, .style-2 #secondary .rss-feed p, .style-3 #secondary .rss-feed p, +.style-1 #secondary .rss-feed p, .style-2 #secondary .rss-feed p, .style-3 #secondary .rss-feed p, .style-4 #secondary .rss-feed p, .style-5 #secondary .rss-feed p { margin: 0 0 0 0.5em; padding: 0; @@ -9179,16 +9905,19 @@ article .alert { #secondary .rss-feed .rss-sub { padding-left:9px; padding-right:9px; + } -.style-1 #secondary .rss-feed h4, .style-2 #secondary .rss-feed h4, .style-3 #secondary .rss-feed h4, +.style-1 #secondary .rss-feed h4, .style-2 #secondary .rss-feed h4, .style-3 #secondary .rss-feed h4, .style-4 #secondary .rss-feed h4, .style-5 #secondary .rss-feed h4 { margin-left: 0; + } + .style-1 #secondary .rss-feed h3 { background: #F9FFF8; -/* Removing background and changing font colour on RSS feed boxes on the widget areas for flat design - NM 18.06.14 +/* Removing background and changing font colour on RSS feed boxes on the widget areas for flat design - NM 18.06.14 background: -moz-linear-gradient(top, #10952D 0%, #006D3C 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#10952D), color-stop(100%,#006D3C)); background: -webkit-linear-gradient(top, #10952D 0%,#006D3C 100%); @@ -9204,11 +9933,12 @@ padding-right:9px; border-top: none; border-left: none; border-right: none; + } .style-5 #secondary .rss-feed h3 { background: #F9FFF8; -/* Removing background and changing font colour on RSS feed boxes on the widget areas for flat design - NM 18.06.14 +/* Removing background and changing font colour on RSS feed boxes on the widget areas for flat design - NM 18.06.14 background: -moz-linear-gradient(top, #666 0%, #444 100%); background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#666), color-stop(100%,#444)); background: -webkit-linear-gradient(top, #666 0%,#444 100%); @@ -9246,10 +9976,19 @@ padding-right:9px; /*Buttons *********/ + +/*Contact button for contact details area*/ + +.smallbutton a { +/* .contactbutton a { */ + color: white !important; +text-decoration: none!important; +} + /*Big buttons*/ .big-button { - color:#333; + color:#333; } .style-1 .big-button-wrap, .style-2 .big-button-wrap, .style-3 .big-button-wrap { @@ -9280,7 +10019,7 @@ text-align:center; .btn-big { font-size:200%; - padding:21px 29px; + padding:11px 29px; /*changed from 21 and 29pxto reduce white space- DJ - 20-01-2016 */ margin-bottom: 20px; } @@ -9288,12 +10027,14 @@ text-align:center; margin-bottom:14px; } -.style-1 .btn-big, .style-2 .btn-big, .style-3 .btn-big, .style-4 .btn-big, .style-5 .btn-big, +.style-1 .btn-big, .style-2 .btn-big, .style-3 .btn-big, .style-4 .btn-big, .style-5 .btn-big, .style-1 .btn-large, .style-2 .btn-large, .style-3 .btn-large, .style-4 .btn-large, .style-5 .btn-large { color:white; + text-decoration: none; /* added to remove underline from button - DJ - 20-01-2016 */ + font-size: medium; /* added to reduce size of button font - DJ - 20-01-2016 */ } -.style-1 .btn-big:hover, .style-2 .btn-big:hover, .style-3 .btn-big:hover, .style-4 .btn-big:hover, .style-5 .btn-big:hover, +.style-1 .btn-big:hover, .style-2 .btn-big:hover, .style-3 .btn-big:hover, .style-4 .btn-big:hover, .style-5 .btn-big:hover, .style-1 .btn-large:hover, .style-2 .btn-large:hover, .style-3 .btn-large:hover, .style-4 .btn-large:hover, .style-5 .btn-large:hover { color:white; } @@ -9302,7 +10043,7 @@ text-align:center; text-align: center; margin: 0 auto; display: block; - width: 100%; + width: 100%; } /*Horizontal large buttons*/ @@ -9392,20 +10133,19 @@ text-align:center; /*Button 3 (BLUE)*/ .btn-3 { - color: #FFFFFF; - text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); - background-color: #2D81D6; - *background-color: #0055A1; - background-image: -moz-linear-gradient(top, #2D91ED, #0055A1); - background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#2D91ED), to(#0055A1)); - background-image: -webkit-linear-gradient(top, #2D91ED, #0055A1); - background-image: -o-linear-gradient(top, #2D91ED, #0055A1); - background-image: linear-gradient(to bottom, #2D91ED, #0055A1); - background-repeat: repeat-x; - border-color: #0055A1 #0055A1 #003E69; - border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff308FFF', endColorstr='#ff0055A1', GradientType=0); - filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); + color: #FFFFFF; + text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); + background-color: #0055A1!important; + background-image: -moz-linear-gradient(top, #2D91ED, #0055A1); + background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0055A1!important), to(#0055A1!important)); + background-image: -webkit-linear-gradient(top, #2D91ED, #0055A1); + background-image: -o-linear-gradient(top, #2D91ED, #0055A1); + background-image: linear-gradient(to bottom, #2D91ED, #0055A1); + background-repeat: repeat-x; + border-color: #0055A1 #0055A1 #003E69; + border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff308FFF', endColorstr='#ff0055A1', GradientType=0); + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); } .btn-3:hover, .btn-3:active, .btn-3.active, .btn-3.disabled, .btn-3[disabled] { @@ -9559,10 +10299,65 @@ text-align:center; } -/*Home page specific code +/* New SPP homepage - DJ I'm good at this :)- 21/07/2014*/ +#spphome-staffmembers { +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/spp-staff.png);} +#spphome-jobs{ +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/spp-jobs.png);} +#spphome-partnerships { +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/spp-partnerships.png);} +#spphome-hr { +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/spp-hr.png);} +#spphome-professionals { +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/spp-professionals.png);} +#spphome-schools { +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/spp-schools.png);} + +.style-1 .span6, .style-2 .span6, .style-3 .span6, .style-5 .span6, .style-4 .span6{ + margin-bottom:1.7em; +} + +.style-1 ul.homepage-links a, .style-5 ul.homepage-links a, .home-header a, #super-box .tab-content a, .style-4 ul.homepage-links a{ + font-weight: 500; + text-decoration: none; +} + +.style-1 ul.homepage-links a:hover, .style-2 ul.homepage-links a:hover, .style-3 ul.homepage-links a:hover, .style-4 ul.homepage-links a:hover, .style-5 ul.homepage-links a:hover { + text-decoration: underline; +} + +.style-1 ul.homepage-links a.strong{ + font-weight: 600; +} + +.style-1 ul.homepage-links a img, .style-5 ul.homepage-links a img, .style-4 ul.homepage-links a img { + display: none; +} + +.style-1 ul.homepage-links a.strong, .style-5 ul.homepage-links a.strong, .style-4 ul.homepage-links a.strong{ + font-weight: 600; +} + +@media (max-width: 979px) and (min-width: 768px) { +.style-1 ul.homepage-links, .style-2 ul.homepage-links, .style-3 ul.homepage-links, .style-4 ul.homepage-links { + font-size: 16px; + height: 70px; +} + +.style-4 ul#super-menu{ + width:190px; +} + +.style-4 ul#super-menu li.active a, .style-5 ul#super-menu li a, .style-5 ul#super-menu li a:hover{ + background-position: 155px 15px;} +} + + +/* Generic style for old homepages +Home page specific code *************************/ -/*Home pages*/ +/*Home pages .span3.homepage-box { -webkit-box-shadow: 0px 0px 1px #444444; -moz-box-shadow: 0px 0px 1px #444444; @@ -9575,7 +10370,7 @@ text-align:center; .style-4 .span6.homepage-box ul {background-color:#F9FFF8;} .style-5 .span6.homepage-box ul {background-color:#F9FFF8;} -.span3.homepage-box{ +.span3.homepage-box{ height: 24em; position: relative; display: block; @@ -9626,8 +10421,10 @@ text-align:center; background-position:center right; background-repeat:no-repeat; } +*/ -/*--style-4 Homepage--*/ +/* OLD SPP Homepage +--style-4 Homepage-- .style-4 .span6.homepage-box { -webkit-box-shadow: 0px 0px 1px #444444; @@ -9647,7 +10444,7 @@ text-align:center; -webkit-box-shadow: 0em 0em 0.188em #7997A1; -moz-box-shadow: 0em 0em 0.188em #7997A1; box-shadow: 0em 0em 0.188em #7997A1; */ - background-position: top left; +/* background-position: top left; font-size: 1.3em; margin: 0; padding: 0.7em; @@ -9715,8 +10512,9 @@ text-align:center; } } - -/*--style-5 Homepage--*/ +*/ +/* Old About the Council / Jobs Homepage style / +--style-5 Homepage-- .style-5 .span3.homepage-box, .style-5 .span6.homepage-box-govmetric { -webkit-box-shadow: 0px 0px 1px #444444; @@ -9758,14 +10556,13 @@ text-align:center; border: solid; border-color: #C3C3C3; border-width: 3px; - border-top: none; border-left: none; border-right: none; text-decoration:none; } -.style-5 .span6.homepage-box-govmetric{ +.style-5 .span6.homepage-box-govmetric{ height: 24em; position: relative; display: block; @@ -9775,12 +10572,12 @@ text-align:center; margin-bottom:1em; } -.style-5 .span6.homepage-box-govmetric ul{ +.style-5 .span6.homepage-box-govmetric ul{ margin:0; text-align: center; } -.style-5 .span6.homepage-box-govmetric li{ +.style-5 .span6.homepage-box-govmetric li{ margin-left: 0.5em; margin-right: 0.5em; line-height: 45px; @@ -9871,12 +10668,13 @@ text-align:center; .style-5 .homepage-box > h4 { margin-left: 1em; } +*/ /*--Politician Search form--*/ #my-warwickshire input:focus { box-shadow: 0 0 5px rgba(0,128,0, 1); - -webkit-box-shadow: 0 0 5px rgba(0,128,0, 1); + -webkit-box-shadow: 0 0 5px rgba(0,128,0, 1); -moz-box-shadow: 0 0 5px rgba(0,128,0, 1); } @@ -9919,8 +10717,8 @@ text-align:center; } #politician-search textarea, #politician-search input { - width: 100%; - height: auto; + width: 100%; + height: auto; } @media (min-width: 979px) and (max-width: 1200px) { @@ -9933,7 +10731,7 @@ text-align:center; .homepage-box h4 a:hover {background-image:none;} } -@media (min-width: 768px) and (max-width: 979px) { +@media (min-width: 768px) and (max-width: 979px) { .style-4 .span6.homepage-box, .style-5 .span6.homepage-box,.style-5 .span6.homepage-box-govmetric{height: 32.5em;} .style-4 .span3.homepage-box, .style-5 .span3.homepage-box {height: 35em; font-size: 13px;} .style-4 .span3.homepage-box h5, .style-5 .span3.homepage-box h5 {font-size: 13px;} @@ -9962,28 +10760,31 @@ h3.home-header { font-size: 22px; margin: 0 0 0.3em; padding-left:35px; + padding-top: 0px; /* added to prevent text dropping below icon on home pages - DJ - 05-02-2016 */ background-size:25px 25px; background-repeat:no-repeat; background-position:relative; } -#home-business {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-business-25.png);} -#home-environment {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-environment-25.png);} -#home-health {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-health-25.png);} -#home-libraries {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-libraries-25.png);} -#home-registrations {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-registrations-25.png);} -#home-roads {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-roads-25.png);} -#home-safety {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-safety-25.png);} -#home-schools {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-schools-25.png);} -#home-social {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-social-25.png);} -#home-events {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-events-25.png);} -#home-council {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-council-25.png);} -#home-audience {background-image:url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-accounts-25.png);} +#home-business {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-business.png);} +#home-environment {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-environment.png);} +#home-health {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-health.png);} +#home-libraries {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-libraries.png);} +#home-registrations {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-registrations.png);} +#home-roads {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-roads.png);} +#home-safety {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-safetyandcrime.png);} +#home-schools {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-schools.png);} +#home-social {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-socialcare.png);} +#home-events {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-events.png);} +#home-council {background-image:url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-council.png);} +#home-audience {background-image:url(http://www.warwickshire.gov.uk/wp-content/uploads/2014/10/wd-volunteering.png);} +#home-a-z {background-image:none; margin-left: -1.5em;} .style-1 h3.home-header a, .style-2 h3.home-header a, .style-3 h3.home-header a { color:black; + text-decoration: none; /* added to prevent titles underlining on business homepage 28-01-2016 - DJ */ } ul.homepage-links { @@ -10025,35 +10826,35 @@ ul.homepage-links li, ul.homepage-links li a.strong { /* New corporate homepage image icons */ #corporatehome-democracy { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/democracy.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-democracy.png);} #corporatehome-finance{ -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/finace-suppliers.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-finance.png);} #corporatehome-jobs { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/OtherBusinessServices.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-jobs.png);} #corporatehome-listsanddata { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/list-and-data2.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-lists.png);} #corporatehome-organisation { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/organisation2.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-organisation.png);} #corporatehome-performance { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/performance2.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-performance.png);} #corporatehome-policies { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/policies.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-policies.png);} #corporatehome-projects { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/projects.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-projects.png);} #corporatehome-strategies { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/strategies.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-strategies.png);} #corporatehome-partnerships { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/partnerships4.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/council-partnerships.png);} /* New jobs homepage image icons */ #jobshome-guidance { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/BusinessAdvice.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/jobs-guidance.png);} #jobshome-firerescue{ -background-image: url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-safety-25.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/jobs-firerescue.png);} #jobshome-careers { -background-image: url(http://www.warwickshire.gov.uk//Web/corporate/wccweb.nsf/Links/B6876CFE9798941F80257855005D6E89/$file/hp-icon-business-25.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/jobs-careers.png);} #jobshome-contact { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/jobs-contact.png);} +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/jobs-contact.png);} /*Bespoke page code @@ -10086,12 +10887,13 @@ background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/08/ } p.atoz { - text-align:center; + text-align:left; +/* text-align:center;*/ color:#ccc; } p.atoz a { - margin:4px 2px; + margin:4px 2px; display:inline-block; width:1.25em; height:1.15em; @@ -10120,7 +10922,7 @@ p.atoz a { display:block; } -.style-1 #sb-leftarrow, .style-1 #sb-rightarrow, +.style-1 #sb-leftarrow, .style-1 #sb-rightarrow, .style-3 #sb-leftarrow, .style-3 #sb-rightarrow { display:block; position:absolute; @@ -10155,19 +10957,30 @@ p.atoz a { .style-4 #sb-leftarrow, .style-4 #sb-rightarrow { display:block; position:absolute; + width:20px; + height:20px; + background-color: #c4c9ce; + z-index:200; + padding:140px 0.1em; +} + + +/*.style-4 #sb-leftarrow, .style-4 #sb-rightarrow { + display:block; + position:absolute; z-index:200; padding:5px; background:#ffffff; top: 15px; -} +}*/ #sb-rightarrow { - right:0; + right:0; } #sb-leftarrow { left:0; -} +} .style-1 #super-box, .style-2 #super-box, .style-3 #super-box, .style-4 #super-box, .style-5 #super-box{ position:relative; @@ -10243,28 +11056,28 @@ box-shadow: 0em 0em 0.188em #7997A1 !important; } /* New image icons */ #businesshome-organisations { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/BusinessOrganisations.png); +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/business-support.png); } #businesshome-advice { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/BusinessAdvice.png); +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/business-advice.png); } #businesshome-health { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/BusinessSafety.png); +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/business-healthsafety.png); } #businesshome-other { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/OtherBusinessServices.png); +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/business-other.png); } #businesshome-events { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/businessEvents.png); +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/business-events.png); } #businesshome-grow { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/Growingyourbusiness.png); +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/business-growing.png); } #businesshome-locating { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/Locatingyourbusiness.png); +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/business-locating.png); } #businesshome-start { -background-image: url(http://www.warwickshire.gov.uk/wp-content/uploads/2013/03/StartABusiness.png); +background-image: url(//www.warwickshire.gov.uk/wp-content/uploads/2014/10/business-start.png); } /* business homepage media queries specific for business makes it more flexible and ready for A-Z at later date*/ @media (max-width: 979px) and (min-width: 768px) { @@ -10276,10 +11089,10 @@ width: 95% !important; } } @media (max-width: 1200px) and (min-width:979px) { - .style-1 .span6, .style-2 .span6, .style-3 .span6{ + .style-1 .span6, .style-2 .span6, .style-3 .span6{ margin-bottom:1.7em; -} - +} + .businessspan6 { width: 45% !important; } @@ -10295,7 +11108,8 @@ font-weight: 600; } .style-2 ul.homepage-links a { font-weight: normal; -} +text-decoration: none +} /* changed as part of redesign 14-01-2016*/ .style-2 h1.entry-title, .style-2 .span4 h3.widget-title { background:#F9FFF8; /* changed background colour* as part of redesign 13/06/2014/ @@ -10315,7 +11129,7 @@ filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#2D91ED', endC background:#0055A1; /* Removed gradient for redesign 13/06/2014 DJ/ background:-moz-linear-gradient(bottom, rgba(0, 85, 161, 1) 0%, rgba(45, 145, 237, 1) 100%); -background:-webkit-gradient(linear, left bottom, left top, color-stop(0%,rgba(0, 85, 161, 1)), +background:-webkit-gradient(linear, left bottom, left top, color-stop(0%,rgba(0, 85, 161, 1)), color-stop(100%,rgba(45, 145, 237, 1))); background: -webkit-linear-gradient(bottom, rgba(0, 85, 161, 1) 0%,rgba(45, 145, 237, 1) 100%); background:-o-linear-gradient(bottom, rgba(0, 85, 161, 1) 0%,rgba(45, 145, 237, 1) 100%); @@ -10326,8 +11140,13 @@ filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#2D91ED', endC -.style-2 a, .style-2 .tab-content a { +.style-2 a { color:#0055A1; +text-decoration: underline; /* changed from text-decoration: none; - DJ - 20-01-2016 */ +} +.style-2 .tab-content a { +color:#0055A1; +text-decoration: underline; /* changed from none - DJ - 23-02-2016 */ } .style-2 .container > footer { @@ -10363,6 +11182,29 @@ display:none; /*Style for new navigation pages*/ +/*New style for navigation page mobile and tabled view */ + +.navigation-page-column{ +float: left; +display: block; +margin: 0px; +width: 31%; +padding: 0 1%; +} + +.navigation-more-links { +margin-left:10px; +} + +.navigation-row-three { +margin-left:-30px; +margin-right:0px; +display: block; +height:130px; +} + +/*New styling ends */ + .navigation-page-row /* .nav-row */ { margin-top:10px; @@ -10406,7 +11248,8 @@ padding-left:5px; font-weight:lighter; margin:-60px 30px 5px 70px; padding-top:2px; -line-height:22px; +line-height:25px; /* changed from 22px to prevent overlapping when title goes onto 2 lines - DJ - 01-02-2016 */ +font-size: 25px; } .navigation-page-description @@ -10434,10 +11277,15 @@ div.clickable a { height:100%; top:0; left:0; + text-decoration: none !important; /* text decoration added to prevent underlining on nav boxes - DJ - 20-01-2016 */ } @media (max-width: 979px) { +.navigation-page-title { + font-size: 20px; +} + .navigation-page-description { /*text-overflow: ellipsis; height:150px; @@ -10457,12 +11305,63 @@ margin-left: 20px; } + +/*New mobile styling for navigation page on mobile and tablet */ +@media (max-width: 750px) { + +.navigation-page-icon { +display:block; +margin-left: auto; +margin-right: auto; +padding-top:5px; +padding-left:0px; +} + +.navigation-row-three h3 { +font-size:15px; +padding-top:5px; +padding-bottom:10px; +line-height: 16px; +text-align: center; +} + +.navigation-page-title { +font-size:15px; +padding-bottom:5px; +line-height: 16px; +display:block; +margin-left: auto; +margin-right: auto; +margin-top:5px; +} + +.navigation-row-three { +padding-top:20px; +margin-bottom:50px; +margin-left:0px !important; +margin-right:0px; +height: 70px; +} + + +/*End of new styling */ + @media (max-width: 767px) { .navigation-page-title { margin-right:0px; padding-top:20px; -font-size:20px; +font-size:15px; /* changed from20px to prevent overlapping - DJ - 03-02-2016 */ +text-align: center; +} + +/* Addded to prevent section header overlapping nav icon text */ +.section-header { +margin: 15px 0; +margin-top: 80px; + border: 0; + border-top: 5px solid #000000; + border-bottom: 1px solid white; } .navigation-page-description { @@ -10498,6 +11397,22 @@ margin-left:0px; font-size:20px;} } +/*media query added to reduce heading size on mobil devices - DJ 04-02-2016 */ +@media (max-width: 480px) { +h1.entry-title { +font-size:34px; +font-weight: bold; +} +h2 { + font-size: 32px; +} +h1 { + font-size: 34px; + font-weight:bold; +} +} + + /* @media (max-width: 767px) { .navigation-page-title { padding-top:5px; @@ -10516,4 +11431,116 @@ font-size:20px;} * http://www.apache.org/licenses/LICENSE-2.0 * * Designed and built with all the love in the world @twitter by @mdo and @fat. + + */ + +/* CSS for sliders */ + +.accordion-slide-header { +padding-top:10px; +padding-bottom:10px; +} + +.accordion-icon { +height:60px; +width:60px; +padding-right:10px; +} + +.tab-image { +width:80px; +height:80px; +} + +.slider-image { +height:auto; +width:100%; +} + +.carousel-caption { +top: 0; +bottom: auto; +margin-top:15px; +margin-left:10px; +max-width:250px; +font-family:impact; +font-size:40px; +font-weight:normal!important; +} + +.intro { +top: 0; +bottom: auto; +margin-top:15px; +margin-left:10px; +max-width:500px; +font-family:helvetica!important; +font-size:14px; +} + +@media (min-width: 1200px) { + +.right-text { +float: right; +width: 300px; +margin-right: 10px; +margin-left: auto; +padding: 20px; +} + +.left-text { +float: right; +width: 300px; +margin-left: 10px; +margin-right: auto; +padding: 20px; +} + +} + +@media (min-width: 981px) and (max-width: 1199px) {} + +@media (min-width: 768px) and (max-width: 980px) {} + +@media (max-width: 767px) { + +.carousel-caption { +position: relative; +background-color: #F9FFF8; +color:#333333; +font-size:24px; +} + +.intro { +top: 0; +bottom: auto; +margin-top:15px; +margin-left:10px; +max-width:500px; +font-family:helvetica!important; +font-size:14px; +} + +} + +@media (max-width: 480px) { + +.carousel-caption { +position: relative!important; +background-color: #F9FFF8; +color:#333333; +font-size:24px; +} + +.intro { +top: 0; +bottom: auto; +margin-top:15px; +margin-left:10px; +max-width:500px; +font-family:helvetica!important; +font-size:14px; +} + +}
\ No newline at end of file diff --git a/web/cobrands/warwickshire/vendor/gamma/venues.css b/web/cobrands/warwickshire/vendor/gamma/venues.css new file mode 100644 index 000000000..ed47a8424 --- /dev/null +++ b/web/cobrands/warwickshire/vendor/gamma/venues.css @@ -0,0 +1,249 @@ +/* + +.venue-title { +font-size:16px; +font-weight: bold; +margin:10px; +line-height:20px; +} + +div.weddings-intro { +margin-bottom:0px; +} + +.title-text { +font-size:15px; +color:white; +background-color:#2b4d42; +position:absolute; +} + +.wedding-nav-large img { +width:auto; +margin:auto; +display:block; +} + +.wedding-nav-small img { +width:auto; +margin:auto; +display:block; +} + +div.wedding-nav-large:hover { +background-color:rgb(200,225,200); +} + +div.wedding-nav-small:hover { +background-color:rgb(200,225,200); +} + +.wedding-nav-large a:hover { +text-decoration:none; +color:black; +} + +.wedding-nav-small a:hover { +text-decoration:none; +color:black; +} + +.desc-text { +padding-bottom:0px; +margin-bottom:0px; +text-decoration: none; +font-weight: lighter; +} + +.venue-text { +padding:10px 10px 10px 10px; +margin:10px; +text-decoration: none; +font-weight: lighter; +} + +@media (min-width: 1200px) { + +.photo-mobile { +display:none !important; +} + +.title-text { +margin-left:25px; +margin-top:-70px; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.desc-text { +margin-left:25px; +margin-right:25px; +padding-bottom:25px; +} + +.venue-photo { +padding-top:15px; +} + +.alt-venue-photo { +padding-top:20px; +} + +} + +@media (min-width: 981px) and (max-width: 1199px) { + +.photo-mobile { +display:none !important; +} + +.wedding-nav-large img { +width:90%; +} + +.wedding-nav-small img { +width:90%; +} + +.title-text { +margin-left:15px; +margin-top:-70px; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.desc-text { +margin-left:15px; +margin-right:15px; +padding-bottom:15px; +} + +.venue-photo { +padding-top:15px; +} + +.alt-venue-photo { +padding-top:15px; +} + +} + +@media (min-width: 768px) and (max-width: 980px) { + +.photo-mobile { +display:none !important; +} + +.wedding-nav-large img { +width:90%; +} + +.wedding-nav-small img { +width:90%; +} + +.title-text { +margin-left:11px; +margin-top:-70px; +padding-left:10px; +padding-right:10px; +padding-top:5px; +padding-bottom:5px; +} + +.desc-text { +margin-left:10px; +margin-right:10px; +padding-bottom:10px; +} + +.venue-photo { +padding-top:10px; +} + +.alt-venue-photo { +padding-top:10px; +} +} + +@media (max-width: 767px) { + +.venue-title h3 { +line-height:20px !important; +} + +.venue-photo img { +padding-top:5px; +display:inline; +max-width:75%; +} + +.photo-mobile { +display:block !important; +padding:5px; +margin-left:0px !important; +} + +.photo-mobile img { +height:60px; +margin-left:0px; +} + +div.wedding-nav-large { +background-color:#C8E1C8; +border-radius:10px; +margin-top:5px; +min-height:60px; +} + +div.wedding-nav-small { +min-height:110px; +} + +.wedding-nav-small img { +height:100px; +display:block; +float:left; +padding:5px; +} + +.title-text { +background-color:#C8E1C8; +font-size:20px; +color:#006D3C; +position:absolute; +margin-left:80px; +margin-top:-56px; +padding-left:0px; +padding-right:0px; +padding-top:0px; +padding-bottom:0px; +} + +.desc-text { +display:none; +} + +.venue-text { +font-size:14px; +} + +.desc-text a:hover{ +color:black; +} + +.alt-venue-photo { +display:none !important; +} + +.navigation-page-row { +margin-top:-5px; +} + +} + +*/
\ No newline at end of file diff --git a/web/i/pin-flat-white-small.png b/web/i/pin-flat-white-small.png Binary files differnew file mode 100644 index 000000000..f01a4e6b9 --- /dev/null +++ b/web/i/pin-flat-white-small.png diff --git a/web/js/dashboard.js b/web/js/dashboard.js index f436b8d18..a6e06e048 100644 --- a/web/js/dashboard.js +++ b/web/js/dashboard.js @@ -1,6 +1,26 @@ $(function(){ Chart.defaults.global.defaultFontSize = 16; + Chart.defaults.global.defaultFontFamily = $('body').css('font-family'); + + var colours = [ + '#FF4343', // red + '#F4A140', // orange + '#FFD000', // yellow + '#62B356', // green + '#4D96E5', // blue + '#B446CA', // purple + '#7B8B98', // gunmetal + '#BCB590', // taupe + '#9C0101', // dark red + '#CA6D00', // dark orange + '#C2A526', // dark yellow + '#1D7710', // dark green + '#1D64B1', // dark blue + '#7A108F', // dark purple + '#3B576E', // dark gunmetal + '#655F3A' // dark taupe + ]; var setUpLabelsForChart = function(chart){ var $parent = $(chart.chart.canvas).parent(); @@ -89,54 +109,142 @@ $(function(){ ); }); - var $allReports = $('#chart-all-reports'), - labels = $allReports.data('labels'), - data0 = $allReports.data('values-reports'), - data1 = $allReports.data('values-fixed'); - window.chartAllReports = new Chart($allReports, { - type: 'line', - data: { - labels: labels, - datasets: [{ - data: data0, - pointRadius: pointRadiusFinalDot(data0.length, 4), - pointBackgroundColor: '#F4A140', - borderColor: '#F4A140' - }, { - data: data1, - pointRadius: pointRadiusFinalDot(data1.length, 4), - pointBackgroundColor: '#62B356', - borderColor: '#62B356' - }] - }, - options: { - animation: { - onComplete: function(){ - setUpLabelsForChart(this); - } - }, - layout: { - padding: { - top: 4 - } + $('#chart-all-reports').each(function(){ + var $allReports = $(this), + labels = $allReports.data('labels'), + data0 = $allReports.data('values-reports'), + data1 = $allReports.data('values-fixed'); + + window.chartAllReports = new Chart($allReports, { + type: 'line', + data: { + labels: labels, + datasets: [{ + data: data0, + pointRadius: pointRadiusFinalDot(data0.length, 4), + pointBackgroundColor: colours[1], + borderColor: colours[1] + }, { + data: data1, + pointRadius: pointRadiusFinalDot(data1.length, 4), + pointBackgroundColor: colours[3], + borderColor: colours[3] + }] }, - scales: { - xAxes: [{ - type: 'category', - gridLines: { - display: false + options: { + animation: { + onComplete: function(){ + setUpLabelsForChart(this); } - }], - yAxes: [{ - type: "linear", - ticks: { - display: false + }, + layout: { + padding: { + top: 4 } + }, + scales: { + xAxes: [{ + type: 'category', + gridLines: { + display: false + } + }], + yAxes: [{ + type: "linear", + ticks: { + display: false + } + }] + }, + onResize: function(chart, size){ + setUpLabelsForChart(chart); + } + } + }); + }); + + $('.js-make-bar-chart').each(function(){ + var $table = $(this); + var $trs = $table.find('tr'); + var $wrapper = $('<div>').addClass('responsive-bar-chart').insertBefore($table); + var $canvas = $('<canvas>').attr({ + 'width': 600, + 'height': 30 * $trs.length + }).appendTo($wrapper); + var rowLabels = []; + var rowValues = []; + + $trs.each(function(){ + rowLabels.push( $(this).find('th').text() ); + rowValues.push( parseInt($(this).find('td').text(), 10) ); + }); + + for (var i=colours.length; i<rowLabels.length; i++) { + colours[i] = colours[i % colours.length]; + } + + var barChart = new Chart($canvas, { + type: 'horizontalBar', + data: { + labels: rowLabels, + datasets: [{ + label: "", + data: rowValues, + backgroundColor: colours }] }, - onResize: function(chart, size){ - setUpLabelsForChart(chart); + options: { + animation: { + onComplete: function(){ + // Label each bar with the numerical value. + var chartInstance = this.chart, + ctx = chartInstance.ctx; + + ctx.font = Chart.helpers.fontString( Chart.defaults.global.defaultFontSize * 0.8, 'bold', Chart.defaults.global.defaultFontFamily); + ctx.textAlign = 'right'; + ctx.textBaseline = 'middle'; + + this.data.datasets.forEach(function (dataset, i) { + var meta = chartInstance.controller.getDatasetMeta(i); + meta.data.forEach(function (bar, index) { + var dataValue = dataset.data[index]; + var width_text = ctx.measureText(dataValue).width; + var width_bar = bar._model.x - bar._model.base; + var gutter = (bar._model.height - (Chart.defaults.global.defaultFontSize * 0.8)) / 2; + var textX; + if (width_text + 2 * gutter > width_bar) { + textX = bar._model.x + 2 * gutter; + ctx.fillStyle = bar._model.backgroundColor; + } else { + textX = bar._model.x - gutter; + ctx.fillStyle = '#fff'; + } + ctx.fillText( dataValue, textX, bar._model.y ); + }); + }); + } + }, + scales: { + xAxes: [{ + gridLines: { + drawBorder: false, + drawTicks: false + }, + ticks: { + beginAtZero: true, + maxTicksLimit: 11, + display: false + } + }], + yAxes: [{ + gridLines: { + display: false + } + }] + } } - } + }); + + $table.hide(); }); }); diff --git a/web/js/front.js b/web/js/front.js new file mode 100644 index 000000000..8471972d4 --- /dev/null +++ b/web/js/front.js @@ -0,0 +1,18 @@ +document.getElementById('pc').focus(); + +(function(){ + var around_forms = document.querySelectorAll('form[action*="around"]'); + for (var i=0; i<around_forms.length; i++) { + var form = around_forms[i]; + var el = document.createElement('input'); + el.type = 'hidden'; + el.name = 'js'; + el.value = 1; + form.insertBefore(el, form.firstChild); + } + var around_links = document.querySelectorAll('a[href*="around"]'); + for (i=0; i<around_links.length; i++) { + var link = around_links[i]; + link.href = link.href + (link.href.indexOf('?') > -1 ? '&js=1' : '?js=1'); + } +})(); diff --git a/web/js/geolocation.js b/web/js/geolocation.js new file mode 100644 index 000000000..3c2cf04df --- /dev/null +++ b/web/js/geolocation.js @@ -0,0 +1,43 @@ +var fixmystreet = fixmystreet || {}; + +fixmystreet.geolocate = function(element, success_callback) { + element.addEventListener('click', function(e) { + var link = this; + e.preventDefault(); + link.className += ' loading'; + navigator.geolocation.getCurrentPosition(function(pos) { + link.className = link.className.replace(/loading/, ' '); + success_callback(pos); + }, function(err) { + link.className = link.className.replace(/loading/, ' '); + if (err.code === 1) { // User said no + link.innerHTML = translation_strings.geolocation_declined; + } else if (err.code === 2) { // No position + link.innerHTML = translation_strings.geolocation_no_position; + } else if (err.code === 3) { // Too long + link.innerHTML = translation_strings.geolocation_no_result; + } else { // Unknown + link.innerHTML = translation_strings.geolocation_unknown; + } + }, { + enableHighAccuracy: true, + timeout: 10000 + }); + }); +}; + +(function(){ + var link = document.getElementById('geolocate_link'); + if (!link) { return; } + var https = window.location.protocol.toLowerCase() === 'https:'; + if ('geolocation' in navigator && https) { + fixmystreet.geolocate(link, function(pos) { + var latitude = pos.coords.latitude.toFixed(6); + var longitude = pos.coords.longitude.toFixed(6); + var coords = 'latitude=' + latitude + ';longitude=' + longitude; + location.href = link.href + (link.href.indexOf('?') > -1 ? ';' : '?') + coords; + }); + } else { + link.style.display = 'none'; + } +})(); diff --git a/web/js/jquery.fixedthead.js b/web/js/jquery.fixedthead.js deleted file mode 100644 index 33e60f721..000000000 --- a/web/js/jquery.fixedthead.js +++ /dev/null @@ -1,81 +0,0 @@ -/* - * jQuery.fixedThead.js - * By Zarino at mySociety - */ - -(function ($) { - - // Call this on a <thead> element and it'll be given a class - // of '.js-fixed-thead__clone' when you scroll down. eg: - // $('#my-table thead').fixedThead() - // - // You'll probably want to specify some CSS styles like: - // .js-fixed-thead__clone { position: fixed; background: #fff; } - - $.fn.fixedThead = function() { - - var calculateCloneDimensions = function calculateCloneDimensions($originalThead, $cloneThead){ - $cloneThead.css({ - width: $originalThead.width() - }); - - $('tr', $originalThead).each(function(tr_index, tr){ - $('th', tr).each(function(th_index, th){ - $cloneThead.find('tr:eq(' + tr_index + ') th:eq(' + th_index + ')').css({ - width: $(th).width() - }); - }); - }); - } - - var showOrHideClone = function showOrHideClone($table, $originalThead, $cloneThead){ - var bounds = $table[0].getBoundingClientRect(); - - // First we detect whether *any* of the table is visible, - // then, if it is, we position the fixed thead so that it - // never extends outside of the table bounds even when the - // visible portion of the table is shorter than the thead. - - if(bounds.top <= 0 && bounds.bottom >= 0){ - $cloneThead.css('display', $originalThead.css('display')); - - var rowHeight = $cloneThead.outerHeight(); - if(bounds.bottom < rowHeight){ - $cloneThead.css({ - top: (rowHeight - bounds.bottom) * -1 - }); - } else { - $cloneThead.css({ - top: 0 - }); - } - - } else { - $cloneThead.css('display', 'none'); - } - } - - return this.each(function() { - var $originalThead = $(this); - var $table = $originalThead.parent('table'); - var $cloneThead = $originalThead.clone().addClass('js-fixed-thead__clone'); - - $cloneThead.insertAfter($originalThead); - $cloneThead.css('display', 'none'); - - calculateCloneDimensions($originalThead, $cloneThead); - showOrHideClone($table, $originalThead, $cloneThead); - - $(window).resize(function(){ - calculateCloneDimensions($originalThead, $cloneThead); - showOrHideClone($table, $originalThead, $cloneThead); - }); - - $(window).scroll(function(){ - showOrHideClone($table, $originalThead, $cloneThead); - }); - }); - - }; - -}(jQuery)); diff --git a/web/js/jquery.multi-select.js b/web/js/jquery.multi-select.js deleted file mode 100644 index 38921b147..000000000 --- a/web/js/jquery.multi-select.js +++ /dev/null @@ -1,334 +0,0 @@ -// jquery.multi-select.js -// by mySociety -// https://github.com/mysociety/jquery-multi-select - -(function($) { - - var pluginName = "multiSelect", - defaults = { - containerHTML: '<div class="multi-select-container">', - menuHTML: '<div class="multi-select-menu">', - buttonHTML: '<span class="multi-select-button">', - menuItemsHTML: '<div class="multi-select-menuitems">', - menuItemHTML: '<label class="multi-select-menuitem">', - presetsHTML: '<div class="multi-select-presets">', - activeClass: 'multi-select-container--open', - noneText: '-- Select --', - allText: undefined, - presets: undefined, - positionedMenuClass: 'multi-select-container--positioned', - positionMenuWithin: undefined - }; - - function Plugin(element, options) { - this.element = element; - this.$element = $(element); - this.settings = $.extend( {}, defaults, options ); - this._defaults = defaults; - this._name = pluginName; - this.init(); - } - - function arraysAreEqual(array1, array2) { - if ( array1.length != array2.length ){ - return false; - } - - array1.sort(); - array2.sort(); - - for ( var i = 0; i < array1.length; i++ ){ - if ( array1[i] !== array2[i] ){ - return false; - } - } - - return true; - } - - $.extend(Plugin.prototype, { - - init: function() { - this.checkSuitableInput(); - this.findLabels(); - this.constructContainer(); - this.constructButton(); - this.constructMenu(); - - this.setUpBodyClickListener(); - this.setUpLabelsClickListener(); - - this.$element.hide(); - }, - - checkSuitableInput: function(text) { - if ( this.$element.is('select[multiple]') === false ) { - throw new Error('$.multiSelect only works on <select multiple> elements'); - } - }, - - findLabels: function() { - this.$labels = $('label[for="' + this.$element.attr('id') + '"]'); - }, - - constructContainer: function() { - this.$container = $(this.settings.containerHTML); - this.$element.data('multi-select-container', this.$container); - this.$container.insertAfter(this.$element); - }, - - constructButton: function() { - var _this = this; - this.$button = $(this.settings.buttonHTML); - this.$button.attr({ - 'role': 'button', - 'aria-haspopup': 'true', - 'tabindex': 0, - 'aria-label': this.$labels.eq(0).text() - }) - .on('keydown.multiselect', function(e) { - var key = e.which; - var returnKey = 13; - var spaceKey = 32; - if ((key === returnKey) || (key === spaceKey)) { - _this.$button.click(); - } - }).on('click.multiselect', function(e) { - _this.menuToggle(); - }) - .appendTo(this.$container); - - this.$element.on('change.multiselect', function() { - _this.updateButtonContents(); - }); - - this.updateButtonContents(); - }, - - updateButtonContents: function() { - var _this = this; - var options = []; - var selected = []; - - this.$element.children('option').each(function() { - var text = $(this).text(); - options.push(text); - if ($(this).is(':selected')) { - selected.push( $.trim(text) ); - } - }); - - this.$button.empty(); - - if (selected.length === 0) { - this.$button.text( this.settings.noneText ); - } else if ( (selected.length === options.length) && this.settings.allText) { - this.$button.text( this.settings.allText ); - } else { - this.$button.text( selected.join(', ') ); - } - }, - - constructMenu: function() { - var _this = this; - - this.$menu = $(this.settings.menuHTML); - this.$menu.attr({ - 'role': 'menu' - }).on('keyup.multiselect', function(e){ - var key = e.which; - var escapeKey = 27; - if (key === escapeKey) { - _this.menuHide(); - } - }) - .appendTo(this.$container); - - this.constructMenuItems(); - - if ( this.settings.presets ) { - this.constructPresets(); - } - }, - - constructMenuItems: function() { - var _this = this; - - this.$menuItems = $(this.settings.menuItemsHTML); - this.$menu.append(this.$menuItems); - - this.$element.on('change.multiselect', function(e, internal) { - // Don't need to update the menu items if this - // change event was fired by our tickbox handler. - if(internal !== true){ - _this.updateMenuItems(); - } - }); - - this.updateMenuItems(); - }, - - updateMenuItems: function() { - var _this = this; - this.$menuItems.empty(); - - this.$element.children('option').each(function(option_index, option) { - var $item = _this.constructMenuItem($(option), option_index); - _this.$menuItems.append($item); - }); - }, - - constructPresets: function() { - var _this = this; - this.$presets = $(this.settings.presetsHTML); - this.$menu.prepend(this.$presets); - - $.each(this.settings.presets, function(i, preset){ - var unique_id = _this.$element.attr('name') + '_preset_' + i; - var $item = $(_this.settings.menuItemHTML) - .attr({ - 'for': unique_id, - 'role': 'menuitem' - }) - .text(' ' + preset.name) - .appendTo(_this.$presets); - - var $input = $('<input>') - .attr({ - 'type': 'radio', - 'name': _this.$element.attr('name') + '_presets', - 'id': unique_id - }) - .prependTo($item); - - $input.on('change.multiselect', function(){ - _this.$element.val(preset.options); - _this.$element.trigger('change'); - }); - }); - - this.$element.on('change.multiselect', function() { - _this.updatePresets(); - }); - - this.updatePresets(); - }, - - updatePresets: function() { - var _this = this; - - $.each(this.settings.presets, function(i, preset){ - var unique_id = _this.$element.attr('name') + '_preset_' + i; - var $input = _this.$presets.find('#' + unique_id); - - if ( arraysAreEqual(preset.options || [], _this.$element.val() || []) ){ - $input.prop('checked', true); - } else { - $input.prop('checked', false); - } - }); - }, - - constructMenuItem: function($option, option_index) { - var unique_id = this.$element.attr('name') + '_' + option_index; - var $item = $(this.settings.menuItemHTML) - .attr({ - 'for': unique_id, - 'role': 'menuitem' - }) - .text(' ' + $option.text()); - - var $input = $('<input>') - .attr({ - 'type': 'checkbox', - 'id': unique_id, - 'value': $option.val() - }) - .prependTo($item); - - if ( $option.is(':disabled') ) { - $input.attr('disabled', 'disabled'); - } - if ( $option.is(':selected') ) { - $input.prop('checked', 'checked'); - } - - $input.on('change.multiselect', function() { - if ($(this).prop('checked')) { - $option.prop('selected', true); - } else { - $option.prop('selected', false); - } - - // .prop() on its own doesn't generate a change event. - // Other plugins might want to do stuff onChange. - $option.trigger('change', [true]); - }); - - return $item; - }, - - setUpBodyClickListener: function() { - var _this = this; - - // Hide the $menu when you click outside of it. - $('html').on('click.multiselect', function(){ - _this.menuHide(); - }); - - // Stop click events from inside the $button or $menu from - // bubbling up to the body and closing the menu! - this.$container.on('click.multiselect', function(e){ - e.stopPropagation(); - }); - }, - - setUpLabelsClickListener: function() { - var _this = this; - this.$labels.on('click.multiselect', function(e) { - e.preventDefault(); - e.stopPropagation(); - _this.menuToggle(); - }); - }, - - menuShow: function() { - this.$container.addClass(this.settings.activeClass); - if (this.settings.positionMenuWithin && this.settings.positionMenuWithin instanceof $) { - var menuLeftEdge = this.$menu.offset().left + this.$menu.outerWidth(); - var withinLeftEdge = this.settings.positionMenuWithin.offset().left + - this.settings.positionMenuWithin.outerWidth(); - - if( menuLeftEdge > withinLeftEdge ) { - this.$menu.css( 'width', (withinLeftEdge - this.$menu.offset().left) ); - this.$container.addClass(this.settings.positionedMenuClass); - } - } - }, - - menuHide: function() { - this.$container.removeClass(this.settings.activeClass); - this.$container.removeClass(this.settings.positionedMenuClass); - this.$menu.css('width', 'auto'); - }, - - menuToggle: function() { - if ( this.$container.hasClass(this.settings.activeClass) ) { - this.menuHide(); - } else { - this.menuShow(); - } - } - - }); - - $.fn[ pluginName ] = function(options) { - return this.each(function() { - if ( !$.data(this, "plugin_" + pluginName) ) { - $.data(this, "plugin_" + pluginName, - new Plugin(this, options) ); - } - }); - }; - -})(jQuery); diff --git a/web/js/map-OpenLayers.js b/web/js/map-OpenLayers.js index 8cc2e8e2c..31f5f49d8 100644 --- a/web/js/map-OpenLayers.js +++ b/web/js/map-OpenLayers.js @@ -1,5 +1,23 @@ var fixmystreet = fixmystreet || {}; +fixmystreet.utils = fixmystreet.utils || {}; + +$.extend(fixmystreet.utils, { + parse_query_string: function() { + var qs = {}; + if (!location.search) { + return qs; + } + location.search.substring(1).split(/[;&]/).forEach(function(i) { + var s = i.split('='), + k = s[0], + v = s[1] && decodeURIComponent(s[1].replace(/\+/g, ' ')); + qs[k] = v; + }); + return qs; + } +}); + (function() { fixmystreet.maps = fixmystreet.maps || {}; @@ -282,7 +300,7 @@ var fixmystreet = fixmystreet || {}; if (!location.search) { return qs; } - location.search.substring(1).split('&').forEach(function(i) { + location.search.substring(1).split(/[&;]/).forEach(function(i) { var s = i.split('='), k = s[0], v = s[1] && decodeURIComponent(s[1].replace(/\+/g, ' ')); @@ -301,15 +319,7 @@ var fixmystreet = fixmystreet || {}; return value; } - function categories_or_status_changed_history() { - if (!('pushState' in history)) { - return; - } - var qs = parse_query_string(); - var filter_categories = replace_query_parameter(qs, 'filter_categories', 'filter_category'); - var filter_statuses = replace_query_parameter(qs, 'statuses', 'status'); - var sort_key = replace_query_parameter(qs, 'sort', 'sort'); - delete qs.p; + function update_url(qs) { var new_url; if ($.isEmptyObject(qs)) { new_url = location.href.replace(location.search, ""); @@ -318,6 +328,37 @@ var fixmystreet = fixmystreet || {}; } else { new_url = location.href + '?' + $.param(qs); } + return new_url; + } + + function page_changed_history() { + if (!('pushState' in history)) { + return; + } + var qs = fixmystreet.utils.parse_query_string(); + + var page = $('.pagination').data('page'); + if (page > 1) { + qs.p = page; + } else { + delete qs.p; + } + var new_url = update_url(qs); + history.pushState({ + page_change: { 'page': page } + }, null, new_url); + } + + function categories_or_status_changed_history() { + if (!('pushState' in history)) { + return; + } + var qs = fixmystreet.utils.parse_query_string(); + var filter_categories = replace_query_parameter(qs, 'filter_categories', 'filter_category'); + var filter_statuses = replace_query_parameter(qs, 'statuses', 'status'); + var sort_key = replace_query_parameter(qs, 'sort', 'sort'); + delete qs.p; + var new_url = update_url(qs); history.pushState({ filter_change: { 'filter_categories': filter_categories, 'statuses': filter_statuses, 'sort': sort_key } }, null, new_url); @@ -387,7 +428,7 @@ var fixmystreet = fixmystreet || {}; f.geometry = new_geometry; this.removeAllFeatures(); this.addFeatures([f]); - var qs = parse_query_string(); + var qs = fixmystreet.utils.parse_query_string(); if (!qs.bbox) { zoomToBounds(extent); } @@ -482,19 +523,14 @@ var fixmystreet = fixmystreet || {}; if (fixmystreet.page == 'around') { fixmystreet.bbox_strategy = fixmystreet.bbox_strategy || new OpenLayers.Strategy.FixMyStreet(); pin_layer_options.strategies = [ fixmystreet.bbox_strategy ]; - pin_layer_options.protocol = new OpenLayers.Protocol.FixMyStreet({ - url: '/ajax', - params: fixmystreet.all_pins ? { all_pins: 1 } : { }, - format: new OpenLayers.Format.FixMyStreet() - }); } if (fixmystreet.page == 'reports') { - pin_layer_options.strategies = [ new OpenLayers.Strategy.FixMyStreetRefreshOnZoom() ]; + pin_layer_options.strategies = [ new OpenLayers.Strategy.FixMyStreetNoLoad() ]; } if (fixmystreet.page == 'my') { pin_layer_options.strategies = [ new OpenLayers.Strategy.FixMyStreetFixed() ]; } - if (fixmystreet.page == 'reports' || fixmystreet.page == 'my') { + if (fixmystreet.page == 'around' || fixmystreet.page == 'reports' || fixmystreet.page == 'my') { pin_layer_options.protocol = new OpenLayers.Protocol.FixMyStreet({ url: fixmystreet.original.href.split('?')[0] + '?ajax=1', format: new OpenLayers.Format.FixMyStreet() @@ -549,9 +585,22 @@ var fixmystreet = fixmystreet || {}; $("#filter_categories").on("change.filters", categories_or_status_changed); $("#statuses").on("change.filters", categories_or_status_changed); $("#sort").on("change.filters", categories_or_status_changed); + $('.js-pagination').on('change.filters', categories_or_status_changed); + $('.js-pagination').on('click', 'a', function(e) { + e.preventDefault(); + var page = $('.pagination').data('page'); + if ($(this).hasClass('next')) { + $('.pagination').data('page', page + 1); + } else { + $('.pagination').data('page', page - 1); + } + fixmystreet.markers.protocol.use_page = true; + $(this).trigger('change'); + }); $("#filter_categories").on("change.user", categories_or_status_changed_history); $("#statuses").on("change.user", categories_or_status_changed_history); $("#sort").on("change.user", categories_or_status_changed_history); + $('.js-pagination').on('click', 'a', page_changed_history); } else if (fixmystreet.page == 'new') { drag.activate(); } @@ -565,49 +614,21 @@ var fixmystreet = fixmystreet || {}; zoomToBounds( fixmystreet.markers.getDataExtent() ); } - $('#hide_pins_link').click(function(e) { + $('#hide_pins_link, .big-hide-pins-link').click(function(e) { e.preventDefault(); if (this.innerHTML == translation_strings.show_pins) { fixmystreet.markers.setVisibility(true); fixmystreet.select_feature.activate(); - this.innerHTML = translation_strings.hide_pins; + $('#hide_pins_link, .big-hide-pins-link').html(translation_strings.hide_pins); } else if (this.innerHTML == translation_strings.hide_pins) { fixmystreet.markers.setVisibility(false); fixmystreet.select_feature.deactivate(); - this.innerHTML = translation_strings.show_pins; + $('#hide_pins_link, .big-hide-pins-link').html(translation_strings.show_pins); } - }); - - $('#all_pins_link').click(function(e) { - e.preventDefault(); - fixmystreet.markers.setVisibility(true); - var texts = [ - 'en', 'Show old', 'Hide old', - 'nb', 'Vis gamle', 'Skjul gamle', - 'cy', 'Cynnwys hen adroddiadau', 'Cuddio hen adroddiadau' - ]; - for (var i=0; i<texts.length; i+=3) { - if (this.innerHTML == texts[i+1]) { - this.innerHTML = texts[i+2]; - fixmystreet.markers.protocol.options.params = { all_pins: 1 }; - fixmystreet.markers.refresh( { force: true } ); - lang = texts[i]; - } else if (this.innerHTML == texts[i+2]) { - this.innerHTML = texts[i+1]; - fixmystreet.markers.protocol.options.params = { }; - fixmystreet.markers.refresh( { force: true } ); - lang = texts[i]; - } - } - if (lang == 'cy') { - document.getElementById('hide_pins_link').innerHTML = 'Cuddio pinnau'; - } else if (lang == 'nb') { - document.getElementById('hide_pins_link').innerHTML = 'Skjul nåler'; - } else { - document.getElementById('hide_pins_link').innerHTML = 'Hide pins'; + if (typeof ga !== 'undefined') { + ga('send', 'event', 'toggle-pins-on-map', 'click'); } }); - } $(function(){ @@ -761,6 +782,8 @@ OpenLayers.Control.PermalinkFMSz = OpenLayers.Class(OpenLayers.Control.Permalink }); OpenLayers.Strategy.FixMyStreet = OpenLayers.Class(OpenLayers.Strategy.BBOX, { + // Update when the zoom changes, pagination means there might be new things + resFactor: 1.5, ratio: 1, // The transform in Strategy.BBOX's getMapBounds could mean you end up with // co-ordinates too precise, which could then cause the Strategy to think @@ -787,11 +810,8 @@ OpenLayers.Strategy.FixMyStreet = OpenLayers.Class(OpenLayers.Strategy.BBOX, { } }); -/* This strategy will call for updates whenever the zoom changes, - * unlike the parent which only will if new area is included. It - * also does not update on load, as we already have the data. */ -OpenLayers.Strategy.FixMyStreetRefreshOnZoom = OpenLayers.Class(OpenLayers.Strategy.FixMyStreet, { - resFactor: 1.5, +/* This strategy additionally does not update on load, as we already have the data. */ +OpenLayers.Strategy.FixMyStreetNoLoad = OpenLayers.Class(OpenLayers.Strategy.FixMyStreet, { activate: function() { var activated = OpenLayers.Strategy.prototype.activate.call(this); if (activated) { @@ -821,12 +841,15 @@ OpenLayers.Strategy.FixMyStreetFixed = OpenLayers.Class(OpenLayers.Strategy.Fixe }); /* Pan data request handler */ -// This class is used to get a JSON object from /ajax that contains +// This class is used to get a JSON object from /around?ajax that contains // pins for the map and HTML for the sidebar. It does a fetch whenever the map // is dragged (modulo a buffer extending outside the viewport). // This subclass is required so we can pass the 'filter_category' and 'status' query -// params to /ajax if the user has filtered the map. +// params to /around?ajax if the user has filtered the map. OpenLayers.Protocol.FixMyStreet = OpenLayers.Class(OpenLayers.Protocol.HTTP, { + initial_page: null, + use_page: false, + read: function(options) { // Show the loading indicator over the map $('#loading-indicator').removeClass('hidden'); @@ -839,6 +862,16 @@ OpenLayers.Protocol.FixMyStreet = OpenLayers.Class(OpenLayers.Protocol.HTTP, { options.params[key] = val; } }); + if (this.use_page) { + var page = $('.pagination').data('page'); + this.use_page = false; + } else if (this.initial_page) { + page = 1; + } else { + var qs = fixmystreet.utils.parse_query_string(); + this.initial_page = page = qs.p || 1; + } + options.params.p = page; return OpenLayers.Protocol.HTTP.prototype.read.apply(this, [options]); }, CLASS_NAME: "OpenLayers.Protocol.FixMyStreet" diff --git a/web/js/map-bing-ol.js b/web/js/map-bing-ol.js index 3ad92b27e..6662bf91a 100644 --- a/web/js/map-bing-ol.js +++ b/web/js/map-bing-ol.js @@ -95,10 +95,10 @@ OpenLayers.Layer.Bing = OpenLayers.Class(OpenLayers.Layer.XYZ, { get_urls: function(bounds, z) { return [ - "//ecn.t0.tiles.virtualearth.net/tiles/r${id}.png?g=3467", - "//ecn.t1.tiles.virtualearth.net/tiles/r${id}.png?g=3467", - "//ecn.t2.tiles.virtualearth.net/tiles/r${id}.png?g=3467", - "//ecn.t3.tiles.virtualearth.net/tiles/r${id}.png?g=3467" + "//ecn.t0.tiles.virtualearth.net/tiles/r${id}.png?g=5941", + "//ecn.t1.tiles.virtualearth.net/tiles/r${id}.png?g=5941", + "//ecn.t2.tiles.virtualearth.net/tiles/r${id}.png?g=5941", + "//ecn.t3.tiles.virtualearth.net/tiles/r${id}.png?g=5941" ]; }, diff --git a/web/js/map-fms.js b/web/js/map-fms.js index 61206a90a..014bd58bb 100644 --- a/web/js/map-fms.js +++ b/web/js/map-fms.js @@ -61,10 +61,10 @@ OpenLayers.Layer.BingUK = OpenLayers.Class(OpenLayers.Layer.Bing, { type = '&productSet=mmOS&key=' + fixmystreet.key; } urls = [ - "//ecn.t0.tiles.virtualearth.net/tiles/r${id}.png?g=3467" + type, - "//ecn.t1.tiles.virtualearth.net/tiles/r${id}.png?g=3467" + type, - "//ecn.t2.tiles.virtualearth.net/tiles/r${id}.png?g=3467" + type, - "//ecn.t3.tiles.virtualearth.net/tiles/r${id}.png?g=3467" + type + "//ecn.t0.tiles.virtualearth.net/tiles/r${id}.png?g=5941" + type, + "//ecn.t1.tiles.virtualearth.net/tiles/r${id}.png?g=5941" + type, + "//ecn.t2.tiles.virtualearth.net/tiles/r${id}.png?g=5941" + type, + "//ecn.t3.tiles.virtualearth.net/tiles/r${id}.png?g=5941" + type ]; } return urls; diff --git a/web/js/map-google.js b/web/js/map-google.js index 596e4f8ee..75a1b25a1 100644 --- a/web/js/map-google.js +++ b/web/js/map-google.js @@ -127,12 +127,10 @@ fixmystreet.maps = {}; b_ne = b.getNorthEast(), bbox = b_sw.lng() + ',' + b_sw.lat() + ',' + b_ne.lng() + ',' + b_ne.lat(), params = { + ajax: 1, bbox: bbox }; - if (fixmystreet.all_pins) { - params.all_pins = 1; - } - $.getJSON('/ajax', params, read_pin_json); + $.getJSON('/around', params, read_pin_json); } function map_initialize() { @@ -208,55 +206,24 @@ fixmystreet.maps = {}; } */ - $('#hide_pins_link').click(function(e) { + $('#hide_pins_link, .big-hide-pins-link').click(function(e) { var i, m; e.preventDefault(); if (this.innerHTML == translation_strings.show_pins) { for (m=0; m<fixmystreet.markers.length; m++) { fixmystreet.markers[m].setMap(fixmystreet.map); } - this.innerHTML = translation_strings.hide_pins; + $('#hide_pins_link, .big-hide-pins-link').html(translation_strings.hide_pins); } else if (this.innerHTML == translation_strings.hide_pins) { for (m=0; m<fixmystreet.markers.length; m++) { fixmystreet.markers[m].setMap(null); } - this.innerHTML = translation_strings.show_pins; - } - }); - - $('#all_pins_link').click(function(e) { - var i; - e.preventDefault(); - for (i=0; i<fixmystreet.markers.length; i++) { - fixmystreet.markers[i].setMap(fixmystreet.map); - } - var texts = [ - 'en', 'Show old', 'Hide old', - 'nb', 'Inkluder utdaterte problemer', 'Skjul utdaterte rapporter', - 'cy', 'Cynnwys hen adroddiadau', 'Cuddio hen adroddiadau' - ]; - for (i=0; i<texts.length; i+=3) { - if (this.innerHTML == texts[i+1]) { - this.innerHTML = texts[i+2]; - fixmystreet.markers.protocol.options.params = { all_pins: 1 }; - fixmystreet.markers.refresh( { force: true } ); - lang = texts[i]; - } else if (this.innerHTML == texts[i+2]) { - this.innerHTML = texts[i+1]; - fixmystreet.markers.protocol.options.params = { }; - fixmystreet.markers.refresh( { force: true } ); - lang = texts[i]; - } + $('#hide_pins_link, .big-hide-pins-link').html(translation_strings.show_pins); } - if (lang == 'cy') { - document.getElementById('hide_pins_link').innerHTML = 'Cuddio pinnau'; - } else if (lang == 'nb') { - document.getElementById('hide_pins_link').innerHTML = 'Gjem nåler'; - } else { - document.getElementById('hide_pins_link').innerHTML = 'Hide pins'; + if (typeof ga !== 'undefined') { + ga('send', 'event', 'toggle-pins-on-map', 'click'); } }); - } google.maps.visualRefresh = true; diff --git a/web/js/map-wmts-bristol.js b/web/js/map-wmts-bristol.js index 4a48da27f..35f5ed0d6 100644 --- a/web/js/map-wmts-bristol.js +++ b/web/js/map-wmts-bristol.js @@ -14,7 +14,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "0", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 181428.9342864172, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 432, @@ -24,7 +23,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "1", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 90714.4671432086, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 863, @@ -34,7 +32,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "2", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 45357.2335716043, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 1725, @@ -44,7 +41,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "3", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 22678.61678580215, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 3449, @@ -54,7 +50,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "4", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 11339.308392901075, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 6898, @@ -64,7 +59,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "5", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 5669.654196450538, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 13795, @@ -74,7 +68,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "6", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 2834.827098225269, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 27590, @@ -84,7 +77,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "7", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 1181.177957593862, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 66215, @@ -94,7 +86,6 @@ fixmystreet.maps.matrix_ids = [ "identifier": "8", "supportedCRS": "urn:ogc:def:crs:EPSG::27700", "scaleDenominator": 708.7067745563172, - "topLeftCorner": { "lat": 4470200, "lon": -5220400 }, "tileWidth": 256, "tileHeight": 256, "matrixWidth": 110359, diff --git a/web/js/map-wmts-zurich.js b/web/js/map-wmts-zurich.js index 6bc1c5e14..0a753e831 100644 --- a/web/js/map-wmts-zurich.js +++ b/web/js/map-wmts-zurich.js @@ -4,10 +4,10 @@ // From 'fullExtent' from http://www.gis.stadt-zuerich.ch/maps/rest/services/tiled95/LuftbildHybrid/MapServer?f=pjson fixmystreet.maps.layer_bounds = new OpenLayers.Bounds( - 2676000.9069999997, // W - 1241399.842, // S - 2689900.9069999997, // E - 1254599.842); // N + 2674687.5, // W + 1240500, // S + 2690000, // E + 1255500); // N fixmystreet.maps.matrix_ids = [ // The two highest zoom levels are pretty much useless so they're disabled. diff --git a/web/vendor/chart.min.js b/web/vendor/chart.min.js index 899fbaf48..a92f536e6 100644 --- a/web/vendor/chart.min.js +++ b/web/vendor/chart.min.js @@ -1,79 +1,11 @@ -Chart=function(){return function p(m,n,g){function l(a,c){if(!n[a]){if(!m[a]){var e="function"==typeof require&&require;if(!c&&e)return e(a,!0);if(f)return f(a,!0);e=Error("Cannot find module '"+a+"'");throw e.code="MODULE_NOT_FOUND",e;}e=n[a]={exports:{}};m[a][0].call(e.exports,function(e){var c=m[a][1][e];return l(c?c:e)},e,e.exports,p,m,n,g)}return n[a].exports}for(var f="function"==typeof require&&require,b=0;b<g.length;b++)l(g[b]);return l}({7:[function(p,m,n){n=p(28)();p(26)(n);p(40)(n);p(22)(n); -p(25)(n);p(23)(n);p(24)(n);p(29)(n);p(32)(n);p(33)(n);p(31)(n);p(36)(n);p(37)(n);p(46)(n);p(44)(n);p(45)(n);p(18)(n);m.exports=n;window.Chart=n},{18:18,22:22,23:23,24:24,25:25,26:26,28:28,29:29,31:31,32:32,33:33,36:36,37:37,40:40,44:44,45:45,46:46}],18:[function(p,m,n){m.exports=function(g){var l=g.helpers;g.defaults.line={showLines:!0,spanGaps:!1,scales:{xAxes:[{type:"category",id:"x-axis-0"}],yAxes:[{type:"linear",id:"y-axis-0"}]}};g.controllers.line=g.DatasetController.extend({datasetElementType:g.elements.Line, -dataElementType:g.elements.Point,update:function(f){var b=this.getMeta(),a=b.dataset,c=b.data||[],e=this.chart.options,d=e.elements.line,k=this.getScaleForId(b.yAxisID),h=this.getDataset();if(b=l.getValueOrDefault(h.showLine,e.showLines))a._scale=k,a._datasetIndex=this.index,a._children=c,a._model={spanGaps:h.spanGaps?h.spanGaps:e.spanGaps,tension:l.getValueOrDefault(h.lineTension,d.tension),backgroundColor:h.backgroundColor||d.backgroundColor,borderWidth:h.borderWidth||d.borderWidth,borderColor:h.borderColor|| -d.borderColor,borderCapStyle:h.borderCapStyle||d.borderCapStyle,borderDash:h.borderDash||d.borderDash,borderDashOffset:h.borderDashOffset||d.borderDashOffset,borderJoinStyle:h.borderJoinStyle||d.borderJoinStyle,steppedLine:l.getValueOrDefault(h.steppedLine,d.stepped)},a.pivot();e=0;for(d=c.length;e<d;++e)this.updateElement(c[e],e,f);b&&0!==a._model.tension&&this.updateBezierControlPoints();e=0;for(d=c.length;e<d;++e)c[e].pivot()},updateElement:function(f,b,a){var c=this.getMeta(),e=this.getDataset(), -d=this.index,k=e.data[b],h=this.getScaleForId(c.yAxisID),V=this.getScaleForId(c.xAxisID),g=this.chart.options.elements.point,q;q=V.getPixelForValue("object"===typeof k?k:NaN,b,d,1===(this.chart.data.labels||[]).length||1===e.data.length||this.chart.isCombo);a=a?h.getBasePixel():this.calculatePointY(k,b,d);f._xScale=V;f._yScale=h;f._datasetIndex=d;f._index=b;f._model={x:q,y:a,skip:isNaN(q)||isNaN(a),radius:l.getValueAtIndexOrDefault(e.pointRadius,b,g.radius),pointStyle:l.getValueAtIndexOrDefault(e.pointStyle, -b,g.pointStyle),backgroundColor:e.pointBackgroundColor,borderColor:e.borderColor,borderWidth:e.pointBorderWidth,tension:c.dataset._model?c.dataset._model.tension:0,steppedLine:c.dataset._model?c.dataset._model.steppedLine:!1}},calculatePointY:function(f,b,a){b=this.getMeta();return this.getScaleForId(b.yAxisID).getPixelForValue(f)},updateBezierControlPoints:function(){var f=this.getMeta(),b=this.chart.chartArea,a=f.data||[],c,e,d,k;f.dataset._model.spanGaps&&(a=a.filter(function(a){return!a._model.skip})); -c=0;for(e=a.length;c<e;++c)d=a[c],d=d._model,k=l.splineCurve(l.previousItem(a,c)._model,d,l.nextItem(a,c)._model,f.dataset._model.tension),d.controlPointPreviousX=k.previous.x,d.controlPointPreviousY=k.previous.y,d.controlPointNextX=k.next.x,d.controlPointNextY=k.next.y;if(this.chart.options.elements.line.capBezierPoints)for(c=0,e=a.length;c<e;++c)d=a[c]._model,d.controlPointPreviousX=Math.max(Math.min(d.controlPointPreviousX,b.right),b.left),d.controlPointPreviousY=Math.max(Math.min(d.controlPointPreviousY, -b.bottom),b.top),d.controlPointNextX=Math.max(Math.min(d.controlPointNextX,b.right),b.left),d.controlPointNextY=Math.max(Math.min(d.controlPointNextY,b.bottom),b.top)},draw:function(){var f=this.chart,b=this.getMeta(),a=b.data||[],c=f.chartArea,e=a.length,d=0;g.canvasHelpers.clipArea(f.ctx,c);var k=this.getDataset();l.getValueOrDefault(k.showLine,f.options.showLines)&&b.dataset.draw();for(g.canvasHelpers.unclipArea(f.ctx);d<e;++d)a[d].draw(c)}})}},{}],22:[function(p,m,n){m.exports=function(g){var l= -g.canvasHelpers={};l.drawPoint=function(f,b,a,c,e){isNaN(a)||0>=a||(f.beginPath(),f.arc(c,e,a,0,2*Math.PI),f.closePath(),f.fill(),f.stroke())};l.clipArea=function(f,b){f.save();f.beginPath();f.rect(b.left,b.top,b.right-b.left,b.bottom-b.top);f.clip()};l.unclipArea=function(f){f.restore()};l.lineTo=function(f,b,a,c){a.steppedLine?("after"===a.steppedLine?f.lineTo(b.x,a.y):f.lineTo(a.x,b.y),f.lineTo(a.x,a.y)):a.tension?f.bezierCurveTo(c?b.controlPointPreviousX:b.controlPointNextX,c?b.controlPointPreviousY: -b.controlPointNextY,c?a.controlPointNextX:a.controlPointPreviousX,c?a.controlPointNextY:a.controlPointPreviousY,a.x,a.y):f.lineTo(a.x,a.y)};g.helpers.canvas=l}},{}],23:[function(p,m,n){m.exports=function(g){function l(e){e=e||{};var c=e.data=e.data||{};c.datasets=c.datasets||[];c.labels=c.labels||[];e.options=a.configMerge(g.defaults.global,g.defaults[e.type],e.options||{});return e}function f(a){var c=a.options;c.scale?a.scale.options=c.scale:c.scales&&c.scales.xAxes.concat(c.scales.yAxes).forEach(function(c){a.scales[c.id].options= -c})}function b(a){return"top"===a||"bottom"===a}var a=g.helpers,c=g.platform;g.types={};g.instances={};g.controllers={};a.extend(g.prototype,{construct:function(e,d){var b=this;d=l(d);var h=c.acquireContext(e,d),f=h&&h.canvas,N=f&&f.height,q=f&&f.width;b.id=a.uid();b.ctx=h;b.canvas=f;b.config=d;b.width=q;b.height=N;b.aspectRatio=N?q/N:null;b.options=d.options;b._bufferedRender=!1;b.chart=b;b.controller=b;g.instances[b.id]=b;Object.defineProperty(b,"data",{get:function(){return b.config.data},set:function(a){b.config.data= -a}});h&&f?(b.initialize(),b.update()):console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){a.retinaScale(this);this.bindEvents();this.resize(!0);this.ensureScalesHaveIDs();this.buildScales();return this},clear:function(){a.clear(this);return this},resize:function(c){var b=this.canvas,k=this.options.maintainAspectRatio&&this.aspectRatio||null,h=Math.floor(a.getMaximumWidth(b)),k=Math.floor(k?h/k:a.getMaximumHeight(b));if(this.width!==h||this.height!== -k)if(b.width=this.width=h,b.height=this.height=k,b.style.width=h+"px",b.style.height=k+"px",a.retinaScale(this),!c){c={width:h,height:k};if(this.options.onResize)this.options.onResize(this,c);this.update(0)}},ensureScalesHaveIDs:function(){var c=this.options,b=c.scales||{},c=c.scale;a.each(b.xAxes,function(a,c){a.id=a.id||"x-axis-"+c});a.each(b.yAxes,function(a,c){a.id=a.id||"y-axis-"+c});c&&(c.id=c.id||"scale")},buildScales:function(){var c=this,d=c.options,k=c.scales={},h=[];d.scales&&(h=h.concat((d.scales.xAxes|| -[]).map(function(a){return{options:a,dtype:"category",dposition:"bottom"}}),(d.scales.yAxes||[]).map(function(a){return{options:a,dtype:"linear",dposition:"left"}})));d.scale&&h.push({options:d.scale,dtype:"radialLinear",isDefault:!0,dposition:"chartArea"});a.each(h,function(d){var h=d.options,f=a.getValueOrDefault(h.type,d.dtype);if(f=g.scaleService.getScaleConstructor(f))b(h.position)!==b(d.dposition)&&(h.position=d.dposition),h=new f({id:h.id,options:h,ctx:c.ctx,chart:c}),k[h.id]=h,d.isDefault&& -(c.scale=h)});g.scaleService.addScalesToLayout(this)},buildOrUpdateControllers:function(){var c=this,b=[],k=[];a.each(c.data.datasets,function(a,h){var f=c.getDatasetMeta(h);f.type||(f.type=a.type||c.config.type);b.push(f.type);if(f.controller)f.controller.updateIndex(h);else{var l=g.controllers[f.type];if(void 0===l)throw Error('"'+f.type+'" is not a chart type.');f.controller=new l(c,h);k.push(f.controller)}},c);if(1<b.length)for(var h=1;h<b.length;h++)if(b[h]!==b[h-1]){c.isCombo=!0;break}return k}, -update:function(c,b){var k=this;f(k);var h=k.buildOrUpdateControllers();a.each(k.data.datasets,function(a,c){k.getDatasetMeta(c).controller.buildOrUpdateElements()},k);k.updateLayout();a.each(h,function(a){a.reset()});k.updateDatasets();k._bufferedRender?k._bufferedRequest={lazy:b,duration:c}:k.render(c,b)},updateLayout:function(){g.layoutService.update(this,this.width,this.height)},updateDatasets:function(){for(var a=0,c=this.data.datasets.length;a<c;++a)this.updateDataset(a)},updateDataset:function(a){this.getDatasetMeta(a).controller.update()}, -render:function(c,b){var k=this.options.animation;this.draw();a.callback(k&&k.onComplete,[void 0],this);return this},draw:function(){var c=this;c.clear();c.transition();a.each(c.boxes,function(a){a.draw(c.chartArea)},c);c.scale&&c.scale.draw();c.drawDatasets()},transition:function(){for(var a=0,c=(this.data.datasets||[]).length;a<c;++a)this.isDatasetVisible(a)&&this.getDatasetMeta(a).controller.transition()},drawDatasets:function(){for(var a=(this.data.datasets||[]).length-1;0<=a;--a)this.isDatasetVisible(a)&& -this.drawDataset(a)},drawDataset:function(a){this.getDatasetMeta(a).controller.draw()},getDatasetMeta:function(a){a=this.data.datasets[a];a._meta||(a._meta={});var c=a._meta[this.id];c||(c=a._meta[this.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null});return c},getVisibleDatasetCount:function(){for(var a=0,c=0,b=this.data.datasets.length;c<b;++c)this.isDatasetVisible(c)&&a++;return a},isDatasetVisible:function(a){var c=this.getDatasetMeta(a);return"boolean"=== -typeof c.hidden?!c.hidden:!this.data.datasets[a].hidden},bindEvents:function(){var a=this,b=a._listeners={},k=function(){a.resize()};c.addEventListener(a,"resize",k);b.resize=k}});g.Controller=g}},{}],24:[function(p,m,n){m.exports=function(g){function l(c,e){c._chartjs?c._chartjs.listeners.push(e):(Object.defineProperty(c,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),a.forEach(function(a){var e="onData"+a.charAt(0).toUpperCase()+a.slice(1),h=c[a];Object.defineProperty(c,a,{configurable:!0, -enumerable:!1,value:function(){var a=Array.prototype.slice.call(arguments),d=h.apply(this,a);b.each(c._chartjs.listeners,function(c){"function"===typeof c[e]&&c[e].apply(c,a)});return d}})}))}function f(c,b){var d=c._chartjs;if(d){var d=d.listeners,k=d.indexOf(b);-1!==k&&d.splice(k,1);0<d.length||(a.forEach(function(a){delete c[a]}),delete c._chartjs)}}var b=g.helpers,a=["push","pop","shift","splice","unshift"];g.DatasetController=function(a,b){this.initialize(a,b)};b.extend(g.DatasetController.prototype, -{datasetElementType:null,dataElementType:null,initialize:function(a,b){this.chart=a;this.index=b;this.linkScales();this.addElements()},updateIndex:function(a){this.index=a},linkScales:function(){var a=this.getMeta(),b=this.getDataset();null===a.xAxisID&&(a.xAxisID=b.xAxisID||this.chart.options.scales.xAxes[0].id);null===a.yAxisID&&(a.yAxisID=b.yAxisID||this.chart.options.scales.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)}, -getScaleForId:function(a){return this.chart.scales[a]},reset:function(){this.update(!0)},createMetaDataset:function(){var a=this.datasetElementType;return a&&new a({_chart:this.chart,_datasetIndex:this.index})},createMetaData:function(a){var b=this.dataElementType;return b&&new b({_chart:this.chart,_datasetIndex:this.index,_index:a})},addElements:function(){var a=this.getMeta(),b=this.getDataset().data||[],d=a.data,k;k=0;for(b=b.length;k<b;++k)d[k]=d[k]||this.createMetaData(k);a.dataset=a.dataset|| -this.createMetaDataset()},addElementAndReset:function(a){var b=this.createMetaData(a);this.getMeta().data.splice(a,0,b);this.updateElement(b,a,!0)},buildOrUpdateElements:function(){var a=this.getDataset(),a=a.data||(a.data=[]);this._data!==a&&(this._data&&f(this._data,this),l(a,this),this._data=a);this.resyncElements()},update:b.noop,transition:function(){for(var a=this.getMeta(),b=a.data||[],d=b.length,k=0;k<d;++k)b[k].transition();a.dataset&&a.dataset.transition()},draw:function(){var a=this.getMeta(), -b=a.data||[],d=b.length,k=0;for(a.dataset&&a.dataset.draw();k<d;++k)b[k].draw()},resyncElements:function(){var a=this.getMeta(),b=this.getDataset().data,d=a.data.length,b=b.length;b<d?a.data.splice(b,d-b):b>d&&this.insertElements(d,b-d)},insertElements:function(a,b){for(var d=0;d<b;++d)this.addElementAndReset(a+d)},onDataPush:function(){this.insertElements(this.getDataset().data.length-1,arguments.length)},onDataPop:function(){this.getMeta().data.pop()},onDataShift:function(){this.getMeta().data.shift()}, -onDataSplice:function(a,b){this.getMeta().data.splice(a,b);this.insertElements(a,arguments.length-2)},onDataUnshift:function(){this.insertElements(0,arguments.length)}});g.DatasetController.extend=b.inherits}},{}],25:[function(p,m,n){m.exports=function(g){var l=g.helpers;g.elements={};g.Element=function(f){l.extend(this,f);this.initialize.apply(this,arguments)};l.extend(g.Element.prototype,{initialize:function(){this.hidden=!1},pivot:function(){this._view||(this._view=l.clone(this._model));this._start= -{};return this},transition:function(){this._view=this._model;this._start=null;return this},hasValue:function(){return l.isNumber(this._model.x)&&l.isNumber(this._model.y)}});g.Element.extend=l.inherits}},{}],26:[function(p,m,n){m.exports=function(g){function l(a,c,b){var d;"string"===typeof a?(d=parseInt(a,10),-1!==a.indexOf("%")&&(d=d/100*c.parentNode[b])):d=a;return d}function f(a,c,b){var d=document.defaultView,k=a.parentNode,h=d.getComputedStyle(a)[c];c=d.getComputedStyle(k)[c];var d=void 0!== -h&&null!==h&&"none"!==h,f=void 0!==c&&null!==c&&"none"!==c,g=Number.POSITIVE_INFINITY;return d||f?Math.min(d?l(h,a,b):g,f?l(c,k,b):g):"none"}var b=g.helpers={};b.each=function(a,c,e,d){var k;if(b.isArray(a))if(k=a.length,d)for(d=k-1;0<=d;d--)c.call(e,a[d],d);else for(d=0;d<k;d++)c.call(e,a[d],d);else if("object"===typeof a){var h=Object.keys(a);k=h.length;for(d=0;d<k;d++)c.call(e,a[h[d]],h[d])}};b.clone=function(a){var c={};b.each(a,function(a,d){b.isArray(a)?c[d]=a.slice(0):c[d]="object"===typeof a&& -null!==a?b.clone(a):a});return c};b.extend=function(a){for(var c=function(c,b){a[b]=c},e=1,d=arguments.length;e<d;e++)b.each(arguments[e],c);return a};b.configMerge=function(a){var c=b.clone(a);b.each(Array.prototype.slice.call(arguments,1),function(a){b.each(a,function(a,e){var h=c.hasOwnProperty(e),f=h?c[e]:{};"scales"===e?c[e]=b.scaleMerge(f,a):"scale"===e?c[e]=b.configMerge(f,g.scaleService.getScaleDefaults(a.type),a):!h||"object"!==typeof f||b.isArray(f)||null===f||"object"!==typeof a||b.isArray(a)? -c[e]=a:c[e]=b.configMerge(f,a)})});return c};b.scaleMerge=function(a,c){var e=b.clone(a);b.each(c,function(a,c){"xAxes"===c||"yAxes"===c?e.hasOwnProperty(c)?b.each(a,function(a,d){var f=b.getValueOrDefault(a.type,"xAxes"===c?"category":"linear"),f=g.scaleService.getScaleDefaults(f);d>=e[c].length||!e[c][d].type?e[c].push(b.configMerge(f,a)):e[c][d]=a.type&&a.type!==e[c][d].type?b.configMerge(e[c][d],f,a):b.configMerge(e[c][d],a)}):(e[c]=[],b.each(a,function(a){var d=b.getValueOrDefault(a.type,"xAxes"=== -c?"category":"linear");e[c].push(b.configMerge(g.scaleService.getScaleDefaults(d),a))})):e.hasOwnProperty(c)&&"object"===typeof e[c]&&null!==e[c]&&"object"===typeof a?e[c]=b.configMerge(e[c],a):e[c]=a});return e};b.getValueAtIndexOrDefault=function(a,c,e){return void 0===a||null===a?e:b.isArray(a)?c<a.length?a[c]:e:a};b.getValueOrDefault=function(a,c){return void 0===a?c:a};b.indexOf=Array.prototype.indexOf?function(a,c){return a.indexOf(c)}:function(a,c){for(var b=0,d=a.length;b<d;++b)if(a[b]=== -c)return b;return-1};b.where=function(a,c){if(b.isArray(a)&&Array.prototype.filter)return a.filter(c);var e=[];b.each(a,function(a){c(a)&&e.push(a)});return e};b.findIndex=Array.prototype.findIndex?function(a,c,b){return a.findIndex(c,b)}:function(a,c,b){b=void 0===b?a:b;for(var d=0,k=a.length;d<k;++d)if(c.call(b,a[d],d,a))return d;return-1};b.findNextWhere=function(a,c,b){if(void 0===b||null===b)b=-1;for(b+=1;b<a.length;b++){var d=a[b];if(c(d))return d}};b.findPreviousWhere=function(a,c,b){if(void 0=== -b||null===b)b=a.length;for(--b;0<=b;b--){var d=a[b];if(c(d))return d}};b.inherits=function(a){var c=this,e=a&&a.hasOwnProperty("constructor")?a.constructor:function(){return c.apply(this,arguments)},d=function(){this.constructor=e};d.prototype=c.prototype;e.prototype=new d;e.extend=b.inherits;a&&b.extend(e.prototype,a);e.__super__=c.prototype;return e};b.noop=function(){};b.uid=function(){var a=0;return function(){return a++}}();b.isNumber=function(a){return!isNaN(parseFloat(a))&&isFinite(a)};b.almostEquals= -function(a,c,b){return Math.abs(a-c)<b};b.almostWhole=function(a,c){var b=Math.round(a);return b-c<a&&b+c>a};b.max=function(a){return a.reduce(function(a,b){return isNaN(b)?a:Math.max(a,b)},Number.NEGATIVE_INFINITY)};b.min=function(a){return a.reduce(function(a,b){return isNaN(b)?a:Math.min(a,b)},Number.POSITIVE_INFINITY)};b.sign=Math.sign?function(a){return Math.sign(a)}:function(a){a=+a;return 0===a||isNaN(a)?a:0<a?1:-1};b.log10=Math.log10?function(a){return Math.log10(a)}:function(a){return Math.log(a)/ -Math.LN10};b.toRadians=function(a){return Math.PI/180*a};b.aliasPixel=function(a){return 0===a%2?0:.5};b.splineCurve=function(a,c,b,d){a=a.skip?c:a;b=b.skip?c:b;var k=Math.sqrt(Math.pow(c.x-a.x,2)+Math.pow(c.y-a.y,2)),f=Math.sqrt(Math.pow(b.x-c.x,2)+Math.pow(b.y-c.y,2)),g=k/(k+f),k=f/(k+f),g=isNaN(g)?0:g,k=isNaN(k)?0:k,g=d*g;d*=k;return{previous:{x:c.x-g*(b.x-a.x),y:c.y-g*(b.y-a.y)},next:{x:c.x+d*(b.x-a.x),y:c.y+d*(b.y-a.y)}}};b.nextItem=function(a,c,b){return b?c>=a.length-1?a[0]:a[c+1]:c>=a.length- -1?a[a.length-1]:a[c+1]};b.previousItem=function(a,b,e){return e?0>=b?a[a.length-1]:a[b-1]:0>=b?a[0]:a[b-1]};b.niceNum=function(a,c){var e=Math.floor(b.log10(a)),d=a/Math.pow(10,e);return(c?1.5>d?1:3>d?2:7>d?5:10:1>=d?1:2>=d?2:5>=d?5:10)*Math.pow(10,e)};b.requestAnimFrame=function(){return"undefined"===typeof window?function(a){a()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(a){return window.setTimeout(a, -1E3/60)}}();b.addEvent=function(a,b,e){a.addEventListener?a.addEventListener(b,e):a.attachEvent?a.attachEvent("on"+b,e):a["on"+b]=e};b.getConstraintWidth=function(a){return f(a,"max-width","clientWidth")};b.getConstraintHeight=function(a){return f(a,"max-height","clientHeight")};b.getMaximumWidth=function(a){var c=a.parentNode,e=parseInt(b.getStyle(c,"padding-left"),10),d=parseInt(b.getStyle(c,"padding-right"),10),c=c.clientWidth-e-d;a=b.getConstraintWidth(a);return isNaN(a)?c:Math.min(c,a)};b.getMaximumHeight= -function(a){var c=a.parentNode,e=parseInt(b.getStyle(c,"padding-top"),10),d=parseInt(b.getStyle(c,"padding-bottom"),10),c=c.clientHeight-e-d;a=b.getConstraintHeight(a);return isNaN(a)?c:Math.min(c,a)};b.getStyle=function(a,b){return a.currentStyle?a.currentStyle[b]:document.defaultView.getComputedStyle(a,null).getPropertyValue(b)};b.retinaScale=function(a){var b=a.currentDevicePixelRatio=window.devicePixelRatio||1;if(1!==b){var e=a.canvas,d=a.height,f=a.width;e.height=d*b;e.width=f*b;a.ctx.scale(b, -b);e.style.height=d+"px";e.style.width=f+"px"}};b.clear=function(a){a.ctx.clearRect(0,0,a.width,a.height)};b.fontString=function(a,b,e){return b+" "+a+"px "+e};b.longestText=function(a,c,e,d){d=d||{};var f=d.data=d.data||{},h=d.garbageCollect=d.garbageCollect||[];d.font!==c&&(f=d.data={},h=d.garbageCollect=[],d.font=c);a.font=c;var g=0;b.each(e,function(c){void 0!==c&&null!==c&&!0!==b.isArray(c)?g=b.measureText(a,f,h,g,c):b.isArray(c)&&b.each(c,function(c){void 0===c||null===c||b.isArray(c)||(g=b.measureText(a, -f,h,g,c))})});c=h.length/2;if(c>e.length){for(e=0;e<c;e++)delete f[h[e]];h.splice(0,c)}return g};b.measureText=function(a,b,e,d,f){var h=b[f];h||(h=b[f]=a.measureText(f).width,e.push(f));h>d&&(d=h);return d};b.numberOfLabelLines=function(a){var c=1;b.each(a,function(a){b.isArray(a)&&a.length>c&&(c=a.length)});return c};b.isArray=Array.isArray?function(a){return Array.isArray(a)}:function(a){return"[object Array]"===Object.prototype.toString.call(a)};b.arrayEquals=function(a,c){var e,d,f,h;if(!a|| -!c||a.length!==c.length)return!1;e=0;for(d=a.length;e<d;++e)if(f=a[e],h=c[e],f instanceof Array&&h instanceof Array){if(!b.arrayEquals(f,h))return!1}else if(f!==h)return!1;return!0};b.callback=function(a,b,e){a&&"function"===typeof a.call&&a.apply(e,b)};b.callCallback=b.callback}},{}],28:[function(p,m,n){m.exports=function(){var g=function(g,f){this.construct(g,f);return this};g.defaults={global:{maintainAspectRatio:!0,defaultColor:"rgba(0,0,0,0.1)",defaultFontColor:"#666",defaultFontFamily:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif", -defaultFontSize:12,defaultFontStyle:"normal",showLines:!0,elements:{}}};return g.Chart=g}},{}],29:[function(p,m,n){m.exports=function(g){function l(a,c){return b.where(a,function(a){return a.position===c})}function f(a,b){a.forEach(function(a,b){a._tmpIndex_=b;return a});a.sort(function(a,d){var f=b?d:a,h=b?a:d;return f.weight===h.weight?f._tmpIndex_-h._tmpIndex_:f.weight-h.weight});a.forEach(function(a){delete a._tmpIndex_})}var b=g.helpers;g.layoutService={defaults:{},addBox:function(a,b){a.boxes|| -(a.boxes=[]);b.fullWidth=b.fullWidth||!1;b.position=b.position||"top";b.weight=b.weight||0;a.boxes.push(b)},removeBox:function(a,b){var e=a.boxes?a.boxes.indexOf(b):-1;-1!==e&&a.boxes.splice(e,1)},configure:function(a,b,e){a=["fullWidth","position","weight"];for(var d=a.length,f=0,h;f<d;++f)h=a[f],e.hasOwnProperty(h)&&(b[h]=e[h])},update:function(a,c,e){function d(a){var b,c=a.isHorizontal();c?(b=a.update(a.fullWidth?z:B,Q),D-=b.height):(b=a.update(R,J),B-=b.width);S.push({horizontal:c,minSize:b, -box:a})}function k(a){var c=b.findNextWhere(S,function(b){return b.box===a});c&&(a.isHorizontal()?a.update(a.fullWidth?z:B,I/2,{left:Math.max(r,K),right:Math.max(y,L),top:0,bottom:0}):a.update(c.minSize.width,D))}function h(a){var c=b.findNextWhere(S,function(b){return b.box===a}),d={left:0,right:0,top:v,bottom:E};c&&a.update(c.minSize.width,D,d)}function g(a){a.isHorizontal()?(a.left=a.fullWidth?n:r,a.right=a.fullWidth?c-p:r+B,a.top=A,a.bottom=A+a.height,A=a.bottom):(a.left=F,a.right=F+a.width,a.top= -v,a.bottom=v+D,F=a.right)}if(a){var m=a.options.layout,q=m?m.padding:null,n=0,p=0,t=m=0;isNaN(q)?(n=q.left||0,p=q.right||0,m=q.top||0,t=q.bottom||0):t=m=p=n=q;var q=l(a.boxes,"left"),w=l(a.boxes,"right"),x=l(a.boxes,"top"),u=l(a.boxes,"bottom"),M=l(a.boxes,"chartArea");f(q,!0);f(w,!1);f(x,!0);f(u,!1);var z=c-n-p,I=e-m-t,J=I/2,R=(c-z/2)/(q.length+w.length),Q=(e-J)/(x.length+u.length),B=z,D=I,S=[];b.each(q.concat(w,x,u),d);var K=0,L=0,T=0,U=0;b.each(x.concat(u),function(a){a.getPadding&&(a=a.getPadding(), -K=Math.max(K,a.left),L=Math.max(L,a.right))});b.each(q.concat(w),function(a){a.getPadding&&(a=a.getPadding(),T=Math.max(T,a.top),U=Math.max(U,a.bottom))});var r=n,y=p,v=m,E=t;b.each(q.concat(w),k);b.each(q,function(a){r+=a.width});b.each(w,function(a){y+=a.width});b.each(x.concat(u),k);b.each(x,function(a){v+=a.height});b.each(u,function(a){E+=a.height});b.each(q.concat(w),h);r=n;y=p;v=m;E=t;b.each(q,function(a){r+=a.width});b.each(w,function(a){y+=a.width});b.each(x,function(a){v+=a.height});b.each(u, -function(a){E+=a.height});var t=Math.max(K-r,0),r=r+t,y=y+Math.max(L-y,0),X=Math.max(T-v,0),v=v+X,E=E+Math.max(U-E,0),G=e-v-E,H=c-r-y;if(H!==B||G!==D)b.each(q,function(a){a.height=G}),b.each(w,function(a){a.height=G}),b.each(x,function(a){a.fullWidth||(a.width=H)}),b.each(u,function(a){a.fullWidth||(a.width=H)}),D=G,B=H;var F=n+t,A=m+X;b.each(q.concat(x),g);F+=B;A+=D;b.each(w,g);b.each(u,g);a.chartArea={left:r,top:v,right:r+B,bottom:v+D};b.each(M,function(b){b.left=a.chartArea.left;b.top=a.chartArea.top; -b.right=a.chartArea.right;b.bottom=a.chartArea.bottom;b.update(B,D)})}}}}},{}],31:[function(p,m,n){m.exports=function(g){function l(a,c,e){return b.isArray(c)?b.longestText(a,e,c):a.measureText(c).width}function f(a){var c=g.defaults.global;a=c.defaultFontSize;var e=c.defaultFontStyle,c=c.defaultFontFamily;return{size:a,style:e,family:c,font:b.fontString(a,e,c)}}var b=g.helpers;g.defaults.scale={display:!0,position:"left",gridLines:{display:!0,color:"rgba(0, 0, 0, 0.1)",lineWidth:1,drawOnChartArea:!0, -drawTicks:!0,tickMarkLength:10,zeroLineWidth:1,zeroLineColor:"rgba(0,0,0,0.25)",zeroLineBorderDash:[],zeroLineBorderDashOffset:0,offsetGridLines:!1,borderDash:[],borderDashOffset:0},ticks:{minRotation:0,maxRotation:50,mirror:!1,padding:0,reverse:!1,display:!0,autoSkip:!0,autoSkipPadding:0,labelOffset:0,callback:g.Ticks.formatters.values}};g.Scale=g.Element.extend({getPadding:function(){return{left:this.paddingLeft||0,top:this.paddingTop||0,right:this.paddingRight||0,bottom:this.paddingBottom||0}}, -update:function(a,c,e){this.maxWidth=a;this.maxHeight=c;this.margins=b.extend({left:0,right:0,top:0,bottom:0},e);this.longestTextCache=this.longestTextCache||{};this.setDimensions();this.determineDataLimits();this.buildTicks();this.convertTicksToLabels();this.calculateTickRotation();this.fit();return this.minSize},setDimensions:function(){this.isHorizontal()?(this.width=this.maxWidth,this.left=0,this.right=this.width):(this.height=this.maxHeight,this.top=0,this.bottom=this.height);this.paddingBottom= -this.paddingRight=this.paddingTop=this.paddingLeft=0},determineDataLimits:b.noop,buildTicks:b.noop,convertTicksToLabels:function(){var a=this.options.ticks;this.ticks=this.ticks.map(a.userCallback||a.callback)},calculateTickRotation:function(){var a=this.ctx,c=this.options.ticks,e=f(c);a.font=e.font;var d=c.minRotation||0;if(this.options.display&&this.isHorizontal())for(var k=a=b.longestText(a,e.font,this.ticks,this.longestTextCache),h,e=this.getPixelForTick(1)-this.getPixelForTick(0)-6;k>e&&d<c.maxRotation;){h= -b.toRadians(d);k=Math.cos(h);h=Math.sin(h);if(h*a>this.maxHeight){d--;break}d++;k*=a}this.labelRotation=d},fit:function(){var a=this.minSize={width:0,height:0},c=this.options,e=c.ticks,d=c.gridLines,k=c.display,h=this.isHorizontal(),g=f(e),m=c.gridLines.tickMarkLength;a.width=h?this.isFullWidth()?this.maxWidth-this.margins.left-this.margins.right:this.maxWidth:k&&d.drawTicks?m:0;a.height=h?k&&d.drawTicks?m:0:this.maxHeight;e.display&&k&&(k=b.longestText(this.ctx,g.font,this.ticks,this.longestTextCache), -m=b.numberOfLabelLines(this.ticks),d=.5*g.size,h?(this.longestLabelWidth=k,h=b.toRadians(this.labelRotation),e=Math.cos(h),a.height=Math.min(this.maxHeight,a.height+(Math.sin(h)*k+g.size*m+d*m)),this.ctx.font=g.font,h=l(this.ctx,this.ticks[0],g.font),g=l(this.ctx,this.ticks[this.ticks.length-1],g.font),0!==this.labelRotation?(this.paddingLeft="bottom"===c.position?e*h+3:e*d+3,this.paddingRight="bottom"===c.position?e*d+3:e*g+3):(this.paddingLeft=h/2+3,this.paddingRight=g/2+3)):(k=e.mirror?0:k+this.options.ticks.padding, -a.width=Math.min(this.maxWidth,a.width+k),this.paddingTop=g.size/2,this.paddingBottom=g.size/2));this.handleMargins();this.width=a.width;this.height=a.height},handleMargins:function(){this.margins&&(this.paddingLeft=Math.max(this.paddingLeft-this.margins.left,0),this.paddingTop=Math.max(this.paddingTop-this.margins.top,0),this.paddingRight=Math.max(this.paddingRight-this.margins.right,0),this.paddingBottom=Math.max(this.paddingBottom-this.margins.bottom,0))},isHorizontal:function(){return"top"=== -this.options.position||"bottom"===this.options.position},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(a){return null===a||"undefined"===typeof a||"number"===typeof a&&!isFinite(a)?NaN:"object"===typeof a?a instanceof Date||a.isValid?a:this.getRightValue(this.isHorizontal()?a.x:a.y):a},getPixelForValue:b.noop,getValueForPixel:b.noop,getPixelForTick:function(a,b){if(this.isHorizontal()){var e=(this.width-(this.paddingLeft+this.paddingRight))/Math.max(this.ticks.length- -(this.options.gridLines.offsetGridLines?0:1),1),d=e*a+this.paddingLeft;b&&(d+=e/2);e=this.left+Math.round(d);return e+=this.isFullWidth()?this.margins.left:0}return this.top+(this.height-(this.paddingTop+this.paddingBottom))/(this.ticks.length-1)*a},getPixelForDecimal:function(a){return this.isHorizontal()?(a=this.left+Math.round((this.width-(this.paddingLeft+this.paddingRight))*a+this.paddingLeft),a+=this.isFullWidth()?this.margins.left:0):this.top+a*this.height},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())}, -getBaseValue:function(){var a=this.min,b=this.max;return 0>a&&0>b?b:0<a&&0<b?a:0},draw:function(a){var c=this,e=c.options;if(e.display){var d=c.ctx,k=g.defaults.global,h=e.ticks,l=e.gridLines,m=0!==c.labelRotation,n,p=h.autoSkip,W=c.isHorizontal(),t;h.maxTicksLimit&&(t=h.maxTicksLimit);var w=b.getValueOrDefault(h.fontColor,k.defaultFontColor),x=f(h),u=l.drawTicks?l.tickMarkLength:0,M=b.toRadians(c.labelRotation),z=c.longestLabelWidth*Math.cos(M);d.fillStyle=w;var I=[];if(W){n=!1;(z+h.autoSkipPadding)* -c.ticks.length>c.width-(c.paddingLeft+c.paddingRight)&&(n=1+Math.floor((z+h.autoSkipPadding)*c.ticks.length/(c.width-(c.paddingLeft+c.paddingRight))));if(t&&c.ticks.length>t)for(;!n||c.ticks.length/(n||1)>t;)n||(n=1),n+=1;p||(n=!1)}var J="right"===e.position?c.left:c.right-u,R="right"===e.position?c.left+u:c.right,Q="bottom"===e.position?c.top:c.bottom-u,B="bottom"===e.position?c.top+u:c.bottom;b.each(c.ticks,function(d,f){if(void 0!==d&&null!==d){var g=c.ticks.length===f+1;if((!(1<n&&0<f%n||0=== -f%n&&f+n>=c.ticks.length)||g)&&void 0!==d&&null!==d){var p,t,w;f===("undefined"!==typeof c.zeroLineIndex?c.zeroLineIndex:0)?(g=l.zeroLineWidth,p=l.zeroLineColor,t=l.zeroLineBorderDash,w=l.zeroLineBorderDashOffset):(g=b.getValueAtIndexOrDefault(l.lineWidth,f),p=b.getValueAtIndexOrDefault(l.color,f),t=b.getValueOrDefault(l.borderDash,k.borderDash),w=b.getValueOrDefault(l.borderDashOffset,k.borderDashOffset));var r,y,v,x,O,G,H,F,A,C,z,P="middle";W?("bottom"===e.position?(P=m?"middle":"top",z=m?"right": -"center",C=c.top+u):(P=m?"middle":"bottom",z=m?"left":"center",C=c.bottom-u),r=c.getPixelForTick(f)+b.aliasPixel(g),A=c.getPixelForTick(f,l.offsetGridLines)+h.labelOffset,r=v=O=H=r,y=Q,x=B,G=a.top,F=a.bottom):(A="left"===e.position,C=h.padding,h.mirror?z=A?"left":"right":(z=A?"right":"left",C=u+C),A=A?c.right-C:c.left+C,y=c.getPixelForTick(f),y+=b.aliasPixel(g),C=c.getPixelForTick(f,l.offsetGridLines),r=J,v=R,O=a.left,H=a.right,y=x=G=F=y);I.push({tx1:r,ty1:y,tx2:v,ty2:x,x1:O,y1:G,x2:H,y2:F,labelX:A, -labelY:C,glWidth:g,glColor:p,glBorderDash:t,glBorderDashOffset:w,rotation:-1*M,label:d,textBaseline:P,textAlign:z})}}});b.each(I,function(a){l.display&&(d.save(),d.lineWidth=a.glWidth,d.strokeStyle=a.glColor,d.setLineDash&&(d.setLineDash(a.glBorderDash),d.lineDashOffset=a.glBorderDashOffset),d.beginPath(),l.drawTicks&&(d.moveTo(a.tx1,a.ty1),d.lineTo(a.tx2,a.ty2)),l.drawOnChartArea&&(d.moveTo(a.x1,a.y1),d.lineTo(a.x2,a.y2)),d.stroke(),d.restore());if(h.display){d.save();d.translate(a.labelX,a.labelY); -d.rotate(a.rotation);d.font=x.font;d.textBaseline=a.textBaseline;d.textAlign=a.textAlign;a=a.label;if(b.isArray(a))for(var c=0,e=0;c<a.length;++c)d.fillText(""+a[c],0,e),e+=1.5*x.size;else d.fillText(a,0,0);d.restore()}})}}})}},{}],32:[function(p,m,n){m.exports=function(g){var l=g.helpers;g.scaleService={constructors:{},defaults:{},registerScaleType:function(f,b,a){this.constructors[f]=b;this.defaults[f]=l.clone(a)},getScaleConstructor:function(f){return this.constructors.hasOwnProperty(f)?this.constructors[f]: -void 0},getScaleDefaults:function(f){return this.defaults.hasOwnProperty(f)?l.scaleMerge(g.defaults.scale,this.defaults[f]):{}},updateScaleDefaults:function(f,b){var a=this.defaults;a.hasOwnProperty(f)&&(a[f]=l.extend(a[f],b))},addScalesToLayout:function(f){l.each(f.scales,function(b){b.fullWidth=b.options.fullWidth;b.position=b.options.position;b.weight=b.options.weight;g.layoutService.addBox(f,b)})}}}},{}],33:[function(p,m,n){m.exports=function(g){var l=g.helpers;g.Ticks={generators:{linear:function(f, -b){var a=[],c;f.stepSize&&0<f.stepSize?c=f.stepSize:(c=l.niceNum(b.max-b.min,!1),c=l.niceNum(c/(f.maxTicks-1),!0));var e=Math.floor(b.min/c)*c,d=Math.ceil(b.max/c)*c;f.min&&f.max&&f.stepSize&&l.almostWhole((f.max-f.min)/f.stepSize,c/1E3)&&(e=f.min,d=f.max);var g=(d-e)/c,g=l.almostEquals(g,Math.round(g),c/1E3)?Math.round(g):Math.ceil(g);a.push(void 0!==f.min?f.min:e);for(var h=1;h<g;++h)a.push(e+h*c);a.push(void 0!==f.max?f.max:d);return a}},formatters:{values:function(f){return l.isArray(f)?f:""+ -f},linear:function(f,b,a){b=3<a.length?a[2]-a[1]:a[1]-a[0];1<Math.abs(b)&&f!==Math.floor(f)&&(b=f-Math.floor(f));b=l.log10(Math.abs(b));0!==f?(b=-1*Math.floor(b),b=Math.max(Math.min(b,20),0),f=f.toFixed(b)):f="0";return f}}}}},{}],36:[function(p,m,n){m.exports=function(g){var l=g.helpers,f=g.defaults.global;g.defaults.global.elements.line={tension:.4,backgroundColor:f.defaultColor,borderWidth:3,borderColor:f.defaultColor,borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter", -capBezierPoints:!0};g.elements.Line=g.Element.extend({draw:function(){var b=this._view,a=this._chart.ctx,c=b.spanGaps,e=this._children.slice(),d=f.elements.line,g,h,m;this._loop&&e.length&&e.push(e[0]);a.save();a.lineCap=b.borderCapStyle||d.borderCapStyle;a.setLineDash&&a.setLineDash(b.borderDash||d.borderDash);a.lineDashOffset=b.borderDashOffset||d.borderDashOffset;a.lineJoin=b.borderJoinStyle||d.borderJoinStyle;a.lineWidth=b.borderWidth||d.borderWidth;a.strokeStyle=b.borderColor||f.defaultColor; -a.beginPath();b=-1;for(d=0;d<e.length;++d)g=e[d],h=l.previousItem(e,d),m=g._view,0===d?m.skip||(a.moveTo(m.x,m.y),b=d):(h=-1===b?h:e[b],m.skip||(b!==d-1&&!c||-1===b?a.moveTo(m.x,m.y):l.canvas.lineTo(a,h._view,g._view),b=d));a.stroke();a.restore()}})}},{}],37:[function(p,m,n){m.exports=function(g){var l=g.helpers,f=g.defaults.global,b=f.defaultColor;f.elements.point={radius:3,pointStyle:"circle",backgroundColor:b,borderWidth:0,borderColor:b};g.elements.Point=g.Element.extend({getCenterPoint:function(){var a= -this._view;return{x:a.x,y:a.y}},getArea:function(){return Math.PI*Math.pow(this._view.radius,2)},draw:function(a){a=this._view;var c=this._chart.ctx,e=a.pointStyle,d=a.radius,k=a.x,h=a.y;a.skip||(c.strokeStyle=a.borderColor||b,c.lineWidth=l.getValueOrDefault(a.borderWidth,f.elements.point.borderWidth),c.fillStyle=a.backgroundColor||b,g.canvasHelpers.drawPoint(c,e,d,k,h))}})}},{}],39:[function(p,m,n){m.exports=function(g){function l(b,e){var d=a.getStyle(b,e);return(d=d&&d.match(/^(\d+)(\.\d+)?px$/))? -Number(d[1]):void 0}function f(b){var e=document.createElement("iframe");e.className="chartjs-hidden-iframe";e.style.cssText="display:block;overflow:hidden;border:0;margin:0;top:0;left:0;bottom:0;right:0;height:100%;width:100%;position:absolute;pointer-events:none;z-index:-1;";e.tabIndex=-1;a.addEvent(e,"load",function(){a.addEvent(e.contentWindow||e,"resize",b);b()});return e}function b(b,e,d){var g=b._chartjs={ticking:!1};g.resizer=f(function(){g.ticking||(g.ticking=!0,a.requestAnimFrame.call(window, -function(){if(g.resizer)return g.ticking=!1,e({type:"resize",chart:d,"native":null,x:null,y:null})}))});b.insertBefore(g.resizer,b.firstChild)}var a=g.helpers;return{acquireContext:function(a,b){"string"===typeof a?a=document.getElementById(a):a.length&&(a=a[0]);a&&a.canvas&&(a=a.canvas);var d=a&&a.getContext&&a.getContext("2d");if(d&&d.canvas===a){var f=a,g=f.style,m=f.getAttribute("height"),n=f.getAttribute("width");f._chartjs={initial:{height:m,width:n,style:{display:g.display,height:g.height, -width:g.width}}};g.display=g.display||"block";if(null===n||""===n){var p=l(f,"width");void 0!==p&&(f.width=p)}if(null===m||""===m)""===f.style.height?f.height=f.width/(b.options.aspectRatio||2):(g=l(f,"height"),void 0!==p&&(f.height=g));return d}return null},addEventListener:function(a,e,d){var f=a.canvas;"resize"===e&&b(f.parentNode,d,a)}}}},{}],40:[function(p,m,n){var g=p(39);m.exports=function(l){l.platform=g(l)}},{39:39}],44:[function(p,m,n){m.exports=function(g){var l=g.helpers,f=g.Scale.extend({getLabels:function(){var b= -this.chart.data;return(this.isHorizontal()?b.xLabels:b.yLabels)||b.labels},determineDataLimits:function(){var b=this.getLabels();this.minIndex=0;this.maxIndex=b.length-1;var a;void 0!==this.options.ticks.min&&(a=l.indexOf(b,this.options.ticks.min),this.minIndex=-1!==a?a:this.minIndex);void 0!==this.options.ticks.max&&(a=l.indexOf(b,this.options.ticks.max),this.maxIndex=-1!==a?a:this.maxIndex);this.min=b[this.minIndex];this.max=b[this.maxIndex]},buildTicks:function(){var b=this.getLabels();this.ticks= -0===this.minIndex&&this.maxIndex===b.length-1?b:b.slice(this.minIndex,this.maxIndex+1)},getPixelForValue:function(b,a,c,e){c=Math.max(this.maxIndex+1-this.minIndex-(this.options.gridLines.offsetGridLines?0:1),1);var d;void 0!==b&&null!==b&&(d=this.isHorizontal()?b.x:b.y);if(void 0!==d||void 0!==b&&isNaN(a))b=this.getLabels().indexOf(d||b),a=-1!==b?b:a;if(this.isHorizontal()){b=this.width/c;a=b*(a-this.minIndex);if(this.options.gridLines.offsetGridLines&&e||this.maxIndex===this.minIndex&&e)a+=b/2; -return this.left+Math.round(a)}b=this.height/c;a=b*(a-this.minIndex);this.options.gridLines.offsetGridLines&&e&&(a+=b/2);return this.top+Math.round(a)},getPixelForTick:function(b,a){return this.getPixelForValue(this.ticks[b],b+this.minIndex,null,a)},getValueForPixel:function(b){var a=Math.max(this.ticks.length-(this.options.gridLines.offsetGridLines?0:1),1),c=this.isHorizontal(),a=(c?this.width:this.height)/a;b-=c?this.left:this.top;this.options.gridLines.offsetGridLines&&(b-=a/2);return 0>=b?0:Math.round(b/ -a)},getBasePixel:function(){return this.bottom}});g.scaleService.registerScaleType("category",f,{position:"bottom"})}},{}],45:[function(p,m,n){m.exports=function(g){var l=g.helpers,f={position:"left",ticks:{callback:g.Ticks.formatters.linear}},b=g.LinearScaleBase.extend({determineDataLimits:function(){var a=this,b=a.chart,e=b.data.datasets,d=a.isHorizontal();a.min=null;a.max=null;l.each(e,function(e,f){var g=b.getDatasetMeta(f);b.isDatasetVisible(f)&&(d?g.xAxisID===a.id:g.yAxisID===a.id)&&l.each(e.data, -function(b,c){var d=+a.getRightValue(b);isNaN(d)||g.data[c].hidden||(null===a.min?a.min=d:d<a.min&&(a.min=d),null===a.max?a.max=d:d>a.max&&(a.max=d))})});a.min=isFinite(a.min)?a.min:0;a.max=isFinite(a.max)?a.max:1;this.handleTickRangeOptions()},getTickLimit:function(){var a;a=this.options.ticks;if(this.isHorizontal())a=Math.min(a.maxTicksLimit?a.maxTicksLimit:11,Math.ceil(this.width/50));else{var b=l.getValueOrDefault(a.fontSize,g.defaults.global.defaultFontSize);a=Math.min(a.maxTicksLimit?a.maxTicksLimit: -11,Math.ceil(this.height/(2*b)))}return a},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getPixelForValue:function(a){var b=this.start;a=+this.getRightValue(a);var e=this.end-b;if(this.isHorizontal())return b=this.left+this.width/e*(a-b),Math.round(b);b=this.bottom-this.height/e*(a-b);return Math.round(b)},getValueForPixel:function(a){var b=this.isHorizontal();return this.start+(b?a-this.left:this.bottom-a)/(b?this.width:this.height)*(this.end-this.start)},getPixelForTick:function(a){return this.getPixelForValue(this.ticksAsNumbers[a])}}); -g.scaleService.registerScaleType("linear",b,f)}},{}],46:[function(p,m,n){m.exports=function(g){var l=g.helpers,f=l.noop;g.LinearScaleBase=g.Scale.extend({handleTickRangeOptions:function(){var b=this.options.ticks;void 0!==b.min?this.min=b.min:void 0!==b.suggestedMin&&(this.min=null===this.min?b.suggestedMin:Math.min(this.min,b.suggestedMin));void 0!==b.max?this.max=b.max:void 0!==b.suggestedMax&&(this.max=null===this.max?b.suggestedMax:Math.max(this.max,b.suggestedMax));this.min===this.max&&(this.max++, -this.min--)},getTickLimit:f,handleDirectionalChanges:f,buildTicks:function(){var b=this.options.ticks,a=this.getTickLimit(),a=Math.max(2,a),a={maxTicks:a,min:b.min,max:b.max,stepSize:l.getValueOrDefault(b.fixedStepSize,b.stepSize)},a=this.ticks=g.Ticks.generators.linear(a,this);this.handleDirectionalChanges();this.max=l.max(a);this.min=l.min(a);b.reverse?(a.reverse(),this.start=this.max,this.end=this.min):(this.start=this.min,this.end=this.max)},convertTicksToLabels:function(){this.ticksAsNumbers= -this.ticks.slice();this.zeroLineIndex=this.ticks.indexOf(0);g.Scale.prototype.convertTicksToLabels.call(this)}})}},{}]},{},[7])(7)}(); +/*! + * Chart.js + * http://chartjs.org/ + * Version: 2.7.1 + * + * Copyright 2017 Nick Downie + * Released under the MIT license + * https://github.com/chartjs/Chart.js/blob/master/LICENSE.md + */ +!function(t){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var e;e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,e.Chart=t()}}(function(){return function t(e,i,n){function a(r,s){if(!i[r]){if(!e[r]){var l="function"==typeof require&&require;if(!s&&l)return l(r,!0);if(o)return o(r,!0);var c=new Error("Cannot find module '"+r+"'");throw c.code="MODULE_NOT_FOUND",c}var d=i[r]={exports:{}};e[r][0].call(d.exports,function(t){var i=e[r][1][t];return a(i?i:t)},d,d.exports,t,e,i,n)}return i[r].exports}for(var o="function"==typeof require&&require,r=0;r<n.length;r++)a(n[r]);return a}({1:[function(t,e,i){var n=t(9)();n.helpers=t(22),t(8)(n),n.defaults=t(6),n.Element=t(7),n.elements=t(17),n.platform=t(24),t(4)(n),t(5)(n),t(10)(n),t(12)(n),t(11)(n),t(27)(n),t(25)(n),t(26)(n),t(2)(n),t(3)(n),n.platform.initialize(),e.exports=n,"undefined"!=typeof window&&(window.Chart=n),n.canvasHelpers=n.helpers.canvas},{10:10,11:11,12:12,17:17,2:2,22:22,24:24,25:25,26:26,27:27,3:3,4:4,5:5,6:6,7:7,8:8,9:9}],2:[function(t,e,i){"use strict";function n(t,e){var i,n,a,o,r=t.isHorizontal()?t.width:t.height,s=t.getTicks();for(a=1,o=e.length;a<o;++a)r=Math.min(r,e[a]-e[a-1]);for(a=0,o=s.length;a<o;++a)n=t.getPixelForTick(a),r=a>0?Math.min(r,n-i):r,i=n;return r}function a(t,e,i){var n,a,o=i.barThickness,r=e.stackCount,s=e.pixels[t];return l.isNullOrUndef(o)?(n=e.min*i.categoryPercentage,a=i.barPercentage):(n=o*r,a=1),{chunk:n/r,ratio:a,start:s-n/2}}function o(t,e,i){var n,a,o=e.pixels,r=o[t],s=t>0?o[t-1]:null,l=t<o.length-1?o[t+1]:null,c=i.categoryPercentage;return null===s&&(s=r-(null===l?e.end-r:l-r)),null===l&&(l=r+r-s),n=r-(r-s)/2*c,a=(l-s)/2*c,{chunk:a/e.stackCount,ratio:i.barPercentage,start:n}}var r=t(6),s=t(17),l=t(22);r._set("bar",{scales:{xAxes:[{type:"category",categoryPercentage:.8,barPercentage:.9,offset:!0,gridLines:{offsetGridLines:!0}}],yAxes:[{type:"linear"}]}}),r._set("horizontalBar",{scales:{xAxes:[{type:"linear",position:"bottom"}],yAxes:[{position:"left",type:"category",categoryPercentage:.8,barPercentage:.9,offset:!0,gridLines:{offsetGridLines:!0}}]},elements:{rectangle:{borderSkipped:"left"}}}),e.exports=function(t){t.controllers.bar=t.DatasetController.extend({dataElementType:s.Rectangle,initialize:function(){var e,i=this;t.DatasetController.prototype.initialize.apply(i,arguments),e=i.getMeta(),e.stack=i.getDataset().stack,e.bar=!0},update:function(t){var e,i,n=this,a=n.getMeta().data;for(n._ruler=n.getRuler(),e=0,i=a.length;e<i;++e)n.updateElement(a[e],e,t)},updateElement:function(t,e,i){var n=this,a=n.chart,o=n.getMeta(),r=n.getDataset(),s=a.options.elements.rectangle;t._xScale=n.getScaleForId(o.xAxisID),t._yScale=n.getScaleForId(o.yAxisID),t._datasetIndex=n.index,t._index=e,t._model={datasetLabel:r.label,label:a.data.labels[e],borderSkipped:s.borderSkipped,backgroundColor:l.valueAtIndexOrDefault(r.backgroundColor,e,s.backgroundColor),borderColor:l.valueAtIndexOrDefault(r.borderColor,e,s.borderColor),borderWidth:l.valueAtIndexOrDefault(r.borderWidth,e,s.borderWidth)},n.updateElementGeometry(t,e,i),t.pivot()},updateElementGeometry:function(t,e,i){var n=this,a=t._model,o=n.getValueScale(),r=o.getBasePixel(),s=o.isHorizontal(),l=n._ruler||n.getRuler(),c=n.calculateBarValuePixels(n.index,e),d=n.calculateBarIndexPixels(n.index,e,l);a.horizontal=s,a.base=i?r:c.base,a.x=s?i?r:c.head:d.center,a.y=s?d.center:i?r:c.head,a.height=s?d.size:void 0,a.width=s?void 0:d.size},getValueScaleId:function(){return this.getMeta().yAxisID},getIndexScaleId:function(){return this.getMeta().xAxisID},getValueScale:function(){return this.getScaleForId(this.getValueScaleId())},getIndexScale:function(){return this.getScaleForId(this.getIndexScaleId())},getRuler:function(){var t,e,i,a=this,o=a.getIndexScale(),r=1,s=a.index,c=o.isHorizontal(),d=c?o.left:o.top,u=d+(c?o.width:o.height),h=[];for(t=0,e=a.getMeta().data.length;t<e;++t)h.push(o.getPixelForValue(null,t,s));return i=l.isNullOrUndef(o.options.barThickness)?n(o,h):-1,{min:i,pixels:h,start:d,end:u,stackCount:r,scale:o}},calculateBarValuePixels:function(t,e){var i,n,a,o=this,r=o.chart,s=o.getMeta(),l=o.getValueScale(),c=r.data.datasets,d=l.getRightValue(c[t].data[e]),u=(l.options.stacked,s.stack,0);return i=l.getPixelForValue(u),n=l.getPixelForValue(u+d),a=(n-i)/2,{size:a,base:i,head:n,center:n+a/2}},calculateBarIndexPixels:function(t,e,i){var n=i.scale.options,r="flex"===n.barThickness?o(e,i,n):a(e,i,n),s=0,c=r.start+r.chunk*s+r.chunk/2,d=Math.min(l.valueOrDefault(n.maxBarThickness,1/0),r.chunk*r.ratio);return{base:c-d/2,head:c+d/2,center:c,size:d}},draw:function(){var t=this,e=t.chart,i=t.getValueScale(),n=t.getMeta().data,a=t.getDataset(),o=n.length,r=0;for(l.canvas.clipArea(e.ctx,e.chartArea);r<o;++r)isNaN(i.getRightValue(a.data[r]))||n[r].draw();l.canvas.unclipArea(e.ctx)}}),t.controllers.horizontalBar=t.controllers.bar.extend({getValueScaleId:function(){return this.getMeta().xAxisID},getIndexScaleId:function(){return this.getMeta().yAxisID}})}},{17:17,22:22,6:6}],3:[function(t,e,i){"use strict";var n=t(6),a=t(17),o=t(22);n._set("line",{showLines:!0,spanGaps:!1,scales:{xAxes:[{type:"category",id:"x-axis-0"}],yAxes:[{type:"linear",id:"y-axis-0"}]}}),e.exports=function(t){function e(t,e){return o.valueOrDefault(t.showLine,e.showLines)}t.controllers.line=t.DatasetController.extend({datasetElementType:a.Line,dataElementType:a.Point,update:function(t){var i,n,a=this,r=a.getMeta(),s=r.dataset,l=r.data||[],c=a.chart.options,d=c.elements.line,u=a.getScaleForId(r.yAxisID),h=a.getDataset(),f=e(h,c);for(f&&(void 0!==h.tension&&void 0===h.lineTension&&(h.lineTension=h.tension),s._scale=u,s._datasetIndex=a.index,s._children=l,s._model={spanGaps:h.spanGaps?h.spanGaps:c.spanGaps,tension:o.valueOrDefault(h.lineTension,d.tension),backgroundColor:h.backgroundColor||d.backgroundColor,borderWidth:h.borderWidth||d.borderWidth,borderColor:h.borderColor||d.borderColor,borderCapStyle:h.borderCapStyle||d.borderCapStyle,borderDash:h.borderDash||d.borderDash,borderDashOffset:h.borderDashOffset||d.borderDashOffset,borderJoinStyle:h.borderJoinStyle||d.borderJoinStyle,fill:void 0!==h.fill?h.fill:d.fill,steppedLine:o.valueOrDefault(h.steppedLine,d.stepped),cubicInterpolationMode:o.valueOrDefault(h.cubicInterpolationMode,d.cubicInterpolationMode)},s.pivot()),i=0,n=l.length;i<n;++i)a.updateElement(l[i],i,t);for(f&&0!==s._model.tension&&a.updateBezierControlPoints(),i=0,n=l.length;i<n;++i)l[i].pivot()},updateElement:function(t,e,i){var n,a,r=this,s=r.getMeta(),l=t.custom||{},c=r.getDataset(),d=r.index,u=c.data[e],h=r.getScaleForId(s.yAxisID),f=r.getScaleForId(s.xAxisID),p=r.chart.options.elements.point;void 0!==c.radius&&void 0===c.pointRadius&&(c.pointRadius=c.radius),void 0!==c.hitRadius&&void 0===c.pointHitRadius&&(c.pointHitRadius=c.hitRadius),n=f.getPixelForValue("object"==typeof u?u:NaN,e,d),a=i?h.getBasePixel():r.calculatePointY(u,e,d),t._xScale=f,t._yScale=h,t._datasetIndex=d,t._index=e,t._model={x:n,y:a,skip:l.skip||isNaN(n)||isNaN(a),radius:l.radius||o.valueAtIndexOrDefault(c.pointRadius,e,p.radius),pointStyle:l.pointStyle||o.valueAtIndexOrDefault(c.pointStyle,e,p.pointStyle),backgroundColor:c.pointBackgroundColor,borderColor:c.borderColor,borderWidth:c.borderWidth,tension:s.dataset._model?s.dataset._model.tension:0,steppedLine:!!s.dataset._model&&s.dataset._model.steppedLine,hitRadius:l.hitRadius||o.valueAtIndexOrDefault(c.pointHitRadius,e,p.hitRadius)}},calculatePointY:function(t,e,i){var n=this,a=(n.chart,n.getMeta()),o=n.getScaleForId(a.yAxisID);return o.getPixelForValue(t)},updateBezierControlPoints:function(){function t(t,e,i){return Math.max(Math.min(t,i),e)}var e,i,n,a,r,s=this,l=s.getMeta(),c=s.chart.chartArea,d=l.data||[];for(l.dataset._model.spanGaps&&(d=d.filter(function(t){return!t._model.skip})),e=0,i=d.length;e<i;++e)n=d[e],a=n._model,r=o.splineCurve(o.previousItem(d,e)._model,a,o.nextItem(d,e)._model,l.dataset._model.tension),a.controlPointPreviousX=r.previous.x,a.controlPointPreviousY=r.previous.y,a.controlPointNextX=r.next.x,a.controlPointNextY=r.next.y;if(s.chart.options.elements.line.capBezierPoints)for(e=0,i=d.length;e<i;++e)a=d[e]._model,a.controlPointPreviousX=t(a.controlPointPreviousX,c.left,c.right),a.controlPointPreviousY=t(a.controlPointPreviousY,c.top,c.bottom),a.controlPointNextX=t(a.controlPointNextX,c.left,c.right),a.controlPointNextY=t(a.controlPointNextY,c.top,c.bottom)},draw:function(){var t=this,i=t.chart,n=t.getMeta(),a=n.data||[],r=i.chartArea,s=a.length,l=0;for(o.canvas.clipArea(i.ctx,r),e(t.getDataset(),i.options)&&n.dataset.draw(),o.canvas.unclipArea(i.ctx);l<s;++l)a[l].draw(r)}})}},{17:17,22:22,6:6}],4:[function(t,e,i){"use strict";var n=t(6),a=t(22),o=t(24);e.exports=function(t){function e(t){t=t||{};var e=t.data=t.data||{};return e.datasets=e.datasets||[],e.labels=e.labels||[],t.options=a.configMerge(n.global,n[t.type],t.options||{}),t}function i(e){var i=e.options;a.each(e.scales,function(i){t.layoutService.removeBox(e,i)}),i=a.configMerge(t.defaults.global,t.defaults[e.config.type],i),e.options=e.config.options=i,e.ensureScalesHaveIDs(),e.buildOrUpdateScales()}function r(t){return"top"===t||"bottom"===t}t.types={},t.instances={},t.controllers={},a.extend(t.prototype,{construct:function(i,n){var r=this;n=e(n);var s=o.acquireContext(i,n),l=s&&s.canvas,c=l&&l.height,d=l&&l.width;return r.id=a.uid(),r.ctx=s,r.canvas=l,r.config=n,r.width=d,r.height=c,r.aspectRatio=c?d/c:null,r.options=n.options,r._bufferedRender=!1,r.chart=r,r.controller=r,t.instances[r.id]=r,Object.defineProperty(r,"data",{get:function(){return r.config.data},set:function(t){r.config.data=t}}),s&&l?(r.initialize(),void r.update()):void console.error("Failed to create chart: can't acquire context from the given item")},initialize:function(){var t=this;return a.retinaScale(t,t.options.devicePixelRatio),t.bindEvents(),t.options.responsive&&t.resize(!0),t.ensureScalesHaveIDs(),t.buildOrUpdateScales(),t},clear:function(){return a.canvas.clear(this),this},stop:function(){return this},resize:function(t){var e=this,i=e.options,n=e.canvas,o=i.maintainAspectRatio&&e.aspectRatio||null,r=Math.max(0,Math.floor(a.getMaximumWidth(n))),s=Math.max(0,Math.floor(o?r/o:a.getMaximumHeight(n)));if((e.width!==r||e.height!==s)&&(n.width=e.width=r,n.height=e.height=s,n.style.width=r+"px",n.style.height=s+"px",a.retinaScale(e,i.devicePixelRatio),!t)){var l={width:r,height:s};e.options.onResize&&e.options.onResize(e,l),e.stop(),e.update(0)}},ensureScalesHaveIDs:function(){var t=this.options,e=t.scales||{},i=t.scale;a.each(e.xAxes,function(t,e){t.id=t.id||"x-axis-"+e}),a.each(e.yAxes,function(t,e){t.id=t.id||"y-axis-"+e}),i&&(i.id=i.id||"scale")},buildOrUpdateScales:function(){var e=this,i=e.options,n=e.scales||{},o=[],s=Object.keys(n).reduce(function(t,e){return t[e]=!1,t},{});i.scales&&(o=o.concat((i.scales.xAxes||[]).map(function(t){return{options:t,dtype:"category",dposition:"bottom"}}),(i.scales.yAxes||[]).map(function(t){return{options:t,dtype:"linear",dposition:"left"}}))),a.each(o,function(i){var o=i.options,l=o.id,c=a.valueOrDefault(o.type,i.dtype);r(o.position)!==r(i.dposition)&&(o.position=i.dposition),s[l]=!0;var d=null;if(l in n&&n[l].type===c)d=n[l],d.options=o,d.ctx=e.ctx,d.chart=e;else{var u=t.scaleService.getScaleConstructor(c);if(!u)return;d=new u({id:l,type:c,options:o,ctx:e.ctx,chart:e}),n[d.id]=d}d.mergeTicksOptions(),i.isDefault&&(e.scale=d)}),a.each(s,function(t,e){t||delete n[e]}),e.scales=n,t.scaleService.addScalesToLayout(this)},buildOrUpdateControllers:function(){var e=this,i=[],n=[];return a.each(e.data.datasets,function(a,o){var r=e.getDatasetMeta(o),s=a.type||e.config.type;if(r.type&&r.type!==s&&(e.destroyDatasetMeta(o),r=e.getDatasetMeta(o)),r.type=s,i.push(r.type),r.controller)r.controller.updateIndex(o),r.controller.linkScales();else{var l=t.controllers[r.type];if(void 0===l)throw new Error('"'+r.type+'" is not a chart type.');r.controller=new l(e,o),n.push(r.controller)}},e),n},resetElements:function(){var t=this;a.each(t.data.datasets,function(e,i){t.getDatasetMeta(i).controller.reset()},t)},reset:function(){this.resetElements()},update:function(t){var e=this;t&&"object"==typeof t||(t={duration:t,lazy:arguments[1]}),i(e);var n=e.buildOrUpdateControllers();a.each(e.data.datasets,function(t,i){e.getDatasetMeta(i).controller.buildOrUpdateElements()},e),e.updateLayout(),e.options.animation&&e.options.animation.duration&&a.each(n,function(t){t.reset()}),e.updateDatasets(),e.lastActive=[],e._bufferedRender?e._bufferedRequest={duration:t.duration,easing:t.easing,lazy:t.lazy}:e.render(t)},updateLayout:function(){t.layoutService.update(this,this.width,this.height)},updateDatasets:function(){for(var t=this,e=0,i=t.data.datasets.length;e<i;++e)t.updateDataset(e)},updateDataset:function(t){var e=this,i=e.getDatasetMeta(t);i.controller.update()},render:function(t){var e=this,i=e.options.animation;return e.draw(),a.callback(i&&i.onComplete,[],e),e},draw:function(t){var e=this;e.clear(),a.isNullOrUndef(t)&&(t=1),e.transition(t),a.each(e.boxes,function(t){t.draw(e.chartArea)},e),e.scale&&e.scale.draw(),e.drawDatasets(t)},transition:function(t){for(var e=this,i=0,n=(e.data.datasets||[]).length;i<n;++i)e.isDatasetVisible(i)&&e.getDatasetMeta(i).controller.transition(t)},drawDatasets:function(t){for(var e=this,i=(e.data.datasets||[]).length-1;i>=0;--i)e.isDatasetVisible(i)&&e.drawDataset(i,t)},drawDataset:function(t,e){var i=this,n=i.getDatasetMeta(t);n.controller.draw(e)},getDatasetMeta:function(t){var e=this,i=e.data.datasets[t];i._meta||(i._meta={});var n=i._meta[e.id];return n||(n=i._meta[e.id]={type:null,data:[],dataset:null,controller:null,hidden:null,xAxisID:null,yAxisID:null}),n},getVisibleDatasetCount:function(){for(var t=0,e=0,i=this.data.datasets.length;e<i;++e)this.isDatasetVisible(e)&&t++;return t},isDatasetVisible:function(t){var e=this.getDatasetMeta(t);return"boolean"==typeof e.hidden?!e.hidden:!this.data.datasets[t].hidden},generateLegend:function(){return this.options.legendCallback(this)},destroyDatasetMeta:function(t){var e=this.id,i=this.data.datasets[t],n=i._meta&&i._meta[e];n&&(n.controller.destroy(),delete i._meta[e])},destroy:function(){var e,i,n=this,r=n.canvas;for(n.stop(),e=0,i=n.data.datasets.length;e<i;++e)n.destroyDatasetMeta(e);r&&(a.canvas.clear(n),o.releaseContext(n.ctx),n.canvas=null,n.ctx=null),delete t.instances[n.id]},toBase64Image:function(){return this.canvas.toDataURL.apply(this.canvas,arguments)},bindEvents:function(){var t=this,e=t._listeners={},i=function(){t.eventHandler.apply(t,arguments)};t.options.responsive&&(i=function(){t.resize()},o.addEventListener(t,"resize",i),e.resize=i)}}),t.Controller=t}},{22:22,24:24,6:6}],5:[function(t,e,i){"use strict";var n=t(22);e.exports=function(t){t.DatasetController=function(t,e){this.initialize(t,e)},n.extend(t.DatasetController.prototype,{datasetElementType:null,dataElementType:null,initialize:function(t,e){var i=this;i.chart=t,i.index=e,i.linkScales(),i.addElements()},updateIndex:function(t){this.index=t},linkScales:function(){var t=this,e=t.getMeta(),i=t.getDataset();null!==e.xAxisID&&e.xAxisID in t.chart.scales||(e.xAxisID=i.xAxisID||t.chart.options.scales.xAxes[0].id),null!==e.yAxisID&&e.yAxisID in t.chart.scales||(e.yAxisID=i.yAxisID||t.chart.options.scales.yAxes[0].id)},getDataset:function(){return this.chart.data.datasets[this.index]},getMeta:function(){return this.chart.getDatasetMeta(this.index)},getScaleForId:function(t){return this.chart.scales[t]},reset:function(){this.update(!0)},createMetaDataset:function(){var t=this,e=t.datasetElementType;return e&&new e({_chart:t.chart,_datasetIndex:t.index})},createMetaData:function(t){var e=this,i=e.dataElementType;return i&&new i({_chart:e.chart,_datasetIndex:e.index,_index:t})},addElements:function(){var t,e,i=this,n=i.getMeta(),a=i.getDataset().data||[],o=n.data;for(t=0,e=a.length;t<e;++t)o[t]=o[t]||i.createMetaData(t);n.dataset=n.dataset||i.createMetaDataset()},buildOrUpdateElements:function(){var t=this,e=t.getDataset();e.data||(e.data=[])},update:n.noop,transition:function(t){for(var e=this.getMeta(),i=e.data||[],n=i.length,a=0;a<n;++a)i[a].transition(t);e.dataset&&e.dataset.transition(t)},draw:function(){var t=this.getMeta(),e=t.data||[],i=e.length,n=0;for(t.dataset&&t.dataset.draw();n<i;++n)e[n].draw()}}),t.DatasetController.extend=n.inherits}},{22:22}],6:[function(t,e,i){"use strict";var n=t(22);e.exports={_set:function(t,e){return n.merge(this[t]||(this[t]={}),e)}}},{22:22}],7:[function(t,e,i){"use strict";var n=t(22),a=function(t){n.extend(this,t),this.initialize.apply(this,arguments)};n.extend(a.prototype,{initialize:function(){this.hidden=!1},pivot:function(){var t=this;return t._view||(t._view=n.clone(t._model)),t._start={},t},transition:function(t){var e=this,i=e._model;e._start,e._view;return e._view=i,e._start=null,e},hasValue:function(){return n.isNumber(this._model.x)&&n.isNumber(this._model.y)}}),a.extend=n.inherits,e.exports=a},{22:22}],8:[function(t,e,i){"use strict";var n=(t(6),t(22));e.exports=function(t){function e(t,e,i){var n;return"string"==typeof t?(n=parseInt(t,10),t.indexOf("%")!==-1&&(n=n/100*e.parentNode[i])):n=t,n}function i(t){return void 0!==t&&null!==t&&"none"!==t}function a(t,n,a){var o=document.defaultView,r=t.parentNode,s=o.getComputedStyle(t)[n],l=o.getComputedStyle(r)[n],c=i(s),d=i(l),u=Number.POSITIVE_INFINITY;return c||d?Math.min(c?e(s,t,a):u,d?e(l,r,a):u):"none"}n.configMerge=function(){return n.merge(n.clone(arguments[0]),[].slice.call(arguments,1),{merger:function(e,i,a,o){var r=i[e]||{},s=a[e];"scales"===e?i[e]=n.scaleMerge(r,s):"scale"===e?i[e]=n.merge(r,[t.scaleService.getScaleDefaults(s.type),s]):n._merger(e,i,a,o)}})},n.scaleMerge=function(){return n.merge(n.clone(arguments[0]),[].slice.call(arguments,1),{merger:function(e,i,a,o){if("xAxes"===e||"yAxes"===e){var r,s,l,c=a[e].length;for(i[e]||(i[e]=[]),r=0;r<c;++r)l=a[e][r],s=n.valueOrDefault(l.type,"xAxes"===e?"category":"linear"),r>=i[e].length&&i[e].push({}),!i[e][r].type||l.type&&l.type!==i[e][r].type?n.merge(i[e][r],[t.scaleService.getScaleDefaults(s),l]):n.merge(i[e][r],l)}else n._merger(e,i,a,o)}})},n.where=function(t,e){if(n.isArray(t)&&Array.prototype.filter)return t.filter(e);var i=[];return n.each(t,function(t){e(t)&&i.push(t)}),i},n.findIndex=Array.prototype.findIndex?function(t,e,i){return t.findIndex(e,i)}:function(t,e,i){i=void 0===i?t:i;for(var n=0,a=t.length;n<a;++n)if(e.call(i,t[n],n,t))return n;return-1},n.findNextWhere=function(t,e,i){n.isNullOrUndef(i)&&(i=-1);for(var a=i+1;a<t.length;a++){var o=t[a];if(e(o))return o}},n.findPreviousWhere=function(t,e,i){n.isNullOrUndef(i)&&(i=t.length);for(var a=i-1;a>=0;a--){var o=t[a];if(e(o))return o}},n.isNumber=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},n.almostEquals=function(t,e,i){return Math.abs(t-e)<i},n.almostWhole=function(t,e){var i=Math.round(t);return i-e<t&&i+e>t},n.max=function(t){return t.reduce(function(t,e){return isNaN(e)?t:Math.max(t,e)},Number.NEGATIVE_INFINITY)},n.min=function(t){return t.reduce(function(t,e){return isNaN(e)?t:Math.min(t,e)},Number.POSITIVE_INFINITY)},n.sign=Math.sign?function(t){return Math.sign(t)}:function(t){return t=+t,0===t||isNaN(t)?t:t>0?1:-1},n.log10=Math.log10?function(t){return Math.log10(t)}:function(t){return Math.log(t)/Math.LN10},n.toRadians=function(t){return t*(Math.PI/180)},n.aliasPixel=function(t){return t%2===0?0:.5},n.splineCurve=function(t,e,i,n){var a=t.skip?e:t,o=e,r=i.skip?e:i,s=Math.sqrt(Math.pow(o.x-a.x,2)+Math.pow(o.y-a.y,2)),l=Math.sqrt(Math.pow(r.x-o.x,2)+Math.pow(r.y-o.y,2)),c=s/(s+l),d=l/(s+l);c=isNaN(c)?0:c,d=isNaN(d)?0:d;var u=n*c,h=n*d;return{previous:{x:o.x-u*(r.x-a.x),y:o.y-u*(r.y-a.y)},next:{x:o.x+h*(r.x-a.x),y:o.y+h*(r.y-a.y)}}},n.nextItem=function(t,e,i){return i?e>=t.length-1?t[0]:t[e+1]:e>=t.length-1?t[t.length-1]:t[e+1]},n.previousItem=function(t,e,i){return i?e<=0?t[t.length-1]:t[e-1]:e<=0?t[0]:t[e-1]},n.niceNum=function(t,e){var i,a=Math.floor(n.log10(t)),o=t/Math.pow(10,a);return i=e?o<1.5?1:o<3?2:o<7?5:10:o<=1?1:o<=2?2:o<=5?5:10,i*Math.pow(10,a)},n.requestAnimFrame=function(){return"undefined"==typeof window?function(t){t()}:window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){return window.setTimeout(t,1e3/60)}}(),n.getConstraintWidth=function(t){return a(t,"max-width","clientWidth")},n.getConstraintHeight=function(t){return a(t,"max-height","clientHeight")},n.getMaximumWidth=function(t){var e=t.parentNode;if(!e)return t.clientWidth;var i=parseInt(n.getStyle(e,"padding-left"),10),a=parseInt(n.getStyle(e,"padding-right"),10),o=e.clientWidth-i-a,r=n.getConstraintWidth(t);return isNaN(r)?o:Math.min(o,r)},n.getMaximumHeight=function(t){var e=t.parentNode;if(!e)return t.clientHeight;var i=parseInt(n.getStyle(e,"padding-top"),10),a=parseInt(n.getStyle(e,"padding-bottom"),10),o=e.clientHeight-i-a,r=n.getConstraintHeight(t);return isNaN(r)?o:Math.min(o,r)},n.getStyle=function(t,e){return t.currentStyle?t.currentStyle[e]:document.defaultView.getComputedStyle(t,null).getPropertyValue(e)},n.retinaScale=function(t,e){var i=t.currentDevicePixelRatio=e||window.devicePixelRatio||1;if(1!==i){var n=t.canvas,a=t.height,o=t.width;n.height=a*i,n.width=o*i,t.ctx.scale(i,i),n.style.height||n.style.width||(n.style.height=a+"px",n.style.width=o+"px")}},n.fontString=function(t,e,i){return e+" "+t+"px "+i},n.longestText=function(t,e,i,a){a=a||{};var o=a.data=a.data||{},r=a.garbageCollect=a.garbageCollect||[];a.font!==e&&(o=a.data={},r=a.garbageCollect=[],a.font=e),t.font=e;var s=0;n.each(i,function(e){void 0!==e&&null!==e&&n.isArray(e)!==!0?s=n.measureText(t,o,r,s,e):n.isArray(e)&&n.each(e,function(e){void 0===e||null===e||n.isArray(e)||(s=n.measureText(t,o,r,s,e))})});var l=r.length/2;if(l>i.length){for(var c=0;c<l;c++)delete o[r[c]];r.splice(0,l)}return s},n.measureText=function(t,e,i,n,a){var o=e[a];return o||(o=e[a]=t.measureText(a).width,i.push(a)),o>n&&(n=o),n},n.numberOfLabelLines=function(t){var e=1;return n.each(t,function(t){n.isArray(t)&&t.length>e&&(e=t.length)}),e}}},{22:22,6:6}],9:[function(t,e,i){"use strict";var n=t(6);n._set("global",{responsive:!0,maintainAspectRatio:!0,defaultColor:"rgba(0,0,0,0.1)",defaultFontColor:"#666",defaultFontFamily:"'Helvetica Neue', 'Helvetica', 'Arial', sans-serif",defaultFontSize:12,defaultFontStyle:"normal",showLines:!0,elements:{},layout:{padding:{top:0,right:0,bottom:0,left:0}}}),e.exports=function(){var t=function(t,e){return this.construct(t,e),this};return t.Chart=t,t}},{6:6}],10:[function(t,e,i){"use strict";var n=t(22);e.exports=function(t){function e(t,e){return n.where(t,function(t){return t.position===e})}function i(t,e){t.forEach(function(t,e){return t._tmpIndex_=e,t}),t.sort(function(t,i){var n=e?i:t,a=e?t:i;return n.weight===a.weight?n._tmpIndex_-a._tmpIndex_:n.weight-a.weight}),t.forEach(function(t){delete t._tmpIndex_})}t.layoutService={defaults:{},addBox:function(t,e){t.boxes||(t.boxes=[]),e.fullWidth=e.fullWidth||!1,e.position=e.position||"top",e.weight=e.weight||0,t.boxes.push(e)},removeBox:function(t,e){var i=t.boxes?t.boxes.indexOf(e):-1;i!==-1&&t.boxes.splice(i,1)},configure:function(t,e,i){for(var n,a=["fullWidth","position","weight"],o=a.length,r=0;r<o;++r)n=a[r],i.hasOwnProperty(n)&&(e[n]=i[n])},update:function(t,a,o){function r(t){var e,i=t.isHorizontal();i?(e=t.update(t.fullWidth?w:P,I),T-=e.height):(e=t.update(S,T),P-=e.width),_.push({horizontal:i,minSize:e,box:t})}function s(t){var e=n.findNextWhere(_,function(e){return e.box===t});if(e)if(t.isHorizontal()){var i={left:Math.max(L,A),right:Math.max(N,O),top:0,bottom:0};t.update(t.fullWidth?w:P,k/2,i)}else t.update(e.minSize.width,T)}function l(t){var e=n.findNextWhere(_,function(e){return e.box===t}),i={left:0,right:0,top:F,bottom:R};e&&t.update(e.minSize.width,T,i)}function c(t){t.isHorizontal()?(t.left=t.fullWidth?h:L,t.right=t.fullWidth?a-f:L+P,t.top=j,t.bottom=j+t.height,j=t.bottom):(t.left=E,t.right=E+t.width,t.top=F,t.bottom=F+T,E=t.right)}if(t){var d=t.options.layout||{},u=n.options.toPadding(d.padding),h=u.left,f=u.right,p=u.top,g=u.bottom,x=e(t.boxes,"left"),m=e(t.boxes,"right"),v=e(t.boxes,"top"),b=e(t.boxes,"bottom"),y=e(t.boxes,"chartArea");i(x,!0),i(m,!1),i(v,!0),i(b,!1);var w=a-h-f,k=o-p-g,D=w/2,M=k/2,S=(a-D)/(x.length+m.length),I=(o-M)/(v.length+b.length),P=w,T=k,_=[];n.each(x.concat(m,v,b),r);var A=0,O=0,C=0,z=0;n.each(v.concat(b),function(t){if(t.getPadding){var e=t.getPadding();A=Math.max(A,e.left),O=Math.max(O,e.right)}}),n.each(x.concat(m),function(t){if(t.getPadding){var e=t.getPadding();C=Math.max(C,e.top),z=Math.max(z,e.bottom)}});var L=h,N=f,F=p,R=g;n.each(x.concat(m),s),n.each(x,function(t){L+=t.width}),n.each(m,function(t){N+=t.width}),n.each(v.concat(b),s),n.each(v,function(t){F+=t.height}),n.each(b,function(t){R+=t.height}),n.each(x.concat(m),l),L=h,N=f,F=p,R=g,n.each(x,function(t){L+=t.width}),n.each(m,function(t){N+=t.width}),n.each(v,function(t){F+=t.height}),n.each(b,function(t){R+=t.height});var W=Math.max(A-L,0);L+=W,N+=Math.max(O-N,0);var V=Math.max(C-F,0);F+=V,R+=Math.max(z-R,0);var H=o-F-R,B=a-L-N;B===P&&H===T||(n.each(x,function(t){t.height=H}),n.each(m,function(t){t.height=H}),n.each(v,function(t){t.fullWidth||(t.width=B)}),n.each(b,function(t){t.fullWidth||(t.width=B)}),T=H,P=B);var E=h+W,j=p+V;n.each(x.concat(v),c),E+=P,j+=T,n.each(m,c),n.each(b,c),t.chartArea={left:L,top:F,right:L+P,bottom:F+T},n.each(y,function(e){e.left=t.chartArea.left,e.top=t.chartArea.top,e.right=t.chartArea.right,e.bottom=t.chartArea.bottom,e.update(P,T)})}}}}},{22:22}],11:[function(t,e,i){"use strict";function n(t){var e,i,n=[];for(e=0,i=t.length;e<i;++e)n.push(t[e].label);return n}function a(t,e,i){var n=t.getPixelForTick(e);return i&&(n-=0===e?(t.getPixelForTick(1)-n)/2:(n-t.getPixelForTick(e-1))/2),n}var o=t(6),r=t(7),s=t(22),l=t(13);o._set("scale",{display:!0,position:"left",offset:!1,gridLines:{display:!0,color:"rgba(0, 0, 0, 0.1)",lineWidth:1,drawOnChartArea:!0,drawTicks:!0,tickMarkLength:10,zeroLineWidth:1,zeroLineColor:"rgba(0,0,0,0.25)",zeroLineBorderDash:[],zeroLineBorderDashOffset:0,offsetGridLines:!1,borderDash:[],borderDashOffset:0},ticks:{beginAtZero:!1,minRotation:0,maxRotation:50,mirror:!1,padding:0,reverse:!1,display:!0,labelOffset:0,callback:l.formatters.values,minor:{},major:{}}}),e.exports=function(t){function e(t,e,i){return s.isArray(e)?s.longestText(t,i,e):t.measureText(e).width}function i(t){var e=s.valueOrDefault,i=o.global,n=e(t.fontSize,i.defaultFontSize),a=e(t.fontStyle,i.defaultFontStyle),r=e(t.fontFamily,i.defaultFontFamily);return{size:n,style:a,family:r,font:s.fontString(n,a,r)}}t.Scale=r.extend({getPadding:function(){var t=this;return{left:t.paddingLeft||0,top:t.paddingTop||0,right:t.paddingRight||0,bottom:t.paddingBottom||0}},getTicks:function(){return this._ticks},mergeTicksOptions:function(){var t=this.options.ticks;t.minor===!1&&(t.minor={display:!1}),t.major===!1&&(t.major={display:!1});for(var e in t)"major"!==e&&"minor"!==e&&("undefined"==typeof t.minor[e]&&(t.minor[e]=t[e]),"undefined"==typeof t.major[e]&&(t.major[e]=t[e]))},update:function(t,e,i){var n,a,o,r,l,c,d=this;for(d.maxWidth=t,d.maxHeight=e,d.margins=s.extend({left:0,right:0,top:0,bottom:0},i),d.longestTextCache=d.longestTextCache||{},d.setDimensions(),d.determineDataLimits(),l=d.buildTicks()||[],o=d.convertTicksToLabels(l)||d.ticks,d.ticks=o,n=0,a=o.length;n<a;++n)r=o[n],c=l[n],c?c.label=r:l.push(c={label:r,major:!1});return d._ticks=l,d.calculateTickRotation(),d.fit(),d.minSize},setDimensions:function(){var t=this;t.isHorizontal()?(t.width=t.maxWidth,t.left=0,t.right=t.width):(t.height=t.maxHeight,t.top=0,t.bottom=t.height),t.paddingLeft=0,t.paddingTop=0,t.paddingRight=0,t.paddingBottom=0},determineDataLimits:s.noop,buildTicks:s.noop,convertTicksToLabels:function(){var t=this,e=t.options.ticks;t.ticks=t.ticks.map(e.userCallback||e.callback,this)},calculateTickRotation:function(){var t=this,e=t.ctx,a=t.options.ticks,o=n(t._ticks),r=i(a);e.font=r.font;var l=a.minRotation||0;if(o.length&&t.options.display&&t.isHorizontal())for(var c,d,u=s.longestText(e,r.font,o,t.longestTextCache),h=u,f=t.getPixelForTick(1)-t.getPixelForTick(0)-6;h>f&&l<a.maxRotation;){var p=s.toRadians(l);if(c=Math.cos(p),d=Math.sin(p),d*u>t.maxHeight){l--;break}l++,h=c*u}t.labelRotation=l},fit:function(){var t=this,a=t.minSize={width:0,height:0},o=n(t._ticks),r=t.options,l=r.ticks,c=r.gridLines,d=r.display,u=t.isHorizontal(),h=i(l),f=r.gridLines.tickMarkLength;if(u?a.width=t.isFullWidth()?t.maxWidth-t.margins.left-t.margins.right:t.maxWidth:a.width=d&&c.drawTicks?f:0,u?a.height=d&&c.drawTicks?f:0:a.height=t.maxHeight,l.display&&d){var p=s.longestText(t.ctx,h.font,o,t.longestTextCache),g=s.numberOfLabelLines(o),x=.5*h.size,m=t.options.ticks.padding;if(u){t.longestLabelWidth=p;var v=s.toRadians(t.labelRotation),b=Math.cos(v),y=Math.sin(v),w=y*p+h.size*g+x*(g-1)+x;a.height=Math.min(t.maxHeight,a.height+w+m),t.ctx.font=h.font;var k=e(t.ctx,o[0],h.font),D=e(t.ctx,o[o.length-1],h.font);0!==t.labelRotation?(t.paddingLeft="bottom"===r.position?b*k+3:b*x+3,t.paddingRight="bottom"===r.position?b*x+3:b*D+3):(t.paddingLeft=k/2+3,t.paddingRight=D/2+3)}else l.mirror?p=0:p+=m+x,a.width=Math.min(t.maxWidth,a.width+p),t.paddingTop=h.size/2,t.paddingBottom=h.size/2}t.handleMargins(),t.width=a.width,t.height=a.height},handleMargins:function(){var t=this;t.margins&&(t.paddingLeft=Math.max(t.paddingLeft-t.margins.left,0),t.paddingTop=Math.max(t.paddingTop-t.margins.top,0),t.paddingRight=Math.max(t.paddingRight-t.margins.right,0),t.paddingBottom=Math.max(t.paddingBottom-t.margins.bottom,0))},isHorizontal:function(){return"top"===this.options.position||"bottom"===this.options.position},isFullWidth:function(){return this.options.fullWidth},getRightValue:function(t){if(s.isNullOrUndef(t))return NaN;if("number"==typeof t&&!isFinite(t))return NaN;if(t)if(this.isHorizontal()){if(void 0!==t.x)return this.getRightValue(t.x)}else if(void 0!==t.y)return this.getRightValue(t.y);return t},getLabelForIndex:s.noop,getPixelForValue:s.noop,getValueForPixel:s.noop,getPixelForTick:function(t){var e=this,i=e.options.offset;if(e.isHorizontal()){var n=e.width-(e.paddingLeft+e.paddingRight),a=n/Math.max(e._ticks.length-(i?0:1),1),o=a*t+e.paddingLeft;i&&(o+=a/2);var r=e.left+Math.round(o);return r+=e.isFullWidth()?e.margins.left:0}var s=e.height-(e.paddingTop+e.paddingBottom);return e.top+t*(s/(e._ticks.length-1))},getPixelForDecimal:function(t){var e=this;if(e.isHorizontal()){var i=e.width-(e.paddingLeft+e.paddingRight),n=i*t+e.paddingLeft,a=e.left+Math.round(n);return a+=e.isFullWidth()?e.margins.left:0}return e.top+t*e.height},getBasePixel:function(){return this.getPixelForValue(this.getBaseValue())},getBaseValue:function(){var t=this,e=t.min,i=t.max;return t.beginAtZero?0:e<0&&i<0?i:e>0&&i>0?e:0},draw:function(t){var e=this,n=e.options;if(n.display){var r=e.ctx,l=o.global,c=n.ticks.minor,d=n.ticks.major||c,u=n.gridLines,h=0!==e.labelRotation,f=e.isHorizontal(),p=e.getTicks(),g=s.valueOrDefault(c.fontColor,l.defaultFontColor),x=i(c),m=s.valueOrDefault(d.fontColor,l.defaultFontColor),v=i(d),b=u.drawTicks?u.tickMarkLength:0,y=s.toRadians(e.labelRotation),w=[],k="right"===n.position?e.left:e.right-b,D="right"===n.position?e.left+b:e.right,M="bottom"===n.position?e.top:e.bottom-b,S="bottom"===n.position?e.top+b:e.bottom;s.each(p,function(i,o){if(!s.isNullOrUndef(i.label)){var r,d,g,x,m=i.label;o===e.zeroLineIndex&&n.offset===u.offsetGridLines?(r=u.zeroLineWidth,d=u.zeroLineColor,g=u.zeroLineBorderDash,x=u.zeroLineBorderDashOffset):(r=s.valueAtIndexOrDefault(u.lineWidth,o),d=s.valueAtIndexOrDefault(u.color,o),g=s.valueOrDefault(u.borderDash,l.borderDash),x=s.valueOrDefault(u.borderDashOffset,l.borderDashOffset));var v,I,P,T,_,A,O,C,z,L,N="middle",F="middle",R=c.padding;if(f){var W=b+R;"bottom"===n.position?(F=h?"middle":"top", +N=h?"right":"center",L=e.top+W):(F=h?"middle":"bottom",N=h?"left":"center",L=e.bottom-W);var V=a(e,o,u.offsetGridLines&&p.length>1);V<e.left&&(d="rgba(0,0,0,0)"),V+=s.aliasPixel(r),z=e.getPixelForTick(o)+c.labelOffset,v=P=_=O=V,I=M,T=S,A=t.top,C=t.bottom}else{var H,B="left"===n.position;c.mirror?(N=B?"left":"right",H=R):(N=B?"right":"left",H=b+R),z=B?e.right-H:e.left+H;var E=a(e,o,u.offsetGridLines&&p.length>1);E<e.top&&(d="rgba(0,0,0,0)"),E+=s.aliasPixel(r),L=e.getPixelForTick(o)+c.labelOffset,v=k,P=D,_=t.left,O=t.right,I=T=A=C=E}w.push({tx1:v,ty1:I,tx2:P,ty2:T,x1:_,y1:A,x2:O,y2:C,labelX:z,labelY:L,glWidth:r,glColor:d,glBorderDash:g,glBorderDashOffset:x,rotation:-1*y,label:m,major:i.major,textBaseline:F,textAlign:N})}}),s.each(w,function(t){if(u.display&&(r.save(),r.lineWidth=t.glWidth,r.strokeStyle=t.glColor,r.setLineDash&&(r.setLineDash(t.glBorderDash),r.lineDashOffset=t.glBorderDashOffset),r.beginPath(),u.drawTicks&&(r.moveTo(t.tx1,t.ty1),r.lineTo(t.tx2,t.ty2)),u.drawOnChartArea&&(r.moveTo(t.x1,t.y1),r.lineTo(t.x2,t.y2)),r.stroke(),r.restore()),c.display){r.save(),r.translate(t.labelX,t.labelY),r.rotate(t.rotation),r.font=t.major?v.font:x.font,r.fillStyle=t.major?m:g,r.textBaseline=t.textBaseline,r.textAlign=t.textAlign;var e=t.label;if(s.isArray(e))for(var i=0,n=0;i<e.length;++i)r.fillText(""+e[i],0,n),n+=1.5*x.size;else r.fillText(e,0,0);r.restore()}})}}})}},{13:13,22:22,6:6,7:7}],12:[function(t,e,i){"use strict";var n=t(6),a=t(22);e.exports=function(t){t.scaleService={constructors:{},defaults:{},registerScaleType:function(t,e,i){this.constructors[t]=e,this.defaults[t]=a.clone(i)},getScaleConstructor:function(t){return this.constructors.hasOwnProperty(t)?this.constructors[t]:void 0},getScaleDefaults:function(t){return this.defaults.hasOwnProperty(t)?a.merge({},[n.scale,this.defaults[t]]):{}},updateScaleDefaults:function(t,e){var i=this;i.defaults.hasOwnProperty(t)&&(i.defaults[t]=a.extend(i.defaults[t],e))},addScalesToLayout:function(e){a.each(e.scales,function(i){i.fullWidth=i.options.fullWidth,i.position=i.options.position,i.weight=i.options.weight,t.layoutService.addBox(e,i)})}}}},{22:22,6:6}],13:[function(t,e,i){"use strict";var n=t(22);e.exports={generators:{linear:function(t,e){var i,a=[];if(t.stepSize&&t.stepSize>0)i=t.stepSize;else{var o=n.niceNum(e.max-e.min,!1);i=n.niceNum(o/(t.maxTicks-1),!0)}var r=Math.floor(e.min/i)*i,s=Math.ceil(e.max/i)*i;t.min&&t.max&&t.stepSize&&n.almostWhole((t.max-t.min)/t.stepSize,i/1e3)&&(r=t.min,s=t.max);var l=(s-r)/i;l=n.almostEquals(l,Math.round(l),i/1e3)?Math.round(l):Math.ceil(l);var c=1;i<1&&(c=Math.pow(10,i.toString().length-2),r=Math.round(r*c)/c,s=Math.round(s*c)/c),a.push(void 0!==t.min?t.min:r);for(var d=1;d<l;++d)a.push(Math.round((r+d*i)*c)/c);return a.push(void 0!==t.max?t.max:s),a}},formatters:{values:function(t){return n.isArray(t)?t:""+t},linear:function(t,e,i){var a=i.length>3?i[2]-i[1]:i[1]-i[0];Math.abs(a)>1&&t!==Math.floor(t)&&(a=t-Math.floor(t));var o=n.log10(Math.abs(a)),r="";if(0!==t){var s=-1*Math.floor(o);s=Math.max(Math.min(s,20),0),r=t.toFixed(s)}else r="0";return r}}}},{22:22}],14:[function(t,e,i){"use strict";var n=t(6),a=t(7),o=t(22),r=n.global;n._set("global",{elements:{line:{tension:.4,backgroundColor:r.defaultColor,borderWidth:3,borderColor:r.defaultColor,borderCapStyle:"butt",borderDash:[],borderDashOffset:0,borderJoinStyle:"miter",capBezierPoints:!0}}}),e.exports=a.extend({draw:function(){var t,e,i,n,a=this,s=a._view,l=a._chart.ctx,c=s.spanGaps,d=a._children.slice(),u=r.elements.line,h=-1;for(a._loop&&d.length&&d.push(d[0]),l.save(),l.lineCap=s.borderCapStyle||u.borderCapStyle,l.setLineDash&&l.setLineDash(s.borderDash||u.borderDash),l.lineDashOffset=s.borderDashOffset||u.borderDashOffset,l.lineJoin=s.borderJoinStyle||u.borderJoinStyle,l.lineWidth=s.borderWidth||u.borderWidth,l.strokeStyle=s.borderColor||r.defaultColor,l.beginPath(),h=-1,t=0;t<d.length;++t)e=d[t],i=o.previousItem(d,t),n=e._view,0===t?n.skip||(l.moveTo(n.x,n.y),h=t):(i=h===-1?i:d[h],n.skip||(h!==t-1&&!c||h===-1?l.moveTo(n.x,n.y):o.canvas.lineTo(l,i._view,e._view),h=t));l.stroke(),l.restore()}})},{22:22,6:6,7:7}],15:[function(t,e,i){"use strict";var n=t(6),a=t(7),o=t(22),r=n.global.defaultColor;n._set("global",{elements:{point:{radius:3,pointStyle:"circle",backgroundColor:r,borderColor:r,borderWidth:1}}}),e.exports=a.extend({draw:function(t){var e=this._view,i=(this._model,this._chart.ctx),a=e.pointStyle,s=e.radius,l=e.x,c=e.y;o.color;e.skip||(i.strokeStyle=e.borderColor||r,i.lineWidth=o.valueOrDefault(e.borderWidth,n.global.elements.point.borderWidth),i.fillStyle=e.backgroundColor||r,o.canvas.drawPoint(i,a,s,l,c))}})},{22:22,6:6,7:7}],16:[function(t,e,i){"use strict";var n=t(6),a=t(7);n._set("global",{elements:{rectangle:{backgroundColor:n.global.defaultColor,borderColor:n.global.defaultColor,borderSkipped:"bottom",borderWidth:0}}}),e.exports=a.extend({draw:function(){function t(t){return m[(b+t)%4]}var e,i,n,a,o,r,s,l=this._chart.ctx,c=this._view,d=c.borderWidth;if(c.horizontal?(e=c.base,i=c.x,n=c.y-c.height/2,a=c.y+c.height/2,o=i>e?1:-1,r=1,s=c.borderSkipped||"left"):(e=c.x-c.width/2,i=c.x+c.width/2,n=c.y,a=c.base,o=1,r=a>n?1:-1,s=c.borderSkipped||"bottom"),d){var u=Math.min(Math.abs(e-i),Math.abs(n-a));d=d>u?u:d;var h=d/2,f=e+("left"!==s?h*o:0),p=i+("right"!==s?-h*o:0),g=n+("top"!==s?h*r:0),x=a+("bottom"!==s?-h*r:0);f!==p&&(n=g,a=x),g!==x&&(e=f,i=p)}l.beginPath(),l.fillStyle=c.backgroundColor,l.strokeStyle=c.borderColor,l.lineWidth=d;var m=[[e,a],[e,n],[i,n],[i,a]],v=["bottom","left","top","right"],b=v.indexOf(s,0);b===-1&&(b=0);var y=t(0);l.moveTo(y[0],y[1]);for(var w=1;w<4;w++)y=t(w),l.lineTo(y[0],y[1]);l.fill(),d&&l.stroke()},height:function(){var t=this._view;return t.base-t.y}})},{6:6,7:7}],17:[function(t,e,i){"use strict";e.exports={},e.exports.Line=t(14),e.exports.Point=t(15),e.exports.Rectangle=t(16)},{14:14,15:15,16:16}],18:[function(t,e,i){"use strict";var n=t(19),i=e.exports={clear:function(t){t.ctx.clearRect(0,0,t.width,t.height)},drawPoint:function(t,e,i,n,a){isNaN(i)||i<=0||(t.beginPath(),t.arc(n,a,i,0,2*Math.PI),t.closePath(),t.fill(),t.stroke())},clipArea:function(t,e){t.save(),t.beginPath(),t.rect(e.left,e.top,e.right-e.left,e.bottom-e.top),t.clip()},unclipArea:function(t){t.restore()},lineTo:function(t,e,i,n){return i.steppedLine?("after"===i.steppedLine&&!n||"after"!==i.steppedLine&&n?t.lineTo(e.x,i.y):t.lineTo(i.x,e.y),void t.lineTo(i.x,i.y)):i.tension?void t.bezierCurveTo(n?e.controlPointPreviousX:e.controlPointNextX,n?e.controlPointPreviousY:e.controlPointNextY,n?i.controlPointNextX:i.controlPointPreviousX,n?i.controlPointNextY:i.controlPointPreviousY,i.x,i.y):void t.lineTo(i.x,i.y)}};n.clear=i.clear},{19:19}],19:[function(t,e,i){"use strict";var n={noop:function(){},uid:function(){var t=0;return function(){return t++}}(),isNullOrUndef:function(t){return null===t||"undefined"==typeof t},isArray:Array.isArray?Array.isArray:function(t){return"[object Array]"===Object.prototype.toString.call(t)},isObject:function(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)},valueOrDefault:function(t,e){return"undefined"==typeof t?e:t},valueAtIndexOrDefault:function(t,e,i){return n.valueOrDefault(n.isArray(t)?t[e]:t,i)},callback:function(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)},each:function(t,e,i,a){var o,r,s;if(n.isArray(t))if(r=t.length,a)for(o=r-1;o>=0;o--)e.call(i,t[o],o);else for(o=0;o<r;o++)e.call(i,t[o],o);else if(n.isObject(t))for(s=Object.keys(t),r=s.length,o=0;o<r;o++)e.call(i,t[s[o]],s[o])},clone:function(t){if(n.isArray(t))return t.map(n.clone);if(n.isObject(t)){for(var e={},i=Object.keys(t),a=i.length,o=0;o<a;++o)e[i[o]]=n.clone(t[i[o]]);return e}return t},_merger:function(t,e,i,a){var o=e[t],r=i[t];n.isObject(o)&&n.isObject(r)?n.merge(o,r,a):e[t]=n.clone(r)},_mergerIf:function(t,e,i){var a=e[t],o=i[t];n.isObject(a)&&n.isObject(o)?n.mergeIf(a,o):e.hasOwnProperty(t)||(e[t]=n.clone(o))},merge:function(t,e,i){var a,o,r,s,l,c=n.isArray(e)?e:[e],d=c.length;if(!n.isObject(t))return t;for(i=i||{},a=i.merger||n._merger,o=0;o<d;++o)if(e=c[o],n.isObject(e))for(r=Object.keys(e),l=0,s=r.length;l<s;++l)a(r[l],t,e,i);return t},mergeIf:function(t,e){return n.merge(t,e,{merger:n._mergerIf})},extend:function(t){for(var e=function(e,i){t[i]=e},i=1,a=arguments.length;i<a;++i)n.each(arguments[i],e);return t},inherits:function(t){var e=this,i=t&&t.hasOwnProperty("constructor")?t.constructor:function(){return e.apply(this,arguments)},a=function(){this.constructor=i};return a.prototype=e.prototype,i.prototype=new a,i.extend=n.inherits,t&&n.extend(i.prototype,t),i.__super__=e.prototype,i}};e.exports=n,n.callCallback=n.callback,n.indexOf=function(t,e,i){return Array.prototype.indexOf.call(t,e,i)},n.getValueOrDefault=n.valueOrDefault,n.getValueAtIndexOrDefault=n.valueAtIndexOrDefault},{}],20:[function(t,e,i){"use strict";t(19);e.exports={}},{19:19}],21:[function(t,e,i){"use strict";var n=t(19);e.exports={toLineHeight:function(t,e){var i=(""+t).match(/^(normal|(\d+(?:\.\d+)?)(px|em|%)?)$/);if(!i||"normal"===i[1])return 1.2*e;switch(t=+i[2],i[3]){case"px":return t;case"%":t/=100}return e*t},toPadding:function(t){var e,i,a,o;return n.isObject(t)?(e=+t.top||0,i=+t.right||0,a=+t.bottom||0,o=+t.left||0):e=i=a=o=+t||0,{top:e,right:i,bottom:a,left:o,height:e+a,width:o+i}}}},{19:19}],22:[function(t,e,i){"use strict";e.exports=t(19),e.exports.easing=t(20),e.exports.canvas=t(18),e.exports.options=t(21)},{18:18,19:19,20:20,21:21}],23:[function(t,e,i){"use strict";function n(t,e){var i=h.getStyle(t,e),n=i&&i.match(/^(\d+)(\.\d+)?px$/);return n?Number(n[1]):void 0}function a(t,e){var i=t.style,a=t.getAttribute("height"),o=t.getAttribute("width");if(t[f]={initial:{height:a,width:o,style:{display:i.display,height:i.height,width:i.width}}},i.display=i.display||"block",null===o||""===o){var r=n(t,"width");void 0!==r&&(t.width=r)}if(null===a||""===a)if(""===t.style.height)t.height=t.width/(e.options.aspectRatio||2);else{var s=n(t,"height");void 0!==r&&(t.height=s)}return t}function o(t,e,i){t.addEventListener(e,i,b)}function r(t,e,i,n,a){return{type:t,chart:e,"native":a||null,x:void 0!==i?i:null,y:void 0!==n?n:null}}function s(t,e){var i=!1,n=[];return function(){n=Array.prototype.slice.call(arguments),e=e||this,i||(i=!0,h.requestAnimFrame.call(window,function(){i=!1,t.apply(e,n)}))}}function l(t){var e=document.createElement("div"),i=p+"size-monitor",n=1e6,a="position:absolute;left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none;visibility:hidden;z-index:-1;";e.style.cssText=a,e.className=i,e.innerHTML='<div class="'+i+'-expand" style="'+a+'"><div style="position:absolute;width:'+n+"px;height:"+n+'px;left:0;top:0"></div></div><div class="'+i+'-shrink" style="'+a+'"><div style="position:absolute;width:200%;height:200%;left:0; top:0"></div></div>';var r=e.childNodes[0],s=e.childNodes[1];e._reset=function(){r.scrollLeft=n,r.scrollTop=n,s.scrollLeft=n,s.scrollTop=n};var l=function(){e._reset(),t()};return o(r,"scroll",l.bind(r,"expand")),o(s,"scroll",l.bind(s,"shrink")),e}function c(t,e){var i=t[f]||(t[f]={}),n=i.renderProxy=function(t){t.animationName===x&&e()};h.each(m,function(e){o(t,e,n)}),i.reflow=!!t.offsetParent,t.classList.add(g)}function d(t,e,i){var n=t[f]||(t[f]={}),a=n.resizer=l(s(function(){if(n.resizer)return e(r("resize",i))}));c(t,function(){if(n.resizer){var e=t.parentNode;e&&e!==a.parentNode&&e.insertBefore(a,e.firstChild),a._reset()}})}function u(t,e){var i=t._style||document.createElement("style");t._style||(t._style=i,e="/* Chart.js */\n"+e,i.setAttribute("type","text/css"),document.getElementsByTagName("head")[0].appendChild(i)),i.appendChild(document.createTextNode(e))}var h=t(22),f="$chartjs",p="chartjs-",g=p+"render-monitor",x=p+"render-animation",m=["animationstart","webkitAnimationStart"],v=function(){var t=!1;try{var e=Object.defineProperty({},"passive",{get:function(){t=!0}});window.addEventListener("e",null,e)}catch(i){}return t}(),b=!!v&&{passive:!0};e.exports={initialize:function(){var t="from{opacity:0.99}to{opacity:1}";u(this,"@-webkit-keyframes "+x+"{"+t+"}@keyframes "+x+"{"+t+"}."+g+"{-webkit-animation:"+x+" 0.001s;animation:"+x+" 0.001s;}")},acquireContext:function(t,e){"string"==typeof t?t=document.getElementById(t):t.length&&(t=t[0]),t&&t.canvas&&(t=t.canvas);var i=t&&t.getContext&&t.getContext("2d");return i&&i.canvas===t?(a(t,e),i):null},addEventListener:function(t,e,i){var n=t.canvas;if("resize"===e)return void d(n,i,t)}}},{22:22}],24:[function(t,e,i){"use strict";var n=(t(22),t(23));e.exports=n},{22:22,23:23}],25:[function(t,e,i){"use strict";e.exports=function(t){var e={position:"bottom"},i=t.Scale.extend({getLabels:function(){var t=this.chart.data;return this.options.labels||(this.isHorizontal()?t.xLabels:t.yLabels)||t.labels},determineDataLimits:function(){var t=this,e=t.getLabels();t.minIndex=0,t.maxIndex=e.length-1;var i;void 0!==t.options.ticks.min&&(i=e.indexOf(t.options.ticks.min),t.minIndex=i!==-1?i:t.minIndex),void 0!==t.options.ticks.max&&(i=e.indexOf(t.options.ticks.max),t.maxIndex=i!==-1?i:t.maxIndex),t.min=e[t.minIndex],t.max=e[t.maxIndex]},buildTicks:function(){var t=this,e=t.getLabels();t.ticks=0===t.minIndex&&t.maxIndex===e.length-1?e:e.slice(t.minIndex,t.maxIndex+1)},getPixelForValue:function(t,e){var i,n=this,a=n.options.offset,o=Math.max(n.maxIndex+1-n.minIndex-(a?0:1),1);if(void 0!==t&&null!==t&&(i=n.isHorizontal()?t.x:t.y),void 0!==i||void 0!==t&&isNaN(e)){var r=n.getLabels();t=i||t;var s=r.indexOf(t);e=s!==-1?s:e}if(n.isHorizontal()){var l=n.width/o,c=l*(e-n.minIndex);return a&&(c+=l/2),n.left+Math.round(c)}var d=n.height/o,u=d*(e-n.minIndex);return a&&(u+=d/2),n.top+Math.round(u)},getPixelForTick:function(t){return this.getPixelForValue(this.ticks[t],t+this.minIndex,null)},getValueForPixel:function(t){var e,i=this,n=i.options.offset,a=Math.max(i._ticks.length-(n?0:1),1),o=i.isHorizontal(),r=(o?i.width:i.height)/a;return t-=o?i.left:i.top,n&&(t-=r/2),e=t<=0?0:Math.round(t/r),e+i.minIndex},getBasePixel:function(){return this.bottom}});t.scaleService.registerScaleType("category",i,e)}},{}],26:[function(t,e,i){"use strict";var n=t(6),a=t(22),o=t(13);e.exports=function(t){var e={position:"left",ticks:{callback:o.formatters.linear}},i=t.LinearScaleBase.extend({determineDataLimits:function(){function t(t){return r?t.xAxisID===e.id:t.yAxisID===e.id}var e=this,i=(e.options,e.chart),n=i.data,o=n.datasets,r=e.isHorizontal(),s=0,l=1;e.min=null,e.max=null,a.each(o,function(n,o){var r=i.getDatasetMeta(o);i.isDatasetVisible(o)&&t(r)&&a.each(n.data,function(t,i){var n=+e.getRightValue(t);isNaN(n)||r.data[i].hidden||(null===e.min?e.min=n:n<e.min&&(e.min=n),null===e.max?e.max=n:n>e.max&&(e.max=n))})}),e.min=isFinite(e.min)&&!isNaN(e.min)?e.min:s,e.max=isFinite(e.max)&&!isNaN(e.max)?e.max:l,this.handleTickRangeOptions()},getTickLimit:function(){var t,e=this,i=e.options.ticks;if(e.isHorizontal())t=Math.min(i.maxTicksLimit?i.maxTicksLimit:11,Math.ceil(e.width/50));else{var o=a.valueOrDefault(i.fontSize,n.global.defaultFontSize);t=Math.min(i.maxTicksLimit?i.maxTicksLimit:11,Math.ceil(e.height/(2*o)))}return t},handleDirectionalChanges:function(){this.isHorizontal()||this.ticks.reverse()},getPixelForValue:function(t){var e,i=this,n=i.start,a=+i.getRightValue(t),o=i.end-n;return e=i.isHorizontal()?i.left+i.width/o*(a-n):i.bottom-i.height/o*(a-n)},getValueForPixel:function(t){var e=this,i=e.isHorizontal(),n=i?e.width:e.height,a=(i?t-e.left:e.bottom-t)/n;return e.start+(e.end-e.start)*a},getPixelForTick:function(t){return this.getPixelForValue(this.ticksAsNumbers[t])}});t.scaleService.registerScaleType("linear",i,e)}},{13:13,22:22,6:6}],27:[function(t,e,i){"use strict";var n=t(22),a=t(13);e.exports=function(t){var e=n.noop;t.LinearScaleBase=t.Scale.extend({getRightValue:function(e){return"string"==typeof e?+e:t.Scale.prototype.getRightValue.call(this,e)},handleTickRangeOptions:function(){var t=this,e=t.options,i=e.ticks;if(i.beginAtZero){var a=n.sign(t.min),o=n.sign(t.max);a<0&&o<0?t.max=0:a>0&&o>0&&(t.min=0)}var r=void 0!==i.min||void 0!==i.suggestedMin,s=void 0!==i.max||void 0!==i.suggestedMax;void 0!==i.min?t.min=i.min:void 0!==i.suggestedMin&&(null===t.min?t.min=i.suggestedMin:t.min=Math.min(t.min,i.suggestedMin)),void 0!==i.max?t.max=i.max:void 0!==i.suggestedMax&&(null===t.max?t.max=i.suggestedMax:t.max=Math.max(t.max,i.suggestedMax)),r!==s&&t.min>=t.max&&(r?t.max=t.min+1:t.min=t.max-1),t.min===t.max&&(t.max++,i.beginAtZero||t.min--)},getTickLimit:e,handleDirectionalChanges:e,buildTicks:function(){var t=this,e=t.options,i=e.ticks,o=t.getTickLimit();o=Math.max(2,o);var r={maxTicks:o,min:i.min,max:i.max,stepSize:n.valueOrDefault(i.fixedStepSize,i.stepSize)},s=t.ticks=a.generators.linear(r,t);t.handleDirectionalChanges(),t.max=n.max(s),t.min=n.min(s),i.reverse?(s.reverse(),t.start=t.max,t.end=t.min):(t.start=t.min,t.end=t.max)},convertTicksToLabels:function(){var e=this;e.ticksAsNumbers=e.ticks.slice(),e.zeroLineIndex=e.ticks.indexOf(0),t.Scale.prototype.convertTicksToLabels.call(e)}})}},{13:13,22:22}]},{},[1])(1)});
\ No newline at end of file diff --git a/web/vendor/geo.min.js b/web/vendor/geo.min.js deleted file mode 100644 index 4f44b30ca..000000000 --- a/web/vendor/geo.min.js +++ /dev/null @@ -1,85 +0,0 @@ -// geo-location-javascript v0.4.8 http://code.google.com/p/geo-location-javascript/ Copyright (c) 2009 Stan Wiechers. Licensed under the MIT licenses. - -var bb_success;var bb_error;var bb_blackberryTimeout_id=-1;function handleBlackBerryLocationTimeout() -{if(bb_blackberryTimeout_id!=-1) -{bb_error({message:"Timeout error",code:3});}} -function handleBlackBerryLocation() -{clearTimeout(bb_blackberryTimeout_id);bb_blackberryTimeout_id=-1;if(bb_success&&bb_error) -{if(blackberry.location.latitude==0&&blackberry.location.longitude==0) -{bb_error({message:"Position unavailable",code:2});} -else -{var timestamp=null;if(blackberry.location.timestamp) -{timestamp=new Date(blackberry.location.timestamp);} -bb_success({timestamp:timestamp,coords:{latitude:blackberry.location.latitude,longitude:blackberry.location.longitude}});} -bb_success=null;bb_error=null;}} -var geo_position_js=function(){var pub={};var provider=null;var u="undefined";pub.showMap=function(latitude,longitude) -{if(typeof(blackberry)!=u) -{blackberry.launch.newMap({"latitude":latitude*100000,"longitude":-longitude*100000});} -else -{window.location="http://maps.google.com/maps?q=loc:"+latitude+","+longitude;}} -pub.getCurrentPosition=function(success,error,opts) -{provider.getCurrentPosition(success,error,opts);} -pub.init=function() -{try -{if(typeof(geo_position_js_simulator)!=u) -{provider=geo_position_js_simulator;} -else if(typeof(bondi)!=u&&typeof(bondi.geolocation)!=u) -{provider=bondi.geolocation;} -else if(typeof(navigator.geolocation)!=u) -{provider=navigator.geolocation;pub.getCurrentPosition=function(success,error,opts) -{function _success(p) -{if(typeof(p.latitude)!=u) -{success({timestamp:p.timestamp,coords:{latitude:p.latitude,longitude:p.longitude}});} -else -{success(p);}} -provider.getCurrentPosition(_success,error,opts);}} -else if(typeof(window.blackberry)!=u&&blackberry.location.GPSSupported) -{if(typeof(blackberry.location.setAidMode)==u) -{return false;} -blackberry.location.setAidMode(2);pub.getCurrentPosition=function(success,error,opts) -{bb_success=success;bb_error=error;if(opts['timeout']) -{bb_blackberryTimeout_id=setTimeout("handleBlackBerryLocationTimeout()",opts['timeout']);} -else -{bb_blackberryTimeout_id=setTimeout("handleBlackBerryLocationTimeout()",60000);} -blackberry.location.onLocationUpdate("handleBlackBerryLocation()");blackberry.location.refreshLocation();} -provider=blackberry.location;} -else if(typeof(window.google)!="undefined"&&typeof(google.gears)!="undefined") -{provider=google.gears.factory.create('beta.geolocation');pub.getCurrentPosition=function(successCallback,errorCallback,options) -{function _successCallback(p) -{if(typeof(p.latitude)!="undefined") -{successCallback({timestamp:p.timestamp,coords:{latitude:p.latitude,longitude:p.longitude}});} -else -{successCallback(p);}} -provider.getCurrentPosition(_successCallback,errorCallback,options);}} -else if(typeof(Mojo)!=u&&typeof(Mojo.Service.Request)!="Mojo.Service.Request") -{provider=true;pub.getCurrentPosition=function(success,error,opts) -{parameters={};if(opts) -{if(opts.enableHighAccuracy&&opts.enableHighAccuracy==true) -{parameters.accuracy=1;} -if(opts.maximumAge) -{parameters.maximumAge=opts.maximumAge;} -if(opts.responseTime) -{if(opts.responseTime<5) -{parameters.responseTime=1;} -else if(opts.responseTime<20) -{parameters.responseTime=2;} -else -{parameters.timeout=3;}}} -r=new Mojo.Service.Request('palm://com.palm.location',{method:"getCurrentPosition",parameters:parameters,onSuccess:function(p){success({timestamp:p.timestamp,coords:{latitude:p.latitude,longitude:p.longitude,heading:p.heading}});},onFailure:function(e){if(e.errorCode==1) -{error({code:3,message:"Timeout"});} -else if(e.errorCode==2) -{error({code:2,message:"Position unavailable"});} -else -{error({code:0,message:"Unknown Error: webOS-code"+errorCode});}}});}} -else if(typeof(device)!=u&&typeof(device.getServiceObject)!=u) -{provider=device.getServiceObject("Service.Location","ILocation");pub.getCurrentPosition=function(success,error,opts) -{function callback(transId,eventCode,result){if(eventCode==4) -{error({message:"Position unavailable",code:2});} -else -{success({timestamp:null,coords:{latitude:result.ReturnValue.Latitude,longitude:result.ReturnValue.Longitude,altitude:result.ReturnValue.Altitude,heading:result.ReturnValue.Heading}});}} -var criteria=new Object();criteria.LocationInformationClass="BasicLocationInformation";provider.ILocation.GetLocation(criteria,callback);}}} -catch(e){if(typeof(console)!=u) -{console.log(e);} -return false;} -return provider!=null;} -return pub;}();
\ No newline at end of file diff --git a/web/vendor/jquery-ui/css/smoothness/images/animated-overlay.gif b/web/vendor/jquery-ui/css/smoothness/images/animated-overlay.gif Binary files differdeleted file mode 100755 index d441f75eb..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/animated-overlay.gif +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png b/web/vendor/jquery-ui/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png Binary files differdeleted file mode 100755 index c09235f60..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png b/web/vendor/jquery-ui/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png Binary files differdeleted file mode 100755 index d29011d2a..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png b/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png Binary files differdeleted file mode 100755 index 1558bea51..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png b/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png Binary files differdeleted file mode 100755 index 0359b121f..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png b/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png Binary files differdeleted file mode 100755 index 4fce6c462..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png b/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png Binary files differdeleted file mode 100755 index 5299b5a0b..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png b/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png Binary files differdeleted file mode 100755 index 398c56a9c..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/web/vendor/jquery-ui/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png Binary files differdeleted file mode 100755 index d819aa58a..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_222222_256x240.png b/web/vendor/jquery-ui/css/smoothness/images/ui-icons_222222_256x240.png Binary files differdeleted file mode 100755 index c1cb1170c..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_222222_256x240.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_2e83ff_256x240.png b/web/vendor/jquery-ui/css/smoothness/images/ui-icons_2e83ff_256x240.png Binary files differdeleted file mode 100755 index 84b601bf0..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_2e83ff_256x240.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_454545_256x240.png b/web/vendor/jquery-ui/css/smoothness/images/ui-icons_454545_256x240.png Binary files differdeleted file mode 100755 index b6db1acdd..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_454545_256x240.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_888888_256x240.png b/web/vendor/jquery-ui/css/smoothness/images/ui-icons_888888_256x240.png Binary files differdeleted file mode 100755 index feea0e202..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_888888_256x240.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_cd0a0a_256x240.png b/web/vendor/jquery-ui/css/smoothness/images/ui-icons_cd0a0a_256x240.png Binary files differdeleted file mode 100755 index ed5b6b093..000000000 --- a/web/vendor/jquery-ui/css/smoothness/images/ui-icons_cd0a0a_256x240.png +++ /dev/null diff --git a/web/vendor/jquery-ui/css/smoothness/jquery-ui-1.10.3.custom.min.css b/web/vendor/jquery-ui/css/smoothness/jquery-ui-1.10.3.custom.min.css deleted file mode 100755 index 604cd558d..000000000 --- a/web/vendor/jquery-ui/css/smoothness/jquery-ui-1.10.3.custom.min.css +++ /dev/null @@ -1,7 +0,0 @@ -/*! jQuery UI - v1.10.3 - 2013-11-06 -* http://jqueryui.com -* Includes: jquery.ui.core.css, jquery.ui.datepicker.css, jquery.ui.theme.css -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -* Copyright 2013 jQuery Foundation and other contributors; Licensed MIT */ - -.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-clearfix{min-height:0}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px}.ui-datepicker .ui-datepicker-prev{left:2px}.ui-datepicker .ui-datepicker-next{right:2px}.ui-datepicker .ui-datepicker-prev-hover{left:1px}.ui-datepicker .ui-datepicker-next-hover{right:1px}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0}.ui-datepicker select.ui-datepicker-month-year{width:100%}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0}.ui-datepicker td{border:0;padding:1px}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left}.ui-datepicker.ui-datepicker-multi{width:auto}.ui-datepicker-multi .ui-datepicker-group{float:left}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left}.ui-datepicker-row-break{clear:both;width:100%;font-size:0}.ui-datepicker-rtl{direction:rtl}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,.ui-datepicker-rtl .ui-datepicker-group{float:right}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em}.ui-widget .ui-widget{font-size:1em}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #aaa;background:#fff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222}.ui-widget-content a{color:#222}.ui-widget-header{border:1px solid #aaa;background:#ccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;color:#222;font-weight:bold}.ui-widget-header a{color:#222}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#555}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555;text-decoration:none}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999;background:#dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-hover a,.ui-state-hover a:hover,.ui-state-hover a:link,.ui-state-hover a:visited{color:#212121;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaa;background:#fff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;color:#363636}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;color:#cd0a0a}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.ui-icon{width:16px;height:16px}.ui-icon,.ui-widget-content .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-widget-header .ui-icon{background-image:url(images/ui-icons_222222_256x240.png)}.ui-state-default .ui-icon{background-image:url(images/ui-icons_888888_256x240.png)}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-active .ui-icon{background-image:url(images/ui-icons_454545_256x240.png)}.ui-state-highlight .ui-icon{background-image:url(images/ui-icons_2e83ff_256x240.png)}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(images/ui-icons_cd0a0a_256x240.png)}.ui-icon-blank{background-position:16px 16px}.ui-icon-carat-1-n{background-position:0 0}.ui-icon-carat-1-ne{background-position:-16px 0}.ui-icon-carat-1-e{background-position:-32px 0}.ui-icon-carat-1-se{background-position:-48px 0}.ui-icon-carat-1-s{background-position:-64px 0}.ui-icon-carat-1-sw{background-position:-80px 0}.ui-icon-carat-1-w{background-position:-96px 0}.ui-icon-carat-1-nw{background-position:-112px 0}.ui-icon-carat-2-n-s{background-position:-128px 0}.ui-icon-carat-2-e-w{background-position:-144px 0}.ui-icon-triangle-1-n{background-position:0 -16px}.ui-icon-triangle-1-ne{background-position:-16px -16px}.ui-icon-triangle-1-e{background-position:-32px -16px}.ui-icon-triangle-1-se{background-position:-48px -16px}.ui-icon-triangle-1-s{background-position:-64px -16px}.ui-icon-triangle-1-sw{background-position:-80px -16px}.ui-icon-triangle-1-w{background-position:-96px -16px}.ui-icon-triangle-1-nw{background-position:-112px -16px}.ui-icon-triangle-2-n-s{background-position:-128px -16px}.ui-icon-triangle-2-e-w{background-position:-144px -16px}.ui-icon-arrow-1-n{background-position:0 -32px}.ui-icon-arrow-1-ne{background-position:-16px -32px}.ui-icon-arrow-1-e{background-position:-32px -32px}.ui-icon-arrow-1-se{background-position:-48px -32px}.ui-icon-arrow-1-s{background-position:-64px -32px}.ui-icon-arrow-1-sw{background-position:-80px -32px}.ui-icon-arrow-1-w{background-position:-96px -32px}.ui-icon-arrow-1-nw{background-position:-112px -32px}.ui-icon-arrow-2-n-s{background-position:-128px -32px}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px}.ui-icon-arrow-2-e-w{background-position:-160px -32px}.ui-icon-arrow-2-se-nw{background-position:-176px -32px}.ui-icon-arrowstop-1-n{background-position:-192px -32px}.ui-icon-arrowstop-1-e{background-position:-208px -32px}.ui-icon-arrowstop-1-s{background-position:-224px -32px}.ui-icon-arrowstop-1-w{background-position:-240px -32px}.ui-icon-arrowthick-1-n{background-position:0 -48px}.ui-icon-arrowthick-1-ne{background-position:-16px -48px}.ui-icon-arrowthick-1-e{background-position:-32px -48px}.ui-icon-arrowthick-1-se{background-position:-48px -48px}.ui-icon-arrowthick-1-s{background-position:-64px -48px}.ui-icon-arrowthick-1-sw{background-position:-80px -48px}.ui-icon-arrowthick-1-w{background-position:-96px -48px}.ui-icon-arrowthick-1-nw{background-position:-112px -48px}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px}.ui-icon-arrowreturn-1-w{background-position:-64px -64px}.ui-icon-arrowreturn-1-n{background-position:-80px -64px}.ui-icon-arrowreturn-1-e{background-position:-96px -64px}.ui-icon-arrowreturn-1-s{background-position:-112px -64px}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px}.ui-icon-arrow-4{background-position:0 -80px}.ui-icon-arrow-4-diag{background-position:-16px -80px}.ui-icon-extlink{background-position:-32px -80px}.ui-icon-newwin{background-position:-48px -80px}.ui-icon-refresh{background-position:-64px -80px}.ui-icon-shuffle{background-position:-80px -80px}.ui-icon-transfer-e-w{background-position:-96px -80px}.ui-icon-transferthick-e-w{background-position:-112px -80px}.ui-icon-folder-collapsed{background-position:0 -96px}.ui-icon-folder-open{background-position:-16px -96px}.ui-icon-document{background-position:-32px -96px}.ui-icon-document-b{background-position:-48px -96px}.ui-icon-note{background-position:-64px -96px}.ui-icon-mail-closed{background-position:-80px -96px}.ui-icon-mail-open{background-position:-96px -96px}.ui-icon-suitcase{background-position:-112px -96px}.ui-icon-comment{background-position:-128px -96px}.ui-icon-person{background-position:-144px -96px}.ui-icon-print{background-position:-160px -96px}.ui-icon-trash{background-position:-176px -96px}.ui-icon-locked{background-position:-192px -96px}.ui-icon-unlocked{background-position:-208px -96px}.ui-icon-bookmark{background-position:-224px -96px}.ui-icon-tag{background-position:-240px -96px}.ui-icon-home{background-position:0 -112px}.ui-icon-flag{background-position:-16px -112px}.ui-icon-calendar{background-position:-32px -112px}.ui-icon-cart{background-position:-48px -112px}.ui-icon-pencil{background-position:-64px -112px}.ui-icon-clock{background-position:-80px -112px}.ui-icon-disk{background-position:-96px -112px}.ui-icon-calculator{background-position:-112px -112px}.ui-icon-zoomin{background-position:-128px -112px}.ui-icon-zoomout{background-position:-144px -112px}.ui-icon-search{background-position:-160px -112px}.ui-icon-wrench{background-position:-176px -112px}.ui-icon-gear{background-position:-192px -112px}.ui-icon-heart{background-position:-208px -112px}.ui-icon-star{background-position:-224px -112px}.ui-icon-link{background-position:-240px -112px}.ui-icon-cancel{background-position:0 -128px}.ui-icon-plus{background-position:-16px -128px}.ui-icon-plusthick{background-position:-32px -128px}.ui-icon-minus{background-position:-48px -128px}.ui-icon-minusthick{background-position:-64px -128px}.ui-icon-close{background-position:-80px -128px}.ui-icon-closethick{background-position:-96px -128px}.ui-icon-key{background-position:-112px -128px}.ui-icon-lightbulb{background-position:-128px -128px}.ui-icon-scissors{background-position:-144px -128px}.ui-icon-clipboard{background-position:-160px -128px}.ui-icon-copy{background-position:-176px -128px}.ui-icon-contact{background-position:-192px -128px}.ui-icon-image{background-position:-208px -128px}.ui-icon-video{background-position:-224px -128px}.ui-icon-script{background-position:-240px -128px}.ui-icon-alert{background-position:0 -144px}.ui-icon-info{background-position:-16px -144px}.ui-icon-notice{background-position:-32px -144px}.ui-icon-help{background-position:-48px -144px}.ui-icon-check{background-position:-64px -144px}.ui-icon-bullet{background-position:-80px -144px}.ui-icon-radio-on{background-position:-96px -144px}.ui-icon-radio-off{background-position:-112px -144px}.ui-icon-pin-w{background-position:-128px -144px}.ui-icon-pin-s{background-position:-144px -144px}.ui-icon-play{background-position:0 -160px}.ui-icon-pause{background-position:-16px -160px}.ui-icon-seek-next{background-position:-32px -160px}.ui-icon-seek-prev{background-position:-48px -160px}.ui-icon-seek-end{background-position:-64px -160px}.ui-icon-seek-start{background-position:-80px -160px}.ui-icon-seek-first{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{border-top-left-radius:4px}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{border-top-right-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{border-bottom-left-radius:4px}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{border-bottom-right-radius:4px}.ui-widget-overlay{background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30)}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.3;filter:Alpha(Opacity=30);border-radius:8px}
\ No newline at end of file diff --git a/web/vendor/jquery-ui/js/jquery-ui-1.10.3.custom.min.js b/web/vendor/jquery-ui/js/jquery-ui-1.10.3.custom.min.js deleted file mode 100755 index 774c48050..000000000 --- a/web/vendor/jquery-ui/js/jquery-ui-1.10.3.custom.min.js +++ /dev/null @@ -1,7 +0,0 @@ -/*! jQuery UI - v1.10.3 - 2013-11-06 -* http://jqueryui.com -* Includes: jquery.ui.core.js, jquery.ui.widget.js, jquery.ui.mouse.js, jquery.ui.position.js, jquery.ui.datepicker.js -* Copyright 2013 jQuery Foundation and other contributors; Licensed MIT */ - -(function(e,t){function i(t,i){var s,n,r,o=t.nodeName.toLowerCase();return"area"===o?(s=t.parentNode,n=s.name,t.href&&n&&"map"===s.nodeName.toLowerCase()?(r=e("img[usemap=#"+n+"]")[0],!!r&&a(r)):!1):(/input|select|textarea|button|object/.test(o)?!t.disabled:"a"===o?t.href||i:i)&&a(t)}function a(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}var s=0,n=/^ui-id-\d+$/;e.ui=e.ui||{},e.extend(e.ui,{version:"1.10.3",keyCode:{BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38}}),e.fn.extend({focus:function(t){return function(i,a){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),a&&a.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),scrollParent:function(){var t;return t=e.ui.ie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(e.css(this,"position"))&&/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(e.css(this,"overflow")+e.css(this,"overflow-y")+e.css(this,"overflow-x"))}).eq(0),/fixed/.test(this.css("position"))||!t.length?e(document):t},zIndex:function(i){if(i!==t)return this.css("zIndex",i);if(this.length)for(var a,s,n=e(this[0]);n.length&&n[0]!==document;){if(a=n.css("position"),("absolute"===a||"relative"===a||"fixed"===a)&&(s=parseInt(n.css("zIndex"),10),!isNaN(s)&&0!==s))return s;n=n.parent()}return 0},uniqueId:function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++s)})},removeUniqueId:function(){return this.each(function(){n.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,a){return!!e.data(t,a[3])},focusable:function(t){return i(t,!isNaN(e.attr(t,"tabindex")))},tabbable:function(t){var a=e.attr(t,"tabindex"),s=isNaN(a);return(s||a>=0)&&i(t,!s)}}),e("<a>").outerWidth(1).jquery||e.each(["Width","Height"],function(i,a){function s(t,i,a,s){return e.each(n,function(){i-=parseFloat(e.css(t,"padding"+this))||0,a&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),s&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var n="Width"===a?["Left","Right"]:["Top","Bottom"],r=a.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+a]=function(i){return i===t?o["inner"+a].call(this):this.each(function(){e(this).css(r,s(this,i)+"px")})},e.fn["outer"+a]=function(t,i){return"number"!=typeof t?o["outer"+a].call(this,t):this.each(function(){e(this).css(r,s(this,t,!0,i)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("<a>").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.support.selectstart="onselectstart"in document.createElement("div"),e.fn.extend({disableSelection:function(){return this.bind((e.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),e.extend(e.ui,{plugin:{add:function(t,i,a){var s,n=e.ui[t].prototype;for(s in a)n.plugins[s]=n.plugins[s]||[],n.plugins[s].push([i,a[s]])},call:function(e,t,i){var a,s=e.plugins[t];if(s&&e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType)for(a=0;s.length>a;a++)e.options[s[a][0]]&&s[a][1].apply(e.element,i)}},hasScroll:function(t,i){if("hidden"===e(t).css("overflow"))return!1;var a=i&&"left"===i?"scrollLeft":"scrollTop",s=!1;return t[a]>0?!0:(t[a]=1,s=t[a]>0,t[a]=0,s)}})})(jQuery);(function(e,t){var i=0,s=Array.prototype.slice,a=e.cleanData;e.cleanData=function(t){for(var i,s=0;null!=(i=t[s]);s++)try{e(i).triggerHandler("remove")}catch(n){}a(t)},e.widget=function(i,s,a){var n,r,o,h,l={},u=i.split(".")[0];i=i.split(".")[1],n=u+"-"+i,a||(a=s,s=e.Widget),e.expr[":"][n.toLowerCase()]=function(t){return!!e.data(t,n)},e[u]=e[u]||{},r=e[u][i],o=e[u][i]=function(e,i){return this._createWidget?(arguments.length&&this._createWidget(e,i),t):new o(e,i)},e.extend(o,r,{version:a.version,_proto:e.extend({},a),_childConstructors:[]}),h=new s,h.options=e.widget.extend({},h.options),e.each(a,function(i,a){return e.isFunction(a)?(l[i]=function(){var e=function(){return s.prototype[i].apply(this,arguments)},t=function(e){return s.prototype[i].apply(this,e)};return function(){var i,s=this._super,n=this._superApply;return this._super=e,this._superApply=t,i=a.apply(this,arguments),this._super=s,this._superApply=n,i}}(),t):(l[i]=a,t)}),o.prototype=e.widget.extend(h,{widgetEventPrefix:r?h.widgetEventPrefix:i},l,{constructor:o,namespace:u,widgetName:i,widgetFullName:n}),r?(e.each(r._childConstructors,function(t,i){var s=i.prototype;e.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete r._childConstructors):s._childConstructors.push(o),e.widget.bridge(i,o)},e.widget.extend=function(i){for(var a,n,r=s.call(arguments,1),o=0,h=r.length;h>o;o++)for(a in r[o])n=r[o][a],r[o].hasOwnProperty(a)&&n!==t&&(i[a]=e.isPlainObject(n)?e.isPlainObject(i[a])?e.widget.extend({},i[a],n):e.widget.extend({},n):n);return i},e.widget.bridge=function(i,a){var n=a.prototype.widgetFullName||i;e.fn[i]=function(r){var o="string"==typeof r,h=s.call(arguments,1),l=this;return r=!o&&h.length?e.widget.extend.apply(null,[r].concat(h)):r,o?this.each(function(){var s,a=e.data(this,n);return a?e.isFunction(a[r])&&"_"!==r.charAt(0)?(s=a[r].apply(a,h),s!==a&&s!==t?(l=s&&s.jquery?l.pushStack(s.get()):s,!1):t):e.error("no such method '"+r+"' for "+i+" widget instance"):e.error("cannot call methods on "+i+" prior to initialization; "+"attempted to call method '"+r+"'")}):this.each(function(){var t=e.data(this,n);t?t.option(r||{})._init():e.data(this,n,new a(r,this))}),l}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"<div>",options:{disabled:!1,create:null},_createWidget:function(t,s){s=e(s||this.defaultElement||this)[0],this.element=e(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this.bindings=e(),this.hoverable=e(),this.focusable=e(),s!==this&&(e.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===s&&this.destroy()}}),this.document=e(s.style?s.ownerDocument:s.document||s),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetName).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(i,s){var a,n,r,o=i;if(0===arguments.length)return e.widget.extend({},this.options);if("string"==typeof i)if(o={},a=i.split("."),i=a.shift(),a.length){for(n=o[i]=e.widget.extend({},this.options[i]),r=0;a.length-1>r;r++)n[a[r]]=n[a[r]]||{},n=n[a[r]];if(i=a.pop(),s===t)return n[i]===t?null:n[i];n[i]=s}else{if(s===t)return this.options[i]===t?null:this.options[i];o[i]=s}return this._setOptions(o),this},_setOptions:function(e){var t;for(t in e)this._setOption(t,e[t]);return this},_setOption:function(e,t){return this.options[e]=t,"disabled"===e&&(this.widget().toggleClass(this.widgetFullName+"-disabled ui-state-disabled",!!t).attr("aria-disabled",t),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")),this},enable:function(){return this._setOption("disabled",!1)},disable:function(){return this._setOption("disabled",!0)},_on:function(i,s,a){var n,r=this;"boolean"!=typeof i&&(a=s,s=i,i=!1),a?(s=n=e(s),this.bindings=this.bindings.add(s)):(a=s,s=this.element,n=this.widget()),e.each(a,function(a,o){function h(){return i||r.options.disabled!==!0&&!e(this).hasClass("ui-state-disabled")?("string"==typeof o?r[o]:o).apply(r,arguments):t}"string"!=typeof o&&(h.guid=o.guid=o.guid||h.guid||e.guid++);var l=a.match(/^(\w+)\s*(.*)$/),u=l[1]+r.eventNamespace,c=l[2];c?n.delegate(c,u,h):s.bind(u,h)})},_off:function(e,t){t=(t||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.unbind(t).undelegate(t)},_delay:function(e,t){function i(){return("string"==typeof e?s[e]:e).apply(s,arguments)}var s=this;return setTimeout(i,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){e(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){e(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){e(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){e(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,s){var a,n,r=this.options[t];if(s=s||{},i=e.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],n=i.originalEvent)for(a in n)a in i||(i[a]=n[a]);return this.element.trigger(i,s),!(e.isFunction(r)&&r.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,i){e.Widget.prototype["_"+t]=function(s,a,n){"string"==typeof a&&(a={effect:a});var r,o=a?a===!0||"number"==typeof a?i:a.effect||i:t;a=a||{},"number"==typeof a&&(a={duration:a}),r=!e.isEmptyObject(a),a.complete=n,a.delay&&s.delay(a.delay),r&&e.effects&&e.effects.effect[o]?s[t](a):o!==t&&s[o]?s[o](a.duration,a.easing,n):s.queue(function(i){e(this)[t](),n&&n.call(s[0]),i()})}})})(jQuery);(function(e){var t=!1;e(document).mouseup(function(){t=!1}),e.widget("ui.mouse",{version:"1.10.3",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var t=this;this.element.bind("mousedown."+this.widgetName,function(e){return t._mouseDown(e)}).bind("click."+this.widgetName,function(i){return!0===e.data(i.target,t.widgetName+".preventClickEvent")?(e.removeData(i.target,t.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):undefined}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(i){if(!t){this._mouseStarted&&this._mouseUp(i),this._mouseDownEvent=i;var s=this,a=1===i.which,n="string"==typeof this.options.cancel&&i.target.nodeName?e(i.target).closest(this.options.cancel).length:!1;return a&&!n&&this._mouseCapture(i)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){s.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(i)&&this._mouseDelayMet(i)&&(this._mouseStarted=this._mouseStart(i)!==!1,!this._mouseStarted)?(i.preventDefault(),!0):(!0===e.data(i.target,this.widgetName+".preventClickEvent")&&e.removeData(i.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(e){return s._mouseMove(e)},this._mouseUpDelegate=function(e){return s._mouseUp(e)},e(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),i.preventDefault(),t=!0,!0)):!0}},_mouseMove:function(t){return e.ui.ie&&(!document.documentMode||9>document.documentMode)&&!t.button?this._mouseUp(t):this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted)},_mouseUp:function(t){return e(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})})(jQuery);(function(e,t){function i(e,t,i){return[parseFloat(e[0])*(p.test(e[0])?t/100:1),parseFloat(e[1])*(p.test(e[1])?i/100:1)]}function s(t,i){return parseInt(e.css(t,i),10)||0}function a(t){var i=t[0];return 9===i.nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:e.isWindow(i)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()}}e.ui=e.ui||{};var n,r=Math.max,o=Math.abs,h=Math.round,l=/left|center|right/,u=/top|center|bottom/,c=/[\+\-]\d+(\.[\d]+)?%?/,d=/^\w+/,p=/%$/,f=e.fn.position;e.position={scrollbarWidth:function(){if(n!==t)return n;var i,s,a=e("<div style='display:block;width:50px;height:50px;overflow:hidden;'><div style='height:100px;width:auto;'></div></div>"),r=a.children()[0];return e("body").append(a),i=r.offsetWidth,a.css("overflow","scroll"),s=r.offsetWidth,i===s&&(s=a[0].clientWidth),a.remove(),n=i-s},getScrollInfo:function(t){var i=t.isWindow?"":t.element.css("overflow-x"),s=t.isWindow?"":t.element.css("overflow-y"),a="scroll"===i||"auto"===i&&t.width<t.element[0].scrollWidth,n="scroll"===s||"auto"===s&&t.height<t.element[0].scrollHeight;return{width:n?e.position.scrollbarWidth():0,height:a?e.position.scrollbarWidth():0}},getWithinInfo:function(t){var i=e(t||window),s=e.isWindow(i[0]);return{element:i,isWindow:s,offset:i.offset()||{left:0,top:0},scrollLeft:i.scrollLeft(),scrollTop:i.scrollTop(),width:s?i.width():i.outerWidth(),height:s?i.height():i.outerHeight()}}},e.fn.position=function(t){if(!t||!t.of)return f.apply(this,arguments);t=e.extend({},t);var n,p,m,g,v,y,b=e(t.of),_=e.position.getWithinInfo(t.within),x=e.position.getScrollInfo(_),k=(t.collision||"flip").split(" "),w={};return y=a(b),b[0].preventDefault&&(t.at="left top"),p=y.width,m=y.height,g=y.offset,v=e.extend({},g),e.each(["my","at"],function(){var e,i,s=(t[this]||"").split(" ");1===s.length&&(s=l.test(s[0])?s.concat(["center"]):u.test(s[0])?["center"].concat(s):["center","center"]),s[0]=l.test(s[0])?s[0]:"center",s[1]=u.test(s[1])?s[1]:"center",e=c.exec(s[0]),i=c.exec(s[1]),w[this]=[e?e[0]:0,i?i[0]:0],t[this]=[d.exec(s[0])[0],d.exec(s[1])[0]]}),1===k.length&&(k[1]=k[0]),"right"===t.at[0]?v.left+=p:"center"===t.at[0]&&(v.left+=p/2),"bottom"===t.at[1]?v.top+=m:"center"===t.at[1]&&(v.top+=m/2),n=i(w.at,p,m),v.left+=n[0],v.top+=n[1],this.each(function(){var a,l,u=e(this),c=u.outerWidth(),d=u.outerHeight(),f=s(this,"marginLeft"),y=s(this,"marginTop"),D=c+f+s(this,"marginRight")+x.width,T=d+y+s(this,"marginBottom")+x.height,M=e.extend({},v),S=i(w.my,u.outerWidth(),u.outerHeight());"right"===t.my[0]?M.left-=c:"center"===t.my[0]&&(M.left-=c/2),"bottom"===t.my[1]?M.top-=d:"center"===t.my[1]&&(M.top-=d/2),M.left+=S[0],M.top+=S[1],e.support.offsetFractions||(M.left=h(M.left),M.top=h(M.top)),a={marginLeft:f,marginTop:y},e.each(["left","top"],function(i,s){e.ui.position[k[i]]&&e.ui.position[k[i]][s](M,{targetWidth:p,targetHeight:m,elemWidth:c,elemHeight:d,collisionPosition:a,collisionWidth:D,collisionHeight:T,offset:[n[0]+S[0],n[1]+S[1]],my:t.my,at:t.at,within:_,elem:u})}),t.using&&(l=function(e){var i=g.left-M.left,s=i+p-c,a=g.top-M.top,n=a+m-d,h={target:{element:b,left:g.left,top:g.top,width:p,height:m},element:{element:u,left:M.left,top:M.top,width:c,height:d},horizontal:0>s?"left":i>0?"right":"center",vertical:0>n?"top":a>0?"bottom":"middle"};c>p&&p>o(i+s)&&(h.horizontal="center"),d>m&&m>o(a+n)&&(h.vertical="middle"),h.important=r(o(i),o(s))>r(o(a),o(n))?"horizontal":"vertical",t.using.call(this,e,h)}),u.offset(e.extend(M,{using:l}))})},e.ui.position={fit:{left:function(e,t){var i,s=t.within,a=s.isWindow?s.scrollLeft:s.offset.left,n=s.width,o=e.left-t.collisionPosition.marginLeft,h=a-o,l=o+t.collisionWidth-n-a;t.collisionWidth>n?h>0&&0>=l?(i=e.left+h+t.collisionWidth-n-a,e.left+=h-i):e.left=l>0&&0>=h?a:h>l?a+n-t.collisionWidth:a:h>0?e.left+=h:l>0?e.left-=l:e.left=r(e.left-o,e.left)},top:function(e,t){var i,s=t.within,a=s.isWindow?s.scrollTop:s.offset.top,n=t.within.height,o=e.top-t.collisionPosition.marginTop,h=a-o,l=o+t.collisionHeight-n-a;t.collisionHeight>n?h>0&&0>=l?(i=e.top+h+t.collisionHeight-n-a,e.top+=h-i):e.top=l>0&&0>=h?a:h>l?a+n-t.collisionHeight:a:h>0?e.top+=h:l>0?e.top-=l:e.top=r(e.top-o,e.top)}},flip:{left:function(e,t){var i,s,a=t.within,n=a.offset.left+a.scrollLeft,r=a.width,h=a.isWindow?a.scrollLeft:a.offset.left,l=e.left-t.collisionPosition.marginLeft,u=l-h,c=l+t.collisionWidth-r-h,d="left"===t.my[0]?-t.elemWidth:"right"===t.my[0]?t.elemWidth:0,p="left"===t.at[0]?t.targetWidth:"right"===t.at[0]?-t.targetWidth:0,f=-2*t.offset[0];0>u?(i=e.left+d+p+f+t.collisionWidth-r-n,(0>i||o(u)>i)&&(e.left+=d+p+f)):c>0&&(s=e.left-t.collisionPosition.marginLeft+d+p+f-h,(s>0||c>o(s))&&(e.left+=d+p+f))},top:function(e,t){var i,s,a=t.within,n=a.offset.top+a.scrollTop,r=a.height,h=a.isWindow?a.scrollTop:a.offset.top,l=e.top-t.collisionPosition.marginTop,u=l-h,c=l+t.collisionHeight-r-h,d="top"===t.my[1],p=d?-t.elemHeight:"bottom"===t.my[1]?t.elemHeight:0,f="top"===t.at[1]?t.targetHeight:"bottom"===t.at[1]?-t.targetHeight:0,m=-2*t.offset[1];0>u?(s=e.top+p+f+m+t.collisionHeight-r-n,e.top+p+f+m>u&&(0>s||o(u)>s)&&(e.top+=p+f+m)):c>0&&(i=e.top-t.collisionPosition.marginTop+p+f+m-h,e.top+p+f+m>c&&(i>0||c>o(i))&&(e.top+=p+f+m))}},flipfit:{left:function(){e.ui.position.flip.left.apply(this,arguments),e.ui.position.fit.left.apply(this,arguments)},top:function(){e.ui.position.flip.top.apply(this,arguments),e.ui.position.fit.top.apply(this,arguments)}}},function(){var t,i,s,a,n,r=document.getElementsByTagName("body")[0],o=document.createElement("div");t=document.createElement(r?"div":"body"),s={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},r&&e.extend(s,{position:"absolute",left:"-1000px",top:"-1000px"});for(n in s)t.style[n]=s[n];t.appendChild(o),i=r||document.documentElement,i.insertBefore(t,i.firstChild),o.style.cssText="position: absolute; left: 10.7432222px;",a=e(o).offset().left,e.support.offsetFractions=a>10&&11>a,t.innerHTML="",i.removeChild(t)}()})(jQuery);(function(e,t){function i(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},e.extend(this._defaults,this.regional[""]),this.dpDiv=a(e("<div id='"+this._mainDivId+"' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"))}function a(t){var i="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return t.delegate(i,"mouseout",function(){e(this).removeClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).removeClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).removeClass("ui-datepicker-next-hover")}).delegate(i,"mouseover",function(){e.datepicker._isDisabledDatepicker(n.inline?t.parent()[0]:n.input[0])||(e(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),e(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).addClass("ui-datepicker-next-hover"))})}function s(t,i){e.extend(t,i);for(var a in i)null==i[a]&&(t[a]=i[a]);return t}e.extend(e.ui,{datepicker:{version:"1.10.3"}});var n,r="datepicker";e.extend(i.prototype,{markerClassName:"hasDatepicker",maxRows:4,_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(e){return s(this._defaults,e||{}),this},_attachDatepicker:function(t,i){var a,s,n;a=t.nodeName.toLowerCase(),s="div"===a||"span"===a,t.id||(this.uuid+=1,t.id="dp"+this.uuid),n=this._newInst(e(t),s),n.settings=e.extend({},i||{}),"input"===a?this._connectDatepicker(t,n):s&&this._inlineDatepicker(t,n)},_newInst:function(t,i){var s=t[0].id.replace(/([^A-Za-z0-9_\-])/g,"\\\\$1");return{id:s,input:t,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:i,dpDiv:i?a(e("<div class='"+this._inlineClass+" ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>")):this.dpDiv}},_connectDatepicker:function(t,i){var a=e(t);i.append=e([]),i.trigger=e([]),a.hasClass(this.markerClassName)||(this._attachments(a,i),a.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp),this._autoSize(i),e.data(t,r,i),i.settings.disabled&&this._disableDatepicker(t))},_attachments:function(t,i){var a,s,n,r=this._get(i,"appendText"),o=this._get(i,"isRTL");i.append&&i.append.remove(),r&&(i.append=e("<span class='"+this._appendClass+"'>"+r+"</span>"),t[o?"before":"after"](i.append)),t.unbind("focus",this._showDatepicker),i.trigger&&i.trigger.remove(),a=this._get(i,"showOn"),("focus"===a||"both"===a)&&t.focus(this._showDatepicker),("button"===a||"both"===a)&&(s=this._get(i,"buttonText"),n=this._get(i,"buttonImage"),i.trigger=e(this._get(i,"buttonImageOnly")?e("<img/>").addClass(this._triggerClass).attr({src:n,alt:s,title:s}):e("<button type='button'></button>").addClass(this._triggerClass).html(n?e("<img/>").attr({src:n,alt:s,title:s}):s)),t[o?"before":"after"](i.trigger),i.trigger.click(function(){return e.datepicker._datepickerShowing&&e.datepicker._lastInput===t[0]?e.datepicker._hideDatepicker():e.datepicker._datepickerShowing&&e.datepicker._lastInput!==t[0]?(e.datepicker._hideDatepicker(),e.datepicker._showDatepicker(t[0])):e.datepicker._showDatepicker(t[0]),!1}))},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t,i,a,s,n=new Date(2009,11,20),r=this._get(e,"dateFormat");r.match(/[DM]/)&&(t=function(e){for(i=0,a=0,s=0;e.length>s;s++)e[s].length>i&&(i=e[s].length,a=s);return a},n.setMonth(t(this._get(e,r.match(/MM/)?"monthNames":"monthNamesShort"))),n.setDate(t(this._get(e,r.match(/DD/)?"dayNames":"dayNamesShort"))+20-n.getDay())),e.input.attr("size",this._formatDate(e,n).length)}},_inlineDatepicker:function(t,i){var a=e(t);a.hasClass(this.markerClassName)||(a.addClass(this.markerClassName).append(i.dpDiv),e.data(t,r,i),this._setDate(i,this._getDefaultDate(i),!0),this._updateDatepicker(i),this._updateAlternate(i),i.settings.disabled&&this._disableDatepicker(t),i.dpDiv.css("display","block"))},_dialogDatepicker:function(t,i,a,n,o){var h,l,u,d,c,p=this._dialogInst;return p||(this.uuid+=1,h="dp"+this.uuid,this._dialogInput=e("<input type='text' id='"+h+"' style='position: absolute; top: -100px; width: 0px;'/>"),this._dialogInput.keydown(this._doKeyDown),e("body").append(this._dialogInput),p=this._dialogInst=this._newInst(this._dialogInput,!1),p.settings={},e.data(this._dialogInput[0],r,p)),s(p.settings,n||{}),i=i&&i.constructor===Date?this._formatDate(p,i):i,this._dialogInput.val(i),this._pos=o?o.length?o:[o.pageX,o.pageY]:null,this._pos||(l=document.documentElement.clientWidth,u=document.documentElement.clientHeight,d=document.documentElement.scrollLeft||document.body.scrollLeft,c=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[l/2-100+d,u/2-150+c]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),p.settings.onSelect=a,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),e.blockUI&&e.blockUI(this.dpDiv),e.data(this._dialogInput[0],r,p),this},_destroyDatepicker:function(t){var i,a=e(t),s=e.data(t,r);a.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),e.removeData(t,r),"input"===i?(s.append.remove(),s.trigger.remove(),a.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):("div"===i||"span"===i)&&a.removeClass(this.markerClassName).empty())},_enableDatepicker:function(t){var i,a,s=e(t),n=e.data(t,r);s.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!1,n.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):("div"===i||"span"===i)&&(a=s.children("."+this._inlineClass),a.children().removeClass("ui-state-disabled"),a.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}))},_disableDatepicker:function(t){var i,a,s=e(t),n=e.data(t,r);s.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!0,n.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):("div"===i||"span"===i)&&(a=s.children("."+this._inlineClass),a.children().addClass("ui-state-disabled"),a.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}),this._disabledInputs[this._disabledInputs.length]=t)},_isDisabledDatepicker:function(e){if(!e)return!1;for(var t=0;this._disabledInputs.length>t;t++)if(this._disabledInputs[t]===e)return!0;return!1},_getInst:function(t){try{return e.data(t,r)}catch(i){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(i,a,n){var r,o,h,l,u=this._getInst(i);return 2===arguments.length&&"string"==typeof a?"defaults"===a?e.extend({},e.datepicker._defaults):u?"all"===a?e.extend({},u.settings):this._get(u,a):null:(r=a||{},"string"==typeof a&&(r={},r[a]=n),u&&(this._curInst===u&&this._hideDatepicker(),o=this._getDateDatepicker(i,!0),h=this._getMinMaxDate(u,"min"),l=this._getMinMaxDate(u,"max"),s(u.settings,r),null!==h&&r.dateFormat!==t&&r.minDate===t&&(u.settings.minDate=this._formatDate(u,h)),null!==l&&r.dateFormat!==t&&r.maxDate===t&&(u.settings.maxDate=this._formatDate(u,l)),"disabled"in r&&(r.disabled?this._disableDatepicker(i):this._enableDatepicker(i)),this._attachments(e(i),u),this._autoSize(u),this._setDate(u,o),this._updateAlternate(u),this._updateDatepicker(u)),t)},_changeDatepicker:function(e,t,i){this._optionDatepicker(e,t,i)},_refreshDatepicker:function(e){var t=this._getInst(e);t&&this._updateDatepicker(t)},_setDateDatepicker:function(e,t){var i=this._getInst(e);i&&(this._setDate(i,t),this._updateDatepicker(i),this._updateAlternate(i))},_getDateDatepicker:function(e,t){var i=this._getInst(e);return i&&!i.inline&&this._setDateFromField(i,t),i?this._getDate(i):null},_doKeyDown:function(t){var i,a,s,n=e.datepicker._getInst(t.target),r=!0,o=n.dpDiv.is(".ui-datepicker-rtl");if(n._keyEvent=!0,e.datepicker._datepickerShowing)switch(t.keyCode){case 9:e.datepicker._hideDatepicker(),r=!1;break;case 13:return s=e("td."+e.datepicker._dayOverClass+":not(."+e.datepicker._currentClass+")",n.dpDiv),s[0]&&e.datepicker._selectDay(t.target,n.selectedMonth,n.selectedYear,s[0]),i=e.datepicker._get(n,"onSelect"),i?(a=e.datepicker._formatDate(n),i.apply(n.input?n.input[0]:null,[a,n])):e.datepicker._hideDatepicker(),!1;case 27:e.datepicker._hideDatepicker();break;case 33:e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(n,"stepBigMonths"):-e.datepicker._get(n,"stepMonths"),"M");break;case 34:e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(n,"stepBigMonths"):+e.datepicker._get(n,"stepMonths"),"M");break;case 35:(t.ctrlKey||t.metaKey)&&e.datepicker._clearDate(t.target),r=t.ctrlKey||t.metaKey;break;case 36:(t.ctrlKey||t.metaKey)&&e.datepicker._gotoToday(t.target),r=t.ctrlKey||t.metaKey;break;case 37:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,o?1:-1,"D"),r=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(n,"stepBigMonths"):-e.datepicker._get(n,"stepMonths"),"M");break;case 38:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,-7,"D"),r=t.ctrlKey||t.metaKey;break;case 39:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,o?-1:1,"D"),r=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(n,"stepBigMonths"):+e.datepicker._get(n,"stepMonths"),"M");break;case 40:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,7,"D"),r=t.ctrlKey||t.metaKey;break;default:r=!1}else 36===t.keyCode&&t.ctrlKey?e.datepicker._showDatepicker(this):r=!1;r&&(t.preventDefault(),t.stopPropagation())},_doKeyPress:function(i){var a,s,n=e.datepicker._getInst(i.target);return e.datepicker._get(n,"constrainInput")?(a=e.datepicker._possibleChars(e.datepicker._get(n,"dateFormat")),s=String.fromCharCode(null==i.charCode?i.keyCode:i.charCode),i.ctrlKey||i.metaKey||" ">s||!a||a.indexOf(s)>-1):t},_doKeyUp:function(t){var i,a=e.datepicker._getInst(t.target);if(a.input.val()!==a.lastVal)try{i=e.datepicker.parseDate(e.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,e.datepicker._getFormatConfig(a)),i&&(e.datepicker._setDateFromField(a),e.datepicker._updateAlternate(a),e.datepicker._updateDatepicker(a))}catch(s){}return!0},_showDatepicker:function(t){if(t=t.target||t,"input"!==t.nodeName.toLowerCase()&&(t=e("input",t.parentNode)[0]),!e.datepicker._isDisabledDatepicker(t)&&e.datepicker._lastInput!==t){var i,a,n,r,o,h,l;i=e.datepicker._getInst(t),e.datepicker._curInst&&e.datepicker._curInst!==i&&(e.datepicker._curInst.dpDiv.stop(!0,!0),i&&e.datepicker._datepickerShowing&&e.datepicker._hideDatepicker(e.datepicker._curInst.input[0])),a=e.datepicker._get(i,"beforeShow"),n=a?a.apply(t,[t,i]):{},n!==!1&&(s(i.settings,n),i.lastVal=null,e.datepicker._lastInput=t,e.datepicker._setDateFromField(i),e.datepicker._inDialog&&(t.value=""),e.datepicker._pos||(e.datepicker._pos=e.datepicker._findPos(t),e.datepicker._pos[1]+=t.offsetHeight),r=!1,e(t).parents().each(function(){return r|="fixed"===e(this).css("position"),!r}),o={left:e.datepicker._pos[0],top:e.datepicker._pos[1]},e.datepicker._pos=null,i.dpDiv.empty(),i.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),e.datepicker._updateDatepicker(i),o=e.datepicker._checkOffset(i,o,r),i.dpDiv.css({position:e.datepicker._inDialog&&e.blockUI?"static":r?"fixed":"absolute",display:"none",left:o.left+"px",top:o.top+"px"}),i.inline||(h=e.datepicker._get(i,"showAnim"),l=e.datepicker._get(i,"duration"),i.dpDiv.zIndex(e(t).zIndex()+1),e.datepicker._datepickerShowing=!0,e.effects&&e.effects.effect[h]?i.dpDiv.show(h,e.datepicker._get(i,"showOptions"),l):i.dpDiv[h||"show"](h?l:null),e.datepicker._shouldFocusInput(i)&&i.input.focus(),e.datepicker._curInst=i))}},_updateDatepicker:function(t){this.maxRows=4,n=t,t.dpDiv.empty().append(this._generateHTML(t)),this._attachHandlers(t),t.dpDiv.find("."+this._dayOverClass+" a").mouseover();var i,a=this._getNumberOfMonths(t),s=a[1],r=17;t.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),s>1&&t.dpDiv.addClass("ui-datepicker-multi-"+s).css("width",r*s+"em"),t.dpDiv[(1!==a[0]||1!==a[1]?"add":"remove")+"Class"]("ui-datepicker-multi"),t.dpDiv[(this._get(t,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),t===e.datepicker._curInst&&e.datepicker._datepickerShowing&&e.datepicker._shouldFocusInput(t)&&t.input.focus(),t.yearshtml&&(i=t.yearshtml,setTimeout(function(){i===t.yearshtml&&t.yearshtml&&t.dpDiv.find("select.ui-datepicker-year:first").replaceWith(t.yearshtml),i=t.yearshtml=null},0))},_shouldFocusInput:function(e){return e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&!e.input.is(":focus")},_checkOffset:function(t,i,a){var s=t.dpDiv.outerWidth(),n=t.dpDiv.outerHeight(),r=t.input?t.input.outerWidth():0,o=t.input?t.input.outerHeight():0,h=document.documentElement.clientWidth+(a?0:e(document).scrollLeft()),l=document.documentElement.clientHeight+(a?0:e(document).scrollTop());return i.left-=this._get(t,"isRTL")?s-r:0,i.left-=a&&i.left===t.input.offset().left?e(document).scrollLeft():0,i.top-=a&&i.top===t.input.offset().top+o?e(document).scrollTop():0,i.left-=Math.min(i.left,i.left+s>h&&h>s?Math.abs(i.left+s-h):0),i.top-=Math.min(i.top,i.top+n>l&&l>n?Math.abs(n+o):0),i},_findPos:function(t){for(var i,a=this._getInst(t),s=this._get(a,"isRTL");t&&("hidden"===t.type||1!==t.nodeType||e.expr.filters.hidden(t));)t=t[s?"previousSibling":"nextSibling"];return i=e(t).offset(),[i.left,i.top]},_hideDatepicker:function(t){var i,a,s,n,o=this._curInst;!o||t&&o!==e.data(t,r)||this._datepickerShowing&&(i=this._get(o,"showAnim"),a=this._get(o,"duration"),s=function(){e.datepicker._tidyDialog(o)},e.effects&&(e.effects.effect[i]||e.effects[i])?o.dpDiv.hide(i,e.datepicker._get(o,"showOptions"),a,s):o.dpDiv["slideDown"===i?"slideUp":"fadeIn"===i?"fadeOut":"hide"](i?a:null,s),i||s(),this._datepickerShowing=!1,n=this._get(o,"onClose"),n&&n.apply(o.input?o.input[0]:null,[o.input?o.input.val():"",o]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),e.blockUI&&(e.unblockUI(),e("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(e){e.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(t){if(e.datepicker._curInst){var i=e(t.target),a=e.datepicker._getInst(i[0]);(i[0].id!==e.datepicker._mainDivId&&0===i.parents("#"+e.datepicker._mainDivId).length&&!i.hasClass(e.datepicker.markerClassName)&&!i.closest("."+e.datepicker._triggerClass).length&&e.datepicker._datepickerShowing&&(!e.datepicker._inDialog||!e.blockUI)||i.hasClass(e.datepicker.markerClassName)&&e.datepicker._curInst!==a)&&e.datepicker._hideDatepicker()}},_adjustDate:function(t,i,a){var s=e(t),n=this._getInst(s[0]);this._isDisabledDatepicker(s[0])||(this._adjustInstDate(n,i+("M"===a?this._get(n,"showCurrentAtPos"):0),a),this._updateDatepicker(n))},_gotoToday:function(t){var i,a=e(t),s=this._getInst(a[0]);this._get(s,"gotoCurrent")&&s.currentDay?(s.selectedDay=s.currentDay,s.drawMonth=s.selectedMonth=s.currentMonth,s.drawYear=s.selectedYear=s.currentYear):(i=new Date,s.selectedDay=i.getDate(),s.drawMonth=s.selectedMonth=i.getMonth(),s.drawYear=s.selectedYear=i.getFullYear()),this._notifyChange(s),this._adjustDate(a)},_selectMonthYear:function(t,i,a){var s=e(t),n=this._getInst(s[0]);n["selected"+("M"===a?"Month":"Year")]=n["draw"+("M"===a?"Month":"Year")]=parseInt(i.options[i.selectedIndex].value,10),this._notifyChange(n),this._adjustDate(s)},_selectDay:function(t,i,a,s){var n,r=e(t);e(s).hasClass(this._unselectableClass)||this._isDisabledDatepicker(r[0])||(n=this._getInst(r[0]),n.selectedDay=n.currentDay=e("a",s).html(),n.selectedMonth=n.currentMonth=i,n.selectedYear=n.currentYear=a,this._selectDate(t,this._formatDate(n,n.currentDay,n.currentMonth,n.currentYear)))},_clearDate:function(t){var i=e(t);this._selectDate(i,"")},_selectDate:function(t,i){var a,s=e(t),n=this._getInst(s[0]);i=null!=i?i:this._formatDate(n),n.input&&n.input.val(i),this._updateAlternate(n),a=this._get(n,"onSelect"),a?a.apply(n.input?n.input[0]:null,[i,n]):n.input&&n.input.trigger("change"),n.inline?this._updateDatepicker(n):(this._hideDatepicker(),this._lastInput=n.input[0],"object"!=typeof n.input[0]&&n.input.focus(),this._lastInput=null)},_updateAlternate:function(t){var i,a,s,n=this._get(t,"altField");n&&(i=this._get(t,"altFormat")||this._get(t,"dateFormat"),a=this._getDate(t),s=this.formatDate(i,a,this._getFormatConfig(t)),e(n).each(function(){e(this).val(s)}))},noWeekends:function(e){var t=e.getDay();return[t>0&&6>t,""]},iso8601Week:function(e){var t,i=new Date(e.getTime());return i.setDate(i.getDate()+4-(i.getDay()||7)),t=i.getTime(),i.setMonth(0),i.setDate(1),Math.floor(Math.round((t-i)/864e5)/7)+1},parseDate:function(i,a,s){if(null==i||null==a)throw"Invalid arguments";if(a="object"==typeof a?""+a:a+"",""===a)return null;var n,r,o,h,l=0,u=(s?s.shortYearCutoff:null)||this._defaults.shortYearCutoff,d="string"!=typeof u?u:(new Date).getFullYear()%100+parseInt(u,10),c=(s?s.dayNamesShort:null)||this._defaults.dayNamesShort,p=(s?s.dayNames:null)||this._defaults.dayNames,m=(s?s.monthNamesShort:null)||this._defaults.monthNamesShort,f=(s?s.monthNames:null)||this._defaults.monthNames,g=-1,v=-1,y=-1,b=-1,_=!1,k=function(e){var t=i.length>n+1&&i.charAt(n+1)===e;return t&&n++,t},x=function(e){var t=k(e),i="@"===e?14:"!"===e?20:"y"===e&&t?4:"o"===e?3:2,s=RegExp("^\\d{1,"+i+"}"),n=a.substring(l).match(s);if(!n)throw"Missing number at position "+l;return l+=n[0].length,parseInt(n[0],10)},D=function(i,s,n){var r=-1,o=e.map(k(i)?n:s,function(e,t){return[[t,e]]}).sort(function(e,t){return-(e[1].length-t[1].length)});if(e.each(o,function(e,i){var s=i[1];return a.substr(l,s.length).toLowerCase()===s.toLowerCase()?(r=i[0],l+=s.length,!1):t}),-1!==r)return r+1;throw"Unknown name at position "+l},w=function(){if(a.charAt(l)!==i.charAt(n))throw"Unexpected literal at position "+l;l++};for(n=0;i.length>n;n++)if(_)"'"!==i.charAt(n)||k("'")?w():_=!1;else switch(i.charAt(n)){case"d":y=x("d");break;case"D":D("D",c,p);break;case"o":b=x("o");break;case"m":v=x("m");break;case"M":v=D("M",m,f);break;case"y":g=x("y");break;case"@":h=new Date(x("@")),g=h.getFullYear(),v=h.getMonth()+1,y=h.getDate();break;case"!":h=new Date((x("!")-this._ticksTo1970)/1e4),g=h.getFullYear(),v=h.getMonth()+1,y=h.getDate();break;case"'":k("'")?w():_=!0;break;default:w()}if(a.length>l&&(o=a.substr(l),!/^\s+/.test(o)))throw"Extra/unparsed characters found in date: "+o;if(-1===g?g=(new Date).getFullYear():100>g&&(g+=(new Date).getFullYear()-(new Date).getFullYear()%100+(d>=g?0:-100)),b>-1)for(v=1,y=b;;){if(r=this._getDaysInMonth(g,v-1),r>=y)break;v++,y-=r}if(h=this._daylightSavingAdjust(new Date(g,v-1,y)),h.getFullYear()!==g||h.getMonth()+1!==v||h.getDate()!==y)throw"Invalid date";return h},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:1e7*60*60*24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925)),formatDate:function(e,t,i){if(!t)return"";var a,s=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,n=(i?i.dayNames:null)||this._defaults.dayNames,r=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,o=(i?i.monthNames:null)||this._defaults.monthNames,h=function(t){var i=e.length>a+1&&e.charAt(a+1)===t;return i&&a++,i},l=function(e,t,i){var a=""+t;if(h(e))for(;i>a.length;)a="0"+a;return a},u=function(e,t,i,a){return h(e)?a[t]:i[t]},d="",c=!1;if(t)for(a=0;e.length>a;a++)if(c)"'"!==e.charAt(a)||h("'")?d+=e.charAt(a):c=!1;else switch(e.charAt(a)){case"d":d+=l("d",t.getDate(),2);break;case"D":d+=u("D",t.getDay(),s,n);break;case"o":d+=l("o",Math.round((new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()-new Date(t.getFullYear(),0,0).getTime())/864e5),3);break;case"m":d+=l("m",t.getMonth()+1,2);break;case"M":d+=u("M",t.getMonth(),r,o);break;case"y":d+=h("y")?t.getFullYear():(10>t.getYear()%100?"0":"")+t.getYear()%100;break;case"@":d+=t.getTime();break;case"!":d+=1e4*t.getTime()+this._ticksTo1970;break;case"'":h("'")?d+="'":c=!0;break;default:d+=e.charAt(a)}return d},_possibleChars:function(e){var t,i="",a=!1,s=function(i){var a=e.length>t+1&&e.charAt(t+1)===i;return a&&t++,a};for(t=0;e.length>t;t++)if(a)"'"!==e.charAt(t)||s("'")?i+=e.charAt(t):a=!1;else switch(e.charAt(t)){case"d":case"m":case"y":case"@":i+="0123456789";break;case"D":case"M":return null;case"'":s("'")?i+="'":a=!0;break;default:i+=e.charAt(t)}return i},_get:function(e,i){return e.settings[i]!==t?e.settings[i]:this._defaults[i]},_setDateFromField:function(e,t){if(e.input.val()!==e.lastVal){var i=this._get(e,"dateFormat"),a=e.lastVal=e.input?e.input.val():null,s=this._getDefaultDate(e),n=s,r=this._getFormatConfig(e);try{n=this.parseDate(i,a,r)||s}catch(o){a=t?"":a}e.selectedDay=n.getDate(),e.drawMonth=e.selectedMonth=n.getMonth(),e.drawYear=e.selectedYear=n.getFullYear(),e.currentDay=a?n.getDate():0,e.currentMonth=a?n.getMonth():0,e.currentYear=a?n.getFullYear():0,this._adjustInstDate(e)}},_getDefaultDate:function(e){return this._restrictMinMax(e,this._determineDate(e,this._get(e,"defaultDate"),new Date))},_determineDate:function(t,i,a){var s=function(e){var t=new Date;return t.setDate(t.getDate()+e),t},n=function(i){try{return e.datepicker.parseDate(e.datepicker._get(t,"dateFormat"),i,e.datepicker._getFormatConfig(t))}catch(a){}for(var s=(i.toLowerCase().match(/^c/)?e.datepicker._getDate(t):null)||new Date,n=s.getFullYear(),r=s.getMonth(),o=s.getDate(),h=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,l=h.exec(i);l;){switch(l[2]||"d"){case"d":case"D":o+=parseInt(l[1],10);break;case"w":case"W":o+=7*parseInt(l[1],10);break;case"m":case"M":r+=parseInt(l[1],10),o=Math.min(o,e.datepicker._getDaysInMonth(n,r));break;case"y":case"Y":n+=parseInt(l[1],10),o=Math.min(o,e.datepicker._getDaysInMonth(n,r))}l=h.exec(i)}return new Date(n,r,o)},r=null==i||""===i?a:"string"==typeof i?n(i):"number"==typeof i?isNaN(i)?a:s(i):new Date(i.getTime());return r=r&&"Invalid Date"==""+r?a:r,r&&(r.setHours(0),r.setMinutes(0),r.setSeconds(0),r.setMilliseconds(0)),this._daylightSavingAdjust(r)},_daylightSavingAdjust:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null},_setDate:function(e,t,i){var a=!t,s=e.selectedMonth,n=e.selectedYear,r=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=r.getDate(),e.drawMonth=e.selectedMonth=e.currentMonth=r.getMonth(),e.drawYear=e.selectedYear=e.currentYear=r.getFullYear(),s===e.selectedMonth&&n===e.selectedYear||i||this._notifyChange(e),this._adjustInstDate(e),e.input&&e.input.val(a?"":this._formatDate(e))},_getDate:function(e){var t=!e.currentYear||e.input&&""===e.input.val()?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(t){var i=this._get(t,"stepMonths"),a="#"+t.id.replace(/\\\\/g,"\\");t.dpDiv.find("[data-handler]").map(function(){var t={prev:function(){e.datepicker._adjustDate(a,-i,"M")},next:function(){e.datepicker._adjustDate(a,+i,"M")},hide:function(){e.datepicker._hideDatepicker()},today:function(){e.datepicker._gotoToday(a)},selectDay:function(){return e.datepicker._selectDay(a,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return e.datepicker._selectMonthYear(a,this,"M"),!1},selectYear:function(){return e.datepicker._selectMonthYear(a,this,"Y"),!1}};e(this).bind(this.getAttribute("data-event"),t[this.getAttribute("data-handler")])})},_generateHTML:function(e){var t,i,a,s,n,r,o,h,l,u,d,c,p,m,f,g,v,y,b,_,k,x,D,w,T,M,S,N,C,A,P,I,F,j,H,E,z,L,O,R=new Date,W=this._daylightSavingAdjust(new Date(R.getFullYear(),R.getMonth(),R.getDate())),Y=this._get(e,"isRTL"),J=this._get(e,"showButtonPanel"),$=this._get(e,"hideIfNoPrevNext"),Q=this._get(e,"navigationAsDateFormat"),B=this._getNumberOfMonths(e),K=this._get(e,"showCurrentAtPos"),V=this._get(e,"stepMonths"),U=1!==B[0]||1!==B[1],G=this._daylightSavingAdjust(e.currentDay?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(9999,9,9)),q=this._getMinMaxDate(e,"min"),X=this._getMinMaxDate(e,"max"),Z=e.drawMonth-K,et=e.drawYear;if(0>Z&&(Z+=12,et--),X)for(t=this._daylightSavingAdjust(new Date(X.getFullYear(),X.getMonth()-B[0]*B[1]+1,X.getDate())),t=q&&q>t?q:t;this._daylightSavingAdjust(new Date(et,Z,1))>t;)Z--,0>Z&&(Z=11,et--);for(e.drawMonth=Z,e.drawYear=et,i=this._get(e,"prevText"),i=Q?this.formatDate(i,this._daylightSavingAdjust(new Date(et,Z-V,1)),this._getFormatConfig(e)):i,a=this._canAdjustMonth(e,-1,et,Z)?"<a class='ui-datepicker-prev ui-corner-all' data-handler='prev' data-event='click' title='"+i+"'><span class='ui-icon ui-icon-circle-triangle-"+(Y?"e":"w")+"'>"+i+"</span></a>":$?"":"<a class='ui-datepicker-prev ui-corner-all ui-state-disabled' title='"+i+"'><span class='ui-icon ui-icon-circle-triangle-"+(Y?"e":"w")+"'>"+i+"</span></a>",s=this._get(e,"nextText"),s=Q?this.formatDate(s,this._daylightSavingAdjust(new Date(et,Z+V,1)),this._getFormatConfig(e)):s,n=this._canAdjustMonth(e,1,et,Z)?"<a class='ui-datepicker-next ui-corner-all' data-handler='next' data-event='click' title='"+s+"'><span class='ui-icon ui-icon-circle-triangle-"+(Y?"w":"e")+"'>"+s+"</span></a>":$?"":"<a class='ui-datepicker-next ui-corner-all ui-state-disabled' title='"+s+"'><span class='ui-icon ui-icon-circle-triangle-"+(Y?"w":"e")+"'>"+s+"</span></a>",r=this._get(e,"currentText"),o=this._get(e,"gotoCurrent")&&e.currentDay?G:W,r=Q?this.formatDate(r,o,this._getFormatConfig(e)):r,h=e.inline?"":"<button type='button' class='ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler='hide' data-event='click'>"+this._get(e,"closeText")+"</button>",l=J?"<div class='ui-datepicker-buttonpane ui-widget-content'>"+(Y?h:"")+(this._isInRange(e,o)?"<button type='button' class='ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler='today' data-event='click'>"+r+"</button>":"")+(Y?"":h)+"</div>":"",u=parseInt(this._get(e,"firstDay"),10),u=isNaN(u)?0:u,d=this._get(e,"showWeek"),c=this._get(e,"dayNames"),p=this._get(e,"dayNamesMin"),m=this._get(e,"monthNames"),f=this._get(e,"monthNamesShort"),g=this._get(e,"beforeShowDay"),v=this._get(e,"showOtherMonths"),y=this._get(e,"selectOtherMonths"),b=this._getDefaultDate(e),_="",x=0;B[0]>x;x++){for(D="",this.maxRows=4,w=0;B[1]>w;w++){if(T=this._daylightSavingAdjust(new Date(et,Z,e.selectedDay)),M=" ui-corner-all",S="",U){if(S+="<div class='ui-datepicker-group",B[1]>1)switch(w){case 0:S+=" ui-datepicker-group-first",M=" ui-corner-"+(Y?"right":"left");break;case B[1]-1:S+=" ui-datepicker-group-last",M=" ui-corner-"+(Y?"left":"right");break;default:S+=" ui-datepicker-group-middle",M=""}S+="'>"}for(S+="<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix"+M+"'>"+(/all|left/.test(M)&&0===x?Y?n:a:"")+(/all|right/.test(M)&&0===x?Y?a:n:"")+this._generateMonthYearHeader(e,Z,et,q,X,x>0||w>0,m,f)+"</div><table class='ui-datepicker-calendar'><thead>"+"<tr>",N=d?"<th class='ui-datepicker-week-col'>"+this._get(e,"weekHeader")+"</th>":"",k=0;7>k;k++)C=(k+u)%7,N+="<th"+((k+u+6)%7>=5?" class='ui-datepicker-week-end'":"")+">"+"<span title='"+c[C]+"'>"+p[C]+"</span></th>";for(S+=N+"</tr></thead><tbody>",A=this._getDaysInMonth(et,Z),et===e.selectedYear&&Z===e.selectedMonth&&(e.selectedDay=Math.min(e.selectedDay,A)),P=(this._getFirstDayOfMonth(et,Z)-u+7)%7,I=Math.ceil((P+A)/7),F=U?this.maxRows>I?this.maxRows:I:I,this.maxRows=F,j=this._daylightSavingAdjust(new Date(et,Z,1-P)),H=0;F>H;H++){for(S+="<tr>",E=d?"<td class='ui-datepicker-week-col'>"+this._get(e,"calculateWeek")(j)+"</td>":"",k=0;7>k;k++)z=g?g.apply(e.input?e.input[0]:null,[j]):[!0,""],L=j.getMonth()!==Z,O=L&&!y||!z[0]||q&&q>j||X&&j>X,E+="<td class='"+((k+u+6)%7>=5?" ui-datepicker-week-end":"")+(L?" ui-datepicker-other-month":"")+(j.getTime()===T.getTime()&&Z===e.selectedMonth&&e._keyEvent||b.getTime()===j.getTime()&&b.getTime()===T.getTime()?" "+this._dayOverClass:"")+(O?" "+this._unselectableClass+" ui-state-disabled":"")+(L&&!v?"":" "+z[1]+(j.getTime()===G.getTime()?" "+this._currentClass:"")+(j.getTime()===W.getTime()?" ui-datepicker-today":""))+"'"+(L&&!v||!z[2]?"":" title='"+z[2].replace(/'/g,"'")+"'")+(O?"":" data-handler='selectDay' data-event='click' data-month='"+j.getMonth()+"' data-year='"+j.getFullYear()+"'")+">"+(L&&!v?" ":O?"<span class='ui-state-default'>"+j.getDate()+"</span>":"<a class='ui-state-default"+(j.getTime()===W.getTime()?" ui-state-highlight":"")+(j.getTime()===G.getTime()?" ui-state-active":"")+(L?" ui-priority-secondary":"")+"' href='#'>"+j.getDate()+"</a>")+"</td>",j.setDate(j.getDate()+1),j=this._daylightSavingAdjust(j);S+=E+"</tr>"}Z++,Z>11&&(Z=0,et++),S+="</tbody></table>"+(U?"</div>"+(B[0]>0&&w===B[1]-1?"<div class='ui-datepicker-row-break'></div>":""):""),D+=S}_+=D}return _+=l,e._keyEvent=!1,_},_generateMonthYearHeader:function(e,t,i,a,s,n,r,o){var h,l,u,d,c,p,m,f,g=this._get(e,"changeMonth"),v=this._get(e,"changeYear"),y=this._get(e,"showMonthAfterYear"),b="<div class='ui-datepicker-title'>",_="";if(n||!g)_+="<span class='ui-datepicker-month'>"+r[t]+"</span>";else{for(h=a&&a.getFullYear()===i,l=s&&s.getFullYear()===i,_+="<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>",u=0;12>u;u++)(!h||u>=a.getMonth())&&(!l||s.getMonth()>=u)&&(_+="<option value='"+u+"'"+(u===t?" selected='selected'":"")+">"+o[u]+"</option>");_+="</select>"}if(y||(b+=_+(!n&&g&&v?"":" ")),!e.yearshtml)if(e.yearshtml="",n||!v)b+="<span class='ui-datepicker-year'>"+i+"</span>";else{for(d=this._get(e,"yearRange").split(":"),c=(new Date).getFullYear(),p=function(e){var t=e.match(/c[+\-].*/)?i+parseInt(e.substring(1),10):e.match(/[+\-].*/)?c+parseInt(e,10):parseInt(e,10); -return isNaN(t)?c:t},m=p(d[0]),f=Math.max(m,p(d[1]||"")),m=a?Math.max(m,a.getFullYear()):m,f=s?Math.min(f,s.getFullYear()):f,e.yearshtml+="<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";f>=m;m++)e.yearshtml+="<option value='"+m+"'"+(m===i?" selected='selected'":"")+">"+m+"</option>";e.yearshtml+="</select>",b+=e.yearshtml,e.yearshtml=null}return b+=this._get(e,"yearSuffix"),y&&(b+=(!n&&g&&v?"":" ")+_),b+="</div>"},_adjustInstDate:function(e,t,i){var a=e.drawYear+("Y"===i?t:0),s=e.drawMonth+("M"===i?t:0),n=Math.min(e.selectedDay,this._getDaysInMonth(a,s))+("D"===i?t:0),r=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(a,s,n)));e.selectedDay=r.getDate(),e.drawMonth=e.selectedMonth=r.getMonth(),e.drawYear=e.selectedYear=r.getFullYear(),("M"===i||"Y"===i)&&this._notifyChange(e)},_restrictMinMax:function(e,t){var i=this._getMinMaxDate(e,"min"),a=this._getMinMaxDate(e,"max"),s=i&&i>t?i:t;return a&&s>a?a:s},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return null==t?[1,1]:"number"==typeof t?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return new Date(e,t,1).getDay()},_canAdjustMonth:function(e,t,i,a){var s=this._getNumberOfMonths(e),n=this._daylightSavingAdjust(new Date(i,a+(0>t?t:s[0]*s[1]),1));return 0>t&&n.setDate(this._getDaysInMonth(n.getFullYear(),n.getMonth())),this._isInRange(e,n)},_isInRange:function(e,t){var i,a,s=this._getMinMaxDate(e,"min"),n=this._getMinMaxDate(e,"max"),r=null,o=null,h=this._get(e,"yearRange");return h&&(i=h.split(":"),a=(new Date).getFullYear(),r=parseInt(i[0],10),o=parseInt(i[1],10),i[0].match(/[+\-].*/)&&(r+=a),i[1].match(/[+\-].*/)&&(o+=a)),(!s||t.getTime()>=s.getTime())&&(!n||t.getTime()<=n.getTime())&&(!r||t.getFullYear()>=r)&&(!o||o>=t.getFullYear())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t="string"!=typeof t?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,i,a){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var s=t?"object"==typeof t?t:this._daylightSavingAdjust(new Date(a,i,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),s,this._getFormatConfig(e))}}),e.fn.datepicker=function(t){if(!this.length)return this;e.datepicker.initialized||(e(document).mousedown(e.datepicker._checkExternalClick),e.datepicker.initialized=!0),0===e("#"+e.datepicker._mainDivId).length&&e("body").append(e.datepicker.dpDiv);var i=Array.prototype.slice.call(arguments,1);return"string"!=typeof t||"isDisabled"!==t&&"getDate"!==t&&"widget"!==t?"option"===t&&2===arguments.length&&"string"==typeof arguments[1]?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i)):this.each(function(){"string"==typeof t?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this].concat(i)):e.datepicker._attachDatepicker(this,t)}):e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i))},e.datepicker=new i,e.datepicker.initialized=!1,e.datepicker.uuid=(new Date).getTime(),e.datepicker.version="1.10.3"})(jQuery);
\ No newline at end of file diff --git a/web/vendor/jquery.multi-select.min.js b/web/vendor/jquery.multi-select.min.js new file mode 100644 index 000000000..015aee226 --- /dev/null +++ b/web/vendor/jquery.multi-select.min.js @@ -0,0 +1,9 @@ +(function(c){function f(b,a){this.b=c(b);this.a=c.extend({},g,a);this.H()}var g={containerHTML:'<div class="multi-select-container">',menuHTML:'<div class="multi-select-menu">',buttonHTML:'<span class="multi-select-button">',menuItemsHTML:'<div class="multi-select-menuitems">',menuItemHTML:'<label class="multi-select-menuitem">',presetsHTML:'<div class="multi-select-presets">',activeClass:"multi-select-container--open",noneText:"-- Select --",allText:void 0,presets:void 0,positionedMenuClass:"multi-select-container--positioned", +positionMenuWithin:void 0,viewportBottomGutter:20,menuMinHeight:200};c.extend(f.prototype,{H:function(){this.v();this.G();this.A();this.w();this.B();this.J();this.K();this.b.hide()},v:function(){if(!1===this.b.is("select[multiple]"))throw Error("$.multiSelect only works on <select multiple> elements");},G:function(){this.l=c('label[for="'+this.b.attr("id")+'"]')},A:function(){this.f=c(this.a.containerHTML);this.b.data("multi-select-container",this.f);this.f.insertAfter(this.b)},w:function(){var b= +this;this.g=c(this.a.buttonHTML);this.g.attr({role:"button","aria-haspopup":"true",tabindex:0,"aria-label":this.l.eq(0).text()}).on("keydown.multiselect",function(a){a=a.which;13!==a&&32!==a||b.g.click()}).on("click.multiselect",function(){b.m()}).appendTo(this.f);this.b.on("change.multiselect",function(){b.o()});this.o()},o:function(){var b=[],a=[];this.b.children("option").each(function(){var d=c(this).text();b.push(d);c(this).is(":selected")&&a.push(c.trim(d))});this.g.empty();0==a.length?this.g.text(this.a.noneText): +a.length===b.length&&this.a.allText?this.g.text(this.a.allText):this.g.text(a.join(", "))},B:function(){var b=this;this.c=c(this.a.menuHTML);this.c.attr({role:"menu"}).on("keyup.multiselect",function(a){27===a.which&&b.j()}).appendTo(this.f);this.D();this.a.presets&&this.F()},D:function(){var b=this;this.h=c(this.a.menuItemsHTML);this.c.append(this.h);this.b.on("change.multiselect",function(a,c){!0!==c&&b.s()});this.s()},s:function(){var b=this;this.h.empty();this.b.children("option").each(function(a, +d){a=b.C(c(d),a);b.h.append(a)})},F:function(){var b=this;this.i=c(this.a.presetsHTML);this.c.prepend(this.i);c.each(this.a.presets,function(a,d){a=b.b.attr("name")+"_preset_"+a;var h=c(b.a.menuItemHTML).attr({"for":a,role:"menuitem"}).text(" "+d.name).appendTo(b.i);c("<input>").attr({type:"radio",name:b.b.attr("name")+"_presets",id:a}).prependTo(h).on("change.multiselect",function(){b.b.val(d.options);b.b.trigger("change")})});this.b.on("change.multiselect",function(){b.u()});this.u()},u:function(){var b= +this;c.each(this.a.presets,function(a,c){a=b.b.attr("name")+"_preset_"+a;a=b.i.find("#"+a);a:{c=c.options||[];var d=b.b.val()||[];if(c.length!=d.length)c=!1;else{c.sort();d.sort();for(var e=0;e<c.length;e++)if(c[e]!==d[e]){c=!1;break a}c=!0}}c?a.prop("checked",!0):a.prop("checked",!1)})},C:function(b,a){var d=this.b.attr("name")+"_"+a;a=c(this.a.menuItemHTML).attr({"for":d,role:"menuitem"}).text(" "+b.text());d=c("<input>").attr({type:"checkbox",id:d,value:b.val()}).prependTo(a);b.is(":disabled")&& +d.attr("disabled","disabled");b.is(":selected")&&d.prop("checked","checked");d.on("change.multiselect",function(){c(this).prop("checked")?b.prop("selected",!0):b.prop("selected",!1);b.trigger("change",[!0])});return a},J:function(){var b=this;c("html").on("click.multiselect",function(){b.j()});this.f.on("click.multiselect",function(a){a.stopPropagation()})},K:function(){var b=this;this.l.on("click.multiselect",function(a){a.preventDefault();a.stopPropagation();b.m()})},I:function(){c("html").trigger("click.multiselect"); +this.f.addClass(this.a.activeClass);if(this.a.positionMenuWithin&&this.a.positionMenuWithin instanceof c){var b=this.c.offset().left+this.c.outerWidth(),a=this.a.positionMenuWithin.offset().left+this.a.positionMenuWithin.outerWidth();b>a&&(this.c.css("width",a-this.c.offset().left),this.f.addClass(this.a.positionedMenuClass))}b=this.c.offset().top+this.c.outerHeight();a=c(window).scrollTop()+c(window).height();b>a-this.a.viewportBottomGutter?this.c.css({maxHeight:Math.max(a-this.a.viewportBottomGutter- +this.c.offset().top,this.a.menuMinHeight),overflow:"scroll"}):this.c.css({maxHeight:"",overflow:""})},j:function(){this.f.removeClass(this.a.activeClass);this.f.removeClass(this.a.positionedMenuClass);this.c.css("width","auto")},m:function(){this.f.hasClass(this.a.activeClass)?this.j():this.I()}});c.fn.multiSelect=function(b){return this.each(function(){c.data(this,"plugin_multiSelect")||c.data(this,"plugin_multiSelect",new f(this,b))})}})(jQuery); diff --git a/web/vendor/yepnope.js b/web/vendor/yepnope.js deleted file mode 100644 index d48d17427..000000000 --- a/web/vendor/yepnope.js +++ /dev/null @@ -1 +0,0 @@ -(function(e,t,n){function r(e){return"[object Function]"==y.call(e)}function o(e){return"string"==typeof e}function a(){}function i(e){return!e||"loaded"==e||"complete"==e||"uninitialized"==e}function c(){var e=v.shift();g=1,e?e.t?m(function(){("c"==e.t?f.injectCss:f.injectJs)(e.s,0,e.a,e.x,e.e,1)},0):(e(),c()):g=0}function l(e,n,r,o,a,l,s){function u(t){if(!p&&i(d.readyState)&&(b.r=p=1,!g&&c(),d.onload=d.onreadystatechange=null,t)){"img"!=e&&m(function(){C.removeChild(d)},50);for(var r in M[n])M[n].hasOwnProperty(r)&&M[n][r].onload()}}var s=s||f.errorTimeout,d=t.createElement(e),p=0,y=0,b={t:r,s:n,e:a,a:l,x:s};1===M[n]&&(y=1,M[n]=[]),"object"==e?d.data=n:(d.src=n,d.type=e),d.width=d.height="0",d.onerror=d.onload=d.onreadystatechange=function(){u.call(this,y)},v.splice(o,0,b),"img"!=e&&(y||2===M[n]?(C.insertBefore(d,E?null:h),m(u,s)):M[n].push(d))}function s(e,t,n,r,a){return g=0,t=t||"j",o(e)?l("c"==t?w:S,e,t,this.i++,n,r,a):(v.splice(this.i++,0,e),1==v.length&&c()),this}function u(){var e=f;return e.loader={load:s,i:0},e}var d,f,p=t.documentElement,m=e.setTimeout,h=t.getElementsByTagName("script")[0],y={}.toString,v=[],g=0,b="MozAppearance"in p.style,E=b&&!!t.createRange().compareNode,C=E?p:h.parentNode,p=e.opera&&"[object Opera]"==y.call(e.opera),p=!!t.attachEvent&&!p,S=b?"object":p?"script":"img",w=p?"script":S,j=Array.isArray||function(e){return"[object Array]"==y.call(e)},F=[],M={},N={timeout:function(e,t){return t.length&&(e.timeout=t[0]),e}};f=function(e){function t(e){var t,n,r,e=e.split("!"),o=F.length,a=e.pop(),i=e.length,a={url:a,origUrl:a,prefixes:e};for(n=0;i>n;n++)r=e[n].split("="),(t=N[r.shift()])&&(a=t(a,r));for(n=0;o>n;n++)a=F[n](a);return a}function i(e,o,a,i,c){var l=t(e),s=l.autoCallback;l.url.split(".").pop().split("?").shift(),l.bypass||(o&&(o=r(o)?o:o[e]||o[i]||o[e.split("/").pop().split("?")[0]]),l.instead?l.instead(e,o,a,i,c):(M[l.url]?l.noexec=!0:M[l.url]=1,a.load(l.url,l.forceCSS||!l.forceJS&&"css"==l.url.split(".").pop().split("?").shift()?"c":n,l.noexec,l.attrs,l.timeout),(r(o)||r(s))&&a.load(function(){u(),o&&o(l.origUrl,c,i),s&&s(l.origUrl,c,i),M[l.url]=2})))}function c(e,t){function n(e,n){if(e){if(o(e))n||(d=function(){var e=[].slice.call(arguments);f.apply(this,e),p()}),i(e,d,t,0,s);else if(Object(e)===e)for(l in c=function(){var t,n=0;for(t in e)e.hasOwnProperty(t)&&n++;return n}(),e)e.hasOwnProperty(l)&&(!n&&!--c&&(r(d)?d=function(){var e=[].slice.call(arguments);f.apply(this,e),p()}:d[l]=function(e){return function(){var t=[].slice.call(arguments);e&&e.apply(this,t),p()}}(f[l])),i(e[l],d,t,l,s))}else!n&&p()}var c,l,s=!!e.test,u=e.load||e.both,d=e.callback||a,f=d,p=e.complete||a;n(s?e.yep:e.nope,!!u),u&&n(u)}var l,s,d=this.yepnope.loader;if(o(e))i(e,0,d,0);else if(j(e))for(l=0;l<e.length;l++)s=e[l],o(s)?i(s,0,d,0):j(s)?f(s):Object(s)===s&&c(s,d);else Object(e)===e&&c(e,d)},f.addPrefix=function(e,t){N[e]=t},f.addFilter=function(e){F.push(e)},f.errorTimeout=1e4,null==t.readyState&&t.addEventListener&&(t.readyState="loading",t.addEventListener("DOMContentLoaded",d=function(){t.removeEventListener("DOMContentLoaded",d,0),t.readyState="complete"},0)),e.yepnope=u(),e.yepnope.executeStack=c,e.yepnope.injectJs=function(e,n,r,o,l,s){var u,d,p=t.createElement("script"),o=o||f.errorTimeout;p.src=e;for(d in r)p.setAttribute(d,r[d]);n=s?c:n||a,p.onreadystatechange=p.onload=function(){!u&&i(p.readyState)&&(u=1,n(),p.onload=p.onreadystatechange=null)},m(function(){u||(u=1,n(1))},o),l?p.onload():h.parentNode.insertBefore(p,h)},e.yepnope.injectCss=function(e,n,r,o,i,l){var s,o=t.createElement("link"),n=l?c:n||a;o.href=e,o.rel="stylesheet",o.type="text/css";for(s in r)o.setAttribute(s,r[s]);i||(h.parentNode.insertBefore(o,h),m(n,0))}})(this,document); |