summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2018-06-06 02:48:26 +0900
committersyuilo <syuilotan@yahoo.co.jp>2018-06-06 02:48:26 +0900
commitf9180811680aa66706d722384cba4d82d7a2e52c (patch)
treeaf425f54d137741b83985dfb74b12c9ca4df04ec /src
parentwip (diff)
downloadmisskey-f9180811680aa66706d722384cba4d82d7a2e52c.tar.gz
misskey-f9180811680aa66706d722384cba4d82d7a2e52c.tar.bz2
misskey-f9180811680aa66706d722384cba4d82d7a2e52c.zip
wip
Diffstat (limited to 'src')
-rw-r--r--src/client/app/desktop/views/components/home.vue52
-rw-r--r--src/client/app/store.ts15
-rw-r--r--src/server/api/private/signup.ts48
3 files changed, 67 insertions, 48 deletions
diff --git a/src/client/app/desktop/views/components/home.vue b/src/client/app/desktop/views/components/home.vue
index 636ed871c7..d3ba84a4b3 100644
--- a/src/client/app/desktop/views/components/home.vue
+++ b/src/client/app/desktop/views/components/home.vue
@@ -76,6 +76,50 @@ import Vue from 'vue';
import * as XDraggable from 'vuedraggable';
import * as uuid from 'uuid';
+const defaultDesktopHomeWidgets = {
+ left: [
+ 'profile',
+ 'calendar',
+ 'activity',
+ 'rss',
+ 'trends',
+ 'photo-stream',
+ 'version'
+ ],
+ right: [
+ 'broadcast',
+ 'notifications',
+ 'users',
+ 'polls',
+ 'server',
+ 'donation',
+ 'nav',
+ 'tips'
+ ]
+};
+
+//#region Construct home data
+const _defaultDesktopHomeWidgets = [];
+
+defaultDesktopHomeWidgets.left.forEach(widget => {
+ _defaultDesktopHomeWidgets.push({
+ name: widget,
+ id: uuid(),
+ place: 'left',
+ data: {}
+ });
+});
+
+defaultDesktopHomeWidgets.right.forEach(widget => {
+ _defaultDesktopHomeWidgets.push({
+ name: widget,
+ id: uuid(),
+ place: 'right',
+ data: {}
+ });
+});
+//#endregion
+
export default Vue.extend({
components: {
XDraggable
@@ -119,6 +163,14 @@ export default Vue.extend({
}
},
+ created() {
+ if (this.$store.state.i.clientSettings == null || this.$store.state.i.clientSettings.home == null) {
+ this.api('i/update_home', {
+ home: _defaultDesktopHomeWidgets
+ });
+ }
+ },
+
mounted() {
this.connection = (this as any).os.stream.getConnection();
this.connectionId = (this as any).os.stream.use();
diff --git a/src/client/app/store.ts b/src/client/app/store.ts
index 905ec0501c..00cae3b857 100644
--- a/src/client/app/store.ts
+++ b/src/client/app/store.ts
@@ -7,6 +7,20 @@ import { hostname } from './config';
const defaultSettings = {
home: [],
mobileHome: [],
+ deck: {
+ columns: [/*{
+ type: 'widgets',
+ widgets: []
+ }, */{
+ type: 'home'
+ }, {
+ type: 'notifications'
+ }, {
+ type: 'local'
+ }, {
+ type: 'global'
+ }]
+ },
fetchOnScroll: true,
showMaps: true,
showPostFormOnTopOfTl: false,
@@ -156,6 +170,7 @@ export default (os: MiOS) => new Vuex.Store({
actions: {
merge(ctx, settings) {
+ if (settings == null) return;
Object.entries(settings).forEach(([key, value]) => {
ctx.commit('set', { key, value });
});
diff --git a/src/server/api/private/signup.ts b/src/server/api/private/signup.ts
index cf51dec4d2..14d4b8a3fc 100644
--- a/src/server/api/private/signup.ts
+++ b/src/server/api/private/signup.ts
@@ -1,4 +1,3 @@
-import * as uuid from 'uuid';
import * as Koa from 'koa';
import * as bcrypt from 'bcryptjs';
import { generate as generateKeypair } from '../../../crypto_key';
@@ -11,28 +10,6 @@ recaptcha.init({
secret_key: config.recaptcha.secret_key
});
-const home = {
- left: [
- 'profile',
- 'calendar',
- 'activity',
- 'rss',
- 'trends',
- 'photo-stream',
- 'version'
- ],
- right: [
- 'broadcast',
- 'notifications',
- 'users',
- 'polls',
- 'server',
- 'donation',
- 'nav',
- 'tips'
- ]
-};
-
export default async (ctx: Koa.Context) => {
// Verify recaptcha
// ただしテスト時はこの機構は障害となるため無効にする
@@ -82,28 +59,6 @@ export default async (ctx: Koa.Context) => {
// Generate secret
const secret = generateUserToken();
- //#region Construct home data
- const homeData = [];
-
- home.left.forEach(widget => {
- homeData.push({
- name: widget,
- id: uuid(),
- place: 'left',
- data: {}
- });
- });
-
- home.right.forEach(widget => {
- homeData.push({
- name: widget,
- id: uuid(),
- place: 'right',
- data: {}
- });
- });
- //#endregion
-
// Create account
const account: IUser = await User.insert({
avatarId: null,
@@ -135,9 +90,6 @@ export default async (ctx: Koa.Context) => {
},
settings: {
autoWatch: true
- },
- clientSettings: {
- home: homeData
}
});