-
-
- {{ task.full_entity_name }}
+
+
+
+ {{ productionMap.get(task.project_id)?.name }}
+
+
+ {{ task.full_entity_name }}
+
+
+
+
+
-
-
@@ -136,9 +139,8 @@ import { domMixin } from '@/components/mixins/dom'
import { formatListMixin } from '@/components/mixins/format'
import AddPreviewModal from '@/components/modals/AddPreviewModal'
-import EntityThumbnail from '@/components/widgets/EntityThumbnail'
+import EntityPreview from '@/components/widgets/EntityPreview'
import PeopleAvatar from '@/components/widgets/PeopleAvatar'
-import ProductionName from '@/components/widgets/ProductionName'
import TableInfo from '@/components/widgets/TableInfo'
import TaskTypeName from '@/components/widgets/TaskTypeName'
@@ -149,9 +151,8 @@ export default {
components: {
AddPreviewModal,
- EntityThumbnail,
+ EntityPreview,
PeopleAvatar,
- ProductionName,
TableInfo,
TaskTypeName
},
@@ -503,10 +504,10 @@ export default {
}
.board-card {
- cursor: pointer;
+ cursor: grab;
+ position: relative;
.ui-droppable {
- padding: 1em;
border-radius: 1em;
border: 1px solid var(--border-alt);
background-color: var(--background-alt);
@@ -555,7 +556,6 @@ export default {
.avatars {
display: flex;
flex-direction: row;
- gap: 10px;
}
.production-name {
@@ -590,4 +590,25 @@ export default {
background: $red;
}
}
+
+.infos {
+ padding: 0.5em;
+}
+
+.production-name {
+ font-weight: 400;
+ margin-bottom: 0em;
+ text-transform: uppercase;
+}
+
+.entity-name {
+ font-size: 1.1em;
+ font-weight: 600;
+}
+
+.avatars {
+ position: absolute;
+ right: 5px;
+ top: 75px;
+}
diff --git a/src/components/lists/PeopleList.vue b/src/components/lists/PeopleList.vue
index e2c668923..b51c21999 100644
--- a/src/components/lists/PeopleList.vue
+++ b/src/components/lists/PeopleList.vue
@@ -59,7 +59,7 @@
v-if="isBots"
>
{{ person.expiration_date }}
-
+
{{ $t(`people.role.${person.role}`) }} |
diff --git a/src/components/modals/AddAttachmentModal.vue b/src/components/modals/AddAttachmentModal.vue
index 4b1794885..c5d81e193 100644
--- a/src/components/modals/AddAttachmentModal.vue
+++ b/src/components/modals/AddAttachmentModal.vue
@@ -9,6 +9,15 @@
+
{{ title }}
{{ $t('tasks.comment_image') }}
@@ -145,7 +154,8 @@ export default {
data() {
return {
forms: [],
- isAnnotationLoading: false
+ isAnnotationLoading: false,
+ isDraggingFile: false
}
},
@@ -209,6 +219,26 @@ export default {
removeAttachment(form) {
this.forms = this.forms.filter(f => f !== form)
+ },
+
+ onDrop(event) {
+ this.isDraggingFile = false
+ this.fileField.onDrop(event)
+ event.preventDefault()
+ },
+
+ onFileDragover(event) {
+ event.preventDefault()
+ event.stopPropagation()
+ this.isDraggingFile = true
+ },
+
+ onFileDragLeave(event) {
+ event.preventDefault()
+ event.stopPropagation()
+ if (event.target.id === 'drop-mask') {
+ this.isDraggingFile = false
+ }
}
},
@@ -288,4 +318,20 @@ h3.subtitle {
.buttons {
flex-wrap: wrap;
}
+
+.drop-mask {
+ align-items: center;
+ background: rgba(0.1, 0, 0, 0.5);
+ border-radius: 5px;
+ color: white;
+ display: flex;
+ font-size: 2em;
+ justify-content: center;
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ right: 0px;
+ bottom: 0px;
+ z-index: 1000;
+}
diff --git a/src/components/modals/AddPreviewModal.vue b/src/components/modals/AddPreviewModal.vue
index 35c07a5f2..532139963 100644
--- a/src/components/modals/AddPreviewModal.vue
+++ b/src/components/modals/AddPreviewModal.vue
@@ -5,11 +5,29 @@
modal: true,
'is-active': active
}"
+ ref="modal"
>
-
-
-
-
+
+
+
+
+
+ {{ $t('main.drop_files_here') }}
+
{{ title }}
{{ $t('tasks.change_preview') }}
@@ -171,7 +189,8 @@ export default {
data() {
return {
- forms: []
+ forms: [],
+ isDraggingFile: false
}
},
@@ -224,6 +243,28 @@ export default {
removePreview(form) {
this.forms = this.forms.filter(f => f !== form)
+ },
+
+ onFileDragover(event) {
+ event.preventDefault()
+ event.stopPropagation()
+ this.isDraggingFile = true
+ },
+
+ onFileDragLeave(event) {
+ event.preventDefault()
+ event.stopPropagation()
+ if (event.target.id === 'drop-mask') {
+ this.isDraggingFile = false
+ }
+ },
+
+ onDrag(event) {},
+
+ onDrop(event) {
+ this.previewField.onDrop(event)
+ this.isDraggingFile = false
+ event.preventDefault()
}
},
@@ -312,4 +353,24 @@ h3.subtitle {
.preview-files-field {
margin: auto;
}
+
+.box.content {
+ position: relative;
+}
+
+.drop-mask {
+ align-items: center;
+ background: rgba(0.1, 0, 0, 0.5);
+ border-radius: 5px;
+ color: white;
+ display: flex;
+ font-size: 2em;
+ justify-content: center;
+ position: absolute;
+ top: 0px;
+ left: 0px;
+ right: 0px;
+ bottom: 0px;
+ z-index: 1000;
+}
diff --git a/src/components/modals/DayOffModal.vue b/src/components/modals/DayOffModal.vue
index c1b4d24b9..ee0debc88 100644
--- a/src/components/modals/DayOffModal.vue
+++ b/src/components/modals/DayOffModal.vue
@@ -46,7 +46,7 @@
:required="false"
v-model.trim="form.description"
/>
-
+
{{
$t('days_off.confirm_day_offs')
}}
@@ -189,8 +189,4 @@ export default {
.modal-content .box p.text {
margin-bottom: 1em;
}
-
-.warning {
- color: $orange;
-}
diff --git a/src/components/modals/EditPersonModal.vue b/src/components/modals/EditPersonModal.vue
index 7ed60b534..b3826dbd7 100644
--- a/src/components/modals/EditPersonModal.vue
+++ b/src/components/modals/EditPersonModal.vue
@@ -11,10 +11,10 @@
{{ $t(isBot ? 'bots.new_bot' : 'people.new_person') }}
@@ -995,17 +995,29 @@ export default {
}
.stat-tag {
+ border-radius: 6px;
+ border-bottom: 1px solid var(--border);
+ box-shadow: 0 0 2px var(--box-shadow);
display: inline-block;
+ font-size: 0.8em;
+ height: 32px;
+ padding-left: 4px;
margin-right: 1em;
margin-top: 0;
margin-bottom: 0.4em;
- font-size: 0.8em;
font-weight: bold;
width: 100%;
- height: 12px;
- border-radius: 2px;
- border-bottom: 1px solid var(--border);
- box-shadow: 0 0 2px var(--box-shadow);
+ }
+
+ .stat-text {
+ display: inline-block;
+ background: rgba(255, 255, 255, 0.8);
+ font-weight: bold;
+ padding: 4px 8px;
+ margin-top: 3px;
+ color: $black;
+ border-radius: 6px;
+ white-space: nowrap;
}
}
diff --git a/src/components/pages/Shot.vue b/src/components/pages/Shot.vue
index eb23e5984..758782efa 100644
--- a/src/components/pages/Shot.vue
+++ b/src/components/pages/Shot.vue
@@ -561,7 +561,7 @@ export default {
this.getCurrentShot()
.then(shot => {
this.currentShot = shot
- this.currentSection = this.route.query.section || 'casting'
+ this.currentSection = this.route.query.section || 'infos'
this.casting.isLoading = true
this.casting.isError = false
if (this.currentShot) {
diff --git a/src/components/pages/Team.vue b/src/components/pages/Team.vue
index 5018f2ce4..0628e9b68 100644
--- a/src/components/pages/Team.vue
+++ b/src/components/pages/Team.vue
@@ -30,7 +30,10 @@
-
+
-
+
-
@@ -344,7 +344,7 @@ export default {
},
{
label: this.$t('days_off.title'),
- name: 'days_off'
+ name: 'daysoff'
}
].filter(Boolean)
},
@@ -477,7 +477,7 @@ export default {
const availableSections = [
'board',
'calendar',
- 'days-off',
+ 'daysoff',
'done',
'pending',
'timesheets'
diff --git a/src/components/pages/logs/PreviewFiles.vue b/src/components/pages/logs/PreviewFiles.vue
index 204d6cf4b..7c3e7316f 100644
--- a/src/components/pages/logs/PreviewFiles.vue
+++ b/src/components/pages/logs/PreviewFiles.vue
@@ -6,7 +6,7 @@
- {{ $t('logs.preview_files.empty_list') }}
+ {{ $t('logs.preview_files.empty_list') }}
diff --git a/src/components/widgets/AddComment.vue b/src/components/widgets/AddComment.vue
index ccb02f4b0..711e18ee6 100644
--- a/src/components/widgets/AddComment.vue
+++ b/src/components/widgets/AddComment.vue
@@ -259,6 +259,7 @@
:narrow="true"
:color-only="true"
:task-status-list="taskStatus"
+ :production-id="task.project_id"
v-model="task_status_id"
/>
+
+
|