feat(core): update cache data when $resource method of PUT|POST|DELETE

This commit is contained in:
OldHawk
2018-05-03 15:09:08 +08:00
parent eb103e168c
commit 775ea6d59b
28 changed files with 518 additions and 116 deletions

View File

@@ -162,13 +162,16 @@ module.exports = {
*
* settings cache data of GET method from $resource
*
* @maxAge: The number of milliseconds until a newly inserted item expires
* @recycleFreq: Determines how often a cache will scan for expired items
*
* @maxAge: The number of milliseconds until a newly inserted item expires
* @recycleFreq: Determines how often a cache will scan for expired items
* @storageMode: Determines the storage medium used by a cache, value of 'memory', 'localStorage' and 'sessionStorage'
* @refreshOnExpire: refresh data on expire
*/
cache: {
maxAge: 60 * 1000 * 10,
recycleFreq: 60 * 1000
maxAge: 60 * 1000 * 1,
recycleFreq: 60 * 1000,
storageMode: 'memory',
refreshOnExpire: true
},
/**

View File

@@ -135,7 +135,7 @@ function removeGhostPeers() {
var cronJob = new CronJob({
// cronTime: '00 05 1 * * *',
//cronTime: '*/5 * * * * *',
cronTime: '00 00 * * * *',
cronTime: '00 30 */2 * * *',
onTick: function () {
logger.info(chalk.green('removeGhostPeers: process!'));

View File

@@ -9,6 +9,10 @@
function MakerGroupService($resource, CacheFactory) {
var makerCache = CacheFactory.get('makerCache') || CacheFactory.createCache('makerCache');
var removeCache = function (res) {
makerCache.removeAll();
return res.data;
};
return $resource('/api/makers/:makerId', {
makerId: '@_id'
@@ -23,21 +27,32 @@
cache: makerCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
url: '/api/makers/create/:userId',
params: {
userId: '@userId'
}
},
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
rating: {
method: 'PUT',
url: '/api/makers/:makerId/rating',
params: {
makerId: '@_id'
}
},
interceptor: {response: removeCache}
},
addMember: {
method: 'PUT',
@@ -45,7 +60,8 @@
params: {
makerId: '@_id',
username: '@_username'
}
},
interceptor: {response: removeCache}
},
removeMember: {
method: 'PUT',
@@ -53,7 +69,8 @@
params: {
makerId: '@_id',
username: '@_username'
}
},
interceptor: {response: removeCache}
}
});
}

View File

@@ -105,6 +105,7 @@
angular.forEach(s, function (f) {
vm.fileList.splice(vm.fileList.indexOf(f), 1);
});
vm.selected = undefined;
vm.figureOutItemsToDisplay();
NotifycationService.showSuccessNotify('BACKUP.DELETED_SUCCESSFULLY');

View File

@@ -6,23 +6,12 @@
.module('backup.services')
.factory('BackupService', BackupService);
BackupService.$inject = ['$resource', 'CacheFactory'];
function BackupService($resource, CacheFactory) {
var backupCache = CacheFactory.get('backupCache') || CacheFactory.createCache('backupCache');
BackupService.$inject = ['$resource'];
function BackupService($resource) {
var backup = $resource('/api/backup/:filename', {
filename: '@filename'
}, {
get: {
method: 'GET',
cache: backupCache
},
query: {
method: 'GET',
isArray: true,
cache: backupCache
},
update: {
method: 'PUT'
}

View File

@@ -10,6 +10,10 @@
function CollectionsService($resource, CacheFactory) {
var collectionsCache = CacheFactory.get('collectionsCache') || CacheFactory.createCache('collectionsCache');
var removeCache = function (res) {
collectionsCache.removeAll();
return res.data;
};
var collection = $resource('/api/collections/:collectionId', {
collectionId: '@_id'
@@ -24,7 +28,20 @@
cache: collectionsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
searchCollectionInfo: {
method: 'GET',
@@ -47,7 +64,8 @@
params: {
collectionId: '@collectionId',
torrentId: '@torrentId'
}
},
interceptor: {response: removeCache}
},
removeFromCollection: {
method: 'PUT',
@@ -55,7 +73,8 @@
params: {
collectionId: '@collectionId',
torrentId: '@torrentId'
}
},
interceptor: {response: removeCache}
},
setRecommendLevel: {
method: 'PUT',
@@ -63,7 +82,8 @@
params: {
collectionId: '@_id',
rlevel: '@rlevel'
}
},
interceptor: {response: removeCache}
}
});

View File

@@ -18,6 +18,7 @@ var path = require('path'),
scoreUpdate = require(path.resolve('./config/lib/score')).update;
var traceConfig = config.meanTorrentConfig.trace;
var tmdbConfig = config.meanTorrentConfig.tmdbConfig;
var mtDebug = require(path.resolve('./config/lib/debug'));
@@ -31,7 +32,7 @@ exports.searchcollection = function (req, res) {
mtDebug.debugGreen(req.params);
tmdb.searchCollection({
language: req.params.language,
language: tmdbConfig.resourcesLanguage,
query: req.query.query
}, function (err, info) {
if (err) {
@@ -53,7 +54,7 @@ exports.collectioninfo = function (req, res) {
tmdb.collectionInfo({
id: req.params.id,
language: req.params.language
language: tmdbConfig.resourcesLanguage,
}, function (err, info) {
if (err) {
res.status(900).send(err);
@@ -277,7 +278,7 @@ exports.list = function (req, res) {
var findQuery = function (callback) {
Collection.find(condition)
.sort('recommend_level -ordered_at -created_at')
.sort('-recommend_level -ordered_at -created_at')
.populate('user', 'username displayName profileImageURL isVip')
.populate('torrents')
.skip(skip)

View File

@@ -194,7 +194,16 @@
angular.extend(CacheFactoryProvider.defaults, {
maxAge: cacheConfig.maxAge,
recycleFreq: cacheConfig.recycleFreq,
deleteOnExpire: 'aggressive'
deleteOnExpire: 'aggressive',
storageMode: cacheConfig.storageMode,
onExpire: function (key, value) {
if (cacheConfig.refreshOnExpire) {
var _this = this; // "this" is the cache in which the item expired
angular.injector(['ng']).get('$http').get(key).success(function (data) {
_this.put(key, data);
});
}
}
});
}

View File

@@ -361,7 +361,7 @@
TAB_TORRENT_INFO: 'Torrent Info',
TAB_USER_SUBTITLE: 'Subtitle Info',
TAB_THUMBS_LIST: 'Thumbs-up',
TAB_USER_INFO: 'Users Info',
TAB_USER_INFO: 'Users List',
TAB_OTHER_TORRENTS: 'Other Torrents',
TAB_MY_PANEL: 'My Pannel',
TAB_ADMIN_PANEL: 'Admin Panel',

View File

@@ -361,8 +361,8 @@
TAB_TORRENT_INFO: '种子信息',
TAB_USER_SUBTITLE: '字幕信息',
TAB_THUMBS_LIST: '点赞用户',
TAB_USER_INFO: '用户信息',
TAB_OTHER_TORRENTS: '其它种子',
TAB_USER_INFO: '用户列表',
TAB_OTHER_TORRENTS: '其它版本',
TAB_MY_PANEL: '我的面板',
TAB_ADMIN_PANEL: '管理员面板',
THUMBS_UP_TORRENT: '我要为此种子点赞并赠送 {{number}} 积分给发布者',

View File

@@ -9,6 +9,10 @@
function ForumsAdminService($resource, CacheFactory) {
var forumsCache = CacheFactory.get('forumsCache') || CacheFactory.createCache('forumsCache');
var removeCache = function (res) {
forumsCache.removeAll();
return res.data;
};
return $resource('/api/admin/forums/:forumId', {
forumId: '@_id'
@@ -23,7 +27,20 @@
cache: forumsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
addModerator: {
method: 'PUT',
@@ -31,7 +48,8 @@
params: {
forumId: '@_id',
username: '@_username'
}
},
interceptor: {response: removeCache}
},
removeModerator: {
method: 'PUT',
@@ -39,7 +57,8 @@
params: {
forumId: '@_id',
username: '@_username'
}
},
interceptor: {response: removeCache}
}
});
}
@@ -52,6 +71,10 @@
function ForumsService($resource, CacheFactory) {
var forumsCache = CacheFactory.get('forumsCache') || CacheFactory.createCache('forumsCache');
var removeCache = function (res) {
forumsCache.removeAll();
return res.data;
};
return $resource('/api/forums/:forumId', {
forumId: '@_id'
@@ -66,7 +89,20 @@
cache: forumsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
search: {
method: 'PUT',

View File

@@ -9,6 +9,11 @@
function RepliesService($resource, CacheFactory) {
var forumsCache = CacheFactory.get('forumsCache') || CacheFactory.createCache('forumsCache');
var removeCache = function (res) {
console.log(res);
forumsCache.removeAll();
return res.data;
};
return $resource('/api/topics/:forumId/:topicId/:replyId', {
forumId: '@forum',
@@ -24,7 +29,20 @@
cache: forumsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
}
});
}

View File

@@ -9,6 +9,10 @@
function TopicsService($resource, CacheFactory) {
var forumsCache = CacheFactory.get('forumsCache') || CacheFactory.createCache('forumsCache');
var removeCache = function (res) {
forumsCache.removeAll();
return res.data;
};
return $resource('/api/topics/:forumId/:topicId', {
forumId: '@forum',
@@ -23,7 +27,20 @@
cache: forumsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
getGlobalTopics: {
method: 'GET',
@@ -37,7 +54,8 @@
params: {
forumId: '@forum',
topicId: '@_id'
}
},
interceptor: {response: removeCache}
},
toggleTopicTopStatus: {
method: 'PUT',
@@ -45,7 +63,8 @@
params: {
forumId: '@forum',
topicId: '@_id'
}
},
interceptor: {response: removeCache}
},
toggleTopicGlobalStatus: {
method: 'PUT',
@@ -53,7 +72,8 @@
params: {
forumId: '@forum',
topicId: '@_id'
}
},
interceptor: {response: removeCache}
},
toggleTopicHomeHelpStatus: {
method: 'PUT',
@@ -61,7 +81,8 @@
params: {
forumId: '@forum',
topicId: '@_id'
}
},
interceptor: {response: removeCache}
},
toggleTopicHomeNoticeStatus: {
method: 'PUT',
@@ -69,7 +90,8 @@
params: {
forumId: '@forum',
topicId: '@_id'
}
},
interceptor: {response: removeCache}
},
thumbsUp: {
method: 'PUT',
@@ -78,7 +100,8 @@
forumId: '@forum',
topicId: '@_id',
replyId: '@_replyId'
}
},
interceptor: {response: removeCache}
},
getHomeHelp: {
method: 'GET',

View File

@@ -9,6 +9,10 @@
function InvitationsService($resource, CacheFactory) {
var invitationsCache = CacheFactory.get('invitationsCache') || CacheFactory.createCache('invitationsCache');
var removeCache = function (res) {
invitationsCache.removeAll();
return res.data;
};
return $resource('/api/invitations/:invitationId', {
invitationId: '@_id'
@@ -23,7 +27,20 @@
cache: invitationsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
verifyToken: {
method: 'GET',
@@ -38,7 +55,8 @@
},
sendOfficial: {
method: 'POST',
url: '/api/invitations/official/send'
url: '/api/invitations/official/send',
interceptor: {response: removeCache}
},
listOfficial: {
method: 'GET',
@@ -48,7 +66,8 @@
},
deleteExpiredOfficialInvitation: {
method: 'DELETE',
url: '/api/invitations/official/deleteExpired'
url: '/api/invitations/official/deleteExpired',
interceptor: {response: removeCache}
}
});
}

View File

@@ -8,22 +8,39 @@
AdminMessagesService.$inject = ['$resource', 'CacheFactory'];
function AdminMessagesService($resource, CacheFactory) {
var messagesCache = CacheFactory.get('messagesCache') || CacheFactory.createCache('messagesCache');
var adminMessagesCache = CacheFactory.get('adminMessagesCache') || CacheFactory.createCache('adminMessagesCache');
var removeCache = function (res) {
adminMessagesCache.removeAll();
return res.data;
};
return $resource('/api/adminMessages/:adminMessageId', {
adminMessageId: '@_adminMessageId'
}, {
get: {
method: 'GET',
cache: messagesCache
cache: adminMessagesCache
},
query: {
method: 'GET',
isArray: true,
cache: messagesCache
cache: adminMessagesCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
}
});
}

View File

@@ -9,6 +9,10 @@
function MessagesService($resource, CacheFactory) {
var messagesCache = CacheFactory.get('messagesCache') || CacheFactory.createCache('messagesCache');
var removeCache = function (res) {
messagesCache.removeAll();
return res.data;
};
return $resource('/api/messages/:messageId', {
messageId: '@_messageId'
@@ -22,7 +26,20 @@
cache: messagesCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
countUnread: {
url: '/api/messages/countUnread',

View File

@@ -10,6 +10,10 @@
function RankingService($resource, CacheFactory) {
var rankingCache = CacheFactory.get('rankingCache') || CacheFactory.createCache('rankingCache');
var removeCache = function (res) {
rankingCache.removeAll();
return res.data;
};
return $resource('/api/ranking', {
userId: '@_id'
@@ -24,7 +28,8 @@
cache: rankingCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
}
});
}

View File

@@ -10,6 +10,10 @@
function RequestsCommentsService($resource, CacheFactory) {
var requestsCache = CacheFactory.get('requestsCache') || CacheFactory.createCache('requestsCache');
var removeCache = function (res) {
requestsCache.removeAll();
return res.data;
};
var Comments = $resource('/api/reqComments/:requestId/:commentId/:subCommentId', {
requestId: '@_requestId',
@@ -25,7 +29,20 @@
cache: requestsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
}
});

View File

@@ -9,6 +9,10 @@
function RequestsService($resource, CacheFactory) {
var requestsCache = CacheFactory.get('requestsCache') || CacheFactory.createCache('requestsCache');
var removeCache = function (res) {
requestsCache.removeAll();
return res.data;
};
return $resource('/api/requests/:requestId', {
requestId: '@_id'
@@ -22,7 +26,20 @@
cache: requestsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
accept: {
method: 'PUT',
@@ -30,7 +47,8 @@
params: {
requestId: '@_id',
torrentId: 'torrentId'
}
},
interceptor: {response: removeCache}
}
});
}

View File

@@ -9,6 +9,10 @@
function SystemsService($resource, CacheFactory) {
var systemsCache = CacheFactory.get('systemsCache') || CacheFactory.createCache('systemsCache');
var removeCache = function (res) {
systemsCache.removeAll();
return res.data;
};
return $resource('/api/systems/:systemId', {
requestId: '@_id'
@@ -23,7 +27,8 @@
cache: systemsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
getSystemEnvConfigFiles: {
method: 'GET',
@@ -56,15 +61,18 @@
},
setSystemConfigContent: {
method: 'PUT',
url: '/api/systems/systemConfigContent'
url: '/api/systems/systemConfigContent',
interceptor: {response: removeCache}
},
shellCommand: {
method: 'PUT',
url: '/api/systems/shellCommand'
url: '/api/systems/shellCommand',
interceptor: {response: removeCache}
},
initExaminationData: {
method: 'PUT',
url: '/api/systems/initExaminationData'
url: '/api/systems/initExaminationData',
interceptor: {response: removeCache}
},
getExaminationStatus: {
method: 'GET',
@@ -83,7 +91,8 @@
},
banAllUnfinishedUser: {
method: 'PUT',
url: '/api/systems/banAllUnfinishedUser'
url: '/api/systems/banAllUnfinishedUser',
interceptor: {response: removeCache}
}
});
}

View File

@@ -8,7 +8,11 @@
MessageTicketsService.$inject = ['$resource', 'CacheFactory'];
function MessageTicketsService($resource, CacheFactory) {
var ticketsCache = CacheFactory.get('ticketsCache') || CacheFactory.createCache('ticketsCache');
var messagesTicketsCache = CacheFactory.get('messagesTicketsCache') || CacheFactory.createCache('messagesTicketsCache');
var removeCache = function (res) {
messagesTicketsCache.removeAll();
return res.data;
};
return $resource('/api/messageTickets/:messageTicketId/:replyId', {
messageTicketId: '@_id',
@@ -16,28 +20,43 @@
}, {
get: {
method: 'GET',
cache: ticketsCache
cache: messagesTicketsCache
},
query: {
method: 'GET',
cache: ticketsCache
cache: messagesTicketsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
handle: {
method: 'PUT',
url: '/api/messageTickets/handle/:messageTicketId',
params: {
messageTicketId: '@messageTicketId'
}
},
interceptor: {response: removeCache}
},
solved: {
method: 'PUT',
url: '/api/messageTickets/solved/:messageTicketId',
params: {
messageTicketId: '@messageTicketId'
}
},
interceptor: {response: removeCache}
},
getOpenedCount: {
method: 'GET',
@@ -53,21 +72,38 @@
MailTicketsService.$inject = ['$resource', 'CacheFactory'];
function MailTicketsService($resource, CacheFactory) {
var ticketsCache = CacheFactory.get('ticketsCache') || CacheFactory.createCache('ticketsCache');
var mailTicketsCache = CacheFactory.get('mailTicketsCache') || CacheFactory.createCache('mailTicketsCache');
var removeCache = function (res) {
mailTicketsCache.removeAll();
return res.data;
};
return $resource('/api/mailTickets/:mailTicketId', {
mailTicketId: '@_id'
}, {
get: {
method: 'GET',
cache: ticketsCache
cache: mailTicketsCache
},
query: {
method: 'GET',
cache: ticketsCache
cache: mailTicketsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
getOpenedCount: {
method: 'GET',

View File

@@ -9,7 +9,11 @@
CommentsService.$inject = ['$resource', 'CacheFactory'];
function CommentsService($resource, CacheFactory) {
var commentsCache = CacheFactory.get('commentsCache') || CacheFactory.createCache('commentsCache');
var torrentsCache = CacheFactory.get('torrentsCache') || CacheFactory.createCache('torrentsCache');
var removeCache = function (res) {
torrentsCache.removeAll();
return res.data;
};
var Comments = $resource('/api/comments/:torrentId/:commentId/:subCommentId', {
torrentId: '@_torrentId',
@@ -18,14 +22,27 @@
}, {
get: {
method: 'GET',
cache: commentsCache
cache: torrentsCache
},
query: {
method: 'GET',
cache: commentsCache
cache: torrentsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
}
});

View File

@@ -10,6 +10,10 @@
function CompleteService($resource, CacheFactory) {
var completesCache = CacheFactory.get('completesCache') || CacheFactory.createCache('completesCache');
var removeCache = function (res) {
completesCache.removeAll();
return res.data;
};
var completes = $resource('/api/completes/:completeId', {
completeId: '@completeId'
@@ -24,7 +28,20 @@
cache: completesCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
}
});

View File

@@ -9,7 +9,11 @@
SubtitlesService.$inject = ['$resource', 'CacheFactory'];
function SubtitlesService($resource, CacheFactory) {
var subtitlesCache = CacheFactory.get('subtitlesCache') || CacheFactory.createCache('subtitlesCache');
var torrentsCache = CacheFactory.get('torrentsCache') || CacheFactory.createCache('torrentsCache');
var removeCache = function (res) {
torrentsCache.removeAll();
return res.data;
};
var Subtitles = $resource('/api/subtitles/:torrentId/:subtitleId', {
torrentId: '@_torrentId',
@@ -17,15 +21,28 @@
}, {
get: {
method: 'GET',
cache: subtitlesCache
cache: torrentsCache
},
query: {
method: 'GET',
isArray: true,
cache: subtitlesCache
cache: torrentsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
}
});

View File

@@ -10,6 +10,10 @@
function TorrentsService($resource, CacheFactory) {
var torrentsCache = CacheFactory.get('torrentsCache') || CacheFactory.createCache('torrentsCache');
var removeCache = function (res) {
torrentsCache.removeAll();
return res.data;
};
var Torrents = $resource('/api/torrents/:torrentId', {
torrentId: '@_id'
@@ -23,7 +27,20 @@
cache: torrentsCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
getTMDBMovieInfo: {
method: 'GET',
@@ -54,7 +71,8 @@
params: {
torrentId: '@_torrentId',
saleType: '@_saleType'
}
},
interceptor: {response: removeCache}
},
setRecommendLevel: {
method: 'PUT',
@@ -62,56 +80,64 @@
params: {
torrentId: '@_torrentId',
rlevel: '@_rlevel'
}
},
interceptor: {response: removeCache}
},
setTorrentTags: {
method: 'PUT',
url: '/api/torrents/:torrentId/set/tags',
params: {
torrentId: '@_torrentId'
}
},
interceptor: {response: removeCache}
},
setReviewedStatus: {
method: 'PUT',
url: '/api/torrents/:torrentId/set/reviewed',
params: {
torrentId: '@_torrentId'
}
},
interceptor: {response: removeCache}
},
toggleHnRStatus: {
method: 'PUT',
url: '/api/torrents/:torrentId/toggleHnRStatus',
params: {
torrentId: '@_id'
}
},
interceptor: {response: removeCache}
},
toggleVIPStatus: {
method: 'PUT',
url: '/api/torrents/:torrentId/toggleVIPStatus',
params: {
torrentId: '@_id'
}
},
interceptor: {response: removeCache}
},
toggleTopStatus: {
method: 'PUT',
url: '/api/torrents/:torrentId/toggleTOPStatus',
params: {
torrentId: '@_id'
}
},
interceptor: {response: removeCache}
},
thumbsUp: {
method: 'PUT',
url: '/api/torrents/:torrentId/thumbsUp',
params: {
torrentId: '@_id'
}
},
interceptor: {response: removeCache}
},
rating: {
method: 'PUT',
url: '/api/torrents/:torrentId/rating',
params: {
torrentId: '@_id'
}
},
interceptor: {response: removeCache}
},
siteInfo: {
method: 'GET',

View File

@@ -870,7 +870,7 @@
<div>
<span class="xs-show sm-show">
<h4 class="margin-bottom-30">
{{'TAB_USER_INFO' | translate}}:
{{'TAB_OTHER_TORRENTS' | translate}}:
</h4>
</span>

View File

@@ -9,6 +9,10 @@
function TracesService($resource, CacheFactory) {
var tracesCache = CacheFactory.get('tracesCache') || CacheFactory.createCache('tracesCache');
var removeCache = function (res) {
tracesCache.removeAll();
return res.data;
};
return $resource('/api/traces/:traceId', {
traceId: '@_id'
@@ -22,7 +26,20 @@
cache: tracesCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
}
});
}

View File

@@ -10,6 +10,10 @@
function UsersService($resource, CacheFactory) {
var usersCache = CacheFactory.get('usersCache') || CacheFactory.createCache('usersCache');
var removeCache = function (res) {
usersCache.removeAll();
return res.data;
};
var Users = $resource('/api/users', {}, {
get: {
@@ -21,19 +25,35 @@
cache: usersCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
updatePassword: {
method: 'POST',
url: '/api/users/password'
url: '/api/users/password',
interceptor: {response: removeCache}
},
resetPasskey: {
method: 'POST',
url: '/api/users/passkey'
url: '/api/users/passkey',
interceptor: {response: removeCache}
},
updateSignature: {
method: 'POST',
url: '/api/users/signature'
url: '/api/users/signature',
interceptor: {response: removeCache}
},
warningNumber: {
method: 'GET',
@@ -44,41 +64,49 @@
url: '/api/users/accounts',
params: {
provider: '@provider'
}
},
interceptor: {response: removeCache}
},
sendPasswordResetToken: {
method: 'POST',
url: '/api/auth/forgot'
url: '/api/auth/forgot',
interceptor: {response: removeCache}
},
resetPasswordWithToken: {
method: 'POST',
url: '/api/auth/reset/:token'
url: '/api/auth/reset/:token',
interceptor: {response: removeCache}
},
signup: {
method: 'POST',
url: '/api/auth/signup'
url: '/api/auth/signup',
interceptor: {response: removeCache}
},
signin: {
method: 'POST',
url: '/api/auth/signin'
url: '/api/auth/signin',
interceptor: {response: removeCache}
},
unIdle: {
method: 'POST',
url: '/api/users/unIdle'
url: '/api/users/unIdle',
interceptor: {response: removeCache}
},
followTo: {
method: 'POST',
url: '/api/users/followTo/:userId',
params: {
userId: '@userId'
}
},
interceptor: {response: removeCache}
},
unFollowTo: {
method: 'POST',
url: '/api/users/unFollowTo/:userId',
params: {
userId: '@userId'
}
},
interceptor: {response: removeCache}
},
myFollowers: {
method: 'GET',
@@ -177,6 +205,10 @@
function AdminService($resource, CacheFactory) {
var usersCache = CacheFactory.get('usersCache') || CacheFactory.createCache('usersCache');
var removeCache = function (res) {
usersCache.removeAll();
return res.data;
};
var Users = $resource('/api/users/:userId', {
userId: '@_id'
@@ -190,7 +222,20 @@
cache: usersCache
},
update: {
method: 'PUT'
method: 'PUT',
interceptor: {response: removeCache}
},
save: {
method: 'POST',
interceptor: {response: removeCache}
},
remove: {
method: 'DELETE',
interceptor: {response: removeCache}
},
delete: {
method: 'DELETE',
interceptor: {response: removeCache}
},
updateUserRole: {
method: 'POST',
@@ -198,7 +243,8 @@
params: {
userId: '@userId',
userRole: '@userRole'
}
},
interceptor: {response: removeCache}
},
updateUserStatus: {
method: 'POST',
@@ -206,7 +252,8 @@
params: {
userId: '@userId',
userStatus: '@userStatus'
}
},
interceptor: {response: removeCache}
},
updateUserScore: {
method: 'POST',
@@ -214,7 +261,8 @@
params: {
userId: '@userId',
userScore: '@userScore'
}
},
interceptor: {response: removeCache}
},
updateUserUploaded: {
method: 'POST',
@@ -222,7 +270,8 @@
params: {
userId: '@userId',
userUploaded: '@userUploaded'
}
},
interceptor: {response: removeCache}
},
updateUserDownloaded: {
method: 'POST',
@@ -230,7 +279,8 @@
params: {
userId: '@userId',
userDownloaded: '@userDownloaded'
}
},
interceptor: {response: removeCache}
},
getUserUploadedTotal: {
method: 'GET',
@@ -244,7 +294,8 @@
url: '/api/users/:userId/resetImage',
params: {
userId: '@userId'
}
},
interceptor: {response: removeCache}
},
updateUserVIPMonths: {
method: 'PUT',
@@ -252,14 +303,16 @@
params: {
userId: '@userId',
months: '@months'
}
},
interceptor: {response: removeCache}
},
resetUserVIPData: {
method: 'PUT',
url: '/api/users/:userId/VIPMonths/reset',
params: {
userId: '@userId'
}
},
interceptor: {response: removeCache}
},
uploaderList: {
method: 'GET',