diff --git a/ProcessMaker/Http/Controllers/Process/ScreenController.php b/ProcessMaker/Http/Controllers/Process/ScreenController.php index 109a4f523c..1ae64dc53b 100644 --- a/ProcessMaker/Http/Controllers/Process/ScreenController.php +++ b/ProcessMaker/Http/Controllers/Process/ScreenController.php @@ -56,7 +56,21 @@ public function index(Request $request) 'countCategories' => ScreenCategory::where(['status' => 'ACTIVE', 'is_system' => false])->count(), ]; - return view('processes.screens.index', compact('listConfig', 'catConfig')); + $myScreenTemplates = (object) [ + + ]; + + $publicScreenTemplates = (object) [ + + ]; + + return view('processes.screens.index', + compact( + 'listConfig', + 'catConfig', + 'myScreenTemplates', + 'publicScreenTemplates', + )); } /** diff --git a/resources/js/components/shared/EllipsisMenu.vue b/resources/js/components/shared/EllipsisMenu.vue index d100f218ff..ccbc57998b 100644 --- a/resources/js/components/shared/EllipsisMenu.vue +++ b/resources/js/components/shared/EllipsisMenu.vue @@ -25,6 +25,10 @@ + @@ -110,7 +114,22 @@ export default { components: { PmqlInput }, filters: { }, mixins: [], - props: ["actions", "permission", "data", "isDocumenterInstalled", "divider", "lauchpad", "customButton", "showProgress", "isPackageInstalled", "searchBar", "variant", "redirectTo", "redirectId"], + props: [ + "actions", + "permission", + "data", + "isDocumenterInstalled", + "divider", + "lauchpad", + "screenTemplate", + "customButton", + "showProgress", + "isPackageInstalled", + "searchBar", + "variant", + "redirectTo", + "redirectId", + ], data() { return { active: false, diff --git a/resources/js/components/shared/ellipsisMenuActions.js b/resources/js/components/shared/ellipsisMenuActions.js index 554373c513..05dd07a158 100644 --- a/resources/js/components/shared/ellipsisMenuActions.js +++ b/resources/js/components/shared/ellipsisMenuActions.js @@ -253,6 +253,31 @@ export default { permission: ["delete-decision_tables", "view-additional-asset-actions"] }, ], + myTemplateActions: [ + //TODO: Update My Template Ellipsis Menu Actions + { + value: "edit-template", + content: "Edit Template", + link: true, + href: "/designer/screen-builder/{{id}}/edit", + permission: ["edit-screens", "view-additional-asset-actions"], + icon: "fas fa-pen-square", + }, + { + value: "make-public", + content: "Make Public", + link: true, + href: "/designer/screens/{{id}}/edit", + permission: ["edit-screens", "view-additional-asset-actions"], + icon: "fas fa-file-export", + }, + { + value: "delete-template", + content: "Delete Template", + permission: ["delete-screens", "view-additional-asset-actions"], + icon: "fas fa-trash-alt", + }, + ], }; }, }; diff --git a/resources/js/processes/screen-templates/components/MyTemplatesListing.vue b/resources/js/processes/screen-templates/components/MyTemplatesListing.vue new file mode 100644 index 0000000000..91c4dfe4af --- /dev/null +++ b/resources/js/processes/screen-templates/components/MyTemplatesListing.vue @@ -0,0 +1,230 @@ + + + + + diff --git a/resources/js/processes/screen-templates/index.js b/resources/js/processes/screen-templates/index.js new file mode 100644 index 0000000000..2a0e9fcc79 --- /dev/null +++ b/resources/js/processes/screen-templates/index.js @@ -0,0 +1,26 @@ +import Vue from "vue"; +import MyTemplatesListing from "../screen-templates/components/MyTemplatesListing"; + +new Vue({ + el: "#myTemplatesIndex", + components: { + MyTemplatesListing, + }, + data: { + filter: "", + pmql: "", + urlPmql: "", + }, + methods: { + onNLQConversion(query) { + this.onChange(query); + this.reload(); + }, + onChange(query) { + this.pmql = query; + }, + reload() { + this.$refs.myTemplatesListing.fetch(); + }, + }, +}); diff --git a/resources/views/components/categorized_resource.blade.php b/resources/views/components/categorized_resource.blade.php index d5b1aa75f6..54dcb355be 100644 --- a/resources/views/components/categorized_resource.blade.php +++ b/resources/views/components/categorized_resource.blade.php @@ -46,6 +46,27 @@ @endisset + @elseif (isset($myScreenTemplates)) + @if ($catConfig->permissions['view']) + + @endif + + @else @if ($catConfig->permissions['view'] && $catConfig->routes->itemsIndexWeb !== "data-sources.index")