fixes #4 for real

* Deleting a link deletes the thumbnails
* Joining thumbnails now ignores not visible
This commit is contained in:
Max G 2020-02-10 21:09:09 +00:00
parent ad91218359
commit 623d094d7b
3 changed files with 14 additions and 45 deletions

View File

@ -377,7 +377,6 @@
//If greater than 80 of the way down the page, load the next batch //If greater than 80 of the way down the page, load the next batch
if(percentageDown >= 80){ if(percentageDown >= 80){
console.log('loading next batch')
this.search(false, this.batchSize, true) this.search(false, this.batchSize, true)
} }

View File

@ -123,6 +123,14 @@ Attachment.delete = (userId, attachmentId, urlDelete = false) => {
let url = row.url let url = row.url
const noteId = row.note_id const noteId = row.note_id
//Try to delete file and thumbnail
try {
fs.unlinkSync(filePath+row.file_location)
} catch(err) { console.error('File Does not exist') }
try {
fs.unlinkSync(filePath+'thumb_'+row.file_location)
} catch(err) { console.error('Thumbnail Does not exist') }
//Do not delete link attachments, just hide them. They will be deleted if removed from note //Do not delete link attachments, just hide them. They will be deleted if removed from note
if(row.attachment_type == 1 && !urlDelete){ if(row.attachment_type == 1 && !urlDelete){
db.promise() db.promise()
@ -133,49 +141,12 @@ Attachment.delete = (userId, attachmentId, urlDelete = false) => {
return resolve(true) return resolve(true)
} }
//Try to delete file and thumbnail
try {
fs.unlinkSync(filePath+row.file_location)
} catch(err) { console.error('File Does not exist') }
try {
fs.unlinkSync(filePath+'thumb_'+row.file_location)
} catch(err) { console.error('Thumbnail Does not exist') }
db.promise() db.promise()
.query(`DELETE FROM attachment WHERE id = ?`, [attachmentId]) .query(`DELETE FROM attachment WHERE id = ?`, [attachmentId])
.then((rows, fields) => { }) .then((rows, fields) => { })
.catch(console.log) .catch(console.log)
//Normal notes are done, for links, remove the link from the note
// if(row.attachment_type != 1){
return resolve(true) return resolve(true)
// }
//The code below will delete URL text for note
db.promise().query('SELECT text FROM note WHERE id = ? AND user_id = ?', [noteId, userId])
.then((rows, fields) => {
//Grab note text
let text = rows[0][0]['text']
//Remove URL from text, then remove A tags with empty hrefs
let newText = text.replace(url, '').replace(/<a href="">[^<]*<\/a>/g, '')
db.promise().query('UPDATE note SET text = ? WHERE id = ? AND user_id = ? LIMIT 1 ', [newText, noteId, userId])
.then((rows, fields) => {
//Only reindex if note was deleted from menu
if(reindex){
const Note = require('@models/Note')
//Reindex Note after updating text
Note.reindex(userId, noteId)
}
return resolve(true)
})
})
}) })
}) })
} }

View File

@ -451,10 +451,9 @@ Note.search = (userId, searchQuery, searchTags, fastFilters) => {
JOIN note_raw_text ON (note_raw_text.id = note.note_raw_text_id) JOIN note_raw_text ON (note_raw_text.id = note.note_raw_text_id)
LEFT JOIN note_tag ON (note.id = note_tag.note_id) LEFT JOIN note_tag ON (note.id = note_tag.note_id)
LEFT JOIN tag ON (tag.id = note_tag.tag_id) LEFT JOIN tag ON (tag.id = note_tag.tag_id)
LEFT JOIN attachment ON (note.id = attachment.note_id) LEFT JOIN attachment ON (note.id = attachment.note_id AND attachment.visible = 1)
LEFT JOIN user as shareUser ON (note.share_user_id = shareUser.id) LEFT JOIN user as shareUser ON (note.share_user_id = shareUser.id)
WHERE note.user_id = ? WHERE note.user_id = ?
AND attachment.visible = 1
` `
//Show shared notes //Show shared notes