@extends('layouts.master') @section('navigation') @if(Auth::user()->role==1) @include('local.managers.admins._navigation') @elseif(Auth::user()->role==2) @include('local.managers.sCoords._navigation') @elseif(Auth::user()->role==3) @include('local.managers.pCoords._navigation') @endif @stop @section('main') <div class="row"> <div class="col-md-12"> <div id="quinquennium" data-quinquennium-id="{{ $plan->quinquennium->id }}"></div> <div id="program" data-program-id="{{ $program->id }}"></div> @if(!$plan->is_submitted) @if(date('Y-m-d') <= $plan->quinquennium->five_year_plan_due_date) <span class="glyphicon glyphicon-info-sign"></span> <strong>Note:</strong> This plan is saved as a <strong>draft.</strong> Remember to submit it by <strong>{{ date('F d', strtotime($plan->quinquennium->five_year_plan_due_date)) }}</strong>. After the due date, unsubmitted drafts will not be considered.</strong> <div class="text-right"> <br> {{ Form::open(array('action'=>'FiveYearPlansController@update', 'class'=>"form-inline")) }} <a href="{{ URL::action('FiveYearPlansController@edit', array('program'=>$program->id, 'plan'=>$plan->id) )}}" class="btn btn-primary edit"> <span class="glyphicon glyphicon-pencil"></span> Edit </a> <button class="btn btn-primary pdf"> <span class="glyphicon glyphicon-arrow-left"></span> PDF </button> <a href="{{ URL::action('FiveYearPlansController@msWord', array('plan'=>$plan->id))}}" class="btn btn-primary"> <span class="glyphicon glyphicon-download-alt"></span> MS Word </a> <button type="submit" class="btn btn-primary"> <span class="glyphicon glyphicon-send"></span> Submit </button> <a href="{{ URL::action('FiveYearPlansController@index')}}" class="btn btn-primary submit"> <span class="glyphicon glyphicon-arrow-left"></span> Back to Five Year Plans </a> {{ Form::close() }} <br> </div> @else <span class="glyphicon glyphicon-info-sign"></span> <strong>Note:</strong> This plan was not submitted on time.</strong> @endif @else <span class="glyphicon glyphicon-ok-sign"></span> <strong>Note:</strong> This plan was submitted on {{ date('F j, Y', strtotime($plan->submitted_on)) }} <div class="text-right"> @if(date('Y-m-d') < $plan->quinquennium->five_year_plan_due_date) <br> <a href="{{ URL::action('FiveYearPlansController@edit', array('program'=>$program->id, 'plan'=>$plan->id) )}}" class="btn btn-primary revert"> <span class="glyphicon glyphicon-backward"></span> Revert Submission </a> @endif <br><br> </div> @endif <!-- Nav tabs --> <ul class="nav nav-tabs" role="tablist"> <li role="presentation" class="active"><a href="#full-plan" aria-controls="full-plan" role="tab" data-toggle="tab"><h4>Full Plan</h4></a></li> <li role="presentation"><a href="#summary" aria-controls="summary" role="tab" data-toggle="tab"><h4>Summary</h4></a></li> </ul> <br> <!-- Tab panes --> <div class="tab-content"> <div role="tabpanel" class="tab-pane active" id="full-plan"> @foreach($plan->fypParts as $mini_plan) <div class="mini-plan"> <table class="table table-bordered" id="table"> <thead> <tr class="bg-warning text-center"> <th class="text-center col-md-1">Academic Year</th> <th class="text-center col-md-3">Learning Outcome to be assessed</th> <th class="text-center col-md-4">Learning Objectives</th> <th class="text-center col-md-4">Courses to use for assessment</th> </tr> </thead> <tbody> @foreach($mini_plan->fypPartOutcomes as $index => $outcome) <tr> <!-- If outcome is the first, include multi-row year column --> @if($index == 0) <th class="active academic-year text-center" rowspan ="{{ count($mini_plan->fypPartOutcomes) }}">{{ $mini_plan->year_start }}-{{ $mini_plan->year_end }}</th> @else <th class="hidden">{{ $mini_plan->year_start }}-{{ $mini_plan->year_end }}</th> @endif <td class="outcome-cell"> {{ $outcome->outcome->name }} </td> <td class="objectives-cell"> <ul> @foreach(json_decode($outcome->objectives) as $objective) <li class="objective">{{ $objective->text }}</li> @endforeach </ul> </td> <td> <ul> @foreach(json_decode($outcome->courses) as $course) <li class="course">{{ $course->code }}{{ $course->number }}: {{ $course->name }}</li> @endforeach </ul> </td> </tr> @endforeach </tbody> </table> </div> <br> @endforeach </div> <div role="tabpanel" class="tab-pane" id="summary"> <p>This summary is automatically generated using the information from the Full Plan. Any changes to the plan will be reflected here.</p> <table class="table table-bordered text-center"> <thead> <tr class="bg-warning"> <th class="col-md-4">Learning Outcome</th> @foreach($plan->fypParts as $mini_plan) <th class="academic-year text-center">{{ $mini_plan->year_start }}-{{ $mini_plan->year_end }}</th> @endforeach </tr> </thead> <tbody> @foreach($outcomes as $outcome) <tr> <th class="active">{{ $outcome->name }}</th> @foreach($plan->fypParts as $mini_plan) @if($mini_plan->willAssessOutcome($outcome->id)) <td><span class="glyphicon glyphicon-ok"></span></td> @else <td></td> @endif @endforeach </tr> @endforeach </tbody> </table> </div> </div> @if(!$plan->is_submitted) @if(date('Y-m-d') <= $plan->quinquennium->five_year_plan_due_date) <div class="text-right"> <br> {{ Form::open(array('action'=>'FiveYearPlansController@update', 'class'=>"form-inline")) }} <a href="{{ URL::action('FiveYearPlansController@edit', array('program'=>$program->id, 'plan'=>$plan->id) )}}" class="btn btn-primary edit"> <span class="glyphicon glyphicon-pencil"></span> Edit </a> <button class="btn btn-primary pdf"> <span class="glyphicon glyphicon-arrow-left"></span> PDF </button> <a href="{{ URL::action('FiveYearPlansController@msWord', array('plan'=>$plan->id))}}" class="btn btn-primary"> <span class="glyphicon glyphicon-download-alt"></span> MS Word </a> <button type="submit" class="btn btn-primary"> <span class="glyphicon glyphicon-send"></span> Submit </button> <a href="{{ URL::action('FiveYearPlansController@index')}}" class="btn btn-primary submit"> <span class="glyphicon glyphicon-arrow-left"></span> Back to Five Year Plans </a> {{ Form::close() }} <br> </div> @else <span class="glyphicon glyphicon-info-sign"></span> <strong>Note:</strong> This plan was not submitted on time.</strong> @endif @else <span class="glyphicon glyphicon-ok-sign"></span> <strong>Note:</strong> This plan was submitted on {{ date('F j, Y', strtotime($plan->submitted_on)) }} <div class="text-right"> @if(date('Y-m-d') < $plan->quinquennium->five_year_plan_due_date) <br> <a href="{{ URL::action('FiveYearPlansController@edit', array('program'=>$program->id, 'plan'=>$plan->id) )}}" class="btn btn-primary revert"> <span class="glyphicon glyphicon-backward"></span> Revert Submission </a> @endif <br><br> </div> @endif </div> </div> @stop @section('included-js') <script src="{{ asset('vendor/jsPDF-master/dist/jspdf.min.js') }}"></script> <script src="{{ asset('vendor/jsPDF-AutoTable-master/dist/jspdf.plugin.autotable.js') }}"></script> @stop @section('javascript') // -------------------------------------------------------------------------- // Page Load // -------------------------------------------------------------------------- $('.datatable').DataTable( { "searching": false, "paging": false, "ordering": false, "info": false }); // -------------------------------------------------------------------------- // Events // -------------------------------------------------------------------------- $('.pdf').on('click', function(e) { e.preventDefault(); console.log('start'); var doc = new jsPDF('l', 'pt'); doc.setFontSize(10); doc.text("From HTML", 40, 50); var columns = ['Academic Year', 'Learning Outcome to be assessed', 'Learning Objectives', 'Courses to use for assessment']; $('table').each(function(index, value) { if(index != 0 ) { doc.addPage(); } console.log('start table'); var rows = new Array(); var table = $(this); var disp_table = new Object(); disp_table.columns = columns; // Iterate tables table.find('tbody tr').each(function(index, value) { console.log('row: '+(index+1)); var tr = $(this); var row = new Array(); var academic_year = tr.find(':nth-child(1)').html(); var outcome = $.trim(tr.find(':nth-child(2)').html()); var objectives_dom = tr.find(':nth-child(3)'); var courses_dom = tr.find(':nth-child(4)'); var objectives = new Array(); var courses = new Array(); objectives_dom.find('.objective').each(function() { objectives.push('• '+$.trim($(this).text())); }); courses_dom.find('.course').each(function() { courses.push('• '+$.trim($(this).text())); }); console.log(academic_year); console.log(outcome); console.log(objectives); console.log(courses); row.push(academic_year); row.push(outcome); row.push(jQuery.extend([], objectives)); row.push(jQuery.extend([], courses)); rows.push(jQuery.extend([], row)); disp_table.rows = jQuery.extend([], rows); console.log('end row: '+(index+1)); }); console.log(disp_table); doc.autoTable(columns, rows, { theme: "grid", styles: { overflow: 'linebreak' }, drawCell: function (cell, data) { console.log('CELL DRAW START'); console.log(cell); if (data.column.index == 2 || data.column.index == 3) { doc.rect(cell.x, cell.y, cell.width, cell.height, 'S'); doc.text(cell.raw, cell.x + 5, cell.y + 12); console.log('CELL DRAW END'); return false; } console.log('CELL DRAW END'); return true; } }); console.log('end table'); }); //doc.save(); return; }); // -------------------------------------------------------------------------- // Functions // -------------------------------------------------------------------------- @stop