UNPKG

apostrophe

Version:

Apostrophe is a user-friendly content management system. You'll need more than this core module. See apostrophenow.org to get started.

45 lines (42 loc) 1.44 kB
var async = require('async'); var _ = require('lodash'); var argv = require('optimist').argv; // Re-index all content for search module.exports = function(self, callback) { return async.series({ indexPages: function(callback) { console.log('Indexing all pages for search'); return self.forEachPage({}, { load: true }, function(page, callback) { return self.indexPage({}, page, callback); }, callback); }, indexFiles: function(callback) { console.log('Indexing all files for search'); return self.forEachFile({}, function(file, callback) { return async.series({ searchText: function(callback) { return self.fileSearchText(file, function(err, searchText) { if (err) { return callback(err); } file.searchText = searchText; return callback(null); }); }, update: function(callback) { return self.files.update({ _id: file._id }, file, callback); } }, callback); }, callback); }, indexVideos: function(callback) { console.log('Indexing all videos for search'); return self.forEachVideo({}, function(video, callback) { video.searchText = self.sortify(video.title); self.videos.update({ _id: video._id }, video, callback); }, callback); } }, callback); };