public function createDefaults($data, $accountId) { $model = new Model_Wep(); //Save default values $fieldString = $this->prepareDefaultFieldValues($data); $defaultValues['object'] = $fieldString; $defaultValues['account_id'] = $accountId; $defaultValuesId = $model->insertRowsToTable('default_field_values', $defaultValues); //Insert Default Fields $defaultFieldGroup = new Iati_WEP_AccountDisplayFieldGroup(); $default = array('title', 'description', 'activity_status', 'activity_date', 'participating_org', 'recipient_country', 'sector', 'budget', 'transaction'); foreach ($default as $eachField) { $defaultFieldGroup->setProperties($eachField); } $fieldString = serialize($defaultFieldGroup); $defaultFields['object'] = $fieldString; $defaultFields['account_id'] = $accountId; $defaultFieldId = $model->insertRowsToTable('default_field_groups', $defaultFields); }
/** * Function to register an organisation by Superadmin */ public function registerAction() { $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $is_admin = false; $identity = $auth->getIdentity(); if ($identity->role == "superadmin") { $this->view->blockManager()->disable('partial/primarymenu.phtml'); $this->view->blockManager()->disable('partial/add-activity-menu.phtml'); $this->view->blockManager()->disable('partial/usermgmtmenu.phtml'); $this->view->blockManager()->disable('partial/published-list.phtml'); $this->view->blockManager()->enable('partial/superadmin-menu.phtml'); $this->view->blockManager()->enable('partial/dashboard.phtml'); $is_admin = true; } } $defaultFieldsValues = new Iati_WEP_AccountDefaultFieldValues(); $default['field_values'] = $defaultFieldsValues->getDefaultFields(); $defaultFieldGroup = new Iati_WEP_AccountDisplayFieldGroup(); $default['fields'] = $defaultFieldGroup->getProperties(); $form = new Form_Wep_Accountregister(); $form->add($default); if ($this->getRequest()->isPost()) { try { $data = $this->getRequest()->getPost(); $model = new Model_Wep(); if (!$form->isValid($data)) { $form->populate($data); } else { //Save Account Info $account['name'] = $data['organisation_name']; $account['address'] = $data['organisation_address']; $account['username'] = $data['organisation_username']; $account['uniqid'] = md5(date('Y-m-d H:i:s')); $account_id = $model->insertRowsToTable('account', $account); //Save User Info $user['user_name'] = trim($data['organisation_username']) . "_admin"; $user['password'] = md5($data['password']); $user['role_id'] = 1; $user['email'] = $data['email']; $user['account_id'] = $account_id; $user['status'] = 1; $user_id = $model->insertRowsToTable('user', $user); //Save User Profile $admin['first_name'] = $data['first_name']; $admin['middle_name'] = $data['middle_name']; $admin['last_name'] = $data['last_name']; $admin['user_id'] = $user_id; $admin_id = $model->insertRowsToTable('profile', $admin); //Save Default Fields $default = new Model_Defaults(); $default->createDefaults($data, $account_id); $privilegeFields['resource'] = serialize($defaultKey); $privilegeFields['owner_id'] = $account_id; $privilegeFieldId = $model->insertRowsToTable('Privilege', $privilegeFields); //Send notification $data['user_name'] = $user['user_name']; $notification = new Model_Notification(); $notification->sendRegistrationNotifications($data); $this->_helper->FlashMessenger->addMessage(array('message' => "Account successfully registered.")); $this->_redirect('admin/list-organisation'); } } catch (Exception $e) { print $e->getMessage(); } } // Populate form with basic recommended default groups. $basic['default_fields'] = Iati_WEP_AccountDisplayFieldGroup::$defaults; $form->populate($basic); $this->view->form = $form; $this->view->blockManager()->disable('partial/primarymenu.phtml'); }