Using batch insert for profiles to prevent errors on large inserts.
|  | @ -622,7 +622,6 @@ export default { | |||
| } | ||||
| 
 | ||||
| .photos-container { | ||||
|     min-width: 15rem; | ||||
|     box-sizing: border-box; | ||||
|     border-left: solid 1px $shadow-hint; | ||||
|     padding: 1rem 1rem 1rem 1.5rem; | ||||
|  |  | |||
|  | @ -1,46 +1,46 @@ | |||
| <template> | ||||
|     <div class="networks"> | ||||
|         <form | ||||
|             class="search" | ||||
|             @submit.prevent="searchSites" | ||||
|         > | ||||
|             <input | ||||
|                 v-model="query" | ||||
|                 :placeholder="`Find ${siteCount} sites in ${networks.length} networks`" | ||||
|                 class="query" | ||||
|                 @input="searchSites" | ||||
|             > | ||||
| 	<div class="networks"> | ||||
| 		<form | ||||
| 			class="search" | ||||
| 			@submit.prevent="searchSites" | ||||
| 		> | ||||
| 			<input | ||||
| 				v-model="query" | ||||
| 				:placeholder="`Find ${siteCount} sites in ${networks.length} networks`" | ||||
| 				class="query" | ||||
| 				@input="searchSites" | ||||
| 			> | ||||
| 
 | ||||
|             <button | ||||
|                 type="submit" | ||||
|                 class="search-button" | ||||
|             ><Icon icon="search" /></button> | ||||
|         </form> | ||||
| 			<button | ||||
| 				type="submit" | ||||
| 				class="search-button" | ||||
| 			><Icon icon="search" /></button> | ||||
| 		</form> | ||||
| 
 | ||||
|         <div | ||||
|             v-if="query.length" | ||||
|             class="network-tiles" | ||||
|         > | ||||
|             <Site | ||||
|                 v-for="site in searchResults" | ||||
|                 :key="`site-tile-${site.slug}`" | ||||
|                 :site="site" | ||||
|             /> | ||||
| 		<div | ||||
| 			v-if="query.length" | ||||
| 			class="network-tiles" | ||||
| 		> | ||||
| 			<Site | ||||
| 				v-for="site in searchResults" | ||||
| 				:key="`site-tile-${site.slug}`" | ||||
| 				:site="site" | ||||
| 			/> | ||||
| 
 | ||||
|             <span v-if="searchResults.length === 0">No results for "{{ query }}"</span> | ||||
|         </div> | ||||
| 			<span v-if="searchResults.length === 0">No results for "{{ query }}"</span> | ||||
| 		</div> | ||||
| 
 | ||||
|         <div | ||||
|             v-if="query.length === 0" | ||||
|             class="network-tiles" | ||||
|         > | ||||
|             <Network | ||||
|                 v-for="network in networks" | ||||
|                 :key="`network-tile-${network.slug}`" | ||||
|                 :network="network" | ||||
|             /> | ||||
|         </div> | ||||
|     </div> | ||||
| 		<div | ||||
| 			v-if="query.length === 0" | ||||
| 			class="network-tiles" | ||||
| 		> | ||||
| 			<Network | ||||
| 				v-for="network in networks" | ||||
| 				:key="`network-tile-${network.slug}`" | ||||
| 				:network="network" | ||||
| 			/> | ||||
| 		</div> | ||||
| 	</div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
|  | @ -48,41 +48,41 @@ import Network from '../tile/network.vue'; | |||
| import Site from '../tile/site.vue'; | ||||
| 
 | ||||
| async function searchSites() { | ||||
|     this.searchResults = await this.$store.dispatch('searchSites', { | ||||
|         query: this.query, | ||||
|         limit: 20, | ||||
|     }); | ||||
| 	this.searchResults = await this.$store.dispatch('searchSites', { | ||||
| 		query: this.query, | ||||
| 		limit: 20, | ||||
| 	}); | ||||
| } | ||||
| 
 | ||||
| async function mounted() { | ||||
|     this.networks = await this.$store.dispatch('fetchNetworks'); | ||||
|     this.pageTitle = 'Networks'; | ||||
| 	this.networks = await this.$store.dispatch('fetchNetworks'); | ||||
| 	this.pageTitle = 'Networks'; | ||||
| } | ||||
| 
 | ||||
| function siteCount() { | ||||
|     return this.networks.map(network => network.sites).flat().length; | ||||
| 	return this.networks.map(network => network.sites).flat().length; | ||||
| } | ||||
| 
 | ||||
| export default { | ||||
|     components: { | ||||
|         Network, | ||||
|         Site, | ||||
|     }, | ||||
|     data() { | ||||
|         return { | ||||
|             query: '', | ||||
|             pageTitle: null, | ||||
|             networks: [], | ||||
|             searchResults: [], | ||||
|         }; | ||||
|     }, | ||||
|     computed: { | ||||
|         siteCount, | ||||
|     }, | ||||
|     mounted, | ||||
|     methods: { | ||||
|         searchSites, | ||||
|     }, | ||||
| 	components: { | ||||
| 		Network, | ||||
| 		Site, | ||||
| 	}, | ||||
| 	data() { | ||||
| 		return { | ||||
| 			query: '', | ||||
| 			pageTitle: null, | ||||
| 			networks: [], | ||||
| 			searchResults: [], | ||||
| 		}; | ||||
| 	}, | ||||
| 	computed: { | ||||
| 		siteCount, | ||||
| 	}, | ||||
| 	mounted, | ||||
| 	methods: { | ||||
| 		searchSites, | ||||
| 	}, | ||||
| }; | ||||
| </script> | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,227 +1,227 @@ | |||
| <template> | ||||
|     <div | ||||
|         v-if="release" | ||||
|         class="content" | ||||
|     > | ||||
|         <Banner :release="release" /> | ||||
| 	<div | ||||
| 		v-if="release" | ||||
| 		class="content" | ||||
| 	> | ||||
| 		<Banner :release="release" /> | ||||
| 
 | ||||
|         <div class="details"> | ||||
|             <div class="column"> | ||||
|                 <a | ||||
|                     v-if="release.date" | ||||
|                     v-tooltip.bottom="release.url && `View scene on ${release.site.name}`" | ||||
|                     :title="release.url && `View scene on ${release.site.name}`" | ||||
|                     :href="release.url" | ||||
|                     :class="{ link: release.url }" | ||||
|                     target="_blank" | ||||
|                     rel="noopener noreferrer" | ||||
|                     class="tidbit date" | ||||
|                 > | ||||
|                     <Icon | ||||
|                         v-if="isAfter(new Date(), release.date)" | ||||
|                         icon="calendar2" | ||||
|                     /> | ||||
| 		<div class="details"> | ||||
| 			<div class="column"> | ||||
| 				<a | ||||
| 					v-if="release.date" | ||||
| 					v-tooltip.bottom="release.url && `View scene on ${release.site.name}`" | ||||
| 					:title="release.url && `View scene on ${release.site.name}`" | ||||
| 					:href="release.url" | ||||
| 					:class="{ link: release.url }" | ||||
| 					target="_blank" | ||||
| 					rel="noopener noreferrer" | ||||
| 					class="tidbit date" | ||||
| 				> | ||||
| 					<Icon | ||||
| 						v-if="isAfter(new Date(), release.date)" | ||||
| 						icon="calendar2" | ||||
| 					/> | ||||
| 
 | ||||
|                     <Icon | ||||
|                         v-else | ||||
|                         v-tooltip.bottom="'To be released'" | ||||
|                         icon="sun3" | ||||
|                     /> | ||||
| 					<Icon | ||||
| 						v-else | ||||
| 						v-tooltip.bottom="'To be released'" | ||||
| 						icon="sun3" | ||||
| 					/> | ||||
| 
 | ||||
|                     <span class="showable">{{ formatDate(release.date, 'MMM D, YYYY') }}</span> | ||||
|                     <span class="hideable">{{ formatDate(release.date, 'MMMM D, YYYY') }}</span> | ||||
|                 </a> | ||||
| 					<span class="showable">{{ formatDate(release.date, 'MMM D, YYYY') }}</span> | ||||
| 					<span class="hideable">{{ formatDate(release.date, 'MMMM D, YYYY') }}</span> | ||||
| 				</a> | ||||
| 
 | ||||
|                 <span | ||||
|                     v-if="release.shootId" | ||||
|                     v-tooltip.bottom="`Shoot #`" | ||||
|                     class="tidbit shoot hideable" | ||||
|                 > | ||||
|                     <Icon icon="clapboard-play" /> | ||||
|                     {{ release.shootId }} | ||||
|                 </span> | ||||
| 				<span | ||||
| 					v-if="release.shootId" | ||||
| 					v-tooltip.bottom="`Shoot #`" | ||||
| 					class="tidbit shoot hideable" | ||||
| 				> | ||||
| 					<Icon icon="clapboard-play" /> | ||||
| 					{{ release.shootId }} | ||||
| 				</span> | ||||
| 
 | ||||
|                 <span | ||||
|                     v-if="release.duration" | ||||
|                     v-tooltip.bottom="`Duration`" | ||||
|                     class="tidbit duration hideable" | ||||
|                 > | ||||
|                     <Icon icon="stopwatch" /> | ||||
| 				<span | ||||
| 					v-if="release.duration" | ||||
| 					v-tooltip.bottom="`Duration`" | ||||
| 					class="tidbit duration hideable" | ||||
| 				> | ||||
| 					<Icon icon="stopwatch" /> | ||||
| 
 | ||||
|                     <span | ||||
|                         v-if="release.duration >= 3600" | ||||
|                         class="duration-segment" | ||||
|                     >{{ Math.floor(release.duration / 3600).toString().padStart(2, '0') }}:</span> | ||||
|                     <span class="duration-segment">{{ Math.floor((release.duration % 3600) / 60).toString().padStart(2, '0') }}:</span> | ||||
|                     <span class="duration-segment">{{ (release.duration % 60).toString().padStart(2, '0') }}</span> | ||||
|                 </span> | ||||
| 					<span | ||||
| 						v-if="release.duration >= 3600" | ||||
| 						class="duration-segment" | ||||
| 					>{{ Math.floor(release.duration / 3600).toString().padStart(2, '0') }}:</span> | ||||
| 					<span class="duration-segment">{{ Math.floor((release.duration % 3600) / 60).toString().padStart(2, '0') }}:</span> | ||||
| 					<span class="duration-segment">{{ (release.duration % 60).toString().padStart(2, '0') }}</span> | ||||
| 				</span> | ||||
| 
 | ||||
|                 <span class="tidbit site"> | ||||
|                     <a | ||||
|                         v-if="release.site.independent" | ||||
|                         :href="`/network/${release.network.slug}`" | ||||
|                     > | ||||
|                         <img | ||||
|                             :src="`/img/logos/${release.network.slug}/network.png`" | ||||
|                             :title="release.network.name" | ||||
|                             class="logo logo-site" | ||||
|                         > | ||||
|                     </a> | ||||
| 				<span class="tidbit site"> | ||||
| 					<a | ||||
| 						v-if="release.site.independent" | ||||
| 						:href="`/network/${release.network.slug}`" | ||||
| 					> | ||||
| 						<img | ||||
| 							:src="`/img/logos/${release.network.slug}/thumbs/network.png`" | ||||
| 							:title="release.network.name" | ||||
| 							class="logo logo-site" | ||||
| 						> | ||||
| 					</a> | ||||
| 
 | ||||
|                     <template v-else> | ||||
|                         <a :href="`/network/${release.network.slug}`"> | ||||
|                             <img | ||||
|                                 :src="`/img/logos/${release.network.slug}/network.png`" | ||||
|                                 :title="release.network.name" | ||||
|                                 :alt="release.network.name" | ||||
|                                 class="logo logo-network" | ||||
|                             > | ||||
|                         </a> | ||||
| 					<template v-else> | ||||
| 						<a :href="`/network/${release.network.slug}`"> | ||||
| 							<img | ||||
| 								:src="`/img/logos/${release.network.slug}/thumbs/network.png`" | ||||
| 								:title="release.network.name" | ||||
| 								:alt="release.network.name" | ||||
| 								class="logo logo-network" | ||||
| 							> | ||||
| 						</a> | ||||
| 
 | ||||
|                         <span class="chain">presents</span> | ||||
| 						<span class="chain">presents</span> | ||||
| 
 | ||||
|                         <a | ||||
|                             :href="`/site/${release.site.slug}`" | ||||
|                         > | ||||
|                             <img | ||||
|                                 :src="`/img/logos/${release.network.slug}/${release.site.slug}.png`" | ||||
|                                 :title="release.site.name" | ||||
|                                 class="logo logo-site" | ||||
|                             > | ||||
|                         </a> | ||||
|                     </template> | ||||
| 						<a | ||||
| 							:href="`/site/${release.site.slug}`" | ||||
| 						> | ||||
| 							<img | ||||
| 								:src="`/img/logos/${release.network.slug}/thumbs/${release.site.slug}.png`" | ||||
| 								:title="release.site.name" | ||||
| 								class="logo logo-site" | ||||
| 							> | ||||
| 						</a> | ||||
| 					</template> | ||||
| 
 | ||||
|                 </span> | ||||
|             </div> | ||||
|         </div> | ||||
| 				</span> | ||||
| 			</div> | ||||
| 		</div> | ||||
| 
 | ||||
|         <div class="info column"> | ||||
|             <h2 class="row title">{{ release.title }}</h2> | ||||
| 		<div class="info column"> | ||||
| 			<h2 class="row title">{{ release.title }}</h2> | ||||
| 
 | ||||
|             <div class="row associations"> | ||||
|                 <ul class="actors nolist"> | ||||
|                     <li | ||||
|                         v-for="actor in release.actors" | ||||
|                         :key="actor.id" | ||||
|                     > | ||||
|                         <Actor :actor="actor" /> | ||||
|                     </li> | ||||
|                 </ul> | ||||
| 			<div class="row associations"> | ||||
| 				<ul class="actors nolist"> | ||||
| 					<li | ||||
| 						v-for="actor in release.actors" | ||||
| 						:key="actor.id" | ||||
| 					> | ||||
| 						<Actor :actor="actor" /> | ||||
| 					</li> | ||||
| 				</ul> | ||||
| 
 | ||||
|                 <div | ||||
|                     v-if="release.movies && release.movies.length > 0" | ||||
|                     class="movies" | ||||
|                 > | ||||
|                     <Release :release="release.movies[0]" /> | ||||
|                 </div> | ||||
|             </div> | ||||
| 				<div | ||||
| 					v-if="release.movies && release.movies.length > 0" | ||||
| 					class="movies" | ||||
| 				> | ||||
| 					<Release :release="release.movies[0]" /> | ||||
| 				</div> | ||||
| 			</div> | ||||
| 
 | ||||
|             <div | ||||
|                 v-if="release.scenes && release.scenes.length > 0" | ||||
|                 class="scenes" | ||||
|             > | ||||
|                 <h3>Scenes</h3> | ||||
|                 <Releases | ||||
|                     :releases="release.scenes" | ||||
|                     class="row" | ||||
|                 /> | ||||
|             </div> | ||||
| 			<div | ||||
| 				v-if="release.scenes && release.scenes.length > 0" | ||||
| 				class="scenes" | ||||
| 			> | ||||
| 				<h3>Scenes</h3> | ||||
| 				<Releases | ||||
| 					:releases="release.scenes" | ||||
| 					class="row" | ||||
| 				/> | ||||
| 			</div> | ||||
| 
 | ||||
|             <div | ||||
|                 v-if="release.tags.length > 0" | ||||
|                 class="row" | ||||
|             > | ||||
|                 <Icon icon="price-tags3" /> | ||||
| 			<div | ||||
| 				v-if="release.tags.length > 0" | ||||
| 				class="row" | ||||
| 			> | ||||
| 				<Icon icon="price-tags3" /> | ||||
| 
 | ||||
|                 <ul class="tags nolist"> | ||||
|                     <li | ||||
|                         v-for="tag in release.tags" | ||||
|                         :key="`tag-${tag.slug}`" | ||||
|                         class="tag" | ||||
|                     > | ||||
|                         <a | ||||
|                             :href="`/tag/${tag.slug}`" | ||||
|                             class="link" | ||||
|                         >{{ tag.name }}</a> | ||||
|                     </li> | ||||
|                 </ul> | ||||
|             </div> | ||||
| 				<ul class="tags nolist"> | ||||
| 					<li | ||||
| 						v-for="tag in release.tags" | ||||
| 						:key="`tag-${tag.slug}`" | ||||
| 						class="tag" | ||||
| 					> | ||||
| 						<a | ||||
| 							:href="`/tag/${tag.slug}`" | ||||
| 							class="link" | ||||
| 						>{{ tag.name }}</a> | ||||
| 					</li> | ||||
| 				</ul> | ||||
| 			</div> | ||||
| 
 | ||||
|             <div | ||||
|                 v-if="release.duration" | ||||
|                 class="row duration showable" | ||||
|             > | ||||
|                 <Icon icon="stopwatch" /> | ||||
| 			<div | ||||
| 				v-if="release.duration" | ||||
| 				class="row duration showable" | ||||
| 			> | ||||
| 				<Icon icon="stopwatch" /> | ||||
| 
 | ||||
|                 <span | ||||
|                     v-if="release.duration >= 3600" | ||||
|                     class="duration-segment" | ||||
|                 >{{ Math.floor(release.duration / 3600).toString().padStart(2, '0') }}:</span> | ||||
|                 <span class="duration-segment">{{ Math.floor((release.duration % 3600) / 60).toString().padStart(2, '0') }}:</span> | ||||
|                 <span class="duration-segment">{{ (release.duration % 60).toString().padStart(2, '0') }}</span> | ||||
|             </div> | ||||
| 				<span | ||||
| 					v-if="release.duration >= 3600" | ||||
| 					class="duration-segment" | ||||
| 				>{{ Math.floor(release.duration / 3600).toString().padStart(2, '0') }}:</span> | ||||
| 				<span class="duration-segment">{{ Math.floor((release.duration % 3600) / 60).toString().padStart(2, '0') }}:</span> | ||||
| 				<span class="duration-segment">{{ (release.duration % 60).toString().padStart(2, '0') }}</span> | ||||
| 			</div> | ||||
| 
 | ||||
|             <p | ||||
|                 v-if="release.description" | ||||
|                 class="row description" | ||||
|             > | ||||
|                 <Icon icon="info2" /> | ||||
|                 {{ release.description }} | ||||
|             </p> | ||||
| 			<p | ||||
| 				v-if="release.description" | ||||
| 				class="row description" | ||||
| 			> | ||||
| 				<Icon icon="info2" /> | ||||
| 				{{ release.description }} | ||||
| 			</p> | ||||
| 
 | ||||
|             <div | ||||
|                 v-if="release.studio" | ||||
|                 class="row" | ||||
|             > | ||||
|                 <Icon icon="video-camera2" /> | ||||
| 			<div | ||||
| 				v-if="release.studio" | ||||
| 				class="row" | ||||
| 			> | ||||
| 				<Icon icon="video-camera2" /> | ||||
| 
 | ||||
|                 <a | ||||
|                     v-if="release.studio" | ||||
|                     :href="release.studio.url" | ||||
|                     target="_blank" | ||||
|                     rel="noopener noreferrer" | ||||
|                     class="link" | ||||
|                 >{{ release.studio.name }}</a> | ||||
|             </div> | ||||
| 				<a | ||||
| 					v-if="release.studio" | ||||
| 					:href="release.studio.url" | ||||
| 					target="_blank" | ||||
| 					rel="noopener noreferrer" | ||||
| 					class="link" | ||||
| 				>{{ release.studio.name }}</a> | ||||
| 			</div> | ||||
| 
 | ||||
|             <div | ||||
|                 v-if="release.shootId" | ||||
|                 class="row showable" | ||||
|             > | ||||
|                 <Icon icon="clapboard-play" /> | ||||
| 			<div | ||||
| 				v-if="release.shootId" | ||||
| 				class="row showable" | ||||
| 			> | ||||
| 				<Icon icon="clapboard-play" /> | ||||
| 
 | ||||
|                 <a | ||||
|                     :href="release.url" | ||||
|                     :title="`release.shootId`" | ||||
|                     target="_blank" | ||||
|                     rel="noopener noreferrer" | ||||
|                     class="link shoot" | ||||
|                 >{{ release.shootId }}</a> | ||||
|             </div> | ||||
| 				<a | ||||
| 					:href="release.url" | ||||
| 					:title="`release.shootId`" | ||||
| 					target="_blank" | ||||
| 					rel="noopener noreferrer" | ||||
| 					class="link shoot" | ||||
| 				>{{ release.shootId }}</a> | ||||
| 			</div> | ||||
| 
 | ||||
|             <span class="row"> | ||||
|                 <Icon icon="drawer-in" /> | ||||
| 			<span class="row"> | ||||
| 				<Icon icon="drawer-in" /> | ||||
| 
 | ||||
|                 <a | ||||
|                     :href="`/added/${formatDate(release.dateAdded, 'YYYY-MM-DD')}`" | ||||
|                     :title="`Added on ${formatDate(release.dateAdded, 'MMMM D, YYYY')}`" | ||||
|                     target="_blank" | ||||
|                     rel="noopener noreferrer" | ||||
|                     class="link added" | ||||
|                 >{{ formatDate(release.dateAdded, 'MMMM D, YYYY') }}</a> | ||||
|             </span> | ||||
| 				<a | ||||
| 					:href="`/added/${formatDate(release.dateAdded, 'YYYY-MM-DD')}`" | ||||
| 					:title="`Added on ${formatDate(release.dateAdded, 'MMMM D, YYYY')}`" | ||||
| 					target="_blank" | ||||
| 					rel="noopener noreferrer" | ||||
| 					class="link added" | ||||
| 				>{{ formatDate(release.dateAdded, 'MMMM D, YYYY') }}</a> | ||||
| 			</span> | ||||
| 
 | ||||
|             <div class="row"> | ||||
|                 <Icon icon="paste2" /> | ||||
| 			<div class="row"> | ||||
| 				<Icon icon="paste2" /> | ||||
| 
 | ||||
|                 <input | ||||
|                     class="filename" | ||||
|                     :value="filename" | ||||
|                     @focus="copyFilename" | ||||
|                 > | ||||
|             </div> | ||||
|         </div> | ||||
|     </div> | ||||
| 				<input | ||||
| 					class="filename" | ||||
| 					:value="filename" | ||||
| 					@focus="copyFilename" | ||||
| 				> | ||||
| 			</div> | ||||
| 		</div> | ||||
| 	</div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
|  | @ -234,45 +234,45 @@ import Release from '../tile/release.vue'; | |||
| import Releases from './releases.vue'; | ||||
| 
 | ||||
| function pageTitle() { | ||||
|     return this.release && this.release.title; | ||||
| 	return this.release && this.release.title; | ||||
| } | ||||
| 
 | ||||
| function copyFilename(event) { | ||||
|     event.target.setSelectionRange(0, event.target.value.length); | ||||
|     document.execCommand('copy'); | ||||
| 	event.target.setSelectionRange(0, event.target.value.length); | ||||
| 	document.execCommand('copy'); | ||||
| } | ||||
| 
 | ||||
| async function mounted() { | ||||
|     this.release = await this.$store.dispatch('fetchReleaseById', this.$route.params.releaseId); | ||||
|     this.filename = format(config.filename.pattern, { | ||||
|         ...this.release, | ||||
|         shootId: this.release.shootId || '', | ||||
|         date: this.formatDate(this.release.date, config.filename.date), | ||||
|     }, { | ||||
|         spreadSeparator: config.filename.separator, | ||||
|     }); | ||||
| 	this.release = await this.$store.dispatch('fetchReleaseById', this.$route.params.releaseId); | ||||
| 	this.filename = format(config.filename.pattern, { | ||||
| 		...this.release, | ||||
| 		shootId: this.release.shootId || '', | ||||
| 		date: this.formatDate(this.release.date, config.filename.date), | ||||
| 	}, { | ||||
| 		spreadSeparator: config.filename.separator, | ||||
| 	}); | ||||
| } | ||||
| 
 | ||||
| export default { | ||||
|     components: { | ||||
|         Actor, | ||||
|         Banner, | ||||
|         Release, | ||||
|         Releases, | ||||
|     }, | ||||
|     data() { | ||||
|         return { | ||||
|             release: null, | ||||
|             filename: null, | ||||
|         }; | ||||
|     }, | ||||
|     computed: { | ||||
|         pageTitle, | ||||
|     }, | ||||
|     mounted, | ||||
|     methods: { | ||||
|         copyFilename, | ||||
|     }, | ||||
| 	components: { | ||||
| 		Actor, | ||||
| 		Banner, | ||||
| 		Release, | ||||
| 		Releases, | ||||
| 	}, | ||||
| 	data() { | ||||
| 		return { | ||||
| 			release: null, | ||||
| 			filename: null, | ||||
| 		}; | ||||
| 	}, | ||||
| 	computed: { | ||||
| 		pageTitle, | ||||
| 	}, | ||||
| 	mounted, | ||||
| 	methods: { | ||||
| 		copyFilename, | ||||
| 	}, | ||||
| }; | ||||
| </script> | ||||
| 
 | ||||
|  |  | |||
|  | @ -37,8 +37,6 @@ async function mounted() { | |||
| 			'interracial', | ||||
| 			'mff', | ||||
| 			'mfm', | ||||
| 			'natural-boobs', | ||||
| 			'fake-boobs', | ||||
| 			'teen', | ||||
| 			'milf', | ||||
| 			'blowjob', | ||||
|  | @ -48,6 +46,19 @@ async function mounted() { | |||
| 			'facial', | ||||
| 			'creampie', | ||||
| 		], | ||||
| 		appearance: [ | ||||
| 			'asian', | ||||
| 			'ebony', | ||||
| 			'latina', | ||||
| 			'caucasian', | ||||
| 			'natural-boobs', | ||||
| 			'fake-boobs', | ||||
| 			'blonde', | ||||
| 			'brunette', | ||||
| 			'redhead', | ||||
| 			'tattoos', | ||||
| 			'piercings', | ||||
| 		], | ||||
| 		oral: [ | ||||
| 			'blowjob', | ||||
| 			'deepthroat', | ||||
|  | @ -58,17 +69,6 @@ async function mounted() { | |||
| 			'ass-eating', | ||||
| 			'ass-to-mouth', | ||||
| 		], | ||||
| 		appearance: [ | ||||
| 			'asian', | ||||
| 			'ebony', | ||||
| 			'latina', | ||||
| 			'caucasian', | ||||
| 			'blonde', | ||||
| 			'brunette', | ||||
| 			'redhead', | ||||
| 			'tattoos', | ||||
| 			'piercings', | ||||
| 		], | ||||
| 		extreme: [ | ||||
| 			'airtight', | ||||
| 			'double-anal', | ||||
|  |  | |||
|  | @ -46,7 +46,7 @@ | |||
| 					v-else | ||||
| 					class="avatar" | ||||
| 				><img | ||||
| 					:src="`/img/avatar_${actor.gender || 'female'}.png`" | ||||
| 					:src="`/img/avatar_${actor.gender || 'female'}.svg`" | ||||
| 					class="avatar-fallback" | ||||
| 				></span> | ||||
| 
 | ||||
|  | @ -209,9 +209,9 @@ export default { | |||
| } | ||||
| 
 | ||||
| .avatar-fallback { | ||||
|     max-height: 75%; | ||||
|     max-width: 80%; | ||||
|     opacity: .5; | ||||
|     max-height: 100%; | ||||
|     max-width: 100%; | ||||
|     opacity: .1; | ||||
| } | ||||
| 
 | ||||
| .details { | ||||
|  |  | |||
| After Width: | Height: | Size: 956 KiB | 
|  | @ -0,0 +1,172 @@ | |||
| <?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||||
| <svg | ||||
|    xmlns:dc="http://purl.org/dc/elements/1.1/" | ||||
|    xmlns:cc="http://creativecommons.org/ns#" | ||||
|    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | ||||
|    xmlns:svg="http://www.w3.org/2000/svg" | ||||
|    xmlns="http://www.w3.org/2000/svg" | ||||
|    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" | ||||
|    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" | ||||
|    sodipodi:docname="woman_outline.svg" | ||||
|    inkscape:version="1.0 (4035a4fb49, 2020-05-01)" | ||||
|    id="svg8" | ||||
|    version="1.1" | ||||
|    viewBox="0 0 110.7845 194.22073" | ||||
|    height="194.22073mm" | ||||
|    width="110.7845mm"> | ||||
|   <defs | ||||
|      id="defs2" /> | ||||
|   <sodipodi:namedview | ||||
|      fit-margin-bottom="0" | ||||
|      fit-margin-right="0" | ||||
|      fit-margin-left="0" | ||||
|      fit-margin-top="0" | ||||
|      inkscape:window-maximized="1" | ||||
|      inkscape:window-y="932" | ||||
|      inkscape:window-x="1182" | ||||
|      inkscape:window-height="1024" | ||||
|      inkscape:window-width="1920" | ||||
|      showgrid="false" | ||||
|      inkscape:document-rotation="0" | ||||
|      inkscape:current-layer="layer1" | ||||
|      inkscape:document-units="mm" | ||||
|      inkscape:cy="456.75252" | ||||
|      inkscape:cx="-281.74276" | ||||
|      inkscape:zoom="0.5" | ||||
|      inkscape:pageshadow="2" | ||||
|      inkscape:pageopacity="0.0" | ||||
|      borderopacity="1.0" | ||||
|      bordercolor="#666666" | ||||
|      pagecolor="#ffffff" | ||||
|      id="base" /> | ||||
|   <metadata | ||||
|      id="metadata5"> | ||||
|     <rdf:RDF> | ||||
|       <cc:Work | ||||
|          rdf:about=""> | ||||
|         <dc:format>image/svg+xml</dc:format> | ||||
|         <dc:type | ||||
|            rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> | ||||
|         <dc:title></dc:title> | ||||
|       </cc:Work> | ||||
|     </rdf:RDF> | ||||
|   </metadata> | ||||
|   <g | ||||
|      transform="translate(-46.27311,-75.943911)" | ||||
|      id="layer1" | ||||
|      inkscape:groupmode="layer" | ||||
|      inkscape:label="Layer 1"> | ||||
|     <path | ||||
|        sodipodi:nodetypes="cssccc" | ||||
|        id="path847" | ||||
|        d="m 104.31937,92.914593 c 0.30973,10.797187 4.11432,14.124527 16.08115,18.642697 4.27327,1.61341 5.48703,4.07564 5.82149,10.14631 0.25591,4.64494 0.21908,8.00572 6.51967,12.97682 0,0 0.91365,5.00014 5.35946,9.09447 m -20.00849,2.48781 c 9.4708,20.21912 21.0445,8.40162 20.00849,-2.48781 0,0 1.67522,-5.03161 -5.34509,-9.18001" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        sodipodi:nodetypes="cc" | ||||
|        id="path851" | ||||
|        d="m 135.72911,136.72365 c 0.18452,-0.55093 2.96947,-0.34716 1.6745,2.47495" | ||||
|        style="opacity:1;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        sodipodi:nodetypes="ccsc" | ||||
|        id="path855" | ||||
|        d="m 130.47058,156.94101 c -0.2307,13.40549 0.0213,26.01055 8.04754,39.03058 3.05007,6.65748 3.57659,3.55475 6.32044,18.85292 1.09106,6.08312 -0.10374,12.48545 -0.16037,19.81444" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        sodipodi:nodetypes="cc" | ||||
|        id="path857" | ||||
|        d="m 109.19896,146.83623 c 0,0 -12.901525,21.58057 -31.601551,0.86672" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <ellipse | ||||
|        ry="3.0457127" | ||||
|        rx="1.0819" | ||||
|        cy="139.14059" | ||||
|        cx="95.920715" | ||||
|        id="path859" | ||||
|        style="opacity:1;fill:none;fill-rule:evenodd;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none" /> | ||||
|     <ellipse | ||||
|        cx="94.392563" | ||||
|        cy="136.44125" | ||||
|        rx="4.5837765" | ||||
|        ry="4.6306114" | ||||
|        id="path861" | ||||
|        style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <ellipse | ||||
|        ry="1.1067159" | ||||
|        rx="1.0600367" | ||||
|        cy="135.93007" | ||||
|        cx="94.511871" | ||||
|        id="path863" | ||||
|        style="opacity:1;fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        sodipodi:nodetypes="cc" | ||||
|        id="path868" | ||||
|        d="m 67.229468,149.10354 c 6.462479,18.43696 18.334243,22.55189 7.965853,45.42625" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        sodipodi:nodetypes="csscsc" | ||||
|        id="path870" | ||||
|        d="m 83.796706,76.943911 c 0.68774,10.292423 -2.480312,17.825741 -11.544147,20.994868 -5.483973,1.917446 -7.810811,-1.016747 -12.033763,1.963836 -5.640966,3.981425 -5.649707,2.041005 -10.158844,18.475215 -4.711947,37.97162 -0.738757,34.73925 -2.602289,53.55303 -0.8239,8.3179 1.325023,9.15922 2.510932,10.69244 0,0 18.473818,31.61929 29.947866,43.79767" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        sodipodi:nodetypes="cssssssssssssscscsscsccc" | ||||
|        id="path872" | ||||
|        d="m 79.916461,226.42097 c 0,0 3.418602,4.02486 4.085471,10.37895 0.666869,6.35408 1.935951,6.09012 3.390561,9.91338 1.45461,3.82327 1.455782,7.97935 3.96567,14.94285 1.666302,4.62303 3.309447,0.21611 2.652572,-2.40103 -1.172902,-4.67309 -0.599474,-14.25364 2.081567,-4.90206 1.043323,3.63915 2.57166,6.49568 3.841638,9.70261 2.02037,5.1018 6.13074,5.49259 3.88637,-0.0994 -1.61645,-4.02746 -5.750274,-17.1406 0.81061,-3.82837 0.66031,1.33979 1.27689,3.27498 1.71675,4.31779 2.15695,5.11369 6.41232,5.24871 3.65521,-1.30778 -0.48187,-1.14591 -0.99237,-3.02967 -1.56412,-4.66952 -3.82171,-10.96118 1.41863,-1.19146 2.04884,0.4515 1.86563,4.86377 7.88994,7.05968 2.37181,-4.26799 -5.41981,-11.12583 -6.34787,-9.83174 -3.48269,-8.68522 2.26512,0.82054 2.37906,-0.64198 1.41074,-2.44275 -1.42424,-2.64862 -2.03437,-4.72117 -3.92765,-5.90878 -3.28217,-2.6841 -1.67896,-2.67415 -6.81962,-6.22595 -5.18416,-3.58186 -5.232522,-3.94571 -9.085932,-10.37667 -3.853413,-6.43096 -18.302345,-29.70749 -25.700847,-44.92839 0,0 -1.365545,-2.93237 -0.286362,-6.32947 1.079184,-3.3971 2.262419,-20.65113 2.262419,-20.65113 v 0 0" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path874" | ||||
|        d="m 129.88627,223.33866 c 0,0 -15.36169,19.5926 -16.03745,20.20131 -0.67576,0.60872 -1.20843,3.66907 -2.83598,2.22092" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path876" | ||||
|        d="m 112.44212,245.83604 c 0,0 4.90781,10.59438 8.79014,23.03963" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path880" | ||||
|        d="m 144.85432,227.03901 c 0,0 1.06165,1.66116 1.30501,5.22018" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path882" | ||||
|        d="m 148.81425,230.64911 c 0,0 -2.77497,0.84717 -4.13606,3.98984 -1.36109,3.14267 -0.533,4.34249 -1.13992,5.32773 -0.60691,0.98524 -5.27839,6.2654 -4.32705,8.61069 0.95134,2.3453 3.19072,1.7044 3.92863,0.4697 0.7379,-1.2347 2.07336,-3.46833 6.06553,-8.63034" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path884" | ||||
|        d="m 145.03515,246.41507 c 0,0 -1.08143,3.78374 -0.43801,5.74159" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path886" | ||||
|        d="m 144.59714,252.15666 c 0,0 -1.00349,1.12128 -1.03528,4.12379 0,0 -0.99706,0.98154 -1.53679,3.7948" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path890" | ||||
|        d="m 143.96669,247.96664 c 0,0 -0.73401,7.23845 -1.94162,12.10861 -1.20761,4.87016 -1.58405,8.81219 -1.58405,8.81219" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path892" | ||||
|        d="m 94.311755,102.88336 c 0,0 -18.454632,-3.936053 -27.852172,-4.234307" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path894" | ||||
|        d="m 116.01303,200.40954 c 0,0 -2.52401,-1.00071 -1.1965,-4.01527 1.32751,-3.01456 2.22604,1.12324 2.22604,1.12324" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path896" | ||||
|        d="m 140.72313,266.7576 c 0,0 -0.31108,3.79349 2.95598,-0.49766 3.26706,-4.29112 5.3728,-6.2281 5.68734,-8.00622 0.31453,-1.77811 0.38413,-1.89314 0.56614,-3.30631 0.18201,-1.41318 0.96524,-2.07437 1.25557,-2.86807 0.29032,-0.79369 0.9636,-2.39744 0.71273,-3.30103 -0.25087,-0.90358 1.80476,-7.56603 2.59834,-9.13457 0.79359,-1.56854 0.89816,-4.05801 1.14694,-4.74678 0.24878,-0.68878 1.12173,-4.72808 -0.82091,-9.74124 -1.94264,-5.01316 -6.9312,-16.61009 -8.20939,-21.22181 -1.2782,-4.61171 -7.49048,-20.41009 -9.96667,-25.07059 -2.4762,-4.6605 -6.13098,-20.38868 -6.13098,-20.38868" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path898" | ||||
|        d="m 70.332017,214.30754 c 0,0 -3.147949,5.24832 3.527965,31.83704 6.675913,26.58871 7.168062,22.85356 7.168062,22.85356" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path919" | ||||
|        d="m 107.13189,253.36427 c 0,0 -1.79551,-2.46316 -3.17028,-4.86368" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path921" | ||||
|        d="m 101.17971,254.27007 c 0,0 -0.90603,-2.20792 -1.442881,-3.60809" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|     <path | ||||
|        id="path943" | ||||
|        d="m 107.96012,245.24238 c 0,0 -1.77997,-1.64168 -3.70636,-5.09742" | ||||
|        style="opacity:1;fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> | ||||
|   </g> | ||||
| </svg> | ||||
| After Width: | Height: | Size: 11 KiB | 
							
								
								
									
										16
									
								
								package.json
								
								
								
								
							
							
						
						|  | @ -21,14 +21,14 @@ | |||
|         "seed-make": "knex seed:make", | ||||
|         "seed": "knex seed:run", | ||||
|         "flush": "cli-confirm \"This completely purges the database, are you sure?\" && knex-migrate down --to 0 && knex-migrate up && knex seed:run", | ||||
|         "thumbs-tag": "mkdir -p \"public/img/tags/$TAG/thumbs\"; mogrify -path \"public/img/tags/$TAG/thumbs\" -resize x240 -quality 90% \"public/img/tags/$TAG/*.jpeg\"", | ||||
|         "thumbs-tags": "for dir in public/img/tags/*; do mkdir -p \"$dir/thumbs\"; mogrify -path \"$dir/thumbs\" -resize x240 -quality 90% \"$dir/*.jpeg\"; done", | ||||
|         "thumbs-logo": "mkdir -p \"public/img/logos/$LOGO/thumbs\"; mogrify -path \"public/img/logos/$LOGO/thumbs\" -resize x80 \"public/img/logos/$LOGO/*.png\"", | ||||
|         "thumbs-logos": "for dir in public/img/logos/*; do mkdir -p \"$dir/thumbs\"; mogrify -path \"$dir/thumbs\" -resize x80 \"$dir/*.png\"; done", | ||||
|         "lazy-tag": "mkdir -p \"public/img/tags/$TAG/lazy\"; mogrify -path \"public/img/tags/$TAG/lazy\" -resize x90 -quality 90% \"public/img/tags/$TAG/*.jpeg\"", | ||||
|         "lazy-tags": "for dir in public/img/tags/*; do mkdir -p \"$dir/lazy\"; mogrify -path \"$dir/lazy\" -resize x90 -quality 90% \"$dir/*.jpeg\"; done", | ||||
|         "lazy-logo": "mkdir -p \"public/img/logos/$LOGO/lazy\"; mogrify -path \"public/img/logos/$LOGO/lazy\" -resize x25 \"public/img/logos/$LOGO/*.png\"", | ||||
|         "lazy-logos": "for dir in public/img/logos/*; do mkdir -p \"$dir/lazy\"; mogrify -path \"$dir/lazy\" -resize x25 \"$dir/*.png\"; done" | ||||
|         "thumbs-tag": "mkdir -p \"public/img/tags/$TAG/thumbs\"; mogrify -path \"public/img/tags/$TAG/thumbs\" -resize x240\\> -quality 90% \"public/img/tags/$TAG/*.jpeg\"", | ||||
|         "thumbs-tags": "for dir in public/img/tags/*; do mkdir -p \"$dir/thumbs\"; mogrify -path \"$dir/thumbs\" -resize x240\\> -quality 90% \"$dir/*.jpeg\"; done", | ||||
|         "thumbs-logo": "mkdir -p \"public/img/logos/$LOGO/thumbs\"; mogrify -path \"public/img/logos/$LOGO/thumbs\" -resize x80\\> \"public/img/logos/$LOGO/*.png\"", | ||||
|         "thumbs-logos": "for dir in public/img/logos/*; do mkdir -p \"$dir/thumbs\"; mogrify -path \"$dir/thumbs\" -resize x80\\> \"$dir/*.png\"; done", | ||||
|         "lazy-tag": "mkdir -p \"public/img/tags/$TAG/lazy\"; mogrify -path \"public/img/tags/$TAG/lazy\" -resize x90\\> -quality 90% \"public/img/tags/$TAG/*.jpeg\"", | ||||
|         "lazy-tags": "for dir in public/img/tags/*; do mkdir -p \"$dir/lazy\"; mogrify -path \"$dir/lazy\" -resize x90\\> -quality 90% \"$dir/*.jpeg\"; done", | ||||
|         "lazy-logo": "mkdir -p \"public/img/logos/$LOGO/lazy\"; mogrify -path \"public/img/logos/$LOGO/lazy\" -resize x25\\> \"public/img/logos/$LOGO/*.png\"", | ||||
|         "lazy-logos": "for dir in public/img/logos/*; do mkdir -p \"$dir/lazy\"; mogrify -path \"$dir/lazy\" -resize x25\\> \"$dir/*.png\"; done" | ||||
|     }, | ||||
|     "repository": { | ||||
|         "type": "git", | ||||
|  |  | |||
| Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 28 KiB | 
| After Width: | Height: | Size: 25 KiB | 
| After Width: | Height: | Size: 33 KiB | 
| Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 49 KiB | 
| Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 2.1 KiB | 
| Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB | 
| After Width: | Height: | Size: 2.8 KiB | 
| Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB | 
| Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB | 
| Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB | 
| Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 66 KiB | 
| After Width: | Height: | Size: 2.6 KiB | 
| Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB | 
| Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB | 
| Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB | 
| Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB | 
| Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB | 
| Before Width: | Height: | Size: 9.1 KiB After Width: | Height: | Size: 9.1 KiB | 
| Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 11 KiB | 
| Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB | 
| Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB | 
| Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 47 KiB | 
| Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 50 KiB | 
| Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB | 
| Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB | 
| Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB | 
| Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB | 
| Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB | 
| Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB | 
| Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB | 
| Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 25 KiB | 
| Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 21 KiB | 
| Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB | 
| After Width: | Height: | Size: 2.6 KiB | 
| Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB | 
| Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB | 
| Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 16 KiB | 
| Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 20 KiB | 
| Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 9.2 KiB | 
| Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 9.3 KiB | 
| Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB | 
| Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB | 
| Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB | 
| Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB | 
| Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 49 KiB | 
| After Width: | Height: | Size: 1.5 KiB | 
| Before Width: | Height: | Size: 53 KiB After Width: | Height: | Size: 53 KiB | 
| Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB | 
| Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 9.7 KiB | 
| Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB | 
| After Width: | Height: | Size: 2.4 KiB | 
| Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB | 
| Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB | 
| Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB | 
| After Width: | Height: | Size: 2.7 KiB | 
| Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB | 
| Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB | 
| Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 3.1 KiB | 
| Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB | 
| Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB | 
| After Width: | Height: | Size: 1.4 KiB | 
| Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 5.2 KiB | 
| Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 17 KiB | 
| Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 20 KiB | 
| Before Width: | Height: | Size: 8.7 KiB After Width: | Height: | Size: 4.3 KiB | 
| Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 9.1 KiB | 
| Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB | 
| Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 8.6 KiB | 
| Before Width: | Height: | Size: 7.6 KiB After Width: | Height: | Size: 7.6 KiB | 
| Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 6.7 KiB | 
| After Width: | Height: | Size: 2.1 KiB | 
| Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB | 
| Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB | 
| Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 25 KiB | 
| After Width: | Height: | Size: 3.5 KiB | 
| Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 19 KiB | 
| Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB | 
| Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 19 KiB | 
| Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.6 KiB | 
| Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB | 
| Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 8.4 KiB | 
| Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 37 KiB | 
| Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB | 
| Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB | 
| Before Width: | Height: | Size: 7.9 KiB After Width: | Height: | Size: 7.9 KiB |