First version, grabs recently added movies/tvshows
This commit is contained in:
99
webui/static/lib/charisma/js/bootstrap-toggle.js
vendored
Executable file
99
webui/static/lib/charisma/js/bootstrap-toggle.js
vendored
Executable file
@@ -0,0 +1,99 @@
|
||||
/**
|
||||
* bootstrap-toggle.js v1.0
|
||||
* http://github.com/Nijikokun/bootstrap-toggle/
|
||||
* --
|
||||
* http://twitter.com/nijikokun
|
||||
* Copyright 2012 Nijiko Yonskai, Goodybag Inc
|
||||
* --
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
!function ($) {
|
||||
|
||||
var Toggle = function (element, options) {
|
||||
var self = this;
|
||||
|
||||
// Collect elements
|
||||
this.$element = $(element)
|
||||
this.$checkbox = this.$element.children('.checkbox')
|
||||
this.options = $.extend({}, $.fn.toggle.defaults, options)
|
||||
|
||||
// Initial Setup from options
|
||||
if(this.options.text.enabled) this.$element.attr('data-enabled', this.options.text.enabled)
|
||||
if(this.options.text.disabled) this.$element.attr('data-disabled', this.options.text.disabled)
|
||||
|
||||
// setup state
|
||||
this.setState(this.$checkbox.is(':checked'))
|
||||
|
||||
// Setup Click
|
||||
this.$element.click(function (e) {
|
||||
if(self.options.onClick) self.options.onClick(e, self.$checkbox.is(':checked'))
|
||||
self.toggle()
|
||||
});
|
||||
}
|
||||
|
||||
Toggle.prototype.setState = function (state) {
|
||||
// change checkbox state
|
||||
this.$checkbox.attr('checked', state)
|
||||
|
||||
if(state) {
|
||||
this.$element.removeClass('disabled')
|
||||
if(this.options.style.disabled)
|
||||
this.$element.removeClass('disabled-' + this.options.style.disabled)
|
||||
if(this.options.style.enabled)
|
||||
this.$element.addClass(this.options.style.enabled)
|
||||
} else {
|
||||
this.$element.addClass('disabled')
|
||||
if(this.options.style.enabled)
|
||||
this.$element.removeClass(this.options.style.enabled)
|
||||
if(this.options.style.disabled)
|
||||
this.$element.addClass('disabled-' + this.options.style.disabled)
|
||||
}
|
||||
}
|
||||
|
||||
Toggle.prototype.on = function () {
|
||||
this.setState(true)
|
||||
}
|
||||
|
||||
Toggle.prototype.off = function () {
|
||||
this.setState(false)
|
||||
}
|
||||
|
||||
Toggle.prototype.toggle = function () {
|
||||
var status = this.$checkbox.is(':checked')
|
||||
|
||||
// Toggle status
|
||||
this.setState(!status)
|
||||
}
|
||||
|
||||
/*
|
||||
* Toggle Definition
|
||||
*/
|
||||
$.fn.toggle = function (options) {
|
||||
return new Toggle(this, typeof options == 'object' ? options : {})
|
||||
}
|
||||
|
||||
$.fn.toggle.defaults = {
|
||||
onClick: function () {},
|
||||
text: {
|
||||
enabled: false,
|
||||
disabled: false
|
||||
},
|
||||
style: {
|
||||
enabled: false,
|
||||
disabled: false
|
||||
}
|
||||
}
|
||||
|
||||
$.fn.toggle.Constructor = Toggle
|
||||
}(window.jQuery);
|
||||
Reference in New Issue
Block a user