Ver a proveniência

Feature: Add condition for board-edit button display

pull/169/head
winkidney há 5 anos
committed by Isaac Bythewood
ascendente
cometimento
ba21df6914
1 ficheiros alterados com 28 adições e 3 eliminações
  1. +28
    -3
      pinry-spa/src/components/Boards.vue

+ 28
- 3
pinry-spa/src/components/Boards.vue Ver ficheiro

@@ -21,7 +21,7 @@
>
<div class="card-image">
<BoardEditorUI
v-show="shouldShowEdit(item.id)"
v-show="shouldShowEdit(item)"
:board="item"
v-on:board-delete-succeed="reset"
v-on:board-save-succeed="reset"
@@ -89,6 +89,7 @@ function createBoardItem(board) {
height: `${previewImage.image.thumbnail.height}px`,
};
boardItem.class = {};
boardItem.author = board.submitter.username;
return boardItem;
}

@@ -102,6 +103,9 @@ function initialData() {
hasNext: true,
offset: 0,
},
editorMeta: {
user: { loggedIn: false, meta: { username: null } },
},
};
}

@@ -118,6 +122,20 @@ export default {
initialize() {
this.fetchMore(true);
},
initializeMeta() {
const self = this;
API.User.fetchUserInfo().then(
(user) => {
if (user === null) {
self.editorMeta.user.loggedIn = false;
self.editorMeta.user.meta = {};
} else {
self.editorMeta.user.meta = user;
self.editorMeta.user.loggedIn = true;
}
},
);
},
reset() {
const data = initialData();
Object.entries(data).forEach(
@@ -128,8 +146,14 @@ export default {
);
this.initialize();
},
shouldShowEdit(boardId) {
return this.currentEditBoard === boardId;
shouldShowEdit(board) {
if (!this.editorMeta.user.loggedIn) {
return false;
}
if (this.editorMeta.user.meta.username !== board.author) {
return false;
}
return this.currentEditBoard === board.id;
},
onPinImageLoaded(itemId) {
this.blocksMap[itemId].class = {
@@ -197,6 +221,7 @@ export default {
created() {
bus.bus.$on(bus.events.refreshBoards, this.reset);
this.registerScrollEvent();
this.initializeMeta();
this.initialize();
},
};


Carregando…
Cancelar
Guardar