2019-01-14 22:40:30 +01:00
|
|
|
<template>
|
2019-01-29 00:48:04 +01:00
|
|
|
<div :class="getClassRow()">
|
2019-01-29 23:13:28 +01:00
|
|
|
<q-context-menu ref="popover">
|
2019-01-27 21:49:10 +01:00
|
|
|
<q-list link separator no-border class="todo-menu">
|
2019-01-29 23:13:28 +01:00
|
|
|
<div v-for="field in menuPopupTodo" :key="field.value">
|
|
|
|
|
<q-item v-if="(field.value !== 130)" :icon="field.icon"
|
|
|
|
|
@click.native="clickMenu(field.value)">
|
|
|
|
|
<q-item-side :icon="field.icon"/>
|
2019-01-28 03:13:04 +01:00
|
|
|
|
2019-01-29 23:13:28 +01:00
|
|
|
<q-item-main v-if="field.value !== 120">
|
|
|
|
|
<q-item-tile label class="item-menu">{{field.label}}</q-item-tile>
|
|
|
|
|
</q-item-main>
|
2019-01-29 00:48:04 +01:00
|
|
|
|
2019-01-29 23:13:28 +01:00
|
|
|
<q-item-side v-if="field.value === 101">
|
|
|
|
|
<q-checkbox v-model="itemtodo.enableExpiring"/>
|
|
|
|
|
</q-item-side>
|
|
|
|
|
<q-item-side v-if="field.value === 110">
|
|
|
|
|
<q-checkbox v-model="itemtodo.completed"/>
|
|
|
|
|
</q-item-side>
|
2019-01-29 00:48:04 +01:00
|
|
|
|
2019-01-29 23:13:28 +01:00
|
|
|
<q-item-main v-if="field.value === 120">
|
|
|
|
|
<q-slider :class="menuProgress" v-model="itemtodo.progress" :min="0" :max="100"/>
|
|
|
|
|
</q-item-main>
|
|
|
|
|
<q-item-side v-if="field.value === 120">
|
|
|
|
|
<div :class="percProgress">
|
|
|
|
|
{{getPercentageProgress()}}%
|
|
|
|
|
</div>
|
|
|
|
|
</q-item-side>
|
|
|
|
|
|
|
|
|
|
</q-item>
|
|
|
|
|
<q-item v-else :icon="field.icon"
|
|
|
|
|
@click.native="clickMenu(field.value)">
|
|
|
|
|
|
|
|
|
|
<q-item-side :icon="iconPriority"/>
|
|
|
|
|
|
|
|
|
|
<q-item-main>
|
|
|
|
|
<q-btn-dropdown ref="dropdown_priority" flat :label="field.label"
|
|
|
|
|
>
|
|
|
|
|
<q-list link>
|
|
|
|
|
<q-item v-close-overlay v-for="field in selectPriority" :key="field.value"
|
|
|
|
|
@click.native="setPriority(field.value)">
|
|
|
|
|
<q-item-side :icon="field.icon" inverted color="primary"/>
|
|
|
|
|
<q-item-main>
|
|
|
|
|
<q-item-tile label>{{field.label}}</q-item-tile>
|
|
|
|
|
</q-item-main>
|
|
|
|
|
</q-item>
|
|
|
|
|
</q-list>
|
|
|
|
|
</q-btn-dropdown>
|
|
|
|
|
</q-item-main>
|
|
|
|
|
|
|
|
|
|
</q-item>
|
|
|
|
|
</div>
|
2019-01-27 21:49:10 +01:00
|
|
|
</q-list>
|
|
|
|
|
</q-context-menu>
|
2019-01-29 23:13:28 +01:00
|
|
|
|
2019-01-28 20:39:40 +01:00
|
|
|
<div v-if="isTodo()" class="flex-item pos-item" @mouseup.left="mouseUp" @mousedown="clickRiga">
|
2019-01-27 19:09:48 +01:00
|
|
|
<q-btn flat
|
|
|
|
|
class="pos-item-popover"
|
2019-01-29 23:13:28 +01:00
|
|
|
icon="menu"
|
|
|
|
|
@click.native="$refs.popover.$refs.popup.show()"
|
2019-01-27 21:49:10 +01:00
|
|
|
|
2019-01-29 23:13:28 +01:00
|
|
|
>
|
2019-01-14 22:40:30 +01:00
|
|
|
|
2019-01-16 02:26:43 +01:00
|
|
|
</q-btn>
|
|
|
|
|
</div>
|
2019-01-29 23:13:28 +01:00
|
|
|
|
2019-01-28 03:13:04 +01:00
|
|
|
<div v-if="isTodo()" class="flex-item completed-item">
|
2019-01-27 21:49:10 +01:00
|
|
|
<q-btn push flat
|
2019-01-27 19:09:48 +01:00
|
|
|
:class="classCompleted"
|
2019-01-16 02:26:43 +01:00
|
|
|
:icon="iconCompleted"
|
|
|
|
|
@click.native="setCompleted">
|
|
|
|
|
</q-btn>
|
|
|
|
|
<!--<q-icon class=" mycols allleft icon_completed ScheduleStatus" :name="iconCompleted"
|
|
|
|
|
@click.native="setCompleted"/>-->
|
|
|
|
|
</div>
|
2019-01-28 03:13:04 +01:00
|
|
|
|
2019-01-28 20:39:40 +01:00
|
|
|
<q-input type="textarea" ref="inputdescr" v-model="precDescr"
|
2019-01-28 13:31:41 +01:00
|
|
|
:class="classDescr" :max-height="50"
|
2019-01-28 20:39:40 +01:00
|
|
|
@keydown="keyDownArea" v-on:keydown.esc="exitEdit" @blur="exitEdit(true)" @click="editTodo()"/>
|
2019-01-28 03:13:04 +01:00
|
|
|
|
2019-01-28 20:39:40 +01:00
|
|
|
<!--:after="[{icon: 'arrow_forward', content: true, handler () {}}]"-->
|
2019-01-28 03:13:04 +01:00
|
|
|
|
2019-01-28 13:31:41 +01:00
|
|
|
<!--<div :class="classDescr" @mousedown.left="editTodo()">-->
|
2019-01-29 00:48:04 +01:00
|
|
|
<!--<q-field>{{ itemtodo.descr }}</q-field>-->
|
2019-01-28 13:31:41 +01:00
|
|
|
<!--</div>-->
|
2019-01-14 22:40:30 +01:00
|
|
|
|
2019-01-29 00:48:04 +01:00
|
|
|
<div v-if="isTodo()" class="flex-item progress-item">
|
|
|
|
|
<q-progress
|
|
|
|
|
:percentage="getPercentageProgress()"
|
|
|
|
|
class="progress-item"
|
|
|
|
|
:color="colProgress"
|
|
|
|
|
>
|
|
|
|
|
</q-progress>
|
|
|
|
|
<div :class="percProgress">
|
|
|
|
|
{{getPercentageProgress()}}%
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
|
2019-01-28 03:13:04 +01:00
|
|
|
|
|
|
|
|
<div v-if="itemtodo.enableExpiring">
|
|
|
|
|
<div :class="classExpiring">
|
|
|
|
|
<q-datetime
|
|
|
|
|
:class="classExpiringEx"
|
|
|
|
|
v-model="itemtodo.expiring_at"
|
2019-01-29 00:48:04 +01:00
|
|
|
class="myexpired">
|
|
|
|
|
</q-datetime>
|
2019-01-28 03:13:04 +01:00
|
|
|
</div>
|
2019-01-16 02:26:43 +01:00
|
|
|
</div>
|
2019-01-27 21:49:10 +01:00
|
|
|
<!--<div class="flex-item btn-item">-->
|
2019-01-28 03:13:04 +01:00
|
|
|
<!--{{classPosItemPopup}}-->
|
2019-01-27 21:49:10 +01:00
|
|
|
<!--</div>-->
|
2019-01-27 19:09:48 +01:00
|
|
|
<!--<div class="flex-item btn-item">-->
|
|
|
|
|
<!--<q-btn class="mybtn" round color="" icon="delete" @click.native="removeitem(itemtodo.id)"></q-btn>-->
|
|
|
|
|
<!--</div>-->
|
|
|
|
|
<!--<div class="flex-item">-->
|
|
|
|
|
<!--[{{ itemtodo.id_prev}} - {{ itemtodo.id_next}}]-->
|
|
|
|
|
<!--</div>-->
|
2019-01-14 22:40:30 +01:00
|
|
|
</div>
|
2019-01-16 02:26:43 +01:00
|
|
|
|
2019-01-14 22:40:30 +01:00
|
|
|
</template>
|
|
|
|
|
|
|
|
|
|
<script lang="ts" src="./SingleTodo.ts">
|
|
|
|
|
</script>
|
2019-01-16 02:26:43 +01:00
|
|
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
|
|
@import './SingleTodo.scss';
|
|
|
|
|
</style>
|