Beispiel #1
0
 public function filters()
 {
     $modelClassName = $this->getModule()->getPrimaryModelName();
     $viewClassName = $modelClassName . 'EditAndDetailsView';
     $zeroModelsYetViewClassName = 'ProductTemplatesZeroModelsYetView';
     $pageViewClassName = 'ProductTemplatesPageView';
     //Need to remove the general access rights filter
     $filters = array_slice(parent::filters(), 1);
     $filters = array_merge(array(array(ZurmoBaseController::RIGHTS_FILTER_PATH . ' - modalList, selectFromRelatedList, details, autoCompleteAllProductCategoriesForMultiSelectAutoComplete', 'moduleClassName' => get_class($this->getModule()), 'rightName' => ProductTemplatesModule::getAccessRight()), array(ZurmoBaseController::REQUIRED_ATTRIBUTES_FILTER_PATH . ' + create, createFromRelation, edit', 'moduleClassName' => get_class($this->getModule()), 'viewClassName' => $viewClassName), array(static::ZERO_MODELS_CHECK_FILTER_PATH . ' + list, index', 'controller' => $this, 'zeroModelsYetViewClassName' => $zeroModelsYetViewClassName, 'modelClassName' => $modelClassName, 'pageViewClassName' => $pageViewClassName, 'defaultViewUtilClassName' => 'ProductDefaultViewUtil', 'activeActionElementType' => 'ProductTemplatesLink', 'breadcrumbLinks' => static::getListBreadcrumbLinks())), $filters);
     return $filters;
 }
 public function testRegularUserProductPortletAccess()
 {
     $benny = $this->logoutCurrentUserLoginNewUserAndGetByUsername('nobody');
     $account = AccountTestHelper::createAccountByNameForOwner('superAccount', Yii::app()->user->userModel);
     $superAccountId = $account->id;
     $benny->setRight('ProductTemplatesModule', ProductTemplatesModule::getAccessRight(), Right::DENY);
     $this->assertTrue($benny->save());
     $this->assertFalse(RightsUtil::canUserAccessModule('ProductTemplatesModule', $benny));
     $portlet = new Portlet();
     $portlet->column = 1;
     $portlet->position = 1;
     $portlet->layoutId = 'Test';
     $portlet->collapsed = true;
     $portlet->viewType = 'RssReader';
     $portlet->user = $benny;
     $this->assertTrue($portlet->save());
     $this->setGetArray(array('uniqueLayoutId' => 'AccountDetailsAndRelationsView_' . $portlet->id, 'portletId' => $portlet->id, 'relationAttributeName' => 'account', 'relationModelId' => $superAccountId, 'relationModuleId' => 'accounts', 'relationModelClassName' => 'Account'));
     $this->runControllerWithNoExceptionsAndGetContent('productTemplates/default/selectFromRelatedList');
 }