aboutsummaryrefslogtreecommitdiffstats
path: root/walrss/internal/urls/urls.go
diff options
context:
space:
mode:
Diffstat (limited to 'walrss/internal/urls/urls.go')
-rw-r--r--walrss/internal/urls/urls.go29
1 files changed, 26 insertions, 3 deletions
diff --git a/walrss/internal/urls/urls.go b/walrss/internal/urls/urls.go
index bd3d878..a5dd782 100644
--- a/walrss/internal/urls/urls.go
+++ b/walrss/internal/urls/urls.go
@@ -1,5 +1,10 @@
package urls
+import (
+ "fmt"
+ "strings"
+)
+
const (
Index = "/"
@@ -7,7 +12,25 @@ const (
AuthSignIn = Auth + "/signin"
AuthRegister = Auth + "/register"
- Edit = "/edit"
- EditEnabledState = Edit + "/enabled"
- EditTimings = Edit + "/timings"
+ Edit = "/edit"
+ EditEnabledState = Edit + "/enabled"
+ EditTimings = Edit + "/timings"
+ EditFeedItem = Edit + "/feed/:id"
+ CancelEditFeedItem = Edit + "/feed/:id/cancel"
+
+ New = "/new"
+ NewFeedItem = New + "/feed"
)
+
+func Expand(template string, replacements ...interface{}) string {
+ spt := strings.Split(template, "/")
+ for i, part := range spt {
+ if len(part) == 0 {
+ continue
+ }
+ if part[0] == ':' {
+ spt[i] = "%s"
+ }
+ }
+ return fmt.Sprintf(strings.Join(spt, "/"), replacements...)
+}