uc_payment_pack.admin.inc 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. <?php
  2. /**
  3. * @file
  4. * Payment pack administration menu items.
  5. */
  6. /**
  7. * Receives a check for an order and put in a clear date.
  8. *
  9. * @see uc_payment_pack_receive_check_form_submit()
  10. * @ingroup forms
  11. */
  12. function uc_payment_pack_receive_check_form($form, &$form_state, $order) {
  13. $balance = uc_payment_balance($order);
  14. $form['balance'] = array(
  15. '#prefix' => '<strong>' . t('Order balance:') . '</strong> ',
  16. '#markup' => uc_currency_format($balance),
  17. );
  18. $form['order_id'] = array(
  19. '#type' => 'hidden',
  20. '#value' => $order->order_id,
  21. );
  22. $form['amount'] = array(
  23. '#type' => 'uc_price',
  24. '#title' => t('Amount'),
  25. '#default_value' => $balance,
  26. );
  27. $form['comment'] = array(
  28. '#type' => 'textfield',
  29. '#title' => t('Comment'),
  30. '#description' => t('Any notes about the check, like type or check number.'),
  31. '#size' => 64,
  32. '#maxlength' => 256,
  33. );
  34. $form['clear'] = array(
  35. '#type' => 'fieldset',
  36. '#title' => t('Expected clear date'),
  37. '#attributes' => array('class' => array('uc-inline-form', 'clearfix')),
  38. );
  39. $form['clear']['clear_month'] = uc_select_month(NULL, format_date(REQUEST_TIME, 'custom', 'n'));
  40. $form['clear']['clear_day'] = uc_select_day(NULL, format_date(REQUEST_TIME, 'custom', 'j'));
  41. $form['clear']['clear_year'] = uc_select_year(NULL, format_date(REQUEST_TIME, 'custom', 'Y'), format_date(REQUEST_TIME, 'custom', 'Y'), format_date(REQUEST_TIME, 'custom', 'Y') + 1);
  42. $form['actions'] = array('#type' => 'actions');
  43. $form['actions']['submit'] = array(
  44. '#type' => 'submit',
  45. '#value' => t('Receive check'),
  46. );
  47. return $form;
  48. }
  49. /**
  50. * Submit handler for uc_payment_pack_receive_check_form().
  51. *
  52. * @see uc_payment_pack_receive_check_form()
  53. */
  54. function uc_payment_pack_receive_check_form_submit($form, &$form_state) {
  55. global $user;
  56. uc_payment_enter($form_state['values']['order_id'], 'check', $form_state['values']['amount'], $user->uid, '', $form_state['values']['comment']);
  57. db_insert('uc_payment_check')
  58. ->fields(array(
  59. 'order_id' => $form_state['values']['order_id'],
  60. 'clear_date' => mktime(12, 0, 0, $form_state['values']['clear_month'], $form_state['values']['clear_day'], $form_state['values']['clear_year']),
  61. ))
  62. ->execute();
  63. drupal_set_message(t('Check received, expected clear date of @date.', array('@date' => uc_date_format($form_state['values']['clear_month'], $form_state['values']['clear_day'], $form_state['values']['clear_year']))));
  64. $form_state['redirect'] = 'admin/store/orders/' . $form_state['values']['order_id'];
  65. }