1/* 2* Facebox (for jQuery) 3* version: 1.2 (05/05/2008) 4* @requires jQuery v1.2 or later 5* 6* Licensed under the MIT: 7* http://www.opensource.org/licenses/mit-license.php 8* 9* Copyright 2007, 2008 Chris Wanstrath [ [email protected] ] 10* 11*/ 12 13$(document).ready(function() { 14 $('#CreditCardPayment_TD').prepend($('.Heading_CreditCardPayment img.steppay').eq(0)); 15}); 16 17( function($) { 18 $.facebox = function(data, klass) { 19 $.facebox.loading() 20 21 if (data.ajax) 22 fillFaceboxFromAjax(data.ajax) 23 else if (data.image) 24 fillFaceboxFromImage(data.image) 25 else if (data.div) 26 fillFaceboxFromHref(data.div) 27 else if ($.isFunction(data)) 28 data.call($) 29 else 30 $.facebox.reveal(data, klass) 31 } 32 33 /* 34 * Public, $.facebox methods 35 */ 36 37 $.extend($.facebox, { 38 /* 39 settings : { 40 opacity : 0.75, 41 overlay : true, 42 loadingImage : '/images/skins/milkywalk/facebox/loading.gif', 43 closeImage : '/images/skins/milkywalk/facebox/close.png', 44 imageTypes : [ 'png', 'jpg', 'jpeg', 'gif' ], 45 faceboxHtml : '\ 46 <div id="facebox" style="display:none;"> \ 47 <div class="popup"> \ 48 <table> \ 49 <tbody> \ 50 <tr> \ 51 <td class="body"> \ 52 <div class="content"> \ 53 </div> \ 54 <div class="footer"> \ 55 <a href="#" class="close"> \ 56 <img src="/images/skins/bangsoe/new/dk/facebox/close.png" title="close" class="close_image" /> \ 57 </a> \ 58 </div> \ 59 </td> \ 60 </tr> \ 61 </tbody> \ 62 </table> \ 63 </div> \ 64 </div>' 65 }, 66 */ 67 settings : { 68 opacity : 0.75, 69 overlay : true, 70 loadingImage : '', 71 closeImage : '', 72 imageTypes : [ 'png', 'jpg', 'jpeg', 'gif' ], 73 faceboxHtml : '' 74 }, 75 76 loading : function() { 77 init() 78 if ($('#facebox .loading').length == 1) 79 return true 80 showOverlay() 81 82 $('#facebox .content').empty() 83 $('#facebox .body') 84 .children() 85 .hide() 86 .end() 87 .append( 88 '<div class="loading"><img src="' + $.facebox.settings.loadingImage + '"/></div>'); 89 90 $('#facebox').css({ 91 top : getPageScroll()[1] + (getPageHeight() / 2) - ($('#facebox').height() / 2), 92 left : (getPageWidth() / 2) - ($('#facebox').width() / 2) 93 }).show(); 94 95 $(document).bind('keydown.facebox', function(e) { 96 if (e.keyCode == 27) 97 $.facebox.close() 98 return true 99 }) 100 $(document).trigger('loading.facebox') 101 }, 102 103 reveal : function(data, klass) { 104 $(document).trigger('beforeReveal.facebox') 105 if (klass) 106 $('#facebox .content').addClass(klass) 107 $('#facebox .content').append(data) 108 $('#facebox .loading').remove() 109 $('#facebox .body').children().fadeIn('normal') 110 $('#facebox').css('left', $(window).width() / 2 - ($('#facebox table').width() / 2)); 111 $(document).trigger('reveal.facebox').trigger('afterReveal.facebox') 112 }, 113 114 close : function() { 115 $(document).trigger('close.facebox') 116 return false 117 } 118 }); 119 120 /* 121 * Public, $.fn methods 122 */ 123 124 $.fn.facebox = function(settings) { 125 init(settings) 126 127 function clickHandler() { 128 $.facebox.loading(true) 129 130 // support for rel="facebox.inline_popup" syntax, to add a class 131 // also supports deprecated "facebox[.inline_popup]" syntax 132 var klass = this.rel.match(/facebox\[?\.(\w+)\]?/) 133 if (klass) 134 klass = klass[1] 135 136 fillFaceboxFromHref(this.href, klass) 137 return false 138 } 139 140 return this.click(clickHandler) 141 } 142 143 /* 144 * Private methods 145 */ 146 147 // called one time to setup facebox on this page 148 function init(settings) { 149 if ($.facebox.settings.inited) 150 return true 151 else 152 $.facebox.settings.inited = true 153 154 $(document).trigger('init.facebox') 155 makeCompatible() 156 157 var imageTypes = $.facebox.settings.imageTypes.join('|') 158 $.facebox.settings.imageTypesRegexp = new RegExp( 159 '\.' + imageTypes + '$', 'i') 160 161 if (settings) 162 $.extend($.facebox.settings, settings) 163 $('body').append($.facebox.settings.faceboxHtml) 164 165 var preload = [ new Image(), new Image() ] 166 preload[0].src = $.facebox.settings.closeImage 167 preload[1].src = $.facebox.settings.loadingImage 168 169 $('#facebox').find('.b:first, .bl, .br, .tl, .tr').each( 170 function() { 171 preload.push(new Image()) 172 preload.slice(-1).src = $(this).css('background-image') 173 .replace(/url\((.+)\)/, '$1') 174 }) 175 176 $('#facebox .close').click($.facebox.close) 177 $('#facebox .close_image').attr('src', $.facebox.settings.closeImage) 178 } 179 180 // getPageScroll() by quirksmode.com 181 function getPageScroll() { 182 var xScroll, yScroll; 183 if (self.pageYOffset) { 184 yScroll = self.pageYOffset; 185 xScroll = self.pageXOffset; 186 } else if (document.documentElement 187 && document.documentElement.scrollTop) { // Explorer 6 Strict 188 yScroll = document.documentElement.scrollTop; 189 xScroll = document.documentElement.scrollLeft; 190 } else if (document.body) {// all other Explorers 191 yScroll = document.body.scrollTop; 192 xScroll = document.body.scrollLeft; 193 } 194 return new Array(xScroll, yScroll) 195 } 196 197 // Adapted from getPageSize() by quirksmode.com 198 function getPageHeight() { 199 var windowHeight
200 if (self.innerHeight) { // all except Explorer 201 windowHeight = self.innerHeight; 202 } else if (document.documentElement 203 && document.documentElement.clientHeight) { // Explorer 6 Strict Mode 204 windowHeight = document.documentElement.clientHeight; 205 } else if (document.body) { // other Explorers 206 windowHeight = document.body.clientHeight; 207 } 208 return windowHeight 209 } 210 211 function getPageWidth() { 212 var windowWidth = 0; 213 if( typeof( window.innerWidth ) == 'number' ) { 214 windowWidth = window.innerWidth; 215 } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) { 216 windowWidth = document.documentElement.clientWidth; 217 } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) { 218 windowWidth = document.body.clientWidth; 219 } 220 return windowWidth; 221 } 222 223 // Backwards compatibility 224 function makeCompatible() { 225 var $s = $.facebox.settings 226 227 $s.loadingImage = $s.loading_image || $s.loadingImage 228 $s.closeImage = $s.close_image || $s.closeImage 229 $s.imageTypes = $s.image_types || $s.imageTypes 230 $s.faceboxHtml = $s.facebox_html || $s.faceboxHtml 231 } 232 233 // Figures out what you want to display and displays it 234 // formats are: 235 // div: #id 236 // image: blah.extension 237 // ajax: anything else 238 function fillFaceboxFromHref(href, klass) { 239 // div 240 if (href.match(/#/)) { 241 var url = window.location.href.split('#')[0] 242 var target = href.replace(url, '') 243 $.facebox.reveal($(target).clone().show(), klass) 244 245 // image 246 } else if (href.match($.facebox.settings.imageTypesRegexp)) { 247 fillFaceboxFromImage(href, klass) 248 // ajax 249 } else { 250 fillFaceboxFromAjax(href, klass) 251 } 252} 253 254function fillFaceboxFromImage(href, klass) { 255 var image = new Image() 256 image.onload = function() { 257 $.facebox.reveal( 258 '<div class="image"><img src="' + image.src + '" /></div>', 259 klass) 260 } 261 image.src = href 262} 263 264function fillFaceboxFromAjax(href, klass) { 265 $.get(href, function(data) { 266 $.facebox.reveal(data, klass) 267 }) 268} 269 270function skipOverlay() { 271 return $.facebox.settings.overlay == false 272 || $.facebox.settings.opacity === null 273} 274 275function showOverlay() { 276 if (skipOverlay()) { 277 return; 278 } 279 280 if ($('facebox_overlay').length == 0) 281 $("body").append( 282 '<div id="facebox_overlay" class="facebox_hide"></div>') 283 284 $('#facebox_overlay').hide().addClass("facebox_overlayBG").css( 285 'opacity', $.facebox.settings.opacity).click( function() { 286 $(document).trigger('close.facebox') 287 }).fadeIn(100) 288 return false 289} 290 291function hideOverlay() { 292 if (skipOverlay()) { 293 return; 294 } 295 296 $('#facebox_overlay').fadeOut(100, function() { 297 $("#facebox_overlay").removeClass("facebox_overlayBG") 298 $("#facebox_overlay").addClass("facebox_hide") 299 $("#facebox_overlay").remove() 300 }) 301 302 return false 303} 304 305/* 306* Bindings 307*/ 308 309$(document).bind('close.facebox', function() { 310 $(document).unbind('keydown.facebox') 311 $('#facebox').fadeOut( function() { 312 $('#facebox .content').removeClass().addClass('content') 313 hideOverlay() 314 $('#facebox .loading').remove() 315 }) 316}) 317 318})(jQuery); 319 320 321 322 323function FaceboxDandomain() { 324 this._layouts = new Array(); 325} 326FaceboxDandomain.prototype.addLayout = function(layout) { 327 this._layouts.push(layout); 328} 329FaceboxDandomain.prototype.addLayouts = function(layouts) { 330 for(var i in layouts) { 331 this.addLayout(layouts[i]); 332 } 333} 334FaceboxDandomain.prototype.toggleShow = function(elm,id) { 335 if(elm.checked) { 336 $.cookie('hideFacebox' + id, '1', { expires: 365, path: '/' }); 337 } else { 338 $.cookie('hideFacebox' + id, '0', { expires: 365, path: '/' }); 339 } 340} 341FaceboxDandomain.prototype.alert = function(str) { 342 oldstr=str; 343 for (var i in this._layouts) { 344 if ((!this._layouts[i].trigger || eval(this._layouts[i].trigger)) || str === this._layouts[i].str) { 345 if (this._layouts[i].realContent) str = this._layouts[i].realContent; 346 var cookieVal = $.cookie('hideFacebox' + i); 347 if(cookieVal) return; 348 349 if(this._layouts[i].preCallback) { 350 this._layouts[i].html = this._layouts[i].preCallback(this._layouts[i].html); 351 } 352 $.facebox.settings.faceboxHtml = this._layouts[i].html; 353 354 $('#facebox').html(this._layouts[i].inhtml); 355 var preload=[new Image(),new Image()];preload[0].src=$.facebox.settings.closeImage;preload[1].src=$.facebox.settings.loadingImage; 356 357 $('#facebox').find('.b:first, .bl, .br, .tl, .tr').each( 358 function(){preload.push(new Image());preload.slice(-1).src=$(this).css('background-image').replace(/url\((.+)\)/, '$1');}) 359 360 $('#facebox .close').click($.facebox.close); 361 $('#facebox .close_image').attr('src', $.facebox.settings.closeImage); 362 $(document).trigger('beforeReveal.facebox'); 363 $('#facebox .content').append(str); 364 $('#facebox .loading').remove(); 365 $('#facebox .body').children().fadeIn('normal'); 366 $('#facebox').css('left',$(window).width()/2-($('#facebox table').width()/2)); 367 $(document).trigger('reveal.facebox').trigger('afterReveal.facebox'); 368 break; 369 } 370 } 371 $.facebox.loading(); 372 $.facebox(str); 373} 374var faceboxDandomain = new FaceboxDandomain(); 375 376window.alert = function(str) { 377 faceboxDandomain.alert(str); 378} 379 380var layouts = new Array(); 381 382// LÃG I INDKÃBSKURVEN 383layouts[1] = {}; 384layouts[1].html = '\ 385 <div id="facebox" style="display:none;"> \ 386 <div class="popup"> \ 387 <div class="content-container"> \ 388 <div class="facebox-header">' + faceboxLabels['addedToBasket'] + '</div> \ 389 <div id="freeThresholdText">' + faceboxLabels['freeDelivery1'] + '<span id="freeThreshold">x</span>' + faceboxLabels['freeDelivery2'] + '</div> \ 390 <div class="footer"> \ 391 <a href="#" class="close button grey">' + faceboxLabels['continueShopping'] + '</a> \ 392 <a href="/shop/showbasket.html" class="button">' + faceboxLabels['showBasket'] + '</a> \ 393 </div> \ 394 <!--<div class="dont-show"><input type="checkbox" onclick="faceboxDandomain.toggleShow(this,0)" /> <span>' + faceboxLabels['notShowAgain'] + '</span></span>--> \ 395 </div> \ 396 </div> \ 397 </div>'; 398layouts[1].str = "advanced"; 399layouts[1].preCallback = function(str) { 400 var totalprice = 0; 401 var shippingfee = 0; 402 //var totalprice = Math.floor(parseFloat($('#totalprice').text().replace(".", "").replace(",", "."))); 403 //var shippingfee = Math.floor(parseFloat($('#shippingfee').text().replace(".", "").replace(",", "."))); 404 405 if (isNaN(shippingfee)) shippingfee = 0; 406 var freeThreshold = gratislevering - totalprice + shippingfee; 407 408 str = $(str); 409 410 if(freeThreshold > 0) { 411 $("#freeThreshold", str).html(freeThreshold); 412 } else { 413 if (1 < 0) { 414 $("#freeThresholdText", str).html(popuptext + '<div class="freeDeliveryPopupText">' + freeDeliveryPopupText + '</div>'); 415 } else { 416 $("#freeThresholdText", str).html(popuptext); 417 } 418 } 419 return str; 420} 421layouts[1].trigger = "false === true"; 422 423// STANDARD 424layouts[100] = {}; 425layouts[100].standardHtml = '<div class="popup"> \ 426 <div class="content-container obs"> \ 427 <div class="facebox-header obs">' + faceboxLabels['header'] + '</div> \ 428 <div class="content"></div> \ 429 <div class="footer"> \ 430 <a href="#" class="close button grey">' + faceboxLabels['close'] + '</a> \ 431 </div> \ 432 </div> \ 433 </div>'; 434layouts[100].html = '<div id="facebox" style="display:none;">'+layouts[100].standardHtml+'</div>'; 435layouts[100].inhtml = layouts[100].standardHtml; 436 437faceboxDandomain.addLayouts(layouts);
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.