From e49c278705edf74be6fb73dd56e7886838a6637e Mon Sep 17 00:00:00 2001 From: axman Date: Tue, 22 Sep 2020 10:55:46 -0700 Subject: [PATCH] Initial widget skeleton --- GrouperWidget/Config/Schema/empty | 0 GrouperWidget/Console/Command/Task/empty | 0 GrouperWidget/Console/Templates/empty | 0 .../Controller/CoGrouperWidgetController.php | 71 +++++++++++++++++++ GrouperWidget/Controller/Component/empty | 0 .../Controller/GrouperWidgetAppController.php | 7 ++ GrouperWidget/Lib/empty | 0 GrouperWidget/Locale/eng/LC_MESSAGES/empty | 0 GrouperWidget/Model/Behavior/empty | 0 GrouperWidget/Model/CoGrouperWidget.php | 9 +++ GrouperWidget/Model/Datasource/empty | 0 GrouperWidget/Model/GrouperWidget.php | 11 +++ GrouperWidget/Model/GrouperWidgetAppModel.php | 7 ++ .../Test/Case/Controller/Component/empty | 0 GrouperWidget/Test/Case/Lib/empty | 0 GrouperWidget/Test/Case/Model/Behavior/empty | 0 .../Test/Case/Model/Datasource/empty | 0 GrouperWidget/Test/Case/View/Helper/empty | 0 GrouperWidget/Test/Fixture/empty | 0 GrouperWidget/View/Elements/empty | 0 GrouperWidget/View/Helper/empty | 0 GrouperWidget/View/Layouts/empty | 0 GrouperWidget/webroot/css/empty | 0 GrouperWidget/webroot/img/empty | 0 GrouperWidget/webroot/js/empty | 0 25 files changed, 105 insertions(+) create mode 100644 GrouperWidget/Config/Schema/empty create mode 100644 GrouperWidget/Console/Command/Task/empty create mode 100644 GrouperWidget/Console/Templates/empty create mode 100644 GrouperWidget/Controller/CoGrouperWidgetController.php create mode 100644 GrouperWidget/Controller/Component/empty create mode 100644 GrouperWidget/Controller/GrouperWidgetAppController.php create mode 100644 GrouperWidget/Lib/empty create mode 100644 GrouperWidget/Locale/eng/LC_MESSAGES/empty create mode 100644 GrouperWidget/Model/Behavior/empty create mode 100644 GrouperWidget/Model/CoGrouperWidget.php create mode 100644 GrouperWidget/Model/Datasource/empty create mode 100644 GrouperWidget/Model/GrouperWidget.php create mode 100644 GrouperWidget/Model/GrouperWidgetAppModel.php create mode 100644 GrouperWidget/Test/Case/Controller/Component/empty create mode 100644 GrouperWidget/Test/Case/Lib/empty create mode 100644 GrouperWidget/Test/Case/Model/Behavior/empty create mode 100644 GrouperWidget/Test/Case/Model/Datasource/empty create mode 100644 GrouperWidget/Test/Case/View/Helper/empty create mode 100644 GrouperWidget/Test/Fixture/empty create mode 100644 GrouperWidget/View/Elements/empty create mode 100644 GrouperWidget/View/Helper/empty create mode 100644 GrouperWidget/View/Layouts/empty create mode 100644 GrouperWidget/webroot/css/empty create mode 100644 GrouperWidget/webroot/img/empty create mode 100644 GrouperWidget/webroot/js/empty diff --git a/GrouperWidget/Config/Schema/empty b/GrouperWidget/Config/Schema/empty new file mode 100644 index 0000000..e69de29 diff --git a/GrouperWidget/Console/Command/Task/empty b/GrouperWidget/Console/Command/Task/empty new file mode 100644 index 0000000..e69de29 diff --git a/GrouperWidget/Console/Templates/empty b/GrouperWidget/Console/Templates/empty new file mode 100644 index 0000000..e69de29 diff --git a/GrouperWidget/Controller/CoGrouperWidgetController.php b/GrouperWidget/Controller/CoGrouperWidgetController.php new file mode 100644 index 0000000..5759dc2 --- /dev/null +++ b/GrouperWidget/Controller/CoGrouperWidgetController.php @@ -0,0 +1,71 @@ +CoServicesWidget->getConfig(); + + // For now simply provide the services portal URL for the current CO. All necessary + // logic is already attended to there. See: Views/CoServices/portal.ctp + $services_url = Router::url([ + 'plugin' => null, + 'controller' => 'co_services', + 'action' => 'portal', + 'co' => $this->cur_co['Co']['id'] + ]); + $this->set('vv_services_url', $services_url); + + // Pass the config so we know which div to overwrite + $this->set('vv_config', $cfg); + + } + + /** + * Authorization for this Controller, called by Auth component + * - precondition: Session.Auth holds data used for authz decisions + * - postcondition: $permissions set with calculated permissions + * + * @since COmanage Registry v3.2.0 + * @return Array Permissions + */ + + function isAuthorized() { + //TODO - Need to work on this + + $roles = $this->Role->calculateCMRoles(); + + // Determine what operations this user can perform + + // Construct the permission set for this user, which will also be passed to the view. + // Ask the parent to calculate the display permission, based on the configuration. + // Note that the display permission is set at the Dashboard, not Dashboard Widget level. + $p = $this->calculateParentPermissions($roles); + + // Delete an existing CO Services Widget? + $p['delete'] = ($roles['cmadmin'] || $roles['coadmin']); + + // Edit an existing CO Services Widget? + $p['edit'] = ($roles['cmadmin'] || $roles['coadmin']); + + // View an existing CO Services Widget? + $p['view'] = ($roles['cmadmin'] || $roles['coadmin']); + + $this->set('permissions', $p); + return($p[$this->action]); + } + +} diff --git a/GrouperWidget/Controller/Component/empty b/GrouperWidget/Controller/Component/empty new file mode 100644 index 0000000..e69de29 diff --git a/GrouperWidget/Controller/GrouperWidgetAppController.php b/GrouperWidget/Controller/GrouperWidgetAppController.php new file mode 100644 index 0000000..8255498 --- /dev/null +++ b/GrouperWidget/Controller/GrouperWidgetAppController.php @@ -0,0 +1,7 @@ +