123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- <template>
- <article class="card linkedmaterialcard">
- <header
- @click.prevent="openModalCard"
- >
- <h1>{{ item.title }}</h1>
- <h4>{{ item.short_description }}</h4>
- <span v-if="isloggedin" class="ref">{{ item.reference }}</span>
- </header>
- <nav class="tools">
- </nav>
- <section class="images" v-switcher>
- <figure
- v-for="(img, index) in item.images"
- :key="img.url"
- class="lazy"
- v-lazy="index"
- >
- <img
- :data-src="img.style_linkedmaterialcard.url"
- :title="img.title"
- />
- <img
- class="blank"
- :src="blanksrc"
- @click.prevent="openModalCard"
- />
- </figure>
- </section>
- </article>
- </template>
- <script>
- import { mapState, mapActions } from 'vuex'
- import cardMixins from 'vuejs/components/cardMixins'
- import ModalCard from 'vuejs/components/Content/ModalCard'
- export default {
- name: "LinkedMaterialCard",
- props: ['item'],
- mixins: [cardMixins],
-
-
-
- data() {
- return {
- blanksrc:`${drupalSettings.path.themePath}/assets/img/blank.gif`,
- loadingItem: false
- }
- },
- computed: {
- ...mapState({
- isloggedin: state => state.User.isloggedin
- })
- },
- methods: {
- itemIsLoading(id) {
- return this.loadingItem
- },
- openModalCard (e) {
- console.log('openModalCard', this.isLoggedin)
- if (this.isloggedin) {
- this.$modal.show(
- ModalCard,
- {
- item: this.item,
-
-
- addNoteId:(id) => {
-
-
-
-
- this.item.note = {id: id}
- }
- },
- {
- name: `modal-${this.item.id}`,
- draggable: false,
- classes: "vm--modale-card",
-
-
-
-
- width: '95%',
- height: '95%'
- }
- )
- } else {
- this.$modal.show(
- MemberWarning,
- {},
- {
-
- draggable: false,
-
-
-
-
-
- width: '400px',
- height: '250px'
- }
- )
- }
- }
- }
- }
- </script>
- <style lang="scss" scoped>
- </style>
|