aboutsummaryrefslogtreecommitdiff
path: root/templates
diff options
context:
space:
mode:
Diffstat (limited to 'templates')
-rw-r--r--templates/garage_key.html22
-rw-r--r--templates/garage_website_inspect.html123
-rw-r--r--templates/garage_website_list.html38
-rw-r--r--templates/garage_website_new.html13
-rw-r--r--templates/home.html12
-rw-r--r--templates/profile.html2
6 files changed, 102 insertions, 108 deletions
diff --git a/templates/garage_key.html b/templates/garage_key.html
index b839fcb..cf56822 100644
--- a/templates/garage_key.html
+++ b/templates/garage_key.html
@@ -3,7 +3,7 @@
{{define "body"}}
<div class="d-flex">
<h4>Mes identifiants</h4>
- <a class="ml-auto btn btn-link" href="/garage/website">Mes sites webs</a>
+ <a class="ml-auto btn btn-link" href="/website">Mes sites webs</a>
<a class="ml-4 btn btn-info" href="/">Menu principal</a>
</div>
@@ -21,12 +21,12 @@
<table class="table mt-4">
<tbody>
<tr>
- <th scope="row">Identifiant de clé</th>
- <td>{{ .Key.AccessKeyId }}</td>
+ <th scope="row" class="col-md-2">Identifiant de clé</th>
+ <td>{{ .S3KeyInfo.AccessKeyId }}</td>
</tr>
<tr>
<th scope="row">Clé secrète</th>
- <td>{{ .Key.SecretAccessKey }}</td>
+ <td><a href="#" onclick="document.getElementById('secret_key').style.display='inline'; this.style.display='none'">Cliquer pour afficher la clé secrète</a><span id="secret_key" style="display: none">{{ .S3KeyInfo.SecretAccessKey }}</span></td>
</tr>
<tr>
<th scope="row">Région</th>
@@ -58,12 +58,12 @@
</button>
</h2>
</div>
- <div id="awscli" class="collapse show" aria-labelledby="awscli-title" data-parent="#softconfig">
+ <div id="awscli" class="collapse" aria-labelledby="awscli-title" data-parent="#softconfig">
<div class="card-body">
<p>Créez un fichier nommé <code>~/.awsrc</code> :</p>
<pre>
-export AWS_ACCESS_KEY_ID={{ .Key.AccessKeyId }}
-export AWS_SECRET_ACCESS_KEY={{ .Key.SecretAccessKey }}
+export AWS_ACCESS_KEY_ID={{ .S3KeyInfo.AccessKeyId }}
+export AWS_SECRET_ACCESS_KEY={{ .S3KeyInfo.SecretAccessKey }}
export AWS_DEFAULT_REGION='garage'
function aws { command aws --endpoint-url https://garage.deuxfleurs.fr $@ ; }
@@ -97,8 +97,8 @@ aws s3 cp /tmp/a.txt s3://my-bucket
mc alias set \
garage \
https://garage.deuxfleurs.fr \
- {{ .Key.AccessKeyId }} \
- {{ .Key.SecretAccessKey }} \
+ {{ .S3KeyInfo.AccessKeyId }} \
+ {{ .S3KeyInfo.SecretAccessKey }} \
--api S3v4
</pre>
<p>Et ensuite pour utiliser Minio CLI avec :</p>
@@ -176,7 +176,7 @@ hugo deploy
<tbody>
<tr>
<th scope="row">Nom d'utilisateur-ice</th>
- <td>{{ .Status.Info.Username }}</td>
+ <td>{{ .Login.Info.Username }}</td>
</tr>
<tr>
<th scope="row">Mot de passe</th>
@@ -207,7 +207,7 @@ hugo deploy
<div class="card-body">
<p>Un exemple avec SCP :</p>
<pre>
-scp -oHostKeyAlgorithms=+ssh-rsa -P2222 -r ./public {{ .Status.Info.Username }}@bagage.deuxfleurs.fr:mon_bucket/
+scp -oHostKeyAlgorithms=+ssh-rsa -P2222 -r ./public {{ .Login.Info.Username }}@bagage.deuxfleurs.fr:mon_bucket/
</pre>
</div>
</div>
diff --git a/templates/garage_website_inspect.html b/templates/garage_website_inspect.html
index bc60711..37142df 100644
--- a/templates/garage_website_inspect.html
+++ b/templates/garage_website_inspect.html
@@ -2,57 +2,80 @@
{{define "body"}}
<div class="d-flex">
- <h4>Inspecter le site web</h4>
- <a class="ml-auto btn btn-link" href="/garage/key">Mes identifiants</a>
- <a class="ml-4 btn btn-success" href="/garage/website/new">Nouveau site web</a>
- <a class="ml-4 btn btn-info" href="/garage/website">Mes sites webs</a>
+ <!--<h4>Inspecter les sites webs</h4>-->
+ <a class="ml-auto btn btn-link" href="/website/configure">Mes identifiants</a>
+ <a class="ml-4 btn btn-info" href="/">Menu principal</a>
</div>
-<table class="table mt-4">
- <tbody>
- <tr>
- <th scope="row">ID</th>
- <td>{{ .Bucket.Id }}</td>
- </tr>
- <tr>
- <th scope="row">URLs</th>
- <td>
- {{ range $alias := .Bucket.GlobalAliases }}
- {{ if contains $alias "." }}
- https://{{ $alias }}
- {{ else }}
- https://{{ $alias }}.web.deuxfleurs.fr
- {{ end }}
- {{ end }}
- </td>
- </tr>
- <tr>
- <th scope="row">Document d'index</th>
- <td> {{ .IndexDoc }}</td>
- </tr>
- <tr>
- <th scope="row">Document d'erreur</th>
- <td>{{ .ErrorDoc }}</td>
- </tr>
- <tr>
- <th scope="row">Nombre de fichiers</th>
- <td>{{ .Bucket.Objects }} / {{ .MaxObjects }}</td>
- </tr>
- <tr>
- <th scope="row">Espace utilisé</th>
- <td>{{ .Bucket.Bytes }} / {{ .MaxSize }} octets</td>
- </tr>
- </tbody>
-</table>
-
-<h4>Configurer le nom de domaine</h4>
-
-{{ range $alias := .Bucket.GlobalAliases }}
-{{ if contains $alias "." }}
-<p> Le nom de domaine {{ $alias }} n'est pas géré par Deuxfleurs, il vous revient donc de configurer la zone DNS. Vous devez ajouter une entrée <code>CNAME garage.deuxfleurs.fr</code> ou <code>ALIAS garage.deuxfleurs.fr</code> auprès de votre hébergeur DNS, qui est souvent aussi le bureau d'enregistrement (eg. Gandi, GoDaddy, BookMyName, etc.).</p>
-{{ else }}
-<p> Le nom de domaine https://{{ $alias }}.web.deuxfleurs.fr est fourni par Deuxfleurs, il n'y a pas de configuration à faire.</p>
-{{ end }}
+<div class="row">
+ {{ if .Err }}
+ <div class="col-md-12 mt-3">
+ <div class="alert alert-danger">{{ .Err.Error }}</div>
+ </div>
+ {{ end }}
+
+ <div class="col-md-3 mt-3">
+ <a class="btn btn-primary btn-block" href="/website/new">
+ <svg id="i-plus" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" width="18" height="18" fill="none" stroke="currentcolor" stroke-linecap="round" stroke-linejoin="round" stroke-width="6">
+ <path d="M16 2 L16 30 M2 16 L30 16" />
+ </svg>
+ <span class="ml-1">Nouveau site web</span>
+ </a>
+
+ <div class="list-group mt-3">
+ {{ $view := .View }}
+ {{ range $wid := .Describe.Websites }}
+ {{ if eq $wid.Internal $view.Name.Internal }}
+ <a href="/website/inspect/{{ $wid.Pretty }}" class="list-group-item list-group-item-action active">
+ {{ $wid.Url }}
+ </a>
+ {{ else }}
+ <a href="/website/inspect/{{ $wid.Pretty }}" class="list-group-item list-group-item-action">
+ {{ $wid.Url }}
+ </a>
+ {{ end }}
+ {{ end }}
+ </div>
+
+ <p class="text-center mt-2">
+ {{ .Describe.AllowedWebsites.Current }} sites créés sur {{ .Describe.AllowedWebsites.Max }}<br/>
+ Jusqu'à {{ .Describe.BurstBucketQuotaSize }} par site web
+ </p>
+ </div>
+ <div class="col-md-9">
+ <h2>{{ .View.Name.Url }}</h2>
+
+ <h5 class="mt-3">Quotas</h5>
+ <div class="progress mt-3">
+ <div class="progress-bar" role="progressbar" aria-valuenow="{{ .View.Size.Current }}" aria-valuemin="0" aria-valuemax="{{ .View.Size.Max }}" style="width: {{ .View.Size.Percent }}%; min-width: 2em;">
+ {{ .View.Size.Ratio }}%
+ </div>
+ </div>
+
+ <p class="text-center">
+ {{ .View.Size.PrettyCurrent }} utilisé sur un maximum de {{ .View.Size.PrettyMax }}
+ {{ if gt .View.Files.Ratio 0.5 }}
+ <br>{{ .View.Files.Current }} fichiers sur un maximum de {{ .View.Files.Max }}
+ {{ end }}
+ </p>
+
+ <h5 class="mt-3">Actions</h5>
+ <form action="" method="post">
+ <div class="btn-group" role="group" aria-label="Actions sur le site web">
+ <button class="btn btn-secondary" name="action" value="increase_quota">Augmenter le quota</button>
+ <a class="btn btn-secondary disabled">Changer le nom de domaine</a>
+ <button class="btn btn-danger" name="action" value="delete_bucket">Supprimer</button>
+ </div>
+ </form>
+
+
+ {{ if .View.Name.Expanded }}
+ <h5 class="mt-5">Vous ne savez pas comment configurer votre nom de domaine ?</h5>
+ <p> Le nom de domaine {{ .View.Name.Url }} n'est pas géré par Deuxfleurs, il vous revient donc de configurer la zone DNS. Vous devez ajouter une entrée <code>CNAME garage.deuxfleurs.fr</code> ou <code>ALIAS garage.deuxfleurs.fr</code> auprès de votre hébergeur DNS, qui est souvent aussi le bureau d'enregistrement (eg. Gandi, GoDaddy, BookMyName, etc.).</p>
+ {{ end }}
+
+
+ </div>
+</div>
{{ end }}
-{{end}}
diff --git a/templates/garage_website_list.html b/templates/garage_website_list.html
deleted file mode 100644
index ded8096..0000000
--- a/templates/garage_website_list.html
+++ /dev/null
@@ -1,38 +0,0 @@
-{{define "title"}}Sites webs |{{end}}
-
-{{define "body"}}
-
-<div class="d-flex">
- <h4>Sites webs</h4>
- <a class="ml-auto btn btn-link" href="/garage/key">Mes identifiants</a>
- <a class="ml-4 btn btn-success" href="/garage/website/new">Nouveau site web</a>
- <a class="ml-4 btn btn-info" href="/">Menu principal</a>
-</div>
-
-<table class="table mt-4">
- <thead>
- <th scope="col">ID</th>
- <th scope="col">URLs</th>
- </thead>
- <tbody>
- {{ range $buck := .Key.Buckets }}
- {{ if $buck.GlobalAliases }}
- <tr>
- <td>
- <a href="/garage/website/b/{{$buck.Id}}">{{$buck.Id}}</a>
- </td>
- <td>
- {{ range $alias := $buck.GlobalAliases }}
- {{ if contains $alias "." }}
- https://{{ $alias }}
- {{ else }}
- https://{{ $alias }}.web.deuxfleurs.fr
- {{ end }}
- {{ end }}
- </td>
- </tr>
- {{ end }}
- {{ end }}
- </tbody>
-</table>
-{{end}}
diff --git a/templates/garage_website_new.html b/templates/garage_website_new.html
index f1cd847..7ee4936 100644
--- a/templates/garage_website_new.html
+++ b/templates/garage_website_new.html
@@ -3,8 +3,16 @@
{{define "body"}}
<div class="d-flex">
<h4>Créer un site web</h4>
- <a class="ml-auto btn btn-link" href="/garage/key">Mes identifiants</a>
- <a class="ml-4 btn btn-info" href="/garage/website">Mes sites webs</a>
+ <a class="ml-auto btn btn-link" href="/website/configure">Mes identifiants</a>
+ <a class="ml-4 btn btn-info" href="/website">Mes sites webs</a>
+</div>
+
+<div class="row mt-3">
+ <div class="col-md-12">
+ {{if .Err}}
+ <div class="alert alert-danger">{{ .Err.Error }}</div>
+ {{end}}
+ </div>
</div>
<ul class="nav nav-tabs" id="proto" role="tablist">
@@ -17,6 +25,7 @@
</ul>
<div class="tab-content" id="protocols">
+
<div class="tab-pane fade show active" id="dnsint" role="tabpanel" aria-labelledby="dnsint-tab">
<form method="POST" class="mt-4">
<div class="form-row">
diff --git a/templates/home.html b/templates/home.html
index 241a59d..dd88d13 100644
--- a/templates/home.html
+++ b/templates/home.html
@@ -2,7 +2,7 @@
{{define "body"}}
<div class="alert alert-info">
- Bienvenue, <strong>{{ .Login.WelcomeName }}</strong> !
+ Bienvenue, <strong>{{ .User.WelcomeName }}</strong> !
</div>
<div class="d-flex">
<a class="ml-auto btn btn-sm btn-dark" href="/logout">Se déconnecter</a>
@@ -24,16 +24,16 @@
<div class="mt-3">
<div class="card">
<div class="card-header">
- Garage
+ Mon espace sur la toile
</div>
<div class="list-group list-group-flush">
- <a class="list-group-item list-group-item-action" href="/garage/key">Mes identifiants</a>
- <a class="list-group-item list-group-item-action" href="/garage/website">Mes sites webs</a>
+ <a class="list-group-item list-group-item-action" href="/website/configure">Mes identifiants</a>
+ <a class="list-group-item list-group-item-action" href="/website">Mes sites Web</a>
</div>
</div>
</div>
-{{if .Login.CanInvite}}
+{{if .User.Capabilities.CanInvite}}
<div class="card mt-3">
<div class="card-header">
Inviter des gens sur Deuxfleurs
@@ -45,7 +45,7 @@
</div>
{{end}}
-{{if .Login.CanAdmin}}
+{{if .User.Capabilities.CanAdmin}}
<div class="card mt-3">
<div class="card-header">
Administration
diff --git a/templates/profile.html b/templates/profile.html
index 56461eb..17965a6 100644
--- a/templates/profile.html
+++ b/templates/profile.html
@@ -20,7 +20,7 @@
<div class="form-row">
<div class="form-group col-md-6">
<label>Identifiant:</label>
- <input type="text" disabled="true" class="form-control" value="{{ .Status.Info.Username }}" />
+ <input type="text" disabled="true" class="form-control" value="{{ .User.Login.Info.Username }}" />
</div>
<div class="form-group col-md-6">
<label for="mail">Adresse e-mail:</label>