- 21 Out 2016, 01:39
#70630
Bom, eu talvez esteja querendo fazer demais.
Mas vou tentar explicar.
Eu criei 2 campos personalizados no cadastro do usuário, numero e complemento no endereço, pois eu acho necessário.
Até o momento tudo ótimo, consegui fazer esses campos ser exibidos na visualização do pedido, na impressão da fatura, impressão da lista de entrega, ou seja em toda a parte administrativa, está sendo exibido ao administrador os campos de numero e complemento.
O problema é quando o usuário acessa a conta dele ou esta realizando um pedido, o usuário não vê e não tem certeza que preencheu o numero e complemento.
Então eu adicionei no catalog/controller/account/order.tpl
Que faz puxar os campos personalizados ou fields
O Problema é que esse código é usado no model o admin, e no catalog tem que puxar outra maneira os fields criados.
E não estou sabendo como fazer
O erro que está dando.
Notice: Undefined index: custom_field in /home/amobijuterias/www/catalog/controller/account/order.php on line 242Notice: Undefined index: custom_field in /home/amobijuterias/www/catalog/controller/account/order.php on line 239
Fatal error: Call to a member function getCustomFields() on a non-object in /home/amobijuterias/www/catalog/controller/account/order.php on line 289
To perdido se alguém tiver uma dica!!!!
Mas vou tentar explicar.
Eu criei 2 campos personalizados no cadastro do usuário, numero e complemento no endereço, pois eu acho necessário.
Até o momento tudo ótimo, consegui fazer esses campos ser exibidos na visualização do pedido, na impressão da fatura, impressão da lista de entrega, ou seja em toda a parte administrativa, está sendo exibido ao administrador os campos de numero e complemento.
O problema é quando o usuário acessa a conta dele ou esta realizando um pedido, o usuário não vê e não tem certeza que preencheu o numero e complemento.
Então eu adicionei no catalog/controller/account/order.tpl
Que faz puxar os campos personalizados ou fields
Código: Selecionar todos
if ($order_info['shipping_address_format']) {
$format = $order_info['shipping_address_format'];
} else {
$format = '{firstname} {lastname}' . "\n" . '{company}' . "\n" . '{address_1}, {numero}' . " - " . '{complemento}' . "\n" . '{address_2}' . "\n" . '{city} {postcode}' . "\n" . '{zone}' . "\n" . '{country}';
}
$find = array(
'{firstname}',
'{lastname}',
'{company}',
'{address_1}',
'{numero}',
'{complemento}',
'{address_2}',
'{city}',
'{postcode}',
'{zone}',
'{zone_code}',
'{country}'
);
// Buscar os Custom Fields :D
$this->load->model('account/custom_field'); //aqui puxa o model do catalog/account/custom_field
$custom_fields = $this->model_customer_custom_field->getCustomFields();
foreach ($custom_fields as $custom_field) {
if ($custom_field['location'] == 'address') {
if ($custom_field['type'] == 'text') {
if($custom_field['name'] == 'Complemento'){
$complemento = $order_info['shipping_custom_field'][$custom_field['custom_field_id']];
}
elseif($custom_field['name'] == 'Numero'){
$numero = $order_info['shipping_custom_field'][$custom_field['custom_field_id']];
}
}
}
}
$replace = array(
'firstname' => $order_info['shipping_firstname'],
'lastname' => $order_info['shipping_lastname'],
'company' => $order_info['shipping_company'],
'address_1' => $order_info['shipping_address_1'],
'numero' => $numero,
'complemento' => $complemento,
'address_2' => $order_info['shipping_address_2'],
'city' => $order_info['shipping_city'],
'postcode' => $order_info['shipping_postcode'],
'zone' => $order_info['shipping_zone'],
'zone_code' => $order_info['shipping_zone_code'],
'country' => $order_info['shipping_country']
);
O Problema é que esse código é usado no model o admin, e no catalog tem que puxar outra maneira os fields criados.
E não estou sabendo como fazer
O erro que está dando.
Notice: Undefined index: custom_field in /home/amobijuterias/www/catalog/controller/account/order.php on line 242Notice: Undefined index: custom_field in /home/amobijuterias/www/catalog/controller/account/order.php on line 239
Fatal error: Call to a member function getCustomFields() on a non-object in /home/amobijuterias/www/catalog/controller/account/order.php on line 289
To perdido se alguém tiver uma dica!!!!
Editado pela última vez por turcorossi em 18 Nov 2016, 14:06, em um total de 1 vez.
Turcorossi
:ugeek:
:ugeek: