/**
  * Load role privileges
  *
  * @service
  * @anonym
  * @param Gpf_Rpc_Params $params
  * @return Gpf_Data_RecordSet
  */
 public function loadRolePrivileges(Gpf_Rpc_Params $params)
 {
     if (!Gpf_Session::getAuthUser()->hasPrivilege(Gpf_Privileges::ROLE, Gpf_Privileges::P_READ) && !Gpf_Session::getAuthUser()->hasPrivilege(Gpf_Privileges::ROLE, Pap_Privileges::P_READ_OWN)) {
         throw new Gpf_Rpc_PermissionDeniedException('Gpf_Role_RolePrivilegesForm', 'loadRolePrivileges');
     }
     $role = new Gpf_Db_Role();
     $role->setId($params->get('roleid'));
     $role->load();
     $defaultPrivileges = Gpf_Application::getInstance()->getDefaultPrivilegesByRoleType($role->getRoleType());
     $result = new Gpf_Data_RecordSet();
     $result->addColumn('object');
     $result->addColumn('objectName');
     $result->addColumn('possiblePrivileges');
     $result->addColumn('activePrivileges');
     $rolePrivileges = Gpf_Privileges::loadPrivileges($role->getId());
     foreach ($defaultPrivileges->getDefaultPrivileges() as $object => $privileges) {
         $record = new Gpf_Data_Record($result->getHeader());
         $record->add('object', $object);
         $record->add('objectName', ucfirst(str_replace('_', ' ', strtolower($object))));
         $allTypes = $defaultPrivileges->getObjectToTypeRelation();
         $record->add('possiblePrivileges', implode(',', $allTypes[$object]));
         if (array_key_exists($object, $rolePrivileges)) {
             $record->add('activePrivileges', implode(',', array_keys($rolePrivileges[$object])));
         } else {
             $record->add('activePrivileges', '');
         }
         $result->addRecord($record);
     }
     $result->sort('objectName');
     return $result;
 }
Beispiel #2
0
 public final function loadAfterAuthentication(Gpf_Data_Record $authData)
 {
     $this->loadAuthData($authData);
     $this->privileges = Gpf_Privileges::loadPrivileges($this->roleid);
     $this->init();
 }
Beispiel #3
0
 public function initPrivileges(Gpf_Privileges $privileges) {
     $privileges->addPrivilege('useridsequence', Gpf_Privileges::P_ALL);
 }
	protected function initObjectRelation() {
		$objectRelation = array_merge_recursive(parent::initObjectRelation(), array(
		self::ACCOUNT=>array(self::P_ADD, self::P_DELETE, self::P_READ, self::P_READ_OWN, self::P_WRITE, self::P_WRITE_OWN),
		self::ACCOUNT_NAME=>array(self::P_READ),
		self::ACCOUNT_NOTIFICATION=>array(self::P_READ, self::P_WRITE),
		self::ACCOUNT_SIGNUP_SETTING=>array(self::P_READ, self::P_WRITE),
		self::ACCOUNTING_STATS=>array(self::P_READ, self::P_READ_OWN),
		self::ADVANCED_FUNCTIONALITY=>array(self::P_READ),
		self::AFFIILIATE_SCREEN=>array(self::P_READ),
		self::AFFILIATE=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::AFFILIATE_EMAIL_NOTIFICATION=>array(self::P_READ, self::P_WRITE),
		self::AFFILIATE_INVOICE=>array(self::P_READ, self::P_READ_OWN),
		self::AFFILIATE_LOGIN_FORM=>array(self::P_READ),
		self::AFFILIATE_PANEL_SETTINGS=>array(self::P_ADD, self::P_DELETE, self::P_READ, self::P_WRITE),
		self::AFFILIATE_SETTINGS=>array(self::P_READ, self::P_WRITE),
		self::AFFILIATE_SIGNUP_FORM=>array(self::P_READ),
		self::AFFILIATE_SIGNUP_SETTING=>array(self::P_READ, self::P_WRITE),
		self::AFFILIATE_STATS=>array(self::P_READ),
		self::AFFILIATE_TRACKING_CODE=>array(self::P_DELETE, self::P_READ, self::P_READ_OWN, self::P_WRITE, self::P_WRITE_OWN),
		self::AFFILIATE_TREE=>array(self::P_READ),
		self::AFFILIATES_OVERVIEW=>array(self::P_READ),
		self::BANNER=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::BANNER_FORMAT_SETTING=>array(self::P_READ, self::P_WRITE),
		self::BANNER_STATS=>array(self::P_READ),
		self::BANNERS_CATEGORIES=>array(self::P_ADD, self::P_READ, self::P_WRITE),
		self::BANNERS_OVERVIEW=>array(self::P_READ),
		self::BRANDING=>array(self::P_READ, self::P_WRITE),
		self::CAMPAIGN=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::CAMPAIGN_STATS=>array(self::P_READ),
		self::CAMPAIGNS_CATEGORIES=>array(self::P_ADD, self::P_READ, self::P_WRITE),
		self::CAMPAIGNS_OVERVIEW=>array(self::P_READ),
		self::CCBILL_SETTINGS=>array(self::P_READ, self::P_WRITE),
		self::CHANNEL=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::CLICK=>array(self::P_DELETE, self::P_EXPORT, self::P_EXPORT_OWN, self::P_READ, self::P_READ_OWN),
		self::CLICK_INTEGRATION=>array(self::P_READ),
		self::COMMISSION=>array(self::P_READ, self::P_WRITE),
		self::COMMISSION_GROUP=>array(self::P_ADD, self::P_DELETE, self::P_READ, self::P_WRITE),
		self::COMMUNICATION_OVERVIEW=>array(self::P_READ),
		self::COMPRESSED_COMMISSION_PLACEMENT_MODEL=>array(self::P_READ, self::P_WRITE),
		self::CONFIGURATION_OVERVIEW=>array(self::P_READ),
		self::CONTACT_US=>array(self::P_WRITE),
		self::COOKIES_SETTING=>array(self::P_READ, self::P_WRITE),
		self::COUNTRY=>array(self::P_READ),
		self::COUPON=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_IMPORT, self::P_READ, self::P_WRITE),
		self::COUPON_SALE=>array(self::P_ADD),
		self::CRONJOB=>array(self::P_READ, self::P_WRITE),
		self::CURRENCY=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::CUSTOM_FIELD_ID=>array(self::P_READ, self::P_WRITE),
		self::CUSTOM_REFID_SETTINGS=>array(self::P_READ, self::P_WRITE),
		self::CUSTOM_SEPARATOR=>array(self::P_READ, self::P_WRITE),
		self::DAILY_REPORT=>array(self::P_READ),
		self::DATABASE=>array(self::P_ANALYZE, self::P_EXPORT, self::P_OPTIMIZE, self::P_READ, self::P_REPAIR),
		self::DB_FILE=>array(self::P_WRITE),
		self::DIRECT_LINK=>array(self::P_ADD, self::P_ADD_OWN, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_READ_OWN, self::P_WRITE),
		self::FINANCIAL_OVERVIEW=>array(self::P_READ),
		self::FORM_FIELD=>array(self::P_READ, self::P_WRITE),
		self::FRAUD_PROTECTION=>array(self::P_READ, self::P_WRITE),
		self::GENERAL_LINK=>array(self::P_READ),
		self::GENERAL_SETTING=>array(self::P_READ, self::P_WRITE),
		self::GETTING_STARTED=>array(self::P_READ, self::P_WRITE),
		self::GRID_VIEW=>array(self::P_WRITE),
		self::IMPORT_EXPORT=>array(self::P_IMPORT),
		self::INTEGRATION_METHODS=>array(self::P_READ),
		self::INTEGRATION_OVERVIEW=>array(self::P_READ),
		self::INVOICE=>array(self::P_ADD, self::P_DELETE, self::P_READ, self::P_READ_OWN, self::P_WRITE),
		self::INVOICE_FORMAT=>array(self::P_READ, self::P_WRITE),
		self::LIFETIME_COMM_SETTINGS=>array(self::P_READ, self::P_WRITE),
		self::LINK_CLOAKER=>array(self::P_READ),
		self::LOGGING_SETTING=>array(self::P_READ, self::P_WRITE),
		self::MAIL_TEMPLATE=>array(self::P_READ),
		self::MAPOVERLAY=>array(self::P_EXPORT, self::P_READ),
		self::MASS_EMAIL=>array(self::P_WRITE),
		self::MERCH_EMAIL_NOTIFICATION=>array(self::P_READ, self::P_WRITE),
		self::MERCHANT=>array(self::P_ADD, self::P_DELETE, self::P_READ, self::P_READ_OWN, self::P_WRITE),
		self::NETWORK_INVOICE_FORMAT=>array(self::P_READ, self::P_WRITE),
		self::ONLINE_USER=>array(self::P_EXPORT, self::P_READ),
		self::PARAMETER_NAMES=>array(self::P_READ, self::P_WRITE),
		self::PAY_AFFILIATE=>array(self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::PAY_AFFILIATE_STATS=>array(self::P_READ),
		self::PAYOUT=>array(self::P_EXPORT, self::P_EXPORT_OWN, self::P_READ, self::P_READ_OWN),
		self::PAYOUT_HISTORY=>array(self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::PAYOUT_OPTION=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::PAYOUTS_OVERVIEW=>array(self::P_READ),
		self::PDF=>array(self::P_READ, self::P_WRITE),
		self::PENDING_TASK=>array(self::P_READ),
		self::PERIOD_STATS=>array(self::P_READ),
		self::PROMOTION_OVERVIEW=>array(self::P_READ),
		self::QUICK_STATS=>array(self::P_READ),
		self::RECURRING_COMMISSIONS_CONFIG=>array(self::P_READ, self::P_WRITE),
		self::RECURRING_TRANSACTION=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::REFIDLENGTH=>array(self::P_READ, self::P_WRITE),
		self::REPORT_PROBLEM=>array(self::P_WRITE),
		self::REPORTS_OVERVIEW=>array(self::P_READ),
		self::RESEND_URL=>array(self::P_READ, self::P_WRITE),
		self::ROLE=>array(self::P_READ, self::P_READ_OWN, self::P_WRITE),
		self::ROLE_NAME=>array(self::P_READ, self::P_READ_OWN),
		self::RULE=>array(self::P_ADD, self::P_DELETE, self::P_READ, self::P_WRITE),
		self::SPLIT_COMMISSIONS_FORM=>array(self::P_LOAD, self::P_WRITE),
		self::SUB_AFF_SALE=>array(self::P_EXPORT, self::P_READ),
		self::SUB_AFF_STATS=>array(self::P_READ),
		self::SUBID_TRACKING=>array(self::P_READ),
		self::THEME=>array(self::P_READ, self::P_WRITE),
		self::TOOLS_OVERVIEW=>array(self::P_READ),
		self::TRACKING_MOD_REWRITE=>array(self::P_READ, self::P_WRITE),
		self::TRACKING_SETTING=>array(self::P_READ, self::P_WRITE),
		self::TRAFFIC_STATS=>array(self::P_READ),
		self::TRANSACTION=>array(self::P_ADD, self::P_APPROVE_PENDING, self::P_DECLINE_PENDING, self::P_DELETE, self::P_EXPORT, self::P_EXPORT_OWN, self::P_READ, self::P_READ_OWN, self::P_REFUND, self::P_WRITE),
		self::TRANSACTION_STATS=>array(self::P_READ),
		self::TRANSACTIONS_OVERVIEW=>array(self::P_READ),
		self::TREND_STATS=>array(self::P_READ),
		self::TROUBLESHOOTING=>array(self::P_READ),
		self::URL_SETTING=>array(self::P_READ, self::P_WRITE),
		self::USER_COMM_GROUP=>array(self::P_ADD, self::P_DELETE, self::P_EXPORT, self::P_READ, self::P_WRITE),
		self::USER_IN_COMMISSION_GROUP=>array(self::P_ADD, self::P_DELETE, self::P_READ, self::P_WRITE),
		self::USERIDSEQUENCE=>array(self::P_READ, self::P_WRITE),
		self::VAT_SETTING=>array(self::P_READ, self::P_WRITE),
		self::VIEWS=>array(self::P_READ, self::P_WRITE),
		self::VISITOR_AFFILIATES=>array(self::P_READ)
		));

		foreach ($objectRelation as $key => $value) {
			$objectRelation[$key] = array_unique($value);
		}
		return $objectRelation;
	}
Beispiel #5
0
 public function initPrivileges(Gpf_Privileges $privileges) {
     $privileges->addPrivilege('googlemaps', Gpf_Privileges::P_ALL);
 }
Beispiel #6
0
 public function initPrivileges(Gpf_Privileges $privileges) {
     $privileges->addPrivilege('refidlength', Gpf_Privileges::P_ALL);
 }