schedule.html 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. {{ template "head_tmpl" }}
  5. </head>
  6. <body>
  7. <!-- APP WRAPPER -->
  8. <div class="app">
  9. <!-- START APP CONTAINER -->
  10. <div class="app-container" >
  11. <!-- START SIDEBAR -->
  12. <div class="app-sidebar app-navigation app-navigation-fixed scroll app-navigation-style-default dir-left">
  13. {{ template "navbar" }}
  14. </div>
  15. <!-- END SIDEBAR -->
  16. <!-- START APP CONTENT -->
  17. <div class="app-content" id="app">
  18. <!-- START APP HEADER -->
  19. <div class="app-header app-header-design-default">
  20. <ul class="app-header-buttons">
  21. <li class="visible-mobile"><a href="#" class="btn btn-link btn-icon" data-sidebar-toggle=".app-sidebar.dir-left"><span class="icon-menu"></span></a></li>
  22. <li class="hidden-mobile"><a href="#" class="btn btn-link btn-icon" data-sidebar-minimize=".app-sidebar.dir-left"><span class="icon-menu"></span></a></li>
  23. </ul>
  24. <!-- END APP HEADER -->
  25. <!-- START PAGE HEADING -->
  26. <div class="app-heading app-heading-bordered app-heading-page">
  27. <div class="title">
  28. <h2>Распределение нагрузки преподавателей</h2>
  29. <p>Здесь можно создать новый учебный план</p>
  30. </div>
  31. </div>
  32. <!-- END PAGE HEADING -->
  33. <!-- START PAGE CONTAINER -->
  34. <div class="container">
  35. <div class="block">
  36. <div class="col-md-12">
  37. <div class="app-heading app-heading-small app-heading-condensed padding-left-0">
  38. <div class="title">
  39. <h2>Расписание занятий</h2>
  40. </div>
  41. </div>
  42. <div class="row">
  43. <div class="col-md-4">
  44. <!--data-target="#modal-backdrop-disable"-->
  45. <button class="btn btn-primary" @click="generateSchedule()">Сгенерировать расписание</button>
  46. </div>
  47. <div class="col-md-4">
  48. </div>
  49. <div class="col-md-4">
  50. <div class="btn-group">
  51. <button class="btn btn-primary btn-icon-fixed dropdown-toggle" data-toggle="dropdown"><span class="fa fa-bars"></span>Экспорт расписания</button>
  52. <ul class="dropdown-menu dropdown-left">
  53. <li><a href="#" onClick ="$('#sortable-data').tableExport({type:'excel',escape:'false'});"><img src='img/icons/xls.png' width="24"> XLS</a></li>
  54. <li><a href="#" onClick ="$('#sortable-data').tableExport({type:'pdf',escape:'false'});"><img src='img/icons/pdf.png' width="24"> PDF</a></li>
  55. </ul>
  56. </div>
  57. </div>
  58. </div>
  59. <div class="heading-elements">
  60. </div>
  61. <br>
  62. <div>
  63. <ul class="nav nav-pills nav-justified">
  64. <li class="active"><a href="#pills-4" data-toggle="tab" @click="getScheduleForDay(1)">Понедельник</a></li>
  65. <li><a href="#pills-5" @click="getScheduleForDay(2)">Вторник</a></li>
  66. <li><a href="#pills-6" @click="getScheduleForDay(3)">Среда</a></li>
  67. <li><a href="#pills-7" @click="getScheduleForDay(4)">Четверг</a></li>
  68. <li><a href="#pills-8" @click="getScheduleForDay(5)">Пятница</a></li>
  69. <li><a href="#pills-9" @click="getScheduleForDay(6)">Суббота</a></li>
  70. </ul>
  71. <div class="tab-content">
  72. <div class="tab-pane active col-md-3" id="pills-4" v-for='group in scheduleForDay'>
  73. <table class="table table-bordered table-hover">
  74. <thead >
  75. <tr >
  76. <th colspan="4" height="50px" style="font-size: 20pt"><center>${group.Group}</center></th>
  77. </tr>
  78. </thead>
  79. <tbody>
  80. <tr v-for='tableData in group.Table'>
  81. <td>1</td>
  82. <td v-for="subj in tableData.Subject.slice(0,1)">${subj}</td>
  83. <td v-for="teacher in tableData.Teacher.slice(0,1)">${teacher}</td>
  84. <td v-for="cab in tableData.Cabinet.slice(0,1)">${cab}</td>
  85. </tr>
  86. </tbody>
  87. </table>
  88. </div>
  89. <div class="tab-pane" id="pills-5">
  90. <p>Текст</p>
  91. </div>
  92. <div class="tab-pane" id="pills-6">
  93. <p>Текст</p>
  94. </div>
  95. <div class="tab-pane" id="pills-7">
  96. <p>Текст</p>
  97. </div>
  98. <div class="tab-pane" id="pills-8">
  99. <p>Текст</p>
  100. </div>
  101. <div class="tab-pane" id="pills-8">
  102. <p>Текст</p>
  103. </div>
  104. <div class="tab-pane" id="pills-9">
  105. <p>Текст</p>
  106. </div>
  107. </div>
  108. </div>
  109. </div>
  110. </div>
  111. </div>
  112. <!-- END APP CONTAINER -->
  113. <!-- MODALS -->
  114. <div class="modal fade" id="modal-backdrop-disable" tabindex="-1" role="dialog">
  115. <div class="modal-dialog" role="document">
  116. <div class="modal-content">
  117. <div class="modal-body">
  118. <div class="form-group">
  119. <label class="col-md-3 control-label">Начало недели</label>
  120. <div class="col-md-9">
  121. <input type="text" class="mask_date_rev form-control">
  122. <span class="help-block">Format: DD-MM-YYYY</span>
  123. </div>
  124. </div>
  125. <div class="form-group">
  126. <label class="col-md-3 control-label">Конец недели</label>
  127. <div class="col-md-9">
  128. <input type="text" class="mask_date_rev form-control">
  129. <span class="help-block">Format: DD-MM-YYYY</span>
  130. </div>
  131. </div>
  132. <div class="form-group">
  133. <label class="col-md-3 control-label">Четная/Нечетная</label>
  134. <div class="col-md-9">
  135. <div class="app-radio inline">
  136. <label><input type="radio" name="app-radio-2" value="1" checked> Четная</label>
  137. </div>
  138. <div class="app-radio inline">
  139. <label><input type="radio" name="app-radio-2" value="0"> Нечетная</label>
  140. </div>
  141. </div>
  142. </div>
  143. </div>
  144. <div class="modal-footer">
  145. <button type="button" class="btn btn-link" data-dismiss="modal">Закрыть</button>
  146. <button type="submit" class="btn btn-default">Сгенерировать</button>
  147. </div>
  148. </div>
  149. </div>
  150. </div>
  151. </div>
  152. </div>
  153. <script src="https://unpkg.com/vue"></script>
  154. <script type="text/javascript" src="../static/js/vendor/maskedinput/jquery.maskedinput.min.js"></script>
  155. <!-- THIS PAGE SCRIPTS -->
  156. <script type="text/javascript" src="../static/js/vendor/bootstrap-select/bootstrap-select.js"></script>
  157. <script type="text/javascript" src="../static/js/vendor/select2/select2.full.min.js"></script>
  158. <script type="text/javascript" src="../static/js/vendor/bootstrap-datetimepicker/bootstrap-datetimepicker.js"></script>
  159. <script type="text/javascript" src="../static/js/vendor/bootstrap-daterange/daterangepicker.js"></script>
  160. <script type="text/javascript" src="../static/js/vendor/multiselect/jquery.multi-select.js"></script>
  161. <script type="text/javascript" src="../static/js/vendor/datatables/jquery.dataTables.min.js"></script>
  162. <script type="text/javascript" src="../static/js/vendor/datatables/dataTables.bootstrap.min.js"></script>
  163. <script type="text/javascript" src="../static/js/vendor/tableexport/tableExport.js"></script>
  164. <script type="text/javascript" src="../static/js/vendor/tableexport/jquery.base64.js"></script>
  165. <script type="text/javascript" src="../static/js/vendor/tableexport/html2canvas.js"></script>
  166. <script type="text/javascript" src="../static/js/vendor/tableexport/jspdf/libs/sprintf.js"></script>
  167. <script type="text/javascript" src="../static/js/vendor/tableexport/jspdf/jspdf.js"></script>
  168. <script type="text/javascript" src="../static/js/vendor/tableexport/jspdf/libs/base64.js"></script>
  169. <!-- END THIS PAGE SCRIPTS -->
  170. <!-- IMPORTANT SCRIPTS -->
  171. <script type="text/javascript" src="../static/js/vendor/jquery/jquery.min.js"></script>
  172. <script type="text/javascript" src="../static/js/vendor/jquery/jquery-migrate.min.js"></script>
  173. <script type="text/javascript" src="../static/js/vendor/jquery/jquery-ui.min.js"></script>
  174. <script type="text/javascript" src="../static/js/vendor/bootstrap/bootstrap.min.js"></script>
  175. <script type="text/javascript" src="../static/js/vendor/moment/moment.min.js"></script>
  176. <script type="text/javascript" src="../static/js/vendor/customscrollbar/jquery.mCustomScrollbar.min.js"></script>
  177. <!-- END IMPORTANT SCRIPTS -->
  178. <script type="text/javascript" src="../static/js/vendor/bootstrap-select/bootstrap-select.js"></script>
  179. <script type="text/javascript" src="../static/js/vendor/select2/select2.full.min.js"></script>
  180. <!-- APP SCRIPTS -->
  181. <script type="text/javascript" src="../static/js/app.js"></script>
  182. <script type="text/javascript" src="../static/js/app_plugins.js"></script>
  183. <script type="text/javascript" src="../static/js/api/vueSchedule.js"></script>
  184. <!-- SATISFYING RED BUTTON AT RIGHT CORNER -->
  185. <!-- END APP SCRIPTS -->
  186. </body>
  187. </html>