ips.templates.set('gallery.patchwork.indexItem'," 	{{#showThumb}}		<span class='cGalleryPatchwork_item' style='width: {{dims.width}}px; height: {{dims.height}}px; margin: {{dims.margin}}px {{dims.marginRight}}px {{dims.margin}}px {{dims.marginLeft}}px'>	{{/showThumb}}	{{^showThumb}}		<span class='cGalleryPatchwork_item ipsNoThumb ipsNoThumb_video' style='width: {{dims.width}}px; height: {{dims.height}}px; margin: {{dims.margin}}px {{dims.marginRight}}px {{dims.margin}}px {{dims.marginLeft}}px'>	{{/showThumb}}			<a data-imageLightbox title='{{image.caption}}' href='{{image.url}}'>				{{#showThumb}}					{{#lazyLoad}}						<img src='{{blankImg}}' data-src='{{image.src}}' data-ratio='{{dims.ratio}}' alt='{{image.caption}}' class='cGalleryPatchwork_image'>					{{/lazyLoad}}					{{^lazyLoad}}						<img src='{{image.src}}' data-ratio='{{dims.ratio}}' alt='{{image.caption}}' class='cGalleryPatchwork_image'>					{{/lazyLoad}}				{{/showThumb}}				<div class='ipsPhotoPanel ipsPhotoPanel_mini'>					<img src='{{image.author.photo}}' class='ipsUserPhoto ipsUserPhoto_mini'>					<div>						<span class='ipsType_normal ipsTruncate ipsTruncate_line'>{{#lang}}by{{/lang}} {{image.author.name}}</span>						<span class='ipsType_small ipsTruncate ipsTruncate_line'>{{#lang}}in{{/lang}} {{image.container}}</span>					</div>				</div>				<ul class='ipsList_inline cGalleryPatchwork_stats'>					{{#image.unread}}						<li class='ipsPos_left'>							<span class='ipsItemStatus ipsItemStatus_small' data-ipsTooltip title='{{image.unread}}'><i class='fa fa-circle'></i></span>						</li>					{{/image.unread}}					{{#image.hasState}}						<li class='ipsPos_left'>							{{#image.state.hidden}}								<span class='ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning' data-ipsTooltip title='{{#lang}}hidden{{/lang}}'><i class='fa fa-eye-slash'></i></span>							{{/image.state.hidden}}							{{#image.state.pending}}								<span class='ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning' data-ipsTooltip title='{{#lang}}pending{{/lang}}'><i class='fa fa-warning'></i></span>							{{/image.state.pending}}							{{#image.state.pinned}}								<span class='ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive' data-ipsTooltip title='{{#lang}}pinned{{/lang}}'><i class='fa fa-thumb-tack'></i></span>							{{/image.state.pinned}}							{{#image.state.featured}}								<span class='ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive' data-ipsTooltip title='{{#lang}}featured{{/lang}}'><i class='fa fa-star'></i></span>							{{/image.state.featured}}						</li>					{{/image.hasState}}					{{#image.allowComments}}						<li class='ipsPos_right' data-commentCount='{{image.comments}}'><i class='fa fa-comment'></i> {{image.comments}}</li>					{{/image.allowComments}}				</ul>			</a>		</span>");ips.templates.set('gallery.patchwork.tableItem'," 	{{#showThumb}}		<div data-imageID='{{image.id}}' class='cGalleryPatchwork_item' style='width: {{dims.width}}px; height: {{dims.height}}px; margin: {{dims.margin}}px {{dims.marginRight}}px {{dims.margin}}px {{dims.marginLeft}}px'>	{{/showThumb}}	{{^showThumb}}		<div data-imageID='{{image.id}}' class='cGalleryPatchwork_item ipsNoThumb ipsNoThumb_video' style='width: {{dims.width}}px; height: {{dims.height}}px; margin: {{dims.margin}}px {{dims.marginRight}}px {{dims.margin}}px {{dims.marginLeft}}px'>	{{/showThumb}}		<a data-imageLightbox title='{{image.caption}}' href='{{image.url}}'>			{{#showThumb}}				{{#lazyLoad}}					<img src='{{blankImg}}' data-src='{{image.src}}' data-ratio='{{dims.ratio}}' alt='{{image.caption}}' class='cGalleryPatchwork_image'>				{{/lazyLoad}}				{{^lazyLoad}}					<img src='{{image.src}}' data-ratio='{{dims.ratio}}' alt='{{image.caption}}' class='cGalleryPatchwork_image'>				{{/lazyLoad}}			{{/showThumb}}			<div class='ipsPhotoPanel ipsPhotoPanel_mini'>				<img src='{{image.author.photo}}' class='ipsUserPhoto ipsUserPhoto_mini'>				<div>					<span class='ipsType_normal ipsTruncate ipsTruncate_line'>{{image.caption}}</span>					<span class='ipsType_small ipsTruncate ipsTruncate_line'>{{#lang}}by{{/lang}} {{image.author.name}}</span>				</div>			</div>			<ul class='ipsList_inline cGalleryPatchwork_stats'>				{{#image.unread}}					<li class='ipsPos_left'>						<span class='ipsItemStatus ipsItemStatus_small' data-ipsTooltip title='{{image.unread}}'><i class='fa fa-circle'></i></span>					</li>				{{/image.unread}}				{{#image.hasState}}					<li class='ipsPos_left'>						{{#image.state.hidden}}							<span class='ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning' data-ipsTooltip title='{{#lang}}hidden{{/lang}}'><i class='fa fa-eye-slash'></i></span>						{{/image.state.hidden}}						{{#image.state.pending}}							<span class='ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_warning' data-ipsTooltip title='{{#lang}}pending{{/lang}}'><i class='fa fa-warning'></i></span>						{{/image.state.pending}}						{{#image.state.pinned}}							<span class='ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive' data-ipsTooltip title='{{#lang}}pinned{{/lang}}'><i class='fa fa-thumb-tack'></i></span>						{{/image.state.pinned}}						{{#image.state.featured}}							<span class='ipsBadge ipsBadge_icon ipsBadge_small ipsBadge_positive' data-ipsTooltip title='{{#lang}}featured{{/lang}}'><i class='fa fa-star'></i></span>						{{/image.state.featured}}					</li>				{{/image.hasState}}				{{#image.allowComments}}					<li class='ipsPos_right' data-commentCount='{{image.comments}}'><i class='fa fa-comment'></i> {{image.comments}}</li>				{{/image.allowComments}}			</ul>		</a>		{{#image.modActions}}			<input type='checkbox' data-role='moderation' name='moderate[{{image.id}}]' data-actions='{{image.modActions}}' data-state='{{image.modStates}}'>		{{/image.modActions}}	</div>");ips.templates.set('gallery.lightbox.wrapper'," 	<div id='cLightbox' class='ipsModal' data-originalUrl='{{originalUrl}}' data-originalTitle='{{originalTitle}}'>		<span class='cLightboxClose'>&times;</span>		<div class='cLightboxBack'></div>	</div>");;;(function($,_,undefined){"use strict";ips.controller.register('gallery.front.browse.imageLightbox',{initialize:function(){this.on('click','[data-imageLightbox]',this.launchLightbox);this.on(document,'keydown',this.keyDown);this.on(document,'click','.cLightboxClose',this.closeLightbox);History.Adapter.bind(window,'statechange',_.bind(this.stateChange,this));this.setup();},setup:function(){if(!_.isUndefined(this.scope.attr('data-launchLightbox'))){this._launch(this.scope.attr('data-lightboxURL'),document.title);}},stateChange:function(){var state=History.getState();if(state.data.controller!='gallery.front.view.image'){if(state.data.controller=='gallery.front.browse.imageLightbox'&&(_.isUndefined(state.data.initialLaunch)||state.data.initialLaunch!=true)){Debug.log(state.data);this.hideLightbox();}
return;}
if(_.isUndefined(state.data.direction)){return;}
if($('[data-role="tableRows"] div[data-imageId="'+state.data.imageID+'"]').length){return;}
if(state.data.direction=='next'){$('#cLightbox').attr('data-originalUrl',$('[data-role="tablePagination"]').find('.ipsPagination_next:not(.ipsPagination_inactive) a').first().attr('href'));$('[data-role="tablePagination"]').find('.ipsPagination_next:not(.ipsPagination_inactive) a').first().click();}
if(state.data.direction=='prev'){$('#cLightbox').attr('data-originalUrl',$('[data-role="tablePagination"]').find('.ipsPagination_prev:not(.ipsPagination_inactive) a').first().attr('href'));$('[data-role="tablePagination"]').find('.ipsPagination_prev:not(.ipsPagination_inactive) a').first().click();}},launchLightbox:function(e){e.preventDefault();var url=$(e.currentTarget).attr('href');var title=$(e.currentTarget).attr('title');this._launch(url,title);},_launch:function(url,title){if(url.indexOf('?')==-1){var logUrl=ips.utils.url.removeParams(['lightbox','browse'],url)+'?browse=1&lightbox=1';url=url+'?lightbox=1';}else{var logUrl=ips.utils.url.removeParams(['lightbox','browse'],url)+'&browse=1&lightbox=1';url=url+'&lightbox=1';}
if(!$('#cLightbox').length){var newWidget=ips.templates.render('gallery.lightbox.wrapper',{originalUrl:window.location.href,originaltitle:document.title});$('body').append(newWidget);$('#cLightbox').css({zIndex:ips.ui.zIndex()});}else if(!$('#cLightbox').is(':visible')){$('#cLightbox').show();}
if(ips.utils.responsive.currentIs('phone')){$(window).scrollTop(0);}
History.pushState({controller:'gallery.front.browse.imageLightbox',initialLaunch:true,lightbox:true,realUrl:logUrl},title,ips.utils.url.removeParams(['lightbox','browse'],url));ips.getAjax()(url,{type:'get',showLoading:true}).done(function(response){$('#cLightbox > .cLightboxBack').html(response);$(document).trigger('contentChange',[$('#cLightbox')]);}).fail(function(){window.location=url;});$('body').addClass('ipsNoScroll');},keyDown:function(e){if($(e.target).closest('input, textarea, .ipsComposeArea, .ipsComposeArea_editor').length){return;}
switch(e.keyCode){case ips.ui.key.ESCAPE:this.closeLightbox();break;}},closeLightbox:function(e){this.hideLightbox();History.pushState({controller:'gallery.front.browse.imageLightbox',bypassStateAdjustment:true},$('#cLightbox').attr('data-originalTitle'),$('#cLightbox').attr('data-originalUrl'));},hideLightbox:function(){$('#cLightbox').fadeOut(400);$('body').removeClass('ipsNoScroll');if($('#cLightbox video').length){_.each($('#cLightbox video'),function(elem){elem.pause();});}}});}(jQuery,_));;;(function($,_,undefined){"use strict";ips.controller.register('gallery.front.browse.list',{initialize:function(){this.on('change','[data-role="moderation"]',this.selectImage);this.on('tableRowsUpdated',this.rowsUpdated);},rowsUpdated:function(){var patchwork=ips.ui.photoLayout.getObj(this.scope);if(patchwork){patchwork.refresh();}},selectImage:function(e){var row=$(e.currentTarget).closest('.cGalleryImageItem');row.toggleClass('cGalleryImageItem_selected',$(e.currentTarget).is(':checked'));}});}(jQuery,_));;