protected function populate(int $party_id, &$party) { if ($party == null) { $party = new rental_party((int) $party_id); $party->set_account_number($this->unmarshal($this->db->f('account_number'), 'string')); $party->set_address_1($this->unmarshal($this->db->f('address_1'), 'string')); $party->set_address_2($this->unmarshal($this->db->f('address_2'), 'string')); $party->set_comment($this->unmarshal($this->db->f('comment'), 'string')); $party->set_company_name($this->unmarshal($this->db->f('company_name'), 'string')); $party->set_department($this->unmarshal($this->db->f('department'), 'string')); $party->set_email($this->unmarshal($this->db->f('email'), 'string')); $party->set_fax($this->unmarshal($this->db->f('fax'), 'string')); $party->set_first_name($this->unmarshal($this->db->f('first_name'), 'string')); $party->set_is_inactive($this->unmarshal($this->db->f('is_inactive'), 'bool')); $party->set_last_name($this->unmarshal($this->db->f('last_name'), 'string')); $party->set_location_id($this->unmarshal($this->db->f('org_location_id'), 'int')); $party->set_identifier($this->unmarshal($this->db->f('identifier'), 'string')); $party->set_mobile_phone($this->unmarshal($this->db->f('mobile_phone'), 'string')); $party->set_place($this->unmarshal($this->db->f('place'), 'string')); $party->set_postal_code($this->unmarshal($this->db->f('postal_code'), 'string')); $party->set_reskontro($this->unmarshal($this->db->f('reskontro'), 'string')); $party->set_title($this->unmarshal($this->db->f('title'), 'string')); $party->set_url($this->unmarshal($this->db->f('url'), 'string')); $party->set_org_enhet_id($this->unmarshal($this->db->f('org_enhet_id'), 'string')); $party->set_unit_leader($this->unmarshal($this->db->f('unit_leader'), 'string')); $sync_message = $party->set_sync_data(array('responsibility_id' => $this->unmarshal($this->db->f('responsibility_id'), 'string'), 'org_enhet_id' => $this->unmarshal($this->db->f('org_enhet_id'), 'string'), 'result_unit_number' => $this->unmarshal($this->db->f('result_unit_number'), 'string'))); if (isset($sync_message) && $sync_message != '') { $party->add_sync_problem($sync_message); } } return $party; }
function populate(int $contract_id, &$contract) { if ($contract == null) { $contract_id = (int) $contract_id; $contract = new rental_contract($contract_id); $contract->set_contract_date(new rental_contract_date($this->unmarshal($this->db->f('date_start'), 'int'), $this->unmarshal($this->db->f('date_end'), 'int'))); $contract->set_billing_start_date($this->unmarshal($this->db->f('billing_start'), 'int')); $contract->set_billing_end_date($this->unmarshal($this->db->f('billing_end'), 'int')); $contract->set_old_contract_id($this->unmarshal($this->db->f('old_contract_id'), 'string')); $contract->set_contract_type_title($this->unmarshal($this->db->f('title'), 'string')); $contract->set_comment($this->unmarshal($this->db->f('comment'), 'string')); $contract->set_last_edited_by_current_user($this->unmarshal($this->db->f('edited_on'), 'int')); $contract->set_location_id($this->unmarshal($this->db->f('location_id'), 'int')); $contract->set_last_updated($this->unmarshal($this->db->f('last_updated'), 'int')); $contract->set_service_id($this->unmarshal($this->db->f('service_id'), 'string')); $contract->set_responsibility_id($this->unmarshal($this->db->f('responsibility_id'), 'string')); $contract->set_reference($this->unmarshal($this->db->f('reference'), 'string')); $contract->set_invoice_header($this->unmarshal($this->db->f('invoice_header'), 'string')); $contract->set_account_in($this->unmarshal($this->db->f('account_in'), 'string')); $contract->set_account_out($this->unmarshal($this->db->f('account_out'), 'string')); $contract->set_project_id($this->unmarshal($this->db->f('project_id'), 'string')); $contract->set_executive_officer_id($this->unmarshal($this->db->f('executive_officer'), 'int')); $contract->set_term_id($this->unmarshal($this->db->f('term_id'), 'int')); $contract->set_term_id_title($this->unmarshal($this->db->f('term_title'), 'string')); $contract->set_security_type($this->unmarshal($this->db->f('security_type'), 'int')); $contract->set_security_amount($this->unmarshal($this->db->f('security_amount'), 'string')); $contract->set_due_date($this->unmarshal($this->db->f('due_date'), 'int')); $contract->set_contract_type_id($this->unmarshal($this->db->f('contract_type_id'), int)); $contract->set_rented_area($this->unmarshal($this->db->f('rented_area'), 'float')); $contract->set_adjustable($this->unmarshal($this->db->f('adjustable'), 'bool')); $contract->set_adjustment_interval($this->unmarshal($this->db->f('adjustment_interval'), 'int')); $contract->set_adjustment_share($this->unmarshal($this->db->f('adjustment_share'), 'int')); $contract->set_adjustment_year($this->unmarshal($this->db->f('adjustment_year'), 'int')); $contract->set_publish_comment($this->unmarshal($this->db->f('publish_comment'), 'bool')); $contract->set_notify_before($this->unmarshal($this->db->f('notify_before'), 'int')); $contract->set_notify_before_due_date($this->unmarshal($this->db->f('notify_before_due_date'), 'int')); $contract->set_notify_after_termination_date($this->unmarshal($this->db->f('notify_after_termination_date'), 'int')); } $timestamp_end = $this->unmarshal($this->db->f('timestamp_end'), 'int'); $billing_deleted = $this->unmarshal($this->db->f('deleted'), 'bool'); if ($timestamp_end && !$billing_deleted) { $contract->add_bill_timestamp($timestamp_end); } $total_price = $this->unmarshal($this->db->f('total_price'), 'int'); if ($total_price) { $contract->set_total_price($total_price); } $party_id = $this->unmarshal($this->db->f('party_id', true), 'int'); if ($party_id) { $party = new rental_party($party_id); $party->set_first_name($this->unmarshal($this->db->f('first_name', true), 'string')); $party->set_last_name($this->unmarshal($this->db->f('last_name', true), 'string')); $party->set_company_name($this->unmarshal($this->db->f('company_name', true), 'string')); $party->set_department($this->unmarshal($this->db->f('department', true), 'string')); $party->set_org_enhet_id($this->unmarshal($this->db->f('org_enhet_id'), 'int')); $is_payer = $this->unmarshal($this->db->f('is_payer', true), 'bool'); if ($is_payer) { $contract->set_payer_id($party_id); } $contract->add_party($party); } $composite_id = $this->unmarshal($this->db->f('composite_id', true), 'int'); if ($composite_id) { $composite = new rental_composite($composite_id); $composite->set_name($this->unmarshal($this->db->f('composite_name', true), 'string')); $contract->add_composite($composite); } return $contract; }
/** * Public method. Called when user wants to edit a contract party. * @param HTTP::id the party ID */ public function edit() { $GLOBALS['phpgw_info']['flags']['app_header'] .= '::' . lang('edit'); // Get the contract part id $party_id = (int) phpgw::get_var('id'); // Retrieve the party object or create a new one if correct permissions if ($this->isExecutiveOfficer() || $this->isAdministrator()) { if (isset($party_id) && $party_id > 0) { $party = rental_soparty::get_instance()->get_single($party_id); } else { $party = new rental_party(); } } else { $this->render('permission_denied.php', array('error' => lang('permission_denied_edit'))); } if (isset($_POST['save_party'])) { if (isset($party)) { // ... set all parameters $party->set_identifier(phpgw::get_var('identifier')); $party->set_first_name(phpgw::get_var('firstname')); $party->set_last_name(phpgw::get_var('lastname')); $party->set_title(phpgw::get_var('title')); $party->set_company_name(phpgw::get_var('company_name')); $party->set_department(phpgw::get_var('department')); $party->set_address_1(phpgw::get_var('address1')); $party->set_address_2(phpgw::get_var('address2')); $party->set_postal_code(phpgw::get_var('postal_code')); $party->set_place(phpgw::get_var('place')); $party->set_phone(phpgw::get_var('phone')); $party->set_mobile_phone(phpgw::get_var('mobile_phone')); $party->set_fax(phpgw::get_var('fax')); $party->set_email(phpgw::get_var('email')); $party->set_url(phpgw::get_var('url')); $party->set_account_number(phpgw::get_var('account_number')); $party->set_reskontro(phpgw::get_var('reskontro')); $party->set_is_inactive(phpgw::get_var('is_inactive') == 'on' ? true : false); $party->set_comment(phpgw::get_var('comment')); //$party->set_location_id(phpgw::get_var('location_id')); $party->set_org_enhet_id(phpgw::get_var('org_enhet_id')); $party->set_unit_leader(phpgw::get_var('unit_leader')); if (rental_soparty::get_instance()->store($party)) { $message = lang('messages_saved_form'); } else { $error = lang('messages_form_error'); } } } $config = CreateObject('phpgwapi.config', 'rental'); $config->read(); return $this->render('party.php', array('party' => $party, 'editable' => true, 'message' => isset($message) ? $message : phpgw::get_var('message'), 'error' => isset($error) ? $error : phpgw::get_var('error'), 'cancel_link' => self::link(array('menuaction' => 'rental.uiparty.index', 'populate_form' => 'yes')), 'use_fellesdata' => $config->config_data['use_fellesdata'])); }