Installments
Hi i would like to have an option it the payment methods that the user can specify how much installments he wants so he can buy a product.Depending on his choice there has to be a field that calculates the installment for each month.
To make my self clear lets say that he wants to buy a product that costs 1000 $ an he wants to pay with 5 installments. So he writes in a field the number 5 and in another field he has to see "5 installments of 200$"
No credit card involved.
I tried to do it but i can figure out how to get the value of the order price from a .module page that is responsible for an extra option in the payment methods.
I know some php but its not enough i cant figure out how to call specific fields from the page.
Sorry for my English its horrible.
Thanks i am hoping for your help.
Comments
hook_submit_form and commerce_payment_example module.
I couldn't understand what u mean by how to get the value of the order price from a .module page that is responsible for an extra option in the payment methods .
But if you want to present some installment choices after user presses a payment method,
your_module_submit_from
is for you, I think. For instance you can prepare a table which shows the options and total amount like this:$header=array('num_of_installment'=>'Number of Installment','installment_amount'=>'Installment Amount','total_amount'=>'Total');
$installment_options = calculate_installment($order->commerce_order_total[LANGUAGE_NONE][0]['amount']);
$form['installment table'] = array(
'#type' => 'tableselect',
'#name'=>'installment',
'#title' => t('Your Payment Options'),
'#header' =>$header,
'#multiple'=>FALSE,
'#options' =>$installment_options ,
);
return $form;
You can implement a "calculate_installment" function, basically it has to return an options array like:
$options = array(1=>('num_of_installment'=> '2','installment_amount' => '234.00','total_amount'=> '468.00'),
2=>(...));
return $options;
You should definitely see the commerce_payment_example module.
thanks oz_an for your reply i
thanks oz_an for your reply i will test it and i will give feedback.
i was refering to the commerce_payment _example.module page
when i said .module, that was the page that i wanted to get the order total
I used this module because i diden't know any other way to make another payment method.
So can i put your code in that module page?
thanks again
Yes, you should put the form
Yes, you should put the form code into the submit_form function in the example module
I tried it and i got an
I tried it and i got an error
Fatal error: Call to undefined function calculate_installment()
Ok i think i got it I have to
Ok i think i got it I have to declare the function like this But Dreamweaver says there is a syntax error.
function calculate_installment() {
$options = array();
$options = array(1=>('num_of_installment'=> '2','installment_amount' => '234.00','total_amount'=> '468.00'),
2=>(...)
);
return $options;
}
function
function calculate_installment() {
$options = array();
I think i found the error
$options = array(
1 => array('num_of_installment' => '2',
'installment_amount' => '234.00',
'total_amount' => '468.00'
),
2 => (''),
);
return $options;
}
Thank you that was it but 2
Thank you that was it but 2 more questions if you do not mind.
First i want the commerce_order_total[LANGUAGE_NONE][0]['amount']) to return the price with 2 decimals
and the currency sign, example from 14000 to 140,00 €.
Second witch option of installment was clicked,
to show in the administrator order form /admin/commerce/orders/19/payment
and it would be great if the user can see it in the /user/1/orders page.
Thanks again you saved me i was searching this for many days.
Obviously I tried to give an
Obviously I tried to give an example array and the first entry for it. The part
2=> (...)
means you should enter values like the first one.This, of course, should be prepared dinamically and you should call the function with the order_amount parameter. I think you should get some help to get it done.