o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1368221711.730507: @value"#{I" class:EFI"ProcessedAsset;FI"logical_path;FI"jquery.ui.selectable.js;TI" pathname;FI"|/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.selectable.js;TI"content_type;FI"application/javascript;FI" mtime;FI"2013-05-10T14:56:24+02:00;FI" length;Fi<I" digest;F"%5c1b0dd8effeabc0e18ba22ec4c1b445I" source;FI"< /*! * jQuery UI Selectable 1.10.0 * http://jqueryui.com * * Copyright 2013 jQuery Foundation and other contributors * Released under the MIT license. * http://jquery.org/license * * http://api.jqueryui.com/selectable/ * * Depends: * jquery.ui.core.js * jquery.ui.mouse.js * jquery.ui.widget.js */ (function( $, undefined ) { $.widget("ui.selectable", $.ui.mouse, { version: "1.10.0", options: { appendTo: "body", autoRefresh: true, distance: 0, filter: "*", tolerance: "touch", // callbacks selected: null, selecting: null, start: null, stop: null, unselected: null, unselecting: null }, _create: function() { var selectees, that = this; this.element.addClass("ui-selectable"); this.dragged = false; // cache selectee children based on filter this.refresh = function() { selectees = $(that.options.filter, that.element[0]); selectees.addClass("ui-selectee"); selectees.each(function() { var $this = $(this), pos = $this.offset(); $.data(this, "selectable-item", { element: this, $element: $this, left: pos.left, top: pos.top, right: pos.left + $this.outerWidth(), bottom: pos.top + $this.outerHeight(), startselected: false, selected: $this.hasClass("ui-selected"), selecting: $this.hasClass("ui-selecting"), unselecting: $this.hasClass("ui-unselecting") }); }); }; this.refresh(); this.selectees = selectees.addClass("ui-selectee"); this._mouseInit(); this.helper = $("
"); }, _destroy: function() { this.selectees .removeClass("ui-selectee") .removeData("selectable-item"); this.element .removeClass("ui-selectable ui-selectable-disabled"); this._mouseDestroy(); }, _mouseStart: function(event) { var that = this, options = this.options; this.opos = [event.pageX, event.pageY]; if (this.options.disabled) { return; } this.selectees = $(options.filter, this.element[0]); this._trigger("start", event); $(options.appendTo).append(this.helper); // position helper (lasso) this.helper.css({ "left": event.pageX, "top": event.pageY, "width": 0, "height": 0 }); if (options.autoRefresh) { this.refresh(); } this.selectees.filter(".ui-selected").each(function() { var selectee = $.data(this, "selectable-item"); selectee.startselected = true; if (!event.metaKey && !event.ctrlKey) { selectee.$element.removeClass("ui-selected"); selectee.selected = false; selectee.$element.addClass("ui-unselecting"); selectee.unselecting = true; // selectable UNSELECTING callback that._trigger("unselecting", event, { unselecting: selectee.element }); } }); $(event.target).parents().addBack().each(function() { var doSelect, selectee = $.data(this, "selectable-item"); if (selectee) { doSelect = (!event.metaKey && !event.ctrlKey) || !selectee.$element.hasClass("ui-selected"); selectee.$element .removeClass(doSelect ? "ui-unselecting" : "ui-selected") .addClass(doSelect ? "ui-selecting" : "ui-unselecting"); selectee.unselecting = !doSelect; selectee.selecting = doSelect; selectee.selected = doSelect; // selectable (UN)SELECTING callback if (doSelect) { that._trigger("selecting", event, { selecting: selectee.element }); } else { that._trigger("unselecting", event, { unselecting: selectee.element }); } return false; } }); }, _mouseDrag: function(event) { this.dragged = true; if (this.options.disabled) { return; } var tmp, that = this, options = this.options, x1 = this.opos[0], y1 = this.opos[1], x2 = event.pageX, y2 = event.pageY; if (x1 > x2) { tmp = x2; x2 = x1; x1 = tmp; } if (y1 > y2) { tmp = y2; y2 = y1; y1 = tmp; } this.helper.css({left: x1, top: y1, width: x2-x1, height: y2-y1}); this.selectees.each(function() { var selectee = $.data(this, "selectable-item"), hit = false; //prevent helper from being selected if appendTo: selectable if (!selectee || selectee.element === that.element[0]) { return; } if (options.tolerance === "touch") { hit = ( !(selectee.left > x2 || selectee.right < x1 || selectee.top > y2 || selectee.bottom < y1) ); } else if (options.tolerance === "fit") { hit = (selectee.left > x1 && selectee.right < x2 && selectee.top > y1 && selectee.bottom < y2); } if (hit) { // SELECT if (selectee.selected) { selectee.$element.removeClass("ui-selected"); selectee.selected = false; } if (selectee.unselecting) { selectee.$element.removeClass("ui-unselecting"); selectee.unselecting = false; } if (!selectee.selecting) { selectee.$element.addClass("ui-selecting"); selectee.selecting = true; // selectable SELECTING callback that._trigger("selecting", event, { selecting: selectee.element }); } } else { // UNSELECT if (selectee.selecting) { if ((event.metaKey || event.ctrlKey) && selectee.startselected) { selectee.$element.removeClass("ui-selecting"); selectee.selecting = false; selectee.$element.addClass("ui-selected"); selectee.selected = true; } else { selectee.$element.removeClass("ui-selecting"); selectee.selecting = false; if (selectee.startselected) { selectee.$element.addClass("ui-unselecting"); selectee.unselecting = true; } // selectable UNSELECTING callback that._trigger("unselecting", event, { unselecting: selectee.element }); } } if (selectee.selected) { if (!event.metaKey && !event.ctrlKey && !selectee.startselected) { selectee.$element.removeClass("ui-selected"); selectee.selected = false; selectee.$element.addClass("ui-unselecting"); selectee.unselecting = true; // selectable UNSELECTING callback that._trigger("unselecting", event, { unselecting: selectee.element }); } } } }); return false; }, _mouseStop: function(event) { var that = this; this.dragged = false; $(".ui-unselecting", this.element[0]).each(function() { var selectee = $.data(this, "selectable-item"); selectee.$element.removeClass("ui-unselecting"); selectee.unselecting = false; selectee.startselected = false; that._trigger("unselected", event, { unselected: selectee.element }); }); $(".ui-selecting", this.element[0]).each(function() { var selectee = $.data(this, "selectable-item"); selectee.$element.removeClass("ui-selecting").addClass("ui-selected"); selectee.selecting = false; selectee.selected = true; selectee.startselected = true; that._trigger("selected", event, { selected: selectee.element }); }); this._trigger("stop", event); this.helper.remove(); return false; } }); })(jQuery); ;FI"dependency_digest;F"%074acfe00feb8a3c9b7fd1e6345d9cbbI"required_paths;F[ I"{/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.core.js;TI"}/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.widget.js;TI"|/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.mouse.js;TI"|/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.selectable.js;TI"dependency_paths;F[ {I" path;FI"|/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.selectable.js;TI" mtime;FI"2013-05-10T14:56:24+02:00;FI" digest;F"%1b510999b6c84b5db9ad256448cd1ea5{I" path;FI"{/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.core.js;TI" mtime;FI"2013-05-10T14:56:24+02:00;FI" digest;F"%193fe181c1725461366408c31d3e964c{I" path;FI"}/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.widget.js;TI" mtime;FI"2013-05-10T14:56:24+02:00;FI" digest;F"%a02daee670154b7abc8859730b2555b6{I" path;FI"|/Users/gawlim/.rvm/gems/ruby-1.9.3-p327@rails_info/gems/jquery-ui-rails-4.0.2/app/assets/javascripts/jquery.ui.mouse.js;TI" mtime;FI"2013-05-10T14:56:24+02:00;FI" digest;F"%d7ed5eb2bb2d51dc949dbb69bebe5f90I" _version;F"%6776f581a4329e299531e1d52aa59832