summaryrefslogtreecommitdiffstats
path: root/src/components/ContactDetails/ContactDetailsAvatar.vue
diff options
context:
space:
mode:
authorJessica <jessica@Absolventas-MacBook-Pro.local>2018-09-20 16:36:59 +0200
committerJessica <jessica@Absolventas-MacBook-Pro.local>2018-09-20 16:36:59 +0200
commit649e370f68eb81bb01c2c2b59c87169addd01203 (patch)
tree2faf4c0b5f77467754c7c58bce671130cf2042d9 /src/components/ContactDetails/ContactDetailsAvatar.vue
parentb99c0df19227bf83dd1912000473a01d4690a556 (diff)
parent16ddf705e61897ce45207edb47d0d81906a75ba4 (diff)
added code for preview and merged in work on uploading photo from other branch, still needs full styling
Diffstat (limited to 'src/components/ContactDetails/ContactDetailsAvatar.vue')
-rw-r--r--src/components/ContactDetails/ContactDetailsAvatar.vue53
1 files changed, 19 insertions, 34 deletions
diff --git a/src/components/ContactDetails/ContactDetailsAvatar.vue b/src/components/ContactDetails/ContactDetailsAvatar.vue
index b0ad9057..0a09fad6 100644
--- a/src/components/ContactDetails/ContactDetailsAvatar.vue
+++ b/src/components/ContactDetails/ContactDetailsAvatar.vue
@@ -1,4 +1,5 @@
<!--
+import rfcProps from '../../models/rfcProps';
* @copyright Copyright (c) 2018 Team Popcorn <teampopcornberlin@gmail.com>
*
* @author Team Popcorn <teampopcornberlin@gmail.com>
@@ -21,24 +22,24 @@
-->
<template>
- <div id="contact-header-avatar">
- <div :class="{'maximized': maximizeAvatar}" class="contact-avatar-background" />
- <img v-click="maximise" v-if="contact.photo !==undefined" :id="contact.key"
- class="avatar__picture"
- src="">
- <div class="contact-header-avatar__options">
- <input id="contact-header-avatar__upload" type="file" class="hidden"
- accept="image/*"
- @change="uploadPhoto">
- <label v-tooltip.auto="t('contacts', 'Upload a new picture')" for="avatar-upload" class="icon-upload-white" />
- <div v-click="removePhoto" v-if="contact.photo !==undefined" class="icon-delete-white" />
- <div v-click="openPhoto" v-if="contact.photo !==undefined" class="icon-fullscreen-white" />
- <div v-click="downloadPhoto" v-if="contact.photo !==undefined" class="icon-download-white" />
+ <div id="contact-header-avatar" :class="{'maximised':maximizeAvatar }">
+ <div class="contact-avatar-background" />
+ <img v-if="contact.photo" :src="contact.photo"
+ class="contact-header-avatar__picture"
+ @click="maximise">
+ <div class="avatar-options">
+ <input id="contact-avatar-upload" type="file" class="hidden"
+ accept="image/*" @change="processFile">
+ <label v-tooltip.auto="t('contacts', 'Upload a new picture')" for="contact-avatar-upload" class="icon-upload-white" />
+ <div v-if="maximizeAvatar" class="icon-delete-white" @click="removePhoto" />
+ <div v-if="maximizeAvatar" class="icon-fullscreen-white" @click="minimizePhoto" />
+ <div v-if="maximizeAvatar" class="icon-download-white" @click="downloadPhoto" />
</div>
</div>
</template>
<script>
+
export default {
name: 'ContactAvatar',
@@ -53,33 +54,14 @@ export default {
maximizeAvatar: false
}
},
- mounted: {
-
- },
methods: {
processFile(event) {
let file = event.target.files[0]
- /* console.log(event.target.files)
- alert(JSON.stringify(file, undefined, 2))
- WIP */
let reader = new FileReader()
- /* let selectedAddressbook = this.selectedAddressbook
- this.$store.dispatch('changeStage', 'parsing')
- this.$store.dispatch('setAddressbook', selectedAddressbook.displayName)
- WIP */
let self = this
reader.onload = function(e) {
- /* self.$store.dispatch('importContactsIntoAddressbook', { vcf: reader.result, addressbook: selectedAddressbook })
- WIP */
- console.log(reader.result) // eslint-disable-line
- if (!self.contact.vCard.hasProperty('avatar')) {
- let property = self.contact.vCard.addPropertyWithValue('avatar', reader.result)
- // ^WIP: need to research how to set type as 'text' same as in following example:
- // ["version", {…}, "text", "4.0", __ob__: Observer]
- property.setParameter('type', 'text')
- // ^WIP: need to research what above function is doing
- console.log(self.contact.vCard) // eslint-disable-line
- }
+ self.contact.vCard.addPropertyWithValue('photo', reader.result)
+ self.$store.dispatch('updateContact', self.contact)
}
reader.readAsDataURL(file)
},
@@ -89,9 +71,11 @@ export default {
},
uploadPhoto() {
// upload avatar photo
+ console.log("upload") // eslint-disable-line
},
removePhoto() {
// remove avatar photo
+ console.log("remove") // eslint-disable-line
},
minimizePhoto() {
// minimize avatar photo
@@ -99,6 +83,7 @@ export default {
},
downloadPhoto() {
// download avatar photo
+ console.log("download") // eslint-disable-line
}
}