diff options
author | jan <jan@ruken.pw> | 2016-11-13 12:04:54 (UTC) |
---|---|---|
committer | jan <jan@ruken.pw> | 2016-11-13 12:04:54 (UTC) |
commit | 96b08bfa8906e3d9b0c8f98186c6b21906685be5 (patch) | |
tree | 97db4bd41b4c664c21845ad944991474e93cac24 /charakterin.go | |
parent | 397868371db217bbd2376a7166c2cfafea565b3f (diff) |
wir wollen nur eingebaute services erlauben
Diffstat (limited to 'charakterin.go')
-rw-r--r-- | charakterin.go | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/charakterin.go b/charakterin.go index 2878f1f..413d698 100644 --- a/charakterin.go +++ b/charakterin.go | |||
@@ -24,6 +24,11 @@ const ( | |||
24 | EmailAlreadyRegistered = "pq: email_already_registered" | 24 | EmailAlreadyRegistered = "pq: email_already_registered" |
25 | ) | 25 | ) |
26 | 26 | ||
27 | // external services | ||
28 | const ( | ||
29 | ANILIST = "Anilist" | ||
30 | ) | ||
31 | |||
27 | // Renderer wird verwendet, um die Routen (bspw. Login-Route) zu rendern. Damit bleibt Charakterin selbst ohne Template. | 32 | // Renderer wird verwendet, um die Routen (bspw. Login-Route) zu rendern. Damit bleibt Charakterin selbst ohne Template. |
28 | type Renderer interface { | 33 | type Renderer interface { |
29 | RenderLoginPage(w http.ResponseWriter, data map[string]interface{}) | 34 | RenderLoginPage(w http.ResponseWriter, data map[string]interface{}) |
@@ -401,9 +406,15 @@ func (c *Charakterin) DisplayAPICouplePage(w http.ResponseWriter, r *http.Reques | |||
401 | http.Error(w, "403", http.StatusForbidden) | 406 | http.Error(w, "403", http.StatusForbidden) |
402 | return | 407 | return |
403 | } | 408 | } |
409 | |||
410 | service := ps.ByName("type") | ||
411 | if service != ANILIST { | ||
412 | http.Error(w, "Ungueltiger Service", http.StatusNotFound) | ||
413 | return | ||
414 | } | ||
404 | data := make(map[string]interface{}) | 415 | data := make(map[string]interface{}) |
405 | data["user"] = user | 416 | data["user"] = user |
406 | data["name"] = ps.ByName("type") | 417 | data["name"] = service |
407 | c.renderer.RenderAPICouplePage(w, data) | 418 | c.renderer.RenderAPICouplePage(w, data) |
408 | } | 419 | } |
409 | 420 | ||
@@ -419,8 +430,11 @@ func (c *Charakterin) CoupleAPI(w http.ResponseWriter, r *http.Request, ps httpr | |||
419 | return | 430 | return |
420 | } | 431 | } |
421 | switch ps.ByName("type") { | 432 | switch ps.ByName("type") { |
422 | case "Anilist": | 433 | case ANILIST: |
423 | err = user.AnilistClient.CoupleByPin(body["code"][0]) | 434 | err = user.AnilistClient.CoupleByPin(body["code"][0]) |
435 | break | ||
436 | default: | ||
437 | err = errors.New("Ungueltiger Service") | ||
424 | } | 438 | } |
425 | if err != nil { | 439 | if err != nil { |
426 | data := make(map[string]interface{}) | 440 | data := make(map[string]interface{}) |