* Fix updating of existing file filter

* Update findFiles() to properly apply filters, sort order / direction, etc.
* Properly persist hash tags @ file entry persist
* Lots of improvements / additions to MCI for upload/download, etc. stats
* Persist processed entries @ upload (WIP, but close!)
This commit is contained in:
Bryan Ashby
2017-01-18 22:23:53 -07:00
parent e265e3cc97
commit fb176d3ab3
8 changed files with 159 additions and 66 deletions

View File

@@ -262,11 +262,13 @@ exports.getModule = class FileAreaFilterEdit extends MenuModule {
}
saveCurrentFilter(formData, cb) {
const filters = new FileBaseFilters(this.client);
const selectedFilter = this.filtersArray[this.currentFilterIndex];
const filters = new FileBaseFilters(this.client);
const selectedFilter = this.filtersArray[this.currentFilterIndex];
if(selectedFilter) {
// *update* currently selected filter
this.setFilterValuesFromFormData(selectedFilter, formData);
filters.replace(selectedFilter.uuid, selectedFilter);
} else {
// add a new entry; note that UUID will be generated
const newFilter = {};

View File

@@ -333,22 +333,20 @@ exports.getModule = class FileAreaList extends MenuModule {
if(_.isString(self.currentFileEntry.desc)) {
const descView = self.viewControllers.browse.getView(MciViewIds.browse.desc);
if(descView) {
/* :TODO: finish createCleanAnsi() and use here!!!
createCleanAnsi(
self.currentFileEntry.desc,
{ height : self.client.termHeight, width : descView.dimens.width },
cleanDesc => {
descView.setText(cleanDesc);
// :TODO: use cleanDesc -- need to finish createCleanAnsi() !!
//descView.setText(cleanDesc);
descView.setText( self.currentFileEntry.desc );
self.updateQueueIndicator();
self.populateCustomLabels('browse', 10);
return callback(null);
}
);
*/
descView.setText( self.currentFileEntry.desc );
);
}
} else {
self.updateQueueIndicator();

View File

@@ -222,31 +222,43 @@ exports.getModule = class UploadModule extends MenuModule {
function prepDetails(scanResults, callback) {
async.eachSeries(scanResults.newEntries, (newEntry, nextEntry) => {
self.displayFileDetailsPageForEntry(newEntry, (err, newValues) => {
if(!err) {
// if the file entry did *not* have a desc, take the user desc
if(!self.fileEntryHasDetectedDesc(newEntry)) {
newEntry.desc = newValues.shortDesc.trim();
}
if(err) {
return nextEntry(err);
}
if(newValues.estYear.length > 0) {
newEntry.meta.est_release_year = newValues.estYear;
}
// if the file entry did *not* have a desc, take the user desc
if(!self.fileEntryHasDetectedDesc(newEntry)) {
newEntry.desc = newValues.shortDesc.trim();
}
if(newValues.tags.length > 0) {
newEntry.setHashTags(newValues.tags);
}
if(newValues.estYear.length > 0) {
newEntry.meta.est_release_year = newValues.estYear;
}
if(newValues.tags.length > 0) {
newEntry.setHashTags(newValues.tags);
}
return nextEntry(err);
});
}, err => {
delete self.fileDetailsCurrentEntrySubmitCallback;
return callback(err, scanResults);
});
},
function persistNewEntries(scanResults, callback) {
// loop over entries again & persist to DB
async.eachSeries(scanResults.newEntries, (newEntry, nextEntry) => {
newEntry.persist(err => {
return nextEntry(err);
});
}, err => {
return callback(err);
});
}
],
err => {
console.log('eh'); // :TODO: remove me :)
}
);
}