/** * testGetNextLayoutId */ public function testCreateDashboardFromPost() { $user = User::getByUserName('billy'); Yii::app()->user->userModel = $user; $dashboard = new Dashboard(); $dashboard->owner = $user; $dashboard->layoutId = Dashboard::getNextLayoutId(); $fakePost = array('name' => 'abc123', 'layoutType' => '50,50'); $dashboard->setAttributes($fakePost); $dashboard->validate(); $this->assertEquals(array(), $dashboard->getErrors()); $this->assertTrue($dashboard->save()); }
public function actionCreateDashboard() { $dashboard = new Dashboard(); if (isset($_POST['Dashboard'])) { $dashboard->owner = Yii::app()->user->userModel; $dashboard->layoutId = Dashboard::getNextLayoutId(); $dashboard->setAttributes($_POST['Dashboard']); assert('in_array($dashboard->layoutType, array_keys(Dashboard::getLayoutTypesData()))'); if ($dashboard->save()) { GeneralCache::forgetAll(); //Ensure menu refreshes $this->redirect(array('default/dashboardDetails', 'id' => $dashboard->id)); } } $editView = new DashboardEditView($this->getId(), $this->getModule()->getId(), $dashboard, Zurmo::t('HomeModule', 'Create Dashboard')); $view = new HomePageView(ZurmoDefaultViewUtil::makeStandardViewForCurrentUser($this, $editView)); echo $view->render(); }