diff --git a/.eslintrc.js b/.eslintrc.js index 25268dcdb..8f4afebac 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -11,6 +11,7 @@ module.exports = { ], globals: { 'BEDITA': true, + 'BEDITA_I18N': true, 'tinymce': true, 'vue': true }, diff --git a/config/app_local.example.php b/config/app_local.example.php index 67a3eb9df..a292334e0 100644 --- a/config/app_local.example.php +++ b/config/app_local.example.php @@ -626,6 +626,7 @@ * - index: index settings. 'copy2clipboard' enables "onmouseover" of index general cells showing copy to clipboard button * - modules: modules settings. 'counters' to show counters in modules; 'all', 'none', to show all, none or custom modules. Default is ['trash'] * - richeditor: richeditor settings per field: you can set 'config' and 'toolbar' per single field. + * - fast_create_form: custom element to use for fast create form */ // 'UI' => [ // 'index' => [ @@ -662,6 +663,9 @@ // ], // ], // ], + // 'fast_create_form' => [ + // '_element' => 'MyPlugin.Form/fast_create', + // ], // ], /** diff --git a/locales/default.pot b/locales/default.pot index 51a250dbc..07fee79ea 100644 --- a/locales/default.pot +++ b/locales/default.pot @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: BEdita 4 \n" -"POT-Creation-Date: 2024-12-19 11:17:51 \n" +"POT-Creation-Date: 2025-02-13 09:15:27 \n" "MIME-Version: 1.0 \n" "Content-Transfer-Encoding: 8bit \n" "Language-Team: BEdita I18N & I10N Team \n" @@ -133,9 +133,6 @@ msgstr "" msgid "Choose a file" msgstr "" -msgid "Choose a type" -msgstr "" - msgid "City" msgstr "" @@ -313,9 +310,6 @@ msgstr "" msgid "Failed to write file to disk" msgstr "" -msgid "File" -msgstr "" - msgid "File Name" msgstr "" @@ -922,9 +916,6 @@ msgstr "" msgid "Upload multiple" msgstr "" -msgid "Url" -msgstr "" - msgid "User Accesses" msgstr "" @@ -973,6 +964,9 @@ msgstr "" msgid "You are not authorized to access that location." msgstr "" +msgid "You are not authorized to access this resource" +msgstr "" + msgid "You do not have the required permissions to view this page." msgstr "" @@ -1021,12 +1015,6 @@ msgstr "" msgid "controls" msgstr "" -msgid "create" -msgstr "" - -msgid "create new for" -msgstr "" - msgid "created" msgstr "" @@ -1108,9 +1096,6 @@ msgstr "" msgid "remove" msgstr "" -msgid "reset" -msgstr "" - msgid "scheduled_from" msgstr "" @@ -1758,6 +1743,42 @@ msgstr "" msgid "Trashed" msgstr "" +msgid "Latitude" +msgstr "" + +msgid "Longitude" +msgstr "" + +msgid "Canceled" +msgstr "" + +msgid "Choose file" +msgstr "" + +msgid "File upload" +msgstr "" + +msgid "No file selected" +msgstr "" + +msgid "Replace media" +msgstr "" + +msgid "Uploading..." +msgstr "" + +msgid "Upload succeeded" +msgstr "" + +msgid "Choose a type" +msgstr "" + +msgid "Click here to start" +msgstr "" + +msgid "Fast create" +msgstr "" + msgid "Insert date(s)" msgstr "" diff --git a/locales/en_US/default.po b/locales/en_US/default.po index 565bb16c4..ec3c4ed5e 100644 --- a/locales/en_US/default.po +++ b/locales/en_US/default.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: BEdita Manager \n" -"POT-Creation-Date: 2024-12-19 11:17:51 \n" +"POT-Creation-Date: 2025-02-13 09:15:27 \n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: BEdita I18N & I10N Team \n" @@ -136,9 +136,6 @@ msgstr "" msgid "Choose a file" msgstr "" -msgid "Choose a type" -msgstr "" - msgid "City" msgstr "" @@ -316,9 +313,6 @@ msgstr "" msgid "Failed to write file to disk" msgstr "" -msgid "File" -msgstr "" - msgid "File Name" msgstr "" @@ -925,9 +919,6 @@ msgstr "" msgid "Upload multiple" msgstr "" -msgid "Url" -msgstr "" - msgid "User Accesses" msgstr "" @@ -976,6 +967,9 @@ msgstr "" msgid "You are not authorized to access that location." msgstr "" +msgid "You are not authorized to access this resource" +msgstr "" + msgid "You do not have the required permissions to view this page." msgstr "" @@ -1024,12 +1018,6 @@ msgstr "" msgid "controls" msgstr "" -msgid "create" -msgstr "" - -msgid "create new for" -msgstr "" - msgid "created" msgstr "" @@ -1111,9 +1099,6 @@ msgstr "" msgid "remove" msgstr "" -msgid "reset" -msgstr "" - msgid "scheduled_from" msgstr "" @@ -1761,6 +1746,42 @@ msgstr "" msgid "Trashed" msgstr "" +msgid "Latitude" +msgstr "" + +msgid "Longitude" +msgstr "" + +msgid "Canceled" +msgstr "" + +msgid "Choose file" +msgstr "" + +msgid "File upload" +msgstr "" + +msgid "No file selected" +msgstr "" + +msgid "Replace media" +msgstr "" + +msgid "Uploading..." +msgstr "" + +msgid "Upload succeeded" +msgstr "" + +msgid "Choose a type" +msgstr "" + +msgid "Click here to start" +msgstr "" + +msgid "Fast create" +msgstr "" + msgid "Insert date(s)" msgstr "" diff --git a/locales/it_IT/default.po b/locales/it_IT/default.po index 8b5e6e247..b4fe6f4c6 100644 --- a/locales/it_IT/default.po +++ b/locales/it_IT/default.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: BEdita Manager \n" -"POT-Creation-Date: 2024-12-19 11:17:51 \n" +"POT-Creation-Date: 2025-02-13 09:15:27 \n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: BEdita I18N & I10N Team \n" @@ -138,9 +138,6 @@ msgstr "Ordinamento contenuti" msgid "Choose a file" msgstr "Scegli un file" -msgid "Choose a type" -msgstr "Selezionare un tipo" - msgid "City" msgstr "Città" @@ -318,9 +315,6 @@ msgstr "Esporta Filtrati" msgid "Failed to write file to disk" msgstr "Scrittura file su disco fallita" -msgid "File" -msgstr "" - msgid "File Name" msgstr "Nome File" @@ -931,9 +925,6 @@ msgstr "Carica file locale" msgid "Upload multiple" msgstr "Upload multiplo" -msgid "Url" -msgstr "" - msgid "User Accesses" msgstr "Accessi utente" @@ -982,6 +973,9 @@ msgstr "Sì" msgid "You are not authorized to access that location." msgstr "Non sei autorizzato ad accedere a quest'area." +msgid "You are not authorized to access this resource" +msgstr "Non sei autorizzato ad accedere a questa risorsa" + msgid "You do not have the required permissions to view this page." msgstr "Non hai i permessi necessari per visualizzare questa pagina." @@ -1030,12 +1024,6 @@ msgstr "contesto" msgid "controls" msgstr "" -msgid "create" -msgstr "crea" - -msgid "create new for" -msgstr "crea nuovo per" - msgid "created" msgstr "creato" @@ -1117,9 +1105,6 @@ msgstr "" msgid "remove" msgstr "rimuovi" -msgid "reset" -msgstr "" - msgid "scheduled_from" msgstr "programmato da" @@ -1667,7 +1652,8 @@ msgstr "Valido" msgid "" "Sorry, your browser does not support embedded audio element" msgstr "" -"Spiacenti, il tuo browser non supporta l'elemento audio incorporato" +"Spiacenti, il tuo browser non supporta l'elemento audio " +"incorporato" msgid "Cannot produce a thumbnail for this file" msgstr "Impossibile produrre una miniatura per questo file" @@ -1684,7 +1670,8 @@ msgstr "Apri immagine" msgid "" "Sorry, your browser does not support embedded video element" msgstr "" -"Spiacenti, il tuo browser non supporta l'elemento video incorporato" +"Spiacenti, il tuo browser non supporta l'elemento video " +"incorporato" msgid "View original" msgstr "Vedi originale" @@ -1782,6 +1769,42 @@ msgstr "data" msgid "Trashed" msgstr "Rimosso" +msgid "Latitude" +msgstr "Latitudine" + +msgid "Longitude" +msgstr "Longitudine" + +msgid "Canceled" +msgstr "Annullato" + +msgid "Choose file" +msgstr "Scegli file" + +msgid "File upload" +msgstr "Upload file" + +msgid "No file selected" +msgstr "Nessun file selezionato" + +msgid "Replace media" +msgstr "Sostituisci media" + +msgid "Uploading..." +msgstr "Caricamento in corso..." + +msgid "Upload succeeded" +msgstr "Caricamento riuscito" + +msgid "Choose a type" +msgstr "Selezionare un tipo" + +msgid "Click here to start" +msgstr "Clicca qui per iniziare" + +msgid "Fast create" +msgstr "Creazione rapida" + msgid "Insert date(s)" msgstr "Inserire data(e)" diff --git a/resources/js/app/app.js b/resources/js/app/app.js index e3c227423..913fcbade 100644 --- a/resources/js/app/app.js +++ b/resources/js/app/app.js @@ -93,6 +93,20 @@ const _vueInstance = new Vue({ BarChart:() => import(/* webpackChunkName: "bar-chart" */'app/components/charts/bar-chart'), SortRelated: () => import(/* webpackChunkName: "sort-related" */'app/components/sort-related/sort-related'), MediaItem: () => import(/* webpackChunkName: "media-item" */'app/components/media-item/media-item'), + FastCreate: () => import(/* webpackChunkName: "fast-create" */'app/components/fast-create/fast-create'), + FormField: () => import(/* webpackChunkName: "form-field" */'app/components/fast-create/form-field'), + FileUpload: () => import(/* webpackChunkName: "file-upload" */'app/components/file-upload/file-upload'), + FieldCheckbox: () => import(/* webpackChunkName: "field-checkbox" */'app/components/form/field-checkbox'), + FieldDate: () => import(/* webpackChunkName: "field-date" */'app/components/form/field-date'), + FieldGeoCoordinates: () => import(/* webpackChunkName: "field-geo-coordinates" */'app/components/form/field-geo-coordinates'), + FieldInteger: () => import(/* webpackChunkName: "field-integer" */'app/components/form/field-integer'), + FieldJson: () => import(/* webpackChunkName: "field-json" */'app/components/form/field-json'), + FieldNumber: () => import(/* webpackChunkName: "field-number" */'app/components/form/field-number'), + FieldRadio: () => import(/* webpackChunkName: "field-radio" */'app/components/form/field-radio'), + FieldSelect: () => import(/* webpackChunkName: "field-select" */'app/components/form/field-select'), + FieldString: () => import(/* webpackChunkName: "field-string" */'app/components/form/field-string'), + FieldTextarea: () => import(/* webpackChunkName: "field-textarea" */'app/components/form/field-textarea'), + FieldTitle: () => import(/* webpackChunkName: "field-title" */'app/components/form/field-title'), AppIcon, }, @@ -601,3 +615,18 @@ window._vueInstance = _vueInstance; // use component everywhere in Manager Vue.component('AppIcon', AppIcon); +Vue.component('DateRangesView', _vueInstance.$options.components.DateRangesView); +Vue.component('FieldCheckbox', _vueInstance.$options.components.FieldCheckbox); +Vue.component('FieldGeoCoordinates', _vueInstance.$options.components.FieldGeoCoordinates); +Vue.component('FieldDate', _vueInstance.$options.components.FieldDate); +Vue.component('FieldInteger', _vueInstance.$options.components.FieldInteger); +Vue.component('FieldJson', _vueInstance.$options.components.FieldJson); +Vue.component('FieldNumber', _vueInstance.$options.components.FieldNumber); +Vue.component('FieldRadio', _vueInstance.$options.components.FieldRadio); +Vue.component('FieldSelect', _vueInstance.$options.components.FieldSelect); +Vue.component('FieldString', _vueInstance.$options.components.FieldString); +Vue.component('FieldTextarea', _vueInstance.$options.components.FieldTextarea); +Vue.component('FieldTitle', _vueInstance.$options.components.FieldTitle); +Vue.component('FileUpload', _vueInstance.$options.components.FileUpload); +Vue.component('ObjectCategories', _vueInstance.$options.components.ObjectCategories); +Vue.component('ObjectCaptions', _vueInstance.$options.components.ObjectCaptions); diff --git a/resources/js/app/components/date-ranges-view/date-ranges-view.vue b/resources/js/app/components/date-ranges-view/date-ranges-view.vue index f7e00d36e..5e7932c85 100644 --- a/resources/js/app/components/date-ranges-view/date-ranges-view.vue +++ b/resources/js/app/components/date-ranges-view/date-ranges-view.vue @@ -152,6 +152,7 @@ export default { } } this.dateRangesJson = JSON.stringify(dr); + this.$emit('update', this.dateRangesJson); }, updateData(data) { return { diff --git a/resources/js/app/components/fast-create/fast-create.vue b/resources/js/app/components/fast-create/fast-create.vue new file mode 100644 index 000000000..f6ce0e866 --- /dev/null +++ b/resources/js/app/components/fast-create/fast-create.vue @@ -0,0 +1,314 @@ + + + diff --git a/resources/js/app/components/fast-create/form-field.vue b/resources/js/app/components/fast-create/form-field.vue new file mode 100644 index 000000000..785758841 --- /dev/null +++ b/resources/js/app/components/fast-create/form-field.vue @@ -0,0 +1,284 @@ + + + diff --git a/resources/js/app/components/file-upload/file-upload.vue b/resources/js/app/components/file-upload/file-upload.vue new file mode 100644 index 000000000..8eba77d5e --- /dev/null +++ b/resources/js/app/components/file-upload/file-upload.vue @@ -0,0 +1,286 @@ + + + diff --git a/resources/js/app/components/form/field-checkbox.vue b/resources/js/app/components/form/field-checkbox.vue new file mode 100644 index 000000000..38485db2f --- /dev/null +++ b/resources/js/app/components/form/field-checkbox.vue @@ -0,0 +1,43 @@ + + diff --git a/resources/js/app/components/form/field-date.vue b/resources/js/app/components/form/field-date.vue new file mode 100644 index 000000000..ad3a01e26 --- /dev/null +++ b/resources/js/app/components/form/field-date.vue @@ -0,0 +1,47 @@ + + diff --git a/resources/js/app/components/form/field-geo-coordinates.vue b/resources/js/app/components/form/field-geo-coordinates.vue new file mode 100644 index 000000000..a6dc9bda3 --- /dev/null +++ b/resources/js/app/components/form/field-geo-coordinates.vue @@ -0,0 +1,105 @@ + + diff --git a/resources/js/app/components/form/field-integer.vue b/resources/js/app/components/form/field-integer.vue new file mode 100644 index 000000000..03920efb9 --- /dev/null +++ b/resources/js/app/components/form/field-integer.vue @@ -0,0 +1,39 @@ + + diff --git a/resources/js/app/components/form/field-json.vue b/resources/js/app/components/form/field-json.vue new file mode 100644 index 000000000..7ce00c0bc --- /dev/null +++ b/resources/js/app/components/form/field-json.vue @@ -0,0 +1,54 @@ +