Compare commits
9 Commits
Author | SHA1 | Date |
---|---|---|
Elizabeth Hunt | 66fb5845ae | |
Mark Snyder | 3735959ff9 | |
Elizabeth Hunt | 1a65ee574e | |
rain | 84eb502bcd | |
Elizabeth Hunt | 86aaf49138 | |
Elizabeth Hunt | 3fbbcebecc | |
Elizabeth Hunt | 0e4c236b8a | |
Elizabeth Hunt | a7e376099d | |
Elizabeth Hunt | b1775c4408 |
|
@ -7,7 +7,7 @@ steps:
|
|||
- name: run tests
|
||||
image: golang
|
||||
commands:
|
||||
- go build
|
||||
- go mod download
|
||||
- go test -p 1 -v ./...
|
||||
|
||||
trigger:
|
||||
|
@ -23,7 +23,7 @@ steps:
|
|||
- name: run tests
|
||||
image: golang
|
||||
commands:
|
||||
- go build
|
||||
- go mod download
|
||||
- go test -p 1 -v ./...
|
||||
- name: docker
|
||||
image: plugins/docker
|
||||
|
@ -44,6 +44,8 @@ steps:
|
|||
port: 22
|
||||
command_timeout: 2m
|
||||
script:
|
||||
- cd /etc/docker/compose/hatecomputers-club
|
||||
- docker compose pull
|
||||
- systemctl restart docker-compose@hatecomputers-club
|
||||
|
||||
trigger:
|
||||
|
|
15
.env.example
15
.env.example
|
@ -1,8 +1,13 @@
|
|||
CLOUDFLARE_TOKEN=
|
||||
CLOUDFLARE_ZONE=
|
||||
CLOUDFLARE_TOKEN=dumb
|
||||
CLOUDFLARE_ZONE=dumb
|
||||
|
||||
OAUTH_CLIENT_ID
|
||||
OAUTH_CLIENT_SECRET
|
||||
# OAUTH_CLIENT_ID=hatecomputers-club
|
||||
# OAUTH_CLIENT_SECRET=
|
||||
OAUTH_SCOPES=profile,openid,email
|
||||
OAUTH_AUTH_URL=https://auth.hatecomputers.club/ui/oauth2
|
||||
OAUTH_TOKEN_URL=https://auth.hatecomputers.club/oauth2/token
|
||||
OAUTH_TOKEN_URL=https://auth.hatecomputers.club/oauth2/token
|
||||
|
||||
OAUTH_CLIENT_ID=hatecomputers-club-dev
|
||||
OAUTH_CLIENT_SECRET=asdf
|
||||
OAUTH_REDIRECT_URI=https://dev.arm.internal.simponic.xyz/auth
|
||||
OAUTH_USER_INFO_URI=https://auth.hatecomputers.club/oauth2/openid/hatecomputers-club-dev/userinfo
|
||||
|
|
|
@ -173,7 +173,7 @@ func MakeServer(argv *args.Arguments, dbConn *sql.DB) *http.Server {
|
|||
LogRequestContinuation(requestContext, r, w)(auth.VerifySessionContinuation, FailurePassingContinuation)(hcaptcha.CaptchaVerificationContinuation, hcaptcha.CaptchaVerificationContinuation)(guestbook.SignGuestbookContinuation, FailurePassingContinuation)(guestbook.ListGuestbookContinuation, guestbook.ListGuestbookContinuation)(hcaptcha.CaptchaArgsContinuation, hcaptcha.CaptchaArgsContinuation)(template.TemplateContinuation("guestbook.html", true), template.TemplateContinuation("guestbook.html", true))(LogExecutionTimeContinuation, LogExecutionTimeContinuation)(IdContinuation, IdContinuation)
|
||||
})
|
||||
|
||||
mux.HandleFunc("GET /kennel/", func(w http.ResponseWriter, r *http.Request) {
|
||||
mux.HandleFunc("GET /kennel", func(w http.ResponseWriter, r *http.Request) {
|
||||
requestContext := makeRequestContext()
|
||||
LogRequestContinuation(requestContext, r, w)(kennel.GetKennelContinuation, FailurePassingContinuation)(LogExecutionTimeContinuation, LogExecutionTimeContinuation)(IdContinuation, IdContinuation)
|
||||
})
|
||||
|
|
|
@ -1,48 +1,55 @@
|
|||
.club-members {
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
flex-wrap: wrap;
|
||||
justify-content: left;
|
||||
gap: 20px;
|
||||
padding: 20px;
|
||||
display: grid;
|
||||
gap: 1rem;
|
||||
grid-template-columns: repeat(auto-fill, minmax(24rem, 1fr));
|
||||
}
|
||||
|
||||
.club-member {
|
||||
flex: 1;
|
||||
background-color: var(--background-color-2);
|
||||
border: 1px solid var(--border-color);
|
||||
padding: 10px;
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
align-items: center;
|
||||
justify-content: space-around;
|
||||
gap: 10px;
|
||||
max-width: 500px;
|
||||
min-width: 300px;
|
||||
line-break: anywhere;
|
||||
}
|
||||
|
||||
.club-member-name {
|
||||
font-size: 1.5em;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.club-bio {
|
||||
white-space: pre-wrap;
|
||||
border-top: 1px solid var(--border-color);
|
||||
padding: .5rem;
|
||||
min-height: 3rem;
|
||||
}
|
||||
|
||||
.avatar {
|
||||
flex: 1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
float: left;
|
||||
width: 40%;
|
||||
margin: .5rem;
|
||||
margin-bottom: -.6rem;
|
||||
padding-bottom: .6rem;
|
||||
}
|
||||
|
||||
.avatar div {
|
||||
background-position: center center;
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
width: 120px;
|
||||
height: 120px;
|
||||
border-radius: 25%;
|
||||
.avatar > img {
|
||||
width: -moz-available;
|
||||
width: -webkit-fill-available; /* we live in a society */
|
||||
border-radius: 1rem;
|
||||
}
|
||||
|
||||
.about {
|
||||
flex: 3;
|
||||
background: var(--text-color);
|
||||
color: var(--background-color);
|
||||
font-weight: bold;
|
||||
padding: .5rem;
|
||||
}
|
||||
|
||||
.about a, .about a:visited {
|
||||
color: var(--background-color);
|
||||
text-decoration: underline dotted;
|
||||
}
|
||||
|
||||
.text-muted {
|
||||
opacity: .8;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.bolder {
|
||||
font-weight: bolder;
|
||||
}
|
|
@ -10,14 +10,18 @@
|
|||
src: url("/static/font/comicsans.ttf");
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
/* global style */
|
||||
html {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
color: var(--text-color);
|
||||
font-family: "ComicSans", sans-serif;
|
||||
}
|
||||
|
||||
* {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
/* i just cannot get this to look good on firefox... */
|
||||
@supports not (-moz-appearance: none) {
|
||||
* {
|
||||
|
|
|
@ -5,15 +5,15 @@
|
|||
{{ range $user := .Users }}
|
||||
<div class="club-member">
|
||||
<div class="avatar">
|
||||
<div style="background-image: url('{{ $user.Avatar }}')"></div>
|
||||
<img src="{{ $user.Avatar }}" alt="Profile picture for {{ $user.Username }}">
|
||||
</div>
|
||||
<div class="about">
|
||||
<div>name: {{ $user.Username }}</div>
|
||||
<div>pronouns: {{ $user.Pronouns }}</div>
|
||||
<div>location: {{ $user.Location }}</div>
|
||||
<div>www: <a href="{{ $user.Website }}">{{ $user.Website }}</a></div>
|
||||
<div class="club-bio">{{ $user.Bio }}</div>
|
||||
<div class="club-member-name">{{ $user.Username }}</div>
|
||||
<div><span class="text-muted">pronouns:</span> <span class="bolder">{{ $user.Pronouns }}</span></div>
|
||||
<div><span class="text-muted">location:</span> <span class="bolder">{{ $user.Location }}</span></div>
|
||||
<div><span class="text-muted">www:</span> <span class="bolder"><a href="{{ $user.Website }}">{{ $user.Website }}</a></span></div>
|
||||
</div>
|
||||
<div class="club-bio">{{ $user.Bio }}</div>
|
||||
</div>
|
||||
{{ end }}
|
||||
</div>
|
||||
|
|
Loading…
Reference in New Issue