Skip to content

Instantly share code, notes, and snippets.

@webdados
Last active December 9, 2018 10:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save webdados/f04a379a2c4899d54d4da03c50259925 to your computer and use it in GitHub Desktop.
Save webdados/f04a379a2c4899d54d4da03c50259925 to your computer and use it in GitHub Desktop.
Adicionar dados de pagamento Multibanco a Orçamentos e Proformas
<?php
// Adicionar campo no plugin Multibanco
add_filter( 'multibanco_ifthen_multibanco_settings_fields', 'multibanco_add_quotes_option' );
function multibanco_add_quotes_option( $settings ) {
$settings['ix_quotes_title'] = array(
'type' => 'title',
'title' => 'Invoicing with InvoiceXpress for WooCommerce - Pro',
);
$settings['ix_quotes'] = array(
'type' => 'checkbox',
'title' => 'Dados MB nos Orçamentos e Proformas',
'label' => 'Adicionar dados de pagamento Multibanco aos Orçamentos e Proformas',
'description' => 'Seleccione este campo para que nos Orçamentos e Proformas emitidos pelo "Invoicing with InvoiceXpress for WooCommerce - Pro" sejam incluidos os dados de pagamento por Multibanco',
);
return $settings;
}
// Manipular dados dos orçamentos e proformas
add_filter( 'invoicexpress_woocommerce_quote_data', 'multibanco_add_to_quotes', 10, 2 );
add_filter( 'invoicexpress_woocommerce_proforma_data', 'multibanco_add_to_quotes', 10, 2 );
function multibanco_add_to_quotes( $data, $order_object ) {
if (
function_exists( 'WC_IfthenPay_Webdados' )
&& ! empty( WC_IfthenPay_Webdados()->multibanco_settings['ix_quotes'] )
&& $order_object->get_payment_method() == WC_IfthenPay_Webdados()->multibanco_id
) {
if ( $payment_details = WC_IfthenPay_Webdados()->get_multibanco_order_details( $order_object->get_id() ) ) {
$data['observations'] = sprintf(
"Pague por Multibanco\nEntidade: %s\nReferência: %s\nValor: %s",
$payment_details['ent'],
WC_IfthenPay_Webdados()->format_multibanco_ref( $payment_details['ref'] ),
$payment_details['val']
);
}
}
return $data;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment