Compare commits
8 Commits
4fb41a4c35
...
1d686d7e40
Author | SHA1 | Date |
---|---|---|
|
1d686d7e40 | |
|
488d1082e4 | |
|
8967907893 | |
|
e527a67dc1 | |
|
6847ef690c | |
|
96a2125248 | |
|
c5e4310a6b | |
|
23b41fc4f3 |
|
@ -1,13 +1,13 @@
|
||||||
<template>
|
<template>
|
||||||
<a
|
<a
|
||||||
v-if="campaign"
|
v-if="campaign"
|
||||||
:href="campaign.url"
|
:href="campaign.url || campaign.affiliate?.url"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
class="campaign"
|
class="campaign"
|
||||||
>
|
>
|
||||||
<img
|
<img
|
||||||
v-if="campaign.banner.entity.type === 'network'"
|
v-if="campaign.banner.entity.type === 'network' || !campaign.banner.entity.parent"
|
||||||
:src="`/img/banners/${campaign.banner.entity.slug}/${campaign.banner.id}.jpg`"
|
:src="`/img/banners/${campaign.banner.entity.slug}/${campaign.banner.id}.${campaign.banner.type || 'jpg'}`"
|
||||||
:width="campaign.banner.width"
|
:width="campaign.banner.width"
|
||||||
:height="campaign.banner.height"
|
:height="campaign.banner.height"
|
||||||
class="campaign-banner"
|
class="campaign-banner"
|
||||||
|
@ -15,7 +15,7 @@
|
||||||
|
|
||||||
<img
|
<img
|
||||||
v-if="campaign.banner.entity.type === 'channel' && campaign.banner.entity.parent?.type === 'network'"
|
v-if="campaign.banner.entity.type === 'channel' && campaign.banner.entity.parent?.type === 'network'"
|
||||||
:src="`/img/banners/${campaign.banner.entity.parent.slug}/${campaign.banner.entity.slug}/${campaign.banner.id}.jpg`"
|
:src="`/img/banners/${campaign.banner.entity.parent.slug}/${campaign.banner.entity.slug}/${campaign.banner.id}.${campaign.banner.type || 'jpg'}`"
|
||||||
:width="campaign.banner.width"
|
:width="campaign.banner.width"
|
||||||
:height="campaign.banner.height"
|
:height="campaign.banner.height"
|
||||||
class="campaign-banner"
|
class="campaign-banner"
|
||||||
|
@ -106,6 +106,14 @@ export default {
|
||||||
type: Object,
|
type: Object,
|
||||||
default: null,
|
default: null,
|
||||||
},
|
},
|
||||||
|
minHeight: {
|
||||||
|
type: Number,
|
||||||
|
default: null,
|
||||||
|
},
|
||||||
|
maxHeight: {
|
||||||
|
type: Number,
|
||||||
|
default: null,
|
||||||
|
},
|
||||||
minRatio: {
|
minRatio: {
|
||||||
type: Number,
|
type: Number,
|
||||||
default: null,
|
default: null,
|
||||||
|
|
|
@ -148,7 +148,16 @@ async function fetchEntity(scroll = true) {
|
||||||
this.totalCount = totalCount;
|
this.totalCount = totalCount;
|
||||||
|
|
||||||
this.pageTitle = entity.name;
|
this.pageTitle = entity.name;
|
||||||
this.entityUrl = entity.campaigns.find(campaign => !campaign.banner)?.url || entity.url;
|
|
||||||
|
const campaign = entity.campaigns.find(campaignX => !campaignX.banner)
|
||||||
|
|| entity.parent?.campaigns.find(campaignX => !campaignX.banner);
|
||||||
|
|
||||||
|
const affiliateParams = new URLSearchParams({
|
||||||
|
...(entity.url && Object.fromEntries(new URL(entity.url).searchParams)), // preserve any query in entity URL, e.g. ?siteId=5
|
||||||
|
...(campaign?.affiliate?.parameters && Object.fromEntries(new URLSearchParams(campaign.affiliate.parameters))), // append affiliate parameters
|
||||||
|
}).toString();
|
||||||
|
|
||||||
|
this.entityUrl = campaign?.url || campaign?.affiliate?.url || `${entity.url}${campaign?.affiliate?.parameters ? `?${affiliateParams}` : ''}`;
|
||||||
|
|
||||||
if (scroll && this.$refs.filter?.$el) {
|
if (scroll && this.$refs.filter?.$el) {
|
||||||
this.$refs.filter.$el.scrollIntoView();
|
this.$refs.filter.$el.scrollIntoView();
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<div class="media-container">
|
<div class="media-container">
|
||||||
<div
|
<div
|
||||||
class="media"
|
class="media"
|
||||||
:class="{ center: release.photos.length < 2 }"
|
:class="{ center: release.photos.length < 2, preview: !me }"
|
||||||
>
|
>
|
||||||
<div
|
<div
|
||||||
v-if="release.trailer || release.teaser"
|
v-if="release.trailer || release.teaser"
|
||||||
|
@ -337,7 +337,7 @@ export default {
|
||||||
}
|
}
|
||||||
|
|
||||||
@media(max-width: $breakpoint-micro) {
|
@media(max-width: $breakpoint-micro) {
|
||||||
.media.center {
|
.media.center.preview {
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -89,6 +89,7 @@ async function mounted() {
|
||||||
],
|
],
|
||||||
cumshot: [
|
cumshot: [
|
||||||
'facial',
|
'facial',
|
||||||
|
'bukkake',
|
||||||
'creampie',
|
'creampie',
|
||||||
'cum-in-mouth',
|
'cum-in-mouth',
|
||||||
'cum-on-boobs',
|
'cum-on-boobs',
|
||||||
|
@ -96,7 +97,6 @@ async function mounted() {
|
||||||
'cum-on-pussy',
|
'cum-on-pussy',
|
||||||
'anal-creampie',
|
'anal-creampie',
|
||||||
'oral-creampie',
|
'oral-creampie',
|
||||||
'bukkake',
|
|
||||||
'fake-cum',
|
'fake-cum',
|
||||||
],
|
],
|
||||||
toys: [
|
toys: [
|
||||||
|
|
|
@ -119,8 +119,14 @@ const campaignsFragment = `
|
||||||
}) {
|
}) {
|
||||||
id
|
id
|
||||||
url
|
url
|
||||||
|
affiliate {
|
||||||
|
id
|
||||||
|
url
|
||||||
|
parameters
|
||||||
|
}
|
||||||
banner {
|
banner {
|
||||||
id
|
id
|
||||||
|
type
|
||||||
width
|
width
|
||||||
height
|
height
|
||||||
ratio
|
ratio
|
||||||
|
|
|
@ -120,6 +120,7 @@ function initTagsActions(store, _router) {
|
||||||
id
|
id
|
||||||
width
|
width
|
||||||
height
|
height
|
||||||
|
type
|
||||||
ratio
|
ratio
|
||||||
entity {
|
entity {
|
||||||
id
|
id
|
||||||
|
|
|
@ -1274,12 +1274,37 @@ exports.up = knex => Promise.resolve()
|
||||||
.notNullable()
|
.notNullable()
|
||||||
.defaultTo(knex.fn.now());
|
.defaultTo(knex.fn.now());
|
||||||
}))
|
}))
|
||||||
|
.then(() => knex.schema.createTable('affiliates', (table) => {
|
||||||
|
table.string('id')
|
||||||
|
.primary()
|
||||||
|
.unique()
|
||||||
|
.notNullable();
|
||||||
|
|
||||||
|
table.integer('entity_id', 12)
|
||||||
|
.references('id')
|
||||||
|
.inTable('entities');
|
||||||
|
|
||||||
|
table.text('url');
|
||||||
|
table.text('parameters');
|
||||||
|
|
||||||
|
table.unique(['entity_id', 'url']);
|
||||||
|
table.unique(['entity_id', 'parameters']);
|
||||||
|
|
||||||
|
table.text('comment');
|
||||||
|
|
||||||
|
table.datetime('created_at')
|
||||||
|
.notNullable()
|
||||||
|
.defaultTo(knex.fn.now());
|
||||||
|
}))
|
||||||
.then(() => knex.schema.createTable('banners', (table) => {
|
.then(() => knex.schema.createTable('banners', (table) => {
|
||||||
table.string('id')
|
table.string('id')
|
||||||
.primary()
|
.primary()
|
||||||
.unique()
|
.unique()
|
||||||
.notNullable();
|
.notNullable();
|
||||||
|
|
||||||
|
table.string('type')
|
||||||
|
.defaultTo('jpg');
|
||||||
|
|
||||||
table.integer('width')
|
table.integer('width')
|
||||||
.notNullable();
|
.notNullable();
|
||||||
|
|
||||||
|
@ -1323,13 +1348,16 @@ exports.up = knex => Promise.resolve()
|
||||||
.references('id')
|
.references('id')
|
||||||
.inTable('entities');
|
.inTable('entities');
|
||||||
|
|
||||||
|
table.text('affiliate_id')
|
||||||
|
.references('id')
|
||||||
|
.inTable('affiliates');
|
||||||
|
|
||||||
|
table.text('url');
|
||||||
|
|
||||||
table.string('banner_id')
|
table.string('banner_id')
|
||||||
.references('id')
|
.references('id')
|
||||||
.inTable('banners');
|
.inTable('banners');
|
||||||
|
|
||||||
table.text('url')
|
|
||||||
.notNullable();
|
|
||||||
|
|
||||||
table.text('comment');
|
table.text('comment');
|
||||||
|
|
||||||
table.datetime('created_at')
|
table.datetime('created_at')
|
||||||
|
@ -1355,8 +1383,10 @@ exports.up = knex => Promise.resolve()
|
||||||
CREATE UNIQUE INDEX unique_actor_slugs_network ON actors (slug, entity_id, entry_id);
|
CREATE UNIQUE INDEX unique_actor_slugs_network ON actors (slug, entity_id, entry_id);
|
||||||
CREATE UNIQUE INDEX unique_actor_slugs ON actors (slug) WHERE entity_id IS NULL;
|
CREATE UNIQUE INDEX unique_actor_slugs ON actors (slug) WHERE entity_id IS NULL;
|
||||||
|
|
||||||
CREATE UNIQUE INDEX unique_entity_campaigns_banner ON campaigns (entity_id, url, banner_id);
|
CREATE UNIQUE INDEX unique_entity_campaigns_banner_url ON campaigns (entity_id, url, banner_id) WHERE affiliate_id IS NULL;
|
||||||
CREATE UNIQUE INDEX unique_entity_campaigns ON campaigns (entity_id, url) WHERE banner_id IS NULL;
|
CREATE UNIQUE INDEX unique_entity_campaigns_url ON campaigns (entity_id, url) WHERE banner_id IS NULL AND affiliate_id IS NULL;
|
||||||
|
CREATE UNIQUE INDEX unique_entity_campaigns_banner_affiliate ON campaigns (entity_id, affiliate_id, banner_id) WHERE url IS NULL;
|
||||||
|
CREATE UNIQUE INDEX unique_entity_campaigns_affiliate ON campaigns (entity_id, affiliate_id) WHERE banner_id IS NULL AND url IS NULL;
|
||||||
|
|
||||||
CREATE UNIQUE INDEX releases_search_unique ON releases_search (release_id);
|
CREATE UNIQUE INDEX releases_search_unique ON releases_search (release_id);
|
||||||
CREATE INDEX releases_search_index ON releases_search USING GIN (document);
|
CREATE INDEX releases_search_index ON releases_search USING GIN (document);
|
||||||
|
@ -1550,6 +1580,12 @@ exports.up = knex => Promise.resolve()
|
||||||
CREATE FUNCTION banners_ratio(banner banners) RETURNS numeric AS $$
|
CREATE FUNCTION banners_ratio(banner banners) RETURNS numeric AS $$
|
||||||
SELECT ROUND(banner.width::decimal / banner.height::decimal, 2);
|
SELECT ROUND(banner.width::decimal / banner.height::decimal, 2);
|
||||||
$$ LANGUAGE SQL STABLE;
|
$$ LANGUAGE SQL STABLE;
|
||||||
|
|
||||||
|
CREATE FUNCTION get_random_campaign() RETURNS SETOF campaigns AS $$
|
||||||
|
SELECT * FROM campaigns
|
||||||
|
ORDER BY random()
|
||||||
|
LIMIT 1;
|
||||||
|
$$ LANGUAGE sql STABLE;
|
||||||
`);
|
`);
|
||||||
})
|
})
|
||||||
// POLICIES
|
// POLICIES
|
||||||
|
@ -1719,6 +1755,8 @@ exports.down = (knex) => { // eslint-disable-line arrow-body-style
|
||||||
DROP TABLE IF EXISTS banners_tags CASCADE;
|
DROP TABLE IF EXISTS banners_tags CASCADE;
|
||||||
DROP TABLE IF EXISTS banners CASCADE;
|
DROP TABLE IF EXISTS banners CASCADE;
|
||||||
DROP TABLE IF EXISTS campaigns CASCADE;
|
DROP TABLE IF EXISTS campaigns CASCADE;
|
||||||
|
DROP TABLE IF EXISTS affiliates CASCADE;
|
||||||
|
|
||||||
DROP TABLE IF EXISTS batches CASCADE;
|
DROP TABLE IF EXISTS batches CASCADE;
|
||||||
|
|
||||||
DROP TABLE IF EXISTS actors_avatars CASCADE;
|
DROP TABLE IF EXISTS actors_avatars CASCADE;
|
||||||
|
@ -1794,6 +1832,7 @@ exports.down = (knex) => { // eslint-disable-line arrow-body-style
|
||||||
DROP POLICY IF EXISTS stashes_policy ON stashes_actors;
|
DROP POLICY IF EXISTS stashes_policy ON stashes_actors;
|
||||||
|
|
||||||
DROP FUNCTION IF EXISTS current_user_id;
|
DROP FUNCTION IF EXISTS current_user_id;
|
||||||
|
DROP FUNCTION IF EXISTS get_random_campaign;
|
||||||
|
|
||||||
DROP TABLE IF EXISTS releases_search_results;
|
DROP TABLE IF EXISTS releases_search_results;
|
||||||
`);
|
`);
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "traxxx",
|
"name": "traxxx",
|
||||||
"version": "1.196.3",
|
"version": "1.196.6",
|
||||||
"lockfileVersion": 2,
|
"lockfileVersion": 2,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "traxxx",
|
"name": "traxxx",
|
||||||
"version": "1.196.3",
|
"version": "1.196.6",
|
||||||
"description": "All the latest porn releases in one place",
|
"description": "All the latest porn releases in one place",
|
||||||
"main": "src/app.js",
|
"main": "src/app.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|
After Width: | Height: | Size: 64 KiB |
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 146 KiB |
After Width: | Height: | Size: 48 KiB |
After Width: | Height: | Size: 498 KiB |
After Width: | Height: | Size: 145 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 46 KiB |
After Width: | Height: | Size: 191 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 22 KiB |
After Width: | Height: | Size: 73 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 953 B |
After Width: | Height: | Size: 953 B |
After Width: | Height: | Size: 953 B |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 1.3 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 4.1 KiB |
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 1.7 MiB |
After Width: | Height: | Size: 1.7 MiB |
After Width: | Height: | Size: 7.3 KiB |
After Width: | Height: | Size: 7.3 KiB |
After Width: | Height: | Size: 37 KiB |
After Width: | Height: | Size: 38 KiB |
After Width: | Height: | Size: 1.7 MiB |
After Width: | Height: | Size: 9.4 KiB |
After Width: | Height: | Size: 6.3 KiB |
After Width: | Height: | Size: 6.4 KiB |
After Width: | Height: | Size: 1.8 MiB |
After Width: | Height: | Size: 1.4 MiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 29 KiB |
After Width: | Height: | Size: 1.8 MiB |
After Width: | Height: | Size: 1.4 MiB |
After Width: | Height: | Size: 583 KiB |
After Width: | Height: | Size: 456 KiB |
After Width: | Height: | Size: 469 KiB |
After Width: | Height: | Size: 587 KiB |
After Width: | Height: | Size: 579 KiB |
After Width: | Height: | Size: 522 KiB |
After Width: | Height: | Size: 8.6 KiB |
After Width: | Height: | Size: 7.5 KiB |
After Width: | Height: | Size: 7.1 KiB |
After Width: | Height: | Size: 7.5 KiB |
After Width: | Height: | Size: 7.9 KiB |
After Width: | Height: | Size: 6.7 KiB |
After Width: | Height: | Size: 7.2 KiB |
After Width: | Height: | Size: 7.5 KiB |
After Width: | Height: | Size: 8.1 KiB |
After Width: | Height: | Size: 1.3 MiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 36 KiB |
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 33 KiB |
After Width: | Height: | Size: 42 KiB |
After Width: | Height: | Size: 20 MiB |
After Width: | Height: | Size: 7.2 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 2.8 MiB |
After Width: | Height: | Size: 1.3 MiB |
After Width: | Height: | Size: 7.7 KiB |
After Width: | Height: | Size: 6.0 KiB |
After Width: | Height: | Size: 39 KiB |
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 505 KiB |
After Width: | Height: | Size: 9.5 KiB |
After Width: | Height: | Size: 44 KiB |
After Width: | Height: | Size: 857 KiB |
After Width: | Height: | Size: 7.1 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 7.3 KiB |
After Width: | Height: | Size: 2.7 MiB |
After Width: | Height: | Size: 34 KiB |
After Width: | Height: | Size: 5.9 KiB |
After Width: | Height: | Size: 1.6 MiB |
After Width: | Height: | Size: 28 KiB |
|
@ -934,6 +934,7 @@ const tags = [
|
||||||
name: 'teen',
|
name: 'teen',
|
||||||
slug: 'teen',
|
slug: 'teen',
|
||||||
group: 'age',
|
group: 'age',
|
||||||
|
description: 'New starlets aged between roughly 18 and 21, but often stretched to well into their 20s.',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'titty fucking',
|
name: 'titty fucking',
|
||||||
|
|
|
@ -504,6 +504,17 @@ const sites = [
|
||||||
profile: 'http://www.american-pornstar.com/models',
|
profile: 'http://www.american-pornstar.com/models',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
// ARCH ANGEL
|
||||||
|
{
|
||||||
|
slug: 'archangel',
|
||||||
|
name: 'ArchAngel',
|
||||||
|
url: 'https://www.archangelvideo.com',
|
||||||
|
parameters: {
|
||||||
|
latest: 'https://www.archangelvideo.com/tour/categories/movies/{page}/latest/',
|
||||||
|
profile: 'https://www.archangelvideo.com/tour/models/{slug}.html',
|
||||||
|
sets: 'https://www.archangelvideo.com/tour/sets.php',
|
||||||
|
},
|
||||||
|
},
|
||||||
// ASSYLUM
|
// ASSYLUM
|
||||||
{
|
{
|
||||||
slug: 'assylum',
|
slug: 'assylum',
|
||||||
|
|
|
@ -611,6 +611,7 @@ const tagMedia = [
|
||||||
['anal', 0, 'Adriana Chechik in "Manuel Creampies Their Asses 3"', 'julesjordan'],
|
['anal', 0, 'Adriana Chechik in "Manuel Creampies Their Asses 3"', 'julesjordan'],
|
||||||
['anal', 'nikki_benz_bigwetbutts', 'Nikki Benz in "Pantyhose Playtime"', 'bigwetbutts'],
|
['anal', 'nikki_benz_bigwetbutts', 'Nikki Benz in "Pantyhose Playtime"', 'bigwetbutts'],
|
||||||
['anal', 7, 'Anastasia Brokelyn', 'bangbros'],
|
['anal', 7, 'Anastasia Brokelyn', 'bangbros'],
|
||||||
|
['anal', 'gia_derza_julesjordan', 'Gia Derza in "Manuel Opens Their Asses 8"', 'julesjordan'],
|
||||||
['anal', 6, 'Chloe Cherry in "Chloe\'s Big Anal"', 'darkx'],
|
['anal', 6, 'Chloe Cherry in "Chloe\'s Big Anal"', 'darkx'],
|
||||||
['anal', 4, 'Lana Roy in "Anal In The Club"', '21naturals'],
|
['anal', 4, 'Lana Roy in "Anal In The Club"', '21naturals'],
|
||||||
['anal', 3, 'Dakota Skye', 'brazzers'],
|
['anal', 3, 'Dakota Skye', 'brazzers'],
|
||||||
|
@ -649,6 +650,8 @@ const tagMedia = [
|
||||||
['blonde', 3, 'Kylie Page in "A Juicy Afternoon Delight"', 'newsensations'],
|
['blonde', 3, 'Kylie Page in "A Juicy Afternoon Delight"', 'newsensations'],
|
||||||
['blonde', 'shawna_lenee_sunrisekings', 'Shawna Lenee', 'sunrisekings'],
|
['blonde', 'shawna_lenee_sunrisekings', 'Shawna Lenee', 'sunrisekings'],
|
||||||
['blonde', 2, 'Isabelle Deltore', 'herlimit'],
|
['blonde', 2, 'Isabelle Deltore', 'herlimit'],
|
||||||
|
['blowbang', 'ana_foxxx_hardx', 'Ana Foxxx in "Facialized Vol. 4"', 'hardx'],
|
||||||
|
['blowbang', 'monika_fox_legalporno', 'Monika Fox in GL479', 'legalporno'],
|
||||||
['blowbang', 0, 'Lacy Lennon in "Lacy Lennon\'s First Blowbang"', 'hardx'],
|
['blowbang', 0, 'Lacy Lennon in "Lacy Lennon\'s First Blowbang"', 'hardx'],
|
||||||
['blowbang', 'zaawaadi_roccosiffredi_1', 'Zaawaadi in "My Name Is Zaawaadi"', 'roccosiffredi'],
|
['blowbang', 'zaawaadi_roccosiffredi_1', 'Zaawaadi in "My Name Is Zaawaadi"', 'roccosiffredi'],
|
||||||
['blowbang', 'gina_gerson_assholefever', 'Gina Gerson in "Oppa Gangbang Style"', 'assholefever'],
|
['blowbang', 'gina_gerson_assholefever', 'Gina Gerson in "Oppa Gangbang Style"', 'assholefever'],
|
||||||
|
@ -665,11 +668,14 @@ const tagMedia = [
|
||||||
['blowjob', 2, 'Luna Kitsuen in "Gag Reflex"', 'evilangel'],
|
['blowjob', 2, 'Luna Kitsuen in "Gag Reflex"', 'evilangel'],
|
||||||
['bondage', 0, 'Veronica Leal', 'herlimit'],
|
['bondage', 0, 'Veronica Leal', 'herlimit'],
|
||||||
['brunette', 0, 'Darcie Dolce', 'playboy'],
|
['brunette', 0, 'Darcie Dolce', 'playboy'],
|
||||||
['bts', '3b', 'Brenna Sparks! Confessions', 'bangconfessions'],
|
['bts', '3b', 'Brenna Sparks', 'bangconfessions'],
|
||||||
['bts', 0, 'Janice Griffith in "Day With A Pornstar: Janice"', 'brazzers'],
|
['bts', 0, 'Janice Griffith in "Day With A Pornstar: Janice"', 'brazzers'],
|
||||||
['bts', 1, 'Madison Ivy in "Day With A Pornstar"', 'brazzers'],
|
['bts', 1, 'Madison Ivy in "Day With A Pornstar"', 'brazzers'],
|
||||||
['bts', 2, 'Christy Mack', 'digitalplayground'],
|
['bts', 2, 'Christy Mack', 'digitalplayground'],
|
||||||
['bukkake', 0, 'Jaye Summers in "Facialized 5"', 'hardx'],
|
['bukkake', 0, 'Jaye Summers in "Facialized 5"', 'hardx'],
|
||||||
|
['bukkake', 'ana_foxxx_hardx', 'Ana Foxxx in "Facialized Vol. 4"', 'hardx'],
|
||||||
|
['bukkake', 'jasmine_byrne_julesjordan', 'Jasmine Byrne in "Flesh Hunter 10"', 'julesjordan'],
|
||||||
|
['bukkake', 'megan_rain_julesjordan', 'Megan Rain in "Slutty Teen In A 10 Cock Blowbang! It\'s RAINING Cum!"', 'julesjordan'],
|
||||||
['creampie', 1, 'Eveline Dellai', 'nubiles'],
|
['creampie', 1, 'Eveline Dellai', 'nubiles'],
|
||||||
['creampie', 3, 'Silvia Soprina in "Satisfaction"', '5kteens'],
|
['creampie', 3, 'Silvia Soprina in "Satisfaction"', '5kteens'],
|
||||||
['creampie', 2, 'Natasha Lapiedra in "New and Ready"', '5kporn'],
|
['creampie', 2, 'Natasha Lapiedra in "New and Ready"', '5kporn'],
|
||||||
|
@ -685,6 +691,7 @@ const tagMedia = [
|
||||||
['cum-on-boobs', 1, 'Kylie Page in "Melt In Your Mouth"', 'twistyshard'],
|
['cum-on-boobs', 1, 'Kylie Page in "Melt In Your Mouth"', 'twistyshard'],
|
||||||
['cum-on-boobs', 0, 'Alessandra Jane', 'private'],
|
['cum-on-boobs', 0, 'Alessandra Jane', 'private'],
|
||||||
['cum-on-boobs', 2, 'Blake Blossom in "Naturally Stacked Cutie"', 'hardx'],
|
['cum-on-boobs', 2, 'Blake Blossom in "Naturally Stacked Cutie"', 'hardx'],
|
||||||
|
['cum-on-butt', 'chloe_temple_macy_meadows_brattysis', 'Chloe Temple and Macy Meadows', 'brattysis'],
|
||||||
['cum-on-butt', 0, 'Jynx Maze in "Don\'t Make Me Beg 4"', 'evilangel'],
|
['cum-on-butt', 0, 'Jynx Maze in "Don\'t Make Me Beg 4"', 'evilangel'],
|
||||||
['cum-on-pussy', 0, 'Talinka A', 'sexart'],
|
['cum-on-pussy', 0, 'Talinka A', 'sexart'],
|
||||||
['da-tp', 7, 'Polly Petrova in YE069', 'legalporno'],
|
['da-tp', 7, 'Polly Petrova in YE069', 'legalporno'],
|
||||||
|
@ -705,6 +712,7 @@ const tagMedia = [
|
||||||
['dap', 0, 'Nicole Black doing double anal during a gangbang in GIO971', 'legalporno'],
|
['dap', 0, 'Nicole Black doing double anal during a gangbang in GIO971', 'legalporno'],
|
||||||
['deepthroat', 2, 'Sarah Vandella', 'throated'],
|
['deepthroat', 2, 'Sarah Vandella', 'throated'],
|
||||||
['deepthroat', 3, 'Kira Noir in "Ebony Throat Vs Monster Cock"', 'throated'],
|
['deepthroat', 3, 'Kira Noir in "Ebony Throat Vs Monster Cock"', 'throated'],
|
||||||
|
['deepthroat', 'cathy_heaven_brazzers', 'Cathy Heaven in " 7 Minutes in Mrs. Heaven"', 'brazzers'],
|
||||||
['deepthroat', 4, 'Tammy', 'youngthroats'],
|
['deepthroat', 4, 'Tammy', 'youngthroats'],
|
||||||
['deepthroat', 1, 'Jynx Maze in "Slutty and Sluttier 13"', 'evilangel'],
|
['deepthroat', 1, 'Jynx Maze in "Slutty and Sluttier 13"', 'evilangel'],
|
||||||
['deepthroat', 0, 'Chanel Grey in "Deepthroating Is Fun"', 'throated'],
|
['deepthroat', 0, 'Chanel Grey in "Deepthroating Is Fun"', 'throated'],
|
||||||
|
@ -768,6 +776,7 @@ const tagMedia = [
|
||||||
['facefucking', 5, 'Mia Moore B', 'throated'],
|
['facefucking', 5, 'Mia Moore B', 'throated'],
|
||||||
['facefucking', 6, 'Halle Hayes in "Towering Temptress"', '5kporn'],
|
['facefucking', 6, 'Halle Hayes in "Towering Temptress"', '5kporn'],
|
||||||
['facefucking', 'adria_rae_throated', 'Adria Rae in "Adria Rae Sucks Cock All Day"', 'throated'],
|
['facefucking', 'adria_rae_throated', 'Adria Rae in "Adria Rae Sucks Cock All Day"', 'throated'],
|
||||||
|
['facefucking', 'cathy_heaven_roccosiffredi', 'Cathy Heaven', 'roccosiffredi'],
|
||||||
['facefucking', 1, 'Paige Owens in "Dark Meat 12"', 'evilangel'],
|
['facefucking', 1, 'Paige Owens in "Dark Meat 12"', 'evilangel'],
|
||||||
['facefucking', 7, 'Anya Olsen and Audrey Snow in "Babysitter Busted Giving A BJ"', 'mommyblowsbest'],
|
['facefucking', 7, 'Anya Olsen and Audrey Snow in "Babysitter Busted Giving A BJ"', 'mommyblowsbest'],
|
||||||
['facefucking', 0, 'Ashly Anderson in "Rough Love"', 'hookuphotshot'],
|
['facefucking', 0, 'Ashly Anderson in "Rough Love"', 'hookuphotshot'],
|
||||||
|
@ -777,7 +786,8 @@ const tagMedia = [
|
||||||
['facial', 0, 'Brooklyn Gray in "All About Ass 4"', 'evilangel'],
|
['facial', 0, 'Brooklyn Gray in "All About Ass 4"', 'evilangel'],
|
||||||
['facial', 3, 'Paige Owens in "Oral Restraint"', 'babes'],
|
['facial', 3, 'Paige Owens in "Oral Restraint"', 'babes'],
|
||||||
['facial', 'mia_malkova_manojob_2', 'Mia Malkova in "Covered!"', 'manojob'],
|
['facial', 'mia_malkova_manojob_2', 'Mia Malkova in "Covered!"', 'manojob'],
|
||||||
['facial', 'poster', 'Jynx Maze'],
|
['facial', 'alicia_williams_holed', 'Alicia Wiliams in "Bath and Anal"', 'holed'],
|
||||||
|
['facial', 'poster', 'Jynx Maze in "Gag Reflex 3"', 'evilangel'],
|
||||||
['facial', 'hope_howell_manojob', 'Hope Howell in "Super Slutty Step-Daugher"', 'manojob'],
|
['facial', 'hope_howell_manojob', 'Hope Howell in "Super Slutty Step-Daugher"', 'manojob'],
|
||||||
['facial', 2, 'Ashly Anderson', 'hookuphotshot'],
|
['facial', 2, 'Ashly Anderson', 'hookuphotshot'],
|
||||||
['facial', 4, 'Kendra Heart', 'facialsforever'],
|
['facial', 4, 'Kendra Heart', 'facialsforever'],
|
||||||
|
@ -829,8 +839,9 @@ const tagMedia = [
|
||||||
['fisting-dp', 0, 'Janice Griffith and Veronica Avluv in "The Nymphomaniac\'s Apprentice', 'theupperfloor'],
|
['fisting-dp', 0, 'Janice Griffith and Veronica Avluv in "The Nymphomaniac\'s Apprentice', 'theupperfloor'],
|
||||||
['gangbang', 5, 'Carter Cruise\'s first gangbang in "Slut Puppies 9"', 'julesjordan'],
|
['gangbang', 5, 'Carter Cruise\'s first gangbang in "Slut Puppies 9"', 'julesjordan'],
|
||||||
['gangbang', 'kristen_scott_julesjordan', 'Kristen Scott in "Interracial Gangbang!"', 'julesjordan'],
|
['gangbang', 'kristen_scott_julesjordan', 'Kristen Scott in "Interracial Gangbang!"', 'julesjordan'],
|
||||||
['gangbang', 'lara_frost_legalporno_1', 'Lara Frost in NRX070', 'legalporno'],
|
['gangbang', 'monika_fox_legalporno', 'Monika Fox in GL479', 'legalporno'],
|
||||||
['gangbang', 7, 'Alexa Flexy in GL376', 'legalporno'],
|
['gangbang', 7, 'Alexa Flexy in GL376', 'legalporno'],
|
||||||
|
['gangbang', 'lara_frost_legalporno_1', 'Lara Frost in NRX070', 'legalporno'],
|
||||||
['gangbang', 'gina_gerson_assholefever', 'Gina Gerson in "Oppa Gangbang Style"', 'assholefever'],
|
['gangbang', 'gina_gerson_assholefever', 'Gina Gerson in "Oppa Gangbang Style"', 'assholefever'],
|
||||||
['gangbang', 0, '"4 On 1 Gangbangs"', 'doghousedigital'],
|
['gangbang', 0, '"4 On 1 Gangbangs"', 'doghousedigital'],
|
||||||
['gangbang', 4, 'Marley Brinx in "The Gangbang of Marley Brinx"', 'julesjordan'],
|
['gangbang', 4, 'Marley Brinx in "The Gangbang of Marley Brinx"', 'julesjordan'],
|
||||||
|
@ -901,6 +912,7 @@ const tagMedia = [
|
||||||
['piercings', 0, 'Kaegune in "When The Sun Goes Down"', 'suicidegirls'],
|
['piercings', 0, 'Kaegune in "When The Sun Goes Down"', 'suicidegirls'],
|
||||||
['piss-drinking', 0, 'Scarlet Domingo in GL227', 'legalporno'],
|
['piss-drinking', 0, 'Scarlet Domingo in GL227', 'legalporno'],
|
||||||
['pussy-eating', 5, 'Claudia Macc and Victoria Pure', 'eurogirlsongirls'],
|
['pussy-eating', 5, 'Claudia Macc and Victoria Pure', 'eurogirlsongirls'],
|
||||||
|
['pussy-eating', 'lilly_evans_jayme_langford_twistys', 'Jayme Langford and Lilly Evans in "The Morning After"', 'twistys'],
|
||||||
['pussy-eating', 4, 'Anastasia Knight and Jillian Janson in "Teach Me"', 'screwbox'],
|
['pussy-eating', 4, 'Anastasia Knight and Jillian Janson in "Teach Me"', 'screwbox'],
|
||||||
['pussy-eating', 'zaawaadi_asia_rae_allblackx', 'Zaawaadi and Asia Rae in "All Black Threesome"', 'allblackx'],
|
['pussy-eating', 'zaawaadi_asia_rae_allblackx', 'Zaawaadi and Asia Rae in "All Black Threesome"', 'allblackx'],
|
||||||
['pussy-eating', 'jane_wilde_evilangel', 'Jane Wilde and Brock Cooper in "The Cock Hungry Chronicles"', 'evilangel'],
|
['pussy-eating', 'jane_wilde_evilangel', 'Jane Wilde and Brock Cooper in "The Cock Hungry Chronicles"', 'evilangel'],
|
||||||
|
|