1
0

Added check to only let a user delete his own list

This commit is contained in:
konrad
2018-06-12 18:35:36 +02:00
committed by kolaente
parent 5ba9d76328
commit be18247682
5 changed files with 56 additions and 9 deletions

View File

@ -65,9 +65,33 @@ func GetItemsByListID(listID int64) (items []*ListItem, err error) {
return
}
// DeleteListItemByID deletes a list item by its ID
func DeleteListItemByIDtemByID(itemID int64) (err error) {
_, err = x.ID(itemID).Delete(ListItem{})
func GetListItemByID(listItemID int64) (listItem ListItem, err error) {
exists, err := x.ID(listItemID).Get(&listItem)
if err != nil {
return ListItem{}, err
}
if !exists {
return ListItem{}, ErrListItemDoesNotExist{listItemID}
}
return
}
// DeleteListItemByID deletes a list item by its ID
func DeleteListItemByID(itemID int64, doer *User) (err error) {
// Check if it exists
listitem, err := GetListItemByID(itemID)
if err != nil {
return
}
// Check if the user hat the right to delete that item
if listitem.CreatedByID != doer.ID {
return
}
_, err = x.ID(itemID).Delete(ListItem{})
return
}