Added saved command

This commit is contained in:
zeldaroot 2021-03-26 03:17:19 +02:00
parent dcd4ed9b14
commit 01c39b8a37
8 changed files with 89 additions and 24 deletions

0
files/saved/.gitkeep Normal file
View File

View File

@ -399,13 +399,20 @@ if (Math.ceil(os.freemem()) < 50) {
response,
body
) {
if (err) return callback(err);
if (err) {
console.error(err);
return next('STOP');
}
console.log('[REALTIME] GUNZIP', task.page);
zlib.gunzip(body, function(err, dezipped) {
if (err) return callback(err);
if (err) {
console.error(err);
return next('STOP');
}
var unzip_data = dezipped.toString().split('\n');
if (!unzip_data || !unzip_data.length) {
return callback('NOT IMDb IDs');
console.error('NOT IMDb IDs');
return next('STOP');
}
var name_keys = unzip_data[0].split('\t').map(function(item) {
return item.trim();
@ -433,10 +440,24 @@ if (Math.ceil(os.freemem()) < 50) {
ids_iteration(function() {
some_req = 0;
ids = [];
return callback();
return next('STOP');
});
});
});
} else if (task.page === 'saved') {
var saved = '/home/' + config.domain + '/files/saved/';
fs.readdirSync(saved).forEach(function(file) {
var read_json = fs.readFileSync(saved + file, 'utf-8');
try {
var m = JSON.parse(read_json);
ids.push(m);
} catch (e) {}
});
iter_req = iter_req + ids.length;
ids_iteration(function() {
ids = [];
return next('STOP');
});
} else {
if (task.page.indexOf('[page]') === -1 && i > 1) {
console.log('[PAGE] 1');
@ -743,7 +764,8 @@ if (Math.ceil(os.freemem()) < 50) {
task.page === 'rt' ||
task.page === 'database' ||
task.page === 'db' ||
task.page === 'xmlpipe2'
task.page === 'xmlpipe2' ||
task.page === 'saved'
)
) {
return callback();

View File

@ -1124,7 +1124,7 @@ router.post('/change', function(req, res) {
'/log/movies.pid',
function(err) {
setTimeout(function() {
return callback();
return callback(null, 'Cron');
}, 5000);
}
);
@ -1142,7 +1142,7 @@ router.post('/change', function(req, res) {
'/log/movies.pid; fi',
function(err) {
setTimeout(function() {
return callback();
return callback(null, 'Stop');
}, 5000);
}
);
@ -1150,9 +1150,29 @@ router.post('/change', function(req, res) {
movies_zero_rt: function(callback) {
if (!form.movies_zero_rt) return callback(null, 'Null');
exec('/usr/bin/cinemapress container zero_rt &', function(err) {
return callback();
return callback(null, 'Zero');
});
},
movies_saved: function(callback) {
if (!form.movies_saved || !form.movie) return callback(null, 'Null');
fs.writeFile(
'/home/' +
config.domain +
'/files/saved/' +
form.movie.id +
'-' +
Math.random()
.toString(36)
.substring(7)
.toUpperCase() +
'.json',
JSON.stringify(form.movie, null, 2),
function(err) {
if (err) return console.log(err);
return callback(null, 'Saved');
}
);
},
protocol: function(callback) {
if (!form.config || typeof form.config.protocol === 'undefined')
return callback(null, 'Null');

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -59,6 +59,10 @@
if (movies_zero_rt)
movies_zero_rt.addEventListener('click', moviesZeroRtData);
var movies_saved = document.querySelector('#movies_saved');
if (movies_saved)
movies_saved.addEventListener('click', saveData);
var database = document.querySelector('#database');
if (database)
database.addEventListener('click', databaseData);
@ -243,7 +247,7 @@
if (err) {
self.innerHTML = '<i class="fa fa-bug"></i>';
} else {
self.innerHTML = '<span class="fa fa-check text-success"></span>';
self.innerHTML = '<span class="fa fa-check"></span>';
setTimeout(function() {
self.innerHTML = '<i class="fas fa-receipt"></i>&nbsp;&nbsp;<%= __('Запустить получение информации') %>';
self.addEventListener('click', moviesCronData);
@ -275,7 +279,7 @@
if (err) {
self.innerHTML = '<i class="fa fa-bug"></i>';
} else {
self.innerHTML = '<span class="fa fa-check text-success"></span>';
self.innerHTML = '<span class="fa fa-check"></span>';
setTimeout(function() {
self.innerHTML = '<i class="fas fa-hand-paper"></i>&nbsp;&nbsp;<%= __('Остановить получение информации') %>';
self.addEventListener('click', moviesCronStopData);
@ -311,7 +315,7 @@
}, 5000);
setTimeout(function() {
self.innerHTML = '<span class="fa fa-check text-success"></span>';
self.innerHTML = '<span class="fa fa-check"></span>';
alert('Restart page 2 times.');
}, 10000);
@ -381,7 +385,7 @@
if (err) {
self.innerHTML = '<span class="fa fa-bug"></span>&nbsp;&nbsp;' + err;
} else {
self.innerHTML = '<span class="fa fa-check text-success"></span>';
self.innerHTML = '<span class="fa fa-check"></span>';
}
});
@ -539,12 +543,22 @@
if (!configs || !configs.length) return false;
var movies_saved_data = false;
if (this && this.innerHTML.indexOf('.json') + 1) {
movies_saved_data = true;
}
var self = this;
self.removeEventListener('click', saveData);
self.innerHTML = '<span class="fa fa-spinner fa-spin"></span>&nbsp;&nbsp;<%= __('Сохраняются изменения') %>';
var data = {};
if (movies_saved_data) {
self.innerHTML = '<i class="fa fa-sync-alt fa-spin"></i>';
data.movies_saved = true;
}
for (var i = 0; i < configs.length; i++) {
if (configs[i].getAttribute('type')) {
@ -1196,6 +1210,10 @@
sendServer(data, function(err, result) {
setTimeout(function() {
if (!err && typeof movies_saved_data !== 'undefined' && movies_saved_data) {
self.innerHTML = '<span class="fa fa-check"></span>';
return;
}
if (data.config &&
data.config.urls &&
data.config.urls.admin &&

View File

@ -4,7 +4,7 @@
<% var t = (typeof title !== 'undefined') ? title : (typeof status !== 'undefined') ? status : 'Error'; %>
<title><%- t %> - CinemaPress</title>
<link rel='shortcut icon' type='image/x-icon' href='/themes/default/public/admin/favicon.ico?v220320'>
<link rel='shortcut icon' type='image/x-icon' href='/themes/default/public/admin/favicon.ico?v260321'>
<meta name="theme-color" content="#1a2035">
<meta name="apple-mobile-web-app-capable" content="yes">
@ -17,12 +17,12 @@
z-index: -1001;
}</style>
<link rel="manifest" href="/themes/default/public/admin/manifest.json?v220320">
<link rel="stylesheet" href="/themes/default/public/admin/css/bootstrap.min.css?v220320">
<link rel="stylesheet" href="/themes/default/public/admin/css/font-awesome.min.css?v220320">
<link rel="stylesheet" href="/themes/default/public/admin/css/all.min.css?v220320">
<link rel="manifest" href="/themes/default/public/admin/manifest.json?v260321">
<link rel="stylesheet" href="/themes/default/public/admin/css/bootstrap.min.css?v260321">
<link rel="stylesheet" href="/themes/default/public/admin/css/font-awesome.min.css?v260321">
<link rel="stylesheet" href="/themes/default/public/admin/css/all.min.css?v260321">
<script src="/themes/default/public/admin/js/all.min.js?v220320"></script>
<script src="/themes/default/public/admin/js/all.min.js?v260321"></script>
<link href="/themes/default/public/admin/css/tagify.min.css?v220320" rel="stylesheet">
<script src="/themes/default/public/admin/js/tagify.min.js?v220320"></script>
<link href="/themes/default/public/admin/css/tagify.min.css?v260321" rel="stylesheet">
<script src="/themes/default/public/admin/js/tagify.min.js?v260321"></script>

View File

@ -831,8 +831,13 @@
<div class="row">
<div class="col-xs-3 col-md-3">
<a href="javascript:void(0)" data-type="movie" data-id="<%- movie.id %>"
class="btn btn-danger btn-block del"><span class="fa fa-trash"></span></a>
<a href="javascript:void(0)" data-type="movie" data-id="<%- movie.id %>" class="btn btn-danger btn-block del"><span class="fa fa-trash"></span></a>
</div>
<div class="col-xs-offset-5 col-md-offset-5 col-xs-4 col-md-4">
<a href="javascript:void(0)" class="btn btn-link btn-block" id="movies_saved" title="/files/saved/<%- movie.id %>.json">
<span class="visible-xs"><i class="fas fa-file-download"></i></span>
<span class="hidden-xs"><i class="fas fa-file-download"></i>&nbsp;&nbsp;<span><%- movie.id %>.json</span></span>
</a>
</div>
</div>