| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- // Copyright 2021 The Gitea Authors. All rights reserved.
- // SPDX-License-Identifier: MIT
-
- package oauth2
-
- import (
- "html/template"
-
- "code.gitea.io/gitea/modules/log"
- "code.gitea.io/gitea/modules/svg"
- )
-
- // BaseProvider represents a common base for Provider
- type BaseProvider struct {
- name string
- displayName string
-
- // TODO: maybe some providers also support SSH public keys, then they can set this to true
- supportSSHPublicKey bool
- }
-
- func (b *BaseProvider) SupportSSHPublicKey() bool {
- return b.supportSSHPublicKey
- }
-
- // Name provides the technical name for this provider
- func (b *BaseProvider) Name() string {
- return b.name
- }
-
- // DisplayName returns the friendly name for this provider
- func (b *BaseProvider) DisplayName() string {
- return b.displayName
- }
-
- // IconHTML returns icon HTML for this provider
- func (b *BaseProvider) IconHTML(size int) template.HTML {
- svgName := "gitea-" + b.name
- switch b.name {
- case "gplus":
- svgName = "gitea-google"
- case "github":
- svgName = "octicon-mark-github"
- }
- svgHTML := svg.RenderHTML(svgName, size, "tw-mr-2")
- if svgHTML == "" {
- log.Error("No SVG icon for oauth2 provider %q", b.name)
- svgHTML = svg.RenderHTML("gitea-openid", size, "tw-mr-2")
- }
- return svgHTML
- }
-
- // CustomURLSettings returns the custom url settings for this provider
- func (b *BaseProvider) CustomURLSettings() *CustomURLSettings {
- return nil
- }
-
- var _ Provider = &BaseProvider{}
|