invoice-center.blade.php 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. @extends(request()->input('popupmode') ? 'layouts.empty' : 'layouts.template')
  2. <?php
  3. $routeName = request()->route()->getName();
  4. ?>
  5. @section('content')
  6. <div class="container-fluid h-100 popup-content-container" id="invoice-center">
  7. <div class="main-row h-100 {{ !request()->input('popupmode') ? '' : 'px-0' }}">
  8. @if(!request()->input('popupmode'))
  9. <nav id="sidebarMenu" class="d-block bg-light sidebar collapse px-0">
  10. <div class="sidebar-sticky pt-3">
  11. <ul class="nav flex-column mcp-theme-1">
  12. <li class="nav-item">
  13. <a class="nav-link {{ strpos($routeName, 'invoice-center.companies') === 0 ? 'active' : '' }}" href="{{ route('invoice-center.companies') }}">Companies</a>
  14. </li>
  15. <li class="nav-item">
  16. <a class="nav-link {{ strpos($routeName, 'invoice-center.customers') === 0 ? 'active' : '' }}" href="{{ route('invoice-center.customers') }}">Customers</a>
  17. </li>
  18. <li class="nav-item">
  19. <a class="nav-link {{ strpos($routeName, 'invoice-center.giftCards') === 0 ? 'active' : '' }}" href="{{ route('invoice-center.giftCards') }}">Gift Cards</a>
  20. </li>
  21. <li class="nav-item">
  22. <a class="nav-link {{ strpos($routeName, 'invoice-center.invoices') === 0 ? 'active' : '' }}" href="{{ route('invoice-center.invoices') }}">Invoices</a>
  23. </li>
  24. <li class="nav-item">
  25. <a class="nav-link {{ strpos($routeName, 'invoice-center.customerTransactions') === 0 ? 'active' : '' }}" href="{{ route('invoice-center.customerTransactions') }}">Customer Transactions</a>
  26. </li>
  27. <li class="nav-item">
  28. <a class="nav-link {{ strpos($routeName, 'invoice-center.invoiceTransactions') === 0 ? 'active' : '' }}" href="{{ route('invoice-center.invoiceTransactions') }}">Invoice Transactions</a>
  29. </li>
  30. </ul>
  31. </div>
  32. </nav>
  33. @endif
  34. <main role="main" class="w-100 mcp-theme-1">
  35. <div class="pt-3 hide-inside-popup"></div>
  36. @yield('inner-content')
  37. </main>
  38. </div>
  39. </div>
  40. <script>
  41. (function () {
  42. function init() {
  43. initStagSuggest();
  44. let parentSegment = $('body');
  45. parentSegment.find('input[stag-suggest][target-key][target-field]')
  46. .off('stag-suggest-selected')
  47. .on('stag-suggest-selected', (_e, _input, _data) => {
  48. _input = $(_input);
  49. _input.closest('form').find('input[name="' + _input.attr('target-field') + '"]').val(_data[_input.attr('target-key')]);
  50. });
  51. parentSegment.find('.copy-target')
  52. .off('click.copy-target')
  53. .on('click.copy-target', function() {
  54. copyTextToClipboard($(this).attr('data-target'));
  55. return false;
  56. });
  57. parentSegment.find('.generate-and-visit-ic-portal')
  58. .off('click.generate-and-visit-ic-portal')
  59. .on('click.generate-and-visit-ic-portal', function() {
  60. $.post('/api/session/proLogInAsCustomer', {
  61. customerUid: $(this).attr('data-uid')
  62. }, _data => {
  63. if(!hasResponseError(_data)) {
  64. window.location.href = '/ic/home/' + _data.data;
  65. return false;
  66. }
  67. });
  68. return false;
  69. });
  70. parentSegment.find('.generate-and-copy-ic-portal-url')
  71. .off('click.generate-and-copy-ic-portal-url')
  72. .on('click.generate-and-visit-ic-portal', function() {
  73. $.post('/api/session/proLogInAsCustomer', {
  74. customerUid: $(this).attr('data-uid')
  75. }, _data => {
  76. if(!hasResponseError(_data)) {
  77. copyTextToClipboard('{{config('app.url')}}/ic/home/' + _data.data);
  78. return false;
  79. }
  80. });
  81. return false;
  82. });
  83. parentSegment.find('.generate-and-visit-ic-pay')
  84. .off('click.generate-and-visit-ic-pay')
  85. .on('click.generate-and-visit-ic-pay', function() {
  86. $.post('/api/session/proLogInAsCustomer', {
  87. customerUid: $(this).attr('data-uid')
  88. }, _data => {
  89. if(!hasResponseError(_data)) {
  90. window.location.href = '/ic/pay/' + $(this).attr('data-invoice-uid') + '/' + _data.data;
  91. return false;
  92. }
  93. });
  94. return false;
  95. });
  96. parentSegment.find('.generate-and-copy-ic-pay-url')
  97. .off('click.generate-and-copy-ic-pay-url')
  98. .on('click.generate-and-visit-ic-pay', function() {
  99. $.post('/api/session/proLogInAsCustomer', {
  100. customerUid: $(this).attr('data-uid')
  101. }, _data => {
  102. if(!hasResponseError(_data)) {
  103. copyTextToClipboard('{{config('app.url')}}/ic/pay/' + $(this).attr('data-invoice-uid') + '/' + _data.data);
  104. return false;
  105. }
  106. });
  107. return false;
  108. });
  109. }
  110. addMCInitializer('invoice-center', init)
  111. }).call(window);
  112. </script>
  113. @endsection