summaryrefslogtreecommitdiff
path: root/www/lib/angular-awesome-slider
diff options
context:
space:
mode:
authorPliable Pixels <pliablepixels@gmail.com>2017-09-27 12:42:48 -0400
committerPliable Pixels <pliablepixels@gmail.com>2017-09-27 12:42:48 -0400
commit210e8feae2fb4842bfb2de38666e6c41671fef3c (patch)
treecbdafa34b1a6260bb20236d7e9de9eb1b690a1c5 /www/lib/angular-awesome-slider
parente7e7baeaad90229ccb3e0f45f4ebd77be7d79b14 (diff)
removed lib
Diffstat (limited to 'www/lib/angular-awesome-slider')
-rw-r--r--www/lib/angular-awesome-slider/.bower.json52
-rw-r--r--www/lib/angular-awesome-slider/Gruntfile.js136
-rw-r--r--www/lib/angular-awesome-slider/MIT-LICENSE.txt20
-rw-r--r--www/lib/angular-awesome-slider/README.md259
-rw-r--r--www/lib/angular-awesome-slider/bower.json43
-rw-r--r--www/lib/angular-awesome-slider/dist/angular-awesome-slider.js1267
-rw-r--r--www/lib/angular-awesome-slider/dist/angular-awesome-slider.min.js85
-rw-r--r--www/lib/angular-awesome-slider/dist/css/angular-awesome-slider.min.css7
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.blue.pngbin1140 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.blue.vertical.pngbin1463 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.plastic.pngbin1423 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.plastic.vertical.pngbin1729 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.pngbin1133 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.round.plastic.pngbin1956 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.round.pngbin1973 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.round.vertical.pngbin2369 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/dist/img/jslider.vertical.pngbin1456 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/package.json46
-rw-r--r--www/lib/angular-awesome-slider/src/core/config/constants.js32
-rw-r--r--www/lib/angular-awesome-slider/src/core/index.js195
-rw-r--r--www/lib/angular-awesome-slider/src/core/model/draggable.factory.js192
-rw-r--r--www/lib/angular-awesome-slider/src/core/model/pointer.factory.js100
-rw-r--r--www/lib/angular-awesome-slider/src/core/model/slider.factory.js686
-rw-r--r--www/lib/angular-awesome-slider/src/core/template/slider.tmpl.js29
-rw-r--r--www/lib/angular-awesome-slider/src/core/utils/utils.factory.js34
-rw-r--r--www/lib/angular-awesome-slider/src/css/angular-awesome-slider.css531
-rw-r--r--www/lib/angular-awesome-slider/src/css/less/main.less339
-rw-r--r--www/lib/angular-awesome-slider/src/css/less/skin-blue.less79
-rw-r--r--www/lib/angular-awesome-slider/src/css/less/skin-css.less139
-rw-r--r--www/lib/angular-awesome-slider/src/css/less/skin-plastic.less78
-rw-r--r--www/lib/angular-awesome-slider/src/css/less/skin-round.less81
-rw-r--r--www/lib/angular-awesome-slider/src/css/less/variables.less42
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/core/_variables.sass28
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/horizontal/_horizontal.sass23
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/horizontal/_labels.sass17
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/horizontal/_main.sass8
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/horizontal/_pointers-value.sass11
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/horizontal/_pointers.sass21
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/horizontal/_ranges.sass31
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/horizontal/_scale.sass15
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/main.sass17
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/skins/_skin-blue.sass55
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/skins/_skin-css.sass110
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/skins/_skin-plastic.sass51
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/skins/_skin-round.sass56
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/vertical/_labels.sass11
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/vertical/_main.sass8
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/vertical/_pointers-value.sass9
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/vertical/_pointers.sass13
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/vertical/_ranges.sass46
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/vertical/_scales.sass16
-rw-r--r--www/lib/angular-awesome-slider/src/css/sass/vertical/_vertical.sass13
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/core/_variables.scss28
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/horizontal/_horizontal.scss24
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/horizontal/_labels.scss19
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/horizontal/_main.scss8
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/horizontal/_pointers-value.scss12
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/horizontal/_pointers.scss24
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/horizontal/_ranges.scss34
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/horizontal/_scale.scss16
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/main.scss17
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/skins/_skin-blue.scss60
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/skins/_skin-css.scss116
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/skins/_skin-plastic.scss56
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/skins/_skin-round.scss61
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/vertical/_labels.scss12
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/vertical/_main.scss8
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/vertical/_pointers-value.scss10
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/vertical/_pointers.scss15
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/vertical/_ranges.scss48
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/vertical/_scales.scss18
-rw-r--r--www/lib/angular-awesome-slider/src/css/scss/vertical/_vertical.scss14
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.blue.pngbin1140 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.blue.vertical.pngbin1463 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.plastic.pngbin1423 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.plastic.vertical.pngbin1729 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.pngbin1133 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.round.plastic.pngbin1956 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.round.pngbin1973 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.round.vertical.pngbin2369 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/img/jslider.vertical.pngbin1456 -> 0 bytes
-rw-r--r--www/lib/angular-awesome-slider/src/index.html391
-rw-r--r--www/lib/angular-awesome-slider/src/jquery.slider.js700
83 files changed, 0 insertions, 6722 deletions
diff --git a/www/lib/angular-awesome-slider/.bower.json b/www/lib/angular-awesome-slider/.bower.json
deleted file mode 100644
index 9257386f..00000000
--- a/www/lib/angular-awesome-slider/.bower.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "name": "angular-awesome-slider",
- "version": "2.4.4",
- "author": {
- "name": "Julien Valéry",
- "email": "darul75@gmail.com"
- },
- "homepage": "https://github.com/darul75/angular-awesome-slider",
- "repository": {
- "type": "git",
- "url": "https://github.com/darul75/angular-awesome-slider.git"
- },
- "keywords": [
- "angular",
- "slider",
- "control",
- "ui"
- ],
- "main": [
- "./dist/angular-awesome-slider.js",
- "./dist/css/angular-awesome-slider.min.css",
- "./dist/img/*"
- ],
- "dependencies": {
- "angular": "^1.3.x"
- },
- "devDependencies": {
- "angular-mocks": "^1.3.x",
- "bourbon": "~4.2.2"
- },
- "authors": [
- "darul <darul75@gmail.com>"
- ],
- "description": "AngularJS directive slider control.",
- "license": "MIT",
- "ignore": [
- "**/.*",
- "node_modules",
- "bower_components",
- "test",
- "tests"
- ],
- "_release": "2.4.4",
- "_resolution": {
- "type": "version",
- "tag": "2.4.4",
- "commit": "1ceb23fbc755a99a9c625dabacf7b182bbe9f9f5"
- },
- "_source": "https://github.com/darul75/angular-awesome-slider.git",
- "_target": "~2.4.0",
- "_originalSource": "angular-awesome-slider"
-} \ No newline at end of file
diff --git a/www/lib/angular-awesome-slider/Gruntfile.js b/www/lib/angular-awesome-slider/Gruntfile.js
deleted file mode 100644
index 0d5619cb..00000000
--- a/www/lib/angular-awesome-slider/Gruntfile.js
+++ /dev/null
@@ -1,136 +0,0 @@
-module.exports = function(grunt) {
- 'use strict';
-
- // Project configuration.
- grunt.initConfig({
- pkg: grunt.file.readJSON('package.json'),
- jshint: {
- files: ['src/core/**/*.js', 'test/**/*.js']
- },
- // BOWER
- bower: {
- install: {
- options: {
- targetDir: './bower_components'
- }
- }
- },
- // KARMA TASK CONFIG
- karma: {
- options: {
- basePath: './',
- frameworks: ['jasmine'],
- files: [
- 'bower_components/angular/angular.js',
- 'bower_components/angular-mocks/angular-mocks.js',
- 'dist/angular-awesome-slider.min.js',
- /*'src/core/ng-slider.js',
- 'src/core/config/constants.js',
- 'src/core/model/draggable.factory.js',
- 'src/core/model/pointer.factory.js',
- 'src/core/model/slider.factory.js',
- 'src/core/utils/utils.factory.js',
- 'src/core/template/slider.tmpl.js',*/
- 'dist/css/angular-awesome-slider.min.css',
- 'test/**/*Spec.js'
- ],
- autoWatch: true,
- singleRun: true
- },
- unit: {
- options: {
- browsers: ['PhantomJS']
- }
- },
- captureTimeout: 20000,
- continuous: {
- options: {
- browsers: ['PhantomJS']
- }
- }
- },
- // LESS CSS TASKS
- less: {
- development: {
- options: {
- paths: ['src/css/less/']
- },
- files: {
- 'src/css/angular-awesome-slider.css': 'src/css/less/main.less'
- }
- }
- },
- // UGLIFY TASK
- uglify: {
- task1: {
- options: {
- preserveComments: 'some',
- report: 'min',
- banner: '/** \n* @license <%= pkg.name %> - v<%= pkg.version %>\n' +
- '* (c) 2013 Julien VALERY https://github.com/darul75/angular-awesome-slider\n' +
- '* License: MIT \n**/\n'
- },
- files: {
- 'dist/angular-awesome-slider.min.js': ['dist/angular-awesome-slider.js']
- /*'dist/ng-slider.tmpl.min.js': ['src/ng-slider.tmpl.js']*/
- }
- }
- },
- // CONCAT FILES
- concat: {
- options: {
- separator: ';'
- },
- dist: {
- src: [
- 'src/core/index.js',
- 'src/core/config/constants.js',
- 'src/core/utils/utils.factory.js',
- 'src/core/model/draggable.factory.js',
- 'src/core/model/pointer.factory.js',
- 'src/core/model/slider.factory.js',
- 'src/core/template/slider.tmpl.js'
- ],
- dest: 'dist/angular-awesome-slider.js'
- }
- },
- // MINIFY CSS
- cssmin: {
- options: {
- keepSpecialComments: false,
- banner: '/** \n* @license <%= pkg.name %> - v<%= pkg.version %>\n' +
- '* (c) 2013 Julien VALERY https://github.com/darul75/angular-awesome-slider\n' +
- '* License: MIT \n**/\n'
- },
- compress: {
- files: {
- 'dist/css/angular-awesome-slider.min.css': ['src/css/angular-awesome-slider.css']
- }
- }
- },
- // COPY CONTENT
- copy: {
- main: {
- files: [
- // slider
- {expand: true, flatten: true, src: ['src/img/*'], dest: 'dist/img/'},
- ]
- }
- },
-});
-
- // LOAD PLUGINS
- grunt.loadNpmTasks('grunt-bower-task');
- grunt.loadNpmTasks('grunt-contrib-copy');
- grunt.loadNpmTasks('grunt-contrib-concat');
- grunt.loadNpmTasks('grunt-contrib-jshint');
- grunt.loadNpmTasks('grunt-contrib-less');
- grunt.loadNpmTasks('grunt-contrib-uglify');
- grunt.loadNpmTasks('grunt-contrib-cssmin');
- grunt.loadNpmTasks('grunt-karma');
-
- // TASK REGISTER
- //grunt.registerTask('default', ['jshint', 'cssmin', 'uglify:task1', 'karma']);
- grunt.registerTask('default', ['bower', 'copy', 'concat', 'less', 'cssmin', 'jshint', 'uglify:task1']);
- grunt.registerTask('test-continuous', ['jshint', 'bower', 'karma:unit']);
-};
diff --git a/www/lib/angular-awesome-slider/MIT-LICENSE.txt b/www/lib/angular-awesome-slider/MIT-LICENSE.txt
deleted file mode 100644
index c9b4ae36..00000000
--- a/www/lib/angular-awesome-slider/MIT-LICENSE.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-The MIT License (MIT)
-Copyright (c) 2013 Julien Valéry
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE. \ No newline at end of file
diff --git a/www/lib/angular-awesome-slider/README.md b/www/lib/angular-awesome-slider/README.md
deleted file mode 100644
index d31eeb8f..00000000
--- a/www/lib/angular-awesome-slider/README.md
+++ /dev/null
@@ -1,259 +0,0 @@
-angular-awesome-slider [![NPM version](https://badge.fury.io/js/angular-awesome-slider.png)](http://badge.fury.io/js/angular-awesome-slider) [![Build Status](https://travis-ci.org/darul75/angular-awesome-slider.png?branch=master)](https://travis-ci.org/darul75/angular-awesome-slider) [![Join the chat at https://gitter.im/darul75/angular-awesome-slider](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/darul75/angular-awesome-slider?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
-=====================
-
-Angular directive slider control.
-
-**No JQUERY dependency needed anymore**
-
-**Skins available**
-
-Why
--------------
-
-Original implementation provides very nice features but too much for my needs, this one just simplified.
-
-Source files were divided in several files, and not angular integrated.
-
-Screenshot
--------------
-
-![angular slider demo](http://darul75.github.io/angular-awesome-slider/images/slider3.png "angular slider demo screenshot")
-
-Demo
--------------
-http://darul75.github.io/angular-awesome-slider/
-
-http://jsfiddle.net/darul75/g9e9n8xc/
-
-How to use it
--------------
-
-You should already have script required for Angular.
-
-```html
-<script type="text/javascript" src="angular.min.js"></script>
-```
-
-to the list above, you should add:
-
-```html
-<link rel="stylesheet" type="text/css" href="angular-awesome-slider.min.css">
-```
-
-```html
-<script type="text/javascript" src="angular-awesome-slider.min.js"></script>
-```
-in case you want to use your own template, omit the last line and instead add some template code
-to your project:
-```html
-<script type="text/ng-template" id="aw-select.tmpl.html">
- ....
-</script>
-```
-
-Then, inject `angularAwesomeSlider` in your application module:
-
-```javascript
-angular.module('myApp', ['angularAwesomeSlider']);
-```
-
-and then just add an `input` with `slider` directive name attribute, `value` and `options` scope variable attribute.
-
-```html
-<input ng-model="value" type="text" id="mySlider1" slider options="options" />
-```
-
-'value' your slider scope end value, as string.
-'options' slider scope options value as json.
-'ng-disabled' angular common attribute.
-
-```javascript
-$scope.value = "10";
-// $scope.value = "10;15"; FOR DOUBLE VIEW
-```
-
-### Options
-
-Options for your slider in json format {from:.....}
-
-* `from`: start value
-* `to`: end value
-* `step`: step value
-* `dimension`: string, example " $"
-* `scale`: array for scale
-* `round`: how many numbers allowed after comma
-* `smooth`: true/false; false snaps the button to value
-* `vertical`: true/false; vertical slider, default false
-* `skin`: empty or 'blue' 'plastic' 'round'
-* `css`: hash object, do not mix with 'skin' !
-* `className`: custom class added to root slider DOM
-* `realtime`: triggers changes and model update on every moves
-* `threshold`: minimum distance allowed between 2 pointers, default both pointers overlap
-* `limits`: true/false; toggles bounds labels visibility
-* `modelLabels`: custom model for pointers labels based on pointer value
-* `watchOptions`: default is 'true', watch this options changes by [equals](https://docs.angularjs.org/api/ng/function/angular.equals)
-* `heterogeneity`: array [percentage of point on slider]/[value in that point]
-
-![angular slider css](http://darul75.github.io/angular-awesome-slider/images/slider2.png "angular slider css explained")
-```
-css: {
- background: {"background-color": "silver"},
- before: {"background-color": "purple"},// zone before default value
- default: {"background-color": "white"}, // default value: 1px
- after: {"background-color": "green"}, // zone after default value
- pointer: {"background-color": "red"} // circle pointer
- range: {"background-color": "red"} // use it if double value
-}
-````
-* `callback` : function triggering current value, can be useful
-
-```javascript
-// example
-callback: function(value, released) {
- // useful when combined with 'realtime' option
- // released it triggered when mouse up
- console.log(value + " " + released);
-}
-```
-
-* `scale` : model for slide scale
-
-```javascript
-// divide slider into parts
-scale: [0, '|', 10, '|', 20, '|' , 30, '|', 40]
-
-// or with some custom labels
-scale: [{val:10, label:'low'}, {val:25, label:'middle'}, {val:30, label:'high'}]
-```
-
-* `modelLabels` : model for pointers labels by object or function
-
-```javascript
-// overrides default value label displayed combined with 'dimension' by an arbitrary label model
-modelLabels: {1: 'top', 2: 'middle', 3: 'bottom'};
-
-// or dynamicaly based
-modelLabels: function(value) {
- return 'my value is' + value; // momentjs external library call...
-}
-```
-
-* `heterogeneity` : repartition of possible values
-```javascript
-// example here, first value is percentage of slider length, second is value
-heterogeneity: ['50/100', '75/250'] // 50% value is 100, 75% value must be 250
-```
-
-Installation
-------------
-
-Using npm:
-
-```
-npm install angular-awesome-slider
-```
-
-Using bower:
-
-```
-bower install angular-awesome-slider
-```
-
-RELEASE
--------------
-
-* 2.4.4: move by grabbing the label
-* 2.4.3: fix label + switch from range <=> one value
-* 2.4.2: update angular version + fix for programmatic movement of slider (double value)
-* 2.4.1: non-minified version added + bower update
-* 2.4.0: fix while updating both range values from code
-* 2.3.9: callback not fired in case slider is on threshold values
-* 2.3.8: bind to touch AND non touch events
-* 2.3.7: heterogeneity option
-* 2.3.6: watch options, fix threshold and click handler + date display testing.
-* 2.3.5: do not remember
-* 2.3.4: fix css regressions + modelLabels with function
-* 2.3.3: details for modelLabels options + merge showLabels option
-* 2.3.2: fix css pointer position + hover sking pointers background positions
-* 2.3.1: fix from and to in floating values
-* 2.3.0: new module name, no more ng-sorry-prefix, classname option, sass/scss support, scale object option
-* 2.2.6: refactoring classnames
-* 2.2.5: skin availables + less all css
-* 2.2.4: fix when 2 pointers overlap on limits
-* 2.2.3: mouse up event indicator in callback
-* 2.2.2: default indicator display + visibility and move events
-* 2.2.1: fix disable+default position css+decimal value on init value
-* 2.2.0: handle from greater than to + gap pointer threshold option
-* 2.1.9: fix labels positions while gluing, gap was too big + options changed watch by value
-* 2.1.8: fix labels positions while gluing + realtime model changes option + ngDisable option fix
-* 2.1.7: fix pointer position on click for double value
-* 2.1.6: starting mocha tests
-* 2.1.5: directive refactoring
-* 2.1.4: fix overlap on labels
-* 2.1.3: bug fixes, refactoring, inline options param
-* 2.1.2: bug fixes, changes in z-index via CSS and not js
-* 2.1.1: override css, colors...
-* 2.1.0: bug fixes
-* 2.0.0: no JQuery
-
-### Build
-
-You can run the tests by running
-
-```
-npm install
-```
-or
-```
-npm test
-```
-
-assuming you already have `grunt` installed, otherwise you also need to do:
-
-```
-npm install -g grunt-cli
-```
-
-### Issue
-
-To help me on reproducing any issues, please feel free to modify/fork this fiddle: http://jsfiddle.net/darul75/b09m7183/
-
-## Metrics
-
-[![NPM](https://nodei.co/npm/ng-slider.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/ng-slider/)
-
-## who's who
-
-Who use it ? feel free add issue or edit readme with PR, to see how you use it and give some ideas, thx
-
-[openenergygroup](https://www.openenergygroup.com/)
-
-[google?](https://www.google.com)
-
-## License
-
-The MIT License (MIT)
-
-Copyright (c) 2013 Julien Valéry
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-
-
-
-
diff --git a/www/lib/angular-awesome-slider/bower.json b/www/lib/angular-awesome-slider/bower.json
deleted file mode 100644
index 85d3aaba..00000000
--- a/www/lib/angular-awesome-slider/bower.json
+++ /dev/null
@@ -1,43 +0,0 @@
-{
- "name": "angular-awesome-slider",
- "version": "2.4.4",
- "author": {
- "name": "Julien Valéry",
- "email": "darul75@gmail.com"
- },
- "homepage": "https://github.com/darul75/angular-awesome-slider",
- "repository": {
- "type": "git",
- "url": "https://github.com/darul75/angular-awesome-slider.git"
- },
- "keywords": [
- "angular",
- "slider",
- "control",
- "ui"
- ],
- "main": [
- "./dist/angular-awesome-slider.js",
- "./dist/css/angular-awesome-slider.min.css",
- "./dist/img/*"
- ],
- "dependencies": {
- "angular": "^1.3.x"
- },
- "devDependencies": {
- "angular-mocks": "^1.3.x",
- "bourbon": "~4.2.2"
- },
- "authors": [
- "darul <darul75@gmail.com>"
- ],
- "description": "AngularJS directive slider control.",
- "license": "MIT",
- "ignore": [
- "**/.*",
- "node_modules",
- "bower_components",
- "test",
- "tests"
- ]
-}
diff --git a/www/lib/angular-awesome-slider/dist/angular-awesome-slider.js b/www/lib/angular-awesome-slider/dist/angular-awesome-slider.js
deleted file mode 100644
index 49749246..00000000
--- a/www/lib/angular-awesome-slider/dist/angular-awesome-slider.js
+++ /dev/null
@@ -1,1267 +0,0 @@
-(function (angular) {
- 'use strict';
-
- angular.module('angularAwesomeSlider', [])
- // DIRECTIVE
- .directive('slider', [
- '$compile', '$templateCache','$timeout', '$window', 'slider',
- function(compile, templateCache, timeout, win, Slider) {
- return {
- restrict : 'AE',
- require: '?ngModel',
- scope: { options:'=', ngDisabled: '='},
- priority: 1,
- link : function(scope, element, attrs, ngModel) {
-
- if(!ngModel) return;
-
- if (!scope.options)
- throw new Error('You must provide a value for "options" attribute.');
-
- var injector = angular.injector();
-
- // options as inline variable
- if (angular.isString(scope.options)) {
- scope.options = angular.toJson(scope.options);
- }
-
- scope.mainSliderClass = 'jslider';
- scope.mainSliderClass += scope.options.skin ? ' jslider_' + scope.options.skin : ' ';
- scope.mainSliderClass += scope.options.vertical ? ' vertical ' : '';
- scope.mainSliderClass += scope.options.css ? ' sliderCSS' : '';
- scope.mainSliderClass += scope.options.className ? ' ' + scope.options.className : '';
-
- // handle limit labels visibility
- scope.options.limits = angular.isDefined(scope.options.limits) ? scope.options.limits : true;
-
- // compile template
- element.after(compile(templateCache.get('ng-slider/slider-bar.tmpl.html'))(scope, function(clonedElement, scope) {
- scope.tmplElt = clonedElement;
- }));
-
- // init
-
- var initialized = false;
-
- var init = function(value) {
- scope.from = ''+scope.options.from;
- scope.to = ''+scope.options.to;
- if (scope.options.calculate && angular.isFunction(scope.options.calculate)) {
- scope.from = scope.options.calculate(scope.from);
- scope.to = scope.options.calculate(scope.to);
- }
-
- var OPTIONS = {
- from: !scope.options.round ? parseInt(scope.options.from, 10) : parseFloat(scope.options.from),
- to: !scope.options.round ? parseInt(scope.options.to, 10) : parseFloat(scope.options.to),
- step: scope.options.step,
- smooth: scope.options.smooth,
- limits: scope.options.limits,
- round: scope.options.round || false,
- value: value || ngModel.$viewValue,
- dimension: '',
- scale: scope.options.scale,
- modelLabels: scope.options.modelLabels,
- vertical: scope.options.vertical,
- css: scope.options.css,
- className: scope.options.className,
- realtime: scope.options.realtime,
- cb: forceApply,
- threshold: scope.options.threshold,
- heterogeneity: scope.options.heterogeneity
- };
-
- OPTIONS.calculate = scope.options.calculate || undefined;
- OPTIONS.onstatechange = scope.options.onstatechange || undefined;
-
- // slider
- scope.slider = !scope.slider ? slidering(element, scope.tmplElt, OPTIONS) : scope.slider.init(element, scope.tmplElt, OPTIONS);
-
- if (!initialized) {
- initListener();
- }
-
- // scale
- var scaleDiv = scope.tmplElt.find('div')[7];
- angular.element(scaleDiv).html(scope.slider.generateScale());
- scope.slider.drawScale(scaleDiv);
-
- if (scope.ngDisabled) {
- disabler(scope.ngDisabled);
- }
-
- initialized = true;
- };
-
- function initListener() {
- // window resize listener
- angular.element(win).bind('resize', function(event) {
- scope.slider.onresize();
- });
- }
-
- // model -> view
- ngModel.$render = function () {
- //elm.html(ctrl.$viewValue);
- var singleValue = false;
-
- if (!ngModel.$viewValue && ngModel.$viewValue !== 0) {
- return;
- }
-
- if (typeof(ngModel.$viewValue) === 'number') {
- ngModel.$viewValue = ''+ngModel.$viewValue;
- }
-
- if( !ngModel.$viewValue.split(';')[1]) {
- scope.mainSliderClass += ' jslider-single';
- }
- else {
- scope.mainSliderClass = scope.mainSliderClass.replace(' jslider-single', '');
- }
-
- if (scope.slider) {
- var vals = ngModel.$viewValue.split(";");
- scope.slider.getPointers()[0].set(vals[0], true);
- if (vals[1]) {
- scope.slider.getPointers()[1].set(vals[1], true);
- //if moving left to right with two pointers
- //we need to "finish" moving the first
- if(parseInt(vals[1]) > parseInt(vals[0])){
- scope.slider.getPointers()[0].set(vals[0], true);
- }
- }
- }
-
- };
-
- scope.$on('slider-value-update', function(e, msg){
- init(msg.value);
- timeout(function(){
- scope.slider.redrawPointers();
- });
- });
-
- // view -> model
- var forceApply = function(value, released) {
- if (scope.disabled)
- return;
- scope.$apply(function() {
- ngModel.$setViewValue(value);
- });
- if (scope.options.callback){
- scope.options.callback(value, released);
- }
- };
-
- // watch options
- scope.$watch('options', function(value) {
- timeout(function(){
- init();
- });
- }, scope.watchOptions || true);
-
- // disabling
- var disabler = function(value) {
- scope.disabled = value;
- if (scope.slider) {
- scope.tmplElt.toggleClass('disabled');
- scope.slider.disable(value);
- }
- };
-
- scope.$watch('ngDisabled', function(value) {
- disabler(value);
- });
-
- scope.limitValue = function(value) {
- if (scope.options.modelLabels) {
- if (angular.isFunction(scope.options.modelLabels)) {
- return scope.options.modelLabels(value);
- }
- return scope.options.modelLabels[value] !== undefined ? scope.options.modelLabels[value] : value;
- }
- return value;
- };
-
- var slidering = function( inputElement, element, settings) {
- return new Slider( inputElement, element, settings );
- };
- }
- };
- }])
-.config(function() {})
-.run(function() {});
-})(angular);
-;(function(angular){
- 'use strict';
- angular.module('angularAwesomeSlider').constant('sliderConstants', {
- SLIDER: {
- settings: {
- from: 1,
- to: 40,
- step: 1,
- smooth: true,
- limits: false,
- round: false,
- value: "3",
- dimension: "",
- vertical: false,
- calculate: false,
- onstatechange: false,
- callback: false,
- realtime: false
- },
- className: "jslider",
- selector: ".jslider-",
- css: {
- visible : { visibility: "visible" },
- hidden : { visibility: "hidden" }
- }
- },
- EVENTS: {
-
- }
- });
-
-}(angular));;(function(angular){
- 'use strict';
-
- angular.module('angularAwesomeSlider').factory('sliderUtils', ['$window', function(win) {
- return {
- offset: function(elm) {
- // try {return elm.offset();} catch(e) {}
- var rawDom = elm[0];
- var _x = 0;
- var _y = 0;
- var body = document.documentElement || document.body;
- var scrollX = window.pageXOffset || body.scrollLeft;
- var scrollY = window.pageYOffset || body.scrollTop;
- _x = rawDom.getBoundingClientRect().left + scrollX;
- _y = rawDom.getBoundingClientRect().top + scrollY;
- return { left: _x, top:_y };
- },
- browser: function() {
- // TODO finish browser detection and this case
- var userAgent = win.navigator.userAgent;
- var browsers = {mozilla: /mozilla/i, chrome: /chrome/i, safari: /safari/i, firefox: /firefox/i, ie: /internet explorer/i};
- for(var key in browsers) {
- if (browsers[key].test(userAgent)) {
- return key;
- }
- }
- return 'unknown';
- }
- };
- }]);
-})(angular);
-
-
-
-;(function(angular){
- 'use strict';
-
- angular.module('angularAwesomeSlider').factory('sliderDraggable', ['sliderUtils', function(utils) {
-
- function Draggable(){
- this._init.apply( this, arguments );
- }
-
- Draggable.prototype.oninit = function(){
- };
-
- Draggable.prototype.events = function(){
- };
-
- Draggable.prototype.onmousedown = function(){
- this.ptr.css({ position: 'absolute' });
- };
-
- Draggable.prototype.onmousemove = function( evt, x, y ){
- this.ptr.css({ left: x, top: y });
- };
-
- Draggable.prototype.onmouseup = function(){};
-
- Draggable.prototype.isDefault = {
- drag: false,
- clicked: false,
- toclick: true,
- mouseup: false
- };
-
- Draggable.prototype._init = function() {
- if( arguments.length > 0 ){
- this.ptr = arguments[0];
- this.label = arguments[3];
- this.parent = arguments[2];
-
- if (!this.ptr)
- return;
- //this.outer = $(".draggable-outer");
-
- this.is = {};
- angular.extend( this.is, this.isDefault );
- var offset = utils.offset(this.ptr);
-
- this.d = {
- left: offset.left,
- top: offset.top,
- width: this.ptr[0].clientWidth,
- height: this.ptr[0].clientHeight
- };
-
- this.oninit.apply( this, arguments );
-
- this._events();
- }
- };
-
- Draggable.prototype._getPageCoords = function( event ){
- if( event.targetTouches && event.targetTouches[0] ){
- return { x: event.targetTouches[0].pageX, y: event.targetTouches[0].pageY };
- } else
- return { x: event.pageX, y: event.pageY };
- };
-
- Draggable.prototype._bindEvent = function( ptr, eventType, handler ){
- var self = this;
-
- // PS need to bind to touch and non-touch events for devices which support both
- if( this.supportTouches_ ){
- ptr[0].addEventListener( this.events_[ eventType ].touch, handler, false );
- }
-
- ptr.bind( this.events_[ eventType ].nonTouch, handler );
- };
-
- Draggable.prototype._events = function(){
- var self = this;
-
- this.supportTouches_ = 'ontouchend' in document;
- this.events_ = {
- 'click': { touch : 'touchstart', nonTouch : 'click' },
- 'down': { touch : 'touchstart', nonTouch : 'mousedown' },
- 'move': { touch : 'touchmove', nonTouch : 'mousemove' },
- 'up' : { touch : 'touchend', nonTouch: 'mouseup'},
- 'mousedown' : { touch : 'mousedown', nonTouch : 'mousedown' }
- };
-
- var documentElt = angular.element(window.document);
-
- this._bindEvent(documentElt, 'move', function(event) {
- if(self.is.drag) {
- event.stopPropagation();
- event.preventDefault();
- if (!self.parent.disabled) {
- self._mousemove(event);
- }
- }
- });
- this._bindEvent(documentElt, 'down', function(event) {
- if(self.is.drag) {
- event.stopPropagation();
- event.preventDefault();
- }
- });
- this._bindEvent(documentElt, 'up', function(event) {
- self._mouseup(event);
- });
-
- this._bindEvent( this.label, 'down', function(event) {
- self._mousedown( event );
- return false;
- });
- this._bindEvent( this.label, 'up', function(event) {
- self._mouseup( event );
- });
-
- this._bindEvent( this.ptr, 'down', function(event) {
- self._mousedown( event );
- return false;
- });
- this._bindEvent( this.ptr, 'up', function(event) {
- self._mouseup( event );
- });
-
- // TODO see if needed
- this.events();
- };
-
- Draggable.prototype._mousedown = function( evt ){
- this.is.drag = true;
- this.is.clicked = false;
- this.is.mouseup = false;
-
- var coords = this._getPageCoords( evt );
- this.cx = coords.x - this.ptr[0].offsetLeft;
- this.cy = coords.y - this.ptr[0].offsetTop;
-
- angular.extend(this.d, {
- left: coords.x,
- top: coords.y,
- width: this.ptr[0].clientWidth,
- height: this.ptr[0].clientHeight
- });
-
- if( this.outer && this.outer.get(0) ){
- this.outer.css({ height: Math.max(this.outer.height(), $(document.body).height()), overflow: 'hidden' });
- }
-
- this.onmousedown( evt );
- };
-
- Draggable.prototype._mousemove = function( evt ){
- this.is.toclick = false;
- var coords = this._getPageCoords( evt );
- this.onmousemove( evt, coords.x - this.cx, coords.y - this.cy );
- };
-
- Draggable.prototype._mouseup = function( evt ){
- var oThis = this;
-
- if( this.is.drag ){
- this.is.drag = false;
-
- var browser = utils.browser();
-
- if( this.outer && this.outer.get(0) ) {
-
- if( browser === 'mozilla' ){
- this.outer.css({ overflow: "hidden" });
- } else {
- this.outer.css({ overflow: "visible" });
- }
-
- // TODO finish browser detection and this case, remove following line
- this.outer.css({ height: "auto" });
- // if( browser === 'ie' && $.browser.version == '6.0' ){
- // this.outer.css({ height: "100%" });
- // } else {
- // this.outer.css({ height: "auto" });
- // }
-
- }
-
- this.onmouseup( evt );
- }
- };
-
- return Draggable;
- }]);
-}(angular));
-;(function(angular){
- 'use strict';
-
- angular.module('angularAwesomeSlider').factory('sliderPointer', ['sliderDraggable', 'sliderUtils', function(Draggable, utils) {
-
- function SliderPointer() {
- Draggable.apply(this, arguments);
- }
-
- SliderPointer.prototype = new Draggable();
-
- SliderPointer.prototype.oninit = function( ptr, id, vertical, label, _constructor ) {
- this.uid = id;
- this.parent = _constructor;
- this.value = {};
- this.vertical = vertical;
- this.settings = angular.copy(_constructor.settings);
- this.threshold = this.settings.threshold;
- };
-
- SliderPointer.prototype.onmousedown = function( evt ) {
- var off = utils.offset(this.parent.domNode);
-
- var offset = {
- left: off.left,
- top: off.top,
- width: this.parent.domNode[0].clientWidth,
- height: this.parent.domNode[0].clientHeight
- };
-
- this._parent = {
- offset: offset,
- width: offset.width,
- height: offset.height
- };
-
- this.ptr.addClass('jslider-pointer-hover');
- };
-
- SliderPointer.prototype.onmousemove = function( evt, x, y ){
- var coords = this._getPageCoords( evt );
- this._set(!this.vertical ? this.calc( coords.x ) : this.calc( coords.y ));
- if( this.settings.realtime && this.settings.cb && angular.isFunction(this.settings.cb) )
- this.settings.cb.call( this.parent, this.parent.getValue(), !this.is.drag );
- };
-
- SliderPointer.prototype.onmouseup = function(evt){
- if( this.settings.cb && angular.isFunction(this.settings.cb))
- this.settings.cb.call( this.parent, this.parent.getValue(), !this.is.drag );
-
- if (!this.is.drag)
- this.ptr.removeClass('jslider-pointer-hover');
- };
-
- SliderPointer.prototype.limits = function( x ){
- return this.parent.limits(x, this);
- };
-
- SliderPointer.prototype.calc = function( coords ){
- return !this.vertical ?
- this.limits(((coords-this._parent.offset.left)*100)/this._parent.width)
- :
- this.limits(((coords-this._parent.offset.top)*100)/this._parent.height);
- };
-
- SliderPointer.prototype.set = function( value, opt_origin ){
- this.value.origin = this.parent.round(value);
- this._set(this.parent.valueToPrc(value,this), opt_origin);
- };
-
- SliderPointer.prototype._set = function( prc, opt_origin ){
- this.allowed = true;
-
- var oldOrigin = this.value.origin;
- var oldPerc = this.value.prc;
-
- this.value.origin = this.parent.prcToValue(prc);
- this.value.prc = prc;
-
- // check threshold
- if (this.threshold && this.parent.o.pointers[1]) {
- var v1 = this.value.origin,
- v2 = this.parent.o.pointers[this.uid === 0 ? 1:0].value.origin;
- this.allowed = Math.abs(v2 - v1) >= this.threshold;
- if (!this.allowed && oldOrigin !== undefined && oldPerc !== undefined){
- this.value.origin = oldOrigin;
- this.value.prc = oldPerc;
- }
- }
-
- if (!this.vertical)
- this.ptr.css({left:this.value.prc+'%'});
- else
- this.ptr.css({top:this.value.prc+'%', marginTop: -5});
- this.parent.redraw(this);
- };
-
- return SliderPointer;
- }]);
-}(angular));
-;(function(angular){
- 'use strict';
-
- angular.module('angularAwesomeSlider').factory('slider', ['sliderPointer', 'sliderConstants', 'sliderUtils', function(SliderPointer, sliderConstants, utils) {
-
- function Slider(){
- return this.init.apply(this, arguments);
- }
-
- Slider.prototype.init = function( inputNode, templateNode, settings ){
- this.settings = settings;
- this.inputNode = inputNode;
- this.inputNode.addClass('ng-hide');
-
- this.settings.interval = this.settings.to-this.settings.from;
-
- if(this.settings.calculate && angular.isFunction(this.settings.calculate)) {
- this.nice = this.settings.calculate;
- }
-
- if(this.settings.onstatechange && angular.isFunction(this.settings.onstatechange)) {
- this.onstatechange = this.settings.onstatechange;
- }
-
- this.css = sliderConstants.SLIDER.css;
- this.is = {init: false};
- this.o = {};
- this.initValue = {};
- this.isAsc = settings.from < settings.to;
-
- this.create(templateNode);
-
- return this;
- };
-
- Slider.prototype.create = function( templateNode ){
- // set skin class
- // if( this.settings.skin && this.settings.skin.length > 0 )
- // this.setSkin( this.settings.skin );
-
- var self = this;
-
- this.domNode = templateNode;
-
- var divs = this.domNode.find('div'),
- is = this.domNode.find('i'),
- angElt = angular.element,
- angExt = angular.extend,
- angForEach = angular.forEach,
- pointer1 = angElt(divs[1]),
- pointer2 = angElt(divs[2]),
- pointerLabel1 = angElt(divs[5]),
- pointerLabel2 = angElt(divs[6]),
- indicatorLeft = angElt(is[0]),
- indicatorRight = angElt(is[1]),
- range = angElt(is[2]),
- indicator1 = angElt(is[3]),
- indicator2 = angElt(is[4]),
- indicator3 = angElt(is[5]),
- indicator4 = angElt(is[6]),
- labels = [pointerLabel1, pointerLabel2],
- pointers = [pointer1, pointer2],
- off = utils.offset(this.domNode),
- offset = {
- left: off.left,
- top: off.top,
- width: this.domNode[0].clientWidth,
- height: this.domNode[0].clientHeight
- },
- values = self.settings.value.split(';');
-
- this.sizes = {
- domWidth: this.domNode[0].clientWidth,
- domHeight: this.domNode[0].clientHeight,
- domOffset: offset
- };
-
- // find some objects
- angExt(this.o, {
- pointers: {},
- labels: { 0: { o : pointerLabel1 }, 1: { o : pointerLabel2 } },
- limits: { 0: angular.element(divs[3]), 1: angular.element(divs[4]) },
- indicators: { 0: indicator1, 1: indicator2, 2: indicator3, 3: indicator4 }
- });
-
- angExt(this.o.labels[0], {
- value: this.o.labels[0].o.find("span")
- });
-
- angExt(this.o.labels[1], {
- value: this.o.labels[1].o.find("span")
- });
-
- // single pointer
- this.settings.single = !self.settings.value.split(";")[1];
-
- if (this.settings.single) {
- range.addClass('ng-hide');
- } else {
- range.removeClass('ng-hide');
- }
-
- angForEach(pointers, function(pointer, key) {
- self.settings = angular.copy(self.settings);
-
- var value = values[key],
- prev,
- prevValue,
- test,
- value1,
- offset;
-
- if(value) {
- self.o.pointers[key] = new SliderPointer(pointer, key, self.settings.vertical, labels[key], self);
-
- prev = values[key-1];
- prevValue = prev ? parseInt(prev, 10 ) : undefined;
-
- value = self.settings.round ? parseFloat(value) : parseInt(value, 10);
-
- if( prev && self.isAsc ? value < prevValue : value > prevValue ) {
- value = prev;
- }
-
- // limit threshold adjust
-/* test = self.isAsc ? value < self.settings.from : value > self.settings.from,
- value1 = test ? self.settings.from : value; */
-
- test = self.isAsc ? value > self.settings.to : value < self.settings.to;
- value1 = test ? self.settings.to : value;
-
- self.o.pointers[key].set( value1, true );
-
- // reinit position d
- offset = utils.offset(self.o.pointers[key].ptr);
-
- self.o.pointers[key].d = {
- left: offset.left,
- top: offset.top
- };
- }
- });
-
- self.domNode.bind('mousedown', self.clickHandler.apply(self));
-
- this.o.value = angElt(this.domNode.find("i")[2]);
- this.is.init = true;
-
- // CSS SKIN
- if (this.settings.css) {
- indicatorLeft.css(this.settings.css.background ? this.settings.css.background : {});
- indicatorRight.css(this.settings.css.background ? this.settings.css.background : {});
- if (!this.o.pointers[1]) {
- indicator1.css(this.settings.css.before ? this.settings.css.before : {});
- indicator4.css(this.settings.css.after ? this.settings.css.after : {});
- }
-
- indicator2.css(this.settings.css.default ? this.settings.css.default : {});
- indicator3.css(this.settings.css.default ? this.settings.css.default : {});
-
- range.css(this.settings.css.range ? this.settings.css.range : {});
- pointer1.css(this.settings.css.pointer ? this.settings.css.pointer : {});
- pointer2.css(this.settings.css.pointer ? this.settings.css.pointer : {});
- }
-
- this.redrawPointers();
- };
-
- Slider.prototype.clickHandler = function() {
- var self = this;
-
- // in case of showing/hiding
- var resetPtrSize = function( ptr ) {
- var ptr1 = self.o.pointers[0].ptr,
- ptr2 = self.o.pointers[1].ptr,
- offset1 = utils.offset(ptr1),
- offset2 = utils.offset(ptr2);
-
- self.o.pointers[0].d = {
- left: offset1.left,
- top: offset1.top,
- width: ptr1[0].clientWidth,
- height: ptr1[0].clientHeight
- };
-
- self.o.pointers[1].d = {
- left: offset2.left,
- top: offset2.top,
- width: ptr2[0].clientWidth,
- height: ptr2[0].clientHeight
- };
- };
-
- return function(evt) {
- if (self.disabled)
- return;
- var vertical = self.settings.vertical,
- targetIdx = 0,
- _off = utils.offset(self.domNode),
- firstPtr = self.o.pointers[0],
- secondPtr = self.o.pointers[1] ? self.o.pointers[1] : null,
- tmpPtr,
- evtPosition = evt.originalEvent ? evt.originalEvent: evt,
- mouse = vertical ? evtPosition.pageY : evtPosition.pageX,
- css = vertical ? 'top' : 'left',
- offset = { left: _off.left, top: _off.top, width: self.domNode[0].clientWidth, height: self.domNode[0].clientHeight },
- targetPtr = self.o.pointers[targetIdx];
-
- if (secondPtr) {
- if (!secondPtr.d.width) {
- resetPtrSize();
- }
- var firstPtrPosition = utils.offset(firstPtr.ptr)[css];
- var secondPtrPosition = utils.offset(secondPtr.ptr)[css];
- var middleGap = Math.abs((secondPtrPosition - firstPtrPosition) / 2);
- var testSecondPtrToMove = mouse >= secondPtrPosition || mouse >= (secondPtrPosition - middleGap);
- if (testSecondPtrToMove) {
- targetPtr = secondPtr;
- }
- }
- targetPtr._parent = {offset: offset, width: offset.width, height: offset.height};
- var coords = firstPtr._getPageCoords( evt );
- targetPtr.cx = coords.x - targetPtr.d.left;
- targetPtr.cy = coords.y - targetPtr.d.top;
- targetPtr.onmousemove( evt, coords.x, coords.y);
- targetPtr.onmouseup();
- angular.extend(targetPtr.d, {
- left: coords.x,
- top: coords.y
- });
-
- self.redraw(targetPtr);
- return false;
- };
- };
-
-
- Slider.prototype.disable = function( bool ) {
- this.disabled = bool;
- };
-
- Slider.prototype.nice = function( value ){
- return value;
- };
-
- Slider.prototype.onstatechange = function(){};
-
- Slider.prototype.limits = function( x, pointer ){
- // smooth
- if(!this.settings.smooth){
- var step = this.settings.step*100 / ( this.settings.interval );
- x = Math.round( x/step ) * step;
- }
-
- if (pointer) {
- var another = this.o.pointers[1-pointer.uid];
- if(another && pointer.uid && x < another.value.prc) x = another.value.prc;
- if(another && !pointer.uid && x > another.value.prc) x = another.value.prc;
- }
- // base limit
- if(x < 0) x = 0;
- if(x > 100) x = 100;
-
- return Math.round(x*10) / 10;
- };
-
- Slider.prototype.getPointers = function(){
- return this.o.pointers;
- };
-
- Slider.prototype.generateScale = function(){
- if (this.settings.scale && this.settings.scale.length > 0){
- var str = '',
- s = this.settings.scale,
- // FIX Big Scale Failure #34
- // var prc = Math.round((100/(s.length-1))*10)/10;
- prc,
- label,
- duplicate = {},
- position = this.settings.vertical ? 'top' : 'left',
- i=0;
- for(; i < s.length; i++) {
- if (!angular.isDefined(s[i].val)) {
- prc = (100/(s.length-1)).toFixed(2);
- str += '<span style="'+ position + ': ' + i*prc + '%">' + ( s[i] != '|' ? '<ins>' + s[i] + '</ins>' : '' ) + '</span>';
- }
-
- if (s[i].val <= this.settings.to && s[i].val >= this.settings.from && ! duplicate[s[i].val]) {
- duplicate[s[i].val] = true;
- prc = this.valueToPrc(s[i].val);
- label = s[i].label ? s[i].label : s[i].val;
- str += '<span style="'+ position + ': ' + prc + '%">' + '<ins>' + label + '</ins>' + '</span>';
- }
- }
- return str;
- }
-
- return '';
- };
-
- Slider.prototype.onresize = function(){
- var self = this;
-
- this.sizes = {
- domWidth: this.domNode[0].clientWidth,
- domHeight: this.domNode[0].clientHeight,
- domOffset: {
- left: this.domNode[0].offsetLeft,
- top: this.domNode[0].offsetTop,
- width: this.domNode[0].clientWidth,
- height: this.domNode[0].clientHeight
- }
- };
-
- this.redrawPointers();
- };
-
- Slider.prototype.update = function(){
- this.onresize();
- this.drawScale();
- };
-
- Slider.prototype.drawScale = function( scaleDiv ){
- angular.forEach(angular.element(scaleDiv).find('ins'), function(scaleLabel, key) {
- scaleLabel.style.marginLeft = - scaleLabel.clientWidth / 2;
- });
- };
-
- Slider.prototype.redrawPointers = function() {
-
- angular.forEach(this.o.pointers, function(pointer){
- this.redraw(pointer);
- }, this);
- };
-
- Slider.prototype.redraw = function( pointer ){
- if(!this.is.init) {
- // this.settings.single
- if(this.o.pointers[0] && !this.o.pointers[1]) {
- this.originValue = this.o.pointers[0].value.prc;
- this.o.indicators[0].css(!this.settings.vertical ? {left:0, width:this.o.pointers[0].value.prc + "%"} : {top:0, height:this.o.pointers[0].value.prc + "%"});
- this.o.indicators[1].css(!this.settings.vertical ? {left:this.o.pointers[0].value.prc + "%"} : {top:this.o.pointers[0].value.prc + "%"});
- this.o.indicators[3].css(!this.settings.vertical ? {left:this.o.pointers[0].value.prc + "%"} : {top:this.o.pointers[0].value.prc + "%"});
- } else {
- this.o.indicators[2].css(!this.settings.vertical ? {left:this.o.pointers[1].value.prc + "%"} : {top:this.o.pointers[1].value.prc + "%"});
- this.o.indicators[0].css(!this.settings.vertical ? {left:0, width:"0"} : {top:0, height:"0"});
- this.o.indicators[3].css(!this.settings.vertical ? {left:"0", width:"0"} : {top:"0", height:"0"});
- }
-
- return false;
- }
-
- this.setValue();
-
- var newPos,
- newWidth;
-
- // redraw range line
- if(this.o.pointers[0] && this.o.pointers[1]) {
- newPos = !this.settings.vertical ?
- { left: this.o.pointers[0].value.prc + "%", width: ( this.o.pointers[1].value.prc - this.o.pointers[0].value.prc ) + "%" }
- :
- { top: this.o.pointers[0].value.prc + "%", height: ( this.o.pointers[1].value.prc - this.o.pointers[0].value.prc ) + "%" };
-
- this.o.value.css(newPos);
-
- // both pointer overlap on limits
- if (this.o.pointers[0].value.prc === this.o.pointers[1].value.prc) {
- this.o.pointers[1].ptr.css("z-index", this.o.pointers[0].value.prc === 0 ? '3' : '1');
- }
-
- }
-
- if(this.o.pointers[0] && !this.o.pointers[1]) {
- newWidth = this.o.pointers[0].value.prc - this.originValue;
- if (newWidth >= 0) {
- this.o.indicators[3].css(!this.settings.vertical ? {width: newWidth + "%"} : {height: newWidth + "%"});
- }
- else {
- this.o.indicators[3].css(!this.settings.vertical ? {width: 0} : {height: 0});
- }
-
- if (this.o.pointers[0].value.prc < this.originValue) {
- this.o.indicators[0].css(!this.settings.vertical ? {width: this.o.pointers[0].value.prc + "%"} : {height: this.o.pointers[0].value.prc + "%"});
- }
- else {
- this.o.indicators[0].css(!this.settings.vertical ? {width: this.originValue + "%"} : {height: this.originValue + "%"});
- }
-
- }
-
- var value = this.nice(pointer.value.origin);
- if (this.settings.modelLabels) {
- if (angular.isFunction(this.settings.modelLabels)) {
- value = this.settings.modelLabels(value);
- }
- else {
- value = this.settings.modelLabels[value] !== undefined ? this.settings.modelLabels[value] : value;
- }
- }
-
- this.o.labels[pointer.uid].value.html(value);
-
- // redraw position of labels
- this.redrawLabels( pointer );
- };
-
- Slider.prototype.redrawLabels = function( pointer ) {
-
- function setPosition( label, sizes, prc ) {
- sizes.margin = -sizes.label/2;
- var domSize = !self.settings.vertical ? self.sizes.domWidth : self.sizes.domHeight;
-
- if (self.sizes.domWidth) {
- // left limit
- var label_left = sizes.border + sizes.margin;
- if(label_left < 0)
- sizes.margin -= label_left;
-
- // right limit
- if(self.sizes.domWidth > 0 && sizes.border+sizes.label / 2 > domSize){
- sizes.margin = 0;
- sizes.right = true;
- } else
- sizes.right = false;
- }
-
- if (!self.settings.vertical)
- label.o.css({ left: prc + "%", marginLeft: sizes.margin+"px", right: "auto" });
- else
- label.o.css({ top: prc + "%", marginLeft: "20px", marginTop: sizes.margin, bottom: "auto" });
- if(sizes.right && self.sizes.domWidth > 0) {
- if (!self.settings.vertical)
- label.o.css({ left: "auto", right: 0 });
- else
- label.o.css({ top: "auto", bottom: 0 });
- }
- return sizes;
- }
-
- var self = this,
- label = this.o.labels[pointer.uid],
- prc = pointer.value.prc,
- // case hidden
- labelWidthSize = label.o[0].offsetWidth === 0 ? (label.o[0].textContent.length)*7 : label.o[0].offsetWidth;
-
- this.sizes.domWidth = this.domNode[0].clientWidth;
- this.sizes.domHeight = this.domNode[0].clientHeight;
-
- var sizes = {
- label: !self.settings.vertical ? labelWidthSize : label.o[0].offsetHeight,
- right: false,
- border: (prc * (!self.settings.vertical ? this.sizes.domWidth: this.sizes.domHeight)) / 100
- };
-
- var anotherIdx = pointer.uid === 0 ? 1:0,
- anotherLabel,
- anotherPtr;
-
- if (!this.settings.single && !this.settings.vertical){
- // glue if near;
- anotherLabel = this.o.labels[anotherIdx];
- anotherPtr = this.o.pointers[anotherIdx];
- var label1 = this.o.labels[0],
- label2 = this.o.labels[1],
- ptr1 = this.o.pointers[0],
- ptr2 = this.o.pointers[1],
- gapBetweenLabel = ptr2.ptr[0].offsetLeft - ptr1.ptr[0].offsetLeft,
- value = this.nice(anotherPtr.value.origin);
-
- label1.o.css(this.css.visible);
- label2.o.css(this.css.visible);
-
- value = this.getLabelValue(value);
-
- if (gapBetweenLabel + 10 < label1.o[0].offsetWidth+label2.o[0].offsetWidth) {
- anotherLabel.o.css(this.css.hidden);
-
- anotherLabel.value.html(value);
- prc = (anotherPtr.value.prc - prc) / 2 + prc;
- if(anotherPtr.value.prc != pointer.value.prc){
- value = this.nice(this.o.pointers[0].value.origin);
- var value1 = this.nice(this.o.pointers[1].value.origin);
- value = this.getLabelValue(value);
- value1 = this.getLabelValue(value1);
-
- label.value.html(value + "&nbsp;&ndash;&nbsp;" + value1);
- sizes.label = label.o[0].offsetWidth;
- sizes.border = (prc * domSize) / 100;
- }
- }
- else {
- anotherLabel.value.html(value);
- anotherLabel.o.css(this.css.visible);
- }
- }
-
- sizes = setPosition(label, sizes, prc);
-
- var domSize = !self.settings.vertical ? self.sizes.domWidth : self.sizes.domHeight;
-
- /* draw second label */
- if(anotherLabel){
- // case hidden
- var labelWidthSize2 = label.o[0].offsetWidth === 0 ? (label.o[0].textContent.length/2)*7 : label.o[0].offsetWidth,
- sizes2 = {
- label: !self.settings.vertical ? labelWidthSize2: anotherLabel.o[0].offsetHeight,
- right: false,
- border: (anotherPtr.value.prc * this.sizes.domWidth) / 100
- };
- sizes = setPosition(anotherLabel, sizes2, anotherPtr.value.prc);
- }
-
- this.redrawLimits();
- };
-
- Slider.prototype.redrawLimits = function() {
- if (this.settings.limits) {
-
- var limits = [true, true],
- i = 0;
-
- for(var key in this.o.pointers){
-
- if(!this.settings.single || key === 0){
-
- var pointer = this.o.pointers[key],
- label = this.o.labels[pointer.uid],
- label_left = label.o[0].offsetLeft - this.sizes.domOffset.left,
- limit = this.o.limits[0];
-
- if(label_left < limit[0].clientWidth) {
- limits[0] = false;
- }
-
- limit = this.o.limits[1];
- if(label_left + label.o[0].clientWidth > this.sizes.domWidth - limit[0].clientWidth){
- limits[1] = false;
- }
-
- }
- }
-
- for(; i < limits.length; i++){
- if(limits[i]){ // TODO animate
- angular.element(this.o.limits[i]).addClass("animate-show");
- }
- else{
- angular.element(this.o.limits[i]).addClass("animate-hidde");
- }
- }
- }
- };
-
- Slider.prototype.setValue = function(){
- var value = this.getValue();
- this.inputNode.attr("value", value);
- this.onstatechange.call(this, value, this.inputNode);
- };
-
- Slider.prototype.getValue = function(){
- if(!this.is.init) return false;
- var $this = this;
-
- var value = "";
- angular.forEach(this.o.pointers, function(pointer, key){
- if(pointer.value.prc !== undefined && !isNaN(pointer.value.prc))
- value += (key > 0 ? ";" : "") + $this.prcToValue(pointer.value.prc);
- });
- return value;
- };
-
- Slider.prototype.getLabelValue = function(value){
- if (this.settings.modelLabels) {
- if (angular.isFunction(this.settings.modelLabels)) {
- return this.settings.modelLabels(value);
- }
- else {
- return this.settings.modelLabels[value] !== undefined ? this.settings.modelLabels[value] : value;
- }
- }
-
- return value;
- };
-
- Slider.prototype.getPrcValue = function(){
- if(!this.is.init) return false;
- var $this = this;
-
- var value = "";
- // TODO remove jquery and see if % value is nice feature
- /*$.each(this.o.pointers, function(i){
- if(this.value.prc !== undefined && !isNaN(this.value.prc)) value += (i > 0 ? ";" : "") + this.value.prc;
- });*/
- return value;
- };
-
- Slider.prototype.prcToValue = function( prc ){
- var value;
- if (this.settings.heterogeneity && this.settings.heterogeneity.length > 0){
- var h = this.settings.heterogeneity,
- _start = 0,
- _from = this.settings.round ? parseFloat(this.settings.from) : parseInt(this.settings.from, 10),
- _to = this.settings.round ? parseFloat(this.settings.to) : parseInt(this.settings.to, 10),
- i = 0;
-
- for (; i <= h.length; i++){
- var v;
- if(h[i])
- v = h[i].split('/');
- else
- v = [100, _to];
-
- var v1 = this.settings.round ? parseFloat(v[0]) : parseInt(v[0], 10);
- var v2 = this.settings.round ? parseFloat(v[1]) : parseInt(v[1], 10);
-
- if (prc >= _start && prc <= v1) {
- value = _from + ((prc-_start) * (v2-_from)) / (v1-_start);
- }
-
- _start = v1;
- _from = v2;
- }
- }
- else {
- value = this.settings.from + (prc * this.settings.interval) / 100;
- }
-
- return this.round(value);
- };
-
- Slider.prototype.valueToPrc = function( value, pointer ){
- var prc,
- _from = this.settings.round ? parseFloat(this.settings.from) : parseInt(this.settings.from, 10);
-
- if (this.settings.heterogeneity && this.settings.heterogeneity.length > 0){
- var h = this.settings.heterogeneity,
- _start = 0,
- i = 0;
-
- for (; i <= h.length; i++) {
- var v;
- if(h[i])
- v = h[i].split('/');
- else
- v = [100, this.settings.to];
-
- var v1 = this.settings.round ? parseFloat(v[0]) : parseInt(v[0], 10);
- var v2 = this.settings.round ? parseFloat(v[1]) : parseInt(v[1], 10);
-
- if(value >= _from && value <= v2){
- if (pointer) {
- prc = pointer.limits(_start + (value-_from)*(v1-_start)/(v2-_from));
- } else {
- prc = this.limits(_start + (value-_from)*(v1-_start)/(v2-_from));
- }
- }
-
- _start = v1; _from = v2;
- }
-
- } else {
- if (pointer) {
- prc = pointer.limits((value-_from)*100/this.settings.interval);
- } else {
- prc = this.limits((value-_from)*100/this.settings.interval);
- }
- }
-
- return prc;
- };
-
- Slider.prototype.round = function( value ){
- value = Math.round(value / this.settings.step) * this.settings.step;
-
- if(this.settings.round)
- value = Math.round(value * Math.pow(10, this.settings.round)) / Math.pow(10, this.settings.round);
- else
- value = Math.round(value);
- return value;
- };
-
- return Slider;
-
- }]);
-}(angular));
-;(function(angular, undefined) {
-'use strict';
-
- angular.module('angularAwesomeSlider')
- .run(['$templateCache', function ($templateCache) {
- $templateCache.put('ng-slider/slider-bar.tmpl.html',
- '<span ng-class="mainSliderClass" id="{{sliderTmplId}}">' +
- '<table><tr><td>' +
- '<div class="jslider-bg">' +
- '<i class="left"></i>'+
- '<i class="right"></i>'+
- '<i class="range"></i>'+
- '<i class="before"></i>'+
- '<i class="default"></i>'+
- '<i class="default"></i>'+
- '<i class="after"></i>'+
- '</div>' +
- '<div class="jslider-pointer"></div>' +
- '<div class="jslider-pointer jslider-pointer-to"></div>' +
- '<div class="jslider-label" ng-show="options.limits"><span ng-bind="limitValue(options.from)"></span>{{options.dimension}}</div>' +
- '<div class="jslider-label jslider-label-to" ng-show="options.limits"><span ng-bind="limitValue(options.to)"></span>{{options.dimension}}</div>' +
- '<div class="jslider-value"><span></span>{{options.dimension}}</div>' +
- '<div class="jslider-value jslider-value-to"><span></span>{{options.dimension}}</div>' +
- '<div class="jslider-scale" id="{{sliderScaleDivTmplId}}"></div>' +
- '</td></tr></table>' +
- '</span>');
- }]);
-
-})(window.angular);
diff --git a/www/lib/angular-awesome-slider/dist/angular-awesome-slider.min.js b/www/lib/angular-awesome-slider/dist/angular-awesome-slider.min.js
deleted file mode 100644
index 81bd82d9..00000000
--- a/www/lib/angular-awesome-slider/dist/angular-awesome-slider.min.js
+++ /dev/null
@@ -1,85 +0,0 @@
-/**
-* @license angular-awesome-slider - v2.4.4
-* (c) 2013 Julien VALERY https://github.com/darul75/angular-awesome-slider
-* License: MIT
-**/
-!function(a){"use strict";a.module("angularAwesomeSlider",[]).directive("slider",["$compile","$templateCache","$timeout","$window","slider",function(b,c,d,e,f){return{restrict:"AE",require:"?ngModel",scope:{options:"=",ngDisabled:"="},priority:1,link:function(g,h,i,j){function k(){
-// window resize listener
-a.element(e).bind("resize",function(a){g.slider.onresize()})}if(j){if(!g.options)throw new Error('You must provide a value for "options" attribute.');a.injector();
-// options as inline variable
-a.isString(g.options)&&(g.options=a.toJson(g.options)),g.mainSliderClass="jslider",g.mainSliderClass+=g.options.skin?" jslider_"+g.options.skin:" ",g.mainSliderClass+=g.options.vertical?" vertical ":"",g.mainSliderClass+=g.options.css?" sliderCSS":"",g.mainSliderClass+=g.options.className?" "+g.options.className:"",
-// handle limit labels visibility
-g.options.limits=a.isDefined(g.options.limits)?g.options.limits:!0,
-// compile template
-h.after(b(c.get("ng-slider/slider-bar.tmpl.html"))(g,function(a,b){b.tmplElt=a}));
-// init
-var l=!1,m=function(b){g.from=""+g.options.from,g.to=""+g.options.to,g.options.calculate&&a.isFunction(g.options.calculate)&&(g.from=g.options.calculate(g.from),g.to=g.options.calculate(g.to));var c={from:g.options.round?parseFloat(g.options.from):parseInt(g.options.from,10),to:g.options.round?parseFloat(g.options.to):parseInt(g.options.to,10),step:g.options.step,smooth:g.options.smooth,limits:g.options.limits,round:g.options.round||!1,value:b||j.$viewValue,dimension:"",scale:g.options.scale,modelLabels:g.options.modelLabels,vertical:g.options.vertical,css:g.options.css,className:g.options.className,realtime:g.options.realtime,cb:n,threshold:g.options.threshold,heterogeneity:g.options.heterogeneity};c.calculate=g.options.calculate||void 0,c.onstatechange=g.options.onstatechange||void 0,
-// slider
-g.slider=g.slider?g.slider.init(h,g.tmplElt,c):p(h,g.tmplElt,c),l||k();
-// scale
-var d=g.tmplElt.find("div")[7];a.element(d).html(g.slider.generateScale()),g.slider.drawScale(d),g.ngDisabled&&o(g.ngDisabled),l=!0};
-// model -> view
-j.$render=function(){if((j.$viewValue||0===j.$viewValue)&&("number"==typeof j.$viewValue&&(j.$viewValue=""+j.$viewValue),j.$viewValue.split(";")[1]?g.mainSliderClass=g.mainSliderClass.replace(" jslider-single",""):g.mainSliderClass+=" jslider-single",g.slider)){var a=j.$viewValue.split(";");g.slider.getPointers()[0].set(a[0],!0),a[1]&&(g.slider.getPointers()[1].set(a[1],!0),
-//if moving left to right with two pointers
-//we need to "finish" moving the first
-parseInt(a[1])>parseInt(a[0])&&g.slider.getPointers()[0].set(a[0],!0))}},g.$on("slider-value-update",function(a,b){m(b.value),d(function(){g.slider.redrawPointers()})});
-// view -> model
-var n=function(a,b){g.disabled||(g.$apply(function(){j.$setViewValue(a)}),g.options.callback&&g.options.callback(a,b))};
-// watch options
-g.$watch("options",function(a){d(function(){m()})},g.watchOptions||!0);
-// disabling
-var o=function(a){g.disabled=a,g.slider&&(g.tmplElt.toggleClass("disabled"),g.slider.disable(a))};g.$watch("ngDisabled",function(a){o(a)}),g.limitValue=function(b){return g.options.modelLabels?a.isFunction(g.options.modelLabels)?g.options.modelLabels(b):void 0!==g.options.modelLabels[b]?g.options.modelLabels[b]:b:b};var p=function(a,b,c){return new f(a,b,c)}}}}}]).config(function(){}).run(function(){})}(angular),function(a){"use strict";a.module("angularAwesomeSlider").constant("sliderConstants",{SLIDER:{settings:{from:1,to:40,step:1,smooth:!0,limits:!1,round:!1,value:"3",dimension:"",vertical:!1,calculate:!1,onstatechange:!1,callback:!1,realtime:!1},className:"jslider",selector:".jslider-",css:{visible:{visibility:"visible"},hidden:{visibility:"hidden"}}},EVENTS:{}})}(angular),function(a){"use strict";a.module("angularAwesomeSlider").factory("sliderUtils",["$window",function(a){return{offset:function(a){
-// try {return elm.offset();} catch(e) {}
-var b=a[0],c=0,d=0,e=document.documentElement||document.body,f=window.pageXOffset||e.scrollLeft,g=window.pageYOffset||e.scrollTop;return c=b.getBoundingClientRect().left+f,d=b.getBoundingClientRect().top+g,{left:c,top:d}},browser:function(){
-// TODO finish browser detection and this case
-var b=a.navigator.userAgent,c={mozilla:/mozilla/i,chrome:/chrome/i,safari:/safari/i,firefox:/firefox/i,ie:/internet explorer/i};for(var d in c)if(c[d].test(b))return d;return"unknown"}}}])}(angular),function(a){"use strict";a.module("angularAwesomeSlider").factory("sliderDraggable",["sliderUtils",function(b){function c(){this._init.apply(this,arguments)}return c.prototype.oninit=function(){},c.prototype.events=function(){},c.prototype.onmousedown=function(){this.ptr.css({position:"absolute"})},c.prototype.onmousemove=function(a,b,c){this.ptr.css({left:b,top:c})},c.prototype.onmouseup=function(){},c.prototype.isDefault={drag:!1,clicked:!1,toclick:!0,mouseup:!1},c.prototype._init=function(){if(arguments.length>0){if(this.ptr=arguments[0],this.label=arguments[3],this.parent=arguments[2],!this.ptr)return;
-//this.outer = $(".draggable-outer");
-this.is={},a.extend(this.is,this.isDefault);var c=b.offset(this.ptr);this.d={left:c.left,top:c.top,width:this.ptr[0].clientWidth,height:this.ptr[0].clientHeight},this.oninit.apply(this,arguments),this._events()}},c.prototype._getPageCoords=function(a){return a.targetTouches&&a.targetTouches[0]?{x:a.targetTouches[0].pageX,y:a.targetTouches[0].pageY}:{x:a.pageX,y:a.pageY}},c.prototype._bindEvent=function(a,b,c){
-// PS need to bind to touch and non-touch events for devices which support both
-this.supportTouches_&&a[0].addEventListener(this.events_[b].touch,c,!1),a.bind(this.events_[b].nonTouch,c)},c.prototype._events=function(){var b=this;this.supportTouches_="ontouchend"in document,this.events_={click:{touch:"touchstart",nonTouch:"click"},down:{touch:"touchstart",nonTouch:"mousedown"},move:{touch:"touchmove",nonTouch:"mousemove"},up:{touch:"touchend",nonTouch:"mouseup"},mousedown:{touch:"mousedown",nonTouch:"mousedown"}};var c=a.element(window.document);this._bindEvent(c,"move",function(a){b.is.drag&&(a.stopPropagation(),a.preventDefault(),b.parent.disabled||b._mousemove(a))}),this._bindEvent(c,"down",function(a){b.is.drag&&(a.stopPropagation(),a.preventDefault())}),this._bindEvent(c,"up",function(a){b._mouseup(a)}),this._bindEvent(this.label,"down",function(a){return b._mousedown(a),!1}),this._bindEvent(this.label,"up",function(a){b._mouseup(a)}),this._bindEvent(this.ptr,"down",function(a){return b._mousedown(a),!1}),this._bindEvent(this.ptr,"up",function(a){b._mouseup(a)}),
-// TODO see if needed
-this.events()},c.prototype._mousedown=function(b){this.is.drag=!0,this.is.clicked=!1,this.is.mouseup=!1;var c=this._getPageCoords(b);this.cx=c.x-this.ptr[0].offsetLeft,this.cy=c.y-this.ptr[0].offsetTop,a.extend(this.d,{left:c.x,top:c.y,width:this.ptr[0].clientWidth,height:this.ptr[0].clientHeight}),this.outer&&this.outer.get(0)&&this.outer.css({height:Math.max(this.outer.height(),$(document.body).height()),overflow:"hidden"}),this.onmousedown(b)},c.prototype._mousemove=function(a){this.is.toclick=!1;var b=this._getPageCoords(a);this.onmousemove(a,b.x-this.cx,b.y-this.cy)},c.prototype._mouseup=function(a){if(this.is.drag){this.is.drag=!1;var c=b.browser();this.outer&&this.outer.get(0)&&("mozilla"===c?this.outer.css({overflow:"hidden"}):this.outer.css({overflow:"visible"}),
-// TODO finish browser detection and this case, remove following line
-this.outer.css({height:"auto"})),this.onmouseup(a)}},c}])}(angular),function(a){"use strict";a.module("angularAwesomeSlider").factory("sliderPointer",["sliderDraggable","sliderUtils",function(b,c){function d(){b.apply(this,arguments)}return d.prototype=new b,d.prototype.oninit=function(b,c,d,e,f){this.uid=c,this.parent=f,this.value={},this.vertical=d,this.settings=a.copy(f.settings),this.threshold=this.settings.threshold},d.prototype.onmousedown=function(a){var b=c.offset(this.parent.domNode),d={left:b.left,top:b.top,width:this.parent.domNode[0].clientWidth,height:this.parent.domNode[0].clientHeight};this._parent={offset:d,width:d.width,height:d.height},this.ptr.addClass("jslider-pointer-hover")},d.prototype.onmousemove=function(b,c,d){var e=this._getPageCoords(b);this._set(this.vertical?this.calc(e.y):this.calc(e.x)),this.settings.realtime&&this.settings.cb&&a.isFunction(this.settings.cb)&&this.settings.cb.call(this.parent,this.parent.getValue(),!this.is.drag)},d.prototype.onmouseup=function(b){this.settings.cb&&a.isFunction(this.settings.cb)&&this.settings.cb.call(this.parent,this.parent.getValue(),!this.is.drag),this.is.drag||this.ptr.removeClass("jslider-pointer-hover")},d.prototype.limits=function(a){return this.parent.limits(a,this)},d.prototype.calc=function(a){return this.vertical?this.limits(100*(a-this._parent.offset.top)/this._parent.height):this.limits(100*(a-this._parent.offset.left)/this._parent.width)},d.prototype.set=function(a,b){this.value.origin=this.parent.round(a),this._set(this.parent.valueToPrc(a,this),b)},d.prototype._set=function(a,b){this.allowed=!0;var c=this.value.origin,d=this.value.prc;
-// check threshold
-if(this.value.origin=this.parent.prcToValue(a),this.value.prc=a,this.threshold&&this.parent.o.pointers[1]){var e=this.value.origin,f=this.parent.o.pointers[0===this.uid?1:0].value.origin;this.allowed=Math.abs(f-e)>=this.threshold,this.allowed||void 0===c||void 0===d||(this.value.origin=c,this.value.prc=d)}this.vertical?this.ptr.css({top:this.value.prc+"%",marginTop:-5}):this.ptr.css({left:this.value.prc+"%"}),this.parent.redraw(this)},d}])}(angular),function(a){"use strict";a.module("angularAwesomeSlider").factory("slider",["sliderPointer","sliderConstants","sliderUtils",function(b,c,d){function e(){return this.init.apply(this,arguments)}return e.prototype.init=function(b,d,e){return this.settings=e,this.inputNode=b,this.inputNode.addClass("ng-hide"),this.settings.interval=this.settings.to-this.settings.from,this.settings.calculate&&a.isFunction(this.settings.calculate)&&(this.nice=this.settings.calculate),this.settings.onstatechange&&a.isFunction(this.settings.onstatechange)&&(this.onstatechange=this.settings.onstatechange),this.css=c.SLIDER.css,this.is={init:!1},this.o={},this.initValue={},this.isAsc=e.from<e.to,this.create(d),this},e.prototype.create=function(c){
-// set skin class
-// if( this.settings.skin && this.settings.skin.length > 0 )
-// this.setSkin( this.settings.skin );
-var e=this;this.domNode=c;var f=this.domNode.find("div"),g=this.domNode.find("i"),h=a.element,i=a.extend,j=a.forEach,k=h(f[1]),l=h(f[2]),m=h(f[5]),n=h(f[6]),o=h(g[0]),p=h(g[1]),q=h(g[2]),r=h(g[3]),s=h(g[4]),t=h(g[5]),u=h(g[6]),v=[m,n],w=[k,l],x=d.offset(this.domNode),y={left:x.left,top:x.top,width:this.domNode[0].clientWidth,height:this.domNode[0].clientHeight},z=e.settings.value.split(";");this.sizes={domWidth:this.domNode[0].clientWidth,domHeight:this.domNode[0].clientHeight,domOffset:y},
-// find some objects
-i(this.o,{pointers:{},labels:{0:{o:m},1:{o:n}},limits:{0:a.element(f[3]),1:a.element(f[4])},indicators:{0:r,1:s,2:t,3:u}}),i(this.o.labels[0],{value:this.o.labels[0].o.find("span")}),i(this.o.labels[1],{value:this.o.labels[1].o.find("span")}),
-// single pointer
-this.settings.single=!e.settings.value.split(";")[1],this.settings.single?q.addClass("ng-hide"):q.removeClass("ng-hide"),j(w,function(c,f){e.settings=a.copy(e.settings);var g,h,i,j,k,l=z[f];l&&(e.o.pointers[f]=new b(c,f,e.settings.vertical,v[f],e),g=z[f-1],h=g?parseInt(g,10):void 0,l=e.settings.round?parseFloat(l):parseInt(l,10),(g&&e.isAsc?h>l:l>h)&&(l=g),i=e.isAsc?l>e.settings.to:l<e.settings.to,j=i?e.settings.to:l,e.o.pointers[f].set(j,!0),k=d.offset(e.o.pointers[f].ptr),e.o.pointers[f].d={left:k.left,top:k.top})}),e.domNode.bind("mousedown",e.clickHandler.apply(e)),this.o.value=h(this.domNode.find("i")[2]),this.is.init=!0,
-// CSS SKIN
-this.settings.css&&(o.css(this.settings.css.background?this.settings.css.background:{}),p.css(this.settings.css.background?this.settings.css.background:{}),this.o.pointers[1]||(r.css(this.settings.css.before?this.settings.css.before:{}),u.css(this.settings.css.after?this.settings.css.after:{})),s.css(this.settings.css["default"]?this.settings.css["default"]:{}),t.css(this.settings.css["default"]?this.settings.css["default"]:{}),q.css(this.settings.css.range?this.settings.css.range:{}),k.css(this.settings.css.pointer?this.settings.css.pointer:{}),l.css(this.settings.css.pointer?this.settings.css.pointer:{})),this.redrawPointers()},e.prototype.clickHandler=function(){var b=this,c=function(a){var c=b.o.pointers[0].ptr,e=b.o.pointers[1].ptr,f=d.offset(c),g=d.offset(e);b.o.pointers[0].d={left:f.left,top:f.top,width:c[0].clientWidth,height:c[0].clientHeight},b.o.pointers[1].d={left:g.left,top:g.top,width:e[0].clientWidth,height:e[0].clientHeight}};return function(e){if(!b.disabled){var f=b.settings.vertical,g=0,h=d.offset(b.domNode),i=b.o.pointers[0],j=b.o.pointers[1]?b.o.pointers[1]:null,k=e.originalEvent?e.originalEvent:e,l=f?k.pageY:k.pageX,m=f?"top":"left",n={left:h.left,top:h.top,width:b.domNode[0].clientWidth,height:b.domNode[0].clientHeight},o=b.o.pointers[g];if(j){j.d.width||c();var p=d.offset(i.ptr)[m],q=d.offset(j.ptr)[m],r=Math.abs((q-p)/2),s=l>=q||l>=q-r;s&&(o=j)}o._parent={offset:n,width:n.width,height:n.height};var t=i._getPageCoords(e);return o.cx=t.x-o.d.left,o.cy=t.y-o.d.top,o.onmousemove(e,t.x,t.y),o.onmouseup(),a.extend(o.d,{left:t.x,top:t.y}),b.redraw(o),!1}}},e.prototype.disable=function(a){this.disabled=a},e.prototype.nice=function(a){return a},e.prototype.onstatechange=function(){},e.prototype.limits=function(a,b){
-// smooth
-if(!this.settings.smooth){var c=100*this.settings.step/this.settings.interval;a=Math.round(a/c)*c}if(b){var d=this.o.pointers[1-b.uid];d&&b.uid&&a<d.value.prc&&(a=d.value.prc),d&&!b.uid&&a>d.value.prc&&(a=d.value.prc)}
-// base limit
-return 0>a&&(a=0),a>100&&(a=100),Math.round(10*a)/10},e.prototype.getPointers=function(){return this.o.pointers},e.prototype.generateScale=function(){if(this.settings.scale&&this.settings.scale.length>0){for(var
-// FIX Big Scale Failure #34
-// var prc = Math.round((100/(s.length-1))*10)/10;
-b,c,d="",e=this.settings.scale,f={},g=this.settings.vertical?"top":"left",h=0;h<e.length;h++)a.isDefined(e[h].val)||(b=(100/(e.length-1)).toFixed(2),d+='<span style="'+g+": "+h*b+'%">'+("|"!=e[h]?"<ins>"+e[h]+"</ins>":"")+"</span>"),e[h].val<=this.settings.to&&e[h].val>=this.settings.from&&!f[e[h].val]&&(f[e[h].val]=!0,b=this.valueToPrc(e[h].val),c=e[h].label?e[h].label:e[h].val,d+='<span style="'+g+": "+b+'%"><ins>'+c+"</ins></span>");return d}return""},e.prototype.onresize=function(){this.sizes={domWidth:this.domNode[0].clientWidth,domHeight:this.domNode[0].clientHeight,domOffset:{left:this.domNode[0].offsetLeft,top:this.domNode[0].offsetTop,width:this.domNode[0].clientWidth,height:this.domNode[0].clientHeight}},this.redrawPointers()},e.prototype.update=function(){this.onresize(),this.drawScale()},e.prototype.drawScale=function(b){a.forEach(a.element(b).find("ins"),function(a,b){a.style.marginLeft=-a.clientWidth/2})},e.prototype.redrawPointers=function(){a.forEach(this.o.pointers,function(a){this.redraw(a)},this)},e.prototype.redraw=function(b){if(!this.is.init)
-// this.settings.single
-return this.o.pointers[0]&&!this.o.pointers[1]?(this.originValue=this.o.pointers[0].value.prc,this.o.indicators[0].css(this.settings.vertical?{top:0,height:this.o.pointers[0].value.prc+"%"}:{left:0,width:this.o.pointers[0].value.prc+"%"}),this.o.indicators[1].css(this.settings.vertical?{top:this.o.pointers[0].value.prc+"%"}:{left:this.o.pointers[0].value.prc+"%"}),this.o.indicators[3].css(this.settings.vertical?{top:this.o.pointers[0].value.prc+"%"}:{left:this.o.pointers[0].value.prc+"%"})):(this.o.indicators[2].css(this.settings.vertical?{top:this.o.pointers[1].value.prc+"%"}:{left:this.o.pointers[1].value.prc+"%"}),this.o.indicators[0].css(this.settings.vertical?{top:0,height:"0"}:{left:0,width:"0"}),this.o.indicators[3].css(this.settings.vertical?{top:"0",height:"0"}:{left:"0",width:"0"})),!1;this.setValue();var c,d;
-// redraw range line
-this.o.pointers[0]&&this.o.pointers[1]&&(c=this.settings.vertical?{top:this.o.pointers[0].value.prc+"%",height:this.o.pointers[1].value.prc-this.o.pointers[0].value.prc+"%"}:{left:this.o.pointers[0].value.prc+"%",width:this.o.pointers[1].value.prc-this.o.pointers[0].value.prc+"%"},this.o.value.css(c),this.o.pointers[0].value.prc===this.o.pointers[1].value.prc&&this.o.pointers[1].ptr.css("z-index",0===this.o.pointers[0].value.prc?"3":"1")),this.o.pointers[0]&&!this.o.pointers[1]&&(d=this.o.pointers[0].value.prc-this.originValue,d>=0?this.o.indicators[3].css(this.settings.vertical?{height:d+"%"}:{width:d+"%"}):this.o.indicators[3].css(this.settings.vertical?{height:0}:{width:0}),this.o.pointers[0].value.prc<this.originValue?this.o.indicators[0].css(this.settings.vertical?{height:this.o.pointers[0].value.prc+"%"}:{width:this.o.pointers[0].value.prc+"%"}):this.o.indicators[0].css(this.settings.vertical?{height:this.originValue+"%"}:{width:this.originValue+"%"}));var e=this.nice(b.value.origin);this.settings.modelLabels&&(e=a.isFunction(this.settings.modelLabels)?this.settings.modelLabels(e):void 0!==this.settings.modelLabels[e]?this.settings.modelLabels[e]:e),this.o.labels[b.uid].value.html(e),
-// redraw position of labels
-this.redrawLabels(b)},e.prototype.redrawLabels=function(a){function b(a,b,d){b.margin=-b.label/2;var e=c.settings.vertical?c.sizes.domHeight:c.sizes.domWidth;if(c.sizes.domWidth){
-// left limit
-var f=b.border+b.margin;0>f&&(b.margin-=f),
-// right limit
-c.sizes.domWidth>0&&b.border+b.label/2>e?(b.margin=0,b.right=!0):b.right=!1}return c.settings.vertical?a.o.css({top:d+"%",marginLeft:"20px",marginTop:b.margin,bottom:"auto"}):a.o.css({left:d+"%",marginLeft:b.margin+"px",right:"auto"}),b.right&&c.sizes.domWidth>0&&(c.settings.vertical?a.o.css({top:"auto",bottom:0}):a.o.css({left:"auto",right:0})),b}var c=this,d=this.o.labels[a.uid],e=a.value.prc,
-// case hidden
-f=0===d.o[0].offsetWidth?7*d.o[0].textContent.length:d.o[0].offsetWidth;this.sizes.domWidth=this.domNode[0].clientWidth,this.sizes.domHeight=this.domNode[0].clientHeight;var g,h,i={label:c.settings.vertical?d.o[0].offsetHeight:f,right:!1,border:e*(c.settings.vertical?this.sizes.domHeight:this.sizes.domWidth)/100},j=0===a.uid?1:0;if(!this.settings.single&&!this.settings.vertical){
-// glue if near;
-g=this.o.labels[j],h=this.o.pointers[j];var k=this.o.labels[0],l=this.o.labels[1],m=this.o.pointers[0],n=this.o.pointers[1],o=n.ptr[0].offsetLeft-m.ptr[0].offsetLeft,p=this.nice(h.value.origin);if(k.o.css(this.css.visible),l.o.css(this.css.visible),p=this.getLabelValue(p),o+10<k.o[0].offsetWidth+l.o[0].offsetWidth){if(g.o.css(this.css.hidden),g.value.html(p),e=(h.value.prc-e)/2+e,h.value.prc!=a.value.prc){p=this.nice(this.o.pointers[0].value.origin);var q=this.nice(this.o.pointers[1].value.origin);p=this.getLabelValue(p),q=this.getLabelValue(q),d.value.html(p+"&nbsp;&ndash;&nbsp;"+q),i.label=d.o[0].offsetWidth,i.border=e*r/100}}else g.value.html(p),g.o.css(this.css.visible)}i=b(d,i,e);var r=c.settings.vertical?c.sizes.domHeight:c.sizes.domWidth;/* draw second label */
-if(g){
-// case hidden
-var s=0===d.o[0].offsetWidth?d.o[0].textContent.length/2*7:d.o[0].offsetWidth,t={label:c.settings.vertical?g.o[0].offsetHeight:s,right:!1,border:h.value.prc*this.sizes.domWidth/100};i=b(g,t,h.value.prc)}this.redrawLimits()},e.prototype.redrawLimits=function(){if(this.settings.limits){var b=[!0,!0],c=0;for(var d in this.o.pointers)if(!this.settings.single||0===d){var e=this.o.pointers[d],f=this.o.labels[e.uid],g=f.o[0].offsetLeft-this.sizes.domOffset.left,h=this.o.limits[0];g<h[0].clientWidth&&(b[0]=!1),h=this.o.limits[1],g+f.o[0].clientWidth>this.sizes.domWidth-h[0].clientWidth&&(b[1]=!1)}for(;c<b.length;c++)b[c]?// TODO animate
-a.element(this.o.limits[c]).addClass("animate-show"):a.element(this.o.limits[c]).addClass("animate-hidde")}},e.prototype.setValue=function(){var a=this.getValue();this.inputNode.attr("value",a),this.onstatechange.call(this,a,this.inputNode)},e.prototype.getValue=function(){if(!this.is.init)return!1;var b=this,c="";return a.forEach(this.o.pointers,function(a,d){void 0===a.value.prc||isNaN(a.value.prc)||(c+=(d>0?";":"")+b.prcToValue(a.value.prc))}),c},e.prototype.getLabelValue=function(b){return this.settings.modelLabels?a.isFunction(this.settings.modelLabels)?this.settings.modelLabels(b):void 0!==this.settings.modelLabels[b]?this.settings.modelLabels[b]:b:b},e.prototype.getPrcValue=function(){if(!this.is.init)return!1;var a="";
-// TODO remove jquery and see if % value is nice feature
-/*$.each(this.o.pointers, function(i){
- if(this.value.prc !== undefined && !isNaN(this.value.prc)) value += (i > 0 ? ";" : "") + this.value.prc;
- });*/
-return a},e.prototype.prcToValue=function(a){var b;if(this.settings.heterogeneity&&this.settings.heterogeneity.length>0)for(var c=this.settings.heterogeneity,d=0,e=this.settings.round?parseFloat(this.settings.from):parseInt(this.settings.from,10),f=this.settings.round?parseFloat(this.settings.to):parseInt(this.settings.to,10),g=0;g<=c.length;g++){var h;h=c[g]?c[g].split("/"):[100,f];var i=this.settings.round?parseFloat(h[0]):parseInt(h[0],10),j=this.settings.round?parseFloat(h[1]):parseInt(h[1],10);a>=d&&i>=a&&(b=e+(a-d)*(j-e)/(i-d)),d=i,e=j}else b=this.settings.from+a*this.settings.interval/100;return this.round(b)},e.prototype.valueToPrc=function(a,b){var c,d=this.settings.round?parseFloat(this.settings.from):parseInt(this.settings.from,10);if(this.settings.heterogeneity&&this.settings.heterogeneity.length>0)for(var e=this.settings.heterogeneity,f=0,g=0;g<=e.length;g++){var h;h=e[g]?e[g].split("/"):[100,this.settings.to];var i=this.settings.round?parseFloat(h[0]):parseInt(h[0],10),j=this.settings.round?parseFloat(h[1]):parseInt(h[1],10);a>=d&&j>=a&&(c=b?b.limits(f+(a-d)*(i-f)/(j-d)):this.limits(f+(a-d)*(i-f)/(j-d))),f=i,d=j}else c=b?b.limits(100*(a-d)/this.settings.interval):this.limits(100*(a-d)/this.settings.interval);return c},e.prototype.round=function(a){return a=Math.round(a/this.settings.step)*this.settings.step,a=this.settings.round?Math.round(a*Math.pow(10,this.settings.round))/Math.pow(10,this.settings.round):Math.round(a)},e}])}(angular),function(a,b){"use strict";a.module("angularAwesomeSlider").run(["$templateCache",function(a){a.put("ng-slider/slider-bar.tmpl.html",'<span ng-class="mainSliderClass" id="{{sliderTmplId}}"><table><tr><td><div class="jslider-bg"><i class="left"></i><i class="right"></i><i class="range"></i><i class="before"></i><i class="default"></i><i class="default"></i><i class="after"></i></div><div class="jslider-pointer"></div><div class="jslider-pointer jslider-pointer-to"></div><div class="jslider-label" ng-show="options.limits"><span ng-bind="limitValue(options.from)"></span>{{options.dimension}}</div><div class="jslider-label jslider-label-to" ng-show="options.limits"><span ng-bind="limitValue(options.to)"></span>{{options.dimension}}</div><div class="jslider-value"><span></span>{{options.dimension}}</div><div class="jslider-value jslider-value-to"><span></span>{{options.dimension}}</div><div class="jslider-scale" id="{{sliderScaleDivTmplId}}"></div></td></tr></table></span>')}])}(window.angular); \ No newline at end of file
diff --git a/www/lib/angular-awesome-slider/dist/css/angular-awesome-slider.min.css b/www/lib/angular-awesome-slider/dist/css/angular-awesome-slider.min.css
deleted file mode 100644
index d5ded6b2..00000000
--- a/www/lib/angular-awesome-slider/dist/css/angular-awesome-slider.min.css
+++ /dev/null
@@ -1,7 +0,0 @@
-/**
-* @license angular-awesome-slider - v2.4.4
-* (c) 2013 Julien VALERY https://github.com/darul75/angular-awesome-slider
-* License: MIT
-**/
-
-.jslider{position:relative;top:.6em;cursor:pointer;display:block;width:100%;height:1em;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.jslider.disabled{opacity:.5}.jslider table{border-collapse:collapse;border:0;width:100%}.jslider table td,.jslider table th{width:100%;border:0;padding:0;text-align:left;vertical-align:top}.jslider div.jslider-bg i,.jslider div.jslider-pointer{background:url(../img/jslider.png) no-repeat 0 0}.jslider div.jslider-bg{position:relative}.jslider div.jslider-bg i{position:absolute;top:0;height:5px}.jslider div.jslider-bg i.left{left:0;width:50%;background-position:0 0}.jslider div.jslider-bg i.right{left:50%;width:50%;background-position:right 0}.jslider div.jslider-bg i.range{position:absolute;top:0;left:20%;width:60%;height:5px;z-index:1;background-repeat:repeat-x;background-position:0 -40px}.jslider div.jslider-bg i.default{left:0;width:1px;z-index:1;background-color:#185f83}.jslider.jslider-single div.jslider-pointer-to,.jslider.jslider-single div.jslider-value-to,.jslider.jslider-single div.jslider-bg .v,.jslider.jslider-single .jslider-limitless .jslider-label{display:none}.jslider div.jslider-pointer{position:absolute;top:-4px;left:20%;z-index:2;width:15px;height:15px;background-position:2px -60px;margin-left:-8px;cursor:pointer;cursor:hand}.jslider div.jslider-pointer.jslider-pointer-to{left:80%}.jslider div.jslider-pointer.jslider-pointer-hover{background-position:-18px -60px}.jslider div.jslider-label small,.jslider div.jslider-value small{position:relative;top:-.4em}.jslider div.jslider-label{position:absolute;top:-18px;left:0;padding:0 2px;opacity:.4;color:#000;font-size:9px;line-height:12px;white-space:nowrap}.jslider div.jslider-label.jslider-label-to{left:auto;right:0}.jslider div.jslider-value{position:absolute;top:-19px;left:0;padding:1px 2px 0;background:#fff;font-size:9px;line-height:12px;white-space:nowrap;-moz-border-radius:2px;-webkit-border-radius:2px;-o-border-radius:2px;border-radius:2px}.jslider div.jslider-value.jslider-value-to{left:80%}.jslider div.jslider-scale{position:relative;top:9px}.jslider div.jslider-scale span{position:absolute;height:5px;border-left:1px solid #999;font-size:0}.jslider div.jslider-scale ins{position:absolute;top:5px;left:0;font-size:9px;text-decoration:none;color:#999}.jslider.vertical{display:block;width:17px;height:100%;position:relative;top:.6em;font-family:Arial,sans-serif}.jslider.vertical table{height:100%}.jslider.vertical.sliderCSS .jslider-bg i,.jslider.vertical.jslider-pointer{background-color:silver;background-image:none}.jslider.vertical div.jslider-bg i,.jslider.vertical .jslider-pointer{background:url(../img/jslider.vertical.png) no-repeat 0 0}.jslider.vertical div.jslider-bg{position:relative;height:100%}.jslider.vertical div.jslider-bg i{position:absolute;top:0;width:5px;font-size:0}.jslider.vertical div.jslider-bg i.before{left:50%;background:0 0}.jslider.vertical div.jslider-bg i.left{top:0;left:50%;height:50%;background-position:right 0;background-repeat:repeat-y}.jslider.vertical div.jslider-bg i.right{top:50%;left:50%;height:50%;background-position:right 0;background-repeat:repeat-y}.jslider.vertical div.jslider-bg i.range{position:absolute;top:0;left:50%;width:60%;height:100%;z-index:1;background-repeat:repeat-y;background-position:-36px 0}.jslider.vertical div.jslider-bg i.default{left:50%;width:5px;height:1px;z-index:1;background-color:#185f83}.jslider.vertical div.jslider-pointer{left:62%;background-position:-7px -1px}.jslider.vertical div.jslider-pointer.jslider-pointer-hover{background-position:-7px -21px}.jslider.vertical div.jslider-pointer.jslider-pointer-to{left:62%}.jslider.vertical div.jslider-pointer.jslider-pointer-to.jslider-pointer-hover{background-position:-7px -21px}.jslider.vertical div.jslider-label{top:-5px;margin-left:22px}.jslider.vertical div.jslider-label.jslider-label-to{top:100%;left:inherit;right:inherit;margin-top:-5px}.jslider.vertical div.jslider-value{top:0;left:0}.jslider.vertical div.jslider-value-to{top:80%;left:0}.jslider.vertical div.jslider-scale{position:inherit}.jslider.vertical div.jslider-scale span{position:absolute;width:5px;height:1px;border-left:0;font-size:0;border-top:1px solid #999}.jslider.vertical div.jslider-scale ins{position:absolute;left:0;top:5px;font-size:9px;text-decoration:none;color:#999}.jslider.sliderCSS div.jslider-bg i.left{left:0;width:50%;background-color:silver;background-image:none}.jslider.sliderCSS div.jslider-bg i.right{width:50%;left:50%;background-color:silver;background-image:none}.jslider.sliderCSS div.jslider-bg i.before{left:0;width:1px;background-color:rgba(92,98,203,.89);background-image:none}.jslider.sliderCSS div.jslider-bg i.default{left:0;width:1px;z-index:1;background-color:#fff;background-image:none}.jslider.sliderCSS div.jslider-bg i.after{left:0;background-color:#0e1773;background-image:none}.jslider.sliderCSS div.jslider-bg i.range{position:absolute;top:0;left:20%;width:60%;height:5px;z-index:1;background-image:none;background-color:#777575}.jslider.sliderCSS div.jslider-pointer{top:-3px;left:15px;width:10px;height:10px;margin-left:-5px;background-color:silver;background-color:#615959;border-radius:50%}.jslider.sliderCSS div.jslider-bg i,.jslider.sliderCSS div.jslider-pointer{background:0 0}.jslider.sliderCSS.vertical td{height:100%}.jslider.sliderCSS.vertical div.jslider-bg i{left:50%;width:5px}.jslider.sliderCSS.vertical div.jslider-bg i.left{top:0;height:50%;background-color:silver;background-image:none}.jslider.sliderCSS.vertical div.jslider-bg i.right{height:50%;top:50%;background-color:silver;background-image:none}.jslider.sliderCSS.vertical div.jslider-bg i.range{height:100%;z-index:1;background-color:#777575;background-image:none}.jslider.sliderCSS.vertical div.jslider-bg i.before{background-color:rgba(92,98,203,.89);background-image:none}.jslider.sliderCSS.vertical div.jslider-bg i.default{height:1px;background-color:#fff;background-image:none;z-index:2}.jslider.sliderCSS.vertical div.jslider-bg i.after{background-color:#0e1773;background-image:none}.jslider.sliderCSS.vertical div.jslider-bg i,.jslider.sliderCSS.vertical div.jslider-pointer{background:0 0}.jslider.sliderCSS.vertical div.jslider-pointer{left:50%;width:10px;height:10px;background-color:#615959;border-radius:50%;margin-left:-3px}.jslider.sliderCSS.vertical div.jslider-pointer.jslider-pointer-to{left:50%}.jslider.jslider_round div.jslider-bg i,.jslider.jslider_round div.jslider-pointer{background:url(../img/jslider.round.png) no-repeat 0 0}.jslider.jslider_round div.jslider-bg i{background-position:0 -20px}.jslider.jslider_round div.jslider-bg i.default{background-color:#C2C7CA}.jslider.jslider_round div.jslider-bg i.range{z-index:1;background-position:0 -40px}.jslider.jslider_round div.jslider-pointer{top:-6px;width:20px;height:17px;background-position:0 -60px;z-index:2}.jslider.jslider_round div.jslider-pointer.jslider-pointer-hover{background-position:-20px -60px}.jslider.jslider_round.vertical div.jslider-bg i,.jslider.jslider_round.vertical div.jslider-pointer{background:url(../img/jslider.round.vertical.png) no-repeat 0 0}.jslider.jslider_round.vertical div.jslider-bg i{background-position:right 0}.jslider.jslider_round.vertical div.jslider-bg i.range{background-position:-37px 0}.jslider.jslider_round.vertical div.jslider-bg i.before,.jslider.jslider_round.vertical div.jslider-bg i.after{background:0 0}.jslider.jslider_round.vertical div.jslider-bg i.default{background-color:#c2c7ca}.jslider.jslider_round.vertical div.jslider-pointer{top:-6px;width:20px;height:17px;background-position:-4px -3px}.jslider.jslider_round.vertical div.jslider-pointer.jslider-pointer-hover{background-position:-4px -23px}.jslider.jslider_round.vertical div.jslider-pointer.jslider-value-to{left:80%}.jslider.jslider_round.vertical div.jslider-value{left:0}.jslider.jslider_blue .jslider-bg i,.jslider.jslider_blue .jslider-pointer{background:url(../img/jslider.blue.png) no-repeat 0 0}.jslider.jslider_blue .jslider-bg i{background-position:2px -20px}.jslider.jslider_blue .jslider-bg i.default{background-color:#c2c7ca}.jslider.jslider_blue .jslider-bg i.range{z-index:1;background-position:0 -40px}.jslider.jslider_blue div.jslider-pointer{top:-6px;width:20px;height:17px;background-position:2px -60px;z-index:2}.jslider.jslider_blue div.jslider-pointer.jslider-pointer-hover{background-position:-20px -60px}.jslider.jslider_blue.vertical div.jslider-bg i,.jslider.jslider_blue.vertical div.jslider-pointer{background:url(../img/jslider.blue.vertical.png) no-repeat 0 0}.jslider.jslider_blue.vertical div.jslider-bg i{background-position:right 0}.jslider.jslider_blue.vertical div.jslider-bg i.range{background-position:-37px 0}.jslider.jslider_blue.vertical div.jslider-bg i.before,.jslider.jslider_blue.vertical div.jslider-bg i.after{background:0 0}.jslider.jslider_blue.vertical div.jslider-bg i.default{background-color:#c2c7ca}.jslider.jslider_blue.vertical div.jslider-pointer{top:-6px;width:20px;height:17px;background-position:-7px 0}.jslider.jslider_blue.vertical div.jslider-pointer.jslider-pointer-hover{background-position:-7px -20px}.jslider.jslider_blue.vertical div.jslider-value{left:0}.jslider.jslider_plastic .jslider-bg i,.jslider.jslider_plastic .jslider-pointer{background:url(../img/jslider.plastic.png) no-repeat 0 0}.jslider.jslider_plastic .jslider-bg i{background-position:2px -20px}.jslider.jslider_plastic .jslider-bg i.default{background-color:#c2c7ca}.jslider.jslider_plastic .jslider-bg i.range{z-index:1;background-position:0 -40px}.jslider.jslider_plastic .jslider-pointer{z-index:2;width:20px;height:17px;top:-4px;background-position:2px -60px}.jslider.jslider_plastic .jslider-pointer.jslider-pointer-hover{background-position:-18px -60px}.jslider.jslider_plastic.vertical div.jslider-bg i,.jslider.jslider_plastic.vertical div.jslider-pointer{background:url(../img/jslider.plastic.vertical.png) no-repeat 0 0}.jslider.jslider_plastic.vertical div.jslider-bg i{background-position:right 0}.jslider.jslider_plastic.vertical div.jslider-bg i.range{background-position:-35px 0}.jslider.jslider_plastic.vertical div.jslider-bg i.before,.jslider.jslider_plastic.vertical div.jslider-bg i.after{background:0 0}.jslider.jslider_plastic.vertical div.jslider-bg i.default{background-color:#c2c7ca}.jslider.jslider_plastic.vertical div.jslider-pointer{top:-6px;margin-left:-6px;width:20px;height:17px;background-position:-7px -1px}.jslider.jslider_plastic.vertical div.jslider-pointer.jslider-pointer-hover{background-position:-7px -21px} \ No newline at end of file
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.blue.png b/www/lib/angular-awesome-slider/dist/img/jslider.blue.png
deleted file mode 100644
index 454d727e..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.blue.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.blue.vertical.png b/www/lib/angular-awesome-slider/dist/img/jslider.blue.vertical.png
deleted file mode 100644
index dceeffc8..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.blue.vertical.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.plastic.png b/www/lib/angular-awesome-slider/dist/img/jslider.plastic.png
deleted file mode 100644
index cbb23263..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.plastic.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.plastic.vertical.png b/www/lib/angular-awesome-slider/dist/img/jslider.plastic.vertical.png
deleted file mode 100644
index 00d6dfa7..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.plastic.vertical.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.png b/www/lib/angular-awesome-slider/dist/img/jslider.png
deleted file mode 100644
index 08a1b450..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.round.plastic.png b/www/lib/angular-awesome-slider/dist/img/jslider.round.plastic.png
deleted file mode 100644
index de166b47..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.round.plastic.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.round.png b/www/lib/angular-awesome-slider/dist/img/jslider.round.png
deleted file mode 100644
index 071a5dba..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.round.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.round.vertical.png b/www/lib/angular-awesome-slider/dist/img/jslider.round.vertical.png
deleted file mode 100644
index 186d1924..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.round.vertical.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/dist/img/jslider.vertical.png b/www/lib/angular-awesome-slider/dist/img/jslider.vertical.png
deleted file mode 100644
index 5df3c1a0..00000000
--- a/www/lib/angular-awesome-slider/dist/img/jslider.vertical.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/package.json b/www/lib/angular-awesome-slider/package.json
deleted file mode 100644
index 45b0f019..00000000
--- a/www/lib/angular-awesome-slider/package.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "name": "angular-awesome-slider",
- "description": "AngularJS directive slider control.",
- "version": "2.4.4",
- "license": "MIT",
- "author": {
- "name": "Julien Valéry",
- "email": "darul75@gmail.com"
- },
- "filename": "./src/ng-slider.js",
- "main": "dist/angular-awesome-slider.js",
- "homepage": "https://github.com/darul75/angular-awesome-slider",
- "repository": {
- "type": "git",
- "url": "https://github.com/darul75/angular-awesome-slider.git"
- },
- "keywords": [
- "angular",
- "slider",
- "control",
- "ui"
- ],
- "bugs": {
- "url": "https://github.com/darul75/angular-awesome-slider/issues"
- },
- "scripts": {
- "test": "grunt test-continuous"
- },
- "dependencies": {
- },
- "devDependencies": {
- "grunt-bower-task": "0.4.0",
- "grunt-contrib-copy": "~0.4.1",
- "grunt-contrib-concat": "^0.5.1",
- "grunt-contrib-cssmin": "~0.6.0",
- "grunt-contrib-jshint": "latest",
- "grunt-contrib-less": "~0.6.4",
- "grunt-contrib-uglify": "latest",
- "grunt-karma": "~0.8.2",
- "karma": "0.12.31",
- "karma-chrome-launcher": "^0.1.3",
- "karma-firefox-launcher": "~0.1.3",
- "karma-jasmine": "^0.1.5",
- "karma-phantomjs-launcher": "^0.1.4"
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/core/config/constants.js b/www/lib/angular-awesome-slider/src/core/config/constants.js
deleted file mode 100644
index 1bda35ef..00000000
--- a/www/lib/angular-awesome-slider/src/core/config/constants.js
+++ /dev/null
@@ -1,32 +0,0 @@
-(function(angular){
- 'use strict';
- angular.module('angularAwesomeSlider').constant('sliderConstants', {
- SLIDER: {
- settings: {
- from: 1,
- to: 40,
- step: 1,
- smooth: true,
- limits: false,
- round: false,
- value: "3",
- dimension: "",
- vertical: false,
- calculate: false,
- onstatechange: false,
- callback: false,
- realtime: false
- },
- className: "jslider",
- selector: ".jslider-",
- css: {
- visible : { visibility: "visible" },
- hidden : { visibility: "hidden" }
- }
- },
- EVENTS: {
-
- }
- });
-
-}(angular)); \ No newline at end of file
diff --git a/www/lib/angular-awesome-slider/src/core/index.js b/www/lib/angular-awesome-slider/src/core/index.js
deleted file mode 100644
index 3669e1f2..00000000
--- a/www/lib/angular-awesome-slider/src/core/index.js
+++ /dev/null
@@ -1,195 +0,0 @@
-(function (angular) {
- 'use strict';
-
- angular.module('angularAwesomeSlider', [])
- // DIRECTIVE
- .directive('slider', [
- '$compile', '$templateCache','$timeout', '$window', 'slider',
- function(compile, templateCache, timeout, win, Slider) {
- return {
- restrict : 'AE',
- require: '?ngModel',
- scope: { options:'=', ngDisabled: '='},
- priority: 1,
- link : function(scope, element, attrs, ngModel) {
-
- if(!ngModel) return;
-
- if (!scope.options)
- throw new Error('You must provide a value for "options" attribute.');
-
- var injector = angular.injector();
-
- // options as inline variable
- if (angular.isString(scope.options)) {
- scope.options = angular.toJson(scope.options);
- }
-
- scope.mainSliderClass = 'jslider';
- scope.mainSliderClass += scope.options.skin ? ' jslider_' + scope.options.skin : ' ';
- scope.mainSliderClass += scope.options.vertical ? ' vertical ' : '';
- scope.mainSliderClass += scope.options.css ? ' sliderCSS' : '';
- scope.mainSliderClass += scope.options.className ? ' ' + scope.options.className : '';
-
- // handle limit labels visibility
- scope.options.limits = angular.isDefined(scope.options.limits) ? scope.options.limits : true;
-
- // compile template
- element.after(compile(templateCache.get('ng-slider/slider-bar.tmpl.html'))(scope, function(clonedElement, scope) {
- scope.tmplElt = clonedElement;
- }));
-
- // init
-
- var initialized = false;
-
- var init = function(value) {
- scope.from = ''+scope.options.from;
- scope.to = ''+scope.options.to;
- if (scope.options.calculate && angular.isFunction(scope.options.calculate)) {
- scope.from = scope.options.calculate(scope.from);
- scope.to = scope.options.calculate(scope.to);
- }
-
- var OPTIONS = {
- from: !scope.options.round ? parseInt(scope.options.from, 10) : parseFloat(scope.options.from),
- to: !scope.options.round ? parseInt(scope.options.to, 10) : parseFloat(scope.options.to),
- step: scope.options.step,
- smooth: scope.options.smooth,
- limits: scope.options.limits,
- round: scope.options.round || false,
- value: value || ngModel.$viewValue,
- dimension: '',
- scale: scope.options.scale,
- modelLabels: scope.options.modelLabels,
- vertical: scope.options.vertical,
- css: scope.options.css,
- className: scope.options.className,
- realtime: scope.options.realtime,
- cb: forceApply,
- threshold: scope.options.threshold,
- heterogeneity: scope.options.heterogeneity
- };
-
- OPTIONS.calculate = scope.options.calculate || undefined;
- OPTIONS.onstatechange = scope.options.onstatechange || undefined;
-
- // slider
- scope.slider = !scope.slider ? slidering(element, scope.tmplElt, OPTIONS) : scope.slider.init(element, scope.tmplElt, OPTIONS);
-
- if (!initialized) {
- initListener();
- }
-
- // scale
- var scaleDiv = scope.tmplElt.find('div')[7];
- angular.element(scaleDiv).html(scope.slider.generateScale());
- scope.slider.drawScale(scaleDiv);
-
- if (scope.ngDisabled) {
- disabler(scope.ngDisabled);
- }
-
- initialized = true;
- };
-
- function initListener() {
- // window resize listener
- angular.element(win).bind('resize', function(event) {
- scope.slider.onresize();
- });
- }
-
- // model -> view
- ngModel.$render = function () {
- //elm.html(ctrl.$viewValue);
- var singleValue = false;
-
- if (!ngModel.$viewValue && ngModel.$viewValue !== 0) {
- return;
- }
-
- if (typeof(ngModel.$viewValue) === 'number') {
- ngModel.$viewValue = ''+ngModel.$viewValue;
- }
-
- if( !ngModel.$viewValue.split(';')[1]) {
- scope.mainSliderClass += ' jslider-single';
- }
- else {
- scope.mainSliderClass = scope.mainSliderClass.replace(' jslider-single', '');
- }
-
- if (scope.slider) {
- var vals = ngModel.$viewValue.split(";");
- scope.slider.getPointers()[0].set(vals[0], true);
- if (vals[1]) {
- scope.slider.getPointers()[1].set(vals[1], true);
- //if moving left to right with two pointers
- //we need to "finish" moving the first
- if(parseInt(vals[1]) > parseInt(vals[0])){
- scope.slider.getPointers()[0].set(vals[0], true);
- }
- }
- }
-
- };
-
- scope.$on('slider-value-update', function(e, msg){
- init(msg.value);
- timeout(function(){
- scope.slider.redrawPointers();
- });
- });
-
- // view -> model
- var forceApply = function(value, released) {
- if (scope.disabled)
- return;
- scope.$apply(function() {
- ngModel.$setViewValue(value);
- });
- if (scope.options.callback){
- scope.options.callback(value, released);
- }
- };
-
- // watch options
- scope.$watch('options', function(value) {
- timeout(function(){
- init();
- });
- }, scope.watchOptions || true);
-
- // disabling
- var disabler = function(value) {
- scope.disabled = value;
- if (scope.slider) {
- scope.tmplElt.toggleClass('disabled');
- scope.slider.disable(value);
- }
- };
-
- scope.$watch('ngDisabled', function(value) {
- disabler(value);
- });
-
- scope.limitValue = function(value) {
- if (scope.options.modelLabels) {
- if (angular.isFunction(scope.options.modelLabels)) {
- return scope.options.modelLabels(value);
- }
- return scope.options.modelLabels[value] !== undefined ? scope.options.modelLabels[value] : value;
- }
- return value;
- };
-
- var slidering = function( inputElement, element, settings) {
- return new Slider( inputElement, element, settings );
- };
- }
- };
- }])
-.config(function() {})
-.run(function() {});
-})(angular);
diff --git a/www/lib/angular-awesome-slider/src/core/model/draggable.factory.js b/www/lib/angular-awesome-slider/src/core/model/draggable.factory.js
deleted file mode 100644
index 46cd4d52..00000000
--- a/www/lib/angular-awesome-slider/src/core/model/draggable.factory.js
+++ /dev/null
@@ -1,192 +0,0 @@
-(function(angular){
- 'use strict';
-
- angular.module('angularAwesomeSlider').factory('sliderDraggable', ['sliderUtils', function(utils) {
-
- function Draggable(){
- this._init.apply( this, arguments );
- }
-
- Draggable.prototype.oninit = function(){
- };
-
- Draggable.prototype.events = function(){
- };
-
- Draggable.prototype.onmousedown = function(){
- this.ptr.css({ position: 'absolute' });
- };
-
- Draggable.prototype.onmousemove = function( evt, x, y ){
- this.ptr.css({ left: x, top: y });
- };
-
- Draggable.prototype.onmouseup = function(){};
-
- Draggable.prototype.isDefault = {
- drag: false,
- clicked: false,
- toclick: true,
- mouseup: false
- };
-
- Draggable.prototype._init = function() {
- if( arguments.length > 0 ){
- this.ptr = arguments[0];
- this.label = arguments[3];
- this.parent = arguments[2];
-
- if (!this.ptr)
- return;
- //this.outer = $(".draggable-outer");
-
- this.is = {};
- angular.extend( this.is, this.isDefault );
- var offset = utils.offset(this.ptr);
-
- this.d = {
- left: offset.left,
- top: offset.top,
- width: this.ptr[0].clientWidth,
- height: this.ptr[0].clientHeight
- };
-
- this.oninit.apply( this, arguments );
-
- this._events();
- }
- };
-
- Draggable.prototype._getPageCoords = function( event ){
- if( event.targetTouches && event.targetTouches[0] ){
- return { x: event.targetTouches[0].pageX, y: event.targetTouches[0].pageY };
- } else
- return { x: event.pageX, y: event.pageY };
- };
-
- Draggable.prototype._bindEvent = function( ptr, eventType, handler ){
- var self = this;
-
- // PS need to bind to touch and non-touch events for devices which support both
- if( this.supportTouches_ ){
- ptr[0].addEventListener( this.events_[ eventType ].touch, handler, false );
- }
-
- ptr.bind( this.events_[ eventType ].nonTouch, handler );
- };
-
- Draggable.prototype._events = function(){
- var self = this;
-
- this.supportTouches_ = 'ontouchend' in document;
- this.events_ = {
- 'click': { touch : 'touchstart', nonTouch : 'click' },
- 'down': { touch : 'touchstart', nonTouch : 'mousedown' },
- 'move': { touch : 'touchmove', nonTouch : 'mousemove' },
- 'up' : { touch : 'touchend', nonTouch: 'mouseup'},
- 'mousedown' : { touch : 'mousedown', nonTouch : 'mousedown' }
- };
-
- var documentElt = angular.element(window.document);
-
- this._bindEvent(documentElt, 'move', function(event) {
- if(self.is.drag) {
- event.stopPropagation();
- event.preventDefault();
- if (!self.parent.disabled) {
- self._mousemove(event);
- }
- }
- });
- this._bindEvent(documentElt, 'down', function(event) {
- if(self.is.drag) {
- event.stopPropagation();
- event.preventDefault();
- }
- });
- this._bindEvent(documentElt, 'up', function(event) {
- self._mouseup(event);
- });
-
- this._bindEvent( this.label, 'down', function(event) {
- self._mousedown( event );
- return false;
- });
- this._bindEvent( this.label, 'up', function(event) {
- self._mouseup( event );
- });
-
- this._bindEvent( this.ptr, 'down', function(event) {
- self._mousedown( event );
- return false;
- });
- this._bindEvent( this.ptr, 'up', function(event) {
- self._mouseup( event );
- });
-
- // TODO see if needed
- this.events();
- };
-
- Draggable.prototype._mousedown = function( evt ){
- this.is.drag = true;
- this.is.clicked = false;
- this.is.mouseup = false;
-
- var coords = this._getPageCoords( evt );
- this.cx = coords.x - this.ptr[0].offsetLeft;
- this.cy = coords.y - this.ptr[0].offsetTop;
-
- angular.extend(this.d, {
- left: coords.x,
- top: coords.y,
- width: this.ptr[0].clientWidth,
- height: this.ptr[0].clientHeight
- });
-
- if( this.outer && this.outer.get(0) ){
- this.outer.css({ height: Math.max(this.outer.height(), $(document.body).height()), overflow: 'hidden' });
- }
-
- this.onmousedown( evt );
- };
-
- Draggable.prototype._mousemove = function( evt ){
- this.is.toclick = false;
- var coords = this._getPageCoords( evt );
- this.onmousemove( evt, coords.x - this.cx, coords.y - this.cy );
- };
-
- Draggable.prototype._mouseup = function( evt ){
- var oThis = this;
-
- if( this.is.drag ){
- this.is.drag = false;
-
- var browser = utils.browser();
-
- if( this.outer && this.outer.get(0) ) {
-
- if( browser === 'mozilla' ){
- this.outer.css({ overflow: "hidden" });
- } else {
- this.outer.css({ overflow: "visible" });
- }
-
- // TODO finish browser detection and this case, remove following line
- this.outer.css({ height: "auto" });
- // if( browser === 'ie' && $.browser.version == '6.0' ){
- // this.outer.css({ height: "100%" });
- // } else {
- // this.outer.css({ height: "auto" });
- // }
-
- }
-
- this.onmouseup( evt );
- }
- };
-
- return Draggable;
- }]);
-}(angular));
diff --git a/www/lib/angular-awesome-slider/src/core/model/pointer.factory.js b/www/lib/angular-awesome-slider/src/core/model/pointer.factory.js
deleted file mode 100644
index 41d31fd0..00000000
--- a/www/lib/angular-awesome-slider/src/core/model/pointer.factory.js
+++ /dev/null
@@ -1,100 +0,0 @@
-(function(angular){
- 'use strict';
-
- angular.module('angularAwesomeSlider').factory('sliderPointer', ['sliderDraggable', 'sliderUtils', function(Draggable, utils) {
-
- function SliderPointer() {
- Draggable.apply(this, arguments);
- }
-
- SliderPointer.prototype = new Draggable();
-
- SliderPointer.prototype.oninit = function( ptr, id, vertical, label, _constructor ) {
- this.uid = id;
- this.parent = _constructor;
- this.value = {};
- this.vertical = vertical;
- this.settings = angular.copy(_constructor.settings);
- this.threshold = this.settings.threshold;
- };
-
- SliderPointer.prototype.onmousedown = function( evt ) {
- var off = utils.offset(this.parent.domNode);
-
- var offset = {
- left: off.left,
- top: off.top,
- width: this.parent.domNode[0].clientWidth,
- height: this.parent.domNode[0].clientHeight
- };
-
- this._parent = {
- offset: offset,
- width: offset.width,
- height: offset.height
- };
-
- this.ptr.addClass('jslider-pointer-hover');
- };
-
- SliderPointer.prototype.onmousemove = function( evt, x, y ){
- var coords = this._getPageCoords( evt );
- this._set(!this.vertical ? this.calc( coords.x ) : this.calc( coords.y ));
- if( this.settings.realtime && this.settings.cb && angular.isFunction(this.settings.cb) )
- this.settings.cb.call( this.parent, this.parent.getValue(), !this.is.drag );
- };
-
- SliderPointer.prototype.onmouseup = function(evt){
- if( this.settings.cb && angular.isFunction(this.settings.cb))
- this.settings.cb.call( this.parent, this.parent.getValue(), !this.is.drag );
-
- if (!this.is.drag)
- this.ptr.removeClass('jslider-pointer-hover');
- };
-
- SliderPointer.prototype.limits = function( x ){
- return this.parent.limits(x, this);
- };
-
- SliderPointer.prototype.calc = function( coords ){
- return !this.vertical ?
- this.limits(((coords-this._parent.offset.left)*100)/this._parent.width)
- :
- this.limits(((coords-this._parent.offset.top)*100)/this._parent.height);
- };
-
- SliderPointer.prototype.set = function( value, opt_origin ){
- this.value.origin = this.parent.round(value);
- this._set(this.parent.valueToPrc(value,this), opt_origin);
- };
-
- SliderPointer.prototype._set = function( prc, opt_origin ){
- this.allowed = true;
-
- var oldOrigin = this.value.origin;
- var oldPerc = this.value.prc;
-
- this.value.origin = this.parent.prcToValue(prc);
- this.value.prc = prc;
-
- // check threshold
- if (this.threshold && this.parent.o.pointers[1]) {
- var v1 = this.value.origin,
- v2 = this.parent.o.pointers[this.uid === 0 ? 1:0].value.origin;
- this.allowed = Math.abs(v2 - v1) >= this.threshold;
- if (!this.allowed && oldOrigin !== undefined && oldPerc !== undefined){
- this.value.origin = oldOrigin;
- this.value.prc = oldPerc;
- }
- }
-
- if (!this.vertical)
- this.ptr.css({left:this.value.prc+'%'});
- else
- this.ptr.css({top:this.value.prc+'%', marginTop: -5});
- this.parent.redraw(this);
- };
-
- return SliderPointer;
- }]);
-}(angular));
diff --git a/www/lib/angular-awesome-slider/src/core/model/slider.factory.js b/www/lib/angular-awesome-slider/src/core/model/slider.factory.js
deleted file mode 100644
index 2bc9ab5b..00000000
--- a/www/lib/angular-awesome-slider/src/core/model/slider.factory.js
+++ /dev/null
@@ -1,686 +0,0 @@
-(function(angular){
- 'use strict';
-
- angular.module('angularAwesomeSlider').factory('slider', ['sliderPointer', 'sliderConstants', 'sliderUtils', function(SliderPointer, sliderConstants, utils) {
-
- function Slider(){
- return this.init.apply(this, arguments);
- }
-
- Slider.prototype.init = function( inputNode, templateNode, settings ){
- this.settings = settings;
- this.inputNode = inputNode;
- this.inputNode.addClass('ng-hide');
-
- this.settings.interval = this.settings.to-this.settings.from;
-
- if(this.settings.calculate && angular.isFunction(this.settings.calculate)) {
- this.nice = this.settings.calculate;
- }
-
- if(this.settings.onstatechange && angular.isFunction(this.settings.onstatechange)) {
- this.onstatechange = this.settings.onstatechange;
- }
-
- this.css = sliderConstants.SLIDER.css;
- this.is = {init: false};
- this.o = {};
- this.initValue = {};
- this.isAsc = settings.from < settings.to;
-
- this.create(templateNode);
-
- return this;
- };
-
- Slider.prototype.create = function( templateNode ){
- // set skin class
- // if( this.settings.skin && this.settings.skin.length > 0 )
- // this.setSkin( this.settings.skin );
-
- var self = this;
-
- this.domNode = templateNode;
-
- var divs = this.domNode.find('div'),
- is = this.domNode.find('i'),
- angElt = angular.element,
- angExt = angular.extend,
- angForEach = angular.forEach,
- pointer1 = angElt(divs[1]),
- pointer2 = angElt(divs[2]),
- pointerLabel1 = angElt(divs[5]),
- pointerLabel2 = angElt(divs[6]),
- indicatorLeft = angElt(is[0]),
- indicatorRight = angElt(is[1]),
- range = angElt(is[2]),
- indicator1 = angElt(is[3]),
- indicator2 = angElt(is[4]),
- indicator3 = angElt(is[5]),
- indicator4 = angElt(is[6]),
- labels = [pointerLabel1, pointerLabel2],
- pointers = [pointer1, pointer2],
- off = utils.offset(this.domNode),
- offset = {
- left: off.left,
- top: off.top,
- width: this.domNode[0].clientWidth,
- height: this.domNode[0].clientHeight
- },
- values = self.settings.value.split(';');
-
- this.sizes = {
- domWidth: this.domNode[0].clientWidth,
- domHeight: this.domNode[0].clientHeight,
- domOffset: offset
- };
-
- // find some objects
- angExt(this.o, {
- pointers: {},
- labels: { 0: { o : pointerLabel1 }, 1: { o : pointerLabel2 } },
- limits: { 0: angular.element(divs[3]), 1: angular.element(divs[4]) },
- indicators: { 0: indicator1, 1: indicator2, 2: indicator3, 3: indicator4 }
- });
-
- angExt(this.o.labels[0], {
- value: this.o.labels[0].o.find("span")
- });
-
- angExt(this.o.labels[1], {
- value: this.o.labels[1].o.find("span")
- });
-
- // single pointer
- this.settings.single = !self.settings.value.split(";")[1];
-
- if (this.settings.single) {
- range.addClass('ng-hide');
- } else {
- range.removeClass('ng-hide');
- }
-
- angForEach(pointers, function(pointer, key) {
- self.settings = angular.copy(self.settings);
-
- var value = values[key],
- prev,
- prevValue,
- test,
- value1,
- offset;
-
- if(value) {
- self.o.pointers[key] = new SliderPointer(pointer, key, self.settings.vertical, labels[key], self);
-
- prev = values[key-1];
- prevValue = prev ? parseInt(prev, 10 ) : undefined;
-
- value = self.settings.round ? parseFloat(value) : parseInt(value, 10);
-
- if( prev && self.isAsc ? value < prevValue : value > prevValue ) {
- value = prev;
- }
-
- // limit threshold adjust
-/* test = self.isAsc ? value < self.settings.from : value > self.settings.from,
- value1 = test ? self.settings.from : value; */
-
- test = self.isAsc ? value > self.settings.to : value < self.settings.to;
- value1 = test ? self.settings.to : value;
-
- self.o.pointers[key].set( value1, true );
-
- // reinit position d
- offset = utils.offset(self.o.pointers[key].ptr);
-
- self.o.pointers[key].d = {
- left: offset.left,
- top: offset.top
- };
- }
- });
-
- self.domNode.bind('mousedown', self.clickHandler.apply(self));
-
- this.o.value = angElt(this.domNode.find("i")[2]);
- this.is.init = true;
-
- // CSS SKIN
- if (this.settings.css) {
- indicatorLeft.css(this.settings.css.background ? this.settings.css.background : {});
- indicatorRight.css(this.settings.css.background ? this.settings.css.background : {});
- if (!this.o.pointers[1]) {
- indicator1.css(this.settings.css.before ? this.settings.css.before : {});
- indicator4.css(this.settings.css.after ? this.settings.css.after : {});
- }
-
- indicator2.css(this.settings.css.default ? this.settings.css.default : {});
- indicator3.css(this.settings.css.default ? this.settings.css.default : {});
-
- range.css(this.settings.css.range ? this.settings.css.range : {});
- pointer1.css(this.settings.css.pointer ? this.settings.css.pointer : {});
- pointer2.css(this.settings.css.pointer ? this.settings.css.pointer : {});
- }
-
- this.redrawPointers();
- };
-
- Slider.prototype.clickHandler = function() {
- var self = this;
-
- // in case of showing/hiding
- var resetPtrSize = function( ptr ) {
- var ptr1 = self.o.pointers[0].ptr,
- ptr2 = self.o.pointers[1].ptr,
- offset1 = utils.offset(ptr1),
- offset2 = utils.offset(ptr2);
-
- self.o.pointers[0].d = {
- left: offset1.left,
- top: offset1.top,
- width: ptr1[0].clientWidth,
- height: ptr1[0].clientHeight
- };
-
- self.o.pointers[1].d = {
- left: offset2.left,
- top: offset2.top,
- width: ptr2[0].clientWidth,
- height: ptr2[0].clientHeight
- };
- };
-
- return function(evt) {
- if (self.disabled)
- return;
- var vertical = self.settings.vertical,
- targetIdx = 0,
- _off = utils.offset(self.domNode),
- firstPtr = self.o.pointers[0],
- secondPtr = self.o.pointers[1] ? self.o.pointers[1] : null,
- tmpPtr,
- evtPosition = evt.originalEvent ? evt.originalEvent: evt,
- mouse = vertical ? evtPosition.pageY : evtPosition.pageX,
- css = vertical ? 'top' : 'left',
- offset = { left: _off.left, top: _off.top, width: self.domNode[0].clientWidth, height: self.domNode[0].clientHeight },
- targetPtr = self.o.pointers[targetIdx];
-
- if (secondPtr) {
- if (!secondPtr.d.width) {
- resetPtrSize();
- }
- var firstPtrPosition = utils.offset(firstPtr.ptr)[css];
- var secondPtrPosition = utils.offset(secondPtr.ptr)[css];
- var middleGap = Math.abs((secondPtrPosition - firstPtrPosition) / 2);
- var testSecondPtrToMove = mouse >= secondPtrPosition || mouse >= (secondPtrPosition - middleGap);
- if (testSecondPtrToMove) {
- targetPtr = secondPtr;
- }
- }
- targetPtr._parent = {offset: offset, width: offset.width, height: offset.height};
- var coords = firstPtr._getPageCoords( evt );
- targetPtr.cx = coords.x - targetPtr.d.left;
- targetPtr.cy = coords.y - targetPtr.d.top;
- targetPtr.onmousemove( evt, coords.x, coords.y);
- targetPtr.onmouseup();
- angular.extend(targetPtr.d, {
- left: coords.x,
- top: coords.y
- });
-
- self.redraw(targetPtr);
- return false;
- };
- };
-
-
- Slider.prototype.disable = function( bool ) {
- this.disabled = bool;
- };
-
- Slider.prototype.nice = function( value ){
- return value;
- };
-
- Slider.prototype.onstatechange = function(){};
-
- Slider.prototype.limits = function( x, pointer ){
- // smooth
- if(!this.settings.smooth){
- var step = this.settings.step*100 / ( this.settings.interval );
- x = Math.round( x/step ) * step;
- }
-
- if (pointer) {
- var another = this.o.pointers[1-pointer.uid];
- if(another && pointer.uid && x < another.value.prc) x = another.value.prc;
- if(another && !pointer.uid && x > another.value.prc) x = another.value.prc;
- }
- // base limit
- if(x < 0) x = 0;
- if(x > 100) x = 100;
-
- return Math.round(x*10) / 10;
- };
-
- Slider.prototype.getPointers = function(){
- return this.o.pointers;
- };
-
- Slider.prototype.generateScale = function(){
- if (this.settings.scale && this.settings.scale.length > 0){
- var str = '',
- s = this.settings.scale,
- // FIX Big Scale Failure #34
- // var prc = Math.round((100/(s.length-1))*10)/10;
- prc,
- label,
- duplicate = {},
- position = this.settings.vertical ? 'top' : 'left',
- i=0;
- for(; i < s.length; i++) {
- if (!angular.isDefined(s[i].val)) {
- prc = (100/(s.length-1)).toFixed(2);
- str += '<span style="'+ position + ': ' + i*prc + '%">' + ( s[i] != '|' ? '<ins>' + s[i] + '</ins>' : '' ) + '</span>';
- }
-
- if (s[i].val <= this.settings.to && s[i].val >= this.settings.from && ! duplicate[s[i].val]) {
- duplicate[s[i].val] = true;
- prc = this.valueToPrc(s[i].val);
- label = s[i].label ? s[i].label : s[i].val;
- str += '<span style="'+ position + ': ' + prc + '%">' + '<ins>' + label + '</ins>' + '</span>';
- }
- }
- return str;
- }
-
- return '';
- };
-
- Slider.prototype.onresize = function(){
- var self = this;
-
- this.sizes = {
- domWidth: this.domNode[0].clientWidth,
- domHeight: this.domNode[0].clientHeight,
- domOffset: {
- left: this.domNode[0].offsetLeft,
- top: this.domNode[0].offsetTop,
- width: this.domNode[0].clientWidth,
- height: this.domNode[0].clientHeight
- }
- };
-
- this.redrawPointers();
- };
-
- Slider.prototype.update = function(){
- this.onresize();
- this.drawScale();
- };
-
- Slider.prototype.drawScale = function( scaleDiv ){
- angular.forEach(angular.element(scaleDiv).find('ins'), function(scaleLabel, key) {
- scaleLabel.style.marginLeft = - scaleLabel.clientWidth / 2;
- });
- };
-
- Slider.prototype.redrawPointers = function() {
-
- angular.forEach(this.o.pointers, function(pointer){
- this.redraw(pointer);
- }, this);
- };
-
- Slider.prototype.redraw = function( pointer ){
- if(!this.is.init) {
- // this.settings.single
- if(this.o.pointers[0] && !this.o.pointers[1]) {
- this.originValue = this.o.pointers[0].value.prc;
- this.o.indicators[0].css(!this.settings.vertical ? {left:0, width:this.o.pointers[0].value.prc + "%"} : {top:0, height:this.o.pointers[0].value.prc + "%"});
- this.o.indicators[1].css(!this.settings.vertical ? {left:this.o.pointers[0].value.prc + "%"} : {top:this.o.pointers[0].value.prc + "%"});
- this.o.indicators[3].css(!this.settings.vertical ? {left:this.o.pointers[0].value.prc + "%"} : {top:this.o.pointers[0].value.prc + "%"});
- } else {
- this.o.indicators[2].css(!this.settings.vertical ? {left:this.o.pointers[1].value.prc + "%"} : {top:this.o.pointers[1].value.prc + "%"});
- this.o.indicators[0].css(!this.settings.vertical ? {left:0, width:"0"} : {top:0, height:"0"});
- this.o.indicators[3].css(!this.settings.vertical ? {left:"0", width:"0"} : {top:"0", height:"0"});
- }
-
- return false;
- }
-
- this.setValue();
-
- var newPos,
- newWidth;
-
- // redraw range line
- if(this.o.pointers[0] && this.o.pointers[1]) {
- newPos = !this.settings.vertical ?
- { left: this.o.pointers[0].value.prc + "%", width: ( this.o.pointers[1].value.prc - this.o.pointers[0].value.prc ) + "%" }
- :
- { top: this.o.pointers[0].value.prc + "%", height: ( this.o.pointers[1].value.prc - this.o.pointers[0].value.prc ) + "%" };
-
- this.o.value.css(newPos);
-
- // both pointer overlap on limits
- if (this.o.pointers[0].value.prc === this.o.pointers[1].value.prc) {
- this.o.pointers[1].ptr.css("z-index", this.o.pointers[0].value.prc === 0 ? '3' : '1');
- }
-
- }
-
- if(this.o.pointers[0] && !this.o.pointers[1]) {
- newWidth = this.o.pointers[0].value.prc - this.originValue;
- if (newWidth >= 0) {
- this.o.indicators[3].css(!this.settings.vertical ? {width: newWidth + "%"} : {height: newWidth + "%"});
- }
- else {
- this.o.indicators[3].css(!this.settings.vertical ? {width: 0} : {height: 0});
- }
-
- if (this.o.pointers[0].value.prc < this.originValue) {
- this.o.indicators[0].css(!this.settings.vertical ? {width: this.o.pointers[0].value.prc + "%"} : {height: this.o.pointers[0].value.prc + "%"});
- }
- else {
- this.o.indicators[0].css(!this.settings.vertical ? {width: this.originValue + "%"} : {height: this.originValue + "%"});
- }
-
- }
-
- var value = this.nice(pointer.value.origin);
- if (this.settings.modelLabels) {
- if (angular.isFunction(this.settings.modelLabels)) {
- value = this.settings.modelLabels(value);
- }
- else {
- value = this.settings.modelLabels[value] !== undefined ? this.settings.modelLabels[value] : value;
- }
- }
-
- this.o.labels[pointer.uid].value.html(value);
-
- // redraw position of labels
- this.redrawLabels( pointer );
- };
-
- Slider.prototype.redrawLabels = function( pointer ) {
-
- function setPosition( label, sizes, prc ) {
- sizes.margin = -sizes.label/2;
- var domSize = !self.settings.vertical ? self.sizes.domWidth : self.sizes.domHeight;
-
- if (self.sizes.domWidth) {
- // left limit
- var label_left = sizes.border + sizes.margin;
- if(label_left < 0)
- sizes.margin -= label_left;
-
- // right limit
- if(self.sizes.domWidth > 0 && sizes.border+sizes.label / 2 > domSize){
- sizes.margin = 0;
- sizes.right = true;
- } else
- sizes.right = false;
- }
-
- if (!self.settings.vertical)
- label.o.css({ left: prc + "%", marginLeft: sizes.margin+"px", right: "auto" });
- else
- label.o.css({ top: prc + "%", marginLeft: "20px", marginTop: sizes.margin, bottom: "auto" });
- if(sizes.right && self.sizes.domWidth > 0) {
- if (!self.settings.vertical)
- label.o.css({ left: "auto", right: 0 });
- else
- label.o.css({ top: "auto", bottom: 0 });
- }
- return sizes;
- }
-
- var self = this,
- label = this.o.labels[pointer.uid],
- prc = pointer.value.prc,
- // case hidden
- labelWidthSize = label.o[0].offsetWidth === 0 ? (label.o[0].textContent.length)*7 : label.o[0].offsetWidth;
-
- this.sizes.domWidth = this.domNode[0].clientWidth;
- this.sizes.domHeight = this.domNode[0].clientHeight;
-
- var sizes = {
- label: !self.settings.vertical ? labelWidthSize : label.o[0].offsetHeight,
- right: false,
- border: (prc * (!self.settings.vertical ? this.sizes.domWidth: this.sizes.domHeight)) / 100
- };
-
- var anotherIdx = pointer.uid === 0 ? 1:0,
- anotherLabel,
- anotherPtr;
-
- if (!this.settings.single && !this.settings.vertical){
- // glue if near;
- anotherLabel = this.o.labels[anotherIdx];
- anotherPtr = this.o.pointers[anotherIdx];
- var label1 = this.o.labels[0],
- label2 = this.o.labels[1],
- ptr1 = this.o.pointers[0],
- ptr2 = this.o.pointers[1],
- gapBetweenLabel = ptr2.ptr[0].offsetLeft - ptr1.ptr[0].offsetLeft,
- value = this.nice(anotherPtr.value.origin);
-
- label1.o.css(this.css.visible);
- label2.o.css(this.css.visible);
-
- value = this.getLabelValue(value);
-
- if (gapBetweenLabel + 10 < label1.o[0].offsetWidth+label2.o[0].offsetWidth) {
- anotherLabel.o.css(this.css.hidden);
-
- anotherLabel.value.html(value);
- prc = (anotherPtr.value.prc - prc) / 2 + prc;
- if(anotherPtr.value.prc != pointer.value.prc){
- value = this.nice(this.o.pointers[0].value.origin);
- var value1 = this.nice(this.o.pointers[1].value.origin);
- value = this.getLabelValue(value);
- value1 = this.getLabelValue(value1);
-
- label.value.html(value + "&nbsp;&ndash;&nbsp;" + value1);
- sizes.label = label.o[0].offsetWidth;
- sizes.border = (prc * domSize) / 100;
- }
- }
- else {
- anotherLabel.value.html(value);
- anotherLabel.o.css(this.css.visible);
- }
- }
-
- sizes = setPosition(label, sizes, prc);
-
- var domSize = !self.settings.vertical ? self.sizes.domWidth : self.sizes.domHeight;
-
- /* draw second label */
- if(anotherLabel){
- // case hidden
- var labelWidthSize2 = label.o[0].offsetWidth === 0 ? (label.o[0].textContent.length/2)*7 : label.o[0].offsetWidth,
- sizes2 = {
- label: !self.settings.vertical ? labelWidthSize2: anotherLabel.o[0].offsetHeight,
- right: false,
- border: (anotherPtr.value.prc * this.sizes.domWidth) / 100
- };
- sizes = setPosition(anotherLabel, sizes2, anotherPtr.value.prc);
- }
-
- this.redrawLimits();
- };
-
- Slider.prototype.redrawLimits = function() {
- if (this.settings.limits) {
-
- var limits = [true, true],
- i = 0;
-
- for(var key in this.o.pointers){
-
- if(!this.settings.single || key === 0){
-
- var pointer = this.o.pointers[key],
- label = this.o.labels[pointer.uid],
- label_left = label.o[0].offsetLeft - this.sizes.domOffset.left,
- limit = this.o.limits[0];
-
- if(label_left < limit[0].clientWidth) {
- limits[0] = false;
- }
-
- limit = this.o.limits[1];
- if(label_left + label.o[0].clientWidth > this.sizes.domWidth - limit[0].clientWidth){
- limits[1] = false;
- }
-
- }
- }
-
- for(; i < limits.length; i++){
- if(limits[i]){ // TODO animate
- angular.element(this.o.limits[i]).addClass("animate-show");
- }
- else{
- angular.element(this.o.limits[i]).addClass("animate-hidde");
- }
- }
- }
- };
-
- Slider.prototype.setValue = function(){
- var value = this.getValue();
- this.inputNode.attr("value", value);
- this.onstatechange.call(this, value, this.inputNode);
- };
-
- Slider.prototype.getValue = function(){
- if(!this.is.init) return false;
- var $this = this;
-
- var value = "";
- angular.forEach(this.o.pointers, function(pointer, key){
- if(pointer.value.prc !== undefined && !isNaN(pointer.value.prc))
- value += (key > 0 ? ";" : "") + $this.prcToValue(pointer.value.prc);
- });
- return value;
- };
-
- Slider.prototype.getLabelValue = function(value){
- if (this.settings.modelLabels) {
- if (angular.isFunction(this.settings.modelLabels)) {
- return this.settings.modelLabels(value);
- }
- else {
- return this.settings.modelLabels[value] !== undefined ? this.settings.modelLabels[value] : value;
- }
- }
-
- return value;
- };
-
- Slider.prototype.getPrcValue = function(){
- if(!this.is.init) return false;
- var $this = this;
-
- var value = "";
- // TODO remove jquery and see if % value is nice feature
- /*$.each(this.o.pointers, function(i){
- if(this.value.prc !== undefined && !isNaN(this.value.prc)) value += (i > 0 ? ";" : "") + this.value.prc;
- });*/
- return value;
- };
-
- Slider.prototype.prcToValue = function( prc ){
- var value;
- if (this.settings.heterogeneity && this.settings.heterogeneity.length > 0){
- var h = this.settings.heterogeneity,
- _start = 0,
- _from = this.settings.round ? parseFloat(this.settings.from) : parseInt(this.settings.from, 10),
- _to = this.settings.round ? parseFloat(this.settings.to) : parseInt(this.settings.to, 10),
- i = 0;
-
- for (; i <= h.length; i++){
- var v;
- if(h[i])
- v = h[i].split('/');
- else
- v = [100, _to];
-
- var v1 = this.settings.round ? parseFloat(v[0]) : parseInt(v[0], 10);
- var v2 = this.settings.round ? parseFloat(v[1]) : parseInt(v[1], 10);
-
- if (prc >= _start && prc <= v1) {
- value = _from + ((prc-_start) * (v2-_from)) / (v1-_start);
- }
-
- _start = v1;
- _from = v2;
- }
- }
- else {
- value = this.settings.from + (prc * this.settings.interval) / 100;
- }
-
- return this.round(value);
- };
-
- Slider.prototype.valueToPrc = function( value, pointer ){
- var prc,
- _from = this.settings.round ? parseFloat(this.settings.from) : parseInt(this.settings.from, 10);
-
- if (this.settings.heterogeneity && this.settings.heterogeneity.length > 0){
- var h = this.settings.heterogeneity,
- _start = 0,
- i = 0;
-
- for (; i <= h.length; i++) {
- var v;
- if(h[i])
- v = h[i].split('/');
- else
- v = [100, this.settings.to];
-
- var v1 = this.settings.round ? parseFloat(v[0]) : parseInt(v[0], 10);
- var v2 = this.settings.round ? parseFloat(v[1]) : parseInt(v[1], 10);
-
- if(value >= _from && value <= v2){
- if (pointer) {
- prc = pointer.limits(_start + (value-_from)*(v1-_start)/(v2-_from));
- } else {
- prc = this.limits(_start + (value-_from)*(v1-_start)/(v2-_from));
- }
- }
-
- _start = v1; _from = v2;
- }
-
- } else {
- if (pointer) {
- prc = pointer.limits((value-_from)*100/this.settings.interval);
- } else {
- prc = this.limits((value-_from)*100/this.settings.interval);
- }
- }
-
- return prc;
- };
-
- Slider.prototype.round = function( value ){
- value = Math.round(value / this.settings.step) * this.settings.step;
-
- if(this.settings.round)
- value = Math.round(value * Math.pow(10, this.settings.round)) / Math.pow(10, this.settings.round);
- else
- value = Math.round(value);
- return value;
- };
-
- return Slider;
-
- }]);
-}(angular));
diff --git a/www/lib/angular-awesome-slider/src/core/template/slider.tmpl.js b/www/lib/angular-awesome-slider/src/core/template/slider.tmpl.js
deleted file mode 100644
index af2b1499..00000000
--- a/www/lib/angular-awesome-slider/src/core/template/slider.tmpl.js
+++ /dev/null
@@ -1,29 +0,0 @@
-(function(angular, undefined) {
-'use strict';
-
- angular.module('angularAwesomeSlider')
- .run(['$templateCache', function ($templateCache) {
- $templateCache.put('ng-slider/slider-bar.tmpl.html',
- '<span ng-class="mainSliderClass" id="{{sliderTmplId}}">' +
- '<table><tr><td>' +
- '<div class="jslider-bg">' +
- '<i class="left"></i>'+
- '<i class="right"></i>'+
- '<i class="range"></i>'+
- '<i class="before"></i>'+
- '<i class="default"></i>'+
- '<i class="default"></i>'+
- '<i class="after"></i>'+
- '</div>' +
- '<div class="jslider-pointer"></div>' +
- '<div class="jslider-pointer jslider-pointer-to"></div>' +
- '<div class="jslider-label" ng-show="options.limits"><span ng-bind="limitValue(options.from)"></span>{{options.dimension}}</div>' +
- '<div class="jslider-label jslider-label-to" ng-show="options.limits"><span ng-bind="limitValue(options.to)"></span>{{options.dimension}}</div>' +
- '<div class="jslider-value"><span></span>{{options.dimension}}</div>' +
- '<div class="jslider-value jslider-value-to"><span></span>{{options.dimension}}</div>' +
- '<div class="jslider-scale" id="{{sliderScaleDivTmplId}}"></div>' +
- '</td></tr></table>' +
- '</span>');
- }]);
-
-})(window.angular);
diff --git a/www/lib/angular-awesome-slider/src/core/utils/utils.factory.js b/www/lib/angular-awesome-slider/src/core/utils/utils.factory.js
deleted file mode 100644
index 52ff8f5f..00000000
--- a/www/lib/angular-awesome-slider/src/core/utils/utils.factory.js
+++ /dev/null
@@ -1,34 +0,0 @@
-(function(angular){
- 'use strict';
-
- angular.module('angularAwesomeSlider').factory('sliderUtils', ['$window', function(win) {
- return {
- offset: function(elm) {
- // try {return elm.offset();} catch(e) {}
- var rawDom = elm[0];
- var _x = 0;
- var _y = 0;
- var body = document.documentElement || document.body;
- var scrollX = window.pageXOffset || body.scrollLeft;
- var scrollY = window.pageYOffset || body.scrollTop;
- _x = rawDom.getBoundingClientRect().left + scrollX;
- _y = rawDom.getBoundingClientRect().top + scrollY;
- return { left: _x, top:_y };
- },
- browser: function() {
- // TODO finish browser detection and this case
- var userAgent = win.navigator.userAgent;
- var browsers = {mozilla: /mozilla/i, chrome: /chrome/i, safari: /safari/i, firefox: /firefox/i, ie: /internet explorer/i};
- for(var key in browsers) {
- if (browsers[key].test(userAgent)) {
- return key;
- }
- }
- return 'unknown';
- }
- };
- }]);
-})(angular);
-
-
-
diff --git a/www/lib/angular-awesome-slider/src/css/angular-awesome-slider.css b/www/lib/angular-awesome-slider/src/css/angular-awesome-slider.css
deleted file mode 100644
index 6f363d30..00000000
--- a/www/lib/angular-awesome-slider/src/css/angular-awesome-slider.css
+++ /dev/null
@@ -1,531 +0,0 @@
-/*http://codeguide.co/#css-syntax*/
-.jslider {
- /* Positioning */
-
- position: relative;
- top: 0.6em;
- /* Box-model */
-
- cursor: pointer;
- display: block;
- width: 100%;
- height: 1em;
- /* Typography */
- font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
-}
-.jslider.disabled {
- opacity: 0.5;
-}
-.jslider table {
- border-collapse: collapse;
- border: 0;
- width: 100%;
-}
-.jslider table td,
-.jslider table th {
- width: 100%;
- border: 0;
- padding: 0;
- text-align: left;
- vertical-align: top;
-}
-.jslider div.jslider-bg i,
-.jslider div.jslider-pointer {
- background: url(../img/jslider.png) no-repeat 0 0;
-}
-.jslider div.jslider-bg {
- position: relative;
-}
-.jslider div.jslider-bg i {
- position: absolute;
- top: 0;
- height: 5px;
-}
-.jslider div.jslider-bg i.left {
- left: 0;
- width: 50%;
- background-position: 0 0;
-}
-.jslider div.jslider-bg i.right {
- left: 50%;
- width: 50%;
- background-position: right 0;
-}
-.jslider div.jslider-bg i.range {
- position: absolute;
- top: 0;
- left: 20%;
- width: 60%;
- height: 5px;
- z-index: 1;
- background-repeat: repeat-x;
- background-position: 0 -40px;
-}
-.jslider div.jslider-bg i.default {
- left: 0;
- width: 1px;
- z-index: 1;
- background-color: #185f83;
-}
-.jslider.jslider-single div.jslider-pointer-to,
-.jslider.jslider-single div.jslider-value-to,
-.jslider.jslider-single div.jslider-bg .v,
-.jslider.jslider-single .jslider-limitless .jslider-label {
- display: none;
-}
-.jslider div.jslider-pointer {
- position: absolute;
- top: -4px;
- left: 20%;
- z-index: 2;
- width: 15px;
- height: 15px;
- background-position: 2px -60px;
- margin-left: -8px;
- cursor: pointer;
- cursor: hand;
-}
-.jslider div.jslider-pointer.jslider-pointer-to {
- left: 80%;
-}
-.jslider div.jslider-pointer.jslider-pointer-hover {
- background-position: -18px -60px;
-}
-.jslider div.jslider-label small,
-.jslider div.jslider-value small {
- position: relative;
- top: -0.4em;
-}
-.jslider div.jslider-label {
- position: absolute;
- top: -18px;
- left: 0px;
- padding: 0px 2px;
- opacity: 0.4;
- color: #000000;
- font-size: 9px;
- line-height: 12px;
- white-space: nowrap;
-}
-.jslider div.jslider-label.jslider-label-to {
- left: auto;
- right: 0;
-}
-.jslider div.jslider-value {
- position: absolute;
- top: -19px;
- left: 0;
- padding: 1px 2px 0;
- background: white;
- font-size: 9px;
- line-height: 12px;
- white-space: nowrap;
- -moz-border-radius: 2px;
- -webkit-border-radius: 2px;
- -o-border-radius: 2px;
- border-radius: 2px;
-}
-.jslider div.jslider-value.jslider-value-to {
- left: 80%;
-}
-.jslider div.jslider-scale {
- position: relative;
- top: 9px;
-}
-.jslider div.jslider-scale span {
- position: absolute;
- height: 5px;
- border-left: 1px solid #999;
- font-size: 0;
-}
-.jslider div.jslider-scale ins {
- position: absolute;
- top: 5px;
- left: 0px;
- font-size: 9px;
- text-decoration: none;
- color: #999;
-}
-.jslider.vertical {
- display: block;
- width: 17px;
- height: 100%;
- position: relative;
- top: 0.6em;
- font-family: Arial, sans-serif;
-}
-.jslider.vertical table {
- height: 100%;
-}
-.jslider.vertical.sliderCSS .jslider-bg i,
-.jslider.vertical.jslider-pointer {
- background-color: silver;
- background-image: none;
-}
-.jslider.vertical div.jslider-bg i,
-.jslider.vertical .jslider-pointer {
- background: url(../img/jslider.vertical.png) no-repeat 0 0;
-}
-.jslider.vertical div.jslider-bg {
- position: relative;
- height: 100%;
-}
-.jslider.vertical div.jslider-bg i {
- position: absolute;
- top: 0;
- width: 5px;
- font-size: 0;
-}
-.jslider.vertical div.jslider-bg i.before {
- left: 50%;
- background: none;
-}
-.jslider.vertical div.jslider-bg i.left {
- top: 0;
- left: 50%;
- height: 50%;
- background-position: right 0;
- background-repeat: repeat-y;
-}
-.jslider.vertical div.jslider-bg i.right {
- top: 50%;
- left: 50%;
- height: 50%;
- background-position: right 0;
- background-repeat: repeat-y;
-}
-.jslider.vertical div.jslider-bg i.range {
- position: absolute;
- top: 0;
- left: 50%;
- width: 60%;
- height: 100%;
- z-index: 1;
- background-repeat: repeat-y;
- background-position: -36px 0px;
-}
-.jslider.vertical div.jslider-bg i.default {
- left: 50%;
- width: 5px;
- height: 1px;
- z-index: 1;
- background-color: #185f83;
-}
-.jslider.vertical div.jslider-pointer {
- left: 62%;
- background-position: -7px -1px;
-}
-.jslider.vertical div.jslider-pointer.jslider-pointer-hover {
- background-position: -7px -21px;
-}
-.jslider.vertical div.jslider-pointer.jslider-pointer-to {
- left: 62%;
-}
-.jslider.vertical div.jslider-pointer.jslider-pointer-to.jslider-pointer-hover {
- background-position: -7px -21px;
-}
-.jslider.vertical div.jslider-label {
- top: -5px;
- margin-left: 22px;
-}
-.jslider.vertical div.jslider-label.jslider-label-to {
- top: 100%;
- left: inherit;
- right: inherit;
- margin-top: -5px;
-}
-.jslider.vertical div.jslider-value {
- top: 0;
- left: 0;
-}
-.jslider.vertical div.jslider-value-to {
- top: 80%;
- left: 0;
-}
-.jslider.vertical div.jslider-scale {
- position: inherit;
-}
-.jslider.vertical div.jslider-scale span {
- position: absolute;
- width: 5px;
- height: 1px;
- border-left: none;
- font-size: 0;
- border-top: 1px solid #999;
-}
-.jslider.vertical div.jslider-scale ins {
- position: absolute;
- left: 0px;
- top: 5px;
- font-size: 9px;
- text-decoration: none;
- color: #999999;
-}
-.jslider.sliderCSS div.jslider-bg i.left {
- left: 0;
- width: 50%;
- background-color: #c0c0c0;
- background-image: none;
-}
-.jslider.sliderCSS div.jslider-bg i.right {
- width: 50%;
- left: 50%;
- background-color: #c0c0c0;
- background-image: none;
-}
-.jslider.sliderCSS div.jslider-bg i.before {
- left: 0;
- width: 1px;
- background-color: rgba(92, 98, 203, 0.89);
- background-image: none;
-}
-.jslider.sliderCSS div.jslider-bg i.default {
- left: 0;
- width: 1px;
- z-index: 1;
- background-color: #ffffff;
- background-image: none;
-}
-.jslider.sliderCSS div.jslider-bg i.after {
- left: 0;
- background-color: #0e1773;
- background-image: none;
-}
-.jslider.sliderCSS div.jslider-bg i.range {
- position: absolute;
- top: 0;
- left: 20%;
- width: 60%;
- height: 5px;
- z-index: 1;
- background-image: none;
- background-color: #777575;
-}
-.jslider.sliderCSS div.jslider-pointer {
- top: -3px;
- left: 15px;
- width: 10px;
- height: 10px;
- margin-left: -5px;
- background-color: silver;
- background-color: #615959;
- border-radius: 50%;
-}
-.jslider.sliderCSS div.jslider-bg i,
-.jslider.sliderCSS div.jslider-pointer {
- background: none;
-}
-.jslider.sliderCSS.vertical td {
- height: 100%;
-}
-.jslider.sliderCSS.vertical div.jslider-bg i {
- left: 50%;
- width: 5px;
-}
-.jslider.sliderCSS.vertical div.jslider-bg i.left {
- top: 0;
- height: 50%;
- background-color: #c0c0c0;
- background-image: none;
-}
-.jslider.sliderCSS.vertical div.jslider-bg i.right {
- height: 50%;
- top: 50%;
- background-color: #c0c0c0;
- background-image: none;
-}
-.jslider.sliderCSS.vertical div.jslider-bg i.range {
- height: 100%;
- z-index: 1;
- background-color: #777575;
- background-image: none;
-}
-.jslider.sliderCSS.vertical div.jslider-bg i.before {
- background-color: rgba(92, 98, 203, 0.89);
- background-image: none;
-}
-.jslider.sliderCSS.vertical div.jslider-bg i.default {
- height: 1px;
- background-color: #ffffff;
- background-image: none;
- z-index: 2;
-}
-.jslider.sliderCSS.vertical div.jslider-bg i.after {
- background-color: #0e1773;
- background-image: none;
-}
-.jslider.sliderCSS.vertical div.jslider-bg i,
-.jslider.sliderCSS.vertical div.jslider-pointer {
- background: none;
-}
-.jslider.sliderCSS.vertical div.jslider-pointer {
- left: 50%;
- width: 10px;
- height: 10px;
- background-color: #615959;
- border-radius: 50%;
- margin-left: -3px;
-}
-.jslider.sliderCSS.vertical div.jslider-pointer.jslider-pointer-to {
- left: 50%;
-}
-.jslider.jslider_round div.jslider-bg i,
-.jslider.jslider_round div.jslider-pointer {
- background: url(../img/jslider.round.png) no-repeat 0 0;
-}
-.jslider.jslider_round div.jslider-bg i {
- background-position: 0 -20px;
-}
-.jslider.jslider_round div.jslider-bg i.default {
- background-color: #C2C7CA;
-}
-.jslider.jslider_round div.jslider-bg i.range {
- z-index: 1;
- background-position: 0 -40px;
-}
-.jslider.jslider_round div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: 0 -60px;
- z-index: 2;
-}
-.jslider.jslider_round div.jslider-pointer.jslider-pointer-hover {
- background-position: -20px -60px;
-}
-.jslider.jslider_round.vertical div.jslider-bg i,
-.jslider.jslider_round.vertical div.jslider-pointer {
- background: url(../img/jslider.round.vertical.png) no-repeat 0 0;
-}
-.jslider.jslider_round.vertical div.jslider-bg i {
- background-position: right 0;
-}
-.jslider.jslider_round.vertical div.jslider-bg i.range {
- background-position: -37px 0;
-}
-.jslider.jslider_round.vertical div.jslider-bg i.before,
-.jslider.jslider_round.vertical div.jslider-bg i.after {
- background: none;
-}
-.jslider.jslider_round.vertical div.jslider-bg i.default {
- background-color: #c2c7ca;
-}
-.jslider.jslider_round.vertical div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: -4px -3px;
-}
-.jslider.jslider_round.vertical div.jslider-pointer.jslider-pointer-hover {
- background-position: -4px -23px;
-}
-.jslider.jslider_round.vertical div.jslider-pointer.jslider-value-to {
- left: 80%;
-}
-.jslider.jslider_round.vertical div.jslider-value {
- left: 0;
-}
-.jslider.jslider_blue .jslider-bg i,
-.jslider.jslider_blue .jslider-pointer {
- background: url(../img/jslider.blue.png) no-repeat 0 0;
-}
-.jslider.jslider_blue .jslider-bg i {
- background-position: 2px -20px;
-}
-.jslider.jslider_blue .jslider-bg i.default {
- background-color: #c2c7ca;
-}
-.jslider.jslider_blue .jslider-bg i.range {
- z-index: 1;
- background-position: 0 -40px;
-}
-.jslider.jslider_blue div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: 2px -60px;
- z-index: 2;
-}
-.jslider.jslider_blue div.jslider-pointer.jslider-pointer-hover {
- background-position: -20px -60px;
-}
-.jslider.jslider_blue.vertical div.jslider-bg i,
-.jslider.jslider_blue.vertical div.jslider-pointer {
- background: url(../img/jslider.blue.vertical.png) no-repeat 0 0;
-}
-.jslider.jslider_blue.vertical div.jslider-bg i {
- background-position: right 0;
-}
-.jslider.jslider_blue.vertical div.jslider-bg i.range {
- background-position: -37px 0;
-}
-.jslider.jslider_blue.vertical div.jslider-bg i.before,
-.jslider.jslider_blue.vertical div.jslider-bg i.after {
- background: none;
-}
-.jslider.jslider_blue.vertical div.jslider-bg i.default {
- background-color: #c2c7ca;
-}
-.jslider.jslider_blue.vertical div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: -7px 0;
-}
-.jslider.jslider_blue.vertical div.jslider-pointer.jslider-pointer-hover {
- background-position: -7px -20px;
-}
-.jslider.jslider_blue.vertical div.jslider-value {
- left: 0;
-}
-.jslider.jslider_plastic .jslider-bg i,
-.jslider.jslider_plastic .jslider-pointer {
- background: url(../img/jslider.plastic.png) no-repeat 0 0;
-}
-.jslider.jslider_plastic .jslider-bg i {
- background-position: 2px -20px;
-}
-.jslider.jslider_plastic .jslider-bg i.default {
- background-color: #c2c7ca;
-}
-.jslider.jslider_plastic .jslider-bg i.range {
- z-index: 1;
- background-position: 0 -40px;
-}
-.jslider.jslider_plastic .jslider-pointer {
- z-index: 2;
- width: 20px;
- height: 17px;
- top: -4px;
- background-position: 2px -60px;
-}
-.jslider.jslider_plastic .jslider-pointer.jslider-pointer-hover {
- background-position: -18px -60px;
-}
-.jslider.jslider_plastic.vertical div.jslider-bg i,
-.jslider.jslider_plastic.vertical div.jslider-pointer {
- background: url(../img/jslider.plastic.vertical.png) no-repeat 0 0;
-}
-.jslider.jslider_plastic.vertical div.jslider-bg i {
- background-position: right 0;
-}
-.jslider.jslider_plastic.vertical div.jslider-bg i.range {
- background-position: -35px 0;
-}
-.jslider.jslider_plastic.vertical div.jslider-bg i.before,
-.jslider.jslider_plastic.vertical div.jslider-bg i.after {
- background: none;
-}
-.jslider.jslider_plastic.vertical div.jslider-bg i.default {
- background-color: #c2c7ca;
-}
-.jslider.jslider_plastic.vertical div.jslider-pointer {
- top: -6px;
- margin-left: -6px;
- width: 20px;
- height: 17px;
- background-position: -7px -1px;
-}
-.jslider.jslider_plastic.vertical div.jslider-pointer.jslider-pointer-hover {
- background-position: -7px -21px;
-}
diff --git a/www/lib/angular-awesome-slider/src/css/less/main.less b/www/lib/angular-awesome-slider/src/css/less/main.less
deleted file mode 100644
index ce03b5fa..00000000
--- a/www/lib/angular-awesome-slider/src/css/less/main.less
+++ /dev/null
@@ -1,339 +0,0 @@
-//
-// Main slider css rules
-// --------------------------------------------------
-
-@import "variables.less";
-
-/*http://codeguide.co/#css-syntax*/
-
-.jslider {
-
- /* Positioning */
- position: relative;
- top: 0.6em;
-
- /* Box-model */
- cursor: pointer;
- display: block;
- width: 100%;
- height: 1em;
-
- /* Typography */
- font-family: @font-family-base;
-
- // disabled
- &.disabled { opacity: 0.5; }
-
- table {
- border-collapse: collapse;
- border: 0;
- width: 100%;
- td, th {
- width: 100%;
- vertical-align: top;
- border: 0;
- padding: 0;
- text-align: left;
- vertical-align: top;
- }
- }
-
- // RANGES
- div.jslider-bg i, div.jslider-pointer {
- background: url(../img/jslider.png) no-repeat 0 0;
- }
-
- div.jslider-bg {
- position: relative;
- i {
- position: absolute;
- top: 0;
- height: 5px;
-
- &.left {
- left: 0;
- width: 50%;
- background-position: 0 0;
- }
-
- &.right {
- left: 50%;
- width: 50%;
- background-position: right 0;
- }
-
- &.range {
- position: absolute;
- top: 0;
- left: 20%;
- width: 60%;
- height: 5px;
- z-index: 1;
- background-repeat: repeat-x;
- background-position: 0 -40px;
- }
-
- &.default {
- left: 0;
- width: 1px;
- z-index: 1;
- background-color: @color-pointers-default-value;
- }
-
- }
- }
- // END RANGES
-
- // POINTERS
- // single value hide to
- &.jslider-single {
- div.jslider-pointer-to,
- div.jslider-value-to,
- div.jslider-bg .v,
- .jslider-limitless .jslider-label {
- display: none;
- }
- }
-
- div.jslider-pointer {
- position: absolute;
- top: -4px;
- left: 20%;
- z-index: 2;
- width: 15px;
- height: 15px;
- background-position: 2px -60px;
- margin-left: -8px;
- cursor: pointer;
- cursor: hand;
-
- &.jslider-pointer-to {
- left: 80%;
- }
-
- &.jslider-pointer-hover {
- background-position: -18px -60px;
- }
- }
- // END POINTERS
-
- // LABELS
- div.jslider-label small,
- div.jslider-value small {
- position: relative;
- top: -0.4em;
- }
-
- // limits
- div.jslider-label {
- position: absolute;
- top: -18px;
- left: 0px;
- padding: 0px 2px;
- opacity: 0.4;
- color: @color-pointers-label;
- font-size: @font-size-pointers-label;
- line-height: @line-height-pointers-label;
- white-space: nowrap;
-
- &.jslider-label-to {
- left: auto;
- right: 0;
- }
- }
- // END LABELS
-
- // POINTERS VALUE
- div.jslider-value {
- position: absolute;
- top: -19px;
- left: 0;
- padding: 1px 2px 0;
- background: white;
- font-size: @font-size-pointers-value;
- line-height: @line-height-pointers-value;
- white-space: nowrap;
- -moz-border-radius: 2px;
- -webkit-border-radius: 2px;
- -o-border-radius: 2px;
- border-radius: 2px;
- &.jslider-value-to {
- left: 80%;
- }
- }
- // END POINTERS VALUE
-
- // SCALE
- div.jslider-scale {
- position: relative;
- top: 9px;
- span {
- position: absolute;
- height: 5px;
- border-left: 1px solid #999;
- font-size: 0;
- }
- ins {
- position: absolute;
- top: 5px;
- left: 0px;
- font-size: 9px;
- text-decoration: none;
- color: #999; }
- }
- // END SCALE
-
- // VERTICAL
- &.vertical {
- display: block;
- width: 17px;
- height: 100%;
- position: relative;
- top: 0.6em;
- font-family: Arial, sans-serif;
- table {
- height: 100%;
- }
-
- &.sliderCSS .jslider-bg i, &.jslider-pointer {
- background-color: silver;
- background-image: none;
- }
-
- // RANGES
- div.jslider-bg i,.jslider-pointer {
- background: url(../img/jslider.vertical.png) no-repeat 0 0;
- }
-
- div.jslider-bg {
- position: relative;
- height:100%;
-
- i {
- position: absolute;
- top: 0;
- width: 5px;
- font-size: 0;
-
- &.before {
- left: 50%;
- background: none
- }
-
- &.left {
- top: 0;
- left: 50%;
- height: 50%;
- background-position: right 0;
- background-repeat: repeat-y
- }
-
- &.right {
- top: 50%;
- left: 50%;
- height: 50%;
- background-position: right 0;
- background-repeat: repeat-y
- }
-
- &.range {
- position: absolute;
- top: 0;
- left: 50%;
- width: 60%;
- height: 100%;
- z-index: 1;
- background-repeat: repeat-y;
- background-position: -36px 0px;
- }
-
- &.default {
- left: 50%;
- width: 5px;
- height:1px;
- z-index: 1;
- background-color: @color-pointers-default-value;
- }
-
- }
- }
- // END RANGES
-
- // POINTERS
- div.jslider-pointer {
- left: 62%;
- background-position: -7px -1px;
-
- &.jslider-pointer-hover {
- background-position: -7px -21px;
- }
-
- &.jslider-pointer-to {
- left: 62%;
- }
-
- &.jslider-pointer-to.jslider-pointer-hover {
- background-position: -7px -21px;
- }
- }
- // END POINTERS
-
- // LABELS
- div.jslider-label {
- top: -5px;
- margin-left: 22px;
-
- &.jslider-label-to {
- top:100%;
- left: inherit;
- right: inherit;
- margin-top: -5px;
- }
- }
- // END LABELS
-
-
- // POINTERS VALUE
- div.jslider-value {
- top: 0;
- left: 0;
- }
-
- div.jslider-value-to {
- top: 80%;
- left: 0;
- }
- // END POINTERS VALUE
-
- // SCALES
- div.jslider-scale {
- position: inherit;
- span {
- position: absolute;
- width: 5px;
- height: 1px;
- border-left: none;
- font-size: 0;
- border-top: 1px solid #999;
- }
- ins {
- position: absolute;
- left: 0px;
- top: 5px;
- font-size: 9px;
- text-decoration: none;
- color: @color-scale;
- }
- }
-
- }
- // END VERTICAL
-
-
- // SKINS
- @import "skin-css.less";
- @import "skin-round.less";
- @import "skin-blue.less";
- @import "skin-plastic.less";
-}
-
diff --git a/www/lib/angular-awesome-slider/src/css/less/skin-blue.less b/www/lib/angular-awesome-slider/src/css/less/skin-blue.less
deleted file mode 100644
index b5dc3545..00000000
--- a/www/lib/angular-awesome-slider/src/css/less/skin-blue.less
+++ /dev/null
@@ -1,79 +0,0 @@
-//
-// Blue skin
-// --------------------------------------------------
-
-&.jslider_blue {
- .jslider-bg i,
- .jslider-pointer {
- background: url(../img/jslider.blue.png) no-repeat 0 0;
- }
-
- .jslider-bg {
- i {
- background-position: 2px -20px;
- &.default {
- background-color: @color-skin-pointers-default-value;
- }
-
- &.range {
- z-index: 1;
- background-position: 0 -40px;
- }
- }
- }
-
- div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: 2px -60px;
- z-index: 2;
-
- &.jslider-pointer-hover {
- background-position: -20px -60px;
- }
- }
-
- &.vertical {
- div.jslider-bg i,
- div.jslider-pointer {
- background: url(../img/jslider.blue.vertical.png) no-repeat 0 0;
- }
-
- div.jslider-bg {
- i {
- background-position: right 0;
-
- &.range {
- background-position: -37px 0;
- }
-
- &.before,
- &.after {
- background: none;
- }
-
- &.default {
- background-color: @color-skin-pointers-default-value;
- }
- }
- }
-
- div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: -7px 0;
-
- &.jslider-pointer-hover {
- background-position: -7px -20px;
- }
-
- }
-
- div.jslider-value {
- left: 0;
- }
-
- }
-} \ No newline at end of file
diff --git a/www/lib/angular-awesome-slider/src/css/less/skin-css.less b/www/lib/angular-awesome-slider/src/css/less/skin-css.less
deleted file mode 100644
index 8c06ba85..00000000
--- a/www/lib/angular-awesome-slider/src/css/less/skin-css.less
+++ /dev/null
@@ -1,139 +0,0 @@
-//
-// Main slider custom overrided js css rules
-// --------------------------------------------------
-&.sliderCSS {
-
- div.jslider-bg {
-
- i {
- &.left {
- left: 0;
- width: 50%;
- background-color: @color-skin-background;
- background-image: none;
- }
- &.right {
- width: 50%;
- left: 50%;
- background-color: @color-skin-background;
- background-image: none;
- }
- &.before {
- left: 0;
- width: 1px;
- background-color: @color-skin-css-pointers-before-value;
- background-image: none;
- }
- &.default {
- left: 0;
- width: 1px;
- z-index: 1;
- background-color: @color-skin-css-pointers-default-value;
- background-image: none;
- }
- &.after {
- left: 0;
- background-color: @color-skin-css-pointers-after-value;
- background-image: none;
- }
- &.range {
- position: absolute;
- top: 0;
- left: 20%;
- width: 60%;
- height: 5px;
- z-index: 1;
- background-image: none;
- background-color: #777575
- }
- }
- }
-
- div.jslider-pointer {
- top: -3px;
- left: 15px;
- width: 10px;
- height: 10px;
- margin-left: -5px;
- background-color: silver;
- background-color: #615959;
- border-radius: 50%;
- }
-
- div.jslider-bg i,div.jslider-pointer {
- background: none;
- }
-
- // vertical
- &.vertical {
-
- td {
- height: 100%;
- }
-
- div.jslider-bg {
-
- i {
- left: 50%;
- width: 5px;
-
- &.left {
- top: 0;
- height: 50%;
- background-color: @color-skin-background;
- background-image: none;
- }
-
- &.right {
- height: 50%;
- top: 50%;
- background-color: @color-skin-background;
- background-image: none;
- }
-
- &.range {
- height: 100%;
- z-index: 1;
- background-color: #777575;
- background-image: none;
- }
-
- &.before {
- background-color: @color-skin-css-pointers-before-value;
- background-image: none;
- }
-
- &.default {
- height: 1px;
- background-color: @color-skin-css-pointers-default-value;
- background-image: none;
- z-index: 2;
- }
-
- &.after {
- background-color: @color-skin-css-pointers-after-value;
- background-image: none;
- }
-
- }
-
- }
-
- div.jslider-bg i,div.jslider-pointer {
- background: none;
- }
-
- div.jslider-pointer {
- left: 50%;
- width: 10px;
- height: 10px;
- background-color: #615959;
- border-radius: 50%;
- margin-left: -3px;
-
- &.jslider-pointer-to {
- left: 50%;
- }
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/less/skin-plastic.less b/www/lib/angular-awesome-slider/src/css/less/skin-plastic.less
deleted file mode 100644
index a6c41106..00000000
--- a/www/lib/angular-awesome-slider/src/css/less/skin-plastic.less
+++ /dev/null
@@ -1,78 +0,0 @@
-//
-// Plastic skin
-// --------------------------------------------------
-
-&.jslider_plastic {
- .jslider-bg i,
- .jslider-pointer {
- background: url(../img/jslider.plastic.png) no-repeat 0 0;
- }
-
- .jslider-bg {
- i {
- background-position: 2px -20px;
- &.default {
- background-color: @color-skin-pointers-default-value;
- }
-
- &.range {
- z-index: 1;
- background-position: 0 -40px;
- }
- }
- }
-
- .jslider-pointer {
- z-index: 2;
- width: 20px;
- height: 17px;
- top: -4px;
- background-position: 2px -60px;
-
- &.jslider-pointer-hover {
- background-position: -18px -60px;
- }
- }
-
- &.vertical {
- div.jslider-bg i,
- div.jslider-pointer {
- background: url(../img/jslider.plastic.vertical.png) no-repeat 0 0;
- }
-
- div.jslider-bg {
-
- i {
- background-position: right 0;
-
- &.range {
- background-position: -35px 0;
- }
-
- &.before,
- &.after {
- background: none;
- }
-
- &.default {
- background-color: @color-skin-pointers-default-value;
- }
- }
- }
-
- div.jslider-pointer {
- top: -6px;
- margin-left: -6px;
- width: 20px;
- height: 17px;
- background-position: -7px -1px;
-
- &.jslider-pointer-hover {
- background-position: -7px -21px;
- }
-
- }
-
- }
-}
-
diff --git a/www/lib/angular-awesome-slider/src/css/less/skin-round.less b/www/lib/angular-awesome-slider/src/css/less/skin-round.less
deleted file mode 100644
index 4e7ddf1c..00000000
--- a/www/lib/angular-awesome-slider/src/css/less/skin-round.less
+++ /dev/null
@@ -1,81 +0,0 @@
-//
-// Round skin
-// --------------------------------------------------
-
-&.jslider_round {
- div.jslider-bg i,
- div.jslider-pointer {
- background: url(../img/jslider.round.png) no-repeat 0 0;
- }
-
- div.jslider-bg {
- i {
- background-position: 0 -20px;
- &.default {
- background-color: #C2C7CA;
- }
-
- &.range {
- z-index: 1;
- background-position: 0 -40px;
- }
- }
- }
-
- div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: 0 -60px;
- z-index: 2;
-
- &.jslider-pointer-hover {
- background-position: -20px -60px;
- }
- }
-
- &.vertical {
- div.jslider-bg i,
- div.jslider-pointer {
- background: url(../img/jslider.round.vertical.png) no-repeat 0 0;
- }
-
- div.jslider-bg {
- i {
- background-position: right 0;
- &.range {
- background-position: -37px 0;
- }
-
- &.before,
- &.after {
- background: none;
- }
-
- &.default {
- background-color: @color-skin-pointers-default-value;
- }
- }
- }
-
- div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: -4px -3px;
-
- &.jslider-pointer-hover {
- background-position: -4px -23px;
- }
-
- &.jslider-value-to {
- left: 80%;
- }
- }
-
- div.jslider-value {
- left: 0;
- }
-
- }
-} \ No newline at end of file
diff --git a/www/lib/angular-awesome-slider/src/css/less/variables.less b/www/lib/angular-awesome-slider/src/css/less/variables.less
deleted file mode 100644
index 4e667771..00000000
--- a/www/lib/angular-awesome-slider/src/css/less/variables.less
+++ /dev/null
@@ -1,42 +0,0 @@
-//
-// Variables
-// --------------------------------------------------
-
-
-//== Colors
-//
-
-@black: #000;
-@white: #fff;
-@gray: #999;
-@gray2: #C2C7CA;
-@blue: #185F83;
-
-//== Typography
-//
-
-@font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;
-@font-family-base: @font-family-sans-serif;
-
-@font-size-pointers-label: 9px;
-@line-height-pointers-label: 12px;
-@font-size-pointers-value: @font-size-pointers-label;
-@line-height-pointers-value: @line-height-pointers-label;
-
-@color-pointers-label: @black;
-@color-pointers-value: @color-pointers-label;
-@color-scale: @gray;
-
-@color-pointers-default-value: @blue;
-
-//== Skin CSS
-//
-
-@color-skin-pointers-default-value: @gray2;
-
-@color-skin-background: silver;
-@color-skin-css-pointers-default-value: @white;
-@color-skin-css-pointers-before-value: rgba(92, 98, 203, 0.89);
-@color-skin-css-pointers-after-value: rgb(14, 23, 115);
-
-
diff --git a/www/lib/angular-awesome-slider/src/css/sass/core/_variables.sass b/www/lib/angular-awesome-slider/src/css/sass/core/_variables.sass
deleted file mode 100644
index a548321e..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/core/_variables.sass
+++ /dev/null
@@ -1,28 +0,0 @@
-// Colors
-
-$black: #000000
-$white: #ffffff
-$gray: #999999
-$gray2: #c2c7Ca
-$blue: #185f83
-
-// Typography
-
-$font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif
-$font-family-base: $font-family-sans-serif
-$font-size-pointers-label: 9px
-$line-height-pointers-label: 12px
-$font-size-pointers-value: $font-size-pointers-label
-$line-height-pointers-value: $line-height-pointers-label
-$color-pointers-label: $black
-$color-pointers-value: $color-pointers-label
-$color-scale: $gray
-$color-pointers-default-value: $blue
-
-// Skin CSS
-
-$color-skin-pointers-default-value: $gray2
-$color-skin-background: silver
-$color-skin-css-pointers-default-value: $white
-$color-skin-css-pointers-before-value: rgba(92, 98, 203, 0.89)
-$color-skin-css-pointers-after-value: rgb(14, 23, 115)
diff --git a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_horizontal.sass b/www/lib/angular-awesome-slider/src/css/sass/horizontal/_horizontal.sass
deleted file mode 100644
index 067fc92b..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_horizontal.sass
+++ /dev/null
@@ -1,23 +0,0 @@
-// Horizontal Styles
-
-.jslider
- +position(relative, 0.6em null null null)
- cursor: pointer
- display: block
- +size(100% 1em)
- font-family: $font-family-base
-
- &.disabled
- opacity: 0.5
-
- table
- border-collapse: collapse
- border: 0
- width: 100%
-
- td, th
- width: 100%
- border: 0
- padding: 0
- text-align: left
- vertical-align: top
diff --git a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_labels.sass b/www/lib/angular-awesome-slider/src/css/sass/horizontal/_labels.sass
deleted file mode 100644
index 5150adef..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_labels.sass
+++ /dev/null
@@ -1,17 +0,0 @@
-div.jslider-label small,
-div.jslider-value small
- +position(relative, -0.4em null null null)
-
-// limits
-div.jslider-label
- +position(absolute, -18px null 0 null)
- padding: 0px 2px
- opacity: 0.4
- color: $color-pointers-label
- font-size: $font-size-pointers-label
- line-height: $line-height-pointers-label
- white-space: nowrap
-
- &.jslider-label-to
- left: auto
- right: 0
diff --git a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_main.sass b/www/lib/angular-awesome-slider/src/css/sass/horizontal/_main.sass
deleted file mode 100644
index d6a774ac..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_main.sass
+++ /dev/null
@@ -1,8 +0,0 @@
-// Horizontal Styles
-
-@import horizontal
-@import ranges
-@import pointers
-@import labels
-@import pointers-value
-@import scale
diff --git a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_pointers-value.sass b/www/lib/angular-awesome-slider/src/css/sass/horizontal/_pointers-value.sass
deleted file mode 100644
index f5233608..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_pointers-value.sass
+++ /dev/null
@@ -1,11 +0,0 @@
-div.jslider-value
- +position(absolute, -19px null 0 null)
- padding: 1px 2px 0
- // background: white
- font-size: $font-size-pointers-value
- line-height: $line-height-pointers-value
- white-space: nowrap
- border-radius: 2px
-
- &.jslider-value-to
- left: 80%
diff --git a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_pointers.sass b/www/lib/angular-awesome-slider/src/css/sass/horizontal/_pointers.sass
deleted file mode 100644
index bee15943..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_pointers.sass
+++ /dev/null
@@ -1,21 +0,0 @@
-// single value hide to
-.jslider-single
- div.jslider-pointer-to,
- div.jslider-value-to,
- div.jslider-bg .v,
- .jslider-limitless .jslider-label
- display: none
-
-div.jslider-pointer
- +position(absolute, -4px null 20% null)
- +size(15px)
- background-position: 2px -60px
- margin-left: -8px
- cursor: hand
- z-index: 2
-
- &.jslider-pointer-to
- left: 80%
-
- &.jslider-pointer-hover
- background-position: -19px -60px
diff --git a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_ranges.sass b/www/lib/angular-awesome-slider/src/css/sass/horizontal/_ranges.sass
deleted file mode 100644
index b47dfa41..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_ranges.sass
+++ /dev/null
@@ -1,31 +0,0 @@
-div.jslider-bg i, div.jslider-pointer
- background: url("../img/jslider.png") no-repeat 0 0
-
-div.jslider-bg
- position: relative
- i
- +position(absolute, 0 null null null)
- height: 5px
-
- &.left
- left: 0
- width: 50%
- background-position: 0 0
-
- &.right
- left: 50%
- width: 50%
- background-position: right 0
-
- &.range
- +position(absolute, 0 null null 20%)
- +size(60% 5px)
- background-repeat: repeat-x
- background-position: 0 -40px
- z-index: 1
-
- &.default
- left: 0
- width: 1px
- z-index: 1
- background-color: $color-pointers-default-value
diff --git a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_scale.sass b/www/lib/angular-awesome-slider/src/css/sass/horizontal/_scale.sass
deleted file mode 100644
index 59f4828c..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/horizontal/_scale.sass
+++ /dev/null
@@ -1,15 +0,0 @@
-div.jslider-scale
- position: relative
- top: 9px
-
- span
- position: absolute
- height: 5px
- border-left: 1px solid $gray
- font-size: 0
-
- ins
- +position(absolute, 5px null 0 null)
- font-size: 9px
- text-decoration: none
- color: $gray
diff --git a/www/lib/angular-awesome-slider/src/css/sass/main.sass b/www/lib/angular-awesome-slider/src/css/sass/main.sass
deleted file mode 100644
index 5752ee62..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/main.sass
+++ /dev/null
@@ -1,17 +0,0 @@
-// Import Bourbon Mixins
-@import ../../../bower_components/bourbon/app/assets/stylesheets/bourbon
-
-// Main slider css rules
-@import core/variables
-
-// Horizontal Slider
-@import horizontal/main
-
-// Vertical Slider
-@import vertical/main
-
-// Skins
-@import skins/skin-css
-@import skins/skin-round
-@import skins/skin-blue
-@import skins/skin-plastic
diff --git a/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-blue.sass b/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-blue.sass
deleted file mode 100644
index f6dcb51d..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-blue.sass
+++ /dev/null
@@ -1,55 +0,0 @@
-// Blue Skin
-
-.jslider_blue
- .jslider-bg i,
- .jslider-pointer
- background: url("../img/jslider.blue.png") no-repeat 0 0
-
- .jslider-bg
- i
- background-position: 2px -20px
-
- &.default
- background-color: $color-skin-pointers-default-value
-
- &.range
- z-index: 1
- background-position: 0 -40px
-
- div.jslider-pointer
- top: -6px
- width: 20px
- height: 17px
- background-position: 2px -60px
- z-index: 2
-
- &.vertical
- div.jslider-bg i,
- div.jslider-pointer
- background: url("../img/jslider.blue.vertical.png") no-repeat 0 0
-
- div.jslider-bg
- i
- background-position: right 0
-
- &.range
- background-position: -37px 0
-
- &.before,
- &.after
- background: none
-
- &.default
- background-color: $color-skin-pointers-default-value
-
- div.jslider-pointer
- top: -6px
- width: 20px
- height: 17px
- background-position: -7px 0
-
- &.jslider-pointer-hover
- background-position: -7px -20px
-
- div.jslider-value
- left: 0
diff --git a/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-css.sass b/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-css.sass
deleted file mode 100644
index 887d1f99..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-css.sass
+++ /dev/null
@@ -1,110 +0,0 @@
-$skin-gray: #777575
-$skin-gray-2: #615959
-
-// Main slider custom overrided js css rules
-
-.sliderCSS
- div.jslider-bg
- i
- &.left
- left: 0
- width: 50%
- background-color: $color-skin-background
- background-image: none
-
- &.right
- width: 50%
- left: 50%
- background-color: $color-skin-background
- background-image: none
-
- &.before
- left: 0
- width: 1px
- background-color: $color-skin-css-pointers-before-value
- background-image: none
-
- &.default
- left: 0
- width: 1px
- z-index: 1
- background-color: $color-skin-css-pointers-default-value
- background-image: none
-
- &.after
- left: 0
- background-color: $color-skin-css-pointers-after-value
- background-image: none
-
- &.range
- +position(absolute, 0 null 20% null)
- +size(60% 5px)
- background-image: none
- background-color: $skin-gray
- z-index: 1
-
- div.jslider-pointer
- top: -3px
- left: 15px
- +size(10px)
- background-color: silver
- background-color: $skin-gray-2
- border-radius: 50%
-
- div.jslider-bg i, div.jslider-pointer
- background: none
-
- // vertical
- &.vertical
- td {
- height: 100%;
- }
- div.jslider-bg
- i
- left: 50%
- width: 5px
-
- &.left
- top: 0
- height: 50%
- background-color: $color-skin-background
- background-image: none
-
- &.right
- height: 50%
- top: 50%
- background-color: $color-skin-background
- background-image: none
-
- &.range
- height: 100%
- z-index: 1
- background-color: $skin-gray
- background-image: none
-
- &.before
- background-color: $color-skin-css-pointers-before-value
- background-image: none
-
- &.default
- height: 1px
- background-color: $color-skin-css-pointers-default-value
- background-image: none
- z-index: 2
-
- &.after
- background-color: $color-skin-css-pointers-after-value
- background-image: none
-
- div.jslider-bg i, div.jslider-pointer
- background: none
-
- div.jslider-pointer
- left: 50%
- +size(10px)
- background-color: $skin-gray-2
- border-radius: 50%
- margin-left: -3px
-
- &.jslider-pointer-to
- left: 50%
diff --git a/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-plastic.sass b/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-plastic.sass
deleted file mode 100644
index 5b5b5408..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-plastic.sass
+++ /dev/null
@@ -1,51 +0,0 @@
-// Plastic Skin
-
-.jslider_plastic
- .jslider-bg i,
- .jslider-pointer
- background: url("../img/jslider.plastic.png") no-repeat 0 0
-
- .jslider-bg
- i
- background-position: 2px -20px
-
- &.default
- background-color: $color-skin-pointers-default-value
-
- &.range
- z-index: 1
- background-position: 0 -40px
-
- .jslider-pointer
- z-index: 2
- +size(20px 17px)
- top: -6px
- background-position: 2px -60px
-
- &.vertical
- div.jslider-bg i,
- div.jslider-pointer
- background: url("../img/jslider.plastic.vertical.png") no-repeat 0 0
-
- div.jslider-bg
- i
- background-position: right 0
-
- &.range
- background-position: -35px 0
-
- &.before,
- &.after
- background: none
-
- &.default
- background-color: $color-skin-pointers-default-value
-
- div.jslider-pointer
- top: -6px
- margin-left: -6px
- +size(20px 17px)
- background-position: -7px -1px
-
- &.jslider-pointer-hover
- background-position: -7px -21px
diff --git a/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-round.sass b/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-round.sass
deleted file mode 100644
index 48e7cdb2..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/skins/_skin-round.sass
+++ /dev/null
@@ -1,56 +0,0 @@
-// Round Skin
-
-.jslider_round
- div.jslider-bg i,
- div.jslider-pointer
- background: url("../img/jslider.round.png") no-repeat 0 0
-
- div.jslider-bg
- i
- background-position: 0 -20px
-
- &.default
- background-color: $gray2
-
- &.range
- z-index: 1
- background-position: 0 -40px
-
- div.jslider-pointer
- top: -6px
- +size(20px 17px)
- background-position: 0 -60px
- z-index: 2
-
- &.vertical
- div.jslider-bg i,
- div.jslider-pointer
- background: url("../img/jslider.round.vertical.png") no-repeat 0 0
-
- div.jslider-bg
- i
- background-position: right 0
-
- &.range
- background-position: -37px 0
-
- &.before,
- &.after
- background: none
-
- &.default
- background-color: $color-skin-pointers-default-value
-
- div.jslider-pointer
- top: -6px
- +size(20px 17px)
- background-position: -4px -3px
-
- &.jslider-pointer-hover
- background-position: -4px -23px
-
- &.jslider-value-to
- left: 80%
-
- div.jslider-value
- left: 0
diff --git a/www/lib/angular-awesome-slider/src/css/sass/vertical/_labels.sass b/www/lib/angular-awesome-slider/src/css/sass/vertical/_labels.sass
deleted file mode 100644
index 0ced5eef..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/vertical/_labels.sass
+++ /dev/null
@@ -1,11 +0,0 @@
-.vertical
- div.jslider-label
- top: -5px
- margin-left: 22px
-
- &.jslider-label-to
- top: 100%
- left: inherit
- right: inherit
- margin-top: -5px
-
diff --git a/www/lib/angular-awesome-slider/src/css/sass/vertical/_main.sass b/www/lib/angular-awesome-slider/src/css/sass/vertical/_main.sass
deleted file mode 100644
index 64ba478f..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/vertical/_main.sass
+++ /dev/null
@@ -1,8 +0,0 @@
-// Vertical Styles
-
-@import vertical
-@import ranges
-@import pointers
-@import labels
-@import pointers-value
-@import scales
diff --git a/www/lib/angular-awesome-slider/src/css/sass/vertical/_pointers-value.sass b/www/lib/angular-awesome-slider/src/css/sass/vertical/_pointers-value.sass
deleted file mode 100644
index 22a22259..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/vertical/_pointers-value.sass
+++ /dev/null
@@ -1,9 +0,0 @@
-.vertical
- div.jslider-value
- top: 0
- left: 0
-
- div.jslider-value-to
- top: 80%
- left: 0
-
diff --git a/www/lib/angular-awesome-slider/src/css/sass/vertical/_pointers.sass b/www/lib/angular-awesome-slider/src/css/sass/vertical/_pointers.sass
deleted file mode 100644
index 11eb9984..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/vertical/_pointers.sass
+++ /dev/null
@@ -1,13 +0,0 @@
-.vertical
- div.jslider-pointer
- left: 62%
- background-position: -7px -1px
-
- &.jslider-pointer-hover
- background-position: -7px -21px
-
- &.jslider-pointer-to
- left: 62%
-
- &.jslider-pointer-to.jslider-pointer-hover
- background-position: -7px -21px
diff --git a/www/lib/angular-awesome-slider/src/css/sass/vertical/_ranges.sass b/www/lib/angular-awesome-slider/src/css/sass/vertical/_ranges.sass
deleted file mode 100644
index f6913499..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/vertical/_ranges.sass
+++ /dev/null
@@ -1,46 +0,0 @@
-.vertical
- div.jslider-bg i,
- .jslider-pointer
- background: url("../img/jslider.vertical.png") no-repeat 0 0
-
- div.jslider-bg
- position: relative
- height: 100%
-
- i
- +position(absolute, 0 null null null)
- width: 5px
- font-size: 0
-
- &.before
- left: 50%
- background: none
-
- &.left
- top: 0
- left: 50%
- height: 50%
- background-position: right 0
- background-repeat: repeat-y
-
- &.right
- top: 50%
- left: 50%
- height: 50%
- background-position: right 0
- background-repeat: repeat-y
-
- &.range
- position: absolute
- top: 0
- left: 50%
- +size(60% 100%)
- z-index: 1
- background-repeat: repeat-y
- background-position: -36px 0px
-
- &.default
- left: 50%
- +size(5px 1px)
- z-index: 1
- background-color: $color-pointers-default-value
diff --git a/www/lib/angular-awesome-slider/src/css/sass/vertical/_scales.sass b/www/lib/angular-awesome-slider/src/css/sass/vertical/_scales.sass
deleted file mode 100644
index f0bf764e..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/vertical/_scales.sass
+++ /dev/null
@@ -1,16 +0,0 @@
-.vertical
- div.jslider-scale
- position: inherit
-
- span
- position: absolute
- +size(5px 1px)
- border-left: none
- font-size: 0
- border-top: 1px solid #999
-
- ins
- +position(absolute, 5px null 0 null)
- font-size: 9px
- text-decoration: none
- color: $color-scale
diff --git a/www/lib/angular-awesome-slider/src/css/sass/vertical/_vertical.sass b/www/lib/angular-awesome-slider/src/css/sass/vertical/_vertical.sass
deleted file mode 100644
index b2e510cf..00000000
--- a/www/lib/angular-awesome-slider/src/css/sass/vertical/_vertical.sass
+++ /dev/null
@@ -1,13 +0,0 @@
-.vertical
- +position(relative, 0.6em null null null)
- display: block
- +size(17px 100%)
- font-family: Arial, sans-serif
-
- table
- height: 100%
-
- &.sliderCSS .jslider-bg i,
- &.jslider-pointer
- background-color: silver
- background-image: none
diff --git a/www/lib/angular-awesome-slider/src/css/scss/core/_variables.scss b/www/lib/angular-awesome-slider/src/css/scss/core/_variables.scss
deleted file mode 100644
index bb28b9dd..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/core/_variables.scss
+++ /dev/null
@@ -1,28 +0,0 @@
-// Colors
-
-$black: #000000;
-$white: #ffffff;
-$gray: #999999;
-$gray2: #c2c7Ca;
-$blue: #185f83;
-
-// Typography
-
-$font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;
-$font-family-base: $font-family-sans-serif;
-$font-size-pointers-label: 9px;
-$line-height-pointers-label: 12px;
-$font-size-pointers-value: $font-size-pointers-label;
-$line-height-pointers-value: $line-height-pointers-label;
-$color-pointers-label: $black;
-$color-pointers-value: $color-pointers-label;
-$color-scale: $gray;
-$color-pointers-default-value: $blue;
-
-// Skin CSS
-
-$color-skin-pointers-default-value: $gray2;
-$color-skin-background: silver;
-$color-skin-css-pointers-default-value: $white;
-$color-skin-css-pointers-before-value: rgba(92, 98, 203, 0.89);
-$color-skin-css-pointers-after-value: rgb(14, 23, 115);
diff --git a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_horizontal.scss b/www/lib/angular-awesome-slider/src/css/scss/horizontal/_horizontal.scss
deleted file mode 100644
index 31a36ac7..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_horizontal.scss
+++ /dev/null
@@ -1,24 +0,0 @@
-// Horizontal Styles
-
-.jslider {
- @include position(relative, 0.6em null null null);
- cursor: pointer;
- display: block;
- @include size(100% 1em);
- font-family: $font-family-base;
- &.disabled {
- opacity: 0.5;
- }
- table {
- border-collapse: collapse;
- border: 0;
- width: 100%;
- td, th {
- width: 100%;
- border: 0;
- padding: 0;
- text-align: left;
- vertical-align: top;
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_labels.scss b/www/lib/angular-awesome-slider/src/css/scss/horizontal/_labels.scss
deleted file mode 100644
index 4dfae6ae..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_labels.scss
+++ /dev/null
@@ -1,19 +0,0 @@
-div.jslider-label small,
-div.jslider-value small {
- @include position(relative, -0.4em null null null);
-}
-
-// limits
-div.jslider-label {
- @include position(absolute, -18px null 0 null);
- padding: 0px 2px;
- opacity: 0.4;
- color: $color-pointers-label;
- font-size: $font-size-pointers-label;
- line-height: $line-height-pointers-label;
- white-space: nowrap;
- &.jslider-label-to {
- left: auto;
- right: 0;
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_main.scss b/www/lib/angular-awesome-slider/src/css/scss/horizontal/_main.scss
deleted file mode 100644
index d18ae442..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_main.scss
+++ /dev/null
@@ -1,8 +0,0 @@
-// Horizontal Styles
-
-@import "horizontal";
-@import "ranges";
-@import "pointers";
-@import "labels";
-@import "pointers-value";
-@import "scale";
diff --git a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_pointers-value.scss b/www/lib/angular-awesome-slider/src/css/scss/horizontal/_pointers-value.scss
deleted file mode 100644
index b829c6d1..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_pointers-value.scss
+++ /dev/null
@@ -1,12 +0,0 @@
-div.jslider-value {
- @include position(absolute, -19px null 0 null);
- padding: 1px 2px 0;
- // background: white
- font-size: $font-size-pointers-value;
- line-height: $line-height-pointers-value;
- white-space: nowrap;
- border-radius: 2px;
- &.jslider-value-to {
- left: 80%;
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_pointers.scss b/www/lib/angular-awesome-slider/src/css/scss/horizontal/_pointers.scss
deleted file mode 100644
index 0799afa8..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_pointers.scss
+++ /dev/null
@@ -1,24 +0,0 @@
-// single value hide to
-.jslider-single {
- div.jslider-pointer-to,
- div.jslider-value-to,
- div.jslider-bg .v,
- .jslider-limitless .jslider-label {
- display: none;
- }
-}
-
-div.jslider-pointer {
- @include position(absolute, -4px null 20% null);
- @include size(15px);
- background-position: 2px -60px;
- margin-left: -8px;
- cursor: hand;
- z-index: 2;
- &.jslider-pointer-to {
- left: 80%;
- }
- &.jslider-pointer-hover {
- background-position: (-19px) -60px;
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_ranges.scss b/www/lib/angular-awesome-slider/src/css/scss/horizontal/_ranges.scss
deleted file mode 100644
index 26fb01f8..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_ranges.scss
+++ /dev/null
@@ -1,34 +0,0 @@
-div.jslider-bg i, div.jslider-pointer {
- background: url("../img/jslider.png") no-repeat 0 0;
-}
-
-div.jslider-bg {
- position: relative;
- i {
- @include position(absolute, 0 null null null);
- height: 5px;
- &.left {
- left: 0;
- width: 50%;
- background-position: 0 0;
- }
- &.right {
- left: 50%;
- width: 50%;
- background-position: right 0;
- }
- &.range {
- @include position(absolute, 0 null null 20%);
- @include size(60% 5px);
- background-repeat: repeat-x;
- background-position: 0 -40px;
- z-index: 1;
- }
- &.default {
- left: 0;
- width: 1px;
- z-index: 1;
- background-color: $color-pointers-default-value;
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_scale.scss b/www/lib/angular-awesome-slider/src/css/scss/horizontal/_scale.scss
deleted file mode 100644
index ca4be2cf..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/horizontal/_scale.scss
+++ /dev/null
@@ -1,16 +0,0 @@
-div.jslider-scale {
- position: relative;
- top: 9px;
- span {
- position: absolute;
- height: 5px;
- border-left: 1px solid $gray;
- font-size: 0;
- }
- ins {
- @include position(absolute, 5px null 0 null);
- font-size: 9px;
- text-decoration: none;
- color: $gray;
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/main.scss b/www/lib/angular-awesome-slider/src/css/scss/main.scss
deleted file mode 100644
index d00379b2..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/main.scss
+++ /dev/null
@@ -1,17 +0,0 @@
-// Import Bourbon Mixins
-@import "../../../bower_components/bourbon/app/assets/stylesheets/bourbon";
-
-// Main slider css rules
-@import "core/variables";
-
-// Horizontal Slider
-@import "horizontal/main";
-
-// Vertical Slider
-@import "vertical/main";
-
-// Skins
-@import "skins/skin-css";
-@import "skins/skin-round";
-@import "skins/skin-blue";
-@import "skins/skin-plastic";
diff --git a/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-blue.scss b/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-blue.scss
deleted file mode 100644
index 57011bea..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-blue.scss
+++ /dev/null
@@ -1,60 +0,0 @@
-// Blue Skin
-
-.jslider_blue {
- .jslider-bg i,
- .jslider-pointer {
- background: url("../img/jslider.blue.png") no-repeat 0 0;
- }
- .jslider-bg {
- i {
- background-position: 2px -20px;
- &.default {
- background-color: $color-skin-pointers-default-value;
- }
- &.range {
- z-index: 1;
- background-position: 0 -40px;
- }
- }
- }
- div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: 2px -60px;
- z-index: 2;
- }
- &.vertical {
- div.jslider-bg i,
- div.jslider-pointer {
- background: url("../img/jslider.blue.vertical.png") no-repeat 0 0;
- }
- div.jslider-bg {
- i {
- background-position: right 0;
- &.range {
- background-position: (-37px) 0;
- }
- &.before,
- &.after {
- background: none;
- }
- &.default {
- background-color: $color-skin-pointers-default-value;
- }
- }
- }
- div.jslider-pointer {
- top: -6px;
- width: 20px;
- height: 17px;
- background-position: (-7px) 0;
- &.jslider-pointer-hover {
- background-position: (-7px) -20px;
- }
- }
- div.jslider-value {
- left: 0;
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-css.scss b/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-css.scss
deleted file mode 100644
index dc0c68d4..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-css.scss
+++ /dev/null
@@ -1,116 +0,0 @@
-$skin-gray: #777575;
-$skin-gray-2: #615959;
-
-// Main slider custom overrided js css rules
-
-.sliderCSS {
- div.jslider-bg {
- i {
- &.left {
- left: 0;
- width: 50%;
- background-color: $color-skin-background;
- background-image: none;
- }
- &.right {
- width: 50%;
- left: 50%;
- background-color: $color-skin-background;
- background-image: none;
- }
- &.before {
- left: 0;
- width: 1px;
- background-color: $color-skin-css-pointers-before-value;
- background-image: none;
- }
- &.default {
- left: 0;
- width: 1px;
- z-index: 1;
- background-color: $color-skin-css-pointers-default-value;
- background-image: none;
- }
- &.after {
- left: 0;
- background-color: $color-skin-css-pointers-after-value;
- background-image: none;
- }
- &.range {
- @include position(absolute, 0 null 20% null);
- @include size(60% 5px);
- background-image: none;
- background-color: $skin-gray;
- z-index: 1;
- }
- }
- }
- div.jslider-pointer {
- top: -3px;
- left: 15px;
- @include size(10px);
- background-color: silver;
- background-color: $skin-gray-2;
- border-radius: 50%;
- }
- div.jslider-bg i, div.jslider-pointer {
- background: none;
- }
- // vertical
- &.vertical {
- td {
- height: 100%;
- }
- div.jslider-bg {
- i {
- left: 50%;
- width: 5px;
- &.left {
- top: 0;
- height: 50%;
- background-color: $color-skin-background;
- background-image: none;
- }
- &.right {
- height: 50%;
- top: 50%;
- background-color: $color-skin-background;
- background-image: none;
- }
- &.range {
- height: 100%;
- z-index: 1;
- background-color: $skin-gray;
- background-image: none;
- }
- &.before {
- background-color: $color-skin-css-pointers-before-value;
- background-image: none;
- }
- &.default {
- height: 1px;
- background-color: $color-skin-css-pointers-default-value;
- background-image: none;
- z-index: 2;
- }
- &.after {
- background-color: $color-skin-css-pointers-after-value;
- background-image: none;
- }
- }
- }
- div.jslider-bg i, div.jslider-pointer {
- background: none;
- }
- div.jslider-pointer {
- left: 50%;
- @include size(10px);
- background-color: $skin-gray-2;
- border-radius: 50%;
- margin-left: -3px;
- &.jslider-pointer-to {
- left: 50%;
- }
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-plastic.scss b/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-plastic.scss
deleted file mode 100644
index 04a18bf2..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-plastic.scss
+++ /dev/null
@@ -1,56 +0,0 @@
-// Plastic Skin
-
-.jslider_plastic {
- .jslider-bg i,
- .jslider-pointer {
- background: url("../img/jslider.plastic.png") no-repeat 0 0;
- }
- .jslider-bg {
- i {
- background-position: 2px -20px;
- &.default {
- background-color: $color-skin-pointers-default-value;
- }
- &.range {
- z-index: 1;
- background-position: 0 -40px;
- }
- }
- }
- .jslider-pointer {
- z-index: 2;
- @include size(20px 17px);
- top: -6px;
- background-position: 2px -60px;
- }
- &.vertical {
- div.jslider-bg i,
- div.jslider-pointer {
- background: url("../img/jslider.plastic.vertical.png") no-repeat 0 0;
- }
- div.jslider-bg {
- i {
- background-position: right 0;
- &.range {
- background-position: (-35px) 0;
- }
- &.before,
- &.after {
- background: none;
- }
- &.default {
- background-color: $color-skin-pointers-default-value;
- }
- }
- }
- div.jslider-pointer {
- top: -6px;
- margin-left: -6px;
- @include size(20px 17px);
- background-position: (-7px) -1px;
- &.jslider-pointer-hover {
- background-position: (-7px) -21px;
- }
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-round.scss b/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-round.scss
deleted file mode 100644
index 10ce3395..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/skins/_skin-round.scss
+++ /dev/null
@@ -1,61 +0,0 @@
-// Round Skin
-
-.jslider_round {
- div.jslider-bg i,
- div.jslider-pointer {
- background: url("../img/jslider.round.png") no-repeat 0 0;
- }
- div.jslider-bg {
- i {
- background-position: 0 -20px;
- &.default {
- background-color: $gray2;
- }
- &.range {
- z-index: 1;
- background-position: 0 -40px;
- }
- }
- }
- div.jslider-pointer {
- top: -6px;
- @include size(20px 17px);
- background-position: 0 -60px;
- z-index: 2;
- }
- &.vertical {
- div.jslider-bg i,
- div.jslider-pointer {
- background: url("../img/jslider.round.vertical.png") no-repeat 0 0;
- }
- div.jslider-bg {
- i {
- background-position: right 0;
- &.range {
- background-position: (-37px) 0;
- }
- &.before,
- &.after {
- background: none;
- }
- &.default {
- background-color: $color-skin-pointers-default-value;
- }
- }
- }
- div.jslider-pointer {
- top: -6px;
- @include size(20px 17px);
- background-position: (-4px) -3px;
- &.jslider-pointer-hover {
- background-position: (-4px) -23px;
- }
- &.jslider-value-to {
- left: 80%;
- }
- }
- div.jslider-value {
- left: 0;
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/vertical/_labels.scss b/www/lib/angular-awesome-slider/src/css/scss/vertical/_labels.scss
deleted file mode 100644
index 9feca95a..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/vertical/_labels.scss
+++ /dev/null
@@ -1,12 +0,0 @@
-.vertical {
- div.jslider-label {
- top: -5px;
- margin-left: 22px;
- &.jslider-label-to {
- top: 100%;
- left: inherit;
- right: inherit;
- margin-top: -5px;
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/vertical/_main.scss b/www/lib/angular-awesome-slider/src/css/scss/vertical/_main.scss
deleted file mode 100644
index 0267be94..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/vertical/_main.scss
+++ /dev/null
@@ -1,8 +0,0 @@
-// Vertical Styles
-
-@import "vertical";
-@import "ranges";
-@import "pointers";
-@import "labels";
-@import "pointers-value";
-@import "scales";
diff --git a/www/lib/angular-awesome-slider/src/css/scss/vertical/_pointers-value.scss b/www/lib/angular-awesome-slider/src/css/scss/vertical/_pointers-value.scss
deleted file mode 100644
index 3cea3a72..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/vertical/_pointers-value.scss
+++ /dev/null
@@ -1,10 +0,0 @@
-.vertical {
- div.jslider-value {
- top: 0;
- left: 0;
- }
- div.jslider-value-to {
- top: 80%;
- left: 0;
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/vertical/_pointers.scss b/www/lib/angular-awesome-slider/src/css/scss/vertical/_pointers.scss
deleted file mode 100644
index d5d7ed9c..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/vertical/_pointers.scss
+++ /dev/null
@@ -1,15 +0,0 @@
-.vertical {
- div.jslider-pointer {
- left: 62%;
- background-position: (-7px) -1px;
- &.jslider-pointer-hover {
- background-position: (-7px) -21px;
- }
- &.jslider-pointer-to {
- left: 62%;
- }
- &.jslider-pointer-to.jslider-pointer-hover {
- background-position: (-7px) -21px;
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/vertical/_ranges.scss b/www/lib/angular-awesome-slider/src/css/scss/vertical/_ranges.scss
deleted file mode 100644
index 7578ae77..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/vertical/_ranges.scss
+++ /dev/null
@@ -1,48 +0,0 @@
-.vertical {
- div.jslider-bg i,
- .jslider-pointer {
- background: url("../img/jslider.vertical.png") no-repeat 0 0;
- }
- div.jslider-bg {
- position: relative;
- height: 100%;
- i {
- @include position(absolute, 0 null null null);
- width: 5px;
- font-size: 0;
- &.before {
- left: 50%;
- background: none;
- }
- &.left {
- top: 0;
- left: 50%;
- height: 50%;
- background-position: right 0;
- background-repeat: repeat-y;
- }
- &.right {
- top: 50%;
- left: 50%;
- height: 50%;
- background-position: right 0;
- background-repeat: repeat-y;
- }
- &.range {
- position: absolute;
- top: 0;
- left: 50%;
- @include size(60% 100%);
- z-index: 1;
- background-repeat: repeat-y;
- background-position: (-36px) 0px;
- }
- &.default {
- left: 50%;
- @include size(5px 1px);
- z-index: 1;
- background-color: $color-pointers-default-value;
- }
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/vertical/_scales.scss b/www/lib/angular-awesome-slider/src/css/scss/vertical/_scales.scss
deleted file mode 100644
index c89e60bb..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/vertical/_scales.scss
+++ /dev/null
@@ -1,18 +0,0 @@
-.vertical {
- div.jslider-scale {
- position: inherit;
- span {
- position: absolute;
- @include size(5px 1px);
- border-left: none;
- font-size: 0;
- border-top: 1px solid #999;
- }
- ins {
- @include position(absolute, 5px null 0 null);
- font-size: 9px;
- text-decoration: none;
- color: $color-scale;
- }
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/css/scss/vertical/_vertical.scss b/www/lib/angular-awesome-slider/src/css/scss/vertical/_vertical.scss
deleted file mode 100644
index 64b67040..00000000
--- a/www/lib/angular-awesome-slider/src/css/scss/vertical/_vertical.scss
+++ /dev/null
@@ -1,14 +0,0 @@
-.vertical {
- @include position(relative, 0.6em null null null);
- display: block;
- @include size(17px 100%);
- font-family: Arial, sans-serif;
- table {
- height: 100%;
- }
- &.sliderCSS .jslider-bg i,
- &.jslider-pointer {
- background-color: silver;
- background-image: none;
- }
-}
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.blue.png b/www/lib/angular-awesome-slider/src/img/jslider.blue.png
deleted file mode 100644
index 454d727e..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.blue.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.blue.vertical.png b/www/lib/angular-awesome-slider/src/img/jslider.blue.vertical.png
deleted file mode 100644
index dceeffc8..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.blue.vertical.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.plastic.png b/www/lib/angular-awesome-slider/src/img/jslider.plastic.png
deleted file mode 100644
index cbb23263..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.plastic.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.plastic.vertical.png b/www/lib/angular-awesome-slider/src/img/jslider.plastic.vertical.png
deleted file mode 100644
index 00d6dfa7..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.plastic.vertical.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.png b/www/lib/angular-awesome-slider/src/img/jslider.png
deleted file mode 100644
index 08a1b450..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.round.plastic.png b/www/lib/angular-awesome-slider/src/img/jslider.round.plastic.png
deleted file mode 100644
index de166b47..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.round.plastic.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.round.png b/www/lib/angular-awesome-slider/src/img/jslider.round.png
deleted file mode 100644
index 071a5dba..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.round.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.round.vertical.png b/www/lib/angular-awesome-slider/src/img/jslider.round.vertical.png
deleted file mode 100644
index 186d1924..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.round.vertical.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/img/jslider.vertical.png b/www/lib/angular-awesome-slider/src/img/jslider.vertical.png
deleted file mode 100644
index 5df3c1a0..00000000
--- a/www/lib/angular-awesome-slider/src/img/jslider.vertical.png
+++ /dev/null
Binary files differ
diff --git a/www/lib/angular-awesome-slider/src/index.html b/www/lib/angular-awesome-slider/src/index.html
deleted file mode 100644
index 2f34491b..00000000
--- a/www/lib/angular-awesome-slider/src/index.html
+++ /dev/null
@@ -1,391 +0,0 @@
-<head>
-
-<!--
- <link rel="stylesheet" type="text/css" href="../dist/css/angular-awesome-slider.min.css">
--->
-
- <link rel="stylesheet" type="text/css" href="css/angular-awesome-slider.css">
-
- <script type="text/javascript" src="../bower_components/angular/angular.js"></script>
-
- <script type="text/javascript" src="core/index.js"></script>
- <script type="text/javascript" src="core/config/constants.js"></script>
- <script type="text/javascript" src="core/model/draggable.factory.js"></script>
- <script type="text/javascript" src="core/model/pointer.factory.js"></script>
- <script type="text/javascript" src="core/model/slider.factory.js"></script>
- <script type="text/javascript" src="core/utils/utils.factory.js"></script>
- <script type="text/javascript" src="core/template/slider.tmpl.js"></script>
-
- <!--<script type="text/javascript" src="../dist/angular-awesome-slider.js"></script>-->
-
-
-<!--
- <script type="text/javascript" src="../dist/angular-awesome-slider.min.js"></script>
- -->
-
-
-
-</head>
-<body>
-
- <div ng-app="myApp" ng-controller="ctrl" style="width:700px;">
-
- <div>
- <div id="slider-range-container" slider-range-filter ng-if="true"></div>
- </div>
- <button ng-click='changeValueAndProperty()'>CHANGE VALUE</button>
- </br>
- </br>
- <div>
- <input ng-model="value3bis" type="text" id="coucou" slider ng-disabled="disabled" options="{
- from: 1,
- to: 100,
- step: 1,
- dimension: ' km',
- vertical: false,
- limits: false,
- css: {
- range: {'background': 'transparent'},
- background: {'background-color': 'yellow'},
- before: {'background-color': 'purple'},
- default: {'background-color': 'white'},
- after: {'background-color': 'green'},
- pointer: {'background-color': 'red'}
- },
- className: 'customClass'
- }"/>
- </div>
- <div>
- Current value is: {{value3bis}}
- </div>
- </br>
- <div>
- sdsdqsdsqd<input ng-model="value" type="text" id="{{id2}}" slider options="options" ng-disabled="disabled" />
- </div>
- <div>
- Current value is: {{value}}
- </div>
- <div>
- <input ng-model="valueDate" type="text" slider options="optionsDate" ng-disabled="disabled" />
- </div> -->
- <div>
- Current value is: {{valueDate}}
- </div>
- <div>
- sdsdqsdsqd<input ng-model="value" type="text" id="coucou" slider options="optionsCss" ng-disabled="disabled" />
- </div>
- <div>
- Current value is: {{value}}
- </div>
- <div ng-show="show">
- <input ng-model="valueVisibility" type="text" id="vvvv" slider options="optionsVisibility" ng-disabled="disabled" />
- </div>
- <div>
- Current value is: {{valueVisibility}}
- </div>
-
- </br>
- </br>
- <div>
- <input ng-model="data.quote.coverages.coverageA" type="text" id="{{id}}" slider options="coverageASliderOptions" ng-disabled="disabled" />
- </br>
- </br>
- <div>
- Current value is: {{data.quote.coverages.coverageA}}
- </div>
- </br>
- </br>
- <div>
- <input ng-model="value2" type="text" id="mySlider3" slider options="options" ng-disabled="disabled"/>
- </div>
- <div>
- Current value is: {{value2}}
- </div>
- <div >
- <input ng-model="value4" type="text" id="mySlider4" slider options="options3" ng-disabled="disabled"/>
- </div>
- <div>
- Current value is: {{value4}}
- </div>
- <div style="display: inline-flex;position:relative;left:200px;height:300px;">
- <input ng-model="value5" type="text" id="mySlider5" slider options="optionsV" ng-disabled="disabledtoto" />
- <input ng-model="value6" type="text" id="mySlider6" slider options="options2V" ng-disabled="disabled"/>
- <input ng-model="value6" type="text" id="mySlider7" slider options="options2VCSS" ng-disabled="disabled"/>
- </div>
- <div>
- <button ng-click='changeOptions()'>CHANGE OPTIONS</button>
- <button ng-click='changeValue()'>CHANGE VALUE</button>
- <button ng-click='disable()'>DISABLE</button>
- <button ng-click="toggleVisibility()">VISIBILITY</button>
- </div>
-
- </div>
-
- <script type="text/javascript">
-
- "use strict";
-
- function ctrl($scope, $filter, $timeout) {
- $scope.show = false;
- $timeout(function() {
- $scope.show = true;
- }, 1000);
- $scope.id = "bob";
- $scope.id2 = "bob";
- $scope.value = "10;20";
- $scope.value2 = "12;15";
- $scope.value3 = {value:"7;20"};
- $scope.value3bis = "8";
- $scope.value4 = "999;1700";
- $scope.value5 = "10;20";
- $scope.value6 = "10;53";
- $scope.valueVisibility = "40;70";
- $scope.disa = true;
- $scope.disabledtoto = false;
- $scope.data = {
- quote: {
- coverages: {
- coverageA: 200000
- }
- }
- };
- $scope.defaultAmount=190000;
-
- $scope.coverageASliderOptions = {
- from: $scope.defaultAmount,
- to: $scope.defaultAmount+ ($scope.defaultAmount* 0.20),
- step: 500,
- calculate: function(value) {
- return $filter('currency')(value, '$', 0);
- }
- };
-
- $scope.disable = function() {
- $scope.disabledtoto = !$scope.disabledtoto;
- };
- $scope.toggleVisibility = function () {
- $scope.show = !$scope.show;
- };
-
- var calculate = function( value ) {
- var hours = Math.floor( value / 60 );
- var mins = ( value - hours*60 );
- return (hours < 10 ? "0"+hours : hours) + ":" + ( mins == 0 ? "00" : mins );
- };
-
- $scope.options = {
- from: 1,
- to: 100,
- floor: true,
- step: 1,
- dimension: " km",
- vertical: false,
- threshold: 5,
- callback: function(value, elt) {
- console.log(value);
- }
- };
-
- $scope.valueDate = 1429864200;
-
- var modelLabelsFn = function(value) {
- var d = new Date(value);
- return d.toLocaleDateString() + ' - ' + d.toLocaleTimeString();
- }
-
- $scope.optionsDate = {
- from: 1429798600,
- to: 1429877200,
- step: 60 * 60,
- vertical: false,
- skin: 'plastic',
- limits: true,
- modelLabels: modelLabelsFn,
- callback: function(value, released) {
- console.log(value + " " + released);
- }
- };
-
- $scope.optionsVisibility = {
- from: 10,
- to: 100,
- step: 1,
- dimension: ' min',
- callback: function(value, elt) {
- console.log(value);
- }
- };
-
- $scope.optionsCss = {
- from: 0,
- to: 40,
- step: 0.5,
- dimension: " $",
- vertical: false,
- round: 1,
- css: {
- background: {'background-color': 'yellow'},
- before: {'background-color': 'purple'},
- default: {'background-color': 'white'},
- after: {'background-color': 'green'},
- pointer: {'background-color': 'red'}
- },
- callback: function(value, elt) {
- console.log(value);
- }
- };
-
- $scope.optionsV = {
- from: 0,
- to: 40,
- step: 0.5,
- dimension: " $",
- round: 1,
- skin: 'jslider_blue',
- scale: [0, '|', 10, '|', 20, '|' , 30, '|', 40],
- vertical: true,
- /*css: {
- background: {"background-color": "yellow"},
- before: {"background-color": "purple"},
- default: {"background-color": "blue"},
- after: {"background-color": "green"},
- pointer: {"background-color": "red"}
- },*/
- callback: function(value, elt) {
- console.log(value);
- console.log(elt);
- }
- // calculate: calculate
- };
-
- $scope.options2 = {
- from: 0,
- to: 100,
- floor: true,
- step: 10,
- dimension: " km",
- css: {
- background: {"background-color": "yellow"},
- before: {"background-color": "purple"},
- default: {"background-color": "white"},
- after: {"background-color": "green"},
- pointer: {"background-color": "red"}
- },
- callback: function(value, elt) {
- console.log(value);
- }
- };
-
- $scope.options2V = {
- from: 1,
- to: 100,
- floor: true,
- step: 10,
- dimension: " km",
- vertical: true,
- skin: 'round',
- callback: function(value, elt) {
- console.log(value);
- }
- };
-
- $scope.options2VCSS = {
- from: 1,
- to: 100,
- floor: true,
- step: 10,
- dimension: " km",
- vertical: true,
- css: {
- background: {"background-color": "yellow"},
- before: {"background-color": "purple"},
- default: {"background-color": "blue"},
- after: {"background-color": "green"},
- pointer: {"background-color": "red"}
- },
- callback: function(value, elt) {
- console.log(value);
- }
- };
-
- $scope.options3 = {
- from: 700,
- to: 2100,
- step: 1,
- smooth: false,
- dimension: " mb",
- callback: function(value, elt) {
- console.log(value);
- }
- };
-
- $scope.changeOptions = function() {
-
- $scope.options = {
- from: 0,
- to: 80,
- step: 1,
- threshold: 10,
- dimension: " $",
- scale: [0, '|', 10, '|', 20, '|' , 30, '|', 40, '|', 50, '|', 60, '|', 70, '|', 80]
- };
-
- $scope.optionsCss = {
- from: 1,
- to: 100,
- step: 1,
- dimension: " km",
- vertical: false,
- threshold: 10,
- css: {
- background: {'background-color': 'yellow'},
- before: {'background-color': 'purple'},
- default: {'background-color': 'white'},
- after: {'background-color': 'green'},
- pointer: {'background-color': 'red'}
- },
- callback: function(value, elt) {
- console.log(value);
- }
- };
-
- };
-
-
- $scope.changeValue = function() {
-
- $scope.value = "11;15";
- $scope.value2 = "13;15";
- $scope.value3 = 20;
- $scope.value4 = "700;1000";
-
- };
-
- $scope.changeValueAndProperty = function() {
- $scope.options = {
- from: 1,
- to: 60,
- step: 1,
- dimension: ""
- };
- $scope.value3 = {value:"10;50"};
- };
-
-
- }
-
- var app = angular.module('myApp', ['angularAwesomeSlider']).controller('ctrl', ctrl);
-
- app.directive('sliderRangeFilter', [function() {
- return {
- restrict: 'A',
- template: '<div id="searchBySliderFilter" class="filter-slider"><input ng-model="value3.value" type="text" id="mySlider1" slider options="options" /></div><div>Current value is: {{value3.value}}</div>',
- link: function($scope, element, attrs) {
- }
-
- };
- }]);
-
- </script>
-
-</body>
diff --git a/www/lib/angular-awesome-slider/src/jquery.slider.js b/www/lib/angular-awesome-slider/src/jquery.slider.js
deleted file mode 100644
index 60c86773..00000000
--- a/www/lib/angular-awesome-slider/src/jquery.slider.js
+++ /dev/null
@@ -1,700 +0,0 @@
-/**
- * jquery.slider - Slider ui control in jQuery
- *
- * Written by
- * Egor Khmelev (hmelyoff@gmail.com)
- *
- * Licensed under the MIT (MIT-LICENSE.txt).
- *
- * @author Egor Khmelev
- * @version 1.1.0-RELEASE ($Id$)
- *
- * Dependencies
- *
- * jQuery (http://jquery.com)
- * jquery.numberformatter (http://code.google.com/p/jquery-numberformatter/)
- * tmpl (http://ejohn.org/blog/javascript-micro-templating/)
- * jquery.dependClass
- * draggable
- *
- **/
-
-(function( $ ) {
-
- function isArray( value ){
- if( typeof value == "undefined" ) return false;
-
- if (value instanceof Array || (!(value instanceof Object) &&
- (Object.prototype.toString.call((value)) == '[object Array]') ||
- typeof value.length == 'number' &&
- typeof value.splice != 'undefined' &&
- typeof value.propertyIsEnumerable != 'undefined' &&
- !value.propertyIsEnumerable('splice')
- )) {
- return true;
- }
-
- return false;
- }
-
- $.slider = function( node, settings ){
- var jNode = $(node);
- if( !jNode.data( "jslider" ) )
- jNode.data( "jslider", new jSlider( node, settings ) );
-
- return jNode.data( "jslider" );
- };
-
- $.fn.slider = function( action, opt_value ){
- var returnValue, args = arguments;
-
- function isDef( val ){
- return val !== undefined;
- };
-
- function isDefAndNotNull( val ){
- return val != null;
- };
-
- this.each(function(){
- var self = $.slider( this, action );
-
- // do actions
- if( typeof action == "string" ){
- switch( action ){
- case "value":
- if( isDef( args[ 1 ] ) && isDef( args[ 2 ] ) ){
- var pointers = self.getPointers();
- if( isDefAndNotNull( pointers[0] ) && isDefAndNotNull( args[1] ) ){
- pointers[0].set( args[ 1 ] );
- pointers[0].setIndexOver();
- }
-
- if( isDefAndNotNull( pointers[1] ) && isDefAndNotNull( args[2] ) ){
- pointers[1].set( args[ 2 ] );
- pointers[1].setIndexOver();
- }
- }
-
- else if( isDef( args[ 1 ] ) ){
- var pointers = self.getPointers();
- if( isDefAndNotNull( pointers[0] ) && isDefAndNotNull( args[1] ) ){
- pointers[0].set( args[ 1 ] );
- pointers[0].setIndexOver();
- }
- }
-
- else
- returnValue = self.getValue();
-
- break;
-
- case "prc":
- if( isDef( args[ 1 ] ) && isDef( args[ 2 ] ) ){
- var pointers = self.getPointers();
- if( isDefAndNotNull( pointers[0] ) && isDefAndNotNull( args[1] ) ){
- pointers[0]._set( args[ 1 ] );
- pointers[0].setIndexOver();
- }
-
- if( isDefAndNotNull( pointers[1] ) && isDefAndNotNull( args[2] ) ){
- pointers[1]._set( args[ 2 ] );
- pointers[1].setIndexOver();
- }
- }
-
- else if( isDef( args[ 1 ] ) ){
- var pointers = self.getPointers();
- if( isDefAndNotNull( pointers[0] ) && isDefAndNotNull( args[1] ) ){
- pointers[0]._set( args[ 1 ] );
- pointers[0].setIndexOver();
- }
- }
-
- else
- returnValue = self.getPrcValue();
-
- break;
-
- case "calculatedValue":
- var value = self.getValue().split(";");
- returnValue = "";
- for (var i=0; i < value.length; i++) {
- returnValue += (i > 0 ? ";" : "") + self.nice( value[i] );
- };
-
- break;
-
- case "skin":
- self.setSkin( args[1] );
-
- break;
- };
-
- }
-
- // return actual object
- else if( !action && !opt_value ){
- if( !isArray( returnValue ) )
- returnValue = [];
-
- returnValue.push( self );
- }
- });
-
- // flatten array just with one slider
- if( isArray( returnValue ) && returnValue.length == 1 )
- returnValue = returnValue[ 0 ];
-
- return returnValue || this;
- };
-
- var OPTIONS = {
-
- settings: {
- from: 1,
- to: 10,
- step: 1,
- smooth: true,
- limits: true,
- round: 0,
- format: { format: "#,##0.##" },
- value: "5;7",
- dimension: ""
- },
-
- className: "jslider",
- selector: ".jslider-",
-
- template: tmpl(
- '<span class="<%=className%>">' +
- '<table><tr><td>' +
- '<div class="<%=className%>-bg">' +
- '<i class="l"></i><i class="f"></i><i class="r"></i>' +
- '<i class="v"></i>' +
- '</div>' +
-
- '<div class="<%=className%>-pointer"></div>' +
- '<div class="<%=className%>-pointer <%=className%>-pointer-to"></div>' +
-
- '<div class="<%=className%>-label"><span><%=settings.from%></span></div>' +
- '<div class="<%=className%>-label <%=className%>-label-to"><span><%=settings.to%></span><%=settings.dimension%></div>' +
-
- '<div class="<%=className%>-value"><span></span><%=settings.dimension%></div>' +
- '<div class="<%=className%>-value <%=className%>-value-to"><span></span><%=settings.dimension%></div>' +
-
- '<div class="<%=className%>-scale"><%=scale%></div>'+
-
- '</td></tr></table>' +
- '</span>'
- )
-
- };
-
- function jSlider(){
- return this.init.apply( this, arguments );
- };
-
- jSlider.prototype.init = function( node, settings ){
- this.settings = $.extend(true, {}, OPTIONS.settings, settings ? settings : {});
-
- // obj.sliderHandler = this;
- this.inputNode = $( node ).hide();
-
- this.settings.interval = this.settings.to-this.settings.from;
- this.settings.value = this.inputNode.attr("value");
-
- if( this.settings.calculate && $.isFunction( this.settings.calculate ) )
- this.nice = this.settings.calculate;
-
- if( this.settings.onstatechange && $.isFunction( this.settings.onstatechange ) )
- this.onstatechange = this.settings.onstatechange;
-
- this.is = {
- init: false
- };
- this.o = {};
-
- this.create();
- };
-
- jSlider.prototype.onstatechange = function(){
-
- };
-
- jSlider.prototype.create = function(){
- var $this = this;
-
- this.domNode = $( OPTIONS.template({
- className: OPTIONS.className,
- settings: {
- from: this.nice( this.settings.from ),
- to: this.nice( this.settings.to ),
- dimension: this.settings.dimension
- },
- scale: this.generateScale()
- }) );
-
- this.inputNode.after( this.domNode );
- this.drawScale();
-
- // set skin class
- if( this.settings.skin && this.settings.skin.length > 0 )
- this.setSkin( this.settings.skin );
-
- this.sizes = {
- domWidth: this.domNode.width(),
- domOffset: this.domNode.offset()
- };
-
- // find some objects
- $.extend(this.o, {
- pointers: {},
- labels: {
- 0: {
- o: this.domNode.find(OPTIONS.selector + "value").not(OPTIONS.selector + "value-to")
- },
- 1: {
- o: this.domNode.find(OPTIONS.selector + "value").filter(OPTIONS.selector + "value-to")
- }
- },
- limits: {
- 0: this.domNode.find(OPTIONS.selector + "label").not(OPTIONS.selector + "label-to"),
- 1: this.domNode.find(OPTIONS.selector + "label").filter(OPTIONS.selector + "label-to")
- }
- });
-
- $.extend(this.o.labels[0], {
- value: this.o.labels[0].o.find("span")
- });
-
- $.extend(this.o.labels[1], {
- value: this.o.labels[1].o.find("span")
- });
-
-
- if( !$this.settings.value.split(";")[1] ){
- this.settings.single = true;
- this.domNode.addDependClass("single");
- }
-
- if( !$this.settings.limits )
- this.domNode.addDependClass("limitless");
-
- this.domNode.find(OPTIONS.selector + "pointer").each(function( i ){
- var value = $this.settings.value.split(";")[i];
- if( value ){
- $this.o.pointers[i] = new jSliderPointer( this, i, $this );
-
- var prev = $this.settings.value.split(";")[i-1];
- if( prev && new Number(value) < new Number(prev) ) value = prev;
-
- value = value < $this.settings.from ? $this.settings.from : value;
- value = value > $this.settings.to ? $this.settings.to : value;
-
- $this.o.pointers[i].set( value, true );
- }
- });
-
- this.o.value = this.domNode.find(".v");
- this.is.init = true;
-
- $.each(this.o.pointers, function(i){
- $this.redraw(this);
- });
-
- (function(self){
- $(window).resize(function(){
- self.onresize();
- });
- })(this);
-
- };
-
- jSlider.prototype.setSkin = function( skin ){
- if( this.skin_ )
- this.domNode.removeDependClass( this.skin_, "_" );
-
- this.domNode.addDependClass( this.skin_ = skin, "_" );
- };
-
- jSlider.prototype.setPointersIndex = function( i ){
- $.each(this.getPointers(), function(i){
- this.index( i );
- });
- };
-
- jSlider.prototype.getPointers = function(){
- return this.o.pointers;
- };
-
- jSlider.prototype.generateScale = function(){
- if( this.settings.scale && this.settings.scale.length > 0 ){
- var str = "";
- var s = this.settings.scale;
- var prc = Math.round((100/(s.length-1))*10)/10;
- for( var i=0; i < s.length; i++ ){
- str += '<span style="left: ' + i*prc + '%">' + ( s[i] != '|' ? '<ins>' + s[i] + '</ins>' : '' ) + '</span>';
- };
- return str;
- } else return "";
-
- return "";
- };
-
- jSlider.prototype.drawScale = function(){
- this.domNode.find(OPTIONS.selector + "scale span ins").each(function(){
- $(this).css({ marginLeft: -$(this).outerWidth()/2 });
- });
- };
-
- jSlider.prototype.onresize = function(){
- var self = this;
- this.sizes = {
- domWidth: this.domNode.width(),
- domOffset: this.domNode.offset()
- };
-
- $.each(this.o.pointers, function(i){
- self.redraw(this);
- });
- };
-
- jSlider.prototype.update = function(){
- this.onresize();
- this.drawScale();
- };
-
- jSlider.prototype.limits = function( x, pointer ){
- // smooth
- if( !this.settings.smooth ){
- var step = this.settings.step*100 / ( this.settings.interval );
- x = Math.round( x/step ) * step;
- }
-
- var another = this.o.pointers[1-pointer.uid];
- if( another && pointer.uid && x < another.value.prc ) x = another.value.prc;
- if( another && !pointer.uid && x > another.value.prc ) x = another.value.prc;
-
- // base limit
- if( x < 0 ) x = 0;
- if( x > 100 ) x = 100;
-
- return Math.round( x*10 ) / 10;
- };
-
- jSlider.prototype.redraw = function( pointer ){
- if( !this.is.init ) return false;
-
- this.setValue();
-
- // redraw range line
- if( this.o.pointers[0] && this.o.pointers[1] )
- this.o.value.css({ left: this.o.pointers[0].value.prc + "%", width: ( this.o.pointers[1].value.prc - this.o.pointers[0].value.prc ) + "%" });
-
- this.o.labels[pointer.uid].value.html(
- this.nice(
- pointer.value.origin
- )
- );
-
- // redraw position of labels
- this.redrawLabels( pointer );
-
- };
-
- jSlider.prototype.redrawLabels = function( pointer ){
-
- function setPosition( label, sizes, prc ){
- sizes.margin = -sizes.label/2;
-
- // left limit
- label_left = sizes.border + sizes.margin;
- if( label_left < 0 )
- sizes.margin -= label_left;
-
- // right limit
- if( sizes.border+sizes.label / 2 > self.sizes.domWidth ){
- sizes.margin = 0;
- sizes.right = true;
- } else
- sizes.right = false;
-
- label.o.css({ left: prc + "%", marginLeft: sizes.margin, right: "auto" });
- if( sizes.right ) label.o.css({ left: "auto", right: 0 });
- return sizes;
- }
-
- var self = this;
- var label = this.o.labels[pointer.uid];
- var prc = pointer.value.prc;
-
- var sizes = {
- label: label.o.outerWidth(),
- right: false,
- border: ( prc * this.sizes.domWidth ) / 100
- };
-
- if( !this.settings.single ){
- // glue if near;
- var another = this.o.pointers[1-pointer.uid];
- var another_label = this.o.labels[another.uid];
-
- switch( pointer.uid ){
- case 0:
- if( sizes.border+sizes.label / 2 > another_label.o.offset().left-this.sizes.domOffset.left ){
- another_label.o.css({ visibility: "hidden" });
- another_label.value.html( this.nice( another.value.origin ) );
-
- label.o.css({ visibility: "visible" });
-
- prc = ( another.value.prc - prc ) / 2 + prc;
- if( another.value.prc != pointer.value.prc ){
- label.value.html( this.nice(pointer.value.origin) + "&nbsp;&ndash;&nbsp;" + this.nice(another.value.origin) );
- sizes.label = label.o.outerWidth();
- sizes.border = ( prc * this.sizes.domWidth ) / 100;
- }
- } else {
- another_label.o.css({ visibility: "visible" });
- }
- break;
-
- case 1:
- if( sizes.border - sizes.label / 2 < another_label.o.offset().left - this.sizes.domOffset.left + another_label.o.outerWidth() ){
- another_label.o.css({ visibility: "hidden" });
- another_label.value.html( this.nice(another.value.origin) );
-
- label.o.css({ visibility: "visible" });
-
- prc = ( prc - another.value.prc ) / 2 + another.value.prc;
- if( another.value.prc != pointer.value.prc ){
- label.value.html( this.nice(another.value.origin) + "&nbsp;&ndash;&nbsp;" + this.nice(pointer.value.origin) );
- sizes.label = label.o.outerWidth();
- sizes.border = ( prc * this.sizes.domWidth ) / 100;
- }
- } else {
- another_label.o.css({ visibility: "visible" });
- }
- break;
- }
- }
-
- sizes = setPosition( label, sizes, prc );
-
- /* draw second label */
- if( another_label ){
- var sizes = {
- label: another_label.o.outerWidth(),
- right: false,
- border: ( another.value.prc * this.sizes.domWidth ) / 100
- };
- sizes = setPosition( another_label, sizes, another.value.prc );
- }
-
- this.redrawLimits();
- };
-
- jSlider.prototype.redrawLimits = function(){
- if( this.settings.limits ){
-
- var limits = [ true, true ];
-
- for( key in this.o.pointers ){
-
- if( !this.settings.single || key == 0 ){
-
- var pointer = this.o.pointers[key];
- var label = this.o.labels[pointer.uid];
- var label_left = label.o.offset().left - this.sizes.domOffset.left;
-
- var limit = this.o.limits[0];
- if( label_left < limit.outerWidth() )
- limits[0] = false;
-
- var limit = this.o.limits[1];
- if( label_left + label.o.outerWidth() > this.sizes.domWidth - limit.outerWidth() )
- limits[1] = false;
- }
-
- };
-
- for( var i=0; i < limits.length; i++ ){
- if( limits[i] )
- this.o.limits[i].fadeIn("fast");
- else
- this.o.limits[i].fadeOut("fast");
- };
-
- }
- };
-
- jSlider.prototype.setValue = function(){
- var value = this.getValue();
- this.inputNode.attr( "value", value );
- this.onstatechange.call( this, value );
- };
-
- jSlider.prototype.getValue = function(){
- if(!this.is.init) return false;
- var $this = this;
-
- var value = "";
- $.each( this.o.pointers, function(i){
- if( this.value.prc != undefined && !isNaN(this.value.prc) ) value += (i > 0 ? ";" : "") + $this.prcToValue( this.value.prc );
- });
- return value;
- };
-
- jSlider.prototype.getPrcValue = function(){
- if(!this.is.init) return false;
- var $this = this;
-
- var value = "";
- $.each( this.o.pointers, function(i){
- if( this.value.prc != undefined && !isNaN(this.value.prc) ) value += (i > 0 ? ";" : "") + this.value.prc;
- });
- return value;
- };
-
- jSlider.prototype.prcToValue = function( prc ){
-
- if( this.settings.heterogeneity && this.settings.heterogeneity.length > 0 ){
- var h = this.settings.heterogeneity;
-
- var _start = 0;
- var _from = this.settings.from;
-
- for( var i=0; i <= h.length; i++ ){
- if( h[i] ) var v = h[i].split("/");
- else var v = [100, this.settings.to];
-
- v[0] = new Number(v[0]);
- v[1] = new Number(v[1]);
-
- if( prc >= _start && prc <= v[0] ) {
- var value = _from + ( (prc-_start) * (v[1]-_from) ) / (v[0]-_start);
- }
-
- _start = v[0];
- _from = v[1];
- };
-
- } else {
- var value = this.settings.from + ( prc * this.settings.interval ) / 100;
- }
-
- return this.round( value );
- };
-
- jSlider.prototype.valueToPrc = function( value, pointer ){
- if( this.settings.heterogeneity && this.settings.heterogeneity.length > 0 ){
- var h = this.settings.heterogeneity;
-
- var _start = 0;
- var _from = this.settings.from;
-
- for (var i=0; i <= h.length; i++) {
- if(h[i]) var v = h[i].split("/");
- else var v = [100, this.settings.to];
- v[0] = new Number(v[0]); v[1] = new Number(v[1]);
-
- if(value >= _from && value <= v[1]){
- var prc = pointer.limits(_start + (value-_from)*(v[0]-_start)/(v[1]-_from));
- }
-
- _start = v[0]; _from = v[1];
- };
-
- } else {
- var prc = pointer.limits((value-this.settings.from)*100/this.settings.interval);
- }
-
- return prc;
- };
-
- jSlider.prototype.round = function( value ){
- value = Math.round( value / this.settings.step ) * this.settings.step;
- if( this.settings.round ) value = Math.round( value * Math.pow(10, this.settings.round) ) / Math.pow(10, this.settings.round);
- else value = Math.round( value );
- return value;
- };
-
- jSlider.prototype.nice = function( value ){
- value = value.toString().replace(/,/gi, ".").replace(/ /gi, "");;
-
- if( $.formatNumber ){
- return $.formatNumber( new Number(value), this.settings.format || {} ).replace( /-/gi, "&minus;" );
- }
-
- else {
- return new Number(value);
- }
- };
-
-
- function jSliderPointer(){
- Draggable.apply( this, arguments );
- }
- jSliderPointer.prototype = new Draggable();
-
- jSliderPointer.prototype.oninit = function( ptr, id, _constructor ){
- this.uid = id;
- this.parent = _constructor;
- this.value = {};
- this.settings = this.parent.settings;
- };
-
- jSliderPointer.prototype.onmousedown = function(evt){
- this._parent = {
- offset: this.parent.domNode.offset(),
- width: this.parent.domNode.width()
- };
- this.ptr.addDependClass("hover");
- this.setIndexOver();
- };
-
- jSliderPointer.prototype.onmousemove = function( evt, x ){
- var coords = this._getPageCoords( evt );
- this._set( this.calc( coords.x ) );
- };
-
- jSliderPointer.prototype.onmouseup = function( evt ){
- if( this.parent.settings.callback && $.isFunction(this.parent.settings.callback) )
- this.parent.settings.callback.call( this.parent, this.parent.getValue() );
-
- this.ptr.removeDependClass("hover");
- };
-
- jSliderPointer.prototype.setIndexOver = function(){
- this.parent.setPointersIndex( 1 );
- this.index( 2 );
- };
-
- jSliderPointer.prototype.index = function( i ){
- this.ptr.css({ zIndex: i });
- };
-
- jSliderPointer.prototype.limits = function( x ){
- return this.parent.limits( x, this );
- };
-
- jSliderPointer.prototype.calc = function(coords){
- var x = this.limits(((coords-this._parent.offset.left)*100)/this._parent.width);
- return x;
- };
-
- jSliderPointer.prototype.set = function( value, opt_origin ){
- this.value.origin = this.parent.round(value);
- this._set( this.parent.valueToPrc( value, this ), opt_origin );
- };
-
- jSliderPointer.prototype._set = function( prc, opt_origin ){
- if( !opt_origin )
- this.value.origin = this.parent.prcToValue(prc);
-
- this.value.prc = prc;
- this.ptr.css({ left: prc + "%" });
- this.parent.redraw(this);
- };
-
-})(jQuery);