uawdijnntqw1x1x1
IP : 216.73.216.110
Hostname : 6.87.74.97.host.secureserver.net
Kernel : Linux 6.87.74.97.host.secureserver.net 4.18.0-553.83.1.el8_10.x86_64 #1 SMP Mon Nov 10 04:22:44 EST 2025 x86_64
Disable Function : None :)
OS : Linux
PATH:
/
home
/
emeraadmin
/
www
/
node_modules
/
.
/
..
/
smmsg.com
/
..
/
4d695
/
jquery-bar-rating.tar
/
/
karma.conf.js000064400000003531151676730720007141 0ustar00module.exports = function (config) { config.set({ // base path, that will be used to resolve files and exclude basePath: '', frameworks: ['mocha', 'chai'], // list of files / patterns to load in the browser files: [ 'node_modules/jquery/dist/jquery.js', 'jquery.barrating.js', 'test/*.js' ], // list of files to exclude exclude: [ ], preprocessors: { }, // possible values: 'progress', 'junit' // CLI --reporters progress reporters: ['progress', 'junit'], junitReporter: { outputDir: '', outputFile: 'test-results.xml' }, // web server port // CLI --port 9876 port: 9876, // enable / disable colors in the output (reporters and logs) // CLI --colors --no-colors colors: true, // level of logging // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG // CLI --log-level debug logLevel: config.LOG_INFO, // enable / disable watching file and executing tests whenever any file changes // CLI --auto-watch --no-auto-watch autoWatch: true, // Start these browsers, currently available: // - Chrome // - ChromeCanary // - Firefox // - Opera // - Safari (only Mac) // - PhantomJS // - IE (only Windows) // CLI --browsers Chrome,Firefox,Safari browsers: ['PhantomJS'], // If browser does not capture in given timeout [ms], kill it // CLI --capture-timeout 5000 captureTimeout: 20000, // Auto run tests on start (when browsers are captured) and exit // CLI --single-run --no-single-run singleRun: true, // report which specs are slower than 500ms // CLI --report-slower-than 500 reportSlowerThan: 500 }) }package.json000064400000003717151676730720007060 0ustar00{ "_args": [ [ "jquery-bar-rating@1.2.2", "C:\\Users\\Ovi-PC\\Downloads\\themekit-master\\themekit" ] ], "_from": "jquery-bar-rating@1.2.2", "_id": "jquery-bar-rating@1.2.2", "_inBundle": false, "_integrity": "sha1-lZTWYs/53rD+ezclEbskkqQ285I=", "_location": "/jquery-bar-rating", "_phantomChildren": {}, "_requested": { "type": "version", "registry": true, "raw": "jquery-bar-rating@1.2.2", "name": "jquery-bar-rating", "escapedName": "jquery-bar-rating", "rawSpec": "1.2.2", "saveSpec": null, "fetchSpec": "1.2.2" }, "_requiredBy": [ "/" ], "_resolved": "https://registry.npmjs.org/jquery-bar-rating/-/jquery-bar-rating-1.2.2.tgz", "_spec": "1.2.2", "_where": "C:\\Users\\Ovi-PC\\Downloads\\themekit-master\\themekit", "bugs": { "url": "https://github.com/antennaio/jquery-bar-rating/issues" }, "dependencies": { "jquery": ">=1.7.2" }, "description": "Minimal, light-weight jQuery ratings.", "devDependencies": { "chai": "3.5.0", "gulp": "3.9.1", "gulp-jshint": "2.0.1", "gulp-less": "3.1.0", "gulp-rename": "1.2.2", "gulp-sourcemaps": "1.5.2", "gulp-uglify": "1.5.3", "jshint": "2.9.2", "karma": "0.13.22", "karma-chai": "0.1.0", "karma-chrome-launcher": "0.2.3", "karma-junit-reporter": "0.4.2", "karma-mocha": "0.2.2", "karma-phantomjs-launcher": "1.0.0", "mocha": "2.5.3", "phantomjs-prebuilt": "2.1.7", "run-sequence": "1.2.1" }, "homepage": "https://github.com/antennaio/jquery-bar-rating#readme", "keywords": [ "jquery", "jquery-plugin", "ratings", "rating" ], "license": "MIT", "main": "jquery.barrating.js", "name": "jquery-bar-rating", "repository": { "type": "git", "url": "git://github.com/antennaio/jquery-bar-rating.git" }, "scripts": { "test": "karma start" }, "version": "1.2.2" } gulpfile.js000064400000003512151676730720006730 0ustar00var gulp = require('gulp'), less = require('gulp-less'), jshint = require('gulp-jshint'), uglify = require('gulp-uglify'), KarmaServer = require('karma').Server, rename = require('gulp-rename'), sourcemaps = require('gulp-sourcemaps'), runSequence = require('run-sequence'); var path = require('path'); var srcFile = 'jquery.barrating.js'; var lessFiles = [ path.join(__dirname, 'examples', 'less', 'examples.less'), path.join(__dirname, 'examples', 'less', 'main.less'), ]; var cssPath = path.join(__dirname, 'examples', 'css'), distPath = 'dist'; var themePath = path.join(__dirname, 'dist', 'themes'); var themeLessFiles = 'themes/*.less'; gulp.task('jshint', function() { return gulp.src(srcFile) .pipe(jshint()) .pipe(jshint.reporter('default')) .pipe(jshint.reporter('fail')); }); gulp.task('uglify', function() { return gulp.src(srcFile) .pipe(sourcemaps.init()) .pipe(uglify()) .pipe(rename(function(path) { path.basename += '.min'; })) .pipe(sourcemaps.write('.')) .pipe(gulp.dest(distPath)); }); gulp.task('test', function(done) { new KarmaServer({ configFile: __dirname + '/karma.conf.js' }, done).start(); }); gulp.task('less', function() { return gulp.src(lessFiles) .pipe(less()) .pipe(gulp.dest(cssPath)); }); gulp.task('themes', function() { return gulp.src([themeLessFiles, '!themes/variables.less', '!themes/mixins.less']) .pipe(less()) .pipe(gulp.dest(themePath)); }); gulp.task('build', function() { runSequence('jshint', 'test', 'themes', 'uglify'); }); gulp.task('watch', function() { gulp.watch(srcFile, ['jshint']); gulp.watch(lessFiles, ['less']); gulp.watch(themeLessFiles, ['themes']); }); gulp.task('default', ['build']); themes/bars-1to10.less000064400000002457151676730720010540 0ustar00@import "variables.less"; @import "mixins.less"; .br-theme-bars-1to10 { .br-widget { height: 50px; white-space: nowrap; a { display: block; width: 12px; padding: 5px 0; height: 28px; float: left; background-color: lighten(@orange-color, 25%); margin: 1px; text-align: center; &.br-active, &.br-selected { background-color: @orange-color; } } .br-current-rating { font-size: 20px; line-height: 2; float: left; padding: 0 20px 0 20px; color: @orange-color; font-weight: 400; } } .br-readonly { a { cursor: default; &.br-active, &.br-selected { background-color: lighten(@orange-color, 10%); } } .br-current-rating { color: lighten(@orange-color, 10%); } } } @media print { .br-theme-bars-1to10 { .br-widget { a { border: 1px solid lighten(black, 70%); background: white; height: 38px; .box-sizing(border-box); &.br-active, &.br-selected { border: 1px solid black; background: white; } } .br-current-rating { color: black; } } } } themes/fontawesome-stars-o.less000064400000002614151676730720012657 0ustar00@import "variables.less"; .br-theme-fontawesome-stars-o { .br-widget { height: 28px; white-space: nowrap; a { font: normal normal normal 20px/1 FontAwesome; text-rendering: auto; -webkit-font-smoothing: antialiased; text-decoration: none; margin-right: 2px; } a:after { content: '\f006'; color: @star-default; } a.br-active:after { content: '\f005'; color: @green-color; } a.br-selected:after { content: '\f005'; color: @green-color; } a.br-fractional:after { content: '\f123'; color: @green-color; } .br-current-rating { display: none; } } .br-readonly { a { cursor: default; } } .br-reverse { a.br-fractional { display: inline-block; transform: scaleX(-1); -moz-transform: scaleX(-1); -webkit-transform: scaleX(-1); filter: FlipH; -ms-filter: "FlipH"; } } } @media print { .br-theme-fontawesome-stars-o { .br-widget { a:after { content: '\f006'; color: black; } a.br-active:after, a.br-selected:after { content: '\f005'; color: black; } a.br-fractional:after { content: '\f123'; color: black; } } } } themes/bars-square.less000064400000002556151676730720011174 0ustar00@import "variables.less"; @import "mixins.less"; .br-theme-bars-square { .br-widget { height: 15px; white-space: nowrap; a { display: block; width: 30px; height: 30px; float: left; border: 2px solid lighten(@blue-color, 25%); background-color: white; margin: 2px; text-decoration: none; font-size: 14px; font-weight: 400; line-height: 2; text-align: center; color: lighten(@blue-color, 25%); font-weight: 600; &.br-active, &.br-selected { border: 2px solid @blue-color; color: @blue-color; } } .br-current-rating { clear: both; width: 330px; text-align: center; font-weight: 600; display: block; padding: .5em 0; color: #646464; } } .br-readonly { a { cursor: default; &.br-active, &.br-selected { border: 2px solid lighten(@blue-color, 10%); color: lighten(@blue-color, 10%); } } } } @media print { .br-theme-bars-square { .br-widget { a { border: 2px solid lighten(black, 70%); color: lighten(black, 70%); &.br-active, &.br-selected { border: 2px solid black; color: black; } } } } } themes/bars-reversed.less000064400000002601151676730720011502 0ustar00@import "variables.less"; @import "mixins.less"; .br-theme-bars-reversed { .br-widget { height: 25px; white-space: nowrap; a { display: block; width: 22px; height: 22px; float: left; background-color: lighten(@green-color, 25%); margin: 1px; font-size: 15px; font-weight: 400; line-height: 1.4; color: @green-color; text-align: center; &.br-active, &.br-selected { background-color: @green-color; color: white; } } .br-current-rating { line-height: 1.3; float: left; padding: 0 20px 0 20px; color: @green-color; font-size: 17px; font-weight: 400; } } .br-readonly { a { cursor: default; &.br-active, &.br-selected { background-color: lighten(@green-color, 10%); } } .br-current-rating { color: lighten(@green-color, 10%); } } } @media print { .br-theme-bars-reversed { .br-widget { a { border: 1px solid lighten(black, 70%); background: white; .box-sizing(border-box); &.br-active, &.br-selected { border: 1px solid black; background: white; } } .br-current-rating { color: black; } } } } themes/fontawesome-stars.less000064400000001660151676730720012423 0ustar00@import "variables.less"; .br-theme-fontawesome-stars { .br-widget { height: 28px; white-space: nowrap; a { font: normal normal normal 20px/1 FontAwesome; text-rendering: auto; -webkit-font-smoothing: antialiased; text-decoration: none; margin-right: 2px; } a:after { content: '\f005'; color: @star-default; } a.br-active:after { color: @star-active; } a.br-selected:after { color: @star-selected; } .br-current-rating { display: none; } } .br-readonly { a { cursor: default; } } } @media print { .br-theme-fontawesome-stars { .br-widget { a:after { content: '\f006'; color: black; } a.br-active:after, a.br-selected:after { content: '\f005'; color: black; } } } } themes/bars-pill.less000064400000003364151676730720010632 0ustar00@import "variables.less"; @import "mixins.less"; .br-theme-bars-pill { .br-widget { white-space: nowrap; a { padding: 7px 15px; background-color: lighten(@green-color, 25%); color: @green-color; text-decoration: none; font-size: 13px; line-height: 3; text-align: center; font-weight: 400; &:first-child { -webkit-border-top-left-radius: 999px; -webkit-border-bottom-left-radius: 999px; -moz-border-radius-topleft: 999px; -moz-border-radius-bottomleft: 999px; border-top-left-radius: 999px; border-bottom-left-radius: 999px; } &:last-child { -webkit-border-top-right-radius: 999px; -webkit-border-bottom-right-radius: 999px; -moz-border-radius-topright: 999px; -moz-border-radius-bottomright: 999px; border-top-right-radius: 999px; border-bottom-right-radius: 999px; } &.br-active, &.br-selected { background-color: @green-color; color: white; } } } .br-readonly { a { cursor: default; &.br-active, &.br-selected { background-color: lighten(@green-color, 10%); } } } } @media print { .br-theme-bars-pill { .br-widget { a { border: 1px solid lighten(black, 70%); border-left: none; background: white; .box-sizing(border-box); &.br-active, &.br-selected { border: 1px solid black; border-left: none; background: white; color: black; } } a:first-child { border-left: 1px solid black; } } } } themes/bootstrap-stars.less000064400000001667151676730720012120 0ustar00@import "variables.less"; .br-theme-bootstrap-stars { .br-widget { height: 28px; white-space: nowrap; a { font: normal normal normal 18px/1 'Glyphicons Halflings'; text-rendering: auto; -webkit-font-smoothing: antialiased; text-decoration: none; margin-right: 2px; } a:after { content: '\e006'; color: @star-default; } a.br-active:after { color: @star-active; } a.br-selected:after { color: @star-selected; } .br-current-rating { display: none; } } .br-readonly { a { cursor: default; } } } @media print { .br-theme-bootstrap-stars { .br-widget { a:after { content: '\e007'; color: black; } a.br-active:after, a.br-selected:after { content: '\e006'; color: black; } } } } themes/css-stars.less000064400000001566151676730720010671 0ustar00@import "variables.less"; .br-theme-css-stars { .br-widget { height: 28px; white-space: nowrap; a { text-decoration: none; height: 18px; width: 18px; float: left; font-size: 23px; margin-right: 5px; } a:after { content: "\2605"; color: @star-default; } a.br-active:after { color: @star-active; } a.br-selected:after { color: @star-selected; } .br-current-rating { display: none; } } .br-readonly { a { cursor: default; } } } @media print { .br-theme-css-stars { .br-widget { a:after { content: "\2606"; color: black; } a.br-active:after, a.br-selected:after { content: "\2605"; color: black; } } } } themes/bars-horizontal.less000064400000002331151676730720012054 0ustar00@import "variables.less"; @import "mixins.less"; .br-theme-bars-horizontal { .br-widget { width: 120px; white-space: nowrap; a { display: block; width: 120px; height: 5px; background-color: lighten(@orange-color, 25%); margin: 1px; &.br-active, &.br-selected { background-color: @orange-color; } } .br-current-rating { width: 120px; font-size: 18px; font-weight: 600; line-height: 2; text-align: center; color: @orange-color; } } .br-readonly { a { cursor: default; &.br-active, &.br-selected { background-color: lighten(@orange-color, 10%); } } .br-current-rating { color: lighten(@orange-color, 10%); } } } @media print { .br-theme-bars-horizontal { .br-widget { a { border: 1px solid lighten(black, 70%); background: white; .box-sizing(border-box); &.br-active, &.br-selected { border: 1px solid black; background: white; } } .br-current-rating { color: black; } } } } themes/bars-movie.less000064400000002405151676730720011004 0ustar00@import "variables.less"; @import "mixins.less"; .br-theme-bars-movie { .br-widget { height: 10px; white-space: nowrap; a { display: block; width: 60px; height: 8px; float: left; background-color: lighten(@blue-color, 25%); margin: 1px; &.br-active, &.br-selected { background-color: @blue-color; } } .br-current-rating { clear: both; width: 240px; text-align: center; font-weight: 600; display: block; padding: .5em 0; color: @blue-color; font-weight: 400; } } .br-readonly { a { cursor: default; &.br-active, &.br-selected { background-color: lighten(@blue-color, 10%); } } .br-current-rating { color: lighten(@blue-color, 10%); } } } @media print { .br-theme-bars-movie { .br-widget { a { border: 1px solid lighten(black, 70%); background: white; .box-sizing(border-box); &.br-active, &.br-selected { border: 1px solid black; background: white; } } .br-current-rating { color: black; } } } } themes/variables.less000064400000000246151676730720010711 0ustar00// Bars @orange-color: #EDB867; @green-color: #50E3C2; @blue-color: #4278F5; // Stars @star-default: #d2d2d2; @star-active: #EDB867; @star-selected: #EDB867;themes/mixins.less000064400000000225151676730720010245 0ustar00// Box sizing .box-sizing (@type: border-box) { -webkit-box-sizing: @type; -moz-box-sizing: @type; box-sizing: @type; } .travis.yml000064400000000124151676730720006670 0ustar00language: node_js node_js: - 6 cache: directories: - node_modules test/jquery.barrating-spec.js000064400000035544151676730720012331 0ustar00var expect = window.chai.expect; function createSelect() { $('<select />', { 'id':'rating', 'name':'rating' }).appendTo('body'); for (var i = 1; i <= 10; i++) { var attributes = (i == 5) ? attributes = { 'value':i, 'selected':'selected' } : attributes = { 'value':i }; $('<option />', attributes).appendTo('#rating').html('rating-text-'+i); } } function destroySelect() { $('#rating').remove(); } describe('bar rating plugin on init with custom options', function () { it('should update defaults', function () { var BarRating; BarRating = new $.fn.barrating.BarRating(); BarRating.init({ showValues: false }); expect(BarRating.options).to.be.a('object'); expect(BarRating.options.theme).to.equal(''); expect(BarRating.options.initialRating).to.equal(null); expect(BarRating.options.allowEmpty).to.equal(null); expect(BarRating.options.emptyValue).to.equal(''); expect(BarRating.options.showValues).to.equal(false); expect(BarRating.options.showSelectedRating).to.equal(true); expect(BarRating.options.deselectable).to.equal(true); expect(BarRating.options.reverse).to.equal(false); expect(BarRating.options.readonly).to.equal(false); expect(BarRating.options.fastClicks).to.equal(true); expect(BarRating.options.hoverState).to.equal(true); expect(BarRating.options.silent).to.equal(false); }); }); describe('bar rating plugin on show', function () { before(function () { createSelect(); $('#rating').barrating('show'); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should have data', function () { expect($('#rating').data('barrating')).to.be.a('object'); }); it('should wrap the select field into a wrapper div', function () { expect($('.br-widget').parent().hasClass('br-wrapper')).to.equal(true); }); it('should transform the select field into a rating widget', function () { expect($('.br-widget a')).to.have.length(10); }); it('should store rating values in data attributes', function () { expect($('.br-widget a:first').attr('data-rating-value')).to.equal('1'); expect($('.br-widget a:nth-child(8)').attr('data-rating-value')).to.equal('8'); expect($('.br-widget a:first').attr('data-rating-text')).to.equal('rating-text-1'); expect($('.br-widget a:nth-child(8)').attr('data-rating-text')).to.equal('rating-text-8'); }); it('should read the selected rating from the select field', function () { expect($('#rating').data('barrating').ratingValue).to.equal('5'); expect($('#rating').data('barrating').ratingText).to.equal('rating-text-5'); }); it('should set correct class', function () { expect($('.br-widget a:nth-child(4)').hasClass('br-selected')).to.equal(true); expect($('.br-widget a:nth-child(5)').hasClass('br-selected br-current')).to.equal(true); expect($('.br-widget a:nth-child(6)').hasClass('br-selected')).to.equal(false); }); it('should append a rating div', function () { expect($('div.br-current-rating')).to.have.length(1); }); it('should display a correct rating', function () { expect($('div.br-current-rating').html()).to.equal( $('#rating').data('barrating').ratingText ); }); it('should hide the select field', function () { expect($('#rating').css('display')).to.equal('none'); }); }); describe('bar rating plugin on set fractional value', function () { before(function () { createSelect(); $('#rating') .barrating('show', { initialRating: 3.3 }); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should set .br-half class', function () { expect($('.br-widget a:nth-child(4)').hasClass('br-fractional')).to.equal(true); expect($('.br-widget a:nth-child(4)').hasClass('br-fractional-30')).to.equal(true); }); }); describe('bar rating plugin on set fractional value < 1', function () { before(function () { createSelect(); $('#rating') .barrating('show', { initialRating: 0.99 }); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should set .br-half class', function () { expect($('.br-widget a:first').hasClass('br-fractional')).to.equal(true); expect($('.br-widget a:first').hasClass('br-fractional-90')).to.equal(true); }); }); describe('bar rating themes', function() { before(function () { createSelect(); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should set the theme class', function() { $('#rating').barrating({ theme: 'bootstrap-stars' }); expect($('.br-wrapper').hasClass('br-theme-bootstrap-stars')).to.be.true; }); }); describe('bar rating plugin on show and rating selected', function () { var valuesFromCallback = []; before(function () { createSelect(); $('#rating').barrating('show', { onSelect:function (value, text, event) { valuesFromCallback.push(value, text, event); } }); $('.br-widget a:nth-child(2)').trigger('click'); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should update data', function () { expect($('#rating').data('barrating').ratingValue).to.equal('2'); expect($('#rating').data('barrating').ratingText).to.equal('rating-text-2'); }); it('should set correct class', function () { expect($('.br-widget a:nth-child(1)').hasClass('br-selected')).to.equal(true); expect($('.br-widget a:nth-child(2)').hasClass('br-selected br-current')).to.equal(true); expect($('.br-widget a:nth-child(3)').hasClass('br-selected')).to.equal(false); }); it('should display a correct rating', function () { expect($('div.br-current-rating').html()).to.equal( $('#rating').data('barrating').ratingText ); }); it('should pass correct values to a callback', function () { expect(valuesFromCallback[0]).to.equal('2'); expect(valuesFromCallback[1]).to.equal('rating-text-2'); expect(valuesFromCallback[2]).to.be.a('object'); }); }); describe('bar rating plugin on show and empty ratings are allowed', function () { before(function () { createSelect(); $('#rating').barrating('show', { allowEmpty: true, emptyValue: '-- not defined --' }); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should update data', function () { expect($('#rating').data('barrating').allowEmpty).to.equal(true); expect($('#rating').data('barrating').emptyRatingValue).to.equal('-- not defined --'); expect($('#rating').data('barrating').emptyRatingText).to.equal(''); }); it('should set correct class', function () { expect($('#rating option').first().val()).to.equal('-- not defined --'); }); }); describe('bar rating plugin reversed', function () { before(function () { createSelect(); $('#rating').barrating('show', { reverse:true }); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should set correct widget class', function () { expect($('.br-widget').hasClass('br-reverse')).to.equal(true); }); it('should set correct class', function () { expect($('.br-widget a:nth-child(4)').hasClass('br-selected')).to.equal(false); expect($('.br-widget a:nth-child(5)').hasClass('br-selected br-current')).to.equal(true); expect($('.br-widget a:nth-child(6)').hasClass('br-selected')).to.equal(true); }); }); describe('bar rating plugin read-only', function () { before(function () { createSelect(); $('#rating').barrating('show', { readonly:true }); $('.br-widget a:nth-child(6)').trigger('click'); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should set correct class', function () { expect($('.br-widget a:nth-child(4)').hasClass('br-selected')).to.equal(true); expect($('.br-widget a:nth-child(5)').hasClass('br-selected br-current')).to.equal(true); expect($('.br-widget a:nth-child(6)').hasClass('br-selected')).to.equal(false); }); it('should ignore user input', function () { expect($('#rating').data('barrating').ratingValue).to.equal('5'); expect($('#rating').data('barrating').ratingText).to.equal('rating-text-5'); }); }); describe('bar rating plugin on deselect', function () { before(function () { createSelect(); // prepend empty OPTION to test deselectable ratings $('#rating').prepend($('<option />', { 'value':'' })); $('#rating').barrating('show'); // deselect rating $('.br-widget a:nth-child(5)').trigger('click'); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should successfully deselect rating', function () { expect($('#rating').data('barrating').ratingValue).to.equal(''); expect($('#rating').data('barrating').ratingText).to.equal(''); }); }); describe('bar rating plugin on clear', function () { var valuesFromCallback = []; before(function () { createSelect(); $('#rating').barrating('show', { onClear:function (value, text) { valuesFromCallback.push(value, text); } }); $('.br-widget a:nth-child(6)').trigger('click'); $('#rating').barrating('clear'); }); after(function () { $('#rating').barrating('destroy'); destroySelect(); }); it('should restore original rating', function () { expect($('#rating').data('barrating').ratingValue).to.equal('5'); expect($('#rating').data('barrating').ratingText).to.equal('rating-text-5'); }); it('should reset select field', function () { expect($('#rating').val()).to.equal('5'); }); it('should set correct class', function () { expect($('.br-widget a:nth-child(4)').hasClass('br-selected')).to.equal(true); expect($('.br-widget a:nth-child(5)').hasClass('br-selected br-current')).to.equal(true); expect($('.br-widget a:nth-child(6)').hasClass('br-selected')).to.equal(false); }); it('should pass correct values to a callback', function () { expect(valuesFromCallback[0]).to.equal('5'); expect(valuesFromCallback[1]).to.equal('rating-text-5'); }); }); describe('bar rating plugin on destroy', function () { var valuesFromCallback = []; before(function () { createSelect(); $('#rating').barrating('show', { onDestroy:function (value, text) { valuesFromCallback.push(value, text); } }); $('#rating').barrating('destroy'); }); after(function () { destroySelect(); }); it('should remove data', function () { expect($('#rating').data('barrating')).to.equal(undefined); }); it('should unwrap the select field', function () { expect($('.br-wrapper').length).to.equal(0); }); it('should remove the widget', function () { expect($('.br-widget').length).to.equal(0); }); it('should show the select field back again', function () { expect($('#rating').is(":visible")).to.equal(true); }); it('should pass correct values to a callback', function () { expect(valuesFromCallback[0]).to.equal('5'); expect(valuesFromCallback[1]).to.equal('rating-text-5'); }); }); describe('bar rating plugin on set value', function () { var valuesFromCallback = []; before(function () { createSelect(); $('#rating').barrating('show', { onSelect:function (value, text) { valuesFromCallback.push(value, text); } }).barrating('set', 3); }); after(function () { destroySelect(); }); it('should set correct value', function () { expect($('#rating').data('barrating').ratingValue).to.equal(3); expect($('#rating').data('barrating').ratingText).to.equal('rating-text-3'); }); it('should set correct class', function () { expect($('.br-widget a:nth-child(3)').hasClass('br-selected')).to.equal(true); expect($('.br-widget a:nth-child(3)').hasClass('br-current')).to.equal(true); }); it('should pass correct values to a callback', function () { expect(valuesFromCallback[0]).to.equal(3); expect(valuesFromCallback[1]).to.equal('rating-text-3'); }); }); describe('bar rating plugin on set non-existing value', function () { before(function () { createSelect(); $('#rating') .barrating('show', { initialRating: 5 }) .barrating('set', 9999); }); after(function () { destroySelect(); }); it('should do nothing', function () { expect($('#rating').data('barrating').ratingValue).to.equal('5'); expect($('#rating').data('barrating').ratingText).to.equal('rating-text-5'); }); }); describe('bar rating plugin on change read-only state', function () { before(function () { createSelect(); $('#rating') .barrating('show', { initialRating: 1 }) .barrating('readonly', true); $('.br-widget a:last-child').trigger('click'); }); after(function () { destroySelect(); }); it('should ignore user input', function () { expect($('#rating').data('barrating').ratingValue).to.equal('1'); expect($('#rating').data('barrating').ratingText).to.equal('rating-text-1'); }); it('should update data', function () { expect($('#rating').data('barrating').readOnly).to.equal(true); }); it('should set correct widget class', function () { expect($('.br-widget').hasClass('br-readonly')).to.equal(true); }); }); dist/jquery.barrating.min.js000064400000013130151676730720012132 0ustar00!function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&module.exports?module.exports=t(require("jquery")):t(jQuery)}(function(t){var e=function(){function e(){var e=this,n=function(){var n=["br-wrapper"];""!==e.options.theme&&n.push("br-theme-"+e.options.theme),e.$elem.wrap(t("<div />",{"class":n.join(" ")}))},i=function(){e.$elem.unwrap()},a=function(n){return t.isNumeric(n)&&(n=Math.floor(n)),t('option[value="'+n+'"]',e.$elem)},r=function(){var n=e.options.initialRating;return n?a(n):t("option:selected",e.$elem)},o=function(){var n=e.$elem.find('option[value="'+e.options.emptyValue+'"]');return!n.length&&e.options.allowEmpty?(n=t("<option />",{value:e.options.emptyValue}),n.prependTo(e.$elem)):n},l=function(t){var n=e.$elem.data("barrating");return"undefined"!=typeof t?n[t]:n},s=function(t,n){null!==n&&"object"==typeof n?e.$elem.data("barrating",n):e.$elem.data("barrating")[t]=n},u=function(){var t=r(),n=o(),i=t.val(),a=t.data("html")?t.data("html"):t.text(),l=null!==e.options.allowEmpty?e.options.allowEmpty:!!n.length,u=n.length?n.val():null,d=n.length?n.text():null;s(null,{userOptions:e.options,ratingValue:i,ratingText:a,originalRatingValue:i,originalRatingText:a,allowEmpty:l,emptyRatingValue:u,emptyRatingText:d,readOnly:e.options.readonly,ratingMade:!1})},d=function(){e.$elem.removeData("barrating")},c=function(){return l("ratingText")},f=function(){return l("ratingValue")},g=function(){var n=t("<div />",{"class":"br-widget"});return e.$elem.find("option").each(function(){var i,a,r,o;i=t(this).val(),i!==l("emptyRatingValue")&&(a=t(this).text(),r=t(this).data("html"),r&&(a=r),o=t("<a />",{href:"#","data-rating-value":i,"data-rating-text":a,html:e.options.showValues?a:""}),n.append(o))}),e.options.showSelectedRating&&n.append(t("<div />",{text:"","class":"br-current-rating"})),e.options.reverse&&n.addClass("br-reverse"),e.options.readonly&&n.addClass("br-readonly"),n},p=function(){return l("userOptions").reverse?"nextAll":"prevAll"},h=function(t){a(t).prop("selected",!0),e.$elem.change()},m=function(){t("option",e.$elem).prop("selected",function(){return this.defaultSelected}),e.$elem.change()},v=function(t){t=t?t:c(),t==l("emptyRatingText")&&(t=""),e.options.showSelectedRating&&e.$elem.parent().find(".br-current-rating").text(t)},y=function(t){return Math.round(Math.floor(10*t)/10%1*100)},b=function(){e.$widget.find("a").removeClass(function(t,e){return(e.match(/(^|\s)br-\S+/g)||[]).join(" ")})},w=function(){var n,i,a=e.$widget.find('a[data-rating-value="'+f()+'"]'),r=l("userOptions").initialRating,o=t.isNumeric(f())?f():0,s=y(r);if(b(),a.addClass("br-selected br-current")[p()]().addClass("br-selected"),!l("ratingMade")&&t.isNumeric(r)){if(o>=r||!s)return;n=e.$widget.find("a"),i=a.length?a[l("userOptions").reverse?"prev":"next"]():n[l("userOptions").reverse?"last":"first"](),i.addClass("br-fractional"),i.addClass("br-fractional-"+s)}},$=function(t){return l("allowEmpty")&&l("userOptions").deselectable?f()==t.attr("data-rating-value"):!1},x=function(n){n.on("click.barrating",function(n){var i,a,r=t(this),o=l("userOptions");return n.preventDefault(),i=r.attr("data-rating-value"),a=r.attr("data-rating-text"),$(r)&&(i=l("emptyRatingValue"),a=l("emptyRatingText")),s("ratingValue",i),s("ratingText",a),s("ratingMade",!0),h(i),v(a),w(),o.onSelect.call(e,f(),c(),n),!1})},R=function(e){e.on("mouseenter.barrating",function(){var e=t(this);b(),e.addClass("br-active")[p()]().addClass("br-active"),v(e.attr("data-rating-text"))})},V=function(t){e.$widget.on("mouseleave.barrating blur.barrating",function(){v(),w()})},O=function(e){e.on("touchstart.barrating",function(e){e.preventDefault(),e.stopPropagation(),t(this).click()})},C=function(t){t.on("click.barrating",function(t){t.preventDefault()})},S=function(t){x(t),e.options.hoverState&&(R(t),V(t))},T=function(t){t.off(".barrating")},j=function(t){var n=e.$widget.find("a");O&&O(n),t?(T(n),C(n)):S(n)};this.show=function(){l()||(n(),u(),e.$widget=g(),e.$widget.insertAfter(e.$elem),w(),v(),j(e.options.readonly),e.$elem.hide())},this.readonly=function(t){"boolean"==typeof t&&l("readOnly")!=t&&(j(t),s("readOnly",t),e.$widget.toggleClass("br-readonly"))},this.set=function(t){var n=l("userOptions");0!==e.$elem.find('option[value="'+t+'"]').length&&(s("ratingValue",t),s("ratingText",e.$elem.find('option[value="'+t+'"]').text()),s("ratingMade",!0),h(f()),v(c()),w(),n.silent||n.onSelect.call(this,f(),c()))},this.clear=function(){var t=l("userOptions");s("ratingValue",l("originalRatingValue")),s("ratingText",l("originalRatingText")),s("ratingMade",!1),m(),v(c()),w(),t.onClear.call(this,f(),c())},this.destroy=function(){var t=f(),n=c(),a=l("userOptions");T(e.$widget.find("a")),e.$widget.remove(),d(),i(),e.$elem.show(),a.onDestroy.call(this,t,n)}}return e.prototype.init=function(e,n){return this.$elem=t(n),this.options=t.extend({},t.fn.barrating.defaults,e),this.options},e}();t.fn.barrating=function(n,i){return this.each(function(){var a=new e;if(t(this).is("select")||t.error("Sorry, this plugin only works with select fields."),a.hasOwnProperty(n)){if(a.init(i,this),"show"===n)return a.show(i);if(a.$elem.data("barrating"))return a.$widget=t(this).next(".br-widget"),a[n](i)}else{if("object"==typeof n||!n)return i=n,a.init(i,this),a.show();t.error("Method "+n+" does not exist on jQuery.barrating")}})},t.fn.barrating.defaults={theme:"",initialRating:null,allowEmpty:null,emptyValue:"",showValues:!1,showSelectedRating:!0,deselectable:!0,reverse:!1,readonly:!1,fastClicks:!0,hoverState:!0,silent:!1,onSelect:function(t,e,n){},onClear:function(t,e){},onDestroy:function(t,e){}},t.fn.barrating.BarRating=e}); //# sourceMappingURL=jquery.barrating.min.js.mapdist/themes/bars-square.css000064400000002332151676730720011751 0ustar00.br-theme-bars-square .br-widget { height: 15px; white-space: nowrap; } .br-theme-bars-square .br-widget a { display: block; width: 30px; height: 30px; float: left; border: 2px solid #bbcefb; background-color: white; margin: 2px; text-decoration: none; font-size: 14px; font-weight: 400; line-height: 2; text-align: center; color: #bbcefb; font-weight: 600; } .br-theme-bars-square .br-widget a.br-active, .br-theme-bars-square .br-widget a.br-selected { border: 2px solid #4278F5; color: #4278F5; } .br-theme-bars-square .br-widget .br-current-rating { clear: both; width: 330px; text-align: center; font-weight: 600; display: block; padding: .5em 0; color: #646464; } .br-theme-bars-square .br-readonly a { cursor: default; } .br-theme-bars-square .br-readonly a.br-active, .br-theme-bars-square .br-readonly a.br-selected { border: 2px solid #729bf8; color: #729bf8; } @media print { .br-theme-bars-square .br-widget a { border: 2px solid #b3b3b3; color: #b3b3b3; } .br-theme-bars-square .br-widget a.br-active, .br-theme-bars-square .br-widget a.br-selected { border: 2px solid black; color: black; } } dist/themes/fontawesome-stars.css000064400000001744151676730720013213 0ustar00.br-theme-fontawesome-stars .br-widget { height: 28px; white-space: nowrap; } .br-theme-fontawesome-stars .br-widget a { font: normal normal normal 20px/1 FontAwesome; text-rendering: auto; -webkit-font-smoothing: antialiased; text-decoration: none; margin-right: 2px; } .br-theme-fontawesome-stars .br-widget a:after { content: '\f005'; color: #d2d2d2; } .br-theme-fontawesome-stars .br-widget a.br-active:after { color: #EDB867; } .br-theme-fontawesome-stars .br-widget a.br-selected:after { color: #EDB867; } .br-theme-fontawesome-stars .br-widget .br-current-rating { display: none; } .br-theme-fontawesome-stars .br-readonly a { cursor: default; } @media print { .br-theme-fontawesome-stars .br-widget a:after { content: '\f006'; color: black; } .br-theme-fontawesome-stars .br-widget a.br-active:after, .br-theme-fontawesome-stars .br-widget a.br-selected:after { content: '\f005'; color: black; } } dist/themes/bars-reversed.css000064400000002627151676730720012277 0ustar00.br-theme-bars-reversed .br-widget { height: 25px; white-space: nowrap; } .br-theme-bars-reversed .br-widget a { display: block; width: 22px; height: 22px; float: left; background-color: #bef5e8; margin: 1px; font-size: 15px; font-weight: 400; line-height: 1.4; color: #50E3C2; text-align: center; } .br-theme-bars-reversed .br-widget a.br-active, .br-theme-bars-reversed .br-widget a.br-selected { background-color: #50E3C2; color: white; } .br-theme-bars-reversed .br-widget .br-current-rating { line-height: 1.3; float: left; padding: 0 20px 0 20px; color: #50E3C2; font-size: 17px; font-weight: 400; } .br-theme-bars-reversed .br-readonly a { cursor: default; } .br-theme-bars-reversed .br-readonly a.br-active, .br-theme-bars-reversed .br-readonly a.br-selected { background-color: #7cead1; } .br-theme-bars-reversed .br-readonly .br-current-rating { color: #7cead1; } @media print { .br-theme-bars-reversed .br-widget a { border: 1px solid #b3b3b3; background: white; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .br-theme-bars-reversed .br-widget a.br-active, .br-theme-bars-reversed .br-widget a.br-selected { border: 1px solid black; background: white; } .br-theme-bars-reversed .br-widget .br-current-rating { color: black; } } dist/themes/bars-movie.css000064400000002426151676730720011574 0ustar00.br-theme-bars-movie .br-widget { height: 10px; white-space: nowrap; } .br-theme-bars-movie .br-widget a { display: block; width: 60px; height: 8px; float: left; background-color: #bbcefb; margin: 1px; } .br-theme-bars-movie .br-widget a.br-active, .br-theme-bars-movie .br-widget a.br-selected { background-color: #4278F5; } .br-theme-bars-movie .br-widget .br-current-rating { clear: both; width: 240px; text-align: center; font-weight: 600; display: block; padding: .5em 0; color: #4278F5; font-weight: 400; } .br-theme-bars-movie .br-readonly a { cursor: default; } .br-theme-bars-movie .br-readonly a.br-active, .br-theme-bars-movie .br-readonly a.br-selected { background-color: #729bf8; } .br-theme-bars-movie .br-readonly .br-current-rating { color: #729bf8; } @media print { .br-theme-bars-movie .br-widget a { border: 1px solid #b3b3b3; background: white; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .br-theme-bars-movie .br-widget a.br-active, .br-theme-bars-movie .br-widget a.br-selected { border: 1px solid black; background: white; } .br-theme-bars-movie .br-widget .br-current-rating { color: black; } } dist/themes/bootstrap-stars.css000064400000001733151676730720012677 0ustar00.br-theme-bootstrap-stars .br-widget { height: 28px; white-space: nowrap; } .br-theme-bootstrap-stars .br-widget a { font: normal normal normal 18px/1 'Glyphicons Halflings'; text-rendering: auto; -webkit-font-smoothing: antialiased; text-decoration: none; margin-right: 2px; } .br-theme-bootstrap-stars .br-widget a:after { content: '\e006'; color: #d2d2d2; } .br-theme-bootstrap-stars .br-widget a.br-active:after { color: #EDB867; } .br-theme-bootstrap-stars .br-widget a.br-selected:after { color: #EDB867; } .br-theme-bootstrap-stars .br-widget .br-current-rating { display: none; } .br-theme-bootstrap-stars .br-readonly a { cursor: default; } @media print { .br-theme-bootstrap-stars .br-widget a:after { content: '\e007'; color: black; } .br-theme-bootstrap-stars .br-widget a.br-active:after, .br-theme-bootstrap-stars .br-widget a.br-selected:after { content: '\e006'; color: black; } } dist/themes/css-stars.css000064400000001546151676730720011454 0ustar00.br-theme-css-stars .br-widget { height: 28px; white-space: nowrap; } .br-theme-css-stars .br-widget a { text-decoration: none; height: 18px; width: 18px; float: left; font-size: 23px; margin-right: 5px; } .br-theme-css-stars .br-widget a:after { content: "\2605"; color: #d2d2d2; } .br-theme-css-stars .br-widget a.br-active:after { color: #EDB867; } .br-theme-css-stars .br-widget a.br-selected:after { color: #EDB867; } .br-theme-css-stars .br-widget .br-current-rating { display: none; } .br-theme-css-stars .br-readonly a { cursor: default; } @media print { .br-theme-css-stars .br-widget a:after { content: "\2606"; color: black; } .br-theme-css-stars .br-widget a.br-active:after, .br-theme-css-stars .br-widget a.br-selected:after { content: "\2605"; color: black; } } dist/themes/bars-horizontal.css000064400000002443151676730720012645 0ustar00.br-theme-bars-horizontal .br-widget { width: 120px; white-space: nowrap; } .br-theme-bars-horizontal .br-widget a { display: block; width: 120px; height: 5px; background-color: #fbedd9; margin: 1px; } .br-theme-bars-horizontal .br-widget a.br-active, .br-theme-bars-horizontal .br-widget a.br-selected { background-color: #EDB867; } .br-theme-bars-horizontal .br-widget .br-current-rating { width: 120px; font-size: 18px; font-weight: 600; line-height: 2; text-align: center; color: #EDB867; } .br-theme-bars-horizontal .br-readonly a { cursor: default; } .br-theme-bars-horizontal .br-readonly a.br-active, .br-theme-bars-horizontal .br-readonly a.br-selected { background-color: #f2cd95; } .br-theme-bars-horizontal .br-readonly .br-current-rating { color: #f2cd95; } @media print { .br-theme-bars-horizontal .br-widget a { border: 1px solid #b3b3b3; background: white; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .br-theme-bars-horizontal .br-widget a.br-active, .br-theme-bars-horizontal .br-widget a.br-selected { border: 1px solid black; background: white; } .br-theme-bars-horizontal .br-widget .br-current-rating { color: black; } } dist/themes/bars-pill.css000064400000003276151676730720011421 0ustar00.br-theme-bars-pill .br-widget { white-space: nowrap; } .br-theme-bars-pill .br-widget a { padding: 7px 15px; background-color: #bef5e8; color: #50E3C2; text-decoration: none; font-size: 13px; line-height: 3; text-align: center; font-weight: 400; } .br-theme-bars-pill .br-widget a:first-child { -webkit-border-top-left-radius: 999px; -webkit-border-bottom-left-radius: 999px; -moz-border-radius-topleft: 999px; -moz-border-radius-bottomleft: 999px; border-top-left-radius: 999px; border-bottom-left-radius: 999px; } .br-theme-bars-pill .br-widget a:last-child { -webkit-border-top-right-radius: 999px; -webkit-border-bottom-right-radius: 999px; -moz-border-radius-topright: 999px; -moz-border-radius-bottomright: 999px; border-top-right-radius: 999px; border-bottom-right-radius: 999px; } .br-theme-bars-pill .br-widget a.br-active, .br-theme-bars-pill .br-widget a.br-selected { background-color: #50E3C2; color: white; } .br-theme-bars-pill .br-readonly a { cursor: default; } .br-theme-bars-pill .br-readonly a.br-active, .br-theme-bars-pill .br-readonly a.br-selected { background-color: #7cead1; } @media print { .br-theme-bars-pill .br-widget a { border: 1px solid #b3b3b3; border-left: none; background: white; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .br-theme-bars-pill .br-widget a.br-active, .br-theme-bars-pill .br-widget a.br-selected { border: 1px solid black; border-left: none; background: white; color: black; } .br-theme-bars-pill .br-widget a:first-child { border-left: 1px solid black; } } dist/themes/fontawesome-stars-o.css000064400000002741151676730720013445 0ustar00.br-theme-fontawesome-stars-o .br-widget { height: 28px; white-space: nowrap; } .br-theme-fontawesome-stars-o .br-widget a { font: normal normal normal 20px/1 FontAwesome; text-rendering: auto; -webkit-font-smoothing: antialiased; text-decoration: none; margin-right: 2px; } .br-theme-fontawesome-stars-o .br-widget a:after { content: '\f006'; color: #d2d2d2; } .br-theme-fontawesome-stars-o .br-widget a.br-active:after { content: '\f005'; color: #50E3C2; } .br-theme-fontawesome-stars-o .br-widget a.br-selected:after { content: '\f005'; color: #50E3C2; } .br-theme-fontawesome-stars-o .br-widget a.br-fractional:after { content: '\f123'; color: #50E3C2; } .br-theme-fontawesome-stars-o .br-widget .br-current-rating { display: none; } .br-theme-fontawesome-stars-o .br-readonly a { cursor: default; } .br-theme-fontawesome-stars-o .br-reverse a.br-fractional { display: inline-block; transform: scaleX(-1); -moz-transform: scaleX(-1); -webkit-transform: scaleX(-1); filter: FlipH; -ms-filter: "FlipH"; } @media print { .br-theme-fontawesome-stars-o .br-widget a:after { content: '\f006'; color: black; } .br-theme-fontawesome-stars-o .br-widget a.br-active:after, .br-theme-fontawesome-stars-o .br-widget a.br-selected:after { content: '\f005'; color: black; } .br-theme-fontawesome-stars-o .br-widget a.br-fractional:after { content: '\f123'; color: black; } } dist/themes/bars-1to10.css000064400000002462151676730720011321 0ustar00.br-theme-bars-1to10 .br-widget { height: 50px; white-space: nowrap; } .br-theme-bars-1to10 .br-widget a { display: block; width: 12px; padding: 5px 0; height: 28px; float: left; background-color: #fbedd9; margin: 1px; text-align: center; } .br-theme-bars-1to10 .br-widget a.br-active, .br-theme-bars-1to10 .br-widget a.br-selected { background-color: #EDB867; } .br-theme-bars-1to10 .br-widget .br-current-rating { font-size: 20px; line-height: 2; float: left; padding: 0 20px 0 20px; color: #EDB867; font-weight: 400; } .br-theme-bars-1to10 .br-readonly a { cursor: default; } .br-theme-bars-1to10 .br-readonly a.br-active, .br-theme-bars-1to10 .br-readonly a.br-selected { background-color: #f2cd95; } .br-theme-bars-1to10 .br-readonly .br-current-rating { color: #f2cd95; } @media print { .br-theme-bars-1to10 .br-widget a { border: 1px solid #b3b3b3; background: white; height: 38px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } .br-theme-bars-1to10 .br-widget a.br-active, .br-theme-bars-1to10 .br-widget a.br-selected { border: 1px solid black; background: white; } .br-theme-bars-1to10 .br-widget .br-current-rating { color: black; } } dist/jquery.barrating.min.js.map000064400000066503151676730720012722 0ustar00{"version":3,"sources":["jquery.barrating.js"],"names":["factory","define","amd","module","exports","require","jQuery","$","BarRating","self","this","wrapElement","classes","options","theme","push","$elem","wrap","class","join","unwrapElement","unwrap","findOption","value","isNumeric","Math","floor","getInitialOption","initialRating","getEmptyOption","$emptyOpt","find","emptyValue","length","allowEmpty","prependTo","getData","key","data","setData","saveDataOnElement","$opt","val","text","emptyText","userOptions","ratingValue","ratingText","originalRatingValue","originalRatingText","emptyRatingValue","emptyRatingText","readOnly","readonly","ratingMade","removeDataOnElement","removeData","buildWidget","$w","each","html","$a","href","data-rating-value","data-rating-text","append","showSelectedRating","reverse","addClass","nextAllorPreviousAll","setSelectFieldValue","prop","change","resetSelectField","defaultSelected","parent","fraction","round","resetStyle","$widget","removeClass","index","match","applyStyle","$all","$fractional","baseValue","f","isDeselectable","$element","deselectable","attr","attachClickHandler","$elements","on","event","preventDefault","onSelect","call","attachMouseEnterHandler","attachMouseLeaveHandler","fastClicks","stopPropagation","click","disableClicks","attachHandlers","hoverState","detachHandlers","off","setupHandlers","show","insertAfter","hide","state","toggleClass","set","silent","clear","onClear","destroy","remove","onDestroy","prototype","init","elem","extend","fn","barrating","defaults","method","plugin","is","error","hasOwnProperty","next","showValues"],"mappings":"CAUC,SAAUA,GACe,kBAAXC,SAAyBA,OAAOC,IAEvCD,QAAQ,UAAWD,GACM,gBAAXG,SAAuBA,OAAOC,QAE5CD,OAAOC,QAAUJ,EAAQK,QAAQ,WAGjCL,EAAQM,SAEd,SAAUC,GAER,GAAIC,GAAY,WAEZ,QAASA,KACL,GAAIC,GAAOC,KAGPC,EAAc,WACd,GAAIC,IAAW,aAEY,MAAvBH,EAAKI,QAAQC,OACbF,EAAQG,KAAK,YAAcN,EAAKI,QAAQC,OAG5CL,EAAKO,MAAMC,KAAKV,EAAE,WACdW,QAASN,EAAQO,KAAK,SAK1BC,EAAgB,WAChBX,EAAKO,MAAMK,UAIXC,EAAa,SAASC,GAKtB,MAJIhB,GAAEiB,UAAUD,KACZA,EAAQE,KAAKC,MAAMH,IAGhBhB,EAAE,iBAAmBgB,EAAS,KAAMd,EAAKO,QAIhDW,EAAmB,WACnB,GAAIC,GAAgBnB,EAAKI,QAAQe,aAEjC,OAAKA,GAIEN,EAAWM,GAHPrB,EAAE,kBAAmBE,EAAKO,QAOrCa,EAAiB,WACjB,GAAIC,GAAYrB,EAAKO,MAAMe,KAAK,iBAAmBtB,EAAKI,QAAQmB,WAAa,KAE7E,QAAKF,EAAUG,QAAUxB,EAAKI,QAAQqB,YAClCJ,EAAYvB,EAAE,cAAgBgB,MAASd,EAAKI,QAAQmB,aAE7CF,EAAUK,UAAU1B,EAAKO,QAG7Bc,GAIPM,EAAU,SAASC,GACnB,GAAIC,GAAO7B,EAAKO,MAAMsB,KAAK,YAE3B,OAAmB,mBAARD,GACAC,EAAKD,GAGTC,GAIPC,EAAU,SAASF,EAAKd,GACV,OAAVA,GAAmC,gBAAVA,GACzBd,EAAKO,MAAMsB,KAAK,YAAaf,GAE7Bd,EAAKO,MAAMsB,KAAK,aAAaD,GAAOd,GAKxCiB,EAAoB,WACpB,GAAIC,GAAOd,IACPG,EAAYD,IAEZN,EAAQkB,EAAKC,MACbC,EAAOF,EAAKH,KAAK,QAAUG,EAAKH,KAAK,QAAUG,EAAKE,OAGpDT,EAA0C,OAA5BzB,EAAKI,QAAQqB,WAC3BzB,EAAKI,QAAQqB,aACXJ,EAAUG,OAEZD,EAAcF,EAAgB,OAAIA,EAAUY,MAAQ,KACpDE,EAAad,EAAgB,OAAIA,EAAUa,OAAS,IAExDJ,GAAQ,MACJM,YAAapC,EAAKI,QAGlBiC,YAAavB,EACbwB,WAAYJ,EAGZK,oBAAqBzB,EACrB0B,mBAAoBN,EAGpBT,WAAYA,EAGZgB,iBAAkBlB,EAClBmB,gBAAiBP,EAGjBQ,SAAU3C,EAAKI,QAAQwC,SAGvBC,YAAY,KAKhBC,EAAsB,WACtB9C,EAAKO,MAAMwC,WAAW,cAItBT,EAAa,WACb,MAAOX,GAAQ,eAIfU,EAAc,WACd,MAAOV,GAAQ,gBAIfqB,EAAc,WACd,GAAIC,GAAKnD,EAAE,WAAaW,QAAS,aAwCjC,OArCAT,GAAKO,MAAMe,KAAK,UAAU4B,KAAK,WAC3B,GAAIjB,GAAKC,EAAMiB,EAAMC,CAErBnB,GAAMnC,EAAEG,MAAMgC,MAGVA,IAAQN,EAAQ,sBAChBO,EAAOpC,EAAEG,MAAMiC,OACfiB,EAAOrD,EAAEG,MAAM4B,KAAK,QAChBsB,IAAQjB,EAAOiB,GAEnBC,EAAKtD,EAAE,SACHuD,KAAQ,IACRC,oBAAqBrB,EACrBsB,mBAAoBrB,EACpBiB,KAASnD,EAAKI,QAAkB,WAAI8B,EAAO,KAG/Ce,EAAGO,OAAOJ,MAMdpD,EAAKI,QAAQqD,oBACbR,EAAGO,OAAO1D,EAAE,WAAaoC,KAAQ,GAAIzB,QAAS,uBAI9CT,EAAKI,QAAQsD,SACbT,EAAGU,SAAS,cAGZ3D,EAAKI,QAAQwC,UACbK,EAAGU,SAAS,eAGTV,GAIPW,EAAuB,WACvB,MAAIjC,GAAQ,eAAe+B,QAChB,UAEA,WAKXG,EAAsB,SAAS/C,GAE/BD,EAAWC,GAAOgD,KAAK,YAAY,GAEnC9D,EAAKO,MAAMwD,UAIXC,EAAmB,WACnBlE,EAAE,SAAUE,EAAKO,OAAOuD,KAAK,WAAY,WACrC,MAAO7D,MAAKgE,kBAGhBjE,EAAKO,MAAMwD,UAIXN,EAAqB,SAASvB,GAE9BA,EAAOA,EAAOA,EAAOI,IAGjBJ,GAAQP,EAAQ,qBAChBO,EAAO,IAIPlC,EAAKI,QAAQqD,oBACbzD,EAAKO,MAAM2D,SAAS5C,KAAK,sBAAsBY,KAAKA,IAKxDiC,EAAW,SAASrD,GACpB,MAAOE,MAAKoD,MAAQpD,KAAKC,MAAc,GAARH,GAAc,GAAM,EAAK,MAIxDuD,EAAa,WAEbrE,EAAKsE,QAAQhD,KAAK,KAAKiD,YAAY,SAASC,EAAOrE,GAC/C,OAAQA,EAAQsE,MAAM,sBAAwB/D,KAAK,QAKvDgE,EAAa,WACb,GAIIC,GAAMC,EAJNxB,EAAKpD,EAAKsE,QAAQhD,KAAK,wBAA0Be,IAAgB,MACjElB,EAAgBQ,EAAQ,eAAeR,cACvC0D,EAAY/E,EAAEiB,UAAUsB,KAAiBA,IAAgB,EACzDyC,EAAIX,EAAShD,EASjB,IANAkD,IAGAjB,EAAGO,SAAS,0BAA0BC,OACjCD,SAAS,gBAEThC,EAAQ,eAAiB7B,EAAEiB,UAAUI,GAAgB,CACtD,GAAsB0D,GAAjB1D,IAAgC2D,EACjC,MAGJH,GAAO3E,EAAKsE,QAAQhD,KAAK,KAEzBsD,EAAexB,EAAS,OACpBA,EAAIzB,EAAQ,eAAsB,QAAI,OAAS,UAC/CgD,EAAMhD,EAAQ,eAAsB,QAAI,OAAS,WAErDiD,EAAYjB,SAAS,iBACrBiB,EAAYjB,SAAS,iBAAmBmB,KAK5CC,EAAiB,SAASC,GAC1B,MAAKrD,GAAQ,eAAkBA,EAAQ,eAAesD,aAI9C5C,KAAiB2C,EAASE,KAAK,sBAH5B,GAOXC,EAAqB,SAASC,GAC9BA,EAAUC,GAAG,kBAAmB,SAASC,GACrC,GAEIxE,GACAoB,EAHAkB,EAAKtD,EAAEG,MACPG,EAAUuB,EAAQ,cAiCtB,OA7BA2D,GAAMC,iBAENzE,EAAQsC,EAAG8B,KAAK,qBAChBhD,EAAOkB,EAAG8B,KAAK,oBAGXH,EAAe3B,KACftC,EAAQa,EAAQ,oBAChBO,EAAOP,EAAQ,oBAInBG,EAAQ,cAAehB,GACvBgB,EAAQ,aAAcI,GACtBJ,EAAQ,cAAc,GAEtB+B,EAAoB/C,GACpB2C,EAAmBvB,GAEnBwC,IAGAtE,EAAQoF,SAASC,KACbzF,EACAqC,IACAC,IACAgD,IAGG,KAKXI,EAA0B,SAASN,GACnCA,EAAUC,GAAG,uBAAwB,WACjC,GAAIjC,GAAKtD,EAAEG,KAEXoE,KAEAjB,EAAGO,SAAS,aAAaC,OACpBD,SAAS,aAEdF,EAAmBL,EAAG8B,KAAK,wBAK/BS,EAA0B,SAASP,GACnCpF,EAAKsE,QAAQe,GAAG,sCAAuC,WACnD5B,IACAiB,OAOJkB,EAAa,SAASR,GACtBA,EAAUC,GAAG,uBAAwB,SAASC,GAC1CA,EAAMC,iBACND,EAAMO,kBAEN/F,EAAEG,MAAM6F,WAKZC,EAAgB,SAASX,GACzBA,EAAUC,GAAG,kBAAmB,SAASC,GACrCA,EAAMC,oBAIVS,EAAiB,SAASZ,GAE1BD,EAAmBC,GAEfpF,EAAKI,QAAQ6F,aAEbP,EAAwBN,GAGxBO,EAAwBP,KAI5Bc,EAAiB,SAASd,GAE1BA,EAAUe,IAAI,eAGdC,EAAgB,SAASxD,GACzB,GAAIwC,GAAYpF,EAAKsE,QAAQhD,KAAK,IAE9BsE,IACAA,EAAWR,GAGXxC,GACAsD,EAAed,GACfW,EAAcX,IAEdY,EAAeZ,GAIvBnF,MAAKoG,KAAO,WAEJ1E,MAGJzB,IAGA6B,IAGA/B,EAAKsE,QAAUtB,IACfhD,EAAKsE,QAAQgC,YAAYtG,EAAKO,OAE9BmE,IAEAjB,IAEA2C,EAAcpG,EAAKI,QAAQwC,UAG3B5C,EAAKO,MAAMgG,SAGftG,KAAK2C,SAAW,SAAS4D,GACA,iBAAVA,IAAuB7E,EAAQ,aAAe6E,IAEzDJ,EAAcI,GACd1E,EAAQ,WAAY0E,GACpBxG,EAAKsE,QAAQmC,YAAY,iBAG7BxG,KAAKyG,IAAM,SAAS5F,GAChB,GAAIV,GAAUuB,EAAQ,cAE0C,KAA5D3B,EAAKO,MAAMe,KAAK,iBAAmBR,EAAQ,MAAMU,SAGrDM,EAAQ,cAAehB,GACvBgB,EAAQ,aAAc9B,EAAKO,MAAMe,KAAK,iBAAmBR,EAAQ,MAAMoB,QACvEJ,EAAQ,cAAc,GAEtB+B,EAAoBxB,KACpBoB,EAAmBnB,KAEnBoC,IAGKtE,EAAQuG,QACTvG,EAAQoF,SAASC,KACbxF,KACAoC,IACAC,OAKZrC,KAAK2G,MAAQ,WACT,GAAIxG,GAAUuB,EAAQ,cAGtBG,GAAQ,cAAeH,EAAQ,wBAC/BG,EAAQ,aAAcH,EAAQ,uBAC9BG,EAAQ,cAAc,GAEtBkC,IACAP,EAAmBnB,KAEnBoC,IAGAtE,EAAQyG,QAAQpB,KACZxF,KACAoC,IACAC,MAIRrC,KAAK6G,QAAU,WACX,GAAIhG,GAAQuB,IACRH,EAAOI,IACPlC,EAAUuB,EAAQ,cAGtBuE,GAAelG,EAAKsE,QAAQhD,KAAK,MAGjCtB,EAAKsE,QAAQyC,SAGbjE,IAGAnC,IAGAX,EAAKO,MAAM8F,OAGXjG,EAAQ4G,UAAUvB,KACdxF,KACAa,EACAoB,IAYZ,MAPAnC,GAAUkH,UAAUC,KAAO,SAAU9G,EAAS+G,GAI1C,MAHAlH,MAAKM,MAAQT,EAAEqH,GACflH,KAAKG,QAAUN,EAAEsH,UAAWtH,EAAEuH,GAAGC,UAAUC,SAAUnH,GAE9CH,KAAKG,SAGTL,IAGXD,GAAEuH,GAAGC,UAAY,SAAUE,EAAQpH,GAC/B,MAAOH,MAAKiD,KAAK,WACb,GAAIuE,GAAS,GAAI1H,EAQjB,IALKD,EAAEG,MAAMyH,GAAG,WACZ5H,EAAE6H,MAAM,qDAIRF,EAAOG,eAAeJ,GAAS,CAE/B,GADAC,EAAOP,KAAK9G,EAASH,MACN,SAAXuH,EACA,MAAOC,GAAOpB,KAAKjG,EAGnB,IAAIqH,EAAOlH,MAAMsB,KAAK,aAElB,MADA4F,GAAOnD,QAAUxE,EAAEG,MAAM4H,KAAK,cACvBJ,EAAOD,GAAQpH,OAK3B,CAAA,GAAsB,gBAAXoH,KAAwBA,EAGtC,MAFApH,GAAUoH,EACVC,EAAOP,KAAK9G,EAASH,MACdwH,EAAOpB,MAGdvG,GAAE6H,MAAM,UAAYH,EAAS,2CAKzC1H,EAAEuH,GAAGC,UAAUC,UACXlH,MAAM,GACNc,cAAc,KACdM,WAAW,KACXF,WAAW,GACXuG,YAAW,EACXrE,oBAAmB,EACnBwB,cAAa,EACbvB,SAAQ,EACRd,UAAS,EACTgD,YAAW,EACXK,YAAW,EACXU,QAAO,EACPnB,SAAS,SAAU1E,EAAOoB,EAAMoD,KAEhCuB,QAAQ,SAAU/F,EAAOoB,KAEzB8E,UAAU,SAAUlG,EAAOoB,MAI/BpC,EAAEuH,GAAGC,UAAUvH,UAAYA","file":"jquery.barrating.min.js","sourcesContent":["/**\n * jQuery Bar Rating Plugin v1.2.2\n *\n * http://github.com/antennaio/jquery-bar-rating\n *\n * Copyright (c) 2012-2016 Kazik Pietruszewski\n *\n * This plugin is available under the MIT license.\n * http://www.opensource.org/licenses/mit-license.php\n */\n(function (factory) {\n if (typeof define === 'function' && define.amd) {\n // AMD\n define(['jquery'], factory);\n } else if (typeof module === 'object' && module.exports) {\n // Node/CommonJS\n module.exports = factory(require('jquery'));\n } else {\n // browser globals\n factory(jQuery);\n }\n}(function ($) {\n\n var BarRating = (function() {\n\n function BarRating() {\n var self = this;\n\n // wrap element in a wrapper div\n var wrapElement = function() {\n var classes = ['br-wrapper'];\n\n if (self.options.theme !== '') {\n classes.push('br-theme-' + self.options.theme);\n }\n\n self.$elem.wrap($('<div />', {\n 'class': classes.join(' ')\n }));\n };\n\n // unwrap element\n var unwrapElement = function() {\n self.$elem.unwrap();\n };\n\n // find option by value\n var findOption = function(value) {\n if ($.isNumeric(value)) {\n value = Math.floor(value);\n }\n\n return $('option[value=\"' + value + '\"]', self.$elem);\n };\n\n // get initial option\n var getInitialOption = function() {\n var initialRating = self.options.initialRating;\n\n if (!initialRating) {\n return $('option:selected', self.$elem);\n }\n\n return findOption(initialRating);\n };\n\n // get empty option\n var getEmptyOption = function() {\n var $emptyOpt = self.$elem.find('option[value=\"' + self.options.emptyValue + '\"]');\n\n if (!$emptyOpt.length && self.options.allowEmpty) {\n $emptyOpt = $('<option />', { 'value': self.options.emptyValue });\n\n return $emptyOpt.prependTo(self.$elem);\n }\n\n return $emptyOpt;\n };\n\n // get data\n var getData = function(key) {\n var data = self.$elem.data('barrating');\n\n if (typeof key !== 'undefined') {\n return data[key];\n }\n\n return data;\n };\n\n // set data\n var setData = function(key, value) {\n if (value !== null && typeof value === 'object') {\n self.$elem.data('barrating', value);\n } else {\n self.$elem.data('barrating')[key] = value;\n }\n };\n\n // save data on element\n var saveDataOnElement = function() {\n var $opt = getInitialOption();\n var $emptyOpt = getEmptyOption();\n\n var value = $opt.val();\n var text = $opt.data('html') ? $opt.data('html') : $opt.text();\n\n // if the allowEmpty option is not set let's check if empty option exists in the select field\n var allowEmpty = (self.options.allowEmpty !== null) ?\n self.options.allowEmpty :\n !!$emptyOpt.length;\n\n var emptyValue = ($emptyOpt.length) ? $emptyOpt.val() : null;\n var emptyText = ($emptyOpt.length) ? $emptyOpt.text() : null;\n\n setData(null, {\n userOptions: self.options,\n\n // initial rating based on the OPTION value\n ratingValue: value,\n ratingText: text,\n\n // rating will be restored by calling clear method\n originalRatingValue: value,\n originalRatingText: text,\n\n // allow empty ratings?\n allowEmpty: allowEmpty,\n\n // rating value and text of the empty OPTION\n emptyRatingValue: emptyValue,\n emptyRatingText: emptyText,\n\n // read-only state\n readOnly: self.options.readonly,\n\n // did the user already select a rating?\n ratingMade: false\n });\n };\n\n // remove data on element\n var removeDataOnElement = function() {\n self.$elem.removeData('barrating');\n };\n\n // return current rating text\n var ratingText = function() {\n return getData('ratingText');\n };\n\n // return current rating value\n var ratingValue = function() {\n return getData('ratingValue');\n };\n\n // build widget and return jQuery element\n var buildWidget = function() {\n var $w = $('<div />', { 'class': 'br-widget' });\n\n // create A elements that will replace OPTIONs\n self.$elem.find('option').each(function() {\n var val, text, html, $a;\n\n val = $(this).val();\n\n // create ratings - but only if val is not defined as empty\n if (val !== getData('emptyRatingValue')) {\n text = $(this).text();\n html = $(this).data('html');\n if (html) { text = html; }\n\n $a = $('<a />', {\n 'href': '#',\n 'data-rating-value': val,\n 'data-rating-text': text,\n 'html': (self.options.showValues) ? text : ''\n });\n\n $w.append($a);\n }\n\n });\n\n // append .br-current-rating div to the widget\n if (self.options.showSelectedRating) {\n $w.append($('<div />', { 'text': '', 'class': 'br-current-rating' }));\n }\n\n // additional classes for the widget\n if (self.options.reverse) {\n $w.addClass('br-reverse');\n }\n\n if (self.options.readonly) {\n $w.addClass('br-readonly');\n }\n\n return $w;\n };\n\n // return a jQuery function name depending on the 'reverse' setting\n var nextAllorPreviousAll = function() {\n if (getData('userOptions').reverse) {\n return 'nextAll';\n } else {\n return 'prevAll';\n }\n };\n\n // set the value of the select field\n var setSelectFieldValue = function(value) {\n // change selected option\n findOption(value).prop('selected', true);\n\n self.$elem.change();\n };\n\n // reset select field\n var resetSelectField = function() {\n $('option', self.$elem).prop('selected', function() {\n return this.defaultSelected;\n });\n\n self.$elem.change();\n };\n\n // display the currently selected rating\n var showSelectedRating = function(text) {\n // text undefined?\n text = text ? text : ratingText();\n\n // special case when the selected rating is defined as empty\n if (text == getData('emptyRatingText')) {\n text = '';\n }\n\n // update .br-current-rating div\n if (self.options.showSelectedRating) {\n self.$elem.parent().find('.br-current-rating').text(text);\n }\n };\n\n // return rounded fraction of a value (14.4 -> 40, 0.99 -> 90)\n var fraction = function(value) {\n return Math.round(((Math.floor(value * 10) / 10) % 1) * 100);\n };\n\n // remove all classes from elements\n var resetStyle = function() {\n // remove all classes starting with br-*\n self.$widget.find('a').removeClass(function(index, classes) {\n return (classes.match(/(^|\\s)br-\\S+/g) || []).join(' ');\n });\n };\n\n // apply style by setting classes on elements\n var applyStyle = function() {\n var $a = self.$widget.find('a[data-rating-value=\"' + ratingValue() + '\"]');\n var initialRating = getData('userOptions').initialRating;\n var baseValue = $.isNumeric(ratingValue()) ? ratingValue() : 0;\n var f = fraction(initialRating);\n var $all, $fractional;\n\n resetStyle();\n\n // add classes\n $a.addClass('br-selected br-current')[nextAllorPreviousAll()]()\n .addClass('br-selected');\n\n if (!getData('ratingMade') && $.isNumeric(initialRating)) {\n if ((initialRating <= baseValue) || !f) {\n return;\n }\n\n $all = self.$widget.find('a');\n\n $fractional = ($a.length) ?\n $a[(getData('userOptions').reverse) ? 'prev' : 'next']() :\n $all[(getData('userOptions').reverse) ? 'last' : 'first']();\n\n $fractional.addClass('br-fractional');\n $fractional.addClass('br-fractional-' + f);\n }\n };\n\n // check if the element is deselectable?\n var isDeselectable = function($element) {\n if (!getData('allowEmpty') || !getData('userOptions').deselectable) {\n return false;\n }\n\n return (ratingValue() == $element.attr('data-rating-value'));\n };\n\n // handle click events\n var attachClickHandler = function($elements) {\n $elements.on('click.barrating', function(event) {\n var $a = $(this),\n options = getData('userOptions'),\n value,\n text;\n\n event.preventDefault();\n\n value = $a.attr('data-rating-value');\n text = $a.attr('data-rating-text');\n\n // is current and deselectable?\n if (isDeselectable($a)) {\n value = getData('emptyRatingValue');\n text = getData('emptyRatingText');\n }\n\n // remember selected rating\n setData('ratingValue', value);\n setData('ratingText', text);\n setData('ratingMade', true);\n\n setSelectFieldValue(value);\n showSelectedRating(text);\n\n applyStyle();\n\n // onSelect callback\n options.onSelect.call(\n self,\n ratingValue(),\n ratingText(),\n event\n );\n\n return false;\n });\n };\n\n // handle mouseenter events\n var attachMouseEnterHandler = function($elements) {\n $elements.on('mouseenter.barrating', function() {\n var $a = $(this);\n\n resetStyle();\n\n $a.addClass('br-active')[nextAllorPreviousAll()]()\n .addClass('br-active');\n\n showSelectedRating($a.attr('data-rating-text'));\n });\n };\n\n // handle mouseleave events\n var attachMouseLeaveHandler = function($elements) {\n self.$widget.on('mouseleave.barrating blur.barrating', function() {\n showSelectedRating();\n applyStyle();\n });\n };\n\n // somewhat primitive way to remove 300ms click delay on touch devices\n // for a more advanced solution consider setting `fastClicks` option to false\n // and using a library such as fastclick (https://github.com/ftlabs/fastclick)\n var fastClicks = function($elements) {\n $elements.on('touchstart.barrating', function(event) {\n event.preventDefault();\n event.stopPropagation();\n\n $(this).click();\n });\n };\n\n // disable clicks\n var disableClicks = function($elements) {\n $elements.on('click.barrating', function(event) {\n event.preventDefault();\n });\n };\n\n var attachHandlers = function($elements) {\n // attach click event handler\n attachClickHandler($elements);\n\n if (self.options.hoverState) {\n // attach mouseenter event handler\n attachMouseEnterHandler($elements);\n\n // attach mouseleave event handler\n attachMouseLeaveHandler($elements);\n }\n };\n\n var detachHandlers = function($elements) {\n // remove event handlers in the \".barrating\" namespace\n $elements.off('.barrating');\n };\n\n var setupHandlers = function(readonly) {\n var $elements = self.$widget.find('a');\n\n if (fastClicks) {\n fastClicks($elements);\n }\n\n if (readonly) {\n detachHandlers($elements);\n disableClicks($elements);\n } else {\n attachHandlers($elements);\n }\n };\n\n this.show = function() {\n // run only once\n if (getData()) return;\n\n // wrap element\n wrapElement();\n\n // save data\n saveDataOnElement();\n\n // build & append widget to the DOM\n self.$widget = buildWidget();\n self.$widget.insertAfter(self.$elem);\n\n applyStyle();\n\n showSelectedRating();\n\n setupHandlers(self.options.readonly);\n\n // hide the select field\n self.$elem.hide();\n };\n\n this.readonly = function(state) {\n if (typeof state !== 'boolean' || getData('readOnly') == state) return;\n\n setupHandlers(state);\n setData('readOnly', state);\n self.$widget.toggleClass('br-readonly');\n };\n\n this.set = function(value) {\n var options = getData('userOptions');\n\n if (self.$elem.find('option[value=\"' + value + '\"]').length === 0) return;\n\n // set data\n setData('ratingValue', value);\n setData('ratingText', self.$elem.find('option[value=\"' + value + '\"]').text());\n setData('ratingMade', true);\n\n setSelectFieldValue(ratingValue());\n showSelectedRating(ratingText());\n\n applyStyle();\n\n // onSelect callback\n if (!options.silent) {\n options.onSelect.call(\n this,\n ratingValue(),\n ratingText()\n );\n }\n };\n\n this.clear = function() {\n var options = getData('userOptions');\n\n // restore original data\n setData('ratingValue', getData('originalRatingValue'));\n setData('ratingText', getData('originalRatingText'));\n setData('ratingMade', false);\n\n resetSelectField();\n showSelectedRating(ratingText());\n\n applyStyle();\n\n // onClear callback\n options.onClear.call(\n this,\n ratingValue(),\n ratingText()\n );\n };\n\n this.destroy = function() {\n var value = ratingValue();\n var text = ratingText();\n var options = getData('userOptions');\n\n // detach handlers\n detachHandlers(self.$widget.find('a'));\n\n // remove widget\n self.$widget.remove();\n\n // remove data\n removeDataOnElement();\n\n // unwrap the element\n unwrapElement();\n\n // show the element\n self.$elem.show();\n\n // onDestroy callback\n options.onDestroy.call(\n this,\n value,\n text\n );\n };\n }\n\n BarRating.prototype.init = function (options, elem) {\n this.$elem = $(elem);\n this.options = $.extend({}, $.fn.barrating.defaults, options);\n\n return this.options;\n };\n\n return BarRating;\n })();\n\n $.fn.barrating = function (method, options) {\n return this.each(function () {\n var plugin = new BarRating();\n\n // plugin works with select fields\n if (!$(this).is('select')) {\n $.error('Sorry, this plugin only works with select fields.');\n }\n\n // method supplied\n if (plugin.hasOwnProperty(method)) {\n plugin.init(options, this);\n if (method === 'show') {\n return plugin.show(options);\n } else {\n // plugin exists?\n if (plugin.$elem.data('barrating')) {\n plugin.$widget = $(this).next('.br-widget');\n return plugin[method](options);\n }\n }\n\n // no method supplied or only options supplied\n } else if (typeof method === 'object' || !method) {\n options = method;\n plugin.init(options, this);\n return plugin.show();\n\n } else {\n $.error('Method ' + method + ' does not exist on jQuery.barrating');\n }\n });\n };\n\n $.fn.barrating.defaults = {\n theme:'',\n initialRating:null, // initial rating\n allowEmpty:null, // allow empty ratings?\n emptyValue:'', // this is the expected value of the empty rating\n showValues:false, // display rating values on the bars?\n showSelectedRating:true, // append a div with a rating to the widget?\n deselectable:true, // allow to deselect ratings?\n reverse:false, // reverse the rating?\n readonly:false, // make the rating ready-only?\n fastClicks:true, // remove 300ms click delay on touch devices?\n hoverState:true, // change state on hover?\n silent:false, // supress callbacks when controlling ratings programatically\n onSelect:function (value, text, event) {\n }, // callback fired when a rating is selected\n onClear:function (value, text) {\n }, // callback fired when a rating is cleared\n onDestroy:function (value, text) {\n } // callback fired when a widget is destroyed\n };\n\n $.fn.barrating.BarRating = BarRating;\n\n}));\n"],"sourceRoot":"/source/"}jquery.barrating.js000064400000047605151676730720010423 0ustar00/** * jQuery Bar Rating Plugin v1.2.2 * * http://github.com/antennaio/jquery-bar-rating * * Copyright (c) 2012-2016 Kazik Pietruszewski * * This plugin is available under the MIT license. * http://www.opensource.org/licenses/mit-license.php */ (function (factory) { if (typeof define === 'function' && define.amd) { // AMD define(['jquery'], factory); } else if (typeof module === 'object' && module.exports) { // Node/CommonJS module.exports = factory(require('jquery')); } else { // browser globals factory(jQuery); } }(function ($) { var BarRating = (function() { function BarRating() { var self = this; // wrap element in a wrapper div var wrapElement = function() { var classes = ['br-wrapper']; if (self.options.theme !== '') { classes.push('br-theme-' + self.options.theme); } self.$elem.wrap($('<div />', { 'class': classes.join(' ') })); }; // unwrap element var unwrapElement = function() { self.$elem.unwrap(); }; // find option by value var findOption = function(value) { if ($.isNumeric(value)) { value = Math.floor(value); } return $('option[value="' + value + '"]', self.$elem); }; // get initial option var getInitialOption = function() { var initialRating = self.options.initialRating; if (!initialRating) { return $('option:selected', self.$elem); } return findOption(initialRating); }; // get empty option var getEmptyOption = function() { var $emptyOpt = self.$elem.find('option[value="' + self.options.emptyValue + '"]'); if (!$emptyOpt.length && self.options.allowEmpty) { $emptyOpt = $('<option />', { 'value': self.options.emptyValue }); return $emptyOpt.prependTo(self.$elem); } return $emptyOpt; }; // get data var getData = function(key) { var data = self.$elem.data('barrating'); if (typeof key !== 'undefined') { return data[key]; } return data; }; // set data var setData = function(key, value) { if (value !== null && typeof value === 'object') { self.$elem.data('barrating', value); } else { self.$elem.data('barrating')[key] = value; } }; // save data on element var saveDataOnElement = function() { var $opt = getInitialOption(); var $emptyOpt = getEmptyOption(); var value = $opt.val(); var text = $opt.data('html') ? $opt.data('html') : $opt.text(); // if the allowEmpty option is not set let's check if empty option exists in the select field var allowEmpty = (self.options.allowEmpty !== null) ? self.options.allowEmpty : !!$emptyOpt.length; var emptyValue = ($emptyOpt.length) ? $emptyOpt.val() : null; var emptyText = ($emptyOpt.length) ? $emptyOpt.text() : null; setData(null, { userOptions: self.options, // initial rating based on the OPTION value ratingValue: value, ratingText: text, // rating will be restored by calling clear method originalRatingValue: value, originalRatingText: text, // allow empty ratings? allowEmpty: allowEmpty, // rating value and text of the empty OPTION emptyRatingValue: emptyValue, emptyRatingText: emptyText, // read-only state readOnly: self.options.readonly, // did the user already select a rating? ratingMade: false }); }; // remove data on element var removeDataOnElement = function() { self.$elem.removeData('barrating'); }; // return current rating text var ratingText = function() { return getData('ratingText'); }; // return current rating value var ratingValue = function() { return getData('ratingValue'); }; // build widget and return jQuery element var buildWidget = function() { var $w = $('<div />', { 'class': 'br-widget' }); // create A elements that will replace OPTIONs self.$elem.find('option').each(function() { var val, text, html, $a; val = $(this).val(); // create ratings - but only if val is not defined as empty if (val !== getData('emptyRatingValue')) { text = $(this).text(); html = $(this).data('html'); if (html) { text = html; } $a = $('<a />', { 'href': '#', 'data-rating-value': val, 'data-rating-text': text, 'html': (self.options.showValues) ? text : '' }); $w.append($a); } }); // append .br-current-rating div to the widget if (self.options.showSelectedRating) { $w.append($('<div />', { 'text': '', 'class': 'br-current-rating' })); } // additional classes for the widget if (self.options.reverse) { $w.addClass('br-reverse'); } if (self.options.readonly) { $w.addClass('br-readonly'); } return $w; }; // return a jQuery function name depending on the 'reverse' setting var nextAllorPreviousAll = function() { if (getData('userOptions').reverse) { return 'nextAll'; } else { return 'prevAll'; } }; // set the value of the select field var setSelectFieldValue = function(value) { // change selected option findOption(value).prop('selected', true); self.$elem.change(); }; // reset select field var resetSelectField = function() { $('option', self.$elem).prop('selected', function() { return this.defaultSelected; }); self.$elem.change(); }; // display the currently selected rating var showSelectedRating = function(text) { // text undefined? text = text ? text : ratingText(); // special case when the selected rating is defined as empty if (text == getData('emptyRatingText')) { text = ''; } // update .br-current-rating div if (self.options.showSelectedRating) { self.$elem.parent().find('.br-current-rating').text(text); } }; // return rounded fraction of a value (14.4 -> 40, 0.99 -> 90) var fraction = function(value) { return Math.round(((Math.floor(value * 10) / 10) % 1) * 100); }; // remove all classes from elements var resetStyle = function() { // remove all classes starting with br-* self.$widget.find('a').removeClass(function(index, classes) { return (classes.match(/(^|\s)br-\S+/g) || []).join(' '); }); }; // apply style by setting classes on elements var applyStyle = function() { var $a = self.$widget.find('a[data-rating-value="' + ratingValue() + '"]'); var initialRating = getData('userOptions').initialRating; var baseValue = $.isNumeric(ratingValue()) ? ratingValue() : 0; var f = fraction(initialRating); var $all, $fractional; resetStyle(); // add classes $a.addClass('br-selected br-current')[nextAllorPreviousAll()]() .addClass('br-selected'); if (!getData('ratingMade') && $.isNumeric(initialRating)) { if ((initialRating <= baseValue) || !f) { return; } $all = self.$widget.find('a'); $fractional = ($a.length) ? $a[(getData('userOptions').reverse) ? 'prev' : 'next']() : $all[(getData('userOptions').reverse) ? 'last' : 'first'](); $fractional.addClass('br-fractional'); $fractional.addClass('br-fractional-' + f); } }; // check if the element is deselectable? var isDeselectable = function($element) { if (!getData('allowEmpty') || !getData('userOptions').deselectable) { return false; } return (ratingValue() == $element.attr('data-rating-value')); }; // handle click events var attachClickHandler = function($elements) { $elements.on('click.barrating', function(event) { var $a = $(this), options = getData('userOptions'), value, text; event.preventDefault(); value = $a.attr('data-rating-value'); text = $a.attr('data-rating-text'); // is current and deselectable? if (isDeselectable($a)) { value = getData('emptyRatingValue'); text = getData('emptyRatingText'); } // remember selected rating setData('ratingValue', value); setData('ratingText', text); setData('ratingMade', true); setSelectFieldValue(value); showSelectedRating(text); applyStyle(); // onSelect callback options.onSelect.call( self, ratingValue(), ratingText(), event ); return false; }); }; // handle mouseenter events var attachMouseEnterHandler = function($elements) { $elements.on('mouseenter.barrating', function() { var $a = $(this); resetStyle(); $a.addClass('br-active')[nextAllorPreviousAll()]() .addClass('br-active'); showSelectedRating($a.attr('data-rating-text')); }); }; // handle mouseleave events var attachMouseLeaveHandler = function($elements) { self.$widget.on('mouseleave.barrating blur.barrating', function() { showSelectedRating(); applyStyle(); }); }; // somewhat primitive way to remove 300ms click delay on touch devices // for a more advanced solution consider setting `fastClicks` option to false // and using a library such as fastclick (https://github.com/ftlabs/fastclick) var fastClicks = function($elements) { $elements.on('touchstart.barrating', function(event) { event.preventDefault(); event.stopPropagation(); $(this).click(); }); }; // disable clicks var disableClicks = function($elements) { $elements.on('click.barrating', function(event) { event.preventDefault(); }); }; var attachHandlers = function($elements) { // attach click event handler attachClickHandler($elements); if (self.options.hoverState) { // attach mouseenter event handler attachMouseEnterHandler($elements); // attach mouseleave event handler attachMouseLeaveHandler($elements); } }; var detachHandlers = function($elements) { // remove event handlers in the ".barrating" namespace $elements.off('.barrating'); }; var setupHandlers = function(readonly) { var $elements = self.$widget.find('a'); if (fastClicks) { fastClicks($elements); } if (readonly) { detachHandlers($elements); disableClicks($elements); } else { attachHandlers($elements); } }; this.show = function() { // run only once if (getData()) return; // wrap element wrapElement(); // save data saveDataOnElement(); // build & append widget to the DOM self.$widget = buildWidget(); self.$widget.insertAfter(self.$elem); applyStyle(); showSelectedRating(); setupHandlers(self.options.readonly); // hide the select field self.$elem.hide(); }; this.readonly = function(state) { if (typeof state !== 'boolean' || getData('readOnly') == state) return; setupHandlers(state); setData('readOnly', state); self.$widget.toggleClass('br-readonly'); }; this.set = function(value) { var options = getData('userOptions'); if (self.$elem.find('option[value="' + value + '"]').length === 0) return; // set data setData('ratingValue', value); setData('ratingText', self.$elem.find('option[value="' + value + '"]').text()); setData('ratingMade', true); setSelectFieldValue(ratingValue()); showSelectedRating(ratingText()); applyStyle(); // onSelect callback if (!options.silent) { options.onSelect.call( this, ratingValue(), ratingText() ); } }; this.clear = function() { var options = getData('userOptions'); // restore original data setData('ratingValue', getData('originalRatingValue')); setData('ratingText', getData('originalRatingText')); setData('ratingMade', false); resetSelectField(); showSelectedRating(ratingText()); applyStyle(); // onClear callback options.onClear.call( this, ratingValue(), ratingText() ); }; this.destroy = function() { var value = ratingValue(); var text = ratingText(); var options = getData('userOptions'); // detach handlers detachHandlers(self.$widget.find('a')); // remove widget self.$widget.remove(); // remove data removeDataOnElement(); // unwrap the element unwrapElement(); // show the element self.$elem.show(); // onDestroy callback options.onDestroy.call( this, value, text ); }; } BarRating.prototype.init = function (options, elem) { this.$elem = $(elem); this.options = $.extend({}, $.fn.barrating.defaults, options); return this.options; }; return BarRating; })(); $.fn.barrating = function (method, options) { return this.each(function () { var plugin = new BarRating(); // plugin works with select fields if (!$(this).is('select')) { $.error('Sorry, this plugin only works with select fields.'); } // method supplied if (plugin.hasOwnProperty(method)) { plugin.init(options, this); if (method === 'show') { return plugin.show(options); } else { // plugin exists? if (plugin.$elem.data('barrating')) { plugin.$widget = $(this).next('.br-widget'); return plugin[method](options); } } // no method supplied or only options supplied } else if (typeof method === 'object' || !method) { options = method; plugin.init(options, this); return plugin.show(); } else { $.error('Method ' + method + ' does not exist on jQuery.barrating'); } }); }; $.fn.barrating.defaults = { theme:'', initialRating:null, // initial rating allowEmpty:null, // allow empty ratings? emptyValue:'', // this is the expected value of the empty rating showValues:false, // display rating values on the bars? showSelectedRating:true, // append a div with a rating to the widget? deselectable:true, // allow to deselect ratings? reverse:false, // reverse the rating? readonly:false, // make the rating ready-only? fastClicks:true, // remove 300ms click delay on touch devices? hoverState:true, // change state on hover? silent:false, // supress callbacks when controlling ratings programatically onSelect:function (value, text, event) { }, // callback fired when a rating is selected onClear:function (value, text) { }, // callback fired when a rating is cleared onDestroy:function (value, text) { } // callback fired when a widget is destroyed }; $.fn.barrating.BarRating = BarRating; })); LICENSE.txt000064400000002105151676730720006403 0ustar00Copyright Kazik Pietruszewski <http://antenna.io/> 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..npmignore000064400000000047151676730720006562 0ustar00.idea node_modules test-results.xml examples/index.html000064400000057653151676730720010415 0ustar00<!doctype html> <html class="no-js" lang=""> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <title>jQuery Bar Rating - Minimal, light-weight jQuery ratings</title> <meta name="description" content=""> <meta name="viewport" content="width=1024, initial-scale=1"> <link rel="stylesheet" href="css/normalize.min.css"> <link rel="stylesheet" href="css/main.css"> <link rel="stylesheet" href="css/examples.css"> <!-- Icons --> <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css"> <style> @font-face { font-family: 'Glyphicons Halflings'; src:url('https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/fonts/glyphicons-halflings-regular.eot'); src:url('https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/fonts/glyphicons-halflings-regular.woff') format('woff'), url('https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.5/fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg'); } </style> <!-- Themes --> <link rel="stylesheet" href="../dist/themes/bars-1to10.css"> <link rel="stylesheet" href="../dist/themes/bars-movie.css"> <link rel="stylesheet" href="../dist/themes/bars-square.css"> <link rel="stylesheet" href="../dist/themes/bars-pill.css"> <link rel="stylesheet" href="../dist/themes/bars-reversed.css"> <link rel="stylesheet" href="../dist/themes/bars-horizontal.css"> <link rel="stylesheet" href="../dist/themes/fontawesome-stars.css"> <link rel="stylesheet" href="../dist/themes/css-stars.css"> <link rel="stylesheet" href="../dist/themes/bootstrap-stars.css"> <link rel="stylesheet" href="../dist/themes/fontawesome-stars-o.css"> <!-- Fonts --> <link href="http://fonts.googleapis.com/css?family=Lato:300,400" rel="stylesheet" type="text/css"> <link href="http://fonts.googleapis.com/css?family=Source+Code+Pro" rel="stylesheet" type="text/css"> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <script>window.html5 || document.write('<script src="js/vendor/html5shiv.js"><\/script>')</script> <![endif]--> </head> <body> <!--[if lt IE 9]> <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p> <![endif]--> <a href="http://github.com/antennaio/jquery-bar-rating" target="_blank" class="github" title="Fork me on GitHub"></a> <section class="section section-intro"> <div class="bars"></div> <h1>jQuery Bar Rating</h1> <p class="tagline">Minimal, light-weight jQuery ratings.</p> <p> jQuery Bar Rating Plugin works by transforming a standard select field into a rating widget. The rating widget can be flexibly styled with CSS. Take a look at a few examples. </p> </section> <section class="section section-examples"> <div class="controls"> <a href="#" class="deactivated rating-enable">enable</a> <a href="#" class="rating-disable">disable</a> </div> <div class="examples"> <div class="row"> <div class="col"> <div class="box box-orange box-example-1to10"> <div class="box-header">1/10 Rating</div> <div class="box-body"> <select id="example-1to10" name="rating" autocomplete="off"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7" selected="selected">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> </div> </div> </div> <div class="col"> <div class="box box-blue box-example-movie"> <div class="box-header">Movie Rating</div> <div class="box-body"> <select id="example-movie" name="rating" autocomplete="off"> <option value="Bad">Bad</option> <option value="Mediocre">Mediocre</option> <option value="Good" selected="selected">Good</option> <option value="Awesome">Awesome</option> </select> </div> </div> </div> </div> <div class="row"> <div class="col"> <div class="box box-blue box-example-square"> <div class="box-header">Square Rating</div> <div class="box-body"> <select id="example-square" name="rating" autocomplete="off"> <option value=""></option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </div> </div> </div> <div class="col"> <div class="box box-green box-example-pill"> <div class="box-header">Pill Rating</div> <div class="box-body"> <select id="example-pill" name="rating" autocomplete="off"> <option value="A">A</option> <option value="B">B</option> <option value="C">C</option> <option value="D">D</option> <option value="E">E</option> <option value="F">F</option> </select> </div> </div> </div> </div> <div class="row"> <div class="col"> <div class="box box-green box-large box-example-reversed"> <div class="box-header">Reversed Rating</div> <div class="box-body"> <select id="example-reversed" name="rating" autocomplete="off"> <option value="Strongly Agree">Strongly Agree</option> <option value="Agree">Agree</option> <option value="Neither Agree or Disagree" selected="selected">Neither Agree or Disagree</option> <option value="Disagree">Disagree</option> <option value="Strongly Disagree">Strongly Disagree</option> </select> </div> </div> </div> <div class="col"> <div class="box box-orange box-large box-example-horizontal"> <div class="box-header">Horizontal Rating</div> <div class="box-body"> <select id="example-horizontal" name="rating" autocomplete="off"> <option value="10">10</option> <option value="9">9</option> <option value="8">8</option> <option value="7">7</option> <option value="6">6</option> <option value="5">5</option> <option value="4">4</option> <option value="3">3</option> <option value="2">2</option> <option value="1" selected="selected">1</option> </select> </div> </div> </div> </div> <div class="row"> <div class="col col-fullwidth"> <div class="star-ratings start-ratings-main clearfix"> <h1>How about star ratings?</h1> <p>The plugin comes with a few flavours of star ratings compatible with popular libraries.</p> <div class="stars stars-example-fontawesome"> <select id="example-fontawesome" name="rating" autocomplete="off"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <span class="title">Font Awesome</span> </div> <div class="stars stars-example-css"> <select id="example-css" name="rating" autocomplete="off"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <span class="title">CSS Stars</span> </div> <div class="stars stars-example-bootstrap"> <select id="example-bootstrap" name="rating" autocomplete="off"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> <span class="title">Bootstrap</span> </div> </div> </div> <div class="col col-fullwidth"> <div class="star-ratings"> <p>It can be used to display fractional star ratings.</p> <div class="stars stars-example-fontawesome-o"> <select id="example-fontawesome-o" name="rating" data-current-rating="5.6" autocomplete="off"> <option value=""></option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> <span class="title current-rating"> Current rating: <span class="value"></span> </span> <span class="title your-rating hidden"> Your rating: <span class="value"></span> <a href="#" class="clear-rating"><i class="fa fa-times-circle"></i></a> </span> </div> </div> </div> </div> </div> </section> <section class="section section-docs"> <div class="docs"> <div class="how-to-use"> <header>How to use</header> <div class="instructions"> <ol> <li> <p> Get the plugin from <a href="http://github.com/antennaio/jquery-bar-rating">GitHub</a> or install with Bower or NPM: </p> <pre> <code> bower install jquery-bar-rating </code> </pre> <pre> <code> npm install jquery-bar-rating </code> </pre> </li> <li> <p>Create a select field:</p> <pre> <code> <select id="example"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </code> </pre> </li> <li> <p> If you would like to use one of the provided themes include the theme in the head section of the page. Adjust the path to the CSS file and make sure it points to the correct theme file. In this example we are also pulling Font Awesome icons from a CDN. </p> <pre> <code> <link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css"> <link rel="stylesheet" href="fontawesome-stars.css"> </code> </pre> </li> <li> <p> Include and call the plugin (after jQuery v1.7.2+) </p> <pre> <code> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script> <script src="jquery.barrating.min.js"></script> <script type="text/javascript"> $(function() { $('#example').barrating({ theme: 'fontawesome-stars' }); }); </script> </code> </pre> </li> <li> You are done. </li> </ol> </div> </div> <div class="configuration" id="nav-configuration"> <header>Configuration</header> <div class="instructions"> <p> <strong>theme: ''</strong><br> Defines a theme. </p> <p> <strong>initialRating: null</strong><br> Defines initial rating. </p> <p> The default value is `null`, which means that the plugin will try to set the initial rating by finding an option with a `selected` attribute. </p> <p> Optionally, if your ratings are numeric, you can pass a fractional rating here (2.5, 2.8, 5.5). Currently the only theme that supports displaying of fractional ratings is the `fontawesome-stars-o` theme. </p> <p> <strong>allowEmpty: null</strong><br> If set to true, users will be able to submit empty ratings. </p> <p> The default value is `null`, which means that empty ratings will be allowed under the condition that the select field already contains a first option with an empty value. </p> <p> <strong>emptyValue: ''</strong><br> Defines a value that will be considered empty. It is unlikely you will need to modify this setting. </p> <p> <strong>showValues: false</strong><br> If set to true, rating values will be displayed on the bars. </p> <p> <strong>showSelectedRating: true</strong><br> If set to true, user selected rating will be displayed next to the widget. </p> <p> <strong>deselectable: true</strong><br> If set to true, users will be able to deselect ratings. </p> <p> For this feature to work the `allowEmpty` setting needs to be set to `true` or the select field must contain a first option with an empty value. </p> <p> <strong>reverse: false</strong><br> If set to true, the ratings will be reversed. </p> <p> <strong>readonly: false</strong><br> If set to true, the ratings will be read-only. </p> <p> <strong>fastClicks: true</strong><br> Remove 300ms click delay on touch devices. </p> <p> <strong>hoverState: true</strong><br> Change state on hover. </p> <p> <strong>silent: false</strong><br> Supress callbacks when controlling ratings programatically. </p> </div> </div> <div class="methods" id="nav-methods"> <header>Methods</header> <div class="instructions"> <p> <strong>$('select').barrating('show');</strong><br> Shows the rating widget. </p> <p> <strong>$('select').barrating('set', value);</strong><br> Sets the value of the rating widget.<br> The value needs to exist in the underlying select field. </p> <p> <strong>$('select').barrating('readonly', state);</strong><br> Switches the read-only state to true or false.<br> </p> <p> <strong>$('select').barrating('clear');</strong><br> Clears the rating. </p> <p> <strong>$('select').barrating('destroy');</strong><br> Destroys the rating widget. </p> </div> </div> <div class="callbacks" id="nav-callbacks"> <header>Callbacks</header> <div class="instructions"> <p> <strong>onSelect:function(value, text, event)</strong><br> Fired when a rating is selected.<br> If the rating was set programmatically by using the `set` method event will be null. </p> <p> <strong>onClear:function(value, text)</strong><br> Fired when a rating is cleared. </p> <p> <strong>onDestroy:function(value, text)</strong><br> Fired when a rating is destroyed. </p> </div> </div> <div class="faq" id="nav-faq"> <header>FAQ</header> <div class="instructions"> <div class="question"> <p> <strong>How does this plugin work?</strong> </p> <p> When you initialise the plugin the select field will be wrapped in a div with a `.br-theme-fontawesome-stars` class (or a different class indicating the theme currently in use). The select field will get hidden and a rating widget will be appended right after the select field. </p> <p>Expected result:</p> <pre> <code> <div class="br-wrapper br-theme-fontawesome-stars"> <select id="example"> <!-- now hidden --> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> ...rating widget... </div> </code> </pre> </div> <div class="question"> <p> <strong>How do I allow users to select empty ratings?</strong> </p> <p> To allow users to select empty ratings simply set the `allowEmpty` setting to `true` or alternatively include an option with an empty value in your select field: </p> <pre> <code> <select id="example"> <option value=""></option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> </code> </pre> </div> <div class="question"> <p> <strong>How can I specify text that is displayed on the bars?</strong> </p> <p> The `showValues` plugin setting already makes it easy to display option values directly on the bars. For more control over the text that is displayed on the bars you can define `data-html` attribute on each of the <option> elements that will take precedence over actual option value. </p> <pre> <code> <select id="example"> <option value="1" data-html="good">1</option> <option value="2" data-html="better">2</option> <option value="3" data-html="best">3</option> </select> </code> </pre> </div> <div class="question"> <p> <strong>How do I use the onSelect callback?</strong> </p> <p> The onSelect callback is fired when a user selects a rating or when the `set` method is called to select a rating programmatically. The optional third argument will give you access to the event object if it's available. </p> <pre> <code> $('#example').barrating('show', { theme: 'my-awesome-theme', onSelect: function(value, text, event) { if (typeof(event) !== 'undefined') { // rating was selected by a user console.log(event.target); } else { // rating was selected programmatically // by calling `set` method } } }); </code> </pre> <p> Often you don't want the callback to run at all when a rating is selected with the `set` method. If this is the case please use the <a href="#nav-configuration"> `silent`</a> option. </p> </div> <div class="question"> <p> <strong>Is keyboard navigation supported?</strong> </p> <p> Since the rating widget consists of anchor elements, you can tab or shift-tab between elements and press `Enter` to select a rating. </p> </div> <div class="question"> <p> <strong>Can the plugin be used outside of Javascript ecosystem?</strong> </p> <p> Harvey Lieberman (<a href="https://github.com/harveyl888" target="_blank">@harveyl888</a>) created an R htmlwidget wrapper for the jQuery Bar Rating plugin. For more details go to: </p> <p> <a href="https://github.com/harveyl888/barRating" target="_blank"> https://github.com/harveyl888/barRating</a> </p> </div> </div> </div> <div class="license" id="nav-license"> <header>License</header> <div class="instructions"> <p>This plugin is available under the MIT license:</p> <p> <a href="http://www.opensource.org/licenses/mit-license.php" target="_blank"> http://www.opensource.org/licenses/mit-license.php</a> </p> </div> </div> <div class="download" id="nav-download"> <header>Download</header> <div class="instructions"> <p>Download it at GitHub:</p> <p> <a href="http://github.com/antennaio/jquery-bar-rating" target="_blank"> http://github.com/antennaio/jquery-bar-rating</a> </p> </div> </div> </div> </section> <a href="http://antenna.io" class="antennaio" target="_blank"> <span>Made by ANTENNA.IO</span> </a> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.11.2.min.js"><\/script>')</script> <script src="../jquery.barrating.js"></script> <script src="js/examples.js"></script> </body> </html> examples/js/vendor/html5shiv.js000064400000004347151676730720012602 0ustar00(function(l,f){function m(){var a=e.elements;return"string"==typeof a?a.split(" "):a}function i(a){var b=n[a[o]];b||(b={},h++,a[o]=h,n[h]=b);return b}function p(a,b,c){b||(b=f);if(g)return b.createElement(a);c||(c=i(b));b=c.cache[a]?c.cache[a].cloneNode():r.test(a)?(c.cache[a]=c.createElem(a)).cloneNode():c.createElem(a);return b.canHaveChildren&&!s.test(a)?c.frag.appendChild(b):b}function t(a,b){if(!b.cache)b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag(); a.createElement=function(c){return!e.shivMethods?b.createElem(c):p(c,a,b)};a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+m().join().replace(/\w+/g,function(a){b.createElem(a);b.frag.createElement(a);return'c("'+a+'")'})+");return n}")(e,b.frag)}function q(a){a||(a=f);var b=i(a);if(e.shivCSS&&!j&&!b.hasCSS){var c,d=a;c=d.createElement("p");d=d.getElementsByTagName("head")[0]||d.documentElement;c.innerHTML="x<style>article,aside,figcaption,figure,footer,header,hgroup,nav,section{display:block}mark{background:#FF0;color:#000}</style>"; c=d.insertBefore(c.lastChild,d.firstChild);b.hasCSS=!!c}g||t(a,b);return a}var k=l.html5||{},s=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,r=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,j,o="_html5shiv",h=0,n={},g;(function(){try{var a=f.createElement("a");a.innerHTML="<xyz></xyz>";j="hidden"in a;var b;if(!(b=1==a.childNodes.length)){f.createElement("a");var c=f.createDocumentFragment();b="undefined"==typeof c.cloneNode|| "undefined"==typeof c.createDocumentFragment||"undefined"==typeof c.createElement}g=b}catch(d){g=j=!0}})();var e={elements:k.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",shivCSS:!1!==k.shivCSS,supportsUnknownElements:g,shivMethods:!1!==k.shivMethods,type:"default",shivDocument:q,createElement:p,createDocumentFragment:function(a,b){a||(a=f);if(g)return a.createDocumentFragment(); for(var b=b||i(a),c=b.frag.cloneNode(),d=0,e=m(),h=e.length;d<h;d++)c.createElement(e[d]);return c}};l.html5=e;q(f)})(this,document); examples/js/vendor/jquery-1.11.2.min.js000064400000273277151676730720013510 0ustar00/*! jQuery v1.11.2 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */ !function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l="1.11.2",m=function(a,b){return new m.fn.init(a,b)},n=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/^-ms-/,p=/-([\da-z])/gi,q=function(a,b){return b.toUpperCase()};m.fn=m.prototype={jquery:l,constructor:m,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=m.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return m.each(this,a,b)},map:function(a){return this.pushStack(m.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(d.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(0>a?b:0);return this.pushStack(c>=0&&b>c?[this[c]]:[])},end:function(){return this.prevObject||this.constructor(null)},push:f,sort:c.sort,splice:c.splice},m.extend=m.fn.extend=function(){var a,b,c,d,e,f,g=arguments[0]||{},h=1,i=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[h]||{},h++),"object"==typeof g||m.isFunction(g)||(g={}),h===i&&(g=this,h--);i>h;h++)if(null!=(e=arguments[h]))for(d in e)a=g[d],c=e[d],g!==c&&(j&&c&&(m.isPlainObject(c)||(b=m.isArray(c)))?(b?(b=!1,f=a&&m.isArray(a)?a:[]):f=a&&m.isPlainObject(a)?a:{},g[d]=m.extend(j,f,c)):void 0!==c&&(g[d]=c));return g},m.extend({expando:"jQuery"+(l+Math.random()).replace(/\D/g,""),isReady:!0,error:function(a){throw new Error(a)},noop:function(){},isFunction:function(a){return"function"===m.type(a)},isArray:Array.isArray||function(a){return"array"===m.type(a)},isWindow:function(a){return null!=a&&a==a.window},isNumeric:function(a){return!m.isArray(a)&&a-parseFloat(a)+1>=0},isEmptyObject:function(a){var b;for(b in a)return!1;return!0},isPlainObject:function(a){var b;if(!a||"object"!==m.type(a)||a.nodeType||m.isWindow(a))return!1;try{if(a.constructor&&!j.call(a,"constructor")&&!j.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}if(k.ownLast)for(b in a)return j.call(a,b);for(b in a);return void 0===b||j.call(a,b)},type:function(a){return null==a?a+"":"object"==typeof a||"function"==typeof a?h[i.call(a)]||"object":typeof a},globalEval:function(b){b&&m.trim(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(o,"ms-").replace(p,q)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()},each:function(a,b,c){var d,e=0,f=a.length,g=r(a);if(c){if(g){for(;f>e;e++)if(d=b.apply(a[e],c),d===!1)break}else for(e in a)if(d=b.apply(a[e],c),d===!1)break}else if(g){for(;f>e;e++)if(d=b.call(a[e],e,a[e]),d===!1)break}else for(e in a)if(d=b.call(a[e],e,a[e]),d===!1)break;return a},trim:function(a){return null==a?"":(a+"").replace(n,"")},makeArray:function(a,b){var c=b||[];return null!=a&&(r(Object(a))?m.merge(c,"string"==typeof a?[a]:a):f.call(c,a)),c},inArray:function(a,b,c){var d;if(b){if(g)return g.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;d>c;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,b){var c=+b.length,d=0,e=a.length;while(c>d)a[e++]=b[d++];if(c!==c)while(void 0!==b[d])a[e++]=b[d++];return a.length=e,a},grep:function(a,b,c){for(var d,e=[],f=0,g=a.length,h=!c;g>f;f++)d=!b(a[f],f),d!==h&&e.push(a[f]);return e},map:function(a,b,c){var d,f=0,g=a.length,h=r(a),i=[];if(h)for(;g>f;f++)d=b(a[f],f,c),null!=d&&i.push(d);else for(f in a)d=b(a[f],f,c),null!=d&&i.push(d);return e.apply([],i)},guid:1,proxy:function(a,b){var c,e,f;return"string"==typeof b&&(f=a[b],b=a,a=f),m.isFunction(a)?(c=d.call(arguments,2),e=function(){return a.apply(b||this,c.concat(d.call(arguments)))},e.guid=a.guid=a.guid||m.guid++,e):void 0},now:function(){return+new Date},support:k}),m.each("Boolean Number String Function Array Date RegExp Object Error".split(" "),function(a,b){h["[object "+b+"]"]=b.toLowerCase()});function r(a){var b=a.length,c=m.type(a);return"function"===c||m.isWindow(a)?!1:1===a.nodeType&&b?!0:"array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a}var s=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=hb(),z=hb(),A=hb(),B=function(a,b){return a===b&&(l=!0),0},C=1<<31,D={}.hasOwnProperty,E=[],F=E.pop,G=E.push,H=E.push,I=E.slice,J=function(a,b){for(var c=0,d=a.length;d>c;c++)if(a[c]===b)return c;return-1},K="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",L="[\\x20\\t\\r\\n\\f]",M="(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",N=M.replace("w","w#"),O="\\["+L+"*("+M+")(?:"+L+"*([*^$|!~]?=)"+L+"*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|("+N+"))|)"+L+"*\\]",P=":("+M+")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|"+O+")*)|.*)\\)|)",Q=new RegExp(L+"+","g"),R=new RegExp("^"+L+"+|((?:^|[^\\\\])(?:\\\\.)*)"+L+"+$","g"),S=new RegExp("^"+L+"*,"+L+"*"),T=new RegExp("^"+L+"*([>+~]|"+L+")"+L+"*"),U=new RegExp("="+L+"*([^\\]'\"]*?)"+L+"*\\]","g"),V=new RegExp(P),W=new RegExp("^"+N+"$"),X={ID:new RegExp("^#("+M+")"),CLASS:new RegExp("^\\.("+M+")"),TAG:new RegExp("^("+M.replace("w","w*")+")"),ATTR:new RegExp("^"+O),PSEUDO:new RegExp("^"+P),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+L+"*(even|odd|(([+-]|)(\\d*)n|)"+L+"*(?:([+-]|)"+L+"*(\\d+)|))"+L+"*\\)|)","i"),bool:new RegExp("^(?:"+K+")$","i"),needsContext:new RegExp("^"+L+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+L+"*((?:-\\d)?\\d*)"+L+"*\\)|)(?=[^-]|$)","i")},Y=/^(?:input|select|textarea|button)$/i,Z=/^h\d$/i,$=/^[^{]+\{\s*\[native \w/,_=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ab=/[+~]/,bb=/'|\\/g,cb=new RegExp("\\\\([\\da-f]{1,6}"+L+"?|("+L+")|.)","ig"),db=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:0>d?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},eb=function(){m()};try{H.apply(E=I.call(v.childNodes),v.childNodes),E[v.childNodes.length].nodeType}catch(fb){H={apply:E.length?function(a,b){G.apply(a,I.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function gb(a,b,d,e){var f,h,j,k,l,o,r,s,w,x;if((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,d=d||[],k=b.nodeType,"string"!=typeof a||!a||1!==k&&9!==k&&11!==k)return d;if(!e&&p){if(11!==k&&(f=_.exec(a)))if(j=f[1]){if(9===k){if(h=b.getElementById(j),!h||!h.parentNode)return d;if(h.id===j)return d.push(h),d}else if(b.ownerDocument&&(h=b.ownerDocument.getElementById(j))&&t(b,h)&&h.id===j)return d.push(h),d}else{if(f[2])return H.apply(d,b.getElementsByTagName(a)),d;if((j=f[3])&&c.getElementsByClassName)return H.apply(d,b.getElementsByClassName(j)),d}if(c.qsa&&(!q||!q.test(a))){if(s=r=u,w=b,x=1!==k&&a,1===k&&"object"!==b.nodeName.toLowerCase()){o=g(a),(r=b.getAttribute("id"))?s=r.replace(bb,"\\$&"):b.setAttribute("id",s),s="[id='"+s+"'] ",l=o.length;while(l--)o[l]=s+rb(o[l]);w=ab.test(a)&&pb(b.parentNode)||b,x=o.join(",")}if(x)try{return H.apply(d,w.querySelectorAll(x)),d}catch(y){}finally{r||b.removeAttribute("id")}}}return i(a.replace(R,"$1"),b,d,e)}function hb(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ib(a){return a[u]=!0,a}function jb(a){var b=n.createElement("div");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function kb(a,b){var c=a.split("|"),e=a.length;while(e--)d.attrHandle[c[e]]=b}function lb(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&(~b.sourceIndex||C)-(~a.sourceIndex||C);if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function mb(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function nb(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function ob(a){return ib(function(b){return b=+b,ib(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function pb(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=gb.support={},f=gb.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return b?"HTML"!==b.nodeName:!1},m=gb.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=g.documentElement,e=g.defaultView,e&&e!==e.top&&(e.addEventListener?e.addEventListener("unload",eb,!1):e.attachEvent&&e.attachEvent("onunload",eb)),p=!f(g),c.attributes=jb(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=jb(function(a){return a.appendChild(g.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=$.test(g.getElementsByClassName),c.getById=jb(function(a){return o.appendChild(a).id=u,!g.getElementsByName||!g.getElementsByName(u).length}),c.getById?(d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c&&c.parentNode?[c]:[]}},d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){return a.getAttribute("id")===b}}):(delete d.find.ID,d.filter.ID=function(a){var b=a.replace(cb,db);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){return p?b.getElementsByClassName(a):void 0},r=[],q=[],(c.qsa=$.test(g.querySelectorAll))&&(jb(function(a){o.appendChild(a).innerHTML="<a id='"+u+"'></a><select id='"+u+"-\f]' msallowcapture=''><option selected=''></option></select>",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+L+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+L+"*(?:value|"+K+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),jb(function(a){var b=g.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+L+"*[*^$|!~]?="),a.querySelectorAll(":enabled").length||q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=$.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&jb(function(a){c.disconnectedMatch=s.call(a,"div"),s.call(a,"[s!='']:x"),r.push("!=",P)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=$.test(o.compareDocumentPosition),t=b||$.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===g||a.ownerDocument===v&&t(v,a)?-1:b===g||b.ownerDocument===v&&t(v,b)?1:k?J(k,a)-J(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,h=[a],i=[b];if(!e||!f)return a===g?-1:b===g?1:e?-1:f?1:k?J(k,a)-J(k,b):0;if(e===f)return lb(a,b);c=a;while(c=c.parentNode)h.unshift(c);c=b;while(c=c.parentNode)i.unshift(c);while(h[d]===i[d])d++;return d?lb(h[d],i[d]):h[d]===v?-1:i[d]===v?1:0},g):n},gb.matches=function(a,b){return gb(a,null,null,b)},gb.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(U,"='$1']"),!(!c.matchesSelector||!p||r&&r.test(b)||q&&q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return gb(b,n,null,[a]).length>0},gb.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},gb.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&D.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},gb.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},gb.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=gb.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=gb.selectors={cacheLength:50,createPseudo:ib,match:X,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(cb,db),a[3]=(a[3]||a[4]||a[5]||"").replace(cb,db),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||gb.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&gb.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return X.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&V.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(cb,db).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+L+")"+a+"("+L+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=gb.attr(d,a);return null==e?"!="===b:b?(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(Q," ")+" ").indexOf(c)>-1:"|="===b?e===c||e.slice(0,c.length+1)===c+"-":!1):!0}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h;if(q){if(f){while(p){l=b;while(l=l[p])if(h?l.nodeName.toLowerCase()===r:1===l.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){k=q[u]||(q[u]={}),j=k[a]||[],n=j[0]===w&&j[1],m=j[0]===w&&j[2],l=n&&q.childNodes[n];while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if(1===l.nodeType&&++m&&l===b){k[a]=[w,n,m];break}}else if(s&&(j=(b[u]||(b[u]={}))[a])&&j[0]===w)m=j[1];else while(l=++n&&l&&l[p]||(m=n=0)||o.pop())if((h?l.nodeName.toLowerCase()===r:1===l.nodeType)&&++m&&(s&&((l[u]||(l[u]={}))[a]=[w,m]),l===b))break;return m-=e,m===d||m%d===0&&m/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||gb.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ib(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=J(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ib(function(a){var b=[],c=[],d=h(a.replace(R,"$1"));return d[u]?ib(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ib(function(a){return function(b){return gb(a,b).length>0}}),contains:ib(function(a){return a=a.replace(cb,db),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ib(function(a){return W.test(a||"")||gb.error("unsupported lang: "+a),a=a.replace(cb,db).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:function(a){return a.disabled===!1},disabled:function(a){return a.disabled===!0},checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return Z.test(a.nodeName)},input:function(a){return Y.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:ob(function(){return[0]}),last:ob(function(a,b){return[b-1]}),eq:ob(function(a,b,c){return[0>c?c+b:c]}),even:ob(function(a,b){for(var c=0;b>c;c+=2)a.push(c);return a}),odd:ob(function(a,b){for(var c=1;b>c;c+=2)a.push(c);return a}),lt:ob(function(a,b,c){for(var d=0>c?c+b:c;--d>=0;)a.push(d);return a}),gt:ob(function(a,b,c){for(var d=0>c?c+b:c;++d<b;)a.push(d);return a})}},d.pseudos.nth=d.pseudos.eq;for(b in{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})d.pseudos[b]=mb(b);for(b in{submit:!0,reset:!0})d.pseudos[b]=nb(b);function qb(){}qb.prototype=d.filters=d.pseudos,d.setFilters=new qb,g=gb.tokenize=function(a,b){var c,e,f,g,h,i,j,k=z[a+" "];if(k)return b?0:k.slice(0);h=a,i=[],j=d.preFilter;while(h){(!c||(e=S.exec(h)))&&(e&&(h=h.slice(e[0].length)||h),i.push(f=[])),c=!1,(e=T.exec(h))&&(c=e.shift(),f.push({value:c,type:e[0].replace(R," ")}),h=h.slice(c.length));for(g in d.filter)!(e=X[g].exec(h))||j[g]&&!(e=j[g](e))||(c=e.shift(),f.push({value:c,type:g,matches:e}),h=h.slice(c.length));if(!c)break}return b?h.length:h?gb.error(a):z(a,i).slice(0)};function rb(a){for(var b=0,c=a.length,d="";c>b;b++)d+=a[b].value;return d}function sb(a,b,c){var d=b.dir,e=c&&"parentNode"===d,f=x++;return b.first?function(b,c,f){while(b=b[d])if(1===b.nodeType||e)return a(b,c,f)}:function(b,c,g){var h,i,j=[w,f];if(g){while(b=b[d])if((1===b.nodeType||e)&&a(b,c,g))return!0}else while(b=b[d])if(1===b.nodeType||e){if(i=b[u]||(b[u]={}),(h=i[d])&&h[0]===w&&h[1]===f)return j[2]=h[2];if(i[d]=j,j[2]=a(b,c,g))return!0}}}function tb(a){return a.length>1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function ub(a,b,c){for(var d=0,e=b.length;e>d;d++)gb(a,b[d],c);return c}function vb(a,b,c,d,e){for(var f,g=[],h=0,i=a.length,j=null!=b;i>h;h++)(f=a[h])&&(!c||c(f,d,e))&&(g.push(f),j&&b.push(h));return g}function wb(a,b,c,d,e,f){return d&&!d[u]&&(d=wb(d)),e&&!e[u]&&(e=wb(e,f)),ib(function(f,g,h,i){var j,k,l,m=[],n=[],o=g.length,p=f||ub(b||"*",h.nodeType?[h]:h,[]),q=!a||!f&&b?p:vb(p,m,a,h,i),r=c?e||(f?a:o||d)?[]:g:q;if(c&&c(q,r,h,i),d){j=vb(r,n),d(j,[],h,i),k=j.length;while(k--)(l=j[k])&&(r[n[k]]=!(q[n[k]]=l))}if(f){if(e||a){if(e){j=[],k=r.length;while(k--)(l=r[k])&&j.push(q[k]=l);e(null,r=[],j,i)}k=r.length;while(k--)(l=r[k])&&(j=e?J(f,l):m[k])>-1&&(f[j]=!(g[j]=l))}}else r=vb(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):H.apply(g,r)})}function xb(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=sb(function(a){return a===b},h,!0),l=sb(function(a){return J(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];f>i;i++)if(c=d.relative[a[i].type])m=[sb(tb(m),c)];else{if(c=d.filter[a[i].type].apply(null,a[i].matches),c[u]){for(e=++i;f>e;e++)if(d.relative[a[e].type])break;return wb(i>1&&tb(m),i>1&&rb(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(R,"$1"),c,e>i&&xb(a.slice(i,e)),f>e&&xb(a=a.slice(e)),f>e&&rb(a))}m.push(c)}return tb(m)}function yb(a,b){var c=b.length>0,e=a.length>0,f=function(f,g,h,i,k){var l,m,o,p=0,q="0",r=f&&[],s=[],t=j,u=f||e&&d.find.TAG("*",k),v=w+=null==t?1:Math.random()||.1,x=u.length;for(k&&(j=g!==n&&g);q!==x&&null!=(l=u[q]);q++){if(e&&l){m=0;while(o=a[m++])if(o(l,g,h)){i.push(l);break}k&&(w=v)}c&&((l=!o&&l)&&p--,f&&r.push(l))}if(p+=q,c&&q!==p){m=0;while(o=b[m++])o(r,s,g,h);if(f){if(p>0)while(q--)r[q]||s[q]||(s[q]=F.call(i));s=vb(s)}H.apply(i,s),k&&!f&&s.length>0&&p+b.length>1&&gb.uniqueSort(i)}return k&&(w=v,j=t),r};return c?ib(f):f}return h=gb.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=xb(b[c]),f[u]?d.push(f):e.push(f);f=A(a,yb(e,d)),f.selector=a}return f},i=gb.select=function(a,b,e,f){var i,j,k,l,m,n="function"==typeof a&&a,o=!f&&g(a=n.selector||a);if(e=e||[],1===o.length){if(j=o[0]=o[0].slice(0),j.length>2&&"ID"===(k=j[0]).type&&c.getById&&9===b.nodeType&&p&&d.relative[j[1].type]){if(b=(d.find.ID(k.matches[0].replace(cb,db),b)||[])[0],!b)return e;n&&(b=b.parentNode),a=a.slice(j.shift().value.length)}i=X.needsContext.test(a)?0:j.length;while(i--){if(k=j[i],d.relative[l=k.type])break;if((m=d.find[l])&&(f=m(k.matches[0].replace(cb,db),ab.test(j[0].type)&&pb(b.parentNode)||b))){if(j.splice(i,1),a=f.length&&rb(j),!a)return H.apply(e,f),e;break}}}return(n||h(a,o))(f,b,!p,e,ab.test(a)&&pb(b.parentNode)||b),e},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=jb(function(a){return 1&a.compareDocumentPosition(n.createElement("div"))}),jb(function(a){return a.innerHTML="<a href='#'></a>","#"===a.firstChild.getAttribute("href")})||kb("type|href|height|width",function(a,b,c){return c?void 0:a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&jb(function(a){return a.innerHTML="<input/>",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||kb("value",function(a,b,c){return c||"input"!==a.nodeName.toLowerCase()?void 0:a.defaultValue}),jb(function(a){return null==a.getAttribute("disabled")})||kb(K,function(a,b,c){var d;return c?void 0:a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),gb}(a);m.find=s,m.expr=s.selectors,m.expr[":"]=m.expr.pseudos,m.unique=s.uniqueSort,m.text=s.getText,m.isXMLDoc=s.isXML,m.contains=s.contains;var t=m.expr.match.needsContext,u=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,v=/^.[^:#\[\.,]*$/;function w(a,b,c){if(m.isFunction(b))return m.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return m.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(v.test(b))return m.filter(b,a,c);b=m.filter(b,a)}return m.grep(a,function(a){return m.inArray(a,b)>=0!==c})}m.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?m.find.matchesSelector(d,a)?[d]:[]:m.find.matches(a,m.grep(b,function(a){return 1===a.nodeType}))},m.fn.extend({find:function(a){var b,c=[],d=this,e=d.length;if("string"!=typeof a)return this.pushStack(m(a).filter(function(){for(b=0;e>b;b++)if(m.contains(d[b],this))return!0}));for(b=0;e>b;b++)m.find(a,d[b],c);return c=this.pushStack(e>1?m.unique(c):c),c.selector=this.selector?this.selector+" "+a:a,c},filter:function(a){return this.pushStack(w(this,a||[],!1))},not:function(a){return this.pushStack(w(this,a||[],!0))},is:function(a){return!!w(this,"string"==typeof a&&t.test(a)?m(a):a||[],!1).length}});var x,y=a.document,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,A=m.fn.init=function(a,b){var c,d;if(!a)return this;if("string"==typeof a){if(c="<"===a.charAt(0)&&">"===a.charAt(a.length-1)&&a.length>=3?[null,a,null]:z.exec(a),!c||!c[1]&&b)return!b||b.jquery?(b||x).find(a):this.constructor(b).find(a);if(c[1]){if(b=b instanceof m?b[0]:b,m.merge(this,m.parseHTML(c[1],b&&b.nodeType?b.ownerDocument||b:y,!0)),u.test(c[1])&&m.isPlainObject(b))for(c in b)m.isFunction(this[c])?this[c](b[c]):this.attr(c,b[c]);return this}if(d=y.getElementById(c[2]),d&&d.parentNode){if(d.id!==c[2])return x.find(a);this.length=1,this[0]=d}return this.context=y,this.selector=a,this}return a.nodeType?(this.context=this[0]=a,this.length=1,this):m.isFunction(a)?"undefined"!=typeof x.ready?x.ready(a):a(m):(void 0!==a.selector&&(this.selector=a.selector,this.context=a.context),m.makeArray(a,this))};A.prototype=m.fn,x=m(y);var B=/^(?:parents|prev(?:Until|All))/,C={children:!0,contents:!0,next:!0,prev:!0};m.extend({dir:function(a,b,c){var d=[],e=a[b];while(e&&9!==e.nodeType&&(void 0===c||1!==e.nodeType||!m(e).is(c)))1===e.nodeType&&d.push(e),e=e[b];return d},sibling:function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}}),m.fn.extend({has:function(a){var b,c=m(a,this),d=c.length;return this.filter(function(){for(b=0;d>b;b++)if(m.contains(this,c[b]))return!0})},closest:function(a,b){for(var c,d=0,e=this.length,f=[],g=t.test(a)||"string"!=typeof a?m(a,b||this.context):0;e>d;d++)for(c=this[d];c&&c!==b;c=c.parentNode)if(c.nodeType<11&&(g?g.index(c)>-1:1===c.nodeType&&m.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?m.unique(f):f)},index:function(a){return a?"string"==typeof a?m.inArray(this[0],m(a)):m.inArray(a.jquery?a[0]:a,this):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(m.unique(m.merge(this.get(),m(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function D(a,b){do a=a[b];while(a&&1!==a.nodeType);return a}m.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return m.dir(a,"parentNode")},parentsUntil:function(a,b,c){return m.dir(a,"parentNode",c)},next:function(a){return D(a,"nextSibling")},prev:function(a){return D(a,"previousSibling")},nextAll:function(a){return m.dir(a,"nextSibling")},prevAll:function(a){return m.dir(a,"previousSibling")},nextUntil:function(a,b,c){return m.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return m.dir(a,"previousSibling",c)},siblings:function(a){return m.sibling((a.parentNode||{}).firstChild,a)},children:function(a){return m.sibling(a.firstChild)},contents:function(a){return m.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:m.merge([],a.childNodes)}},function(a,b){m.fn[a]=function(c,d){var e=m.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=m.filter(d,e)),this.length>1&&(C[a]||(e=m.unique(e)),B.test(a)&&(e=e.reverse())),this.pushStack(e)}});var E=/\S+/g,F={};function G(a){var b=F[a]={};return m.each(a.match(E)||[],function(a,c){b[c]=!0}),b}m.Callbacks=function(a){a="string"==typeof a?F[a]||G(a):m.extend({},a);var b,c,d,e,f,g,h=[],i=!a.once&&[],j=function(l){for(c=a.memory&&l,d=!0,f=g||0,g=0,e=h.length,b=!0;h&&e>f;f++)if(h[f].apply(l[0],l[1])===!1&&a.stopOnFalse){c=!1;break}b=!1,h&&(i?i.length&&j(i.shift()):c?h=[]:k.disable())},k={add:function(){if(h){var d=h.length;!function f(b){m.each(b,function(b,c){var d=m.type(c);"function"===d?a.unique&&k.has(c)||h.push(c):c&&c.length&&"string"!==d&&f(c)})}(arguments),b?e=h.length:c&&(g=d,j(c))}return this},remove:function(){return h&&m.each(arguments,function(a,c){var d;while((d=m.inArray(c,h,d))>-1)h.splice(d,1),b&&(e>=d&&e--,f>=d&&f--)}),this},has:function(a){return a?m.inArray(a,h)>-1:!(!h||!h.length)},empty:function(){return h=[],e=0,this},disable:function(){return h=i=c=void 0,this},disabled:function(){return!h},lock:function(){return i=void 0,c||k.disable(),this},locked:function(){return!i},fireWith:function(a,c){return!h||d&&!i||(c=c||[],c=[a,c.slice?c.slice():c],b?i.push(c):j(c)),this},fire:function(){return k.fireWith(this,arguments),this},fired:function(){return!!d}};return k},m.extend({Deferred:function(a){var b=[["resolve","done",m.Callbacks("once memory"),"resolved"],["reject","fail",m.Callbacks("once memory"),"rejected"],["notify","progress",m.Callbacks("memory")]],c="pending",d={state:function(){return c},always:function(){return e.done(arguments).fail(arguments),this},then:function(){var a=arguments;return m.Deferred(function(c){m.each(b,function(b,f){var g=m.isFunction(a[b])&&a[b];e[f[1]](function(){var a=g&&g.apply(this,arguments);a&&m.isFunction(a.promise)?a.promise().done(c.resolve).fail(c.reject).progress(c.notify):c[f[0]+"With"](this===d?c.promise():this,g?[a]:arguments)})}),a=null}).promise()},promise:function(a){return null!=a?m.extend(a,d):d}},e={};return d.pipe=d.then,m.each(b,function(a,f){var g=f[2],h=f[3];d[f[1]]=g.add,h&&g.add(function(){c=h},b[1^a][2].disable,b[2][2].lock),e[f[0]]=function(){return e[f[0]+"With"](this===e?d:this,arguments),this},e[f[0]+"With"]=g.fireWith}),d.promise(e),a&&a.call(e,e),e},when:function(a){var b=0,c=d.call(arguments),e=c.length,f=1!==e||a&&m.isFunction(a.promise)?e:0,g=1===f?a:m.Deferred(),h=function(a,b,c){return function(e){b[a]=this,c[a]=arguments.length>1?d.call(arguments):e,c===i?g.notifyWith(b,c):--f||g.resolveWith(b,c)}},i,j,k;if(e>1)for(i=new Array(e),j=new Array(e),k=new Array(e);e>b;b++)c[b]&&m.isFunction(c[b].promise)?c[b].promise().done(h(b,k,c)).fail(g.reject).progress(h(b,j,i)):--f;return f||g.resolveWith(k,c),g.promise()}});var H;m.fn.ready=function(a){return m.ready.promise().done(a),this},m.extend({isReady:!1,readyWait:1,holdReady:function(a){a?m.readyWait++:m.ready(!0)},ready:function(a){if(a===!0?!--m.readyWait:!m.isReady){if(!y.body)return setTimeout(m.ready);m.isReady=!0,a!==!0&&--m.readyWait>0||(H.resolveWith(y,[m]),m.fn.triggerHandler&&(m(y).triggerHandler("ready"),m(y).off("ready")))}}});function I(){y.addEventListener?(y.removeEventListener("DOMContentLoaded",J,!1),a.removeEventListener("load",J,!1)):(y.detachEvent("onreadystatechange",J),a.detachEvent("onload",J))}function J(){(y.addEventListener||"load"===event.type||"complete"===y.readyState)&&(I(),m.ready())}m.ready.promise=function(b){if(!H)if(H=m.Deferred(),"complete"===y.readyState)setTimeout(m.ready);else if(y.addEventListener)y.addEventListener("DOMContentLoaded",J,!1),a.addEventListener("load",J,!1);else{y.attachEvent("onreadystatechange",J),a.attachEvent("onload",J);var c=!1;try{c=null==a.frameElement&&y.documentElement}catch(d){}c&&c.doScroll&&!function e(){if(!m.isReady){try{c.doScroll("left")}catch(a){return setTimeout(e,50)}I(),m.ready()}}()}return H.promise(b)};var K="undefined",L;for(L in m(k))break;k.ownLast="0"!==L,k.inlineBlockNeedsLayout=!1,m(function(){var a,b,c,d;c=y.getElementsByTagName("body")[0],c&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1",k.inlineBlockNeedsLayout=a=3===b.offsetWidth,a&&(c.style.zoom=1)),c.removeChild(d))}),function(){var a=y.createElement("div");if(null==k.deleteExpando){k.deleteExpando=!0;try{delete a.test}catch(b){k.deleteExpando=!1}}a=null}(),m.acceptData=function(a){var b=m.noData[(a.nodeName+" ").toLowerCase()],c=+a.nodeType||1;return 1!==c&&9!==c?!1:!b||b!==!0&&a.getAttribute("classid")===b};var M=/^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,N=/([A-Z])/g;function O(a,b,c){if(void 0===c&&1===a.nodeType){var d="data-"+b.replace(N,"-$1").toLowerCase();if(c=a.getAttribute(d),"string"==typeof c){try{c="true"===c?!0:"false"===c?!1:"null"===c?null:+c+""===c?+c:M.test(c)?m.parseJSON(c):c}catch(e){}m.data(a,b,c)}else c=void 0}return c}function P(a){var b;for(b in a)if(("data"!==b||!m.isEmptyObject(a[b]))&&"toJSON"!==b)return!1; return!0}function Q(a,b,d,e){if(m.acceptData(a)){var f,g,h=m.expando,i=a.nodeType,j=i?m.cache:a,k=i?a[h]:a[h]&&h;if(k&&j[k]&&(e||j[k].data)||void 0!==d||"string"!=typeof b)return k||(k=i?a[h]=c.pop()||m.guid++:h),j[k]||(j[k]=i?{}:{toJSON:m.noop}),("object"==typeof b||"function"==typeof b)&&(e?j[k]=m.extend(j[k],b):j[k].data=m.extend(j[k].data,b)),g=j[k],e||(g.data||(g.data={}),g=g.data),void 0!==d&&(g[m.camelCase(b)]=d),"string"==typeof b?(f=g[b],null==f&&(f=g[m.camelCase(b)])):f=g,f}}function R(a,b,c){if(m.acceptData(a)){var d,e,f=a.nodeType,g=f?m.cache:a,h=f?a[m.expando]:m.expando;if(g[h]){if(b&&(d=c?g[h]:g[h].data)){m.isArray(b)?b=b.concat(m.map(b,m.camelCase)):b in d?b=[b]:(b=m.camelCase(b),b=b in d?[b]:b.split(" ")),e=b.length;while(e--)delete d[b[e]];if(c?!P(d):!m.isEmptyObject(d))return}(c||(delete g[h].data,P(g[h])))&&(f?m.cleanData([a],!0):k.deleteExpando||g!=g.window?delete g[h]:g[h]=null)}}}m.extend({cache:{},noData:{"applet ":!0,"embed ":!0,"object ":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(a){return a=a.nodeType?m.cache[a[m.expando]]:a[m.expando],!!a&&!P(a)},data:function(a,b,c){return Q(a,b,c)},removeData:function(a,b){return R(a,b)},_data:function(a,b,c){return Q(a,b,c,!0)},_removeData:function(a,b){return R(a,b,!0)}}),m.fn.extend({data:function(a,b){var c,d,e,f=this[0],g=f&&f.attributes;if(void 0===a){if(this.length&&(e=m.data(f),1===f.nodeType&&!m._data(f,"parsedAttrs"))){c=g.length;while(c--)g[c]&&(d=g[c].name,0===d.indexOf("data-")&&(d=m.camelCase(d.slice(5)),O(f,d,e[d])));m._data(f,"parsedAttrs",!0)}return e}return"object"==typeof a?this.each(function(){m.data(this,a)}):arguments.length>1?this.each(function(){m.data(this,a,b)}):f?O(f,a,m.data(f,a)):void 0},removeData:function(a){return this.each(function(){m.removeData(this,a)})}}),m.extend({queue:function(a,b,c){var d;return a?(b=(b||"fx")+"queue",d=m._data(a,b),c&&(!d||m.isArray(c)?d=m._data(a,b,m.makeArray(c)):d.push(c)),d||[]):void 0},dequeue:function(a,b){b=b||"fx";var c=m.queue(a,b),d=c.length,e=c.shift(),f=m._queueHooks(a,b),g=function(){m.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return m._data(a,c)||m._data(a,c,{empty:m.Callbacks("once memory").add(function(){m._removeData(a,b+"queue"),m._removeData(a,c)})})}}),m.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length<c?m.queue(this[0],a):void 0===b?this:this.each(function(){var c=m.queue(this,a,b);m._queueHooks(this,a),"fx"===a&&"inprogress"!==c[0]&&m.dequeue(this,a)})},dequeue:function(a){return this.each(function(){m.dequeue(this,a)})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a,b){var c,d=1,e=m.Deferred(),f=this,g=this.length,h=function(){--d||e.resolveWith(f,[f])};"string"!=typeof a&&(b=a,a=void 0),a=a||"fx";while(g--)c=m._data(f[g],a+"queueHooks"),c&&c.empty&&(d++,c.empty.add(h));return h(),e.promise(b)}});var S=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=["Top","Right","Bottom","Left"],U=function(a,b){return a=b||a,"none"===m.css(a,"display")||!m.contains(a.ownerDocument,a)},V=m.access=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===m.type(c)){e=!0;for(h in c)m.access(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,m.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(m(a),c)})),b))for(;i>h;h++)b(a[h],c,g?d:d.call(a[h],h,b(a[h],c)));return e?a:j?b.call(a):i?b(a[0],c):f},W=/^(?:checkbox|radio)$/i;!function(){var a=y.createElement("input"),b=y.createElement("div"),c=y.createDocumentFragment();if(b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",k.leadingWhitespace=3===b.firstChild.nodeType,k.tbody=!b.getElementsByTagName("tbody").length,k.htmlSerialize=!!b.getElementsByTagName("link").length,k.html5Clone="<:nav></:nav>"!==y.createElement("nav").cloneNode(!0).outerHTML,a.type="checkbox",a.checked=!0,c.appendChild(a),k.appendChecked=a.checked,b.innerHTML="<textarea>x</textarea>",k.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue,c.appendChild(b),b.innerHTML="<input type='radio' checked='checked' name='t'/>",k.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,k.noCloneEvent=!0,b.attachEvent&&(b.attachEvent("onclick",function(){k.noCloneEvent=!1}),b.cloneNode(!0).click()),null==k.deleteExpando){k.deleteExpando=!0;try{delete b.test}catch(d){k.deleteExpando=!1}}}(),function(){var b,c,d=y.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(k[b+"Bubbles"]=c in a)||(d.setAttribute(c,"t"),k[b+"Bubbles"]=d.attributes[c].expando===!1);d=null}();var X=/^(?:input|select|textarea)$/i,Y=/^key/,Z=/^(?:mouse|pointer|contextmenu)|click/,$=/^(?:focusinfocus|focusoutblur)$/,_=/^([^.]*)(?:\.(.+)|)$/;function ab(){return!0}function bb(){return!1}function cb(){try{return y.activeElement}catch(a){}}m.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=m.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return typeof m===K||a&&m.event.triggered===a.type?void 0:m.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(E)||[""],h=b.length;while(h--)f=_.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=m.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=m.event.special[o]||{},l=m.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&m.expr.match.needsContext.test(e),namespace:p.join(".")},i),(n=g[o])||(n=g[o]=[],n.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?n.splice(n.delegateCount++,0,l):n.push(l),m.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,n,o,p,q,r=m.hasData(a)&&m._data(a);if(r&&(k=r.events)){b=(b||"").match(E)||[""],j=b.length;while(j--)if(h=_.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=m.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,n=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=n.length;while(f--)g=n[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(n.splice(f,1),g.selector&&n.delegateCount--,l.remove&&l.remove.call(a,g));i&&!n.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||m.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)m.event.remove(a,o+b[j],c,d,!0);m.isEmptyObject(k)&&(delete r.handle,m._removeData(a,"events"))}},trigger:function(b,c,d,e){var f,g,h,i,k,l,n,o=[d||y],p=j.call(b,"type")?b.type:b,q=j.call(b,"namespace")?b.namespace.split("."):[];if(h=l=d=d||y,3!==d.nodeType&&8!==d.nodeType&&!$.test(p+m.event.triggered)&&(p.indexOf(".")>=0&&(q=p.split("."),p=q.shift(),q.sort()),g=p.indexOf(":")<0&&"on"+p,b=b[m.expando]?b:new m.Event(p,"object"==typeof b&&b),b.isTrigger=e?2:3,b.namespace=q.join("."),b.namespace_re=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=d),c=null==c?[b]:m.makeArray(c,[b]),k=m.event.special[p]||{},e||!k.trigger||k.trigger.apply(d,c)!==!1)){if(!e&&!k.noBubble&&!m.isWindow(d)){for(i=k.delegateType||p,$.test(i+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),l=h;l===(d.ownerDocument||y)&&o.push(l.defaultView||l.parentWindow||a)}n=0;while((h=o[n++])&&!b.isPropagationStopped())b.type=n>1?i:k.bindType||p,f=(m._data(h,"events")||{})[b.type]&&m._data(h,"handle"),f&&f.apply(h,c),f=g&&h[g],f&&f.apply&&m.acceptData(h)&&(b.result=f.apply(h,c),b.result===!1&&b.preventDefault());if(b.type=p,!e&&!b.isDefaultPrevented()&&(!k._default||k._default.apply(o.pop(),c)===!1)&&m.acceptData(d)&&g&&d[p]&&!m.isWindow(d)){l=d[g],l&&(d[g]=null),m.event.triggered=p;try{d[p]()}catch(r){}m.event.triggered=void 0,l&&(d[g]=l)}return b.result}},dispatch:function(a){a=m.event.fix(a);var b,c,e,f,g,h=[],i=d.call(arguments),j=(m._data(this,"events")||{})[a.type]||[],k=m.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=m.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,g=0;while((e=f.handlers[g++])&&!a.isImmediatePropagationStopped())(!a.namespace_re||a.namespace_re.test(e.namespace))&&(a.handleObj=e,a.data=e.data,c=((m.event.special[e.origType]||{}).handle||e.handler).apply(f.elem,i),void 0!==c&&(a.result=c)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&(!a.button||"click"!==a.type))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(e=[],f=0;h>f;f++)d=b[f],c=d.selector+" ",void 0===e[c]&&(e[c]=d.needsContext?m(c,this).index(i)>=0:m.find(c,this,null,[i]).length),e[c]&&e.push(d);e.length&&g.push({elem:i,handlers:e})}return h<b.length&&g.push({elem:this,handlers:b.slice(h)}),g},fix:function(a){if(a[m.expando])return a;var b,c,d,e=a.type,f=a,g=this.fixHooks[e];g||(this.fixHooks[e]=g=Z.test(e)?this.mouseHooks:Y.test(e)?this.keyHooks:{}),d=g.props?this.props.concat(g.props):this.props,a=new m.Event(f),b=d.length;while(b--)c=d[b],a[c]=f[c];return a.target||(a.target=f.srcElement||y),3===a.target.nodeType&&(a.target=a.target.parentNode),a.metaKey=!!a.metaKey,g.filter?g.filter(a,f):a},props:"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){return null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode),a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,b){var c,d,e,f=b.button,g=b.fromElement;return null==a.pageX&&null!=b.clientX&&(d=a.target.ownerDocument||y,e=d.documentElement,c=d.body,a.pageX=b.clientX+(e&&e.scrollLeft||c&&c.scrollLeft||0)-(e&&e.clientLeft||c&&c.clientLeft||0),a.pageY=b.clientY+(e&&e.scrollTop||c&&c.scrollTop||0)-(e&&e.clientTop||c&&c.clientTop||0)),!a.relatedTarget&&g&&(a.relatedTarget=g===a.target?b.toElement:g),a.which||void 0===f||(a.which=1&f?1:2&f?3:4&f?2:0),a}},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==cb()&&this.focus)try{return this.focus(),!1}catch(a){}},delegateType:"focusin"},blur:{trigger:function(){return this===cb()&&this.blur?(this.blur(),!1):void 0},delegateType:"focusout"},click:{trigger:function(){return m.nodeName(this,"input")&&"checkbox"===this.type&&this.click?(this.click(),!1):void 0},_default:function(a){return m.nodeName(a.target,"a")}},beforeunload:{postDispatch:function(a){void 0!==a.result&&a.originalEvent&&(a.originalEvent.returnValue=a.result)}}},simulate:function(a,b,c,d){var e=m.extend(new m.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?m.event.trigger(e,null,b):m.event.dispatch.call(b,e),e.isDefaultPrevented()&&c.preventDefault()}},m.removeEvent=y.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){var d="on"+b;a.detachEvent&&(typeof a[d]===K&&(a[d]=null),a.detachEvent(d,c))},m.Event=function(a,b){return this instanceof m.Event?(a&&a.type?(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||void 0===a.defaultPrevented&&a.returnValue===!1?ab:bb):this.type=a,b&&m.extend(this,b),this.timeStamp=a&&a.timeStamp||m.now(),void(this[m.expando]=!0)):new m.Event(a,b)},m.Event.prototype={isDefaultPrevented:bb,isPropagationStopped:bb,isImmediatePropagationStopped:bb,preventDefault:function(){var a=this.originalEvent;this.isDefaultPrevented=ab,a&&(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){var a=this.originalEvent;this.isPropagationStopped=ab,a&&(a.stopPropagation&&a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){var a=this.originalEvent;this.isImmediatePropagationStopped=ab,a&&a.stopImmediatePropagation&&a.stopImmediatePropagation(),this.stopPropagation()}},m.each({mouseenter:"mouseover",mouseleave:"mouseout",pointerenter:"pointerover",pointerleave:"pointerout"},function(a,b){m.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c,d=this,e=a.relatedTarget,f=a.handleObj;return(!e||e!==d&&!m.contains(d,e))&&(a.type=f.origType,c=f.handler.apply(this,arguments),a.type=b),c}}}),k.submitBubbles||(m.event.special.submit={setup:function(){return m.nodeName(this,"form")?!1:void m.event.add(this,"click._submit keypress._submit",function(a){var b=a.target,c=m.nodeName(b,"input")||m.nodeName(b,"button")?b.form:void 0;c&&!m._data(c,"submitBubbles")&&(m.event.add(c,"submit._submit",function(a){a._submit_bubble=!0}),m._data(c,"submitBubbles",!0))})},postDispatch:function(a){a._submit_bubble&&(delete a._submit_bubble,this.parentNode&&!a.isTrigger&&m.event.simulate("submit",this.parentNode,a,!0))},teardown:function(){return m.nodeName(this,"form")?!1:void m.event.remove(this,"._submit")}}),k.changeBubbles||(m.event.special.change={setup:function(){return X.test(this.nodeName)?(("checkbox"===this.type||"radio"===this.type)&&(m.event.add(this,"propertychange._change",function(a){"checked"===a.originalEvent.propertyName&&(this._just_changed=!0)}),m.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1),m.event.simulate("change",this,a,!0)})),!1):void m.event.add(this,"beforeactivate._change",function(a){var b=a.target;X.test(b.nodeName)&&!m._data(b,"changeBubbles")&&(m.event.add(b,"change._change",function(a){!this.parentNode||a.isSimulated||a.isTrigger||m.event.simulate("change",this.parentNode,a,!0)}),m._data(b,"changeBubbles",!0))})},handle:function(a){var b=a.target;return this!==b||a.isSimulated||a.isTrigger||"radio"!==b.type&&"checkbox"!==b.type?a.handleObj.handler.apply(this,arguments):void 0},teardown:function(){return m.event.remove(this,"._change"),!X.test(this.nodeName)}}),k.focusinBubbles||m.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){m.event.simulate(b,a.target,m.event.fix(a),!0)};m.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=m._data(d,b);e||d.addEventListener(a,c,!0),m._data(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=m._data(d,b)-1;e?m._data(d,b,e):(d.removeEventListener(a,c,!0),m._removeData(d,b))}}}),m.fn.extend({on:function(a,b,c,d,e){var f,g;if("object"==typeof a){"string"!=typeof b&&(c=c||b,b=void 0);for(f in a)this.on(f,b,c,a[f],e);return this}if(null==c&&null==d?(d=b,c=b=void 0):null==d&&("string"==typeof b?(d=c,c=void 0):(d=c,c=b,b=void 0)),d===!1)d=bb;else if(!d)return this;return 1===e&&(g=d,d=function(a){return m().off(a),g.apply(this,arguments)},d.guid=g.guid||(g.guid=m.guid++)),this.each(function(){m.event.add(this,a,d,c,b)})},one:function(a,b,c,d){return this.on(a,b,c,d,1)},off:function(a,b,c){var d,e;if(a&&a.preventDefault&&a.handleObj)return d=a.handleObj,m(a.delegateTarget).off(d.namespace?d.origType+"."+d.namespace:d.origType,d.selector,d.handler),this;if("object"==typeof a){for(e in a)this.off(e,b,a[e]);return this}return(b===!1||"function"==typeof b)&&(c=b,b=void 0),c===!1&&(c=bb),this.each(function(){m.event.remove(this,a,c,b)})},trigger:function(a,b){return this.each(function(){m.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];return c?m.event.trigger(a,b,c,!0):void 0}});function db(a){var b=eb.split("|"),c=a.createDocumentFragment();if(c.createElement)while(b.length)c.createElement(b.pop());return c}var eb="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",fb=/ jQuery\d+="(?:null|\d+)"/g,gb=new RegExp("<(?:"+eb+")[\\s/>]","i"),hb=/^\s+/,ib=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,jb=/<([\w:]+)/,kb=/<tbody/i,lb=/<|&#?\w+;/,mb=/<(?:script|style|link)/i,nb=/checked\s*(?:[^=]|=\s*.checked.)/i,ob=/^$|\/(?:java|ecma)script/i,pb=/^true\/(.*)/,qb=/^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,rb={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],area:[1,"<map>","</map>"],param:[1,"<object>","</object>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:k.htmlSerialize?[0,"",""]:[1,"X<div>","</div>"]},sb=db(y),tb=sb.appendChild(y.createElement("div"));rb.optgroup=rb.option,rb.tbody=rb.tfoot=rb.colgroup=rb.caption=rb.thead,rb.th=rb.td;function ub(a,b){var c,d,e=0,f=typeof a.getElementsByTagName!==K?a.getElementsByTagName(b||"*"):typeof a.querySelectorAll!==K?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||m.nodeName(d,b)?f.push(d):m.merge(f,ub(d,b));return void 0===b||b&&m.nodeName(a,b)?m.merge([a],f):f}function vb(a){W.test(a.type)&&(a.defaultChecked=a.checked)}function wb(a,b){return m.nodeName(a,"table")&&m.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function xb(a){return a.type=(null!==m.find.attr(a,"type"))+"/"+a.type,a}function yb(a){var b=pb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function zb(a,b){for(var c,d=0;null!=(c=a[d]);d++)m._data(c,"globalEval",!b||m._data(b[d],"globalEval"))}function Ab(a,b){if(1===b.nodeType&&m.hasData(a)){var c,d,e,f=m._data(a),g=m._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)m.event.add(b,c,h[c][d])}g.data&&(g.data=m.extend({},g.data))}}function Bb(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!k.noCloneEvent&&b[m.expando]){e=m._data(b);for(d in e.events)m.removeEvent(b,d,e.handle);b.removeAttribute(m.expando)}"script"===c&&b.text!==a.text?(xb(b).text=a.text,yb(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),k.html5Clone&&a.innerHTML&&!m.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&W.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}m.extend({clone:function(a,b,c){var d,e,f,g,h,i=m.contains(a.ownerDocument,a);if(k.html5Clone||m.isXMLDoc(a)||!gb.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(tb.innerHTML=a.outerHTML,tb.removeChild(f=tb.firstChild)),!(k.noCloneEvent&&k.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||m.isXMLDoc(a)))for(d=ub(f),h=ub(a),g=0;null!=(e=h[g]);++g)d[g]&&Bb(e,d[g]);if(b)if(c)for(h=h||ub(a),d=d||ub(f),g=0;null!=(e=h[g]);g++)Ab(e,d[g]);else Ab(a,f);return d=ub(f,"script"),d.length>0&&zb(d,!i&&ub(a,"script")),d=h=e=null,f},buildFragment:function(a,b,c,d){for(var e,f,g,h,i,j,l,n=a.length,o=db(b),p=[],q=0;n>q;q++)if(f=a[q],f||0===f)if("object"===m.type(f))m.merge(p,f.nodeType?[f]:f);else if(lb.test(f)){h=h||o.appendChild(b.createElement("div")),i=(jb.exec(f)||["",""])[1].toLowerCase(),l=rb[i]||rb._default,h.innerHTML=l[1]+f.replace(ib,"<$1></$2>")+l[2],e=l[0];while(e--)h=h.lastChild;if(!k.leadingWhitespace&&hb.test(f)&&p.push(b.createTextNode(hb.exec(f)[0])),!k.tbody){f="table"!==i||kb.test(f)?"<table>"!==l[1]||kb.test(f)?0:h:h.firstChild,e=f&&f.childNodes.length;while(e--)m.nodeName(j=f.childNodes[e],"tbody")&&!j.childNodes.length&&f.removeChild(j)}m.merge(p,h.childNodes),h.textContent="";while(h.firstChild)h.removeChild(h.firstChild);h=o.lastChild}else p.push(b.createTextNode(f));h&&o.removeChild(h),k.appendChecked||m.grep(ub(p,"input"),vb),q=0;while(f=p[q++])if((!d||-1===m.inArray(f,d))&&(g=m.contains(f.ownerDocument,f),h=ub(o.appendChild(f),"script"),g&&zb(h),c)){e=0;while(f=h[e++])ob.test(f.type||"")&&c.push(f)}return h=null,o},cleanData:function(a,b){for(var d,e,f,g,h=0,i=m.expando,j=m.cache,l=k.deleteExpando,n=m.event.special;null!=(d=a[h]);h++)if((b||m.acceptData(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)n[e]?m.event.remove(d,e):m.removeEvent(d,e,g.handle);j[f]&&(delete j[f],l?delete d[i]:typeof d.removeAttribute!==K?d.removeAttribute(i):d[i]=null,c.push(f))}}}),m.fn.extend({text:function(a){return V(this,function(a){return void 0===a?m.text(this):this.empty().append((this[0]&&this[0].ownerDocument||y).createTextNode(a))},null,a,arguments.length)},append:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.appendChild(a)}})},prepend:function(){return this.domManip(arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=wb(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return this.domManip(arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},remove:function(a,b){for(var c,d=a?m.filter(a,this):this,e=0;null!=(c=d[e]);e++)b||1!==c.nodeType||m.cleanData(ub(c)),c.parentNode&&(b&&m.contains(c.ownerDocument,c)&&zb(ub(c,"script")),c.parentNode.removeChild(c));return this},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){1===a.nodeType&&m.cleanData(ub(a,!1));while(a.firstChild)a.removeChild(a.firstChild);a.options&&m.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return m.clone(this,a,b)})},html:function(a){return V(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(fb,""):void 0;if(!("string"!=typeof a||mb.test(a)||!k.htmlSerialize&&gb.test(a)||!k.leadingWhitespace&&hb.test(a)||rb[(jb.exec(a)||["",""])[1].toLowerCase()])){a=a.replace(ib,"<$1></$2>");try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(m.cleanData(ub(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=arguments[0];return this.domManip(arguments,function(b){a=this.parentNode,m.cleanData(ub(this)),a&&a.replaceChild(b,this)}),a&&(a.length||a.nodeType)?this:this.remove()},detach:function(a){return this.remove(a,!0)},domManip:function(a,b){a=e.apply([],a);var c,d,f,g,h,i,j=0,l=this.length,n=this,o=l-1,p=a[0],q=m.isFunction(p);if(q||l>1&&"string"==typeof p&&!k.checkClone&&nb.test(p))return this.each(function(c){var d=n.eq(c);q&&(a[0]=p.call(this,c,d.html())),d.domManip(a,b)});if(l&&(i=m.buildFragment(a,this[0].ownerDocument,!1,this),c=i.firstChild,1===i.childNodes.length&&(i=c),c)){for(g=m.map(ub(i,"script"),xb),f=g.length;l>j;j++)d=i,j!==o&&(d=m.clone(d,!0,!0),f&&m.merge(g,ub(d,"script"))),b.call(this[j],d,j);if(f)for(h=g[g.length-1].ownerDocument,m.map(g,yb),j=0;f>j;j++)d=g[j],ob.test(d.type||"")&&!m._data(d,"globalEval")&&m.contains(h,d)&&(d.src?m._evalUrl&&m._evalUrl(d.src):m.globalEval((d.text||d.textContent||d.innerHTML||"").replace(qb,"")));i=c=null}return this}}),m.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){m.fn[a]=function(a){for(var c,d=0,e=[],g=m(a),h=g.length-1;h>=d;d++)c=d===h?this:this.clone(!0),m(g[d])[b](c),f.apply(e,c.get());return this.pushStack(e)}});var Cb,Db={};function Eb(b,c){var d,e=m(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:m.css(e[0],"display");return e.detach(),f}function Fb(a){var b=y,c=Db[a];return c||(c=Eb(a,b),"none"!==c&&c||(Cb=(Cb||m("<iframe frameborder='0' width='0' height='0'/>")).appendTo(b.documentElement),b=(Cb[0].contentWindow||Cb[0].contentDocument).document,b.write(),b.close(),c=Eb(a,b),Cb.detach()),Db[a]=c),c}!function(){var a;k.shrinkWrapBlocks=function(){if(null!=a)return a;a=!1;var b,c,d;return c=y.getElementsByTagName("body")[0],c&&c.style?(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),typeof b.style.zoom!==K&&(b.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:1px;width:1px;zoom:1",b.appendChild(y.createElement("div")).style.width="5px",a=3!==b.offsetWidth),c.removeChild(d),a):void 0}}();var Gb=/^margin/,Hb=new RegExp("^("+S+")(?!px)[a-z%]+$","i"),Ib,Jb,Kb=/^(top|right|bottom|left)$/;a.getComputedStyle?(Ib=function(b){return b.ownerDocument.defaultView.opener?b.ownerDocument.defaultView.getComputedStyle(b,null):a.getComputedStyle(b,null)},Jb=function(a,b,c){var d,e,f,g,h=a.style;return c=c||Ib(a),g=c?c.getPropertyValue(b)||c[b]:void 0,c&&(""!==g||m.contains(a.ownerDocument,a)||(g=m.style(a,b)),Hb.test(g)&&Gb.test(b)&&(d=h.width,e=h.minWidth,f=h.maxWidth,h.minWidth=h.maxWidth=h.width=g,g=c.width,h.width=d,h.minWidth=e,h.maxWidth=f)),void 0===g?g:g+""}):y.documentElement.currentStyle&&(Ib=function(a){return a.currentStyle},Jb=function(a,b,c){var d,e,f,g,h=a.style;return c=c||Ib(a),g=c?c[b]:void 0,null==g&&h&&h[b]&&(g=h[b]),Hb.test(g)&&!Kb.test(b)&&(d=h.left,e=a.runtimeStyle,f=e&&e.left,f&&(e.left=a.currentStyle.left),h.left="fontSize"===b?"1em":g,g=h.pixelLeft+"px",h.left=d,f&&(e.left=f)),void 0===g?g:g+""||"auto"});function Lb(a,b){return{get:function(){var c=a();if(null!=c)return c?void delete this.get:(this.get=b).apply(this,arguments)}}}!function(){var b,c,d,e,f,g,h;if(b=y.createElement("div"),b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",d=b.getElementsByTagName("a")[0],c=d&&d.style){c.cssText="float:left;opacity:.5",k.opacity="0.5"===c.opacity,k.cssFloat=!!c.cssFloat,b.style.backgroundClip="content-box",b.cloneNode(!0).style.backgroundClip="",k.clearCloneStyle="content-box"===b.style.backgroundClip,k.boxSizing=""===c.boxSizing||""===c.MozBoxSizing||""===c.WebkitBoxSizing,m.extend(k,{reliableHiddenOffsets:function(){return null==g&&i(),g},boxSizingReliable:function(){return null==f&&i(),f},pixelPosition:function(){return null==e&&i(),e},reliableMarginRight:function(){return null==h&&i(),h}});function i(){var b,c,d,i;c=y.getElementsByTagName("body")[0],c&&c.style&&(b=y.createElement("div"),d=y.createElement("div"),d.style.cssText="position:absolute;border:0;width:0;height:0;top:0;left:-9999px",c.appendChild(d).appendChild(b),b.style.cssText="-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;display:block;margin-top:1%;top:1%;border:1px;padding:1px;width:4px;position:absolute",e=f=!1,h=!0,a.getComputedStyle&&(e="1%"!==(a.getComputedStyle(b,null)||{}).top,f="4px"===(a.getComputedStyle(b,null)||{width:"4px"}).width,i=b.appendChild(y.createElement("div")),i.style.cssText=b.style.cssText="-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;display:block;margin:0;border:0;padding:0",i.style.marginRight=i.style.width="0",b.style.width="1px",h=!parseFloat((a.getComputedStyle(i,null)||{}).marginRight),b.removeChild(i)),b.innerHTML="<table><tr><td></td><td>t</td></tr></table>",i=b.getElementsByTagName("td"),i[0].style.cssText="margin:0;border:0;padding:0;display:none",g=0===i[0].offsetHeight,g&&(i[0].style.display="",i[1].style.display="none",g=0===i[0].offsetHeight),c.removeChild(d))}}}(),m.swap=function(a,b,c,d){var e,f,g={};for(f in b)g[f]=a.style[f],a.style[f]=b[f];e=c.apply(a,d||[]);for(f in b)a.style[f]=g[f];return e};var Mb=/alpha\([^)]*\)/i,Nb=/opacity\s*=\s*([^)]*)/,Ob=/^(none|table(?!-c[ea]).+)/,Pb=new RegExp("^("+S+")(.*)$","i"),Qb=new RegExp("^([+-])=("+S+")","i"),Rb={position:"absolute",visibility:"hidden",display:"block"},Sb={letterSpacing:"0",fontWeight:"400"},Tb=["Webkit","O","Moz","ms"];function Ub(a,b){if(b in a)return b;var c=b.charAt(0).toUpperCase()+b.slice(1),d=b,e=Tb.length;while(e--)if(b=Tb[e]+c,b in a)return b;return d}function Vb(a,b){for(var c,d,e,f=[],g=0,h=a.length;h>g;g++)d=a[g],d.style&&(f[g]=m._data(d,"olddisplay"),c=d.style.display,b?(f[g]||"none"!==c||(d.style.display=""),""===d.style.display&&U(d)&&(f[g]=m._data(d,"olddisplay",Fb(d.nodeName)))):(e=U(d),(c&&"none"!==c||!e)&&m._data(d,"olddisplay",e?c:m.css(d,"display"))));for(g=0;h>g;g++)d=a[g],d.style&&(b&&"none"!==d.style.display&&""!==d.style.display||(d.style.display=b?f[g]||"":"none"));return a}function Wb(a,b,c){var d=Pb.exec(b);return d?Math.max(0,d[1]-(c||0))+(d[2]||"px"):b}function Xb(a,b,c,d,e){for(var f=c===(d?"border":"content")?4:"width"===b?1:0,g=0;4>f;f+=2)"margin"===c&&(g+=m.css(a,c+T[f],!0,e)),d?("content"===c&&(g-=m.css(a,"padding"+T[f],!0,e)),"margin"!==c&&(g-=m.css(a,"border"+T[f]+"Width",!0,e))):(g+=m.css(a,"padding"+T[f],!0,e),"padding"!==c&&(g+=m.css(a,"border"+T[f]+"Width",!0,e)));return g}function Yb(a,b,c){var d=!0,e="width"===b?a.offsetWidth:a.offsetHeight,f=Ib(a),g=k.boxSizing&&"border-box"===m.css(a,"boxSizing",!1,f);if(0>=e||null==e){if(e=Jb(a,b,f),(0>e||null==e)&&(e=a.style[b]),Hb.test(e))return e;d=g&&(k.boxSizingReliable()||e===a.style[b]),e=parseFloat(e)||0}return e+Xb(a,b,c||(g?"border":"content"),d,f)+"px"}m.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=Jb(a,"opacity");return""===c?"1":c}}}},cssNumber:{columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":k.cssFloat?"cssFloat":"styleFloat"},style:function(a,b,c,d){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var e,f,g,h=m.camelCase(b),i=a.style;if(b=m.cssProps[h]||(m.cssProps[h]=Ub(i,h)),g=m.cssHooks[b]||m.cssHooks[h],void 0===c)return g&&"get"in g&&void 0!==(e=g.get(a,!1,d))?e:i[b];if(f=typeof c,"string"===f&&(e=Qb.exec(c))&&(c=(e[1]+1)*e[2]+parseFloat(m.css(a,b)),f="number"),null!=c&&c===c&&("number"!==f||m.cssNumber[h]||(c+="px"),k.clearCloneStyle||""!==c||0!==b.indexOf("background")||(i[b]="inherit"),!(g&&"set"in g&&void 0===(c=g.set(a,c,d)))))try{i[b]=c}catch(j){}}},css:function(a,b,c,d){var e,f,g,h=m.camelCase(b);return b=m.cssProps[h]||(m.cssProps[h]=Ub(a.style,h)),g=m.cssHooks[b]||m.cssHooks[h],g&&"get"in g&&(f=g.get(a,!0,c)),void 0===f&&(f=Jb(a,b,d)),"normal"===f&&b in Sb&&(f=Sb[b]),""===c||c?(e=parseFloat(f),c===!0||m.isNumeric(e)?e||0:f):f}}),m.each(["height","width"],function(a,b){m.cssHooks[b]={get:function(a,c,d){return c?Ob.test(m.css(a,"display"))&&0===a.offsetWidth?m.swap(a,Rb,function(){return Yb(a,b,d)}):Yb(a,b,d):void 0},set:function(a,c,d){var e=d&&Ib(a);return Wb(a,c,d?Xb(a,b,d,k.boxSizing&&"border-box"===m.css(a,"boxSizing",!1,e),e):0)}}}),k.opacity||(m.cssHooks.opacity={get:function(a,b){return Nb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?.01*parseFloat(RegExp.$1)+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=m.isNumeric(b)?"alpha(opacity="+100*b+")":"",f=d&&d.filter||c.filter||"";c.zoom=1,(b>=1||""===b)&&""===m.trim(f.replace(Mb,""))&&c.removeAttribute&&(c.removeAttribute("filter"),""===b||d&&!d.filter)||(c.filter=Mb.test(f)?f.replace(Mb,e):f+" "+e)}}),m.cssHooks.marginRight=Lb(k.reliableMarginRight,function(a,b){return b?m.swap(a,{display:"inline-block"},Jb,[a,"marginRight"]):void 0}),m.each({margin:"",padding:"",border:"Width"},function(a,b){m.cssHooks[a+b]={expand:function(c){for(var d=0,e={},f="string"==typeof c?c.split(" "):[c];4>d;d++)e[a+T[d]+b]=f[d]||f[d-2]||f[0];return e}},Gb.test(a)||(m.cssHooks[a+b].set=Wb)}),m.fn.extend({css:function(a,b){return V(this,function(a,b,c){var d,e,f={},g=0;if(m.isArray(b)){for(d=Ib(a),e=b.length;e>g;g++)f[b[g]]=m.css(a,b[g],!1,d);return f}return void 0!==c?m.style(a,b,c):m.css(a,b)},a,b,arguments.length>1)},show:function(){return Vb(this,!0)},hide:function(){return Vb(this)},toggle:function(a){return"boolean"==typeof a?a?this.show():this.hide():this.each(function(){U(this)?m(this).show():m(this).hide()})}});function Zb(a,b,c,d,e){return new Zb.prototype.init(a,b,c,d,e) }m.Tween=Zb,Zb.prototype={constructor:Zb,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||"swing",this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(m.cssNumber[c]?"":"px")},cur:function(){var a=Zb.propHooks[this.prop];return a&&a.get?a.get(this):Zb.propHooks._default.get(this)},run:function(a){var b,c=Zb.propHooks[this.prop];return this.pos=b=this.options.duration?m.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):Zb.propHooks._default.set(this),this}},Zb.prototype.init.prototype=Zb.prototype,Zb.propHooks={_default:{get:function(a){var b;return null==a.elem[a.prop]||a.elem.style&&null!=a.elem.style[a.prop]?(b=m.css(a.elem,a.prop,""),b&&"auto"!==b?b:0):a.elem[a.prop]},set:function(a){m.fx.step[a.prop]?m.fx.step[a.prop](a):a.elem.style&&(null!=a.elem.style[m.cssProps[a.prop]]||m.cssHooks[a.prop])?m.style(a.elem,a.prop,a.now+a.unit):a.elem[a.prop]=a.now}}},Zb.propHooks.scrollTop=Zb.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},m.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2}},m.fx=Zb.prototype.init,m.fx.step={};var $b,_b,ac=/^(?:toggle|show|hide)$/,bc=new RegExp("^(?:([+-])=|)("+S+")([a-z%]*)$","i"),cc=/queueHooks$/,dc=[ic],ec={"*":[function(a,b){var c=this.createTween(a,b),d=c.cur(),e=bc.exec(b),f=e&&e[3]||(m.cssNumber[a]?"":"px"),g=(m.cssNumber[a]||"px"!==f&&+d)&&bc.exec(m.css(c.elem,a)),h=1,i=20;if(g&&g[3]!==f){f=f||g[3],e=e||[],g=+d||1;do h=h||".5",g/=h,m.style(c.elem,a,g+f);while(h!==(h=c.cur()/d)&&1!==h&&--i)}return e&&(g=c.start=+g||+d||0,c.unit=f,c.end=e[1]?g+(e[1]+1)*e[2]:+e[2]),c}]};function fc(){return setTimeout(function(){$b=void 0}),$b=m.now()}function gc(a,b){var c,d={height:a},e=0;for(b=b?1:0;4>e;e+=2-b)c=T[e],d["margin"+c]=d["padding"+c]=a;return b&&(d.opacity=d.width=a),d}function hc(a,b,c){for(var d,e=(ec[b]||[]).concat(ec["*"]),f=0,g=e.length;g>f;f++)if(d=e[f].call(c,b,a))return d}function ic(a,b,c){var d,e,f,g,h,i,j,l,n=this,o={},p=a.style,q=a.nodeType&&U(a),r=m._data(a,"fxshow");c.queue||(h=m._queueHooks(a,"fx"),null==h.unqueued&&(h.unqueued=0,i=h.empty.fire,h.empty.fire=function(){h.unqueued||i()}),h.unqueued++,n.always(function(){n.always(function(){h.unqueued--,m.queue(a,"fx").length||h.empty.fire()})})),1===a.nodeType&&("height"in b||"width"in b)&&(c.overflow=[p.overflow,p.overflowX,p.overflowY],j=m.css(a,"display"),l="none"===j?m._data(a,"olddisplay")||Fb(a.nodeName):j,"inline"===l&&"none"===m.css(a,"float")&&(k.inlineBlockNeedsLayout&&"inline"!==Fb(a.nodeName)?p.zoom=1:p.display="inline-block")),c.overflow&&(p.overflow="hidden",k.shrinkWrapBlocks()||n.always(function(){p.overflow=c.overflow[0],p.overflowX=c.overflow[1],p.overflowY=c.overflow[2]}));for(d in b)if(e=b[d],ac.exec(e)){if(delete b[d],f=f||"toggle"===e,e===(q?"hide":"show")){if("show"!==e||!r||void 0===r[d])continue;q=!0}o[d]=r&&r[d]||m.style(a,d)}else j=void 0;if(m.isEmptyObject(o))"inline"===("none"===j?Fb(a.nodeName):j)&&(p.display=j);else{r?"hidden"in r&&(q=r.hidden):r=m._data(a,"fxshow",{}),f&&(r.hidden=!q),q?m(a).show():n.done(function(){m(a).hide()}),n.done(function(){var b;m._removeData(a,"fxshow");for(b in o)m.style(a,b,o[b])});for(d in o)g=hc(q?r[d]:0,d,n),d in r||(r[d]=g.start,q&&(g.end=g.start,g.start="width"===d||"height"===d?1:0))}}function jc(a,b){var c,d,e,f,g;for(c in a)if(d=m.camelCase(c),e=b[d],f=a[c],m.isArray(f)&&(e=f[1],f=a[c]=f[0]),c!==d&&(a[d]=f,delete a[c]),g=m.cssHooks[d],g&&"expand"in g){f=g.expand(f),delete a[d];for(c in f)c in a||(a[c]=f[c],b[c]=e)}else b[d]=e}function kc(a,b,c){var d,e,f=0,g=dc.length,h=m.Deferred().always(function(){delete i.elem}),i=function(){if(e)return!1;for(var b=$b||fc(),c=Math.max(0,j.startTime+j.duration-b),d=c/j.duration||0,f=1-d,g=0,i=j.tweens.length;i>g;g++)j.tweens[g].run(f);return h.notifyWith(a,[j,f,c]),1>f&&i?c:(h.resolveWith(a,[j]),!1)},j=h.promise({elem:a,props:m.extend({},b),opts:m.extend(!0,{specialEasing:{}},c),originalProperties:b,originalOptions:c,startTime:$b||fc(),duration:c.duration,tweens:[],createTween:function(b,c){var d=m.Tween(a,j.opts,b,c,j.opts.specialEasing[b]||j.opts.easing);return j.tweens.push(d),d},stop:function(b){var c=0,d=b?j.tweens.length:0;if(e)return this;for(e=!0;d>c;c++)j.tweens[c].run(1);return b?h.resolveWith(a,[j,b]):h.rejectWith(a,[j,b]),this}}),k=j.props;for(jc(k,j.opts.specialEasing);g>f;f++)if(d=dc[f].call(j,a,k,j.opts))return d;return m.map(k,hc,j),m.isFunction(j.opts.start)&&j.opts.start.call(a,j),m.fx.timer(m.extend(i,{elem:a,anim:j,queue:j.opts.queue})),j.progress(j.opts.progress).done(j.opts.done,j.opts.complete).fail(j.opts.fail).always(j.opts.always)}m.Animation=m.extend(kc,{tweener:function(a,b){m.isFunction(a)?(b=a,a=["*"]):a=a.split(" ");for(var c,d=0,e=a.length;e>d;d++)c=a[d],ec[c]=ec[c]||[],ec[c].unshift(b)},prefilter:function(a,b){b?dc.unshift(a):dc.push(a)}}),m.speed=function(a,b,c){var d=a&&"object"==typeof a?m.extend({},a):{complete:c||!c&&b||m.isFunction(a)&&a,duration:a,easing:c&&b||b&&!m.isFunction(b)&&b};return d.duration=m.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in m.fx.speeds?m.fx.speeds[d.duration]:m.fx.speeds._default,(null==d.queue||d.queue===!0)&&(d.queue="fx"),d.old=d.complete,d.complete=function(){m.isFunction(d.old)&&d.old.call(this),d.queue&&m.dequeue(this,d.queue)},d},m.fn.extend({fadeTo:function(a,b,c,d){return this.filter(U).css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,d){var e=m.isEmptyObject(a),f=m.speed(b,c,d),g=function(){var b=kc(this,m.extend({},a),f);(e||m._data(this,"finish"))&&b.stop(!0)};return g.finish=g,e||f.queue===!1?this.each(g):this.queue(f.queue,g)},stop:function(a,b,c){var d=function(a){var b=a.stop;delete a.stop,b(c)};return"string"!=typeof a&&(c=b,b=a,a=void 0),b&&a!==!1&&this.queue(a||"fx",[]),this.each(function(){var b=!0,e=null!=a&&a+"queueHooks",f=m.timers,g=m._data(this);if(e)g[e]&&g[e].stop&&d(g[e]);else for(e in g)g[e]&&g[e].stop&&cc.test(e)&&d(g[e]);for(e=f.length;e--;)f[e].elem!==this||null!=a&&f[e].queue!==a||(f[e].anim.stop(c),b=!1,f.splice(e,1));(b||!c)&&m.dequeue(this,a)})},finish:function(a){return a!==!1&&(a=a||"fx"),this.each(function(){var b,c=m._data(this),d=c[a+"queue"],e=c[a+"queueHooks"],f=m.timers,g=d?d.length:0;for(c.finish=!0,m.queue(this,a,[]),e&&e.stop&&e.stop.call(this,!0),b=f.length;b--;)f[b].elem===this&&f[b].queue===a&&(f[b].anim.stop(!0),f.splice(b,1));for(b=0;g>b;b++)d[b]&&d[b].finish&&d[b].finish.call(this);delete c.finish})}}),m.each(["toggle","show","hide"],function(a,b){var c=m.fn[b];m.fn[b]=function(a,d,e){return null==a||"boolean"==typeof a?c.apply(this,arguments):this.animate(gc(b,!0),a,d,e)}}),m.each({slideDown:gc("show"),slideUp:gc("hide"),slideToggle:gc("toggle"),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){m.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}}),m.timers=[],m.fx.tick=function(){var a,b=m.timers,c=0;for($b=m.now();c<b.length;c++)a=b[c],a()||b[c]!==a||b.splice(c--,1);b.length||m.fx.stop(),$b=void 0},m.fx.timer=function(a){m.timers.push(a),a()?m.fx.start():m.timers.pop()},m.fx.interval=13,m.fx.start=function(){_b||(_b=setInterval(m.fx.tick,m.fx.interval))},m.fx.stop=function(){clearInterval(_b),_b=null},m.fx.speeds={slow:600,fast:200,_default:400},m.fn.delay=function(a,b){return a=m.fx?m.fx.speeds[a]||a:a,b=b||"fx",this.queue(b,function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},function(){var a,b,c,d,e;b=y.createElement("div"),b.setAttribute("className","t"),b.innerHTML=" <link/><table></table><a href='/a'>a</a><input type='checkbox'/>",d=b.getElementsByTagName("a")[0],c=y.createElement("select"),e=c.appendChild(y.createElement("option")),a=b.getElementsByTagName("input")[0],d.style.cssText="top:1px",k.getSetAttribute="t"!==b.className,k.style=/top/.test(d.getAttribute("style")),k.hrefNormalized="/a"===d.getAttribute("href"),k.checkOn=!!a.value,k.optSelected=e.selected,k.enctype=!!y.createElement("form").enctype,c.disabled=!0,k.optDisabled=!e.disabled,a=y.createElement("input"),a.setAttribute("value",""),k.input=""===a.getAttribute("value"),a.value="t",a.setAttribute("type","radio"),k.radioValue="t"===a.value}();var lc=/\r/g;m.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=m.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,m(this).val()):a,null==e?e="":"number"==typeof e?e+="":m.isArray(e)&&(e=m.map(e,function(a){return null==a?"":a+""})),b=m.valHooks[this.type]||m.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=m.valHooks[e.type]||m.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(lc,""):null==c?"":c)}}}),m.extend({valHooks:{option:{get:function(a){var b=m.find.attr(a,"value");return null!=b?b:m.trim(m.text(a))}},select:{get:function(a){for(var b,c,d=a.options,e=a.selectedIndex,f="select-one"===a.type||0>e,g=f?null:[],h=f?e+1:d.length,i=0>e?h:f?e:0;h>i;i++)if(c=d[i],!(!c.selected&&i!==e||(k.optDisabled?c.disabled:null!==c.getAttribute("disabled"))||c.parentNode.disabled&&m.nodeName(c.parentNode,"optgroup"))){if(b=m(c).val(),f)return b;g.push(b)}return g},set:function(a,b){var c,d,e=a.options,f=m.makeArray(b),g=e.length;while(g--)if(d=e[g],m.inArray(m.valHooks.option.get(d),f)>=0)try{d.selected=c=!0}catch(h){d.scrollHeight}else d.selected=!1;return c||(a.selectedIndex=-1),e}}}}),m.each(["radio","checkbox"],function(){m.valHooks[this]={set:function(a,b){return m.isArray(b)?a.checked=m.inArray(m(a).val(),b)>=0:void 0}},k.checkOn||(m.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var mc,nc,oc=m.expr.attrHandle,pc=/^(?:checked|selected)$/i,qc=k.getSetAttribute,rc=k.input;m.fn.extend({attr:function(a,b){return V(this,m.attr,a,b,arguments.length>1)},removeAttr:function(a){return this.each(function(){m.removeAttr(this,a)})}}),m.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(a&&3!==f&&8!==f&&2!==f)return typeof a.getAttribute===K?m.prop(a,b,c):(1===f&&m.isXMLDoc(a)||(b=b.toLowerCase(),d=m.attrHooks[b]||(m.expr.match.bool.test(b)?nc:mc)),void 0===c?d&&"get"in d&&null!==(e=d.get(a,b))?e:(e=m.find.attr(a,b),null==e?void 0:e):null!==c?d&&"set"in d&&void 0!==(e=d.set(a,c,b))?e:(a.setAttribute(b,c+""),c):void m.removeAttr(a,b))},removeAttr:function(a,b){var c,d,e=0,f=b&&b.match(E);if(f&&1===a.nodeType)while(c=f[e++])d=m.propFix[c]||c,m.expr.match.bool.test(c)?rc&&qc||!pc.test(c)?a[d]=!1:a[m.camelCase("default-"+c)]=a[d]=!1:m.attr(a,c,""),a.removeAttribute(qc?c:d)},attrHooks:{type:{set:function(a,b){if(!k.radioValue&&"radio"===b&&m.nodeName(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}}}),nc={set:function(a,b,c){return b===!1?m.removeAttr(a,c):rc&&qc||!pc.test(c)?a.setAttribute(!qc&&m.propFix[c]||c,c):a[m.camelCase("default-"+c)]=a[c]=!0,c}},m.each(m.expr.match.bool.source.match(/\w+/g),function(a,b){var c=oc[b]||m.find.attr;oc[b]=rc&&qc||!pc.test(b)?function(a,b,d){var e,f;return d||(f=oc[b],oc[b]=e,e=null!=c(a,b,d)?b.toLowerCase():null,oc[b]=f),e}:function(a,b,c){return c?void 0:a[m.camelCase("default-"+b)]?b.toLowerCase():null}}),rc&&qc||(m.attrHooks.value={set:function(a,b,c){return m.nodeName(a,"input")?void(a.defaultValue=b):mc&&mc.set(a,b,c)}}),qc||(mc={set:function(a,b,c){var d=a.getAttributeNode(c);return d||a.setAttributeNode(d=a.ownerDocument.createAttribute(c)),d.value=b+="","value"===c||b===a.getAttribute(c)?b:void 0}},oc.id=oc.name=oc.coords=function(a,b,c){var d;return c?void 0:(d=a.getAttributeNode(b))&&""!==d.value?d.value:null},m.valHooks.button={get:function(a,b){var c=a.getAttributeNode(b);return c&&c.specified?c.value:void 0},set:mc.set},m.attrHooks.contenteditable={set:function(a,b,c){mc.set(a,""===b?!1:b,c)}},m.each(["width","height"],function(a,b){m.attrHooks[b]={set:function(a,c){return""===c?(a.setAttribute(b,"auto"),c):void 0}}})),k.style||(m.attrHooks.style={get:function(a){return a.style.cssText||void 0},set:function(a,b){return a.style.cssText=b+""}});var sc=/^(?:input|select|textarea|button|object)$/i,tc=/^(?:a|area)$/i;m.fn.extend({prop:function(a,b){return V(this,m.prop,a,b,arguments.length>1)},removeProp:function(a){return a=m.propFix[a]||a,this.each(function(){try{this[a]=void 0,delete this[a]}catch(b){}})}}),m.extend({propFix:{"for":"htmlFor","class":"className"},prop:function(a,b,c){var d,e,f,g=a.nodeType;if(a&&3!==g&&8!==g&&2!==g)return f=1!==g||!m.isXMLDoc(a),f&&(b=m.propFix[b]||b,e=m.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=m.find.attr(a,"tabindex");return b?parseInt(b,10):sc.test(a.nodeName)||tc.test(a.nodeName)&&a.href?0:-1}}}}),k.hrefNormalized||m.each(["href","src"],function(a,b){m.propHooks[b]={get:function(a){return a.getAttribute(b,4)}}}),k.optSelected||(m.propHooks.selected={get:function(a){var b=a.parentNode;return b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex),null}}),m.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){m.propFix[this.toLowerCase()]=this}),k.enctype||(m.propFix.enctype="encoding");var uc=/[\t\r\n\f]/g;m.fn.extend({addClass:function(a){var b,c,d,e,f,g,h=0,i=this.length,j="string"==typeof a&&a;if(m.isFunction(a))return this.each(function(b){m(this).addClass(a.call(this,b,this.className))});if(j)for(b=(a||"").match(E)||[];i>h;h++)if(c=this[h],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(uc," "):" ")){f=0;while(e=b[f++])d.indexOf(" "+e+" ")<0&&(d+=e+" ");g=m.trim(d),c.className!==g&&(c.className=g)}return this},removeClass:function(a){var b,c,d,e,f,g,h=0,i=this.length,j=0===arguments.length||"string"==typeof a&&a;if(m.isFunction(a))return this.each(function(b){m(this).removeClass(a.call(this,b,this.className))});if(j)for(b=(a||"").match(E)||[];i>h;h++)if(c=this[h],d=1===c.nodeType&&(c.className?(" "+c.className+" ").replace(uc," "):"")){f=0;while(e=b[f++])while(d.indexOf(" "+e+" ")>=0)d=d.replace(" "+e+" "," ");g=a?m.trim(d):"",c.className!==g&&(c.className=g)}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):this.each(m.isFunction(a)?function(c){m(this).toggleClass(a.call(this,c,this.className,b),b)}:function(){if("string"===c){var b,d=0,e=m(this),f=a.match(E)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else(c===K||"boolean"===c)&&(this.className&&m._data(this,"__className__",this.className),this.className=this.className||a===!1?"":m._data(this,"__className__")||"")})},hasClass:function(a){for(var b=" "+a+" ",c=0,d=this.length;d>c;c++)if(1===this[c].nodeType&&(" "+this[c].className+" ").replace(uc," ").indexOf(b)>=0)return!0;return!1}}),m.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),function(a,b){m.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),m.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)},bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}});var vc=m.now(),wc=/\?/,xc=/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g;m.parseJSON=function(b){if(a.JSON&&a.JSON.parse)return a.JSON.parse(b+"");var c,d=null,e=m.trim(b+"");return e&&!m.trim(e.replace(xc,function(a,b,e,f){return c&&b&&(d=0),0===d?a:(c=e||b,d+=!f-!e,"")}))?Function("return "+e)():m.error("Invalid JSON: "+b)},m.parseXML=function(b){var c,d;if(!b||"string"!=typeof b)return null;try{a.DOMParser?(d=new DOMParser,c=d.parseFromString(b,"text/xml")):(c=new ActiveXObject("Microsoft.XMLDOM"),c.async="false",c.loadXML(b))}catch(e){c=void 0}return c&&c.documentElement&&!c.getElementsByTagName("parsererror").length||m.error("Invalid XML: "+b),c};var yc,zc,Ac=/#.*$/,Bc=/([?&])_=[^&]*/,Cc=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Dc=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Ec=/^(?:GET|HEAD)$/,Fc=/^\/\//,Gc=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,Hc={},Ic={},Jc="*/".concat("*");try{zc=location.href}catch(Kc){zc=y.createElement("a"),zc.href="",zc=zc.href}yc=Gc.exec(zc.toLowerCase())||[];function Lc(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(E)||[];if(m.isFunction(c))while(d=f[e++])"+"===d.charAt(0)?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Mc(a,b,c,d){var e={},f=a===Ic;function g(h){var i;return e[h]=!0,m.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function Nc(a,b){var c,d,e=m.ajaxSettings.flatOptions||{};for(d in b)void 0!==b[d]&&((e[d]?a:c||(c={}))[d]=b[d]);return c&&m.extend(!0,a,c),a}function Oc(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===e&&(e=a.mimeType||b.getResponseHeader("Content-Type"));if(e)for(g in h)if(h[g]&&h[g].test(e)){i.unshift(g);break}if(i[0]in c)f=i[0];else{for(g in c){if(!i[0]||a.converters[g+" "+i[0]]){f=g;break}d||(d=g)}f=f||d}return f?(f!==i[0]&&i.unshift(f),c[f]):void 0}function Pc(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}m.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:zc,type:"GET",isLocal:Dc.test(yc[1]),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Jc,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":m.parseJSON,"text xml":m.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Nc(Nc(a,m.ajaxSettings),b):Nc(m.ajaxSettings,a)},ajaxPrefilter:Lc(Hc),ajaxTransport:Lc(Ic),ajax:function(a,b){"object"==typeof a&&(b=a,a=void 0),b=b||{};var c,d,e,f,g,h,i,j,k=m.ajaxSetup({},b),l=k.context||k,n=k.context&&(l.nodeType||l.jquery)?m(l):m.event,o=m.Deferred(),p=m.Callbacks("once memory"),q=k.statusCode||{},r={},s={},t=0,u="canceled",v={readyState:0,getResponseHeader:function(a){var b;if(2===t){if(!j){j={};while(b=Cc.exec(f))j[b[1].toLowerCase()]=b[2]}b=j[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return 2===t?f:null},setRequestHeader:function(a,b){var c=a.toLowerCase();return t||(a=s[c]=s[c]||a,r[a]=b),this},overrideMimeType:function(a){return t||(k.mimeType=a),this},statusCode:function(a){var b;if(a)if(2>t)for(b in a)q[b]=[q[b],a[b]];else v.always(a[v.status]);return this},abort:function(a){var b=a||u;return i&&i.abort(b),x(0,b),this}};if(o.promise(v).complete=p.add,v.success=v.done,v.error=v.fail,k.url=((a||k.url||zc)+"").replace(Ac,"").replace(Fc,yc[1]+"//"),k.type=b.method||b.type||k.method||k.type,k.dataTypes=m.trim(k.dataType||"*").toLowerCase().match(E)||[""],null==k.crossDomain&&(c=Gc.exec(k.url.toLowerCase()),k.crossDomain=!(!c||c[1]===yc[1]&&c[2]===yc[2]&&(c[3]||("http:"===c[1]?"80":"443"))===(yc[3]||("http:"===yc[1]?"80":"443")))),k.data&&k.processData&&"string"!=typeof k.data&&(k.data=m.param(k.data,k.traditional)),Mc(Hc,k,b,v),2===t)return v;h=m.event&&k.global,h&&0===m.active++&&m.event.trigger("ajaxStart"),k.type=k.type.toUpperCase(),k.hasContent=!Ec.test(k.type),e=k.url,k.hasContent||(k.data&&(e=k.url+=(wc.test(e)?"&":"?")+k.data,delete k.data),k.cache===!1&&(k.url=Bc.test(e)?e.replace(Bc,"$1_="+vc++):e+(wc.test(e)?"&":"?")+"_="+vc++)),k.ifModified&&(m.lastModified[e]&&v.setRequestHeader("If-Modified-Since",m.lastModified[e]),m.etag[e]&&v.setRequestHeader("If-None-Match",m.etag[e])),(k.data&&k.hasContent&&k.contentType!==!1||b.contentType)&&v.setRequestHeader("Content-Type",k.contentType),v.setRequestHeader("Accept",k.dataTypes[0]&&k.accepts[k.dataTypes[0]]?k.accepts[k.dataTypes[0]]+("*"!==k.dataTypes[0]?", "+Jc+"; q=0.01":""):k.accepts["*"]);for(d in k.headers)v.setRequestHeader(d,k.headers[d]);if(k.beforeSend&&(k.beforeSend.call(l,v,k)===!1||2===t))return v.abort();u="abort";for(d in{success:1,error:1,complete:1})v[d](k[d]);if(i=Mc(Ic,k,b,v)){v.readyState=1,h&&n.trigger("ajaxSend",[v,k]),k.async&&k.timeout>0&&(g=setTimeout(function(){v.abort("timeout")},k.timeout));try{t=1,i.send(r,x)}catch(w){if(!(2>t))throw w;x(-1,w)}}else x(-1,"No Transport");function x(a,b,c,d){var j,r,s,u,w,x=b;2!==t&&(t=2,g&&clearTimeout(g),i=void 0,f=d||"",v.readyState=a>0?4:0,j=a>=200&&300>a||304===a,c&&(u=Oc(k,v,c)),u=Pc(k,u,v,j),j?(k.ifModified&&(w=v.getResponseHeader("Last-Modified"),w&&(m.lastModified[e]=w),w=v.getResponseHeader("etag"),w&&(m.etag[e]=w)),204===a||"HEAD"===k.type?x="nocontent":304===a?x="notmodified":(x=u.state,r=u.data,s=u.error,j=!s)):(s=x,(a||!x)&&(x="error",0>a&&(a=0))),v.status=a,v.statusText=(b||x)+"",j?o.resolveWith(l,[r,x,v]):o.rejectWith(l,[v,x,s]),v.statusCode(q),q=void 0,h&&n.trigger(j?"ajaxSuccess":"ajaxError",[v,k,j?r:s]),p.fireWith(l,[v,x]),h&&(n.trigger("ajaxComplete",[v,k]),--m.active||m.event.trigger("ajaxStop")))}return v},getJSON:function(a,b,c){return m.get(a,b,c,"json")},getScript:function(a,b){return m.get(a,void 0,b,"script")}}),m.each(["get","post"],function(a,b){m[b]=function(a,c,d,e){return m.isFunction(c)&&(e=e||d,d=c,c=void 0),m.ajax({url:a,type:b,dataType:e,data:c,success:d})}}),m._evalUrl=function(a){return m.ajax({url:a,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})},m.fn.extend({wrapAll:function(a){if(m.isFunction(a))return this.each(function(b){m(this).wrapAll(a.call(this,b))});if(this[0]){var b=m(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&1===a.firstChild.nodeType)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return this.each(m.isFunction(a)?function(b){m(this).wrapInner(a.call(this,b))}:function(){var b=m(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=m.isFunction(a);return this.each(function(c){m(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){m.nodeName(this,"body")||m(this).replaceWith(this.childNodes)}).end()}}),m.expr.filters.hidden=function(a){return a.offsetWidth<=0&&a.offsetHeight<=0||!k.reliableHiddenOffsets()&&"none"===(a.style&&a.style.display||m.css(a,"display"))},m.expr.filters.visible=function(a){return!m.expr.filters.hidden(a)};var Qc=/%20/g,Rc=/\[\]$/,Sc=/\r?\n/g,Tc=/^(?:submit|button|image|reset|file)$/i,Uc=/^(?:input|select|textarea|keygen)/i;function Vc(a,b,c,d){var e;if(m.isArray(b))m.each(b,function(b,e){c||Rc.test(a)?d(a,e):Vc(a+"["+("object"==typeof e?b:"")+"]",e,c,d)});else if(c||"object"!==m.type(b))d(a,b);else for(e in b)Vc(a+"["+e+"]",b[e],c,d)}m.param=function(a,b){var c,d=[],e=function(a,b){b=m.isFunction(b)?b():null==b?"":b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};if(void 0===b&&(b=m.ajaxSettings&&m.ajaxSettings.traditional),m.isArray(a)||a.jquery&&!m.isPlainObject(a))m.each(a,function(){e(this.name,this.value)});else for(c in a)Vc(c,a[c],b,e);return d.join("&").replace(Qc,"+")},m.fn.extend({serialize:function(){return m.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=m.prop(this,"elements");return a?m.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!m(this).is(":disabled")&&Uc.test(this.nodeName)&&!Tc.test(a)&&(this.checked||!W.test(a))}).map(function(a,b){var c=m(this).val();return null==c?null:m.isArray(c)?m.map(c,function(a){return{name:b.name,value:a.replace(Sc,"\r\n")}}):{name:b.name,value:c.replace(Sc,"\r\n")}}).get()}}),m.ajaxSettings.xhr=void 0!==a.ActiveXObject?function(){return!this.isLocal&&/^(get|post|head|put|delete|options)$/i.test(this.type)&&Zc()||$c()}:Zc;var Wc=0,Xc={},Yc=m.ajaxSettings.xhr();a.attachEvent&&a.attachEvent("onunload",function(){for(var a in Xc)Xc[a](void 0,!0)}),k.cors=!!Yc&&"withCredentials"in Yc,Yc=k.ajax=!!Yc,Yc&&m.ajaxTransport(function(a){if(!a.crossDomain||k.cors){var b;return{send:function(c,d){var e,f=a.xhr(),g=++Wc;if(f.open(a.type,a.url,a.async,a.username,a.password),a.xhrFields)for(e in a.xhrFields)f[e]=a.xhrFields[e];a.mimeType&&f.overrideMimeType&&f.overrideMimeType(a.mimeType),a.crossDomain||c["X-Requested-With"]||(c["X-Requested-With"]="XMLHttpRequest");for(e in c)void 0!==c[e]&&f.setRequestHeader(e,c[e]+"");f.send(a.hasContent&&a.data||null),b=function(c,e){var h,i,j;if(b&&(e||4===f.readyState))if(delete Xc[g],b=void 0,f.onreadystatechange=m.noop,e)4!==f.readyState&&f.abort();else{j={},h=f.status,"string"==typeof f.responseText&&(j.text=f.responseText);try{i=f.statusText}catch(k){i=""}h||!a.isLocal||a.crossDomain?1223===h&&(h=204):h=j.text?200:404}j&&d(h,i,j,f.getAllResponseHeaders())},a.async?4===f.readyState?setTimeout(b):f.onreadystatechange=Xc[g]=b:b()},abort:function(){b&&b(void 0,!0)}}}});function Zc(){try{return new a.XMLHttpRequest}catch(b){}}function $c(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}m.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/(?:java|ecma)script/},converters:{"text script":function(a){return m.globalEval(a),a}}}),m.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),m.ajaxTransport("script",function(a){if(a.crossDomain){var b,c=y.head||m("head")[0]||y.documentElement;return{send:function(d,e){b=y.createElement("script"),b.async=!0,a.scriptCharset&&(b.charset=a.scriptCharset),b.src=a.url,b.onload=b.onreadystatechange=function(a,c){(c||!b.readyState||/loaded|complete/.test(b.readyState))&&(b.onload=b.onreadystatechange=null,b.parentNode&&b.parentNode.removeChild(b),b=null,c||e(200,"success"))},c.insertBefore(b,c.firstChild)},abort:function(){b&&b.onload(void 0,!0)}}}});var _c=[],ad=/(=)\?(?=&|$)|\?\?/;m.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var a=_c.pop()||m.expando+"_"+vc++;return this[a]=!0,a}}),m.ajaxPrefilter("json jsonp",function(b,c,d){var e,f,g,h=b.jsonp!==!1&&(ad.test(b.url)?"url":"string"==typeof b.data&&!(b.contentType||"").indexOf("application/x-www-form-urlencoded")&&ad.test(b.data)&&"data");return h||"jsonp"===b.dataTypes[0]?(e=b.jsonpCallback=m.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,h?b[h]=b[h].replace(ad,"$1"+e):b.jsonp!==!1&&(b.url+=(wc.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||m.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,_c.push(e)),g&&m.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),m.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||y;var d=u.exec(a),e=!c&&[];return d?[b.createElement(d[1])]:(d=m.buildFragment([a],b,e),e&&e.length&&m(e).remove(),m.merge([],d.childNodes))};var bd=m.fn.load;m.fn.load=function(a,b,c){if("string"!=typeof a&&bd)return bd.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>=0&&(d=m.trim(a.slice(h,a.length)),a=a.slice(0,h)),m.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(f="POST"),g.length>0&&m.ajax({url:a,type:f,dataType:"html",data:b}).done(function(a){e=arguments,g.html(d?m("<div>").append(m.parseHTML(a)).find(d):a)}).complete(c&&function(a,b){g.each(c,e||[a.responseText,b,a])}),this},m.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){m.fn[b]=function(a){return this.on(b,a)}}),m.expr.filters.animated=function(a){return m.grep(m.timers,function(b){return a===b.elem}).length};var cd=a.document.documentElement;function dd(a){return m.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}m.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=m.css(a,"position"),l=m(a),n={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=m.css(a,"top"),i=m.css(a,"left"),j=("absolute"===k||"fixed"===k)&&m.inArray("auto",[f,i])>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),m.isFunction(b)&&(b=b.call(a,c,h)),null!=b.top&&(n.top=b.top-h.top+g),null!=b.left&&(n.left=b.left-h.left+e),"using"in b?b.using.call(a,n):l.css(n)}},m.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){m.offset.setOffset(this,a,b)});var b,c,d={top:0,left:0},e=this[0],f=e&&e.ownerDocument;if(f)return b=f.documentElement,m.contains(b,e)?(typeof e.getBoundingClientRect!==K&&(d=e.getBoundingClientRect()),c=dd(f),{top:d.top+(c.pageYOffset||b.scrollTop)-(b.clientTop||0),left:d.left+(c.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):d},position:function(){if(this[0]){var a,b,c={top:0,left:0},d=this[0];return"fixed"===m.css(d,"position")?b=d.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),m.nodeName(a[0],"html")||(c=a.offset()),c.top+=m.css(a[0],"borderTopWidth",!0),c.left+=m.css(a[0],"borderLeftWidth",!0)),{top:b.top-c.top-m.css(d,"marginTop",!0),left:b.left-c.left-m.css(d,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||cd;while(a&&!m.nodeName(a,"html")&&"static"===m.css(a,"position"))a=a.offsetParent;return a||cd})}}),m.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c=/Y/.test(b);m.fn[a]=function(d){return V(this,function(a,d,e){var f=dd(a);return void 0===e?f?b in f?f[b]:f.document.documentElement[d]:a[d]:void(f?f.scrollTo(c?m(f).scrollLeft():e,c?e:m(f).scrollTop()):a[d]=e)},a,d,arguments.length,null)}}),m.each(["top","left"],function(a,b){m.cssHooks[b]=Lb(k.pixelPosition,function(a,c){return c?(c=Jb(a,b),Hb.test(c)?m(a).position()[b]+"px":c):void 0})}),m.each({Height:"height",Width:"width"},function(a,b){m.each({padding:"inner"+a,content:b,"":"outer"+a},function(c,d){m.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return V(this,function(b,c,d){var e;return m.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?m.css(b,c,g):m.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),m.fn.size=function(){return this.length},m.fn.andSelf=m.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return m});var ed=a.jQuery,fd=a.$;return m.noConflict=function(b){return a.$===m&&(a.$=fd),b&&a.jQuery===m&&(a.jQuery=ed),m},typeof b===K&&(a.jQuery=a.$=m),m}); examples/js/examples.js000064400000007106151676730720011174 0ustar00$(function() { function ratingEnable() { $('#example-1to10').barrating('show', { theme: 'bars-1to10' }); $('#example-movie').barrating('show', { theme: 'bars-movie' }); $('#example-movie').barrating('set', 'Mediocre'); $('#example-square').barrating('show', { theme: 'bars-square', showValues: true, showSelectedRating: false }); $('#example-pill').barrating('show', { theme: 'bars-pill', initialRating: 'A', showValues: true, showSelectedRating: false, allowEmpty: true, emptyValue: '-- no rating selected --', onSelect: function(value, text) { alert('Selected rating: ' + value); } }); $('#example-reversed').barrating('show', { theme: 'bars-reversed', showSelectedRating: true, reverse: true }); $('#example-horizontal').barrating('show', { theme: 'bars-horizontal', reverse: true, hoverState: false }); $('#example-fontawesome').barrating({ theme: 'fontawesome-stars', showSelectedRating: false }); $('#example-css').barrating({ theme: 'css-stars', showSelectedRating: false }); $('#example-bootstrap').barrating({ theme: 'bootstrap-stars', showSelectedRating: false }); var currentRating = $('#example-fontawesome-o').data('current-rating'); $('.stars-example-fontawesome-o .current-rating') .find('span') .html(currentRating); $('.stars-example-fontawesome-o .clear-rating').on('click', function(event) { event.preventDefault(); $('#example-fontawesome-o') .barrating('clear'); }); $('#example-fontawesome-o').barrating({ theme: 'fontawesome-stars-o', showSelectedRating: false, initialRating: currentRating, onSelect: function(value, text) { if (!value) { $('#example-fontawesome-o') .barrating('clear'); } else { $('.stars-example-fontawesome-o .current-rating') .addClass('hidden'); $('.stars-example-fontawesome-o .your-rating') .removeClass('hidden') .find('span') .html(value); } }, onClear: function(value, text) { $('.stars-example-fontawesome-o') .find('.current-rating') .removeClass('hidden') .end() .find('.your-rating') .addClass('hidden'); } }); } function ratingDisable() { $('select').barrating('destroy'); } $('.rating-enable').click(function(event) { event.preventDefault(); ratingEnable(); $(this).addClass('deactivated'); $('.rating-disable').removeClass('deactivated'); }); $('.rating-disable').click(function(event) { event.preventDefault(); ratingDisable(); $(this).addClass('deactivated'); $('.rating-enable').removeClass('deactivated'); }); ratingEnable(); }); examples/css/main.css000064400000027216151676730720010636 0ustar00/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */ html { color: #222; font-size: 1em; line-height: 1.4; } ::-moz-selection { background: #b3d4fc; text-shadow: none; } ::selection { background: #b3d4fc; text-shadow: none; } hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; } audio, canvas, iframe, img, svg, video { vertical-align: middle; } fieldset { border: 0; margin: 0; padding: 0; } textarea { resize: vertical; } b, strong { font-weight: 400; } .browserupgrade { margin: 0; background: #ccc; color: #000; padding: 1em 2em; text-align: center; } .browserupgrade a { color: #000; text-decoration: underline; } .browserupgrade a:hover { color: #000; text-decoration: none; } /* Dead Simple Grid (c) 2012 Vladimir Agafonkin */ .col { padding: 0 1em; } .row .row { margin: 0 -1em; } .row:before, .row:after { content: ""; display: table; } .row:after { clear: both; } .col { float: left; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } /* ========================================================================== Author's custom styles ========================================================================== */ body { font-family: "Lato", sans-serif; color: #757575; font-weight: 300; font-size: 1.25em; /* 20px */ line-height: 1.6; } h1, h2, h3 { font-weight: 400; color: #2d2d2d; } h1 { font-size: 2.8em; /* 56px */ margin: 0; } a { color: #50e3c2; text-decoration: none; font-weight: 400; } a:hover, a:focus { color: #1cb18f; text-decoration: none; } p { margin: 0 0 1em 0; } .warning { color: red; } .github { background-image: url("../img/github.png"); position: fixed; right: 25px; top: 25px; width: 50px; height: 50px; display: block; z-index: 1; opacity: 0.3; -webkit-transition: opacity .2s; transition: opacity .2s; } @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) { .github { background-image: url("../img/github@2x.png"); background-size: 50px 50px; } } .github:hover { opacity: 1; } .antennaio { background-image: url("../img/antenna.png"); background-repeat: no-repeat; color: #cecece; width: 280px; height: 60px; display: block; margin: auto; font-weight: 400; font-size: 0.6em; /* 12px */ line-height: 5.5; letter-spacing: 2px; margin-bottom: 7em; -webkit-transition: color .2s; transition: color .2s; } @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) { .antennaio { background-image: url("../img/antenna@2x.png"); background-size: 60px 60px; } } .antennaio:hover { color: #757575; } .antennaio span { padding: 0 0 0 70px; } .bars { background-image: url("../img/bars.png"); width: 80px; height: 80px; display: block; margin: auto; } @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) { .bars { background-image: url("../img/bars@2x.png"); background-size: 80px 80px; } } .section { padding: 2em 0; } .section-intro { text-align: center; margin: 3em 0 4em 0; max-height: 9999px; /* no font boosting please */ } .section-intro h1 { line-height: 2.4; } .section-intro p { max-width: 560px; margin: auto; } .section-intro p.tagline { font-size: 0.8em; /* 16px */ color: #a8a8a8; margin-bottom: 3em; } .section-examples { position: relative; background: #f8f8f8; } .examples { margin: auto; width: 980px; padding: 3em 0; } .examples .col { width: 50%; } .examples .col-fullwidth { width: 100%; } .section-docs { margin: 3em 0; } .docs { width: 800px; margin: auto; max-height: 9999px; /* no font boosting please */ } .docs header { text-align: center; padding: 1em 0; letter-spacing: 3px; text-transform: uppercase; font-weight: 400; color: white; width: 100%; font-size: .9em; } .docs .how-to-use header, .docs .callbacks header, .docs .download header { background: #4278f5; } .docs .how-to-use strong, .docs .callbacks strong, .docs .download strong { color: #4278f5; } .docs .how-to-use a, .docs .callbacks a, .docs .download a { color: #4278f5; } .docs .how-to-use a:hover, .docs .callbacks a:hover, .docs .download a:hover { color: #0b43c6; } .docs .how-to-use pre, .docs .callbacks pre, .docs .download pre { background: white; border-left: 2px solid #4278f5; padding: 0 2em; } .docs .how-to-use code, .docs .callbacks code, .docs .download code { font-family: "Source Code Pro", sans-serif; font-size: 0.9em; /* 18px */ color: #4278f5; } .docs .configuration header, .docs .faq header { background: #50e3c2; } .docs .configuration strong, .docs .faq strong { color: #50e3c2; } .docs .configuration a, .docs .faq a { color: #50e3c2; } .docs .configuration a:hover, .docs .faq a:hover { color: #1cb18f; } .docs .configuration pre, .docs .faq pre { background: white; border-left: 2px solid #50e3c2; padding: 0 2em; } .docs .configuration code, .docs .faq code { font-family: "Source Code Pro", sans-serif; font-size: 0.9em; /* 18px */ color: #50e3c2; } .docs .license header, .docs .methods header { background: #edb867; } .docs .license strong, .docs .methods strong { color: #edb867; } .docs .license a, .docs .methods a { color: #edb867; } .docs .license a:hover, .docs .methods a:hover { color: #d58b19; } .docs .license pre, .docs .methods pre { background: white; border-left: 2px solid #edb867; padding: 0 2em; } .docs .license code, .docs .methods code { font-family: "Source Code Pro", sans-serif; font-size: 0.9em; /* 18px */ color: #edb867; } .docs .instructions { padding: 2em 3em; background: #f8f8f8; } .docs .faq p { margin: 0 0 .5em 0; } .docs .faq .question { margin-bottom: 2em; } .docs .faq .question:last-child { margin-bottom: 0; } .controls { position: absolute; top: -23px; left: 50%; margin-left: -190px; } .controls a { display: block; width: 150px; background-color: #50e3c2; color: white; float: left; padding: .3em 1em .5em 1em; text-decoration: none; text-align: center; font-weight: 400; -webkit-transition: background-color 0.2s; transition: background-color 0.2s; } .controls a:hover { background-color: #3adfba; } .controls a:focus { color: #d4f8f0; background-color: #199b7e; } .controls a.rating-enable { -webkit-border-top-left-radius: 999px; -webkit-border-bottom-left-radius: 999px; -moz-border-radius-topleft: 999px; -moz-border-radius-bottomleft: 999px; border-top-left-radius: 999px; border-bottom-left-radius: 999px; } .controls a.rating-disable { -webkit-border-top-right-radius: 999px; -webkit-border-bottom-right-radius: 999px; -moz-border-radius-topright: 999px; -moz-border-radius-bottomright: 999px; border-top-right-radius: 999px; border-bottom-right-radius: 999px; } .controls a:last-child { border-left: 0; } .controls a.deactivated { background: #20c7a1; color: white; } /* ========================================================================== Media Queries ========================================================================== */ @media print { body { color: black; } h1, h2, h3 { color: black; } .controls, .github, .antennaio { display: none; } .section-intro { margin: 1em 0 2em 0; } .section-intro p.tagline { color: black; } .section-examples { background: transparent; } .section-examples .examples { padding: 1em 0; } .section-docs { margin: 1em 0; } .docs .how-to-use a, .docs .callbacks a, .docs .download a, .docs .configuration a, .docs .faq a, .docs .license a, .docs .methods a { color: black; text-decoration: none; } .docs .how-to-use a:hover, .docs .callbacks a:hover, .docs .download a:hover, .docs .configuration a:hover, .docs .faq a:hover, .docs .license a:hover, .docs .methods a:hover { color: black; } .docs .how-to-use header, .docs .callbacks header, .docs .download header, .docs .configuration header, .docs .faq header, .docs .license header, .docs .methods header { background: transparent; color: black; } .docs .how-to-use code, .docs .callbacks code, .docs .download code, .docs .configuration code, .docs .faq code, .docs .license code, .docs .methods code, .docs .how-to-use strong, .docs .callbacks strong, .docs .download strong, .docs .configuration strong, .docs .faq strong, .docs .license strong, .docs .methods strong { color: black; } .docs .how-to-use pre, .docs .callbacks pre, .docs .download pre, .docs .configuration pre, .docs .faq pre, .docs .license pre, .docs .methods pre { border: none; padding: 0; } .docs .how-to-use .instructions, .docs .callbacks .instructions, .docs .download .instructions, .docs .configuration .instructions, .docs .faq .instructions, .docs .license .instructions, .docs .methods .instructions { background: transparent; } } /* ========================================================================== Helper classes ========================================================================== */ .hidden { display: none !important; visibility: hidden; } .visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; } .visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; } .invisible { visibility: hidden; } .clearfix:before, .clearfix:after { content: " "; display: table; } .clearfix:after { clear: both; } .clearfix { *zoom: 1; } /* ========================================================================== Print styles ========================================================================== */ @media print { *, *:before, *:after { box-shadow: none !important; text-shadow: none !important; } a, a:visited { text-decoration: underline; } a[href]:after { content: " (" attr(href) ")"; } abbr[title]:after { content: " (" attr(title) ")"; } a[href^="#"]:after, a[href^="javascript:"]:after { content: ""; } pre, blockquote { page-break-inside: avoid; } thead { display: table-header-group; } tr, img { page-break-inside: avoid; } img { max-width: 100% !important; } p, h2, h3 { orphans: 3; widows: 3; } h2, h3 { page-break-after: avoid; } } examples/css/examples.css000064400000005750151676730720011527 0ustar00/* Center ratings in container */ .box-example-1to10 .br-wrapper { width: 210px; position: absolute; margin: 0px 0 0 -105px; left: 50%; } .box-example-movie .br-wrapper { width: 250px; position: absolute; margin: 0px 0 0 -125px; left: 50%; } .box-example-square .br-wrapper { width: 190px; position: absolute; margin: 0px 0 0 -95px; left: 50%; } .box-example-pill .br-wrapper { width: 232px; position: absolute; margin: 0px 0 0 -116px; left: 50%; } .box-example-reversed .br-wrapper { padding-top: 1.3em; width: 356px; position: absolute; margin: 0px 0 0 -178px; left: 50%; } .box-example-horizontal .br-wrapper { width: 120px; position: absolute; margin: 0px 0 0 -60px; left: 50%; } /* Display star ratings */ .star-ratings h1 { font-size: 1.5em; line-height: 2; margin-top: 3em; color: #757575; } .star-ratings p { margin-bottom: 3em; line-height: 1.2; } .star-ratings h1, .star-ratings p { text-align: center; } .star-ratings .stars { width: 120px; text-align: center; margin: auto; padding: 0 95px; } .star-ratings .stars .title { font-size: 14px; color: #cccccc; line-height: 3; } .star-ratings .stars select { width: 120px; font-size: 16px; } .star-ratings .stars-example-fontawesome, .star-ratings .stars-example-css, .star-ratings .stars-example-bootstrap { float: left; } .star-ratings .stars-example-fontawesome-o { width: 200px; } .star-ratings .stars-example-fontawesome-o select { width: 200px; } .start-ratings-main { margin-bottom: 3em; } /* Boxes */ .box { width: 100%; float: left; margin: 1em 0; } .box .box-header { text-align: center; font-weight: 400; padding: .5em 0; } .box .box-body { padding-top: 2em; height: 85px; /* rating widgets will be absolutely centered relative to box body */ position: relative; } .box select { width: 120px; margin: 10px auto 0 auto; display: block; font-size: 16px; } .box-large .box-body { padding-top: 2em; height: 120px; } .box-orange .box-header { background-color: #edb867; color: white; } .box-orange .box-body { background-color: white; border: 2px solid #f5d8ab; border-top: 0; } .box-green .box-header { background-color: #50e3c2; color: white; } .box-green .box-body { background-color: white; border: 2px solid #92eed9; border-top: 0; } .box-blue .box-header { background-color: #4278f5; color: white; } .box-blue .box-body { background-color: white; border: 2px solid #8bacf9; border-top: 0; } @media print { .star-ratings h1 { color: black; } .star-ratings .stars .title { color: black; } .box-orange .box-header, .box-green .box-header, .box-blue .box-header { background-color: transparent; color: black; } .box-orange .box-body, .box-green .box-body, .box-blue .box-body { background-color: transparent; border: none; } } examples/css/normalize.css000064400000020041151676730720011677 0ustar00/*! normalize.css v3.0.2 | MIT License | git.io/normalize */ /** * 1. Set default font family to sans-serif. * 2. Prevent iOS text size adjust after orientation change, without disabling * user zoom. */ html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ } /** * Remove default margin. */ body { margin: 0; } /* HTML5 display definitions ========================================================================== */ /** * Correct `block` display not defined for any HTML5 element in IE 8/9. * Correct `block` display not defined for `details` or `summary` in IE 10/11 * and Firefox. * Correct `block` display not defined for `main` in IE 11. */ article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; } /** * 1. Correct `inline-block` display not defined in IE 8/9. * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. */ audio, canvas, progress, video { display: inline-block; /* 1 */ vertical-align: baseline; /* 2 */ } /** * Prevent modern browsers from displaying `audio` without controls. * Remove excess height in iOS 5 devices. */ audio:not([controls]) { display: none; height: 0; } /** * Address `[hidden]` styling not present in IE 8/9/10. * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. */ [hidden], template { display: none; } /* Links ========================================================================== */ /** * Remove the gray background color from active links in IE 10. */ a { background-color: transparent; } /** * Improve readability when focused and also mouse hovered in all browsers. */ a:active, a:hover { outline: 0; } /* Text-level semantics ========================================================================== */ /** * Address styling not present in IE 8/9/10/11, Safari, and Chrome. */ abbr[title] { border-bottom: 1px dotted; } /** * Address style set to `bolder` in Firefox 4+, Safari, and Chrome. */ b, strong { font-weight: bold; } /** * Address styling not present in Safari and Chrome. */ dfn { font-style: italic; } /** * Address variable `h1` font-size and margin within `section` and `article` * contexts in Firefox 4+, Safari, and Chrome. */ h1 { font-size: 2em; margin: 0.67em 0; } /** * Address styling not present in IE 8/9. */ mark { background: #ff0; color: #000; } /** * Address inconsistent and variable font size in all browsers. */ small { font-size: 80%; } /** * Prevent `sub` and `sup` affecting `line-height` in all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sup { top: -0.5em; } sub { bottom: -0.25em; } /* Embedded content ========================================================================== */ /** * Remove border when inside `a` element in IE 8/9/10. */ img { border: 0; } /** * Correct overflow not hidden in IE 9/10/11. */ svg:not(:root) { overflow: hidden; } /* Grouping content ========================================================================== */ /** * Address margin not present in IE 8/9 and Safari. */ figure { margin: 1em 40px; } /** * Address differences between Firefox and other browsers. */ hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; } /** * Contain overflow in all browsers. */ pre { overflow: auto; } /** * Address odd `em`-unit font size rendering in all browsers. */ code, kbd, pre, samp { font-family: monospace, monospace; font-size: 1em; } /* Forms ========================================================================== */ /** * Known limitation: by default, Chrome and Safari on OS X allow very limited * styling of `select`, unless a `border` property is set. */ /** * 1. Correct color not being inherited. * Known issue: affects color of disabled elements. * 2. Correct font properties not being inherited. * 3. Address margins set differently in Firefox 4+, Safari, and Chrome. */ button, input, optgroup, select, textarea { color: inherit; /* 1 */ font: inherit; /* 2 */ margin: 0; /* 3 */ } /** * Address `overflow` set to `hidden` in IE 8/9/10/11. */ button { overflow: visible; } /** * Address inconsistent `text-transform` inheritance for `button` and `select`. * All other form control elements do not inherit `text-transform` values. * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera. * Correct `select` style inheritance in Firefox. */ button, select { text-transform: none; } /** * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` * and `video` controls. * 2. Correct inability to style clickable `input` types in iOS. * 3. Improve usability and consistency of cursor style between image-type * `input` and others. */ button, html input[type="button"], /* 1 */ input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ } /** * Re-set default cursor for disabled elements. */ button[disabled], html input[disabled] { cursor: default; } /** * Remove inner padding and border in Firefox 4+. */ button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; } /** * Address Firefox 4+ setting `line-height` on `input` using `!important` in * the UA stylesheet. */ input { line-height: normal; } /** * It's recommended that you don't attempt to style these elements. * Firefox's implementation doesn't respect box-sizing, padding, or width. * * 1. Address box sizing set to `content-box` in IE 8/9/10. * 2. Remove excess padding in IE 8/9/10. */ input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ } /** * Fix the cursor style for Chrome's increment/decrement buttons. For certain * `font-size` values of the `input`, it causes the cursor style of the * decrement button to change from `default` to `text`. */ input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; } /** * 1. Address `appearance` set to `searchfield` in Safari and Chrome. * 2. Address `box-sizing` set to `border-box` in Safari and Chrome * (include `-moz` to future-proof). */ input[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; } /** * Remove inner padding and search cancel button in Safari and Chrome on OS X. * Safari (but not Chrome) clips the cancel button when the search input has * padding (and `textfield` appearance). */ input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; } /** * Define consistent border, margin, and padding. */ fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; } /** * 1. Correct `color` not being inherited in IE 8/9/10/11. * 2. Remove padding so people aren't caught out if they zero out fieldsets. */ legend { border: 0; /* 1 */ padding: 0; /* 2 */ } /** * Remove default vertical scrollbar in IE 8/9/10/11. */ textarea { overflow: auto; } /** * Don't inherit the `font-weight` (applied by a rule above). * NOTE: the default cannot safely be changed in Chrome and Safari on OS X. */ optgroup { font-weight: bold; } /* Tables ========================================================================== */ /** * Remove most spacing between table cells. */ table { border-collapse: collapse; border-spacing: 0; } td, th { padding: 0; } examples/css/normalize.min.css000064400000003675151676730720012477 0ustar00/*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}examples/less/examples.less000064400000006276151676730720012067 0ustar00@import "variables.less"; /* Center ratings in container */ .box-example-1to10 .br-wrapper { width: 210px; position: absolute; margin: 0px 0 0 -105px; left: 50%; } .box-example-movie .br-wrapper { width: 250px; position: absolute; margin: 0px 0 0 -125px; left: 50%; } .box-example-square .br-wrapper { width: 190px; position: absolute; margin: 0px 0 0 -95px; left: 50%; } .box-example-pill .br-wrapper { width: 232px; position: absolute; margin: 0px 0 0 -116px; left: 50%; } .box-example-reversed .br-wrapper { padding-top: 1.3em; width: 356px; position: absolute; margin: 0px 0 0 -178px; left: 50%; } .box-example-horizontal .br-wrapper { width: 120px; position: absolute; margin: 0px 0 0 -60px; left: 50%; } /* Display star ratings */ .star-ratings { h1 { font-size: 1.5em; line-height: 2; margin-top: 3em; color: @textColor; } p { margin-bottom: 3em; line-height: 1.2; } h1, p { text-align: center; } .stars { width: 120px; text-align: center; margin: auto; padding: 0 95px; .title { font-size: 14px; color: #cccccc; line-height: 3; } select { width: 120px; font-size: 16px; } } .stars-example-fontawesome, .stars-example-css, .stars-example-bootstrap { float: left; } .stars-example-fontawesome-o { width: 200px; select { width: 200px; } } } .start-ratings-main { margin-bottom: 3em; } /* Boxes */ .box { width: 100%; float: left; margin: 1em 0; .box-header { text-align: center; font-weight: 400; padding: .5em 0; } .box-body { padding-top: 2em; height: 85px; /* rating widgets will be absolutely centered relative to box body */ position: relative; } select { width: 120px; margin: 10px auto 0 auto; display: block; font-size: 16px; } } .box-large { .box-body { padding-top: 2em; height: 120px; } } .box-color(@color) { .box-header { background-color: @color; color: white; } .box-body { background-color: white; border: 2px solid lighten(@color, 15%); border-top: 0; } } .box-orange { .box-color(@orangeColor); } .box-green { .box-color(@greenColor); } .box-blue { .box-color(@blueColor); } @media print { .star-ratings { h1 { color: black; } .stars { .title { color: black; } } } .box-orange, .box-green, .box-blue { .box-header { background-color: transparent; color: black; } .box-body { background-color: transparent; border: none; } } } examples/less/main.less000064400000023546151676730720011174 0ustar00/*! HTML5 Boilerplate v5.0 | MIT License | http://h5bp.com/ */ html { color: #222; font-size: 1em; line-height: 1.4; } ::-moz-selection { background: #b3d4fc; text-shadow: none; } ::selection { background: #b3d4fc; text-shadow: none; } hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; } audio, canvas, iframe, img, svg, video { vertical-align: middle; } fieldset { border: 0; margin: 0; padding: 0; } textarea { resize: vertical; } b, strong { font-weight: 400; } .browserupgrade { margin: 0; background: #ccc; color: #000; padding: 1em 2em; text-align: center; a { color: #000; text-decoration: underline; &:hover { color: #000; text-decoration: none; } } } /* Dead Simple Grid (c) 2012 Vladimir Agafonkin */ .col { padding: 0 1em; } .row .row { margin: 0 -1em; } .row:before, .row:after { content: ""; display: table; } .row:after { clear: both; } .col { float: left; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } /* ========================================================================== Author's custom styles ========================================================================== */ @import "variables.less"; @import "mixins.less"; body { font-family: @fontFamily; color: @textColor; font-weight: 300; font-size: 1.25em; /* 20px */ line-height: 1.6; } h1, h2, h3 { font-weight: 400; color: @headerColor; } h1 { font-size: 2.8em; /* 56px */ margin: 0; } a { color: @greenColor; text-decoration: none; font-weight: 400; &:hover, &:focus { color: darken(@greenColor, 20%); text-decoration: none; } } p { margin: 0 0 1em 0; } .warning { color: red; } .github { .retina-image('../img/github.png', '../img/github@2x.png', 50px, 50px); position: fixed; right: 25px; top: 25px; width: 50px; height: 50px; display: block; z-index: 1; opacity: 0.3; -webkit-transition: opacity .2s; transition: opacity .2s; &:hover { opacity: 1; } } .antennaio { .retina-image('../img/antenna.png', '../img/antenna@2x.png', 60px, 60px); background-repeat: no-repeat; color: lighten(@textColor, 35%); width: 280px; height: 60px; display: block; margin: auto; font-weight: 400; font-size: 0.6em; /* 12px */ line-height: 5.5; letter-spacing: 2px; margin-bottom: 7em; -webkit-transition: color .2s; transition: color .2s; &:hover { color: @textColor; } span { padding: 0 0 0 70px; } } .bars { .retina-image('../img/bars.png', '../img/bars@2x.png', 80px, 80px); width: 80px; height: 80px; display: block; margin: auto; } .section { padding: 2em 0; } .section-intro { text-align: center; margin: 3em 0 4em 0; max-height: 9999px; /* no font boosting please */ h1 { line-height: 2.4; } p { max-width: 560px; margin: auto; } p.tagline { font-size: 0.8em; /* 16px */ color: lighten(@textColor, 20%); margin-bottom: 3em; } } .section-examples { position: relative; background: @backgroundColor; } .examples { margin: auto; width: 980px; padding: 3em 0; .col { width: 50%; } .col-fullwidth { width: 100%; } } .section-docs { margin: 3em 0; } .coloredDocs(@color) { header { background: @color; } strong { color: @color; } a { color: @color; &:hover { color: darken(@color, 20%); } } pre { background: white; border-left: 2px solid @color; padding: 0 2em; } code { font-family: @fontFamilyMonospaced; font-size: 0.9em; /* 18px */ color: @color; } } .docs { width: 800px; margin: auto; max-height: 9999px; /* no font boosting please */ header { text-align: center; padding: 1em 0; letter-spacing: 3px; text-transform: uppercase; font-weight: 400; color: white; width: 100%; font-size: .9em; } .how-to-use, .callbacks, .download { .coloredDocs(@blueColor); } .configuration, .faq { .coloredDocs(@greenColor); } .license, .methods { .coloredDocs(@orangeColor); } .instructions { padding: 2em 3em; background: @backgroundColor; } .faq { p { margin: 0 0 .5em 0; } .question { margin-bottom: 2em; } .question:last-child { margin-bottom: 0; } } } .controls { position: absolute; top: -23px; left: 50%; margin-left: -190px; a { display: block; width: 150px; background-color: @greenColor; color: white; float: left; padding: .3em 1em .5em 1em; text-decoration: none; text-align: center; font-weight: 400; -webkit-transition: background-color .2s; transition: background-color .2s; &:hover { background-color: darken(@greenColor, 5%); } &:focus { color: lighten(@greenColor, 30%); background-color: darken(@greenColor, 25%); } } a.rating-enable { -webkit-border-top-left-radius: 999px; -webkit-border-bottom-left-radius: 999px; -moz-border-radius-topleft: 999px; -moz-border-radius-bottomleft: 999px; border-top-left-radius: 999px; border-bottom-left-radius: 999px; } a.rating-disable { -webkit-border-top-right-radius: 999px; -webkit-border-bottom-right-radius: 999px; -moz-border-radius-topright: 999px; -moz-border-radius-bottomright: 999px; border-top-right-radius: 999px; border-bottom-right-radius: 999px; } a:last-child { border-left: 0; } a.deactivated { background: darken(@greenColor, 15%); color: white; } } /* ========================================================================== Media Queries ========================================================================== */ @media only screen and (min-width: 35em) { } @media print { body { color: black; } h1, h2, h3 { color: black; } .controls, .github, .antennaio { display: none; } .section-intro { margin: 1em 0 2em 0; p.tagline { color: black; } } .section-examples { background: transparent; .examples { padding: 1em 0; } } .section-docs { margin: 1em 0; } .docs { .how-to-use, .callbacks, .download, .configuration, .faq, .license, .methods { a { color: black; text-decoration: none; &:hover { color: black; } } header { background: transparent; color: black; } code, strong { color: black; } pre { border: none; padding: 0; } .instructions { background: transparent; } } } } /* ========================================================================== Helper classes ========================================================================== */ .hidden { display: none !important; visibility: hidden; } .visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; } .visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; } .invisible { visibility: hidden; } .clearfix:before, .clearfix:after { content: " "; display: table; } .clearfix:after { clear: both; } .clearfix { *zoom: 1; } /* ========================================================================== Print styles ========================================================================== */ @media print { *, *:before, *:after { box-shadow: none !important; text-shadow: none !important; } a, a:visited { text-decoration: underline; } a[href]:after { content: " (" attr(href) ")"; } abbr[title]:after { content: " (" attr(title) ")"; } a[href^="#"]:after, a[href^="javascript:"]:after { content: ""; } pre, blockquote { page-break-inside: avoid; } thead { display: table-header-group; } tr, img { page-break-inside: avoid; } img { max-width: 100% !important; } p, h2, h3 { orphans: 3; widows: 3; } h2, h3 { page-break-after: avoid; } } examples/less/variables.less000064400000000452151676730720012207 0ustar00// Fonts @fontFamily: "Lato", sans-serif; @fontFamilyMonospaced: "Source Code Pro", sans-serif; // Colors @textColor: #757575; @headerColor: #2d2d2d; @backgroundColor: #f8f8f8; @orangeColor: #EDB867; @greenColor: #50E3C2; @blueColor: #4278F5; @greyColor: #b4b4b4; @redColor: #f7605a; examples/less/mixins.less000064400000001125151676730720011544 0ustar00// Retina image .retina-image(@file-1x, @file-2x, @width-1x, @height-1x) { background-image: url("@{file-1x}"); @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and ( min--moz-device-pixel-ratio: 2), only screen and ( -o-min-device-pixel-ratio: 2/1), only screen and ( min-device-pixel-ratio: 2), only screen and ( min-resolution: 192dpi), only screen and ( min-resolution: 2dppx) { background-image: url("@{file-2x}"); background-size: @width-1x @height-1x; } } examples/img/antenna@2x.png000064400000012454151676730720011666 0ustar00�PNG IHDR����g-tEXtSoftwareAdobe ImageReadyq�e<�IDATx�� t����,I�N !��H��(�Xmk�b���f��H+��SP����re����jElU�H[�T�@d��kD�d&��L��;�$d�f曙�?�Lf�f�7��{�}��x�^��%�(E�H$�@�H �"�(E"P$�D�H�@�( �"P$�9o��VC�;[>۵�o[#�x6����1�/�h; _���o�������?ۏخaK�����l�d���3�_`mu��l����E����p8�_��C����V���v;���SBBB"�͏������Q@�ö�m��$V�����?�t�}��ה��B-Z��V�ZQӦM)--M��穨���=���p=�܊�;��v�m1�<�ゕ���ݻ��Z���ЩS�p��~;�t�M������N�رcTXXH�v��۷��gϞU���{Gҟ�Z�߳m�9�m��fK=}��������^ǰw�^ڼy3mڴ�>��sr:����IIII~��6��`lؓ���z�� ��Φ�ӧS�N�?�m۶ћo�I|��ƍSjj���?߿�_�}!���yx�M�ꫯ(++��ϟO-[��q�<y��x� Z�n9rD�.@ԁ��Gي��0^�H�1,"ҝ={6u��-dLJ��k��F˖-S�� ��y۟@��QX���s�K�~C� )|PFF�=Zy¡C�* İ���^���<�����؆��ŋ�]�vt���`0�|��i���t�u����q���:u�=��������A�ձcGZ�hM�:U�<����|�[l�`�k[3\p��j�<��ԿZ�v-�|��t��!*..�7�ߴ����Bne��x?$����j�hNN���4y�d�;Db�!lJ�|�h0256�D�͛7W��Y5h� )_u�U�"U�C�,�i�Yj�68� ���5kf��С�J����W�7�#�7�7m��ya4��UTѰaÈ8x, ���4n�8:s�*�`{���+O4�PTZi����oe1bM�6M ��_2��S�J��EФ����H�_�I���Ԓ!�b@p����@s�OU7`>��ܹ������������+'=@�gU7�;w.b�T۶mi��ԦM!{B�'�JQ�+�d1<u�tbh��ʔH�H�۷o�"��ï\�.TŖ�ͦ�P"]M�4�y��5m !�c���<J�}�� E����/5�s��U k�����m!älUV�"�!��� �b�%�x_!����� _@��n�[,?�,z���Μ9Sm�B�cl-]&�o�S�0��hRAA=��sj���A�w`蕡�Ja��Ν;iϞ=Q!j{�15�肽�$���Z���Vw�����|�֭m¶Rl5@����C'��*��l���)5q�D��J��t��@� 1;v�P��-Lf̘A�<��C��>B���7j�Hyz�b]|��}�� �/\�@��NX��=�(_}�U3f=��#*��od��O����2�'P5˓�q*�l��0�-�~��JL�C�L���s����]�[o����Y�n5#��BU�]��R E�� _��p裏>RbY ?RD��e�C^^k�h��� ���)�-��GJ���V�C-x%��^ш�E���cǪ�q�Y��u�'������/i�ʕ!?�믿^���.Jx�.]�(��-��B���SS =O��õ��իU�{(��@�&"U@�J��+0z�!C_kԨQ���C؛�خ �_�2�_�`�:��6��)�a�GeU�^�zф h� *�b�PCx�}�����6{@�ݱ��d{Gm�2}tM@�q0� �`|�A�ڵ��� $r���o�>U=��/Z�ͨx?�U��Y{�Z���^�� /��RP��_��Ç��D��O}�<�<x�����v�q$��`V����0lܸ�֬Y4���-�� ��� </�<D��008�Wm���ϙ3���4�9r��|���p �i,�i/8Ҭ�u��nm�_Ay���?o����[�tiX���������~`�l��2QG�����8F����Y���{���:��թ�C1� (s�O���a�5|~�\(H��z��[g@�U�� ���ѭKeJ |�/6|~`=z��/A��+�O��'��Ũ�4iR���G�K�,Q�cF�K,�O:�'GK��`�/nժU5�a�AXoF���+P�"��lu���/�D(ݰa�S-H2��|f���ñ��Z�@ㅟ���>�𩧞�r?1����PxA�����r��O����>_&������szT�oذaj���pT'��tz r� ���<�>O��X`���n��H�B�Z��y u��?��Z�^��9�ʠ������+VD|��*��� ���R�{} �q^^�ڽ�={��m�(,0Jx?�+�WE����t��!�h`{g$��<w�Y�����1#�{+0yGT��l�8!� ��D��Et�O�9!�^� Q�n�.u�L����k<�!���Kvh|�h{}#Mv�����i���x!��!yB,�E���ߎ��m�QOQ̚����m��69E����:�d{�H�C2ւ1/��jbFa?2~,z�q0��MF=����]%h��j3�ᑈ�s��`��@lw�����Xp�K��+�����j}!�^(FY�1#�C2�h��E�l ǶO3i��{�n5we�#�Y8�0��Q ;k�eH�\Q����e3��S���ć�`��a��l�w��7�� �k�;3^y�˴���1�ަ�%���@7#�~oψ�z�u�] �p��5k���um�t�]4�����@DwV�9��q�'zݺu!�� ��T�o����2�j��'�-y���GDǪ'�xB��Ќ~����/�LӦMS';�GfM�Zv�"�=�QO���bB�a[, HT\c]�$o��F�~p��ۨ�l�� hIχ�9{c�x?��g��(t�V�ؑAP�����['�ye��]�Y����>���+��P���x@�{@� �4K �W�-�M�-�P�ܺukjٲ�*��0o��sHtt�I����m��W�}1���ps�Q%�ͭ?��߲��ᩐ̆g8h.YXX���˸Q,�x�`q=<(�D�n�W��i��Mu��?h�r���us�%�� �O��,\�i�p;Z���ˆx �H����Z��F�ߒoŊ�͓2@�ME8(��@����C��'�\G��!ߦ�7Lx|(��]2Q��h�P�?��%�T�&�A����MF�"��&�$� =G�K,���=/E���r]��R��� U%���3?�֓�����2���א�h�@��5�rmt��|�6l�l(K��*����·��|}�?a������^�>�-GC����V���h-�Z���uj06uQ�H��(�# �"P$E�H$F�<��I��>�|[��K�n�*�/ K.���xʿ�?�nSK^a+z��z�)V}�(�9�ȉF�Av�<���CH�Zi@z2�JJ���iՅbjʯ��?�P���nT� u��pi��PBo_*��b�ͦ`��x?OM�!_���K�oAB<�x�"�)uQ�8�W8�2��`|����'5���:Rhr�Y�T��a��Jno��s�p[��w�g�2� %Q�z������c����+��3��o%��N�6�7�)�� D ��^r0�g��Y���Ts����/�`����ϱ�+r��Ȍ4Z�"� �۹����V�̀:yЁ_N^��Ә2�}���||6��Q��u����4J����t-�G�Rl��Ð{�Jd��y�&;C=^�S��mn����e���`��=��C��a�ѩ��Q�8;-g�5�q:�/s����R��`�yn�&�Ns�f�5)I�<��� �Uސ�n�� �7��9c�`8�A@�bbr ``�3�Ks�(���C@u����JK��-�R>��2���H����Q������ͦ>� W9�W���ب����P��TZ�s��v;C�BD�%.� Si��H����� �\'\��`e�LꓚH'���1bL�g��xN��9X.���'j�����i����L�T#��D����)7� 967�g�7\�v;{�S<4+��b��P�$��B(����\��QaxÔ���Kyܞ�+����T��GL�y���bQ�GM5�B�+{B� -y��_�r_բAB�i�,:G������G��;���q�ow�^��N�L�N���I�I4�a�^�%�iPG�ǐ�:�j�x��ί%�Hl���B×p٭� �o�W��a����oo/�g�]�?��l8Yܿ��{"��EK�_�-�R�����6�SL�Z���!��\�9������n�۱=ʶ�m����U�b����5_��s�;8`i��!r.�9�W�h*��SB�����]�ن��e�!����VB��B]��ϧ9���YJ�KJ�4������j�{#��zaC*�J��Cm8�K�w��5�#$$ԉaCYEf���p�'-Y�6w9]���A��|�?��p��c��!�o�Q�?�چ�8�ְ �˻!"$�=c��X�1)�:&�+Yo-q��/��/9�uv�l-7|�Z���O���ڹ�9J��7nHM��>?NI�i�&;&�0�|'F��ô?*��=5�.�% 6D�0�q���}8�� &icT`�ckC���)�&�S����dr���.6�q���@�J�a�cB�Vla]v�I��<���(F��M �1l�Q�v�*��&�}?�4G:��b@k������D�8Y���)ZR�i�9P������/��*�ಷ�'�E���UN��*��tLֆ��nl�XP��<�}���K�H|�n���u`8=A��B�;�P�1Vy�t�( �"P$E�H$�@�H �"�(E"P$�D�H�@�( �"P$ ����æ�X�x9[IEND�B`�examples/img/star.png000064400000002061151676730720010632 0ustar00�PNG IHDR<�6��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��XKkSA�3��ѧ-M��|T��(� .nD�b}l������s!nDD7� ]h���6��6mm�MҼ�ݾH���L��a��;�r�3gBB�1�ա��Ko�C��6����z����p�%9�!?ԋ�M]8ג�%�kI��u%�纒ՅSj5�1gᘈDY$f�ٰ�'�.��R����� ��q1JIz�mA�M�8[Oك������+�2��fc"i�i@V8f�h���dd6���������K�c��� YNaU7l@k3G4Vmch��K���6m�E^Y�`3?Zќ�=&��±���!�> Y�1=^���i�H>Ǽ^aGd�QU�B��4^y5TR@���u,�y��qsy�G5 ���%���r8S�֊F uH�E9��J�� ��H��P4����}�Z��U�R�N K8�8R��:4����TE�^���|��flz�*\h j�?�"P�e�TM^�c��ZK �4<.�g\�h��7�F&Es5�v����>*)X���8���o�-��O�[�K�:���U��/ַ��Ȋd7��K^|Vε$k �Z���s]��¹�du� -�,0!�A�d� ��j&$�,+�%t�k��[�dj��g�?FXA12%��L��WPC�}b�/����+��h>�G��ݾ`������?�,�����DK�ƶ��Oϭ����=�pm��Uۈ��w'�ro�U���%Q�dr�̭�xq�=�j"OO��ŋ���5��J_�R�1N��+�F���kP���X��Ruj'���>�K�`��MB��u�T'����EB��o���XҩJ�b�)������1��~��u�ɻ$nS�UK��qh�'��G�ʔ���Ǎ���Wɧ��&< �N�F̆m�1������{��ܸ�"���¬�{Ý+�ھ�·q��0\��N���fq��IEND�B`�examples/img/github@2x.png000064400000005256151676730720011526 0ustar00�PNG IHDRddp�TtEXtSoftwareAdobe ImageReadyq�e< PIDATx��] �U���(���QPw����PH� �& ( F E�;�h<Q�gQ4FM�K �Ȫ(BP�E�PXߣk�0��t�T��tO%/�N��z����~u����$8z��xS\�����88����?�߁ �Z`�X^^^��@�3Jq� t�(�b0_0}[ �`؆��2�2�8�����| �*#I�h�� �@�<�k��� fS$q\FH�8,���ׁ�~��b>���+�,�y��| B@DC\�CT�B�ɫ�S����`}08*$ӄm�H`�W��#2��2���<�z��Z[q�d��eY��0b�2�5�=�;� �FI^����B@Fc\>ڙh�b�R��1焀�Sp�83��:�H�.g������ꙂP�z���|�A�2�b6|s��=��3��)1dp �K�~O+[�NN�\b�(���7-�ۖp3�#H�M}�kߠ@�}��f������v�ǎ���Ζ�;������u�͞��y<p_����R����JJJ~���ȸ��A'|��݊�xO�u���˯�p��e�}�U 6<��-.�q�8]�]"K�s�n.���O� 5��WPv�Sȵ��SEGh7��)�=��}�1�od0 ga�����K��å��9$b���۔!T] ���n�S�=O�?+�ɍ|�z9�����.)�d'��o�+��n�\,>u\q���5V���@+�8�^>�C�읣�3���A= ��Z����˂�b'L�Ȓ�PV����[Θ��.��z��: �-�;��.�.ɂ�cķ���!0���.��DC_c���,T�Z'�Ɛ�Y�A�0��Y����8�.����sie���k��{�0�F�U�| �j��S+c�&����e[�yJ���% ibB�l�->OI�@�F�bB4mXm؋�s���}�\e�{�6���f��i��7�=�L����� FX�u�U���x����S �\Dl�LlԒ��nx�� < _�Dl�$zH��#09�����H$�����x���� �q��ʮ�����t):�DD�֥J�sP$�=Zy�M�D����{H\I!���G���b��4���*)[�.�G���+�+%!͕��3ѕ�Jz���C�+"L���'���J�VG��5Jz���JʶG���Jz��c�"L�%=�IH����&DˇŚ�"L��Z�4 �W�!:�h-aB����+R���E�-۷��]B���)�٥�C�D��6�=d�����x�FԘ����m��n Ѫc�3�����Q�ZMB(�"H�E�����(XAB�(�ZMB�**,�2�Q?��Y��r) �ѱ�J�P�����,�tͤ�>r=콃��Wi�rQ�����b��CNFLl��!�"d�r����B� �\��sV"!ܤ��`z�ta�`1� �j� !xw1������0�U��`������'�A�!^$�1�b9-d���g@#��}"!��V��p��40�ɸI���K|�_bI7f�A�Ɓ�Vtϟ��nY��Bo�"�qcu=��Á�g��$�|C'I����`u���q��c�4�E.3EGw�X�E� ���� ��@b*�t��c��v���'��!�Cw�D�帼�A?�7�`~�M|�Æ�^�P͕w��^��E;�fh�n���:P;�g����3�Ʋ����}\�\� �o"cE��n���٦�O*�l2����V~�$?ԇ����������.I��a��[����ث�N� zsMeLuG�R�e�f�-82&�Rz&��3�e2Nd#��k������ c����"D�fS9�i�3r�X !�[Y3�=�,�(DŽKu0�(M�9��c��OK6��n�\��:drɘ&�5�aW���N��7�Tn�\l���N�R����A_ޚ��2t�MB�]���8I�t2�6�V�w���ص&����h<�3lސ���W��g��o3�\v�h���{�f��2�ؚ�giӯ����4�U�AK�9��q�����~����}��sɢ�Odp p������.�;`���&�Y��{�o����}|7�ç��|y����!P���>�jG�Ie� ���3X|gT R��������Tƈό'���N�T��� �NDɘj\��rL��IgF�6��s�� �k�Ƞo��U��!n���6I��g ���<y��"��UW�C2������!GR�&��SHw�n��8��+���e�/��Q�{L�����ɟ�o�dUp_n|���v�5|���C.A��F���)���V����$m�A�j��emξ����2h�b{�ޣ���W�c&�E����=N[a�JM�5�k-�N�+L��k��������%�H\j�i�Qƿu#/e�L��zE���)�c���8�d�Ǟ����a��|�ū#f�3�w�X+�A���Lr+��d�x.�~�� ��k��gR\k��Iu�-Ҷ�h��A;��r�b��'W���]ƞ����=�w-�WI�4�Xy���9���||��W�`W�@Tk��IEND�B`�examples/img/antenna.png000064400000003655151676730720011317 0ustar00�PNG IHDR<<:��rtEXtSoftwareAdobe ImageReadyq�e<OIDATx��[ L�e���S�Pt����?��QhBZ1[��)"eLe�$s��%I*0��Y� 5��E�tf.�s3�`�Ȕ�r��A����8�;�=�������{��=���!����I��1```�Q%2{o����H[OO��^�.��R�$���L������B�P\���e�O�8�|���h4�W*�&%%�"""h���B{}}}�[�����Yv�ڵv�w�_&�U�����OV���Rddd��f̘��ƍ�ӧO�VTT�666~�R��`��,�7�2�4�x%&�kǎ4mڴ!�mjj���b��J�j��hnI�vi���?�:u���(++��������?c�FKg���g͚5�����TTTDӻ��OA��pt9ܙ&N�8��`��+h��; �2���I"��%`f#-_�2v�l�ܹ�������ٹ�/I����2)f�m۶QPPP.,���ǘ]��a ,�����N�'�/�\Nw��!X�a����(''�:��A���[�`d2Φ�̙36���͛T]]m����8Z�t���G2wl4_ps��a�_�z�2339$�/�}���)&&&��p���D�Ǖ��C�l�����߿O���0d�kk��%��\ ���y*�&����R���O�����ŋ���Fk֬�����r�OMMe���J�?X��|�Ο?OǏt�H*((���XZ�n��th4�A�,^��BBBb��/��P�Ҟ={w�&���4g����̎�ޔ����Ww��'�Of��}YX�(��t:,[6>>���"!{��S���~i�'O��}���ٳ۷o'.2ۯ�Ipp0͜9�V^��j�����KJJ�����lդ�$�����|��Z8a�{7�]���ϟoӞH��H�R�0K>���T*%$BlvD5evk___���AWZ=8���ƍ�����q�� ]��G�;���1���bڰa����!<������Aw �"rr��o���t� a=�ʕ+��6�`�U"�Y=�����Z!?u�M��t��Q���Ù�Îi�q�Hb�u�|[��3Qbb�p����}>��ܹ��\B^<����h�DfaaNNT�\���\V9r����h���B��Ǹ?���*x[����c�D�$wly�&4�6��@{���ҥKB�$�l�Dǹ7/ ��l�T��x��BW��__A���lQϯ�r�kt��{����-��Η�K��З��@��n�,����5�R\�1J����+�Qd��bp�4��A��#A,��� �x���JGσȣ'ˆ�Y�l܍aj/ I��n���M/��i�;�c����RA�0��J��o�m��B�m��Cm�t�UG&��Y��io������y}Ѣ����F�D��G+��ʱ��6�Rr^��� ��>��}%9��ƨ�4E!�o�:�[hC���6l �������V�g�)\���څ��*��h�8a1�����σ�)6N&��q�\��ai<@��ea9�~1Yw�U:L<}�OA�Lv`�t�Y����J.�C���N:ۡ���.bNdB�;��,S��J2$��0�^�Ȣ�-���'����8�^���)����@5~��[�3P��D�j1?N�S�YL���\Lp^���gS�\a0�-��[L=�@�oµ�'�;D��c�VkeB�S�UJrD�v�@;�N�)��ZE�l�>f�m�O��Z:p=o7�O6��� -u��(�E�^�����4��r�?x���6��x�x������؍�_�V����IEND�B`�examples/img/bars.png000064400000003330151676730720010610 0ustar00�PNG IHDRPP�� pHYs�� cHRMm�s�����z�Դ4�<�z�%^IDATx��k�TU��ܻ��uuw܇�Q��&�F�Did/,�,K!�V EH����A?�0�^����iF��B����ꮫ���;ϝ���춻�c�������0�;s���s���" �!0 ����@5P�����-@p�N���� �X�x�XL�$��{�߀��\�(�x(I�o�����7�,�xx�9C��i`+��Y!���*\�6��,p)�>G��� 7�3�w�Ed?/ǓݐLAcVG�H��Gu�3�?�!��,j�c�o�Ip.px�4C��`�C�rPǖV�3��Dr��:���8�U/�r��qj���@�O��J�?5�5:���E�1KǞ��g�e�/˴G���Q��Xzm>��Õ��hG�C� `�뮋��I\C�P/i�]o=h�K��`=p�+�Oʵ�{�����'��z�jWހx��~{�E`��i@�q}��]yq1V��A� �Mܬ�=�G��"�M\��*�zg\��K�"�k/t�$����>fA�8�;�#Y�>��w�a D��T ���d`8K��#��.@)F��������Ng��&��nj��9�.Ψ���t㓤?g9�)�$�%���]�$��u�;��n1��bTF���`��ImG0�B!2�;��!��aA`����D���,#�����I��1$p�=�:�N�sBG\�9"�km�a�`�g;�!��>f_�J�jo����]��7�]�#��u ��r���.��:��K�t��.�;��-��iЮn��gPz82{�s3���T�?�q�3t�hqܺ4[��#��`���[ф^�(ζ�n��} x��X�f��E�a0�z%R��v�G ���5�.6���$v�]�ci$*�<)x�J��~*5��=��m�p*�i�X�;�c'Y���y$�Q�L�6c�̶恼Vks*���~'�?4��N�O4-�8��O�sP^��-�G�9ɫ8�a?�+k:)br�8�c:������_�Y� �Jy�!�| �T��BR�T�OnKF *^�0WIO����I�[\̂�v�o���z8E)�y&�]�&(�ը���j:�� 4�UJ!L�9<�_�^������ �м�5%�g�$�f:����)�q@��ՙc歓� ��Q�I�,E│@a�� �}�ź�o�NJ���t�M�悜���C��h�|!���X��U*�J!�"C�MlYv��P5J0��-��x��C}{0ui�f�5�hb�z�xAz|�T�m��oxJ�[G�h!l�i��lq�(�� ���*>��`���F�J��qa�aР�A��T�(K'�j�/.S���[�ֻ�� ��eZ���D: �ґP�%6�T�2�ǗSư�����b������" ���t���[��j��b�Y��sU�m�+�qO�=�U��SU9m���W.�_��<�����=ω4M�i�)!샌�a�4 �Q��h��!�oa�M�5���ނ�e1˰"�!+X�������B��J��X-#�y�݊+��W�6T���jښ���ig��c��a�iEK�IEND�B`�examples/img/github.png000064400000002453151676730720011150 0ustar00�PNG IHDR22?��tEXtSoftwareAdobe ImageReadyq�e<�IDATx��ZiHTQ�y-�BPV��!9dZT`����G{AfYT����Eʂ� "#�G�e�EE�h��cE��?*�E*�;�G������t���̹�o�]ν7wKK��w�y<��h��I�F(ЏU~?� �-P��z�o'�/Q&�T�s]!�6I` ��� ��k�^*��D�9,�x�_2A轴C$V��L�a��""">���=JF@ �)�N�9 �i4M$���I����� ��0&q��M� Z�gh�Q4H�Fs��pq,�96�q�ܺ�$sl��/A�G��`�w� Z��9�}�%�Y%V�2�9���������&}*Gvac���g>�i�ڨ�����z� A���x��@{hhW.�ңh���A*eb�)<"��?� Ʊ.���Do�i�����~����xJՓ=K`��Ɖ�$���j��h�p��HD�k>�ޞ�����}E��ͱ�Y,4^n#������Qh+Ncb�۹�!6*VWTGSF�� e��`�z2]�3���#��f�>����H�@���w�·z��A"�c��ķXtJj:a�F�i�lo�H|�*Bc}$"QR�5M��D$����W�b��D<�� ��d��D$���H�@q&ʅP�S��Њ�*P�P�)�>�:���}�I��>����ژ�a�S��������Z �A��T�p��؋f��D���gef`{8��qyġmC��Pj�8���������*�@�\�-J�ʀ��zI6�'�V����/]n�8�/��@�Tz��``�)���-�~?�6@y'_N�oQh,/�U����s��w��Xh�ɾ�(,��"�"�J(� S�j�U$g��[vC�o�tq4q���8�Sg�d� ���j}jВS9����SF��S49~:��K |O�<�j! ���B g��$��/RW����~���/`=/����l���jM�)�w�֘��<#}>�����qɥ�2�@z���W�H�{.�>��R�s��)�T�'k��P��\��a���Ls��k� NNX�:����WKA�<=���8/�'�"�<خ�;��.d`j�2�J!�S�H��.�4|V�� �(0�btj̀߫���0Lo}1\w�Y@�@�c���0��@6g% x�_��V��-٠[�(�>45�W�K|�]8�IEND�B`�examples/img/bars@2x.png000064400000005645151676730720011175 0ustar00�PNG IHDR����g- pHYs�� cHRMm�s�����oX��0�%��+IDATx��m�T���{w`�N`���" �EyY��j���-��-��TPj� c�%�Ķ�M�V��h�/�Ԑ�q��"�*j��e�+�L?�Q�uwg_����I�l���<�?��{�9�;<��F���*�J`P��ͯ�p 8�G��[��7ƜP��"�m00 �&��a}�A`'��l5����-��z�:+�Ȉ]�`+�Po�9$�_�j`0�,�.� ��� �G��l�6�U�7�qPg��.�']��n0��{�m��VƄW���=�\ ^d����Ƙ}0X��7�Hޒ��cޒ���w%���oˌ1oK�܊w9��i��z`�1�} �;�G�ߪ��Q�p�1��x1` �G��\���C�_�1g$`v��k(�锠�̏Z��DH�R�a�^�D��BX <`�i��g��'� @��N`�1fO��,��y�"2+B$_pL<�[�y^�E� Q�~��d�ي���f�i*=�lƩ�#����a�w���]�'�"�8�=�6�+��y�^Fs{Q�?�m�����2�s^�����{=�+Vw�]�Ƙd� h�{�U홗��)��|��c^���KB�G���|A �m��h������xj�G|T���۶ѽ�sHW[4�c�DN@;��2ZJU�$�Ƙ��h���p���\<;vs _?;T�|�C`�m�����g�bd�loGƽ���z�b��:�=�]F�@f�FQ�x@uO���=����;�O`�u"�.�a��8�$�]�}o�]4�'�% �����ݔ/F�q�'�R�����/A;���b�}l7 ڏ&�E�4���!Rw*�#�Ot��֕�U@�?_�"Mt�4������V��$����c9��v[�+S��ʶ]pW*� �(zHVw�,��j�_�Q�w�{� �T��^��G��W������Y�G�����V�g�������i�l��*�l�'rH�:��.x�29fA��`{���K���m�;v;�~���]�����N�<���9�^D��ֱ+�,e$|fVgNW>�g��; �<o�?�#�c̡�P�������.�:�"���\D@L;���dC�1�c�~>���_y0��.���킫������������Vk"h&��� �)0�<�������.0B9��!��-`�r!Q��A�D�T*�.0H9���e�A�D�����a\�T9��(u�� ($�(n[���̉�B�������S1�80�ؓ�}�ݐ��(�;�G��(B�S"$���� B�|�DH|,��-�~� Bb�k�9T"`cN|�a���ή��@y������ �CLCk�*0[��s8�LD@�Ν�"ZUPZ�� ��r�Z{�+��ОݵC�����9qm+ �+�G��9��p��>��C�1 h:F���X�`�r>�=���N9 ���*�1f;�MY��ͺ��<��D�i�)��R٬�D�h��֮]�1 �y�&r��֩.W@�'����$m]�[c�[���%[�K���ˏ3��ʓo, 7��*��xg����Ƙ��7���!oZ�z&�e�r=$�;Y4Ƽ�� ��So�靀���n�|�w�?vI@c��3�Ut�g�3��r?ШlE�+�T@c��!�+��u%�Z��Vʈ��f��1g��@RY�6$���l5 Y��EVvu��+-�-��YvZ'D@cL0�%2̱N#��p�T�=K�*��I�]1��:@(c�m��Eѱ��:��V�&�=%)&���*���C��I�ֶ9��JXܩ�)x�mM���V�� �����������V�S�m���vT�X�6+��{;� �b�I��j��g30϶)y!`+ kU ���%������'��{�y~�绀�$\��q~�v��~��wF��d��y��%j�H�$3Ϸ&�t��v���@��H#0#H��JXLE���\>ሬ�V��+�R�Й4����\=����M�-d&���:`��ৗ9/M��ie�º�X�!��j��^vK�`Z�w���E3���F!c̞�#g��TL|Ǖ!~5�W]�s��* �^[�̌F����9�/��M�<�2�cX%�SG;�ό���EԂ*?{}I��A���-NI�v��%e}I_;��r�xgP��T<G�Kj<`fb�� ���6&���X��=����7j7-����E9��Ko�\��]7'y�_S�O*�Vv�u����Q�xy%`�nX�ص~~��GJ5~6P�}�QC��'�w�<�6_�9�O�O��X�صnQ����'�;�ػfǁq9�G �%5��v��|�|��Չ�/�,u���䉏Ƒ����+�G8{F�Ͻo�����#�ύP>��W�W{7]�n�zE���/ }�fX%�c.t�YQβۧ�?��+�F)�t��\`nbw�-�S��j��:�}է�_�N���i�ȟ�1�b!�A� �B����"�"@bwݯ�ޗS'MN5Q�O�ch��W:��ȓw��P+z��|���{7NNӸ8�}��ԩ/.�Zu0 �9����~^?V-��^��b=&�n��>�<��M���$F�f菪����ܾg*K��9P����4��-��↢�#���?��%���%���K'�6���[���t�_s:Y֜N�9�N9gH9���N��qb��>���;%��N�)�M�N�Wq����+u����Ư��Tig���4 ����IEND�B`�examples/img/star@2x.png000064400000003761151676730720011214 0ustar00�PNG IHDR<x�5�tEXtSoftwareAdobe ImageReadyq�e<�IDATx��klU�Ͻ�}�}@�@" ���FD���>�&�_�~И����4�!���BD�(����[���Q�-۲3��fI[��;�3gfۛL����{~���=��V��P�4� ���sq�G��N%aǎٯ0�m��sq�,���:+�S� �ʒK].�%��\*KNu9T���r�,�� Zeɭn�*�0���2���o�0��I}�Qǎ"p�y��;���F �x?��%`(���~��*˰����kN�㗡�M���.t�ʐ:�E�F��%*���������\�v���E�L�y�p�����w��@��q�ɲ[.Dʫ3�F�Ue�r��M �`�ӥ&�z��wd'p��fWI���a�":PoSk{vi]\(hN��ʲ�Q�R��<nә��=f��k'+X1�c ЇN�{�r<�gN� ��s��`Ssk4����R�\p�Q�hS��hAW� �Q!�ϴ�i����р�4V�U���Q5��?n�rAS��[�<o����pBO'hrYzQ�V�Ԡ���pAOW�kei�!�vx�|ΦC သ�F��%z�8�ph��!h���cW44k�`Sm�����)���Ҷk�N���K�����m�m��m��q�.�K#Y�DWA۰!0�Nb/nm�Q��^mV8�#�WX�t�H�\]Z;x�lu%����T�"u��ڞ\�w�� � v_���rF� 'Q:����7M�ً��U�xIߖ�B߁��J��I��E������:��z��X����nY� s�1���1��;�2�۴���T�,9�<��]�F5$ѱ�w��vv`�[%A� � ��0|_�r�J�=X��0<mv�æ� ���>m���XM��@}���(�6�g���b i��1���6 á� �����N�8a%m���)k���݉ 4fk��� ez�p6��i�>�=,��(��È�qg�r�l�yg]����l����Yݥ�����A?#$���¡��R�Keɥ.�ʒS]�%��*Knu�VYr���2�����A��0v徳�Ԯ�:�A�]�YTפo9�n���Ц]�����/u�4��u�RY�M]�U���C��N�(G��`�M_�ό:�̗4�*�S�~l"��-M�7��r⸚�f@s��F���2�v��@�����w+P^��t�$�n�A%����(`#X%V�7?�C�E�� �`�rǻ�ֿ��_k�K�3$m\���>Fi,�=�%A?��з_'魵�_zL<��a� �_�Co�>gZ�����h�х��`�kKS���ʶ}�7Z��E�^\�w g��>y�s�>�cF��%=��p�*���_��ig����۠gV>�L;xزۤ7�'�s��vizQ�V���O�s_���~}���X��p�/��5�k�)�@^ݧ/��у7�=M\��;T���� '��(�|^},F���t�N|�"� [x���jBq�\w�׳�� |����]s�#�Ҷk�ZF��a��7�{i�0��"��U�v��}����m�]ِQ���� 8?mQ�8���^G�3�sq��ڻi�{��J���LO������`��� �+a��f�T�n����$8Vum�����R]c�I��I��E��\#� -�M�o`KM��7�����z��z���-8d�I��s���Q��'�܌���8ރd�}5�y&8I�e�$}��r��8����K���g�\n�C7K��8����������`�f���Q��G�KG=q�A�Z��t ��J�m�I��1�l[�3��*4~OK8�� ˎH���͠��`&p��=�Р�?�N��aS�_? ��ε%4g�GߛT�z�p6�!w2 �p|(�'��9X�/S8IEND�B`�README.md000064400000001230151676730720006035 0ustar00# jQuery Bar Rating Plugin [](https://travis-ci.org/antennaio/jquery-bar-rating) Minimal, light-weight jQuery ratings. ## How to use Documentation and examples of use can be found here: [http://antenna.io/demo/jquery-bar-rating/examples/](http://antenna.io/demo/jquery-bar-rating/examples/) ## How to run tests ``` git clone https://github.com/antennaio/jquery-bar-rating cd jquery-bar-rating npm install npm test ``` ## License This plugin is available under [the MIT license](http://www.opensource.org/licenses/mit-license.php). bower.json000064400000001212151676730720006567 0ustar00{ "name": "jquery-bar-rating", "version": "1.2.2", "homepage": "http://antenna.io/demo/jquery-bar-rating/examples/", "repository": { "type": "git", "url": "git://github.com/antennaio/jquery-bar-rating.git" }, "authors": [ "Antenna.io <antenna@antenna.io>" ], "description": "Minimal, light-weight jQuery ratings.", "main": "jquery.barrating.js", "keywords": [ "jquery", "ratings", "rating" ], "license": "MIT", "dependencies": { "jquery": ">=1.7.2" }, "ignore": [ "**/.*", "node_modules", "bower_components", "test", "examples" ] } CHANGELOG.md000064400000010616151676730720006377 0ustar001.2.2 ----- - new option added: `allowEmpty` - new option added: `emptyValue` - bugfix: accept empty string in set method (@kzmi, [#85](https://github.com/antennaio/jquery-bar-rating/pull/85)) - bugfix: little CSS fix (@bygiro, [#74](https://github.com/antennaio/jquery-bar-rating/pull/74)) - bugfix: syntax error within example in documentation (@sorter, [#72](https://github.com/antennaio/jquery-bar-rating/pull/72)) - added optimal travis config (@amilajack, [#71](https://github.com/antennaio/jquery-bar-rating/pull/71)) 1.2.1 ----- - fixed variable declaration (@schurig, [#68](https://github.com/antennaio/jquery-bar-rating/pull/68)) - added a note about [R language integration](https://github.com/harveyl888/barRating) to the FAQ (@harveyl888, [#67](https://github.com/antennaio/jquery-bar-rating/issues/67)) 1.2.0 ----- - deprecated `wrapperClass` option removed - readonly ratings - `cursor: default` rule added to all themes - support for displaying of fractional star ratings (2.5, 3.7, 4.9) - fractional ratings will be marked with `br-fractional` and `br-fractional-*` classes (where * is 10, 20, 30...) - reset select field when ratings are cleared - `deselectable` option added 1.1.4 ----- - license file added - bugfix: when using "set" method the colors are reversed (@hrishiballal, [#59](https://github.com/antennaio/jquery-bar-rating/issues/59)) - update selected rating value when tabbing (fixes issue [#51](https://github.com/antennaio/jquery-bar-rating/issues/51)) - bugfix: click doesn't fire onSelect after changing readonly to true and then to false (@zimarai, [#54](https://github.com/antennaio/jquery-bar-rating/pull/54)) 1.1.3 ----- - new option added: `silent` - `readonly` method added - namespaced events - rating widget - redundant span elements dropped - `wrapperClass` option deprecated - pass event object to onSelect callback - print styles added - new option added: `hoverState` 1.1.2 ----- - AMD and CommonJS compatibility - FAQ section added to the docs - triggering onSelect callback when using `set` method 1.1.1 ----- - themes for basic stars in flavors for css, fontawesome and bootstrap (@garygreen, [#35](https://github.com/antennaio/jquery-bar-rating/pull/35)) - switch to using karma and phantomjs for testing (@garygreen, [#37](https://github.com/antennaio/jquery-bar-rating/pull/37)) - gulp tasks added - minified version with source map file stored in `dist` directory 1.1.0 ----- - new & improved demo page - plugin will create a wrapper div by itself - new option added: `wrapperClass` - new option added: `fastClicks` 1.0.6 ----- - vertical rating example - bugfix: Knockout doesn't recognize values set by the widget unless we call change() on the select tag. (@akshaykarle, [#25](https://github.com/antennaio/jquery-bar-rating/pull/25)) - documentation updated with detailed installation instructions - `set` method added - bugfix: onClear and onDestroy callbacks fixed - allow html in ratings (fixes issue [#30](https://github.com/antennaio/jquery-bar-rating/issues/30)), thanks @techmantoolz 1.0.5 ----- - bugfix: selected option changed by propterties, not attributes (fixes issue [#7](https://github.com/antennaio/jquery-bar-rating/issues/7)) - `initialRating` setting added - prefixed class names: `.bar-rating` changed to `.br-widget` `.current-rating` changed to `.br-current-rating` `.active` changed to `.br-active` `.selected` changed to `.br-selected` `.current` changed to `.br-current` - read-only and reversed rating marked with `.br-readonly` and `.br-reverse` classes respectively - bugfix: removed touch detection - improved cross-browser compatibility (fixes issue [#11](https://github.com/antennaio/jquery-bar-rating/issues/11)) - bower.json added 1.0.4 ----- - `readonly` setting added - `reverse` setting added 1.0.3 ----- - `destroy` method will destroy a single instance of the plugin - `clear` method added - `onClear` and `onDestroy` callbacks added 1.0.2 ----- - `.current-rating` div gets updated on mouseenter 1.0.1 ----- - new scenario: empty ratings are allowed, user can deselect a previously selected rating (@linko, @antennaio, [#2](https://github.com/antennaio/jquery-bar-rating/pull/2)) - the plugin will throw an error if called on anything other than `select` field
/home/emeraadmin/www/node_modules/./../smmsg.com/../4d695/jquery-bar-rating.tar