From a1d950672ae266120e52f543452450aaeef7906e Mon Sep 17 00:00:00 2001 From: Nolan Ehrstrom Date: Thu, 23 May 2024 15:34:13 -0700 Subject: [PATCH 1/4] Format launchpad process list for mobile --- ProcessMaker/Helpers/MobileHelper.php | 5 + .../ProcessesCatalogueController.php | 14 +- .../components/CardProcess.vue | 8 +- .../components/ProcessesCatalogue.vue | 164 +++++++++++++++--- .../components/menuCatologue.vue | 19 ++ .../components/utils/Card.vue | 53 ++++-- resources/sass/_variables.scss | 3 + .../views/layouts/navbarMobile.blade.php | 7 +- .../processes-catalogue/mobile.blade.php | 30 ++++ webpack.mix.js | 1 + 10 files changed, 268 insertions(+), 36 deletions(-) create mode 100644 resources/views/processes-catalogue/mobile.blade.php diff --git a/ProcessMaker/Helpers/MobileHelper.php b/ProcessMaker/Helpers/MobileHelper.php index f577f4284f..2d8254f763 100644 --- a/ProcessMaker/Helpers/MobileHelper.php +++ b/ProcessMaker/Helpers/MobileHelper.php @@ -13,4 +13,9 @@ public static function isMobile($userAgent) return false; } + + public static function detectMobile() + { + return isset($_SERVER['HTTP_USER_AGENT']) && self::isMobile($_SERVER['HTTP_USER_AGENT']); + } } diff --git a/ProcessMaker/Http/Controllers/ProcessesCatalogueController.php b/ProcessMaker/Http/Controllers/ProcessesCatalogueController.php index 7e333e24a7..4c394861f8 100644 --- a/ProcessMaker/Http/Controllers/ProcessesCatalogueController.php +++ b/ProcessMaker/Http/Controllers/ProcessesCatalogueController.php @@ -5,12 +5,13 @@ use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use ProcessMaker\Events\ScreenBuilderStarting; +use ProcessMaker\Helpers\MobileHelper; use ProcessMaker\Http\Controllers\Controller; use ProcessMaker\Managers\ScreenBuilderManager; -use ProcessMaker\Models\Process; use ProcessMaker\Models\Bookmark; -use ProcessMaker\Models\ProcessLaunchpad; +use ProcessMaker\Models\Process; use ProcessMaker\Models\ProcessCategory; +use ProcessMaker\Models\ProcessLaunchpad; use ProcessMaker\Traits\HasControllerAddons; /** @@ -22,7 +23,7 @@ class ProcessesCatalogueController extends Controller { use HasControllerAddons; - + public function index(Request $request, Process $process = null) { $manager = app(ScreenBuilderManager::class); @@ -33,6 +34,13 @@ public function index(Request $request, Process $process = null) $process->launchpad = ProcessLaunchpad::getLaunchpad(true, $process->id); $process->bookmark_id = Bookmark::getBookmarked(true, $process->id, $currentUser['id']); } + + if (MobileHelper::detectMobile()) { + $title = __('Process Browser'); + + return view('processes-catalogue.mobile', compact('title', 'process', 'currentUser', 'manager')); + } + return view('processes-catalogue.index', compact('process', 'currentUser', 'manager')); } } diff --git a/resources/js/processes-catalogue/components/CardProcess.vue b/resources/js/processes-catalogue/components/CardProcess.vue index f8ad2b7dac..49111e1425 100644 --- a/resources/js/processes-catalogue/components/CardProcess.vue +++ b/resources/js/processes-catalogue/components/CardProcess.vue @@ -154,10 +154,16 @@ export default { }; - diff --git a/resources/js/processes-catalogue/components/menuCatologue.vue b/resources/js/processes-catalogue/components/menuCatologue.vue index 83a4aec20f..103bafa69f 100644 --- a/resources/js/processes-catalogue/components/menuCatologue.vue +++ b/resources/js/processes-catalogue/components/menuCatologue.vue @@ -3,6 +3,7 @@
+

+
@import url("../../../sass/_scrollbar.scss"); +@import "~styles/variables"; i { font-size: 20px; color: #6a7888; @@ -313,4 +326,10 @@ i { padding: 12px 18px; gap: 16px; } + +.hide-on-mobile { + @media (max-width: $lp-breakpoint) { + display: none; + } +} diff --git a/resources/js/processes-catalogue/components/utils/Card.vue b/resources/js/processes-catalogue/components/utils/Card.vue index bd6731d64a..8afd51b6f0 100644 --- a/resources/js/processes-catalogue/components/utils/Card.vue +++ b/resources/js/processes-catalogue/components/utils/Card.vue @@ -4,15 +4,6 @@ class="card-process" > -
- -
+
+ +
@@ -101,7 +101,10 @@ export default { }; -