Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/spreed.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoas Schilling <coding@schilljs.com>2019-11-05 16:33:25 +0300
committerJoas Schilling <coding@schilljs.com>2019-11-05 16:56:34 +0300
commit5475685bb0ba1f136ed10c5d117df405c5c04f10 (patch)
tree4fe74128d98b4b556cff564ab13311ebe7ff401d
parent5a54f93a4dea4b46717f8d0659157f89ec7c8c07 (diff)
Add the projects sidebar
Signed-off-by: Joas Schilling <coding@schilljs.com>
-rw-r--r--.eslintignore1
-rw-r--r--src/collectionsintegration.js63
-rw-r--r--src/components/Sidebar/Sidebar.vue37
-rw-r--r--src/views/CollaborationView.vue55
-rw-r--r--webpack.common.js1
5 files changed, 30 insertions, 127 deletions
diff --git a/.eslintignore b/.eslintignore
index a586861bd..764a4f79a 100644
--- a/.eslintignore
+++ b/.eslintignore
@@ -1,6 +1,5 @@
/js/admin/*
/js/collections.js
-/js/collectionsintegration.js
/js/simplewebrtc/bundled.js
/js/tests/*
/js/vendor/*
diff --git a/src/collectionsintegration.js b/src/collectionsintegration.js
deleted file mode 100644
index 98fd90ba6..000000000
--- a/src/collectionsintegration.js
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>
- *
- * @author Julius Härtl <jus@bitgrid.net>
- *
- * @license GNU AGPL version 3 or any later version
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- */
-
-import Vue from 'vue'
-import CollaborationView from './views/CollaborationView'
-
-// eslint-disable-next-line no-unexpected-multiline
-(function(OCP, OCA) {
- // eslint-disable-next-line
- __webpack_nonce__ = btoa(OC.requestToken)
- // eslint-disable-next-line
- __webpack_public_path__ = OC.linkTo('spreed', 'js/')
-
- Vue.prototype.t = t
- Vue.prototype.n = n
- Vue.prototype.OC = OC
-
- OCA.Talk = Object.assign({}, OCA.Talk)
- OCA.Talk.CollectionsTabView = {
-
- ComponentVM: null,
- MountingPoint: null,
-
- init(MountingPoint, roomModel) {
- this.ComponentVM = new Vue({
- data: {
- model: roomModel.toJSON(),
- },
- render: h => h(CollaborationView),
- })
-
- if (MountingPoint) {
- this.ComponentVM.$mount(MountingPoint)
- }
- },
- setRoomModel(roomModel) {
- if (this.ComponentVM) {
- this.ComponentVM.model = roomModel.toJSON()
- }
- },
-
- }
-
-})(window.OCP, window.OCA)
diff --git a/src/components/Sidebar/Sidebar.vue b/src/components/Sidebar/Sidebar.vue
index b32e20dd3..9d4fada58 100644
--- a/src/components/Sidebar/Sidebar.vue
+++ b/src/components/Sidebar/Sidebar.vue
@@ -24,29 +24,41 @@
v-if="opened"
:title="conversation.displayName"
:starred.sync="conversation.isFavorite"
- @close="show=false" />
+ @close="show=false">
+ <AppSidebarTab :name="t('spreed', 'Participants')" icon="icon-contacts-dark">
+ Participants
+ </AppSidebarTab>
+ <AppSidebarTab :name="t('spreed', 'Projects')" icon="icon-projects">
+ <CollectionList v-if="conversation.token"
+ :id="conversation.token"
+ type="room"
+ :name="conversation.displayName" />
+ </AppSidebarTab>
+ </AppSidebar>
</template>
<script>
import AppSidebar from 'nextcloud-vue/dist/Components/AppSidebar'
+import AppSidebarTab from 'nextcloud-vue/dist/Components/AppSidebarTab'
+// import ParticipantsTab from './ParticipantsTab/ParticipantsTab'
+import { CollectionList } from 'nextcloud-vue-collections'
import { EventBus } from '../../services/EventBus'
export default {
name: 'Sidebar',
components: {
AppSidebar,
+ AppSidebarTab,
+ CollectionList,
+ // ParticipantsTab,
},
data() {
return {
- show: true
+ show: true,
}
},
- beforeMount() {
- EventBus.$on('routeChange', () => {
- this.show = true
- })
- },
+
computed: {
opened() {
return !!this.token && this.show
@@ -59,10 +71,21 @@ export default {
return this.$store.getters.conversations[this.token]
}
return {
+ token: '',
displayName: '',
isFavorite: false,
}
},
},
+
+ beforeMount() {
+ EventBus.$on('routeChange', () => {
+ this.show = true
+ })
+ },
}
</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/CollaborationView.vue b/src/views/CollaborationView.vue
deleted file mode 100644
index 53be81945..000000000
--- a/src/views/CollaborationView.vue
+++ /dev/null
@@ -1,55 +0,0 @@
-<!--
- - @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>
- -
- - @author Julius Härtl <jus@bitgrid.net>
- -
- - @license GNU AGPL version 3 or any later version
- -
- - This program is free software: you can redistribute it and/or modify
- - it under the terms of the GNU Affero General Public License as
- - published by the Free Software Foundation, either version 3 of the
- - License, or (at your option) any later version.
- -
- - This program is distributed in the hope that it will be useful,
- - but WITHOUT ANY WARRANTY; without even the implied warranty of
- - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- - GNU Affero General Public License for more details.
- -
- - You should have received a copy of the GNU Affero General Public License
- - along with this program. If not, see <http://www.gnu.org/licenses/>.
- -
- -->
-
-<template>
- <div>
- <CollectionList v-if="roomId"
- :id="roomId"
- type="room"
- :name="roomTitle" />
- </div>
-</template>
-
-<script>
-import { CollectionList } from 'nextcloud-vue-collections'
-
-export default {
- name: 'CollaborationView',
- components: {
- CollectionList: CollectionList,
- },
- computed: {
- roomId() {
- if (this.$root.model && this.$root.model.token) {
- return '' + this.$root.model.token
- }
- return null
- },
- roomTitle() {
- if (this.$root.model && this.$root.model.displayName) {
- return '' + this.$root.model.displayName
- }
- return ''
- },
- },
-}
-</script>
diff --git a/webpack.common.js b/webpack.common.js
index 210e88ed0..2f3a5f470 100644
--- a/webpack.common.js
+++ b/webpack.common.js
@@ -11,7 +11,6 @@ module.exports = {
'admin/stun-server': path.join(__dirname, 'src', 'StunServerSettings.js'),
'admin/turn-server': path.join(__dirname, 'src', 'TurnServerSettings.js'),
'collections': path.join(__dirname, 'src', 'collections.js'),
- 'collectionsintegration': path.join(__dirname, 'src', 'collectionsintegration.js'),
'talk': path.join(__dirname, 'src', 'main.js')
},
output: {