public function editUserPermissionAction() { if (isset($_GET['user_id'])) { $user_id = $_GET['user_id']; } $model = new Model_Wep(); $permissionSerialized = $model->getRowById('user_permission', 'user_id', $user_id); //print_r($permissionSerialized['object']);exit; $permissionObj = unserialize($permissionSerialized['object']); //print_r($permissionObj);exit; $default['fields'] = $permissionObj->getProperties(); $form = new Form_Admin_Editpermission(); $form->edit($default); if ($_POST) { try { $data = $_POST; $i = 0; //print_r($data);exit; $permissionObj = new Iati_WEP_UserPermission(); foreach ($data['default_fields'] as $eachField) { if ($eachField == 'add') { $permissionObj->setProperties('add_activity_elements'); $permissionObj->setProperties('add_activity'); $defaultKey[$i++] = 'add_activity_elements'; $defaultKey[$i++] = 'add_activity'; } elseif ($eachField == 'edit') { $permissionObj->setProperties('edit_activity_elements'); $permissionObj->setProperties('edit_activity'); $defaultKey[$i++] = 'edit_activity_elements'; $defaultKey[$i++] = 'edit_activity'; } else { if ($eachField == 'delete') { $permissionObj->setProperties('delete_activity'); $defaultKey[$i++] = 'delete_activity'; } else { $permissionObj->setProperties($eachField); $defaultKey[$i++] = $eachField; } } //$defaultKey[$i] = $eachField; //$i++; } $permissionObj->setProperties('view_activities'); $fieldString = serialize($permissionObj); $defaultFields['object'] = $fieldString; $defaultFields['user_id'] = $user_id; $defaultFieldId = $model->updateRow('user_permission', $defaultFields, 'user_id', $user_id); //print_r($defaultKey);exit; $privilegeFields['resource'] = serialize($defaultKey); $privilegeFields['owner_id'] = $user_id; $privilegeFieldId = $model->updateRow('Privilege', $privilegeFields, 'owner_id', $user_id); $this->_helper->FlashMessenger->addMessage(array('message' => 'User permission updated.')); $this->_redirect('admin/view-profile?user_id=' . $user_id); } catch (Exception $e) { print $e; } } $this->view->form = $form; if ($identity->role != 'superadmin') { $this->view->blockManager()->enable('partial/primarymenu.phtml'); $this->view->blockManager()->enable('partial/add-activity-menu.phtml'); $this->view->blockManager()->enable('partial/usermgmtmenu.phtml'); } }