Created
October 9, 2012 13:21
-
-
Save hamajyotan/3858769 to your computer and use it in GitHub Desktop.
rails bootstrap script for 3.2
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* =================================================== | |
* bootstrap-transition.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#transitions | |
* =================================================== | |
* Copyright 2012 Twitter, 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 ($) { | |
$(function () { | |
"use strict"; // jshint ;_; | |
/* CSS TRANSITION SUPPORT (http://www.modernizr.com/) | |
* ======================================================= */ | |
$.support.transition = (function () { | |
var transitionEnd = (function () { | |
var el = document.createElement('bootstrap') | |
, transEndEventNames = { | |
'WebkitTransition' : 'webkitTransitionEnd' | |
, 'MozTransition' : 'transitionend' | |
, 'OTransition' : 'oTransitionEnd otransitionend' | |
, 'transition' : 'transitionend' | |
} | |
, name | |
for (name in transEndEventNames){ | |
if (el.style[name] !== undefined) { | |
return transEndEventNames[name] | |
} | |
} | |
}()) | |
return transitionEnd && { | |
end: transitionEnd | |
} | |
})() | |
}) | |
}(window.jQuery); | |
/* ========================================================= | |
* bootstrap-modal.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#modals | |
* ========================================================= | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* MODAL CLASS DEFINITION | |
* ====================== */ | |
var Modal = function (element, options) { | |
this.options = options | |
this.$element = $(element) | |
.delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this)) | |
this.options.remote && this.$element.find('.modal-body').load(this.options.remote) | |
} | |
Modal.prototype = { | |
constructor: Modal | |
, toggle: function () { | |
return this[!this.isShown ? 'show' : 'hide']() | |
} | |
, show: function () { | |
var that = this | |
, e = $.Event('show') | |
this.$element.trigger(e) | |
if (this.isShown || e.isDefaultPrevented()) return | |
$('body').addClass('modal-open') | |
this.isShown = true | |
this.escape() | |
this.backdrop(function () { | |
var transition = $.support.transition && that.$element.hasClass('fade') | |
if (!that.$element.parent().length) { | |
that.$element.appendTo(document.body) //don't move modals dom position | |
} | |
that.$element | |
.show() | |
if (transition) { | |
that.$element[0].offsetWidth // force reflow | |
} | |
that.$element | |
.addClass('in') | |
.attr('aria-hidden', false) | |
.focus() | |
that.enforceFocus() | |
transition ? | |
that.$element.one($.support.transition.end, function () { that.$element.trigger('shown') }) : | |
that.$element.trigger('shown') | |
}) | |
} | |
, hide: function (e) { | |
e && e.preventDefault() | |
var that = this | |
e = $.Event('hide') | |
this.$element.trigger(e) | |
if (!this.isShown || e.isDefaultPrevented()) return | |
this.isShown = false | |
$('body').removeClass('modal-open') | |
this.escape() | |
$(document).off('focusin.modal') | |
this.$element | |
.removeClass('in') | |
.attr('aria-hidden', true) | |
$.support.transition && this.$element.hasClass('fade') ? | |
this.hideWithTransition() : | |
this.hideModal() | |
} | |
, enforceFocus: function () { | |
var that = this | |
$(document).on('focusin.modal', function (e) { | |
if (that.$element[0] !== e.target && !that.$element.has(e.target).length) { | |
that.$element.focus() | |
} | |
}) | |
} | |
, escape: function () { | |
var that = this | |
if (this.isShown && this.options.keyboard) { | |
this.$element.on('keyup.dismiss.modal', function ( e ) { | |
e.which == 27 && that.hide() | |
}) | |
} else if (!this.isShown) { | |
this.$element.off('keyup.dismiss.modal') | |
} | |
} | |
, hideWithTransition: function () { | |
var that = this | |
, timeout = setTimeout(function () { | |
that.$element.off($.support.transition.end) | |
that.hideModal() | |
}, 500) | |
this.$element.one($.support.transition.end, function () { | |
clearTimeout(timeout) | |
that.hideModal() | |
}) | |
} | |
, hideModal: function (that) { | |
this.$element | |
.hide() | |
.trigger('hidden') | |
this.backdrop() | |
} | |
, removeBackdrop: function () { | |
this.$backdrop.remove() | |
this.$backdrop = null | |
} | |
, backdrop: function (callback) { | |
var that = this | |
, animate = this.$element.hasClass('fade') ? 'fade' : '' | |
if (this.isShown && this.options.backdrop) { | |
var doAnimate = $.support.transition && animate | |
this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />') | |
.appendTo(document.body) | |
if (this.options.backdrop != 'static') { | |
this.$backdrop.click($.proxy(this.hide, this)) | |
} | |
if (doAnimate) this.$backdrop[0].offsetWidth // force reflow | |
this.$backdrop.addClass('in') | |
doAnimate ? | |
this.$backdrop.one($.support.transition.end, callback) : | |
callback() | |
} else if (!this.isShown && this.$backdrop) { | |
this.$backdrop.removeClass('in') | |
$.support.transition && this.$element.hasClass('fade')? | |
this.$backdrop.one($.support.transition.end, $.proxy(this.removeBackdrop, this)) : | |
this.removeBackdrop() | |
} else if (callback) { | |
callback() | |
} | |
} | |
} | |
/* MODAL PLUGIN DEFINITION | |
* ======================= */ | |
$.fn.modal = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('modal') | |
, options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option) | |
if (!data) $this.data('modal', (data = new Modal(this, options))) | |
if (typeof option == 'string') data[option]() | |
else if (options.show) data.show() | |
}) | |
} | |
$.fn.modal.defaults = { | |
backdrop: true | |
, keyboard: true | |
, show: true | |
} | |
$.fn.modal.Constructor = Modal | |
/* MODAL DATA-API | |
* ============== */ | |
$(function () { | |
$('body').on('click.modal.data-api', '[data-toggle="modal"]', function ( e ) { | |
var $this = $(this) | |
, href = $this.attr('href') | |
, $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7 | |
, option = $target.data('modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data()) | |
e.preventDefault() | |
$target | |
.modal(option) | |
.one('hide', function () { | |
$this.focus() | |
}) | |
}) | |
}) | |
}(window.jQuery); | |
/* ============================================================ | |
* bootstrap-dropdown.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#dropdowns | |
* ============================================================ | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* DROPDOWN CLASS DEFINITION | |
* ========================= */ | |
var toggle = '[data-toggle=dropdown]' | |
, Dropdown = function (element) { | |
var $el = $(element).on('click.dropdown.data-api', this.toggle) | |
$('html').on('click.dropdown.data-api', function () { | |
$el.parent().removeClass('open') | |
}) | |
} | |
Dropdown.prototype = { | |
constructor: Dropdown | |
, toggle: function (e) { | |
var $this = $(this) | |
, $parent | |
, isActive | |
if ($this.is('.disabled, :disabled')) return | |
$parent = getParent($this) | |
isActive = $parent.hasClass('open') | |
clearMenus() | |
if (!isActive) { | |
$parent.toggleClass('open') | |
$this.focus() | |
} | |
return false | |
} | |
, keydown: function (e) { | |
var $this | |
, $items | |
, $active | |
, $parent | |
, isActive | |
, index | |
if (!/(38|40|27)/.test(e.keyCode)) return | |
$this = $(this) | |
e.preventDefault() | |
e.stopPropagation() | |
if ($this.is('.disabled, :disabled')) return | |
$parent = getParent($this) | |
isActive = $parent.hasClass('open') | |
if (!isActive || (isActive && e.keyCode == 27)) return $this.click() | |
$items = $('[role=menu] li:not(.divider) a', $parent) | |
if (!$items.length) return | |
index = $items.index($items.filter(':focus')) | |
if (e.keyCode == 38 && index > 0) index-- // up | |
if (e.keyCode == 40 && index < $items.length - 1) index++ // down | |
if (!~index) index = 0 | |
$items | |
.eq(index) | |
.focus() | |
} | |
} | |
function clearMenus() { | |
getParent($(toggle)) | |
.removeClass('open') | |
} | |
function getParent($this) { | |
var selector = $this.attr('data-target') | |
, $parent | |
if (!selector) { | |
selector = $this.attr('href') | |
selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 | |
} | |
$parent = $(selector) | |
$parent.length || ($parent = $this.parent()) | |
return $parent | |
} | |
/* DROPDOWN PLUGIN DEFINITION | |
* ========================== */ | |
$.fn.dropdown = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('dropdown') | |
if (!data) $this.data('dropdown', (data = new Dropdown(this))) | |
if (typeof option == 'string') data[option].call($this) | |
}) | |
} | |
$.fn.dropdown.Constructor = Dropdown | |
/* APPLY TO STANDARD DROPDOWN ELEMENTS | |
* =================================== */ | |
$(function () { | |
$('html') | |
.on('click.dropdown.data-api touchstart.dropdown.data-api', clearMenus) | |
$('body') | |
.on('click.dropdown touchstart.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() }) | |
.on('click.dropdown.data-api touchstart.dropdown.data-api' , toggle, Dropdown.prototype.toggle) | |
.on('keydown.dropdown.data-api touchstart.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown) | |
}) | |
}(window.jQuery); | |
/* ============================================================= | |
* bootstrap-scrollspy.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#scrollspy | |
* ============================================================= | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* SCROLLSPY CLASS DEFINITION | |
* ========================== */ | |
function ScrollSpy(element, options) { | |
var process = $.proxy(this.process, this) | |
, $element = $(element).is('body') ? $(window) : $(element) | |
, href | |
this.options = $.extend({}, $.fn.scrollspy.defaults, options) | |
this.$scrollElement = $element.on('scroll.scroll-spy.data-api', process) | |
this.selector = (this.options.target | |
|| ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 | |
|| '') + ' .nav li > a' | |
this.$body = $('body') | |
this.refresh() | |
this.process() | |
} | |
ScrollSpy.prototype = { | |
constructor: ScrollSpy | |
, refresh: function () { | |
var self = this | |
, $targets | |
this.offsets = $([]) | |
this.targets = $([]) | |
$targets = this.$body | |
.find(this.selector) | |
.map(function () { | |
var $el = $(this) | |
, href = $el.data('target') || $el.attr('href') | |
, $href = /^#\w/.test(href) && $(href) | |
return ( $href | |
&& $href.length | |
&& [[ $href.position().top, href ]] ) || null | |
}) | |
.sort(function (a, b) { return a[0] - b[0] }) | |
.each(function () { | |
self.offsets.push(this[0]) | |
self.targets.push(this[1]) | |
}) | |
} | |
, process: function () { | |
var scrollTop = this.$scrollElement.scrollTop() + this.options.offset | |
, scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight | |
, maxScroll = scrollHeight - this.$scrollElement.height() | |
, offsets = this.offsets | |
, targets = this.targets | |
, activeTarget = this.activeTarget | |
, i | |
if (scrollTop >= maxScroll) { | |
return activeTarget != (i = targets.last()[0]) | |
&& this.activate ( i ) | |
} | |
for (i = offsets.length; i--;) { | |
activeTarget != targets[i] | |
&& scrollTop >= offsets[i] | |
&& (!offsets[i + 1] || scrollTop <= offsets[i + 1]) | |
&& this.activate( targets[i] ) | |
} | |
} | |
, activate: function (target) { | |
var active | |
, selector | |
this.activeTarget = target | |
$(this.selector) | |
.parent('.active') | |
.removeClass('active') | |
selector = this.selector | |
+ '[data-target="' + target + '"],' | |
+ this.selector + '[href="' + target + '"]' | |
active = $(selector) | |
.parent('li') | |
.addClass('active') | |
if (active.parent('.dropdown-menu').length) { | |
active = active.closest('li.dropdown').addClass('active') | |
} | |
active.trigger('activate') | |
} | |
} | |
/* SCROLLSPY PLUGIN DEFINITION | |
* =========================== */ | |
$.fn.scrollspy = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('scrollspy') | |
, options = typeof option == 'object' && option | |
if (!data) $this.data('scrollspy', (data = new ScrollSpy(this, options))) | |
if (typeof option == 'string') data[option]() | |
}) | |
} | |
$.fn.scrollspy.Constructor = ScrollSpy | |
$.fn.scrollspy.defaults = { | |
offset: 10 | |
} | |
/* SCROLLSPY DATA-API | |
* ================== */ | |
$(window).on('load', function () { | |
$('[data-spy="scroll"]').each(function () { | |
var $spy = $(this) | |
$spy.scrollspy($spy.data()) | |
}) | |
}) | |
}(window.jQuery); | |
/* ======================================================== | |
* bootstrap-tab.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#tabs | |
* ======================================================== | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* TAB CLASS DEFINITION | |
* ==================== */ | |
var Tab = function (element) { | |
this.element = $(element) | |
} | |
Tab.prototype = { | |
constructor: Tab | |
, show: function () { | |
var $this = this.element | |
, $ul = $this.closest('ul:not(.dropdown-menu)') | |
, selector = $this.attr('data-target') | |
, previous | |
, $target | |
, e | |
if (!selector) { | |
selector = $this.attr('href') | |
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 | |
} | |
if ( $this.parent('li').hasClass('active') ) return | |
previous = $ul.find('.active a').last()[0] | |
e = $.Event('show', { | |
relatedTarget: previous | |
}) | |
$this.trigger(e) | |
if (e.isDefaultPrevented()) return | |
$target = $(selector) | |
this.activate($this.parent('li'), $ul) | |
this.activate($target, $target.parent(), function () { | |
$this.trigger({ | |
type: 'shown' | |
, relatedTarget: previous | |
}) | |
}) | |
} | |
, activate: function ( element, container, callback) { | |
var $active = container.find('> .active') | |
, transition = callback | |
&& $.support.transition | |
&& $active.hasClass('fade') | |
function next() { | |
$active | |
.removeClass('active') | |
.find('> .dropdown-menu > .active') | |
.removeClass('active') | |
element.addClass('active') | |
if (transition) { | |
element[0].offsetWidth // reflow for transition | |
element.addClass('in') | |
} else { | |
element.removeClass('fade') | |
} | |
if ( element.parent('.dropdown-menu') ) { | |
element.closest('li.dropdown').addClass('active') | |
} | |
callback && callback() | |
} | |
transition ? | |
$active.one($.support.transition.end, next) : | |
next() | |
$active.removeClass('in') | |
} | |
} | |
/* TAB PLUGIN DEFINITION | |
* ===================== */ | |
$.fn.tab = function ( option ) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('tab') | |
if (!data) $this.data('tab', (data = new Tab(this))) | |
if (typeof option == 'string') data[option]() | |
}) | |
} | |
$.fn.tab.Constructor = Tab | |
/* TAB DATA-API | |
* ============ */ | |
$(function () { | |
$('body').on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) { | |
e.preventDefault() | |
$(this).tab('show') | |
}) | |
}) | |
}(window.jQuery); | |
/* =========================================================== | |
* bootstrap-tooltip.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#tooltips | |
* Inspired by the original jQuery.tipsy by Jason Frame | |
* =========================================================== | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* TOOLTIP PUBLIC CLASS DEFINITION | |
* =============================== */ | |
var Tooltip = function (element, options) { | |
this.init('tooltip', element, options) | |
} | |
Tooltip.prototype = { | |
constructor: Tooltip | |
, init: function (type, element, options) { | |
var eventIn | |
, eventOut | |
this.type = type | |
this.$element = $(element) | |
this.options = this.getOptions(options) | |
this.enabled = true | |
if (this.options.trigger == 'click') { | |
this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) | |
} else if (this.options.trigger != 'manual') { | |
eventIn = this.options.trigger == 'hover' ? 'mouseenter' : 'focus' | |
eventOut = this.options.trigger == 'hover' ? 'mouseleave' : 'blur' | |
this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) | |
this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) | |
} | |
this.options.selector ? | |
(this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : | |
this.fixTitle() | |
} | |
, getOptions: function (options) { | |
options = $.extend({}, $.fn[this.type].defaults, options, this.$element.data()) | |
if (options.delay && typeof options.delay == 'number') { | |
options.delay = { | |
show: options.delay | |
, hide: options.delay | |
} | |
} | |
return options | |
} | |
, enter: function (e) { | |
var self = $(e.currentTarget)[this.type](this._options).data(this.type) | |
if (!self.options.delay || !self.options.delay.show) return self.show() | |
clearTimeout(this.timeout) | |
self.hoverState = 'in' | |
this.timeout = setTimeout(function() { | |
if (self.hoverState == 'in') self.show() | |
}, self.options.delay.show) | |
} | |
, leave: function (e) { | |
var self = $(e.currentTarget)[this.type](this._options).data(this.type) | |
if (this.timeout) clearTimeout(this.timeout) | |
if (!self.options.delay || !self.options.delay.hide) return self.hide() | |
self.hoverState = 'out' | |
this.timeout = setTimeout(function() { | |
if (self.hoverState == 'out') self.hide() | |
}, self.options.delay.hide) | |
} | |
, show: function () { | |
var $tip | |
, inside | |
, pos | |
, actualWidth | |
, actualHeight | |
, placement | |
, tp | |
if (this.hasContent() && this.enabled) { | |
$tip = this.tip() | |
this.setContent() | |
if (this.options.animation) { | |
$tip.addClass('fade') | |
} | |
placement = typeof this.options.placement == 'function' ? | |
this.options.placement.call(this, $tip[0], this.$element[0]) : | |
this.options.placement | |
inside = /in/.test(placement) | |
$tip | |
.remove() | |
.css({ top: 0, left: 0, display: 'block' }) | |
.appendTo(inside ? this.$element : document.body) | |
pos = this.getPosition(inside) | |
actualWidth = $tip[0].offsetWidth | |
actualHeight = $tip[0].offsetHeight | |
switch (inside ? placement.split(' ')[1] : placement) { | |
case 'bottom': | |
tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2} | |
break | |
case 'top': | |
tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2} | |
break | |
case 'left': | |
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth} | |
break | |
case 'right': | |
tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width} | |
break | |
} | |
$tip | |
.css(tp) | |
.addClass(placement) | |
.addClass('in') | |
} | |
} | |
, setContent: function () { | |
var $tip = this.tip() | |
, title = this.getTitle() | |
$tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) | |
$tip.removeClass('fade in top bottom left right') | |
} | |
, hide: function () { | |
var that = this | |
, $tip = this.tip() | |
$tip.removeClass('in') | |
function removeWithAnimation() { | |
var timeout = setTimeout(function () { | |
$tip.off($.support.transition.end).remove() | |
}, 500) | |
$tip.one($.support.transition.end, function () { | |
clearTimeout(timeout) | |
$tip.remove() | |
}) | |
} | |
$.support.transition && this.$tip.hasClass('fade') ? | |
removeWithAnimation() : | |
$tip.remove() | |
return this | |
} | |
, fixTitle: function () { | |
var $e = this.$element | |
if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') { | |
$e.attr('data-original-title', $e.attr('title') || '').removeAttr('title') | |
} | |
} | |
, hasContent: function () { | |
return this.getTitle() | |
} | |
, getPosition: function (inside) { | |
return $.extend({}, (inside ? {top: 0, left: 0} : this.$element.offset()), { | |
width: this.$element[0].offsetWidth | |
, height: this.$element[0].offsetHeight | |
}) | |
} | |
, getTitle: function () { | |
var title | |
, $e = this.$element | |
, o = this.options | |
title = $e.attr('data-original-title') | |
|| (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) | |
return title | |
} | |
, tip: function () { | |
return this.$tip = this.$tip || $(this.options.template) | |
} | |
, validate: function () { | |
if (!this.$element[0].parentNode) { | |
this.hide() | |
this.$element = null | |
this.options = null | |
} | |
} | |
, enable: function () { | |
this.enabled = true | |
} | |
, disable: function () { | |
this.enabled = false | |
} | |
, toggleEnabled: function () { | |
this.enabled = !this.enabled | |
} | |
, toggle: function () { | |
this[this.tip().hasClass('in') ? 'hide' : 'show']() | |
} | |
, destroy: function () { | |
this.hide().$element.off('.' + this.type).removeData(this.type) | |
} | |
} | |
/* TOOLTIP PLUGIN DEFINITION | |
* ========================= */ | |
$.fn.tooltip = function ( option ) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('tooltip') | |
, options = typeof option == 'object' && option | |
if (!data) $this.data('tooltip', (data = new Tooltip(this, options))) | |
if (typeof option == 'string') data[option]() | |
}) | |
} | |
$.fn.tooltip.Constructor = Tooltip | |
$.fn.tooltip.defaults = { | |
animation: true | |
, placement: 'top' | |
, selector: false | |
, template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' | |
, trigger: 'hover' | |
, title: '' | |
, delay: 0 | |
, html: true | |
} | |
}(window.jQuery); | |
/* =========================================================== | |
* bootstrap-popover.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#popovers | |
* =========================================================== | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* POPOVER PUBLIC CLASS DEFINITION | |
* =============================== */ | |
var Popover = function (element, options) { | |
this.init('popover', element, options) | |
} | |
/* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js | |
========================================== */ | |
Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, { | |
constructor: Popover | |
, setContent: function () { | |
var $tip = this.tip() | |
, title = this.getTitle() | |
, content = this.getContent() | |
$tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) | |
$tip.find('.popover-content > *')[this.options.html ? 'html' : 'text'](content) | |
$tip.removeClass('fade top bottom left right in') | |
} | |
, hasContent: function () { | |
return this.getTitle() || this.getContent() | |
} | |
, getContent: function () { | |
var content | |
, $e = this.$element | |
, o = this.options | |
content = $e.attr('data-content') | |
|| (typeof o.content == 'function' ? o.content.call($e[0]) : o.content) | |
return content | |
} | |
, tip: function () { | |
if (!this.$tip) { | |
this.$tip = $(this.options.template) | |
} | |
return this.$tip | |
} | |
, destroy: function () { | |
this.hide().$element.off('.' + this.type).removeData(this.type) | |
} | |
}) | |
/* POPOVER PLUGIN DEFINITION | |
* ======================= */ | |
$.fn.popover = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('popover') | |
, options = typeof option == 'object' && option | |
if (!data) $this.data('popover', (data = new Popover(this, options))) | |
if (typeof option == 'string') data[option]() | |
}) | |
} | |
$.fn.popover.Constructor = Popover | |
$.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, { | |
placement: 'right' | |
, trigger: 'click' | |
, content: '' | |
, template: '<div class="popover"><div class="arrow"></div><div class="popover-inner"><h3 class="popover-title"></h3><div class="popover-content"><p></p></div></div></div>' | |
}) | |
}(window.jQuery); | |
/* ========================================================== | |
* bootstrap-affix.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#affix | |
* ========================================================== | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* AFFIX CLASS DEFINITION | |
* ====================== */ | |
var Affix = function (element, options) { | |
this.options = $.extend({}, $.fn.affix.defaults, options) | |
this.$window = $(window).on('scroll.affix.data-api', $.proxy(this.checkPosition, this)) | |
this.$element = $(element) | |
this.checkPosition() | |
} | |
Affix.prototype.checkPosition = function () { | |
if (!this.$element.is(':visible')) return | |
var scrollHeight = $(document).height() | |
, scrollTop = this.$window.scrollTop() | |
, position = this.$element.offset() | |
, offset = this.options.offset | |
, offsetBottom = offset.bottom | |
, offsetTop = offset.top | |
, reset = 'affix affix-top affix-bottom' | |
, affix | |
if (typeof offset != 'object') offsetBottom = offsetTop = offset | |
if (typeof offsetTop == 'function') offsetTop = offset.top() | |
if (typeof offsetBottom == 'function') offsetBottom = offset.bottom() | |
affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ? | |
false : offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ? | |
'bottom' : offsetTop != null && scrollTop <= offsetTop ? | |
'top' : false | |
if (this.affixed === affix) return | |
this.affixed = affix | |
this.unpin = affix == 'bottom' ? position.top - scrollTop : null | |
this.$element.removeClass(reset).addClass('affix' + (affix ? '-' + affix : '')) | |
} | |
/* AFFIX PLUGIN DEFINITION | |
* ======================= */ | |
$.fn.affix = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('affix') | |
, options = typeof option == 'object' && option | |
if (!data) $this.data('affix', (data = new Affix(this, options))) | |
if (typeof option == 'string') data[option]() | |
}) | |
} | |
$.fn.affix.Constructor = Affix | |
$.fn.affix.defaults = { | |
offset: 0 | |
} | |
/* AFFIX DATA-API | |
* ============== */ | |
$(window).on('load', function () { | |
$('[data-spy="affix"]').each(function () { | |
var $spy = $(this) | |
, data = $spy.data() | |
data.offset = data.offset || {} | |
data.offsetBottom && (data.offset.bottom = data.offsetBottom) | |
data.offsetTop && (data.offset.top = data.offsetTop) | |
$spy.affix(data) | |
}) | |
}) | |
}(window.jQuery); | |
/* ========================================================== | |
* bootstrap-alert.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#alerts | |
* ========================================================== | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* ALERT CLASS DEFINITION | |
* ====================== */ | |
var dismiss = '[data-dismiss="alert"]' | |
, Alert = function (el) { | |
$(el).on('click', dismiss, this.close) | |
} | |
Alert.prototype.close = function (e) { | |
var $this = $(this) | |
, selector = $this.attr('data-target') | |
, $parent | |
if (!selector) { | |
selector = $this.attr('href') | |
selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 | |
} | |
$parent = $(selector) | |
e && e.preventDefault() | |
$parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent()) | |
$parent.trigger(e = $.Event('close')) | |
if (e.isDefaultPrevented()) return | |
$parent.removeClass('in') | |
function removeElement() { | |
$parent | |
.trigger('closed') | |
.remove() | |
} | |
$.support.transition && $parent.hasClass('fade') ? | |
$parent.on($.support.transition.end, removeElement) : | |
removeElement() | |
} | |
/* ALERT PLUGIN DEFINITION | |
* ======================= */ | |
$.fn.alert = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('alert') | |
if (!data) $this.data('alert', (data = new Alert(this))) | |
if (typeof option == 'string') data[option].call($this) | |
}) | |
} | |
$.fn.alert.Constructor = Alert | |
/* ALERT DATA-API | |
* ============== */ | |
$(function () { | |
$('body').on('click.alert.data-api', dismiss, Alert.prototype.close) | |
}) | |
}(window.jQuery); | |
/* ============================================================ | |
* bootstrap-button.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#buttons | |
* ============================================================ | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* BUTTON PUBLIC CLASS DEFINITION | |
* ============================== */ | |
var Button = function (element, options) { | |
this.$element = $(element) | |
this.options = $.extend({}, $.fn.button.defaults, options) | |
} | |
Button.prototype.setState = function (state) { | |
var d = 'disabled' | |
, $el = this.$element | |
, data = $el.data() | |
, val = $el.is('input') ? 'val' : 'html' | |
state = state + 'Text' | |
data.resetText || $el.data('resetText', $el[val]()) | |
$el[val](data[state] || this.options[state]) | |
// push to event loop to allow forms to submit | |
setTimeout(function () { | |
state == 'loadingText' ? | |
$el.addClass(d).attr(d, d) : | |
$el.removeClass(d).removeAttr(d) | |
}, 0) | |
} | |
Button.prototype.toggle = function () { | |
var $parent = this.$element.closest('[data-toggle="buttons-radio"]') | |
$parent && $parent | |
.find('.active') | |
.removeClass('active') | |
this.$element.toggleClass('active') | |
} | |
/* BUTTON PLUGIN DEFINITION | |
* ======================== */ | |
$.fn.button = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('button') | |
, options = typeof option == 'object' && option | |
if (!data) $this.data('button', (data = new Button(this, options))) | |
if (option == 'toggle') data.toggle() | |
else if (option) data.setState(option) | |
}) | |
} | |
$.fn.button.defaults = { | |
loadingText: 'loading...' | |
} | |
$.fn.button.Constructor = Button | |
/* BUTTON DATA-API | |
* =============== */ | |
$(function () { | |
$('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) { | |
var $btn = $(e.target) | |
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') | |
$btn.button('toggle') | |
}) | |
}) | |
}(window.jQuery); | |
/* ============================================================= | |
* bootstrap-collapse.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#collapse | |
* ============================================================= | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* COLLAPSE PUBLIC CLASS DEFINITION | |
* ================================ */ | |
var Collapse = function (element, options) { | |
this.$element = $(element) | |
this.options = $.extend({}, $.fn.collapse.defaults, options) | |
if (this.options.parent) { | |
this.$parent = $(this.options.parent) | |
} | |
this.options.toggle && this.toggle() | |
} | |
Collapse.prototype = { | |
constructor: Collapse | |
, dimension: function () { | |
var hasWidth = this.$element.hasClass('width') | |
return hasWidth ? 'width' : 'height' | |
} | |
, show: function () { | |
var dimension | |
, scroll | |
, actives | |
, hasData | |
if (this.transitioning) return | |
dimension = this.dimension() | |
scroll = $.camelCase(['scroll', dimension].join('-')) | |
actives = this.$parent && this.$parent.find('> .accordion-group > .in') | |
if (actives && actives.length) { | |
hasData = actives.data('collapse') | |
if (hasData && hasData.transitioning) return | |
actives.collapse('hide') | |
hasData || actives.data('collapse', null) | |
} | |
this.$element[dimension](0) | |
this.transition('addClass', $.Event('show'), 'shown') | |
$.support.transition && this.$element[dimension](this.$element[0][scroll]) | |
} | |
, hide: function () { | |
var dimension | |
if (this.transitioning) return | |
dimension = this.dimension() | |
this.reset(this.$element[dimension]()) | |
this.transition('removeClass', $.Event('hide'), 'hidden') | |
this.$element[dimension](0) | |
} | |
, reset: function (size) { | |
var dimension = this.dimension() | |
this.$element | |
.removeClass('collapse') | |
[dimension](size || 'auto') | |
[0].offsetWidth | |
this.$element[size !== null ? 'addClass' : 'removeClass']('collapse') | |
return this | |
} | |
, transition: function (method, startEvent, completeEvent) { | |
var that = this | |
, complete = function () { | |
if (startEvent.type == 'show') that.reset() | |
that.transitioning = 0 | |
that.$element.trigger(completeEvent) | |
} | |
this.$element.trigger(startEvent) | |
if (startEvent.isDefaultPrevented()) return | |
this.transitioning = 1 | |
this.$element[method]('in') | |
$.support.transition && this.$element.hasClass('collapse') ? | |
this.$element.one($.support.transition.end, complete) : | |
complete() | |
} | |
, toggle: function () { | |
this[this.$element.hasClass('in') ? 'hide' : 'show']() | |
} | |
} | |
/* COLLAPSIBLE PLUGIN DEFINITION | |
* ============================== */ | |
$.fn.collapse = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('collapse') | |
, options = typeof option == 'object' && option | |
if (!data) $this.data('collapse', (data = new Collapse(this, options))) | |
if (typeof option == 'string') data[option]() | |
}) | |
} | |
$.fn.collapse.defaults = { | |
toggle: true | |
} | |
$.fn.collapse.Constructor = Collapse | |
/* COLLAPSIBLE DATA-API | |
* ==================== */ | |
$(function () { | |
$('body').on('click.collapse.data-api', '[data-toggle=collapse]', function (e) { | |
var $this = $(this), href | |
, target = $this.attr('data-target') | |
|| e.preventDefault() | |
|| (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 | |
, option = $(target).data('collapse') ? 'toggle' : $this.data() | |
$this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed') | |
$(target).collapse(option) | |
}) | |
}) | |
}(window.jQuery); | |
/* ========================================================== | |
* bootstrap-carousel.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#carousel | |
* ========================================================== | |
* Copyright 2012 Twitter, 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 ($) { | |
"use strict"; // jshint ;_; | |
/* CAROUSEL CLASS DEFINITION | |
* ========================= */ | |
var Carousel = function (element, options) { | |
this.$element = $(element) | |
this.options = options | |
this.options.slide && this.slide(this.options.slide) | |
this.options.pause == 'hover' && this.$element | |
.on('mouseenter', $.proxy(this.pause, this)) | |
.on('mouseleave', $.proxy(this.cycle, this)) | |
} | |
Carousel.prototype = { | |
cycle: function (e) { | |
if (!e) this.paused = false | |
this.options.interval | |
&& !this.paused | |
&& (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) | |
return this | |
} | |
, to: function (pos) { | |
var $active = this.$element.find('.item.active') | |
, children = $active.parent().children() | |
, activePos = children.index($active) | |
, that = this | |
if (pos > (children.length - 1) || pos < 0) return | |
if (this.sliding) { | |
return this.$element.one('slid', function () { | |
that.to(pos) | |
}) | |
} | |
if (activePos == pos) { | |
return this.pause().cycle() | |
} | |
return this.slide(pos > activePos ? 'next' : 'prev', $(children[pos])) | |
} | |
, pause: function (e) { | |
if (!e) this.paused = true | |
if (this.$element.find('.next, .prev').length && $.support.transition.end) { | |
this.$element.trigger($.support.transition.end) | |
this.cycle() | |
} | |
clearInterval(this.interval) | |
this.interval = null | |
return this | |
} | |
, next: function () { | |
if (this.sliding) return | |
return this.slide('next') | |
} | |
, prev: function () { | |
if (this.sliding) return | |
return this.slide('prev') | |
} | |
, slide: function (type, next) { | |
var $active = this.$element.find('.item.active') | |
, $next = next || $active[type]() | |
, isCycling = this.interval | |
, direction = type == 'next' ? 'left' : 'right' | |
, fallback = type == 'next' ? 'first' : 'last' | |
, that = this | |
, e = $.Event('slide', { | |
relatedTarget: $next[0] | |
}) | |
this.sliding = true | |
isCycling && this.pause() | |
$next = $next.length ? $next : this.$element.find('.item')[fallback]() | |
if ($next.hasClass('active')) return | |
if ($.support.transition && this.$element.hasClass('slide')) { | |
this.$element.trigger(e) | |
if (e.isDefaultPrevented()) return | |
$next.addClass(type) | |
$next[0].offsetWidth // force reflow | |
$active.addClass(direction) | |
$next.addClass(direction) | |
this.$element.one($.support.transition.end, function () { | |
$next.removeClass([type, direction].join(' ')).addClass('active') | |
$active.removeClass(['active', direction].join(' ')) | |
that.sliding = false | |
setTimeout(function () { that.$element.trigger('slid') }, 0) | |
}) | |
} else { | |
this.$element.trigger(e) | |
if (e.isDefaultPrevented()) return | |
$active.removeClass('active') | |
$next.addClass('active') | |
this.sliding = false | |
this.$element.trigger('slid') | |
} | |
isCycling && this.cycle() | |
return this | |
} | |
} | |
/* CAROUSEL PLUGIN DEFINITION | |
* ========================== */ | |
$.fn.carousel = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('carousel') | |
, options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option) | |
, action = typeof option == 'string' ? option : options.slide | |
if (!data) $this.data('carousel', (data = new Carousel(this, options))) | |
if (typeof option == 'number') data.to(option) | |
else if (action) data[action]() | |
else if (options.interval) data.cycle() | |
}) | |
} | |
$.fn.carousel.defaults = { | |
interval: 5000 | |
, pause: 'hover' | |
} | |
$.fn.carousel.Constructor = Carousel | |
/* CAROUSEL DATA-API | |
* ================= */ | |
$(function () { | |
$('body').on('click.carousel.data-api', '[data-slide]', function ( e ) { | |
var $this = $(this), href | |
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 | |
, options = !$target.data('modal') && $.extend({}, $target.data(), $this.data()) | |
$target.carousel(options) | |
e.preventDefault() | |
}) | |
}) | |
}(window.jQuery); | |
/* ============================================================= | |
* bootstrap-typeahead.js v2.1.1 | |
* http://twitter.github.com/bootstrap/javascript.html#typeahead | |
* ============================================================= | |
* Copyright 2012 Twitter, 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($){ | |
"use strict"; // jshint ;_; | |
/* TYPEAHEAD PUBLIC CLASS DEFINITION | |
* ================================= */ | |
var Typeahead = function (element, options) { | |
this.$element = $(element) | |
this.options = $.extend({}, $.fn.typeahead.defaults, options) | |
this.matcher = this.options.matcher || this.matcher | |
this.sorter = this.options.sorter || this.sorter | |
this.highlighter = this.options.highlighter || this.highlighter | |
this.updater = this.options.updater || this.updater | |
this.$menu = $(this.options.menu).appendTo('body') | |
this.source = this.options.source | |
this.shown = false | |
this.listen() | |
} | |
Typeahead.prototype = { | |
constructor: Typeahead | |
, select: function () { | |
var val = this.$menu.find('.active').attr('data-value') | |
this.$element | |
.val(this.updater(val)) | |
.change() | |
return this.hide() | |
} | |
, updater: function (item) { | |
return item | |
} | |
, show: function () { | |
var pos = $.extend({}, this.$element.offset(), { | |
height: this.$element[0].offsetHeight | |
}) | |
this.$menu.css({ | |
top: pos.top + pos.height | |
, left: pos.left | |
}) | |
this.$menu.show() | |
this.shown = true | |
return this | |
} | |
, hide: function () { | |
this.$menu.hide() | |
this.shown = false | |
return this | |
} | |
, lookup: function (event) { | |
var items | |
this.query = this.$element.val() | |
if (!this.query || this.query.length < this.options.minLength) { | |
return this.shown ? this.hide() : this | |
} | |
items = $.isFunction(this.source) ? this.source(this.query, $.proxy(this.process, this)) : this.source | |
return items ? this.process(items) : this | |
} | |
, process: function (items) { | |
var that = this | |
items = $.grep(items, function (item) { | |
return that.matcher(item) | |
}) | |
items = this.sorter(items) | |
if (!items.length) { | |
return this.shown ? this.hide() : this | |
} | |
return this.render(items.slice(0, this.options.items)).show() | |
} | |
, matcher: function (item) { | |
return ~item.toLowerCase().indexOf(this.query.toLowerCase()) | |
} | |
, sorter: function (items) { | |
var beginswith = [] | |
, caseSensitive = [] | |
, caseInsensitive = [] | |
, item | |
while (item = items.shift()) { | |
if (!item.toLowerCase().indexOf(this.query.toLowerCase())) beginswith.push(item) | |
else if (~item.indexOf(this.query)) caseSensitive.push(item) | |
else caseInsensitive.push(item) | |
} | |
return beginswith.concat(caseSensitive, caseInsensitive) | |
} | |
, highlighter: function (item) { | |
var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&') | |
return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) { | |
return '<strong>' + match + '</strong>' | |
}) | |
} | |
, render: function (items) { | |
var that = this | |
items = $(items).map(function (i, item) { | |
i = $(that.options.item).attr('data-value', item) | |
i.find('a').html(that.highlighter(item)) | |
return i[0] | |
}) | |
items.first().addClass('active') | |
this.$menu.html(items) | |
return this | |
} | |
, next: function (event) { | |
var active = this.$menu.find('.active').removeClass('active') | |
, next = active.next() | |
if (!next.length) { | |
next = $(this.$menu.find('li')[0]) | |
} | |
next.addClass('active') | |
} | |
, prev: function (event) { | |
var active = this.$menu.find('.active').removeClass('active') | |
, prev = active.prev() | |
if (!prev.length) { | |
prev = this.$menu.find('li').last() | |
} | |
prev.addClass('active') | |
} | |
, listen: function () { | |
this.$element | |
.on('blur', $.proxy(this.blur, this)) | |
.on('keypress', $.proxy(this.keypress, this)) | |
.on('keyup', $.proxy(this.keyup, this)) | |
if ($.browser.chrome || $.browser.webkit || $.browser.msie) { | |
this.$element.on('keydown', $.proxy(this.keydown, this)) | |
} | |
this.$menu | |
.on('click', $.proxy(this.click, this)) | |
.on('mouseenter', 'li', $.proxy(this.mouseenter, this)) | |
} | |
, move: function (e) { | |
if (!this.shown) return | |
switch(e.keyCode) { | |
case 9: // tab | |
case 13: // enter | |
case 27: // escape | |
e.preventDefault() | |
break | |
case 38: // up arrow | |
e.preventDefault() | |
this.prev() | |
break | |
case 40: // down arrow | |
e.preventDefault() | |
this.next() | |
break | |
} | |
e.stopPropagation() | |
} | |
, keydown: function (e) { | |
this.suppressKeyPressRepeat = !~$.inArray(e.keyCode, [40,38,9,13,27]) | |
this.move(e) | |
} | |
, keypress: function (e) { | |
if (this.suppressKeyPressRepeat) return | |
this.move(e) | |
} | |
, keyup: function (e) { | |
switch(e.keyCode) { | |
case 40: // down arrow | |
case 38: // up arrow | |
break | |
case 9: // tab | |
case 13: // enter | |
if (!this.shown) return | |
this.select() | |
break | |
case 27: // escape | |
if (!this.shown) return | |
this.hide() | |
break | |
default: | |
this.lookup() | |
} | |
e.stopPropagation() | |
e.preventDefault() | |
} | |
, blur: function (e) { | |
var that = this | |
setTimeout(function () { that.hide() }, 150) | |
} | |
, click: function (e) { | |
e.stopPropagation() | |
e.preventDefault() | |
this.select() | |
} | |
, mouseenter: function (e) { | |
this.$menu.find('.active').removeClass('active') | |
$(e.currentTarget).addClass('active') | |
} | |
} | |
/* TYPEAHEAD PLUGIN DEFINITION | |
* =========================== */ | |
$.fn.typeahead = function (option) { | |
return this.each(function () { | |
var $this = $(this) | |
, data = $this.data('typeahead') | |
, options = typeof option == 'object' && option | |
if (!data) $this.data('typeahead', (data = new Typeahead(this, options))) | |
if (typeof option == 'string') data[option]() | |
}) | |
} | |
$.fn.typeahead.defaults = { | |
source: [] | |
, items: 8 | |
, menu: '<ul class="typeahead dropdown-menu"></ul>' | |
, item: '<li><a href="#"></a></li>' | |
, minLength: 1 | |
} | |
$.fn.typeahead.Constructor = Typeahead | |
/* TYPEAHEAD DATA-API | |
* ================== */ | |
$(function () { | |
$('body').on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) { | |
var $this = $(this) | |
if ($this.data('typeahead')) return | |
e.preventDefault() | |
$this.typeahead($this.data()) | |
}) | |
}) | |
}(window.jQuery); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/*! | |
* Bootstrap v2.1.1 | |
* | |
* Copyright 2012 Twitter, Inc | |
* Licensed under the Apache License v2.0 | |
* http://www.apache.org/licenses/LICENSE-2.0 | |
* | |
* Designed and built with all the love in the world @twitter by @mdo and @fat. | |
*/ | |
.clearfix { | |
*zoom: 1; | |
} | |
.clearfix:before, | |
.clearfix:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.clearfix:after { | |
clear: both; | |
} | |
.hide-text { | |
font: 0/0 a; | |
color: transparent; | |
text-shadow: none; | |
background-color: transparent; | |
border: 0; | |
} | |
.input-block-level { | |
display: block; | |
width: 100%; | |
min-height: 30px; | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
} | |
article, | |
aside, | |
details, | |
figcaption, | |
figure, | |
footer, | |
header, | |
hgroup, | |
nav, | |
section { | |
display: block; | |
} | |
audio, | |
canvas, | |
video { | |
display: inline-block; | |
*display: inline; | |
*zoom: 1; | |
} | |
audio:not([controls]) { | |
display: none; | |
} | |
html { | |
font-size: 100%; | |
-webkit-text-size-adjust: 100%; | |
-ms-text-size-adjust: 100%; | |
} | |
a:focus { | |
outline: thin dotted #333; | |
outline: 5px auto -webkit-focus-ring-color; | |
outline-offset: -2px; | |
} | |
a:hover, | |
a:active { | |
outline: 0; | |
} | |
sub, | |
sup { | |
position: relative; | |
font-size: 75%; | |
line-height: 0; | |
vertical-align: baseline; | |
} | |
sup { | |
top: -0.5em; | |
} | |
sub { | |
bottom: -0.25em; | |
} | |
img { | |
/* Responsive images (ensure images don't scale beyond their parents) */ | |
max-width: 100%; | |
/* Part 1: Set a maxium relative to the parent */ | |
width: auto\9; | |
/* IE7-8 need help adjusting responsive images */ | |
height: auto; | |
/* Part 2: Scale the height according to the width, otherwise you get stretching */ | |
vertical-align: middle; | |
border: 0; | |
-ms-interpolation-mode: bicubic; | |
} | |
#map_canvas img { | |
max-width: none; | |
} | |
button, | |
input, | |
select, | |
textarea { | |
margin: 0; | |
font-size: 100%; | |
vertical-align: middle; | |
} | |
button, | |
input { | |
*overflow: visible; | |
line-height: normal; | |
} | |
button::-moz-focus-inner, | |
input::-moz-focus-inner { | |
padding: 0; | |
border: 0; | |
} | |
button, | |
input[type="button"], | |
input[type="reset"], | |
input[type="submit"] { | |
cursor: pointer; | |
-webkit-appearance: button; | |
} | |
input[type="search"] { | |
-webkit-box-sizing: content-box; | |
-moz-box-sizing: content-box; | |
box-sizing: content-box; | |
-webkit-appearance: textfield; | |
} | |
input[type="search"]::-webkit-search-decoration, | |
input[type="search"]::-webkit-search-cancel-button { | |
-webkit-appearance: none; | |
} | |
textarea { | |
overflow: auto; | |
vertical-align: top; | |
} | |
body { | |
margin: 0; | |
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; | |
font-size: 14px; | |
line-height: 20px; | |
color: #333333; | |
background-color: #ffffff; | |
} | |
a { | |
color: #0088cc; | |
text-decoration: none; | |
} | |
a:hover { | |
color: #005580; | |
text-decoration: underline; | |
} | |
.img-rounded { | |
-webkit-border-radius: 6px; | |
-moz-border-radius: 6px; | |
border-radius: 6px; | |
} | |
.img-polaroid { | |
padding: 4px; | |
background-color: #fff; | |
border: 1px solid #ccc; | |
border: 1px solid rgba(0, 0, 0, 0.2); | |
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); | |
-moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); | |
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); | |
} | |
.img-circle { | |
-webkit-border-radius: 500px; | |
-moz-border-radius: 500px; | |
border-radius: 500px; | |
} | |
.row { | |
margin-left: 0px; | |
*zoom: 1; | |
} | |
.row:before, | |
.row:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.row:after { | |
clear: both; | |
} | |
[class*="span"] { | |
float: left; | |
min-height: 1px; | |
margin-left: 0px; | |
} | |
.container, | |
.navbar-static-top .container, | |
.navbar-fixed-top .container, | |
.navbar-fixed-bottom .container { | |
width: 960px; | |
} | |
.span12 { | |
width: 960px; | |
} | |
.span11 { | |
width: 880px; | |
} | |
.span10 { | |
width: 800px; | |
} | |
.span9 { | |
width: 720px; | |
} | |
.span8 { | |
width: 640px; | |
} | |
.span7 { | |
width: 560px; | |
} | |
.span6 { | |
width: 480px; | |
} | |
.span5 { | |
width: 400px; | |
} | |
.span4 { | |
width: 320px; | |
} | |
.span3 { | |
width: 240px; | |
} | |
.span2 { | |
width: 160px; | |
} | |
.span1 { | |
width: 80px; | |
} | |
.offset12 { | |
margin-left: 960px; | |
} | |
.offset11 { | |
margin-left: 880px; | |
} | |
.offset10 { | |
margin-left: 800px; | |
} | |
.offset9 { | |
margin-left: 720px; | |
} | |
.offset8 { | |
margin-left: 640px; | |
} | |
.offset7 { | |
margin-left: 560px; | |
} | |
.offset6 { | |
margin-left: 480px; | |
} | |
.offset5 { | |
margin-left: 400px; | |
} | |
.offset4 { | |
margin-left: 320px; | |
} | |
.offset3 { | |
margin-left: 240px; | |
} | |
.offset2 { | |
margin-left: 160px; | |
} | |
.offset1 { | |
margin-left: 80px; | |
} | |
.row-fluid { | |
width: 100%; | |
*zoom: 1; | |
} | |
.row-fluid:before, | |
.row-fluid:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.row-fluid:after { | |
clear: both; | |
} | |
.row-fluid [class*="span"] { | |
display: block; | |
width: 100%; | |
min-height: 30px; | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
float: left; | |
margin-left: 0%; | |
*margin-left: -0.052083333333333336%; | |
} | |
.row-fluid [class*="span"]:first-child { | |
margin-left: 0; | |
} | |
.row-fluid .span12 { | |
width: 99.99999999999999%; | |
*width: 99.94791666666666%; | |
} | |
.row-fluid .span11 { | |
width: 91.66666666666666%; | |
*width: 91.61458333333333%; | |
} | |
.row-fluid .span10 { | |
width: 83.33333333333331%; | |
*width: 83.28124999999999%; | |
} | |
.row-fluid .span9 { | |
width: 74.99999999999999%; | |
*width: 74.94791666666666%; | |
} | |
.row-fluid .span8 { | |
width: 66.66666666666666%; | |
*width: 66.61458333333333%; | |
} | |
.row-fluid .span7 { | |
width: 58.33333333333333%; | |
*width: 58.28124999999999%; | |
} | |
.row-fluid .span6 { | |
width: 49.99999999999999%; | |
*width: 49.94791666666666%; | |
} | |
.row-fluid .span5 { | |
width: 41.66666666666666%; | |
*width: 41.61458333333332%; | |
} | |
.row-fluid .span4 { | |
width: 33.33333333333333%; | |
*width: 33.28124999999999%; | |
} | |
.row-fluid .span3 { | |
width: 24.999999999999996%; | |
*width: 24.947916666666664%; | |
} | |
.row-fluid .span2 { | |
width: 16.666666666666664%; | |
*width: 16.614583333333332%; | |
} | |
.row-fluid .span1 { | |
width: 8.333333333333332%; | |
*width: 8.281249999999998%; | |
} | |
.row-fluid .offset12 { | |
margin-left: 99.99999999999999%; | |
*margin-left: 99.89583333333333%; | |
} | |
.row-fluid .offset12:first-child { | |
margin-left: 99.99999999999999%; | |
*margin-left: 99.89583333333333%; | |
} | |
.row-fluid .offset11 { | |
margin-left: 91.66666666666666%; | |
*margin-left: 91.5625%; | |
} | |
.row-fluid .offset11:first-child { | |
margin-left: 91.66666666666666%; | |
*margin-left: 91.5625%; | |
} | |
.row-fluid .offset10 { | |
margin-left: 83.33333333333331%; | |
*margin-left: 83.22916666666666%; | |
} | |
.row-fluid .offset10:first-child { | |
margin-left: 83.33333333333331%; | |
*margin-left: 83.22916666666666%; | |
} | |
.row-fluid .offset9 { | |
margin-left: 74.99999999999999%; | |
*margin-left: 74.89583333333333%; | |
} | |
.row-fluid .offset9:first-child { | |
margin-left: 74.99999999999999%; | |
*margin-left: 74.89583333333333%; | |
} | |
.row-fluid .offset8 { | |
margin-left: 66.66666666666666%; | |
*margin-left: 66.5625%; | |
} | |
.row-fluid .offset8:first-child { | |
margin-left: 66.66666666666666%; | |
*margin-left: 66.5625%; | |
} | |
.row-fluid .offset7 { | |
margin-left: 58.33333333333333%; | |
*margin-left: 58.22916666666666%; | |
} | |
.row-fluid .offset7:first-child { | |
margin-left: 58.33333333333333%; | |
*margin-left: 58.22916666666666%; | |
} | |
.row-fluid .offset6 { | |
margin-left: 49.99999999999999%; | |
*margin-left: 49.89583333333332%; | |
} | |
.row-fluid .offset6:first-child { | |
margin-left: 49.99999999999999%; | |
*margin-left: 49.89583333333332%; | |
} | |
.row-fluid .offset5 { | |
margin-left: 41.66666666666666%; | |
*margin-left: 41.562499999999986%; | |
} | |
.row-fluid .offset5:first-child { | |
margin-left: 41.66666666666666%; | |
*margin-left: 41.562499999999986%; | |
} | |
.row-fluid .offset4 { | |
margin-left: 33.33333333333333%; | |
*margin-left: 33.22916666666666%; | |
} | |
.row-fluid .offset4:first-child { | |
margin-left: 33.33333333333333%; | |
*margin-left: 33.22916666666666%; | |
} | |
.row-fluid .offset3 { | |
margin-left: 24.999999999999996%; | |
*margin-left: 24.895833333333332%; | |
} | |
.row-fluid .offset3:first-child { | |
margin-left: 24.999999999999996%; | |
*margin-left: 24.895833333333332%; | |
} | |
.row-fluid .offset2 { | |
margin-left: 16.666666666666664%; | |
*margin-left: 16.5625%; | |
} | |
.row-fluid .offset2:first-child { | |
margin-left: 16.666666666666664%; | |
*margin-left: 16.5625%; | |
} | |
.row-fluid .offset1 { | |
margin-left: 8.333333333333332%; | |
*margin-left: 8.229166666666664%; | |
} | |
.row-fluid .offset1:first-child { | |
margin-left: 8.333333333333332%; | |
*margin-left: 8.229166666666664%; | |
} | |
[class*="span"].hide, | |
.row-fluid [class*="span"].hide { | |
display: none; | |
} | |
[class*="span"].pull-right, | |
.row-fluid [class*="span"].pull-right { | |
float: right; | |
} | |
.container { | |
margin-right: auto; | |
margin-left: auto; | |
*zoom: 1; | |
} | |
.container:before, | |
.container:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.container:after { | |
clear: both; | |
} | |
.container-fluid { | |
padding-right: 0px; | |
padding-left: 0px; | |
*zoom: 1; | |
} | |
.container-fluid:before, | |
.container-fluid:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.container-fluid:after { | |
clear: both; | |
} | |
p { | |
margin: 0 0 10px; | |
} | |
.lead { | |
margin-bottom: 20px; | |
font-size: 21px; | |
font-weight: 200; | |
line-height: 30px; | |
} | |
small { | |
font-size: 85%; | |
} | |
strong { | |
font-weight: bold; | |
} | |
em { | |
font-style: italic; | |
} | |
cite { | |
font-style: normal; | |
} | |
.muted { | |
color: #999999; | |
} | |
.text-warning { | |
color: #c09853; | |
} | |
.text-error { | |
color: #b94a48; | |
} | |
.text-info { | |
color: #3a87ad; | |
} | |
.text-success { | |
color: #468847; | |
} | |
h1, | |
h2, | |
h3, | |
h4, | |
h5, | |
h6 { | |
margin: 10px 0; | |
font-family: inherit; | |
font-weight: bold; | |
line-height: 1; | |
color: inherit; | |
text-rendering: optimizelegibility; | |
} | |
h1 small, | |
h2 small, | |
h3 small, | |
h4 small, | |
h5 small, | |
h6 small { | |
font-weight: normal; | |
line-height: 1; | |
color: #999999; | |
} | |
h1 { | |
font-size: 36px; | |
line-height: 40px; | |
} | |
h2 { | |
font-size: 30px; | |
line-height: 40px; | |
} | |
h3 { | |
font-size: 24px; | |
line-height: 40px; | |
} | |
h4 { | |
font-size: 18px; | |
line-height: 20px; | |
} | |
h5 { | |
font-size: 14px; | |
line-height: 20px; | |
} | |
h6 { | |
font-size: 12px; | |
line-height: 20px; | |
} | |
h1 small { | |
font-size: 24px; | |
} | |
h2 small { | |
font-size: 18px; | |
} | |
h3 small { | |
font-size: 14px; | |
} | |
h4 small { | |
font-size: 14px; | |
} | |
.page-header { | |
padding-bottom: 9px; | |
margin: 20px 0 30px; | |
border-bottom: 1px solid #eeeeee; | |
} | |
ul, | |
ol { | |
padding: 0; | |
margin: 0 0 10px 25px; | |
} | |
ul ul, | |
ul ol, | |
ol ol, | |
ol ul { | |
margin-bottom: 0; | |
} | |
li { | |
line-height: 20px; | |
} | |
ul.unstyled, | |
ol.unstyled { | |
margin-left: 0; | |
list-style: none; | |
} | |
dl { | |
margin-bottom: 20px; | |
} | |
dt, | |
dd { | |
line-height: 20px; | |
} | |
dt { | |
font-weight: bold; | |
} | |
dd { | |
margin-left: 10px; | |
} | |
.dl-horizontal { | |
*zoom: 1; | |
} | |
.dl-horizontal:before, | |
.dl-horizontal:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.dl-horizontal:after { | |
clear: both; | |
} | |
.dl-horizontal dt { | |
float: left; | |
width: 160px; | |
clear: left; | |
text-align: right; | |
overflow: hidden; | |
text-overflow: ellipsis; | |
white-space: nowrap; | |
} | |
.dl-horizontal dd { | |
margin-left: 180px; | |
} | |
hr { | |
margin: 20px 0; | |
border: 0; | |
border-top: 1px solid #eeeeee; | |
border-bottom: 1px solid #ffffff; | |
} | |
abbr[title] { | |
cursor: help; | |
border-bottom: 1px dotted #999999; | |
} | |
abbr.initialism { | |
font-size: 90%; | |
text-transform: uppercase; | |
} | |
blockquote { | |
padding: 0 0 0 15px; | |
margin: 0 0 20px; | |
border-left: 5px solid #eeeeee; | |
} | |
blockquote p { | |
margin-bottom: 0; | |
font-size: 16px; | |
font-weight: 300; | |
line-height: 25px; | |
} | |
blockquote small { | |
display: block; | |
line-height: 20px; | |
color: #999999; | |
} | |
blockquote small:before { | |
content: '\2014 \00A0'; | |
} | |
blockquote.pull-right { | |
float: right; | |
padding-right: 15px; | |
padding-left: 0; | |
border-right: 5px solid #eeeeee; | |
border-left: 0; | |
} | |
blockquote.pull-right p, | |
blockquote.pull-right small { | |
text-align: right; | |
} | |
blockquote.pull-right small:before { | |
content: ''; | |
} | |
blockquote.pull-right small:after { | |
content: '\00A0 \2014'; | |
} | |
q:before, | |
q:after, | |
blockquote:before, | |
blockquote:after { | |
content: ""; | |
} | |
address { | |
display: block; | |
margin-bottom: 20px; | |
font-style: normal; | |
line-height: 20px; | |
} | |
code, | |
pre { | |
padding: 0 3px 2px; | |
font-family: Monaco, Menlo, Consolas, "Courier New", monospace; | |
font-size: 12px; | |
color: #333333; | |
-webkit-border-radius: 3px; | |
-moz-border-radius: 3px; | |
border-radius: 3px; | |
} | |
code { | |
padding: 2px 4px; | |
color: #d14; | |
background-color: #f7f7f9; | |
border: 1px solid #e1e1e8; | |
} | |
pre { | |
display: block; | |
padding: 9.5px; | |
margin: 0 0 10px; | |
font-size: 13px; | |
line-height: 20px; | |
word-break: break-all; | |
word-wrap: break-word; | |
white-space: pre; | |
white-space: pre-wrap; | |
background-color: #f5f5f5; | |
border: 1px solid #ccc; | |
border: 1px solid rgba(0, 0, 0, 0.15); | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
} | |
pre.prettyprint { | |
margin-bottom: 20px; | |
} | |
pre code { | |
padding: 0; | |
color: inherit; | |
background-color: transparent; | |
border: 0; | |
} | |
.pre-scrollable { | |
max-height: 340px; | |
overflow-y: scroll; | |
} | |
.label, | |
.badge { | |
font-size: 11.844px; | |
font-weight: bold; | |
line-height: 14px; | |
color: #ffffff; | |
vertical-align: baseline; | |
white-space: nowrap; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #999999; | |
} | |
.label { | |
padding: 1px 4px 2px; | |
-webkit-border-radius: 3px; | |
-moz-border-radius: 3px; | |
border-radius: 3px; | |
} | |
.badge { | |
padding: 1px 9px 2px; | |
-webkit-border-radius: 9px; | |
-moz-border-radius: 9px; | |
border-radius: 9px; | |
} | |
a.label:hover, | |
a.badge:hover { | |
color: #ffffff; | |
text-decoration: none; | |
cursor: pointer; | |
} | |
.label-important, | |
.badge-important { | |
background-color: #b94a48; | |
} | |
.label-important[href], | |
.badge-important[href] { | |
background-color: #953b39; | |
} | |
.label-warning, | |
.badge-warning { | |
background-color: #f89406; | |
} | |
.label-warning[href], | |
.badge-warning[href] { | |
background-color: #c67605; | |
} | |
.label-success, | |
.badge-success { | |
background-color: #468847; | |
} | |
.label-success[href], | |
.badge-success[href] { | |
background-color: #356635; | |
} | |
.label-info, | |
.badge-info { | |
background-color: #3a87ad; | |
} | |
.label-info[href], | |
.badge-info[href] { | |
background-color: #2d6987; | |
} | |
.label-inverse, | |
.badge-inverse { | |
background-color: #333333; | |
} | |
.label-inverse[href], | |
.badge-inverse[href] { | |
background-color: #1a1a1a; | |
} | |
.btn .label, | |
.btn .badge { | |
position: relative; | |
top: -1px; | |
} | |
.btn-mini .label, | |
.btn-mini .badge { | |
top: 0; | |
} | |
table { | |
max-width: 100%; | |
background-color: transparent; | |
border-collapse: collapse; | |
border-spacing: 0; | |
} | |
.table { | |
width: 100%; | |
margin-bottom: 20px; | |
} | |
.table th, | |
.table td { | |
padding: 8px; | |
line-height: 20px; | |
text-align: left; | |
vertical-align: top; | |
border-top: 1px solid #dddddd; | |
} | |
.table th { | |
font-weight: bold; | |
} | |
.table thead th { | |
vertical-align: bottom; | |
} | |
.table caption + thead tr:first-child th, | |
.table caption + thead tr:first-child td, | |
.table colgroup + thead tr:first-child th, | |
.table colgroup + thead tr:first-child td, | |
.table thead:first-child tr:first-child th, | |
.table thead:first-child tr:first-child td { | |
border-top: 0; | |
} | |
.table tbody + tbody { | |
border-top: 2px solid #dddddd; | |
} | |
.table-condensed th, | |
.table-condensed td { | |
padding: 4px 5px; | |
} | |
.table-bordered { | |
border: 1px solid #dddddd; | |
border-collapse: separate; | |
*border-collapse: collapse; | |
border-left: 0; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
} | |
.table-bordered th, | |
.table-bordered td { | |
border-left: 1px solid #dddddd; | |
} | |
.table-bordered caption + thead tr:first-child th, | |
.table-bordered caption + tbody tr:first-child th, | |
.table-bordered caption + tbody tr:first-child td, | |
.table-bordered colgroup + thead tr:first-child th, | |
.table-bordered colgroup + tbody tr:first-child th, | |
.table-bordered colgroup + tbody tr:first-child td, | |
.table-bordered thead:first-child tr:first-child th, | |
.table-bordered tbody:first-child tr:first-child th, | |
.table-bordered tbody:first-child tr:first-child td { | |
border-top: 0; | |
} | |
.table-bordered thead:first-child tr:first-child th:first-child, | |
.table-bordered tbody:first-child tr:first-child td:first-child { | |
-webkit-border-top-left-radius: 4px; | |
border-top-left-radius: 4px; | |
-moz-border-radius-topleft: 4px; | |
} | |
.table-bordered thead:first-child tr:first-child th:last-child, | |
.table-bordered tbody:first-child tr:first-child td:last-child { | |
-webkit-border-top-right-radius: 4px; | |
border-top-right-radius: 4px; | |
-moz-border-radius-topright: 4px; | |
} | |
.table-bordered thead:last-child tr:last-child th:first-child, | |
.table-bordered tbody:last-child tr:last-child td:first-child, | |
.table-bordered tfoot:last-child tr:last-child td:first-child { | |
-webkit-border-radius: 0 0 0 4px; | |
-moz-border-radius: 0 0 0 4px; | |
border-radius: 0 0 0 4px; | |
-webkit-border-bottom-left-radius: 4px; | |
border-bottom-left-radius: 4px; | |
-moz-border-radius-bottomleft: 4px; | |
} | |
.table-bordered thead:last-child tr:last-child th:last-child, | |
.table-bordered tbody:last-child tr:last-child td:last-child, | |
.table-bordered tfoot:last-child tr:last-child td:last-child { | |
-webkit-border-bottom-right-radius: 4px; | |
border-bottom-right-radius: 4px; | |
-moz-border-radius-bottomright: 4px; | |
} | |
.table-bordered caption + thead tr:first-child th:first-child, | |
.table-bordered caption + tbody tr:first-child td:first-child, | |
.table-bordered colgroup + thead tr:first-child th:first-child, | |
.table-bordered colgroup + tbody tr:first-child td:first-child { | |
-webkit-border-top-left-radius: 4px; | |
border-top-left-radius: 4px; | |
-moz-border-radius-topleft: 4px; | |
} | |
.table-bordered caption + thead tr:first-child th:last-child, | |
.table-bordered caption + tbody tr:first-child td:last-child, | |
.table-bordered colgroup + thead tr:first-child th:last-child, | |
.table-bordered colgroup + tbody tr:first-child td:last-child { | |
-webkit-border-top-right-radius: 4px; | |
border-top-right-radius: 4px; | |
-moz-border-radius-topleft: 4px; | |
} | |
.table-striped tbody tr:nth-child(odd) td, | |
.table-striped tbody tr:nth-child(odd) th { | |
background-color: #f9f9f9; | |
} | |
.table-hover tbody tr:hover td, | |
.table-hover tbody tr:hover th { | |
background-color: #f5f5f5; | |
} | |
table [class*=span], | |
.row-fluid table [class*=span] { | |
display: table-cell; | |
float: none; | |
margin-left: 0; | |
} | |
.table .span1 { | |
float: none; | |
width: 64px; | |
margin-left: 0; | |
} | |
.table .span2 { | |
float: none; | |
width: 144px; | |
margin-left: 0; | |
} | |
.table .span3 { | |
float: none; | |
width: 224px; | |
margin-left: 0; | |
} | |
.table .span4 { | |
float: none; | |
width: 304px; | |
margin-left: 0; | |
} | |
.table .span5 { | |
float: none; | |
width: 384px; | |
margin-left: 0; | |
} | |
.table .span6 { | |
float: none; | |
width: 464px; | |
margin-left: 0; | |
} | |
.table .span7 { | |
float: none; | |
width: 544px; | |
margin-left: 0; | |
} | |
.table .span8 { | |
float: none; | |
width: 624px; | |
margin-left: 0; | |
} | |
.table .span9 { | |
float: none; | |
width: 704px; | |
margin-left: 0; | |
} | |
.table .span10 { | |
float: none; | |
width: 784px; | |
margin-left: 0; | |
} | |
.table .span11 { | |
float: none; | |
width: 864px; | |
margin-left: 0; | |
} | |
.table .span12 { | |
float: none; | |
width: 944px; | |
margin-left: 0; | |
} | |
.table .span13 { | |
float: none; | |
width: 1024px; | |
margin-left: 0; | |
} | |
.table .span14 { | |
float: none; | |
width: 1104px; | |
margin-left: 0; | |
} | |
.table .span15 { | |
float: none; | |
width: 1184px; | |
margin-left: 0; | |
} | |
.table .span16 { | |
float: none; | |
width: 1264px; | |
margin-left: 0; | |
} | |
.table .span17 { | |
float: none; | |
width: 1344px; | |
margin-left: 0; | |
} | |
.table .span18 { | |
float: none; | |
width: 1424px; | |
margin-left: 0; | |
} | |
.table .span19 { | |
float: none; | |
width: 1504px; | |
margin-left: 0; | |
} | |
.table .span20 { | |
float: none; | |
width: 1584px; | |
margin-left: 0; | |
} | |
.table .span21 { | |
float: none; | |
width: 1664px; | |
margin-left: 0; | |
} | |
.table .span22 { | |
float: none; | |
width: 1744px; | |
margin-left: 0; | |
} | |
.table .span23 { | |
float: none; | |
width: 1824px; | |
margin-left: 0; | |
} | |
.table .span24 { | |
float: none; | |
width: 1904px; | |
margin-left: 0; | |
} | |
.table tbody tr.success td { | |
background-color: #dff0d8; | |
} | |
.table tbody tr.error td { | |
background-color: #f2dede; | |
} | |
.table tbody tr.warning td { | |
background-color: #fcf8e3; | |
} | |
.table tbody tr.info td { | |
background-color: #d9edf7; | |
} | |
.table-hover tbody tr.success:hover td { | |
background-color: #d0e9c6; | |
} | |
.table-hover tbody tr.error:hover td { | |
background-color: #ebcccc; | |
} | |
.table-hover tbody tr.warning:hover td { | |
background-color: #faf2cc; | |
} | |
.table-hover tbody tr.info:hover td { | |
background-color: #c4e3f3; | |
} | |
form { | |
margin: 0 0 20px; | |
} | |
fieldset { | |
padding: 0; | |
margin: 0; | |
border: 0; | |
} | |
legend { | |
display: block; | |
width: 100%; | |
padding: 0; | |
margin-bottom: 20px; | |
font-size: 21px; | |
line-height: 40px; | |
color: #333333; | |
border: 0; | |
border-bottom: 1px solid #e5e5e5; | |
} | |
legend small { | |
font-size: 15px; | |
color: #999999; | |
} | |
label, | |
input, | |
button, | |
select, | |
textarea { | |
font-size: 14px; | |
font-weight: normal; | |
line-height: 20px; | |
} | |
input, | |
button, | |
select, | |
textarea { | |
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; | |
} | |
label { | |
display: block; | |
margin-bottom: 5px; | |
} | |
select, | |
textarea, | |
input[type="text"], | |
input[type="password"], | |
input[type="datetime"], | |
input[type="datetime-local"], | |
input[type="date"], | |
input[type="month"], | |
input[type="time"], | |
input[type="week"], | |
input[type="number"], | |
input[type="email"], | |
input[type="url"], | |
input[type="search"], | |
input[type="tel"], | |
input[type="color"], | |
.uneditable-input { | |
display: inline-block; | |
height: 20px; | |
padding: 4px 6px; | |
margin-bottom: 9px; | |
font-size: 14px; | |
line-height: 20px; | |
color: #555555; | |
-webkit-border-radius: 3px; | |
-moz-border-radius: 3px; | |
border-radius: 3px; | |
} | |
input, | |
textarea, | |
.uneditable-input { | |
width: 206px; | |
} | |
textarea { | |
height: auto; | |
} | |
textarea, | |
input[type="text"], | |
input[type="password"], | |
input[type="datetime"], | |
input[type="datetime-local"], | |
input[type="date"], | |
input[type="month"], | |
input[type="time"], | |
input[type="week"], | |
input[type="number"], | |
input[type="email"], | |
input[type="url"], | |
input[type="search"], | |
input[type="tel"], | |
input[type="color"], | |
.uneditable-input { | |
background-color: #ffffff; | |
border: 1px solid #cccccc; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
-webkit-transition: border linear .2s, box-shadow linear .2s; | |
-moz-transition: border linear .2s, box-shadow linear .2s; | |
-o-transition: border linear .2s, box-shadow linear .2s; | |
transition: border linear .2s, box-shadow linear .2s; | |
} | |
textarea:focus, | |
input[type="text"]:focus, | |
input[type="password"]:focus, | |
input[type="datetime"]:focus, | |
input[type="datetime-local"]:focus, | |
input[type="date"]:focus, | |
input[type="month"]:focus, | |
input[type="time"]:focus, | |
input[type="week"]:focus, | |
input[type="number"]:focus, | |
input[type="email"]:focus, | |
input[type="url"]:focus, | |
input[type="search"]:focus, | |
input[type="tel"]:focus, | |
input[type="color"]:focus, | |
.uneditable-input:focus { | |
border-color: rgba(82, 168, 236, 0.8); | |
outline: 0; | |
outline: thin dotted \9; | |
/* IE6-9 */ | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6); | |
} | |
input[type="radio"], | |
input[type="checkbox"] { | |
margin: 4px 0 0; | |
*margin-top: 0; | |
/* IE7 */ | |
margin-top: 1px \9; | |
/* IE8-9 */ | |
line-height: normal; | |
cursor: pointer; | |
} | |
input[type="file"], | |
input[type="image"], | |
input[type="submit"], | |
input[type="reset"], | |
input[type="button"], | |
input[type="radio"], | |
input[type="checkbox"] { | |
width: auto; | |
} | |
select, | |
input[type="file"] { | |
height: 30px; | |
/* In IE7, the height of the select element cannot be changed by height, only font-size */ | |
*margin-top: 4px; | |
/* For IE7, add top margin to align select with labels */ | |
line-height: 30px; | |
} | |
select { | |
width: 220px; | |
border: 1px solid #cccccc; | |
background-color: #ffffff; | |
} | |
select[multiple], | |
select[size] { | |
height: auto; | |
} | |
select:focus, | |
input[type="file"]:focus, | |
input[type="radio"]:focus, | |
input[type="checkbox"]:focus { | |
outline: thin dotted #333; | |
outline: 5px auto -webkit-focus-ring-color; | |
outline-offset: -2px; | |
} | |
.uneditable-input, | |
.uneditable-textarea { | |
color: #999999; | |
background-color: #fcfcfc; | |
border-color: #cccccc; | |
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); | |
-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); | |
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025); | |
cursor: not-allowed; | |
} | |
.uneditable-input { | |
overflow: hidden; | |
white-space: nowrap; | |
} | |
.uneditable-textarea { | |
width: auto; | |
height: auto; | |
} | |
input:-moz-placeholder, | |
textarea:-moz-placeholder { | |
color: #999999; | |
} | |
input:-ms-input-placeholder, | |
textarea:-ms-input-placeholder { | |
color: #999999; | |
} | |
input::-webkit-input-placeholder, | |
textarea::-webkit-input-placeholder { | |
color: #999999; | |
} | |
.radio, | |
.checkbox { | |
min-height: 18px; | |
padding-left: 18px; | |
} | |
.radio input[type="radio"], | |
.checkbox input[type="checkbox"] { | |
float: left; | |
margin-left: -18px; | |
} | |
.controls > .radio:first-child, | |
.controls > .checkbox:first-child { | |
padding-top: 5px; | |
} | |
.radio.inline, | |
.checkbox.inline { | |
display: inline-block; | |
padding-top: 5px; | |
margin-bottom: 0; | |
vertical-align: middle; | |
} | |
.radio.inline + .radio.inline, | |
.checkbox.inline + .checkbox.inline { | |
margin-left: 10px; | |
} | |
.input-mini { | |
width: 60px; | |
} | |
.input-small { | |
width: 90px; | |
} | |
.input-medium { | |
width: 150px; | |
} | |
.input-large { | |
width: 210px; | |
} | |
.input-xlarge { | |
width: 270px; | |
} | |
.input-xxlarge { | |
width: 530px; | |
} | |
input[class*="span"], | |
select[class*="span"], | |
textarea[class*="span"], | |
.uneditable-input[class*="span"], | |
.row-fluid input[class*="span"], | |
.row-fluid select[class*="span"], | |
.row-fluid textarea[class*="span"], | |
.row-fluid .uneditable-input[class*="span"] { | |
float: none; | |
margin-left: 0; | |
} | |
.input-append input[class*="span"], | |
.input-append .uneditable-input[class*="span"], | |
.input-prepend input[class*="span"], | |
.input-prepend .uneditable-input[class*="span"], | |
.row-fluid input[class*="span"], | |
.row-fluid select[class*="span"], | |
.row-fluid textarea[class*="span"], | |
.row-fluid .uneditable-input[class*="span"], | |
.row-fluid .input-prepend [class*="span"], | |
.row-fluid .input-append [class*="span"] { | |
display: inline-block; | |
} | |
input, | |
textarea, | |
.uneditable-input { | |
margin-left: 0; | |
} | |
.controls-row [class*="span"] + [class*="span"] { | |
margin-left: 0px; | |
} | |
input.span12, textarea.span12, .uneditable-input.span12 { | |
width: 946px; | |
} | |
input.span11, textarea.span11, .uneditable-input.span11 { | |
width: 866px; | |
} | |
input.span10, textarea.span10, .uneditable-input.span10 { | |
width: 786px; | |
} | |
input.span9, textarea.span9, .uneditable-input.span9 { | |
width: 706px; | |
} | |
input.span8, textarea.span8, .uneditable-input.span8 { | |
width: 626px; | |
} | |
input.span7, textarea.span7, .uneditable-input.span7 { | |
width: 546px; | |
} | |
input.span6, textarea.span6, .uneditable-input.span6 { | |
width: 466px; | |
} | |
input.span5, textarea.span5, .uneditable-input.span5 { | |
width: 386px; | |
} | |
input.span4, textarea.span4, .uneditable-input.span4 { | |
width: 306px; | |
} | |
input.span3, textarea.span3, .uneditable-input.span3 { | |
width: 226px; | |
} | |
input.span2, textarea.span2, .uneditable-input.span2 { | |
width: 146px; | |
} | |
input.span1, textarea.span1, .uneditable-input.span1 { | |
width: 66px; | |
} | |
.controls-row { | |
*zoom: 1; | |
} | |
.controls-row:before, | |
.controls-row:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.controls-row:after { | |
clear: both; | |
} | |
.controls-row [class*="span"] { | |
float: left; | |
} | |
input[disabled], | |
select[disabled], | |
textarea[disabled], | |
input[readonly], | |
select[readonly], | |
textarea[readonly] { | |
cursor: not-allowed; | |
background-color: #eeeeee; | |
} | |
input[type="radio"][disabled], | |
input[type="checkbox"][disabled], | |
input[type="radio"][readonly], | |
input[type="checkbox"][readonly] { | |
background-color: transparent; | |
} | |
.control-group.warning > label, | |
.control-group.warning .help-block, | |
.control-group.warning .help-inline { | |
color: #c09853; | |
} | |
.control-group.warning .checkbox, | |
.control-group.warning .radio, | |
.control-group.warning input, | |
.control-group.warning select, | |
.control-group.warning textarea { | |
color: #c09853; | |
} | |
.control-group.warning input, | |
.control-group.warning select, | |
.control-group.warning textarea { | |
border-color: #c09853; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
} | |
.control-group.warning input:focus, | |
.control-group.warning select:focus, | |
.control-group.warning textarea:focus { | |
border-color: #a47e3c; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; | |
} | |
.control-group.warning .input-prepend .add-on, | |
.control-group.warning .input-append .add-on { | |
color: #c09853; | |
background-color: #fcf8e3; | |
border-color: #c09853; | |
} | |
.control-group.error > label, | |
.control-group.error .help-block, | |
.control-group.error .help-inline { | |
color: #b94a48; | |
} | |
.control-group.error .checkbox, | |
.control-group.error .radio, | |
.control-group.error input, | |
.control-group.error select, | |
.control-group.error textarea { | |
color: #b94a48; | |
} | |
.control-group.error input, | |
.control-group.error select, | |
.control-group.error textarea { | |
border-color: #b94a48; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
} | |
.control-group.error input:focus, | |
.control-group.error select:focus, | |
.control-group.error textarea:focus { | |
border-color: #953b39; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; | |
} | |
.control-group.error .input-prepend .add-on, | |
.control-group.error .input-append .add-on { | |
color: #b94a48; | |
background-color: #f2dede; | |
border-color: #b94a48; | |
} | |
.control-group.success > label, | |
.control-group.success .help-block, | |
.control-group.success .help-inline { | |
color: #468847; | |
} | |
.control-group.success .checkbox, | |
.control-group.success .radio, | |
.control-group.success input, | |
.control-group.success select, | |
.control-group.success textarea { | |
color: #468847; | |
} | |
.control-group.success input, | |
.control-group.success select, | |
.control-group.success textarea { | |
border-color: #468847; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
} | |
.control-group.success input:focus, | |
.control-group.success select:focus, | |
.control-group.success textarea:focus { | |
border-color: #356635; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; | |
} | |
.control-group.success .input-prepend .add-on, | |
.control-group.success .input-append .add-on { | |
color: #468847; | |
background-color: #dff0d8; | |
border-color: #468847; | |
} | |
.control-group.info > label, | |
.control-group.info .help-block, | |
.control-group.info .help-inline { | |
color: #3a87ad; | |
} | |
.control-group.info .checkbox, | |
.control-group.info .radio, | |
.control-group.info input, | |
.control-group.info select, | |
.control-group.info textarea { | |
color: #3a87ad; | |
} | |
.control-group.info input, | |
.control-group.info select, | |
.control-group.info textarea { | |
border-color: #3a87ad; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); | |
} | |
.control-group.info input:focus, | |
.control-group.info select:focus, | |
.control-group.info textarea:focus { | |
border-color: #2d6987; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3; | |
} | |
.control-group.info .input-prepend .add-on, | |
.control-group.info .input-append .add-on { | |
color: #3a87ad; | |
background-color: #d9edf7; | |
border-color: #3a87ad; | |
} | |
input:focus:required:invalid, | |
textarea:focus:required:invalid, | |
select:focus:required:invalid { | |
color: #b94a48; | |
border-color: #ee5f5b; | |
} | |
input:focus:required:invalid:focus, | |
textarea:focus:required:invalid:focus, | |
select:focus:required:invalid:focus { | |
border-color: #e9322d; | |
-webkit-box-shadow: 0 0 6px #f8b9b7; | |
-moz-box-shadow: 0 0 6px #f8b9b7; | |
box-shadow: 0 0 6px #f8b9b7; | |
} | |
.form-actions { | |
padding: 19px 20px 20px; | |
margin-top: 20px; | |
margin-bottom: 20px; | |
background-color: #f5f5f5; | |
border-top: 1px solid #e5e5e5; | |
*zoom: 1; | |
} | |
.form-actions:before, | |
.form-actions:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.form-actions:after { | |
clear: both; | |
} | |
.help-block, | |
.help-inline { | |
color: #595959; | |
} | |
.help-block { | |
display: block; | |
margin-bottom: 10px; | |
} | |
.help-inline { | |
display: inline-block; | |
*display: inline; | |
/* IE7 inline-block hack */ | |
*zoom: 1; | |
vertical-align: middle; | |
padding-left: 5px; | |
} | |
.input-append, | |
.input-prepend { | |
margin-bottom: 5px; | |
font-size: 0; | |
white-space: nowrap; | |
} | |
.input-append input, | |
.input-prepend input, | |
.input-append select, | |
.input-prepend select, | |
.input-append .uneditable-input, | |
.input-prepend .uneditable-input { | |
position: relative; | |
margin-bottom: 0; | |
*margin-left: 0; | |
font-size: 14px; | |
vertical-align: top; | |
-webkit-border-radius: 0 3px 3px 0; | |
-moz-border-radius: 0 3px 3px 0; | |
border-radius: 0 3px 3px 0; | |
} | |
.input-append input:focus, | |
.input-prepend input:focus, | |
.input-append select:focus, | |
.input-prepend select:focus, | |
.input-append .uneditable-input:focus, | |
.input-prepend .uneditable-input:focus { | |
z-index: 2; | |
} | |
.input-append .add-on, | |
.input-prepend .add-on { | |
display: inline-block; | |
width: auto; | |
height: 20px; | |
min-width: 16px; | |
padding: 4px 5px; | |
font-size: 14px; | |
font-weight: normal; | |
line-height: 20px; | |
text-align: center; | |
text-shadow: 0 1px 0 #ffffff; | |
background-color: #eeeeee; | |
border: 1px solid #ccc; | |
} | |
.input-append .add-on, | |
.input-prepend .add-on, | |
.input-append .btn, | |
.input-prepend .btn { | |
vertical-align: top; | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.input-append .active, | |
.input-prepend .active { | |
background-color: #a9dba9; | |
border-color: #46a546; | |
} | |
.input-prepend .add-on, | |
.input-prepend .btn { | |
margin-right: -1px; | |
} | |
.input-prepend .add-on:first-child, | |
.input-prepend .btn:first-child { | |
-webkit-border-radius: 3px 0 0 3px; | |
-moz-border-radius: 3px 0 0 3px; | |
border-radius: 3px 0 0 3px; | |
} | |
.input-append input, | |
.input-append select, | |
.input-append .uneditable-input { | |
-webkit-border-radius: 3px 0 0 3px; | |
-moz-border-radius: 3px 0 0 3px; | |
border-radius: 3px 0 0 3px; | |
} | |
.input-append .add-on, | |
.input-append .btn { | |
margin-left: -1px; | |
} | |
.input-append .add-on:last-child, | |
.input-append .btn:last-child { | |
-webkit-border-radius: 0 3px 3px 0; | |
-moz-border-radius: 0 3px 3px 0; | |
border-radius: 0 3px 3px 0; | |
} | |
.input-prepend.input-append input, | |
.input-prepend.input-append select, | |
.input-prepend.input-append .uneditable-input { | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.input-prepend.input-append .add-on:first-child, | |
.input-prepend.input-append .btn:first-child { | |
margin-right: -1px; | |
-webkit-border-radius: 3px 0 0 3px; | |
-moz-border-radius: 3px 0 0 3px; | |
border-radius: 3px 0 0 3px; | |
} | |
.input-prepend.input-append .add-on:last-child, | |
.input-prepend.input-append .btn:last-child { | |
margin-left: -1px; | |
-webkit-border-radius: 0 3px 3px 0; | |
-moz-border-radius: 0 3px 3px 0; | |
border-radius: 0 3px 3px 0; | |
} | |
input.search-query { | |
padding-right: 14px; | |
padding-right: 4px \9; | |
padding-left: 14px; | |
padding-left: 4px \9; | |
/* IE7-8 doesn't have border-radius, so don't indent the padding */ | |
margin-bottom: 0; | |
-webkit-border-radius: 15px; | |
-moz-border-radius: 15px; | |
border-radius: 15px; | |
} | |
/* Allow for input prepend/append in search forms */ | |
.form-search .input-append .search-query, | |
.form-search .input-prepend .search-query { | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.form-search .input-append .search-query { | |
-webkit-border-radius: 14px 0 0 14px; | |
-moz-border-radius: 14px 0 0 14px; | |
border-radius: 14px 0 0 14px; | |
} | |
.form-search .input-append .btn { | |
-webkit-border-radius: 0 14px 14px 0; | |
-moz-border-radius: 0 14px 14px 0; | |
border-radius: 0 14px 14px 0; | |
} | |
.form-search .input-prepend .search-query { | |
-webkit-border-radius: 0 14px 14px 0; | |
-moz-border-radius: 0 14px 14px 0; | |
border-radius: 0 14px 14px 0; | |
} | |
.form-search .input-prepend .btn { | |
-webkit-border-radius: 14px 0 0 14px; | |
-moz-border-radius: 14px 0 0 14px; | |
border-radius: 14px 0 0 14px; | |
} | |
.form-search input, | |
.form-inline input, | |
.form-horizontal input, | |
.form-search textarea, | |
.form-inline textarea, | |
.form-horizontal textarea, | |
.form-search select, | |
.form-inline select, | |
.form-horizontal select, | |
.form-search .help-inline, | |
.form-inline .help-inline, | |
.form-horizontal .help-inline, | |
.form-search .uneditable-input, | |
.form-inline .uneditable-input, | |
.form-horizontal .uneditable-input, | |
.form-search .input-prepend, | |
.form-inline .input-prepend, | |
.form-horizontal .input-prepend, | |
.form-search .input-append, | |
.form-inline .input-append, | |
.form-horizontal .input-append { | |
display: inline-block; | |
*display: inline; | |
/* IE7 inline-block hack */ | |
*zoom: 1; | |
margin-bottom: 0; | |
vertical-align: middle; | |
} | |
.form-search .hide, | |
.form-inline .hide, | |
.form-horizontal .hide { | |
display: none; | |
} | |
.form-search label, | |
.form-inline label, | |
.form-search .btn-group, | |
.form-inline .btn-group { | |
display: inline-block; | |
} | |
.form-search .input-append, | |
.form-inline .input-append, | |
.form-search .input-prepend, | |
.form-inline .input-prepend { | |
margin-bottom: 0; | |
} | |
.form-search .radio, | |
.form-search .checkbox, | |
.form-inline .radio, | |
.form-inline .checkbox { | |
padding-left: 0; | |
margin-bottom: 0; | |
vertical-align: middle; | |
} | |
.form-search .radio input[type="radio"], | |
.form-search .checkbox input[type="checkbox"], | |
.form-inline .radio input[type="radio"], | |
.form-inline .checkbox input[type="checkbox"] { | |
float: left; | |
margin-right: 3px; | |
margin-left: 0; | |
} | |
.control-group { | |
margin-bottom: 10px; | |
} | |
legend + .control-group { | |
margin-top: 20px; | |
-webkit-margin-top-collapse: separate; | |
} | |
.form-horizontal .control-group { | |
margin-bottom: 20px; | |
*zoom: 1; | |
} | |
.form-horizontal .control-group:before, | |
.form-horizontal .control-group:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.form-horizontal .control-group:after { | |
clear: both; | |
} | |
.form-horizontal .control-label { | |
float: left; | |
width: 160px; | |
padding-top: 5px; | |
text-align: right; | |
} | |
.form-horizontal .controls { | |
*display: inline-block; | |
*padding-left: 20px; | |
margin-left: 180px; | |
*margin-left: 0; | |
} | |
.form-horizontal .controls:first-child { | |
*padding-left: 180px; | |
} | |
.form-horizontal .help-block { | |
margin-bottom: 0; | |
} | |
.form-horizontal input + .help-block, | |
.form-horizontal select + .help-block, | |
.form-horizontal textarea + .help-block { | |
margin-top: 10px; | |
} | |
.form-horizontal .form-actions { | |
padding-left: 180px; | |
} | |
.btn { | |
display: inline-block; | |
*display: inline; | |
/* IE7 inline-block hack */ | |
*zoom: 1; | |
padding: 4px 14px; | |
margin-bottom: 0; | |
font-size: 14px; | |
line-height: 20px; | |
*line-height: 20px; | |
text-align: center; | |
vertical-align: middle; | |
cursor: pointer; | |
color: #333333; | |
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75); | |
background-color: #f5f5f5; | |
background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6)); | |
background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6); | |
background-image: -o-linear-gradient(top, #ffffff, #e6e6e6); | |
background-image: linear-gradient(to bottom, #ffffff, #e6e6e6); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', GradientType=0); | |
border-color: #e6e6e6 #e6e6e6 #bfbfbf; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #e6e6e6; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
border: 1px solid #bbbbbb; | |
*border: 0; | |
border-bottom-color: #a2a2a2; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
*margin-left: .3em; | |
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); | |
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); | |
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); | |
} | |
.btn:hover, | |
.btn:active, | |
.btn.active, | |
.btn.disabled, | |
.btn[disabled] { | |
color: #333333; | |
background-color: #e6e6e6; | |
*background-color: #d9d9d9; | |
} | |
.btn:active, | |
.btn.active { | |
background-color: #cccccc \9; | |
} | |
.btn:first-child { | |
*margin-left: 0; | |
} | |
.btn:hover { | |
color: #333333; | |
text-decoration: none; | |
background-color: #e6e6e6; | |
*background-color: #d9d9d9; | |
/* Buttons in IE7 don't get borders, so darken on hover */ | |
background-position: 0 -15px; | |
-webkit-transition: background-position 0.1s linear; | |
-moz-transition: background-position 0.1s linear; | |
-o-transition: background-position 0.1s linear; | |
transition: background-position 0.1s linear; | |
} | |
.btn:focus { | |
outline: thin dotted #333; | |
outline: 5px auto -webkit-focus-ring-color; | |
outline-offset: -2px; | |
} | |
.btn.active, | |
.btn:active { | |
background-color: #e6e6e6; | |
background-color: #d9d9d9 \9; | |
background-image: none; | |
outline: 0; | |
-webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); | |
-moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); | |
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); | |
} | |
.btn.disabled, | |
.btn[disabled] { | |
cursor: default; | |
background-color: #e6e6e6; | |
background-image: none; | |
opacity: 0.65; | |
filter: alpha(opacity=65); | |
-webkit-box-shadow: none; | |
-moz-box-shadow: none; | |
box-shadow: none; | |
} | |
.btn-large { | |
padding: 9px 14px; | |
font-size: 16px; | |
line-height: normal; | |
-webkit-border-radius: 5px; | |
-moz-border-radius: 5px; | |
border-radius: 5px; | |
} | |
.btn-large [class^="icon-"] { | |
margin-top: 2px; | |
} | |
.btn-small { | |
padding: 3px 9px; | |
font-size: 12px; | |
line-height: 18px; | |
} | |
.btn-small [class^="icon-"] { | |
margin-top: 0; | |
} | |
.btn-mini { | |
padding: 2px 6px; | |
font-size: 11px; | |
line-height: 17px; | |
} | |
.btn-block { | |
display: block; | |
width: 100%; | |
padding-left: 0; | |
padding-right: 0; | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
} | |
.btn-block + .btn-block { | |
margin-top: 5px; | |
} | |
input[type="submit"].btn-block, | |
input[type="reset"].btn-block, | |
input[type="button"].btn-block { | |
width: 100%; | |
} | |
.btn-primary.active, | |
.btn-warning.active, | |
.btn-danger.active, | |
.btn-success.active, | |
.btn-info.active, | |
.btn-inverse.active { | |
color: rgba(255, 255, 255, 0.75); | |
} | |
.btn { | |
border-color: #c5c5c5; | |
border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25); | |
} | |
.btn-primary { | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #006dcc; | |
background-image: -moz-linear-gradient(top, #0088cc, #0044cc); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc)); | |
background-image: -webkit-linear-gradient(top, #0088cc, #0044cc); | |
background-image: -o-linear-gradient(top, #0088cc, #0044cc); | |
background-image: linear-gradient(to bottom, #0088cc, #0044cc); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', GradientType=0); | |
border-color: #0044cc #0044cc #002a80; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #0044cc; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
} | |
.btn-primary:hover, | |
.btn-primary:active, | |
.btn-primary.active, | |
.btn-primary.disabled, | |
.btn-primary[disabled] { | |
color: #ffffff; | |
background-color: #0044cc; | |
*background-color: #003bb3; | |
} | |
.btn-primary:active, | |
.btn-primary.active { | |
background-color: #003399 \9; | |
} | |
.btn-warning { | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #faa732; | |
background-image: -moz-linear-gradient(top, #fbb450, #f89406); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); | |
background-image: -webkit-linear-gradient(top, #fbb450, #f89406); | |
background-image: -o-linear-gradient(top, #fbb450, #f89406); | |
background-image: linear-gradient(to bottom, #fbb450, #f89406); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0); | |
border-color: #f89406 #f89406 #ad6704; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #f89406; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
} | |
.btn-warning:hover, | |
.btn-warning:active, | |
.btn-warning.active, | |
.btn-warning.disabled, | |
.btn-warning[disabled] { | |
color: #ffffff; | |
background-color: #f89406; | |
*background-color: #df8505; | |
} | |
.btn-warning:active, | |
.btn-warning.active { | |
background-color: #c67605 \9; | |
} | |
.btn-danger { | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #da4f49; | |
background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f)); | |
background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f); | |
background-image: -o-linear-gradient(top, #ee5f5b, #bd362f); | |
background-image: linear-gradient(to bottom, #ee5f5b, #bd362f); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', GradientType=0); | |
border-color: #bd362f #bd362f #802420; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #bd362f; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
} | |
.btn-danger:hover, | |
.btn-danger:active, | |
.btn-danger.active, | |
.btn-danger.disabled, | |
.btn-danger[disabled] { | |
color: #ffffff; | |
background-color: #bd362f; | |
*background-color: #a9302a; | |
} | |
.btn-danger:active, | |
.btn-danger.active { | |
background-color: #942a25 \9; | |
} | |
.btn-success { | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #5bb75b; | |
background-image: -moz-linear-gradient(top, #62c462, #51a351); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351)); | |
background-image: -webkit-linear-gradient(top, #62c462, #51a351); | |
background-image: -o-linear-gradient(top, #62c462, #51a351); | |
background-image: linear-gradient(to bottom, #62c462, #51a351); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', GradientType=0); | |
border-color: #51a351 #51a351 #387038; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #51a351; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
} | |
.btn-success:hover, | |
.btn-success:active, | |
.btn-success.active, | |
.btn-success.disabled, | |
.btn-success[disabled] { | |
color: #ffffff; | |
background-color: #51a351; | |
*background-color: #499249; | |
} | |
.btn-success:active, | |
.btn-success.active { | |
background-color: #408140 \9; | |
} | |
.btn-info { | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #49afcd; | |
background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4)); | |
background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4); | |
background-image: -o-linear-gradient(top, #5bc0de, #2f96b4); | |
background-image: linear-gradient(to bottom, #5bc0de, #2f96b4); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', GradientType=0); | |
border-color: #2f96b4 #2f96b4 #1f6377; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #2f96b4; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
} | |
.btn-info:hover, | |
.btn-info:active, | |
.btn-info.active, | |
.btn-info.disabled, | |
.btn-info[disabled] { | |
color: #ffffff; | |
background-color: #2f96b4; | |
*background-color: #2a85a0; | |
} | |
.btn-info:active, | |
.btn-info.active { | |
background-color: #24748c \9; | |
} | |
.btn-inverse { | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #363636; | |
background-image: -moz-linear-gradient(top, #444444, #222222); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222)); | |
background-image: -webkit-linear-gradient(top, #444444, #222222); | |
background-image: -o-linear-gradient(top, #444444, #222222); | |
background-image: linear-gradient(to bottom, #444444, #222222); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0); | |
border-color: #222222 #222222 #000000; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #222222; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
} | |
.btn-inverse:hover, | |
.btn-inverse:active, | |
.btn-inverse.active, | |
.btn-inverse.disabled, | |
.btn-inverse[disabled] { | |
color: #ffffff; | |
background-color: #222222; | |
*background-color: #151515; | |
} | |
.btn-inverse:active, | |
.btn-inverse.active { | |
background-color: #080808 \9; | |
} | |
button.btn, | |
input[type="submit"].btn { | |
*padding-top: 3px; | |
*padding-bottom: 3px; | |
} | |
button.btn::-moz-focus-inner, | |
input[type="submit"].btn::-moz-focus-inner { | |
padding: 0; | |
border: 0; | |
} | |
button.btn.btn-large, | |
input[type="submit"].btn.btn-large { | |
*padding-top: 7px; | |
*padding-bottom: 7px; | |
} | |
button.btn.btn-small, | |
input[type="submit"].btn.btn-small { | |
*padding-top: 3px; | |
*padding-bottom: 3px; | |
} | |
button.btn.btn-mini, | |
input[type="submit"].btn.btn-mini { | |
*padding-top: 1px; | |
*padding-bottom: 1px; | |
} | |
.btn-link, | |
.btn-link:active, | |
.btn-link[disabled] { | |
background-color: transparent; | |
background-image: none; | |
-webkit-box-shadow: none; | |
-moz-box-shadow: none; | |
box-shadow: none; | |
} | |
.btn-link { | |
border-color: transparent; | |
cursor: pointer; | |
color: #0088cc; | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.btn-link:hover { | |
color: #005580; | |
text-decoration: underline; | |
background-color: transparent; | |
} | |
.btn-link[disabled]:hover { | |
color: #333333; | |
text-decoration: none; | |
} | |
[class^="icon-"], | |
[class*=" icon-"] { | |
display: inline-block; | |
width: 14px; | |
height: 14px; | |
*margin-right: .3em; | |
line-height: 14px; | |
vertical-align: text-top; | |
background-image: image-url('glyphicons-halflings.png'); | |
background-position: 14px 14px; | |
background-repeat: no-repeat; | |
margin-top: 1px; | |
} | |
/* White icons with optional class, or on hover/active states of certain elements */ | |
.icon-white, | |
.nav-tabs > .active > a > [class^="icon-"], | |
.nav-tabs > .active > a > [class*=" icon-"], | |
.nav-pills > .active > a > [class^="icon-"], | |
.nav-pills > .active > a > [class*=" icon-"], | |
.nav-list > .active > a > [class^="icon-"], | |
.nav-list > .active > a > [class*=" icon-"], | |
.navbar-inverse .nav > .active > a > [class^="icon-"], | |
.navbar-inverse .nav > .active > a > [class*=" icon-"], | |
.dropdown-menu > li > a:hover > [class^="icon-"], | |
.dropdown-menu > li > a:hover > [class*=" icon-"], | |
.dropdown-menu > .active > a > [class^="icon-"], | |
.dropdown-menu > .active > a > [class*=" icon-"] { | |
background-image: image-url('glyphicons-halflings-white.png'); | |
} | |
.icon-glass { | |
background-position: 0 0; | |
} | |
.icon-music { | |
background-position: -24px 0; | |
} | |
.icon-search { | |
background-position: -48px 0; | |
} | |
.icon-envelope { | |
background-position: -72px 0; | |
} | |
.icon-heart { | |
background-position: -96px 0; | |
} | |
.icon-star { | |
background-position: -120px 0; | |
} | |
.icon-star-empty { | |
background-position: -144px 0; | |
} | |
.icon-user { | |
background-position: -168px 0; | |
} | |
.icon-film { | |
background-position: -192px 0; | |
} | |
.icon-th-large { | |
background-position: -216px 0; | |
} | |
.icon-th { | |
background-position: -240px 0; | |
} | |
.icon-th-list { | |
background-position: -264px 0; | |
} | |
.icon-ok { | |
background-position: -288px 0; | |
} | |
.icon-remove { | |
background-position: -312px 0; | |
} | |
.icon-zoom-in { | |
background-position: -336px 0; | |
} | |
.icon-zoom-out { | |
background-position: -360px 0; | |
} | |
.icon-off { | |
background-position: -384px 0; | |
} | |
.icon-signal { | |
background-position: -408px 0; | |
} | |
.icon-cog { | |
background-position: -432px 0; | |
} | |
.icon-trash { | |
background-position: -456px 0; | |
} | |
.icon-home { | |
background-position: 0 -24px; | |
} | |
.icon-file { | |
background-position: -24px -24px; | |
} | |
.icon-time { | |
background-position: -48px -24px; | |
} | |
.icon-road { | |
background-position: -72px -24px; | |
} | |
.icon-download-alt { | |
background-position: -96px -24px; | |
} | |
.icon-download { | |
background-position: -120px -24px; | |
} | |
.icon-upload { | |
background-position: -144px -24px; | |
} | |
.icon-inbox { | |
background-position: -168px -24px; | |
} | |
.icon-play-circle { | |
background-position: -192px -24px; | |
} | |
.icon-repeat { | |
background-position: -216px -24px; | |
} | |
.icon-refresh { | |
background-position: -240px -24px; | |
} | |
.icon-list-alt { | |
background-position: -264px -24px; | |
} | |
.icon-lock { | |
background-position: -287px -24px; | |
} | |
.icon-flag { | |
background-position: -312px -24px; | |
} | |
.icon-headphones { | |
background-position: -336px -24px; | |
} | |
.icon-volume-off { | |
background-position: -360px -24px; | |
} | |
.icon-volume-down { | |
background-position: -384px -24px; | |
} | |
.icon-volume-up { | |
background-position: -408px -24px; | |
} | |
.icon-qrcode { | |
background-position: -432px -24px; | |
} | |
.icon-barcode { | |
background-position: -456px -24px; | |
} | |
.icon-tag { | |
background-position: 0 -48px; | |
} | |
.icon-tags { | |
background-position: -25px -48px; | |
} | |
.icon-book { | |
background-position: -48px -48px; | |
} | |
.icon-bookmark { | |
background-position: -72px -48px; | |
} | |
.icon-print { | |
background-position: -96px -48px; | |
} | |
.icon-camera { | |
background-position: -120px -48px; | |
} | |
.icon-font { | |
background-position: -144px -48px; | |
} | |
.icon-bold { | |
background-position: -167px -48px; | |
} | |
.icon-italic { | |
background-position: -192px -48px; | |
} | |
.icon-text-height { | |
background-position: -216px -48px; | |
} | |
.icon-text-width { | |
background-position: -240px -48px; | |
} | |
.icon-align-left { | |
background-position: -264px -48px; | |
} | |
.icon-align-center { | |
background-position: -288px -48px; | |
} | |
.icon-align-right { | |
background-position: -312px -48px; | |
} | |
.icon-align-justify { | |
background-position: -336px -48px; | |
} | |
.icon-list { | |
background-position: -360px -48px; | |
} | |
.icon-indent-left { | |
background-position: -384px -48px; | |
} | |
.icon-indent-right { | |
background-position: -408px -48px; | |
} | |
.icon-facetime-video { | |
background-position: -432px -48px; | |
} | |
.icon-picture { | |
background-position: -456px -48px; | |
} | |
.icon-pencil { | |
background-position: 0 -72px; | |
} | |
.icon-map-marker { | |
background-position: -24px -72px; | |
} | |
.icon-adjust { | |
background-position: -48px -72px; | |
} | |
.icon-tint { | |
background-position: -72px -72px; | |
} | |
.icon-edit { | |
background-position: -96px -72px; | |
} | |
.icon-share { | |
background-position: -120px -72px; | |
} | |
.icon-check { | |
background-position: -144px -72px; | |
} | |
.icon-move { | |
background-position: -168px -72px; | |
} | |
.icon-step-backward { | |
background-position: -192px -72px; | |
} | |
.icon-fast-backward { | |
background-position: -216px -72px; | |
} | |
.icon-backward { | |
background-position: -240px -72px; | |
} | |
.icon-play { | |
background-position: -264px -72px; | |
} | |
.icon-pause { | |
background-position: -288px -72px; | |
} | |
.icon-stop { | |
background-position: -312px -72px; | |
} | |
.icon-forward { | |
background-position: -336px -72px; | |
} | |
.icon-fast-forward { | |
background-position: -360px -72px; | |
} | |
.icon-step-forward { | |
background-position: -384px -72px; | |
} | |
.icon-eject { | |
background-position: -408px -72px; | |
} | |
.icon-chevron-left { | |
background-position: -432px -72px; | |
} | |
.icon-chevron-right { | |
background-position: -456px -72px; | |
} | |
.icon-plus-sign { | |
background-position: 0 -96px; | |
} | |
.icon-minus-sign { | |
background-position: -24px -96px; | |
} | |
.icon-remove-sign { | |
background-position: -48px -96px; | |
} | |
.icon-ok-sign { | |
background-position: -72px -96px; | |
} | |
.icon-question-sign { | |
background-position: -96px -96px; | |
} | |
.icon-info-sign { | |
background-position: -120px -96px; | |
} | |
.icon-screenshot { | |
background-position: -144px -96px; | |
} | |
.icon-remove-circle { | |
background-position: -168px -96px; | |
} | |
.icon-ok-circle { | |
background-position: -192px -96px; | |
} | |
.icon-ban-circle { | |
background-position: -216px -96px; | |
} | |
.icon-arrow-left { | |
background-position: -240px -96px; | |
} | |
.icon-arrow-right { | |
background-position: -264px -96px; | |
} | |
.icon-arrow-up { | |
background-position: -289px -96px; | |
} | |
.icon-arrow-down { | |
background-position: -312px -96px; | |
} | |
.icon-share-alt { | |
background-position: -336px -96px; | |
} | |
.icon-resize-full { | |
background-position: -360px -96px; | |
} | |
.icon-resize-small { | |
background-position: -384px -96px; | |
} | |
.icon-plus { | |
background-position: -408px -96px; | |
} | |
.icon-minus { | |
background-position: -433px -96px; | |
} | |
.icon-asterisk { | |
background-position: -456px -96px; | |
} | |
.icon-exclamation-sign { | |
background-position: 0 -120px; | |
} | |
.icon-gift { | |
background-position: -24px -120px; | |
} | |
.icon-leaf { | |
background-position: -48px -120px; | |
} | |
.icon-fire { | |
background-position: -72px -120px; | |
} | |
.icon-eye-open { | |
background-position: -96px -120px; | |
} | |
.icon-eye-close { | |
background-position: -120px -120px; | |
} | |
.icon-warning-sign { | |
background-position: -144px -120px; | |
} | |
.icon-plane { | |
background-position: -168px -120px; | |
} | |
.icon-calendar { | |
background-position: -192px -120px; | |
} | |
.icon-random { | |
background-position: -216px -120px; | |
width: 16px; | |
} | |
.icon-comment { | |
background-position: -240px -120px; | |
} | |
.icon-magnet { | |
background-position: -264px -120px; | |
} | |
.icon-chevron-up { | |
background-position: -288px -120px; | |
} | |
.icon-chevron-down { | |
background-position: -313px -119px; | |
} | |
.icon-retweet { | |
background-position: -336px -120px; | |
} | |
.icon-shopping-cart { | |
background-position: -360px -120px; | |
} | |
.icon-folder-close { | |
background-position: -384px -120px; | |
} | |
.icon-folder-open { | |
background-position: -408px -120px; | |
width: 16px; | |
} | |
.icon-resize-vertical { | |
background-position: -432px -119px; | |
} | |
.icon-resize-horizontal { | |
background-position: -456px -118px; | |
} | |
.icon-hdd { | |
background-position: 0 -144px; | |
} | |
.icon-bullhorn { | |
background-position: -24px -144px; | |
} | |
.icon-bell { | |
background-position: -48px -144px; | |
} | |
.icon-certificate { | |
background-position: -72px -144px; | |
} | |
.icon-thumbs-up { | |
background-position: -96px -144px; | |
} | |
.icon-thumbs-down { | |
background-position: -120px -144px; | |
} | |
.icon-hand-right { | |
background-position: -144px -144px; | |
} | |
.icon-hand-left { | |
background-position: -168px -144px; | |
} | |
.icon-hand-up { | |
background-position: -192px -144px; | |
} | |
.icon-hand-down { | |
background-position: -216px -144px; | |
} | |
.icon-circle-arrow-right { | |
background-position: -240px -144px; | |
} | |
.icon-circle-arrow-left { | |
background-position: -264px -144px; | |
} | |
.icon-circle-arrow-up { | |
background-position: -288px -144px; | |
} | |
.icon-circle-arrow-down { | |
background-position: -312px -144px; | |
} | |
.icon-globe { | |
background-position: -336px -144px; | |
} | |
.icon-wrench { | |
background-position: -360px -144px; | |
} | |
.icon-tasks { | |
background-position: -384px -144px; | |
} | |
.icon-filter { | |
background-position: -408px -144px; | |
} | |
.icon-briefcase { | |
background-position: -432px -144px; | |
} | |
.icon-fullscreen { | |
background-position: -456px -144px; | |
} | |
.btn-group { | |
position: relative; | |
font-size: 0; | |
vertical-align: middle; | |
white-space: nowrap; | |
*margin-left: .3em; | |
} | |
.btn-group:first-child { | |
*margin-left: 0; | |
} | |
.btn-group + .btn-group { | |
margin-left: 5px; | |
} | |
.btn-toolbar { | |
font-size: 0; | |
margin-top: 10px; | |
margin-bottom: 10px; | |
} | |
.btn-toolbar .btn-group { | |
display: inline-block; | |
*display: inline; | |
/* IE7 inline-block hack */ | |
*zoom: 1; | |
} | |
.btn-toolbar .btn + .btn, | |
.btn-toolbar .btn-group + .btn, | |
.btn-toolbar .btn + .btn-group { | |
margin-left: 5px; | |
} | |
.btn-group > .btn { | |
position: relative; | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.btn-group > .btn + .btn { | |
margin-left: -1px; | |
} | |
.btn-group > .btn, | |
.btn-group > .dropdown-menu { | |
font-size: 14px; | |
} | |
.btn-group > .btn-mini { | |
font-size: 11px; | |
} | |
.btn-group > .btn-small { | |
font-size: 12px; | |
} | |
.btn-group > .btn-large { | |
font-size: 16px; | |
} | |
.btn-group > .btn:first-child { | |
margin-left: 0; | |
-webkit-border-top-left-radius: 4px; | |
-moz-border-radius-topleft: 4px; | |
border-top-left-radius: 4px; | |
-webkit-border-bottom-left-radius: 4px; | |
-moz-border-radius-bottomleft: 4px; | |
border-bottom-left-radius: 4px; | |
} | |
.btn-group > .btn:last-child, | |
.btn-group > .dropdown-toggle { | |
-webkit-border-top-right-radius: 4px; | |
-moz-border-radius-topright: 4px; | |
border-top-right-radius: 4px; | |
-webkit-border-bottom-right-radius: 4px; | |
-moz-border-radius-bottomright: 4px; | |
border-bottom-right-radius: 4px; | |
} | |
.btn-group > .btn.large:first-child { | |
margin-left: 0; | |
-webkit-border-top-left-radius: 6px; | |
-moz-border-radius-topleft: 6px; | |
border-top-left-radius: 6px; | |
-webkit-border-bottom-left-radius: 6px; | |
-moz-border-radius-bottomleft: 6px; | |
border-bottom-left-radius: 6px; | |
} | |
.btn-group > .btn.large:last-child, | |
.btn-group > .large.dropdown-toggle { | |
-webkit-border-top-right-radius: 6px; | |
-moz-border-radius-topright: 6px; | |
border-top-right-radius: 6px; | |
-webkit-border-bottom-right-radius: 6px; | |
-moz-border-radius-bottomright: 6px; | |
border-bottom-right-radius: 6px; | |
} | |
.btn-group > .btn:hover, | |
.btn-group > .btn:focus, | |
.btn-group > .btn:active, | |
.btn-group > .btn.active { | |
z-index: 2; | |
} | |
.btn-group .dropdown-toggle:active, | |
.btn-group.open .dropdown-toggle { | |
outline: 0; | |
} | |
.btn-group > .btn + .dropdown-toggle { | |
padding-left: 8px; | |
padding-right: 8px; | |
-webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); | |
-moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); | |
box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); | |
*padding-top: 5px; | |
*padding-bottom: 5px; | |
} | |
.btn-group > .btn-mini + .dropdown-toggle { | |
padding-left: 5px; | |
padding-right: 5px; | |
*padding-top: 2px; | |
*padding-bottom: 2px; | |
} | |
.btn-group > .btn-small + .dropdown-toggle { | |
*padding-top: 5px; | |
*padding-bottom: 4px; | |
} | |
.btn-group > .btn-large + .dropdown-toggle { | |
padding-left: 12px; | |
padding-right: 12px; | |
*padding-top: 7px; | |
*padding-bottom: 7px; | |
} | |
.btn-group.open .dropdown-toggle { | |
background-image: none; | |
-webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); | |
-moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); | |
box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); | |
} | |
.btn-group.open .btn.dropdown-toggle { | |
background-color: #e6e6e6; | |
} | |
.btn-group.open .btn-primary.dropdown-toggle { | |
background-color: #0044cc; | |
} | |
.btn-group.open .btn-warning.dropdown-toggle { | |
background-color: #f89406; | |
} | |
.btn-group.open .btn-danger.dropdown-toggle { | |
background-color: #bd362f; | |
} | |
.btn-group.open .btn-success.dropdown-toggle { | |
background-color: #51a351; | |
} | |
.btn-group.open .btn-info.dropdown-toggle { | |
background-color: #2f96b4; | |
} | |
.btn-group.open .btn-inverse.dropdown-toggle { | |
background-color: #222222; | |
} | |
.btn .caret { | |
margin-top: 8px; | |
margin-left: 0; | |
} | |
.btn-mini .caret, | |
.btn-small .caret, | |
.btn-large .caret { | |
margin-top: 6px; | |
} | |
.btn-large .caret { | |
border-left-width: 5px; | |
border-right-width: 5px; | |
border-top-width: 5px; | |
} | |
.dropup .btn-large .caret { | |
border-bottom: 5px solid #000000; | |
border-top: 0; | |
} | |
.btn-primary .caret, | |
.btn-warning .caret, | |
.btn-danger .caret, | |
.btn-info .caret, | |
.btn-success .caret, | |
.btn-inverse .caret { | |
border-top-color: #ffffff; | |
border-bottom-color: #ffffff; | |
} | |
.btn-group-vertical { | |
display: inline-block; | |
*display: inline; | |
/* IE7 inline-block hack */ | |
*zoom: 1; | |
} | |
.btn-group-vertical .btn { | |
display: block; | |
float: none; | |
width: 100%; | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.btn-group-vertical .btn + .btn { | |
margin-left: 0; | |
margin-top: -1px; | |
} | |
.btn-group-vertical .btn:first-child { | |
-webkit-border-radius: 4px 4px 0 0; | |
-moz-border-radius: 4px 4px 0 0; | |
border-radius: 4px 4px 0 0; | |
} | |
.btn-group-vertical .btn:last-child { | |
-webkit-border-radius: 0 0 4px 4px; | |
-moz-border-radius: 0 0 4px 4px; | |
border-radius: 0 0 4px 4px; | |
} | |
.btn-group-vertical .btn-large:first-child { | |
-webkit-border-radius: 6px 6px 0 0; | |
-moz-border-radius: 6px 6px 0 0; | |
border-radius: 6px 6px 0 0; | |
} | |
.btn-group-vertical .btn-large:last-child { | |
-webkit-border-radius: 0 0 6px 6px; | |
-moz-border-radius: 0 0 6px 6px; | |
border-radius: 0 0 6px 6px; | |
} | |
.nav { | |
margin-left: 0; | |
margin-bottom: 20px; | |
list-style: none; | |
} | |
.nav > li > a { | |
display: block; | |
} | |
.nav > li > a:hover { | |
text-decoration: none; | |
background-color: #eeeeee; | |
} | |
.nav > .pull-right { | |
float: right; | |
} | |
.nav-header { | |
display: block; | |
padding: 3px 15px; | |
font-size: 11px; | |
font-weight: bold; | |
line-height: 20px; | |
color: #999999; | |
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); | |
text-transform: uppercase; | |
} | |
.nav li + .nav-header { | |
margin-top: 9px; | |
} | |
.nav-list { | |
padding-left: 15px; | |
padding-right: 15px; | |
margin-bottom: 0; | |
} | |
.nav-list > li > a, | |
.nav-list .nav-header { | |
margin-left: -15px; | |
margin-right: -15px; | |
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); | |
} | |
.nav-list > li > a { | |
padding: 3px 15px; | |
} | |
.nav-list > .active > a, | |
.nav-list > .active > a:hover { | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2); | |
background-color: #0088cc; | |
} | |
.nav-list [class^="icon-"] { | |
margin-right: 2px; | |
} | |
.nav-list .divider { | |
*width: 100%; | |
height: 1px; | |
margin: 9px 1px; | |
*margin: -5px 0 5px; | |
overflow: hidden; | |
background-color: #e5e5e5; | |
border-bottom: 1px solid #ffffff; | |
} | |
.nav-tabs, | |
.nav-pills { | |
*zoom: 1; | |
} | |
.nav-tabs:before, | |
.nav-pills:before, | |
.nav-tabs:after, | |
.nav-pills:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.nav-tabs:after, | |
.nav-pills:after { | |
clear: both; | |
} | |
.nav-tabs > li, | |
.nav-pills > li { | |
float: left; | |
} | |
.nav-tabs > li > a, | |
.nav-pills > li > a { | |
padding-right: 12px; | |
padding-left: 12px; | |
margin-right: 2px; | |
line-height: 14px; | |
} | |
.nav-tabs { | |
border-bottom: 1px solid #ddd; | |
} | |
.nav-tabs > li { | |
margin-bottom: -1px; | |
} | |
.nav-tabs > li > a { | |
padding-top: 8px; | |
padding-bottom: 8px; | |
line-height: 20px; | |
border: 1px solid transparent; | |
-webkit-border-radius: 4px 4px 0 0; | |
-moz-border-radius: 4px 4px 0 0; | |
border-radius: 4px 4px 0 0; | |
} | |
.nav-tabs > li > a:hover { | |
border-color: #eeeeee #eeeeee #dddddd; | |
} | |
.nav-tabs > .active > a, | |
.nav-tabs > .active > a:hover { | |
color: #555555; | |
background-color: #ffffff; | |
border: 1px solid #ddd; | |
border-bottom-color: transparent; | |
cursor: default; | |
} | |
.nav-pills > li > a { | |
padding-top: 8px; | |
padding-bottom: 8px; | |
margin-top: 2px; | |
margin-bottom: 2px; | |
-webkit-border-radius: 5px; | |
-moz-border-radius: 5px; | |
border-radius: 5px; | |
} | |
.nav-pills > .active > a, | |
.nav-pills > .active > a:hover { | |
color: #ffffff; | |
background-color: #0088cc; | |
} | |
.nav-stacked > li { | |
float: none; | |
} | |
.nav-stacked > li > a { | |
margin-right: 0; | |
} | |
.nav-tabs.nav-stacked { | |
border-bottom: 0; | |
} | |
.nav-tabs.nav-stacked > li > a { | |
border: 1px solid #ddd; | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.nav-tabs.nav-stacked > li:first-child > a { | |
-webkit-border-top-right-radius: 4px; | |
-moz-border-radius-topright: 4px; | |
border-top-right-radius: 4px; | |
-webkit-border-top-left-radius: 4px; | |
-moz-border-radius-topleft: 4px; | |
border-top-left-radius: 4px; | |
} | |
.nav-tabs.nav-stacked > li:last-child > a { | |
-webkit-border-bottom-right-radius: 4px; | |
-moz-border-radius-bottomright: 4px; | |
border-bottom-right-radius: 4px; | |
-webkit-border-bottom-left-radius: 4px; | |
-moz-border-radius-bottomleft: 4px; | |
border-bottom-left-radius: 4px; | |
} | |
.nav-tabs.nav-stacked > li > a:hover { | |
border-color: #ddd; | |
z-index: 2; | |
} | |
.nav-pills.nav-stacked > li > a { | |
margin-bottom: 3px; | |
} | |
.nav-pills.nav-stacked > li:last-child > a { | |
margin-bottom: 1px; | |
} | |
.nav-tabs .dropdown-menu { | |
-webkit-border-radius: 0 0 6px 6px; | |
-moz-border-radius: 0 0 6px 6px; | |
border-radius: 0 0 6px 6px; | |
} | |
.nav-pills .dropdown-menu { | |
-webkit-border-radius: 6px; | |
-moz-border-radius: 6px; | |
border-radius: 6px; | |
} | |
.nav .dropdown-toggle .caret { | |
border-top-color: #0088cc; | |
border-bottom-color: #0088cc; | |
margin-top: 6px; | |
} | |
.nav .dropdown-toggle:hover .caret { | |
border-top-color: #005580; | |
border-bottom-color: #005580; | |
} | |
/* move down carets for tabs */ | |
.nav-tabs .dropdown-toggle .caret { | |
margin-top: 8px; | |
} | |
.nav .active .dropdown-toggle .caret { | |
border-top-color: #fff; | |
border-bottom-color: #fff; | |
} | |
.nav-tabs .active .dropdown-toggle .caret { | |
border-top-color: #555555; | |
border-bottom-color: #555555; | |
} | |
.nav > .dropdown.active > a:hover { | |
cursor: pointer; | |
} | |
.nav-tabs .open .dropdown-toggle, | |
.nav-pills .open .dropdown-toggle, | |
.nav > li.dropdown.open.active > a:hover { | |
color: #ffffff; | |
background-color: #999999; | |
border-color: #999999; | |
} | |
.nav li.dropdown.open .caret, | |
.nav li.dropdown.open.active .caret, | |
.nav li.dropdown.open a:hover .caret { | |
border-top-color: #ffffff; | |
border-bottom-color: #ffffff; | |
opacity: 1; | |
filter: alpha(opacity=100); | |
} | |
.tabs-stacked .open > a:hover { | |
border-color: #999999; | |
} | |
.tabbable { | |
*zoom: 1; | |
} | |
.tabbable:before, | |
.tabbable:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.tabbable:after { | |
clear: both; | |
} | |
.tab-content { | |
overflow: auto; | |
} | |
.tabs-below > .nav-tabs, | |
.tabs-right > .nav-tabs, | |
.tabs-left > .nav-tabs { | |
border-bottom: 0; | |
} | |
.tab-content > .tab-pane, | |
.pill-content > .pill-pane { | |
display: none; | |
} | |
.tab-content > .active, | |
.pill-content > .active { | |
display: block; | |
} | |
.tabs-below > .nav-tabs { | |
border-top: 1px solid #ddd; | |
} | |
.tabs-below > .nav-tabs > li { | |
margin-top: -1px; | |
margin-bottom: 0; | |
} | |
.tabs-below > .nav-tabs > li > a { | |
-webkit-border-radius: 0 0 4px 4px; | |
-moz-border-radius: 0 0 4px 4px; | |
border-radius: 0 0 4px 4px; | |
} | |
.tabs-below > .nav-tabs > li > a:hover { | |
border-bottom-color: transparent; | |
border-top-color: #ddd; | |
} | |
.tabs-below > .nav-tabs > .active > a, | |
.tabs-below > .nav-tabs > .active > a:hover { | |
border-color: transparent #ddd #ddd #ddd; | |
} | |
.tabs-left > .nav-tabs > li, | |
.tabs-right > .nav-tabs > li { | |
float: none; | |
} | |
.tabs-left > .nav-tabs > li > a, | |
.tabs-right > .nav-tabs > li > a { | |
min-width: 74px; | |
margin-right: 0; | |
margin-bottom: 3px; | |
} | |
.tabs-left > .nav-tabs { | |
float: left; | |
margin-right: 19px; | |
border-right: 1px solid #ddd; | |
} | |
.tabs-left > .nav-tabs > li > a { | |
margin-right: -1px; | |
-webkit-border-radius: 4px 0 0 4px; | |
-moz-border-radius: 4px 0 0 4px; | |
border-radius: 4px 0 0 4px; | |
} | |
.tabs-left > .nav-tabs > li > a:hover { | |
border-color: #eeeeee #dddddd #eeeeee #eeeeee; | |
} | |
.tabs-left > .nav-tabs .active > a, | |
.tabs-left > .nav-tabs .active > a:hover { | |
border-color: #ddd transparent #ddd #ddd; | |
*border-right-color: #ffffff; | |
} | |
.tabs-right > .nav-tabs { | |
float: right; | |
margin-left: 19px; | |
border-left: 1px solid #ddd; | |
} | |
.tabs-right > .nav-tabs > li > a { | |
margin-left: -1px; | |
-webkit-border-radius: 0 4px 4px 0; | |
-moz-border-radius: 0 4px 4px 0; | |
border-radius: 0 4px 4px 0; | |
} | |
.tabs-right > .nav-tabs > li > a:hover { | |
border-color: #eeeeee #eeeeee #eeeeee #dddddd; | |
} | |
.tabs-right > .nav-tabs .active > a, | |
.tabs-right > .nav-tabs .active > a:hover { | |
border-color: #ddd #ddd #ddd transparent; | |
*border-left-color: #ffffff; | |
} | |
.nav > .disabled > a { | |
color: #999999; | |
} | |
.nav > .disabled > a:hover { | |
text-decoration: none; | |
background-color: transparent; | |
cursor: default; | |
} | |
.navbar { | |
overflow: visible; | |
margin-bottom: 20px; | |
color: #777777; | |
*position: relative; | |
*z-index: 2; | |
} | |
.navbar-inner { | |
min-height: 40px; | |
padding-left: 20px; | |
padding-right: 20px; | |
background-color: #fafafa; | |
background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2)); | |
background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2); | |
background-image: -o-linear-gradient(top, #ffffff, #f2f2f2); | |
background-image: linear-gradient(to bottom, #ffffff, #f2f2f2); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', GradientType=0); | |
border: 1px solid #d4d4d4; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
-webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); | |
-moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); | |
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065); | |
*zoom: 1; | |
} | |
.navbar-inner:before, | |
.navbar-inner:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.navbar-inner:after { | |
clear: both; | |
} | |
.navbar .container { | |
width: auto; | |
} | |
.nav-collapse.collapse { | |
height: auto; | |
} | |
.navbar .brand { | |
float: left; | |
display: block; | |
padding: 10px 20px 10px; | |
margin-left: -20px; | |
font-size: 20px; | |
font-weight: 200; | |
color: #777777; | |
text-shadow: 0 1px 0 #ffffff; | |
} | |
.navbar .brand:hover { | |
text-decoration: none; | |
} | |
.navbar-text { | |
margin-bottom: 0; | |
line-height: 40px; | |
} | |
.navbar-link { | |
color: #777777; | |
} | |
.navbar-link:hover { | |
color: #333333; | |
} | |
.navbar .divider-vertical { | |
height: 40px; | |
margin: 0 9px; | |
border-left: 1px solid #f2f2f2; | |
border-right: 1px solid #ffffff; | |
} | |
.navbar .btn, | |
.navbar .btn-group { | |
margin-top: 5px; | |
} | |
.navbar .btn-group .btn, | |
.navbar .input-prepend .btn, | |
.navbar .input-append .btn { | |
margin-top: 0; | |
} | |
.navbar-form { | |
margin-bottom: 0; | |
*zoom: 1; | |
} | |
.navbar-form:before, | |
.navbar-form:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.navbar-form:after { | |
clear: both; | |
} | |
.navbar-form input, | |
.navbar-form select, | |
.navbar-form .radio, | |
.navbar-form .checkbox { | |
margin-top: 5px; | |
} | |
.navbar-form input, | |
.navbar-form select, | |
.navbar-form .btn { | |
display: inline-block; | |
margin-bottom: 0; | |
} | |
.navbar-form input[type="image"], | |
.navbar-form input[type="checkbox"], | |
.navbar-form input[type="radio"] { | |
margin-top: 3px; | |
} | |
.navbar-form .input-append, | |
.navbar-form .input-prepend { | |
margin-top: 6px; | |
white-space: nowrap; | |
} | |
.navbar-form .input-append input, | |
.navbar-form .input-prepend input { | |
margin-top: 0; | |
} | |
.navbar-search { | |
position: relative; | |
float: left; | |
margin-top: 5px; | |
margin-bottom: 0; | |
} | |
.navbar-search .search-query { | |
margin-bottom: 0; | |
padding: 4px 14px; | |
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; | |
font-size: 13px; | |
font-weight: normal; | |
line-height: 1; | |
-webkit-border-radius: 15px; | |
-moz-border-radius: 15px; | |
border-radius: 15px; | |
} | |
.navbar-static-top { | |
position: static; | |
width: 100%; | |
margin-bottom: 0; | |
} | |
.navbar-static-top .navbar-inner { | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.navbar-fixed-top, | |
.navbar-fixed-bottom { | |
position: fixed; | |
right: 0; | |
left: 0; | |
z-index: 1030; | |
margin-bottom: 0; | |
} | |
.navbar-fixed-top .navbar-inner, | |
.navbar-static-top .navbar-inner { | |
border-width: 0 0 1px; | |
} | |
.navbar-fixed-bottom .navbar-inner { | |
border-width: 1px 0 0; | |
} | |
.navbar-fixed-top .navbar-inner, | |
.navbar-fixed-bottom .navbar-inner { | |
padding-left: 0; | |
padding-right: 0; | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
} | |
.navbar-static-top .container, | |
.navbar-fixed-top .container, | |
.navbar-fixed-bottom .container { | |
width: 960px; | |
} | |
.navbar-fixed-top { | |
top: 0; | |
} | |
.navbar-fixed-top .navbar-inner, | |
.navbar-static-top .navbar-inner { | |
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1), 0 1px 10px rgba(0, 0, 0, 0.1); | |
-moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1), 0 1px 10px rgba(0, 0, 0, 0.1); | |
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.1), 0 1px 10px rgba(0, 0, 0, 0.1); | |
} | |
.navbar-fixed-bottom { | |
bottom: 0; | |
} | |
.navbar-fixed-bottom .navbar-inner { | |
-webkit-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.1), 0 -1px 10px rgba(0, 0, 0, 0.1); | |
-moz-box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.1), 0 -1px 10px rgba(0, 0, 0, 0.1); | |
box-shadow: inset 0 1px 0 rgba(0, 0, 0, 0.1), 0 -1px 10px rgba(0, 0, 0, 0.1); | |
} | |
.navbar .nav { | |
position: relative; | |
left: 0; | |
display: block; | |
float: left; | |
margin: 0 10px 0 0; | |
} | |
.navbar .nav.pull-right { | |
float: right; | |
margin-right: 0; | |
} | |
.navbar .nav > li { | |
float: left; | |
} | |
.navbar .nav > li > a { | |
float: none; | |
padding: 10px 15px 10px; | |
color: #777777; | |
text-decoration: none; | |
text-shadow: 0 1px 0 #ffffff; | |
} | |
.navbar .nav .dropdown-toggle .caret { | |
margin-top: 8px; | |
} | |
.navbar .nav > li > a:focus, | |
.navbar .nav > li > a:hover { | |
background-color: transparent; | |
color: #333333; | |
text-decoration: none; | |
} | |
.navbar .nav > .active > a, | |
.navbar .nav > .active > a:hover, | |
.navbar .nav > .active > a:focus { | |
color: #555555; | |
text-decoration: none; | |
background-color: #e5e5e5; | |
-webkit-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); | |
-moz-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); | |
box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125); | |
} | |
.navbar .btn-navbar { | |
display: none; | |
float: right; | |
padding: 7px 10px; | |
margin-left: 5px; | |
margin-right: 5px; | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #ededed; | |
background-image: -moz-linear-gradient(top, #f2f2f2, #e5e5e5); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e5e5e5)); | |
background-image: -webkit-linear-gradient(top, #f2f2f2, #e5e5e5); | |
background-image: -o-linear-gradient(top, #f2f2f2, #e5e5e5); | |
background-image: linear-gradient(to bottom, #f2f2f2, #e5e5e5); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2', endColorstr='#ffe5e5e5', GradientType=0); | |
border-color: #e5e5e5 #e5e5e5 #bfbfbf; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #e5e5e5; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); | |
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); | |
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075); | |
} | |
.navbar .btn-navbar:hover, | |
.navbar .btn-navbar:active, | |
.navbar .btn-navbar.active, | |
.navbar .btn-navbar.disabled, | |
.navbar .btn-navbar[disabled] { | |
color: #ffffff; | |
background-color: #e5e5e5; | |
*background-color: #d9d9d9; | |
} | |
.navbar .btn-navbar:active, | |
.navbar .btn-navbar.active { | |
background-color: #cccccc \9; | |
} | |
.navbar .btn-navbar .icon-bar { | |
display: block; | |
width: 18px; | |
height: 2px; | |
background-color: #f5f5f5; | |
-webkit-border-radius: 1px; | |
-moz-border-radius: 1px; | |
border-radius: 1px; | |
-webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); | |
-moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); | |
box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25); | |
} | |
.btn-navbar .icon-bar + .icon-bar { | |
margin-top: 3px; | |
} | |
.navbar .nav > li > .dropdown-menu:before { | |
content: ''; | |
display: inline-block; | |
border-left: 7px solid transparent; | |
border-right: 7px solid transparent; | |
border-bottom: 7px solid #ccc; | |
border-bottom-color: rgba(0, 0, 0, 0.2); | |
position: absolute; | |
top: -7px; | |
left: 9px; | |
} | |
.navbar .nav > li > .dropdown-menu:after { | |
content: ''; | |
display: inline-block; | |
border-left: 6px solid transparent; | |
border-right: 6px solid transparent; | |
border-bottom: 6px solid #ffffff; | |
position: absolute; | |
top: -6px; | |
left: 10px; | |
} | |
.navbar-fixed-bottom .nav > li > .dropdown-menu:before { | |
border-top: 7px solid #ccc; | |
border-top-color: rgba(0, 0, 0, 0.2); | |
border-bottom: 0; | |
bottom: -7px; | |
top: auto; | |
} | |
.navbar-fixed-bottom .nav > li > .dropdown-menu:after { | |
border-top: 6px solid #ffffff; | |
border-bottom: 0; | |
bottom: -6px; | |
top: auto; | |
} | |
.navbar .nav li.dropdown.open > .dropdown-toggle, | |
.navbar .nav li.dropdown.active > .dropdown-toggle, | |
.navbar .nav li.dropdown.open.active > .dropdown-toggle { | |
background-color: #e5e5e5; | |
color: #555555; | |
} | |
.navbar .nav li.dropdown > .dropdown-toggle .caret { | |
border-top-color: #777777; | |
border-bottom-color: #777777; | |
} | |
.navbar .nav li.dropdown.open > .dropdown-toggle .caret, | |
.navbar .nav li.dropdown.active > .dropdown-toggle .caret, | |
.navbar .nav li.dropdown.open.active > .dropdown-toggle .caret { | |
border-top-color: #555555; | |
border-bottom-color: #555555; | |
} | |
.navbar .pull-right > li > .dropdown-menu, | |
.navbar .nav > li > .dropdown-menu.pull-right { | |
left: auto; | |
right: 0; | |
} | |
.navbar .pull-right > li > .dropdown-menu:before, | |
.navbar .nav > li > .dropdown-menu.pull-right:before { | |
left: auto; | |
right: 12px; | |
} | |
.navbar .pull-right > li > .dropdown-menu:after, | |
.navbar .nav > li > .dropdown-menu.pull-right:after { | |
left: auto; | |
right: 13px; | |
} | |
.navbar .pull-right > li > .dropdown-menu .dropdown-menu, | |
.navbar .nav > li > .dropdown-menu.pull-right .dropdown-menu { | |
left: auto; | |
right: 100%; | |
margin-left: 0; | |
margin-right: -1px; | |
-webkit-border-radius: 6px 0 6px 6px; | |
-moz-border-radius: 6px 0 6px 6px; | |
border-radius: 6px 0 6px 6px; | |
} | |
.navbar-inverse { | |
color: #999999; | |
} | |
.navbar-inverse .navbar-inner { | |
background-color: #1b1b1b; | |
background-image: -moz-linear-gradient(top, #222222, #111111); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#222222), to(#111111)); | |
background-image: -webkit-linear-gradient(top, #222222, #111111); | |
background-image: -o-linear-gradient(top, #222222, #111111); | |
background-image: linear-gradient(to bottom, #222222, #111111); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff111111', GradientType=0); | |
border-color: #252525; | |
} | |
.navbar-inverse .brand, | |
.navbar-inverse .nav > li > a { | |
color: #999999; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
} | |
.navbar-inverse .brand:hover, | |
.navbar-inverse .nav > li > a:hover { | |
color: #ffffff; | |
} | |
.navbar-inverse .nav > li > a:focus, | |
.navbar-inverse .nav > li > a:hover { | |
background-color: transparent; | |
color: #ffffff; | |
} | |
.navbar-inverse .nav .active > a, | |
.navbar-inverse .nav .active > a:hover, | |
.navbar-inverse .nav .active > a:focus { | |
color: #ffffff; | |
background-color: #111111; | |
} | |
.navbar-inverse .navbar-link { | |
color: #999999; | |
} | |
.navbar-inverse .navbar-link:hover { | |
color: #ffffff; | |
} | |
.navbar-inverse .divider-vertical { | |
border-left-color: #111111; | |
border-right-color: #222222; | |
} | |
.navbar-inverse .nav li.dropdown.open > .dropdown-toggle, | |
.navbar-inverse .nav li.dropdown.active > .dropdown-toggle, | |
.navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle { | |
background-color: #111111; | |
color: #ffffff; | |
} | |
.navbar-inverse .nav li.dropdown > .dropdown-toggle .caret { | |
border-top-color: #999999; | |
border-bottom-color: #999999; | |
} | |
.navbar-inverse .nav li.dropdown.open > .dropdown-toggle .caret, | |
.navbar-inverse .nav li.dropdown.active > .dropdown-toggle .caret, | |
.navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle .caret { | |
border-top-color: #ffffff; | |
border-bottom-color: #ffffff; | |
} | |
.navbar-inverse .navbar-search .search-query { | |
color: #ffffff; | |
background-color: #515151; | |
border-color: #111111; | |
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); | |
-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); | |
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15); | |
-webkit-transition: none; | |
-moz-transition: none; | |
-o-transition: none; | |
transition: none; | |
} | |
.navbar-inverse .navbar-search .search-query:-moz-placeholder { | |
color: #cccccc; | |
} | |
.navbar-inverse .navbar-search .search-query:-ms-input-placeholder { | |
color: #cccccc; | |
} | |
.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder { | |
color: #cccccc; | |
} | |
.navbar-inverse .navbar-search .search-query:focus, | |
.navbar-inverse .navbar-search .search-query.focused { | |
padding: 5px 15px; | |
color: #333333; | |
text-shadow: 0 1px 0 #ffffff; | |
background-color: #ffffff; | |
border: 0; | |
-webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); | |
-moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); | |
box-shadow: 0 0 3px rgba(0, 0, 0, 0.15); | |
outline: 0; | |
} | |
.navbar-inverse .btn-navbar { | |
color: #ffffff; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #0e0e0e; | |
background-image: -moz-linear-gradient(top, #151515, #040404); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404)); | |
background-image: -webkit-linear-gradient(top, #151515, #040404); | |
background-image: -o-linear-gradient(top, #151515, #040404); | |
background-image: linear-gradient(to bottom, #151515, #040404); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515', endColorstr='#ff040404', GradientType=0); | |
border-color: #040404 #040404 #000000; | |
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25); | |
*background-color: #040404; | |
/* Darken IE7 buttons by default so they stand out more given they won't have borders */ | |
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); | |
} | |
.navbar-inverse .btn-navbar:hover, | |
.navbar-inverse .btn-navbar:active, | |
.navbar-inverse .btn-navbar.active, | |
.navbar-inverse .btn-navbar.disabled, | |
.navbar-inverse .btn-navbar[disabled] { | |
color: #ffffff; | |
background-color: #040404; | |
*background-color: #000000; | |
} | |
.navbar-inverse .btn-navbar:active, | |
.navbar-inverse .btn-navbar.active { | |
background-color: #000000 \9; | |
} | |
.breadcrumb { | |
padding: 8px 15px; | |
margin: 0 0 20px; | |
list-style: none; | |
background-color: #f5f5f5; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
} | |
.breadcrumb li { | |
display: inline-block; | |
*display: inline; | |
/* IE7 inline-block hack */ | |
*zoom: 1; | |
text-shadow: 0 1px 0 #ffffff; | |
} | |
.breadcrumb .divider { | |
padding: 0 5px; | |
color: #ccc; | |
} | |
.breadcrumb .active { | |
color: #999999; | |
} | |
.pagination { | |
height: 40px; | |
margin: 20px 0; | |
} | |
.pagination ul { | |
display: inline-block; | |
*display: inline; | |
/* IE7 inline-block hack */ | |
*zoom: 1; | |
margin-left: 0; | |
margin-bottom: 0; | |
-webkit-border-radius: 3px; | |
-moz-border-radius: 3px; | |
border-radius: 3px; | |
-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); | |
-moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); | |
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); | |
} | |
.pagination ul > li { | |
display: inline; | |
} | |
.pagination ul > li > a, | |
.pagination ul > li > span { | |
float: left; | |
padding: 0 14px; | |
line-height: 38px; | |
text-decoration: none; | |
background-color: #ffffff; | |
border: 1px solid #dddddd; | |
border-left-width: 0; | |
} | |
.pagination ul > li > a:hover, | |
.pagination ul > .active > a, | |
.pagination ul > .active > span { | |
background-color: #f5f5f5; | |
} | |
.pagination ul > .active > a, | |
.pagination ul > .active > span { | |
color: #999999; | |
cursor: default; | |
} | |
.pagination ul > .disabled > span, | |
.pagination ul > .disabled > a, | |
.pagination ul > .disabled > a:hover { | |
color: #999999; | |
background-color: transparent; | |
cursor: default; | |
} | |
.pagination ul > li:first-child > a, | |
.pagination ul > li:first-child > span { | |
border-left-width: 1px; | |
-webkit-border-radius: 3px 0 0 3px; | |
-moz-border-radius: 3px 0 0 3px; | |
border-radius: 3px 0 0 3px; | |
} | |
.pagination ul > li:last-child > a, | |
.pagination ul > li:last-child > span { | |
-webkit-border-radius: 0 3px 3px 0; | |
-moz-border-radius: 0 3px 3px 0; | |
border-radius: 0 3px 3px 0; | |
} | |
.pagination-centered { | |
text-align: center; | |
} | |
.pagination-right { | |
text-align: right; | |
} | |
.pager { | |
margin: 20px 0; | |
list-style: none; | |
text-align: center; | |
*zoom: 1; | |
} | |
.pager:before, | |
.pager:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.pager:after { | |
clear: both; | |
} | |
.pager li { | |
display: inline; | |
} | |
.pager a, | |
.pager span { | |
display: inline-block; | |
padding: 5px 14px; | |
background-color: #fff; | |
border: 1px solid #ddd; | |
-webkit-border-radius: 15px; | |
-moz-border-radius: 15px; | |
border-radius: 15px; | |
} | |
.pager a:hover { | |
text-decoration: none; | |
background-color: #f5f5f5; | |
} | |
.pager .next a, | |
.pager .next span { | |
float: right; | |
} | |
.pager .previous a { | |
float: left; | |
} | |
.pager .disabled a, | |
.pager .disabled a:hover, | |
.pager .disabled span { | |
color: #999999; | |
background-color: #fff; | |
cursor: default; | |
} | |
.thumbnails { | |
margin-left: 0px; | |
list-style: none; | |
*zoom: 1; | |
} | |
.thumbnails:before, | |
.thumbnails:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.thumbnails:after { | |
clear: both; | |
} | |
.row-fluid .thumbnails { | |
margin-left: 0; | |
} | |
.thumbnails > li { | |
float: left; | |
margin-bottom: 20px; | |
margin-left: 0px; | |
} | |
.thumbnail { | |
display: block; | |
padding: 4px; | |
line-height: 20px; | |
border: 1px solid #ddd; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); | |
-moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); | |
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055); | |
-webkit-transition: all 0.2s ease-in-out; | |
-moz-transition: all 0.2s ease-in-out; | |
-o-transition: all 0.2s ease-in-out; | |
transition: all 0.2s ease-in-out; | |
} | |
a.thumbnail:hover { | |
border-color: #0088cc; | |
-webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); | |
-moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); | |
box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25); | |
} | |
.thumbnail > img { | |
display: block; | |
max-width: 100%; | |
margin-left: auto; | |
margin-right: auto; | |
} | |
.thumbnail .caption { | |
padding: 9px; | |
color: #555555; | |
} | |
.alert { | |
padding: 8px 35px 8px 14px; | |
margin-bottom: 20px; | |
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); | |
background-color: #fcf8e3; | |
border: 1px solid #fbeed5; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
color: #c09853; | |
} | |
.alert h4 { | |
margin: 0; | |
} | |
.alert .close { | |
position: relative; | |
top: -2px; | |
right: -21px; | |
line-height: 20px; | |
} | |
.alert-success { | |
background-color: #dff0d8; | |
border-color: #d6e9c6; | |
color: #468847; | |
} | |
.alert-danger, | |
.alert-error { | |
background-color: #f2dede; | |
border-color: #eed3d7; | |
color: #b94a48; | |
} | |
.alert-info { | |
background-color: #d9edf7; | |
border-color: #bce8f1; | |
color: #3a87ad; | |
} | |
.alert-block { | |
padding-top: 14px; | |
padding-bottom: 14px; | |
} | |
.alert-block > p, | |
.alert-block > ul { | |
margin-bottom: 0; | |
} | |
.alert-block p + p { | |
margin-top: 5px; | |
} | |
@-webkit-keyframes progress-bar-stripes { | |
from { | |
background-position: 40px 0; | |
} | |
to { | |
background-position: 0 0; | |
} | |
} | |
@-moz-keyframes progress-bar-stripes { | |
from { | |
background-position: 40px 0; | |
} | |
to { | |
background-position: 0 0; | |
} | |
} | |
@-ms-keyframes progress-bar-stripes { | |
from { | |
background-position: 40px 0; | |
} | |
to { | |
background-position: 0 0; | |
} | |
} | |
@-o-keyframes progress-bar-stripes { | |
from { | |
background-position: 0 0; | |
} | |
to { | |
background-position: 40px 0; | |
} | |
} | |
@keyframes progress-bar-stripes { | |
from { | |
background-position: 40px 0; | |
} | |
to { | |
background-position: 0 0; | |
} | |
} | |
.progress { | |
overflow: hidden; | |
height: 20px; | |
margin-bottom: 20px; | |
background-color: #f7f7f7; | |
background-image: -moz-linear-gradient(top, #f5f5f5, #f9f9f9); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9)); | |
background-image: -webkit-linear-gradient(top, #f5f5f5, #f9f9f9); | |
background-image: -o-linear-gradient(top, #f5f5f5, #f9f9f9); | |
background-image: linear-gradient(to bottom, #f5f5f5, #f9f9f9); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', GradientType=0); | |
-webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); | |
-moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); | |
box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
} | |
.progress .bar { | |
width: 0%; | |
height: 100%; | |
color: #ffffff; | |
float: left; | |
font-size: 12px; | |
text-align: center; | |
text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); | |
background-color: #0e90d2; | |
background-image: -moz-linear-gradient(top, #149bdf, #0480be); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be)); | |
background-image: -webkit-linear-gradient(top, #149bdf, #0480be); | |
background-image: -o-linear-gradient(top, #149bdf, #0480be); | |
background-image: linear-gradient(to bottom, #149bdf, #0480be); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', GradientType=0); | |
-webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); | |
-moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); | |
box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
-webkit-transition: width 0.6s ease; | |
-moz-transition: width 0.6s ease; | |
-o-transition: width 0.6s ease; | |
transition: width 0.6s ease; | |
} | |
.progress .bar + .bar { | |
-webkit-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); | |
-moz-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); | |
box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15); | |
} | |
.progress-striped .bar { | |
background-color: #149bdf; | |
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); | |
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
-webkit-background-size: 40px 40px; | |
-moz-background-size: 40px 40px; | |
-o-background-size: 40px 40px; | |
background-size: 40px 40px; | |
} | |
.progress.active .bar { | |
-webkit-animation: progress-bar-stripes 2s linear infinite; | |
-moz-animation: progress-bar-stripes 2s linear infinite; | |
-ms-animation: progress-bar-stripes 2s linear infinite; | |
-o-animation: progress-bar-stripes 2s linear infinite; | |
animation: progress-bar-stripes 2s linear infinite; | |
} | |
.progress-danger .bar, | |
.progress .bar-danger { | |
background-color: #dd514c; | |
background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35)); | |
background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35); | |
background-image: -o-linear-gradient(top, #ee5f5b, #c43c35); | |
background-image: linear-gradient(to bottom, #ee5f5b, #c43c35); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', GradientType=0); | |
} | |
.progress-danger.progress-striped .bar, | |
.progress-striped .bar-danger { | |
background-color: #ee5f5b; | |
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); | |
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
} | |
.progress-success .bar, | |
.progress .bar-success { | |
background-color: #5eb95e; | |
background-image: -moz-linear-gradient(top, #62c462, #57a957); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957)); | |
background-image: -webkit-linear-gradient(top, #62c462, #57a957); | |
background-image: -o-linear-gradient(top, #62c462, #57a957); | |
background-image: linear-gradient(to bottom, #62c462, #57a957); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', GradientType=0); | |
} | |
.progress-success.progress-striped .bar, | |
.progress-striped .bar-success { | |
background-color: #62c462; | |
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); | |
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
} | |
.progress-info .bar, | |
.progress .bar-info { | |
background-color: #4bb1cf; | |
background-image: -moz-linear-gradient(top, #5bc0de, #339bb9); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9)); | |
background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9); | |
background-image: -o-linear-gradient(top, #5bc0de, #339bb9); | |
background-image: linear-gradient(to bottom, #5bc0de, #339bb9); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', GradientType=0); | |
} | |
.progress-info.progress-striped .bar, | |
.progress-striped .bar-info { | |
background-color: #5bc0de; | |
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); | |
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
} | |
.progress-warning .bar, | |
.progress .bar-warning { | |
background-color: #faa732; | |
background-image: -moz-linear-gradient(top, #fbb450, #f89406); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406)); | |
background-image: -webkit-linear-gradient(top, #fbb450, #f89406); | |
background-image: -o-linear-gradient(top, #fbb450, #f89406); | |
background-image: linear-gradient(to bottom, #fbb450, #f89406); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', GradientType=0); | |
} | |
.progress-warning.progress-striped .bar, | |
.progress-striped .bar-warning { | |
background-color: #fbb450; | |
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); | |
background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); | |
} | |
.hero-unit { | |
padding: 60px; | |
margin-bottom: 30px; | |
background-color: #eeeeee; | |
-webkit-border-radius: 6px; | |
-moz-border-radius: 6px; | |
border-radius: 6px; | |
} | |
.hero-unit h1 { | |
margin-bottom: 0; | |
font-size: 60px; | |
line-height: 1; | |
color: inherit; | |
letter-spacing: -1px; | |
} | |
.hero-unit p { | |
font-size: 18px; | |
font-weight: 200; | |
line-height: 30px; | |
color: inherit; | |
} | |
.tooltip { | |
position: absolute; | |
z-index: 1030; | |
display: block; | |
visibility: visible; | |
padding: 5px; | |
font-size: 11px; | |
opacity: 0; | |
filter: alpha(opacity=0); | |
} | |
.tooltip.in { | |
opacity: 0.8; | |
filter: alpha(opacity=80); | |
} | |
.tooltip.top { | |
margin-top: -3px; | |
} | |
.tooltip.right { | |
margin-left: 3px; | |
} | |
.tooltip.bottom { | |
margin-top: 3px; | |
} | |
.tooltip.left { | |
margin-left: -3px; | |
} | |
.tooltip-inner { | |
max-width: 200px; | |
padding: 3px 8px; | |
color: #ffffff; | |
text-align: center; | |
text-decoration: none; | |
background-color: #000000; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
} | |
.tooltip-arrow { | |
position: absolute; | |
width: 0; | |
height: 0; | |
border-color: transparent; | |
border-style: solid; | |
} | |
.tooltip.top .tooltip-arrow { | |
bottom: 0; | |
left: 50%; | |
margin-left: -5px; | |
border-width: 5px 5px 0; | |
border-top-color: #000000; | |
} | |
.tooltip.right .tooltip-arrow { | |
top: 50%; | |
left: 0; | |
margin-top: -5px; | |
border-width: 5px 5px 5px 0; | |
border-right-color: #000000; | |
} | |
.tooltip.left .tooltip-arrow { | |
top: 50%; | |
right: 0; | |
margin-top: -5px; | |
border-width: 5px 0 5px 5px; | |
border-left-color: #000000; | |
} | |
.tooltip.bottom .tooltip-arrow { | |
top: 0; | |
left: 50%; | |
margin-left: -5px; | |
border-width: 0 5px 5px; | |
border-bottom-color: #000000; | |
} | |
.popover { | |
position: absolute; | |
top: 0; | |
left: 0; | |
z-index: 1010; | |
display: none; | |
width: 236px; | |
padding: 1px; | |
background-color: #ffffff; | |
-webkit-background-clip: padding-box; | |
-moz-background-clip: padding; | |
background-clip: padding-box; | |
border: 1px solid #ccc; | |
border: 1px solid rgba(0, 0, 0, 0.2); | |
-webkit-border-radius: 6px; | |
-moz-border-radius: 6px; | |
border-radius: 6px; | |
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); | |
-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); | |
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); | |
} | |
.popover.top { | |
margin-bottom: 10px; | |
} | |
.popover.right { | |
margin-left: 10px; | |
} | |
.popover.bottom { | |
margin-top: 10px; | |
} | |
.popover.left { | |
margin-right: 10px; | |
} | |
.popover-title { | |
margin: 0; | |
padding: 8px 14px; | |
font-size: 14px; | |
font-weight: normal; | |
line-height: 18px; | |
background-color: #f7f7f7; | |
border-bottom: 1px solid #ebebeb; | |
-webkit-border-radius: 5px 5px 0 0; | |
-moz-border-radius: 5px 5px 0 0; | |
border-radius: 5px 5px 0 0; | |
} | |
.popover-content { | |
padding: 9px 14px; | |
} | |
.popover-content p, | |
.popover-content ul, | |
.popover-content ol { | |
margin-bottom: 0; | |
} | |
.popover .arrow, | |
.popover .arrow:after { | |
position: absolute; | |
display: inline-block; | |
width: 0; | |
height: 0; | |
border-color: transparent; | |
border-style: solid; | |
} | |
.popover .arrow:after { | |
content: ""; | |
z-index: -1; | |
} | |
.popover.top .arrow { | |
bottom: -10px; | |
left: 50%; | |
margin-left: -10px; | |
border-width: 10px 10px 0; | |
border-top-color: #ffffff; | |
} | |
.popover.top .arrow:after { | |
border-width: 11px 11px 0; | |
border-top-color: rgba(0, 0, 0, 0.25); | |
bottom: -1px; | |
left: -11px; | |
} | |
.popover.right .arrow { | |
top: 50%; | |
left: -10px; | |
margin-top: -10px; | |
border-width: 10px 10px 10px 0; | |
border-right-color: #ffffff; | |
} | |
.popover.right .arrow:after { | |
border-width: 11px 11px 11px 0; | |
border-right-color: rgba(0, 0, 0, 0.25); | |
bottom: -11px; | |
left: -1px; | |
} | |
.popover.bottom .arrow { | |
top: -10px; | |
left: 50%; | |
margin-left: -10px; | |
border-width: 0 10px 10px; | |
border-bottom-color: #ffffff; | |
} | |
.popover.bottom .arrow:after { | |
border-width: 0 11px 11px; | |
border-bottom-color: rgba(0, 0, 0, 0.25); | |
top: -1px; | |
left: -11px; | |
} | |
.popover.left .arrow { | |
top: 50%; | |
right: -10px; | |
margin-top: -10px; | |
border-width: 10px 0 10px 10px; | |
border-left-color: #ffffff; | |
} | |
.popover.left .arrow:after { | |
border-width: 11px 0 11px 11px; | |
border-left-color: rgba(0, 0, 0, 0.25); | |
bottom: -11px; | |
right: -1px; | |
} | |
.modal-open .modal .dropdown-menu { | |
z-index: 2050; | |
} | |
.modal-open .modal .dropdown.open { | |
*z-index: 2050; | |
} | |
.modal-open .modal .popover { | |
z-index: 2060; | |
} | |
.modal-open .modal .tooltip { | |
z-index: 2080; | |
} | |
.modal-backdrop { | |
position: fixed; | |
top: 0; | |
right: 0; | |
bottom: 0; | |
left: 0; | |
z-index: 1040; | |
background-color: #000000; | |
} | |
.modal-backdrop.fade { | |
opacity: 0; | |
} | |
.modal-backdrop, | |
.modal-backdrop.fade.in { | |
opacity: 0.8; | |
filter: alpha(opacity=80); | |
} | |
.modal { | |
position: fixed; | |
top: 50%; | |
left: 50%; | |
z-index: 1050; | |
overflow: auto; | |
width: 560px; | |
margin: -250px 0 0 -280px; | |
background-color: #ffffff; | |
border: 1px solid #999; | |
border: 1px solid rgba(0, 0, 0, 0.3); | |
*border: 1px solid #999; | |
/* IE6-7 */ | |
-webkit-border-radius: 6px; | |
-moz-border-radius: 6px; | |
border-radius: 6px; | |
-webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); | |
-moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); | |
box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3); | |
-webkit-background-clip: padding-box; | |
-moz-background-clip: padding-box; | |
background-clip: padding-box; | |
} | |
.modal.fade { | |
-webkit-transition: opacity .3s linear, top .3s ease-out; | |
-moz-transition: opacity .3s linear, top .3s ease-out; | |
-o-transition: opacity .3s linear, top .3s ease-out; | |
transition: opacity .3s linear, top .3s ease-out; | |
top: -25%; | |
} | |
.modal.fade.in { | |
top: 50%; | |
} | |
.modal-header { | |
padding: 9px 15px; | |
border-bottom: 1px solid #eee; | |
} | |
.modal-header .close { | |
margin-top: 2px; | |
} | |
.modal-header h3 { | |
margin: 0; | |
line-height: 30px; | |
} | |
.modal-body { | |
overflow-y: auto; | |
max-height: 400px; | |
padding: 15px; | |
} | |
.modal-form { | |
margin-bottom: 0; | |
} | |
.modal-footer { | |
padding: 14px 15px 15px; | |
margin-bottom: 0; | |
text-align: right; | |
background-color: #f5f5f5; | |
border-top: 1px solid #ddd; | |
-webkit-border-radius: 0 0 6px 6px; | |
-moz-border-radius: 0 0 6px 6px; | |
border-radius: 0 0 6px 6px; | |
-webkit-box-shadow: inset 0 1px 0 #ffffff; | |
-moz-box-shadow: inset 0 1px 0 #ffffff; | |
box-shadow: inset 0 1px 0 #ffffff; | |
*zoom: 1; | |
} | |
.modal-footer:before, | |
.modal-footer:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.modal-footer:after { | |
clear: both; | |
} | |
.modal-footer .btn + .btn { | |
margin-left: 5px; | |
margin-bottom: 0; | |
} | |
.modal-footer .btn-group .btn + .btn { | |
margin-left: -1px; | |
} | |
.dropup, | |
.dropdown { | |
position: relative; | |
} | |
.dropdown-toggle { | |
*margin-bottom: -3px; | |
} | |
.dropdown-toggle:active, | |
.open .dropdown-toggle { | |
outline: 0; | |
} | |
.caret { | |
display: inline-block; | |
width: 0; | |
height: 0; | |
vertical-align: top; | |
border-top: 4px solid #000000; | |
border-right: 4px solid transparent; | |
border-left: 4px solid transparent; | |
content: ""; | |
} | |
.dropdown .caret { | |
margin-top: 8px; | |
margin-left: 2px; | |
} | |
.dropdown-menu { | |
position: absolute; | |
top: 100%; | |
left: 0; | |
z-index: 1000; | |
display: none; | |
float: left; | |
min-width: 160px; | |
padding: 5px 0; | |
margin: 2px 0 0; | |
list-style: none; | |
background-color: #ffffff; | |
border: 1px solid #ccc; | |
border: 1px solid rgba(0, 0, 0, 0.2); | |
*border-right-width: 2px; | |
*border-bottom-width: 2px; | |
-webkit-border-radius: 6px; | |
-moz-border-radius: 6px; | |
border-radius: 6px; | |
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); | |
-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); | |
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); | |
-webkit-background-clip: padding-box; | |
-moz-background-clip: padding; | |
background-clip: padding-box; | |
} | |
.dropdown-menu.pull-right { | |
right: 0; | |
left: auto; | |
} | |
.dropdown-menu .divider { | |
*width: 100%; | |
height: 1px; | |
margin: 9px 1px; | |
*margin: -5px 0 5px; | |
overflow: hidden; | |
background-color: #e5e5e5; | |
border-bottom: 1px solid #ffffff; | |
} | |
.dropdown-menu a { | |
display: block; | |
padding: 3px 20px; | |
clear: both; | |
font-weight: normal; | |
line-height: 20px; | |
color: #333333; | |
white-space: nowrap; | |
} | |
.dropdown-menu li > a:hover, | |
.dropdown-menu li > a:focus, | |
.dropdown-submenu:hover > a { | |
text-decoration: none; | |
color: #ffffff; | |
background-color: #0088cc; | |
background-color: #0081c2; | |
background-image: -moz-linear-gradient(top, #0088cc, #0077b3); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3)); | |
background-image: -webkit-linear-gradient(top, #0088cc, #0077b3); | |
background-image: -o-linear-gradient(top, #0088cc, #0077b3); | |
background-image: linear-gradient(to bottom, #0088cc, #0077b3); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0); | |
} | |
.dropdown-menu .active > a, | |
.dropdown-menu .active > a:hover { | |
color: #ffffff; | |
text-decoration: none; | |
outline: 0; | |
background-color: #0088cc; | |
background-color: #0081c2; | |
background-image: -moz-linear-gradient(top, #0088cc, #0077b3); | |
background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3)); | |
background-image: -webkit-linear-gradient(top, #0088cc, #0077b3); | |
background-image: -o-linear-gradient(top, #0088cc, #0077b3); | |
background-image: linear-gradient(to bottom, #0088cc, #0077b3); | |
background-repeat: repeat-x; | |
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0); | |
} | |
.dropdown-menu .disabled > a, | |
.dropdown-menu .disabled > a:hover { | |
color: #999999; | |
} | |
.dropdown-menu .disabled > a:hover { | |
text-decoration: none; | |
background-color: transparent; | |
cursor: default; | |
} | |
.open { | |
*z-index: 1000; | |
} | |
.open > .dropdown-menu { | |
display: block; | |
} | |
.pull-right > .dropdown-menu { | |
right: 0; | |
left: auto; | |
} | |
.dropup .caret, | |
.navbar-fixed-bottom .dropdown .caret { | |
border-top: 0; | |
border-bottom: 4px solid #000000; | |
content: ""; | |
} | |
.dropup .dropdown-menu, | |
.navbar-fixed-bottom .dropdown .dropdown-menu { | |
top: auto; | |
bottom: 100%; | |
margin-bottom: 1px; | |
} | |
.dropdown-submenu { | |
position: relative; | |
} | |
.dropdown-submenu > .dropdown-menu { | |
top: 0; | |
left: 100%; | |
margin-top: -6px; | |
margin-left: -1px; | |
-webkit-border-radius: 0 6px 6px 6px; | |
-moz-border-radius: 0 6px 6px 6px; | |
border-radius: 0 6px 6px 6px; | |
} | |
.dropdown-submenu:hover > .dropdown-menu { | |
display: block; | |
} | |
.dropdown-submenu > a:after { | |
display: block; | |
content: " "; | |
float: right; | |
width: 0; | |
height: 0; | |
border-color: transparent; | |
border-style: solid; | |
border-width: 5px 0 5px 5px; | |
border-left-color: #cccccc; | |
margin-top: 5px; | |
margin-right: -10px; | |
} | |
.dropdown-submenu:hover > a:after { | |
border-left-color: #ffffff; | |
} | |
.dropdown .dropdown-menu .nav-header { | |
padding-left: 20px; | |
padding-right: 20px; | |
} | |
.typeahead { | |
margin-top: 2px; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
} | |
.accordion { | |
margin-bottom: 20px; | |
} | |
.accordion-group { | |
margin-bottom: 2px; | |
border: 1px solid #e5e5e5; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
} | |
.accordion-heading { | |
border-bottom: 0; | |
} | |
.accordion-heading .accordion-toggle { | |
display: block; | |
padding: 8px 15px; | |
} | |
.accordion-toggle { | |
cursor: pointer; | |
} | |
.accordion-inner { | |
padding: 9px 15px; | |
border-top: 1px solid #e5e5e5; | |
} | |
.carousel { | |
position: relative; | |
margin-bottom: 20px; | |
line-height: 1; | |
} | |
.carousel-inner { | |
overflow: hidden; | |
width: 100%; | |
position: relative; | |
} | |
.carousel .item { | |
display: none; | |
position: relative; | |
-webkit-transition: 0.6s ease-in-out left; | |
-moz-transition: 0.6s ease-in-out left; | |
-o-transition: 0.6s ease-in-out left; | |
transition: 0.6s ease-in-out left; | |
} | |
.carousel .item > img { | |
display: block; | |
line-height: 1; | |
} | |
.carousel .active, | |
.carousel .next, | |
.carousel .prev { | |
display: block; | |
} | |
.carousel .active { | |
left: 0; | |
} | |
.carousel .next, | |
.carousel .prev { | |
position: absolute; | |
top: 0; | |
width: 100%; | |
} | |
.carousel .next { | |
left: 100%; | |
} | |
.carousel .prev { | |
left: -100%; | |
} | |
.carousel .next.left, | |
.carousel .prev.right { | |
left: 0; | |
} | |
.carousel .active.left { | |
left: -100%; | |
} | |
.carousel .active.right { | |
left: 100%; | |
} | |
.carousel-control { | |
position: absolute; | |
top: 40%; | |
left: 15px; | |
width: 40px; | |
height: 40px; | |
margin-top: -20px; | |
font-size: 60px; | |
font-weight: 100; | |
line-height: 30px; | |
color: #ffffff; | |
text-align: center; | |
background: #222222; | |
border: 3px solid #ffffff; | |
-webkit-border-radius: 23px; | |
-moz-border-radius: 23px; | |
border-radius: 23px; | |
opacity: 0.5; | |
filter: alpha(opacity=50); | |
} | |
.carousel-control.right { | |
left: auto; | |
right: 15px; | |
} | |
.carousel-control:hover { | |
color: #ffffff; | |
text-decoration: none; | |
opacity: 0.9; | |
filter: alpha(opacity=90); | |
} | |
.carousel-caption { | |
position: absolute; | |
left: 0; | |
right: 0; | |
bottom: 0; | |
padding: 15px; | |
background: #333333; | |
background: rgba(0, 0, 0, 0.75); | |
} | |
.carousel-caption h4, | |
.carousel-caption p { | |
color: #ffffff; | |
line-height: 20px; | |
} | |
.carousel-caption h4 { | |
margin: 0 0 5px; | |
} | |
.carousel-caption p { | |
margin-bottom: 0; | |
} | |
.well { | |
min-height: 20px; | |
padding: 19px; | |
margin-bottom: 20px; | |
background-color: #f5f5f5; | |
border: 1px solid #e3e3e3; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); | |
-moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); | |
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); | |
} | |
.well blockquote { | |
border-color: #ddd; | |
border-color: rgba(0, 0, 0, 0.15); | |
} | |
.well-large { | |
padding: 24px; | |
-webkit-border-radius: 6px; | |
-moz-border-radius: 6px; | |
border-radius: 6px; | |
} | |
.well-small { | |
padding: 9px; | |
-webkit-border-radius: 3px; | |
-moz-border-radius: 3px; | |
border-radius: 3px; | |
} | |
.close { | |
float: right; | |
font-size: 20px; | |
font-weight: bold; | |
line-height: 20px; | |
color: #000000; | |
text-shadow: 0 1px 0 #ffffff; | |
opacity: 0.2; | |
filter: alpha(opacity=20); | |
} | |
.close:hover { | |
color: #000000; | |
text-decoration: none; | |
cursor: pointer; | |
opacity: 0.4; | |
filter: alpha(opacity=40); | |
} | |
button.close { | |
padding: 0; | |
cursor: pointer; | |
background: transparent; | |
border: 0; | |
-webkit-appearance: none; | |
} | |
.pull-right { | |
float: right; | |
} | |
.pull-left { | |
float: left; | |
} | |
.hide { | |
display: none; | |
} | |
.show { | |
display: block; | |
} | |
.invisible { | |
visibility: hidden; | |
} | |
.affix { | |
position: fixed; | |
} | |
.fade { | |
opacity: 0; | |
-webkit-transition: opacity 0.15s linear; | |
-moz-transition: opacity 0.15s linear; | |
-o-transition: opacity 0.15s linear; | |
transition: opacity 0.15s linear; | |
} | |
.fade.in { | |
opacity: 1; | |
} | |
.collapse { | |
position: relative; | |
height: 0; | |
overflow: hidden; | |
-webkit-transition: height 0.35s ease; | |
-moz-transition: height 0.35s ease; | |
-o-transition: height 0.35s ease; | |
transition: height 0.35s ease; | |
} | |
.collapse.in { | |
height: auto; | |
} | |
.hidden { | |
display: none; | |
visibility: hidden; | |
} | |
.visible-phone { | |
display: none !important; | |
} | |
.visible-tablet { | |
display: none !important; | |
} | |
.hidden-desktop { | |
display: none !important; | |
} | |
.visible-desktop { | |
display: inherit !important; | |
} | |
@media (min-width: 768px) and (max-width: 979px) { | |
.hidden-desktop { | |
display: inherit !important; | |
} | |
.visible-desktop { | |
display: none !important ; | |
} | |
.visible-tablet { | |
display: inherit !important; | |
} | |
.hidden-tablet { | |
display: none !important; | |
} | |
} | |
@media (max-width: 767px) { | |
.hidden-desktop { | |
display: inherit !important; | |
} | |
.visible-desktop { | |
display: none !important; | |
} | |
.visible-phone { | |
display: inherit !important; | |
} | |
.hidden-phone { | |
display: none !important; | |
} | |
} | |
@media (max-width: 767px) { | |
body { | |
padding-left: 20px; | |
padding-right: 20px; | |
} | |
.navbar-fixed-top, | |
.navbar-fixed-bottom, | |
.navbar-static-top { | |
margin-left: -20px; | |
margin-right: -20px; | |
} | |
.container-fluid { | |
padding: 0; | |
} | |
.dl-horizontal dt { | |
float: none; | |
clear: none; | |
width: auto; | |
text-align: left; | |
} | |
.dl-horizontal dd { | |
margin-left: 0; | |
} | |
.container { | |
width: auto; | |
} | |
.row-fluid { | |
width: 100%; | |
} | |
.row, | |
.thumbnails { | |
margin-left: 0; | |
} | |
.thumbnails > li { | |
float: none; | |
margin-left: 0; | |
} | |
[class*="span"], | |
.row-fluid [class*="span"] { | |
float: none; | |
display: block; | |
width: 100%; | |
margin-left: 0; | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
} | |
.span12, | |
.row-fluid .span12 { | |
width: 100%; | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
} | |
.input-large, | |
.input-xlarge, | |
.input-xxlarge, | |
input[class*="span"], | |
select[class*="span"], | |
textarea[class*="span"], | |
.uneditable-input { | |
display: block; | |
width: 100%; | |
min-height: 30px; | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
} | |
.input-prepend input, | |
.input-append input, | |
.input-prepend input[class*="span"], | |
.input-append input[class*="span"] { | |
display: inline-block; | |
width: auto; | |
} | |
.controls-row [class*="span"] + [class*="span"] { | |
margin-left: 0; | |
} | |
.modal { | |
position: fixed; | |
top: 20px; | |
left: 20px; | |
right: 20px; | |
width: auto; | |
margin: 0; | |
} | |
.modal.fade.in { | |
top: auto; | |
} | |
} | |
@media (max-width: 480px) { | |
.nav-collapse { | |
-webkit-transform: translate3d(0, 0, 0); | |
} | |
.page-header h1 small { | |
display: block; | |
line-height: 20px; | |
} | |
input[type="checkbox"], | |
input[type="radio"] { | |
border: 1px solid #ccc; | |
} | |
.form-horizontal .control-label { | |
float: none; | |
width: auto; | |
padding-top: 0; | |
text-align: left; | |
} | |
.form-horizontal .controls { | |
margin-left: 0; | |
} | |
.form-horizontal .control-list { | |
padding-top: 0; | |
} | |
.form-horizontal .form-actions { | |
padding-left: 10px; | |
padding-right: 10px; | |
} | |
.modal { | |
top: 10px; | |
left: 10px; | |
right: 10px; | |
} | |
.modal-header .close { | |
padding: 10px; | |
margin: -10px; | |
} | |
.carousel-caption { | |
position: static; | |
} | |
} | |
@media (min-width: 768px) and (max-width: 979px) { | |
.row { | |
margin-left: 0px; | |
*zoom: 1; | |
} | |
.row:before, | |
.row:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.row:after { | |
clear: both; | |
} | |
[class*="span"] { | |
float: left; | |
min-height: 1px; | |
margin-left: 0px; | |
} | |
.container, | |
.navbar-static-top .container, | |
.navbar-fixed-top .container, | |
.navbar-fixed-bottom .container { | |
width: 744px; | |
} | |
.span12 { | |
width: 744px; | |
} | |
.span11 { | |
width: 682px; | |
} | |
.span10 { | |
width: 620px; | |
} | |
.span9 { | |
width: 558px; | |
} | |
.span8 { | |
width: 496px; | |
} | |
.span7 { | |
width: 434px; | |
} | |
.span6 { | |
width: 372px; | |
} | |
.span5 { | |
width: 310px; | |
} | |
.span4 { | |
width: 248px; | |
} | |
.span3 { | |
width: 186px; | |
} | |
.span2 { | |
width: 124px; | |
} | |
.span1 { | |
width: 62px; | |
} | |
.offset12 { | |
margin-left: 744px; | |
} | |
.offset11 { | |
margin-left: 682px; | |
} | |
.offset10 { | |
margin-left: 620px; | |
} | |
.offset9 { | |
margin-left: 558px; | |
} | |
.offset8 { | |
margin-left: 496px; | |
} | |
.offset7 { | |
margin-left: 434px; | |
} | |
.offset6 { | |
margin-left: 372px; | |
} | |
.offset5 { | |
margin-left: 310px; | |
} | |
.offset4 { | |
margin-left: 248px; | |
} | |
.offset3 { | |
margin-left: 186px; | |
} | |
.offset2 { | |
margin-left: 124px; | |
} | |
.offset1 { | |
margin-left: 62px; | |
} | |
.row-fluid { | |
width: 100%; | |
*zoom: 1; | |
} | |
.row-fluid:before, | |
.row-fluid:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.row-fluid:after { | |
clear: both; | |
} | |
.row-fluid [class*="span"] { | |
display: block; | |
width: 100%; | |
min-height: 30px; | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
float: left; | |
margin-left: 0%; | |
*margin-left: -0.052083333333333336%; | |
} | |
.row-fluid [class*="span"]:first-child { | |
margin-left: 0; | |
} | |
.row-fluid .span12 { | |
width: 99.99999999999999%; | |
*width: 99.94791666666666%; | |
} | |
.row-fluid .span11 { | |
width: 91.66666666666666%; | |
*width: 91.61458333333333%; | |
} | |
.row-fluid .span10 { | |
width: 83.33333333333331%; | |
*width: 83.28124999999999%; | |
} | |
.row-fluid .span9 { | |
width: 74.99999999999999%; | |
*width: 74.94791666666666%; | |
} | |
.row-fluid .span8 { | |
width: 66.66666666666666%; | |
*width: 66.61458333333333%; | |
} | |
.row-fluid .span7 { | |
width: 58.33333333333333%; | |
*width: 58.28124999999999%; | |
} | |
.row-fluid .span6 { | |
width: 49.99999999999999%; | |
*width: 49.94791666666666%; | |
} | |
.row-fluid .span5 { | |
width: 41.66666666666666%; | |
*width: 41.61458333333332%; | |
} | |
.row-fluid .span4 { | |
width: 33.33333333333333%; | |
*width: 33.28124999999999%; | |
} | |
.row-fluid .span3 { | |
width: 24.999999999999996%; | |
*width: 24.947916666666664%; | |
} | |
.row-fluid .span2 { | |
width: 16.666666666666664%; | |
*width: 16.614583333333332%; | |
} | |
.row-fluid .span1 { | |
width: 8.333333333333332%; | |
*width: 8.281249999999998%; | |
} | |
.row-fluid .offset12 { | |
margin-left: 99.99999999999999%; | |
*margin-left: 99.89583333333333%; | |
} | |
.row-fluid .offset12:first-child { | |
margin-left: 99.99999999999999%; | |
*margin-left: 99.89583333333333%; | |
} | |
.row-fluid .offset11 { | |
margin-left: 91.66666666666666%; | |
*margin-left: 91.5625%; | |
} | |
.row-fluid .offset11:first-child { | |
margin-left: 91.66666666666666%; | |
*margin-left: 91.5625%; | |
} | |
.row-fluid .offset10 { | |
margin-left: 83.33333333333331%; | |
*margin-left: 83.22916666666666%; | |
} | |
.row-fluid .offset10:first-child { | |
margin-left: 83.33333333333331%; | |
*margin-left: 83.22916666666666%; | |
} | |
.row-fluid .offset9 { | |
margin-left: 74.99999999999999%; | |
*margin-left: 74.89583333333333%; | |
} | |
.row-fluid .offset9:first-child { | |
margin-left: 74.99999999999999%; | |
*margin-left: 74.89583333333333%; | |
} | |
.row-fluid .offset8 { | |
margin-left: 66.66666666666666%; | |
*margin-left: 66.5625%; | |
} | |
.row-fluid .offset8:first-child { | |
margin-left: 66.66666666666666%; | |
*margin-left: 66.5625%; | |
} | |
.row-fluid .offset7 { | |
margin-left: 58.33333333333333%; | |
*margin-left: 58.22916666666666%; | |
} | |
.row-fluid .offset7:first-child { | |
margin-left: 58.33333333333333%; | |
*margin-left: 58.22916666666666%; | |
} | |
.row-fluid .offset6 { | |
margin-left: 49.99999999999999%; | |
*margin-left: 49.89583333333332%; | |
} | |
.row-fluid .offset6:first-child { | |
margin-left: 49.99999999999999%; | |
*margin-left: 49.89583333333332%; | |
} | |
.row-fluid .offset5 { | |
margin-left: 41.66666666666666%; | |
*margin-left: 41.562499999999986%; | |
} | |
.row-fluid .offset5:first-child { | |
margin-left: 41.66666666666666%; | |
*margin-left: 41.562499999999986%; | |
} | |
.row-fluid .offset4 { | |
margin-left: 33.33333333333333%; | |
*margin-left: 33.22916666666666%; | |
} | |
.row-fluid .offset4:first-child { | |
margin-left: 33.33333333333333%; | |
*margin-left: 33.22916666666666%; | |
} | |
.row-fluid .offset3 { | |
margin-left: 24.999999999999996%; | |
*margin-left: 24.895833333333332%; | |
} | |
.row-fluid .offset3:first-child { | |
margin-left: 24.999999999999996%; | |
*margin-left: 24.895833333333332%; | |
} | |
.row-fluid .offset2 { | |
margin-left: 16.666666666666664%; | |
*margin-left: 16.5625%; | |
} | |
.row-fluid .offset2:first-child { | |
margin-left: 16.666666666666664%; | |
*margin-left: 16.5625%; | |
} | |
.row-fluid .offset1 { | |
margin-left: 8.333333333333332%; | |
*margin-left: 8.229166666666664%; | |
} | |
.row-fluid .offset1:first-child { | |
margin-left: 8.333333333333332%; | |
*margin-left: 8.229166666666664%; | |
} | |
input, | |
textarea, | |
.uneditable-input { | |
margin-left: 0; | |
} | |
.controls-row [class*="span"] + [class*="span"] { | |
margin-left: 0px; | |
} | |
input.span12, textarea.span12, .uneditable-input.span12 { | |
width: 730px; | |
} | |
input.span11, textarea.span11, .uneditable-input.span11 { | |
width: 668px; | |
} | |
input.span10, textarea.span10, .uneditable-input.span10 { | |
width: 606px; | |
} | |
input.span9, textarea.span9, .uneditable-input.span9 { | |
width: 544px; | |
} | |
input.span8, textarea.span8, .uneditable-input.span8 { | |
width: 482px; | |
} | |
input.span7, textarea.span7, .uneditable-input.span7 { | |
width: 420px; | |
} | |
input.span6, textarea.span6, .uneditable-input.span6 { | |
width: 358px; | |
} | |
input.span5, textarea.span5, .uneditable-input.span5 { | |
width: 296px; | |
} | |
input.span4, textarea.span4, .uneditable-input.span4 { | |
width: 234px; | |
} | |
input.span3, textarea.span3, .uneditable-input.span3 { | |
width: 172px; | |
} | |
input.span2, textarea.span2, .uneditable-input.span2 { | |
width: 110px; | |
} | |
input.span1, textarea.span1, .uneditable-input.span1 { | |
width: 48px; | |
} | |
} | |
@media (min-width: 1200px) { | |
.row { | |
margin-left: 0px; | |
*zoom: 1; | |
} | |
.row:before, | |
.row:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.row:after { | |
clear: both; | |
} | |
[class*="span"] { | |
float: left; | |
min-height: 1px; | |
margin-left: 0px; | |
} | |
.container, | |
.navbar-static-top .container, | |
.navbar-fixed-top .container, | |
.navbar-fixed-bottom .container { | |
width: 1200px; | |
} | |
.span12 { | |
width: 1200px; | |
} | |
.span11 { | |
width: 1100px; | |
} | |
.span10 { | |
width: 1000px; | |
} | |
.span9 { | |
width: 900px; | |
} | |
.span8 { | |
width: 800px; | |
} | |
.span7 { | |
width: 700px; | |
} | |
.span6 { | |
width: 600px; | |
} | |
.span5 { | |
width: 500px; | |
} | |
.span4 { | |
width: 400px; | |
} | |
.span3 { | |
width: 300px; | |
} | |
.span2 { | |
width: 200px; | |
} | |
.span1 { | |
width: 100px; | |
} | |
.offset12 { | |
margin-left: 1200px; | |
} | |
.offset11 { | |
margin-left: 1100px; | |
} | |
.offset10 { | |
margin-left: 1000px; | |
} | |
.offset9 { | |
margin-left: 900px; | |
} | |
.offset8 { | |
margin-left: 800px; | |
} | |
.offset7 { | |
margin-left: 700px; | |
} | |
.offset6 { | |
margin-left: 600px; | |
} | |
.offset5 { | |
margin-left: 500px; | |
} | |
.offset4 { | |
margin-left: 400px; | |
} | |
.offset3 { | |
margin-left: 300px; | |
} | |
.offset2 { | |
margin-left: 200px; | |
} | |
.offset1 { | |
margin-left: 100px; | |
} | |
.row-fluid { | |
width: 100%; | |
*zoom: 1; | |
} | |
.row-fluid:before, | |
.row-fluid:after { | |
display: table; | |
content: ""; | |
line-height: 0; | |
} | |
.row-fluid:after { | |
clear: both; | |
} | |
.row-fluid [class*="span"] { | |
display: block; | |
width: 100%; | |
min-height: 30px; | |
-webkit-box-sizing: border-box; | |
-moz-box-sizing: border-box; | |
box-sizing: border-box; | |
float: left; | |
margin-left: 0%; | |
*margin-left: -0.052083333333333336%; | |
} | |
.row-fluid [class*="span"]:first-child { | |
margin-left: 0; | |
} | |
.row-fluid .span12 { | |
width: 99.99999999999999%; | |
*width: 99.94791666666666%; | |
} | |
.row-fluid .span11 { | |
width: 91.66666666666666%; | |
*width: 91.61458333333333%; | |
} | |
.row-fluid .span10 { | |
width: 83.33333333333331%; | |
*width: 83.28124999999999%; | |
} | |
.row-fluid .span9 { | |
width: 74.99999999999999%; | |
*width: 74.94791666666666%; | |
} | |
.row-fluid .span8 { | |
width: 66.66666666666666%; | |
*width: 66.61458333333333%; | |
} | |
.row-fluid .span7 { | |
width: 58.33333333333333%; | |
*width: 58.28124999999999%; | |
} | |
.row-fluid .span6 { | |
width: 49.99999999999999%; | |
*width: 49.94791666666666%; | |
} | |
.row-fluid .span5 { | |
width: 41.66666666666666%; | |
*width: 41.61458333333332%; | |
} | |
.row-fluid .span4 { | |
width: 33.33333333333333%; | |
*width: 33.28124999999999%; | |
} | |
.row-fluid .span3 { | |
width: 24.999999999999996%; | |
*width: 24.947916666666664%; | |
} | |
.row-fluid .span2 { | |
width: 16.666666666666664%; | |
*width: 16.614583333333332%; | |
} | |
.row-fluid .span1 { | |
width: 8.333333333333332%; | |
*width: 8.281249999999998%; | |
} | |
.row-fluid .offset12 { | |
margin-left: 99.99999999999999%; | |
*margin-left: 99.89583333333333%; | |
} | |
.row-fluid .offset12:first-child { | |
margin-left: 99.99999999999999%; | |
*margin-left: 99.89583333333333%; | |
} | |
.row-fluid .offset11 { | |
margin-left: 91.66666666666666%; | |
*margin-left: 91.5625%; | |
} | |
.row-fluid .offset11:first-child { | |
margin-left: 91.66666666666666%; | |
*margin-left: 91.5625%; | |
} | |
.row-fluid .offset10 { | |
margin-left: 83.33333333333331%; | |
*margin-left: 83.22916666666666%; | |
} | |
.row-fluid .offset10:first-child { | |
margin-left: 83.33333333333331%; | |
*margin-left: 83.22916666666666%; | |
} | |
.row-fluid .offset9 { | |
margin-left: 74.99999999999999%; | |
*margin-left: 74.89583333333333%; | |
} | |
.row-fluid .offset9:first-child { | |
margin-left: 74.99999999999999%; | |
*margin-left: 74.89583333333333%; | |
} | |
.row-fluid .offset8 { | |
margin-left: 66.66666666666666%; | |
*margin-left: 66.5625%; | |
} | |
.row-fluid .offset8:first-child { | |
margin-left: 66.66666666666666%; | |
*margin-left: 66.5625%; | |
} | |
.row-fluid .offset7 { | |
margin-left: 58.33333333333333%; | |
*margin-left: 58.22916666666666%; | |
} | |
.row-fluid .offset7:first-child { | |
margin-left: 58.33333333333333%; | |
*margin-left: 58.22916666666666%; | |
} | |
.row-fluid .offset6 { | |
margin-left: 49.99999999999999%; | |
*margin-left: 49.89583333333332%; | |
} | |
.row-fluid .offset6:first-child { | |
margin-left: 49.99999999999999%; | |
*margin-left: 49.89583333333332%; | |
} | |
.row-fluid .offset5 { | |
margin-left: 41.66666666666666%; | |
*margin-left: 41.562499999999986%; | |
} | |
.row-fluid .offset5:first-child { | |
margin-left: 41.66666666666666%; | |
*margin-left: 41.562499999999986%; | |
} | |
.row-fluid .offset4 { | |
margin-left: 33.33333333333333%; | |
*margin-left: 33.22916666666666%; | |
} | |
.row-fluid .offset4:first-child { | |
margin-left: 33.33333333333333%; | |
*margin-left: 33.22916666666666%; | |
} | |
.row-fluid .offset3 { | |
margin-left: 24.999999999999996%; | |
*margin-left: 24.895833333333332%; | |
} | |
.row-fluid .offset3:first-child { | |
margin-left: 24.999999999999996%; | |
*margin-left: 24.895833333333332%; | |
} | |
.row-fluid .offset2 { | |
margin-left: 16.666666666666664%; | |
*margin-left: 16.5625%; | |
} | |
.row-fluid .offset2:first-child { | |
margin-left: 16.666666666666664%; | |
*margin-left: 16.5625%; | |
} | |
.row-fluid .offset1 { | |
margin-left: 8.333333333333332%; | |
*margin-left: 8.229166666666664%; | |
} | |
.row-fluid .offset1:first-child { | |
margin-left: 8.333333333333332%; | |
*margin-left: 8.229166666666664%; | |
} | |
input, | |
textarea, | |
.uneditable-input { | |
margin-left: 0; | |
} | |
.controls-row [class*="span"] + [class*="span"] { | |
margin-left: 0px; | |
} | |
input.span12, textarea.span12, .uneditable-input.span12 { | |
width: 1186px; | |
} | |
input.span11, textarea.span11, .uneditable-input.span11 { | |
width: 1086px; | |
} | |
input.span10, textarea.span10, .uneditable-input.span10 { | |
width: 986px; | |
} | |
input.span9, textarea.span9, .uneditable-input.span9 { | |
width: 886px; | |
} | |
input.span8, textarea.span8, .uneditable-input.span8 { | |
width: 786px; | |
} | |
input.span7, textarea.span7, .uneditable-input.span7 { | |
width: 686px; | |
} | |
input.span6, textarea.span6, .uneditable-input.span6 { | |
width: 586px; | |
} | |
input.span5, textarea.span5, .uneditable-input.span5 { | |
width: 486px; | |
} | |
input.span4, textarea.span4, .uneditable-input.span4 { | |
width: 386px; | |
} | |
input.span3, textarea.span3, .uneditable-input.span3 { | |
width: 286px; | |
} | |
input.span2, textarea.span2, .uneditable-input.span2 { | |
width: 186px; | |
} | |
input.span1, textarea.span1, .uneditable-input.span1 { | |
width: 86px; | |
} | |
.thumbnails { | |
margin-left: 0px; | |
} | |
.thumbnails > li { | |
margin-left: 0px; | |
} | |
.row-fluid .thumbnails { | |
margin-left: 0; | |
} | |
} | |
@media (max-width: 979px) { | |
body { | |
padding-top: 0; | |
} | |
.navbar-fixed-top, | |
.navbar-fixed-bottom { | |
position: static; | |
} | |
.navbar-fixed-top { | |
margin-bottom: 20px; | |
} | |
.navbar-fixed-bottom { | |
margin-top: 20px; | |
} | |
.navbar-fixed-top .navbar-inner, | |
.navbar-fixed-bottom .navbar-inner { | |
padding: 5px; | |
} | |
.navbar .container { | |
width: auto; | |
padding: 0; | |
} | |
.navbar .brand { | |
padding-left: 10px; | |
padding-right: 10px; | |
margin: 0 0 0 -5px; | |
} | |
.nav-collapse { | |
clear: both; | |
} | |
.nav-collapse .nav { | |
float: none; | |
margin: 0 0 10px; | |
} | |
.nav-collapse .nav > li { | |
float: none; | |
} | |
.nav-collapse .nav > li > a { | |
margin-bottom: 2px; | |
} | |
.nav-collapse .nav > .divider-vertical { | |
display: none; | |
} | |
.nav-collapse .nav .nav-header { | |
color: #777777; | |
text-shadow: none; | |
} | |
.nav-collapse .nav > li > a, | |
.nav-collapse .dropdown-menu a { | |
padding: 9px 15px; | |
font-weight: bold; | |
color: #777777; | |
-webkit-border-radius: 3px; | |
-moz-border-radius: 3px; | |
border-radius: 3px; | |
} | |
.nav-collapse .btn { | |
padding: 4px 10px 4px; | |
font-weight: normal; | |
-webkit-border-radius: 4px; | |
-moz-border-radius: 4px; | |
border-radius: 4px; | |
} | |
.nav-collapse .dropdown-menu li + li a { | |
margin-bottom: 2px; | |
} | |
.nav-collapse .nav > li > a:hover, | |
.nav-collapse .dropdown-menu a:hover { | |
background-color: #f2f2f2; | |
} | |
.navbar-inverse .nav-collapse .nav > li > a:hover, | |
.navbar-inverse .nav-collapse .dropdown-menu a:hover { | |
background-color: #111111; | |
} | |
.nav-collapse.in .btn-group { | |
margin-top: 5px; | |
padding: 0; | |
} | |
.nav-collapse .dropdown-menu { | |
position: static; | |
top: auto; | |
left: auto; | |
float: none; | |
display: block; | |
max-width: none; | |
margin: 0 15px; | |
padding: 0; | |
background-color: transparent; | |
border: none; | |
-webkit-border-radius: 0; | |
-moz-border-radius: 0; | |
border-radius: 0; | |
-webkit-box-shadow: none; | |
-moz-box-shadow: none; | |
box-shadow: none; | |
} | |
.nav-collapse .dropdown-menu:before, | |
.nav-collapse .dropdown-menu:after { | |
display: none; | |
} | |
.nav-collapse .dropdown-menu .divider { | |
display: none; | |
} | |
.nav-collapse .nav > li > .dropdown-menu:before, | |
.nav-collapse .nav > li > .dropdown-menu:after { | |
display: none; | |
} | |
.nav-collapse .navbar-form, | |
.nav-collapse .navbar-search { | |
float: none; | |
padding: 10px 15px; | |
margin: 10px 0; | |
border-top: 1px solid #f2f2f2; | |
border-bottom: 1px solid #f2f2f2; | |
-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); | |
-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); | |
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); | |
} | |
.navbar-inverse .nav-collapse .navbar-form, | |
.navbar-inverse .nav-collapse .navbar-search { | |
border-top-color: #111111; | |
border-bottom-color: #111111; | |
} | |
.navbar .nav-collapse .nav.pull-right { | |
float: none; | |
margin-left: 0; | |
} | |
.nav-collapse, | |
.nav-collapse.collapse { | |
overflow: hidden; | |
height: 0; | |
} | |
.navbar .btn-navbar { | |
display: block; | |
} | |
.navbar-static .navbar-inner { | |
padding-left: 10px; | |
padding-right: 10px; | |
} | |
} | |
@media (min-width: 980px) { | |
.nav-collapse.collapse { | |
height: auto !important; | |
overflow: visible !important; | |
} | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
DIR=`pwd`/`dirname __FILE__` | |
if ! which rails >/dev/null 2>&1; then | |
echo "No such command - rails" | |
echo "Please type \`gem install rails\`" | |
echo | |
exit 1 | |
fi | |
if ! which qmake > /dev/null 2>&1; then | |
if [ "$QMAKE" = "" ]; then | |
if [ -e /usr/lib64/qt4/bin/qmake ]; then | |
export QMAKE=/usr/lib64/qt4/bin/qmake | |
elif [ -e /usr/lib/qt4/bin/qmake ]; then | |
export QMAKE=/usr/lib/qt4/bin/qmake | |
else | |
echo "No such command - qmake" | |
echo "Please install \`yum install qtwebkit-devel\` from epel" | |
echo | |
exit 1 | |
fi | |
else | |
if [ -e $QMAKE ]; then | |
echo "No such command - qmake" | |
echo "Please install \`yum install qtwebkit-devel\` from epel" | |
echo | |
exit 1 | |
fi | |
fi | |
fi | |
if [ ! -e /usr/bin/Xvfb ]; then | |
echo "No such command - Xvfb" | |
echo "Please install \`yum install xorg-x11-server-Xvfb\`" | |
echo | |
exit 1 | |
fi | |
rails new "$1" -T | |
cd "$1" | |
cat << EOF >> Gemfile | |
# console | |
group :development do | |
gem 'pry-rails' | |
gem 'pry-doc' | |
end | |
group :development, :test do | |
gem 'pry-nav' | |
end | |
# testing | |
group :development, :test do | |
gem 'rspec-rails' | |
end | |
group :test do | |
gem 'simplecov', require: false | |
gem 'simplecov-rcov', require: false | |
gem 'capybara' | |
gem 'capybara-webkit' | |
gem 'headless' | |
gem 'connection_pool' | |
end | |
EOF | |
bundle install | |
# | |
# rspec settings. | |
# | |
bundle exec rails g rspec:install | |
cat << EOF > .rspec | |
--color | |
--drb | |
EOF | |
cat << EOF > .simplecov | |
require 'simplecov-rcov' | |
SimpleCov.formatter = Class.new.tap do |cls| | |
cls.class_eval do | |
def format(result) | |
SimpleCov::Formatter::HTMLFormatter.new.format(result) | |
SimpleCov::Formatter::RcovFormatter.new.format(result) | |
end | |
end | |
end | |
SimpleCov.start 'rails' | |
EOF | |
cat << EOF > spec/spec_helper.rb | |
require 'simplecov' | |
ENV["RAILS_ENV"] ||= 'test' | |
require File.expand_path("../../config/environment", __FILE__) | |
require 'rspec/rails' | |
require 'rspec/autorun' | |
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f} | |
RSpec.configure do |config| | |
config.mock_with :rspec | |
config.fixture_path = ::Rails.root.join('spec', 'fixtures') | |
config.use_transactional_fixtures = true | |
config.filter_run focus: true | |
config.run_all_when_everything_filtered = true | |
config.infer_base_class_for_anonymous_controllers = false | |
config.order = "random" | |
config.treat_symbols_as_metadata_keys_with_true_values = true | |
end | |
Capybara.javascript_driver = :webkit | |
class ActiveRecord::Base | |
mattr_accessor :shared_connection | |
@@shared_connection = nil | |
def self.connection | |
@@shared_connection || ConnectionPool::Wrapper.new(:size => 1) { retrieve_connection } | |
end | |
end | |
ActiveRecord::Base.shared_connection = ActiveRecord::Base.connection | |
EOF | |
mkdir -p spec/support | |
cat << EOF > spec/support/headless.rb | |
Headless.new.tap do |h| | |
h.start | |
at_exit { h.destroy } | |
end | |
EOF | |
cat << EOF > lib/tasks/rcov.rake | |
# Remove spec:rcov task behavior. | |
# | |
Rake::Task['spec:rcov'].clear | |
EOF | |
# | |
# localize. | |
# | |
perl -pi -e 's/# config\.i18n\.default_locale = :de/config.i18n.default_locale = :ja/g' config/application.rb | |
cat << EOF > config/locales/ja.yml | |
ja: | |
activerecord: | |
models: | |
attributes: | |
application: | |
title: $1 | |
EOF | |
# | |
# config.ru | |
# | |
perl -pi -e "s/(run .+Application)/map ActionController::Base.config.relative_url_root || \'\/\' do\n \1\nend/g" config.ru | |
# | |
# add charset to layout. | |
# | |
cat << EOF > app/views/layouts/application.html.erb | |
<!DOCTYPE html> | |
<html> | |
<head> | |
<title><%= t('application.title') %></title> | |
<meta charset="utf-8" /> | |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> | |
<meta http-equiv="Content-Style-Type" content="text/css; charset=UTF-8" /> | |
<meta http-equiv="Content-Script-Type" content="text/javascript; charset=UTF-8" /> | |
<%= favicon_link_tag %> | |
<%= stylesheet_link_tag "application", :media => "all" %> | |
<%= csrf_meta_tags %> | |
</head> | |
<body> | |
<%= yield %> | |
<%= javascript_include_tag "application" %> | |
</body> | |
</html> | |
EOF | |
# | |
# javascript and stylesheet. ( and bootstrap setting ) | |
# | |
rm app/assets/javascripts/application.js | |
cat << EOF > app/assets/javascripts/application.js.coffee | |
# This is a manifest file that'll be compiled into application.js, which will include all the files | |
# listed below. | |
# | |
# Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts, | |
# or vendor/assets/javascripts of plugins, if any, can be referenced here using a relative path. | |
# | |
# It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the | |
# the compiled file. | |
# | |
# WARNING: THE FIRST BLANK LINE MARKS THE END OF WHAT'S TO BE PROCESSED, ANY BLANK LINE SHOULD | |
# GO AFTER THE REQUIRES BELOW. | |
# | |
#= require jquery | |
#= require jquery_ujs | |
#= require jquery-ui | |
#= require bootstrap | |
#= require_tree . | |
$ -> | |
isSupported = (attr) -> | |
not not (attr of document.createElement('input')) | |
# support autofocus attribute. | |
if not isSupported('autofocus') | |
$('[autofocus]').focus() | |
# support required attribute. | |
if not isSupported('required') | |
$('[required]').removeAttr('required') | |
$('.disable-selection').disableSelection() | |
@ | |
EOF | |
rm app/assets/stylesheets/application.css | |
cat << EOF > app/assets/stylesheets/application.scss | |
/* | |
* This is a manifest file that'll be compiled into application.css, which will include all the files | |
* listed below. | |
* | |
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets, | |
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path. | |
* | |
* You're free to add application-wide styles to this file and they'll appear at the top of the | |
* compiled file, but it's generally better to create a new file per style scope. | |
* | |
*= require bootstrap | |
*= require_self | |
*= require_tree . | |
*/ | |
EOF | |
cp ${DIR}/bootstrap.js vendor/assets/javascripts/ | |
cp ${DIR}/bootstrap.scss vendor/assets/stylesheets/ | |
mkdir -p vendor/assets/images/ | |
cp ${DIR}/glyphicons-halflings.png vendor/assets/images/ | |
cp ${DIR}/glyphicons-halflings-white.png vendor/assets/images/ | |
# | |
# Remove index.html | |
# | |
rm public/index.html | |
# | |
# staging environment and database settings. | |
# | |
cp config/environments/production.rb config/environments/staging.rb | |
cat << EOF >> config/database.yml | |
staging: | |
adapter: sqlite3 | |
database: db/staging.sqlite3 | |
pool: 5 | |
timeout: 5000 | |
EOF | |
bundle exec rake db:migrate | |
cp config/database.yml config/database.yml.example | |
# | |
# Add welcome/index | |
# | |
bundle exec rails g controller welcome index | |
perl -pi -e "s/^ *$//g" config/routes.rb | |
perl -pi -e "s/^ *#.*$//g" config/routes.rb | |
perl -i.org -ne '/^\s*$/ or print' config/routes.rb | |
perl -pi -e "s/^ get \"welcome\/index\"$/ root to: 'welcome#index', via: :get/g" config/routes.rb | |
# | |
# .gitignore | |
# | |
cat << EOF >> .gitignore | |
/.bundle | |
/db/*.sqlite3 | |
/log/*.log | |
/tmp | |
/coverage | |
/config/database.yml | |
*~ | |
.swp | |
EOF | |
# | |
# git first commit. | |
# | |
git init && git add . && git commit -m "First commit." |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment