No Description

assessment_report_backup.blade.php 15KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. @extends('layouts.master')
  2. @section('navigation')
  3. @include('local.managers.admins._new_navigation')
  4. @stop
  5. @section('main')
  6. <div class="row">
  7. <div class="col-md-12">
  8. <p>This report contains performance information for all Schools and Programs with assessed courses during the
  9. following semester(s):</p>
  10. <ul>
  11. @foreach (Session::get('semesters_info') as $semester_info)
  12. <li>{{ $semester_info }}</li>
  13. @endforeach
  14. </ul>
  15. <p>Unlinked programs did not assess this outcome.</p>
  16. <h3>Table of Contents</h3>
  17. <ol id="table-of-contents" class="upper-roman">
  18. </ol>
  19. <h3 id="{{ $outcome->id }}" class="outcome">{{ $outcome->name }}</h3>
  20. @foreach ($schools as $school)
  21. <table class="table table-condensed table-bordered">
  22. <thead>
  23. <tr>
  24. <th colspan="12">
  25. <h4 id="{{ $outcome->id }}-{{ $school->id }}" class="school table-header">
  26. {{ $school->name }}
  27. </h4>
  28. <a class="to-top" href="">
  29. <span class="glyphicon glyphicon-arrow-up hidden-print"></span>
  30. To Top
  31. </a>
  32. </th>
  33. </tr>
  34. <tr class="center-text">
  35. <th>Academic Program</th>
  36. <th>Findings</th>
  37. </tr </thead>
  38. <tbody>
  39. @foreach ($school->programs as $program)
  40. @if ($program->assessesOutcome($outcome->id))
  41. <tr>
  42. <td id="{{ $outcome->id }}-{{ $school->id }}-{{ $program->id }}"
  43. class="program col-md-3">{{ $program->name }}</td>
  44. <td class="col-md-9">
  45. <!-- For each grouped course -->
  46. @foreach ($program->courses as $index2 => $course)
  47. <!-- If grouped course has activities that evaluate the outcome -->
  48. <?php
  49. $sections_evaluating = Course::has('activities')
  50. ->whereNotNull('outcomes_attempted')
  51. ->whereRaw('outcomes_attempted not like \'%"' . $outcome->id . '":0%\'')
  52. ->with([
  53. 'activities' => function ($query) use (&$outcome) {
  54. $query->whereNotNull('outcomes_attempted');
  55. $query->whereRaw('outcomes_attempted not like \'%"' . $outcome->id . '":0%\'');
  56. },
  57. ])
  58. ->where('code', $course->code)
  59. ->where('number', $course->number)
  60. ->get();
  61. ?>
  62. @if (count($sections_evaluating))
  63. <h4>Instance {{ $index2 + 1 }}:
  64. {{ $course->code }}-{{ $course->number }}</h4>
  65. <!-- For each section -->
  66. @foreach ($sections_evaluating as $index3 => $section)
  67. <h5><u>Section {{ $index3 + 1 }}</u></h5>
  68. <!-- For each activity in the section -->
  69. @foreach ($section->activities as $index4 => $activity)
  70. <!-- If activity has a rubric and the rubric has the outcome being evaluated -->
  71. @if ($activity->rubric_id != null && array_key_exists($outcome->id, (array) $activity->o_att_array) && $activity->o_att_array[$outcome->id] >= 1)
  72. <h5>Activity {{ $index4 + 1 }}</h5>
  73. <p>A rubric was used in the
  74. {{ $section->code }}-{{ $section->number }}
  75. ({{ $section->name }}) course
  76. ({{ date('M Y', strtotime($course->updated_at)) }}) to
  77. assess students’ <u>{{ strtolower($outcome->name) }}</u>
  78. in the activity: "{{ $activity->name }}". N=
  79. {{ count($section->students) }}. </p>
  80. <p>The expected performance level was that
  81. {{ $activity->rubric->expected_percentage }}% of students
  82. participating in the activity would score
  83. {{ $activity->rubric->expected_points }} points or more
  84. in the 1-8 point scale used.</p>
  85. <p>The results for each criterion were as follows:</p>
  86. <table class="table table-condensed table-bordered">
  87. <tbody>
  88. @foreach ((array) $activity->cap_array as $index5 => $cap)
  89. <tr>
  90. @if (Criterion::find($index5)['outcome_id'] == $outcome->id && $cap >= $activity->rubric->expected_percentage)
  91. <td>{{ Criterion::find($index5)['name'] }}
  92. </td>
  93. <td class="col-md-1 success">
  94. {{ $cap }}%</td>
  95. @elseif(Criterion::find($index5)['outcome_id'] == $outcome->id && $cap < $activity->rubric->expected_percentage)
  96. <td>{{ Criterion::find($index5)['name'] }}
  97. </td>
  98. <td class="col-md-1 danger">
  99. {{ $cap }}%</td>
  100. @endif
  101. </tr>
  102. @endforeach
  103. </tbody>
  104. </table>
  105. <ul>
  106. </ul>
  107. <p>
  108. <?php
  109. $o_att_array = $activity->o_att_array;
  110. $o_ach_array = $activity->o_ach_array;
  111. $percentage = ($o_ach_array[$outcome->id] / $o_att_array[$outcome->id]) * 100;
  112. ?>
  113. @if ($percentage >= 100)
  114. The expected goal was reached in <strong>all</strong>
  115. (100%) of the criteria assessed. Therefore, the goal for
  116. this outcome ({{ $outcome->expected_outcome }}%) was
  117. <strong>met</strong>.
  118. @elseif ($percentage < 1)
  119. The expected goal was reached in <strong>none</strong>
  120. (0%) of the criteria assessed. Therefore, the goal for
  121. this outcome ({{ $outcome->expected_outcome }}%) was
  122. <strong>not met</strong>.
  123. @elseif ($percentage >= $outcome->expected_outcome)
  124. The expected goal was reached in
  125. <strong>{{ $o_ach_array[$outcome->id] }}</strong> out
  126. of the
  127. <strong>{{ $o_att_array[$outcome->id] }}</strong>
  128. ({{ round($percentage, 2) }}%) criteria assessed.
  129. Therefore, the goal for this outcome
  130. ({{ $outcome->expected_outcome }}%) was
  131. <strong>met</strong>.
  132. @elseif ($percentage < $outcome->expected_outcome)
  133. The expected goal was reached in
  134. <strong>{{ $o_ach_array[$outcome->id] }}</strong> out
  135. of the
  136. <strong>{{ $o_att_array[$outcome->id] }}</strong>
  137. ({{ round($percentage, 2) }}%) criteria assessed.
  138. Therefore, the goal for this outcome
  139. ({{ $outcome->expected_outcome }}%) was <strong> not
  140. met</strong>.
  141. @endif
  142. </p>
  143. <h5>Transformative Actions</h5>
  144. @if ($activity->transforming_actions)
  145. {{ $activity->transforming_actions }}
  146. @else
  147. None
  148. @endif
  149. <br><br>
  150. @else
  151. <h5>Activity {{ $index4 + 1 }}</h5>
  152. <em>Outcome not measured.</em>
  153. @endif
  154. @endforeach
  155. @endforeach
  156. <hr>
  157. @endif
  158. @endforeach
  159. </td>
  160. </tr>
  161. @else
  162. <tr>
  163. <td id="{{ $outcome->id }}-{{ $school->id }}-{{ $program->id }}"
  164. class="program no-courses col-md-3">{{ $program->name }}</td>
  165. <td class="col-md-9">
  166. This program does not assess {{ $outcome->name }}.
  167. </td>
  168. </tr>
  169. @endif
  170. @endforeach
  171. </tbody>
  172. </table>
  173. @endforeach
  174. </div>
  175. </div>
  176. @stop
  177. @section('javascript')
  178. // Build table of contents
  179. var outcome = $('.outcome');
  180. var str ='';
  181. str+='<li><a href="#'+outcome.attr('id')+'">'+outcome.text()+'</a>
  182. <ol class="schools upper-alpha">';
  183. $('[id^='+outcome.attr('id')+'-].school').each(function(e){
  184. var school = $(this);
  185. str+='<li><a href="#'+school.attr('id')+'">'+school.text()+'</a>
  186. <ol class="programs">';
  187. $('[id^='+school.attr('id')+'-].program').each(function(e){
  188. var program = $(this);
  189. if(!program.hasClass('no-courses'))
  190. str+='<li><a href="#'+program.attr('id')+'">'+program.text()+'</a></li>';
  191. else
  192. str+='<li>'+program.text()+'</li>';
  193. });
  194. str+='</ol>
  195. </li>';
  196. });
  197. str+='</ol>
  198. </li>';
  199. console.log(str);
  200. $('#table-of-contents').append(str);
  201. // ----------------------------------------------------------------------------
  202. // Events
  203. //
  204. $('.to-top').on('click', function(e) {
  205. e.preventDefault();
  206. $(this).scrollTop(0);
  207. $('html').animate({scrollTop:0}, 1);
  208. $('body').animate({scrollTop:0}, 1);
  209. })
  210. @stop