Fehler bei der Bewertung von Galerie-Bildern behoben
This commit is contained in:
		| @@ -198,7 +198,7 @@ class RateItArticle extends RateItFrontend { | |||||||
| 							continue; | 							continue; | ||||||
| 						} | 						} | ||||||
| 				 | 				 | ||||||
| 						$this->addRatingForImage($arrRating, $arrGallery['id'], $objFile->id, $objFile->path); | 					   $this->addRatingForImage($arrRating, $arrGallery['id'], $objFiles->id, $objFile->path); | ||||||
| 					} | 					} | ||||||
| 					// Folders | 					// Folders | ||||||
| 					else { | 					else { | ||||||
| @@ -224,7 +224,7 @@ class RateItArticle extends RateItFrontend { | |||||||
| 								continue; | 								continue; | ||||||
| 							} | 							} | ||||||
| 				 | 				 | ||||||
| 							$this->addRatingForImage($arrRating, $arrGallery['id'], $objSubfiles->id, $objSubfiles->path); | 						   $this->addRatingForImage($arrRating, $arrGallery['id'], $objSubfiles->id, $objSubfiles->path); | ||||||
| 						} | 						} | ||||||
| 					} | 					} | ||||||
| 				} | 				} | ||||||
|   | |||||||
| @@ -92,7 +92,7 @@ class tl_content_rateit extends rateit\DcaHelper { | |||||||
| 							continue; | 							continue; | ||||||
| 						} | 						} | ||||||
| 				 | 				 | ||||||
| 						$this->insertOrUpdateRatingItemGallery($dc, $type, $objFile->name, $objFile->id, ($dc->activeRecord->rateit_active ? '1' : '')); | 						$this->insertOrUpdateRatingItemGallery($dc, $type, $objFile->name, $objFiles->id, ($dc->activeRecord->rateit_active ? '1' : '')); | ||||||
| 					} | 					} | ||||||
| 					// Folders | 					// Folders | ||||||
| 					else { | 					else { | ||||||
| @@ -131,7 +131,11 @@ class tl_content_rateit extends rateit\DcaHelper { | |||||||
|  |  | ||||||
| 	public function delete(\DC_Table $dc) { | 	public function delete(\DC_Table $dc) { | ||||||
| 		if ($dc->activeRecord->type == "gallery") { | 		if ($dc->activeRecord->type == "gallery") { | ||||||
| 			$objFiles = \FilesModel::findMultipleByUuids(deserialize($dc->activeRecord->multiSRC)); | 			if (version_compare(VERSION, '3.2', '>=')) { | ||||||
|  | 				$objFiles = \FilesModel::findMultipleByUuids(deserialize($dc->activeRecord->multiSRC)); | ||||||
|  | 			} else { | ||||||
|  | 				$objFiles = \FilesModel::findMultipleByIds(deserialize($dc->activeRecord->multiSRC)); | ||||||
|  | 			} | ||||||
|  |  | ||||||
| 			// Get all images | 			// Get all images | ||||||
| 			while ($objFiles->next()) { | 			while ($objFiles->next()) { | ||||||
| @@ -143,13 +147,17 @@ class tl_content_rateit extends rateit\DcaHelper { | |||||||
| 						continue; | 						continue; | ||||||
| 					} | 					} | ||||||
| 					 | 					 | ||||||
| 					$rkey = $dc->activeRecord->id.'_'.$objFile->id; | 					$rkey = $dc->activeRecord->id.'_'.$objFiles->id; | ||||||
| 					$this->Database->prepare("DELETE FROM tl_rateit_items WHERE rkey=? and typ=?") | 					$this->Database->prepare("DELETE FROM tl_rateit_items WHERE rkey=? and typ=?") | ||||||
| 					               ->execute($rkey, 'galpic'); | 					               ->execute($rkey, 'galpic'); | ||||||
| 				} | 				} | ||||||
| 				// Folders | 				// Folders | ||||||
| 				else { | 				else { | ||||||
| 					$objSubfiles = \FilesModel::findByPid($objFiles->uuid); | 					if (version_compare(VERSION, '3.2', '>=')) { | ||||||
|  | 						$objSubfiles = \FilesModel::findByPid($objFiles->uuid); | ||||||
|  | 					} else { | ||||||
|  | 						$objSubfiles = \FilesModel::findByPid($objFiles->id); | ||||||
|  | 					} | ||||||
| 			 | 			 | ||||||
| 					if ($objSubfiles === null) { | 					if ($objSubfiles === null) { | ||||||
| 						continue; | 						continue; | ||||||
| @@ -167,7 +175,7 @@ class tl_content_rateit extends rateit\DcaHelper { | |||||||
| 							continue; | 							continue; | ||||||
| 						} | 						} | ||||||
| 			 | 			 | ||||||
| 						$rkey = $dc->activeRecord->id.'_'.$objFile->id; | 						$rkey = $dc->activeRecord->id.'_'.$objSubfiles->id; | ||||||
| 						$this->Database->prepare("DELETE FROM tl_rateit_items WHERE rkey=? and typ=?") | 						$this->Database->prepare("DELETE FROM tl_rateit_items WHERE rkey=? and typ=?") | ||||||
| 						               ->execute($rkey, 'galpic'); | 						               ->execute($rkey, 'galpic'); | ||||||
| 					} | 					} | ||||||
|   | |||||||
							
								
								
									
										523
									
								
								public/js/jquery/colorbox/colorbox-rateit.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										523
									
								
								public/js/jquery/colorbox/colorbox-rateit.js
									
									
									
									
										vendored
									
									
								
							| @@ -1,7 +1,7 @@ | |||||||
| /*! | /*! | ||||||
| 	Colorbox v1.4.31 - 2013-09-25 | 	Colorbox v1.5.8 - 2014-04-15 | ||||||
| 	jQuery lightbox and modal window plugin | 	jQuery lightbox and modal window plugin | ||||||
| 	(c) 2013 Jack Moore - http://www.jacklmoore.com/colorbox | 	(c) 2014 Jack Moore - http://www.jacklmoore.com/colorbox | ||||||
| 	license: http://www.opensource.org/licenses/mit-license.php | 	license: http://www.opensource.org/licenses/mit-license.php | ||||||
| */ | */ | ||||||
| (function ($, document, window) { | (function ($, document, window) { | ||||||
| @@ -29,9 +29,6 @@ | |||||||
| 		maxHeight: false, | 		maxHeight: false, | ||||||
| 		scalePhotos: true, | 		scalePhotos: true, | ||||||
| 		scrolling: true, | 		scrolling: true, | ||||||
| 		href: false, |  | ||||||
| 		title: false, |  | ||||||
| 		rel: false, |  | ||||||
| 		opacity: 0.9, | 		opacity: 0.9, | ||||||
| 		preloading: true, | 		preloading: true, | ||||||
| 		className: false, | 		className: false, | ||||||
| @@ -54,7 +51,7 @@ | |||||||
| 		slideshowSpeed: 2500, | 		slideshowSpeed: 2500, | ||||||
| 		slideshowStart: "start slideshow", | 		slideshowStart: "start slideshow", | ||||||
| 		slideshowStop: "stop slideshow", | 		slideshowStop: "stop slideshow", | ||||||
| 		photoRegex: /\.(gif|png|jp(e|g|eg)|bmp|ico|webp)((#|\?).*)?$/i, | 		photoRegex: /\.(gif|png|jp(e|g|eg)|bmp|ico|webp|jxr|svg)((#|\?).*)?$/i, | ||||||
|  |  | ||||||
| 		// alternate image paths for high-res displays | 		// alternate image paths for high-res displays | ||||||
| 		retinaImage: false, | 		retinaImage: false, | ||||||
| @@ -78,9 +75,21 @@ | |||||||
| 		onLoad: false, | 		onLoad: false, | ||||||
| 		onComplete: false, | 		onComplete: false, | ||||||
| 		onCleanup: false, | 		onCleanup: false, | ||||||
| 		onClosed: false | 		onClosed: false, | ||||||
|  |  | ||||||
|  | 		rel: function() { | ||||||
|  | 			return this.rel; | ||||||
|  | 		}, | ||||||
|  | 		href: function() { | ||||||
|  | 			// using this.href would give the absolute url, when the href may have been inteded as a selector (e.g. '#container') | ||||||
|  | 			return $(this).attr('href'); | ||||||
|  | 		}, | ||||||
|  | 		title: function() { | ||||||
|  | 			return this.title; | ||||||
|  | 		} | ||||||
| 	}, | 	}, | ||||||
|  |  | ||||||
|  |  | ||||||
| 	// Abstracting the HTML and event identifiers for easy rebranding | 	// Abstracting the HTML and event identifiers for easy rebranding | ||||||
| 	colorbox = 'colorbox', | 	colorbox = 'colorbox', | ||||||
| 	prefix = 'cbox', | 	prefix = 'cbox', | ||||||
| @@ -120,7 +129,7 @@ | |||||||
| 	$ratingHover,  | 	$ratingHover,  | ||||||
| 	$ratingDescription, | 	$ratingDescription, | ||||||
| 	$groupControls, | 	$groupControls, | ||||||
| 	$events = $('<a/>'), | 	$events = $('<a/>'), // $({}) would be prefered, but there is an issue with jQuery 1.4.2 | ||||||
| 	 | 	 | ||||||
| 	// Variables for cached values or use across multiple functions | 	// Variables for cached values or use across multiple functions | ||||||
| 	settings, | 	settings, | ||||||
| @@ -128,7 +137,6 @@ | |||||||
| 	interfaceWidth, | 	interfaceWidth, | ||||||
| 	loadedHeight, | 	loadedHeight, | ||||||
| 	loadedWidth, | 	loadedWidth, | ||||||
| 	element, |  | ||||||
| 	index, | 	index, | ||||||
| 	photo, | 	photo, | ||||||
| 	open, | 	open, | ||||||
| @@ -137,7 +145,6 @@ | |||||||
| 	loadingTimer, | 	loadingTimer, | ||||||
| 	publicMethod, | 	publicMethod, | ||||||
| 	div = "div", | 	div = "div", | ||||||
| 	className, |  | ||||||
| 	requests = 0, | 	requests = 0, | ||||||
| 	previousCSS = {}, | 	previousCSS = {}, | ||||||
| 	init; | 	init; | ||||||
| @@ -167,6 +174,38 @@ | |||||||
| 		return window.innerHeight ? window.innerHeight : $(window).height(); | 		return window.innerHeight ? window.innerHeight : $(window).height(); | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | 	function Settings(element, options) { | ||||||
|  | 		if (options !== Object(options)) { | ||||||
|  | 			options = {}; | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  | 		this.cache = {}; | ||||||
|  | 		this.el = element; | ||||||
|  |  | ||||||
|  | 		this.value = function(key) { | ||||||
|  | 			var dataAttr; | ||||||
|  |  | ||||||
|  | 			if (this.cache[key] === undefined) { | ||||||
|  | 				dataAttr = $(this.el).attr('data-cbox-'+key); | ||||||
|  |  | ||||||
|  | 				if (dataAttr !== undefined) { | ||||||
|  | 					this.cache[key] = dataAttr; | ||||||
|  | 				} else if (options[key] !== undefined) { | ||||||
|  | 					this.cache[key] = options[key]; | ||||||
|  | 				} else if (defaults[key] !== undefined) { | ||||||
|  | 					this.cache[key] = defaults[key]; | ||||||
|  | 				} | ||||||
|  | 			} | ||||||
|  |  | ||||||
|  | 			return this.cache[key]; | ||||||
|  | 		}; | ||||||
|  |  | ||||||
|  | 		this.get = function(key) { | ||||||
|  | 			var value = this.value(key); | ||||||
|  | 			return $.isFunction(value) ? value.call(this.el, this) : value; | ||||||
|  | 		}; | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	// Determine the next and previous members in a group. | 	// Determine the next and previous members in a group. | ||||||
| 	function getIndex(increment) { | 	function getIndex(increment) { | ||||||
| 		var | 		var | ||||||
| @@ -184,62 +223,55 @@ | |||||||
| 	// Checks an href to see if it is a photo. | 	// Checks an href to see if it is a photo. | ||||||
| 	// There is a force photo option (photo: true) for hrefs that cannot be matched by the regex. | 	// There is a force photo option (photo: true) for hrefs that cannot be matched by the regex. | ||||||
| 	function isImage(settings, url) { | 	function isImage(settings, url) { | ||||||
| 		return settings.photo || settings.photoRegex.test(url); | 		return settings.get('photo') || settings.get('photoRegex').test(url); | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	function retinaUrl(settings, url) { | 	function retinaUrl(settings, url) { | ||||||
| 		return settings.retinaUrl && window.devicePixelRatio > 1 ? url.replace(settings.photoRegex, settings.retinaSuffix) : url; | 		return settings.get('retinaUrl') && window.devicePixelRatio > 1 ? url.replace(settings.get('photoRegex'), settings.get('retinaSuffix')) : url; | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	function trapFocus(e) { | 	function trapFocus(e) { | ||||||
| 		if ('contains' in $box[0] && !$box[0].contains(e.target)) { | 		if ('contains' in $box[0] && !$box[0].contains(e.target) && e.target !== $overlay[0]) { | ||||||
| 			e.stopPropagation(); | 			e.stopPropagation(); | ||||||
| 			$box.focus(); | 			$box.focus(); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	// Assigns function results to their respective properties | 	function setClass(str) { | ||||||
| 	function makeSettings() { | 		if (setClass.str !== str) { | ||||||
| 		var i, | 			$box.add($overlay).removeClass(setClass.str).addClass(str); | ||||||
| 			data = $.data(element, colorbox); | 			setClass.str = str; | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 		if (data == null) { | 	function getRelated(rel) { | ||||||
| 			settings = $.extend({}, defaults); | 		index = 0; | ||||||
| 			if (console && console.log) { | 		 | ||||||
| 				console.log('Error: cboxElement missing settings object'); | 		if (rel && rel !== false) { | ||||||
|  | 			$related = $('.' + boxElement).filter(function () { | ||||||
|  | 				var options = $.data(this, colorbox); | ||||||
|  | 				var settings = new Settings(this, options); | ||||||
|  | 				return (settings.get('rel') === rel); | ||||||
|  | 			}); | ||||||
|  | 			index = $related.index(settings.el); | ||||||
|  | 			 | ||||||
|  | 			// Check direct calls to Colorbox. | ||||||
|  | 			if (index === -1) { | ||||||
|  | 				$related = $related.add(settings.el); | ||||||
|  | 				index = $related.length - 1; | ||||||
| 			} | 			} | ||||||
| 		} else { | 		} else { | ||||||
| 			settings = $.extend({}, data); | 			$related = $(settings.el); | ||||||
| 		} |  | ||||||
| 		 |  | ||||||
| 		for (i in settings) { |  | ||||||
| 			if ($.isFunction(settings[i]) && i.slice(0, 2) !== 'on') { // checks to make sure the function isn't one of the callbacks, they will be handled at the appropriate time. |  | ||||||
| 				settings[i] = settings[i].call(element); |  | ||||||
| 			} |  | ||||||
| 		} |  | ||||||
| 		 |  | ||||||
| 		settings.rel = settings.rel || element.rel || $(element).data('rel') || 'nofollow'; |  | ||||||
| 		settings.href = settings.href || $(element).attr('href'); |  | ||||||
| 		settings.title = settings.title || element.title; |  | ||||||
| 		 |  | ||||||
| 		if (typeof settings.href === "string") { |  | ||||||
| 			settings.href = $.trim(settings.href); |  | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	function trigger(event, callback) { | 	function trigger(event) { | ||||||
| 		// for external use | 		// for external use | ||||||
| 		$(document).trigger(event); | 		$(document).trigger(event); | ||||||
|  |  | ||||||
| 		// for internal use | 		// for internal use | ||||||
| 		$events.trigger(event); | 		$events.triggerHandler(event); | ||||||
|  |  | ||||||
| 		if ($.isFunction(callback)) { |  | ||||||
| 			callback.call(element); |  | ||||||
| 		} |  | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  |  | ||||||
| 	var slideshow = (function(){ | 	var slideshow = (function(){ | ||||||
| 		var active, | 		var active, | ||||||
| 			className = prefix + "Slideshow_", | 			className = prefix + "Slideshow_", | ||||||
| @@ -251,15 +283,15 @@ | |||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		function set() { | 		function set() { | ||||||
| 			if (settings.loop || $related[index + 1]) { | 			if (settings.get('loop') || $related[index + 1]) { | ||||||
| 				clear(); | 				clear(); | ||||||
| 				timeOut = setTimeout(publicMethod.next, settings.slideshowSpeed); | 				timeOut = setTimeout(publicMethod.next, settings.get('slideshowSpeed')); | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		function start() { | 		function start() { | ||||||
| 			$slideshow | 			$slideshow | ||||||
| 				.html(settings.slideshowStop) | 				.html(settings.get('slideshowStop')) | ||||||
| 				.unbind(click) | 				.unbind(click) | ||||||
| 				.one(click, stop); | 				.one(click, stop); | ||||||
|  |  | ||||||
| @@ -278,7 +310,7 @@ | |||||||
| 				.unbind(event_load, clear); | 				.unbind(event_load, clear); | ||||||
|  |  | ||||||
| 			$slideshow | 			$slideshow | ||||||
| 				.html(settings.slideshowStart) | 				.html(settings.get('slideshowStart')) | ||||||
| 				.unbind(click) | 				.unbind(click) | ||||||
| 				.one(click, function () { | 				.one(click, function () { | ||||||
| 					publicMethod.next(); | 					publicMethod.next(); | ||||||
| @@ -300,15 +332,15 @@ | |||||||
|  |  | ||||||
| 		return function(){ | 		return function(){ | ||||||
| 			if (active) { | 			if (active) { | ||||||
| 				if (!settings.slideshow) { | 				if (!settings.get('slideshow')) { | ||||||
| 					$events.unbind(event_cleanup, reset); | 					$events.unbind(event_cleanup, reset); | ||||||
| 					reset(); | 					reset(); | ||||||
| 				} | 				} | ||||||
| 			} else { | 			} else { | ||||||
| 				if (settings.slideshow && $related[1]) { | 				if (settings.get('slideshow') && $related[1]) { | ||||||
| 					active = true; | 					active = true; | ||||||
| 					$events.one(event_cleanup, reset); | 					$events.one(event_cleanup, reset); | ||||||
| 					if (settings.slideshowAuto) { | 					if (settings.get('slideshowAuto')) { | ||||||
| 						start(); | 						start(); | ||||||
| 					} else { | 					} else { | ||||||
| 						stop(); | 						stop(); | ||||||
| @@ -321,65 +353,26 @@ | |||||||
| 	}()); | 	}()); | ||||||
|  |  | ||||||
|  |  | ||||||
| 	function launch(target) { | 	function launch(element) { | ||||||
|  | 		var options; | ||||||
|  |  | ||||||
| 		if (!closing) { | 		if (!closing) { | ||||||
|  |  | ||||||
| 			element = target; | 			options = $(element).data('colorbox'); | ||||||
|  |  | ||||||
| 			makeSettings(); | 			settings = new Settings(element, options); | ||||||
| 			 | 			 | ||||||
| 			$related = $(element); | 			getRelated(settings.get('rel')); | ||||||
| 			 |  | ||||||
| 			index = 0; |  | ||||||
| 			 |  | ||||||
| 			if (settings.rel !== 'nofollow') { |  | ||||||
| 				$related = $('.' + boxElement).filter(function () { |  | ||||||
| 					var data = $.data(this, colorbox), |  | ||||||
| 						relRelated; |  | ||||||
|  |  | ||||||
| 					if (data) { |  | ||||||
| 						relRelated =  $(this).data('rel') || data.rel || this.rel; |  | ||||||
| 					} |  | ||||||
| 					 |  | ||||||
| 					return (relRelated === settings.rel); |  | ||||||
| 				}); |  | ||||||
| 				index = $related.index(element); |  | ||||||
| 				 |  | ||||||
| 				// Check direct calls to Colorbox. |  | ||||||
| 				if (index === -1) { |  | ||||||
| 					$related = $related.add(element); |  | ||||||
| 					index = $related.length - 1; |  | ||||||
| 				} |  | ||||||
| 			} |  | ||||||
| 			 |  | ||||||
| 			$overlay.css({ |  | ||||||
| 				opacity: parseFloat(settings.opacity), |  | ||||||
| 				cursor: settings.overlayClose ? "pointer" : "auto", |  | ||||||
| 				visibility: 'visible' |  | ||||||
| 			}).show(); |  | ||||||
| 			 |  | ||||||
|  |  | ||||||
| 			if (className) { |  | ||||||
| 				$box.add($overlay).removeClass(className); |  | ||||||
| 			} |  | ||||||
| 			if (settings.className) { |  | ||||||
| 				$box.add($overlay).addClass(settings.className); |  | ||||||
| 			} |  | ||||||
| 			className = settings.className; |  | ||||||
|  |  | ||||||
| 			if (settings.closeButton) { |  | ||||||
| 				$close.html(settings.close).appendTo($content); |  | ||||||
| 			} else { |  | ||||||
| 				$close.appendTo('<div/>'); |  | ||||||
| 			} |  | ||||||
|  |  | ||||||
| 			if (!open) { | 			if (!open) { | ||||||
| 				open = active = true; // Prevents the page-change action from queuing up if the visitor holds down the left or right keys. | 				open = active = true; // Prevents the page-change action from queuing up if the visitor holds down the left or right keys. | ||||||
|  |  | ||||||
| 				// Show colorbox so the sizes can be calculated in older versions of jQuery | 				setClass(settings.get('className')); | ||||||
| 				$box.css({visibility:'hidden', display:'block'}); |  | ||||||
| 				 | 				 | ||||||
| 				$loaded = $tag(div, 'LoadedContent', 'width:0; height:0; overflow:hidden'); | 				// Show colorbox so the sizes can be calculated in older versions of jQuery | ||||||
|  | 				$box.css({visibility:'hidden', display:'block', opacity:''}); | ||||||
|  | 				 | ||||||
|  | 				$loaded = $tag(div, 'LoadedContent', 'width:0; height:0; overflow:hidden; visibility:hidden'); | ||||||
| 				$content.css({width:'', height:''}).append($loaded); | 				$content.css({width:'', height:''}).append($loaded); | ||||||
|  |  | ||||||
| 				// Cache values needed for size calculations | 				// Cache values needed for size calculations | ||||||
| @@ -389,18 +382,25 @@ | |||||||
| 				loadedWidth = $loaded.outerWidth(true); | 				loadedWidth = $loaded.outerWidth(true); | ||||||
|  |  | ||||||
| 				// Opens inital empty Colorbox prior to content being loaded. | 				// Opens inital empty Colorbox prior to content being loaded. | ||||||
| 				settings.w = setSize(settings.initialWidth, 'x'); | 				var initialWidth = setSize(settings.get('initialWidth'), 'x'); | ||||||
| 				settings.h = setSize(settings.initialHeight, 'y'); | 				var initialHeight = setSize(settings.get('initialHeight'), 'y'); | ||||||
|  | 				var maxWidth = settings.get('maxWidth'); | ||||||
|  | 				var maxHeight = settings.get('maxHeight'); | ||||||
|  |  | ||||||
|  | 				settings.w = (maxWidth !== false ? Math.min(initialWidth, setSize(maxWidth, 'x')) : initialWidth) - loadedWidth - interfaceWidth; | ||||||
|  | 				settings.h = (maxHeight !== false ? Math.min(initialHeight, setSize(maxHeight, 'y')) : initialHeight) - loadedHeight - interfaceHeight; | ||||||
|  |  | ||||||
| 				$loaded.css({width:'', height:settings.h}); | 				$loaded.css({width:'', height:settings.h}); | ||||||
| 				publicMethod.position(); | 				publicMethod.position(); | ||||||
|  |  | ||||||
| 				trigger(event_open, settings.onOpen); | 				trigger(event_open); | ||||||
|  | 				settings.get('onOpen'); | ||||||
|  |  | ||||||
| 				$groupControls.add($title).hide(); | 				$groupControls.add($title).hide(); | ||||||
|  |  | ||||||
| 				$box.focus(); | 				$box.focus(); | ||||||
| 				 | 				 | ||||||
| 				if (settings.trapFocus) { | 				if (settings.get('trapFocus')) { | ||||||
| 					// Confine focus to the modal | 					// Confine focus to the modal | ||||||
| 					// Uses event capturing that is not supported in IE8- | 					// Uses event capturing that is not supported in IE8- | ||||||
| 					if (document.addEventListener) { | 					if (document.addEventListener) { | ||||||
| @@ -414,12 +414,25 @@ | |||||||
| 				} | 				} | ||||||
|  |  | ||||||
| 				// Return focus on closing | 				// Return focus on closing | ||||||
| 				if (settings.returnFocus) { | 				if (settings.get('returnFocus')) { | ||||||
| 					$events.one(event_closed, function () { | 					$events.one(event_closed, function () { | ||||||
| 						$(element).focus(); | 						$(settings.el).focus(); | ||||||
| 					}); | 					}); | ||||||
| 				} | 				} | ||||||
| 			} | 			} | ||||||
|  |  | ||||||
|  | 			$overlay.css({ | ||||||
|  | 				opacity: parseFloat(settings.get('opacity')) || '', | ||||||
|  | 				cursor: settings.get('overlayClose') ? 'pointer' : '', | ||||||
|  | 				visibility: 'visible' | ||||||
|  | 			}).show(); | ||||||
|  | 			 | ||||||
|  | 			if (settings.get('closeButton')) { | ||||||
|  | 				$close.html(settings.get('close')).appendTo($content); | ||||||
|  | 			} else { | ||||||
|  | 				$close.appendTo('<div/>'); // replace with .detach() when dropping jQuery < 1.4 | ||||||
|  | 			} | ||||||
|  |  | ||||||
| 			load(); | 			load(); | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| @@ -457,7 +470,7 @@ | |||||||
| 				$next = $('<button type="button"/>').attr({id:prefix+'Next'}), | 				$next = $('<button type="button"/>').attr({id:prefix+'Next'}), | ||||||
| 				$slideshow = $tag('button', "Slideshow"), | 				$slideshow = $tag('button', "Slideshow"), | ||||||
| 				$loadingOverlay | 				$loadingOverlay | ||||||
| 			).css({'margin-bottom': '20px'});; | 			); | ||||||
|  |  | ||||||
| 			$close = $('<button type="button"/>').attr({id:prefix+'Close'}); | 			$close = $('<button type="button"/>').attr({id:prefix+'Close'}); | ||||||
| 			 | 			 | ||||||
| @@ -479,7 +492,7 @@ | |||||||
| 				) | 				) | ||||||
| 			).find('div div').css({'float': 'left'}); | 			).find('div div').css({'float': 'left'}); | ||||||
| 			 | 			 | ||||||
| 			$loadingBay = $tag(div, false, 'position:absolute; width:9999px; visibility:hidden; display:none'); | 			$loadingBay = $tag(div, false, 'position:absolute; width:9999px; visibility:hidden; display:none; max-width:none;'); | ||||||
| 			 | 			 | ||||||
| 			$groupControls = $next.add($prev).add($current).add($slideshow); | 			$groupControls = $next.add($prev).add($current).add($slideshow); | ||||||
|  |  | ||||||
| @@ -513,7 +526,7 @@ | |||||||
| 					publicMethod.close(); | 					publicMethod.close(); | ||||||
| 				}); | 				}); | ||||||
| 				$overlay.click(function () { | 				$overlay.click(function () { | ||||||
| 					if (settings.overlayClose) { | 					if (settings.get('overlayClose')) { | ||||||
| 						publicMethod.close(); | 						publicMethod.close(); | ||||||
| 					} | 					} | ||||||
| 				}); | 				}); | ||||||
| @@ -521,11 +534,11 @@ | |||||||
| 				// Key Bindings | 				// Key Bindings | ||||||
| 				$(document).bind('keydown.' + prefix, function (e) { | 				$(document).bind('keydown.' + prefix, function (e) { | ||||||
| 					var key = e.keyCode; | 					var key = e.keyCode; | ||||||
| 					if (open && settings.escKey && key === 27) { | 					if (open && settings.get('escKey') && key === 27) { | ||||||
| 						e.preventDefault(); | 						e.preventDefault(); | ||||||
| 						publicMethod.close(); | 						publicMethod.close(); | ||||||
| 					} | 					} | ||||||
| 					if (open && settings.arrowKey && $related[1] && !e.altKey) { | 					if (open && settings.get('arrowKey') && $related[1] && !e.altKey) { | ||||||
| 						if (key === 37) { | 						if (key === 37) { | ||||||
| 							e.preventDefault(); | 							e.preventDefault(); | ||||||
| 							$prev.click(); | 							$prev.click(); | ||||||
| @@ -567,34 +580,44 @@ | |||||||
| 	// **************** | 	// **************** | ||||||
| 	 | 	 | ||||||
| 	publicMethod = $.fn[colorbox] = $[colorbox] = function (options, callback) { | 	publicMethod = $.fn[colorbox] = $[colorbox] = function (options, callback) { | ||||||
| 		var $this = this; | 		var settings; | ||||||
|  | 		var $obj = this; | ||||||
|  |  | ||||||
| 		options = options || {}; | 		options = options || {}; | ||||||
|  |  | ||||||
|  | 		if ($.isFunction($obj)) { // assume a call to $.colorbox | ||||||
|  | 			$obj = $('<a/>'); | ||||||
|  | 			options.open = true; | ||||||
|  | 		} else if (!$obj[0]) { // colorbox being applied to empty collection | ||||||
|  | 			return $obj; | ||||||
|  | 		} | ||||||
|  |  | ||||||
|  |  | ||||||
|  | 		if (!$obj[0]) { // colorbox being applied to empty collection | ||||||
|  | 			return $obj; | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
| 		appendHTML(); | 		appendHTML(); | ||||||
|  |  | ||||||
| 		if (addBindings()) { | 		if (addBindings()) { | ||||||
| 			if ($.isFunction($this)) { // assume a call to $.colorbox |  | ||||||
| 				$this = $('<a/>'); |  | ||||||
| 				options.open = true; |  | ||||||
| 			} else if (!$this[0]) { // colorbox being applied to empty collection |  | ||||||
| 				return $this; |  | ||||||
| 			} |  | ||||||
|  |  | ||||||
| 			if (callback) { | 			if (callback) { | ||||||
| 				options.onComplete = callback; | 				options.onComplete = callback; | ||||||
| 			} | 			} | ||||||
|  |  | ||||||
| 			$this.each(function () { | 			$obj.each(function () { | ||||||
| 				$.data(this, colorbox, $.extend({}, $.data(this, colorbox) || defaults, options)); | 				var old = $.data(this, colorbox) || {}; | ||||||
|  | 				$.data(this, colorbox, $.extend(old, options)); | ||||||
| 			}).addClass(boxElement); | 			}).addClass(boxElement); | ||||||
|  |  | ||||||
| 			if (($.isFunction(options.open) && options.open.call($this)) || options.open) { | 			settings = new Settings($obj[0], options); | ||||||
| 				launch($this[0]); | 			 | ||||||
|  | 			if (settings.get('open')) { | ||||||
|  | 				launch($obj[0]); | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 		 | 		 | ||||||
| 		return $this; | 		return $obj; | ||||||
| 	}; | 	}; | ||||||
|  |  | ||||||
| 	publicMethod.position = function (speed, loadedCallback) { | 	publicMethod.position = function (speed, loadedCallback) { | ||||||
| @@ -614,7 +637,7 @@ | |||||||
| 		scrollTop = $window.scrollTop(); | 		scrollTop = $window.scrollTop(); | ||||||
| 		scrollLeft = $window.scrollLeft(); | 		scrollLeft = $window.scrollLeft(); | ||||||
|  |  | ||||||
| 		if (settings.fixed) { | 		if (settings.get('fixed')) { | ||||||
| 			offset.top -= scrollTop; | 			offset.top -= scrollTop; | ||||||
| 			offset.left -= scrollLeft; | 			offset.left -= scrollLeft; | ||||||
| 			$box.css({position: 'fixed'}); | 			$box.css({position: 'fixed'}); | ||||||
| @@ -625,18 +648,18 @@ | |||||||
| 		} | 		} | ||||||
|  |  | ||||||
| 		// keeps the top and left positions within the browser's viewport. | 		// keeps the top and left positions within the browser's viewport. | ||||||
| 		if (settings.right !== false) { | 		if (settings.get('right') !== false) { | ||||||
| 			left += Math.max($window.width() - settings.w - loadedWidth - interfaceWidth - setSize(settings.right, 'x'), 0); | 			left += Math.max($window.width() - settings.w - loadedWidth - interfaceWidth - setSize(settings.get('right'), 'x'), 0); | ||||||
| 		} else if (settings.left !== false) { | 		} else if (settings.get('left') !== false) { | ||||||
| 			left += setSize(settings.left, 'x'); | 			left += setSize(settings.get('left'), 'x'); | ||||||
| 		} else { | 		} else { | ||||||
| 			left += Math.round(Math.max($window.width() - settings.w - loadedWidth - interfaceWidth, 0) / 2); | 			left += Math.round(Math.max($window.width() - settings.w - loadedWidth - interfaceWidth, 0) / 2); | ||||||
| 		} | 		} | ||||||
| 		 | 		 | ||||||
| 		if (settings.bottom !== false) { | 		if (settings.get('bottom') !== false) { | ||||||
| 			top += Math.max(winheight() - settings.h - loadedHeight - interfaceHeight - setSize(settings.bottom, 'y'), 0); | 			top += Math.max(winheight() - settings.h - loadedHeight - interfaceHeight - setSize(settings.get('bottom'), 'y'), 0); | ||||||
| 		} else if (settings.top !== false) { | 		} else if (settings.get('top') !== false) { | ||||||
| 			top += setSize(settings.top, 'y'); | 			top += setSize(settings.get('top'), 'y'); | ||||||
| 		} else { | 		} else { | ||||||
| 			top += Math.round(Math.max(winheight() - settings.h - loadedHeight - interfaceHeight, 0) / 2); | 			top += Math.round(Math.max(winheight() - settings.h - loadedHeight - interfaceHeight, 0) / 2); | ||||||
| 		} | 		} | ||||||
| @@ -684,7 +707,7 @@ | |||||||
| 				$wrap[0].style.width = (settings.w + loadedWidth + interfaceWidth) + "px"; | 				$wrap[0].style.width = (settings.w + loadedWidth + interfaceWidth) + "px"; | ||||||
| 				$wrap[0].style.height = (settings.h + loadedHeight + interfaceHeight) + "px"; | 				$wrap[0].style.height = (settings.h + loadedHeight + interfaceHeight) + "px"; | ||||||
| 				 | 				 | ||||||
| 				if (settings.reposition) { | 				if (settings.get('reposition')) { | ||||||
| 					setTimeout(function () {  // small delay before binding onresize due to an IE8 bug. | 					setTimeout(function () {  // small delay before binding onresize due to an IE8 bug. | ||||||
| 						$window.bind('resize.' + prefix, publicMethod.position); | 						$window.bind('resize.' + prefix, publicMethod.position); | ||||||
| 					}, 1); | 					}, 1); | ||||||
| @@ -734,7 +757,7 @@ | |||||||
| 				$loaded.scrollTop(scrolltop); | 				$loaded.scrollTop(scrolltop); | ||||||
| 			} | 			} | ||||||
| 			 | 			 | ||||||
| 			publicMethod.position(settings.transition === "none" ? 0 : settings.speed); | 			publicMethod.position(settings.get('transition') === "none" ? 0 : settings.get('speed')); | ||||||
| 		} | 		} | ||||||
| 	}; | 	}; | ||||||
|  |  | ||||||
| @@ -743,9 +766,9 @@ | |||||||
| 			return; | 			return; | ||||||
| 		} | 		} | ||||||
| 		 | 		 | ||||||
| 		var callback, speed = settings.transition === "none" ? 0 : settings.speed; | 		var callback, speed = settings.get('transition') === "none" ? 0 : settings.get('speed'); | ||||||
|  |  | ||||||
| 		$loaded.empty().remove(); // Using empty first may prevent some IE7 issues. | 		$loaded.remove(); | ||||||
|  |  | ||||||
| 		$loaded = $tag(div, 'LoadedContent').append(object); | 		$loaded = $tag(div, 'LoadedContent').append(object); | ||||||
| 		 | 		 | ||||||
| @@ -789,7 +812,7 @@ | |||||||
| 		 | 		 | ||||||
| 		$loaded.hide() | 		$loaded.hide() | ||||||
| 		.appendTo($loadingBay.show())// content has to be appended to the DOM for accurate size calculations. | 		.appendTo($loadingBay.show())// content has to be appended to the DOM for accurate size calculations. | ||||||
| 		.css({width: getWidth(), overflow: settings.scrolling ? 'auto' : 'hidden'}) | 		.css({width: getWidth(), overflow: settings.get('scrolling') ? 'auto' : 'hidden'}) | ||||||
| 		.css({height: getHeight()})// sets the height independently from the width in case the new width influences the value of height. | 		.css({height: getHeight()})// sets the height independently from the width in case the new width influences the value of height. | ||||||
| 		.prependTo($content); | 		.prependTo($content); | ||||||
| 		 | 		 | ||||||
| @@ -799,18 +822,18 @@ | |||||||
| 		 | 		 | ||||||
| 		$(photo).css({'float': 'none'}); | 		$(photo).css({'float': 'none'}); | ||||||
|  |  | ||||||
|  | 		setClass(settings.get('className')); | ||||||
|  |  | ||||||
| 		callback = function () { | 		callback = function () { | ||||||
| 			var total = $related.length, | 			var total = $related.length, | ||||||
| 				iframe, | 				iframe, | ||||||
| 				frameBorder = 'frameBorder', |  | ||||||
| 				allowTransparency = 'allowTransparency', |  | ||||||
| 				complete; | 				complete; | ||||||
| 			 | 			 | ||||||
| 			if (!open) { | 			if (!open) { | ||||||
| 				return; | 				return; | ||||||
| 			} | 			} | ||||||
| 			 | 			 | ||||||
| 			function removeFilter() { // Needed for IE7 & IE8 in versions of jQuery prior to 1.7.2 | 			function removeFilter() { // Needed for IE8 in versions of jQuery prior to 1.7.2 | ||||||
| 				if ($.support.opacity === false) { | 				if ($.support.opacity === false) { | ||||||
| 					$box[0].style.removeAttribute('filter'); | 					$box[0].style.removeAttribute('filter'); | ||||||
| 				} | 				} | ||||||
| @@ -819,41 +842,34 @@ | |||||||
| 			complete = function () { | 			complete = function () { | ||||||
| 				clearTimeout(loadingTimer); | 				clearTimeout(loadingTimer); | ||||||
| 				$loadingOverlay.hide(); | 				$loadingOverlay.hide(); | ||||||
| 				trigger(event_complete, settings.onComplete); | 				trigger(event_complete); | ||||||
|  | 				settings.get('onComplete'); | ||||||
| 			}; | 			}; | ||||||
|  |  | ||||||
| 			 | 			 | ||||||
| 			$title.html(settings.title).add($loaded).show(); | 			$title.html(settings.get('title')).show(); | ||||||
|  | 			$loaded.show(); | ||||||
| 			 | 			 | ||||||
| 			if (total > 1) { // handle grouping | 			if (total > 1) { // handle grouping | ||||||
| 				if (typeof settings.current === "string") { | 				if (typeof settings.get('current') === "string") { | ||||||
| 					$current.html(settings.current.replace('{current}', index + 1).replace('{total}', total)).show(); | 					$current.html(settings.get('current').replace('{current}', index + 1).replace('{total}', total)).show(); | ||||||
| 				} | 				} | ||||||
| 				 | 				 | ||||||
| 				$next[(settings.loop || index < total - 1) ? "show" : "hide"]().html(settings.next); | 				$next[(settings.get('loop') || index < total - 1) ? "show" : "hide"]().html(settings.get('next')); | ||||||
| 				$prev[(settings.loop || index) ? "show" : "hide"]().html(settings.previous); | 				$prev[(settings.get('loop') || index) ? "show" : "hide"]().html(settings.get('previous')); | ||||||
| 				 | 				 | ||||||
| 				slideshow(); | 				slideshow(); | ||||||
| 				 | 				 | ||||||
| 				// Preloads images within a rel group | 				// Preloads images within a rel group | ||||||
| 				if (settings.preloading) { | 				if (settings.get('preloading')) { | ||||||
| 					$.each([getIndex(-1), getIndex(1)], function(){ | 					$.each([getIndex(-1), getIndex(1)], function(){ | ||||||
| 						var src, | 						var img, | ||||||
| 							img, |  | ||||||
| 							i = $related[this], | 							i = $related[this], | ||||||
| 							data = $.data(i, colorbox); | 							settings = new Settings(i, $.data(i, colorbox)), | ||||||
|  | 							src = settings.get('href'); | ||||||
|  |  | ||||||
| 						if (data && data.href) { | 						if (src && isImage(settings, src)) { | ||||||
| 							src = data.href; | 							src = retinaUrl(settings, src); | ||||||
| 							if ($.isFunction(src)) { |  | ||||||
| 								src = src.call(i); |  | ||||||
| 							} |  | ||||||
| 						} else { |  | ||||||
| 							src = $(i).attr('href'); |  | ||||||
| 						} |  | ||||||
|  |  | ||||||
| 						if (src && isImage(data, src)) { |  | ||||||
| 							src = retinaUrl(data, src); |  | ||||||
| 							img = document.createElement('img'); | 							img = document.createElement('img'); | ||||||
| 							img.src = src; | 							img.src = src; | ||||||
| 						} | 						} | ||||||
| @@ -863,29 +879,27 @@ | |||||||
| 				$groupControls.hide(); | 				$groupControls.hide(); | ||||||
| 			} | 			} | ||||||
| 			 | 			 | ||||||
| 			if (settings.iframe) { | 			if (settings.get('iframe')) { | ||||||
| 				iframe = $tag('iframe')[0]; | 				iframe = document.createElement('iframe'); | ||||||
| 				 | 				 | ||||||
| 				if (frameBorder in iframe) { | 				if ('frameBorder' in iframe) { | ||||||
| 					iframe[frameBorder] = 0; | 					iframe.frameBorder = 0; | ||||||
| 				} | 				} | ||||||
| 				 | 				 | ||||||
| 				if (allowTransparency in iframe) { | 				if ('allowTransparency' in iframe) { | ||||||
| 					iframe[allowTransparency] = "true"; | 					iframe.allowTransparency = "true"; | ||||||
| 				} | 				} | ||||||
|  |  | ||||||
| 				if (!settings.scrolling) { | 				if (!settings.get('scrolling')) { | ||||||
| 					iframe.scrolling = "no"; | 					iframe.scrolling = "no"; | ||||||
| 				} | 				} | ||||||
| 				 | 				 | ||||||
| 				$(iframe) | 				$(iframe) | ||||||
| 					.attr({ | 					.attr({ | ||||||
| 						src: settings.href, | 						src: settings.get('href'), | ||||||
| 						name: (new Date()).getTime(), // give the iframe a unique name to prevent caching | 						name: (new Date()).getTime(), // give the iframe a unique name to prevent caching | ||||||
| 						'class': prefix + 'Iframe', | 						'class': prefix + 'Iframe', | ||||||
| 						allowFullScreen : true, // allow HTML5 video to go fullscreen | 						allowFullScreen : true // allow HTML5 video to go fullscreen | ||||||
| 						webkitAllowFullScreen : true, |  | ||||||
| 						mozallowfullscreen : true |  | ||||||
| 					}) | 					}) | ||||||
| 					.one('load', complete) | 					.one('load', complete) | ||||||
| 					.appendTo($loaded); | 					.appendTo($loaded); | ||||||
| @@ -894,21 +908,21 @@ | |||||||
| 					iframe.src = "//about:blank"; | 					iframe.src = "//about:blank"; | ||||||
| 				}); | 				}); | ||||||
|  |  | ||||||
| 				if (settings.fastIframe) { | 				if (settings.get('fastIframe')) { | ||||||
| 					$(iframe).trigger('load'); | 					$(iframe).trigger('load'); | ||||||
| 				} | 				} | ||||||
| 			} else { | 			} else { | ||||||
| 				complete(); | 				complete(); | ||||||
| 			} | 			} | ||||||
| 			 | 			 | ||||||
| 			if (settings.transition === 'fade') { | 			if (settings.get('transition') === 'fade') { | ||||||
| 				$box.fadeTo(speed, 1, removeFilter); | 				$box.fadeTo(speed, 1, removeFilter); | ||||||
| 			} else { | 			} else { | ||||||
| 				removeFilter(); | 				removeFilter(); | ||||||
| 			} | 			} | ||||||
| 		}; | 		}; | ||||||
| 		 | 		 | ||||||
| 		if (settings.transition === 'fade') { | 		if (settings.get('transition') === 'fade') { | ||||||
| 			$box.fadeTo(speed, 0, function () { | 			$box.fadeTo(speed, 0, function () { | ||||||
| 				publicMethod.position(0, callback); | 				publicMethod.position(0, callback); | ||||||
| 			}); | 			}); | ||||||
| @@ -924,21 +938,17 @@ | |||||||
| 		 | 		 | ||||||
| 		photo = false; | 		photo = false; | ||||||
| 		 | 		 | ||||||
| 		element = $related[index]; |  | ||||||
| 		 |  | ||||||
| 		makeSettings(); |  | ||||||
| 		 |  | ||||||
| 		trigger(event_purge); | 		trigger(event_purge); | ||||||
|  | 		trigger(event_load); | ||||||
|  | 		settings.get('onLoad'); | ||||||
| 		 | 		 | ||||||
| 		trigger(event_load, settings.onLoad); | 		settings.h = settings.get('height') ? | ||||||
|  | 				setSize(settings.get('height'), 'y') - loadedHeight - interfaceHeight : | ||||||
|  | 				settings.get('innerHeight') && setSize(settings.get('innerHeight'), 'y'); | ||||||
| 		 | 		 | ||||||
| 		settings.h = settings.height ? | 		settings.w = settings.get('width') ? | ||||||
| 				setSize(settings.height, 'y') - loadedHeight - interfaceHeight : | 				setSize(settings.get('width'), 'x') - loadedWidth - interfaceWidth : | ||||||
| 				settings.innerHeight && setSize(settings.innerHeight, 'y'); | 				settings.get('innerWidth') && setSize(settings.get('innerWidth'), 'x'); | ||||||
| 		 |  | ||||||
| 		settings.w = settings.width ? |  | ||||||
| 				setSize(settings.width, 'x') - loadedWidth - interfaceWidth : |  | ||||||
| 				settings.innerWidth && setSize(settings.innerWidth, 'x'); |  | ||||||
| 		 | 		 | ||||||
| 		// Sets the minimum dimensions for use in image scaling | 		// Sets the minimum dimensions for use in image scaling | ||||||
| 		settings.mw = settings.w; | 		settings.mw = settings.w; | ||||||
| @@ -946,22 +956,22 @@ | |||||||
| 		 | 		 | ||||||
| 		// Re-evaluate the minimum width and height based on maxWidth and maxHeight values. | 		// Re-evaluate the minimum width and height based on maxWidth and maxHeight values. | ||||||
| 		// If the width or height exceed the maxWidth or maxHeight, use the maximum values instead. | 		// If the width or height exceed the maxWidth or maxHeight, use the maximum values instead. | ||||||
| 		if (settings.maxWidth) { | 		if (settings.get('maxWidth')) { | ||||||
| 			settings.mw = setSize(settings.maxWidth, 'x') - loadedWidth - interfaceWidth; | 			settings.mw = setSize(settings.get('maxWidth'), 'x') - loadedWidth - interfaceWidth; | ||||||
| 			settings.mw = settings.w && settings.w < settings.mw ? settings.w : settings.mw; | 			settings.mw = settings.w && settings.w < settings.mw ? settings.w : settings.mw; | ||||||
| 		} | 		} | ||||||
| 		if (settings.maxHeight) { | 		if (settings.get('maxHeight')) { | ||||||
| 			settings.mh = setSize(settings.maxHeight, 'y') - loadedHeight - interfaceHeight; | 			settings.mh = setSize(settings.get('maxHeight'), 'y') - loadedHeight - interfaceHeight; | ||||||
| 			settings.mh = settings.h && settings.h < settings.mh ? settings.h : settings.mh; | 			settings.mh = settings.h && settings.h < settings.mh ? settings.h : settings.mh; | ||||||
| 		} | 		} | ||||||
| 		 | 		 | ||||||
| 		href = settings.href; | 		href = settings.get('href'); | ||||||
| 		 | 		 | ||||||
| 		loadingTimer = setTimeout(function () { | 		loadingTimer = setTimeout(function () { | ||||||
| 			$loadingOverlay.show(); | 			$loadingOverlay.show(); | ||||||
| 		}, 100); | 		}, 100); | ||||||
| 		 | 		 | ||||||
| 		if (settings.inline) { | 		if (settings.get('inline')) { | ||||||
| 			// Inserts an empty placeholder where inline content is being pulled from. | 			// Inserts an empty placeholder where inline content is being pulled from. | ||||||
| 			// An event is bound to put inline content back when Colorbox closes or loads new content. | 			// An event is bound to put inline content back when Colorbox closes or loads new content. | ||||||
| 			$inline = $tag(div).hide().insertBefore($(href)[0]); | 			$inline = $tag(div).hide().insertBefore($(href)[0]); | ||||||
| @@ -971,84 +981,83 @@ | |||||||
| 			}); | 			}); | ||||||
|  |  | ||||||
| 			prep($(href)); | 			prep($(href)); | ||||||
| 		} else if (settings.iframe) { | 		} else if (settings.get('iframe')) { | ||||||
| 			// IFrame element won't be added to the DOM until it is ready to be displayed, | 			// IFrame element won't be added to the DOM until it is ready to be displayed, | ||||||
| 			// to avoid problems with DOM-ready JS that might be trying to run in that iframe. | 			// to avoid problems with DOM-ready JS that might be trying to run in that iframe. | ||||||
| 			prep(" "); | 			prep(" "); | ||||||
| 		} else if (settings.html) { | 		} else if (settings.get('html')) { | ||||||
| 			prep(settings.html); | 			prep(settings.get('html')); | ||||||
| 		} else if (isImage(settings, href)) { | 		} else if (isImage(settings, href)) { | ||||||
|  |  | ||||||
| 			href = retinaUrl(settings, href); | 			href = retinaUrl(settings, href); | ||||||
|  |  | ||||||
| 			photo = document.createElement('img'); | 			photo = new Image(); | ||||||
|  |  | ||||||
| 			$(photo) | 			$(photo) | ||||||
| 			.addClass(prefix + 'Photo') | 			.addClass(prefix + 'Photo') | ||||||
| 			.bind('error',function () { | 			.bind('error',function () { | ||||||
| 				settings.title = false; | 				prep($tag(div, 'Error').html(settings.get('imgError'))); | ||||||
| 				prep($tag(div, 'Error').html(settings.imgError)); |  | ||||||
| 			}) | 			}) | ||||||
| 			.one('load', function () { | 			.one('load', function () { | ||||||
| 				var percent; |  | ||||||
|  |  | ||||||
| 				if (request !== requests) { | 				if (request !== requests) { | ||||||
| 					return; | 					return; | ||||||
| 				} | 				} | ||||||
|  |  | ||||||
| 				$.each(['alt', 'longdesc', 'aria-describedby'], function(i,val){ | 				// A small pause because some browsers will occassionaly report a  | ||||||
| 					var attr = $(element).attr(val) || $(element).attr('data-'+val); | 				// img.width and img.height of zero immediately after the img.onload fires | ||||||
| 					if (attr) { | 				setTimeout(function(){ | ||||||
| 						photo.setAttribute(val, attr); | 					var percent; | ||||||
|  |  | ||||||
|  | 					$.each(['alt', 'longdesc', 'aria-describedby'], function(i,val){ | ||||||
|  | 						var attr = $(settings.el).attr(val) || $(settings.el).attr('data-'+val); | ||||||
|  | 						if (attr) { | ||||||
|  | 							photo.setAttribute(val, attr); | ||||||
|  | 						} | ||||||
|  | 					}); | ||||||
|  |  | ||||||
|  | 					if (settings.get('retinaImage') && window.devicePixelRatio > 1) { | ||||||
|  | 						photo.height = photo.height / window.devicePixelRatio; | ||||||
|  | 						photo.width = photo.width / window.devicePixelRatio; | ||||||
| 					} | 					} | ||||||
| 				}); |  | ||||||
|  |  | ||||||
| 				if (settings.retinaImage && window.devicePixelRatio > 1) { | 					if (settings.get('scalePhotos')) { | ||||||
| 					photo.height = photo.height / window.devicePixelRatio; | 						setResize = function () { | ||||||
| 					photo.width = photo.width / window.devicePixelRatio; | 							photo.height -= photo.height * percent; | ||||||
| 				} | 							photo.width -= photo.width * percent; | ||||||
|  | 						}; | ||||||
| 				if (settings.scalePhotos) { | 						if (settings.mw && photo.width > settings.mw) { | ||||||
| 					setResize = function () { | 							percent = (photo.width - settings.mw) / photo.width; | ||||||
| 						photo.height -= photo.height * percent; | 							setResize(); | ||||||
| 						photo.width -= photo.width * percent; | 						} | ||||||
| 					}; | 						if (settings.mh && photo.height > settings.mh) { | ||||||
| 					if (settings.mw && photo.width > settings.mw) { | 							percent = (photo.height - settings.mh) / photo.height; | ||||||
| 						percent = (photo.width - settings.mw) / photo.width; | 							setResize(); | ||||||
| 						setResize(); | 						} | ||||||
| 					} | 					} | ||||||
| 					if (settings.mh && photo.height > settings.mh) { | 					 | ||||||
| 						percent = (photo.height - settings.mh) / photo.height; | 					if (settings.h) { | ||||||
| 						setResize(); | 						photo.style.marginTop = Math.max(settings.mh - photo.height, 0) / 2 + 'px'; | ||||||
| 					} | 					} | ||||||
| 				} |  | ||||||
| 					 | 					 | ||||||
| 				if (settings.h) { | 					if ($related[1] && (settings.get('loop') || $related[index + 1])) { | ||||||
| 					photo.style.marginTop = Math.max(settings.mh - photo.height, 0) / 2 + 'px'; | 						photo.style.cursor = 'pointer'; | ||||||
| 				} | 						photo.onclick = function () { | ||||||
|  | 							publicMethod.next(); | ||||||
|  | 						}; | ||||||
|  | 					} | ||||||
|  |  | ||||||
| 				if ($related[1] && (settings.loop || $related[index + 1])) { | 					photo.style.width = photo.width + 'px'; | ||||||
| 					photo.style.cursor = 'pointer'; | 					photo.style.height = photo.height + 'px'; | ||||||
| 					photo.onclick = function () { |  | ||||||
| 						publicMethod.next(); |  | ||||||
| 					}; |  | ||||||
| 				} |  | ||||||
|  |  | ||||||
| 				photo.style.width = photo.width + 'px'; |  | ||||||
| 				photo.style.height = photo.height + 'px'; |  | ||||||
|  |  | ||||||
| 				setTimeout(function () { // A pause because Chrome will sometimes report a 0 by 0 size otherwise. |  | ||||||
| 					prep(photo); | 					prep(photo); | ||||||
| 				}, 1); | 				}, 1); | ||||||
| 			}); | 			}); | ||||||
| 			 | 			 | ||||||
| 			setTimeout(function () { // A pause because Opera 10.6+ will sometimes not run the onload function otherwise. | 			photo.src = href; | ||||||
| 				photo.src = href; |  | ||||||
| 			}, 1); |  | ||||||
| 		} else if (href) { | 		} else if (href) { | ||||||
| 			$loadingBay.load(href, settings.data, function (data, status) { | 			$loadingBay.load(href, settings.get('data'), function (data, status) { | ||||||
| 				if (request === requests) { | 				if (request === requests) { | ||||||
| 					prep(status === 'error' ? $tag(div, 'Error').html(settings.xhrError) : $(this).contents()); | 					prep(status === 'error' ? $tag(div, 'Error').html(settings.get('xhrError')) : $(this).contents()); | ||||||
| 				} | 				} | ||||||
| 			}); | 			}); | ||||||
| 		} | 		} | ||||||
| @@ -1056,14 +1065,14 @@ | |||||||
| 		 | 		 | ||||||
| 	// Navigates to the next page/image in a set. | 	// Navigates to the next page/image in a set. | ||||||
| 	publicMethod.next = function () { | 	publicMethod.next = function () { | ||||||
| 		if (!active && $related[1] && (settings.loop || $related[index + 1])) { | 		if (!active && $related[1] && (settings.get('loop') || $related[index + 1])) { | ||||||
| 			index = getIndex(1); | 			index = getIndex(1); | ||||||
| 			launch($related[index]); | 			launch($related[index]); | ||||||
| 		} | 		} | ||||||
| 	}; | 	}; | ||||||
| 	 | 	 | ||||||
| 	publicMethod.prev = function () { | 	publicMethod.prev = function () { | ||||||
| 		if (!active && $related[1] && (settings.loop || index)) { | 		if (!active && $related[1] && (settings.get('loop') || index)) { | ||||||
| 			index = getIndex(-1); | 			index = getIndex(-1); | ||||||
| 			launch($related[index]); | 			launch($related[index]); | ||||||
| 		} | 		} | ||||||
| @@ -1074,26 +1083,22 @@ | |||||||
| 		if (open && !closing) { | 		if (open && !closing) { | ||||||
| 			 | 			 | ||||||
| 			closing = true; | 			closing = true; | ||||||
| 			 |  | ||||||
| 			open = false; | 			open = false; | ||||||
| 			 | 			trigger(event_cleanup); | ||||||
| 			trigger(event_cleanup, settings.onCleanup); | 			settings.get('onCleanup'); | ||||||
| 			 |  | ||||||
| 			$window.unbind('.' + prefix); | 			$window.unbind('.' + prefix); | ||||||
|  | 			$overlay.fadeTo(settings.get('fadeOut') || 0, 0); | ||||||
| 			 | 			 | ||||||
| 			$overlay.fadeTo(settings.fadeOut || 0, 0); | 			$box.stop().fadeTo(settings.get('fadeOut') || 0, 0, function () { | ||||||
| 			 | 				$box.hide(); | ||||||
| 			$box.stop().fadeTo(settings.fadeOut || 0, 0, function () { | 				$overlay.hide(); | ||||||
| 			 |  | ||||||
| 				$box.add($overlay).css({'opacity': 1, cursor: 'auto'}).hide(); |  | ||||||
| 				 |  | ||||||
| 				trigger(event_purge); | 				trigger(event_purge); | ||||||
| 				 | 				$loaded.remove(); | ||||||
| 				$loaded.empty().remove(); // Using empty first may prevent some IE7 issues. |  | ||||||
| 				 | 				 | ||||||
| 				setTimeout(function () { | 				setTimeout(function () { | ||||||
| 					closing = false; | 					closing = false; | ||||||
| 					trigger(event_closed, settings.onClosed); | 					trigger(event_closed); | ||||||
|  | 					settings.get('onClosed'); | ||||||
| 				}, 1); | 				}, 1); | ||||||
| 			}); | 			}); | ||||||
| 		} | 		} | ||||||
| @@ -1119,7 +1124,7 @@ | |||||||
| 	// A method for fetching the current element Colorbox is referencing. | 	// A method for fetching the current element Colorbox is referencing. | ||||||
| 	// returns a jQuery object. | 	// returns a jQuery object. | ||||||
| 	publicMethod.element = function () { | 	publicMethod.element = function () { | ||||||
| 		return $(element); | 		return $(settings.el); | ||||||
| 	}; | 	}; | ||||||
|  |  | ||||||
| 	publicMethod.settings = defaults; | 	publicMethod.settings = defaults; | ||||||
|   | |||||||
							
								
								
									
										84
									
								
								public/js/jquery/colorbox/colorbox-rateit.min.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										84
									
								
								public/js/jquery/colorbox/colorbox-rateit.min.js
									
									
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
		Reference in New Issue
	
	Block a user