From 6b3240dd9a5a853cd110347127864c7fd6c9ec73 Mon Sep 17 00:00:00 2001
From: localhost_frssoft
Date: Mon, 6 Nov 2023 13:11:16 +0300
Subject: [PATCH] remove unusable signup feature
---
mastodon/apps.go | 47 ---------------------------------
service/service.go | 60 -------------------------------------------
service/transport.go | 27 -------------------
templates/signin.tmpl | 35 -------------------------
4 files changed, 169 deletions(-)
diff --git a/mastodon/apps.go b/mastodon/apps.go
index 1ce894f..652be6e 100644
--- a/mastodon/apps.go
+++ b/mastodon/apps.go
@@ -92,50 +92,3 @@ func RegisterApp(ctx context.Context, appConfig *AppConfig) (*Application, error
return &app, nil
}
-
-type AppAuth struct {
- http.Client
-}
-
-// RegisterApp make auth application and return app token.
-func AuthApp(ctx context.Context, appConfig *Application, instance string) (*string, error) {
- var appAuth AppAuth
- params := url.Values{}
- params.Set("client_id", appConfig.ClientID)
- params.Set("client_secret", appConfig.ClientSecret)
- params.Set("redirect_uris", "urn:ietf:wg:oauth:2.0:oob")
- params.Set("grant_type", "client_credentials")
- params.Set("scope", "read write follow")
-
- u, err := url.Parse("https://" + instance)
- if err != nil {
- return nil, err
- }
- u.Path = path.Join(u.Path, "/oauth/token")
-
- req, err := http.NewRequest(http.MethodPost, u.String(), strings.NewReader(params.Encode()))
- if err != nil {
- return nil, err
- }
- req = req.WithContext(ctx)
- req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
- resp, err := appAuth.Do(req)
- if err != nil {
- return nil, err
- }
- defer resp.Body.Close()
-
- if resp.StatusCode != http.StatusOK {
- return nil, parseAPIError("bad request", resp)
- }
-
- var res struct {
- AccessToken string `json:"access_token"`
- }
- err = json.NewDecoder(resp.Body).Decode(&res)
- if err != nil {
- return nil, err
- }
-
- return &res.AccessToken, nil
-}
diff --git a/service/service.go b/service/service.go
index e8d0821..7ac5624 100644
--- a/service/service.go
+++ b/service/service.go
@@ -982,66 +982,6 @@ func (s *service) Signin(c *client, code string) (err error) {
return c.setSession(c.s)
}
-func (s *service) NewSessionRegister(c *client, instance string, reason string, username string, email string, password string, agreement bool, locale string, registerCredintals mastodon.RegisterCredintals) (rurl string, sess *model.Session, err error) {
- var instanceURL string
- if strings.HasPrefix(instance, "https://") {
- instanceURL = instance
- instance = strings.TrimPrefix(instance, "https://")
- } else {
- instanceURL = "https://" + instance
- }
-
- csrf, err := util.NewCSRFToken()
- if err != nil {
- return
- }
-
- app, err := mastodon.RegisterApp(c.ctx, &mastodon.AppConfig{
- Server: instanceURL,
- ClientName: s.cname,
- Scopes: s.cscope,
- Website: s.cwebsite,
- RedirectURIs: s.cwebsite + "/oauth_callback",
- })
- if err != nil {
- return
- }
- registerCredintals.App = app
- bearer, err := mastodon.AuthApp(c.ctx, app, instance)
- if err != nil {
- return
- }
- token, err := mastodon.RegisterAccount(c.ctx, instance, reason, username, email, password, agreement, locale, registerCredintals, *bearer)
-
- if err != nil {
- return
- }
- sess = &model.Session{
- Instance: instance,
- UserID: "1",
- ClientID: app.ClientID,
- ClientSecret: app.ClientSecret,
- AccessToken: *token,
- CSRFToken: csrf,
- Settings: *model.NewSettings(),
- }
-
- u, err := url.Parse("/oauth/authorize")
- if err != nil {
- return
- }
-
- q := make(url.Values)
- q.Set("scope", "read write follow")
- q.Set("client_id", app.ClientID)
- q.Set("response_type", "code")
- q.Set("redirect_uri", s.cwebsite+"/oauth_callback")
- u.RawQuery = q.Encode()
-
- rurl = instanceURL + u.String()
- return
-}
-
func (s *service) Signout(c *client) (err error) {
return c.RevokeToken(c.ctx)
}
diff --git a/service/transport.go b/service/transport.go
index 2984bd7..2b579e4 100644
--- a/service/transport.go
+++ b/service/transport.go
@@ -293,32 +293,6 @@ func NewHandler(s *service, verbose bool, staticDir string) http.Handler {
return nil
}, NOAUTH, HTML)
- signup := handle(func(c *client) error {
- instance := c.r.FormValue("instanceup")
- reason := c.r.FormValue("reason")
- username := c.r.FormValue("username")
- email := c.r.FormValue("email")
- password := c.r.FormValue("password")
- agreement := c.r.FormValue("agreement") == "true"
- locale := c.r.FormValue("locale")
- url, sess, err := s.NewSessionRegister(c, instance, reason, username, email, password, agreement, locale, mastodon.RegisterCredintals{
- Server: "https://"+instance,
- Reason: reason,
- Username: username,
- Email: email,
- Password: password,
- Agreement: agreement,
- Locale: locale,
- })
- if err != nil {
- return err
- }
- c.setSession(sess)
- url = "/confirmation"
- c.redirect(url)
- return nil
- }, NOAUTH, HTML)
-
oauthCallback := handle(func(c *client) error {
q := c.r.URL.Query()
token := q.Get("code")
@@ -856,7 +830,6 @@ func NewHandler(s *service, verbose bool, staticDir string) http.Handler {
r.HandleFunc("/profile/delavatar", profileDelAvatar).Methods(http.MethodPost)
r.HandleFunc("/profile/delbanner", profileDelBanner).Methods(http.MethodPost)
r.HandleFunc("/signin", signin).Methods(http.MethodPost)
- r.HandleFunc("/signup", signup).Methods(http.MethodPost)
r.HandleFunc("/oauth_callback", oauthCallback).Methods(http.MethodGet)
r.HandleFunc("/post", post).Methods(http.MethodPost)
r.HandleFunc("/like/{id}", like).Methods(http.MethodPost)
diff --git a/templates/signin.tmpl b/templates/signin.tmpl
index af46fe8..7726508 100644
--- a/templates/signin.tmpl
+++ b/templates/signin.tmpl
@@ -13,41 +13,6 @@
-
-Sign up
-
-
-
-
-
-
See
git.freesoftwareextremist.com/bloat