mirror of
https://git.joinsharkey.org/Sharkey/Sharkey.git
synced 2024-12-24 05:03:08 +02:00
wip
This commit is contained in:
parent
9bc3fcf74f
commit
c9de5b65d4
4 changed files with 24 additions and 72 deletions
|
@ -34,7 +34,7 @@
|
||||||
<p slot="text" v-if="passwordRetypeState == 'not-match'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@password-not-matched%</p>
|
<p slot="text" v-if="passwordRetypeState == 'not-match'" style="color:#FF1161">%fa:exclamation-triangle .fw% %i18n:@password-not-matched%</p>
|
||||||
</div>
|
</div>
|
||||||
</ui-input>
|
</ui-input>
|
||||||
<div v-if="recaptchaSitekey != null" class="g-recaptcha" :data-sitekey="recaptchaSitekey" style="margin: 16px 0;"></div>
|
<div v-if="meta && meta.recaptchaSitekey != null" class="g-recaptcha" :data-sitekey="meta.recaptchaSitekey" style="margin: 16px 0;"></div>
|
||||||
<ui-button type="submit">%i18n:@create%</ui-button>
|
<ui-button type="submit">%i18n:@create%</ui-button>
|
||||||
</form>
|
</form>
|
||||||
</template>
|
</template>
|
||||||
|
@ -42,7 +42,7 @@
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
const getPasswordStrength = require('syuilo-password-strength');
|
const getPasswordStrength = require('syuilo-password-strength');
|
||||||
import { host, url, recaptchaSitekey } from '../../../config';
|
import { host, url } from '../../../config';
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
data() {
|
data() {
|
||||||
|
@ -53,7 +53,6 @@ export default Vue.extend({
|
||||||
retypedPassword: '',
|
retypedPassword: '',
|
||||||
invitationCode: '',
|
invitationCode: '',
|
||||||
url,
|
url,
|
||||||
recaptchaSitekey,
|
|
||||||
usernameState: null,
|
usernameState: null,
|
||||||
passwordStrength: '',
|
passwordStrength: '',
|
||||||
passwordRetypeState: null,
|
passwordRetypeState: null,
|
||||||
|
@ -73,6 +72,12 @@ export default Vue.extend({
|
||||||
this.meta = meta;
|
this.meta = meta;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
mounted() {
|
||||||
|
const head = document.getElementsByTagName('head')[0];
|
||||||
|
const script = document.createElement('script');
|
||||||
|
script.setAttribute('src', 'https://www.google.com/recaptcha/api.js');
|
||||||
|
head.appendChild(script);
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
onChangeUsername() {
|
onChangeUsername() {
|
||||||
if (this.username == '') {
|
if (this.username == '') {
|
||||||
|
@ -123,7 +128,7 @@ export default Vue.extend({
|
||||||
username: this.username,
|
username: this.username,
|
||||||
password: this.password,
|
password: this.password,
|
||||||
invitationCode: this.invitationCode,
|
invitationCode: this.invitationCode,
|
||||||
'g-recaptcha-response': recaptchaSitekey != null ? (window as any).grecaptcha.getResponse() : null
|
'g-recaptcha-response': this.meta.recaptchaSitekey != null ? (window as any).grecaptcha.getResponse() : null
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
(this as any).api('signin', {
|
(this as any).api('signin', {
|
||||||
username: this.username,
|
username: this.username,
|
||||||
|
@ -134,19 +139,11 @@ export default Vue.extend({
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
alert('%i18n:@some-error%');
|
alert('%i18n:@some-error%');
|
||||||
|
|
||||||
if (recaptchaSitekey != null) {
|
if (this.meta.recaptchaSitekey != null) {
|
||||||
(window as any).grecaptcha.reset();
|
(window as any).grecaptcha.reset();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
if (recaptchaSitekey != null) {
|
|
||||||
const head = document.getElementsByTagName('head')[0];
|
|
||||||
const script = document.createElement('script');
|
|
||||||
script.setAttribute('src', 'https://www.google.com/recaptcha/api.js');
|
|
||||||
head.appendChild(script);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -1,51 +1,22 @@
|
||||||
declare const _HOST_: string;
|
|
||||||
declare const _HOSTNAME_: string;
|
|
||||||
declare const _URL_: string;
|
|
||||||
declare const _NAME_: string;
|
|
||||||
declare const _DESCRIPTION_: string;
|
|
||||||
declare const _API_URL_: string;
|
|
||||||
declare const _WS_URL_: string;
|
|
||||||
declare const _DOCS_URL_: string;
|
|
||||||
declare const _STATS_URL_: string;
|
|
||||||
declare const _STATUS_URL_: string;
|
|
||||||
declare const _DEV_URL_: string;
|
|
||||||
declare const _REPOSITORY_URL_: string;
|
|
||||||
declare const _FEEDBACK_URL_: string;
|
|
||||||
declare const _LANG_: string;
|
declare const _LANG_: string;
|
||||||
declare const _LANGS_: string;
|
declare const _LANGS_: string;
|
||||||
declare const _RECAPTCHA_SITEKEY_: string;
|
|
||||||
declare const _SW_PUBLICKEY_: string;
|
|
||||||
declare const _THEME_COLOR_: string;
|
declare const _THEME_COLOR_: string;
|
||||||
declare const _COPYRIGHT_: string;
|
declare const _COPYRIGHT_: string;
|
||||||
declare const _VERSION_: string;
|
declare const _VERSION_: string;
|
||||||
declare const _CODENAME_: string;
|
declare const _CODENAME_: string;
|
||||||
declare const _LICENSE_: string;
|
declare const _LICENSE_: string;
|
||||||
declare const _GOOGLE_MAPS_API_KEY_: string;
|
|
||||||
declare const _WELCOME_BG_URL_: string;
|
|
||||||
declare const _TWITTER_INTEGRATION_: boolean;
|
|
||||||
|
|
||||||
export const host = _HOST_;
|
const address = new URL(location.href);
|
||||||
export const hostname = _HOSTNAME_;
|
|
||||||
export const url = _URL_;
|
export const host = address.host;
|
||||||
export const name = _NAME_;
|
export const hostname = address.hostname;
|
||||||
export const description = _DESCRIPTION_;
|
export const url = address.origin;
|
||||||
export const apiUrl = _API_URL_;
|
export const apiUrl = url + '/api';
|
||||||
export const wsUrl = _WS_URL_;
|
export const wsUrl = url.replace('http://', 'ws://').replace('https://', 'wss://');
|
||||||
export const docsUrl = _DOCS_URL_;
|
|
||||||
export const statsUrl = _STATS_URL_;
|
|
||||||
export const statusUrl = _STATUS_URL_;
|
|
||||||
export const devUrl = _DEV_URL_;
|
|
||||||
export const repositoryUrl = _REPOSITORY_URL_;
|
|
||||||
export const feedbackUrl = _FEEDBACK_URL_;
|
|
||||||
export const lang = _LANG_;
|
export const lang = _LANG_;
|
||||||
export const langs = _LANGS_;
|
export const langs = _LANGS_;
|
||||||
export const recaptchaSitekey = _RECAPTCHA_SITEKEY_;
|
|
||||||
export const swPublickey = _SW_PUBLICKEY_;
|
|
||||||
export const themeColor = _THEME_COLOR_;
|
export const themeColor = _THEME_COLOR_;
|
||||||
export const copyright = _COPYRIGHT_;
|
export const copyright = _COPYRIGHT_;
|
||||||
export const version = _VERSION_;
|
export const version = _VERSION_;
|
||||||
export const codename = _CODENAME_;
|
export const codename = _CODENAME_;
|
||||||
export const license = _LICENSE_;
|
export const license = _LICENSE_;
|
||||||
export const googleMapsApiKey = _GOOGLE_MAPS_API_KEY_;
|
|
||||||
export const welcomeBgUrl = _WELCOME_BG_URL_;
|
|
||||||
export const twitterIntegration = _TWITTER_INTEGRATION_;
|
|
||||||
|
|
|
@ -20,6 +20,9 @@ export default () => new Promise(async (res, rej) => {
|
||||||
version: pkg.version,
|
version: pkg.version,
|
||||||
clientVersion: client.version,
|
clientVersion: client.version,
|
||||||
|
|
||||||
|
name: config.name || 'Misskey',
|
||||||
|
description: config.description,
|
||||||
|
|
||||||
secure: config.https != null,
|
secure: config.https != null,
|
||||||
machine: os.hostname(),
|
machine: os.hostname(),
|
||||||
os: os.platform(),
|
os: os.platform(),
|
||||||
|
@ -29,6 +32,8 @@ export default () => new Promise(async (res, rej) => {
|
||||||
cores: os.cpus().length
|
cores: os.cpus().length
|
||||||
},
|
},
|
||||||
broadcasts: meta.broadcasts,
|
broadcasts: meta.broadcasts,
|
||||||
disableRegistration: meta.disableRegistration
|
disableRegistration: meta.disableRegistration,
|
||||||
|
recaptchaSitekey: config.recaptcha.site_key,
|
||||||
|
swPublickey: config.sw.public_key
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
|
@ -16,7 +16,6 @@ import I18nReplacer from './src/misc/i18n';
|
||||||
import { pattern as i18nPattern, replacement as i18nReplacement } from './webpack/i18n';
|
import { pattern as i18nPattern, replacement as i18nReplacement } from './webpack/i18n';
|
||||||
import { pattern as faPattern, replacement as faReplacement } from './src/misc/fa';
|
import { pattern as faPattern, replacement as faReplacement } from './src/misc/fa';
|
||||||
const constants = require('./src/const.json');
|
const constants = require('./src/const.json');
|
||||||
import config from './src/config';
|
|
||||||
import { licenseHtml } from './src/misc/license';
|
import { licenseHtml } from './src/misc/license';
|
||||||
|
|
||||||
const locales = require('./locales');
|
const locales = require('./locales');
|
||||||
|
@ -58,8 +57,6 @@ const isProduction = process.env.NODE_ENV == 'production';
|
||||||
const entry = {
|
const entry = {
|
||||||
desktop: './src/client/app/desktop/script.ts',
|
desktop: './src/client/app/desktop/script.ts',
|
||||||
mobile: './src/client/app/mobile/script.ts',
|
mobile: './src/client/app/mobile/script.ts',
|
||||||
//stats: './src/client/app/stats/script.ts',
|
|
||||||
//status: './src/client/app/status/script.ts',
|
|
||||||
dev: './src/client/app/dev/script.ts',
|
dev: './src/client/app/dev/script.ts',
|
||||||
auth: './src/client/app/auth/script.ts',
|
auth: './src/client/app/auth/script.ts',
|
||||||
sw: './src/client/app/sw.js'
|
sw: './src/client/app/sw.js'
|
||||||
|
@ -72,31 +69,13 @@ const output = {
|
||||||
|
|
||||||
//#region Define consts
|
//#region Define consts
|
||||||
const consts = {
|
const consts = {
|
||||||
_RECAPTCHA_SITEKEY_: config.recaptcha ? config.recaptcha.site_key : null,
|
|
||||||
_SW_PUBLICKEY_: config.sw ? config.sw.public_key : null,
|
|
||||||
_THEME_COLOR_: constants.themeColor,
|
_THEME_COLOR_: constants.themeColor,
|
||||||
_COPYRIGHT_: constants.copyright,
|
_COPYRIGHT_: constants.copyright,
|
||||||
_VERSION_: version,
|
_VERSION_: version,
|
||||||
_CODENAME_: codename,
|
_CODENAME_: codename,
|
||||||
_STATUS_URL_: config.status_url,
|
|
||||||
_STATS_URL_: config.stats_url,
|
|
||||||
_DOCS_URL_: config.docs_url,
|
|
||||||
_API_URL_: config.api_url,
|
|
||||||
_WS_URL_: config.ws_url,
|
|
||||||
_DEV_URL_: config.dev_url,
|
|
||||||
_REPOSITORY_URL_: config.maintainer.repository_url,
|
|
||||||
_FEEDBACK_URL_: config.maintainer.feedback_url,
|
|
||||||
_LANG_: '%lang%',
|
_LANG_: '%lang%',
|
||||||
_LANGS_: Object.keys(locales).map(l => [l, locales[l].meta.lang]),
|
_LANGS_: Object.keys(locales).map(l => [l, locales[l].meta.lang]),
|
||||||
_NAME_: config.name,
|
_LICENSE_: licenseHtml
|
||||||
_DESCRIPTION_: config.description,
|
|
||||||
_HOST_: config.host,
|
|
||||||
_HOSTNAME_: config.hostname,
|
|
||||||
_URL_: config.url,
|
|
||||||
_LICENSE_: licenseHtml,
|
|
||||||
_GOOGLE_MAPS_API_KEY_: config.google_maps_api_key,
|
|
||||||
_WELCOME_BG_URL_: config.welcome_bg_url,
|
|
||||||
_TWITTER_INTEGRATION_: config.twitter != null
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const _consts: { [ key: string ]: any } = {};
|
const _consts: { [ key: string ]: any } = {};
|
||||||
|
|
Loading…
Reference in a new issue