PHP Classes

File: vendors/gentelella/vendors/bootstrap-progressbar/bootstrap-progressbar.js

Recommend this page to a friend!
  Classes of Jorge Castro   Gentelella BladeOne   vendors/gentelella/vendors/bootstrap-progressbar/bootstrap-progressbar.js   Download  
File: vendors/gentelella/vendors/bootstrap-progressbar/bootstrap-progressbar.js
Role: Auxiliary data
Content type: text/plain
Description: Auxiliary data
Class: Gentelella BladeOne
Render templates using Bootstrap for presentation
Author: By
Last change:
Date: 3 years ago
Size: 6,168 bytes
 

Contents

Class file image Download
/*! * bootstrap-progressbar v0.9.0 by @minddust * Copyright (c) 2012-2015 Stephan Groß * * http://www.minddust.com/project/bootstrap-progressbar/ * * Licensed under the MIT license: * http://www.opensource.org/licenses/MIT */ (function($) { 'use strict'; // PROGRESSBAR CLASS DEFINITION // ============================ var Progressbar = function(element, options) { this.$element = $(element); this.options = $.extend({}, Progressbar.defaults, options); }; Progressbar.defaults = { transition_delay: 300, refresh_speed: 50, display_text: 'none', use_percentage: true, percent_format: function(percent) { return percent + '%'; }, amount_format: function(amount_part, amount_max, amount_min) { return amount_part + ' / ' + amount_max; }, update: $.noop, done: $.noop, fail: $.noop }; Progressbar.prototype.transition = function() { var $this = this.$element; var $parent = $this.parent(); var $back_text = this.$back_text; var $front_text = this.$front_text; var options = this.options; var data_transitiongoal = parseInt($this.attr('data-transitiongoal')); var aria_valuemin = parseInt($this.attr('aria-valuemin')) || 0; var aria_valuemax = parseInt($this.attr('aria-valuemax')) || 100; var is_vertical = $parent.hasClass('vertical'); var update = options.update && typeof options.update === 'function' ? options.update : Progressbar.defaults.update; var done = options.done && typeof options.done === 'function' ? options.done : Progressbar.defaults.done; var fail = options.fail && typeof options.fail === 'function' ? options.fail : Progressbar.defaults.fail; if (isNaN(data_transitiongoal)) { fail('data-transitiongoal not set'); return; } var percentage = Math.round(100 * (data_transitiongoal - aria_valuemin) / (aria_valuemax - aria_valuemin)); if (options.display_text === 'center' && !$back_text && !$front_text) { this.$back_text = $back_text = $('<span>').addClass('progressbar-back-text').prependTo($parent); this.$front_text = $front_text = $('<span>').addClass('progressbar-front-text').prependTo($this); var parent_size; if (is_vertical) { parent_size = $parent.css('height'); $back_text.css({height: parent_size, 'line-height': parent_size}); $front_text.css({height: parent_size, 'line-height': parent_size}); $(window).resize(function() { parent_size = $parent.css('height'); $back_text.css({height: parent_size, 'line-height': parent_size}); $front_text.css({height: parent_size, 'line-height': parent_size}); }); // normal resizing would brick the structure because width is in px } else { parent_size = $parent.css('width'); $front_text.css({width: parent_size}); $(window).resize(function() { parent_size = $parent.css('width'); $front_text.css({width: parent_size}); }); // normal resizing would brick the structure because width is in px } } setTimeout(function() { var current_percentage; var current_value; var this_size; var parent_size; var text; if (is_vertical) { $this.css('height', percentage + '%'); } else { $this.css('width', percentage + '%'); } var progress = setInterval(function() { if (is_vertical) { this_size = $this.height(); parent_size = $parent.height(); } else { this_size = $this.width(); parent_size = $parent.width(); } current_percentage = Math.round(100 * this_size / parent_size); current_value = Math.round(aria_valuemin + this_size / parent_size * (aria_valuemax - aria_valuemin)); if (current_percentage >= percentage) { current_percentage = percentage; current_value = data_transitiongoal; done($this); clearInterval(progress); } if (options.display_text !== 'none') { text = options.use_percentage ? options.percent_format(current_percentage) : options.amount_format(current_value, aria_valuemax, aria_valuemin); if (options.display_text === 'fill') { $this.text(text); } else if (options.display_text === 'center') { $back_text.text(text); $front_text.text(text); } } $this.attr('aria-valuenow', current_value); update(current_percentage, $this); }, options.refresh_speed); }, options.transition_delay); }; // PROGRESSBAR PLUGIN DEFINITION // ============================= var old = $.fn.progressbar; $.fn.progressbar = function(option) { return this.each(function () { var $this = $(this); var data = $this.data('bs.progressbar'); var options = typeof option === 'object' && option; if (data && options) { $.extend(data.options, options); } if (!data) { $this.data('bs.progressbar', (data = new Progressbar(this, options))); } data.transition(); }); }; $.fn.progressbar.Constructor = Progressbar; // PROGRESSBAR NO CONFLICT // ======================= $.fn.progressbar.noConflict = function () { $.fn.progressbar = old; return this; }; })(window.jQuery);