service_sales_report.php 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. <?php
  2. /* For license terms, see /license.txt */
  3. /**
  4. * List of pending payments of the Buy Courses plugin
  5. * @package chamilo.plugin.buycourses
  6. */
  7. $cidReset = true;
  8. require_once '../config.php';
  9. api_protect_admin_script();
  10. $plugin = BuyCoursesPlugin::create();
  11. $paypalEnable = $plugin->get('paypal_enable');
  12. $commissionsEnable = $plugin->get('commissions_enable');
  13. $includeServices = $plugin->get('include_services');
  14. $saleStatuses = $plugin->getServiceSaleStatuses();
  15. $paymentTypes = $plugin->getPaymentTypes();
  16. $form = new FormValidator('search', 'get');
  17. $form->addSelect('status', $plugin->get_lang('OrderStatus'), $saleStatuses, ['cols-size' => [0, 0, 0]]);
  18. $form->addText('user', get_lang('User'), false, ['cols-size' => [0, 0, 0]]);
  19. $form->addButtonSearch(get_lang('Search'), 'search');
  20. $servicesSales = $plugin->getServiceSale();
  21. $serviceSaleList = [];
  22. foreach ($servicesSales as $sale) {
  23. $serviceSaleList[] = [
  24. 'id' => $sale['id'],
  25. 'reference' => $sale['reference'],
  26. 'status' => $sale['status'],
  27. 'date' => api_format_date($sale['buy_date'], DATE_TIME_FORMAT_LONG_24H),
  28. 'currency' => $sale['currency'],
  29. 'price' => $sale['price'],
  30. 'service_type' => $sale['service']['applies_to'],
  31. 'service_name' => $sale['service']['name'],
  32. 'complete_user_name' => $sale['buyer']['name']
  33. ];
  34. }
  35. //View
  36. $interbreadcrumb[] = ['url' => '../index.php', 'name' => $plugin->get_lang('plugin_title')];
  37. $templateName = $plugin->get_lang('SalesReport');
  38. $template = new Template($templateName);
  39. if ($paypalEnable == 'true' && $commissionsEnable == 'true') {
  40. $toolbar = Display::toolbarButton(
  41. $plugin->get_lang('PaypalPayoutCommissions'),
  42. api_get_path(WEB_PLUGIN_PATH) . 'buycourses/src/paypal_payout.php',
  43. 'paypal',
  44. 'primary',
  45. ['title' => $plugin->get_lang('PaypalPayoutCommissions')]
  46. );
  47. $template->assign(
  48. 'actions',
  49. Display::toolbarAction('toolbar', [$toolbar])
  50. );
  51. }
  52. if ($commissionsEnable == 'true') {
  53. $toolbar = Display::toolbarButton(
  54. $plugin->get_lang('PayoutReport'),
  55. api_get_path(WEB_PLUGIN_PATH) . 'buycourses/src/payout_report.php',
  56. 'money',
  57. 'info',
  58. ['title' => $plugin->get_lang('PayoutReport')]
  59. );
  60. $template->assign(
  61. 'actions',
  62. Display::toolbarAction('toolbar', [$toolbar])
  63. );
  64. }
  65. $template->assign('form', $form->returnForm());
  66. $template->assign('showing_services', true);
  67. $template->assign('services_are_included', $includeServices);
  68. $template->assign('sale_list', $serviceSaleList);
  69. $template->assign('sale_status_cancelled', BuyCoursesPlugin::SERVICE_STATUS_CANCELLED);
  70. $template->assign('sale_status_pending', BuyCoursesPlugin::SERVICE_STATUS_PENDING);
  71. $template->assign('sale_status_completed', BuyCoursesPlugin::SERVICE_STATUS_COMPLETED);
  72. $content = $template->fetch('buycourses/view/service_sales_report.tpl');
  73. $template->assign('content', $content);
  74. $template->display_one_col_template();