aboutsummaryrefslogtreecommitdiffstats
path: root/walrss/internal/urls/urls.go
blob: 87fb45ca316c63b5e55277e89187a7ee872cfa8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package urls

import (
	"fmt"
	"strings"
)

const (
	Index = "/"

	Auth         = "/auth"
	AuthSignIn   = Auth + "/signin"
	AuthRegister = Auth + "/register"

	Edit               = "/edit"
	EditEnabledState   = Edit + "/enabled"
	EditTimings        = Edit + "/timings"
	EditFeedItem       = Edit + "/feed/:id"
	CancelEditFeedItem = Edit + "/feed/:id/cancel"

	New         = "/new"
	NewFeedItem = New + "/feed"

	Statics = "/statics"
)

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...)
}