-
-
-
-
-
-
-
-
- {{ title }}
-
-
-
-
+
+
+
+
+
![]()
+
{{ title }}
+
-
+
+
@@ -78,5 +54,5 @@
diff --git a/src/components/CMyGroup/CMyGroup.scss b/src/components/CMyGroup/CMyGroup.scss
index fc6d6911..6411182f 100755
--- a/src/components/CMyGroup/CMyGroup.scss
+++ b/src/components/CMyGroup/CMyGroup.scss
@@ -1,25 +1,524 @@
-.myflex{
- display: flex;
- flex: 1;
+// ========================================
+// CMyGroup - SCSS Moderno con Gradienti
+// ========================================
+
+$primary-color: #1976d2;
+$primary-light: #42a5f5;
+$primary-dark: #1565c0;
+$secondary-color: #26a69a;
+$positive-color: #21ba45;
+$negative-color: #c10015;
+$info-color: #31ccec;
+$warning-color: #f2c037;
+
+$grey-text: #555;
+$grey-light: #999;
+
+$border-radius-sm: 8px;
+$border-radius: 12px;
+$transition-speed: 0.3s;
+$shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
+$shadow-md: 0 2px 8px rgba(0, 0, 0, 0.1);
+$shadow-lg: 0 4px 16px rgba(0, 0, 0, 0.15);
+
+$mobile-breakpoint: 768px;
+
+// Gradiente speciale per gruppi
+$gradient-group-primary: linear-gradient(135deg, $secondary-color 0%, lighten($secondary-color, 15%) 100%);
+$gradient-group-hover: linear-gradient(135deg, darken($secondary-color, 5%) 0%, $secondary-color 100%);
+
+// ========================================
+// Q-ITEM CONTAINER (con gradiente group-style)
+// ========================================
+.q-item {
+ background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 50%, #ffffff 100%);
+ border-radius: $border-radius;
+ padding: 10px 12px;
+ margin: 8px 0;
+ transition: all $transition-speed cubic-bezier(0.4, 0, 0.2, 1);
+ box-shadow: $shadow-sm;
+ position: relative;
+ overflow: hidden;
+ border: 1px solid rgba(0, 0, 0, 0.06);
+ border-left: 4px solid transparent;
+
+ // Effetto luce scorrevole
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
+ transition: left 0.6s ease;
+ z-index: 0;
+ }
+
+ // Gradiente sottile group-themed
+ &::after {
+ content: '';
+ position: absolute;
+ left: 0;
+ top: 0;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(to right, rgba($secondary-color, 0.02), transparent 15%);
+ opacity: 0;
+ transition: opacity $transition-speed ease;
+ z-index: 0;
+ }
+
+ @media (max-width: $mobile-breakpoint) {
+ padding: 8px 10px;
+ margin: 6px 0;
+ }
+
+ // Hover effect
+ &.clickable:hover,
+ &[clickable]:hover {
+ background: linear-gradient(135deg, #ffffff 0%, #f0f4f8 50%, #ffffff 100%);
+ box-shadow: 0 4px 16px rgba($secondary-color, 0.15);
+ transform: translateY(-2px);
+ border-left-color: $secondary-color;
+ border-color: rgba($secondary-color, 0.15);
+
+ &::before {
+ left: 100%;
+ }
+
+ &::after {
+ opacity: 1;
+ }
+ }
+
+ // Assicura che i contenuti siano sopra gli effetti
+ > * {
+ position: relative;
+ z-index: 1;
+ }
}
-.container{
- vertical-align: center;
- padding: 5px;
- font-size: 1.15rem;
+// ========================================
+// AVATAR (con effetto glow group-themed)
+// ========================================
+.q-avatar {
+ transition: all $transition-speed ease;
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
+ border: 2px solid rgba(255, 255, 255, 0.8);
+ position: relative;
+
+ &::after {
+ content: '';
+ position: absolute;
+ inset: -2px;
+ border-radius: 50%;
+ background: $gradient-group-primary;
+ opacity: 0;
+ transition: opacity $transition-speed ease;
+ z-index: -1;
+ }
+
+ .q-item:hover & {
+ transform: scale(1.05);
+ box-shadow: 0 4px 16px rgba($secondary-color, 0.3);
+
+ &::after {
+ opacity: 0.3;
+ }
+ }
+
+ @media (max-width: $mobile-breakpoint) {
+ width: 50px !important;
+ height: 50px !important;
+ }
}
-.element{
- font-weight: bold;
- vertical-align: center;
- padding: 5px;
- font-size: 1.15rem;
+// ========================================
+// PROFILE IMAGE
+// ========================================
+.imgprofile {
+ border-radius: 50%;
+ object-fit: cover;
}
+// ========================================
+// GROUP TITLE (con gradiente)
+// ========================================
+.q-item__label {
+ line-height: 1.5;
+ margin-bottom: 3px;
-.title_param{
- font-size: 1.25rem;
+ &:last-child {
+ margin-bottom: 0;
+ }
+
+ strong {
+ font-weight: 600;
+ background: $gradient-group-primary;
+ -webkit-background-clip: text;
+ -webkit-text-fill-color: transparent;
+ background-clip: text;
+ font-size: 1rem;
+ transition: all $transition-speed ease;
+
+ @media (max-width: $mobile-breakpoint) {
+ font-size: 0.9375rem;
+ }
+
+ .q-item:hover & {
+ background: $gradient-group-hover;
+ -webkit-background-clip: text;
+ -webkit-text-fill-color: transparent;
+ background-clip: text;
+ }
+ }
+
+ em {
+ font-style: italic;
+ color: $grey-text;
+ font-size: 0.875rem;
+
+ @media (max-width: $mobile-breakpoint) {
+ font-size: 0.8125rem;
+ }
+ }
+
+ // Caption style
+ &[caption] {
+ color: $grey-light;
+ font-size: 0.8125rem;
+ margin-top: 2px;
+
+ @media (max-width: $mobile-breakpoint) {
+ font-size: 0.75rem;
+ }
+ }
}
-.iconcirc {
- margin-right: 4px;
+
+// ========================================
+// GROUPNAME BADGE
+// ========================================
+.q-item__label {
+ // Stile per (groupname)
+ &:has(strong) {
+ display: flex;
+ align-items: center;
+ gap: 8px;
+ flex-wrap: wrap;
+
+ // Parentesi con groupname
+ > :not(strong) {
+ font-size: 0.875rem;
+ color: $grey-text;
+ padding: 2px 8px;
+ border-radius: 6px;
+ background: linear-gradient(135deg, rgba($secondary-color, 0.08), rgba($secondary-color, 0.04));
+ border: 1px solid rgba($secondary-color, 0.2);
+
+ @media (max-width: $mobile-breakpoint) {
+ font-size: 0.8125rem;
+ padding: 2px 6px;
+ }
+ }
+ }
}
+
+// ========================================
+// ACTION BUTTONS (con gradienti)
+// ========================================
+.q-btn {
+ transition: all $transition-speed ease;
+ position: relative;
+ overflow: hidden;
+
+ // Rounded menu button
+ &[rounded] {
+ &.q-btn--round {
+ background: rgba(255, 255, 255, 0.8);
+ backdrop-filter: blur(8px);
+ box-shadow: $shadow-sm;
+ border: 1px solid rgba(0, 0, 0, 0.06);
+
+ &:hover {
+ background: rgba(255, 255, 255, 0.95);
+ box-shadow: $shadow-md;
+ transform: scale(1.1) rotate(90deg);
+ }
+ }
+ }
+
+ // Send coins button (special gradient)
+ &[color='green'] {
+ background: linear-gradient(135deg, $positive-color, lighten($positive-color, 10%)) !important;
+ box-shadow: 0 2px 8px rgba($positive-color, 0.3);
+
+ &:hover {
+ background: linear-gradient(135deg, darken($positive-color, 5%), $positive-color) !important;
+ box-shadow: 0 4px 12px rgba($positive-color, 0.4);
+ transform: translateY(-2px);
+ }
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ width: 0;
+ height: 0;
+ border-radius: 50%;
+ background: rgba(255, 255, 255, 0.4);
+ transform: translate(-50%, -50%);
+ transition: width 0.6s ease, height 0.6s ease;
+ }
+
+ &:hover::before {
+ width: 300px;
+ height: 300px;
+ }
+ }
+}
+
+// ========================================
+// MENU DROPDOWN (con gradienti)
+// ========================================
+.q-menu {
+ background: linear-gradient(to bottom, #ffffff, #f8f9fa);
+ backdrop-filter: blur(10px);
+ border: 1px solid rgba(0, 0, 0, 0.08);
+ box-shadow: $shadow-lg;
+ border-radius: $border-radius-sm;
+
+ .q-list {
+ padding: 6px;
+ background: transparent;
+
+ @media (max-width: $mobile-breakpoint) {
+ padding: 4px;
+ }
+ }
+
+ .q-item {
+ border-radius: $border-radius-sm;
+ margin: 2px 0;
+ background: transparent;
+ border: none;
+ box-shadow: none;
+ border-left: none;
+ padding: 10px 12px;
+
+ &::before {
+ display: none;
+ }
+
+ &::after {
+ display: none;
+ }
+
+ &:hover {
+ background: linear-gradient(135deg, rgba($secondary-color, 0.08), rgba($secondary-color, 0.04));
+ transform: translateX(4px) translateY(0);
+ box-shadow: 0 2px 8px rgba($secondary-color, 0.1);
+ }
+
+ @media (max-width: $mobile-breakpoint) {
+ padding: 8px 10px;
+ }
+ }
+
+ .q-item__section--avatar {
+ min-width: 36px;
+
+ @media (max-width: $mobile-breakpoint) {
+ min-width: 32px;
+ }
+
+ .q-icon {
+ transition: all $transition-speed ease;
+ }
+
+ .q-item:hover & .q-icon {
+ transform: scale(1.1);
+ }
+ }
+}
+
+// ========================================
+// COIN ICON (special styling)
+// ========================================
+.q-btn {
+ [class*='img:'] {
+ transition: transform $transition-speed ease;
+ }
+
+ &:hover [class*='img:'] {
+ transform: scale(1.1) rotate(10deg);
+ }
+}
+
+// ========================================
+// DIALOG (con gradiente)
+// ========================================
+.q-dialog {
+ .q-card {
+ background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
+ box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15);
+ border-radius: $border-radius;
+
+ @media (max-width: $mobile-breakpoint) {
+ border-radius: 0;
+ }
+ }
+
+ .q-toolbar {
+ background: linear-gradient(135deg, $primary-color, $primary-dark) !important;
+ border-radius: $border-radius $border-radius 0 0;
+ padding: 12px 16px;
+
+ @media (max-width: $mobile-breakpoint) {
+ padding: 10px 12px;
+ border-radius: 0;
+ }
+
+ .q-toolbar-title {
+ font-weight: 600;
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
+ }
+ }
+}
+
+// ========================================
+// ANIMATIONS
+// ========================================
+@keyframes groupItemAppear {
+ from {
+ opacity: 0;
+ transform: translateY(10px) scale(0.98);
+ }
+ to {
+ opacity: 1;
+ transform: translateY(0) scale(1);
+ }
+}
+
+.q-item {
+ animation: groupItemAppear 0.35s ease-out;
+}
+
+// Coin icon rotation on hover
+@keyframes coinRotate {
+ 0% { transform: rotateY(0deg); }
+ 100% { transform: rotateY(360deg); }
+}
+
+.q-btn:hover [class*='img:'] {
+ animation: coinRotate 0.8s ease-in-out;
+}
+
+// ========================================
+// RESPONSIVE ADJUSTMENTS
+// ========================================
+@media (max-width: $mobile-breakpoint) {
+ .q-item-section {
+ padding: 0 4px;
+ }
+
+ .q-item__label {
+ line-height: 1.4;
+ }
+
+ .q-btn {
+ &[rounded] {
+ padding: 6px;
+ }
+
+ &[dense] {
+ padding: 4px 8px;
+ font-size: 0.875rem;
+ }
+ }
+}
+
+// ========================================
+// UTILITY CLASSES
+// ========================================
+
+// Glass effect variant
+.glass-group-item {
+ .q-item {
+ background: rgba(255, 255, 255, 0.7) !important;
+ backdrop-filter: blur(10px);
+ border: 1px solid rgba(255, 255, 255, 0.3);
+
+ &:hover {
+ background: rgba(255, 255, 255, 0.85) !important;
+ }
+ }
+}
+
+// Highlighted group (admin)
+.admin-group {
+ .q-item {
+ border-left: 4px solid $warning-color;
+ background: linear-gradient(to right, rgba($warning-color, 0.05), transparent 20%);
+
+ &:hover {
+ background: linear-gradient(to right, rgba($warning-color, 0.08), transparent 20%);
+ box-shadow: 0 4px 16px rgba($warning-color, 0.15);
+ }
+ }
+}
+
+// Featured group
+.featured-group {
+ .q-item {
+ border: 2px solid transparent;
+ background: linear-gradient(white, white) padding-box,
+ $gradient-group-primary border-box;
+
+ &:hover {
+ box-shadow: 0 6px 20px rgba($secondary-color, 0.25);
+ }
+ }
+}
+
+// Active group indicator
+.active-group-indicator {
+ position: absolute;
+ top: 8px;
+ right: 8px;
+ width: 10px;
+ height: 10px;
+ border-radius: 50%;
+ background: $gradient-group-primary;
+ box-shadow: 0 0 8px rgba($secondary-color, 0.6);
+ animation: pulse 2s infinite;
+}
+
+@keyframes pulse {
+ 0%, 100% {
+ box-shadow: 0 0 8px rgba($secondary-color, 0.6);
+ }
+ 50% {
+ box-shadow: 0 0 16px rgba($secondary-color, 0.9);
+ }
+}
+
+// Member count badge (opzionale)
+.member-count-badge {
+ display: inline-flex;
+ align-items: center;
+ gap: 4px;
+ padding: 2px 8px;
+ border-radius: 12px;
+ background: linear-gradient(135deg, rgba($info-color, 0.1), rgba($info-color, 0.05));
+ border: 1px solid rgba($info-color, 0.3);
+ color: darken($info-color, 15%);
+ font-size: 0.75rem;
+ font-weight: 600;
+ margin-left: 8px;
+
+ .q-icon {
+ font-size: 0.875rem;
+ }
+}
\ No newline at end of file
diff --git a/src/components/CMyPopupEdit/CMyPopupEdit-modern.scss b/src/components/CMyPopupEdit/CMyPopupEdit-modern.scss
new file mode 100644
index 00000000..c56fe2b1
--- /dev/null
+++ b/src/components/CMyPopupEdit/CMyPopupEdit-modern.scss
@@ -0,0 +1,437 @@
+// ========================================
+// MODERN POPUP EDIT - ENHANCED DISPLAY
+// ========================================
+
+// Sovrascrive e aggiunge agli stili esistenti
+
+// Display del valore quando non in modifica
+.modern-value-display {
+ width: 100%;
+
+ // Chip per valori stringa/generici
+ .value-chip-display {
+ display: inline-flex;
+ align-items: center;
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
+ color: white;
+ font-weight: 500;
+ font-size: 0.95rem;
+ padding: 10px 18px;
+ border-radius: 20px;
+ box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
+ transition: all 0.3s ease;
+ position: relative;
+ overflow: hidden;
+ max-width: 100%;
+ word-break: break-word;
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
+ transition: left 0.5s ease;
+ }
+
+ &:hover {
+ transform: translateY(-1px);
+ box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ padding: 8px 14px;
+ border-radius: 16px;
+ }
+ }
+
+ // Link button
+ .value-link-btn {
+ background: linear-gradient(135deg, #42a5f5 0%, #1976d2 100%);
+ color: white;
+ padding: 10px 18px;
+ border-radius: 20px;
+ box-shadow: 0 2px 8px rgba(25, 118, 210, 0.3);
+ transition: all 0.3s ease;
+ text-decoration: none;
+ display: inline-flex;
+ align-items: center;
+ gap: 8px;
+ font-weight: 500;
+ position: relative;
+ overflow: hidden;
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
+ transition: left 0.5s ease;
+ }
+
+ &:hover {
+ transform: translateY(-2px);
+ box-shadow: 0 4px 12px rgba(25, 118, 210, 0.4);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ padding: 8px 14px;
+ border-radius: 16px;
+ font-size: 0.85rem;
+ gap: 6px;
+ }
+ }
+
+ // Toggle migliorato
+ .value-toggle {
+ :deep(.q-toggle) {
+ padding: 4px 0;
+
+ .q-toggle__track {
+ width: 48px;
+ height: 24px;
+ border-radius: 12px;
+ transition: all 0.3s ease;
+ }
+
+ .q-toggle__thumb {
+ width: 20px;
+ height: 20px;
+ transition: all 0.3s ease;
+ }
+
+ &.q-toggle--truthy {
+ .q-toggle__track {
+ background: linear-gradient(135deg, #4caf50 0%, #2e7d32 100%);
+ box-shadow: 0 2px 6px rgba(76, 175, 80, 0.3);
+ }
+ }
+
+ &.q-toggle--falsy {
+ .q-toggle__track {
+ background: linear-gradient(135deg, #e0e0e0 0%, #bdbdbd 100%);
+ }
+ }
+
+ @media (max-width: 599px) {
+ .q-toggle__track {
+ width: 42px;
+ height: 22px;
+ }
+
+ .q-toggle__thumb {
+ width: 18px;
+ height: 18px;
+ }
+ }
+ }
+ }
+}
+
+// Enhanced chip_shadow per user items
+.chip_shadow {
+ :deep(.q-chip) {
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
+ color: white;
+ box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
+ transition: all 0.3s ease;
+ border: none;
+ position: relative;
+ overflow: hidden;
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
+ transition: left 0.5s ease;
+ }
+
+ &:hover {
+ box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
+ transform: translateY(-1px);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ }
+ }
+}
+
+// User card migliorata
+.user-item-card {
+ padding: 10px 12px;
+ margin: 6px 0;
+ border-radius: 12px;
+ transition: all 0.3s ease;
+ background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(250, 250, 252, 0.95) 100%);
+ border: 1px solid rgba(66, 165, 245, 0.15);
+ position: relative;
+ overflow: hidden;
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(66, 165, 245, 0.08), transparent);
+ transition: left 0.6s ease;
+ }
+
+ &:hover {
+ background: linear-gradient(135deg, rgba(255, 255, 255, 1) 0%, rgba(245, 248, 252, 1) 100%);
+ border-color: rgba(66, 165, 245, 0.3);
+ box-shadow: 0 4px 12px rgba(25, 118, 210, 0.15);
+ transform: translateY(-1px);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ padding: 8px 10px;
+ margin: 4px 0;
+ border-radius: 10px;
+ }
+
+ .q-item-section {
+ &.avatar {
+ padding-right: 12px;
+
+ @media (max-width: 599px) {
+ padding-right: 8px;
+ }
+ }
+ }
+
+ .q-avatar {
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
+ border: 2px solid rgba(255, 255, 255, 0.8);
+ transition: all 0.3s ease;
+ }
+
+ &:hover .q-avatar {
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
+ transform: scale(1.05);
+ }
+
+ .q-badge {
+ font-size: 0.7rem;
+ padding: 3px 8px;
+ font-weight: 600;
+ border-radius: 10px;
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
+
+ @media (max-width: 599px) {
+ font-size: 0.65rem;
+ padding: 2px 6px;
+ }
+ }
+
+ .q-item-label {
+ font-weight: 500;
+ color: #2c3e50;
+
+ &.caption {
+ color: #7f8c8d;
+ font-size: 0.85rem;
+
+ @media (max-width: 599px) {
+ font-size: 0.8rem;
+ }
+ }
+ }
+}
+
+// Input states durante editing
+.popup-edit-wrapper {
+ :deep(.q-field) {
+ padding-bottom: 6px;
+
+ @media (max-width: 599px) {
+ padding-bottom: 4px;
+ }
+ }
+
+ :deep(.q-field__control) {
+ min-height: 44px;
+ border-radius: 8px;
+ transition: all 0.3s ease;
+
+ &:hover {
+ background: rgba(66, 165, 245, 0.03);
+ }
+
+ &:focus-within {
+ background: rgba(66, 165, 245, 0.05);
+ box-shadow: 0 0 0 2px rgba(66, 165, 245, 0.2);
+ }
+
+ @media (max-width: 599px) {
+ min-height: 40px;
+ border-radius: 6px;
+ }
+ }
+
+ :deep(.q-field__label) {
+ font-size: 0.9rem;
+ font-weight: 500;
+ color: #1976d2;
+
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ }
+ }
+
+ :deep(.q-field__native) {
+ font-size: 0.95rem;
+ color: #2c3e50;
+ padding: 8px 12px;
+
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ padding: 6px 10px;
+ }
+ }
+
+ :deep(.q-input),
+ :deep(.q-select) {
+ margin: 2px 0;
+
+ @media (max-width: 599px) {
+ margin: 1px 0;
+ }
+ }
+}
+
+// Stato focus su editor
+.editor {
+ border: 1px solid rgba(66, 165, 245, 0.3);
+ border-radius: 8px;
+ padding: 8px;
+ min-height: 60px;
+ transition: all 0.3s ease;
+ background: white;
+
+ &:hover {
+ border-color: rgba(66, 165, 245, 0.5);
+ background: rgba(66, 165, 245, 0.02);
+ }
+
+ &:focus-within {
+ border-color: #42a5f5;
+ box-shadow: 0 0 0 2px rgba(66, 165, 245, 0.15);
+ background: white;
+ }
+
+ @media (max-width: 599px) {
+ padding: 6px;
+ min-height: 50px;
+ border-radius: 6px;
+ }
+}
+
+// Textarea compatta
+:deep(textarea.myinput-area) {
+ padding: 10px;
+ border-radius: 8px;
+ min-height: 60px;
+ line-height: 1.5;
+ font-size: 0.95rem;
+ color: #2c3e50;
+ transition: all 0.3s ease;
+
+ &:focus {
+ background: rgba(66, 165, 245, 0.02);
+ }
+
+ @media (max-width: 599px) {
+ padding: 8px;
+ min-height: 50px;
+ font-size: 0.85rem;
+ }
+}
+
+// Bottoni migliorati
+.popup-button {
+ padding: 8px 16px;
+ margin: 4px 8px;
+ border-radius: 20px;
+ transition: all 0.3s ease;
+ background: linear-gradient(135deg, #42a5f5 0%, #1976d2 100%);
+ color: white;
+ font-weight: 500;
+ box-shadow: 0 2px 6px rgba(25, 118, 210, 0.3);
+ position: relative;
+ overflow: hidden;
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
+ transition: left 0.5s ease;
+ }
+
+ &:hover {
+ transform: translateY(-2px);
+ box-shadow: 0 4px 12px rgba(25, 118, 210, 0.4);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ padding: 6px 12px;
+ margin: 3px 6px;
+ border-radius: 16px;
+ }
+}
+
+// Extra field modernizzato
+.extrafield {
+ font-size: 0.9rem;
+ padding: 6px 12px;
+ color: #5e6e7f;
+ font-weight: 500;
+ margin-bottom: 6px;
+ display: inline-block;
+ background: linear-gradient(135deg, rgba(66, 165, 245, 0.08) 0%, rgba(66, 165, 245, 0.05) 100%);
+ border-radius: 8px;
+ border: 1px solid rgba(66, 165, 245, 0.15);
+
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ padding: 4px 10px;
+ margin-bottom: 4px;
+ border-radius: 6px;
+ }
+}
\ No newline at end of file
diff --git a/src/components/CMyPopupEdit/CMyPopupEdit.scss b/src/components/CMyPopupEdit/CMyPopupEdit.scss
index a2977857..2bb4b0d7 100755
--- a/src/components/CMyPopupEdit/CMyPopupEdit.scss
+++ b/src/components/CMyPopupEdit/CMyPopupEdit.scss
@@ -1,362 +1,449 @@
// ========================================
-// VARIABILI
+// MODERN POPUP EDIT - ENHANCED DISPLAY
// ========================================
-$primary-color: #1976d2;
-$primary-light: #42a5f5;
-$grey-color: #666;
-$border-radius: 8px;
-$border-radius-sm: 6px;
-$transition-speed: 0.3s;
+// Sovrascrive e aggiunge agli stili esistenti
-$shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
-$shadow-md: 0 2px 8px rgba(0, 0, 0, 0.1);
+// Display del valore quando non in modifica
+.modern-value-display {
+ width: 100%;
-$mobile-breakpoint: 768px;
+ // Chip per valori stringa/generici
+ .value-chip-display {
+ display: inline-flex;
+ align-items: center;
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
+ color: white;
+ font-weight: 500;
+ font-size: 0.95rem;
+ padding: 10px 18px;
+ border-radius: 20px;
+ box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
+ transition: all 0.3s ease;
+ position: relative;
+ overflow: hidden;
+ max-width: 100%;
+ word-break: break-word;
-// ========================================
-// EDITOR
-// ========================================
-.editor {
- border: 1px solid rgba(25, 118, 210, 0.3);
- border-radius: $border-radius-sm;
- padding: 6px;
- min-height: 60px;
- transition: all $transition-speed ease;
- background: white;
-
- &:hover {
- border-color: $primary-light;
- }
-
- &:focus-within {
- border-color: $primary-color;
- box-shadow: 0 0 0 2px rgba(25, 118, 210, 0.1);
- }
-
- @media (max-width: $mobile-breakpoint) {
- padding: 4px;
- min-height: 50px;
- }
-}
-
-// ========================================
-// POPUP EDIT CONTAINER
-// ========================================
-.popup-edit-wrapper {
- :deep(.q-popup-edit) {
- padding: 8px;
- border-radius: $border-radius;
- box-shadow: $shadow-md;
-
- @media (max-width: $mobile-breakpoint) {
- padding: 6px;
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.25), transparent);
+ transition: left 0.5s ease;
}
- }
-}
-
-// ========================================
-// FIELD WRAPPERS
-// ========================================
-.field-wrapper {
- padding: 4px 0;
- margin: 3px 0;
-
- @media (max-width: $mobile-breakpoint) {
- padding: 3px 0;
- margin: 2px 0;
- }
-}
-
-// ========================================
-// EXTRA FIELD
-// ========================================
-.extrafield {
- font-size: 0.9375rem;
- padding: 4px 6px;
- color: $grey-color;
- font-weight: 500;
- margin-bottom: 4px;
- display: inline-block;
- background: rgba(0, 0, 0, 0.03);
- border-radius: $border-radius-sm;
-
- @media (max-width: $mobile-breakpoint) {
- font-size: 0.875rem;
- padding: 3px 4px;
- margin-bottom: 3px;
- }
-}
-
-// ========================================
-// TOGGLE ENHANCED
-// ========================================
-.toggle-enhanced {
- padding: 4px 0;
-
- :deep(.q-toggle__label) {
- font-size: 0.9375rem;
- margin-left: 6px;
-
- @media (max-width: $mobile-breakpoint) {
- font-size: 0.875rem;
- margin-left: 4px;
- }
- }
-
- :deep(.q-toggle__inner) {
- transition: all $transition-speed ease;
- }
-}
-
-// ========================================
-// CHIP SHADOW
-// ========================================
-.chip_shadow {
- :deep(.q-chip) {
- box-shadow: $shadow-sm;
- transition: all $transition-speed ease;
&:hover {
- box-shadow: $shadow-md;
transform: translateY(-1px);
+ box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ padding: 8px 14px;
+ border-radius: 16px;
+ }
+ }
+
+ // Link button
+ .value-link-btn {
+ background: linear-gradient(135deg, #42a5f5 0%, #1976d2 100%);
+ color: white;
+ padding: 10px 18px;
+ border-radius: 20px;
+ box-shadow: 0 2px 8px rgba(25, 118, 210, 0.3);
+ transition: all 0.3s ease;
+ text-decoration: none;
+ display: inline-flex;
+ align-items: center;
+ gap: 8px;
+ font-weight: 500;
+ position: relative;
+ overflow: hidden;
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
+ transition: left 0.5s ease;
+ }
+
+ &:hover {
+ transform: translateY(-2px);
+ box-shadow: 0 4px 12px rgba(25, 118, 210, 0.4);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ padding: 8px 14px;
+ border-radius: 16px;
+ font-size: 0.85rem;
+ gap: 6px;
+ }
+ }
+
+ // Toggle migliorato
+ .value-toggle {
+ :deep(.q-toggle) {
+ padding: 4px 0;
+
+ .q-toggle__track {
+ width: 48px;
+ height: 24px;
+ border-radius: 12px;
+ transition: all 0.3s ease;
+ }
+
+ .q-toggle__thumb {
+ width: 20px;
+ height: 20px;
+ transition: all 0.3s ease;
+ }
+
+ &.q-toggle--truthy {
+ .q-toggle__track {
+ background: linear-gradient(135deg, #4caf50 0%, #2e7d32 100%);
+ box-shadow: 0 2px 6px rgba(76, 175, 80, 0.3);
+ }
+ }
+
+ &.q-toggle--falsy {
+ .q-toggle__track {
+ background: linear-gradient(135deg, #e0e0e0 0%, #bdbdbd 100%);
+ }
+ }
+
+ @media (max-width: 599px) {
+ .q-toggle__track {
+ width: 42px;
+ height: 22px;
+ }
+
+ .q-toggle__thumb {
+ width: 18px;
+ height: 18px;
+ }
+ }
}
}
}
-// ========================================
-// USER CARD IN POPUP
-// ========================================
-.user-item-card {
- padding: 6px 8px;
- margin: 4px 0;
- border-radius: $border-radius;
- transition: all $transition-speed ease;
- background: white;
- border: 1px solid rgba(0, 0, 0, 0.08);
+// Enhanced chip_shadow per user items
+.chip_shadow {
+ :deep(.q-chip) {
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
+ color: white;
+ box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
+ transition: all 0.3s ease;
+ border: none;
+ position: relative;
+ overflow: hidden;
- &:hover {
- background: rgba(25, 118, 210, 0.05);
- border-color: rgba(25, 118, 210, 0.2);
- box-shadow: $shadow-sm;
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
+ transition: left 0.5s ease;
+ }
+
+ &:hover {
+ box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
+ transform: translateY(-1px);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ }
+ }
+}
+
+// User card migliorata
+.user-item-card {
+ padding: 10px 12px;
+ margin: 6px 0;
+ border-radius: 12px;
+ transition: all 0.3s ease;
+ background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(250, 250, 252, 0.95) 100%);
+ border: 1px solid rgba(66, 165, 245, 0.15);
+ position: relative;
+ overflow: hidden;
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(66, 165, 245, 0.08), transparent);
+ transition: left 0.6s ease;
}
- @media (max-width: $mobile-breakpoint) {
- padding: 4px 6px;
- margin: 3px 0;
+ &:hover {
+ background: linear-gradient(135deg, rgba(255, 255, 255, 1) 0%, rgba(245, 248, 252, 1) 100%);
+ border-color: rgba(66, 165, 245, 0.3);
+ box-shadow: 0 4px 12px rgba(25, 118, 210, 0.15);
+ transform: translateY(-1px);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ padding: 8px 10px;
+ margin: 4px 0;
+ border-radius: 10px;
}
.q-item-section {
&.avatar {
- padding-right: 8px;
+ padding-right: 12px;
- @media (max-width: $mobile-breakpoint) {
- padding-right: 6px;
+ @media (max-width: 599px) {
+ padding-right: 8px;
}
}
}
.q-avatar {
- box-shadow: $shadow-sm;
- border: 2px solid rgba(0, 0, 0, 0.05);
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
+ border: 2px solid rgba(255, 255, 255, 0.8);
+ transition: all 0.3s ease;
+ }
+
+ &:hover .q-avatar {
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
+ transform: scale(1.05);
}
.q-badge {
- font-size: 0.6875rem;
- padding: 2px 6px;
+ font-size: 0.7rem;
+ padding: 3px 8px;
font-weight: 600;
+ border-radius: 10px;
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
- @media (max-width: $mobile-breakpoint) {
- font-size: 0.625rem;
- padding: 1px 4px;
+ @media (max-width: 599px) {
+ font-size: 0.65rem;
+ padding: 2px 6px;
+ }
+ }
+
+ .q-item-label {
+ font-weight: 500;
+ color: #2c3e50;
+
+ &.caption {
+ color: #7f8c8d;
+ font-size: 0.85rem;
+
+ @media (max-width: 599px) {
+ font-size: 0.8rem;
+ }
}
}
}
-// ========================================
-// INPUT OVERRIDES (Compact)
-// ========================================
+// Input states durante editing
.popup-edit-wrapper {
:deep(.q-field) {
- padding-bottom: 8px;
+ padding-bottom: 6px;
- @media (max-width: $mobile-breakpoint) {
- padding-bottom: 6px;
+ @media (max-width: 599px) {
+ padding-bottom: 4px;
}
}
:deep(.q-field__control) {
min-height: 44px;
+ border-radius: 8px;
+ transition: all 0.3s ease;
- @media (max-width: $mobile-breakpoint) {
+ &:hover {
+ background: rgba(66, 165, 245, 0.03);
+ }
+
+ &:focus-within {
+ background: rgba(66, 165, 245, 0.05);
+ box-shadow: 0 0 0 2px rgba(66, 165, 245, 0.2);
+ }
+
+ @media (max-width: 599px) {
min-height: 40px;
+ border-radius: 6px;
}
}
:deep(.q-field__label) {
- font-size: 0.9375rem;
+ font-size: 0.9rem;
+ font-weight: 500;
+ color: #1976d2;
- @media (max-width: $mobile-breakpoint) {
- font-size: 0.875rem;
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
}
}
- :deep(.q-input) {
- margin: 3px 0;
+ :deep(.q-field__native) {
+ font-size: 0.95rem;
+ color: #2c3e50;
+ padding: 8px 12px;
- @media (max-width: $mobile-breakpoint) {
- margin: 2px 0;
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ padding: 6px 10px;
}
}
+ :deep(.q-input),
:deep(.q-select) {
- margin: 3px 0;
-
- @media (max-width: $mobile-breakpoint) {
- margin: 2px 0;
- }
- }
-}
-
-// ========================================
-// TEXTAREA COMPACT
-// ========================================
-:deep(textarea) {
- &.myinput-area {
- padding: 8px;
- border-radius: $border-radius-sm;
- min-height: 60px;
- line-height: 1.4;
-
- @media (max-width: $mobile-breakpoint) {
- padding: 6px;
- min-height: 50px;
- }
- }
-}
-
-// ========================================
-// BUTTON IN POPUP
-// ========================================
-.popup-button {
- padding: 6px 12px;
- margin: 3px 6px;
- border-radius: $border-radius-sm;
- transition: all $transition-speed ease;
-
- &:hover {
- transform: translateY(-1px);
- box-shadow: $shadow-sm;
- }
-
- @media (max-width: $mobile-breakpoint) {
- padding: 4px 8px;
- margin: 2px 4px;
- }
-}
-
-// ========================================
-// DATE PICKER COMPACT
-// ========================================
-.date-picker-compact {
- :deep(.q-date) {
- padding: 4px;
-
- @media (max-width: $mobile-breakpoint) {
- padding: 3px;
- }
- }
-
- :deep(.q-date__header) {
- padding: 6px;
-
- @media (max-width: $mobile-breakpoint) {
- padding: 4px;
- }
- }
-
- :deep(.q-date__calendar-item) {
- padding: 3px;
-
- @media (max-width: $mobile-breakpoint) {
- padding: 2px;
- }
- }
-}
-
-// ========================================
-// COLOR PICKER
-// ========================================
-.color-select-wrapper {
- :deep(.q-select) {
- min-width: 150px;
-
- @media (max-width: $mobile-breakpoint) {
- min-width: 120px;
- }
- }
-}
-
-// ========================================
-// LEGACY SUPPORT
-// ========================================
-.clpopupVisuCard {
- border-radius: $border-radius;
- padding: 4px;
- margin: 3px 0;
-
- @media (max-width: $mobile-breakpoint) {
- padding: 3px;
margin: 2px 0;
+
+ @media (max-width: 599px) {
+ margin: 1px 0;
+ }
}
}
-// ========================================
-// DISABLED STATE
-// ========================================
-.disabled {
- opacity: 0.5;
- cursor: not-allowed;
- pointer-events: none;
-}
-
-// ========================================
-// CURSOR POINTER
-// ========================================
-.cursor-pointer {
- cursor: pointer;
- transition: opacity $transition-speed ease;
+// Stato focus su editor
+.editor {
+ border: 1px solid rgba(66, 165, 245, 0.3);
+ border-radius: 8px;
+ padding: 8px;
+ min-height: 60px;
+ transition: all 0.3s ease;
+ background: white;
&:hover {
- opacity: 0.8;
+ border-color: rgba(66, 165, 245, 0.5);
+ background: rgba(66, 165, 245, 0.02);
+ }
+
+ &:focus-within {
+ border-color: #42a5f5;
+ box-shadow: 0 0 0 2px rgba(66, 165, 245, 0.15);
+ background: white;
+ }
+
+ @media (max-width: 599px) {
+ padding: 6px;
+ min-height: 50px;
+ border-radius: 6px;
}
}
-// ========================================
-// FLEX HELPERS (Compact)
-// ========================================
-.flex {
- display: flex;
- gap: 6px;
+// Textarea compatta
+:deep(textarea.myinput-area) {
+ padding: 10px;
+ border-radius: 8px;
+ min-height: 60px;
+ line-height: 1.5;
+ font-size: 0.95rem;
+ color: #2c3e50;
+ transition: all 0.3s ease;
- @media (max-width: $mobile-breakpoint) {
- gap: 4px;
+ &:focus {
+ background: rgba(66, 165, 245, 0.02);
+ }
+
+ @media (max-width: 599px) {
+ padding: 8px;
+ min-height: 50px;
+ font-size: 0.85rem;
}
}
-.justify-center {
- justify-content: center;
+// Bottoni migliorati
+.popup-button {
+ padding: 8px 16px;
+ margin: 4px 8px;
+ border-radius: 20px;
+ transition: all 0.3s ease;
+ background: linear-gradient(135deg, #42a5f5 0%, #1976d2 100%);
+ color: white;
+ font-weight: 500;
+ box-shadow: 0 2px 6px rgba(25, 118, 210, 0.3);
+ position: relative;
+ overflow: hidden;
+
+ &::before {
+ content: '';
+ position: absolute;
+ top: 0;
+ left: -100%;
+ width: 100%;
+ height: 100%;
+ background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
+ transition: left 0.5s ease;
+ }
+
+ &:hover {
+ transform: translateY(-2px);
+ box-shadow: 0 4px 12px rgba(25, 118, 210, 0.4);
+
+ &::before {
+ left: 100%;
+ }
+ }
+
+ @media (max-width: 599px) {
+ padding: 6px 12px;
+ margin: 3px 6px;
+ border-radius: 16px;
+ }
}
-.items-center {
- align-items: center;
-}
+// Extra field modernizzato
+.extrafield {
+ font-size: 0.9rem;
+ padding: 6px 12px;
+ color: #5e6e7f;
+ font-weight: 500;
+ margin-bottom: 6px;
+ display: inline-block;
+ background: linear-gradient(135deg, rgba(66, 165, 245, 0.08) 0%, rgba(66, 165, 245, 0.05) 100%);
+ border-radius: 8px;
+ border: 1px solid rgba(66, 165, 245, 0.15);
-// ========================================
-// REQUIRED INDICATOR
-// ========================================
-.required-indicator {
- color: #c10015;
- font-weight: 600;
- margin-left: 2px;
+ @media (max-width: 599px) {
+ font-size: 0.85rem;
+ padding: 4px 10px;
+ margin-bottom: 4px;
+ border-radius: 6px;
+ }
+}
+.modern-chip-container {
+ min-width: 350px;
+
+ @media (max-width: 599px) {
+ width: 100%;
+ min-width: unset;
+ }
+
+ .modern-chip {
+ width: 100%;
+ }
}
\ No newline at end of file
diff --git a/src/components/CMyPopupEdit/CMyPopupEdit.ts b/src/components/CMyPopupEdit/CMyPopupEdit.ts
index 8580d711..de2f0a36 100755
--- a/src/components/CMyPopupEdit/CMyPopupEdit.ts
+++ b/src/components/CMyPopupEdit/CMyPopupEdit.ts
@@ -121,6 +121,21 @@ export default defineComponent({
required: false,
default: '',
},
+ label_trans: {
+ type: String,
+ required: false,
+ default: '',
+ },
+ subfield_to_see: {
+ type: String,
+ required: false,
+ default: '',
+ },
+ fieldsel_tosee: {
+ type: String,
+ required: false,
+ default: '',
+ },
subfield2: {
type: String,
required: false,
@@ -261,6 +276,7 @@ export default defineComponent({
const userStore = useUserStore();
const globalStore = useGlobalStore();
+ const myvaltosee = ref(null as any);
const myvalue = ref(null as any);
const myvalue2 = ref(null as any);
const myvalueprec = ref('false');
@@ -276,6 +292,7 @@ export default defineComponent({
const $router = useRouter();
const loaded = ref(false);
+ const modeEdit = ref(false);
const myColor = ref('#FF00AA55'); // Colore con trasparenza iniziale
@@ -357,6 +374,7 @@ export default defineComponent({
}
}
col.value.jointable = props.jointable;
+ col.value.label_trans = props.label_trans;
if (props.filter) col.value.filter = props.filter;
col.value.fieldtype = props.type;
@@ -519,7 +537,7 @@ export default defineComponent({
}
function changevalRecOrig(newval: any, subcol: string = '') {
- console.log('changevalRec', newval)
+ console.log('changevalRec', newval);
// if (!props.insertMode || (props.insertMode && col.value.fieldtype !== costanti.FieldType.multioption)) {
if (col.value && col.value.allowchar === costanti.ALLOWCHAR_CODE) {
newval = tools.removespaces_slash(newval);
@@ -537,7 +555,7 @@ export default defineComponent({
}
if (props.type === costanti.FieldType.imgfile_sfuso) {
- newval = newval?.imagefile
+ newval = newval?.imagefile;
}
if (props.notAllowAtChar) {
@@ -635,8 +653,11 @@ export default defineComponent({
note: '',
};
}
- } catch (e) { }
+ } catch (e) {}
+ if (props.subfield_to_see) {
+ myvaltosee.value = myrow.value[props.field][props.subfield_to_see];
+ }
// console.log('popupedit: myvalue.value', myvalue.value)
@@ -740,7 +761,6 @@ export default defineComponent({
}
}
-
if (col.value.fieldtype === costanti.FieldType.verifica) {
newVal.username = userStore.my.username;
newVal.data = tools.getDateNow();
@@ -793,6 +813,11 @@ export default defineComponent({
}
}
+ if (props.fieldsel_tosee) {
+ const mystrcol = props.fieldsel_tosee;
+ myvaltosee.value = copynewval[mystrcol];
+ }
+
console.log('SaveValueInt', newVal, valinitial);
emit('save', newVal, valinitial, copynewval.which!);
@@ -836,6 +861,25 @@ export default defineComponent({
);
}
}
+ async function savefieldtosee(value: any, initialval: any, myq: any) {
+ if (!props.insertMode) {
+ let ret = null;
+ myvalue2.value = value;
+ return tools.saveInDBForTypes(
+ myq,
+ props.field2,
+ myvalue2.value,
+ props.type,
+ props.serv,
+ props.table,
+ props.fieldsel_tosee,
+ props.id,
+ props.indrec,
+ props.mysubsubkey,
+ props.specialField
+ );
+ }
+ }
function annulla(val: any) {
emit('annulla', true);
@@ -889,7 +933,7 @@ export default defineComponent({
myvalue.value = '';
} else {
myvalue.value = newVal.imagefile;
- newVal = tools.getDirUpload() + mypath.value + myvalue.value
+ newVal = tools.getDirUpload() + mypath.value + myvalue.value;
}
} else if (col.value.fieldtype === costanti.FieldType.imgcard) {
console.log('newVal.imagefile', newVal);
@@ -1204,6 +1248,8 @@ export default defineComponent({
colorPicker,
myColor,
hoverPreview,
+ myvaltosee,
+ modeEdit,
};
},
});
diff --git a/src/components/CMyPopupEdit/CMyPopupEdit.vue b/src/components/CMyPopupEdit/CMyPopupEdit.vue
index 27172bc7..017a8cbc 100755
--- a/src/components/CMyPopupEdit/CMyPopupEdit.vue
+++ b/src/components/CMyPopupEdit/CMyPopupEdit.vue
@@ -1282,15 +1282,19 @@