Browse Source

plugins/caldav: add route to delete event

master
Simon Ser 4 years ago
parent
commit
7157627dcf
No known key found for this signature in database GPG Key ID: FDE7BE0E88F5E48
2 changed files with 25 additions and 1 deletions
  1. +7
    -1
      plugins/caldav/public/event.html
  2. +18
    -0
      plugins/caldav/routes.go

+ 7
- 1
plugins/caldav/public/event.html View File

@@ -4,13 +4,19 @@

<p>
<a href="/calendar">Back</a>
· <a href="{{.Event.URL}}/update">Edit</a>
</p>

{{$event := index .Event.Data.Events 0}}

<h2>Event: {{$event.Props.Text "SUMMARY"}}</h2>

<p>
<a href="{{.Event.URL}}/update">Edit</a>
<form action="{{.Event.URL}}/delete" method="post">
<input type="submit" value="Delete">
</form>
</p>

<ul>
<li><strong>Start date</strong>: {{$event.DateTimeStart nil | formatdate}}</li>
<li><strong>End date</strong>: {{$event.DateTimeEnd nil | formatdate}}</li>


+ 18
- 0
plugins/caldav/routes.go View File

@@ -239,4 +239,22 @@ func registerRoutes(p *alps.GoPlugin, u *url.URL) {

p.GET("/calendar/:path/update", updateEvent)
p.POST("/calendar/:path/update", updateEvent)

p.POST("/calendar/:path/delete", func(ctx *alps.Context) error {
path, err := parseObjectPath(ctx.Param("path"))
if err != nil {
return err
}

c, _, err := getCalendar(u, ctx.Session)
if err != nil {
return err
}

if err := c.RemoveAll(path); err != nil {
return fmt.Errorf("failed to delete calendar object: %v", err)
}

return ctx.Redirect(http.StatusFound, "/calendar")
})
}

Loading…
Cancel
Save