1! function(a, b, c, d) { 2 function e(b, c) { 3 b.owlCarousel = { 4 name: "Owl Carousel", 5 author: "Bartosz Wojciechowski", 6 version: "2.0.0-beta.2.1" 7 }, this.settings = null, this.options = a.extend({}, e.Defaults, c), this.itemData = a.extend({}, l), this.dom = a.extend({}, m), this.width = a.extend({}, n), this.num = a.extend({}, o), this.drag = a.extend({}, q), this.state = a.extend({}, r), this.e = a.extend({}, s), this.plugins = {}, this._supress = {}, this._current = null, this._speed = null, this._coordinates = null, this.dom.el = b, this.dom.$el = a(b); 8 for (var d in e.Plugins) this.plugins[d[0].toLowerCase() + d.slice(1)] = new e.Plugins[d](this); 9 this.init() 10 } 11 12 function f(a) { 13 var b, d, e = c.createElement("div"), 14 f = a; 15 for (b in f) 16 if (d = f[b], "undefined" != typeof e.style[d]) return e = null, [d, b]; 17 return [!1] 18 } 19 20 function g() { 21 return f(["transition", "WebkitTransition", "MozTransition", "OTransition"])[1] 22 } 23 24 function h() { 25 return f(["transform", "WebkitTransform", "MozTransform", "OTransform", "msTransform"])[0] 26 } 27 28 function i() { 29 return f(["perspective", "webkitPerspective", "MozPerspective", "OPerspective", "MsPerspective"])[0] 30 } 31 32 function j() { 33 return "ontouchstart" in b || !!navigator.msMaxTouchPoints 34 } 35 36 function k() { 37 return b.navigator.msPointerEnabled 38 } 39 var l, m, n, o, p, q, r, s; 40 l = { 41 index: !1, 42 indexAbs: !1, 43 posLeft: !1, 44 clone: !1, 45 active: !1, 46 loaded: !1, 47 lazyLoad: !1, 48 current: !1, 49 width: !1, 50 center: !1, 51 page: !1, 52 hasVideo: !1, 53 playVideo: !1 54 }, m = { 55 el: null, 56 $el: null, 57 stage: null, 58 $stage: null, 59 oStage: null, 60 $oStage: null, 61 $items: null, 62 $oItems: null, 63 $cItems: null, 64 $content: null 65 }, n = { 66 el: 0, 67 stage: 0, 68 item: 0, 69 prevWindow: 0, 70 cloneLast: 0 71 }, o = { 72 items: 0, 73 oItems: 0, 74 cItems: 0, 75 active: 0, 76 merged: [] 77 }, q = { 78 start: 0, 79 startX: 0, 80 startY: 0, 81 current: 0, 82 currentX: 0, 83 currentY: 0, 84 offsetX: 0, 85 offsetY: 0, 86 distance: null, 87 startTime: 0, 88 endTime: 0, 89 updatedX: 0, 90 targetEl: null 91 }, r = { 92 isTouch: !1, 93 isScrolling: !1, 94 isSwiping: !1, 95 direction: !1, 96 inMotion: !1 97 }, s = { 98 _onDragStart: null, 99 _onDragMove: null, 100 _onDragEnd: null, 101 _transitionEnd: null, 102 _resizer: null, 103 _responsiveCall: null, 104 _goToLoop: null, 105 _checkVisibile: null 106 }, e.Defaults = { 107 items: 3, 108 loop: !1, 109 center: !1, 110 mouseDrag: !0, 111 touchDrag: !0, 112 pullDrag: !0, 113 freeDrag: !1, 114 margin: 0, 115 stagePadding: 0, 116 merge: !1, 117 mergeFit: !0, 118 autoWidth: !1, 119 startPosition: 0, 120 smartSpeed: 250, 121 fluidSpeed: !1, 122 dragEndSpeed: !1, 123 responsive: {}, 124 responsiveRefreshRate: 200, 125 responsiveBaseElement: b, 126 responsiveClass: !1, 127 fallbackEasing: "swing", 128 info: !1, 129 nestedItemSelector: !1, 130 itemElement: "div", 131 stageElement: "div", 132 themeClass: "owl-theme", 133 baseClass: "owl-carousel", 134 itemClass: "owl-item", 135 centerClass: "center", 136 activeClass: "active" 137 }, e.Plugins = {}, e.prototype.init = function() { 138 if (this.setResponsiveOptions(), this.trigger("initialize"), this.dom.$el.hasClass(this.settings.baseClass) || this.dom.$el.addClass(this.settings.baseClass), this.dom.$el.hasClass(this.settings.themeClass) || this.dom.$el.addClass(this.settings.themeClass), this.settings.rtl && this.dom.$el.addClass("owl-rtl"), this.browserSupport(), this.settings.autoWidth && this.state.imagesLoaded !== !0) { 139 var a, b, c; 140 if (a = this.dom.$el.find("img"), b = this.settings.nestedItemSelector ? "." + this.settings.nestedItemSelector : d, c = this.dom.$el.children(b).width(), a.length && 0 >= c) return this.preloadAutoWidthImages(a), !1 141 } 142 this.width.prevWindow = this.viewport(), this.createStage(), this.fetchContent(), this.eventsCall(), this.internalEvents(), this.dom.$el.addClass("owl-loading"), this.refresh(!0), this.dom.$el.removeClass("owl-loading").addClass("owl-loaded"), this.trigger("initialized"), this.addTriggerableEvents() 143 }, e.prototype.setResponsiveOptions = function() { 144 if (this.options.responsive) { 145 var b = this.viewport(), 146 c = this.options.responsive, 147 d = -1; 148 a.each(c, function(a) { 149 b >= a && a > d && (d = Number(a)) 150 }), this.settings = a.extend({}, this.options, c[d]), delete this.settings.responsive, this.settings.responsiveClass && this.dom.$el.attr("class", function(a, b) { 151 return b.replace(/\b owl-responsive-\S+/g, "") 152 }).addClass("owl-responsive-" + d) 153 } else this.settings = a.extend({}, this.options) 154 }, e.prototype.optionsLogic = function() { 155 this.dom.$el.toggleClass("owl-center", this.settings.center), this.settings.loop && this.num.oItems < this.settings.items && (this.settings.loop = !1), this.settings.autoWidth && (this.settings.stagePadding = !1, this.settings.merge = !1) 156 }, e.prototype.createStage = function() { 157 var b = c.createElement("div"), 158 d = c.createElement(this.settings.stageElement); 159 b.className = "owl-stage-outer", d.className = "owl-stage", b.appendChild(d), this.dom.el.appendChild(b), this.dom.oStage = b, this.dom.$oStage = a(b), this.dom.stage = d, this.dom.$stage = a(d), b = null, d = null 160 }, e.prototype.createItemContainer = function() { 161 var b = c.createElement(this.settings.itemElement); 162 return b.className = this.settings.itemClass, a(b) 163 }, e.prototype.fetchContent = function(b) { 164 b ? this.dom.$content = b instanceof jQuery ? b : a(b) : this.settings.nestedItemSelector ? this.dom.$content = this.dom.$el.find("." + this.settings.nestedItemSelector).not(".owl-stage-outer") : this.dom.$content = this.dom.$el.children().not(".owl-stage-outer"), this.num.oItems = this.dom.$content.length, 0 !== this.num.oItems && this.initStructure() 165 }, e.prototype.initStructure = function() { 166 this.createNormalStructure() 167 }, e.prototype.createNormalStructure = function() { 168 var a, b; 169 for (a = 0; a < this.num.oItems; a++) b = this.createItemContainer(), this.initializeItemContainer(b, this.dom.$content[a]), this.dom.$stage.append(b); 170 this.dom.$content = null 171 }, e.prototype.createCustomStructure = function(a) { 172 var b, c; 173 for (b = 0; a > b; b++) c = this.createItemContainer(), this.createItemContainerData(c), this.dom.$stage.append(c) 174 }, e.prototype.initializeItemContainer = function(a, b) { 175 this.trigger("change", { 176 property: { 177 name: "item", 178 value: a 179 } 180 }), this.createItemContainerData(a), a.append(b), this.trigger("changed", { 181 property: { 182 name: "item", 183 value: a 184 } 185 }) 186 }, e.prototype.createItemContainerData = function(b, c) { 187 var d = a.extend({}, this.itemData); 188 c && a.extend(d, c.data("owl-item")), b.data("owl-item", d) 189 }, e.prototype.cloneItemContainer = function(a) { 190 var b = a.clone(!0, !0).addClass("cloned"); 191 return this.createItemContainerData(b, b), b.data("owl-item").clone = !0, b 192 }, e.prototype.updateLocalContent = function() { 193 var b, c; 194 for (this.dom.$oItems = this.dom.$stage.find("." + this.settings.itemClass).filter(function() { 195 return a(this).data("owl-item").clone === !1 196 }), this.num.oItems = this.dom.$oItems.length, b = 0; b < this.num.oItems; b++) c = this.dom.$oItems.eq(b), c.data("owl-item").index = b 197 }, e.prototype.loopClone = function() { 198 if (!this.settings.loop || this.num.oItems < this.settings.items) return !1; 199 var b, c, d, e = this.settings.items, 200 f = this.num.oItems - 1; 201 for (this.settings.stagePadding && 1 === this.settings.items && (e += 1), this.num.c
201Items = 2 * e, d = 0; e > d; d++) b = this.cloneItemContainer(this.dom.$oItems.eq(d)), c = this.cloneItemContainer(this.dom.$oItems.eq(f - d)), this.dom.$stage.append(b), this.dom.$stage.prepend(c); 202 this.dom.$cItems = this.dom.$stage.find("." + this.settings.itemClass).filter(function() { 203 return a(this).data("owl-item").clone === !0 204 }) 205 }, e.prototype.reClone = function() { 206 null !== this.dom.$cItems && (this.dom.$cItems.remove(), this.dom.$cItems = null, this.num.cItems = 0), this.settings.loop && this.loopClone() 207 }, e.prototype.calculate = function() { 208 var a, b, c, d, e, f, g, h = 0, 209 i = 0; 210 for (this.width.el = this.dom.$el.width() - 2 * this.settings.stagePadding, this.width.view = this.dom.$el.width(), c = this.width.el - this.settings.margin * (1 === this.settings.items ? 0 : this.settings.items - 1), this.width.el = this.width.el + this.settings.margin, this.width.item = (c / this.settings.items + this.settings.margin).toFixed(3), this.dom.$items = this.dom.$stage.find(".owl-item"), this.num.items = this.dom.$items.length, this.settings.autoWidth && this.dom.$items.css("width", ""), this._coordinates = [], this.num.merged = [], d = this.settings.rtl ? this.settings.center ? -(this.width.el / 2) : 0 : this.settings.center ? this.width.el / 2 : 0, this.width.mergeStage = 0, a = 0; a < this.num.items; a++) this.settings.merge ? (g = this.dom.$items.eq(a).find("[data-merge]").attr("data-merge") || 1, this.settings.mergeFit && g > this.settings.items && (g = this.settings.items), this.num.merged.push(parseInt(g)), this.width.mergeStage += this.width.item * this.num.merged[a]) : this.num.merged.push(1), f = this.width.item * this.num.merged[a], this.settings.autoWidth && (f = this.dom.$items.eq(a).width() + this.settings.margin, this.settings.rtl ? this.dom.$items[a].style.marginLeft = this.settings.margin + "px" : this.dom.$items[a].style.marginRight = this.settings.margin + "px"), this._coordinates.push(d), this.dom.$items.eq(a).data("owl-item").posLeft = h, this.dom.$items.eq(a).data("owl-item").width = f, this.settings.rtl ? (d += f, h += f) : (d -= f, h -= f), i -= Math.abs(f), this.settings.center && (this._coordinates[a] = this.settings.rtl ? this._coordinates[a] + f / 2 : this._coordinates[a] - f / 2); 211 for (this.settings.autoWidth ? this.width.stage = this.settings.center ? Math.abs(i) : Math.abs(d) : this.width.stage = Math.abs(i), e = this.num.oItems + this.num.cItems, b = 0; e > b; b++) this.dom.$items.eq(b).data("owl-item").indexAbs = b; 212 this.setSizes() 213 }, e.prototype.setSizes = function() { 214 this.settings.stagePadding !== !1 && (this.dom.oStage.style.paddingLeft = this.settings.stagePadding + "px", this.dom.oStage.style.paddingRight = this.settings.stagePadding + "px"), this.settings.rtl ? b.setTimeout(a.proxy(function() { 215 this.dom.stage.style.width = this.width.stage + "px" 216 }, this), 0) : this.dom.stage.style.width = this.width.stage + "px"; 217 for (var c = 0; c < this.num.items; c++) this.settings.autoWidth || (this.dom.$items[c].style.width = this.width.item - this.settings.margin + "px"), this.settings.rtl ? this.dom.$items[c].style.marginLeft = this.settings.margin + "px" : this.dom.$items[c].style.marginRight = this.settings.margin + "px", 1 === this.num.merged[c] || this.settings.autoWidth || (this.dom.$items[c].style.width = this.width.item * this.num.merged[c] - this.settings.margin + "px"); 218 this.width.stagePrev = this.width.stage 219 }, e.prototype.responsive = function() { 220 if (!this.num.oItems) return !1; 221 var a = this.isElWidthChanged(); 222 return a ? this.trigger("resize").isDefaultPrevented() ? !1 : (this.state.responsive = !0, this.refresh(), this.state.responsive = !1, void this.trigger("resized")) : !1 223 }, e.prototype.refresh = function() { 224 var a = this.dom.$oItems && this.dom.$oItems.eq(this.normalize(this.current(), !0)); 225 return this.trigger("refresh"), this.setResponsiveOptions(), this.updateLocalContent(), this.optionsLogic(), 0 === this.num.oItems ? !1 : (this.dom.$stage.addClass("owl-refresh"), this.reClone(), this.calculate(), this.dom.$stage.removeClass("owl-refresh"), a ? this.reset(a.data("owl-item").indexAbs) : (this.dom.oStage.scrollLeft = 0, this.reset(this.dom.$oItems.eq(0).data("owl-item").indexAbs)), this.state.orientation = b.orientation, this.watchVisibility(), void this.trigger("refreshed")) 226 }, e.prototype.updateActiveItems = function() { 227 this.trigger("change", { 228 property: { 229 name: "items", 230 value: this.dom.$items 231 } 232 }); 233 var a, b, c, d, e, f; 234 for (a = 0; a < this.num.items; a++) this.dom.$items.eq(a).data("owl-item").active = !1, this.dom.$items.eq(a).data("owl-item").current = !1, this.dom.$items.eq(a).removeClass(this.settings.activeClass).removeClass(this.settings.centerClass); 235 for (this.num.active = 0, padding = 2 * this.settings.stagePadding, stageX = this.coordinates(this.current()) + padding, view = this.settings.rtl ? this.width.view : -this.width.view, b = 0; b < this.num.items; b++) c = this.dom.$items.eq(b), d = c.data("owl-item").posLeft, e = c.data("owl-item").width, f = this.settings.rtl ? d - e - padding : d - e + padding, (this.op(d, "<=", stageX) && this.op(d, ">", stageX + view) || this.op(f, "<", stageX) && this.op(f, ">", stageX + view)) && (this.num.active++, c.data("owl-item").active = !0, c.data("owl-item").current = !0, c.addClass(this.settings.activeClass), this.settings.lazyLoad || (c.data("owl-item").loaded = !0), this.settings.loop && this.updateClonedItemsState(c.data("owl-item").index)); 236 this.settings.center && (this.dom.$items.eq(this.current()).addClass(this.settings.centerClass).data("owl-item").center = !0), this.trigger("changed", { 237 property: { 238 name: "items", 239 value: this.dom.$items 240 } 241 }) 242 }, e.prototype.updateClonedItemsState = function(a) { 243 var b, c, d; 244 for (this.settings.center && (b = this.dom.$items.eq(this.current()).data("owl-item").index), d = 0; d < this.num.items; d++) c = this.dom.$items.eq(d), c.data("owl-item").index === a && (c.data("owl-item").current = !0, c.data("owl-item").index === b && c.addClass(this.settings.centerClass)) 245 }, e.prototype.eventsCall = function() { 246 this.e._onDragStart = a.proxy(function(a) { 247 this.onDragStart(a) 248 }, this), this.e._onDragMove = a.proxy(function(a) { 249 this.onDragMove(a) 250 }, this), this.e._onDragEnd = a.proxy(function(a) { 251 this.onDragEnd(a) 252 }, this), this.e._transitionEnd = a.proxy(function(a) { 253 this.transitionEnd(a) 254 }, this), this.e._resizer = a.proxy(function() { 255 this.responsiveTimer() 256 }, this), this.e._responsiveCall = a.proxy(function() { 257 this.responsive() 258 }, this), this.e._preventClick = a.proxy(function(a) { 259 this.preventClick(a) 260 }, this) 261 }, e.prototype.responsiveTimer = function() { 262 return this.viewport() === this.width.prevWindow ? !1 : (b.clearTimeout(this.resizeTimer), this.resizeTimer = b.setTimeout(this.e._responsiveCall, this.settings.responsiveRefreshRate), void(this.width.prevWindow = this.viewport())) 263 }, e.prototype.internalEvents = function() { 264 var a = j(), 265 d = k(); 266 a && !d ? this.dragType = ["touchstart", "touchmove", "touchend", "touchcancel"] : a && d ? this.dragType = ["MSPointerDown", "MSPointerMove", "MSPointerUp", "MSPointerCancel"] : this.dragType = ["mousedown", "mousemove", "mouseup"], (a || d) && this.settings.touchDrag ? this.on(c, this.dragType[3], this.e._onDragEnd) : (this.dom.$stage.on("dragstart", function() { 267 return !1 268 }), this.settings.mouseDrag ? this.dom.stage.onselectstart = function() { 269 return !1 270 } : this.dom.$el.addClass("owl-text-select-on")), this.transitionEndVendor && this.on(this.dom.stage, this.transitionEndVendor, this.e._transitionEnd, !1), this.settings.responsive !== !1 && this.on(b, "resize", this.e._resizer, !1), this.dragEvents() 271 }, e.prototype.dragEvents = function() { 272 !this.settings.touchDrag || "touchstart" !== this.dragType[0] && "MSPointerDown" !== this.dragType[0] ? this.settings.mouseDrag && "mousedown" === this.dragType[0] ? this.on(this.dom.stage, this.dragType[0], this.e._onDragStart, !1) : this.off(this.dom.stage, this.dragType[0], this.e._onDragStart) : this.on(this.dom.stage, this.dragType[0], this.e._onDragStart, !1) 273 }, e.prototype.onDragStart = function(a) { 274 var d, e, f, g, h; 275 if (d = a.originalEvent || a || b.event, 3 === d.which) return !1; 276 if ("mousedown" === this.dragType[0] && this.dom.$stage.addClass("owl-grab"), this.trigger("drag"), this.drag.startTime = (new Date).getTime(), this.speed(0), this.state.isTouch = !0, this.state.isScrolling = !1, this.state.isSwiping = !1, this.drag.distance = 0, e = "touchstart" === d.t
276ype, f = e ? a.targetTouches[0].pageX : d.pageX || d.clientX, g = e ? a.targetTouches[0].pageY : d.pageY || d.clientY, this.drag.offsetX = this.dom.$stage.position().left - this.settings.stagePadding, this.drag.offsetY = this.dom.$stage.position().top, this.settings.rtl && (this.drag.offsetX = this.dom.$stage.position().left + this.width.stage - this.width.el + this.settings.margin), this.state.inMotion && this.support3d) h = this.getTransformProperty(), this.drag.offsetX = h, this.animate(h), this.state.inMotion = !0; 277 else if (this.state.inMotion && !this.support3d) return this.state.inMotion = !1, !1; 278 this.drag.startX = f - this.drag.offsetX, this.drag.startY = g - this.drag.offsetY, this.drag.start = f - this.drag.startX, this.drag.targetEl = d.target || d.srcElement, this.drag.updatedX = this.drag.start, ("IMG" === this.drag.targetEl.tagName || "A" === this.drag.targetEl.tagName) && (this.drag.targetEl.draggable = !1), this.on(c, this.dragType[1], this.e._onDragMove, !1), this.on(c, this.dragType[2], this.e._onDragEnd, !1) 279 }, e.prototype.onDragMove = function(a) { 280 var c, e, f, g, h, i, j; 281 this.state.isTouch && (this.state.isScrolling || (c = a.originalEvent || a || b.event, e = "touchmove" == c.type, f = e ? c.targetTouches[0].pageX : c.pageX || c.clientX, g = e ? c.targetTouches[0].pageY : c.pageY || c.clientY, this.drag.currentX = f - this.drag.startX, this.drag.currentY = g - this.drag.startY, this.drag.distance = this.drag.currentX - this.drag.offsetX, this.drag.distance < 0 ? this.state.direction = this.settings.rtl ? "right" : "left" : this.drag.distance > 0 && (this.state.direction = this.settings.rtl ? "left" : "right"), this.settings.loop ? this.op(this.drag.currentX, ">", this.coordinates(this.minimum())) && "right" === this.state.direction ? this.drag.currentX -= (this.settings.center && this.coordinates(0)) - this.coordinates(this.num.oItems) : this.op(this.drag.currentX, "<", this.coordinates(this.maximum())) && "left" === this.state.direction && (this.drag.currentX += (this.settings.center && this.coordinates(0)) - this.coordinates(this.num.oItems)) : (h = this.settings.rtl ? this.coordinates(this.maximum()) : this.coordinates(this.minimum()), i = this.settings.rtl ? this.coordinates(this.minimum()) : this.coordinates(this.maximum()), j = this.settings.pullDrag ? this.drag.distance / 5 : 0, this.drag.currentX = Math.max(Math.min(this.drag.currentX, h + j), i + j)), (this.drag.distance > 8 || this.drag.distance < -8) && (c.preventDefault !== d ? c.preventDefault() : c.returnValue = !1, this.state.isSwiping = !0), this.drag.updatedX = this.drag.currentX, (this.drag.currentY > 16 || this.drag.currentY < -16) && this.state.isSwiping === !1 && (this.state.isScrolling = !0, this.drag.updatedX = this.drag.start), this.animate(this.drag.updatedX))) 282 }, e.prototype.onDragEnd = function() { 283 var a, b, d; 284 if (this.state.isTouch) { 285 if ("mousedown" === this.dragType[0] && this.dom.$stage.removeClass("owl-grab"), this.trigger("dragged"), this.drag.targetEl.removeAttribute("draggable"), this.state.isTouch = !1, this.state.isScrolling = !1, this.state.isSwiping = !1, 0 === this.drag.distance && this.state.inMotion !== !0) return this.state.inMotion = !1, !1; 286 this.drag.endTime = (new Date).getTime(), a = this.drag.endTime - this.drag.startTime, b = Math.abs(this.drag.distance), (b > 3 || a > 300) && this.removeClick(this.drag.targetEl), d = this.closest(this.drag.updatedX), this.speed(this.settings.dragEndSpeed || this.settings.smartSpeed), this.current(d), this.settings.pullDrag || this.drag.updatedX !== this.coordinates(d) || this.transitionEnd(), this.drag.distance = 0, this.off(c, this.dragType[1], this.e._onDragMove), this.off(c, this.dragType[2], this.e._onDragEnd) 287 } 288 }, e.prototype.removeClick = function(c) { 289 this.drag.targetEl = c, a(c).on("click.preventClick", this.e._preventClick), b.setTimeout(function() { 290 a(c).off("click.preventClick") 291 }, 300) 292 }, e.prototype.preventClick = function(b) { 293 b.preventDefault ? b.preventDefault() : b.returnValue = !1, b.stopPropagation && b.stopPropagation(), a(b.target).off("click.preventClick") 294 }, e.prototype.getTransformProperty = function() { 295 var a, c; 296 return a = b.getComputedStyle(this.dom.stage, null).getPropertyValue(this.vendorName + "transform"), a = a.replace(/matrix(3d)?\(|\)/g, "").split(","), c = 16 === a.length, c !== !0 ? a[4] : a[12] 297 }, e.prototype.closest = function(b) { 298 var c = 0, 299 d = 30; 300 return this.settings.freeDrag || a.each(this.coordinates(), a.proxy(function(a, e) { 301 b > e - d && e + d > b ? c = a : this.op(b, "<", e) && this.op(b, ">", this.coordinates(a + 1) || e - this.width.el) && (c = "left" === this.state.direction ? a + 1 : a) 302 }, this)), this.settings.loop || (this.op(b, ">", this.coordinates(this.minimum())) ? c = b = this.minimum() : this.op(b, "<", this.coordinates(this.maximum())) && (c = b = this.maximum())), c 303 }, e.prototype.animate = function(b) { 304 this.trigger("translate"), this.state.inMotion = this.speed() > 0, this.support3d ? this.dom.$stage.css({ 305 transform: "translate3d(" + b + "px,0px, 0px)", 306 transition: this.speed() / 1e3 + "s" 307 }) : this.state.isTouch ? this.dom.$stage.css({ 308 left: b + "px" 309 }) : this.dom.$stage.animate({ 310 left: b 311 }, this.speed() / 1e3, this.settings.fallbackEasing, a.proxy(function() { 312 this.state.inMotion && this.transitionEnd() 313 }, this)) 314 }, e.prototype.current = function(a) { 315 if (a === d) return this._current; 316 if (0 === this.num.oItems) return d; 317 if (a = this.normalize(a), this._current === a) this.animate(this.coordinates(this._current)); 318 else { 319 var b = this.trigger("change", { 320 property: { 321 name: "position", 322 value: a 323 } 324 }); 325 b.data !== d && (a = this.normalize(b.data)), this._current = a, this.animate(this.coordinates(this._current)), this.updateActiveItems(), this.trigger("changed", { 326 property: { 327 name: "position", 328 value: this._current 329 } 330 }) 331 } 332 return this._current 333 }, e.prototype.reset = function(a) { 334 this.suppress(["change", "changed"]), this.speed(0), this.current(a), this.release(["change", "changed"]) 335 }, e.prototype.normalize = function(a, b) { 336 if (a === d || !this.dom.$items) return d; 337 if (this.settings.loop) { 338 var c = this.dom.$items.length; 339 a = (a % c + c) % c 340 } else a = Math.max(this.minimum(), Math.min(this.maximum(), a)); 341 return b ? this.dom.$items.eq(a).data("owl-item").index : a 342 }, e.prototype.maximum = function() { 343 var b, c, d = this.settings; 344 if (!d.loop && d.center) b = this.num.oItems - 1; 345 else if (d.loop || d.center) 346 if (d.loop || d.center) b = this.num.oItems + d.items; 347 else { 348 if (!d.autoWidth && !d.merge) throw "Can not detect maximum absolute position.";
349 revert = d.rtl ? 1 : -1, c = this.dom.$stage.width() - this.$el.width(), a.each(this.coordinates(), function(a, d) { 350 return d * revert >= c ? !1 : void(b = a + 1) 351 }) 352 } 353 else b = this.num.oItems - d.items; 354 return b 355 }, e.prototype.minimum = function() { 356 return this.dom.$oItems.eq(0).data("owl-item").indexAbs 357 }, e.prototype.speed = function(a) { 358 return a !== d && (this._speed = a), this._speed 359 }, e.prototype.coordinates = function(a) { 360 return a !== d ? this._coordinates[a] : this._coordinates 361 }, e.prototype.duration = function(a, b, c) { 362 return Math.min(Math.max(Math.abs(b - a), 1), 6) * Math.abs(c || this.settings.smartSpeed) 363 }, e.prototype.to = function(c, d) { 364 if (this.settings.loop) { 365 var e = c - this.normalize(this.current(), !0), 366 f = this.current(), 367 g = this.current(), 368 h = this.current() + e, 369 i = 0 > g - h ? !0 : !1; 370 h < this.settings.items && i === !1 ? (f = this.num.items - (this.settings.items - g) - this.settings.items, this.reset(f)) : h >= this.num.items - this.settings.items && i === !0 && (f = g - this.num.oItems, this.reset(f)), b.clearTimeout(this.e._goToLoop), this.e._goToLoop = b.setTimeout(a.proxy(function() { 371 this.speed(this.duration(this.current(), f + e, d)), this.current(f + e) 372 }, this), 30) 373 } else this.speed(this.duration(this.current(), c, d)), this.current(c) 374 }, e.prototype.next = function(a) { 375 a = a || !1, this.to(this.normalize(this.current(), !0) + 1, a) 376 }, e.prototype.prev = function(a) { 377 a = a || !1, this.to(this.normalize(this.current(), !0) - 1, a) 378 }, e.prototype.transitionEnd = function(a) { 379 if (a !== d) { 380 a.stopPropagation(); 381 var b = a.target || a.srcElement || a.originalTarget; 382 if (b !== this.dom.stage) return !1 383 } 384 this.state.inMotion = !1, this.trigger("translated") 385 }, e.prototype.isElWidthChanged = function() { 386 var a = this.dom.$el.width() - this.settings.stagePadding, 387 b = this.width.el + this.settings.margin; 388 return a !== b 389 }, e.prototype.viewport = function() { 390 var d; 391 if (this.options.responsiveBaseElement !== b) d = a(this.options.responsiveBaseElement).width(); 392 else if (b.innerWidth) d = b.innerWidth; 393 else { 394 if (!c.documentElement || !c.documentElement.clientWidth) throw "Can not detect viewport width."; 395 d = c.documentElement.clientWidth 396 } 397 return d 398 }, e.prototype.insertContent = function(a) { 399 this.dom.$stage.empty(), this.fetchContent(a), this.refresh() 400 }, e.prototype.addItem = function(a, b) { 401 var c = this.createItemContainer(); 402 b = b || 0, this.initializeItemContainer(c, a), 0 === this.dom.$oItems.length ? this.dom.$stage.append(c) : -1 !== p ? this.dom.$oItems.eq(b).before(c) : this.dom.$oItems.eq(b).after(c), this.refresh() 403 }, e.prototype.removeItem = function(a) { 404 this.dom.$oItems.eq(a).remove(), this.refresh() 405 }, e.prototype.addTriggerableEvents = function() { 406 var b = a.proxy(function(b, c) { 407 return a.proxy(function(a) { 408 a.relatedTarget !== this && (this.suppress([c]), b.apply(this, [].slice.call(arguments, 1)), this.release([c])) 409 }, this) 410 }, this); 411 a.each({ 412 next: this.next, 413 prev: this.prev, 414 to: this.to, 415 destroy: this.destroy, 416 refresh: this.refresh, 417 replace: this.insertContent, 418 add: this.addItem, 419 remove: this.removeItem 420 }, a.proxy(function(a, c) { 421 this.dom.$el.on(a + ".owl.carousel", b(c, a + ".owl.carousel")) 422 }, this)) 423 }, e.prototype.watchVisibility = function() { 424 function c(a) { 425 return a.offsetWidth > 0 && a.offsetHeight > 0 426 } 427 428 function d() { 429 c(this.dom.el) && (this.dom.$el.removeClass("owl-hidden"), this.refresh(), b.clearInterval(this.e._checkVisibile)) 430 } 431 c(this.dom.el) || (this.dom.$el.addClass("owl-hidden"), b.clearInterval(this.e._checkVisibile), this.e._checkVisibile = b.setInterval(a.proxy(d, this), 500)) 432 }, e.prototype.preloadAutoWidthImages = function(b) { 433 var c, d, e, f; 434 c = 0, d = this, b.each(function(g, h) { 435 e = a(h), f = new Image, f.onload = function() { 436 c++, e.attr("src", f.src), e.css("opacity", 1), c >= b.length && (d.state.imagesLoaded = !0, d.init()) 437 }, f.src = e.attr("src") || e.attr("data-src") || e.attr("data-src-retina") 438 }) 439 }, e.prototype.destroy = function() { 440 this.dom.$el.hasClass(this.settings.themeClass) && this.dom.$el.removeClass(this.settings.themeClass), this.settings.responsive !== !1 && this.off(b, "resize", this.e._resizer), this.transitionEndVendor && this.off(this.dom.stage, this.transitionEndVendor, this.e._transitionEnd); 441 for (var a in this.plugins) this.plugins[a].destroy(); 442 (this.settings.mouseDrag || this.settings.touchDrag) && (this.off(this.dom.stage, this.dragType[0], this.e._onDragStart), this.settings.mouseDrag && this.off(c, this.dragType[3], this.e._onDragStart), this.settings.mouseDrag && (this.dom.$stage.off("dragstart", function() { 443 return !1 444 }), this.dom.stage.onselectstart = function() {})), this.dom.$el.off(".owl"), null !== this.dom.$cItems && this.dom.$cItems.remove(), this.e = null, this.dom.$el.data("owlCarousel", null), delete this.dom.el.owlCarousel, this.dom.$stage.unwrap(), this.dom.$items.unwrap(), this.dom.$items.contents().unwrap(), this.dom = null 445 }, e.prototype.op = function(a, b, c) { 446 var d = this.settings.rtl; 447 switch (b) { 448 case "<": 449 return d ? a > c : c > a; 450 case ">": 451 return d ? c > a : a > c; 452 case ">=": 453 return d ? c >= a : a >= c; 454 case "<=": 455 return d ? a >= c : c >= a 456 } 457 }, e.prototype.on = function(a, b, c, d) { 458 a.addEventListener ? a.addEventListener(b, c, d) : a.attachEvent && a.attachEvent("on" + b, c) 459 }, e.prototype.off = function(a, b, c, d) { 460 a.removeEventListener ? a.removeEventListener(b, c, d) : a.detachEvent && a.detachEvent("on" + b, c) 461 }, e.prototype.trigger = function(b, c, d) { 462 var e = { 463 item: { 464 count: this.num.oItems, 465 index: this.current() 466 } 467 }, 468 f = a.camelCase(a.grep(["on", b, d], function(a) { 469 return a 470 }).join("-").toLowerCase()), 471 g = a.Event([b, "owl", d || "carousel"].join(".").toLowerCase(), a.extend({ 472 relatedTarget: this 473 }, e, c)); 474 return this._supress[g.type] || (a.each(this.plugins, function(a, b) { 475 b.onTrigger && b.onTrigger(g) 476 }), this.dom.$el.trigger(g), "function" == typeof this.settings[f] && this.settings[f].apply(this, g)), g 477 }, e.prototype.suppress = function(b) { 478 a.each(b, a.proxy(function(a, b) { 479 this._supress[b] = !0 480 }, this)) 481 }, e.prototype.release = function(b) { 482 a.each(b, a.proxy(function(a, b) { 483 delete this._supress[b] 484 }, this)) 485 }, e.prototype.browserSupport = function() { 486 if (this.support3d = i(), this.support3d) { 487 this.transformVendor = h(); 488 var a = ["transitionend", "webkitTransitionEnd", "transitionend", "oTransitionEnd"]; 489 this.transitionEndVendor = a[g()], this.vendorName = this.transformVendor.replace(/Transform/i, ""), this.vendorName = "" !== this.vendorName ? "-" + this.vendorName.toLowerCase() + "-" : "" 490 } 491 this.state.orientation = b.orientation 492 }, a.fn.owlCarousel = function(b) { 493 return this.each(function() { 494 a(this).data("owlCarousel") || a(this).data("owlCarousel", new e(this, b)) 495 }) 496 }, a.fn.owlCarousel.Constructor = e 497}(window.Zepto || window.jQuery, window, document), 498function(a, b, c, d) { 499 LazyLoad = function(b) { 500 this.owl = b, this.owl.options = a.extend({}, LazyLoad.Defaults, this.owl.options), this.handlers = { 501 "changed.owl.carousel": a.proxy(function(a) { 502 "items" == a.property.name && a.property.value && !a.property.value.is(":empty") && this.check() 503 }, this) 504 }, this.owl.dom.$el.on(this.handlers) 505 }, LazyLoad.Defaults = { 506 lazyLoad: !1 507 }
507, LazyLoad.prototype.check = function() { 508 var a, c, d, e, f = b.devicePixelRatio > 1 ? "data-src-retina" : "data-src"; 509 for (d = 0; d < this.owl.num.items; d++) e = this.owl.dom.$items.eq(d), e.data("owl-item").current === !0 && e.data("owl-item").loaded === !1 && (c = e.find(".owl-lazy"), a = c.attr(f), a = a || c.attr("data-src"), a && (c.css("opacity", "0"), this.preload(c, e))) 510 }, LazyLoad.prototype.preload = function(c, d) { 511 var e, f, g; 512 c.each(a.proxy(function(c, h) { 513 this.owl.trigger("load", null, "lazy"), e = a(h), f = new Image, g = b.devicePixelRatio > 1 ? e.attr("data-src-retina") : e.attr("data-src"), g = g || e.attr("data-src"), f.onload = a.proxy(function() { 514 d.data("owl-item").loaded = !0, e.is("img") ? e.attr("src", f.src) : e.css("background-image", "url(" + f.src + ")"), e.css("opacity", 1), this.owl.trigger("loaded", null, "lazy") 515 }, this), f.src = g 516 }, this)) 517 }, LazyLoad.prototype.destroy = function() { 518 var a, b; 519 for (a in this.handlers) this.owl.dom.$el.off(a, this.handlers[a]); 520 for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) 521 }, a.fn.owlCarousel.Constructor.Plugins.lazyLoad = LazyLoad 522}(window.Zepto || window.jQuery, window, document), 523function(a, b, c, d) { 524 AutoHeight = function(b) { 525 this.owl = b, this.owl.options = a.extend({}, AutoHeight.Defaults, this.owl.options), this.handlers = { 526 "changed.owl.carousel": a.proxy(function(a) { 527 "position" == a.property.name && this.owl.settings.autoHeight && this.setHeight() 528 }, this) 529 }, this.owl.dom.$el.on(this.handlers) 530 }, AutoHeight.Defaults = { 531 autoHeight: !1, 532 autoHeightClass: "owl-height" 533 }, AutoHeight.prototype.setHeight = function() { 534 var a, c = this.owl.dom.$items.eq(this.owl.current()), 535 d = this.owl.dom.$oStage, 536 e = 0; 537 this.owl.dom.$oStage.hasClass(this.owl.settings.autoHeightClass) || this.owl.dom.$oStage.addClass(this.owl.settings.autoHeightClass), a = b.setInterval(function() { 538 e += 1, c.data("owl-item").loaded ? (d.height(c.height() + "px"), clearInterval(a)) : 500 === e && clearInterval(a) 539 }, 100) 540 }, AutoHeight.prototype.destroy = function() { 541 var a, b; 542 for (a in this.handlers) this.owl.dom.$el.off(a, this.handlers[a]); 543 for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) 544 }, a.fn.owlCarousel.Constructor.Plugins.autoHeight = AutoHeight 545}(window.Zepto || window.jQuery, window, document), 546function(a, b, c, d) { 547 Video = function(b) { 548 this.owl = b, this.owl.options = a.extend({}, Video.Defaults, this.owl.options), this.handlers = { 549 "resize.owl.carousel": a.proxy(function(a) { 550 this.owl.settings.video && !this.isInFullScreen() && a.preventDefault() 551 }, this), 552 "refresh.owl.carousel changed.owl.carousel": a.proxy(function(a) { 553 this.owl.state.videoPlay && this.stopVideo() 554 }, this), 555 "refresh.owl.carousel refreshed.owl.carousel": a.proxy(function(a) { 556 return this.owl.settings.video ? void(this.refreshing = "refresh" == a.type) : !1 557 }, this), 558 "changed.owl.carousel": a.proxy(function(a) { 559 this.refreshing && "items" == a.property.name && a.property.value && !a.property.value.is(":empty") && this.checkVideoLinks() 560 }, this) 561 }, this.owl.dom.$el.on(this.handlers), this.owl.dom.$el.on("click.owl.video", ".owl-video-play-icon", a.proxy(function(a) { 562 this.playVideo(a) 563 }, this)) 564 }, Video.Defaults = { 565 video: !1, 566 videoHeight: !1, 567 videoWidth: !1 568 }, Video.prototype.checkVideoLinks = function() { 569 var a, b, c; 570 for (c = 0; c < this.owl.num.items; c++) b = this.owl.dom.$items.eq(c), b.data("owl-item").hasVideo || (a = b.find(".owl-video"), a.length && (this.owl.state.hasVideos = !0, this.owl.dom.$items.eq(c).data("owl-item").hasVideo = !0, a.css("display", "none"), this.getVideoInfo(a, b))) 571 }, Video.prototype.getVideoInfo = function(a, b) { 572 var c, d, e, f, g = a.data("vimeo-id"), 573 h = a.data("youtube-id"), 574 i = a.data("width") || this.owl.settings.videoWidth, 575 j = a.data("height") || this.owl.settings.videoHeight, 576 k = a.attr("href"); 577 if (g) d = "vimeo", e = g; 578 else if (h) d = "youtube", e = h; 579 else { 580 if (!k) throw new Error("Missing video link."); 581 e = k.match(/(http:|https:|)\/\/(player.|www.)?(vimeo\.com|youtu(be\.com|\.be|be\.googleapis\.com))\/(video\/|embed\/|watch\?v=|v\/)?([A-Za-z0-9._%-]*)(\&\S+)?/), e[3].indexOf("youtu") > -1 ? d = "youtube" : e[3].indexOf("vimeo") > -1 && (d = "vimeo"), e = e[6] 582 } 583 b.data("owl-item").videoType = d, b.data("owl-item").videoId = e, b.data("owl-item").videoWidth = i, b.data("owl-item").videoHeight = j, c = { 584 type: d, 585 id: e 586 }, f = i && j ? 'style="width:' + i + "px;height:" + j + 'px;"' : "", a.wrap('<div class="owl-video-wrapper"' + f + "></div>"), this.createVideoTn(a, c) 587 }, Video.prototype.createVideoTn = function(b, c) { 588 function d(a) { 589 f = '<div class="owl-video-play-icon"></div>', e = k.settings.lazyLoad ? '<div class="owl-video-tn ' + j + '" ' + i + '="' + a + '"></div>' : '<div class="owl-video-tn" style="opacity:1;background-image:url(' + a + ')"></div>', b.after(e), b.after(f) 590 } 591 var e, f, g, h = b.find("img"), 592 i = "src", 593 j = "", 594 k = this.owl; 595 return this.owl.settings.lazyLoad && (i = "data-src", j = "owl-lazy"), h.length ? (d(h.attr(i)), h.remove(), !1) : void("youtube" === c.type ? (g = "http://img.youtube.com/vi/" + c.id + "/hqdefault.jpg", d(g)) : "vimeo" === c.type && a.aja
595x({ 596 type: "GET", 597 url: "http://vimeo.com/api/v2/video/" + c.id + ".json", 598 jsonp: "callback", 599 dataType: "jsonp", 600 success: function(a) { 601 g = a[0].thumbnail_large, d(g), k.settings.loop && k.updateActiveItems() 602 } 603 })) 604 }, Video.prototype.stopVideo = function() { 605 this.owl.trigger("stop", null, "video"); 606 var a = this.owl.dom.$items.eq(this.owl.state.videoPlayIndex); 607 a.find(".owl-video-frame").remove(), a.removeClass("owl-video-playing"), this.owl.state.videoPlay = !1 608 }, Video.prototype.playVideo = function(b) { 609 this.owl.trigger("play", null, "video"), this.owl.state.videoPlay && this.stopVideo(); 610 var c, d, e, f = a(b.target || b.srcElement), 611 g = f.closest("." + this.owl.settings.itemClass); 612 e = g.data("owl-item").videoType, id = g.data("owl-item").videoId, width = g.data("owl-item").videoWidth || Math.floor(g.data("owl-item").width - this.owl.settings.margin), height = g.data("owl-item").videoHeight || this.owl.dom.$stage.height(), "youtube" === e ? c = '<iframe width="' + width + '" height="' + height + '" src="http://www.youtube.com/embed/' + id + "?autoplay=1&v=" + id + '" frameborder="0" allowfullscreen></iframe>' : "vimeo" === e && (c = '<iframe src="http://player.vimeo.com/video/' + id + '?autoplay=1" width="' + width + '" height="' + height + '" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>'), 613 g.addClass("owl-video-playing"), this.owl.state.videoPlay = !0, this.owl.state.videoPlayIndex = g.data("owl-item").indexAbs, d = a('<div style="height:' + height + "px; width:" + width + 'px" class="owl-video-frame">' + c + "</div>"), f.after(d) 614 }, Video.prototype.isInFullScreen = function() { 615 var d = c.fullscreenElement || c.mozFullScreenElement || c.webkitFullscreenElement; 616 return d && a(d.parentNode).hasClass("owl-video-frame") && (this.owl.speed(0), this.owl.state.isFullScreen = !0), d && this.owl.state.isFullScreen && this.owl.state.videoPlay ? !1 : this.owl.state.isFullScreen ? (this.owl.state.isFullScreen = !1, !1) : this.owl.state.videoPlay && this.owl.state.orientation !== b.orientation ? (this.owl.state.orientation = b.orientation, !1) : !0 617 }, Video.prototype.destroy = function() { 618 var a, b; 619 this.owl.dom.$el.off("click.owl.video"); 620 for (a in this.handlers) this.owl.dom.$el.off(a, this.handlers[a]); 621 for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) 622 }, a.fn.owlCarousel.Constructor.Plugins.video = Video 623}(window.Zepto || window.jQuery, window, document), 624function(a, b, c, d) { 625 Animate = function(b) { 626 this.core = b, this.core.options = a.extend({}, Animate.Defaults, this.core.options), this.swapping = !0, this.previous = d, this.next = d, this.handlers = { 627 "change.owl.carousel": a.proxy(function(a) { 628 "position" == a.property.name && (this.previous = this.core.current(), this.next = a.property.value) 629 }, this), 630 "drag.owl.carousel dragged.owl.carousel translated.owl.carousel": a.proxy(function(a) { 631 this.swapping = "translated" == a.type 632 }, this), 633 "translate.owl.carousel": a.proxy(function(a) { 634 this.swapping && (this.core.options.animateOut || this.core.options.animateIn) && this.swap() 635 }, this) 636 }, this.core.dom.$el.on(this.handlers) 637 }, Animate.Defaults = { 638 animateOut: !1, 639 animateIn: !1 640 }, Animate.prototype.swap = function() { 641 if (1 === this.core.settings.items && this.core.support3d) { 642 this.core.speed(0); 643 var b, c = a.proxy(this.clear, this), 644 d = this.core.dom.$items.eq(this.previous), 645 e = this.core.dom.$items.eq(this.next), 646 f = this.core.settings.animateIn, 647 g = this.core.settings.animateOut; 648 this.core.current() !== this.previous && (g && (b = this.core.coordinates(this.previous) - this.core.coordinates(this.next), d.css({ 649 left: b + "px" 650 }).addClass("animated owl-animated-out").addClass(g).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend", c)), f && e.addClass("animated owl-animated-in").addClass(f).one("webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend", c)) 651 } 652 }, Animate.prototype.clear = function(b) { 653 a(b.target).css({ 654 left: "" 655 }).removeClass("animated owl-animated-out owl-animated-in").removeClass(this.core.settings.animateIn).removeClass(this.core.settings.animateOut), this.core.transitionEnd() 656 }, Animate.prototype.destroy = function() { 657 var a, b; 658 for (a in this.handlers) this.core.dom.$el.off(a, this.handlers[a]); 659 for (b in Object.getOwnPropertyNames(this)) "function" != typeof this[b] && (this[b] = null) 660 }, a.fn.owlCarousel.Constructor.Plugins.Animate = Animate 661}(window.Zepto || window.jQuery, window, document), 662function(a, b, c, d) { 663 Autoplay = function(b) { 664 this.core = b, this.core.options = a.extend({}, Autoplay.Defaults, this.core.options), this.handlers = { 665 "translated.owl.carousel refreshed.owl.carousel": a.proxy(function() { 666 this.autoplay() 667 }, this), 668 "play.owl.autoplay": a.proxy(function(a, b, c) { 669 this.play(b, c) 670 }, this), 671 "stop.owl.autoplay": a.proxy(function() { 672 this.stop() 673 }, this), 674 "mouseover.owl.autoplay": a.proxy(function() { 675 this.core.settings.autoplayHoverPause && this.pause() 676 }, this), 677 "mouseleave.owl.autoplay": a.proxy(function() { 678 this.core.settings.autoplayHoverPause && this.autoplay() 679 }, this) 680 }, this.core.dom.$el.on(this.handlers) 681 }, Autoplay.Defaults = { 682 autoplay: !1, 683 autoplayTimeout: 5e3, 684 autoplayHoverPause: !1, 685 autoplaySpeed: !1 686 }, Autoplay.prototype.autoplay = function() { 687 this.core.settings.autoplay && !this.core.state.videoPlay ? (b.clearInterval(this.interval), this.interval = b.setInterval(a.proxy(function() { 688 this.play() 689 }, this), this.core.settings.autoplayTimeout)) : b.clearInterval(this.interval) 690 }, Autoplay.prototype.play = function(a, d) { 691 return c.hidden === !0 || this.core.state.isTouch || this.core.state.isScrolling || this.core.state.isSwiping || this.core.state.inMotion ? void 0 : this.core.settings.autoplay === !1 ? void b.clearInterval(this.interval) : void this.core.next(this.core.settings.autoplaySpeed) 692 }, Autoplay.prototype.stop = function() { 693 b.clearInterval(this.interval) 694 }, Autoplay.prototype.pause = function() { 695 b.clearInterval(this.interval) 696 }, Autoplay.prototype.destroy = function() { 697 var a, c; 698 b.clearInterval(this.interval); 699 for (a in this.handlers) this.core.dom.$el.off(a, this.handlers[a]); 700 for (c in Object.getOwnPropertyNames(this)) "function" != typeof this[c] && (this[c] = null) 701 }, a.fn.owlCarousel.Constructor.Plugins.autoplay = Autoplay 702}(window.Zepto || window.jQuery, window, document), 703function(a, b, c, d) { 704 "use strict"; 705 var e = function(b) { 706 this.core = b, this.initialized = !1, this.pages = [], this.controls = {}, this.template = null, this.$element = this.core.dom.$el, this.overrides = { 707 next: this.core.next, 708 prev: this.core.prev, 709 to: this.core.to 710 }, this.handlers = { 711 "changed.owl.carousel": a.proxy(function(b) { 712 "items" == b.property.name && (this.initialized || (this.initialize(), this.initialized = !0), this.update(), this.draw()), this.filling && (b.property.value.data("owl-item").dot = a(":first-child", b.property.value).find("[data-dot]").andSelf().data("dot")) 713 }, this), 714 "change.owl.carousel": a.proxy(function(a) { 715 if ("position" == a.property.name && !this.core.state.revert && !this.core.settings.loop && this.core.settings.navRewind) { 716 var b = this.core.current(), 717 c = this.core.maximum(), 718 d = this.core.minimum(); 719 a.data = a.property.value > c ? b >= c ? d : c : a.property.value < d ? c : a.property.value 720 } 721 this.filling = this.core.settings.dotsData && "item" == a.property.name && a.property.value && a.property.value.is(":empty") 722 }, this), 723 "refreshed.owl.carousel": a.proxy(function() { 724 this.initialized && (this.update(), this.draw()) 725 }, this) 726 }, this.core.options = a.extend({}, e.Defaults, this.core.options), this.$element.on(this.handlers) 727 }; 728 e.Defaults = { 729 nav: !1, 730 navRewind: !0, 731 navText: ["prev", "next"], 732 navSpeed: !1, 733 navElement: "div", 734 navContainer: !1, 735 navContainerClass: "owl-nav", 736 navClass: ["owl-prev", "owl-next"], 737 slideBy: 1, 738 dotClass: "owl-dot", 739 dotsClass: "owl-dots", 740 dots: !0, 741 dotsEach: !1, 742 dotData: !1, 743 dotsSpeed: !1, 744 dotsContainer: !1,
745 controlsClass: "owl-controls" 746 }, e.prototype.initialize = function() { 747 var b, c, d = this.core.settings; 748 d.dotsData || (this.template = a("<div>").addClass(d.dotClass).append(a("<span>")).prop("outerHTML")), d.navContainer && d.dotsContainer || (this.controls.$container = a("<div>").addClass(d.controlsClass).appendTo(this.$element)), this.controls.$indicators = d.dotsContainer ? a(d.dotsContainer) : a("<div>").hide().addClass(d.dotsClass).appendTo(this.controls.$container), this.controls.$indicators.on(this.core.dragType[2], "div", a.proxy(function(b) { 749 var c = a(b.target).parent().is(this.controls.$indicators) ? a(b.target).index() : a(b.target).parent().index(); 750 b.preventDefault(), this.to(c, d.dotsSpeed) 751 }, this)), b = d.navContainer ? a(d.navContainer) : a("<div>").addClass(d.navContainerClass).prependTo(this.controls.$container), this.controls.$next = a("<" + d.navElement + ">"), this.controls.$previous = this.controls.$next.clone(), this.controls.$previous.addClass(d.navClass[0]).html(d.navText[0]).hide().prependTo(b).on(this.core.dragType[2], a.proxy(function(a) { 752 this.prev() 753 }, this)), this.controls.$next.addClass(d.navClass[1]).html(d.navText[1]).hide().appendTo(b).on(this.core.dragType[2], a.proxy(function(a) { 754 this.next() 755 }, this)); 756 for (c in this.overrides) this.core[c] = a.proxy(this[c], this) 757 }, e.prototype.destroy = function() { 758 var a, b, c, d; 759 for (a in this.handlers) this.$element.off(a, this.handlers[a]); 760 for (b in this.controls) this.controls[b].remove(); 761 for (d in this.overides) this.core[d] = this.overrides[d]; 762 for (c in Object.getOwnPropertyNames(this)) "function" != typeof this[c] && (this[c] = null) 763 }, e.prototype.update = function() { 764 var a, b, c, d = this.core.settings, 765 e = this.core.num.cItems / 2, 766 f = this.core.num.items - e, 767 g = d.center || d.autoWidth || d.dotData ? 1 : d.dotsEach || d.items; 768 if ("page" !== d.slideBy && (d.slideBy = Math.min(d.slideBy, d.items)), d.dots) 769 for (this.pages = [], a = e, b = 0, c = 0; f > a; a++)(b >= g || 0 === b) && (this.pages.push({ 770 start: a - e, 771 end: a - e + g - 1 772 }), b = 0, ++c), b += this.core.num.merged[a] 773 }, e.prototype.draw = function() { 774 var b, c, d = "", 775 e = this.core.settings, 776 f = this.core.dom.$oItems, 777 g = this.core.normalize(this.core.current(), !0); 778 if (!e.nav || e.loop || e.navRewind || (this.controls.$previous.toggleClass("disabled", 0 >= g), this.controls.$next.toggleClass("disabled", g >= this.core.maximum())), this.controls.$previous.toggle(e.nav), this.controls.$next.toggle(e.nav), e.dots) { 779 if (b = this.pages.length - this.controls.$indicators.children().length, b > 0) { 780 for (c = 0; c < Math.abs(b); c++) d += e.dotData ? f.eq(c).data("owl-item").dot : this.template; 781 this.controls.$indicators.append(d) 782 } else 0 > b && this.controls.$indicators.children().slice(b).remove(); 783 this.controls.$indicators.find(".active").removeClass("active"), this.controls.$indicators.children().eq(a.inArray(this.current(), this.pages)).addClass("active") 784 } 785 this.controls.$indicators.toggle(e.dots) 786 }, e.prototype.onTrigger = function(b) { 787 var c = this.core.settings; 788 b.page = { 789 index: a.inArray(this.current(), this.pages), 790 count: this.pages.length, 791 size: c.center || c.autoWidth || c.dotData ? 1 : c.dotsEach || c.items 792 } 793 }, e.prototype.current = function() { 794 var b = this.core.normalize(this.core.current(), !0); 795 return a.grep(this.pages, function(a) { 796 return a.start <= b && a.end >= b 797 }).pop() 798 }, e.prototype.getPosition = function(b) { 799 var c, d, e = this.core.settings; 800 return "page" == e.slideBy ? (c = a.inArray(this.current(), this.pages), d = this.pages.length, b ? ++c : --c, c = this.pages[(c % d + d) % d].start) : (c = this.core.normalize(this.core.current(), !0), d = this.core.num.oItems, b ? c += e.
800slideBy : c -= e.slideBy), c 801 }, e.prototype.next = function(b) { 802 a.proxy(this.overrides.to, this.core)(this.getPosition(!0), b) 803 }, e.prototype.prev = function(b) { 804 a.proxy(this.overrides.to, this.core)(this.getPosition(!1), b) 805 }, e.prototype.to = function(b, c, d) { 806 var e; 807 d ? a.proxy(this.overrides.to, this.core)(b, c) : (e = this.pages.length, a.proxy(this.overrides.to, this.core)(this.pages[(b % e + e) % e].start, c)) 808 }, a.fn.owlCarousel.Constructor.Plugins.Navigation = e 809}(window.Zepto || window.jQuery, window, document), 810function(a, b, c, d) { 811 "use strict"; 812 var e = function(c) { 813 this.core = c, this.hashes = {}, this.$element = this.core.dom.$el, this.handlers = { 814 "initialized.owl.carousel": a.proxy(function() { 815 b.location.hash.substring(1) && a(b).trigger("hashchange.owl.navigation") 816 }, this), 817 "changed.owl.carousel": a.proxy(function(b) { 818 this.filling && (b.property.value.data("owl-item").hash = a(":first-child", b.property.value).find("[data-hash]").andSelf().data("hash"), this.hashes[b.property.value.data("owl-item").hash] = b.property.value) 819 }, this), 820 "change.owl.carousel": a.proxy(function(a) { 821 "position" == a.property.name && this.core.current() === d && "URLHash" == this.core.settings.startPosition && (a.data = this.hashes[b.location.hash.substring(1)]), this.filling = "item" == a.property.name && a.property.value && a.property.value.is(":empty") 822 }, this) 823 }, this.core.options = a.extend({}, e.Defaults, this.core.options), this.$element.on(this.handlers), a(b).on("hashchange.owl.navigation", a.proxy(function() { 824 var a = b.location.hash.substring(1), 825 c = this.core.dom.$oItems, 826 d = this.hashes[a] && c.index(this.hashes[a]) || 0; 827 return a ? (this.core.dom.oStage.scrollLeft = 0, void this.core.to(d, !1, !0)) : !1 828 }, this)) 829 }; 830 e.Defaults = { 831 URLhashListener: !1 832 }, e.prototype.destroy = function() { 833 var c, d; 834 a(b).off("hashchange.owl.navigation"); 835 for (c in this.handlers) this.owl.dom.$el.off(c, this.handlers[c]); 836 for (d in Object.getOwnPropertyNames(this)) "function" != typeof this[d] && (this[d] = null) 837 }, a.fn.owlCarousel.Constructor.Plugins.Hash = e 838}(window.Zepto || window.jQuery, window, document), 839function(a, b) { 840 "object" == typeof exports ? module.exports = b() : "function" == typeof define && define.amd && define("GMaps", [], b), a.GMaps = b() 841}, 842// Intervention pour commenter la partie Google Map 843// (this, function() { 844// if ("object" != typeof window.google || !window.google.maps) throw "Google Maps API is required. Please register the following JavaScript library http://maps.google.com/maps/api/js?sensor=true."; 845// var a = function(a, b) { 846// var c; 847// if (a === b) return a; 848// for (c in b) a[c] = b[c]; 849// return a 850// }, 851// b = function(a, b) { 852// var c, d = Array.prototype.slice.call(arguments, 2), 853// e = [], 854// f = a.length; 855// if (Array.prototype.map && a.map === Array.prototype.map) e = Array.prototype.map.call(a, function(a) { 856// var c = d.slice(0); 857// return c.splice(0, 0, a), b.apply(this, c) 858// }); 859// else 860// for (c = 0; f > c; c++) callback_params = d, callback_params.splice(0, 0, a[c]), e.push(b.apply(this, callback_params)); 861// return e 862// }, 863// c = function(a) { 864// var b, c = []; 865// for (b = 0; b < a.length;
865 b++) c = c.concat(a[b]); 866// return c 867// }, 868// d = function(a, b) { 869// var c = a[0], 870// d = a[1]; 871// return b && (c = a[1], d = a[0]), new google.maps.LatLng(c, d) 872// }, 873// f = function(a, b) { 874// var c; 875// for (c = 0; c < a.length; c++) a[c] instanceof google.maps.LatLng || (a[c].length > 0 && "object" == typeof a[c][0] ? a[c] = f(a[c], b) : a[c] = d(a[c], b)); 876// return a 877// }, 878// g = function(a, b) { 879// var c, d = a.replace(".", ""); 880// return c = "jQuery" in this && b ? $("." + d, b)[0] : document.getElementsByClassName(d)[0] 881// }, 882// h = function(a, b) { 883// var c, a = a.replace("#", ""); 884// return c = "jQuery" in window && b ? $("#" + a, b)[0] : document.getElementById(a) 885// }, 886// i = function(a) { 887// var b = 0, 888// c = 0; 889// if (a.offsetParent) 890// do b += a.offsetLeft, c += a.offsetTop; while (a = a.offsetParent); 891// return [b, c] 892// }, 893// j = function(b) { 894// "use strict";
895// var c = document, 896// d = function(b) { 897// if (!this) return new d(b); 898// b.zoom = b.zoom || 15, b.mapType = b.mapType || "roadmap"; 899// var e, f = this, 900// j = ["bounds_changed", "center_changed", "click", "dblclick", "drag", "dragend", "dragstart", "idle", "maptypeid_changed", "projection_changed", "resize", "tilesloaded", "zoom_changed"], 901// k = ["mousemove", "mouseout", "mouseover"], 902// l = ["el", "lat", "lng", "mapType", "width", "height", "markerClusterer", "enableNewStyle"], 903// m = b.el || b.div, 904// n = b.markerClusterer, 905// o = google.maps.MapTypeId[b.mapType.toUpperCase()], 906// p = new google.maps.LatLng(b.lat, b.lng), 907// q = b.zoomControl || !0, 908// r = b.zoomControlOpt || { 909// style: "DEFAULT", 910// position: "TOP_LEFT" 911// }, 912// s = r.style || "DEFAULT", 913// t = r.position || "TOP_LEFT", 914// u = b.panControl || !0, 915// v = b.mapTypeControl || !0, 916// w = b.scaleControl || !0, 917// x = b.streetViewControl || !0, 918// y = y || !0, 919// z = {}, 920// A = { 921// zoom: this.zoom, 922// center: p, 923// mapTypeId: o 924// }, 925// B = { 926// panControl: u, 927// zoomControl: q, 928// zoomControlOptions: { 929// style: google.maps.ZoomControlStyle[s], 930// position: google.maps.ControlPosition[t] 931// }, 932// mapTypeControl: v, 933// scaleControl: w, 934// streetViewControl: x, 935// overviewMapControl: y 936// }; 937// if ("string" == typeof b.el || "string" == typeof b.div ? m.indexOf("#") > -1 ? this.el = h(m, b.context) : this.el = g.apply(this, [m, b.context]) : this.el = m, "undefined" == typeof this.el || null === this.el) throw "No element defined."; 938// for (window.context_menu = window.context_menu || {}, window.context_menu[f.el.id] = {}, this.controls = [], this.overlays = [], this.layers = [], this.singleLayers = {}, this.markers = [], this.polylines = [], this.routes = [], this.polygons = [], this.infoWindow = null, this.overlay_el = null, this.zoom = b.zoom, this.registered_events = {}, this.el.style.width = b.width || this.el.scrollWidth || this.el.offsetWidth, this.el.style.height = b.he
938ight || this.el.scrollHeight || this.el.offsetHeight, google.maps.visualRefresh = b.enableNewStyle, e = 0; e < l.length; e++) delete b[l[e]]; 939// for (1 != b.disableDefaultUI && (A = a(A, B)), z = a(A, b), e = 0; e < j.length; e++) delete z[j[e]]; 940// for (e = 0; e < k.length; e++) delete z[k[e]]; 941// this.map = new google.maps.Map(this.el, z), n && (this.markerClusterer = n.apply(this, [this.map])); 942// var C = function(a, b) { 943// var c = "", 944// d = window.context_menu[f.el.id][a]; 945// for (var e in d) 946// if (d.hasOwnProperty(e)) { 947// var g = d[e]; 948// c += '<li><a id="' + a + "_" + e + '" href="#">' + g.title + "</a></li>" 949// } if (h("gmaps_context_menu")) { 950// var j = h("gmaps_context_menu"); 951// j.innerHTML = c; 952// var e, k = j.getElementsByTagName("a"), 953// l = k.length; 954// for (e = 0; l > e; e++) { 955// var m = k[e], 956// n = function(c) { 957// c.preventDefault(), d[this.id.replace(a + "_", "")].action.apply(f, [b]), f.hideContextMenu() 958// }; 959// google.maps.event.clearListeners(m, "click"), google.maps.event.addDomListenerOnce(m, "click", n, !1) 960// } 961// var o = i.apply(this, [f.el]), 962// p = o[0] + b.pixel.x - 15, 963// q = o[1] + b.pixel.y - 15; 964// j.style.left = p + "px", j.style.top = q + "px", j.style.display = "block" 965// } 966// }; 967// this.buildContextMenu = function(a, b) { 968// if ("marker" === a) { 969// b.pixel = {}; 970// var c = new google.maps.OverlayView; 971// c.setMap(f.map), c.draw = function() { 972// var d = c.getProjection(), 973// e = b.marker.getPosition(); 974// b.pixel = d.fromLatLngToContainerPixel(e), C(a, b) 975// } 976// } else C(a, b) 977// }, this.setContextMenu = function(a) { 978// window.context_menu[f.el.id][a.control] = {}; 979// var b, d = c.createElement("ul"); 980// for (b in a.options) 981// if (a.options.hasOwnProperty(b)) { 982// var e = a.options[b]; 983// window.context_menu[f.el.id][a.control][e.name] = { 984// title: e.title, 985// action: e.action 986// } 987// } d.id = "gmaps_context_menu", d.style.display = "none", d.style.position = "absolute", d.style.minWidth = "100px", d.style.background = "white", d.style.listStyle = "none", d.style.padding = "8px", d.style.boxShadow = "2px 2px 6px #ccc", c.body.appendChild(d); 988// var g = h("gmaps_context_menu"); 989// google.maps.event.addDomListener(g, "mouseout", function(a) { 990// a.relatedTarget && this.contains(a.relatedTarget) || window.setTimeout(function() { 991// g.style.display = "none" 992// }, 400) 993// }, !1) 994// }, this.hideContextMenu = function() { 995// var a = h("gmaps_context_menu"); 996// a && (a.style.display = "none") 997// }; 998// var D = function(a, c) { 999// google.maps.event.addListener(a, c, function(a) { 1000// void 0 == a && (a = this), b[c].apply(this, [a]), f.hideContextMenu() 1001// }) 1002// }; 1003// google.maps.event.addListener(this.map, "zoom_changed", this.hideContextMenu); 1004// for (var E = 0; E < j.length; E++) { 1005// var F = j[E]; 1006// F in b && D(this.map, F) 1007// } 1008// for (var E = 0; E < k.length; E++) { 1009// var F = k[E]; 1010// F in b && D(this.map, F) 1011// } 1012// google.maps.event.addListener(this.map, "rightclick", function(a) { 1013// b.rightclick && b.rightclick.apply(this, [a]), void 0 != window.context_menu[f.el.id].map && f.buildContextMenu("map", a) 1014// }), this.refresh = function() { 1015// google.maps.event.trigger(this.map, "resize") 1016// }, this.fitZoom = function() { 1017// var a, b = [], 1018// c = this.markers.length; 1019// for (a = 0; c > a; a++) "boolean" == typeof this.markers[a].visible && this.markers[a].visible && b.push(this.markers[a].getPosition()); 1020// this.fitLatLngBounds(b) 1021// }, this.fitLatLngBounds = function(a) { 1022// var b, c = a.length, 1023// d = new google.maps.LatLngBounds; 1024// for (b = 0; c > b; b++) d.extend(a[b]); 1025// this.map.fitBounds(d) 1026// }, this.setCenter = function(a, b, c) { 1027// this.map.panTo(new google.maps.LatLng(a, b)), c && c() 1028// }, this.getElement = function() { 1029// return this.el 1030// }, this.zoomIn = function(a) { 1031// a = a || 1, this.zoom = this.map.getZoom() + a, this.map.setZoom(this.zoom) 1032// }, this.zoomOut = function(a) { 1033// a = a || 1, this.zoom = this.map.getZoom() - a, this.map.setZoom(this.zoom) 1034// }; 1035// var G, H = []; 1036// for (G in this.map) "function" != typeof this.map[G] || this[G] || H.push(G); 1037// for (e = 0; e < H.length; e++) ! function(a, b, c) { 1038// a[c] = function() { 1039// return b[c].apply(b, arguments) 1040// } 1041// }(this, this.map, H[e]) 1042// }; 1043// return d 1044// }(this); 1045// j.prototype.createControl = function(a) { 1046// var b = document.createElement("div"); 1047// b.style.cursor = "pointer", a.disableDefaultStyles !== !0 && (b.style.fontFamily = "Roboto, Arial, sans-serif", b.style.fontSize = "11px", b.style.boxShadow = "rgba(0, 0, 0, 0.298039) 0px 1px 4px -1px"); 1048// for (var c in a.style) b.style[c] = a.style[c]; 1049// a.id && (b.id = a.id), a.classes && (b.className = a.classes), a.content && ("string" == typeof a.content ? b.innerHTML = a.content : a.content instanceof HTMLElement && b.appendChild(a.content)), a.position && (b.position = google.maps.ControlPosition[a.position.toUpperCase()]); 1050// for (var d in a.events) ! function(b, c) { 1051// google.maps.event.addDomListener(b, c, function() { 1052// a.events[c].apply(this, [this]) 1053// }) 1054// }(b, d); 1055// return b.index = 1, b 1056// }, j.prototype.addControl = function(a) { 1057// var b = this.createControl(a); 1058// return this.controls.push(b), this.map.controls[b.position].push(b), b 1059// }, j.prototype.removeControl = function(a) { 1060// var b, c = null; 1061// for (b = 0; b < this.controls.length; b++) this.controls[b] == a && (c = this.controls[b].position, this.controls.splice(b, 1)); 1062// if (c) 1063// for (b = 0; b < this.map.controls.length; b++) { 1064// var d = this.map.controls[a.position]; 1065// if (d.getAt(b) == a) { 1066// d.removeAt(b); 1067// break 1068// } 1069// } 1070// return a 1071// }, j.prototype.createMarker = function(b) { 1072// if (void 0 == b.lat && void 0 == b.lng && void 0 == b.position) throw "No latitude or longitude defined."; 1073// var c = this, 1074// d = b.details, 1075// e = b.fences, 1076// f = b.outside, 1077// g = { 1078// position: new google.maps.LatLng(b.lat, b.lng), 1079// map: null 1080// }, 1081// h = a(g, b); 1082// delete h.lat, delete h.lng, delete h.fences, delete h.outside;
1083// var i = new google.maps.Marker(h); 1084// if (i.fences = e, b.infoWindow) { 1085// i.infoWindow = new google.maps.InfoWindow(b.infoWindow); 1086// for (var j = ["closeclick", "content_changed", "domready", "position_changed", "zindex_changed"], k = 0; k < j.length; k++) ! function(a, c) { 1087// b.infoWindow[c] && google.maps.event.addListener(a, c, function(a) { 1088// b.infoWindow[c].apply(this, [a]) 1089// }) 1090// }(i.infoWindow, j[k]) 1091// } 1092// for (var l = ["animation_changed", "clickable_changed", "cursor_changed", "draggable_changed", "flat_changed", "icon_changed", "position_changed", "shadow_changed", "shape_changed", "title_changed", "visible_changed", "zindex_changed"], m = ["dblclick", "drag", "dragend", "dragstart", "mousedown", "mouseout", "mouseover", "mouseup"], k = 0; k < l.length; k++) ! function(a, c) { 1093// b[c] && google.maps.event.addListener(a, c, function() { 1094// b[c].apply(this, [this]) 1095// }) 1096// }(i, l[k]); 1097// for (var k = 0; k < m.length; k++) ! function(a, c, d) { 1098// b[d] && google.maps.event.addListener(c, d, function(c) { 1099// c.pixel || (c.pixel = a.getProjection().fromLatLngToPoint(c.latLng)), b[d].apply(this, [c]) 1100// }) 1101// }(this.map, i, m[k]); 1102// return google.maps.event.addListener(i, "click", function() { 1103// this.details = d, b.click && b.click.apply(this, [this]), i.infoWindow && (c.hideInfoWindows(), i.infoWindow.open(c.map, i)) 1104// }), google.maps.event.addListener(i, "rightclick", function(a) { 1105// a.marker = this, b.rightclick && b.rightclick.apply(this, [a]), void 0 != window.context_menu[c.el.id].marker && c.buildContextMenu("marker", a) 1106// }), i.fences && google.maps.event.addListener(i, "dragend", function() { 1107// c.checkMarkerGeofence(i, function(a, b) { 1108// f(a, b) 1109// }) 1110// }), i 1111// }, j.prototype.addMarker = function(a) { 1112// var b; 1113// if (a.hasOwnProperty("gm_accessors_")) b = a; 1114// else { 1115// if (!(a.hasOwnProperty("lat") && a.hasOwnProperty("lng") || a.position)) throw "No latitude or longitude defined."; 1116// b = this.createMarker(a) 1117// } 1118// return b.setMap(this.map), this.markerClusterer && this.markerClusterer.addMarker(b), this.markers.push(b), j.fire("marker_added", b, this), b 1119// }, j.prototype.addMarkers = function(a) { 1120// for (var b, c = 0; b = a[c]; c++) this.addMarker(b); 1121// return this.markers 1122// }, j.prototype.hideInfoWindows = function() { 1123// for (var a, b = 0; a = this.markers[b]; b++) a.infoWindow && a.infoWindow.close() 1124// }, j.prototype.removeMarker = function(a) { 1125// for (var b = 0; b < this.markers.length; b++) 1126// if (this.markers[b] === a) { 1127// this.markers[b].setMap(null), this.markers.splice(b, 1), this.markerClusterer && this.markerClusterer.removeMarker(a), j.fire("marker_removed", a, this); 1128// break 1129// } return a 1130// }, j.prototype.removeMarkers = function(a) { 1131// var b = []; 1132// if ("undefined" == typeof a) { 1133// for (var c = 0; c < this.markers.length; c++) { 1134// var d = this.markers[c]; 1135// d.setMap(null), this.markerClusterer && this.markerClusterer.removeMarker(d), j.fire("marker_removed", d, this) 1136// } 1137// this.markers = b 1138// } else { 1139// for (var c = 0; c < a.length; c++) { 1140// var e = this.markers.indexOf(a[c]); 1141// if (e > -1) { 1142// var d = this.markers[e]; 1143// d.setMap(null), this.markerClusterer && this.markerClusterer.removeMarker(d), j.fire("marker_removed", d, this) 1144// } 1145// } 1146// for (var c = 0; c < this.markers.length; c++) { 1147// var d = this.markers[c]; 1148// null != d.getMap() && b.push(d) 1149// } 1150// this.markers = b 1151// } 1152// }, j.prototype.drawOverlay = function(a) { 1153// var b = new google.maps.OverlayView, 1154// c = !0; 1155// return b.setMap(this.map), null != a.auto_show && (c = a.auto_show), b.onAdd = function() { 1156// var c = document.createElement("div"); 1157// c.style.borderStyle = "none", c.style.borderWidth = "0px", c.style.position = "absolute", c.style.zIndex = 100, c.innerHTML = a.content, b.el = c, a.layer || (a.layer = "overlayLayer"); 1158// var d = this.getPanes(), 1159// e = d[a.layer], 1160// f = ["contextmenu", "DOMMouseScroll", "dblclick", "mousedown"]; 1161// e.appendChild(c); 1162// for (var g = 0; g < f.length; g++) ! function(a, b) { 1163// google.maps.event.addDomListener(a, b, function(a) { 1164// -1 != navigator.userAgent.toLowerCase().indexOf("msie") && document.all ? (a.cancelBubble = !0, a.returnValue = !1) : a.stopPropagation() 1165// }) 1166// }(c, f[g]); 1167// a.click && (d.overlayMouseTarget.appendChild(b.el), google.maps.event.addDomListener(b.el, "click", function() { 1168// a.click.apply(b, [b]) 1169// })), google.maps.event.trigger(this, "ready") 1170// }, b.draw = function() { 1171// var d = this.getProjection(), 1172// e = d.fromLatLngToDivPixel(new google.maps.LatLng(a.lat, a.lng)); 1173// a.horizontalOffset = a.horizontalOffset || 0, a.verticalOffset = a.verticalOffset || 0; 1174// var f = b.el, 1175// g = f.children[0], 1176// h = g.clientHeight, 1177// i = g.clientWidth; 1178// switch (a.verticalAlign) { 1179// case "top": 1180// f.style.top = e.y - h + a.verticalOffset + "px"; 1181// break; 1182// default: 1183// case "middle": 1184// f.style.top = e.y - h / 2 + a.verticalOffset + "px"; 1185// break; 1186// case "bottom": 1187// f.style.top = e.y + a.verticalOffset + "px" 1188// } 1189// switch (a.horizontalAlign) {
1190// case "left": 1191// f.style.left = e.x - i + a.horizontalOffset + "px"; 1192// break; 1193// default: 1194// case "center": 1195// f.style.left = e.x - i / 2 + a.horizontalOffset + "px"; 1196// break; 1197// case "right": 1198// f.style.left = e.x + a.horizontalOffset + "px" 1199// } 1200// f.style.display = c ? "block" : "none", c || a.show.apply(this, [f]) 1201// }, b.onRemove = function() { 1202// var c = b.el; 1203// a.remove ? a.remove.apply(this, [c]) : (b.el.parentNode.removeChild(b.el), b.el = null) 1204// }, this.overlays.push(b), b 1205// }, j.prototype.removeOverlay = function(a) { 1206// for (var b = 0; b < this.overlays.length; b++) 1207// if (this.overlays[b] === a) { 1208// this.overlays[b].setMap(null), this.overlays.splice(b, 1); 1209// break 1210// } 1211// }, j.prototype.removeOverlays = function() { 1212// for (var a, b = 0; a = this.overlays[b]; b++) a.setMap(null); 1213// this.overlays = [] 1214// }, j.prototype.drawPolyline = function(a) { 1215// var b = [], 1216// c = a.path; 1217// if (c.length) 1218// if (void 0 === c[0][0]) b = c; 1219// else 1220// for (var d, e = 0; d = c[e]; e++) b.push(new google.maps.LatLng(d[0], d[1])); 1221// var f = { 1222// map: this.map, 1223// path: b, 1224// strokeColor: a.strokeColor, 1225// strokeOpacity: a.strokeOpacity, 1226// strokeWeight: a.strokeWeight, 1227// geodesic: a.geodesic, 1228// clickable: !0, 1229// editable: !1, 1230// visible: !0 1231// }; 1232// a.hasOwnProperty("clickable") && (f.clickable = a.clickable), a.hasOwnProperty("editable") && (f.editable = a.editable), a.hasOwnProperty("icons") && (f.icons = a.icons), a.hasOwnProperty("zIndex") && (f.zIndex = a.zIndex); 1233// for (var g = new google.maps.Polyline(f), h = ["click", "dblclick", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup", "rightclick"], i = 0; i < h.length; i++) ! function(b, c) { 1234// a[c] && google.maps.event.addListener(b, c, function(b) { 1235// a[c].apply(this, [b]) 1236// }) 1237// }(g, h[i]); 1238// return this.polylines.push(g), j.fire("polyline_added", g, this), g 1239// }, j.prototype.removePolyline = function(a) { 1240// for (var b = 0; b < this.polylines.length; b++) 1241// if (this.polylines[b] === a) { 1242// this.polylines[b].setMap(null), this.polylines.splice(b, 1), j.fire("polyline_removed", a, this); 1243// break 1244// } 1245// }, j.prototype.removePolylines = function() { 1246// for (var a, b = 0; a = this.polylines[b]; b++) a.setMap(null); 1247// this.polylines = [] 1248// }, j.prototype.drawCircle = function(b) { 1249// b = a({ 1250// map: this.map, 1251// center: new google.maps.LatLng(b.lat, b.lng) 1252// }, b), delete b.lat, delete b.lng; 1253// for (var c = new google.maps.Circle(b), d = ["click", "dblclick", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup", "rightclick"], e = 0; e < d.length; e++) ! function(a, c) { 1254// b[c] && google.maps.event.addListener(a, c, function(a) { 1255// b[c].apply(this, [a]) 1256// }) 1257// }(c, d[e]); 1258// return this.polygons.push(c), c 1259// }, j.prototype.drawRectangle = function(b) { 1260// b = a({ 1261// map: this.map 1262// }, b); 1263// var c = new google.maps.LatLngBounds(new google.maps.LatLng(b.bounds[0][0], b.bounds[0][1]), new google.maps.LatLng(b.bounds[1][0], b.bounds[1][1])); 1264// b.bounds = c; 1265// for (var d = new google.maps.Rectangle(b), e = ["click", "dblclick", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup", "rightclick"], f = 0; f < e.length; f++) ! function(a, c) { 1266// b[c] && google.maps.event.addListener(a, c, function(a) { 1267// b[c].apply(this, [a]) 1268// }) 1269// }(d, e[f]); 1270// return this.polygons.push(d), d 1271// }, j.prototype.drawPolygon = function(d) { 1272// var e = !1; 1273// d.hasOwnProperty("useGeoJSON") && (e = d.useGeoJSON), delete d.useGeoJSON, d = a({ 1274// map: this.map 1275// }, d), 0 == e && (d.paths = [d.paths.slice(0)]), d.paths.length > 0 && d.paths[0].length > 0 && (d.paths = c(b(d.paths, f, e))); 1276// for (var g = new google.maps.Polygon(d), h = ["click", "dblclick", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup", "rightclick"], i = 0; i < h.length; i++) ! function(a, b) { 1277// d[b] && google.maps.event.addListener(a, b, function(a) { 1278// d[b].apply(this, [a]) 1279// }) 1280// }(g, h[i]); 1281// return this.polygons.push(g), j.fire("polygon_added", g, this), g 1282// }, j.prototype.removePolygon = function(a) { 1283// for (var b = 0; b < this.polygons.length; b++) 1284// if (this.polygons[b] === a) { 1285// this.polygons[b].setMap(null), this.polygons.splice(b, 1), j.fire("polygon_removed", a, this); 1286// break 1287// } 1288// }, j.prototype.removePolygons = function() { 1289// for (var a, b = 0; a = this.polygons[b]; b++) a.setMap(null); 1290// this.polygons = [] 1291// }, j.prototype.getFromFusionTables = function(a) { 1292// var b = a.events; 1293// delete a.events; 1294// var c = a, 1295// d = new google.maps.FusionTablesLayer(c); 1296// for (var e in b) ! function(a, c) { 1297// google.maps.event.addListener(a, c, function(a) { 1298// b[c].apply(this, [a]) 1299// }) 1300// }(d, e); 1301// return this.layers.push(d), d 1302// }, j.prototype.loadFromFusionTables = function(a) { 1303// var b = this.getFromFusionTables(a); 1304// return b.setMap(this.map), b 1305// }, j.prototype.getFromKML = function(a) { 1306// var b = a.url, 1307// c = a.events; 1308// delete a.url, delete a.events; 1309// var d = a, 1310// e = new google.maps.KmlLayer(b, d); 1311// for (var f in c) ! function(a, b) { 1312// google.maps.event.addListener(a, b, function(a) { 1313// c[b].apply(this, [a]) 1314// }) 1315// }(e, f); 1316// return this.layers.push(e), e 1317// }, j.prototype.loadFromKML = function(a) { 1318// var b = this.getFromKML(a); 1319// return b.setMap(this.map), b 1320// }, j.prototype.addLayer = function(a, b) { 1321// b = b || {}; 1322// var c; 1323// switch (a) { 1324// case "weather": 1325// this.singleLayers.weather = c = new google.maps.weather.WeatherLayer; 1326// break; 1327// case "clouds": 1328// this.singleLayers.clouds = c = new google.maps.weather.CloudLayer; 1329// break; 1330// case "traffic": 1331// this.singleLayers.traffic = c = new google.maps.TrafficLayer; 1332// break; 1333// case "transit": 1334// this.singleLayers.transit = c = new google.maps.TransitLayer; 1335// break; 1336// case "bicycling": 1337// this.singleLayers.bicycling = c = new google.maps.BicyclingLayer; 1338// break; 1339// case "panoramio": 1340// this.singleLayers.panoramio = c = new google.maps.panoramio.PanoramioLayer, c.setTag(b.filter), delete b.filter, b.click && google.maps.event.addListener(c, "click", function(a) { 1341// b.click(a), delete b.click 1342// }); 1343// break; 1344// case "places": 1345// if (this.singleLayers.places = c = new google.maps.places.PlacesService(this.map), b.search || b.nearbySearch || b.radarSearch) { 1346// var d = { 1347// bounds: b.bounds || null,
1348// keyword: b.keyword || null, 1349// location: b.location || null, 1350// name: b.name || null, 1351// radius: b.radius || null, 1352// rankBy: b.rankBy || null, 1353// types: b.types || null 1354// }; 1355// b.radarSearch && c.radarSearch(d, b.radarSearch), b.search && c.search(d, b.search), b.nearbySearch && c.nearbySearch(d, b.nearbySearch) 1356// } 1357// if (b.textSearch) { 1358// var e = { 1359// bounds: b.bounds || null, 1360// location: b.location || null, 1361// query: b.query || null, 1362// radius: b.radius || null 1363// }; 1364// c.textSearch(e, b.textSearch) 1365// } 1366// } 1367// return void 0 !== c ? ("function" == typeof c.setOptions && c.setOptions(b), "function" == typeof c.setMap && c.setMap(this.map), c) : void 0 1368// }, j.prototype.removeLayer = function(a) { 1369// if ("string" == typeof a && void 0 !== this.singleLayers[a]) this.singleLayers[a].setMap(null), delete this.singleLayers[a]; 1370// else 1371// for (var b = 0; b < this.layers.length; b++) 1372// if (this.layers[b] === a) { 1373// this.layers[b].setMap(null), this.layers.splice(b, 1); 1374// break 1375// } 1376// }; 1377// var k, l; 1378// return j.prototype.getRoutes = function(b) { 1379// switch (b.travelMode) { 1380// case "bicycling": 1381// k = google.maps.TravelMode.BICYCLING; 1382// break; 1383// case "transit": 1384// k = google.maps.TravelMode.TRANSIT; 1385// break; 1386// case "driving": 1387// k = google.maps.TravelMode.DRIVING; 1388// break; 1389// default: 1390// k = google.maps.TravelMode.WALKING 1391// } 1392// l = "imperial" === b.unitSystem ? google.maps.UnitSystem.IMPERIAL : google.maps.UnitSystem.METRIC; 1393// var c = { 1394// avoidHighways: !1, 1395// avoidTolls: !1, 1396// optimizeWaypoints: !1, 1397// waypoints: [] 1398// }, 1399// d = a(c, b); 1400// d.origin = /string/.test(typeof b.origin) ? b.origin : new google.maps.LatLng(b.origin[0], b.origin[1]), d.destination = /string/.test(typeof b.destination) ? b.destination : new google.maps.LatLng(b.destination[0], b.destination[1]), d.travelMode = k, d.unitSystem = l, delete d.callback, delete d.error; 1401// var e = this, 1402// f = new google.maps.DirectionsService; 1403// f.route(d, function(a, c) { 1404// if (c === google.maps.DirectionsStatus.OK) { 1405// for (var d in a.routes) a.routes.hasOwnProperty(d) && e.routes.push(a.routes[d]); 1406// b.callback && b.callback(e.routes) 1407// } else b.error && b.error(a, c) 1408// }) 1409// }, j.prototype.removeRoutes = function() { 1410// this.routes = [] 1411// }, j.prototype.getElevations = function(d) { 1412// d = a({ 1413// locations: [], 1414// path: !1, 1415// samples: 256 1416// }, d), d.locations.length > 0 && d.locations[0].length > 0 && (d.locations = c(b([d.locations], f, !1))); 1417// var e = d.callback; 1418// delete d.callback; 1419// var g = new google.maps.ElevationService; 1420// if (d.path) { 1421// var h = { 1422// path: d.locations, 1423// samples: d.samples 1424// }; 1425// g.getElevationAlongPath(h, function(a, b) { 1426// e && "function" == typeof e && e(a, b) 1427// }) 1428// } else delete d.path, delete d.samples, g.getElevationForLocations(d, function(a, b) { 1429// e && "function" == typeof e && e(a, b) 1430// }) 1431// }, j.prototype.cleanRoute = j.prototype.removePolylines, j.prototype.drawRoute = function(a) { 1432// var b = this; 1433// this.getRoutes({ 1434// origin: a.origin,
1435// destination: a.destination, 1436// travelMode: a.travelMode, 1437// waypoints: a.waypoints, 1438// unitSystem: a.unitSystem, 1439// error: a.error, 1440// callback: function(c) { 1441// if (c.length > 0) { 1442// var d = { 1443// path: c[c.length - 1].overview_path, 1444// strokeColor: a.strokeColor, 1445// strokeOpacity: a.strokeOpacity, 1446// strokeWeight: a.strokeWeight 1447// }; 1448// a.hasOwnProperty("icons") && (d.icons = a.icons), b.drawPolyline(d), a.callback && a.callback(c[c.length - 1]) 1449// } 1450// } 1451// }) 1452// }, j.prototype.travelRoute = function(a) { 1453// if (a.origin && a.destination) this.getRoutes({ 1454// origin: a.origin, 1455// destination: a.destination, 1456// travelMode: a.travelMode, 1457// waypoints: a.waypoints, 1458// unitSystem: a.unitSystem, 1459// error: a.error, 1460// callback: function(b) { 1461// if (b.length > 0 && a.start && a.start(b[b.length - 1]), b.length > 0 && a.step) { 1462// var c = b[b.length - 1]; 1463// if (c.legs.length > 0) 1464// for (var d, e = c.legs[0].steps, f = 0; d = e[f]; f++) d.step_number = f, a.step(d, c.legs[0].steps.length - 1) 1465// } 1466// b.length > 0 && a.end && a.end(b[b.length - 1]) 1467// } 1468// }); 1469// else if (a.route && a.route.legs.length > 0) 1470// for (var b, c = a.route.legs[0].steps, d = 0; b = c[d]; d++) b.step_number = d, 1471// a.step(b) 1472// }, j.prototype.drawSteppedRoute = function(a) { 1473// var b = this; 1474// if (a.origin && a.destination) this.getRoutes({ 1475// origin: a.origin, 1476// destination: a.destination, 1477// travelMode: a.travelMode, 1478// waypoints: a.waypoints, 1479// error: a.error, 1480// callback: function(c) { 1481// if (c.length > 0 && a.start && a.start(c[c.length - 1]), c.length > 0 && a.step) { 1482// var d = c[c.length - 1]; 1483// if (d.legs.length > 0) 1484// for (var e, f = d.legs[0].steps, g = 0; e = f[g]; g++) { 1485// e.step_number = g; 1486// var h = { 1487// path: e.path, 1488// strokeColor: a.strokeColor, 1489// strokeOpacity: a.strokeOpacity, 1490// strokeWeight: a.strokeWeight 1491// }; 1492// a.hasOwnProperty("icons") && (h.icons = a.icons), b.drawPolyline(h), a.step(e, d.legs[0].steps.length - 1) 1493// } 1494// } 1495// c.length > 0 && a.end && a.end(c[c.length - 1]) 1496// } 1497// }); 1498// else if (a.route && a.route.legs.length > 0) 1499// for (var c, d = a.route.legs[0].steps, e = 0; c = d[e]; e++) { 1500// c.step_number = e; 1501// var f = { 1502// path: c.path, 1503// strokeColor: a.strokeColor, 1504// strokeOpacity: a.strokeOpacity, 1505// strokeWeight: a.strokeWeight 1506// }; 1507// a.hasOwnProperty("icons") && (f.icons = a.icons), b.drawPolyline(f), a.step(c) 1508// } 1509// }, j.Route = function(a) { 1510// this.origin = a.origin, this.destination = a.destination, this.waypoints = a.waypoints, this.map = a.map, this.route = a.route, this.step_count = 0, this.steps = this.route.legs[0].steps, this.steps_length = this.steps.length; 1511// var b = { 1512// path: new google.maps.MVCArray, 1513// strokeColor: a.strokeColor, 1514// strokeOpacity: a.strokeOpacity, 1515// strokeWeight: a.strokeWeight 1516// }; 1517// a.hasOwnProperty("icons") && (b.icons = a.icons), this.polyline = this.map.drawPolyline(b).getPath() 1518// }, j.Route.prototype.getRoute = function(a) { 1519// var b = this; 1520// this.map.getRoutes({ 1521// origin: this.origin,
1522// destination: this.destination, 1523// travelMode: a.travelMode, 1524// waypoints: this.waypoints || [], 1525// error: a.error, 1526// callback: function() { 1527// b.route = e[0], a.callback && a.callback.call(b) 1528// } 1529// }) 1530// }, j.Route.prototype.back = function() { 1531// if (this.step_count > 0) { 1532// this.step_count--; 1533// var a = this.route.legs[0].steps[this.step_count].path; 1534// for (var b in a) a.hasOwnProperty(b) && this.polyline.pop() 1535// } 1536// }, j.Route.prototype.forward = function() { 1537// if (this.step_count < this.steps_length) { 1538// var a = this.route.legs[0].steps[this.step_count].path; 1539// for (var b in a) a.hasOwnProperty(b) && this.polyline.push(a[b]); 1540// this.step_count++ 1541// } 1542// }, j.prototype.checkGeofence = function(a, b, c) { 1543// return c.containsLatLng(new google.maps.LatLng(a, b)) 1544// }, j.prototype.checkMarkerGeofence = function(a, b) { 1545// if (a.fences) 1546// for (var c, d = 0; c = a.fences[d]; d++) { 1547// var e = a.getPosition(); 1548// this.checkGeofence(e.lat(), e.lng(), c) || b(a, c) 1549// } 1550// }, j.prototype.toImage = function(a) { 1551// var a = a || {}, 1552// b = {}; 1553// if (b.size = a.size || [this.el.clientWidth, this.el.clientHeight], b.lat = this.getCenter().lat(), b.lng = this.getCenter().lng(), this.markers.length > 0) { 1554// b.markers = []; 1555// for (var c = 0; c < this.markers.length; c++) b.markers.push({ 1556// lat: this.markers[c].getPosition().lat(), 1557// lng: this.markers[c].getPosition().lng() 1558// }) 1559// } 1560// if (this.polylines.length > 0) { 1561// var d = this.polylines[0]; 1562// b.polyline = {}, b.polyline.path = google.maps.geometry.encoding.encodePath(d.getPath()), b.polyline.strokeColor = d.strokeColor, b.polyline.strokeOpacity = d.strokeOpacity, b.polyline.strokeWeight = d.strokeWeight 1563// } 1564// return j.staticMapURL(b) 1565// }, j.staticMapURL = function(a) { 1566// function b(a, b) { 1567// if ("#" === a[0] && (a = a.replace("#", "0x"), b)) { 1568// if (b = parseFloat(b), b = Math.min(1, Math.max(b, 0)), 0 === b) return "0x00000000"; 1569// b = (255 * b).toString(16), 1 === b.length && (b += b), a = a.slice(0, 8) + b 1570// } 1571// return a 1572// } 1573// var c, d = [], 1574// e = ("file:" === location.protocol ? "http:" : location.protocol) + "//maps.googleapis.com/maps/api/staticmap"; 1575// a.url && (e = a.url, delete a.url), e += "?"; 1576// var f = a.markers; 1577// delete a.markers, !f && a.marker && (f = [a.marker], delete a.marker); 1578// var g = a.styles; 1579// delete a.styles; 1580// var h = a.polyline; 1581// if (delete a.polyline, a.center) d.push("center=" + a.center), delete a.center; 1582// else if (a.address) d.push("center=" + a.address), delete a.address; 1583// else if (a.lat) d.push(["center=", a.lat, ",", a.lng].join("")), delete a.lat, delete a.lng; 1584// else if (a.visible) { 1585// var i = encodeURI(a.visible.join("|")); 1586// d.push("visible=" + i) 1587// } 1588// var j = a.size; 1589// j ? (j.join && (j = j.join("x")), delete a.size) : j = "630x300", d.push("size=" + j), a.zoom || a.zoom === !1 || (a.zoom = 15); 1590// var k = a.hasOwnProperty("sensor") ? !!a.sensor : !0; 1591// delete a.sensor, d.push("sensor=" + k); 1592// for (var l in a) a.hasOwnProperty(l) && d.push(l + "=" + a[l]); 1593// if (f) 1594// for (var m, n, o = 0; c = f[o]; o++) { 1595// m = [], c.size && "normal" !== c.size ? (m.push("size:" + c.size), delete c.size) : c.icon && (m.push("icon:" + encodeURI(c.icon)), delete c.icon), c.color && (m.push("color:" + c.color.replace("#", "0x")), delete c.color), c.label && (m.push("label:" + c.label[0].toUpperCase()), delete c.label), n = c.address ? c.address : c.lat + "," + c.lng, delete c.address, delete c.lat, delete c.lng; 1596// for (var l in c) c.hasOwnProperty(l) && m.push(l + ":" + c[l]); 1597// m.length || 0 === o ? (m.push(n), m = m.join("|"), d.push("markers=" + encodeURI(m))) : (m = d.pop() + encodeURI("|" + n), d.push(m)) 1598// } 1599// if (g) 1600// for (var o = 0; o < g.length; o++) { 1601// var p = []; 1602// g[o].featureType && p.push("feature:" + g[o].featureType.toLowerCase()), g[o].elementType && p.push("element:" + g[o].elementType.toLowerCase()); 1603// for (var q = 0; q < g[o].stylers.length; q++) 1604// for (var r in g[o].stylers[q]) { 1605// var s = g[o].stylers[q][r]; 1606// ("hue" == r || "color" == r) && (s = "0x" + s.substring(1)), p.push(r + ":" + s) 1607// } 1608// var t = p.join("|"); 1609// "" != t && d.push("style=" + t) 1610// } 1611// if (h) { 1612// if (c = h, h = [], c.strokeWeight && h.push("weight:" + parseInt(c.strokeWeight, 10)), c.strokeColor) { 1613// var u = b(c.strokeColor, c.strokeOpacity); 1614// h.push("color:" + u) 1615// } 1616// if (c.fillColor) { 1617// var v = b(c.fillColor, c.fillOpacity); 1618// h.push("fillcolor:" + v) 1619// } 1620// var w = c.path; 1621// if (w.join) 1622// for (var x, q = 0; x = w[q]; q++) h.push(x.join(","));
1623// else h.push("enc:" + w); 1624// h = h.join("|"), d.push("path=" + encodeURI(h)) 1625// } 1626// var y = window.devicePixelRatio || 1; 1627// return d.push("scale=" + y), d = d.join("&"), e + d 1628// }, j.prototype.addMapType = function(a, b) { 1629// if (!b.hasOwnProperty("getTileUrl") || "function" != typeof b.getTileUrl) throw "'getTileUrl' function required."; 1630// b.tileSize = b.tileSize || new google.maps.Size(256, 256); 1631// var c = new google.maps.ImageMapType(b); 1632// this.map.mapTypes.set(a, c) 1633// }, j.prototype.addOverlayMapType = function(a) { 1634// if (!a.hasOwnProperty("getTile") || "function" != typeof a.getTile) throw "'getTile' function required."; 1635// var b = a.index; 1636// delete a.index, this.map.overlayMapTypes.insertAt(b, a) 1637// }, j.prototype.removeOverlayMapType = function(a) { 1638// this.map.overlayMapTypes.removeAt(a) 1639// }, j.prototype.addStyle = function(a) { 1640// var b = new google.maps.StyledMapType(a.styles, { 1641// name: a.styledMapName 1642// }); 1643// this.map.mapTypes.set(a.mapTypeId, b) 1644// }, j.prototype.setStyle = function(a) { 1645// this.map.setMapTypeId(a) 1646// }, j.prototype.createPanorama = function(a) { 1647// return a.hasOwnProperty("lat") && a.hasOwnProperty("lng") || (a.lat = this.getCenter().lat(), a.lng = this.getCenter().lng()), this.panorama = j.createPanorama(a), this.map.setStreetView(this.panorama), this.panorama 1648// }, j.createPanorama = function(b) { 1649// var c = h(b.el, b.context); 1650// b.position = new google.maps.LatLng(b.lat, b.lng), delete b.el, delete b.context, delete b.lat, delete b.lng; 1651// for (var d = ["closeclick", "links_changed", "pano_changed", "position_changed", "pov_changed", "resize", "visible_changed"], e = a({ 1652// visible: !0 1653// }, b), f = 0; f < d.length; f++) delete e[d[f]]; 1654// for (var g = new google.maps.StreetViewPanorama(c, e), f = 0; f < d.length; f++) ! function(a, c) { 1655// b[c] && google.maps.event.addListener(a, c, function() { 1656// b[c].apply(this) 1657// }) 1658// }(g, d[f]); 1659// return g 1660// }, j.prototype.on = function(a, b) { 1661// return j.on(a, this, b) 1662// }, j.prototype.off = function(a) { 1663// j.off(a, this) 1664// }, j.custom_events = ["marker_added", "marker_removed", "polyline_added", "polyline_removed", "polygon_added", "polygon_removed", "geolocated", "geolocation_failed"], j.on = function(a, b, c) { 1665// if (-1 == j.custom_events.indexOf(a)) return b instanceof j && (b = b.map), google.maps.event.addListener(b, a, c); 1666// var d = { 1667// handler: c, 1668// eventName: a 1669// }; 1670// return b.registered_events[a] = b.registered_events[a] || [], b.registered_events[a].push(d), d 1671// }, j.off = function(a, b) { 1672// -1 == j.custom_events.indexOf(a) ? (b instanceof j && (b = b.map), google.maps.event.clearListeners(b, a)) : b.registered_events[a] = [] 1673// }, j.fire = function(a, b, c) { 1674// if (-1 == j.custom_events.indexOf(a)) google.maps.event.trigger(b, a, Array.prototype.slice.apply(arguments).slice(2)); 1675// else if (a in c.registered_events) 1676// for (var d = c.registered_events[a], e = 0; e < d.length; e++) ! function(a, b, c) { 1677// a.apply(b, [c]) 1678// }(d[e].handler, c, b) 1679// }, j.geolocate = function(a) { 1680// var b = a.always || a.complete; 1681// navigator.geolocation ? navigator.geolocation.getCurrentPosition(function(c) { 1682// a.success(c), b && b() 1683// }, function(c) { 1684// a.error(c), b && b() 1685// }, a.options) : (a.not_supported(), b && b()) 1686// }, j.geocode = function(a) { 1687// this.geocoder = new google.maps.Geocoder; 1688// var b = a.callback; 1689// a.hasOwnProperty("lat") && a.hasOwnProperty("lng") && (a.latLng = new google.maps.LatLng(a.lat, a.lng)), delete a.lat, delete a.lng, delete a.callback, this.geocoder.geocode(a, function(a, c) { 1690// b(a, c) 1691// }) 1692// }, google.maps.Polygon.prototype.getBounds || (google.maps.Polygon.prototype.getBounds = function(a) { 1693// for (var b, c = new google.maps.LatLngBounds, d = this.getPaths(), e = 0; e < d.getLength(); e++) { 1694// b = d.getAt(e); 1695// for (var f = 0; f < b.getLength(); f++) c.extend(b.getAt(f)) 1696// } 1697// return c 1698// }), google.maps.Polygon.prototype.containsLatLng || (google.maps.Polygon.prototype.containsLatLng = function(a) { 1699// var b = this.getBounds(); 1700// if (null !== b && !b.contains(a)) return !1; 1701// for (var c = !1, d = this.getPaths().getLength(), e = 0; d > e; e++) 1702// for (var f = this.getPaths().getAt(e), g = f.getLength(), h = g - 1, i = 0; g > i; i++) { 1703// var j = f.getAt(i), 1704// k = f.getAt(h); 1705// (j.lng() < a.lng() && k.lng() >= a.lng() || k.lng() < a.lng() && j.lng() >= a.lng()) && j.lat() + (a.lng() - j.lng()) / (k.lng() - j.lng()) * (k.lat() - j.lat()) < a.lat() && (c = !c), h = i 1706// } 1707// return c 1708// }), google.maps.Circle.prototype.containsLatLng || (google.maps.Circle.prototype.containsLatLng = function(a) { 1709// return google.maps.geometry ? google.maps.geometry.spherical.computeDistanceBetween(this.getCenter(), a) <= this.getRadius() : !0 1710// }), google.maps.LatLngBounds.prototype.containsLatLng = function(a) { 1711// return this.contains(a) 1712// }, google.maps.Marker.prototype.setFences = function(a) { 1713// this.fences = a 1714// }, google.maps.Marker.prototype.addFence = function(a) { 1715// this.fences.push(a) 1716// }, google.maps.Marker.prototype.getId = function() { 1717// return this.__gm_id 1718// }, Array.prototype.indexOf || (Array.prototype.indexOf = function(a) { 1719// "use strict";
1720// if (null == this) throw new TypeError; 1721// var b = Object(this), 1722// c = b.length >>> 0; 1723// if (0 === c) return -1; 1724// var d = 0; 1725// if (arguments.length > 1 && (d = Number(arguments[1]), d != d ? d = 0 : 0 != d && d != 1 / 0 && d != -(1 / 0) && (d = (d > 0 || -1) * Math.floor(Math.abs(d)))), d >= c) return -1; 1726// for (var e = d >= 0 ? d : Math.max(c - Math.abs(d), 0); c > e; e++) 1727// if (e in b && b[e] === a) return e; 1728// return -1 1729// }), j 1730// }), + 1731function(a) { 1732 "use strict"; 1733 var b = function(c, d) { 1734 this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d), this.state = null, this.placement = null, this.options.recalc && (this.calcClone(), a(window).on("resize", a.proxy(this.recalc, this))), this.options.autohide && a(document).on("click", a.proxy(this.autohide, this)), this.options.toggle && this.toggle(), this.options.disablescrolling && (this.options.disableScrolling = this.options.disablescrolling, delete this.options.disablescrolling) 1735 }; 1736 b.DEFAULTS = { 1737 toggle: !0, 1738 placement: "auto", 1739 autohide: !0, 1740 recalc: !0, 1741 disableScrolling: !0 1742 }, b.prototype.offset = function() { 1743 switch (this.placement) { 1744 case "left": 1745 case "right": 1746 return this.$element.outerWidth(); 1747 case "top": 1748 case "bottom": 1749 return this.$element.outerHeight() 1750 } 1751 }, b.prototype.calcPlacement = function() { 1752 function b(a, b) { 1753 if ("auto" === e.css(b)) return a; 1754 if ("auto" === e.css(a)) return b; 1755 var c = parseInt(e.css(a), 10), 1756 d = parseInt(e.css(b), 10); 1757 return c > d ? b : a 1758 } 1759 if ("auto" !== this.options.placement) return void(this.placement = this.options.placement); 1760 this.$element.hasClass("in") || this.$element.css("visiblity", "hidden !important").addClass("in"); 1761 var c = a(window).width() / this.$element.width(), 1762 d = a(window).height() / this.$element.height(), 1763 e = this.$element; 1764 this.placement = c >= d ? b("left", "right") : b("top", "bottom"), "hidden !important" === this.$element.css("visibility") && this.$element.removeClass("in").css("visiblity", "") 1765 }, b.prototype.opposite = function(a) { 1766 switch (a) { 1767 case "top": 1768 return "bottom"; 1769 case "left": 1770 return "right"; 1771 case "bottom": 1772 return "top"; 1773 case "right": 1774 return "left" 1775 } 1776 }, b.prototype.getCanvasElements = function() { 1777 var b = this.options.canvas ? a(this.options.canvas) : this.$element, 1778 c = b.find("*").filter(function() { 1779 return "fixed" === a(this).css("position") 1780 }).not(this.options.exclude); 1781 return b.add(c) 1782 }, b.prototype.slide = function(b, c, d) { 1783 if (!a.support.transition) { 1784 var e = {}; 1785 return e[this.placement] = "+=" + c, b.animate(e, 350, d) 1786 } 1787 var f = this.placement, 1788 g = this.opposite(f); 1789 b.each(function() { 1790 "auto" !== a(this).css(f) && a(this).css(f, (parseInt(a(this).css(f), 10) || 0) + c), "auto" !== a(this).css(g) && a(this).css(g, (parseInt(a(this).css(g), 10) || 0) - c) 1791 }), this.$element.one(a.support.transition.end, d).emulateTransitionEnd(350) 1792 }, b.prototype.disableScrolling = function() { 1793 var b = a("body").width(), 1794 c = "padding-" + this.opposite(this.placement); 1795 if (void 0 === a("body").data("offcanvas-style") && a("body").data("offcanvas-style", a("body").attr("style") || ""), a("body").css("overflow", "hidden"), a("body").width() > b) { 1796 var d = parseInt(a("body").css(c), 10) + a("body").width() - b; 1797 setTimeout(function() { 1798 a("body").css(c, d) 1799 }, 1) 1800 } 1801 }, b.prototype.show = function() { 1802 if (!this.state) { 1803 var b = a.Event("show.bs.offcanvas"); 1804 if (this.$element.trigger(b), !b.isDefaultPrevented()) { 1805 this.state = "slide-in", this.calcPlacement(); 1806 var c = this.getCanvasElements(), 1807 d = this.placement, 1808 e = this.opposite(d), 1809 f = this.offset(); - 1 !== c.index(this.$element) && (a(this.$element).data("offcanvas-style", a(this.$element).attr("style") || ""), this.$element.css(d, -1 * f), this.$element.css(d)), c.addClass("canvas-sliding").each(function() { 1810 void 0 === a(this).data("offcanvas-style") && a(this).data("offcanvas-style", a(this).attr("style") || ""), "static" === a(this).css("position") && a(this).css("position", "relative"), "auto" !== a(this).css(d) && "0px" !== a(this).css(d) || "auto" !== a(this).css(e) && "0px" !== a(this).css(e) || a(this).css(d, 0) 1811 }), this.options.disableScrolling && this.disableScrolling(); 1812 var g = function() { 1813 "slide-in" == this.state && (this.state = "slid", c.removeClass("canvas-sliding").addClass("canvas-slid"), this.$element.trigger("shown.bs.offcanvas")) 1814 }; 1815 setTimeout(a.proxy(function() { 1816 this.$element.addClass("in"), this.slide(c, f, a.proxy(g, this)) 1817 }, this), 1) 1818 } 1819 } 1820 }, b.prototype.hide = function(b) { 1821 if ("slid" === this.state) { 1822 var c = a.Event("hide.bs.offcanvas"); 1823 if (this.$element.trigger(c), !c.isDefaultPrevented()) { 1824 this.state = "slide-out"; 1825 var d = a(".canvas-slid"), 1826 e = (this.placement, -1 * this.offset()), 1827 f = function() { 1828 "slide-out" == this.state && (this.state = null, this.placement = null, this.$element.removeClass("in"), d.removeClass("canvas-sliding"), d.add(this.$element).add("body").each(function() { 1829 a(this).attr("style", a(this).data("offcanvas-style")).removeData("offcanvas-style") 1830 }), this.$element.trigger("hidden.bs.offcanvas")) 1831 }; 1832 d.removeClass("canvas-slid").addClass("canvas-sliding"), setTimeout(a.proxy(function() { 1833 this.slide(d, e, a.proxy(f, this)) 1834 }, this), 1) 1835 } 1836 } 1837 }, b.prototype.toggle = function() { 1838 "slide-in" !== this.state && "slide-out" !== this.state && this["slid" === this.state ? "hide" : "show"]() 1839 }, b.prototype.calcClone = function() { 1840 this.$calcClone = this.$element.clone().html("").addClass("offcanvas-clone").removeClass("in").appendTo(a("body")) 1841 }, b.prototype.recalc = function() { 1842 if ("none" !== this.$calcClone.css("display") && ("slid" === this.state || "slide-in" === this.state)) { 1843 this.state = null, this.placement = null; 1844 var b = this.getCanvasElements(); 1845 this.$element.removeClass("in"), b.removeClass("canvas-slid"), b.add(this.$element).add("body").each(function() { 1846 a(this).attr("style", a(this).data("offcanvas-style")).removeData("offcanvas-style") 1847 }) 1848 } 1849 }, b.prototype.autohide = function(b) { 1850 0 === a(b.target).closest(this.$element).length && this.hide() 1851 }; 1852 var c = a.fn.offcanvas; 1853 a.fn.offcanvas = function(c) { 1854 return this.each(function() { 1855 var d = a(this), 1856 e = d.data("bs.offcanvas"), 1857 f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c); 1858 e || d.data("bs.offcanvas", e = new b(this, f)), "string" == typeof c && e[c]() 1859 }) 1860 }, a.fn.offcanvas.Constructor = b, a.fn.offcanvas.noConflict = function() { 1861 return a.fn.offcanvas = c, this 1862 }, a(document).on("click.bs.offcanvas.data-api", "[data-toggle=offcanvas]", function(b) { 1863 var c, d = a(this), 1864 e = d.attr("data-target") || b.preventDefault() || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, ""), 1865 f = a(e), 1866 g = f.data("bs.offcanvas"), 1867 h = g ? "toggle" : d.data();
1868 b.stopPropagation(), g ? g.toggle() : f.offcanvas(h) 1869 }) 1870}(window.jQuery); 1871var outdatedBrowser = function(a) { 1872 function b(a) { 1873 h.style.opacity = a / 100, h.style.filter = "alpha(opacity=" + a + ")" 1874 } 1875 1876 function c(a) { 1877 b(a), 1 == a && (h.style.display = "block"), 100 == a && (i = !0) 1878 } 1879 1880 function d() { 1881 var a = document.getElementById("btnCloseUpdateBrowser"), 1882 b = document.getElementById("btnUpdateBrowser"); 1883 h.style.backgroundColor = bkgColor, h.style.color = txtColor, h.children[0].style.color = txtColor, h.children[1].style.color = txtColor, b.style.color = txtColor, b.style.borderColor = txtColor, a.style.color = txtColor, a.onmousedown = function() { 1884 return h.style.display = "none", !1 1885 }, b.onmouseover = function() { 1886 this.style.color = bkgColor, this.style.backgroundColor = txtColor 1887 }, b.onmouseout = function() { 1888 this.style.color = txtColor, this.style.backgroundColor = bkgColor 1889 } 1890 } 1891 1892 function e() { 1893 var a = !1; 1894 if (window.XMLHttpRequest) a = new XMLHttpRequest; 1895 else if (window.ActiveXObject) try { 1896 a = new ActiveXObject("Msxml2.XMLHTTP") 1897 } catch (b) { 1898 try { 1899 a = new ActiveXObject("Microsoft.XMLHTTP") 1900 } catch (b) { 1901 a = !1 1902 } 1903 } 1904 return a 1905 } 1906 1907 function f(a) { 1908 var b = e(); 1909 return b && (b.onreadystatechange = function() { 1910 g(b) 1911 }, b.open("GET", a, !0), b.send(null)), !1 1912 } 1913 1914 function g(a) { 1915 var b = document.getElementById("outdated"); 1916 return 4 == a.readyState && (200 == a.status || 304 == a.status ? b.innerHTML = a.responseText : b.innerHTML = l, d()), !1 1917 } 1918 var h = document.getElementById("outdated"); 1919 this.defaultOpts = { 1920 bgColor: "#f25648", 1921 color: "#ffffff", 1922 lowerThan: "transform", 1923 languagePath: "../outdatedbrowser/lang/en.html" 1924 }, a ? ("IE8" == a.lowerThan || "borderSpacing" == a.lowerThan ? a.lowerThan = "borderSpacing" : "IE9" == a.lowerThan || "boxShadow" == a.lowerThan ? a.lowerThan = "boxShadow" : "IE10" == a.lowerThan || "transform" == a.lowerThan || "" == a.lowerThan || "undefined" == typeof a.lowerThan ? a.lowerThan = "transform" : ("IE11" == a.lowerThan || "borderImage" == a.lowerThan) && (a.lowerThan = "borderImage"), this.defaultOpts.bgColor = a.bgColor, this.defaultOpts.color = a.color, this.defaultOpts.lowerThan = a.lowerThan, this.defaultOpts.languagePath = a.languagePath, bkgColor = this.defaultOpts.bgColor, txtColor = this.defaultOpts.color, cssProp = this.defaultOpts.lowerThan, languagePath = this.defaultOpts.languagePath) : (bkgColor = this.defaultOpts.bgColor, txtColor = this.defaultOpts.color, cssProp = this.defaultOpts.lowerThan, languagePath = this.defaultOpts.languagePath); 1925 var i = !0, 1926 j = function() { 1927 var a = document.createElement("div"), 1928 b = "Khtml Ms O Moz Webkit".split(" "), 1929 c = b.length; 1930 return function(d) { 1931 if (d in a.style) return !0; 1932 for (d = d.replace(/^[a-z]/, function(a) { 1933 return a.toUpperCase() 1934 }); c--;) 1935 if (b[c] + d in a.style) return !0; 1936 return !1 1937 } 1938 }(); 1939 if (!j("" + cssProp) && i && "1" !== h.style.opacity) { 1940 i = !1; 1941 for (var k = 1; 100 >= k; k++) setTimeout(function(a) { 1942 return function() { 1943 c(a) 1944 } 1945 }(k), 8 * k) 1946 } 1947 " " === languagePath || 0 == languagePath.length ? d() : f(languagePath); 1948 var l = '<h6>Your browser is out-of-date!</h6><p>Update your browser to view this website correctly. <a id="btnUpdateBrowser" href="http://outdatedbrowser.com/">Update my browser now </a></p><p class="last"><a href="#" id="btnCloseUpdateBrowser" title="Close">Ã</a></p>' 1949}; 1950! function() { 1951 "use strict"; 1952 1953 function a(b, d) { 1954 function e(a, b) { 1955 return function() { 1956 return a.apply(b, arguments) 1957 } 1958 } 1959 var f; 1960 if (d = d || {}, this.trackingClick = !1, this.trackingClickStart = 0, this.targetElement = null, this.touchStartX = 0, this.touchStartY = 0, this.lastTouchIdentifier = 0, this.touchBoundary = d.touchBoundary || 10, this.layer = b, this.tapDelay = d.tapDelay || 200, this.tapTimeout = d.tapTimeout || 700, !a.notNeeded(b)) { 1961 for (var g = ["onMouse", "onClick", "onTouchStart", "onTouchMove", "onTouchEnd", "onTouchCancel"], h
vendor: 5,537 bytes, lines 1961-2058
1961= this, i = 0, j = g.length; j > i; i++) h[g[i]] = e(h[g[i]], h); 1962 c && (b.addEventListener("mouseover", this.onMouse, !0), b.addEventListener("mousedown", this.onMouse, !0), b.addEventListener("mouseup", this.onMouse, !0)), b.addEventListener("click", this.onClick, !0), b.addEventListener("touchstart", this.onTouchStart, !1), b.addEventListener("touchmove", this.onTouchMove, !1), b.addEventListener("touchend", this.onTouchEnd, !1), b.addEventListener("touchcancel", this.onTouchCancel, !1), Event.prototype.stopImmediatePropagation || (b.removeEventListener = function(a, c, d) { 1963 var e = Node.prototype.removeEventListener; 1964 "click" === a ? e.call(b, a, c.hijacked || c, d) : e.call(b, a, c, d) 1965 }, b.addEventListener = function(a, c, d) { 1966 var e = Node.prototype.addEventListener; 1967 "click" === a ? e.call(b, a, c.hijacked || (c.hijacked = function(a) { 1968 a.propagationStopped || c(a) 1969 }), d) : e.call(b, a, c, d) 1970 }), "function" == typeof b.onclick && (f = b.onclick, b.addEventListener("click", function(a) { 1971 f(a) 1972 }, !1), b.onclick = null) 1973 } 1974 } 1975 var b = navigator.userAgent.indexOf("Windows Phone") >= 0, 1976 c = navigator.userAgent.indexOf("Android") > 0 && !b, 1977 d = /iP(ad|hone|od)/.test(navigator.userAgent) && !b, 1978 e = d && /OS 4_\d(_\d)?/.test(navigator.userAgent), 1979 f = d && /OS [6-7]_\d/.test(navigator.userAgent), 1980 g = navigator.userAgent.indexOf("BB10") > 0; 1981 a.prototype.needsClick = function(a) { 1982 switch (a.nodeName.toLowerCase()) { 1983 case "button": 1984 case "select": 1985 case "textarea": 1986 if (a.disabled) return !0; 1987 break; 1988 case "input": 1989 if (d && "file" === a.type || a.disabled) return !0; 1990 break; 1991 case "label": 1992 case "iframe": 1993 case "video": 1994 return !0 1995 } 1996 return /\bneedsclick\b/.test(a.className) 1997 }, a.prototype.needsFocus = function(a) { 1998 switch (a.nodeName.toLowerCase()) { 1999 case "textarea": 2000 return !0; 2001 case "select": 2002 return !c; 2003 case "input": 2004 switch (a.type) { 2005 case "button": 2006 case "checkbox": 2007 case "file": 2008 case "image": 2009 case "radio": 2010 case "submit": 2011 return !1 2012 } 2013 return !a.disabled && !a.readOnly; 2014 default: 2015 return /\bneedsfocus\b/.test(a.className) 2016 } 2017 }, a.prototype.sendClick = function(a, b) { 2018 var c, d; 2019 document.activeElement && document.activeElement !== a && document.activeElement.blur(), d = b.changedTouches[0], c = document.createEvent("MouseEvents"), c.initMouseEvent(this.determineEventType(a), !0, !0, window, 1, d.screenX, d.screenY, d.clientX, d.clientY, !1, !1, !1, !1, 0, null), c.forwardedTouchEvent = !0, a.dispatchEvent(c) 2020 }, a.prototype.determineEventType = function(a) { 2021 return c && "select" === a.tagName.toLowerCase() ? "mousedown" : "click" 2022 }, a.prototype.focus = function(a) { 2023 var b; 2024 d && a.setSelectionRange && 0 !== a.type.indexOf("date") && "time" !== a.type && "month" !== a.type ? (b = a.value.length, a.setSelectionRange(b, b)) : a.focus() 2025 }, a.prototype.updateScrollParent = function(a) { 2026 var b, c; 2027 if (b = a.fastClickScrollParent, !b || !b.contains(a)) { 2028 c = a; 2029 do { 2030 if (c.scrollHeight > c.offsetHeight) { 2031 b = c, a.fastClickScrollParent = c; 2032 break 2033 } 2034 c = c.parentElement 2035 } while (c) 2036 } 2037 b && (b.fastClickLastScrollTop = b.scrollTop) 2038 }, a.prototype.getTargetElementFromEventTarget = function(a) { 2039 return a.nodeType === Node.TEXT_NODE ? a.parentNode : a 2040 }, a.prototype.onTouchStart = function(a) { 2041 var b, c, f; 2042 if (a.targetTouches.length > 1) return !0; 2043 if (b = this.getTargetElementFromEventTarget(a.target), c = a.targetTouches[0], d) { 2044 if (f = window.getSelection(), f.rangeCount && !f.isCollapsed) return !0; 2045 if (!e) { 2046 if (c.identifier && c.identifier === this.lastTouchIdentifier) return a.preventDefault(), !1; 2047 this.lastTouchIdentifier = c.identifier, this.updateScrollParent(b) 2048 } 2049 } 2050 return this.trackingClick = !0, this.trackingClickStart = a.timeStamp, this.targetElement = b, this.touchStartX = c.pageX, this.touchStartY = c.pageY, a.timeStamp - this.lastClickTime < this.tapDelay && a.preventDefault(), !0 2051 }, a.prototype.touchHasMoved = function(a) { 2052 var b = a.changedTouches[0], 2053 c = this.touchBoundary; 2054 return Math.abs(b.pageX - this.touchStartX) > c || Math.abs(b.pageY - this.touchStartY) > c ? !0 : !1 2055 }, a.prototype.onTouchMove = function(a) { 2056 return this.trackingClick ? ((this.targetElement !== this.getTargetElementFromEventTarget(a.target) || this.touchHasMoved(a)) && (this.trackingClick = !1, this.targetElement = null), !0) : !0 2057 }, a.prototype.findControl = function(a) { 2058 return void 0 !== a.control ? a.control : a.htmlFor ? document.getElementById(a.htmlFor) : a.querySelector("button, input
2058:not([type=hidden]), keygen, meter, output, progress, select, textarea") 2059 }, a.prototype.onTouchEnd = function(a) { 2060 var b, g, h, i, j, k = this.targetElement; 2061 if (!this.trackingClick) return !0; 2062 if (a.timeStamp - this.lastClickTime < this.tapDelay) return this.cancelNextClick = !0, !0; 2063 if (a.timeStamp - this.trackingClickStart > this.tapTimeout) return !0; 2064 if (this.cancelNextClick = !1, this.lastClickTime = a.timeStamp, g = this.trackingClickStart, this.trackingClick = !1, this.trackingClickStart = 0, f && (j = a.changedTouches[0], k = document.elementFromPoint(j.pageX - window.pageXOffset, j.pageY - window.pageYOffset) || k, k.fastClickScrollParent = this.targetElement.fastClickScrollParent), h = k.tagName.toLowerCase(), "label" === h) { 2065 if (b = this.findControl(k)) { 2066 if (this.focus(k), c) return !1; 2067 k = b 2068 } 2069 } else if (this.needsFocus(k)) return a.timeStamp - g > 100 || d && window.top !== window && "input" === h ? (this.targetElement = null, !1) : (this.focus(k), this.sendClick(k, a), d && "select" === h || (this.targetElement = null, a.preventDefault()), !1); 2070 return d && !e && (i = k.fastClickScrollParent, i && i.fastClickLastScrollTop !== i.scrollTop) ? !0 : (this.needsClick(k) || (a.preventDefault(), this.sendClick(k, a)), !1) 2071 }, a.prototype.onTouchCancel = function() { 2072 this.trackingClick = !1, this.targetElement = null 2073 }, a.prototype.onMouse = function(a) { 2074 return this.targetElement ? a.forwardedTouchEvent ? !0 : a.cancelable && (!this.needsClick(this.targetElement) || this.cancelNextClick) ? (a.stopImmediatePropagation ? a.stopImmediatePropagation() : a.propagationStopped = !0, a.stopPropagation(), a.preventDefault(), !1) : !0 : !0 2075 }, a.prototype.onClick = function(a) { 2076 var b; 2077 return this.trackingClick ? (this.targetElement = null, this.trackingClick = !1, !0) : "submit" === a.target.type && 0 === a.detail ? !0 : (b = this.onMouse(a), b || (this.targetElement = null), b) 2078 }, a.prototype.destroy = function() { 2079 var a = this.layer; 2080 c && (a.removeEventListener("mouseover", this.onMouse, !0), a.removeEventListener("mousedown", this.onMouse, !0), a.removeEventListener("mouseup", this.onMouse, !0)), a.removeEventListener("click", this.onClick, !0), a.removeEventListener("touchstart", this.onTouchStart, !1), a.removeEventListener("touchmove", this.onTouchMove, !1), a.removeEventListener("touchend", this.onTouchEnd, !1), a.removeEventListener("touchcancel", this.onTouchCancel, !1) 2081 }, a.notNeeded = function(a) { 2082 var b, d, e, f; 2083 if ("undefined" == typeof window.ontouchstart) return !0; 2084 if (d = +(/Chrome\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1]) { 2085 if (!c) return !0; 2086 if (b = document.querySelector("meta[name=viewport]")) { 2087 if (-1 !== b.content.indexOf("user-scalable=no")) return !0; 2088 if (d > 31 && document.documentElement.scrollWidth <= window.outerWidth) return !0 2089 } 2090 } 2091 if (g && (e = navigator.userAgent.match(/Version\/([0-9]*)\.([0-9]*)/), e[1] >= 10 && e[2] >= 3 && (b = document.querySelector("meta[name=viewport]")))) { 2092 if (-1 !== b.content.indexOf("user-scalable=no")) return !0; 2093 if (document.documentElement.scrollWidth <= window.outerWidth) return !0 2094 } 2095 return "none" === a.style.msTouchAction || "manipulation" === a.style.touchAction ? !0 : (f = +(/Firefox\/([0-9]+)/.exec(navigator.userAgent) || [, 0])[1], f >= 27 && (b = document.querySelector("meta[name=viewport]"), b && (-1 !== b.content.indexOf("user-scalable=no") || document.documentElement.scrollWidth <= window.outerWidth)) ? !0 : "none" === a.style.touchAction || "manipulation" === a.style.touchAction ? !0 : !1) 2096 }, a.attach = function(b, c) { 2097 return new a(b, c) 2098 }, "function" == typeof define && "object" == typeof define.amd && define.amd ? define(function() { 2099 return a 2100 }) : "undefined" != typeof module && module.exports ? (module.exports = a.attach, module.exports.FastClick = a) : window.FastClick = a 2101}(), $(function() { 2102 function a(a) { 2103 return a.replace(/[-_]([a-z])/g, function(a) { 2104 return a[1].toUpperCase() 2105 }) 2106 } 2107 2108 function b(b, c) { 2109 return delete c.ride, delete c.toggle, $.each(c, function(d, e) { 2110 var f = a(d); 2111 b[f] = c[d] 2112 }), b 2113 } 2114 $('[data-toggle="popover"]').each(function() { 2115 var a = { 2116 html: !0 2117 }, 2118 c = $(this).data(), 2119 c = b(a, c); 2120 $(this).popover(c) 2121 }), $.fn.owlCarousel && $('[data-ride="owl-carousel"]').each(function() { 2122 var a = { 2123 autoplaySpeed: 750, 2124 dotsSpeed: 450, 2125 autoplayTimeout: 5e3, 2126 autoplayHoverPause: !0, 2127 autoplay: !1, 2128 dots: !1, 2129 navText: ['<i class="fa fa-angle-left"></i>', '<i class="fa fa-angle-right"></i>'], 2130 nav: !0, 2131 items: 1, 2132 loop: !0 2133 }, 2134 c = $(this).data(), 2135 c = b(a, c); 2136 $(this).owlCarousel(c) 2137 }), $(".panel-collapse").on("show.bs.collapse", function() { 2138 var a = $(this).attr("id"); 2139 $('[href="#' + a + '"]').addClass("active") 2140 }), $(".panel-collapse").on("hide.bs.collapse", function() { 2141 var a = $(this).attr("id"); 2142 $('[href="#' + a + '"]').removeClass("active") 2143 }), $(".line-collapse").on("show.bs.collapse", function() { 2144 $(".line-collapse.in").collapse("hide") 2145 }) 2146});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.