| |
@@ -1,183 +0,0 @@
|
| |
- /*
|
| |
- * jQuery Foundation Tooltip Plugin 2.0.1
|
| |
- * http://foundation.zurb.com
|
| |
- * Copyright 2012, ZURB
|
| |
- * Free to use under the MIT license.
|
| |
- * http://www.opensource.org/licenses/mit-license.php
|
| |
- */
|
| |
-
|
| |
- /*jslint unparam: true, browser: true, indent: 2 */
|
| |
-
|
| |
- ;(function ($) {
|
| |
- 'use strict';
|
| |
- var settings = {
|
| |
- bodyHeight : 0,
|
| |
- targetClass : '.has-tip',
|
| |
- tooltipClass : '.tooltip',
|
| |
- tipTemplate : function (selector, content) {
|
| |
- return '<span data-selector="' + selector + '" class="' + settings.tooltipClass.substring(1) + '">' + content + '<span class="nub"></span></span>';
|
| |
- }
|
| |
- },
|
| |
- methods = {
|
| |
- init : function (options) {
|
| |
- return this.each(function () {
|
| |
- var $body = $('body');
|
| |
-
|
| |
- if (Modernizr.touch) {
|
| |
- $body.on('click.tooltip touchstart.tooltip touchend.tooltip', settings.targetClass, function (e) {
|
| |
- e.preventDefault();
|
| |
- $(settings.tooltipClass).hide();
|
| |
- methods.showOrCreateTip($(this));
|
| |
- });
|
| |
- $body.on('click.tooltip touchstart.tooltip touchend.tooltip', settings.tooltipClass, function (e) {
|
| |
- e.preventDefault();
|
| |
- $(this).fadeOut(150);
|
| |
- });
|
| |
- } else {
|
| |
- $body.on('mouseenter.tooltip mouseleave.tooltip', settings.targetClass, function (e) {
|
| |
- var $this = $(this);
|
| |
-
|
| |
- if (e.type === 'mouseenter') {
|
| |
- methods.showOrCreateTip($this);
|
| |
- } else if (e.type === 'mouseleave') {
|
| |
- methods.hide($this);
|
| |
- }
|
| |
- });
|
| |
- }
|
| |
- });
|
| |
- },
|
| |
- showOrCreateTip : function ($target) {
|
| |
- var $tip = methods.getTip($target);
|
| |
-
|
| |
- if ($tip && $tip.length > 0) {
|
| |
- methods.show($target);
|
| |
- } else {
|
| |
- methods.create($target);
|
| |
- }
|
| |
- },
|
| |
- getTip : function ($target) {
|
| |
- var selector = methods.selector($target),
|
| |
- tip = null;
|
| |
-
|
| |
- if (selector) {
|
| |
- tip = $('span[data-selector=' + selector + ']' + settings.tooltipClass);
|
| |
- }
|
| |
- return (tip.length > 0) ? tip : false;
|
| |
- },
|
| |
- selector : function ($target) {
|
| |
- var id = $target.attr('id'),
|
| |
- dataSelector = $target.data('selector');
|
| |
-
|
| |
- if (id === undefined && dataSelector === undefined) {
|
| |
- dataSelector = 'tooltip' + Math.random().toString(36).substring(7);
|
| |
- $target.attr('data-selector', dataSelector);
|
| |
- }
|
| |
- return (id) ? id : dataSelector;
|
| |
- },
|
| |
- create : function ($target) {
|
| |
- var $tip = $(settings.tipTemplate(methods.selector($target), $('<div>').text($target.attr('title')).html())),
|
| |
- classes = methods.inheritable_classes($target);
|
| |
-
|
| |
- $tip.addClass(classes).appendTo('body');
|
| |
- if (Modernizr.touch) {
|
| |
- $tip.append('<span class="tap-to-close">tap to close </span>');
|
| |
- }
|
| |
- $target.removeAttr('title');
|
| |
- methods.show($target);
|
| |
- },
|
| |
- reposition : function (target, tip, classes) {
|
| |
- var width, nub, nubHeight, nubWidth, column, objPos;
|
| |
-
|
| |
- tip.css('visibility', 'hidden').show();
|
| |
-
|
| |
- width = target.data('width');
|
| |
- nub = tip.children('.nub');
|
| |
- nubHeight = nub.outerHeight();
|
| |
- nubWidth = nub.outerWidth();
|
| |
-
|
| |
- objPos = function (obj, top, right, bottom, left, width) {
|
| |
- return obj.css({
|
| |
- 'top' : top,
|
| |
- 'bottom' : bottom,
|
| |
- 'left' : left,
|
| |
- 'right' : right,
|
| |
- 'width' : (width) ? width : 'auto'
|
| |
- }).end();
|
| |
- };
|
| |
-
|
| |
- objPos(tip, (target.offset().top + target.outerHeight() + 10), 'auto', 'auto', target.offset().left, width);
|
| |
- objPos(nub, -nubHeight, 'auto', 'auto', 10);
|
| |
-
|
| |
- if ($(window).width() < 767) {
|
| |
- column = target.closest('.columns');
|
| |
-
|
| |
- if (column.length < 0) {
|
| |
- // if not using Foundation
|
| |
- column = $('body');
|
| |
- }
|
| |
- tip.width(column.outerWidth() - 25).css('left', 15).addClass('tip-override');
|
| |
- objPos(nub, -nubHeight, 'auto', 'auto', target.offset().left);
|
| |
- } else {
|
| |
- if (classes.indexOf('tip-top') > -1) {
|
| |
- objPos(tip, (target.offset().top - tip.outerHeight() - nubHeight), 'auto', 'auto', target.offset().left, width)
|
| |
- .removeClass('tip-override');
|
| |
- objPos(nub, 'auto', 'auto', -nubHeight, 'auto');
|
| |
- } else if (classes.indexOf('tip-left') > -1) {
|
| |
- objPos(tip, (target.offset().top + (target.outerHeight() / 2) - nubHeight), 'auto', 'auto', (target.offset().left - tip.outerWidth() - 10), width)
|
| |
- .removeClass('tip-override');
|
| |
- objPos(nub, (tip.outerHeight() / 2) - (nubHeight / 2), -nubHeight, 'auto', 'auto');
|
| |
- } else if (classes.indexOf('tip-right') > -1) {
|
| |
- objPos(tip, (target.offset().top + (target.outerHeight() / 2) - nubHeight), 'auto', 'auto', (target.offset().left + target.outerWidth() + 10), width)
|
| |
- .removeClass('tip-override');
|
| |
- objPos(nub, (tip.outerHeight() / 2) - (nubHeight / 2), 'auto', 'auto', -nubHeight);
|
| |
- }
|
| |
- }
|
| |
- tip.css('visibility', 'visible').hide();
|
| |
- },
|
| |
- inheritable_classes : function (target) {
|
| |
- var inheritables = ['tip-top', 'tip-left', 'tip-bottom', 'tip-right', 'noradius'],
|
| |
- filtered = target.attr('class').split(' ').map(function (el, i) {
|
| |
- if ($.inArray(el, inheritables) !== -1) {
|
| |
- return el;
|
| |
- }
|
| |
- }).join(' ');
|
| |
-
|
| |
- return $.trim(filtered);
|
| |
- },
|
| |
- show : function ($target) {
|
| |
- var $tip = methods.getTip($target);
|
| |
-
|
| |
- methods.reposition($target, $tip, $target.attr('class'));
|
| |
- $tip.fadeIn(150);
|
| |
- },
|
| |
- hide : function ($target) {
|
| |
- var $tip = methods.getTip($target);
|
| |
-
|
| |
- $tip.fadeOut(150);
|
| |
- },
|
| |
- reload : function () {
|
| |
- var $self = $(this);
|
| |
-
|
| |
- return ($self.data('tooltips')) ? $self.tooltips('destroy').tooltips('init') : $self.tooltips('init');
|
| |
- },
|
| |
- destroy : function () {
|
| |
- return this.each(function () {
|
| |
- $(window).off('.tooltip');
|
| |
- $(settings.targetClass).off('.tooltip');
|
| |
- $(settings.tooltipClass).each(function (i) {
|
| |
- $($(settings.targetClass).get(i)).attr('title', $(this).text());
|
| |
- }).remove();
|
| |
- });
|
| |
- }
|
| |
- };
|
| |
-
|
| |
- $.fn.tooltips = function (method) {
|
| |
- if (methods[method]) {
|
| |
- return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
|
| |
- } else if (typeof method === 'object' || !method) {
|
| |
- return methods.init.apply(this, arguments);
|
| |
- } else {
|
| |
- $.error('Method ' + method + ' does not exist on jQuery.tooltips');
|
| |
- }
|
| |
- };
|
| |
- }(jQuery));
|
| |
\ No newline at end of file
|
| |
The 4 mentioned DB models haven't been used in years. Drop them to make the
codebase and schema easier to maintain. The related functions (from controllers
etc) are dropped as well.
This also removes:
EnumSymbol
and related classes, because it's not used anywhere and wealready use SQLAlchemy's provided Enum which seems to work well
util/koji_interface.py
, no longer requiredNote that there are still some unused util functions lying around, like
check_api_rights()
orcheck_api_key()
, which I decided to keep in case theycould still be useful in the future.