Finish routes translations

This commit is contained in:
Restray
2022-04-03 14:14:59 +02:00
parent 360fb5ea37
commit fe787538e3
17 changed files with 195 additions and 111 deletions

View File

@@ -3,6 +3,7 @@
import { page, session } from '$app/stores';
import { post } from '$lib/api';
import { errorNotification } from '$lib/form';
import { t } from '$lib/translations';
const { id } = $page.params;
let loading = false;
@@ -60,20 +61,20 @@
</script>
{#if !source.githubAppId}
<button on:click={newGithubApp}>Create new GitHub App</button>
<button on:click={newGithubApp}>{$t('source.create_new_app', { name: 'GitHub' })}</button>
{:else if source.githubApp?.installationId}
<form on:submit|preventDefault={handleSubmit} class="py-4">
<div class="flex space-x-1 pb-5 font-bold">
<div class="title">General</div>
<div class="title">{$t('general')}</div>
{#if $session.isAdmin}
<button
type="submit"
class:bg-orange-600={!loading}
class:hover:bg-orange-500={!loading}
disabled={loading}>{loading ? 'Saving...' : 'Save'}</button
disabled={loading}>{loading ? $t('forms.saving') : $t('forms.save')}</button
>
<button on:click|preventDefault={() => installRepositories(source)}
>Change GitHub App Settings</button
>{$t('source.change_app_settings', { name: 'GitHub' })}</button
>
{/if}
</div>
@@ -85,5 +86,5 @@
</div>
</form>
{:else}
<button on:click={() => installRepositories(source)}>Install Repositories</button>
<button on:click={() => installRepositories(source)}>{$t('source.install_repositories')}</button>
{/if}

View File

@@ -6,6 +6,7 @@
import { onMount } from 'svelte';
import { post } from '$lib/api';
import { browser } from '$app/env';
import { t } from '$lib/translations';
const { id } = $page.params;
let loading = false;
@@ -93,25 +94,25 @@
{#if !source.gitlabApp?.appId}
<form class="grid grid-flow-row gap-2 py-4" on:submit|preventDefault={newApp}>
<div class="grid grid-cols-2 items-center">
<label for="type">GitLab Application Type</label>
<label for="type">{$t('source.gitlab.gitlab_application_type')}</label>
<select name="type" id="type" class="w-96" bind:value={payload.applicationType}>
<option value="user">User owned application</option>
<option value="group">Group owned application</option>
<option value="user">{$t('source.gitlab.user_owned')}</option>
<option value="group">{$t('source.gitlab.group_owned')}</option>
{#if source.htmlUrl !== 'https://gitlab.com'}
<option value="instance">Instance-wide application (self-hosted)</option>
<option value="instance">{$t('source.gitlab.self_hosted')}</option>
{/if}
</select>
</div>
{#if payload.applicationType === 'group'}
<div class="grid grid-cols-2 items-center">
<label for="groupName">Group Name</label>
<label for="groupName">{$t('source.group_name')}</label>
<input name="groupName" id="groupName" required bind:value={payload.groupName} />
</div>
{/if}
<div class="w-full pt-10 text-center">
<button class="w-96 bg-orange-600 hover:bg-orange-500" type="submit"
>Register new OAuth application on GitLab</button
>{$t('source.register_oauth_gitlab')}</button
>
</div>
@@ -131,21 +132,19 @@
</form>
<form on:submit|preventDefault={handleSubmit} class="grid grid-flow-row gap-2 py-4 pt-10">
<div class="flex h-8 items-center space-x-2">
<div class="text-xl font-bold text-white">Configuration</div>
<div class="text-xl font-bold text-white">{$t('forms.configuration')}</div>
<button
type="submit"
class:bg-orange-600={!loading}
class:hover:bg-orange-500={!loading}
disabled={loading}>{loading ? 'Saving...' : 'Save'}</button
disabled={loading}>{loading ? $t('forms.saving') : $t('forms.save')}</button
>
</div>
<div class="grid grid-cols-2 items-start">
<div class="flex-col">
<label for="oauthId" class="pt-2">OAuth ID</label>
<Explainer
text="The OAuth ID is the unique identifier of the GitLab application. <br>You can find it <span class='font-bold text-orange-600' >in the URL</span> of your GitLab OAuth Application."
/>
<label for="oauthId" class="pt-2">{$t('source.oauth_id')}</label>
<Explainer text={$t('source.oauth_id_explainer')} />
</div>
<input
on:change={checkOauthId}
@@ -159,16 +158,16 @@
</div>
{#if payload.applicationType === 'group'}
<div class="grid grid-cols-2 items-center">
<label for="groupName">Group Name</label>
<label for="groupName">{$t('source.group_name')}</label>
<input name="groupName" id="groupName" required bind:value={payload.groupName} />
</div>
{/if}
<div class="grid grid-cols-2 items-center">
<label for="appId">Application ID</label>
<label for="appId">{$t('source.application_id')}</label>
<input name="appId" id="appId" required bind:value={payload.appId} />
</div>
<div class="grid grid-cols-2 items-center">
<label for="appSecret">Secret</label>
<label for="appSecret">{$t('index.secret')}</label>
<input
name="appSecret"
id="appSecret"
@@ -188,9 +187,11 @@
type="submit"
class:bg-orange-600={!loading}
class:hover:bg-orange-500={!loading}
disabled={loading}>{loading ? 'Saving...' : 'Save'}</button
disabled={loading}>{loading ? $t('forms.saving') : $t('forms.save')}</button
>
<button on:click|preventDefault={changeSettings}
>{$t('source.change_app_settings', { name: 'GitLab' })}</button
>
<button on:click|preventDefault={changeSettings}>Change GitLab App Settings</button>
{/if}
</div>
<div class="grid grid-flow-row gap-2 px-10">

View File

@@ -34,10 +34,11 @@
import { page, session } from '$app/stores';
import { errorNotification } from '$lib/form';
import DeleteIcon from '$lib/components/DeleteIcon.svelte';
import { t } from '$lib/translations';
const { id } = $page.params;
async function deleteSource(name) {
const sure = confirm(`Are you sure you would like to delete '${name}'?`);
const sure = confirm($t('application.confirm_to_delete', { name: name }));
if (sure) {
const response = await fetch(`/sources/${id}.json`, {
method: 'delete'
@@ -55,14 +56,14 @@
<nav class="nav-side">
<button
on:click={() => deleteSource(source.name)}
title="Delete Git Source"
title={$t('source.delete_git_source')}
type="submit"
disabled={!$session.isAdmin}
class:hover:text-red-500={$session.isAdmin}
class="icons tooltip-bottom bg-transparent text-sm"
data-tooltip={$session.isAdmin
? 'Delete Git Source'
: 'You do not have permission to delete a Git Source'}><DeleteIcon /></button
? $t('source.delete_git_source')
: $t('source.permission_denied')}><DeleteIcon /></button
>
</nav>
<slot />

View File

@@ -1,6 +1,7 @@
import { getUserDetails } from '$lib/common';
import * as db from '$lib/database';
import { ErrorHandler } from '$lib/database';
import { t } from '$lib/translations';
import type { RequestHandler } from '@sveltejs/kit';
export const post: RequestHandler = async (event) => {
@@ -11,7 +12,7 @@ export const post: RequestHandler = async (event) => {
const found = await db.prisma.gitlabApp.findFirst({ where: { oauthId: Number(oauthId) } });
if (found) {
throw {
message: `GitLab App is already configured.`
message: t.get('source.gitlab.already_configured')
};
}
return { status: 200 };

View File

@@ -32,10 +32,11 @@
import type Prisma from '@prisma/client';
import Github from './_Github.svelte';
import Gitlab from './_Gitlab.svelte';
import { t } from '$lib/translations';
</script>
<div class="flex space-x-1 p-6 px-6 text-2xl font-bold">
<div class="tracking-tight">Git Source</div>
<div class="tracking-tight">{$t('application.git_source')}</div>
<span class="arrow-right-applications px-1 text-orange-500">></span>
<span class="pr-2">{source.name}</span>
</div>

View File

@@ -31,6 +31,7 @@
<script>
import { dev } from '$app/env';
import { getDomain, dashify } from '$lib/components/common';
import { t } from '$lib/translations';
export let source;
export let settings;
@@ -84,5 +85,5 @@
</script>
<div class="flex h-screen items-center justify-center text-3xl font-bold">
Redirecting to Github...
{$t('source.github.redirecting')}
</div>

View File

@@ -22,10 +22,11 @@
<script lang="ts">
export let sources;
import { session } from '$app/stores';
import { t } from '$lib/translations';
</script>
<div class="flex space-x-1 p-6 font-bold">
<div class="mr-4 text-2xl tracking-tight">Git Sources</div>
<div class="mr-4 text-2xl tracking-tight">{$t('index.git_sources')}</div>
{#if $session.isAdmin}
<a href="/new/source" sveltekit:prefetch class="add-icon bg-orange-600 hover:bg-orange-500">
<svg
@@ -47,7 +48,7 @@
<div class="flex justify-center">
{#if !sources || sources.length === 0}
<div class="flex-col">
<div class="text-center text-xl font-bold">No git sources found</div>
<div class="text-center text-xl font-bold">{$t('source.no_git_sources_found')}</div>
</div>
{:else}
<div class="flex flex-wrap justify-center">
@@ -62,7 +63,7 @@
<div class="font-bold text-xl text-center truncate">{source.name}</div>
{#if (source.type === 'gitlab' && !source.gitlabAppId) || (source.type === 'github' && !source.githubAppId && !source.githubApp?.installationId)}
<div class="font-bold text-center truncate text-red-500 group-hover:text-white">
Configuration missing
{$t('application.configuration.configuration_missing')}
</div>
{:else}
<div class="truncate text-center">{source.htmlUrl}</div>