forked from tangled.org/core
this repo has no description

appview: did resolution exclusion list

Changed files
+10 -2
appview
pages
templates
state
+1 -1
appview/pages/templates/timeline.html
···
</div>
<div class="italic text-lg">
tightly-knit social coding, <a href="/login" class="underline inline-flex gap-1 items-center">join now {{ i "arrow-right" "w-4 h-4" }}</a>
-
<p class="pt-5 px-10 text-sm text-gray-500 dark:text-gray-400">Join our IRC channel: <a href="https://web.libera.chat/#tangled"><code>#tangled</code> on Libera Chat</a>.
Read an introduction to Tangled <a href="https://blog.tangled.sh/intro">here</a>.</p>
</div>
</div>
···
</div>
<div class="italic text-lg">
tightly-knit social coding, <a href="/login" class="underline inline-flex gap-1 items-center">join now {{ i "arrow-right" "w-4 h-4" }}</a>
+
<p class="pt-5 px-10 text-sm text-gray-500 dark:text-gray-400">Join our <a href="https://chat.tangled.sh">Discord</a>or IRC channel: <a href="https://web.libera.chat/#tangled"><code>#tangled</code> on Libera Chat</a>.
Read an introduction to Tangled <a href="https://blog.tangled.sh/intro">here</a>.</p>
</div>
</div>
+1 -1
appview/pages/templates/user/login.html
···
</button>
</form>
<p class="text-sm text-gray-500">
-
Join our IRC channel:
<a href="https://web.libera.chat/#tangled"
><code>#tangled</code> on Libera Chat</a
>.
···
</button>
</form>
<p class="text-sm text-gray-500">
+
Join our <a href="https://chat.tangled.sh">Discord</a> or IRC channel:
<a href="https://web.libera.chat/#tangled"
><code>#tangled</code> on Libera Chat</a
>.
+8
appview/state/middleware.go
···
"strings"
"time"
comatproto "github.com/bluesky-social/indigo/api/atproto"
"github.com/bluesky-social/indigo/atproto/identity"
"github.com/bluesky-social/indigo/xrpc"
···
}
func ResolveIdent(s *State) Middleware {
return func(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
didOrHandle := chi.URLParam(req, "user")
id, err := s.resolver.ResolveIdent(req.Context(), didOrHandle)
if err != nil {
···
"strings"
"time"
+
"slices"
+
comatproto "github.com/bluesky-social/indigo/api/atproto"
"github.com/bluesky-social/indigo/atproto/identity"
"github.com/bluesky-social/indigo/xrpc"
···
}
func ResolveIdent(s *State) Middleware {
+
excluded := []string{"favicon.ico"}
+
return func(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
didOrHandle := chi.URLParam(req, "user")
+
if slices.Contains(excluded, didOrHandle) {
+
next.ServeHTTP(w, req)
+
return
+
}
id, err := s.resolver.ResolveIdent(req.Context(), didOrHandle)
if err != nil {