various fixes
This commit is contained in:
parent
fdedccfc8b
commit
a0be3e998b
|
@ -31,16 +31,11 @@ func main() {
|
|||
|
||||
var (
|
||||
repoPath string
|
||||
role roomdb.Role
|
||||
role roomdb.Role = roomdb.RoleAdmin
|
||||
)
|
||||
|
||||
flag.StringVar(&repoPath, "repo", filepath.Join(u.HomeDir, ".ssb-go-room"), "where the repo of the room is located")
|
||||
flag.Func("role", "which role the new member should have (ie moderator, admin, member. defaults to admin)", func(val string) error {
|
||||
if val == "" {
|
||||
role = roomdb.RoleAdmin
|
||||
return nil
|
||||
}
|
||||
|
||||
switch strings.ToLower(val) {
|
||||
case "admin":
|
||||
role = roomdb.RoleAdmin
|
||||
|
@ -58,7 +53,7 @@ func main() {
|
|||
|
||||
flag.Parse()
|
||||
|
||||
if len(os.Args) != 2 {
|
||||
if len(os.Args) != 3 {
|
||||
fmt.Fprintf(os.Stderr, "usage: %s <user-name> <@theirPublicKey.ed25519>\n", os.Args[0])
|
||||
flag.Usage()
|
||||
os.Exit(1)
|
||||
|
@ -70,7 +65,8 @@ func main() {
|
|||
check(err)
|
||||
defer db.Close()
|
||||
|
||||
pubKey, err := refs.ParseFeedRef(os.Args[1])
|
||||
pubKey, err := refs.ParseFeedRef(os.Args[2])
|
||||
check(err)
|
||||
|
||||
fmt.Fprintln(os.Stderr, "Enter Password: ")
|
||||
bytePassword, err := terminal.ReadPassword(int(syscall.Stdin))
|
||||
|
|
|
@ -247,7 +247,7 @@ func runroomsrv() error {
|
|||
handlers.Databases{
|
||||
Aliases: db.Aliases,
|
||||
AuthFallback: db.AuthFallback,
|
||||
DeniedList: db.DeniedList,
|
||||
DeniedKeys: db.DeniedKeys,
|
||||
Invites: db.Invites,
|
||||
Notices: db.Notices,
|
||||
Members: db.Members,
|
||||
|
|
|
@ -9,8 +9,6 @@ import (
|
|||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/ssb-ngi-pointer/go-ssb-room/roomdb"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
"go.cryptoscope.co/muxrpc/v2"
|
||||
|
@ -18,6 +16,7 @@ import (
|
|||
|
||||
"github.com/ssb-ngi-pointer/go-ssb-room/aliases"
|
||||
"github.com/ssb-ngi-pointer/go-ssb-room/internal/maybemod/keys"
|
||||
"github.com/ssb-ngi-pointer/go-ssb-room/roomdb"
|
||||
"github.com/ssb-ngi-pointer/go-ssb-room/roomsrv"
|
||||
)
|
||||
|
||||
|
|
|
@ -102,6 +102,7 @@ func TestInvitesCreateForm(t *testing.T) {
|
|||
func TestInvitesCreate(t *testing.T) {
|
||||
ts := newSession(t)
|
||||
a := assert.New(t)
|
||||
r := require.New(t)
|
||||
|
||||
urlTo := web.NewURLTo(ts.Router)
|
||||
urlRemove := urlTo(router.AdminInvitesCreate)
|
||||
|
@ -114,7 +115,7 @@ func TestInvitesCreate(t *testing.T) {
|
|||
})
|
||||
a.Equal(http.StatusOK, rec.Code)
|
||||
|
||||
a.Equal(1, ts.InvitesDB.CreateCallCount())
|
||||
r.Equal(1, ts.InvitesDB.CreateCallCount(), "expected one invites.Create call")
|
||||
_, userID, aliasSuggestion := ts.InvitesDB.CreateArgsForCall(0)
|
||||
a.EqualValues(ts.User.ID, userID)
|
||||
a.EqualValues("jerry", aliasSuggestion)
|
||||
|
|
|
@ -36,7 +36,7 @@ type testSession struct {
|
|||
MembersDB *mockdb.FakeMembersService
|
||||
PinnedDB *mockdb.FakePinnedNoticesService
|
||||
|
||||
User *roomdb.Member
|
||||
User roomdb.Member
|
||||
|
||||
Domain string
|
||||
|
||||
|
@ -63,7 +63,7 @@ func newSession(t *testing.T) *testSession {
|
|||
ts.Domain = randomString(10)
|
||||
|
||||
// fake user
|
||||
ts.User = &roomdb.Member{
|
||||
ts.User = roomdb.Member{
|
||||
ID: 1234,
|
||||
Nickname: "room mate",
|
||||
Role: roomdb.RoleModerator,
|
||||
|
@ -81,7 +81,7 @@ func newSession(t *testing.T) *testSession {
|
|||
return msgID + "Plural"
|
||||
}
|
||||
testFuncs["current_page_is"] = func(routeName string) bool { return true }
|
||||
testFuncs["is_logged_in"] = func() *roomdb.Member { return ts.User }
|
||||
testFuncs["is_logged_in"] = func() *roomdb.Member { return &ts.User }
|
||||
testFuncs["urlToNotice"] = func(name string) string { return "" }
|
||||
testFuncs["relative_time"] = func(when time.Time) string { return humanize.Time(when) }
|
||||
|
||||
|
|
|
@ -46,7 +46,7 @@ var HTMLTemplates = []string{
|
|||
type Databases struct {
|
||||
Aliases roomdb.AliasesService
|
||||
AuthFallback roomdb.AuthFallbackService
|
||||
DeniedList roomdb.DeniedListService
|
||||
DeniedKeys roomdb.DeniedKeysService
|
||||
Invites roomdb.InvitesService
|
||||
Notices roomdb.NoticesService
|
||||
Members roomdb.MembersService
|
||||
|
@ -234,9 +234,10 @@ func New(
|
|||
roomState,
|
||||
admin.Databases{
|
||||
Aliases: dbs.Aliases,
|
||||
Members: dbs.Members,
|
||||
DeniedKeys: dbs.DeniedKeys,
|
||||
Invites: dbs.Invites,
|
||||
Notices: dbs.Notices,
|
||||
Members: dbs.Members,
|
||||
PinnedNotices: dbs.PinnedNotices,
|
||||
},
|
||||
)
|
||||
|
|
|
@ -22,12 +22,19 @@ AdminAliasesTitle = "Aliases"
|
|||
AdminAliasesWelcome = "Here you can see and revoke the registered aliases of this room."
|
||||
AdminAliasesRevoke = "Revoke"
|
||||
|
||||
AdminAllowListTitle = "Members"
|
||||
AdminAllowListWelcome = "Here you can see all the members of the room and ways to add new ones (by their SSB ID) or remove exising ones."
|
||||
AdminAllowListAdd = "Add"
|
||||
AdminAllowListRemove = "Remove"
|
||||
AdminAllowListRemoveConfirmWelcome = "Are you sure you want to remove this member? They will lose their alias, if they have one."
|
||||
AdminAllowListRemoveConfirmTitle = "Confirm member removal"
|
||||
AdminDeniedKeysTitle = "Denied Public Keys"
|
||||
AdminDeniedKeysWelcome = "This page can be used to ban/block SSB IDs so that they can't access the room any more."
|
||||
AdminDeniedKeysAdd = "Add"
|
||||
AdminDeniedKeysRemove = "Remove"
|
||||
AdminDeniedKeysRemoveConfirmWelcome = "Are you sure you want to remove this member? They will lose their alias, if they have one."
|
||||
AdminDeniedKeysRemoveConfirmTitle = "Confirm member removal"
|
||||
|
||||
AdminMembersTitle = "Members"
|
||||
AdminMembersWelcome = "Here you can see all the members of the room and ways to add new ones (by their SSB ID) or remove exising ones."
|
||||
AdminMembersAdd = "Add"
|
||||
AdminMembersRemove = "Remove"
|
||||
AdminMembersRemoveConfirmWelcome = "Are you sure you want to remove this member? They will lose their alias, if they have one."
|
||||
AdminMembersRemoveConfirmTitle = "Confirm member removal"
|
||||
|
||||
AdminInvitesTitle = "Invites"
|
||||
AdminInvitesWelcome = "Create invite tokens for people who are not yet members of this room. At the same time as you create an invite, you can also (optionally) attach an alias to it so that the person who receives the invite can automatically use that claim that alias for themselves."
|
||||
|
|
|
@ -33,7 +33,16 @@
|
|||
>
|
||||
<svg class="text-purple-600 w-4 h-4 mr-1" viewBox="0 0 24 24">
|
||||
<path fill="currentColor" d="M12,4A4,4 0 0,1 16,8A4,4 0 0,1 12,12A4,4 0 0,1 8,8A4,4 0 0,1 12,4M12,6A2,2 0 0,0 10,8A2,2 0 0,0 12,10A2,2 0 0,0 14,8A2,2 0 0,0 12,6M12,13C14.67,13 20,14.33 20,17V20H4V17C4,14.33 9.33,13 12,13M12,14.9C9.03,14.9 5.9,16.36 5.9,17V18.1H18.1V17C18.1,16.36 14.97,14.9 12,14.9Z" />
|
||||
</svg>{{i18n "AdminAllowListTitle"}}
|
||||
</svg>{{i18n "AdminMembersTitle"}}
|
||||
</a>
|
||||
|
||||
<a
|
||||
href="{{urlTo "admin:denied-keys:overview"}}"
|
||||
class="{{if current_page_is "admin:denied-keys:overview"}}bg-gray-300 {{else}}hover:bg-gray-200 {{end}}pr-1 pl-2 py-3 sm:py-1 rounded-md flex flex-row items-center font-semibold text-sm text-gray-700 hover:text-gray-800 truncate"
|
||||
>
|
||||
<svg class="text-purple-600 w-4 h-4 mr-1" viewBox="0 0 24 24">
|
||||
<path fill="currentColor" d="" />
|
||||
</svg>{{i18n "AdminDeniedKeysTitle"}}
|
||||
</a>
|
||||
|
||||
<a
|
||||
|
|
|
@ -11,7 +11,7 @@ import (
|
|||
// This is part of testing.go because we need to use roomMemberContextKey, which shouldn't be exported either.
|
||||
// TODO: could be protected with an extra build tag.
|
||||
// (Sadly +build test does not exist https://github.com/golang/go/issues/21360 )
|
||||
func MiddlewareForTests(m *roomdb.Member) func(http.Handler) http.Handler {
|
||||
func MiddlewareForTests(m roomdb.Member) func(http.Handler) http.Handler {
|
||||
return func(next http.Handler) http.Handler {
|
||||
return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
|
||||
ctx := context.WithValue(req.Context(), roomMemberContextKey, m)
|
||||
|
|
Loading…
Reference in New Issue