diff --git a/app/assets/js/start.js b/app/assets/js/start.js index 3bf2bea8..0dab65cc 100644 --- a/app/assets/js/start.js +++ b/app/assets/js/start.js @@ -4,4 +4,6 @@ $(function() { $('.wrapper').toggleClass('active'); }); + $('[data-toggle="tooltip"]').tooltip(); + }); diff --git a/app/assets/sass/modules/_bootstrap.scss b/app/assets/sass/modules/_bootstrap.scss new file mode 100644 index 00000000..06759e23 --- /dev/null +++ b/app/assets/sass/modules/_bootstrap.scss @@ -0,0 +1,52 @@ +// Bootstrap variable overrides and custom variables +@import "variables"; + +// Core variables and mixins +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/variables"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/mixins"; + +// Reset and dependencies +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/normalize"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/print"; + +// Core CSS +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/scaffolding"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/type"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/code"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/grid"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/tables"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/forms"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/buttons"; + +// Components +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/component-animations"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/dropdowns"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/button-groups"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/input-groups"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/navs"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/navbar"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/breadcrumbs"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/pagination"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/pager"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/labels"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/badges"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/jumbotron"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/thumbnails"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/alerts"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/progress-bars"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/media"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/list-group"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/panels"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/responsive-embed"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/wells"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/close"; + +// Components w/ JavaScript +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/modals"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/tooltip"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/popovers"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/carousel"; + +// Utility classes +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/utilities"; +@import "../../bower_components/bootstrap-sass-official/assets/stylesheets/bootstrap/responsive-utilities"; diff --git a/app/assets/sass/modules/_forms.scss b/app/assets/sass/modules/_forms.scss index 643da5dd..294d32fc 100644 --- a/app/assets/sass/modules/_forms.scss +++ b/app/assets/sass/modules/_forms.scss @@ -1,3 +1,7 @@ +label { + font-size: 14px; +} + .form-control { @include box-shadow(none); } diff --git a/app/assets/sass/modules/_variables.scss b/app/assets/sass/modules/_variables.scss new file mode 100644 index 00000000..7598630c --- /dev/null +++ b/app/assets/sass/modules/_variables.scss @@ -0,0 +1,5 @@ +$brand-success: #7ed321 !default; + +//** Tooltip background color +$tooltip-bg: #333 !default; +$tooltip-opacity: .9 !default; diff --git a/app/assets/sass/partials/_content.scss b/app/assets/sass/partials/_content.scss index 645aea9b..bfccc5ec 100644 --- a/app/assets/sass/partials/_content.scss +++ b/app/assets/sass/partials/_content.scss @@ -52,5 +52,13 @@ body.dashboard { font-weight: 300; text-transform: uppercase; } + + .striped-list { + + .striped-list-item { + border-bottom: 1px solid #f0f0f0; + padding: 8px 0; + } + } } } diff --git a/app/assets/sass/partials/_sidebar.scss b/app/assets/sass/partials/_sidebar.scss index f16d9487..cef1343c 100644 --- a/app/assets/sass/partials/_sidebar.scss +++ b/app/assets/sass/partials/_sidebar.scss @@ -6,7 +6,7 @@ body.dashboard { background: $sidebar-background-color; @include box-shadow($sidebar-border-shadow); position: relative; - z-index: 100; + z-index: 999; .sidebar-inner { position: relative; @@ -71,5 +71,25 @@ body.dashboard { } } } + .bottom-menu-sidebar { + position: fixed; + bottom: 0; + width: 230px; + z-index: 999; + ul > li { + float: left; + display: block; + width: 33.333%; + border-right: 1px solid #D1DFEC; + border-top: 1px solid #D1DFEC; + a { + display: block; + position: relative; + text-align: center; + padding: 6px 0; + background: #E8EFF6; + } + } + } } } diff --git a/app/lang/en/cachet.php b/app/lang/en/cachet.php index 866937a9..05222c07 100644 --- a/app/lang/en/cachet.php +++ b/app/lang/en/cachet.php @@ -48,6 +48,7 @@ return [ 'toggle_navigation' => 'Toggle Navigation', 'search' => 'Search...', 'user' => 'User', + 'help' => 'Help', ], // Forms 'forms' => [ diff --git a/app/views/dashboard/component-edit.blade.php b/app/views/dashboard/component-edit.blade.php index e00da3d9..6dfd556c 100644 --- a/app/views/dashboard/component-edit.blade.php +++ b/app/views/dashboard/component-edit.blade.php @@ -1,44 +1,50 @@ @extends('layout.dashboard') @section('content') -
- {{ Lang::get('cachet.dashboard.components') }} > Edit component -
-
-
- @if($savedComponent = Session::get('savedComponent')) -
- @if($savedComponent->isValid()) - Awesome. Component updated. - @else - Whoops. Something went wrong with the component. {{ $savedComponent->getErrors() }} - @endif -
- @endif +
+ + {{ Lang::get('cachet.dashboard.components') }} + + > Edit component +
+
+
+
+ @if($savedComponent = Session::get('savedComponent')) +
+ @if($savedComponent->isValid()) + Awesome. Component updated. + @else + Whoops. Something went wrong with the component. {{ $savedComponent->getErrors() }} + @endif +
+ @endif -
-
-
- - -
-
- - -
-
- - -
-
+ +
+
+ + +
+
+ + +
+
+ + +
+
- - -
-
-
-@stop + + Cancel + + +
+
+
+ @stop diff --git a/app/views/dashboard/components.blade.php b/app/views/dashboard/components.blade.php index 246a05de..efef4a6d 100644 --- a/app/views/dashboard/components.blade.php +++ b/app/views/dashboard/components.blade.php @@ -12,29 +12,23 @@
-
-
    - @forelse($components as $component) -
  • -
    -
    - {{ $component->name }} - @if($component->description) -

    {{ $component->description }}

    - @endif -
    -
    - -
    -
    -
  • - @empty -
  • You should add a component.
  • - @endforelse -
+
+ @forelse($components as $component) +
+
+ {{ $component->name }} + @if($component->description) +

{{ $component->description }}

+ @endif +
+
+ Edit + Delete +
+
+ @empty +
You should add a component.
+ @endforelse
diff --git a/app/views/dashboard/incident-add.blade.php b/app/views/dashboard/incident-add.blade.php index b8071884..f9bd0056 100644 --- a/app/views/dashboard/incident-add.blade.php +++ b/app/views/dashboard/incident-add.blade.php @@ -11,7 +11,7 @@
@if($incident = Session::get('incident')) -
+
@if($incident->isValid()) Awesome. Incident added. @else @@ -22,41 +22,42 @@ {{ Form::open(['name' => 'IncidentForm', 'class' => 'form-vertical', 'role' => 'form']) }}
-
- - +
+ +
-
-
-
- + + Cancel {{ Form::close() }}
diff --git a/app/views/dashboard/incidents.blade.php b/app/views/dashboard/incidents.blade.php index 25bc20d7..618df570 100644 --- a/app/views/dashboard/incidents.blade.php +++ b/app/views/dashboard/incidents.blade.php @@ -14,30 +14,26 @@
@if ($incidents->count() === 0) -

Woah! No incidents, your doing well!

+
Woah! No incidents, your doing well!
@else

You have {{ $incidents->count() }} incidents.

@endif -
    +
    @foreach($incidents as $incident) -
  • -
    -
    - {{ $incident->name }} - @if($incident->message) -

    {{ Str::words($incident->message, 5) }}

    - @endif -
    -
    - -
    +
    +
    + {{ $incident->name }} + @if($incident->message) +

    {{ Str::words($incident->message, 5) }}

    + @endif
    -
  • +
    + Delete +
    +
    @endforeach -
+
diff --git a/app/views/dashboard/settings.blade.php b/app/views/dashboard/settings.blade.php index 85b3a254..27ad590f 100644 --- a/app/views/dashboard/settings.blade.php +++ b/app/views/dashboard/settings.blade.php @@ -90,7 +90,7 @@
- + diff --git a/app/views/partials/dashboard/sidebar.blade.php b/app/views/partials/dashboard/sidebar.blade.php index f73a7768..df79d780 100644 --- a/app/views/partials/dashboard/sidebar.blade.php +++ b/app/views/partials/dashboard/sidebar.blade.php @@ -59,6 +59,23 @@ +
+
+ Cachet +
+
+ +
@endif diff --git a/app/views/setup.blade.php b/app/views/setup.blade.php index 9d80c452..2e2f69ee 100644 --- a/app/views/setup.blade.php +++ b/app/views/setup.blade.php @@ -1,72 +1,75 @@ @extends('layout.dashboard') @section('content') -
- {{ Lang::get('cachet.setup') }} +
+ + {{ Lang::get('cachet.setup') }} +
-
-
-
-
{{ Lang::get('cachet.forms.setup.service_details') }}
-
- {{ Form::open(['name' => 'SetupForm', 'class' => 'form-vertical', 'role' => 'form']) }} -
- {{ Lang::get('cachet.forms.setup.status_page_setup') }} -
- - - @if($errors->has('settings.app_name')) - {{ $errors->first('settings.app_name') }} - @endif -
-
- - - @if($errors->has('settings.app_domain')) - {{ $errors->first('settings.app_domain') }} - @endif -
-
- -
-
+
+
+
+
+
{{ Lang::get('cachet.forms.setup.service_details') }}
+
+ {{ Form::open(['name' => 'SetupForm', 'class' => 'form-vertical', 'role' => 'form']) }} +
+ {{ Lang::get('cachet.forms.setup.status_page_setup') }} +
+ + + @if($errors->has('settings.app_name')) + {{ $errors->first('settings.app_name') }} + @endif +
+
+ + + @if($errors->has('settings.app_domain')) + {{ $errors->first('settings.app_domain') }} + @endif +
+
+ +
+
-
- Administrator Account -
- - - @if($errors->has('user.username')) - {{ $errors->first('user.username') }} - @endif -
-
- - - @if($errors->has('user.email')) - {{ $errors->first('user.email') }} - @endif -
-
- - - @if($errors->has('user.password')) - {{ $errors->first('user.password') }} - @endif -
-
+
+ Administrator Account +
+ + + @if($errors->has('user.username')) + {{ $errors->first('user.username') }} + @endif +
+
+ + + @if($errors->has('user.email')) + {{ $errors->first('user.email') }} + @endif +
+
+ + + @if($errors->has('user.password')) + {{ $errors->first('user.password') }} + @endif +
+
-
-
- -
- {{ Form::close() }} +
+
+ +
+ {{ Form::close() }} +
- @stop diff --git a/gulpfile.js b/gulpfile.js index 8a5c877f..1be68c7c 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -11,7 +11,6 @@ elixir(function (mix) { 'bower_components/jquery/dist/jquery.min.js', 'bower_components/bootstrap-sass-official/assets/javascripts/bootstrap.js', 'bower_components/chartjs/Chart.min.js', - 'bower_components/rivets/dist/rivets.min.js', 'js/app.js', 'js/**/*.js', ], './app/assets/') diff --git a/public/build/css/all-cd7afd7c.css b/public/build/css/all-59ec4e3e.css similarity index 99% rename from public/build/css/all-cd7afd7c.css rename to public/build/css/all-59ec4e3e.css index 09ac6a78..91a4fcd7 100644 --- a/public/build/css/all-cd7afd7c.css +++ b/public/build/css/all-59ec4e3e.css @@ -1792,19 +1792,19 @@ textarea.input-lg, .input-group-lg > textarea.form-control, .input-group-lg > te .btn-success { color: #fff; - background-color: #5cb85c; - border-color: #4cae4c; } + background-color: #7ed321; + border-color: #71bd1e; } .btn-success:hover, .btn-success:focus, .btn-success.focus, .btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle { color: #fff; - background-color: #449d44; - border-color: #398439; } + background-color: #64a71a; + border-color: #518815; } .btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle { background-image: none; } .btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, .btn-success[disabled]:active, .btn-success[disabled].active, fieldset[disabled] .btn-success, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success.focus, fieldset[disabled] .btn-success:active, fieldset[disabled] .btn-success.active { - background-color: #5cb85c; - border-color: #4cae4c; } + background-color: #7ed321; + border-color: #71bd1e; } .btn-success .badge { - color: #5cb85c; + color: #7ed321; background-color: #fff; } .btn-info { @@ -2910,9 +2910,9 @@ a.label:hover, a.label:focus { background-color: #286090; } .label-success { - background-color: #5cb85c; } + background-color: #7ed321; } .label-success[href]:hover, .label-success[href]:focus { - background-color: #449d44; } + background-color: #64a71a; } .label-info { background-color: #5bc0de; } @@ -3118,7 +3118,7 @@ a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active { animation: progress-bar-stripes 2s linear infinite; } .progress-bar-success { - background-color: #5cb85c; } + background-color: #7ed321; } .progress-striped .progress-bar-success { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } @@ -3698,7 +3698,7 @@ button.close { color: #fff; text-align: center; text-decoration: none; - background-color: #000; + background-color: #333; border-radius: 4px; } .tooltip-arrow { @@ -3713,49 +3713,49 @@ button.close { left: 50%; margin-left: -5px; border-width: 5px 5px 0; - border-top-color: #000; } + border-top-color: #333; } .tooltip.top-left .tooltip-arrow { bottom: 0; right: 5px; margin-bottom: -5px; border-width: 5px 5px 0; - border-top-color: #000; } + border-top-color: #333; } .tooltip.top-right .tooltip-arrow { bottom: 0; left: 5px; margin-bottom: -5px; border-width: 5px 5px 0; - border-top-color: #000; } + border-top-color: #333; } .tooltip.right .tooltip-arrow { top: 50%; left: 0; margin-top: -5px; border-width: 5px 5px 5px 0; - border-right-color: #000; } + border-right-color: #333; } .tooltip.left .tooltip-arrow { top: 50%; right: 0; margin-top: -5px; border-width: 5px 0 5px 5px; - border-left-color: #000; } + border-left-color: #333; } .tooltip.bottom .tooltip-arrow { top: 0; left: 50%; margin-left: -5px; border-width: 0 5px 5px; - border-bottom-color: #000; } + border-bottom-color: #333; } .tooltip.bottom-left .tooltip-arrow { top: 0; right: 5px; margin-top: -5px; border-width: 0 5px 5px; - border-bottom-color: #000; } + border-bottom-color: #333; } .tooltip.bottom-right .tooltip-arrow { top: 0; left: 5px; margin-top: -5px; border-width: 0 5px 5px; - border-bottom-color: #000; } + border-bottom-color: #333; } .popover { position: absolute; @@ -4269,6 +4269,9 @@ div[role=tabpanel] .tab-content { div[role=tabpanel] .tab-content .tab-pane { padding: 10px; } +label { + font-size: 14px; } + .form-control { box-shadow: none; } @@ -4342,7 +4345,7 @@ body.dashboard .sidebar { background: #F0F3F4; box-shadow: inset 0px -2px 3px rgba(0, 0, 0, 0.25); position: relative; - z-index: 100; } + z-index: 999; } body.dashboard .sidebar .sidebar-inner { position: relative; } body.dashboard .sidebar .sidebar-inner .profile { @@ -4385,6 +4388,23 @@ body.dashboard .sidebar { text-decoration: none; } body.dashboard .sidebar .sidebar-inner ul li.sub-nav-item a { padding-left: 40px; } + body.dashboard .sidebar .bottom-menu-sidebar { + position: fixed; + bottom: 0; + width: 230px; + z-index: 999; } + body.dashboard .sidebar .bottom-menu-sidebar ul > li { + float: left; + display: block; + width: 33.333%; + border-right: 1px solid #D1DFEC; + border-top: 1px solid #D1DFEC; } + body.dashboard .sidebar .bottom-menu-sidebar ul > li a { + display: block; + position: relative; + text-align: center; + padding: 6px 0; + background: #E8EFF6; } body.dashboard .content { position: relative; @@ -4424,6 +4444,9 @@ body.dashboard .content { body.dashboard .content .sub-header { font-weight: 300; text-transform: uppercase; } + body.dashboard .content .striped-list .striped-list-item { + border-bottom: 1px solid #f0f0f0; + padding: 8px 0; } .login { padding-top: 90px; } diff --git a/public/build/css/all.css b/public/build/css/all.css index 09ac6a78..91a4fcd7 100644 --- a/public/build/css/all.css +++ b/public/build/css/all.css @@ -1792,19 +1792,19 @@ textarea.input-lg, .input-group-lg > textarea.form-control, .input-group-lg > te .btn-success { color: #fff; - background-color: #5cb85c; - border-color: #4cae4c; } + background-color: #7ed321; + border-color: #71bd1e; } .btn-success:hover, .btn-success:focus, .btn-success.focus, .btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle { color: #fff; - background-color: #449d44; - border-color: #398439; } + background-color: #64a71a; + border-color: #518815; } .btn-success:active, .btn-success.active, .open > .btn-success.dropdown-toggle { background-image: none; } .btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, .btn-success[disabled]:active, .btn-success[disabled].active, fieldset[disabled] .btn-success, fieldset[disabled] .btn-success:hover, fieldset[disabled] .btn-success:focus, fieldset[disabled] .btn-success.focus, fieldset[disabled] .btn-success:active, fieldset[disabled] .btn-success.active { - background-color: #5cb85c; - border-color: #4cae4c; } + background-color: #7ed321; + border-color: #71bd1e; } .btn-success .badge { - color: #5cb85c; + color: #7ed321; background-color: #fff; } .btn-info { @@ -2910,9 +2910,9 @@ a.label:hover, a.label:focus { background-color: #286090; } .label-success { - background-color: #5cb85c; } + background-color: #7ed321; } .label-success[href]:hover, .label-success[href]:focus { - background-color: #449d44; } + background-color: #64a71a; } .label-info { background-color: #5bc0de; } @@ -3118,7 +3118,7 @@ a.thumbnail:hover, a.thumbnail:focus, a.thumbnail.active { animation: progress-bar-stripes 2s linear infinite; } .progress-bar-success { - background-color: #5cb85c; } + background-color: #7ed321; } .progress-striped .progress-bar-success { background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); } @@ -3698,7 +3698,7 @@ button.close { color: #fff; text-align: center; text-decoration: none; - background-color: #000; + background-color: #333; border-radius: 4px; } .tooltip-arrow { @@ -3713,49 +3713,49 @@ button.close { left: 50%; margin-left: -5px; border-width: 5px 5px 0; - border-top-color: #000; } + border-top-color: #333; } .tooltip.top-left .tooltip-arrow { bottom: 0; right: 5px; margin-bottom: -5px; border-width: 5px 5px 0; - border-top-color: #000; } + border-top-color: #333; } .tooltip.top-right .tooltip-arrow { bottom: 0; left: 5px; margin-bottom: -5px; border-width: 5px 5px 0; - border-top-color: #000; } + border-top-color: #333; } .tooltip.right .tooltip-arrow { top: 50%; left: 0; margin-top: -5px; border-width: 5px 5px 5px 0; - border-right-color: #000; } + border-right-color: #333; } .tooltip.left .tooltip-arrow { top: 50%; right: 0; margin-top: -5px; border-width: 5px 0 5px 5px; - border-left-color: #000; } + border-left-color: #333; } .tooltip.bottom .tooltip-arrow { top: 0; left: 50%; margin-left: -5px; border-width: 0 5px 5px; - border-bottom-color: #000; } + border-bottom-color: #333; } .tooltip.bottom-left .tooltip-arrow { top: 0; right: 5px; margin-top: -5px; border-width: 0 5px 5px; - border-bottom-color: #000; } + border-bottom-color: #333; } .tooltip.bottom-right .tooltip-arrow { top: 0; left: 5px; margin-top: -5px; border-width: 0 5px 5px; - border-bottom-color: #000; } + border-bottom-color: #333; } .popover { position: absolute; @@ -4269,6 +4269,9 @@ div[role=tabpanel] .tab-content { div[role=tabpanel] .tab-content .tab-pane { padding: 10px; } +label { + font-size: 14px; } + .form-control { box-shadow: none; } @@ -4342,7 +4345,7 @@ body.dashboard .sidebar { background: #F0F3F4; box-shadow: inset 0px -2px 3px rgba(0, 0, 0, 0.25); position: relative; - z-index: 100; } + z-index: 999; } body.dashboard .sidebar .sidebar-inner { position: relative; } body.dashboard .sidebar .sidebar-inner .profile { @@ -4385,6 +4388,23 @@ body.dashboard .sidebar { text-decoration: none; } body.dashboard .sidebar .sidebar-inner ul li.sub-nav-item a { padding-left: 40px; } + body.dashboard .sidebar .bottom-menu-sidebar { + position: fixed; + bottom: 0; + width: 230px; + z-index: 999; } + body.dashboard .sidebar .bottom-menu-sidebar ul > li { + float: left; + display: block; + width: 33.333%; + border-right: 1px solid #D1DFEC; + border-top: 1px solid #D1DFEC; } + body.dashboard .sidebar .bottom-menu-sidebar ul > li a { + display: block; + position: relative; + text-align: center; + padding: 6px 0; + background: #E8EFF6; } body.dashboard .content { position: relative; @@ -4424,6 +4444,9 @@ body.dashboard .content { body.dashboard .content .sub-header { font-weight: 300; text-transform: uppercase; } + body.dashboard .content .striped-list .striped-list-item { + border-bottom: 1px solid #f0f0f0; + padding: 8px 0; } .login { padding-top: 90px; } diff --git a/public/build/fonts/FontAwesome.otf b/public/build/fonts/FontAwesome.otf new file mode 100644 index 00000000..81c9ad94 Binary files /dev/null and b/public/build/fonts/FontAwesome.otf differ diff --git a/public/build/fonts/fontawesome-webfont.eot b/public/build/fonts/fontawesome-webfont.eot new file mode 100644 index 00000000..84677bc0 Binary files /dev/null and b/public/build/fonts/fontawesome-webfont.eot differ diff --git a/public/build/fonts/fontawesome-webfont.svg b/public/build/fonts/fontawesome-webfont.svg new file mode 100644 index 00000000..d907b25a --- /dev/null +++ b/public/build/fonts/fontawesome-webfont.svg @@ -0,0 +1,520 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/public/build/fonts/fontawesome-webfont.ttf b/public/build/fonts/fontawesome-webfont.ttf new file mode 100644 index 00000000..96a3639c Binary files /dev/null and b/public/build/fonts/fontawesome-webfont.ttf differ diff --git a/public/build/fonts/fontawesome-webfont.woff b/public/build/fonts/fontawesome-webfont.woff new file mode 100644 index 00000000..628b6a52 Binary files /dev/null and b/public/build/fonts/fontawesome-webfont.woff differ diff --git a/public/build/fonts/ionicons.eot b/public/build/fonts/ionicons.eot new file mode 100644 index 00000000..883b8686 Binary files /dev/null and b/public/build/fonts/ionicons.eot differ diff --git a/public/build/fonts/ionicons.svg b/public/build/fonts/ionicons.svg new file mode 100644 index 00000000..a0ed5a16 --- /dev/null +++ b/public/build/fonts/ionicons.svg @@ -0,0 +1,2232 @@ + + + + + +Created by FontForge 20120731 at Wed Dec 3 12:38:33 2014 + By Adam Bradley +Created by Adam Bradley with FontForge 2.0 (http://fontforge.sf.net) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/build/fonts/ionicons.ttf b/public/build/fonts/ionicons.ttf new file mode 100644 index 00000000..95310663 Binary files /dev/null and b/public/build/fonts/ionicons.ttf differ diff --git a/public/build/fonts/ionicons.woff b/public/build/fonts/ionicons.woff new file mode 100644 index 00000000..c5ccb2a1 Binary files /dev/null and b/public/build/fonts/ionicons.woff differ diff --git a/public/build/js/all-5a1e1732.js b/public/build/js/all-c9a5e8b0.js similarity index 89% rename from public/build/js/all-5a1e1732.js rename to public/build/js/all-c9a5e8b0.js index 290fbaa9..6ac37dbc 100644 --- a/public/build/js/all-5a1e1732.js +++ b/public/build/js/all-c9a5e8b0.js @@ -2347,15 +2347,12 @@ Math.floor(r/a.labels.length);s=(m-2*c.scaleGridLineWidth-2*c.barValueSpacing-(c d*m,p+c.scaleFontSize),b.rotate(-(w*(Math.PI/180))),b.fillText(a.labels[d],0,0),b.restore()):b.fillText(a.labels[d],n+d*m+m/2,p+c.scaleFontSize+3),b.beginPath(),b.moveTo(n+(d+1)*m,p+3),b.lineWidth=c.scaleGridLineWidth,b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+(d+1)*m,5),b.stroke();b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(n,p+5);b.lineTo(n,5);b.stroke();b.textAlign="right";b.textBaseline="middle";for(d=0;de;e++)if(e in this&&this[e]===t)return e;return-1};t={options:["prefix","templateDelimiters","rootInterface","preloadData","handler"],extensions:["binders","formatters","components","adapters"],"public":{binders:{},components:{},formatters:{},adapters:{},prefix:"rv",templateDelimiters:["{","}"],rootInterface:".",preloadData:!0,handler:function(t,e,i){return this.call(t,e,i.view.models)},configure:function(e){var i,n,r,s;null==e&&(e={});for(r in e)if(s=e[r],"binders"===r||"components"===r||"formatters"===r||"adapters"===r)for(n in s)i=s[n],t[r][n]=i;else t["public"][r]=s},bind:function(e,i,n){var r;return null==i&&(i={}),null==n&&(n={}),r=new t.View(e,i,n),r.bind(),r}}},window.jQuery||window.$?(n="on"in jQuery.prototype?["on","off"]:["bind","unbind"],e=n[0],i=n[1],t.Util={bindEvent:function(t,i,n){return jQuery(t)[e](i,n)},unbindEvent:function(t,e,n){return jQuery(t)[i](e,n)},getInputValue:function(t){var e;return e=jQuery(t),"checkbox"===e.attr("type")?e.is(":checked"):e.val()}}):t.Util={bindEvent:function(){return"addEventListener"in window?function(t,e,i){return t.addEventListener(e,i,!1)}:function(t,e,i){return t.attachEvent("on"+e,i)}}(),unbindEvent:function(){return"removeEventListener"in window?function(t,e,i){return t.removeEventListener(e,i,!1)}:function(t,e,i){return t.detachEvent("on"+e,i)}}(),getInputValue:function(t){var e,i,n,r;if("checkbox"===t.type)return t.checked;if("select-multiple"===t.type){for(r=[],i=0,n=t.length;n>i;i++)e=t[i],e.selected&&r.push(e.value);return r}return t.value}},t.TypeParser=function(){function t(){}return t.types={primitive:0,keypath:1},t.parse=function(t){return/^'.*'$|^".*"$/.test(t)?{type:this.types.primitive,value:t.slice(1,-1)}:"true"===t?{type:this.types.primitive,value:!0}:"false"===t?{type:this.types.primitive,value:!1}:"null"===t?{type:this.types.primitive,value:null}:"undefined"===t?{type:this.types.primitive,value:void 0}:isNaN(Number(t))===!1?{type:this.types.primitive,value:Number(t)}:{type:this.types.keypath,value:t}},t}(),t.TextTemplateParser=function(){function t(){}return t.types={text:0,binding:1},t.parse=function(t,e){var i,n,r,s,o,u,h;for(u=[],s=t.length,i=0,n=0;s>n;){if(i=t.indexOf(e[0],n),0>i){u.push({type:this.types.text,value:t.slice(n)});break}if(i>0&&i>n&&u.push({type:this.types.text,value:t.slice(n,i)}),n=i+e[0].length,i=t.indexOf(e[1],n),0>i){o=t.slice(n-e[1].length),r=u[u.length-1],(null!=r?r.type:void 0)===this.types.text?r.value+=o:u.push({type:this.types.text,value:o});break}h=t.slice(n,i).trim(),u.push({type:this.types.binding,value:h}),n=i+e[1].length}return u},t}(),t.View=function(){function e(e,i,n){var s,o,u,h,l,a,p,d,c,f,b,v;for(this.els=e,this.models=i,null==n&&(n={}),this.update=r(this.update,this),this.publish=r(this.publish,this),this.sync=r(this.sync,this),this.unbind=r(this.unbind,this),this.bind=r(this.bind,this),this.select=r(this.select,this),this.build=r(this.build,this),this.componentRegExp=r(this.componentRegExp,this),this.bindingRegExp=r(this.bindingRegExp,this),this.options=r(this.options,this),this.els.jquery||this.els instanceof Array||(this.els=[this.els]),c=t.extensions,l=0,p=c.length;p>l;l++){if(o=c[l],this[o]={},n[o]){f=n[o];for(s in f)u=f[s],this[o][s]=u}b=t["public"][o];for(s in b)u=b[s],null==(h=this[o])[s]&&(h[s]=u)}for(v=t.options,a=0,d=v.length;d>a;a++)o=v[a],this[o]=n[o]||t["public"][o];this.build()}return e.prototype.options=function(){var e,i,n,r,s;for(i={},s=t.extensions.concat(t.options),n=0,r=s.length;r>n;n++)e=s[n],i[e]=this[e];return i},e.prototype.bindingRegExp=function(){return new RegExp("^"+this.prefix+"-")},e.prototype.componentRegExp=function(){return new RegExp("^"+this.prefix.toUpperCase()+"-")},e.prototype.build=function(){var e,i,n,r,s,o,u,h;for(this.bindings=[],e=this.bindingRegExp(),n=this.componentRegExp(),i=function(e){return function(i,n,r,s){var o,u,h,l,a,p,d;return a={},d=function(){var t,e,i,n;for(i=s.split("|"),n=[],t=0,e=i.length;e>t;t++)p=i[t],n.push(p.trim());return n}(),o=function(){var t,e,i,n;for(i=d.shift().split("<"),n=[],t=0,e=i.length;e>t;t++)u=i[t],n.push(u.trim());return n}(),l=o.shift(),a.formatters=d,(h=o.shift())&&(a.dependencies=h.split(/\s+/)),e.bindings.push(new t[i](e,n,r,l,a))}}(this),s=function(r){return function(o){var u,h,l,a,p,d,c,f,b,v,y,g,m,w,x,k,E,N,V,T,O,R,B,C,j,S,U,A;if(3===o.nodeType){if(b=t.TextTemplateParser,(d=r.templateDelimiters)&&(m=b.parse(o.data,d)).length&&(1!==m.length||m[0].type!==b.types.text)){for(k=0,T=m.length;T>k;k++)g=m[k],y=document.createTextNode(g.value),o.parentNode.insertBefore(y,o),1===g.type&&i("TextBinding",y,null,g.value);o.parentNode.removeChild(o)}}else if(1===o.nodeType)if(n.test(o.nodeName))w=o.nodeName.replace(n,"").toLowerCase(),r.bindings.push(new t.ComponentBinding(r,o,w));else{for(a="SCRIPT"===o.nodeName||"STYLE"===o.nodeName,C=o.attributes,E=0,O=C.length;O>E;E++)if(u=C[E],e.test(u.name)){if(w=u.name.replace(e,""),!(l=r.binders[w])){j=r.binders;for(c in j)x=j[c],"*"!==c&&-1!==c.indexOf("*")&&(v=new RegExp("^"+c.replace(/\*/g,".+")+"$"),v.test(w)&&(l=x))}l||(l=r.binders["*"]),l.block&&(a=!0,h=[u])}for(S=h||o.attributes,N=0,R=S.length;R>N;N++)u=S[N],e.test(u.name)&&(w=u.name.replace(e,""),i("Binding",o,w,u.value))}if(!a){for(U=function(){var t,e,i,n;for(i=o.childNodes,n=[],e=0,t=i.length;t>e;e++)f=i[e],n.push(f);return n}(),A=[],V=0,B=U.length;B>V;V++)p=U[V],A.push(s(p));return A}}}(this),h=this.els,o=0,u=h.length;u>o;o++)r=h[o],s(r);this.bindings.sort(function(t,e){var i,n;return((null!=(i=e.binder)?i.priority:void 0)||0)-((null!=(n=t.binder)?n.priority:void 0)||0)})},e.prototype.select=function(t){var e,i,n,r,s;for(r=this.bindings,s=[],i=0,n=r.length;n>i;i++)e=r[i],t(e)&&s.push(e);return s},e.prototype.bind=function(){var t,e,i,n,r;for(n=this.bindings,r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.bind());return r},e.prototype.unbind=function(){var t,e,i,n,r;for(n=this.bindings,r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.unbind());return r},e.prototype.sync=function(){var t,e,i,n,r;for(n=this.bindings,r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.sync());return r},e.prototype.publish=function(){var t,e,i,n,r;for(n=this.select(function(t){return t.binder.publishes}),r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.publish());return r},e.prototype.update=function(t){var e,i,n,r,s,o,u;null==t&&(t={});for(i in t)n=t[i],this.models[i]=n;for(o=this.bindings,u=[],r=0,s=o.length;s>r;r++)e=o[r],u.push(e.update(t));return u},e}(),t.Binding=function(){function e(t,e,i,n,s){this.view=t,this.el=e,this.type=i,this.keypath=n,this.options=null!=s?s:{},this.getValue=r(this.getValue,this),this.update=r(this.update,this),this.unbind=r(this.unbind,this),this.bind=r(this.bind,this),this.publish=r(this.publish,this),this.sync=r(this.sync,this),this.set=r(this.set,this),this.eventHandler=r(this.eventHandler,this),this.formattedValue=r(this.formattedValue,this),this.parseTarget=r(this.parseTarget,this),this.observe=r(this.observe,this),this.setBinder=r(this.setBinder,this),this.formatters=this.options.formatters||[],this.dependencies=[],this.formatterObservers={},this.model=void 0,this.setBinder()}return e.prototype.setBinder=function(){var t,e,i,n;if(!(this.binder=this.view.binders[this.type])){n=this.view.binders;for(t in n)i=n[t],"*"!==t&&-1!==t.indexOf("*")&&(e=new RegExp("^"+t.replace(/\*/g,".+")+"$"),e.test(this.type)&&(this.binder=i,this.args=new RegExp("^"+t.replace(/\*/g,"(.+)")+"$").exec(this.type),this.args.shift()))}return this.binder||(this.binder=this.view.binders["*"]),this.binder instanceof Function?this.binder={routine:this.binder}:void 0},e.prototype.observe=function(e,i,n){return t.sightglass(e,i,n,{root:this.view.rootInterface,adapters:this.view.adapters})},e.prototype.parseTarget=function(){var e;return e=t.TypeParser.parse(this.keypath),0===e.type?this.value=e.value:(this.observer=this.observe(this.view.models,this.keypath,this.sync),this.model=this.observer.target)},e.prototype.formattedValue=function(e){var i,n,r,o,u,h,l,a,p,d,c,f,b,v;for(v=this.formatters,o=d=0,f=v.length;f>d;o=++d){for(u=v[o],r=u.match(/[^\s']+|'([^']|'[^\s])*'|"([^"]|"[^\s])*"/g),h=r.shift(),u=this.view.formatters[h],r=function(){var e,i,s;for(s=[],e=0,i=r.length;i>e;e++)n=r[e],s.push(t.TypeParser.parse(n));return s}(),a=[],i=c=0,b=r.length;b>c;i=++c)n=r[i],a.push(0===n.type?n.value:((p=this.formatterObservers)[o]||(p[o]={}),(l=this.formatterObservers[o][i])?void 0:(l=this.observe(this.view.models,n.value,this.sync),this.formatterObservers[o][i]=l),l.value()));(null!=u?u.read:void 0)instanceof Function?e=u.read.apply(u,[e].concat(s.call(a))):u instanceof Function&&(e=u.apply(null,[e].concat(s.call(a))))}return e},e.prototype.eventHandler=function(t){var e,i;return i=(e=this).view.handler,function(n){return i.call(t,this,n,e)}},e.prototype.set=function(t){var e;return t=t instanceof Function&&!this.binder["function"]?this.formattedValue(t.call(this.model)):this.formattedValue(t),null!=(e=this.binder.routine)?e.call(this,this.el,t):void 0},e.prototype.sync=function(){var t,e;return this.set(function(){var i,n,r,s,o,u,h;if(this.observer){if(this.model!==this.observer.target){for(o=this.dependencies,i=0,r=o.length;r>i;i++)e=o[i],e.unobserve();if(this.dependencies=[],null!=(this.model=this.observer.target)&&(null!=(u=this.options.dependencies)?u.length:void 0))for(h=this.options.dependencies,n=0,s=h.length;s>n;n++)t=h[n],e=this.observe(this.model,t,this.sync),this.dependencies.push(e)}return this.observer.value()}return this.value}.call(this))},e.prototype.publish=function(){var t,e,i,n,r,o,u,h,l;if(this.observer){for(n=this.getValue(this.el),u=this.formatters.slice(0).reverse(),r=0,o=u.length;o>r;r++)e=u[r],t=e.split(/\s+/),i=t.shift(),(null!=(h=this.view.formatters[i])?h.publish:void 0)&&(n=(l=this.view.formatters[i]).publish.apply(l,[n].concat(s.call(t))));return this.observer.setValue(n)}},e.prototype.bind=function(){var t,e,i,n,r,s,o;if(this.parseTarget(),null!=(r=this.binder.bind)&&r.call(this,this.el),null!=this.model&&(null!=(s=this.options.dependencies)?s.length:void 0))for(o=this.options.dependencies,i=0,n=o.length;n>i;i++)t=o[i],e=this.observe(this.model,t,this.sync),this.dependencies.push(e);return this.view.preloadData?this.sync():void 0},e.prototype.unbind=function(){var t,e,i,n,r,s,o,u,h,l;for(null!=(o=this.binder.unbind)&&o.call(this,this.el),null!=(u=this.observer)&&u.unobserve(),h=this.dependencies,r=0,s=h.length;s>r;r++)n=h[r],n.unobserve();this.dependencies=[],l=this.formatterObservers;for(i in l){e=l[i];for(t in e)n=e[t],n.unobserve()}return this.formatterObservers={}},e.prototype.update=function(t){var e,i;return null==t&&(t={}),this.model=null!=(e=this.observer)?e.target:void 0,this.unbind(),null!=(i=this.binder.update)&&i.call(this,t),this.bind()},e.prototype.getValue=function(e){return this.binder&&null!=this.binder.getValue?this.binder.getValue.call(this,e):t.Util.getInputValue(e)},e}(),t.ComponentBinding=function(e){function i(t,e,i){var n,s,o,u,l;for(this.view=t,this.el=e,this.type=i,this.unbind=r(this.unbind,this),this.bind=r(this.bind,this),this.update=r(this.update,this),this.locals=r(this.locals,this),this.component=this.view.components[this.type],this.attributes={},this.inflections={},u=this.el.attributes||[],s=0,o=u.length;o>s;s++)n=u[s],l=n.name,h.call(this.component.attributes,l)>=0?this.attributes[n.name]=n.value:this.inflections[n.name]=n.value}return u(i,e),i.prototype.sync=function(){},i.prototype.locals=function(t){var e,i,n,r,s,o,u,h,l;null==t&&(t=this.view.models),s={},h=this.inflections;for(i in h)for(e=h[i],l=e.split("."),o=0,u=l.length;u>o;o++)r=l[o],s[i]=(s[i]||t)[r];for(i in t)n=t[i],null==s[i]&&(s[i]=n);return s},i.prototype.update=function(t){var e;return null!=(e=this.componentView)?e.update(this.locals(t)):void 0},i.prototype.bind=function(){var e,i;return null!=this.componentView?null!=(i=this.componentView)?i.bind():void 0:(e=this.component.build.call(this.attributes),(this.componentView=new t.View(e,this.locals(),this.view.options)).bind(),this.el.parentNode.replaceChild(e,this.el))},i.prototype.unbind=function(){var t;return null!=(t=this.componentView)?t.unbind():void 0},i}(t.Binding),t.TextBinding=function(t){function e(t,e,i,n,s){this.view=t,this.el=e,this.type=i,this.keypath=n,this.options=null!=s?s:{},this.sync=r(this.sync,this),this.formatters=this.options.formatters||[],this.dependencies=[],this.formatterObservers={}}return u(e,t),e.prototype.binder={routine:function(t,e){return t.data=null!=e?e:""}},e.prototype.sync=function(){return e.__super__.sync.apply(this,arguments)},e}(t.Binding),t["public"].binders.text=function(t,e){return null!=t.textContent?t.textContent=null!=e?e:"":t.innerText=null!=e?e:""},t["public"].binders.html=function(t,e){return t.innerHTML=null!=e?e:""},t["public"].binders.show=function(t,e){return t.style.display=e?"":"none"},t["public"].binders.hide=function(t,e){return t.style.display=e?"none":""},t["public"].binders.enabled=function(t,e){return t.disabled=!e},t["public"].binders.disabled=function(t,e){return t.disabled=!!e},t["public"].binders.checked={publishes:!0,priority:2e3,bind:function(e){return t.Util.bindEvent(e,"change",this.publish)},unbind:function(e){return t.Util.unbindEvent(e,"change",this.publish)},routine:function(t,e){var i;return t.checked="radio"===t.type?(null!=(i=t.value)?i.toString():void 0)===(null!=e?e.toString():void 0):!!e}},t["public"].binders.unchecked={publishes:!0,priority:2e3,bind:function(e){return t.Util.bindEvent(e,"change",this.publish)},unbind:function(e){return t.Util.unbindEvent(e,"change",this.publish)},routine:function(t,e){var i;return t.checked="radio"===t.type?(null!=(i=t.value)?i.toString():void 0)!==(null!=e?e.toString():void 0):!e}},t["public"].binders.value={publishes:!0,priority:2e3,bind:function(e){return this.event="SELECT"===e.tagName?"change":"input",t.Util.bindEvent(e,this.event,this.publish)},unbind:function(e){return t.Util.unbindEvent(e,this.event,this.publish)},routine:function(t,e){var i,n,r,s,o,u,l;if(null!=window.jQuery){if(t=jQuery(t),(null!=e?e.toString():void 0)!==(null!=(s=t.val())?s.toString():void 0))return t.val(null!=e?e:"")}else if("select-multiple"===t.type){if(null!=e){for(l=[],n=0,r=t.length;r>n;n++)i=t[n],l.push(i.selected=(o=i.value,h.call(e,o)>=0));return l}}else if((null!=e?e.toString():void 0)!==(null!=(u=t.value)?u.toString():void 0))return t.value=null!=e?e:""}},t["public"].binders["if"]={block:!0,priority:3e3,bind:function(t){var e,i;return null==this.marker?(e=[this.view.prefix,this.type].join("-").replace("--","-"),i=t.getAttribute(e),this.marker=document.createComment(" rivets: "+this.type+" "+i+" "),this.bound=!1,t.removeAttribute(e),t.parentNode.insertBefore(this.marker,t),t.parentNode.removeChild(t)):void 0},unbind:function(){var t;return null!=(t=this.nested)?t.unbind():void 0},routine:function(e,i){var n,r,s,o;if(!!i==!this.bound){if(i){s={},o=this.view.models;for(n in o)r=o[n],s[n]=r;return(this.nested||(this.nested=new t.View(e,s,this.view.options()))).bind(),this.marker.parentNode.insertBefore(e,this.marker.nextSibling),this.bound=!0}return e.parentNode.removeChild(e),this.nested.unbind(),this.bound=!1}},update:function(t){var e;return null!=(e=this.nested)?e.update(t):void 0}},t["public"].binders.unless={block:!0,priority:3e3,bind:function(e){return t["public"].binders["if"].bind.call(this,e)},unbind:function(){return t["public"].binders["if"].unbind.call(this)},routine:function(e,i){return t["public"].binders["if"].routine.call(this,e,!i)},update:function(e){return t["public"].binders["if"].update.call(this,e)}},t["public"].binders["on-*"]={"function":!0,priority:1e3,unbind:function(e){return this.handler?t.Util.unbindEvent(e,this.args[0],this.handler):void 0},routine:function(e,i){return this.handler&&t.Util.unbindEvent(e,this.args[0],this.handler),t.Util.bindEvent(e,this.args[0],this.handler=this.eventHandler(i))}},t["public"].binders["each-*"]={block:!0,priority:3e3,bind:function(t){var e,i,n,r,s;if(null==this.marker)e=[this.view.prefix,this.type].join("-").replace("--","-"),this.marker=document.createComment(" rivets: "+this.type+" "),this.iterated=[],t.removeAttribute(e),t.parentNode.insertBefore(this.marker,t),t.parentNode.removeChild(t);else for(s=this.iterated,n=0,r=s.length;r>n;n++)i=s[n],i.bind()},unbind:function(){var t,e,i,n,r;if(null!=this.iterated){for(n=this.iterated,r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.unbind());return r}},routine:function(e,i){var n,r,s,o,u,h,l,a,p,d,c,f,b,v,y,g,m,w,x,k,E;if(l=this.args[0],i=i||[],this.iterated.length>i.length)for(w=Array(this.iterated.length-i.length),f=0,y=w.length;y>f;f++)s=w[f],c=this.iterated.pop(),c.unbind(),this.marker.parentNode.removeChild(c.els[0]);for(o=b=0,g=i.length;g>b;o=++b)if(h=i[o],r={index:o},r[l]=h,null==this.iterated[o]){x=this.view.models;for(u in x)h=x[u],null==r[u]&&(r[u]=h);p=this.iterated.length?this.iterated[this.iterated.length-1].els[0]:this.marker,a=this.view.options(),a.preloadData=!0,d=e.cloneNode(!0),c=new t.View(d,r,a),c.bind(),this.iterated.push(c),this.marker.parentNode.insertBefore(d,p.nextSibling)}else this.iterated[o].models[l]!==h&&this.iterated[o].update(r);if("OPTION"===e.nodeName){for(k=this.view.bindings,E=[],v=0,m=k.length;m>v;v++)n=k[v],n.el===this.marker.parentNode&&"value"===n.type?E.push(n.sync()):E.push(void 0);return E}},update:function(t){var e,i,n,r,s,o,u,h;e={};for(i in t)n=t[i],i!==this.args[0]&&(e[i]=n);for(u=this.iterated,h=[],s=0,o=u.length;o>s;s++)r=u[s],h.push(r.update(e));return h}},t["public"].binders["class-*"]=function(t,e){var i;return i=" "+t.className+" ",!e==(-1!==i.indexOf(" "+this.args[0]+" "))?t.className=e?""+t.className+" "+this.args[0]:i.replace(" "+this.args[0]+" "," ").trim():void 0},t["public"].binders["*"]=function(t,e){return null!=e?t.setAttribute(this.type,e):t.removeAttribute(this.type)},t["public"].adapters["."]={id:"_rv",counter:0,weakmap:{},weakReference:function(t){var e;return t.hasOwnProperty(this.id)||(e=this.counter++,this.weakmap[e]={callbacks:{}},Object.defineProperty(t,this.id,{value:e})),this.weakmap[t[this.id]]},stubFunction:function(t,e){var i,n,r;return n=t[e],i=this.weakReference(t),r=this.weakmap,t[e]=function(){var e,s,o,u,h,l,a,p,d,c;u=n.apply(t,arguments),a=i.pointers;for(o in a)for(s=a[o],c=null!=(p=null!=(d=r[o])?d.callbacks[s]:void 0)?p:[],h=0,l=c.length;l>h;h++)e=c[h],e();return u}},observeMutations:function(t,e,i){var n,r,s,o,u,l;if(Array.isArray(t)){if(s=this.weakReference(t),null==s.pointers)for(s.pointers={},r=["push","pop","shift","unshift","sort","reverse","splice"],u=0,l=r.length;l>u;u++)n=r[u],this.stubFunction(t,n);if(null==(o=s.pointers)[e]&&(o[e]=[]),h.call(s.pointers[e],i)<0)return s.pointers[e].push(i)}},unobserveMutations:function(t,e,i){var n,r,s;return Array.isArray(t&&null!=t[this.id])&&(r=null!=(s=this.weakReference(t).pointers)?s[e]:void 0)&&(n=r.indexOf(i),n>=0)?r.splice(n,1):void 0},observe:function(t,e,i){var n,r;return n=this.weakReference(t).callbacks,null==n[e]&&(n[e]=[],r=t[e],Object.defineProperty(t,e,{enumerable:!0,get:function(){return r},set:function(s){return function(o){var u,l,a;if(o!==r){for(r=o,a=n[e].slice(),u=0,l=a.length;l>u;u++)i=a[u],h.call(n[e],i)>=0&&i();return s.observeMutations(o,t[s.id],e)}}}(this)})),h.call(n[e],i)<0&&n[e].push(i),this.observeMutations(t[e],t[this.id],e)},unobserve:function(t,e,i){var n,r;return n=this.weakmap[t[this.id]].callbacks[e],r=n.indexOf(i),r>=0&&n.splice(r,1),this.unobserveMutations(t[e],t[this.id],e)},get:function(t,e){return t[e]},set:function(t,e,i){return t[e]=i}},t.factory=function(e){return t.sightglass=e,t["public"]._=t,t["public"]},"object"==typeof("undefined"!=typeof module&&null!==module?module.exports:void 0)?module.exports=t.factory(require("sightglass")):"function"==typeof define&&define.amd?define(["sightglass"],function(e){return this.rivets=t.factory(e)}):this.rivets=t.factory(sightglass)}).call(this); $(function() { $('#sidebar-toggle').click(function() { $('.wrapper').toggleClass('active'); }); + $('[data-toggle="tooltip"]').tooltip(); + }); diff --git a/public/build/js/all.js b/public/build/js/all.js index 290fbaa9..6ac37dbc 100644 --- a/public/build/js/all.js +++ b/public/build/js/all.js @@ -2347,15 +2347,12 @@ Math.floor(r/a.labels.length);s=(m-2*c.scaleGridLineWidth-2*c.barValueSpacing-(c d*m,p+c.scaleFontSize),b.rotate(-(w*(Math.PI/180))),b.fillText(a.labels[d],0,0),b.restore()):b.fillText(a.labels[d],n+d*m+m/2,p+c.scaleFontSize+3),b.beginPath(),b.moveTo(n+(d+1)*m,p+3),b.lineWidth=c.scaleGridLineWidth,b.strokeStyle=c.scaleGridLineColor,b.lineTo(n+(d+1)*m,5),b.stroke();b.lineWidth=c.scaleLineWidth;b.strokeStyle=c.scaleLineColor;b.beginPath();b.moveTo(n,p+5);b.lineTo(n,5);b.stroke();b.textAlign="right";b.textBaseline="middle";for(d=0;de;e++)if(e in this&&this[e]===t)return e;return-1};t={options:["prefix","templateDelimiters","rootInterface","preloadData","handler"],extensions:["binders","formatters","components","adapters"],"public":{binders:{},components:{},formatters:{},adapters:{},prefix:"rv",templateDelimiters:["{","}"],rootInterface:".",preloadData:!0,handler:function(t,e,i){return this.call(t,e,i.view.models)},configure:function(e){var i,n,r,s;null==e&&(e={});for(r in e)if(s=e[r],"binders"===r||"components"===r||"formatters"===r||"adapters"===r)for(n in s)i=s[n],t[r][n]=i;else t["public"][r]=s},bind:function(e,i,n){var r;return null==i&&(i={}),null==n&&(n={}),r=new t.View(e,i,n),r.bind(),r}}},window.jQuery||window.$?(n="on"in jQuery.prototype?["on","off"]:["bind","unbind"],e=n[0],i=n[1],t.Util={bindEvent:function(t,i,n){return jQuery(t)[e](i,n)},unbindEvent:function(t,e,n){return jQuery(t)[i](e,n)},getInputValue:function(t){var e;return e=jQuery(t),"checkbox"===e.attr("type")?e.is(":checked"):e.val()}}):t.Util={bindEvent:function(){return"addEventListener"in window?function(t,e,i){return t.addEventListener(e,i,!1)}:function(t,e,i){return t.attachEvent("on"+e,i)}}(),unbindEvent:function(){return"removeEventListener"in window?function(t,e,i){return t.removeEventListener(e,i,!1)}:function(t,e,i){return t.detachEvent("on"+e,i)}}(),getInputValue:function(t){var e,i,n,r;if("checkbox"===t.type)return t.checked;if("select-multiple"===t.type){for(r=[],i=0,n=t.length;n>i;i++)e=t[i],e.selected&&r.push(e.value);return r}return t.value}},t.TypeParser=function(){function t(){}return t.types={primitive:0,keypath:1},t.parse=function(t){return/^'.*'$|^".*"$/.test(t)?{type:this.types.primitive,value:t.slice(1,-1)}:"true"===t?{type:this.types.primitive,value:!0}:"false"===t?{type:this.types.primitive,value:!1}:"null"===t?{type:this.types.primitive,value:null}:"undefined"===t?{type:this.types.primitive,value:void 0}:isNaN(Number(t))===!1?{type:this.types.primitive,value:Number(t)}:{type:this.types.keypath,value:t}},t}(),t.TextTemplateParser=function(){function t(){}return t.types={text:0,binding:1},t.parse=function(t,e){var i,n,r,s,o,u,h;for(u=[],s=t.length,i=0,n=0;s>n;){if(i=t.indexOf(e[0],n),0>i){u.push({type:this.types.text,value:t.slice(n)});break}if(i>0&&i>n&&u.push({type:this.types.text,value:t.slice(n,i)}),n=i+e[0].length,i=t.indexOf(e[1],n),0>i){o=t.slice(n-e[1].length),r=u[u.length-1],(null!=r?r.type:void 0)===this.types.text?r.value+=o:u.push({type:this.types.text,value:o});break}h=t.slice(n,i).trim(),u.push({type:this.types.binding,value:h}),n=i+e[1].length}return u},t}(),t.View=function(){function e(e,i,n){var s,o,u,h,l,a,p,d,c,f,b,v;for(this.els=e,this.models=i,null==n&&(n={}),this.update=r(this.update,this),this.publish=r(this.publish,this),this.sync=r(this.sync,this),this.unbind=r(this.unbind,this),this.bind=r(this.bind,this),this.select=r(this.select,this),this.build=r(this.build,this),this.componentRegExp=r(this.componentRegExp,this),this.bindingRegExp=r(this.bindingRegExp,this),this.options=r(this.options,this),this.els.jquery||this.els instanceof Array||(this.els=[this.els]),c=t.extensions,l=0,p=c.length;p>l;l++){if(o=c[l],this[o]={},n[o]){f=n[o];for(s in f)u=f[s],this[o][s]=u}b=t["public"][o];for(s in b)u=b[s],null==(h=this[o])[s]&&(h[s]=u)}for(v=t.options,a=0,d=v.length;d>a;a++)o=v[a],this[o]=n[o]||t["public"][o];this.build()}return e.prototype.options=function(){var e,i,n,r,s;for(i={},s=t.extensions.concat(t.options),n=0,r=s.length;r>n;n++)e=s[n],i[e]=this[e];return i},e.prototype.bindingRegExp=function(){return new RegExp("^"+this.prefix+"-")},e.prototype.componentRegExp=function(){return new RegExp("^"+this.prefix.toUpperCase()+"-")},e.prototype.build=function(){var e,i,n,r,s,o,u,h;for(this.bindings=[],e=this.bindingRegExp(),n=this.componentRegExp(),i=function(e){return function(i,n,r,s){var o,u,h,l,a,p,d;return a={},d=function(){var t,e,i,n;for(i=s.split("|"),n=[],t=0,e=i.length;e>t;t++)p=i[t],n.push(p.trim());return n}(),o=function(){var t,e,i,n;for(i=d.shift().split("<"),n=[],t=0,e=i.length;e>t;t++)u=i[t],n.push(u.trim());return n}(),l=o.shift(),a.formatters=d,(h=o.shift())&&(a.dependencies=h.split(/\s+/)),e.bindings.push(new t[i](e,n,r,l,a))}}(this),s=function(r){return function(o){var u,h,l,a,p,d,c,f,b,v,y,g,m,w,x,k,E,N,V,T,O,R,B,C,j,S,U,A;if(3===o.nodeType){if(b=t.TextTemplateParser,(d=r.templateDelimiters)&&(m=b.parse(o.data,d)).length&&(1!==m.length||m[0].type!==b.types.text)){for(k=0,T=m.length;T>k;k++)g=m[k],y=document.createTextNode(g.value),o.parentNode.insertBefore(y,o),1===g.type&&i("TextBinding",y,null,g.value);o.parentNode.removeChild(o)}}else if(1===o.nodeType)if(n.test(o.nodeName))w=o.nodeName.replace(n,"").toLowerCase(),r.bindings.push(new t.ComponentBinding(r,o,w));else{for(a="SCRIPT"===o.nodeName||"STYLE"===o.nodeName,C=o.attributes,E=0,O=C.length;O>E;E++)if(u=C[E],e.test(u.name)){if(w=u.name.replace(e,""),!(l=r.binders[w])){j=r.binders;for(c in j)x=j[c],"*"!==c&&-1!==c.indexOf("*")&&(v=new RegExp("^"+c.replace(/\*/g,".+")+"$"),v.test(w)&&(l=x))}l||(l=r.binders["*"]),l.block&&(a=!0,h=[u])}for(S=h||o.attributes,N=0,R=S.length;R>N;N++)u=S[N],e.test(u.name)&&(w=u.name.replace(e,""),i("Binding",o,w,u.value))}if(!a){for(U=function(){var t,e,i,n;for(i=o.childNodes,n=[],e=0,t=i.length;t>e;e++)f=i[e],n.push(f);return n}(),A=[],V=0,B=U.length;B>V;V++)p=U[V],A.push(s(p));return A}}}(this),h=this.els,o=0,u=h.length;u>o;o++)r=h[o],s(r);this.bindings.sort(function(t,e){var i,n;return((null!=(i=e.binder)?i.priority:void 0)||0)-((null!=(n=t.binder)?n.priority:void 0)||0)})},e.prototype.select=function(t){var e,i,n,r,s;for(r=this.bindings,s=[],i=0,n=r.length;n>i;i++)e=r[i],t(e)&&s.push(e);return s},e.prototype.bind=function(){var t,e,i,n,r;for(n=this.bindings,r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.bind());return r},e.prototype.unbind=function(){var t,e,i,n,r;for(n=this.bindings,r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.unbind());return r},e.prototype.sync=function(){var t,e,i,n,r;for(n=this.bindings,r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.sync());return r},e.prototype.publish=function(){var t,e,i,n,r;for(n=this.select(function(t){return t.binder.publishes}),r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.publish());return r},e.prototype.update=function(t){var e,i,n,r,s,o,u;null==t&&(t={});for(i in t)n=t[i],this.models[i]=n;for(o=this.bindings,u=[],r=0,s=o.length;s>r;r++)e=o[r],u.push(e.update(t));return u},e}(),t.Binding=function(){function e(t,e,i,n,s){this.view=t,this.el=e,this.type=i,this.keypath=n,this.options=null!=s?s:{},this.getValue=r(this.getValue,this),this.update=r(this.update,this),this.unbind=r(this.unbind,this),this.bind=r(this.bind,this),this.publish=r(this.publish,this),this.sync=r(this.sync,this),this.set=r(this.set,this),this.eventHandler=r(this.eventHandler,this),this.formattedValue=r(this.formattedValue,this),this.parseTarget=r(this.parseTarget,this),this.observe=r(this.observe,this),this.setBinder=r(this.setBinder,this),this.formatters=this.options.formatters||[],this.dependencies=[],this.formatterObservers={},this.model=void 0,this.setBinder()}return e.prototype.setBinder=function(){var t,e,i,n;if(!(this.binder=this.view.binders[this.type])){n=this.view.binders;for(t in n)i=n[t],"*"!==t&&-1!==t.indexOf("*")&&(e=new RegExp("^"+t.replace(/\*/g,".+")+"$"),e.test(this.type)&&(this.binder=i,this.args=new RegExp("^"+t.replace(/\*/g,"(.+)")+"$").exec(this.type),this.args.shift()))}return this.binder||(this.binder=this.view.binders["*"]),this.binder instanceof Function?this.binder={routine:this.binder}:void 0},e.prototype.observe=function(e,i,n){return t.sightglass(e,i,n,{root:this.view.rootInterface,adapters:this.view.adapters})},e.prototype.parseTarget=function(){var e;return e=t.TypeParser.parse(this.keypath),0===e.type?this.value=e.value:(this.observer=this.observe(this.view.models,this.keypath,this.sync),this.model=this.observer.target)},e.prototype.formattedValue=function(e){var i,n,r,o,u,h,l,a,p,d,c,f,b,v;for(v=this.formatters,o=d=0,f=v.length;f>d;o=++d){for(u=v[o],r=u.match(/[^\s']+|'([^']|'[^\s])*'|"([^"]|"[^\s])*"/g),h=r.shift(),u=this.view.formatters[h],r=function(){var e,i,s;for(s=[],e=0,i=r.length;i>e;e++)n=r[e],s.push(t.TypeParser.parse(n));return s}(),a=[],i=c=0,b=r.length;b>c;i=++c)n=r[i],a.push(0===n.type?n.value:((p=this.formatterObservers)[o]||(p[o]={}),(l=this.formatterObservers[o][i])?void 0:(l=this.observe(this.view.models,n.value,this.sync),this.formatterObservers[o][i]=l),l.value()));(null!=u?u.read:void 0)instanceof Function?e=u.read.apply(u,[e].concat(s.call(a))):u instanceof Function&&(e=u.apply(null,[e].concat(s.call(a))))}return e},e.prototype.eventHandler=function(t){var e,i;return i=(e=this).view.handler,function(n){return i.call(t,this,n,e)}},e.prototype.set=function(t){var e;return t=t instanceof Function&&!this.binder["function"]?this.formattedValue(t.call(this.model)):this.formattedValue(t),null!=(e=this.binder.routine)?e.call(this,this.el,t):void 0},e.prototype.sync=function(){var t,e;return this.set(function(){var i,n,r,s,o,u,h;if(this.observer){if(this.model!==this.observer.target){for(o=this.dependencies,i=0,r=o.length;r>i;i++)e=o[i],e.unobserve();if(this.dependencies=[],null!=(this.model=this.observer.target)&&(null!=(u=this.options.dependencies)?u.length:void 0))for(h=this.options.dependencies,n=0,s=h.length;s>n;n++)t=h[n],e=this.observe(this.model,t,this.sync),this.dependencies.push(e)}return this.observer.value()}return this.value}.call(this))},e.prototype.publish=function(){var t,e,i,n,r,o,u,h,l;if(this.observer){for(n=this.getValue(this.el),u=this.formatters.slice(0).reverse(),r=0,o=u.length;o>r;r++)e=u[r],t=e.split(/\s+/),i=t.shift(),(null!=(h=this.view.formatters[i])?h.publish:void 0)&&(n=(l=this.view.formatters[i]).publish.apply(l,[n].concat(s.call(t))));return this.observer.setValue(n)}},e.prototype.bind=function(){var t,e,i,n,r,s,o;if(this.parseTarget(),null!=(r=this.binder.bind)&&r.call(this,this.el),null!=this.model&&(null!=(s=this.options.dependencies)?s.length:void 0))for(o=this.options.dependencies,i=0,n=o.length;n>i;i++)t=o[i],e=this.observe(this.model,t,this.sync),this.dependencies.push(e);return this.view.preloadData?this.sync():void 0},e.prototype.unbind=function(){var t,e,i,n,r,s,o,u,h,l;for(null!=(o=this.binder.unbind)&&o.call(this,this.el),null!=(u=this.observer)&&u.unobserve(),h=this.dependencies,r=0,s=h.length;s>r;r++)n=h[r],n.unobserve();this.dependencies=[],l=this.formatterObservers;for(i in l){e=l[i];for(t in e)n=e[t],n.unobserve()}return this.formatterObservers={}},e.prototype.update=function(t){var e,i;return null==t&&(t={}),this.model=null!=(e=this.observer)?e.target:void 0,this.unbind(),null!=(i=this.binder.update)&&i.call(this,t),this.bind()},e.prototype.getValue=function(e){return this.binder&&null!=this.binder.getValue?this.binder.getValue.call(this,e):t.Util.getInputValue(e)},e}(),t.ComponentBinding=function(e){function i(t,e,i){var n,s,o,u,l;for(this.view=t,this.el=e,this.type=i,this.unbind=r(this.unbind,this),this.bind=r(this.bind,this),this.update=r(this.update,this),this.locals=r(this.locals,this),this.component=this.view.components[this.type],this.attributes={},this.inflections={},u=this.el.attributes||[],s=0,o=u.length;o>s;s++)n=u[s],l=n.name,h.call(this.component.attributes,l)>=0?this.attributes[n.name]=n.value:this.inflections[n.name]=n.value}return u(i,e),i.prototype.sync=function(){},i.prototype.locals=function(t){var e,i,n,r,s,o,u,h,l;null==t&&(t=this.view.models),s={},h=this.inflections;for(i in h)for(e=h[i],l=e.split("."),o=0,u=l.length;u>o;o++)r=l[o],s[i]=(s[i]||t)[r];for(i in t)n=t[i],null==s[i]&&(s[i]=n);return s},i.prototype.update=function(t){var e;return null!=(e=this.componentView)?e.update(this.locals(t)):void 0},i.prototype.bind=function(){var e,i;return null!=this.componentView?null!=(i=this.componentView)?i.bind():void 0:(e=this.component.build.call(this.attributes),(this.componentView=new t.View(e,this.locals(),this.view.options)).bind(),this.el.parentNode.replaceChild(e,this.el))},i.prototype.unbind=function(){var t;return null!=(t=this.componentView)?t.unbind():void 0},i}(t.Binding),t.TextBinding=function(t){function e(t,e,i,n,s){this.view=t,this.el=e,this.type=i,this.keypath=n,this.options=null!=s?s:{},this.sync=r(this.sync,this),this.formatters=this.options.formatters||[],this.dependencies=[],this.formatterObservers={}}return u(e,t),e.prototype.binder={routine:function(t,e){return t.data=null!=e?e:""}},e.prototype.sync=function(){return e.__super__.sync.apply(this,arguments)},e}(t.Binding),t["public"].binders.text=function(t,e){return null!=t.textContent?t.textContent=null!=e?e:"":t.innerText=null!=e?e:""},t["public"].binders.html=function(t,e){return t.innerHTML=null!=e?e:""},t["public"].binders.show=function(t,e){return t.style.display=e?"":"none"},t["public"].binders.hide=function(t,e){return t.style.display=e?"none":""},t["public"].binders.enabled=function(t,e){return t.disabled=!e},t["public"].binders.disabled=function(t,e){return t.disabled=!!e},t["public"].binders.checked={publishes:!0,priority:2e3,bind:function(e){return t.Util.bindEvent(e,"change",this.publish)},unbind:function(e){return t.Util.unbindEvent(e,"change",this.publish)},routine:function(t,e){var i;return t.checked="radio"===t.type?(null!=(i=t.value)?i.toString():void 0)===(null!=e?e.toString():void 0):!!e}},t["public"].binders.unchecked={publishes:!0,priority:2e3,bind:function(e){return t.Util.bindEvent(e,"change",this.publish)},unbind:function(e){return t.Util.unbindEvent(e,"change",this.publish)},routine:function(t,e){var i;return t.checked="radio"===t.type?(null!=(i=t.value)?i.toString():void 0)!==(null!=e?e.toString():void 0):!e}},t["public"].binders.value={publishes:!0,priority:2e3,bind:function(e){return this.event="SELECT"===e.tagName?"change":"input",t.Util.bindEvent(e,this.event,this.publish)},unbind:function(e){return t.Util.unbindEvent(e,this.event,this.publish)},routine:function(t,e){var i,n,r,s,o,u,l;if(null!=window.jQuery){if(t=jQuery(t),(null!=e?e.toString():void 0)!==(null!=(s=t.val())?s.toString():void 0))return t.val(null!=e?e:"")}else if("select-multiple"===t.type){if(null!=e){for(l=[],n=0,r=t.length;r>n;n++)i=t[n],l.push(i.selected=(o=i.value,h.call(e,o)>=0));return l}}else if((null!=e?e.toString():void 0)!==(null!=(u=t.value)?u.toString():void 0))return t.value=null!=e?e:""}},t["public"].binders["if"]={block:!0,priority:3e3,bind:function(t){var e,i;return null==this.marker?(e=[this.view.prefix,this.type].join("-").replace("--","-"),i=t.getAttribute(e),this.marker=document.createComment(" rivets: "+this.type+" "+i+" "),this.bound=!1,t.removeAttribute(e),t.parentNode.insertBefore(this.marker,t),t.parentNode.removeChild(t)):void 0},unbind:function(){var t;return null!=(t=this.nested)?t.unbind():void 0},routine:function(e,i){var n,r,s,o;if(!!i==!this.bound){if(i){s={},o=this.view.models;for(n in o)r=o[n],s[n]=r;return(this.nested||(this.nested=new t.View(e,s,this.view.options()))).bind(),this.marker.parentNode.insertBefore(e,this.marker.nextSibling),this.bound=!0}return e.parentNode.removeChild(e),this.nested.unbind(),this.bound=!1}},update:function(t){var e;return null!=(e=this.nested)?e.update(t):void 0}},t["public"].binders.unless={block:!0,priority:3e3,bind:function(e){return t["public"].binders["if"].bind.call(this,e)},unbind:function(){return t["public"].binders["if"].unbind.call(this)},routine:function(e,i){return t["public"].binders["if"].routine.call(this,e,!i)},update:function(e){return t["public"].binders["if"].update.call(this,e)}},t["public"].binders["on-*"]={"function":!0,priority:1e3,unbind:function(e){return this.handler?t.Util.unbindEvent(e,this.args[0],this.handler):void 0},routine:function(e,i){return this.handler&&t.Util.unbindEvent(e,this.args[0],this.handler),t.Util.bindEvent(e,this.args[0],this.handler=this.eventHandler(i))}},t["public"].binders["each-*"]={block:!0,priority:3e3,bind:function(t){var e,i,n,r,s;if(null==this.marker)e=[this.view.prefix,this.type].join("-").replace("--","-"),this.marker=document.createComment(" rivets: "+this.type+" "),this.iterated=[],t.removeAttribute(e),t.parentNode.insertBefore(this.marker,t),t.parentNode.removeChild(t);else for(s=this.iterated,n=0,r=s.length;r>n;n++)i=s[n],i.bind()},unbind:function(){var t,e,i,n,r;if(null!=this.iterated){for(n=this.iterated,r=[],e=0,i=n.length;i>e;e++)t=n[e],r.push(t.unbind());return r}},routine:function(e,i){var n,r,s,o,u,h,l,a,p,d,c,f,b,v,y,g,m,w,x,k,E;if(l=this.args[0],i=i||[],this.iterated.length>i.length)for(w=Array(this.iterated.length-i.length),f=0,y=w.length;y>f;f++)s=w[f],c=this.iterated.pop(),c.unbind(),this.marker.parentNode.removeChild(c.els[0]);for(o=b=0,g=i.length;g>b;o=++b)if(h=i[o],r={index:o},r[l]=h,null==this.iterated[o]){x=this.view.models;for(u in x)h=x[u],null==r[u]&&(r[u]=h);p=this.iterated.length?this.iterated[this.iterated.length-1].els[0]:this.marker,a=this.view.options(),a.preloadData=!0,d=e.cloneNode(!0),c=new t.View(d,r,a),c.bind(),this.iterated.push(c),this.marker.parentNode.insertBefore(d,p.nextSibling)}else this.iterated[o].models[l]!==h&&this.iterated[o].update(r);if("OPTION"===e.nodeName){for(k=this.view.bindings,E=[],v=0,m=k.length;m>v;v++)n=k[v],n.el===this.marker.parentNode&&"value"===n.type?E.push(n.sync()):E.push(void 0);return E}},update:function(t){var e,i,n,r,s,o,u,h;e={};for(i in t)n=t[i],i!==this.args[0]&&(e[i]=n);for(u=this.iterated,h=[],s=0,o=u.length;o>s;s++)r=u[s],h.push(r.update(e));return h}},t["public"].binders["class-*"]=function(t,e){var i;return i=" "+t.className+" ",!e==(-1!==i.indexOf(" "+this.args[0]+" "))?t.className=e?""+t.className+" "+this.args[0]:i.replace(" "+this.args[0]+" "," ").trim():void 0},t["public"].binders["*"]=function(t,e){return null!=e?t.setAttribute(this.type,e):t.removeAttribute(this.type)},t["public"].adapters["."]={id:"_rv",counter:0,weakmap:{},weakReference:function(t){var e;return t.hasOwnProperty(this.id)||(e=this.counter++,this.weakmap[e]={callbacks:{}},Object.defineProperty(t,this.id,{value:e})),this.weakmap[t[this.id]]},stubFunction:function(t,e){var i,n,r;return n=t[e],i=this.weakReference(t),r=this.weakmap,t[e]=function(){var e,s,o,u,h,l,a,p,d,c;u=n.apply(t,arguments),a=i.pointers;for(o in a)for(s=a[o],c=null!=(p=null!=(d=r[o])?d.callbacks[s]:void 0)?p:[],h=0,l=c.length;l>h;h++)e=c[h],e();return u}},observeMutations:function(t,e,i){var n,r,s,o,u,l;if(Array.isArray(t)){if(s=this.weakReference(t),null==s.pointers)for(s.pointers={},r=["push","pop","shift","unshift","sort","reverse","splice"],u=0,l=r.length;l>u;u++)n=r[u],this.stubFunction(t,n);if(null==(o=s.pointers)[e]&&(o[e]=[]),h.call(s.pointers[e],i)<0)return s.pointers[e].push(i)}},unobserveMutations:function(t,e,i){var n,r,s;return Array.isArray(t&&null!=t[this.id])&&(r=null!=(s=this.weakReference(t).pointers)?s[e]:void 0)&&(n=r.indexOf(i),n>=0)?r.splice(n,1):void 0},observe:function(t,e,i){var n,r;return n=this.weakReference(t).callbacks,null==n[e]&&(n[e]=[],r=t[e],Object.defineProperty(t,e,{enumerable:!0,get:function(){return r},set:function(s){return function(o){var u,l,a;if(o!==r){for(r=o,a=n[e].slice(),u=0,l=a.length;l>u;u++)i=a[u],h.call(n[e],i)>=0&&i();return s.observeMutations(o,t[s.id],e)}}}(this)})),h.call(n[e],i)<0&&n[e].push(i),this.observeMutations(t[e],t[this.id],e)},unobserve:function(t,e,i){var n,r;return n=this.weakmap[t[this.id]].callbacks[e],r=n.indexOf(i),r>=0&&n.splice(r,1),this.unobserveMutations(t[e],t[this.id],e)},get:function(t,e){return t[e]},set:function(t,e,i){return t[e]=i}},t.factory=function(e){return t.sightglass=e,t["public"]._=t,t["public"]},"object"==typeof("undefined"!=typeof module&&null!==module?module.exports:void 0)?module.exports=t.factory(require("sightglass")):"function"==typeof define&&define.amd?define(["sightglass"],function(e){return this.rivets=t.factory(e)}):this.rivets=t.factory(sightglass)}).call(this); $(function() { $('#sidebar-toggle').click(function() { $('.wrapper').toggleClass('active'); }); + $('[data-toggle="tooltip"]').tooltip(); + }); diff --git a/public/build/rev-manifest.json b/public/build/rev-manifest.json index a24b77ae..cc3e20dc 100644 --- a/public/build/rev-manifest.json +++ b/public/build/rev-manifest.json @@ -1,4 +1,4 @@ { - "css/all.css": "css/all-cd7afd7c.css", - "js/all.js": "js/all-5a1e1732.js" + "css/all.css": "css/all-59ec4e3e.css", + "js/all.js": "js/all-c9a5e8b0.js" } \ No newline at end of file