Example #1
0
 /**
  * @param mixed $handler_id The ID of the handler.
  * @param Array $args The argument list.
  * @param Array &$data The local request data.
  */
 public function _handler_new($handler_id, array $args, array &$data)
 {
     midcom::get('auth')->require_valid_user();
     midcom::get('auth')->require_user_do('midgard:create', null, 'org_openpsa_sales_salesproject_dba');
     $this->_defaults['code'] = org_openpsa_sales_salesproject_dba::generate_salesproject_number();
     $this->_defaults['owner'] = midcom_connection::get_user();
     if (!isset($this->_datamanager)) {
         $this->_initialize_datamanager($this->_config->get('schemadb_salesproject'));
     }
     $this->_load_create_controller();
     switch ($this->_controller->process_form()) {
         case 'save':
             // Relocate to main view
             $prefix = midcom_core_context::get()->get_key(MIDCOM_CONTEXT_ANCHORPREFIX);
             return new midcom_response_relocate($prefix . "salesproject/edit/" . $this->_salesproject->guid . "/");
         case 'cancel':
             return new midcom_response_relocate('');
     }
     $this->_request_data['controller'] =& $this->_controller;
     midcom::get('head')->set_pagetitle(sprintf($this->_l10n_midcom->get('create %s'), $this->_l10n->get('salesproject')));
     // Add toolbar items
     org_openpsa_helpers::dm2_savecancel($this);
 }