diff --git a/modules/torrents/client/controllers/torrents.client.controller.js b/modules/torrents/client/controllers/torrents.client.controller.js
index b4e40e52..aab6edb4 100644
--- a/modules/torrents/client/controllers/torrents.client.controller.js
+++ b/modules/torrents/client/controllers/torrents.client.controller.js
@@ -15,6 +15,7 @@
vm.resourcesTags = ResourcesTagsConfig.resourcesTags;
vm.searchTags = [];
+ vm.searchKey = '';
vm.currPageNumber = 1;
vm.topNumber = 6;
vm.pageNumber = 50;
@@ -54,8 +55,6 @@
}
e.blur();
vm.getMoviePageInfo(1);
-
- console.log(vm.searchTags);
};
vm.onCheckboxTagClicked = function (event, n) {
@@ -67,18 +66,25 @@
vm.searchTags.splice(vm.searchTags.indexOf(n), 1);
}
vm.getMoviePageInfo(1);
-
- console.log(vm.searchTags);
};
+ vm.onKeysKeyDown = function (evt) {
+ if (evt.keyCode === 13) {
+ vm.getMoviePageInfo(1);
+ }
+ };
+
+
vm.getMoviePageInfo = function (p) {
vm.currPageNumber = p;
TorrentsService.query({
skip: (p - 1) * vm.pageNumber + 0, //vm.topNumber,
limit: p * vm.pageNumber,
+ keys: vm.searchKey,
torrent_status: 'reviewed',
torrent_type: 'movie',
+ //torrent_release: vm.releaseYear,
torrent_tags: vm.searchTags
}, function (items) {
vm.moviePageInfo = items;
@@ -113,5 +119,13 @@
}
return tmp;
};
+
+ vm.clearAllCondition = function () {
+ vm.searchKey = '';
+ vm.searchTags = [];
+ $('.btn-tag').removeClass('btn-success').addClass('btn-default');
+
+ vm.getMoviePageInfo(1);
+ };
}
}());
diff --git a/modules/torrents/client/controllers/uploads.client.controller.js b/modules/torrents/client/controllers/uploads.client.controller.js
index aeaa638f..b03510ed 100644
--- a/modules/torrents/client/controllers/uploads.client.controller.js
+++ b/modules/torrents/client/controllers/uploads.client.controller.js
@@ -162,6 +162,7 @@
torrent_tmdb_id: vm.tmdb_id,
torrent_imdb_id: vm.movieinfo.imdb_id,
torrent_title: vm.movieinfo.title,
+ torrent_original_title: vm.movieinfo.original_title,
torrent_type: 'movie',
torrent_genres: g,
torrent_tags: t,
diff --git a/modules/torrents/client/views/movie-list.client.view.html b/modules/torrents/client/views/movie-list.client.view.html
index 630d2663..8074c240 100644
--- a/modules/torrents/client/views/movie-list.client.view.html
+++ b/modules/torrents/client/views/movie-list.client.view.html
@@ -43,7 +43,9 @@
@@ -77,7 +79,8 @@
- {{ 'CLEAR_ALL_CONDITION' | translate}}
+ {{ 'CLEAR_ALL_CONDITION' | translate}}
@@ -104,7 +107,8 @@
-
+
{{t}}
diff --git a/modules/torrents/server/controllers/torrents.server.controller.js b/modules/torrents/server/controllers/torrents.server.controller.js
index 4b302181..27e8d7d9 100644
--- a/modules/torrents/server/controllers/torrents.server.controller.js
+++ b/modules/torrents/server/controllers/torrents.server.controller.js
@@ -257,7 +257,9 @@ exports.list = function (req, res) {
var limit = 0;
var status = 'reviewed';
var stype = 'movie';
+ var release = undefined;
var tagsA = [];
+ var keysA = [];
if (req.query.skip !== undefined) {
skip = req.query.skip;
@@ -271,6 +273,9 @@ exports.list = function (req, res) {
if (req.query.torrent_type !== undefined) {
stype = req.query.torrent_type;
}
+ if (req.query.torrent_release !== undefined) {
+ release = req.query.torrent_release;
+ }
if (req.query.torrent_tags !== undefined) {
var tagsS = req.query.torrent_tags + '';
var tagsT = tagsS.split(',');
@@ -279,6 +284,24 @@ exports.list = function (req, res) {
tagsA.push(it + '');
});
}
+ if (req.query.keys !== undefined && req.query.keys.length > 0) {
+ //console.log('keys:' + req.query.keys);
+ var keysS = req.query.keys + '';
+ var keysT = keysS.split(' ');
+
+ keysT.forEach(function (it) {
+ if (!isNaN(it)) {
+ if (it > 1900 && it < 2050) {
+ release = it;
+ }
+ } else {
+ var ti = new RegExp(it, 'i');
+ keysA.push(ti);
+ }
+ });
+ //keysA = keysS;
+ //console.log(keysA);
+ }
var condition = {};
condition.torrent_status = status;
@@ -287,8 +310,25 @@ exports.list = function (req, res) {
if (tagsA.length > 0) {
condition.torrent_tags = {$all: tagsA};
}
+ if (release !== undefined) {
+ condition.torrent_release = release;
+ }
+ if (keysA.length > 0) {
+ condition.$or = [
+ {torrent_filename: {'$all': keysA}},
+ {torrent_title: {'$all': keysA}},
+ {torrent_original_title: {'$all': keysA}}
+ //{torrent_filename: new RegExp(keysA, 'i')},
+ //{torrent_title: new RegExp(keysA, 'i')},
+ //{torrent_original_title: new RegExp(keysA, 'i')}
+ ];
+ //condition.torrent_title = {
+ // '$regex': keysA,
+ // '$options': 'i'
+ //};
+ }
- //console.log(condition);
+ console.log(JSON.stringify(condition));
Torrent.find(condition)
.sort('-createdat')
diff --git a/modules/torrents/server/models/torrent.server.model.js b/modules/torrents/server/models/torrent.server.model.js
index bd1cbcfe..0913a8cc 100644
--- a/modules/torrents/server/models/torrent.server.model.js
+++ b/modules/torrents/server/models/torrent.server.model.js
@@ -43,6 +43,11 @@ var TorrentSchema = new Schema({
trim: true,
required: 'title cannot be blank'
},
+ torrent_original_title: {
+ type: String,
+ default: '',
+ trim: true
+ },
torrent_type: {
type: [{
type: String,