forked from DebaucheryLibrarian/traxxx
Added Top Web Models framework.
This commit is contained in:
parent
dbdf0fcc0b
commit
12c3f0d7b9
|
@ -83,7 +83,7 @@
|
||||||
v-if="entity.children.length > 0"
|
v-if="entity.children.length > 0"
|
||||||
v-slot="scroll"
|
v-slot="scroll"
|
||||||
:expanded="expanded"
|
:expanded="expanded"
|
||||||
class="scroll-dark"
|
class="scroll-light"
|
||||||
@expand="(state) => expanded = state"
|
@expand="(state) => expanded = state"
|
||||||
>
|
>
|
||||||
<Children
|
<Children
|
||||||
|
|
|
@ -34,15 +34,15 @@ export default {
|
||||||
padding: .5rem;
|
padding: .5rem;
|
||||||
|
|
||||||
.icon {
|
.icon {
|
||||||
fill: var(--shadow);
|
fill: var(--lighten);
|
||||||
}
|
}
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
background: var(--shadow-hint);
|
background: var(--lighten-hint);
|
||||||
|
|
||||||
.icon {
|
.icon {
|
||||||
fill: var(--text);
|
fill: var(--text-light);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.3 KiB |
Binary file not shown.
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.3 KiB |
|
@ -1104,7 +1104,7 @@ const aliases = [
|
||||||
for: 'titty-fucking',
|
for: 'titty-fucking',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'behind the scenes',
|
name: 'bts',
|
||||||
for: 'bts',
|
for: 'bts',
|
||||||
secondary: true,
|
secondary: true,
|
||||||
},
|
},
|
||||||
|
|
|
@ -464,6 +464,11 @@ const networks = [
|
||||||
name: 'Teen Core Club',
|
name: 'Teen Core Club',
|
||||||
url: 'https://teencoreclub.com',
|
url: 'https://teencoreclub.com',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
slug: 'topwebmodels',
|
||||||
|
name: 'Top Web Models',
|
||||||
|
url: 'https://tour.topwebmodels.com',
|
||||||
|
},
|
||||||
{
|
{
|
||||||
slug: 'transbella',
|
slug: 'transbella',
|
||||||
name: 'Trans Bella',
|
name: 'Trans Bella',
|
||||||
|
|
|
@ -8704,6 +8704,79 @@ const sites = [
|
||||||
parameters: {},
|
parameters: {},
|
||||||
},
|
},
|
||||||
*/
|
*/
|
||||||
|
// TOP WEB MODELS
|
||||||
|
{
|
||||||
|
name: '2 Girls 1 Camera',
|
||||||
|
slug: '2girls1camera',
|
||||||
|
url: 'https://tour.2girls1camera.com',
|
||||||
|
tags: ['mff'],
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Big Gulp Girls',
|
||||||
|
slug: 'biggulpgirls',
|
||||||
|
url: 'https://tour.biggulpgirls.com',
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Cougar Season',
|
||||||
|
slug: 'cougarseason',
|
||||||
|
url: 'https://tour.cougarseason.com',
|
||||||
|
tags: ['milf'],
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Deepthroat Sirens',
|
||||||
|
slug: 'deepthroatsirens',
|
||||||
|
url: 'https://tour.deepthroatsirens.com',
|
||||||
|
tags: ['blowjob', 'deepthroat'],
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Facials Forever',
|
||||||
|
slug: 'facialsforever',
|
||||||
|
url: 'https://tour.facialsforever.com',
|
||||||
|
tags: ['facial'],
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Pounded Petite',
|
||||||
|
slug: 'poundedpetite',
|
||||||
|
url: 'https://tour.poundedpetite.com',
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'She\'s Brand New',
|
||||||
|
slug: 'shesbrandnew',
|
||||||
|
url: 'https://tour.shesbrandnew.com',
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'TWM Classics',
|
||||||
|
slug: 'twmclassics',
|
||||||
|
url: 'https://tour.topwebmodels.com/sites/twmclassics',
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'TWM Interviews',
|
||||||
|
slug: 'twminterviews',
|
||||||
|
url: 'https://tour.topwebmodels.com/sites/topwebmodels-interviews',
|
||||||
|
tags: ['bts'],
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
hasLogo: false,
|
||||||
|
parameters: {
|
||||||
|
slug: 'topwebmodels-interviews',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'TWM Porn Vault',
|
||||||
|
slug: 'twmpornvault',
|
||||||
|
url: 'https://tour.topwebmodels.com/sites/twm-porn-vault',
|
||||||
|
parent: 'topwebmodels',
|
||||||
|
parameters: {
|
||||||
|
slug: 'twm-porn-vault',
|
||||||
|
},
|
||||||
|
},
|
||||||
// TRANS BELLA
|
// TRANS BELLA
|
||||||
{
|
{
|
||||||
name: 'Trans Bella',
|
name: 'Trans Bella',
|
||||||
|
@ -9273,7 +9346,7 @@ exports.seed = knex => Promise.resolve()
|
||||||
|
|
||||||
const networksMap = networks.reduce((acc, { id, slug }) => ({ ...acc, [slug]: id }), {});
|
const networksMap = networks.reduce((acc, { id, slug }) => ({ ...acc, [slug]: id }), {});
|
||||||
|
|
||||||
const tags = await knex('tags').select('*').where('alias_for', null);
|
const tags = await knex('tags').select('*').whereNull('alias_for');
|
||||||
const tagsMap = tags.reduce((acc, { id, slug }) => ({ ...acc, [slug]: id }), {});
|
const tagsMap = tags.reduce((acc, { id, slug }) => ({ ...acc, [slug]: id }), {});
|
||||||
|
|
||||||
const sitesWithNetworks = sites.map(site => ({
|
const sitesWithNetworks = sites.map(site => ({
|
||||||
|
|
|
@ -66,6 +66,7 @@ const sextreme = require('./21sextreme');
|
||||||
const sextury = require('./21sextury');
|
const sextury = require('./21sextury');
|
||||||
const teamskeet = require('./teamskeet');
|
const teamskeet = require('./teamskeet');
|
||||||
const teencoreclub = require('./teencoreclub');
|
const teencoreclub = require('./teencoreclub');
|
||||||
|
const topwebmodels = require('./topwebmodels');
|
||||||
const transangels = require('./transangels');
|
const transangels = require('./transangels');
|
||||||
const traxxx = require('./traxxx');
|
const traxxx = require('./traxxx');
|
||||||
const twistys = require('./twistys');
|
const twistys = require('./twistys');
|
||||||
|
@ -160,6 +161,7 @@ const scrapers = {
|
||||||
swallowsalon: julesjordan,
|
swallowsalon: julesjordan,
|
||||||
teencoreclub,
|
teencoreclub,
|
||||||
teamskeet,
|
teamskeet,
|
||||||
|
topwebmodels,
|
||||||
transbella: porndoe,
|
transbella: porndoe,
|
||||||
traxxx,
|
traxxx,
|
||||||
twistys,
|
twistys,
|
||||||
|
|
|
@ -40,6 +40,18 @@ function formatDate(dateValue, format, inputFormat) {
|
||||||
return moment(dateValue).format(format);
|
return moment(dateValue).format(format);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function durationToSeconds(durationString, match) {
|
||||||
|
const durationMatch = durationString.match(match || /(\d+:)?\d+:\d+/);
|
||||||
|
|
||||||
|
if (durationMatch) {
|
||||||
|
const segments = ['00'].concat(durationMatch[0].split(/[:hm]/)).slice(-3);
|
||||||
|
|
||||||
|
return moment.duration(segments.join(':')).asSeconds();
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
function prefixUrl(urlValue, origin, protocol = 'https') {
|
function prefixUrl(urlValue, origin, protocol = 'https') {
|
||||||
if (!urlValue) {
|
if (!urlValue) {
|
||||||
return null;
|
return null;
|
||||||
|
@ -316,12 +328,10 @@ function duration(context, selector, match, attr = 'textContent') {
|
||||||
const durationString = q(context, selector, attr);
|
const durationString = q(context, selector, attr);
|
||||||
|
|
||||||
if (!durationString) return null;
|
if (!durationString) return null;
|
||||||
const durationMatch = durationString.match(match || /(\d+:)?\d+:\d+/);
|
const durationMatch = durationToSeconds(durationString, match);
|
||||||
|
|
||||||
if (durationMatch) {
|
if (durationMatch) {
|
||||||
const segments = ['00'].concat(durationMatch[0].split(/[:hm]/)).slice(-3);
|
return durationMatch;
|
||||||
|
|
||||||
return moment.duration(segments.join(':')).asSeconds();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const timestampMatch = durationString.match(/(\d+H)?\s*(\d+M)?\s*\d+S?/i);
|
const timestampMatch = durationString.match(/(\d+H)?\s*(\d+M)?\s*\d+S?/i);
|
||||||
|
@ -526,6 +536,7 @@ module.exports = {
|
||||||
extractDate,
|
extractDate,
|
||||||
extract,
|
extract,
|
||||||
extractAll,
|
extractAll,
|
||||||
|
durationToSeconds,
|
||||||
init,
|
init,
|
||||||
initAll,
|
initAll,
|
||||||
formatDate,
|
formatDate,
|
||||||
|
|
Loading…
Reference in New Issue