diff options
-rwxr-xr-x | routes.js | 37 | ||||
-rwxr-xr-x | views/event.handlebars | 1 | ||||
-rw-r--r-- | views/partials/editeventmodal.handlebars | 17 |
3 files changed, 52 insertions, 3 deletions
@@ -855,11 +855,46 @@ router.post('/editeventgroup/:eventGroupID/:editToken', (req, res) => { .catch((err) => { console.error(err); res.send('Sorry! Something went wrong!'); addToLog("editEventGroup", "error", "Attempt to edit event group " + req.params.eventGroupID + " failed with error: " + err);}); }); +router.post('/deleteimage/:eventID/:editToken', (req, res) => { + let submittedEditToken = req.params.editToken; + Event.findOne(({ + id: req.params.eventID, + })) + .then((event) => { + if (event.editToken === submittedEditToken) { + // Token matches + if (event.image){ + eventImage = event.image; + } else { + res.status(500).send('This event doesn\'t have a linked image. What are you even doing'); + } + fs.unlink(global.appRoot + '/public/events/' + eventImage, (err) => { + if (err) { + res.status(500).send(err); + addToLog("deleteEventImage", "error", "Attempt to delete event image for event " + req.params.eventID + " failed with error: " + err); + } + // Image removed + addToLog("deleteEventImage", "success", "Image for event " + req.params.eventID + " deleted"); + event.image = ""; + event.save() + .then(response => { + res.status(200).send('Success'); + }) + .catch(err => { + res.status(500).send(err); + addToLog("deleteEventImage", "error", "Attempt to delete event image for event " + req.params.eventID + " failed with error: " + err); + }) + }); + } + }); +}); + router.post('/deleteevent/:eventID/:editToken', (req, res) => { let submittedEditToken = req.params.editToken; + let eventImage; Event.findOne(({ id: req.params.eventID, - })) + })) .then((event) => { if (event.editToken === submittedEditToken) { // Token matches diff --git a/views/event.handlebars b/views/event.handlebars index aaa006e..842239f 100755 --- a/views/event.handlebars +++ b/views/event.handlebars @@ -376,7 +376,6 @@ dateTimeSeparator: ', ' }); $("#timezone").val('{{eventData.timezone}}').trigger('change'); - console.log('{{eventData.timezone}}') {{/unless}} {{/if}} $(".commentTimestamp").html(function(){ diff --git a/views/partials/editeventmodal.handlebars b/views/partials/editeventmodal.handlebars index ce3cdcd..2227473 100644 --- a/views/partials/editeventmodal.handlebars +++ b/views/partials/editeventmodal.handlebars @@ -62,6 +62,9 @@ <input type="file" name="imageUpload" id="image-upload" /> </div> <small class="form-text">Recommended dimensions (w x h): 920px by 300px.</small> + {{#if eventData.image}} + <button type="button" class="btn btn-danger" id="deleteImage">Delete image</button> + {{/if}} </div> <div class="form-group"> <div class="mb-2">Options</div> @@ -138,4 +141,16 @@ </div> </div> </div> -</div>
\ No newline at end of file +</div> + +<script> +$('#deleteImage').click(function() { + $.post('/deleteimage/{{eventData.id}}/{{eventData.editToken}}', function(response) { + if (response === "Success") { + location.reload(); + } else { + alert(response); + } + }); +}) +</script>
\ No newline at end of file |