mls 0.14.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/Rakefile +6 -6
  4. data/lib/mls.rb +73 -427
  5. data/lib/mls/account.rb +15 -0
  6. data/lib/mls/address.rb +4 -0
  7. data/lib/mls/agency.rb +6 -0
  8. data/lib/mls/brokerage.rb +7 -0
  9. data/lib/mls/coworking_space.rb +5 -0
  10. data/lib/mls/floorplan.rb +11 -0
  11. data/lib/mls/flyer.rb +11 -0
  12. data/lib/mls/lease.rb +2 -0
  13. data/lib/mls/listing.rb +135 -0
  14. data/lib/mls/locality.rb +6 -0
  15. data/lib/mls/photo.rb +18 -0
  16. data/lib/mls/property.rb +24 -0
  17. data/lib/mls/region.rb +13 -0
  18. data/lib/mls/sale.rb +2 -0
  19. data/lib/mls/space.rb +3 -0
  20. data/lib/mls/sublease.rb +2 -0
  21. data/lib/mls/use.rb +25 -0
  22. data/mls.gemspec +11 -15
  23. data/test/mls/attribute_test.rb +55 -0
  24. data/test/mls/resource_test.rb +31 -0
  25. data/test/mls_test.rb +27 -0
  26. data/test/test_helper.rb +26 -27
  27. metadata +43 -75
  28. data/lib/mls/attribute.rb +0 -44
  29. data/lib/mls/attributes/array.rb +0 -11
  30. data/lib/mls/attributes/boolean.rb +0 -9
  31. data/lib/mls/attributes/datetime.rb +0 -25
  32. data/lib/mls/attributes/decimal.rb +0 -21
  33. data/lib/mls/attributes/fixnum.rb +0 -16
  34. data/lib/mls/attributes/hash.rb +0 -15
  35. data/lib/mls/attributes/string.rb +0 -15
  36. data/lib/mls/errors.rb +0 -29
  37. data/lib/mls/factories/account.rb +0 -34
  38. data/lib/mls/factories/address.rb +0 -16
  39. data/lib/mls/factories/listing.rb +0 -29
  40. data/lib/mls/factories_helper.rb +0 -7
  41. data/lib/mls/model.rb +0 -125
  42. data/lib/mls/models/account.rb +0 -174
  43. data/lib/mls/models/address.rb +0 -58
  44. data/lib/mls/models/brokerage.rb +0 -31
  45. data/lib/mls/models/floorplan.rb +0 -45
  46. data/lib/mls/models/flyer.rb +0 -45
  47. data/lib/mls/models/listing.rb +0 -394
  48. data/lib/mls/models/pdf.rb +0 -15
  49. data/lib/mls/models/photo.rb +0 -40
  50. data/lib/mls/models/property.rb +0 -114
  51. data/lib/mls/models/region.rb +0 -56
  52. data/lib/mls/models/tour.rb +0 -54
  53. data/lib/mls/models/video.rb +0 -18
  54. data/lib/mls/parser.rb +0 -74
  55. data/lib/mls/resource.rb +0 -99
  56. data/lib/rdoc/generator/template/42floors/_context.rhtml +0 -209
  57. data/lib/rdoc/generator/template/42floors/_head.rhtml +0 -7
  58. data/lib/rdoc/generator/template/42floors/class.rhtml +0 -39
  59. data/lib/rdoc/generator/template/42floors/file.rhtml +0 -35
  60. data/lib/rdoc/generator/template/42floors/index.rhtml +0 -13
  61. data/lib/rdoc/generator/template/42floors/resources/apple-touch-icon.png +0 -0
  62. data/lib/rdoc/generator/template/42floors/resources/css/github.css +0 -129
  63. data/lib/rdoc/generator/template/42floors/resources/css/main.css +0 -339
  64. data/lib/rdoc/generator/template/42floors/resources/css/panel.css +0 -389
  65. data/lib/rdoc/generator/template/42floors/resources/css/reset.css +0 -48
  66. data/lib/rdoc/generator/template/42floors/resources/favicon.ico +0 -0
  67. data/lib/rdoc/generator/template/42floors/resources/i/arrows.png +0 -0
  68. data/lib/rdoc/generator/template/42floors/resources/i/results_bg.png +0 -0
  69. data/lib/rdoc/generator/template/42floors/resources/i/tree_bg.png +0 -0
  70. data/lib/rdoc/generator/template/42floors/resources/js/highlight.pack.js +0 -1
  71. data/lib/rdoc/generator/template/42floors/resources/js/jquery-1.3.2.min.js +0 -19
  72. data/lib/rdoc/generator/template/42floors/resources/js/jquery-effect.js +0 -593
  73. data/lib/rdoc/generator/template/42floors/resources/js/main.js +0 -20
  74. data/lib/rdoc/generator/template/42floors/resources/js/searchdoc.js +0 -442
  75. data/lib/rdoc/generator/template/42floors/resources/panel/index.html +0 -73
  76. data/lib/rdoc/generator/template/42floors/se_index.rhtml +0 -8
  77. data/test/units/properties/test_boolean.rb +0 -4
  78. data/test/units/test_errors.rb +0 -32
  79. data/test/units/test_mls.rb +0 -294
  80. data/test/units/test_property.rb +0 -35
@@ -1,593 +0,0 @@
1
- /*
2
- * jQuery UI Effects 1.6rc6
3
- *
4
- * Copyright (c) 2009 AUTHORS.txt (http://ui.jquery.com/about)
5
- * Dual licensed under the MIT (MIT-LICENSE.txt)
6
- * and GPL (GPL-LICENSE.txt) licenses.
7
- *
8
- * http://docs.jquery.com/UI/Effects/
9
- */
10
- ;(function($) {
11
-
12
- $.effects = $.effects || {}; //Add the 'effects' scope
13
-
14
- $.extend($.effects, {
15
- version: "1.6rc6",
16
-
17
- // Saves a set of attributes in a data storage
18
- save: function(element, set) {
19
- for(var i=0; i < set.length; i++) {
20
- if(set[i] !== null) element.data("ec.storage."+set[i], element[0].style[set[i]]);
21
- }
22
- },
23
-
24
- // Restores a set of previously saved attributes from a data storage
25
- restore: function(element, set) {
26
- for(var i=0; i < set.length; i++) {
27
- if(set[i] !== null) element.css(set[i], element.data("ec.storage."+set[i]));
28
- }
29
- },
30
-
31
- setMode: function(el, mode) {
32
- if (mode == 'toggle') mode = el.is(':hidden') ? 'show' : 'hide'; // Set for toggle
33
- return mode;
34
- },
35
-
36
- getBaseline: function(origin, original) { // Translates a [top,left] array into a baseline value
37
- // this should be a little more flexible in the future to handle a string & hash
38
- var y, x;
39
- switch (origin[0]) {
40
- case 'top': y = 0; break;
41
- case 'middle': y = 0.5; break;
42
- case 'bottom': y = 1; break;
43
- default: y = origin[0] / original.height;
44
- };
45
- switch (origin[1]) {
46
- case 'left': x = 0; break;
47
- case 'center': x = 0.5; break;
48
- case 'right': x = 1; break;
49
- default: x = origin[1] / original.width;
50
- };
51
- return {x: x, y: y};
52
- },
53
-
54
- // Wraps the element around a wrapper that copies position attributes
55
- createWrapper: function(element) {
56
-
57
- //if the element is already wrapped, return it
58
- if (element.parent().is('.ui-effects-wrapper'))
59
- return element.parent();
60
-
61
- //Cache width,height and float attributes of the element, and create a wrapper around it
62
- var props = { width: element.outerWidth(true), height: element.outerHeight(true), 'float': element.css('float') };
63
- element.wrap('<div class="ui-effects-wrapper" style="font-size:100%;background:transparent;border:none;margin:0;padding:0"></div>');
64
- var wrapper = element.parent();
65
-
66
- //Transfer the positioning of the element to the wrapper
67
- if (element.css('position') == 'static') {
68
- wrapper.css({ position: 'relative' });
69
- element.css({ position: 'relative'} );
70
- } else {
71
- var top = element.css('top'); if(isNaN(parseInt(top,10))) top = 'auto';
72
- var left = element.css('left'); if(isNaN(parseInt(left,10))) left = 'auto';
73
- wrapper.css({ position: element.css('position'), top: top, left: left, zIndex: element.css('z-index') }).show();
74
- element.css({position: 'relative', top: 0, left: 0 });
75
- }
76
-
77
- wrapper.css(props);
78
- return wrapper;
79
- },
80
-
81
- removeWrapper: function(element) {
82
- if (element.parent().is('.ui-effects-wrapper'))
83
- return element.parent().replaceWith(element);
84
- return element;
85
- },
86
-
87
- setTransition: function(element, list, factor, value) {
88
- value = value || {};
89
- $.each(list, function(i, x){
90
- unit = element.cssUnit(x);
91
- if (unit[0] > 0) value[x] = unit[0] * factor + unit[1];
92
- });
93
- return value;
94
- },
95
-
96
- //Base function to animate from one class to another in a seamless transition
97
- animateClass: function(value, duration, easing, callback) {
98
-
99
- var cb = (typeof easing == "function" ? easing : (callback ? callback : null));
100
- var ea = (typeof easing == "string" ? easing : null);
101
-
102
- return this.each(function() {
103
-
104
- var offset = {}; var that = $(this); var oldStyleAttr = that.attr("style") || '';
105
- if(typeof oldStyleAttr == 'object') oldStyleAttr = oldStyleAttr["cssText"]; /* Stupidly in IE, style is a object.. */
106
- if(value.toggle) { that.hasClass(value.toggle) ? value.remove = value.toggle : value.add = value.toggle; }
107
-
108
- //Let's get a style offset
109
- var oldStyle = $.extend({}, (document.defaultView ? document.defaultView.getComputedStyle(this,null) : this.currentStyle));
110
- if(value.add) that.addClass(value.add); if(value.remove) that.removeClass(value.remove);
111
- var newStyle = $.extend({}, (document.defaultView ? document.defaultView.getComputedStyle(this,null) : this.currentStyle));
112
- if(value.add) that.removeClass(value.add); if(value.remove) that.addClass(value.remove);
113
-
114
- // The main function to form the object for animation
115
- for(var n in newStyle) {
116
- if( typeof newStyle[n] != "function" && newStyle[n] /* No functions and null attributes */
117
- && n.indexOf("Moz") == -1 && n.indexOf("length") == -1 /* No mozilla spezific render attributes. */
118
- && newStyle[n] != oldStyle[n] /* Only values that have changed are used for the animation */
119
- && (n.match(/color/i) || (!n.match(/color/i) && !isNaN(parseInt(newStyle[n],10)))) /* Only things that can be parsed to integers or colors */
120
- && (oldStyle.position != "static" || (oldStyle.position == "static" && !n.match(/left|top|bottom|right/))) /* No need for positions when dealing with static positions */
121
- ) offset[n] = newStyle[n];
122
- }
123
-
124
- that.animate(offset, duration, ea, function() { // Animate the newly constructed offset object
125
- // Change style attribute back to original. For stupid IE, we need to clear the damn object.
126
- if(typeof $(this).attr("style") == 'object') { $(this).attr("style")["cssText"] = ""; $(this).attr("style")["cssText"] = oldStyleAttr; } else $(this).attr("style", oldStyleAttr);
127
- if(value.add) $(this).addClass(value.add); if(value.remove) $(this).removeClass(value.remove);
128
- if(cb) cb.apply(this, arguments);
129
- });
130
-
131
- });
132
- }
133
- });
134
-
135
-
136
- function _normalizeArguments(a, m) {
137
-
138
- var o = a[1] && a[1].constructor == Object ? a[1] : {}; if(m) o.mode = m;
139
- var speed = a[1] && a[1].constructor != Object ? a[1] : o.duration; //either comes from options.duration or the second argument
140
- speed = $.fx.off ? 0 : typeof speed === "number" ? speed : $.fx.speeds[speed] || $.fx.speeds._default;
141
- var callback = o.callback || ( $.isFunction(a[2]) && a[2] ) || ( $.isFunction(a[3]) && a[3] );
142
-
143
- return [a[0], o, speed, callback];
144
-
145
- }
146
-
147
- //Extend the methods of jQuery
148
- $.fn.extend({
149
-
150
- //Save old methods
151
- _show: $.fn.show,
152
- _hide: $.fn.hide,
153
- __toggle: $.fn.toggle,
154
- _addClass: $.fn.addClass,
155
- _removeClass: $.fn.removeClass,
156
- _toggleClass: $.fn.toggleClass,
157
-
158
- // New effect methods
159
- effect: function(fx, options, speed, callback) {
160
- return $.effects[fx] ? $.effects[fx].call(this, {method: fx, options: options || {}, duration: speed, callback: callback }) : null;
161
- },
162
-
163
- show: function() {
164
- if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0])))
165
- return this._show.apply(this, arguments);
166
- else {
167
- return this.effect.apply(this, _normalizeArguments(arguments, 'show'));
168
- }
169
- },
170
-
171
- hide: function() {
172
- if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0])))
173
- return this._hide.apply(this, arguments);
174
- else {
175
- return this.effect.apply(this, _normalizeArguments(arguments, 'hide'));
176
- }
177
- },
178
-
179
- toggle: function(){
180
- if(!arguments[0] || (arguments[0].constructor == Number || (/(slow|normal|fast)/).test(arguments[0])) || (arguments[0].constructor == Function))
181
- return this.__toggle.apply(this, arguments);
182
- else {
183
- return this.effect.apply(this, _normalizeArguments(arguments, 'toggle'));
184
- }
185
- },
186
-
187
- addClass: function(classNames, speed, easing, callback) {
188
- return speed ? $.effects.animateClass.apply(this, [{ add: classNames },speed,easing,callback]) : this._addClass(classNames);
189
- },
190
- removeClass: function(classNames,speed,easing,callback) {
191
- return speed ? $.effects.animateClass.apply(this, [{ remove: classNames },speed,easing,callback]) : this._removeClass(classNames);
192
- },
193
- toggleClass: function(classNames,speed,easing,callback) {
194
- return ( (typeof speed !== "boolean") && speed ) ? $.effects.animateClass.apply(this, [{ toggle: classNames },speed,easing,callback]) : this._toggleClass(classNames, speed);
195
- },
196
- morph: function(remove,add,speed,easing,callback) {
197
- return $.effects.animateClass.apply(this, [{ add: add, remove: remove },speed,easing,callback]);
198
- },
199
- switchClass: function() {
200
- return this.morph.apply(this, arguments);
201
- },
202
-
203
- // helper functions
204
- cssUnit: function(key) {
205
- var style = this.css(key), val = [];
206
- $.each( ['em','px','%','pt'], function(i, unit){
207
- if(style.indexOf(unit) > 0)
208
- val = [parseFloat(style), unit];
209
- });
210
- return val;
211
- }
212
- });
213
-
214
- /*
215
- * jQuery Color Animations
216
- * Copyright 2007 John Resig
217
- * Released under the MIT and GPL licenses.
218
- */
219
-
220
- // We override the animation for all of these color styles
221
- $.each(['backgroundColor', 'borderBottomColor', 'borderLeftColor', 'borderRightColor', 'borderTopColor', 'color', 'outlineColor'], function(i,attr){
222
- $.fx.step[attr] = function(fx) {
223
- if ( fx.state == 0 ) {
224
- fx.start = getColor( fx.elem, attr );
225
- fx.end = getRGB( fx.end );
226
- }
227
-
228
- fx.elem.style[attr] = "rgb(" + [
229
- Math.max(Math.min( parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0],10), 255), 0),
230
- Math.max(Math.min( parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1],10), 255), 0),
231
- Math.max(Math.min( parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2],10), 255), 0)
232
- ].join(",") + ")";
233
- };
234
- });
235
-
236
- // Color Conversion functions from highlightFade
237
- // By Blair Mitchelmore
238
- // http://jquery.offput.ca/highlightFade/
239
-
240
- // Parse strings looking for color tuples [255,255,255]
241
- function getRGB(color) {
242
- var result;
243
-
244
- // Check if we're already dealing with an array of colors
245
- if ( color && color.constructor == Array && color.length == 3 )
246
- return color;
247
-
248
- // Look for rgb(num,num,num)
249
- if (result = /rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color))
250
- return [parseInt(result[1],10), parseInt(result[2],10), parseInt(result[3],10)];
251
-
252
- // Look for rgb(num%,num%,num%)
253
- if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color))
254
- return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55];
255
-
256
- // Look for #a0b1c2
257
- if (result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color))
258
- return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)];
259
-
260
- // Look for #fff
261
- if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color))
262
- return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)];
263
-
264
- // Look for rgba(0, 0, 0, 0) == transparent in Safari 3
265
- if (result = /rgba\(0, 0, 0, 0\)/.exec(color))
266
- return colors['transparent'];
267
-
268
- // Otherwise, we're most likely dealing with a named color
269
- return colors[$.trim(color).toLowerCase()];
270
- }
271
-
272
- function getColor(elem, attr) {
273
- var color;
274
-
275
- do {
276
- color = $.curCSS(elem, attr);
277
-
278
- // Keep going until we find an element that has color, or we hit the body
279
- if ( color != '' && color != 'transparent' || $.nodeName(elem, "body") )
280
- break;
281
-
282
- attr = "backgroundColor";
283
- } while ( elem = elem.parentNode );
284
-
285
- return getRGB(color);
286
- };
287
-
288
- // Some named colors to work with
289
- // From Interface by Stefan Petre
290
- // http://interface.eyecon.ro/
291
-
292
- var colors = {
293
- aqua:[0,255,255],
294
- azure:[240,255,255],
295
- beige:[245,245,220],
296
- black:[0,0,0],
297
- blue:[0,0,255],
298
- brown:[165,42,42],
299
- cyan:[0,255,255],
300
- darkblue:[0,0,139],
301
- darkcyan:[0,139,139],
302
- darkgrey:[169,169,169],
303
- darkgreen:[0,100,0],
304
- darkkhaki:[189,183,107],
305
- darkmagenta:[139,0,139],
306
- darkolivegreen:[85,107,47],
307
- darkorange:[255,140,0],
308
- darkorchid:[153,50,204],
309
- darkred:[139,0,0],
310
- darksalmon:[233,150,122],
311
- darkviolet:[148,0,211],
312
- fuchsia:[255,0,255],
313
- gold:[255,215,0],
314
- green:[0,128,0],
315
- indigo:[75,0,130],
316
- khaki:[240,230,140],
317
- lightblue:[173,216,230],
318
- lightcyan:[224,255,255],
319
- lightgreen:[144,238,144],
320
- lightgrey:[211,211,211],
321
- lightpink:[255,182,193],
322
- lightyellow:[255,255,224],
323
- lime:[0,255,0],
324
- magenta:[255,0,255],
325
- maroon:[128,0,0],
326
- navy:[0,0,128],
327
- olive:[128,128,0],
328
- orange:[255,165,0],
329
- pink:[255,192,203],
330
- purple:[128,0,128],
331
- violet:[128,0,128],
332
- red:[255,0,0],
333
- silver:[192,192,192],
334
- white:[255,255,255],
335
- yellow:[255,255,0],
336
- transparent: [255,255,255]
337
- };
338
-
339
- /*
340
- * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
341
- *
342
- * Uses the built in easing capabilities added In jQuery 1.1
343
- * to offer multiple easing options
344
- *
345
- * TERMS OF USE - jQuery Easing
346
- *
347
- * Open source under the BSD License.
348
- *
349
- * Copyright 2008 George McGinley Smith
350
- * All rights reserved.
351
- *
352
- * Redistribution and use in source and binary forms, with or without modification,
353
- * are permitted provided that the following conditions are met:
354
- *
355
- * Redistributions of source code must retain the above copyright notice, this list of
356
- * conditions and the following disclaimer.
357
- * Redistributions in binary form must reproduce the above copyright notice, this list
358
- * of conditions and the following disclaimer in the documentation and/or other materials
359
- * provided with the distribution.
360
- *
361
- * Neither the name of the author nor the names of contributors may be used to endorse
362
- * or promote products derived from this software without specific prior written permission.
363
- *
364
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
365
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
366
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
367
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
368
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
369
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
370
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
371
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
372
- * OF THE POSSIBILITY OF SUCH DAMAGE.
373
- *
374
- */
375
-
376
- // t: current time, b: begInnIng value, c: change In value, d: duration
377
- $.easing.jswing = $.easing.swing;
378
-
379
- $.extend($.easing,
380
- {
381
- def: 'easeOutQuad',
382
- swing: function (x, t, b, c, d) {
383
- //alert($.easing.default);
384
- return $.easing[$.easing.def](x, t, b, c, d);
385
- },
386
- easeInQuad: function (x, t, b, c, d) {
387
- return c*(t/=d)*t + b;
388
- },
389
- easeOutQuad: function (x, t, b, c, d) {
390
- return -c *(t/=d)*(t-2) + b;
391
- },
392
- easeInOutQuad: function (x, t, b, c, d) {
393
- if ((t/=d/2) < 1) return c/2*t*t + b;
394
- return -c/2 * ((--t)*(t-2) - 1) + b;
395
- },
396
- easeInCubic: function (x, t, b, c, d) {
397
- return c*(t/=d)*t*t + b;
398
- },
399
- easeOutCubic: function (x, t, b, c, d) {
400
- return c*((t=t/d-1)*t*t + 1) + b;
401
- },
402
- easeInOutCubic: function (x, t, b, c, d) {
403
- if ((t/=d/2) < 1) return c/2*t*t*t + b;
404
- return c/2*((t-=2)*t*t + 2) + b;
405
- },
406
- easeInQuart: function (x, t, b, c, d) {
407
- return c*(t/=d)*t*t*t + b;
408
- },
409
- easeOutQuart: function (x, t, b, c, d) {
410
- return -c * ((t=t/d-1)*t*t*t - 1) + b;
411
- },
412
- easeInOutQuart: function (x, t, b, c, d) {
413
- if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
414
- return -c/2 * ((t-=2)*t*t*t - 2) + b;
415
- },
416
- easeInQuint: function (x, t, b, c, d) {
417
- return c*(t/=d)*t*t*t*t + b;
418
- },
419
- easeOutQuint: function (x, t, b, c, d) {
420
- return c*((t=t/d-1)*t*t*t*t + 1) + b;
421
- },
422
- easeInOutQuint: function (x, t, b, c, d) {
423
- if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
424
- return c/2*((t-=2)*t*t*t*t + 2) + b;
425
- },
426
- easeInSine: function (x, t, b, c, d) {
427
- return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
428
- },
429
- easeOutSine: function (x, t, b, c, d) {
430
- return c * Math.sin(t/d * (Math.PI/2)) + b;
431
- },
432
- easeInOutSine: function (x, t, b, c, d) {
433
- return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
434
- },
435
- easeInExpo: function (x, t, b, c, d) {
436
- return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
437
- },
438
- easeOutExpo: function (x, t, b, c, d) {
439
- return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
440
- },
441
- easeInOutExpo: function (x, t, b, c, d) {
442
- if (t==0) return b;
443
- if (t==d) return b+c;
444
- if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
445
- return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
446
- },
447
- easeInCirc: function (x, t, b, c, d) {
448
- return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
449
- },
450
- easeOutCirc: function (x, t, b, c, d) {
451
- return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
452
- },
453
- easeInOutCirc: function (x, t, b, c, d) {
454
- if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
455
- return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
456
- },
457
- easeInElastic: function (x, t, b, c, d) {
458
- var s=1.70158;var p=0;var a=c;
459
- if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
460
- if (a < Math.abs(c)) { a=c; var s=p/4; }
461
- else var s = p/(2*Math.PI) * Math.asin (c/a);
462
- return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
463
- },
464
- easeOutElastic: function (x, t, b, c, d) {
465
- var s=1.70158;var p=0;var a=c;
466
- if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
467
- if (a < Math.abs(c)) { a=c; var s=p/4; }
468
- else var s = p/(2*Math.PI) * Math.asin (c/a);
469
- return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
470
- },
471
- easeInOutElastic: function (x, t, b, c, d) {
472
- var s=1.70158;var p=0;var a=c;
473
- if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);
474
- if (a < Math.abs(c)) { a=c; var s=p/4; }
475
- else var s = p/(2*Math.PI) * Math.asin (c/a);
476
- if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
477
- return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
478
- },
479
- easeInBack: function (x, t, b, c, d, s) {
480
- if (s == undefined) s = 1.70158;
481
- return c*(t/=d)*t*((s+1)*t - s) + b;
482
- },
483
- easeOutBack: function (x, t, b, c, d, s) {
484
- if (s == undefined) s = 1.70158;
485
- return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
486
- },
487
- easeInOutBack: function (x, t, b, c, d, s) {
488
- if (s == undefined) s = 1.70158;
489
- if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
490
- return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
491
- },
492
- easeInBounce: function (x, t, b, c, d) {
493
- return c - $.easing.easeOutBounce (x, d-t, 0, c, d) + b;
494
- },
495
- easeOutBounce: function (x, t, b, c, d) {
496
- if ((t/=d) < (1/2.75)) {
497
- return c*(7.5625*t*t) + b;
498
- } else if (t < (2/2.75)) {
499
- return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
500
- } else if (t < (2.5/2.75)) {
501
- return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
502
- } else {
503
- return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
504
- }
505
- },
506
- easeInOutBounce: function (x, t, b, c, d) {
507
- if (t < d/2) return $.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
508
- return $.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
509
- }
510
- });
511
- /*
512
- *
513
- * TERMS OF USE - EASING EQUATIONS
514
- *
515
- * Open source under the BSD License.
516
- *
517
- * Copyright 2001 Robert Penner
518
- * All rights reserved.
519
- *
520
- * Redistribution and use in source and binary forms, with or without modification,
521
- * are permitted provided that the following conditions are met:
522
- *
523
- * Redistributions of source code must retain the above copyright notice, this list of
524
- * conditions and the following disclaimer.
525
- * Redistributions in binary form must reproduce the above copyright notice, this list
526
- * of conditions and the following disclaimer in the documentation and/or other materials
527
- * provided with the distribution.
528
- *
529
- * Neither the name of the author nor the names of contributors may be used to endorse
530
- * or promote products derived from this software without specific prior written permission.
531
- *
532
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
533
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
534
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
535
- * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
536
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
537
- * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
538
- * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
539
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
540
- * OF THE POSSIBILITY OF SUCH DAMAGE.
541
- *
542
- */
543
-
544
- })(jQuery);
545
-
546
- /*
547
- * jQuery UI Effects Highlight 1.6rc6
548
- *
549
- * Copyright (c) 2009 AUTHORS.txt (http://ui.jquery.com/about)
550
- * Dual licensed under the MIT (MIT-LICENSE.txt)
551
- * and GPL (GPL-LICENSE.txt) licenses.
552
- *
553
- * http://docs.jquery.com/UI/Effects/Highlight
554
- *
555
- * Depends:
556
- * effects.core.js
557
- */
558
- (function($) {
559
-
560
- $.effects.highlight = function(o) {
561
-
562
- return this.queue(function() {
563
-
564
- // Create element
565
- var el = $(this), props = ['backgroundImage','backgroundColor','opacity'];
566
-
567
- // Set options
568
- var mode = $.effects.setMode(el, o.options.mode || 'show'); // Set Mode
569
- var color = o.options.color || "#ffff99"; // Default highlight color
570
- var oldColor = el.css("backgroundColor");
571
-
572
- // Adjust
573
- $.effects.save(el, props); el.show(); // Save & Show
574
- el.css({backgroundImage: 'none', backgroundColor: color}); // Shift
575
-
576
- // Animation
577
- var animation = {backgroundColor: oldColor };
578
- if (mode == "hide") animation['opacity'] = 0;
579
-
580
- // Animate
581
- el.animate(animation, { queue: false, duration: o.duration, easing: o.options.easing, complete: function() {
582
- if(mode == "hide") el.hide();
583
- $.effects.restore(el, props);
584
- if (mode == "show" && $.browser.msie) this.style.removeAttribute('filter');
585
- if(o.callback) o.callback.apply(this, arguments);
586
- el.dequeue();
587
- }});
588
-
589
- });
590
-
591
- };
592
-
593
- })(jQuery);