Skip to content
This repository was archived by the owner on Nov 2, 2023. It is now read-only.

Commit 1d0effb

Browse files
committed
Just a touch of style
1 parent 4638a78 commit 1d0effb

13 files changed

+1844
-0
lines changed

lib/bootstrap-alert.js

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
/* ==========================================================
2+
* bootstrap-alert.js v2.0.4
3+
* http://twitter.github.com/bootstrap/javascript.html#alerts
4+
* ==========================================================
5+
* Copyright 2012 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+
$.fn.alert = function (option) {
72+
return this.each(function () {
73+
var $this = $(this)
74+
, data = $this.data('alert')
75+
if (!data) $this.data('alert', (data = new Alert(this)))
76+
if (typeof option == 'string') data[option].call($this)
77+
})
78+
}
79+
80+
$.fn.alert.Constructor = Alert
81+
82+
83+
/* ALERT DATA-API
84+
* ============== */
85+
86+
$(function () {
87+
$('body').on('click.alert.data-api', dismiss, Alert.prototype.close)
88+
})
89+
90+
}(window.jQuery);

lib/bootstrap-button.js

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
/* ============================================================
2+
* bootstrap-button.js v2.0.4
3+
* http://twitter.github.com/bootstrap/javascript.html#buttons
4+
* ============================================================
5+
* Copyright 2012 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.parent('[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+
$.fn.button = function (option) {
68+
return this.each(function () {
69+
var $this = $(this)
70+
, data = $this.data('button')
71+
, options = typeof option == 'object' && option
72+
if (!data) $this.data('button', (data = new Button(this, options)))
73+
if (option == 'toggle') data.toggle()
74+
else if (option) data.setState(option)
75+
})
76+
}
77+
78+
$.fn.button.defaults = {
79+
loadingText: 'loading...'
80+
}
81+
82+
$.fn.button.Constructor = Button
83+
84+
85+
/* BUTTON DATA-API
86+
* =============== */
87+
88+
$(function () {
89+
$('body').on('click.button.data-api', '[data-toggle^=button]', function ( e ) {
90+
var $btn = $(e.target)
91+
if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
92+
$btn.button('toggle')
93+
})
94+
})
95+
96+
}(window.jQuery);

lib/bootstrap-carousel.js

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
/* ==========================================================
2+
* bootstrap-carousel.js v2.0.4
3+
* http://twitter.github.com/bootstrap/javascript.html#carousel
4+
* ==========================================================
5+
* Copyright 2012 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+
/* CAROUSEL CLASS DEFINITION
27+
* ========================= */
28+
29+
var Carousel = function (element, options) {
30+
this.$element = $(element)
31+
this.options = options
32+
this.options.slide && this.slide(this.options.slide)
33+
this.options.pause == 'hover' && this.$element
34+
.on('mouseenter', $.proxy(this.pause, this))
35+
.on('mouseleave', $.proxy(this.cycle, this))
36+
}
37+
38+
Carousel.prototype = {
39+
40+
cycle: function (e) {
41+
if (!e) this.paused = false
42+
this.options.interval
43+
&& !this.paused
44+
&& (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
45+
return this
46+
}
47+
48+
, to: function (pos) {
49+
var $active = this.$element.find('.active')
50+
, children = $active.parent().children()
51+
, activePos = children.index($active)
52+
, that = this
53+
54+
if (pos > (children.length - 1) || pos < 0) return
55+
56+
if (this.sliding) {
57+
return this.$element.one('slid', function () {
58+
that.to(pos)
59+
})
60+
}
61+
62+
if (activePos == pos) {
63+
return this.pause().cycle()
64+
}
65+
66+
return this.slide(pos > activePos ? 'next' : 'prev', $(children[pos]))
67+
}
68+
69+
, pause: function (e) {
70+
if (!e) this.paused = true
71+
clearInterval(this.interval)
72+
this.interval = null
73+
return this
74+
}
75+
76+
, next: function () {
77+
if (this.sliding) return
78+
return this.slide('next')
79+
}
80+
81+
, prev: function () {
82+
if (this.sliding) return
83+
return this.slide('prev')
84+
}
85+
86+
, slide: function (type, next) {
87+
var $active = this.$element.find('.active')
88+
, $next = next || $active[type]()
89+
, isCycling = this.interval
90+
, direction = type == 'next' ? 'left' : 'right'
91+
, fallback = type == 'next' ? 'first' : 'last'
92+
, that = this
93+
, e = $.Event('slide')
94+
95+
this.sliding = true
96+
97+
isCycling && this.pause()
98+
99+
$next = $next.length ? $next : this.$element.find('.item')[fallback]()
100+
101+
if ($next.hasClass('active')) return
102+
103+
if ($.support.transition && this.$element.hasClass('slide')) {
104+
this.$element.trigger(e)
105+
if (e.isDefaultPrevented()) return
106+
$next.addClass(type)
107+
$next[0].offsetWidth // force reflow
108+
$active.addClass(direction)
109+
$next.addClass(direction)
110+
this.$element.one($.support.transition.end, function () {
111+
$next.removeClass([type, direction].join(' ')).addClass('active')
112+
$active.removeClass(['active', direction].join(' '))
113+
that.sliding = false
114+
setTimeout(function () { that.$element.trigger('slid') }, 0)
115+
})
116+
} else {
117+
this.$element.trigger(e)
118+
if (e.isDefaultPrevented()) return
119+
$active.removeClass('active')
120+
$next.addClass('active')
121+
this.sliding = false
122+
this.$element.trigger('slid')
123+
}
124+
125+
isCycling && this.cycle()
126+
127+
return this
128+
}
129+
130+
}
131+
132+
133+
/* CAROUSEL PLUGIN DEFINITION
134+
* ========================== */
135+
136+
$.fn.carousel = function (option) {
137+
return this.each(function () {
138+
var $this = $(this)
139+
, data = $this.data('carousel')
140+
, options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
141+
if (!data) $this.data('carousel', (data = new Carousel(this, options)))
142+
if (typeof option == 'number') data.to(option)
143+
else if (typeof option == 'string' || (option = options.slide)) data[option]()
144+
else if (options.interval) data.cycle()
145+
})
146+
}
147+
148+
$.fn.carousel.defaults = {
149+
interval: 5000
150+
, pause: 'hover'
151+
}
152+
153+
$.fn.carousel.Constructor = Carousel
154+
155+
156+
/* CAROUSEL DATA-API
157+
* ================= */
158+
159+
$(function () {
160+
$('body').on('click.carousel.data-api', '[data-slide]', function ( e ) {
161+
var $this = $(this), href
162+
, $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
163+
, options = !$target.data('modal') && $.extend({}, $target.data(), $this.data())
164+
$target.carousel(options)
165+
e.preventDefault()
166+
})
167+
})
168+
169+
}(window.jQuery);

0 commit comments

Comments
 (0)