/** * Resolve maximum columns by dashboard id * @return int */ private function resolveMaximumColumnsByDashboardId() { $dashBoard = Dashboard::getById(intval($_GET['dashboardId'])); $layoutTypes = Dashboard::getLayoutTypesData(); $dashBoardType = $layoutTypes[$dashBoard->layoutType]; $maximumColumns = substr($dashBoardType, 0, 1); return $maximumColumns; }
public function actionPushDashboard($id) { $dashboard = Dashboard::getById(intval($id)); $modelClassName = get_class($dashboard); if (isset($_POST[$modelClassName])) { $groupsAndUsers = PushDashboardUtil::resolveGroupsAndUsersFromPost($_POST[$modelClassName]); PushDashboardUtil::pushDashboardToUsers($dashboard, $groupsAndUsers); Yii::app()->user->setFlash('notification', Zurmo::t('HomeModule', 'Dashboard pushed successfully')); $this->redirect(array('default/dashboardDetails', 'id' => $dashboard->id)); } $editView = new PushDashboardEditView($this->getId(), $this->getModule()->getId(), $dashboard, Zurmo::t('HomeModule', 'Push Dashboard')); $view = new HomePageView(ZurmoDefaultViewUtil::makeStandardViewForCurrentUser($this, $editView)); echo $view->render(); }
/** * Removes dashboard and related portlets * */ public function actionDeleteDashboard() { $id = intval($_GET['dashboardId']); $dashboard = Dashboard::getById($id); ControllerSecurityUtil::resolveAccessCanCurrentUserDeleteModel($dashboard); if ($dashboard->isDefault) { //todo: make a specific exception or view for this situation. throw new NotSupportedException(); } $portlets = Portlet::getByLayoutIdAndUserSortedById('HomeDashboard' . $id, Yii::app()->user->userModel->id); foreach ($portlets as $portlet) { $portlet->delete(); unset($portlet); } $dashboard->delete(); unset($dashboard); $this->redirect(array('default/index')); }