summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2019-02-25 20:08:56 +0900
committersyuilo <syuilotan@yahoo.co.jp>2019-02-25 20:08:56 +0900
commita2517d1a1db5ba9ddd47e59f9ca74b9e64bcf968 (patch)
tree1a6e738fc503f48891fc5cd7b42d63807af0f512 /src
parentモバイル版でもデッキを使えるように (#4366) (diff)
downloadsharkey-a2517d1a1db5ba9ddd47e59f9ca74b9e64bcf968.tar.gz
sharkey-a2517d1a1db5ba9ddd47e59f9ca74b9e64bcf968.tar.bz2
sharkey-a2517d1a1db5ba9ddd47e59f9ca74b9e64bcf968.zip
:art:
Diffstat (limited to 'src')
-rw-r--r--src/client/app/common/views/components/dialog.vue31
-rw-r--r--src/client/app/common/views/components/signin.vue6
-rw-r--r--src/client/app/mobile/views/pages/welcome.vue36
3 files changed, 32 insertions, 41 deletions
diff --git a/src/client/app/common/views/components/dialog.vue b/src/client/app/common/views/components/dialog.vue
index a0b3baf161..2dbe848d7c 100644
--- a/src/client/app/common/views/components/dialog.vue
+++ b/src/client/app/common/views/components/dialog.vue
@@ -2,18 +2,23 @@
<div class="felqjxyj" :class="{ splash }">
<div class="bg" ref="bg" @click="onBgClick"></div>
<div class="main" ref="main">
- <div class="icon" v-if="!input && !select && !user" :class="type"><fa :icon="icon"/></div>
- <header v-if="title" v-html="title"></header>
- <div class="body" v-if="text" v-html="text"></div>
- <ui-input v-if="input" v-model="inputValue" autofocus :type="input.type || 'text'" :placeholder="input.placeholder" @keydown="onInputKeydown"></ui-input>
- <ui-input v-if="user" v-model="userInputValue" autofocus @keydown="onInputKeydown"><template #prefix>@</template></ui-input>
- <ui-select v-if="select" v-model="selectedValue">
- <option v-for="item in select.items" :value="item.value">{{ item.text }}</option>
- </ui-select>
- <ui-horizon-group no-grow class="buttons fit-bottom" v-if="!splash">
- <ui-button @click="ok" primary :autofocus="!input && !select && !user">OK</ui-button>
- <ui-button @click="cancel" v-if="showCancelButton || input || select || user">Cancel</ui-button>
- </ui-horizon-group>
+ <template v-if="type == 'signin'">
+ <mk-signin/>
+ </template>
+ <template v-else>
+ <div class="icon" v-if="!input && !select && !user" :class="type"><fa :icon="icon"/></div>
+ <header v-if="title" v-html="title"></header>
+ <div class="body" v-if="text" v-html="text"></div>
+ <ui-input v-if="input" v-model="inputValue" autofocus :type="input.type || 'text'" :placeholder="input.placeholder" @keydown="onInputKeydown"></ui-input>
+ <ui-input v-if="user" v-model="userInputValue" autofocus @keydown="onInputKeydown"><template #prefix>@</template></ui-input>
+ <ui-select v-if="select" v-model="selectedValue">
+ <option v-for="item in select.items" :value="item.value">{{ item.text }}</option>
+ </ui-select>
+ <ui-horizon-group no-grow class="buttons fit-bottom" v-if="!splash">
+ <ui-button @click="ok" primary :autofocus="!input && !select && !user">{{ $t('@.ok') }}</ui-button>
+ <ui-button @click="cancel" v-if="showCancelButton || input || select || user">{{ $t('@.cancel') }}</ui-button>
+ </ui-horizon-group>
+ </template>
</div>
</div>
</template>
@@ -23,8 +28,10 @@ import Vue from 'vue';
import anime from 'animejs';
import { faTimesCircle, faQuestionCircle } from '@fortawesome/free-regular-svg-icons';
import parseAcct from "../../../../../misc/acct/parse";
+import i18n from '../../../i18n';
export default Vue.extend({
+ i18n: i18n(),
props: {
type: {
type: String,
diff --git a/src/client/app/common/views/components/signin.vue b/src/client/app/common/views/components/signin.vue
index 2905bb1da1..e7513a501b 100644
--- a/src/client/app/common/views/components/signin.vue
+++ b/src/client/app/common/views/components/signin.vue
@@ -1,16 +1,16 @@
<template>
<form class="mk-signin" :class="{ signing }" @submit.prevent="onSubmit">
<div class="avatar" :style="{ backgroundImage: user ? `url('${ user.avatarUrl }')` : null }" v-show="withAvatar"></div>
- <ui-input v-model="username" type="text" pattern="^[a-zA-Z0-9_]+$" spellcheck="false" autofocus required @input="onUsernameChange" styl="fill">
+ <ui-input v-model="username" type="text" pattern="^[a-zA-Z0-9_]+$" spellcheck="false" autofocus required @input="onUsernameChange">
<span>{{ $t('username') }}</span>
<template #prefix>@</template>
<template #suffix>@{{ host }}</template>
</ui-input>
- <ui-input v-model="password" type="password" :with-password-toggle="true" required styl="fill">
+ <ui-input v-model="password" type="password" :with-password-toggle="true" required>
<span>{{ $t('password') }}</span>
<template #prefix><fa icon="lock"/></template>
</ui-input>
- <ui-input v-if="user && user.twoFactorEnabled" v-model="token" type="number" required styl="fill">
+ <ui-input v-if="user && user.twoFactorEnabled" v-model="token" type="number" required>
<span>{{ $t('@.2fa') }}</span>
<template #prefix><fa icon="gavel"/></template>
</ui-input>
diff --git a/src/client/app/mobile/views/pages/welcome.vue b/src/client/app/mobile/views/pages/welcome.vue
index cf5ac5f072..1f1847d728 100644
--- a/src/client/app/mobile/views/pages/welcome.vue
+++ b/src/client/app/mobile/views/pages/welcome.vue
@@ -10,8 +10,8 @@
<p v-html="description || this.$t('@.about')"></p>
<router-link class="signup" to="/signup">{{ $t('signup') }}</router-link>
</div>
- <div class="login">
- <mk-signin :with-avatar="false"/>
+ <div class="signin">
+ <a href="/signin" @click.prevent="signin()">{{ $t('signin') }}</a>
</div>
<div class="tl">
<mk-welcome-timeline/>
@@ -120,6 +120,13 @@ export default Vue.extend({
const files = concat(notes.map((n: any): any[] => n.files));
this.photos = files.filter(f => image.includes(f.type)).slice(0, 6);
});
+ },
+ methods: {
+ signin() {
+ this.$root.dialog({
+ type: 'signin'
+ });
+ }
}
});
</script>
@@ -185,32 +192,9 @@ export default Vue.extend({
> .signup
font-weight bold
- > .login
+ > .signin
margin 16px 0
- > form
-
- button
- display block
- width 100%
- padding 10px
- margin 0
- color #333
- font-size 1em
- text-align center
- text-decoration none
- text-shadow 0 1px 0 rgba(255, 255, 255, 0.9)
- background-image linear-gradient(#fafafa, #eaeaea)
- border 1px solid #ddd
- border-bottom-color #cecece
- border-radius 4px
-
- &:active
- background-color #767676
- background-image none
- border-color #444
- box-shadow 0 1px 3px rgba(#000, 0.075), inset 0 0 5px rgba(#000, 0.2)
-
> .tl
margin 16px 0