├── init.rb ├── lib ├── compass_twitter_bootstrap │ ├── engine.rb │ └── version.rb └── compass_twitter_bootstrap.rb ├── vendor └── assets │ ├── fonts │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.ttf │ └── fontawesome-webfont.woff │ ├── images │ ├── glyphicons-halflings.png │ └── glyphicons-halflings-white.png │ └── javascripts │ ├── bootstrap-all.js │ ├── bootstrap-transition.js │ ├── bootstrap-alert.js │ ├── bootstrap-button.js │ ├── bootstrap-popover.js │ ├── bootstrap-affix.js │ ├── bootstrap-tab.js │ ├── bootstrap-dropdown.js │ ├── bootstrap-scrollspy.js │ ├── bootstrap-collapse.js │ └── bootstrap-carousel.js ├── Gemfile ├── Rakefile ├── .gitignore ├── stylesheets_sass ├── compass_twitter_bootstrap │ ├── _component-animations.sass │ ├── _layouts.sass │ ├── _utilities.sass │ ├── _breadcrumbs.sass │ ├── _grid.sass │ ├── _responsive-768px-979px.sass │ ├── _hero-unit.sass │ ├── _responsive-1200px-min.sass │ ├── _wells.sass │ ├── _accordion.sass │ ├── _close.sass │ ├── _pager.sass │ ├── _media.sass │ ├── _scaffolding.sass │ ├── _thumbnails.sass │ ├── _code.sass │ ├── _alerts.sass │ ├── _responsive-utilities.sass │ ├── _tooltip.sass │ ├── _modals.sass │ ├── _labels-badges.sass │ ├── _carousel.sass │ ├── _pagination.sass │ ├── _progress-bars.sass │ ├── _popovers.sass │ ├── _responsive-767px-max.sass │ ├── _responsive-navbar.sass │ ├── _reset.sass │ ├── _buttons.sass │ ├── _type.sass │ ├── _button-groups.sass │ ├── _dropdowns.sass │ └── _tables.sass ├── _compass_twitter_bootstrap_responsive.sass ├── _compass_twitter_bootstrap.sass └── _compass_twitter_bootstrap_awesome.sass ├── stylesheets ├── compass_twitter_bootstrap │ ├── _layouts.scss │ ├── _component-animations.scss │ ├── _utilities.scss │ ├── _grid.scss │ ├── _breadcrumbs.scss │ ├── _responsive-768px-979px.scss │ ├── _hero-unit.scss │ ├── _responsive-1200px-min.scss │ ├── _wells.scss │ ├── _accordion.scss │ ├── _close.scss │ ├── _pager.scss │ ├── _media.scss │ ├── _scaffolding.scss │ ├── _thumbnails.scss │ ├── _code.scss │ ├── _alerts.scss │ ├── _responsive-utilities.scss │ ├── _tooltip.scss │ ├── _labels-badges.scss │ ├── _modals.scss │ ├── _carousel.scss │ ├── _pagination.scss │ ├── _progress-bars.scss │ ├── _popovers.scss │ ├── _responsive-767px-max.scss │ ├── _reset.scss │ ├── _responsive-navbar.scss │ ├── _type.scss │ └── _buttons.scss ├── _compass_twitter_bootstrap_responsive.scss ├── _compass_twitter_bootstrap.scss └── _compass_twitter_bootstrap_awesome.scss ├── compass_twitter_bootstrap.gemspec ├── CHANGELOG.md └── README.md /init.rb: -------------------------------------------------------------------------------- 1 | require 'compass_twitter_bootstrap.rb' -------------------------------------------------------------------------------- /lib/compass_twitter_bootstrap/engine.rb: -------------------------------------------------------------------------------- 1 | module CompassTwitterBootstrap 2 | class Engine < ::Rails::Engine 3 | end 4 | end 5 | -------------------------------------------------------------------------------- /vendor/assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vwall/compass-twitter-bootstrap/HEAD/vendor/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | # Specify your gem's dependencies in compass_twitter_bootstrap.gemspec 4 | gemspec 5 | 6 | gem 'rake' 7 | -------------------------------------------------------------------------------- /lib/compass_twitter_bootstrap/version.rb: -------------------------------------------------------------------------------- 1 | module CompassTwitterBootstrap 2 | VERSION = '2.3.2' unless defined?(CompassTwitterBootstrap::VERSION) 3 | end -------------------------------------------------------------------------------- /vendor/assets/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vwall/compass-twitter-bootstrap/HEAD/vendor/assets/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /vendor/assets/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vwall/compass-twitter-bootstrap/HEAD/vendor/assets/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /vendor/assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vwall/compass-twitter-bootstrap/HEAD/vendor/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /vendor/assets/images/glyphicons-halflings.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vwall/compass-twitter-bootstrap/HEAD/vendor/assets/images/glyphicons-halflings.png -------------------------------------------------------------------------------- /Rakefile: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env rake 2 | require "bundler/gem_tasks" 3 | 4 | desc 'Convert less to scss' 5 | task :convert do 6 | ruby('build/convert.rb') 7 | end 8 | -------------------------------------------------------------------------------- /vendor/assets/images/glyphicons-halflings-white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vwall/compass-twitter-bootstrap/HEAD/vendor/assets/images/glyphicons-halflings-white.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.gem 2 | *.rbc 3 | .bundle 4 | .config 5 | .yardoc 6 | .DS_Store 7 | Gemfile.lock 8 | InstalledFiles 9 | _yardoc 10 | coverage 11 | doc/ 12 | lib/bundler/man 13 | pkg 14 | rdoc 15 | spec/reports 16 | test/tmp 17 | test/version_tmp 18 | tmp 19 | .sass-cache 20 | -------------------------------------------------------------------------------- /lib/compass_twitter_bootstrap.rb: -------------------------------------------------------------------------------- 1 | require "compass_twitter_bootstrap/version" 2 | 3 | if defined?(::Rails) && ::Rails.version >= "3.1" 4 | require 'compass_twitter_bootstrap/engine' 5 | end 6 | 7 | require 'compass' 8 | Compass::Frameworks.register("twitter_bootstrap", :path => "#{File.dirname(__FILE__)}/..") 9 | 10 | module CompassTwitterBootstrap 11 | STYLESHEETS = File.expand_path("../stylesheets", __FILE__) 12 | end 13 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_component-animations.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Component animations 3 | // -------------------------------------------------- 4 | 5 | .fade 6 | opacity: 0 7 | +ctb-transition(opacity 0.15s linear) 8 | &.in 9 | opacity: 1 10 | 11 | .collapse 12 | position: relative 13 | height: 0 14 | overflow: hidden 15 | +ctb-transition(height 0.35s ease) 16 | &.in 17 | height: auto 18 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_layouts.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Layouts 3 | // -------------------------------------------------- 4 | 5 | // Container (centered, fixed-width layouts) 6 | .container 7 | +ctb-container-fixed 8 | 9 | // Fluid layouts (left aligned, with sidebar, min- & max-width content) 10 | .container-fluid 11 | padding-right: $gridGutterWidth 12 | padding-left: $gridGutterWidth 13 | +ctb-clearfix 14 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_layouts.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Layouts 3 | // -------------------------------------------------- 4 | 5 | 6 | // Container (centered, fixed-width layouts) 7 | .container { 8 | @include ctb-container-fixed(); 9 | } 10 | 11 | // Fluid layouts (left aligned, with sidebar, min- & max-width content) 12 | .container-fluid { 13 | padding-right: $gridGutterWidth; 14 | padding-left: $gridGutterWidth; 15 | @include ctb-clearfix(); 16 | } -------------------------------------------------------------------------------- /vendor/assets/javascripts/bootstrap-all.js: -------------------------------------------------------------------------------- 1 | //=require bootstrap-transition 2 | //=require bootstrap-alert 3 | //=require bootstrap-affix 4 | //=require bootstrap-modal 5 | //=require bootstrap-dropdown 6 | //=require bootstrap-scrollspy 7 | //=require bootstrap-tab 8 | //=require bootstrap-tooltip 9 | //=require bootstrap-popover 10 | //=require bootstrap-button 11 | //=require bootstrap-collapse 12 | //=require bootstrap-carousel 13 | //=require bootstrap-typeahead 14 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_utilities.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Utility classes 3 | // -------------------------------------------------- 4 | 5 | // Quick floats 6 | .pull-right 7 | float: right 8 | 9 | .pull-left 10 | float: left 11 | 12 | // Toggling content 13 | .hide 14 | display: none 15 | 16 | .show 17 | display: block 18 | 19 | // Visibility 20 | .invisible 21 | visibility: hidden 22 | 23 | // For Affix plugin 24 | .affix 25 | position: fixed 26 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_component-animations.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Component animations 3 | // -------------------------------------------------- 4 | 5 | 6 | .fade { 7 | opacity: 0; 8 | @include ctb-transition(opacity .15s linear); 9 | &.in { 10 | opacity: 1; 11 | } 12 | } 13 | 14 | .collapse { 15 | position: relative; 16 | height: 0; 17 | overflow: hidden; 18 | @include ctb-transition(height .35s ease); 19 | &.in { 20 | height: auto; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_utilities.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Utility classes 3 | // -------------------------------------------------- 4 | 5 | 6 | // Quick floats 7 | .pull-right { 8 | float: right; 9 | } 10 | .pull-left { 11 | float: left; 12 | } 13 | 14 | // Toggling content 15 | .hide { 16 | display: none; 17 | } 18 | .show { 19 | display: block; 20 | } 21 | 22 | // Visibility 23 | .invisible { 24 | visibility: hidden; 25 | } 26 | 27 | // For Affix plugin 28 | .affix { 29 | position: fixed; 30 | } 31 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_breadcrumbs.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Breadcrumbs 3 | // -------------------------------------------------- 4 | 5 | .breadcrumb 6 | padding: 8px 15px 7 | margin: 0 0 $baseLineHeight 8 | list-style: none 9 | background-color: #f5f5f5 10 | +ctb-border-radius($baseBorderRadius) 11 | > li 12 | display: inline-block 13 | +ctb-ie7-inline-block 14 | text-shadow: 0 1px 0 $white 15 | > .divider 16 | padding: 0 5px 17 | color: #ccc 18 | > .active 19 | color: $grayLight 20 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_grid.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Grid system 3 | // -------------------------------------------------- 4 | 5 | // Fixed (940px) 6 | +ctb-grid-core($gridColumnWidth, $gridGutterWidth) 7 | 8 | // Fluid (940px) 9 | +ctb-grid-fluid($fluidGridColumnWidth, $fluidGridGutterWidth) 10 | 11 | // Reset utility classes due to specificity 12 | 13 | [class*="span"].hide, 14 | .row-fluid [class*="span"].hide 15 | display: none 16 | 17 | [class*="span"].pull-right, 18 | .row-fluid [class*="span"].pull-right 19 | float: right 20 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_responsive-768px-979px.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Responsive: Tablet to desktop 3 | // -------------------------------------------------- 4 | 5 | @media (min-width: 768px) and (max-width: 979px) 6 | // Fixed grid 7 | +ctb-grid-core($gridColumnWidth768, $gridGutterWidth768) 8 | // Fluid grid 9 | +ctb-grid-fluid($fluidGridColumnWidth768, $fluidGridGutterWidth768) 10 | // Input grid 11 | +ctb-grid-input($gridColumnWidth768, $gridGutterWidth768) 12 | // No need to reset .thumbnails here since it's the same $gridGutterWidth 13 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_grid.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Grid system 3 | // -------------------------------------------------- 4 | 5 | 6 | // Fixed (940px) 7 | @include ctb-grid-core($gridColumnWidth, $gridGutterWidth); 8 | 9 | // Fluid (940px) 10 | @include ctb-grid-fluid($fluidGridColumnWidth, $fluidGridGutterWidth); 11 | 12 | // Reset utility classes due to specificity 13 | [class*="span"].hide, 14 | .row-fluid [class*="span"].hide { 15 | display: none; 16 | } 17 | 18 | [class*="span"].pull-right, 19 | .row-fluid [class*="span"].pull-right { 20 | float: right; 21 | } 22 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_breadcrumbs.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Breadcrumbs 3 | // -------------------------------------------------- 4 | 5 | 6 | .breadcrumb { 7 | padding: 8px 15px; 8 | margin: 0 0 $baseLineHeight; 9 | list-style: none; 10 | background-color: #f5f5f5; 11 | @include ctb-border-radius($baseBorderRadius); 12 | > li { 13 | display: inline-block; 14 | @include ctb-ie7-inline-block(); 15 | text-shadow: 0 1px 0 $white; 16 | > .divider { 17 | padding: 0 5px; 18 | color: #ccc; 19 | } 20 | } 21 | > .active { 22 | color: $grayLight; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_responsive-768px-979px.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Responsive: Tablet to desktop 3 | // -------------------------------------------------- 4 | 5 | 6 | @media (min-width: 768px) and (max-width: 979px) { 7 | 8 | // Fixed grid 9 | @include ctb-grid-core($gridColumnWidth768, $gridGutterWidth768); 10 | 11 | // Fluid grid 12 | @include ctb-grid-fluid($fluidGridColumnWidth768, $fluidGridGutterWidth768); 13 | 14 | // Input grid 15 | @include ctb-grid-input($gridColumnWidth768, $gridGutterWidth768); 16 | 17 | // No need to reset .thumbnails here since it's the same $gridGutterWidth 18 | 19 | } 20 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_hero-unit.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Hero unit 3 | // -------------------------------------------------- 4 | 5 | .hero-unit 6 | padding: 60px 7 | margin-bottom: 30px 8 | font-size: 18px 9 | font-weight: 200 10 | line-height: $baseLineHeight * 1.5 11 | color: $heroUnitLeadColor 12 | background-color: $heroUnitBackground 13 | +ctb-border-radius(6px) 14 | h1 15 | margin-bottom: 0 16 | font-size: 60px 17 | line-height: 1 18 | color: $heroUnitHeadingColor 19 | letter-spacing: -1px 20 | li 21 | line-height: $baseLineHeight * 1.5 22 | // Reset since we specify in type.less 23 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_responsive-1200px-min.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Responsive: Large desktop and up 3 | // -------------------------------------------------- 4 | 5 | @media (min-width: 1200px) 6 | // Fixed grid 7 | +ctb-grid-core($gridColumnWidth1200, $gridGutterWidth1200) 8 | // Fluid grid 9 | +ctb-grid-fluid($fluidGridColumnWidth1200, $fluidGridGutterWidth1200) 10 | // Input grid 11 | +ctb-grid-input($gridColumnWidth1200, $gridGutterWidth1200) 12 | // Thumbnails 13 | .thumbnails 14 | margin-left: -$gridGutterWidth1200 15 | .thumbnails > li 16 | margin-left: $gridGutterWidth1200 17 | .row-fluid .thumbnails 18 | margin-left: 0 19 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_hero-unit.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Hero unit 3 | // -------------------------------------------------- 4 | 5 | 6 | .hero-unit { 7 | padding: 60px; 8 | margin-bottom: 30px; 9 | font-size: 18px; 10 | font-weight: 200; 11 | line-height: $baseLineHeight * 1.5; 12 | color: $heroUnitLeadColor; 13 | background-color: $heroUnitBackground; 14 | @include ctb-border-radius(6px); 15 | h1 { 16 | margin-bottom: 0; 17 | font-size: 60px; 18 | line-height: 1; 19 | color: $heroUnitHeadingColor; 20 | letter-spacing: -1px; 21 | } 22 | li { 23 | line-height: $baseLineHeight * 1.5; // Reset since we specify in type.less 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_wells.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Wells 3 | // -------------------------------------------------- 4 | 5 | // Base class 6 | .well 7 | min-height: 20px 8 | padding: 19px 9 | margin-bottom: 20px 10 | background-color: $wellBackground 11 | border: 1px solid darken($wellBackground, 7%) 12 | +ctb-border-radius($baseBorderRadius) 13 | +ctb-box-shadow(inset 0 1px 1px rgba(0, 0, 0, 0.05)) 14 | blockquote 15 | border-color: #ddd 16 | border-color: rgba(0, 0, 0, 0.15) 17 | 18 | // Sizes 19 | .well-large 20 | padding: 24px 21 | +ctb-border-radius($borderRadiusLarge) 22 | 23 | .well-small 24 | padding: 9px 25 | +ctb-border-radius($borderRadiusSmall) 26 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_responsive-1200px-min.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Responsive: Large desktop and up 3 | // -------------------------------------------------- 4 | 5 | 6 | @media (min-width: 1200px) { 7 | 8 | // Fixed grid 9 | @include ctb-grid-core($gridColumnWidth1200, $gridGutterWidth1200); 10 | 11 | // Fluid grid 12 | @include ctb-grid-fluid($fluidGridColumnWidth1200, $fluidGridGutterWidth1200); 13 | 14 | // Input grid 15 | @include ctb-grid-input($gridColumnWidth1200, $gridGutterWidth1200); 16 | 17 | // Thumbnails 18 | .thumbnails { 19 | margin-left: -$gridGutterWidth1200; 20 | } 21 | .thumbnails > li { 22 | margin-left: $gridGutterWidth1200; 23 | } 24 | .row-fluid .thumbnails { 25 | margin-left: 0; 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_wells.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Wells 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .well { 8 | min-height: 20px; 9 | padding: 19px; 10 | margin-bottom: 20px; 11 | background-color: $wellBackground; 12 | border: 1px solid darken($wellBackground, 7%); 13 | @include ctb-border-radius($baseBorderRadius); 14 | @include ctb-box-shadow(inset 0 1px 1px rgba(0,0,0,.05)); 15 | blockquote { 16 | border-color: #ddd; 17 | border-color: rgba(0,0,0,.15); 18 | } 19 | } 20 | 21 | // Sizes 22 | .well-large { 23 | padding: 24px; 24 | @include ctb-border-radius($borderRadiusLarge); 25 | } 26 | .well-small { 27 | padding: 9px; 28 | @include ctb-border-radius($borderRadiusSmall); 29 | } 30 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_accordion.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Accordion 3 | // -------------------------------------------------- 4 | 5 | // Parent container 6 | .accordion 7 | margin-bottom: $baseLineHeight 8 | 9 | // Group == heading + body 10 | .accordion-group 11 | margin-bottom: 2px 12 | border: 1px solid #e5e5e5 13 | +ctb-border-radius($baseBorderRadius) 14 | 15 | .accordion-heading 16 | border-bottom: 0 17 | 18 | .accordion-heading .accordion-toggle 19 | display: block 20 | padding: 8px 15px 21 | 22 | // General toggle styles 23 | .accordion-toggle 24 | cursor: pointer 25 | 26 | // Inner needs the styles because you can't animate properly with any styles on the element 27 | .accordion-inner 28 | padding: 9px 15px 29 | border-top: 1px solid #e5e5e5 30 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_close.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Close icons 3 | // -------------------------------------------------- 4 | 5 | .close 6 | float: right 7 | font-size: 20px 8 | font-weight: bold 9 | line-height: $baseLineHeight 10 | color: $black 11 | text-shadow: 0 1px 0 rgba(255, 255, 255, 1) 12 | +ctb-opacity(0.2) 13 | &:hover, 14 | &:focus 15 | color: $black 16 | text-decoration: none 17 | cursor: pointer 18 | +ctb-opacity(0.4) 19 | 20 | // Additional properties for button version 21 | // iOS requires the button element instead of an anchor tag. 22 | // If you want the anchor version, it requires `href="#"`. 23 | button.close 24 | padding: 0 25 | cursor: pointer 26 | background: transparent 27 | border: 0 28 | -webkit-appearance: none 29 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_accordion.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Accordion 3 | // -------------------------------------------------- 4 | 5 | 6 | // Parent container 7 | .accordion { 8 | margin-bottom: $baseLineHeight; 9 | } 10 | 11 | // Group == heading + body 12 | .accordion-group { 13 | margin-bottom: 2px; 14 | border: 1px solid #e5e5e5; 15 | @include ctb-border-radius($baseBorderRadius); 16 | } 17 | .accordion-heading { 18 | border-bottom: 0; 19 | } 20 | .accordion-heading .accordion-toggle { 21 | display: block; 22 | padding: 8px 15px; 23 | } 24 | 25 | // General toggle styles 26 | .accordion-toggle { 27 | cursor: pointer; 28 | } 29 | 30 | // Inner needs the styles because you can't animate properly with any styles on the element 31 | .accordion-inner { 32 | padding: 9px 15px; 33 | border-top: 1px solid #e5e5e5; 34 | } 35 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_close.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Close icons 3 | // -------------------------------------------------- 4 | 5 | 6 | .close { 7 | float: right; 8 | font-size: 20px; 9 | font-weight: bold; 10 | line-height: $baseLineHeight; 11 | color: $black; 12 | text-shadow: 0 1px 0 rgba(255,255,255,1); 13 | @include ctb-opacity(0.2); 14 | &:hover, 15 | &:focus { 16 | color: $black; 17 | text-decoration: none; 18 | cursor: pointer; 19 | @include ctb-opacity(0.4); 20 | } 21 | } 22 | 23 | // Additional properties for button version 24 | // iOS requires the button element instead of an anchor tag. 25 | // If you want the anchor version, it requires `href="#"`. 26 | button.close { 27 | padding: 0; 28 | cursor: pointer; 29 | background: transparent; 30 | border: 0; 31 | -webkit-appearance: none; 32 | } -------------------------------------------------------------------------------- /compass_twitter_bootstrap.gemspec: -------------------------------------------------------------------------------- 1 | # -*- encoding: utf-8 -*- 2 | require File.expand_path('../lib/compass_twitter_bootstrap/version', __FILE__) 3 | 4 | Gem::Specification.new do |gem| 5 | gem.authors = ["Vincent"] 6 | gem.email = ["vrwaller@gmail.com"] 7 | gem.description = %q{Compass/SCSS version of the twitter bootstrap} 8 | gem.summary = %q{Compass Twitter Bootstrap} 9 | 10 | gem.homepage = "https://github.com/vwall/compass-twitter-bootstrap" 11 | 12 | gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) } 13 | gem.files = `git ls-files`.split("\n") 14 | gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n") 15 | gem.name = "compass_twitter_bootstrap" 16 | gem.require_paths = ["lib"] 17 | gem.version = CompassTwitterBootstrap::VERSION 18 | 19 | gem.add_runtime_dependency "compass" 20 | end 21 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_pager.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Pager pagination 3 | // -------------------------------------------------- 4 | 5 | .pager 6 | margin: $baseLineHeight 0 7 | list-style: none 8 | text-align: center 9 | +ctb-clearfix 10 | 11 | .pager li 12 | display: inline 13 | 14 | .pager li > a, 15 | .pager li > span 16 | display: inline-block 17 | padding: 5px 14px 18 | background-color: #fff 19 | border: 1px solid #ddd 20 | +ctb-border-radius(15px) 21 | 22 | .pager li > a:hover, 23 | .pager li > a:focus 24 | text-decoration: none 25 | background-color: #f5f5f5 26 | 27 | .pager .next > a, 28 | .pager .next > span 29 | float: right 30 | 31 | .pager .previous > a, 32 | .pager .previous > span 33 | float: left 34 | 35 | .pager .disabled > a, 36 | .pager .disabled > a:hover, 37 | .pager .disabled > a:focus, 38 | .pager .disabled > span 39 | color: $grayLight 40 | background-color: #fff 41 | cursor: default 42 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_pager.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Pager pagination 3 | // -------------------------------------------------- 4 | 5 | 6 | .pager { 7 | margin: $baseLineHeight 0; 8 | list-style: none; 9 | text-align: center; 10 | @include ctb-clearfix(); 11 | } 12 | .pager li { 13 | display: inline; 14 | } 15 | .pager li > a, 16 | .pager li > span { 17 | display: inline-block; 18 | padding: 5px 14px; 19 | background-color: #fff; 20 | border: 1px solid #ddd; 21 | @include ctb-border-radius(15px); 22 | } 23 | .pager li > a:hover, 24 | .pager li > a:focus { 25 | text-decoration: none; 26 | background-color: #f5f5f5; 27 | } 28 | .pager .next > a, 29 | .pager .next > span { 30 | float: right; 31 | } 32 | .pager .previous > a, 33 | .pager .previous > span { 34 | float: left; 35 | } 36 | .pager .disabled > a, 37 | .pager .disabled > a:hover, 38 | .pager .disabled > a:focus, 39 | .pager .disabled > span { 40 | color: $grayLight; 41 | background-color: #fff; 42 | cursor: default; 43 | } -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_media.sass: -------------------------------------------------------------------------------- 1 | // Media objects 2 | // Source: http://stubbornella.org/content/?p=497 3 | // -------------------------------------------------- 4 | 5 | // Common styles 6 | // ------------------------- 7 | 8 | // Clear the floats 9 | 10 | .media, 11 | .media-body 12 | overflow: hidden 13 | *overflow: visible 14 | zoom: 1 15 | 16 | // Proper spacing between instances of .media 17 | 18 | .media, 19 | .media .media 20 | margin-top: 15px 21 | 22 | .media:first-child 23 | margin-top: 0 24 | 25 | // For images and videos, set to block 26 | .media-object 27 | display: block 28 | 29 | // Reset margins on headings for tighter default spacing 30 | .media-heading 31 | margin: 0 0 5px 32 | 33 | // Media image alignment 34 | // ------------------------- 35 | 36 | .media > .pull-left 37 | margin-right: 10px 38 | 39 | .media > .pull-right 40 | margin-left: 10px 41 | 42 | // Media list variation 43 | // ------------------------- 44 | 45 | // Undo default ul/ol styles 46 | .media-list 47 | margin-left: 0 48 | list-style: none 49 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_scaffolding.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Scaffolding 3 | // -------------------------------------------------- 4 | 5 | // Body reset 6 | // ------------------------- 7 | 8 | body 9 | margin: 0 10 | font-family: $baseFontFamily 11 | font-size: $baseFontSize 12 | line-height: $baseLineHeight 13 | color: $textColor 14 | background-color: $bodyBackground 15 | 16 | // Links 17 | // ------------------------- 18 | 19 | a 20 | color: $linkColor 21 | text-decoration: none 22 | 23 | a:hover, 24 | a:focus 25 | color: $linkColorHover 26 | text-decoration: underline 27 | 28 | // Images 29 | // ------------------------- 30 | 31 | // Rounded corners 32 | .img-rounded 33 | +ctb-border-radius(6px) 34 | 35 | // Add polaroid-esque trim 36 | .img-polaroid 37 | padding: 4px 38 | background-color: #fff 39 | border: 1px solid #ccc 40 | border: 1px solid rgba(0, 0, 0, 0.2) 41 | +ctb-box-shadow(0 1px 3px rgba(0, 0, 0, 0.1)) 42 | 43 | // Perfect circle 44 | .img-circle 45 | +ctb-border-radius(500px) 46 | // crank the border-radius so it works with most reasonably sized images 47 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_media.scss: -------------------------------------------------------------------------------- 1 | // Media objects 2 | // Source: http://stubbornella.org/content/?p=497 3 | // -------------------------------------------------- 4 | 5 | 6 | // Common styles 7 | // ------------------------- 8 | 9 | // Clear the floats 10 | .media, 11 | .media-body { 12 | overflow: hidden; 13 | *overflow: visible; 14 | zoom: 1; 15 | } 16 | 17 | // Proper spacing between instances of .media 18 | .media, 19 | .media .media { 20 | margin-top: 15px; 21 | } 22 | .media:first-child { 23 | margin-top: 0; 24 | } 25 | 26 | // For images and videos, set to block 27 | .media-object { 28 | display: block; 29 | } 30 | 31 | // Reset margins on headings for tighter default spacing 32 | .media-heading { 33 | margin: 0 0 5px; 34 | } 35 | 36 | 37 | // Media image alignment 38 | // ------------------------- 39 | 40 | .media > .pull-left { 41 | margin-right: 10px; 42 | } 43 | .media > .pull-right { 44 | margin-left: 10px; 45 | } 46 | 47 | 48 | // Media list variation 49 | // ------------------------- 50 | 51 | // Undo default ul/ol styles 52 | .media-list { 53 | margin-left: 0; 54 | list-style: none; 55 | } 56 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_scaffolding.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Scaffolding 3 | // -------------------------------------------------- 4 | 5 | 6 | // Body reset 7 | // ------------------------- 8 | 9 | body { 10 | margin: 0; 11 | font-family: $baseFontFamily; 12 | font-size: $baseFontSize; 13 | line-height: $baseLineHeight; 14 | color: $textColor; 15 | background-color: $bodyBackground; 16 | } 17 | 18 | 19 | // Links 20 | // ------------------------- 21 | 22 | a { 23 | color: $linkColor; 24 | text-decoration: none; 25 | } 26 | a:hover, 27 | a:focus { 28 | color: $linkColorHover; 29 | text-decoration: underline; 30 | } 31 | 32 | 33 | // Images 34 | // ------------------------- 35 | 36 | // Rounded corners 37 | .img-rounded { 38 | @include ctb-border-radius(6px); 39 | } 40 | 41 | // Add polaroid-esque trim 42 | .img-polaroid { 43 | padding: 4px; 44 | background-color: #fff; 45 | border: 1px solid #ccc; 46 | border: 1px solid rgba(0,0,0,.2); 47 | @include ctb-box-shadow(0 1px 3px rgba(0,0,0,.1)); 48 | } 49 | 50 | // Perfect circle 51 | .img-circle { 52 | @include ctb-border-radius(500px); // crank the border-radius so it works with most reasonably sized images 53 | } 54 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_thumbnails.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Thumbnails 3 | // -------------------------------------------------- 4 | 5 | // Note: `.thumbnails` and `.thumbnails > li` are overriden in responsive files 6 | 7 | // Make wrapper ul behave like the grid 8 | .thumbnails 9 | margin-left: -$gridGutterWidth 10 | list-style: none 11 | +ctb-clearfix 12 | 13 | // Fluid rows have no left margin 14 | .row-fluid .thumbnails 15 | margin-left: 0 16 | 17 | // Float li to make thumbnails appear in a row 18 | .thumbnails > li 19 | float: left 20 | // Explicity set the float since we don't require .span* classes 21 | margin-bottom: $baseLineHeight 22 | margin-left: $gridGutterWidth 23 | 24 | // The actual thumbnail (can be `a` or `div`) 25 | .thumbnail 26 | display: block 27 | padding: 4px 28 | line-height: $baseLineHeight 29 | border: 1px solid #ddd 30 | +ctb-border-radius($baseBorderRadius) 31 | +ctb-box-shadow(0 1px 3px rgba(0, 0, 0, 0.055)) 32 | +ctb-transition(all 0.2s ease-in-out) 33 | 34 | // Add a hover/focus state for linked versions only 35 | 36 | a.thumbnail:hover, 37 | a.thumbnail:focus 38 | border-color: $linkColor 39 | +ctb-box-shadow(0 1px 4px rgba(0, 105, 214, 0.25)) 40 | 41 | // Images and captions 42 | .thumbnail > img 43 | display: block 44 | max-width: 100% 45 | margin-left: auto 46 | margin-right: auto 47 | 48 | .thumbnail .caption 49 | padding: 9px 50 | color: $gray 51 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_code.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Code (inline and blocK) 3 | // -------------------------------------------------- 4 | 5 | // Inline and block code styles 6 | 7 | code, 8 | pre 9 | padding: 0 3px 2px 10 | +ctb-font-family-monospace 11 | font-size: $baseFontSize - 2 12 | color: $grayDark 13 | +ctb-border-radius(3px) 14 | 15 | // Inline code 16 | code 17 | padding: 2px 4px 18 | color: #d14 19 | background-color: #f7f7f9 20 | border: 1px solid #e1e1e8 21 | white-space: nowrap 22 | 23 | // Blocks of code 24 | pre 25 | display: block 26 | padding: ($baseLineHeight - 1) / 2 27 | margin: 0 0 $baseLineHeight / 2 28 | font-size: $baseFontSize - 1 29 | // 14px to 13px 30 | line-height: $baseLineHeight 31 | word-break: break-all 32 | word-wrap: break-word 33 | white-space: pre 34 | white-space: pre-wrap 35 | background-color: #f5f5f5 36 | border: 1px solid #ccc 37 | // fallback for IE7-8 38 | border: 1px solid rgba(0, 0, 0, 0.15) 39 | +ctb-border-radius($baseBorderRadius) 40 | // Make prettyprint styles more spaced out for readability 41 | &.prettyprint 42 | margin-bottom: $baseLineHeight 43 | // Account for some code outputs that place code tags in pre tags 44 | code 45 | padding: 0 46 | color: inherit 47 | white-space: pre 48 | white-space: pre-wrap 49 | background-color: transparent 50 | border: 0 51 | 52 | // Enable scrollable blocks of code 53 | .pre-scrollable 54 | max-height: 340px 55 | overflow-y: scroll 56 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_thumbnails.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Thumbnails 3 | // -------------------------------------------------- 4 | 5 | 6 | // Note: `.thumbnails` and `.thumbnails > li` are overriden in responsive files 7 | 8 | // Make wrapper ul behave like the grid 9 | .thumbnails { 10 | margin-left: -$gridGutterWidth; 11 | list-style: none; 12 | @include ctb-clearfix(); 13 | } 14 | // Fluid rows have no left margin 15 | .row-fluid .thumbnails { 16 | margin-left: 0; 17 | } 18 | 19 | // Float li to make thumbnails appear in a row 20 | .thumbnails > li { 21 | float: left; // Explicity set the float since we don't require .span* classes 22 | margin-bottom: $baseLineHeight; 23 | margin-left: $gridGutterWidth; 24 | } 25 | 26 | // The actual thumbnail (can be `a` or `div`) 27 | .thumbnail { 28 | display: block; 29 | padding: 4px; 30 | line-height: $baseLineHeight; 31 | border: 1px solid #ddd; 32 | @include ctb-border-radius($baseBorderRadius); 33 | @include ctb-box-shadow(0 1px 3px rgba(0,0,0,.055)); 34 | @include ctb-transition(all .2s ease-in-out); 35 | } 36 | // Add a hover/focus state for linked versions only 37 | a.thumbnail:hover, 38 | a.thumbnail:focus { 39 | border-color: $linkColor; 40 | @include ctb-box-shadow(0 1px 4px rgba(0,105,214,.25)); 41 | } 42 | 43 | // Images and captions 44 | .thumbnail > img { 45 | display: block; 46 | max-width: 100%; 47 | margin-left: auto; 48 | margin-right: auto; 49 | } 50 | .thumbnail .caption { 51 | padding: 9px; 52 | color: $gray; 53 | } 54 | -------------------------------------------------------------------------------- /stylesheets_sass/_compass_twitter_bootstrap_responsive.sass: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Responsive v2.3.1 3 | * 4 | * Copyright 2012 Twitter, Inc 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world @twitter by @mdo and @fat. 9 | 10 | // Responsive 11 | // For phone and tablet devices 12 | // ------------------------------------------------------------- 13 | 14 | // REPEAT VARIABLES & MIXINS 15 | // ------------------------- 16 | // Required since we compile the responsive stuff separately 17 | 18 | @import compass_twitter_bootstrap/variables 19 | 20 | // Modify this for custom colors, font-sizes, etc 21 | @import compass_twitter_bootstrap/mixins 22 | 23 | .clearfix 24 | +ctb-clearfix 25 | 26 | .hide-text 27 | +ctb-hide-text 28 | 29 | .input-block-level 30 | +ctb-input-block-level 31 | 32 | // RESPONSIVE CLASSES 33 | // ------------------ 34 | 35 | @import compass_twitter_bootstrap/responsive-utilities 36 | 37 | // MEDIA QUERIES 38 | // ------------------ 39 | 40 | // Large desktops 41 | @import compass_twitter_bootstrap/responsive-1200px-min 42 | 43 | // Tablets to regular desktops 44 | @import compass_twitter_bootstrap/responsive-768px-979px 45 | 46 | // Phones to portrait tablets and narrow desktops 47 | @import compass_twitter_bootstrap/responsive-767px-max 48 | 49 | // RESPONSIVE NAVBAR 50 | // ------------------ 51 | 52 | // From 979px and below, show a button to toggle navbar contents 53 | @import compass_twitter_bootstrap/responsive-navbar 54 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_code.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Code (inline and blocK) 3 | // -------------------------------------------------- 4 | 5 | 6 | // Inline and block code styles 7 | code, 8 | pre { 9 | padding: 0 3px 2px; 10 | @include ctb-font-family-monospace; 11 | font-size: $baseFontSize - 2; 12 | color: $grayDark; 13 | @include ctb-border-radius(3px); 14 | } 15 | 16 | // Inline code 17 | code { 18 | padding: 2px 4px; 19 | color: #d14; 20 | background-color: #f7f7f9; 21 | border: 1px solid #e1e1e8; 22 | white-space: nowrap; 23 | } 24 | 25 | // Blocks of code 26 | pre { 27 | display: block; 28 | padding: ($baseLineHeight - 1) / 2; 29 | margin: 0 0 $baseLineHeight / 2; 30 | font-size: $baseFontSize - 1; // 14px to 13px 31 | line-height: $baseLineHeight; 32 | word-break: break-all; 33 | word-wrap: break-word; 34 | white-space: pre; 35 | white-space: pre-wrap; 36 | background-color: #f5f5f5; 37 | border: 1px solid #ccc; // fallback for IE7-8 38 | border: 1px solid rgba(0,0,0,.15); 39 | @include ctb-border-radius($baseBorderRadius); 40 | 41 | // Make prettyprint styles more spaced out for readability 42 | &.prettyprint { 43 | margin-bottom: $baseLineHeight; 44 | } 45 | 46 | // Account for some code outputs that place code tags in pre tags 47 | code { 48 | padding: 0; 49 | color: inherit; 50 | white-space: pre; 51 | white-space: pre-wrap; 52 | background-color: transparent; 53 | border: 0; 54 | } 55 | } 56 | 57 | // Enable scrollable blocks of code 58 | .pre-scrollable { 59 | max-height: 340px; 60 | overflow-y: scroll; 61 | } -------------------------------------------------------------------------------- /stylesheets/_compass_twitter_bootstrap_responsive.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Responsive v2.3.1 3 | * 4 | * Copyright 2012 Twitter, Inc 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world @twitter by @mdo and @fat. 9 | */ 10 | 11 | 12 | // Responsive 13 | // For phone and tablet devices 14 | // ------------------------------------------------------------- 15 | 16 | 17 | // REPEAT VARIABLES & MIXINS 18 | // ------------------------- 19 | // Required since we compile the responsive stuff separately 20 | 21 | @import "compass_twitter_bootstrap/variables"; // Modify this for custom colors, font-sizes, etc 22 | @import "compass_twitter_bootstrap/mixins"; 23 | 24 | .clearfix { 25 | @include ctb-clearfix(); 26 | } 27 | 28 | .hide-text { 29 | @include ctb-hide-text(); 30 | } 31 | 32 | .input-block-level { 33 | @include ctb-input-block-level(); 34 | } 35 | 36 | 37 | // RESPONSIVE CLASSES 38 | // ------------------ 39 | 40 | @import "compass_twitter_bootstrap/responsive-utilities"; 41 | 42 | 43 | // MEDIA QUERIES 44 | // ------------------ 45 | 46 | // Large desktops 47 | @import "compass_twitter_bootstrap/responsive-1200px-min"; 48 | 49 | // Tablets to regular desktops 50 | @import "compass_twitter_bootstrap/responsive-768px-979px"; 51 | 52 | // Phones to portrait tablets and narrow desktops 53 | @import "compass_twitter_bootstrap/responsive-767px-max"; 54 | 55 | 56 | // RESPONSIVE NAVBAR 57 | // ------------------ 58 | 59 | // From 979px and below, show a button to toggle navbar contents 60 | @import "compass_twitter_bootstrap/responsive-navbar"; 61 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_alerts.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Alerts 3 | // -------------------------------------------------- 4 | 5 | // Base styles 6 | // ------------------------- 7 | 8 | .alert 9 | padding: 8px 35px 8px 14px 10 | margin-bottom: $baseLineHeight 11 | text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) 12 | background-color: $warningBackground 13 | border: 1px solid $warningBorder 14 | +ctb-border-radius($baseBorderRadius) 15 | 16 | .alert, 17 | .alert h4 18 | // Specified for the h4 to prevent conflicts of changing $headingsColor 19 | color: $warningText 20 | 21 | .alert h4 22 | margin: 0 23 | 24 | // Adjust close link position 25 | .alert .close 26 | position: relative 27 | top: -2px 28 | right: -21px 29 | line-height: $baseLineHeight 30 | 31 | // Alternate styles 32 | // ------------------------- 33 | 34 | .alert-success 35 | background-color: $successBackground 36 | border-color: $successBorder 37 | color: $successText 38 | 39 | .alert-success h4 40 | color: $successText 41 | 42 | .alert-danger, 43 | .alert-error 44 | background-color: $errorBackground 45 | border-color: $errorBorder 46 | color: $errorText 47 | 48 | .alert-danger h4, 49 | .alert-error h4 50 | color: $errorText 51 | 52 | .alert-info 53 | background-color: $infoBackground 54 | border-color: $infoBorder 55 | color: $infoText 56 | 57 | .alert-info h4 58 | color: $infoText 59 | 60 | // Block alerts 61 | // ------------------------- 62 | 63 | .alert-block 64 | padding-top: 14px 65 | padding-bottom: 14px 66 | 67 | .alert-block > p, 68 | .alert-block > ul 69 | margin-bottom: 0 70 | 71 | .alert-block p + p 72 | margin-top: 5px 73 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Overview 2 | 3 | ## 2.3.1 4 | * Upgrade Twitter Bootstrap to 2.3.1 (@szinya) 5 | 6 | ## 2.2.2.2 7 | Fix cb-opacity mixin to correctly calculate opacity (@mindmelting) 8 | Added in clearfix utils class as per bootstrap docs (@mindmelting) 9 | Fix bootstrap version comment (@skivvies) 10 | Add affix to all js (@friesencr) 11 | 12 | ## 2.2.2.1 13 | * Upgradde Font Awesome to 3.0.1 14 | 15 | ## 2.2.2 16 | * Upgraded twiter bootstrap to 2.2.2 (@tijsverkoyen) 17 | 18 | ## 2.1.0 19 | * Upgrade twitter bootstrap to 2.1.0 in the scss files (@kristianmandrup) 20 | 21 | ## 2.0.1.2 22 | * Really fix sprites, maybe. 23 | * Update JS 24 | 25 | ## 2.0.1.1 26 | * Fix sprite error 27 | 28 | ## 2.0.1 29 | * Upgrade twitter bootstrap to 2.0.1 30 | * Use compass @image-url() for sprites (thanks to jpfuentes2) 31 | * Added !default to variables 32 | 33 | ## 2.0.0 34 | * Updated twitter bootstrap to 2.0 35 | * Updated import script 36 | * Changed version number to match twitter boot 37 | * Added link to demo app 38 | 39 | ## 0.1.8 40 | * Upgraded to twitter bootstrap version 1.4 41 | * Add Javascript files to vendors directory (thanks to tmaier) 42 | * Add Rails engine to tell Rails to look into vendor/assets (tmaier) 43 | * rails 3.1.1 plugin install support (tjgfernandes) 44 | 45 | 46 | ## 0.1.7 47 | Compass opacity fix (thanks to dnedbaylo) 48 | 49 | ## 0.1.6 50 | * Start of a less to scss converter 51 | * Added change log 52 | 53 | ## 0.1.5 54 | * Upgraded to twitter bootstrap version 1.3 55 | * Asset Pipeline (thanks to ascrazy) 56 | 57 | ## 0.1.4 58 | Upgraded to twitter bootstrap version 1.2 59 | 60 | ## 0.1.3 61 | * fix firefox button:hover bug 62 | 63 | ## 0.1.2 64 | * Added homepage link 65 | * Updated app name 66 | 67 | ## 0.1.1 68 | initial version 69 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_alerts.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Alerts 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base styles 7 | // ------------------------- 8 | 9 | .alert { 10 | padding: 8px 35px 8px 14px; 11 | margin-bottom: $baseLineHeight; 12 | text-shadow: 0 1px 0 rgba(255,255,255,.5); 13 | background-color: $warningBackground; 14 | border: 1px solid $warningBorder; 15 | @include ctb-border-radius($baseBorderRadius); 16 | } 17 | .alert, 18 | .alert h4 { 19 | // Specified for the h4 to prevent conflicts of changing $headingsColor 20 | color: $warningText; 21 | } 22 | .alert h4 { 23 | margin: 0; 24 | } 25 | 26 | // Adjust close link position 27 | .alert .close { 28 | position: relative; 29 | top: -2px; 30 | right: -21px; 31 | line-height: $baseLineHeight; 32 | } 33 | 34 | 35 | // Alternate styles 36 | // ------------------------- 37 | 38 | .alert-success { 39 | background-color: $successBackground; 40 | border-color: $successBorder; 41 | color: $successText; 42 | } 43 | .alert-success h4 { 44 | color: $successText; 45 | } 46 | .alert-danger, 47 | .alert-error { 48 | background-color: $errorBackground; 49 | border-color: $errorBorder; 50 | color: $errorText; 51 | } 52 | .alert-danger h4, 53 | .alert-error h4 { 54 | color: $errorText; 55 | } 56 | .alert-info { 57 | background-color: $infoBackground; 58 | border-color: $infoBorder; 59 | color: $infoText; 60 | } 61 | .alert-info h4 { 62 | color: $infoText; 63 | } 64 | 65 | 66 | // Block alerts 67 | // ------------------------- 68 | 69 | .alert-block { 70 | padding-top: 14px; 71 | padding-bottom: 14px; 72 | } 73 | .alert-block > p, 74 | .alert-block > ul { 75 | margin-bottom: 0; 76 | } 77 | .alert-block p + p { 78 | margin-top: 5px; 79 | } 80 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_responsive-utilities.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Responsive: Utility classes 3 | // -------------------------------------------------- 4 | 5 | // IE10 Metro responsive 6 | // Required for Windows 8 Metro split-screen snapping with IE10 7 | // Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ 8 | @-ms-viewport 9 | width: device-width 10 | 11 | 12 | // Hide from screenreaders and browsers 13 | // Credit: HTML5 Boilerplate 14 | .hidden 15 | display: none 16 | visibility: hidden 17 | 18 | // Visibility utilities 19 | 20 | // For desktops 21 | .visible-phone 22 | display: none !important 23 | 24 | .visible-tablet 25 | display: none !important 26 | 27 | .hidden-phone 28 | 29 | .hidden-tablet 30 | 31 | .hidden-desktop 32 | display: none !important 33 | 34 | .visible-desktop 35 | display: inherit !important 36 | 37 | // Tablets & small desktops only 38 | @media (min-width: 768px) and (max-width: 979px) 39 | // Hide everything else 40 | .hidden-desktop 41 | display: inherit !important 42 | .visible-desktop 43 | display: none !important 44 | // Show 45 | .visible-tablet 46 | display: inherit !important 47 | // Hide 48 | .hidden-tablet 49 | display: none !important 50 | 51 | // Phones only 52 | @media (max-width: 767px) 53 | // Hide everything else 54 | .hidden-desktop 55 | display: inherit !important 56 | .visible-desktop 57 | display: none !important 58 | // Show 59 | .visible-phone 60 | display: inherit !important 61 | // Use inherit to restore previous behavior 62 | // Hide 63 | .hidden-phone 64 | display: none !important 65 | 66 | // Print utilities 67 | .visible-print 68 | display: none !important 69 | 70 | .hidden-print 71 | 72 | @media print 73 | .visible-print 74 | display: inherit !important 75 | .hidden-print 76 | display: none !important 77 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_responsive-utilities.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Responsive: Utility classes 3 | // -------------------------------------------------- 4 | 5 | 6 | // IE10 Metro responsive 7 | // Required for Windows 8 Metro split-screen snapping with IE10 8 | // Source: http://timkadlec.com/2012/10/ie10-snap-mode-and-responsive-design/ 9 | @-ms-viewport{ 10 | width: device-width; 11 | } 12 | 13 | // Hide from screenreaders and browsers 14 | // Credit: HTML5 Boilerplate 15 | .hidden { 16 | display: none; 17 | visibility: hidden; 18 | } 19 | 20 | // Visibility utilities 21 | 22 | // For desktops 23 | .visible-phone { display: none !important; } 24 | .visible-tablet { display: none !important; } 25 | .hidden-phone { } 26 | .hidden-tablet { } 27 | .hidden-desktop { display: none !important; } 28 | .visible-desktop { display: inherit !important; } 29 | 30 | // Tablets & small desktops only 31 | @media (min-width: 768px) and (max-width: 979px) { 32 | // Hide everything else 33 | .hidden-desktop { display: inherit !important; } 34 | .visible-desktop { display: none !important ; } 35 | // Show 36 | .visible-tablet { display: inherit !important; } 37 | // Hide 38 | .hidden-tablet { display: none !important; } 39 | } 40 | 41 | // Phones only 42 | @media (max-width: 767px) { 43 | // Hide everything else 44 | .hidden-desktop { display: inherit !important; } 45 | .visible-desktop { display: none !important; } 46 | // Show 47 | .visible-phone { display: inherit !important; } // Use inherit to restore previous behavior 48 | // Hide 49 | .hidden-phone { display: none !important; } 50 | } 51 | 52 | // Print utilities 53 | .visible-print { display: none !important; } 54 | .hidden-print { } 55 | 56 | @media print { 57 | .visible-print { display: inherit !important; } 58 | .hidden-print { display: none !important; } 59 | } 60 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_tooltip.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Tooltips 3 | // -------------------------------------------------- 4 | 5 | // Base class 6 | .tooltip 7 | position: absolute 8 | z-index: $zindexTooltip 9 | display: block 10 | visibility: visible 11 | font-size: 11px 12 | line-height: 1.4 13 | +ctb-opacity(0) 14 | &.in 15 | +ctb-opacity(0.8) 16 | &.top 17 | margin-top: -3px 18 | padding: 5px 0 19 | &.right 20 | margin-left: 3px 21 | padding: 0 5px 22 | &.bottom 23 | margin-top: 3px 24 | padding: 5px 0 25 | &.left 26 | margin-left: -3px 27 | padding: 0 5px 28 | 29 | // Wrapper for the tooltip content 30 | .tooltip-inner 31 | max-width: 200px 32 | padding: 8px 33 | color: $tooltipColor 34 | text-align: center 35 | text-decoration: none 36 | background-color: $tooltipBackground 37 | +ctb-border-radius($baseBorderRadius) 38 | 39 | // Arrows 40 | .tooltip-arrow 41 | position: absolute 42 | width: 0 43 | height: 0 44 | border-color: transparent 45 | border-style: solid 46 | 47 | .tooltip 48 | &.top .tooltip-arrow 49 | bottom: 0 50 | left: 50% 51 | margin-left: -$tooltipArrowWidth 52 | border-width: $tooltipArrowWidth $tooltipArrowWidth 0 53 | border-top-color: $tooltipArrowColor 54 | &.right .tooltip-arrow 55 | top: 50% 56 | left: 0 57 | margin-top: -$tooltipArrowWidth 58 | border-width: $tooltipArrowWidth $tooltipArrowWidth $tooltipArrowWidth 0 59 | border-right-color: $tooltipArrowColor 60 | &.left .tooltip-arrow 61 | top: 50% 62 | right: 0 63 | margin-top: -$tooltipArrowWidth 64 | border-width: $tooltipArrowWidth 0 $tooltipArrowWidth $tooltipArrowWidth 65 | border-left-color: $tooltipArrowColor 66 | &.bottom .tooltip-arrow 67 | top: 0 68 | left: 50% 69 | margin-left: -$tooltipArrowWidth 70 | border-width: 0 $tooltipArrowWidth $tooltipArrowWidth 71 | border-bottom-color: $tooltipArrowColor 72 | -------------------------------------------------------------------------------- /vendor/assets/javascripts/bootstrap-transition.js: -------------------------------------------------------------------------------- 1 | /* =================================================== 2 | * bootstrap-transition.js v2.3.2 3 | * http://getbootstrap.com/2.3.2/javascript.html#transitions 4 | * =================================================== 5 | * Copyright 2013 Twitter, Inc. 6 | * 7 | * Licensed under the Apache License, Version 2.0 (the "License"); 8 | * you may not use this file except in compliance with the License. 9 | * You may obtain a copy of the License at 10 | * 11 | * http://www.apache.org/licenses/LICENSE-2.0 12 | * 13 | * Unless required by applicable law or agreed to in writing, software 14 | * distributed under the License is distributed on an "AS IS" BASIS, 15 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | * See the License for the specific language governing permissions and 17 | * limitations under the License. 18 | * ========================================================== */ 19 | 20 | 21 | !function ($) { 22 | 23 | "use strict"; // jshint ;_; 24 | 25 | 26 | /* CSS TRANSITION SUPPORT (http://www.modernizr.com/) 27 | * ======================================================= */ 28 | 29 | $(function () { 30 | 31 | $.support.transition = (function () { 32 | 33 | var transitionEnd = (function () { 34 | 35 | var el = document.createElement('bootstrap') 36 | , transEndEventNames = { 37 | 'WebkitTransition' : 'webkitTransitionEnd' 38 | , 'MozTransition' : 'transitionend' 39 | , 'OTransition' : 'oTransitionEnd otransitionend' 40 | , 'transition' : 'transitionend' 41 | } 42 | , name 43 | 44 | for (name in transEndEventNames){ 45 | if (el.style[name] !== undefined) { 46 | return transEndEventNames[name] 47 | } 48 | } 49 | 50 | }()) 51 | 52 | return transitionEnd && { 53 | end: transitionEnd 54 | } 55 | 56 | })() 57 | 58 | }) 59 | 60 | }(window.jQuery); -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_tooltip.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Tooltips 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base class 7 | .tooltip { 8 | position: absolute; 9 | z-index: $zindexTooltip; 10 | display: block; 11 | visibility: visible; 12 | font-size: 11px; 13 | line-height: 1.4; 14 | @include ctb-opacity(0); 15 | &.in { @include ctb-opacity(0.8); } 16 | &.top { margin-top: -3px; padding: 5px 0; } 17 | &.right { margin-left: 3px; padding: 0 5px; } 18 | &.bottom { margin-top: 3px; padding: 5px 0; } 19 | &.left { margin-left: -3px; padding: 0 5px; } 20 | } 21 | 22 | // Wrapper for the tooltip content 23 | .tooltip-inner { 24 | max-width: 200px; 25 | padding: 8px; 26 | color: $tooltipColor; 27 | text-align: center; 28 | text-decoration: none; 29 | background-color: $tooltipBackground; 30 | @include ctb-border-radius($baseBorderRadius); 31 | } 32 | 33 | // Arrows 34 | .tooltip-arrow { 35 | position: absolute; 36 | width: 0; 37 | height: 0; 38 | border-color: transparent; 39 | border-style: solid; 40 | } 41 | .tooltip { 42 | &.top .tooltip-arrow { 43 | bottom: 0; 44 | left: 50%; 45 | margin-left: -$tooltipArrowWidth; 46 | border-width: $tooltipArrowWidth $tooltipArrowWidth 0; 47 | border-top-color: $tooltipArrowColor; 48 | } 49 | &.right .tooltip-arrow { 50 | top: 50%; 51 | left: 0; 52 | margin-top: -$tooltipArrowWidth; 53 | border-width: $tooltipArrowWidth $tooltipArrowWidth $tooltipArrowWidth 0; 54 | border-right-color: $tooltipArrowColor; 55 | } 56 | &.left .tooltip-arrow { 57 | top: 50%; 58 | right: 0; 59 | margin-top: -$tooltipArrowWidth; 60 | border-width: $tooltipArrowWidth 0 $tooltipArrowWidth $tooltipArrowWidth; 61 | border-left-color: $tooltipArrowColor; 62 | } 63 | &.bottom .tooltip-arrow { 64 | top: 0; 65 | left: 50%; 66 | margin-left: -$tooltipArrowWidth; 67 | border-width: 0 $tooltipArrowWidth $tooltipArrowWidth; 68 | border-bottom-color: $tooltipArrowColor; 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_modals.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Modals 3 | // -------------------------------------------------- 4 | 5 | // Background 6 | .modal-backdrop 7 | position: fixed 8 | top: 0 9 | right: 0 10 | bottom: 0 11 | left: 0 12 | z-index: $zindexModalBackdrop 13 | background-color: $black 14 | // Fade for backdrop 15 | &.fade 16 | opacity: 0 17 | 18 | .modal-backdrop, 19 | .modal-backdrop.fade.in 20 | +ctb-opacity(0.8) 21 | 22 | // Base modal 23 | .modal 24 | position: fixed 25 | top: 10% 26 | left: 50% 27 | z-index: $zindexModal 28 | width: 560px 29 | margin-left: -280px 30 | background-color: $white 31 | border: 1px solid #999 32 | border: 1px solid rgba(0, 0, 0, 0.3) 33 | *border: 1px solid #999 34 | /* IE6-7 35 | +ctb-border-radius(6px) 36 | +ctb-box-shadow(0 3px 7px rgba(0, 0, 0, 0.3)) 37 | +ctb-background-clip(padding-box) 38 | // Remove focus outline from opened modal 39 | outline: none 40 | &.fade 41 | +ctb-transition(opacity .3s linear, top .3s ease-out) 42 | top: -25% 43 | &.fade.in 44 | top: 10% 45 | 46 | .modal-header 47 | padding: 9px 15px 48 | border-bottom: 1px solid #eee 49 | // Close icon 50 | .close 51 | margin-top: 2px 52 | // Heading 53 | h3 54 | margin: 0 55 | line-height: 30px 56 | 57 | // Body (where all modal content resides) 58 | .modal-body 59 | position: relative 60 | overflow-y: auto 61 | max-height: 400px 62 | padding: 15px 63 | 64 | // Remove bottom margin if need be 65 | .modal-form 66 | margin-bottom: 0 67 | 68 | // Footer (for actions) 69 | .modal-footer 70 | padding: 14px 15px 15px 71 | margin-bottom: 0 72 | text-align: right 73 | // right align buttons 74 | background-color: #f5f5f5 75 | border-top: 1px solid #ddd 76 | +ctb-border-radius(0 0 6px 6px) 77 | +ctb-box-shadow(inset 0 1px 0 $white) 78 | +ctb-clearfix 79 | // clear it in case folks use .pull-* classes on buttons 80 | // Properly space out buttons 81 | .btn + .btn 82 | margin-left: 5px 83 | margin-bottom: 0 84 | // account for input[type="submit"] which gets the bottom margin like all other inputs 85 | // but override that for button groups 86 | .btn-group .btn + .btn 87 | margin-left: -1px 88 | // and override it for block buttons as well 89 | .btn-block + .btn-block 90 | margin-left: 0 91 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_labels-badges.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Labels and badges 3 | // -------------------------------------------------- 4 | 5 | // Base classes 6 | 7 | .label, 8 | .badge 9 | display: inline-block 10 | padding: 2px 4px 11 | font-size: $baseFontSize * 0.846 12 | font-weight: bold 13 | line-height: 14px 14 | // ensure proper line-height if floated 15 | color: $white 16 | vertical-align: baseline 17 | white-space: nowrap 18 | text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25) 19 | background-color: $grayLight 20 | 21 | // Set unique padding and border-radii 22 | .label 23 | +ctb-border-radius(3px) 24 | 25 | .badge 26 | padding-left: 9px 27 | padding-right: 9px 28 | +ctb-border-radius(9px) 29 | 30 | // Empty labels/badges collapse 31 | 32 | .label, 33 | .badge 34 | &:empty 35 | display: none 36 | 37 | // Hover/focus state, but only for links 38 | a 39 | &.label:hover, 40 | &.label:focus, 41 | &.badge:hover, 42 | &.badge:focus 43 | color: $white 44 | text-decoration: none 45 | cursor: pointer 46 | 47 | // Colors 48 | // Only give background-color difference to links (and to simplify, we don't qualifty with `a` but [href] attribute) 49 | // Important (red) 50 | .label-important, .badge-important 51 | background-color: $errorText 52 | 53 | .label-important[href], .badge-important[href] 54 | background-color: darken($errorText, 10%) 55 | 56 | // Warnings (orange) 57 | .label-warning, .badge-warning 58 | background-color: $orange 59 | 60 | .label-warning[href], .badge-warning[href] 61 | background-color: darken($orange, 10%) 62 | 63 | // Success (green) 64 | .label-success, .badge-success 65 | background-color: $successText 66 | 67 | .label-success[href], .badge-success[href] 68 | background-color: darken($successText, 10%) 69 | 70 | // Info (turquoise) 71 | .label-info, .badge-info 72 | background-color: $infoText 73 | 74 | .label-info[href], .badge-info[href] 75 | background-color: darken($infoText, 10%) 76 | 77 | // Inverse (black) 78 | .label-inverse, .badge-inverse 79 | background-color: $grayDark 80 | 81 | .label-inverse[href], .badge-inverse[href] 82 | background-color: darken($grayDark, 10%) 83 | 84 | // Quick fix for labels/badges in buttons 85 | .btn 86 | .label, 87 | .badge 88 | position: relative 89 | top: -1px 90 | 91 | .btn-mini 92 | .label, 93 | .badge 94 | top: 0 95 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_labels-badges.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Labels and badges 3 | // -------------------------------------------------- 4 | 5 | 6 | // Base classes 7 | .label, 8 | .badge { 9 | display: inline-block; 10 | padding: 2px 4px; 11 | font-size: $baseFontSize * .846; 12 | font-weight: bold; 13 | line-height: 14px; // ensure proper line-height if floated 14 | color: $white; 15 | vertical-align: baseline; 16 | white-space: nowrap; 17 | text-shadow: 0 -1px 0 rgba(0,0,0,.25); 18 | background-color: $grayLight; 19 | } 20 | // Set unique padding and border-radii 21 | .label { 22 | @include ctb-border-radius(3px); 23 | } 24 | .badge { 25 | padding-left: 9px; 26 | padding-right: 9px; 27 | @include ctb-border-radius(9px); 28 | } 29 | 30 | // Empty labels/badges collapse 31 | .label, 32 | .badge { 33 | &:empty { 34 | display: none; 35 | } 36 | } 37 | 38 | // Hover/focus state, but only for links 39 | a { 40 | &.label:hover, 41 | &.label:focus, 42 | &.badge:hover, 43 | &.badge:focus { 44 | color: $white; 45 | text-decoration: none; 46 | cursor: pointer; 47 | } 48 | } 49 | 50 | // Colors 51 | // Only give background-color difference to links (and to simplify, we don't qualifty with `a` but [href] attribute) 52 | // Important (red) 53 | .label-important, .badge-important { background-color: $errorText; } 54 | .label-important[href], .badge-important[href] { background-color: darken($errorText, 10%); } 55 | // Warnings (orange) 56 | .label-warning, .badge-warning { background-color: $orange; } 57 | .label-warning[href], .badge-warning[href] { background-color: darken($orange, 10%); } 58 | // Success (green) 59 | .label-success, .badge-success { background-color: $successText; } 60 | .label-success[href], .badge-success[href] { background-color: darken($successText, 10%); } 61 | // Info (turquoise) 62 | .label-info, .badge-info { background-color: $infoText; } 63 | .label-info[href], .badge-info[href] { background-color: darken($infoText, 10%); } 64 | // Inverse (black) 65 | .label-inverse, .badge-inverse { background-color: $grayDark; } 66 | .label-inverse[href], .badge-inverse[href] { background-color: darken($grayDark, 10%); } 67 | 68 | // Quick fix for labels/badges in buttons 69 | .btn { 70 | .label, 71 | .badge { 72 | position: relative; 73 | top: -1px; 74 | } 75 | } 76 | .btn-mini { 77 | .label, 78 | .badge { 79 | top: 0; 80 | } 81 | } 82 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_modals.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Modals 3 | // -------------------------------------------------- 4 | 5 | // Background 6 | .modal-backdrop { 7 | position: fixed; 8 | top: 0; 9 | right: 0; 10 | bottom: 0; 11 | left: 0; 12 | z-index: $zindexModalBackdrop; 13 | background-color: $black; 14 | // Fade for backdrop 15 | &.fade { opacity: 0; } 16 | } 17 | 18 | .modal-backdrop, 19 | .modal-backdrop.fade.in { 20 | @include ctb-opacity(0.8); 21 | } 22 | 23 | // Base modal 24 | .modal { 25 | position: fixed; 26 | top: 10%; 27 | left: 50%; 28 | z-index: $zindexModal; 29 | width: 560px; 30 | margin-left: -280px; 31 | background-color: $white; 32 | border: 1px solid #999; 33 | border: 1px solid rgba(0,0,0,.3); 34 | *border: 1px solid #999; /* IE6-7 */ 35 | @include ctb-border-radius(6px); 36 | @include ctb-box-shadow(0 3px 7px rgba(0,0,0,0.3)); 37 | @include ctb-background-clip(padding-box); 38 | // Remove focus outline from opened modal 39 | outline: none; 40 | 41 | &.fade { 42 | @include ctb-transition(opacity .3s linear, top .3s ease-out); 43 | top: -25%; 44 | } 45 | &.fade.in { top: 10%; } 46 | } 47 | .modal-header { 48 | padding: 9px 15px; 49 | border-bottom: 1px solid #eee; 50 | // Close icon 51 | .close { margin-top: 2px; } 52 | // Heading 53 | h3 { 54 | margin: 0; 55 | line-height: 30px; 56 | } 57 | } 58 | 59 | // Body (where all modal content resides) 60 | .modal-body { 61 | position: relative; 62 | overflow-y: auto; 63 | max-height: 400px; 64 | padding: 15px; 65 | } 66 | // Remove bottom margin if need be 67 | .modal-form { 68 | margin-bottom: 0; 69 | } 70 | 71 | // Footer (for actions) 72 | .modal-footer { 73 | padding: 14px 15px 15px; 74 | margin-bottom: 0; 75 | text-align: right; // right align buttons 76 | background-color: #f5f5f5; 77 | border-top: 1px solid #ddd; 78 | @include ctb-border-radius(0 0 6px 6px); 79 | @include ctb-box-shadow(inset 0 1px 0 $white); 80 | @include ctb-clearfix(); // clear it in case folks use .pull-* classes on buttons 81 | 82 | // Properly space out buttons 83 | .btn + .btn { 84 | margin-left: 5px; 85 | margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs 86 | } 87 | // but override that for button groups 88 | .btn-group .btn + .btn { 89 | margin-left: -1px; 90 | } 91 | // and override it for block buttons as well 92 | .btn-block + .btn-block { 93 | margin-left: 0; 94 | } 95 | } 96 | -------------------------------------------------------------------------------- /stylesheets_sass/_compass_twitter_bootstrap.sass: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v2.3.1 3 | * 4 | * Copyright 2012 Twitter, Inc 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world @twitter by @mdo and @fat. 9 | 10 | @import compass 11 | 12 | // Core variables and mixins 13 | @import compass_twitter_bootstrap/variables 14 | 15 | // Modify this for custom colors, font-sizes, etc 16 | @import compass_twitter_bootstrap/mixins 17 | 18 | .clearfix 19 | +ctb-clearfix 20 | 21 | .hide-text 22 | +ctb-hide-text 23 | 24 | .input-block-level 25 | +ctb-input-block-level 26 | 27 | // CSS Reset 28 | @import compass_twitter_bootstrap/reset 29 | 30 | // Grid system and page structure 31 | @import compass_twitter_bootstrap/scaffolding 32 | @import compass_twitter_bootstrap/grid 33 | @import compass_twitter_bootstrap/layouts 34 | 35 | // Base CSS 36 | @import compass_twitter_bootstrap/type 37 | @import compass_twitter_bootstrap/code 38 | @import compass_twitter_bootstrap/forms 39 | @import compass_twitter_bootstrap/tables 40 | 41 | // Components: common 42 | @import compass_twitter_bootstrap/sprites 43 | @import compass_twitter_bootstrap/dropdowns 44 | @import compass_twitter_bootstrap/wells 45 | @import compass_twitter_bootstrap/component-animations 46 | @import compass_twitter_bootstrap/close 47 | 48 | // Components: Buttons & Alerts 49 | @import compass_twitter_bootstrap/buttons 50 | @import compass_twitter_bootstrap/button-groups 51 | @import compass_twitter_bootstrap/alerts 52 | 53 | // Note: alerts share common CSS with buttons and thus have styles in buttons.less 54 | 55 | // Components: Nav 56 | @import compass_twitter_bootstrap/navs 57 | @import compass_twitter_bootstrap/navbar 58 | @import compass_twitter_bootstrap/breadcrumbs 59 | @import compass_twitter_bootstrap/pagination 60 | @import compass_twitter_bootstrap/pager 61 | 62 | // Components: Popovers 63 | @import compass_twitter_bootstrap/modals 64 | @import compass_twitter_bootstrap/tooltip 65 | @import compass_twitter_bootstrap/popovers 66 | 67 | // Components: Misc 68 | @import compass_twitter_bootstrap/thumbnails 69 | @import compass_twitter_bootstrap/media 70 | @import compass_twitter_bootstrap/labels-badges 71 | @import compass_twitter_bootstrap/progress-bars 72 | @import compass_twitter_bootstrap/accordion 73 | @import compass_twitter_bootstrap/carousel 74 | @import compass_twitter_bootstrap/hero-unit 75 | 76 | // Utility classes 77 | @import compass_twitter_bootstrap/utilities 78 | 79 | // Has to be last to override when necessary 80 | -------------------------------------------------------------------------------- /stylesheets_sass/_compass_twitter_bootstrap_awesome.sass: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v2.3.1 3 | * 4 | * Copyright 2012 Twitter, Inc 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world @twitter by @mdo and @fat. 9 | 10 | @import compass 11 | 12 | // Core variables and mixins 13 | @import compass_twitter_bootstrap/variables 14 | 15 | // Modify this for custom colors, font-sizes, etc 16 | @import compass_twitter_bootstrap/mixins 17 | 18 | .clearfix 19 | +ctb-clearfix 20 | 21 | .hide-text 22 | +ctb-hide-text 23 | 24 | .input-block-level 25 | +ctb-input-block-level 26 | 27 | // CSS Reset 28 | @import compass_twitter_bootstrap/reset 29 | 30 | // Grid system and page structure 31 | @import compass_twitter_bootstrap/scaffolding 32 | @import compass_twitter_bootstrap/grid 33 | @import compass_twitter_bootstrap/layouts 34 | 35 | // Base CSS 36 | @import compass_twitter_bootstrap/type 37 | @import compass_twitter_bootstrap/code 38 | @import compass_twitter_bootstrap/forms 39 | @import compass_twitter_bootstrap/tables 40 | 41 | // Components: common 42 | @import compass_twitter_bootstrap/font-awesome 43 | @import compass_twitter_bootstrap/dropdowns 44 | @import compass_twitter_bootstrap/wells 45 | @import compass_twitter_bootstrap/component-animations 46 | @import compass_twitter_bootstrap/close 47 | 48 | // Components: Buttons & Alerts 49 | @import compass_twitter_bootstrap/buttons 50 | @import compass_twitter_bootstrap/button-groups 51 | @import compass_twitter_bootstrap/alerts 52 | 53 | // Note: alerts share common CSS with buttons and thus have styles in buttons.less 54 | 55 | // Components: Nav 56 | @import compass_twitter_bootstrap/navs 57 | @import compass_twitter_bootstrap/navbar 58 | @import compass_twitter_bootstrap/breadcrumbs 59 | @import compass_twitter_bootstrap/pagination 60 | @import compass_twitter_bootstrap/pager 61 | 62 | // Components: Popovers 63 | @import compass_twitter_bootstrap/modals 64 | @import compass_twitter_bootstrap/tooltip 65 | @import compass_twitter_bootstrap/popovers 66 | 67 | // Components: Misc 68 | @import compass_twitter_bootstrap/thumbnails 69 | @import compass_twitter_bootstrap/media 70 | @import compass_twitter_bootstrap/labels-badges 71 | @import compass_twitter_bootstrap/progress-bars 72 | @import compass_twitter_bootstrap/accordion 73 | @import compass_twitter_bootstrap/carousel 74 | @import compass_twitter_bootstrap/hero-unit 75 | 76 | // Utility classes 77 | @import compass_twitter_bootstrap/utilities 78 | 79 | // Has to be last to override when necessary 80 | -------------------------------------------------------------------------------- /stylesheets/_compass_twitter_bootstrap.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v2.3.1 3 | * 4 | * Copyright 2012 Twitter, Inc 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world @twitter by @mdo and @fat. 9 | */ 10 | 11 | @import "compass"; 12 | 13 | // Core variables and mixins 14 | @import "compass_twitter_bootstrap/variables"; // Modify this for custom colors, font-sizes, etc 15 | @import "compass_twitter_bootstrap/mixins"; 16 | 17 | .clearfix { 18 | @include ctb-clearfix(); 19 | } 20 | 21 | .hide-text { 22 | @include ctb-hide-text(); 23 | } 24 | 25 | .input-block-level { 26 | @include ctb-input-block-level(); 27 | } 28 | 29 | // CSS Reset 30 | @import "compass_twitter_bootstrap/reset"; 31 | 32 | // Grid system and page structure 33 | @import "compass_twitter_bootstrap/scaffolding"; 34 | @import "compass_twitter_bootstrap/grid"; 35 | @import "compass_twitter_bootstrap/layouts"; 36 | 37 | // Base CSS 38 | @import "compass_twitter_bootstrap/type"; 39 | @import "compass_twitter_bootstrap/code"; 40 | @import "compass_twitter_bootstrap/forms"; 41 | @import "compass_twitter_bootstrap/tables"; 42 | 43 | // Components: common 44 | @import "compass_twitter_bootstrap/sprites"; 45 | @import "compass_twitter_bootstrap/dropdowns"; 46 | @import "compass_twitter_bootstrap/wells"; 47 | @import "compass_twitter_bootstrap/component-animations"; 48 | @import "compass_twitter_bootstrap/close"; 49 | 50 | // Components: Buttons & Alerts 51 | @import "compass_twitter_bootstrap/buttons"; 52 | @import "compass_twitter_bootstrap/button-groups"; 53 | @import "compass_twitter_bootstrap/alerts"; // Note: alerts share common CSS with buttons and thus have styles in buttons.less 54 | 55 | // Components: Nav 56 | @import "compass_twitter_bootstrap/navs"; 57 | @import "compass_twitter_bootstrap/navbar"; 58 | @import "compass_twitter_bootstrap/breadcrumbs"; 59 | @import "compass_twitter_bootstrap/pagination"; 60 | @import "compass_twitter_bootstrap/pager"; 61 | 62 | // Components: Popovers 63 | @import "compass_twitter_bootstrap/modals"; 64 | @import "compass_twitter_bootstrap/tooltip"; 65 | @import "compass_twitter_bootstrap/popovers"; 66 | 67 | // Components: Misc 68 | @import "compass_twitter_bootstrap/thumbnails"; 69 | @import "compass_twitter_bootstrap/media"; 70 | @import "compass_twitter_bootstrap/labels-badges"; 71 | @import "compass_twitter_bootstrap/progress-bars"; 72 | @import "compass_twitter_bootstrap/accordion"; 73 | @import "compass_twitter_bootstrap/carousel"; 74 | @import "compass_twitter_bootstrap/hero-unit"; 75 | 76 | // Utility classes 77 | @import "compass_twitter_bootstrap/utilities"; // Has to be last to override when necessary 78 | -------------------------------------------------------------------------------- /stylesheets/_compass_twitter_bootstrap_awesome.scss: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v2.3.1 3 | * 4 | * Copyright 2012 Twitter, Inc 5 | * Licensed under the Apache License v2.0 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Designed and built with all the love in the world @twitter by @mdo and @fat. 9 | */ 10 | 11 | @import "compass"; 12 | 13 | // Core variables and mixins 14 | @import "compass_twitter_bootstrap/variables"; // Modify this for custom colors, font-sizes, etc 15 | @import "compass_twitter_bootstrap/mixins"; 16 | 17 | .clearfix { 18 | @include ctb-clearfix(); 19 | } 20 | 21 | .hide-text { 22 | @include ctb-hide-text(); 23 | } 24 | 25 | .input-block-level { 26 | @include ctb-input-block-level(); 27 | } 28 | 29 | // CSS Reset 30 | @import "compass_twitter_bootstrap/reset"; 31 | 32 | // Grid system and page structure 33 | @import "compass_twitter_bootstrap/scaffolding"; 34 | @import "compass_twitter_bootstrap/grid"; 35 | @import "compass_twitter_bootstrap/layouts"; 36 | 37 | // Base CSS 38 | @import "compass_twitter_bootstrap/type"; 39 | @import "compass_twitter_bootstrap/code"; 40 | @import "compass_twitter_bootstrap/forms"; 41 | @import "compass_twitter_bootstrap/tables"; 42 | 43 | // Components: common 44 | @import "compass_twitter_bootstrap/font-awesome"; 45 | @import "compass_twitter_bootstrap/dropdowns"; 46 | @import "compass_twitter_bootstrap/wells"; 47 | @import "compass_twitter_bootstrap/component-animations"; 48 | @import "compass_twitter_bootstrap/close"; 49 | 50 | // Components: Buttons & Alerts 51 | @import "compass_twitter_bootstrap/buttons"; 52 | @import "compass_twitter_bootstrap/button-groups"; 53 | @import "compass_twitter_bootstrap/alerts"; // Note: alerts share common CSS with buttons and thus have styles in buttons.less 54 | 55 | // Components: Nav 56 | @import "compass_twitter_bootstrap/navs"; 57 | @import "compass_twitter_bootstrap/navbar"; 58 | @import "compass_twitter_bootstrap/breadcrumbs"; 59 | @import "compass_twitter_bootstrap/pagination"; 60 | @import "compass_twitter_bootstrap/pager"; 61 | 62 | // Components: Popovers 63 | @import "compass_twitter_bootstrap/modals"; 64 | @import "compass_twitter_bootstrap/tooltip"; 65 | @import "compass_twitter_bootstrap/popovers"; 66 | 67 | // Components: Misc 68 | @import "compass_twitter_bootstrap/thumbnails"; 69 | @import "compass_twitter_bootstrap/media"; 70 | @import "compass_twitter_bootstrap/labels-badges"; 71 | @import "compass_twitter_bootstrap/progress-bars"; 72 | @import "compass_twitter_bootstrap/accordion"; 73 | @import "compass_twitter_bootstrap/carousel"; 74 | @import "compass_twitter_bootstrap/hero-unit"; 75 | 76 | // Utility classes 77 | @import "compass_twitter_bootstrap/utilities"; // Has to be last to override when necessary 78 | -------------------------------------------------------------------------------- /vendor/assets/javascripts/bootstrap-alert.js: -------------------------------------------------------------------------------- 1 | /* ========================================================== 2 | * bootstrap-alert.js v2.3.2 3 | * http://getbootstrap.com/2.3.2/javascript.html#alerts 4 | * ========================================================== 5 | * Copyright 2013 Twitter, Inc. 6 | * 7 | * Licensed under the Apache License, Version 2.0 (the "License"); 8 | * you may not use this file except in compliance with the License. 9 | * You may obtain a copy of the License at 10 | * 11 | * http://www.apache.org/licenses/LICENSE-2.0 12 | * 13 | * Unless required by applicable law or agreed to in writing, software 14 | * distributed under the License is distributed on an "AS IS" BASIS, 15 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | * See the License for the specific language governing permissions and 17 | * limitations under the License. 18 | * ========================================================== */ 19 | 20 | 21 | !function ($) { 22 | 23 | "use strict"; // jshint ;_; 24 | 25 | 26 | /* ALERT CLASS DEFINITION 27 | * ====================== */ 28 | 29 | var dismiss = '[data-dismiss="alert"]' 30 | , Alert = function (el) { 31 | $(el).on('click', dismiss, this.close) 32 | } 33 | 34 | Alert.prototype.close = function (e) { 35 | var $this = $(this) 36 | , selector = $this.attr('data-target') 37 | , $parent 38 | 39 | if (!selector) { 40 | selector = $this.attr('href') 41 | selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7 42 | } 43 | 44 | $parent = $(selector) 45 | 46 | e && e.preventDefault() 47 | 48 | $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent()) 49 | 50 | $parent.trigger(e = $.Event('close')) 51 | 52 | if (e.isDefaultPrevented()) return 53 | 54 | $parent.removeClass('in') 55 | 56 | function removeElement() { 57 | $parent 58 | .trigger('closed') 59 | .remove() 60 | } 61 | 62 | $.support.transition && $parent.hasClass('fade') ? 63 | $parent.on($.support.transition.end, removeElement) : 64 | removeElement() 65 | } 66 | 67 | 68 | /* ALERT PLUGIN DEFINITION 69 | * ======================= */ 70 | 71 | var old = $.fn.alert 72 | 73 | $.fn.alert = function (option) { 74 | return this.each(function () { 75 | var $this = $(this) 76 | , data = $this.data('alert') 77 | if (!data) $this.data('alert', (data = new Alert(this))) 78 | if (typeof option == 'string') data[option].call($this) 79 | }) 80 | } 81 | 82 | $.fn.alert.Constructor = Alert 83 | 84 | 85 | /* ALERT NO CONFLICT 86 | * ================= */ 87 | 88 | $.fn.alert.noConflict = function () { 89 | $.fn.alert = old 90 | return this 91 | } 92 | 93 | 94 | /* ALERT DATA-API 95 | * ============== */ 96 | 97 | $(document).on('click.alert.data-api', dismiss, Alert.prototype.close) 98 | 99 | }(window.jQuery); -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_carousel.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Carousel 3 | // -------------------------------------------------- 4 | 5 | .carousel 6 | position: relative 7 | margin-bottom: $baseLineHeight 8 | line-height: 1 9 | 10 | .carousel-inner 11 | overflow: hidden 12 | width: 100% 13 | position: relative 14 | 15 | .carousel-inner 16 | > .item 17 | display: none 18 | position: relative 19 | +ctb-transition(0.6s ease-in-out left) 20 | // Account for jankitude on images 21 | > img, 22 | > a > img 23 | display: block 24 | line-height: 1 25 | > .active, 26 | > .next, 27 | > .prev 28 | display: block 29 | > .active 30 | left: 0 31 | > .next, 32 | > .prev 33 | position: absolute 34 | top: 0 35 | width: 100% 36 | > .next 37 | left: 100% 38 | > .prev 39 | left: -100% 40 | > .next.left, 41 | > .prev.right 42 | left: 0 43 | > .active.left 44 | left: -100% 45 | > .active.right 46 | left: 100% 47 | 48 | // Left/right controls for nav 49 | // --------------------------- 50 | 51 | .carousel-control 52 | position: absolute 53 | top: 40% 54 | left: 15px 55 | width: 40px 56 | height: 40px 57 | margin-top: -20px 58 | font-size: 60px 59 | font-weight: 100 60 | line-height: 30px 61 | color: $white 62 | text-align: center 63 | background: $grayDarker 64 | border: 3px solid $white 65 | +ctb-border-radius(23px) 66 | +ctb-opacity(0.5) 67 | // we can't have this transition here 68 | // because webkit cancels the carousel 69 | // animation if you trip this while 70 | // in the middle of another animation 71 | // ;_; 72 | // @include ctb-transition(opacity .2s linear); 73 | // Reposition the right one 74 | &.right 75 | left: auto 76 | right: 15px 77 | // Hover/focus state 78 | &:hover, 79 | &:focus 80 | color: $white 81 | text-decoration: none 82 | +ctb-opacity(0.9) 83 | 84 | // Carousel indicator pips 85 | // ----------------------------- 86 | .carousel-indicators 87 | position: absolute 88 | top: 15px 89 | right: 15px 90 | z-index: 5 91 | margin: 0 92 | list-style: none 93 | li 94 | display: block 95 | float: left 96 | width: 10px 97 | height: 10px 98 | margin-left: 5px 99 | text-indent: -999px 100 | background-color: #ccc 101 | background-color: rgba(255, 255, 255, 0.25) 102 | border-radius: 5px 103 | .active 104 | background-color: #fff 105 | 106 | // Caption for text below images 107 | // ----------------------------- 108 | 109 | .carousel-caption 110 | position: absolute 111 | left: 0 112 | right: 0 113 | bottom: 0 114 | padding: 15px 115 | background: $grayDark 116 | background: rgba(0, 0, 0, 0.75) 117 | 118 | .carousel-caption h4, 119 | .carousel-caption p 120 | color: $white 121 | line-height: $baseLineHeight 122 | 123 | .carousel-caption h4 124 | margin: 0 0 5px 125 | 126 | .carousel-caption p 127 | margin-bottom: 0 128 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_pagination.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Pagination (multiple pages) 3 | // -------------------------------------------------- 4 | 5 | // Space out pagination from surrounding content 6 | .pagination 7 | margin: $baseLineHeight 0 8 | 9 | .pagination ul 10 | // Allow for text-based alignment 11 | display: inline-block 12 | +ctb-ie7-inline-block 13 | // Reset default ul styles 14 | margin-left: 0 15 | margin-bottom: 0 16 | // Visuals 17 | +ctb-border-radius($baseBorderRadius) 18 | +ctb-box-shadow(0 1px 2px rgba(0, 0, 0, 0.05)) 19 | 20 | .pagination ul > li 21 | display: inline 22 | // Remove list-style and block-level defaults 23 | 24 | .pagination ul > li > a, 25 | .pagination ul > li > span 26 | float: left 27 | // Collapse white-space 28 | padding: 4px 12px 29 | line-height: $baseLineHeight 30 | text-decoration: none 31 | background-color: $paginationBackground 32 | border: 1px solid $paginationBorder 33 | border-left-width: 0 34 | 35 | .pagination ul > li > a:hover, 36 | .pagination ul > li > a:focus, 37 | .pagination ul > .active > a, 38 | .pagination ul > .active > span 39 | background-color: $paginationActiveBackground 40 | 41 | .pagination ul > .active > a, 42 | .pagination ul > .active > span 43 | color: $grayLight 44 | cursor: default 45 | 46 | .pagination ul > .disabled > span, 47 | .pagination ul > .disabled > a, 48 | .pagination ul > .disabled > a:hover, 49 | .pagination ul > .disabled > a:focus 50 | color: $grayLight 51 | background-color: transparent 52 | cursor: default 53 | 54 | .pagination ul > li:first-child > a, 55 | .pagination ul > li:first-child > span 56 | border-left-width: 1px 57 | +ctb-border-left-radius($baseBorderRadius) 58 | 59 | .pagination ul > li:last-child > a, 60 | .pagination ul > li:last-child > span 61 | +ctb-border-right-radius($baseBorderRadius) 62 | 63 | // Alignment 64 | // -------------------------------------------------- 65 | 66 | .pagination-centered 67 | text-align: center 68 | 69 | .pagination-right 70 | text-align: right 71 | 72 | // Sizing 73 | // -------------------------------------------------- 74 | 75 | // Large 76 | .pagination-large 77 | ul > li > a, 78 | ul > li > span 79 | padding: $paddingLarge 80 | font-size: $fontSizeLarge 81 | ul > li:first-child > a, 82 | ul > li:first-child > span 83 | +ctb-border-left-radius($borderRadiusLarge) 84 | ul > li:last-child > a, 85 | ul > li:last-child > span 86 | +ctb-border-right-radius($borderRadiusLarge) 87 | 88 | // Small and mini 89 | 90 | .pagination-mini, 91 | .pagination-small 92 | ul > li:first-child > a, 93 | ul > li:first-child > span 94 | +ctb-border-left-radius($borderRadiusSmall) 95 | ul > li:last-child > a, 96 | ul > li:last-child > span 97 | +ctb-border-right-radius($borderRadiusSmall) 98 | 99 | // Small 100 | .pagination-small 101 | ul > li > a, 102 | ul > li > span 103 | padding: $paddingSmall 104 | font-size: $fontSizeSmall 105 | 106 | // Mini 107 | .pagination-mini 108 | ul > li > a, 109 | ul > li > span 110 | padding: $paddingMini 111 | font-size: $fontSizeMini 112 | -------------------------------------------------------------------------------- /vendor/assets/javascripts/bootstrap-button.js: -------------------------------------------------------------------------------- 1 | /* ============================================================ 2 | * bootstrap-button.js v2.3.2 3 | * http://getbootstrap.com/2.3.2/javascript.html#buttons 4 | * ============================================================ 5 | * Copyright 2013 Twitter, Inc. 6 | * 7 | * Licensed under the Apache License, Version 2.0 (the "License"); 8 | * you may not use this file except in compliance with the License. 9 | * You may obtain a copy of the License at 10 | * 11 | * http://www.apache.org/licenses/LICENSE-2.0 12 | * 13 | * Unless required by applicable law or agreed to in writing, software 14 | * distributed under the License is distributed on an "AS IS" BASIS, 15 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | * See the License for the specific language governing permissions and 17 | * limitations under the License. 18 | * ============================================================ */ 19 | 20 | 21 | !function ($) { 22 | 23 | "use strict"; // jshint ;_; 24 | 25 | 26 | /* BUTTON PUBLIC CLASS DEFINITION 27 | * ============================== */ 28 | 29 | var Button = function (element, options) { 30 | this.$element = $(element) 31 | this.options = $.extend({}, $.fn.button.defaults, options) 32 | } 33 | 34 | Button.prototype.setState = function (state) { 35 | var d = 'disabled' 36 | , $el = this.$element 37 | , data = $el.data() 38 | , val = $el.is('input') ? 'val' : 'html' 39 | 40 | state = state + 'Text' 41 | data.resetText || $el.data('resetText', $el[val]()) 42 | 43 | $el[val](data[state] || this.options[state]) 44 | 45 | // push to event loop to allow forms to submit 46 | setTimeout(function () { 47 | state == 'loadingText' ? 48 | $el.addClass(d).attr(d, d) : 49 | $el.removeClass(d).removeAttr(d) 50 | }, 0) 51 | } 52 | 53 | Button.prototype.toggle = function () { 54 | var $parent = this.$element.closest('[data-toggle="buttons-radio"]') 55 | 56 | $parent && $parent 57 | .find('.active') 58 | .removeClass('active') 59 | 60 | this.$element.toggleClass('active') 61 | } 62 | 63 | 64 | /* BUTTON PLUGIN DEFINITION 65 | * ======================== */ 66 | 67 | var old = $.fn.button 68 | 69 | $.fn.button = function (option) { 70 | return this.each(function () { 71 | var $this = $(this) 72 | , data = $this.data('button') 73 | , options = typeof option == 'object' && option 74 | if (!data) $this.data('button', (data = new Button(this, options))) 75 | if (option == 'toggle') data.toggle() 76 | else if (option) data.setState(option) 77 | }) 78 | } 79 | 80 | $.fn.button.defaults = { 81 | loadingText: 'loading...' 82 | } 83 | 84 | $.fn.button.Constructor = Button 85 | 86 | 87 | /* BUTTON NO CONFLICT 88 | * ================== */ 89 | 90 | $.fn.button.noConflict = function () { 91 | $.fn.button = old 92 | return this 93 | } 94 | 95 | 96 | /* BUTTON DATA-API 97 | * =============== */ 98 | 99 | $(document).on('click.button.data-api', '[data-toggle^=button]', function (e) { 100 | var $btn = $(e.target) 101 | if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') 102 | $btn.button('toggle') 103 | }) 104 | 105 | }(window.jQuery); -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_carousel.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Carousel 3 | // -------------------------------------------------- 4 | 5 | 6 | .carousel { 7 | position: relative; 8 | margin-bottom: $baseLineHeight; 9 | line-height: 1; 10 | } 11 | 12 | .carousel-inner { 13 | overflow: hidden; 14 | width: 100%; 15 | position: relative; 16 | } 17 | 18 | .carousel-inner { 19 | 20 | > .item { 21 | display: none; 22 | position: relative; 23 | @include ctb-transition(.6s ease-in-out left); 24 | 25 | // Account for jankitude on images 26 | > img, 27 | > a > img { 28 | display: block; 29 | line-height: 1; 30 | } 31 | } 32 | 33 | > .active, 34 | > .next, 35 | > .prev { display: block; } 36 | 37 | > .active { 38 | left: 0; 39 | } 40 | 41 | > .next, 42 | > .prev { 43 | position: absolute; 44 | top: 0; 45 | width: 100%; 46 | } 47 | 48 | > .next { 49 | left: 100%; 50 | } 51 | > .prev { 52 | left: -100%; 53 | } 54 | > .next.left, 55 | > .prev.right { 56 | left: 0; 57 | } 58 | 59 | > .active.left { 60 | left: -100%; 61 | } 62 | > .active.right { 63 | left: 100%; 64 | } 65 | 66 | } 67 | 68 | // Left/right controls for nav 69 | // --------------------------- 70 | 71 | .carousel-control { 72 | position: absolute; 73 | top: 40%; 74 | left: 15px; 75 | width: 40px; 76 | height: 40px; 77 | margin-top: -20px; 78 | font-size: 60px; 79 | font-weight: 100; 80 | line-height: 30px; 81 | color: $white; 82 | text-align: center; 83 | background: $grayDarker; 84 | border: 3px solid $white; 85 | @include ctb-border-radius(23px); 86 | @include ctb-opacity(0.5); 87 | 88 | // we can't have this transition here 89 | // because webkit cancels the carousel 90 | // animation if you trip this while 91 | // in the middle of another animation 92 | // ;_; 93 | // @include ctb-transition(opacity .2s linear); 94 | 95 | // Reposition the right one 96 | &.right { 97 | left: auto; 98 | right: 15px; 99 | } 100 | 101 | // Hover/focus state 102 | &:hover, 103 | &:focus { 104 | color: $white; 105 | text-decoration: none; 106 | @include ctb-opacity(0.9); 107 | } 108 | } 109 | 110 | // Carousel indicator pips 111 | // ----------------------------- 112 | .carousel-indicators { 113 | position: absolute; 114 | top: 15px; 115 | right: 15px; 116 | z-index: 5; 117 | margin: 0; 118 | list-style: none; 119 | 120 | li { 121 | display: block; 122 | float: left; 123 | width: 10px; 124 | height: 10px; 125 | margin-left: 5px; 126 | text-indent: -999px; 127 | background-color: #ccc; 128 | background-color: rgba(255,255,255,.25); 129 | border-radius: 5px; 130 | } 131 | .active { 132 | background-color: #fff; 133 | } 134 | } 135 | 136 | // Caption for text below images 137 | // ----------------------------- 138 | 139 | .carousel-caption { 140 | position: absolute; 141 | left: 0; 142 | right: 0; 143 | bottom: 0; 144 | padding: 15px; 145 | background: $grayDark; 146 | background: rgba(0,0,0,.75); 147 | } 148 | .carousel-caption h4, 149 | .carousel-caption p { 150 | color: $white; 151 | line-height: $baseLineHeight; 152 | } 153 | .carousel-caption h4 { 154 | margin: 0 0 5px; 155 | } 156 | .carousel-caption p { 157 | margin-bottom: 0; 158 | } 159 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_progress-bars.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Progress bars 3 | // -------------------------------------------------- 4 | 5 | // ANIMATIONS 6 | // ---------- 7 | 8 | // Webkit 9 | @-webkit-keyframes progress-bar-stripes 10 | from 11 | background-position: 40px 0 12 | to 13 | background-position: 0 0 14 | 15 | 16 | // Firefox 17 | @-moz-keyframes progress-bar-stripes 18 | from 19 | background-position: 40px 0 20 | to 21 | background-position: 0 0 22 | 23 | 24 | // IE9 25 | @-ms-keyframes progress-bar-stripes 26 | from 27 | background-position: 40px 0 28 | to 29 | background-position: 0 0 30 | 31 | 32 | // Opera 33 | @-o-keyframes progress-bar-stripes 34 | from 35 | background-position: 0 0 36 | to 37 | background-position: 40px 0 38 | 39 | 40 | // Spec 41 | @keyframes progress-bar-stripes 42 | from 43 | background-position: 40px 0 44 | to 45 | background-position: 0 0 46 | 47 | 48 | // THE BARS 49 | // -------- 50 | 51 | // Outer container 52 | .progress 53 | overflow: hidden 54 | height: $baseLineHeight 55 | margin-bottom: $baseLineHeight 56 | +ctb-gradient-vertical(whitesmoke, #f9f9f9) 57 | +ctb-box-shadow(inset 0 1px 2px rgba(0, 0, 0, 0.1)) 58 | +ctb-border-radius($baseBorderRadius) 59 | 60 | // Bar of progress 61 | .progress .bar 62 | width: 0% 63 | height: 100% 64 | color: $white 65 | float: left 66 | font-size: 12px 67 | text-align: center 68 | text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25) 69 | +ctb-gradient-vertical(#149bdf, #0480be) 70 | +ctb-box-shadow(inset 0 -1px 0 rgba(0, 0, 0, 0.15)) 71 | +ctb-box-sizing(border-box) 72 | +ctb-transition(width 0.6s ease) 73 | 74 | .progress .bar + .bar 75 | +ctb-box-shadow(#{inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15)}) 76 | 77 | // Striped bars 78 | .progress-striped .bar 79 | +ctb-gradient-striped(#149bdf) 80 | +ctb-background-size(40px 40px) 81 | 82 | // Call animation for the active one 83 | .progress.active .bar 84 | -webkit-animation: progress-bar-stripes 2s linear infinite 85 | -moz-animation: progress-bar-stripes 2s linear infinite 86 | -ms-animation: progress-bar-stripes 2s linear infinite 87 | -o-animation: progress-bar-stripes 2s linear infinite 88 | animation: progress-bar-stripes 2s linear infinite 89 | 90 | // COLORS 91 | // ------ 92 | 93 | // Danger (red) 94 | .progress-danger .bar, .progress .bar-danger 95 | +ctb-gradient-vertical(#ee5f5b, #c43c35) 96 | 97 | .progress-danger.progress-striped .bar, .progress-striped .bar-danger 98 | +ctb-gradient-striped(#ee5f5b) 99 | 100 | // Success (green) 101 | .progress-success .bar, .progress .bar-success 102 | +ctb-gradient-vertical(#62c462, #57a957) 103 | 104 | .progress-success.progress-striped .bar, .progress-striped .bar-success 105 | +ctb-gradient-striped(#62c462) 106 | 107 | // Info (teal) 108 | .progress-info .bar, .progress .bar-info 109 | +ctb-gradient-vertical(#5bc0de, #339bb9) 110 | 111 | .progress-info.progress-striped .bar, .progress-striped .bar-info 112 | +ctb-gradient-striped(#5bc0de) 113 | 114 | // Warning (orange) 115 | .progress-warning .bar, .progress .bar-warning 116 | +ctb-gradient-vertical(lighten($orange, 15%), $orange) 117 | 118 | .progress-warning.progress-striped .bar, .progress-striped .bar-warning 119 | +ctb-gradient-striped(lighten($orange, 15%)) 120 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_pagination.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Pagination (multiple pages) 3 | // -------------------------------------------------- 4 | 5 | // Space out pagination from surrounding content 6 | .pagination { 7 | margin: $baseLineHeight 0; 8 | } 9 | 10 | .pagination ul { 11 | // Allow for text-based alignment 12 | display: inline-block; 13 | @include ctb-ie7-inline-block(); 14 | // Reset default ul styles 15 | margin-left: 0; 16 | margin-bottom: 0; 17 | // Visuals 18 | @include ctb-border-radius($baseBorderRadius); 19 | @include ctb-box-shadow(0 1px 2px rgba(0,0,0,.05)); 20 | } 21 | .pagination ul > li { 22 | display: inline; // Remove list-style and block-level defaults 23 | } 24 | .pagination ul > li > a, 25 | .pagination ul > li > span { 26 | float: left; // Collapse white-space 27 | padding: 4px 12px; 28 | line-height: $baseLineHeight; 29 | text-decoration: none; 30 | background-color: $paginationBackground; 31 | border: 1px solid $paginationBorder; 32 | border-left-width: 0; 33 | } 34 | .pagination ul > li > a:hover, 35 | .pagination ul > li > a:focus, 36 | .pagination ul > .active > a, 37 | .pagination ul > .active > span { 38 | background-color: $paginationActiveBackground; 39 | } 40 | .pagination ul > .active > a, 41 | .pagination ul > .active > span { 42 | color: $grayLight; 43 | cursor: default; 44 | } 45 | .pagination ul > .disabled > span, 46 | .pagination ul > .disabled > a, 47 | .pagination ul > .disabled > a:hover, 48 | .pagination ul > .disabled > a:focus { 49 | color: $grayLight; 50 | background-color: transparent; 51 | cursor: default; 52 | } 53 | .pagination ul > li:first-child > a, 54 | .pagination ul > li:first-child > span { 55 | border-left-width: 1px; 56 | @include ctb-border-left-radius($baseBorderRadius); 57 | } 58 | .pagination ul > li:last-child > a, 59 | .pagination ul > li:last-child > span { 60 | @include ctb-border-right-radius($baseBorderRadius); 61 | } 62 | 63 | 64 | // Alignment 65 | // -------------------------------------------------- 66 | 67 | .pagination-centered { 68 | text-align: center; 69 | } 70 | .pagination-right { 71 | text-align: right; 72 | } 73 | 74 | 75 | // Sizing 76 | // -------------------------------------------------- 77 | 78 | // Large 79 | .pagination-large { 80 | ul > li > a, 81 | ul > li > span { 82 | padding: $paddingLarge; 83 | font-size: $fontSizeLarge; 84 | } 85 | ul > li:first-child > a, 86 | ul > li:first-child > span { 87 | @include ctb-border-left-radius($borderRadiusLarge); 88 | } 89 | ul > li:last-child > a, 90 | ul > li:last-child > span { 91 | @include ctb-border-right-radius($borderRadiusLarge); 92 | } 93 | } 94 | 95 | // Small and mini 96 | .pagination-mini, 97 | .pagination-small { 98 | ul > li:first-child > a, 99 | ul > li:first-child > span { 100 | @include ctb-border-left-radius($borderRadiusSmall); 101 | } 102 | ul > li:last-child > a, 103 | ul > li:last-child > span { 104 | @include ctb-border-right-radius($borderRadiusSmall); 105 | } 106 | } 107 | 108 | // Small 109 | .pagination-small { 110 | ul > li > a, 111 | ul > li > span { 112 | padding: $paddingSmall; 113 | font-size: $fontSizeSmall; 114 | } 115 | } 116 | // Mini 117 | .pagination-mini { 118 | ul > li > a, 119 | ul > li > span { 120 | padding: $paddingMini; 121 | font-size: $fontSizeMini; 122 | } 123 | } 124 | -------------------------------------------------------------------------------- /stylesheets_sass/compass_twitter_bootstrap/_popovers.sass: -------------------------------------------------------------------------------- 1 | // 2 | // Popovers 3 | // -------------------------------------------------- 4 | 5 | .popover 6 | position: absolute 7 | top: 0 8 | left: 0 9 | z-index: $zindexPopover 10 | display: none 11 | max-width: 276px 12 | padding: 1px 13 | text-align: left 14 | // Reset given new insertion method 15 | background-color: $popoverBackground 16 | -webkit-background-clip: padding-box 17 | -moz-background-clip: padding 18 | background-clip: padding-box 19 | border: 1px solid #ccc 20 | border: 1px solid rgba(0, 0, 0, 0.2) 21 | +ctb-border-radius(6px) 22 | +ctb-box-shadow(0 5px 10px rgba(0, 0, 0, 0.2)) 23 | // Overrides for proper insertion 24 | white-space: normal 25 | // Offset the popover to account for the popover arrow 26 | &.top 27 | margin-top: -10px 28 | &.right 29 | margin-left: 10px 30 | &.bottom 31 | margin-top: 10px 32 | &.left 33 | margin-left: -10px 34 | 35 | .popover-title 36 | margin: 0 37 | // reset heading margin 38 | padding: 8px 14px 39 | font-size: 14px 40 | font-weight: normal 41 | line-height: 18px 42 | background-color: $popoverTitleBackground 43 | border-bottom: 1px solid darken($popoverTitleBackground, 5%) 44 | +ctb-border-radius(5px 5px 0 0) 45 | &:empty 46 | display: none 47 | 48 | .popover-content 49 | padding: 9px 14px 50 | 51 | // Arrows 52 | // 53 | // .arrow is outer, .arrow:after is inner 54 | 55 | .popover .arrow, 56 | .popover .arrow:after 57 | position: absolute 58 | display: block 59 | width: 0 60 | height: 0 61 | border-color: transparent 62 | border-style: solid 63 | 64 | .popover .arrow 65 | border-width: $popoverArrowOuterWidth 66 | 67 | .popover .arrow:after 68 | border-width: $popoverArrowWidth 69 | content: "" 70 | 71 | .popover 72 | &.top .arrow 73 | left: 50% 74 | margin-left: -$popoverArrowOuterWidth 75 | border-bottom-width: 0 76 | border-top-color: #999 77 | // IE8 fallback 78 | border-top-color: $popoverArrowOuterColor 79 | bottom: -$popoverArrowOuterWidth 80 | &:after 81 | bottom: 1px 82 | margin-left: -$popoverArrowWidth 83 | border-bottom-width: 0 84 | border-top-color: $popoverArrowColor 85 | &.right .arrow 86 | top: 50% 87 | left: -$popoverArrowOuterWidth 88 | margin-top: -$popoverArrowOuterWidth 89 | border-left-width: 0 90 | border-right-color: #999 91 | // IE8 fallback 92 | border-right-color: $popoverArrowOuterColor 93 | &:after 94 | left: 1px 95 | bottom: -$popoverArrowWidth 96 | border-left-width: 0 97 | border-right-color: $popoverArrowColor 98 | &.bottom .arrow 99 | left: 50% 100 | margin-left: -$popoverArrowOuterWidth 101 | border-top-width: 0 102 | border-bottom-color: #999 103 | // IE8 fallback 104 | border-bottom-color: $popoverArrowOuterColor 105 | top: -$popoverArrowOuterWidth 106 | &:after 107 | top: 1px 108 | margin-left: -$popoverArrowWidth 109 | border-top-width: 0 110 | border-bottom-color: $popoverArrowColor 111 | &.left .arrow 112 | top: 50% 113 | right: -$popoverArrowOuterWidth 114 | margin-top: -$popoverArrowOuterWidth 115 | border-right-width: 0 116 | border-left-color: #999 117 | // IE8 fallback 118 | border-left-color: $popoverArrowOuterColor 119 | &:after 120 | right: 1px 121 | border-right-width: 0 122 | border-left-color: $popoverArrowColor 123 | bottom: -$popoverArrowWidth 124 | -------------------------------------------------------------------------------- /stylesheets/compass_twitter_bootstrap/_progress-bars.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Progress bars 3 | // -------------------------------------------------- 4 | 5 | 6 | // ANIMATIONS 7 | // ---------- 8 | 9 | // Webkit 10 | @-webkit-keyframes progress-bar-stripes { 11 | from { background-position: 40px 0; } 12 | to { background-position: 0 0; } 13 | } 14 | 15 | // Firefox 16 | @-moz-keyframes progress-bar-stripes { 17 | from { background-position: 40px 0; } 18 | to { background-position: 0 0; } 19 | } 20 | 21 | // IE9 22 | @-ms-keyframes progress-bar-stripes { 23 | from { background-position: 40px 0; } 24 | to { background-position: 0 0; } 25 | } 26 | 27 | // Opera 28 | @-o-keyframes progress-bar-stripes { 29 | from { background-position: 0 0; } 30 | to { background-position: 40px 0; } 31 | } 32 | 33 | // Spec 34 | @keyframes progress-bar-stripes { 35 | from { background-position: 40px 0; } 36 | to { background-position: 0 0; } 37 | } 38 | 39 | 40 | 41 | // THE BARS 42 | // -------- 43 | 44 | // Outer container 45 | .progress { 46 | overflow: hidden; 47 | height: $baseLineHeight; 48 | margin-bottom: $baseLineHeight; 49 | @include ctb-gradient-vertical(#f5f5f5, #f9f9f9); 50 | @include ctb-box-shadow(inset 0 1px 2px rgba(0,0,0,.1)); 51 | @include ctb-border-radius($baseBorderRadius); 52 | } 53 | 54 | // Bar of progress 55 | .progress .bar { 56 | width: 0%; 57 | height: 100%; 58 | color: $white; 59 | float: left; 60 | font-size: 12px; 61 | text-align: center; 62 | text-shadow: 0 -1px 0 rgba(0,0,0,.25); 63 | @include ctb-gradient-vertical(#149bdf, #0480be); 64 | @include ctb-box-shadow(inset 0 -1px 0 rgba(0,0,0,.15)); 65 | @include ctb-box-sizing(border-box); 66 | @include ctb-transition(width .6s ease); 67 | } 68 | .progress .bar + .bar { 69 | @include ctb-box-shadow(#{inset 1px 0 0 rgba(0,0,0,.15), inset 0 -1px 0 rgba(0,0,0,.15)}); 70 | } 71 | 72 | // Striped bars 73 | .progress-striped .bar { 74 | @include ctb-gradient-striped(#149bdf); 75 | @include ctb-background-size(40px 40px); 76 | } 77 | 78 | // Call animation for the active one 79 | .progress.active .bar { 80 | -webkit-animation: progress-bar-stripes 2s linear infinite; 81 | -moz-animation: progress-bar-stripes 2s linear infinite; 82 | -ms-animation: progress-bar-stripes 2s linear infinite; 83 | -o-animation: progress-bar-stripes 2s linear infinite; 84 | animation: progress-bar-stripes 2s linear infinite; 85 | } 86 | 87 | 88 | 89 | // COLORS 90 | // ------ 91 | 92 | // Danger (red) 93 | .progress-danger .bar, .progress .bar-danger { 94 | @include ctb-gradient-vertical(#ee5f5b, #c43c35); 95 | } 96 | .progress-danger.progress-striped .bar, .progress-striped .bar-danger { 97 | @include ctb-gradient-striped(#ee5f5b); 98 | } 99 | 100 | // Success (green) 101 | .progress-success .bar, .progress .bar-success { 102 | @include ctb-gradient-vertical(#62c462, #57a957); 103 | } 104 | .progress-success.progress-striped .bar, .progress-striped .bar-success { 105 | @include ctb-gradient-striped(#62c462); 106 | } 107 | 108 | // Info (teal) 109 | .progress-info .bar, .progress .bar-info { 110 | @include ctb-gradient-vertical(#5bc0de, #339bb9); 111 | } 112 | .progress-info.progress-striped .bar, .progress-striped .bar-info { 113 | @include ctb-gradient-striped(#5bc0de); 114 | } 115 | 116 | // Warning (orange) 117 | .progress-warning .bar, .progress .bar-warning { 118 | @include ctb-gradient-vertical(lighten($orange, 15%), $orange); 119 | } 120 | .progress-warning.progress-striped .bar, .progress-striped .bar-warning { 121 | @include ctb-gradient-striped(lighten($orange, 15%)); 122 | } 123 | -------------------------------------------------------------------------------- /vendor/assets/javascripts/bootstrap-popover.js: -------------------------------------------------------------------------------- 1 | /* =========================================================== 2 | * bootstrap-popover.js v2.3.2 3 | * http://getbootstrap.com/2.3.2/javascript.html#popovers 4 | * =========================================================== 5 | * Copyright 2013 Twitter, Inc. 6 | * 7 | * Licensed under the Apache License, Version 2.0 (the "License"); 8 | * you may not use this file except in compliance with the License. 9 | * You may obtain a copy of the License at 10 | * 11 | * http://www.apache.org/licenses/LICENSE-2.0 12 | * 13 | * Unless required by applicable law or agreed to in writing, software 14 | * distributed under the License is distributed on an "AS IS" BASIS, 15 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 | * See the License for the specific language governing permissions and 17 | * limitations under the License. 18 | * =========================================================== */ 19 | 20 | 21 | !function ($) { 22 | 23 | "use strict"; // jshint ;_; 24 | 25 | 26 | /* POPOVER PUBLIC CLASS DEFINITION 27 | * =============================== */ 28 | 29 | var Popover = function (element, options) { 30 | this.init('popover', element, options) 31 | } 32 | 33 | 34 | /* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js 35 | ========================================== */ 36 | 37 | Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, { 38 | 39 | constructor: Popover 40 | 41 | , setContent: function () { 42 | var $tip = this.tip() 43 | , title = this.getTitle() 44 | , content = this.getContent() 45 | 46 | $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) 47 | $tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content) 48 | 49 | $tip.removeClass('fade top bottom left right in') 50 | } 51 | 52 | , hasContent: function () { 53 | return this.getTitle() || this.getContent() 54 | } 55 | 56 | , getContent: function () { 57 | var content 58 | , $e = this.$element 59 | , o = this.options 60 | 61 | content = (typeof o.content == 'function' ? o.content.call($e[0]) : o.content) 62 | || $e.attr('data-content') 63 | 64 | return content 65 | } 66 | 67 | , tip: function () { 68 | if (!this.$tip) { 69 | this.$tip = $(this.options.template) 70 | } 71 | return this.$tip 72 | } 73 | 74 | , destroy: function () { 75 | this.hide().$element.off('.' + this.type).removeData(this.type) 76 | } 77 | 78 | }) 79 | 80 | 81 | /* POPOVER PLUGIN DEFINITION 82 | * ======================= */ 83 | 84 | var old = $.fn.popover 85 | 86 | $.fn.popover = function (option) { 87 | return this.each(function () { 88 | var $this = $(this) 89 | , data = $this.data('popover') 90 | , options = typeof option == 'object' && option 91 | if (!data) $this.data('popover', (data = new Popover(this, options))) 92 | if (typeof option == 'string') data[option]() 93 | }) 94 | } 95 | 96 | $.fn.popover.Constructor = Popover 97 | 98 | $.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, { 99 | placement: 'right' 100 | , trigger: 'click' 101 | , content: '' 102 | , template: '