vendor/uvdesk/core-framework/Resources/views/Templates/layout.html.twig line 1

Open in your IDE?
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>{% block title %}HelpDesk{% endblock %}</title>
  5. <meta name="viewport" content="width=device-width, initial-scale=1">
  6. <link rel="icon" type="image/x-icon" sizes="16x16 32x32 48x48" href="{{ asset('favicon.ico') }}" />
  7. <!-- Stylesheets -->
  8. <link href="{{ asset('bundles/uvdeskcoreframework/css/_uikit.css') }}" type="text/css" rel="stylesheet" media="all" />
  9. <link href="{{ asset('bundles/uvdeskcoreframework/css/_custom.css') }}" type="text/css" rel="stylesheet" media="all" />
  10. <link href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" type="text/css" rel="stylesheet">
  11. <link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.min.css" type="text/css" rel="stylesheet">
  12. <!-- Custom CSS -->
  13. {% set websiteConfiguration = user_service.getWebsiteConfiguration('knowledgebase') %}
  14. {% set website = user_service.getWebsiteDetails('helpdesk') %}
  15. {{ include('@UVDeskCoreFramework/Templates/lightskin.html.twig') }}
  16. <!-- Custom Stylesheets -->
  17. {% for stylesheet in uvdesk_extensibles.getRegisteredComponent('Webkul\\UVDesk\\CoreFrameworkBundle\\Dashboard\\Dashboard').getDashboardTemplate().getStylesheetResources() %}
  18. <link href="{{ asset(stylesheet) }}" type="text/css" rel="stylesheet" media="all" />
  19. {% endfor %}
  20. {% block templateCSS %}{% endblock %}
  21. <!-- Scripts -->
  22. <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
  23. <script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.13.1/underscore-min.js"></script>
  24. <script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.4.0/backbone-min.js"></script>
  25. <script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.validation/0.11.5/backbone-validation-min.js"></script>
  26. <script src="https://cdnjs.cloudflare.com/ajax/libs/backbone.paginator/2.0.8/backbone.paginator.min.js"></script>
  27. <script src="{{ asset('bundles/uvdeskcoreframework/js/_dropdown.js') }}"></script>
  28. <script src="https://cdnjs.cloudflare.com/ajax/libs/d3/6.2.0/d3.min.js"></script>
  29. <script src="{{ asset('bundles/uvdeskcoreframework/js/viewer.js') }}"></script>
  30. <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
  31. <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.0/moment.min.js"></script>
  32. <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js"></script>
  33. </head>
  34. {% set bodyClass = '' %}
  35. {% set bodySkinClass = '' %}
  36. {% if app.request.locale == "ar" %}
  37. {% set bodyClass = 'uv-rtl' %}
  38. {% endif %}
  39. <body class="{{ bodySkinClass ~ ' ' ~ bodyClass }}">
  40. <div class="uv-notifications-wrapper">
  41. <noscript>
  42. <div class="uv-notification page-load uv-error">
  43. <p>{% trans %}Your browser does not support JavaScript or You disabled JavaScript, Please enable those !{% endtrans %}</p>
  44. </div>
  45. <style>.uv-loader-view {display: none;}</style>
  46. </noscript>
  47. {% if uvdesk_service.requestHeadersSent() == false %}
  48. {% for flashMessage in app.session.flashbag.get('success') %}
  49. <div class="uv-notification page-load uv-success">
  50. <span class="uv-notification-close"></span>
  51. <p>{{ flashMessage|raw }}</p>
  52. </div>
  53. {% endfor %}
  54. {% for flashMessage in app.session.flashbag.get('warning') %}
  55. <div class="uv-notification page-load uv-error">
  56. <span class="uv-notification-close"></span>
  57. <p>{{ flashMessage|raw }}</p>
  58. </div>
  59. {% endfor %}
  60. {% endif %}
  61. </div>
  62. <div class="uv-loader-view">
  63. <div class="uv-loader">
  64. <span></span>
  65. <span></span>
  66. <span></span>
  67. </div>
  68. </div>
  69. <div class="uv-pop-up-overlay" id="confirm-modal">
  70. <div class="uv-pop-up-box uv-pop-up-slim">
  71. <span class="uv-pop-up-close"></span>
  72. <h2>{{ 'Confirm Action'|trans }}</h2>
  73. <p>{{ 'Are you sure? You want to perform this action.'|trans }}</p>
  74. <div class="uv-pop-up-actions">
  75. <a href="#" class="uv-btn uv-btn-error confirm">{{ 'Confirm'|trans }}</a>
  76. <a href="#" class="uv-btn cancel">{{ 'Cancel'|trans }}</a>
  77. </div>
  78. </div>
  79. </div>
  80. {% set currentUser = user_service.getSessionUser() %}
  81. {% if currentUser is not empty and currentUser.getAgentInstance() is not empty %}
  82. {% set currentUserDetails = currentUser.getAgentInstance().getPartialDetails() %}
  83. {% endif %}
  84. {% block sidebar %}
  85. {% if currentUser is defined and currentUser is not empty %}
  86. {% include "@UVDeskCoreFramework/Templates/sidebar.html.twig" %}
  87. {% endif %}
  88. {% endblock %}
  89. {% block pageWrapper %}
  90. <div class="uv-paper">
  91. {% block pageHeader %}
  92. {% include "@UVDeskCoreFramework/Templates/header.html.twig" %}
  93. {% endblock %}
  94. <div class="uv-wrapper">
  95. <div class="uv-container">
  96. {% block pageContent %}{% endblock %}
  97. </div>
  98. </div>
  99. </div>
  100. {% endblock %}
  101. {% block footer %}
  102. <script>
  103. // Show loader by default
  104. document.addEventListener('DOMContentLoaded', function() {
  105. // Ensure the loader is visible
  106. document.querySelector('.uv-loader-view').style.display = 'block';
  107. });
  108. // Hide loader once the page is fully loaded
  109. window.onload = function() {
  110. // Hide the loader
  111. document.querySelector('.uv-loader-view').style.display = 'none';
  112. };
  113. </script>
  114. <script src="{{ asset('bundles/uvdeskcoreframework/js/_common.js') }}"></script>
  115. {% include "@UVDeskCoreFramework/Templates/pagination.html.twig" %}
  116. {# Confirm Action Dialog #}
  117. <div class="uv-pop-up-overlay" id="confirm-modal">
  118. <div class="uv-pop-up-box uv-pop-up-slim">
  119. <span class="uv-pop-up-close"></span>
  120. <h2>{{ 'Confirm Action'|trans }}</h2>
  121. <p>{{ 'Are you sure? You want to perform this action.'|trans }}</p>
  122. <div class="uv-pop-up-actions">
  123. <a href="#" class="uv-btn uv-btn-error confirm">{{ 'Confirm'|trans }}</a>
  124. <a href="#" class="uv-btn cancel">{{ 'Cancel'|trans }}</a>
  125. </div>
  126. </div>
  127. </div>
  128. {# Loader Template #}
  129. <script type="text/template" id="loader-tmp">
  130. <div class="uv-loader">
  131. <span></span>
  132. <span></span>
  133. <span></span>
  134. </div>
  135. </script>
  136. {# Full View Loader Template #}
  137. <script type="text/template" id="full-view-loader">
  138. <div class="uv-loader-view">
  139. <div class="uv-loader">
  140. <span></span>
  141. <span></span>
  142. <span></span>
  143. </div>
  144. </div>
  145. </script>
  146. {# Notification Template #}
  147. <script type="text/template" id="notification-template">
  148. <div class="uv-notification <% if(alertClass == 'danger') { %>uv-error<% } else { %> <%= 'uv-' + alertClass %> <% } %>">
  149. <span class="uv-notification-close"></span>
  150. <p><%= alertMessage %> </p>
  151. </div>
  152. </script>
  153. <script type="text/javascript">
  154. var warningResponse = {
  155. 'alertClass' : 'danger',
  156. 'alertMessage' : '{{ "Error : Something went wrong, please try again later"|trans }}',
  157. };
  158. </script>
  159. {% endblock %}
  160. {# Custom Javascript #}
  161. {% for javascript in uvdesk_extensibles.getRegisteredComponent('Webkul\\UVDesk\\CoreFrameworkBundle\\Dashboard\\Dashboard').getDashboardTemplate().getJavascriptResources() %}
  162. <script src="{{ asset(javascript) }}" type="text/javascript"></script>
  163. {% endfor %}
  164. </body>
  165. </html>