Added cinemaplayer
This commit is contained in:
parent
b3e2d1b97e
commit
17b671348f
4
app.js
4
app.js
|
@ -82,6 +82,7 @@ app.use('/flush-cache-' + config.urls.admin, function(req, res) {
|
|||
var files = require('./routes/files');
|
||||
var embed = require('./routes/embed');
|
||||
var iframe = require('./routes/iframe');
|
||||
var cinemaplayer = require('./routes/cinemaplayer');
|
||||
var player = require('./routes/player');
|
||||
var episode = require('./routes/episode');
|
||||
var robots = require('./routes/robots');
|
||||
|
@ -135,6 +136,8 @@ app.use(
|
|||
/^(?:\/mobile-version|\/tv-version|)?\//,
|
||||
express.static(path.join(path.dirname(__filename), '/'))
|
||||
);
|
||||
app.use(/^(?:\/mobile-version|\/tv-version|)?\/api/, api);
|
||||
app.use(/^(?:\/mobile-version|\/tv-version|)?\/cinemaplayer/, cinemaplayer);
|
||||
app.use(/^(?:\/mobile-version|\/tv-version|)?\/telegram/, telegram);
|
||||
app.use(/^(?:\/mobile-version|\/tv-version|)?\/files/, files);
|
||||
app.use(bots());
|
||||
|
@ -149,7 +152,6 @@ app.use(/^(?:\/mobile-version|\/tv-version|)?\/iframe/, iframe);
|
|||
app.use(/^(?:\/mobile-version|\/tv-version|)?\/rss\.xml.*$/, rss);
|
||||
app.use('/' + config.urls.admin, admin);
|
||||
app.use(loadavg());
|
||||
app.use(/^(?:\/mobile-version|\/tv-version|)?\/api/, api);
|
||||
app.use(/^(?:\/mobile-version|\/tv-version|)?/, website);
|
||||
|
||||
app.use(function(err, req, res, next) {
|
||||
|
|
|
@ -161,6 +161,9 @@ function secretIframe(data, ip) {
|
|||
data.result.players[i].iframe =
|
||||
(config.language === 'ru' && config.ru.subdomain && config.ru.domain
|
||||
? config.protocol + config.ru.subdomain + config.ru.domain
|
||||
: config.mirrors && config.mirrors.length
|
||||
? config.protocol +
|
||||
config.mirrors[Math.floor(Math.random() * config.mirrors.length)]
|
||||
: config.protocol + config.subdomain + config.domain) +
|
||||
'/embed/' +
|
||||
data.result.id +
|
||||
|
@ -492,11 +495,11 @@ function createImgUrl(type, size, id) {
|
|||
break;
|
||||
}
|
||||
|
||||
return (
|
||||
(config.language === 'ru' && config.ru.subdomain && config.ru.domain
|
||||
? config.protocol + config.ru.subdomain + config.ru.domain
|
||||
: config.protocol + config.subdomain + config.domain) + image
|
||||
);
|
||||
return source === 'url'
|
||||
? image
|
||||
: (config.language === 'ru' && config.ru.subdomain && config.ru.domain
|
||||
? config.protocol + config.ru.subdomain + config.ru.domain
|
||||
: config.protocol + config.subdomain + config.domain) + image;
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
|
|
|
@ -43,6 +43,12 @@ setInterval(function() {
|
|||
}
|
||||
}, 3333);
|
||||
|
||||
/**
|
||||
* Node dependencies.
|
||||
*/
|
||||
|
||||
var md5 = require('md5');
|
||||
|
||||
/**
|
||||
* Adding a page player.
|
||||
*
|
||||
|
@ -81,125 +87,254 @@ function codePlayer(type, movie, options) {
|
|||
: '';
|
||||
}
|
||||
|
||||
if (type === 'picture') {
|
||||
var pictures = '';
|
||||
var whois_abuse = options && options.userinfo && options.userinfo.whois;
|
||||
var list_abuse = modules.abuse.data.movies.indexOf('' + movie.kp_id) + 1;
|
||||
var country_abuse =
|
||||
modules.abuse.data.country &&
|
||||
movie.year &&
|
||||
'' + movie.year === new Date().getFullYear() + '' &&
|
||||
movie.countries_arr.filter(function(c) {
|
||||
return new RegExp(options.userinfo.country, 'i').test(c);
|
||||
}).length;
|
||||
var country_block_app =
|
||||
options.userinfo &&
|
||||
modules.blocking.data.app.countries &&
|
||||
modules.blocking.data.app.countries.length
|
||||
? modules.blocking.data.app.countries.filter(function(c) {
|
||||
return new RegExp(options.userinfo.country_en, 'i').test(c);
|
||||
}).length
|
||||
: 0;
|
||||
|
||||
if (movie.pictures.length) {
|
||||
movie.pictures.forEach(function(picture) {
|
||||
if (modules.player.data.display === 'cinemaplayer') {
|
||||
if (type !== 'picture' && type !== 'trailer') {
|
||||
if (
|
||||
modules.abuse.status &&
|
||||
options.userinfo.device !== 'app' &&
|
||||
(list_abuse || country_abuse || whois_abuse)
|
||||
) {
|
||||
if (country_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_country;
|
||||
}
|
||||
if (list_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_list;
|
||||
}
|
||||
if (whois_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_whois;
|
||||
}
|
||||
if (
|
||||
modules.app.status &&
|
||||
modules.blocking.data.app.abuse &&
|
||||
options.userinfo.device === 'desktop' &&
|
||||
!whois_abuse
|
||||
) {
|
||||
var blocking_app = CP_blocking.code(code, movie, options, 'app');
|
||||
if (blocking_app && blocking_app.player) {
|
||||
code.player = blocking_app.player;
|
||||
} else {
|
||||
type = 'trailer';
|
||||
}
|
||||
} else {
|
||||
code.player =
|
||||
'' +
|
||||
'<div style="position:absolute;background:#000 url(' +
|
||||
config.default.image +
|
||||
') 100% 100% no-repeat;background-size:100% 100%;z-index:4;top:0;left:0;width:100%;height:100%;color:#fff;text-align:center">' +
|
||||
'<div style="margin:80px auto 0;width:70%">' +
|
||||
modules.abuse.data.message +
|
||||
'</div>' +
|
||||
'</div>';
|
||||
}
|
||||
}
|
||||
if (
|
||||
!(
|
||||
((options.userinfo && options.userinfo.device === 'app') ||
|
||||
modules.blocking.data.app.abuse) &&
|
||||
country_block_app <= 0
|
||||
)
|
||||
) {
|
||||
code = CP_blocking.code(code, movie, options);
|
||||
}
|
||||
}
|
||||
if (code.player) {
|
||||
return code;
|
||||
}
|
||||
var d = (
|
||||
modules.player.data.cinemaplayer[type] ||
|
||||
modules.player.data.cinemaplayer['information']
|
||||
).dataset;
|
||||
if (d && d.length) {
|
||||
var dataset = d.join(' ');
|
||||
dataset = dataset
|
||||
.replace(/\[id]/gi, movie.id)
|
||||
.replace(/\[kp_id]/gi, movie.id)
|
||||
.replace(
|
||||
/\[imdb_id]/gi,
|
||||
movie.custom.imdb_id ? movie.custom.imdb_id : ''
|
||||
)
|
||||
.replace(
|
||||
/\[tmdb_id]/gi,
|
||||
movie.custom.tmdb_id ? movie.custom.tmdb_id : ''
|
||||
)
|
||||
.replace(
|
||||
/\[douban_id]/gi,
|
||||
movie.custom.douban_id ? movie.custom.douban_id : ''
|
||||
)
|
||||
.replace(
|
||||
/\[tvmaze_id]/gi,
|
||||
movie.custom.tvmaze_id ? movie.custom.tvmaze_id : ''
|
||||
)
|
||||
.replace(
|
||||
/\[movie_id]/gi,
|
||||
movie.custom.movie_id ? movie.custom.movie_id : ''
|
||||
)
|
||||
.replace(/\[wa_id]/gi, movie.custom.wa_id ? movie.custom.wa_id : '')
|
||||
.replace(/\[type]/gi, movie.type ? 'tv' : 'movie')
|
||||
.replace(/\[season]/gi, serial.season)
|
||||
.replace(/\[episode]/gi, serial.episode)
|
||||
.replace(/\[title]/gi, movie.title)
|
||||
.replace(/\[year]/gi, movie.year)
|
||||
.replace(
|
||||
/\[ip]/gi,
|
||||
(options && options.userinfo && options.userinfo.ip) || ''
|
||||
)
|
||||
.replace(
|
||||
/\[hash]/gi,
|
||||
md5(
|
||||
((options && options.userinfo && options.userinfo.ip) || '') +
|
||||
'.' +
|
||||
config.urls.admin
|
||||
)
|
||||
);
|
||||
code.player =
|
||||
options &&
|
||||
options.userinfo &&
|
||||
options.userinfo.bot &&
|
||||
options.userinfo.bot.all
|
||||
? '' +
|
||||
'<video id="cinemaplayer" controls ' +
|
||||
dataset +
|
||||
'>' +
|
||||
' <source src="/balancer/' +
|
||||
movie.id +
|
||||
'.mp4" type="video/mp4">' +
|
||||
'</video>'
|
||||
: '<div id="cinemaplayer" ' + dataset + '></div>';
|
||||
code.footer =
|
||||
'<script src="https://CinemaPlayer.github.io/cinemaplayer.js?v=' +
|
||||
process.env['CP_VER'] +
|
||||
'"></script>';
|
||||
}
|
||||
} else {
|
||||
if (type === 'picture') {
|
||||
var pictures = '';
|
||||
|
||||
if (movie.pictures.length) {
|
||||
movie.pictures.forEach(function(picture) {
|
||||
pictures +=
|
||||
'<img src="' +
|
||||
picture.picture +
|
||||
'" alt="' +
|
||||
movie.title.replace(/"/g, "'") +
|
||||
'" style="width:100%;height:100%;">';
|
||||
});
|
||||
} else {
|
||||
pictures +=
|
||||
'<img src="' +
|
||||
picture.picture +
|
||||
config.default.image +
|
||||
'" alt="' +
|
||||
movie.title.replace(/"/g, "'") +
|
||||
'" style="width:100%;height:100%;">';
|
||||
});
|
||||
}
|
||||
|
||||
code.head =
|
||||
'' +
|
||||
'<link rel="stylesheet" href="/themes/default/public/desktop/css/ideal-image-slider.css">';
|
||||
|
||||
code.player =
|
||||
'' + '<div id="slider" class="img_tmhover">' + pictures + '</div>';
|
||||
|
||||
code.footer =
|
||||
'' +
|
||||
'<script src="/themes/default/public/desktop/js/ideal-image-slider.min.js"></script>' +
|
||||
'<script>var sldr = new IdealImageSlider.Slider("#slider");sldr.start();</script>';
|
||||
} else if (type === 'trailer') {
|
||||
scriptPlayer('trailer');
|
||||
} else {
|
||||
pictures +=
|
||||
'<img src="' +
|
||||
config.default.image +
|
||||
'" alt="' +
|
||||
movie.title.replace(/"/g, "'") +
|
||||
'" style="width:100%;height:100%;">';
|
||||
}
|
||||
|
||||
code.head =
|
||||
'' +
|
||||
'<link rel="stylesheet" href="/themes/default/public/desktop/css/ideal-image-slider.css">';
|
||||
|
||||
code.player =
|
||||
'' + '<div id="slider" class="img_tmhover">' + pictures + '</div>';
|
||||
|
||||
code.footer =
|
||||
'' +
|
||||
'<script src="/themes/default/public/desktop/js/ideal-image-slider.min.js"></script>' +
|
||||
'<script>var sldr = new IdealImageSlider.Slider("#slider");sldr.start();</script>';
|
||||
} else if (type === 'trailer') {
|
||||
scriptPlayer('trailer');
|
||||
} else {
|
||||
var whois_abuse = options && options.userinfo && options.userinfo.whois;
|
||||
var list_abuse = modules.abuse.data.movies.indexOf('' + movie.kp_id) + 1;
|
||||
var country_abuse =
|
||||
modules.abuse.data.country &&
|
||||
movie.year &&
|
||||
'' + movie.year === new Date().getFullYear() + '' &&
|
||||
movie.countries_arr.filter(function(c) {
|
||||
return new RegExp(options.userinfo.country, 'i').test(c);
|
||||
}).length;
|
||||
|
||||
if (
|
||||
modules.abuse.status &&
|
||||
(list_abuse || country_abuse || whois_abuse) &&
|
||||
options.userinfo.device !== 'app'
|
||||
) {
|
||||
if (country_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_country;
|
||||
}
|
||||
if (list_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_list;
|
||||
}
|
||||
if (whois_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_whois;
|
||||
}
|
||||
|
||||
if (
|
||||
modules.app.status &&
|
||||
modules.blocking.data.app.abuse &&
|
||||
options.userinfo.device === 'desktop' &&
|
||||
!whois_abuse
|
||||
modules.abuse.status &&
|
||||
(list_abuse || country_abuse || whois_abuse) &&
|
||||
options.userinfo.device !== 'app'
|
||||
) {
|
||||
scriptPlayer('trailer');
|
||||
var code2 = CP_blocking.code(code, movie, options, 'app');
|
||||
code.player = code2 && code2.player ? code2.player : code.player;
|
||||
} else {
|
||||
code.player =
|
||||
'' +
|
||||
'<div style="position:absolute;background:#000 url(' +
|
||||
config.default.image +
|
||||
') 100% 100% no-repeat;background-size:100% 100%;z-index:4;top:0;left:0;width:100%;height:100%;color:#fff;text-align:center">' +
|
||||
'<div style="margin:80px auto 0;width:70%">' +
|
||||
modules.abuse.data.message +
|
||||
'</div>' +
|
||||
'</div>';
|
||||
if (country_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_country;
|
||||
}
|
||||
if (list_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_list;
|
||||
}
|
||||
if (whois_abuse) {
|
||||
code.status_code = modules.abuse.data.status_code_whois;
|
||||
}
|
||||
|
||||
if (
|
||||
modules.app.status &&
|
||||
modules.blocking.data.app.abuse &&
|
||||
options.userinfo.device === 'desktop' &&
|
||||
!whois_abuse
|
||||
) {
|
||||
scriptPlayer('trailer');
|
||||
var code2 = CP_blocking.code(code, movie, options, 'app');
|
||||
code.player = code2 && code2.player ? code2.player : code.player;
|
||||
} else {
|
||||
code.player =
|
||||
'' +
|
||||
'<div style="position:absolute;background:#000 url(' +
|
||||
config.default.image +
|
||||
') 100% 100% no-repeat;background-size:100% 100%;z-index:4;top:0;left:0;width:100%;height:100%;color:#fff;text-align:center">' +
|
||||
'<div style="margin:80px auto 0;width:70%">' +
|
||||
modules.abuse.data.message +
|
||||
'</div>' +
|
||||
'</div>';
|
||||
}
|
||||
|
||||
return code;
|
||||
}
|
||||
|
||||
return code;
|
||||
}
|
||||
|
||||
if (type === 'download') {
|
||||
scriptPlayer('torrent');
|
||||
} else if (serial.season && serial.episode) {
|
||||
if (modules.player.data.display === 'script') {
|
||||
if (type === 'download') {
|
||||
scriptPlayer('torrent');
|
||||
} else if (serial.season && serial.episode) {
|
||||
if (modules.player.data.display === 'script') {
|
||||
scriptPlayer(true);
|
||||
} else {
|
||||
scriptPlayer();
|
||||
}
|
||||
} else if (movie.player) {
|
||||
if (/\/\/[^,]*,/.test(movie.player)) {
|
||||
scriptPlayer(movie.player);
|
||||
} else {
|
||||
scriptPlayer();
|
||||
}
|
||||
} else if (modules.player.data.display === 'script') {
|
||||
scriptPlayer(true);
|
||||
} else {
|
||||
scriptPlayer();
|
||||
}
|
||||
} else if (movie.player) {
|
||||
if (/\/\/[^,]*,/.test(movie.player)) {
|
||||
scriptPlayer(movie.player);
|
||||
} else {
|
||||
scriptPlayer();
|
||||
}
|
||||
} else if (modules.player.data.display === 'script') {
|
||||
scriptPlayer(true);
|
||||
} else {
|
||||
scriptPlayer();
|
||||
|
||||
var l =
|
||||
options.userinfo &&
|
||||
modules.blocking.data.app.countries &&
|
||||
modules.blocking.data.app.countries.length
|
||||
? modules.blocking.data.app.countries.filter(function(c) {
|
||||
return new RegExp(options.userinfo.country_en, 'i').test(c);
|
||||
}).length
|
||||
: 0;
|
||||
|
||||
code =
|
||||
((options.userinfo && options.userinfo.device === 'app') ||
|
||||
modules.blocking.data.app.abuse) &&
|
||||
l <= 0
|
||||
? code
|
||||
: CP_blocking.code(code, movie, options);
|
||||
}
|
||||
|
||||
var l =
|
||||
options.userinfo &&
|
||||
modules.blocking.data.app.countries &&
|
||||
modules.blocking.data.app.countries.length
|
||||
? modules.blocking.data.app.countries.filter(function(c) {
|
||||
return new RegExp(options.userinfo.country_en, 'i').test(c);
|
||||
}).length
|
||||
: 0;
|
||||
|
||||
code =
|
||||
((options.userinfo && options.userinfo.device === 'app') ||
|
||||
modules.blocking.data.app.abuse) &&
|
||||
l <= 0
|
||||
? code
|
||||
: CP_blocking.code(code, movie, options);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue