No Description

routes.php 39KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794
  1. <?php
  2. // Event::listen('illuminate.query', function($sql, $params)
  3. // {
  4. // print_r($sql);
  5. // echo '<pre>';
  6. // print_r($params);
  7. // echo "</pre>";
  8. // });
  9. /*
  10. |--------------------------------------------------------------------------
  11. | Application Routes
  12. |--------------------------------------------------------------------------
  13. |
  14. | Here is where you can register all of the routes for an application.
  15. | It's a breeze. Simply tell Laravel the URIs it should respond to
  16. | and give it the Closure to execute when that URI is requested.
  17. |
  18. */
  19. // Route model bindings
  20. Route::model('template', 'Template');
  21. Route::model('program', 'Program');
  22. Route::model('five_year_plan', 'FiveYearPlan');
  23. // Composers
  24. View::composer(array(
  25. 'local.professors._navigation',
  26. 'local.managers.admins._new_navigation',
  27. 'local.managers.sCoords._new_navigation',
  28. 'local.managers.pCoords._new_navigation',
  29. ), function ($view) {
  30. // Get user's courses' numbers
  31. $courses = Auth::user()->courses;
  32. $schools = School::orderBy('name', 'asc')->get();
  33. $view->with('courses', $courses)->with('schools', $schools);
  34. });
  35. View::composer(array(
  36. 'local.professors.*',
  37. 'local.managers.admins._new_navigation',
  38. 'local.managers.sCoords._new_navigation',
  39. 'local.managers.pCoords._new_navigation',
  40. 'local.managers.shared.limited-course',
  41. 'local.managers.shared.school',
  42. 'local.managers.shared.school-uhs',
  43. 'local.managers.shared.programs',
  44. 'local.managers.shared.program',
  45. 'local.managers.shared.rubrics',
  46. 'global.view-learning-outcomes-criteria',
  47. 'global.view-learning-outcomes-criteria',
  48. 'global.view-three-year-plan'
  49. ), function ($view) {
  50. $view->with('role', Auth::user()->role);
  51. });
  52. /*
  53. * Login/logout routes
  54. */
  55. /** Use modified guest filter to redirect logged in user */
  56. Route::get('/', array('before' => 'guest', 'uses' => 'AuthController@showLogin'));
  57. Route::post('/login', array('uses' => 'AuthController@login'));
  58. /**
  59. * Protected Routes
  60. */
  61. Route::group(array('before' => 'auth|has_access'), function () {
  62. /**
  63. * Recalculate course outcomes
  64. *
  65. */
  66. Route::get('recalculateCourses', function () {
  67. DB::disableQueryLog();
  68. if (Auth::user()->id != 58)
  69. Redirect::action('AuthController@showLogin');
  70. try {
  71. $courses = Course::all();
  72. foreach ($courses as $course) {
  73. echo $course->id;
  74. // Recalculate course outcomes
  75. $activities = Activity::where('course_id', $course->id)
  76. ->whereNotNull('outcomes_attempted')
  77. ->where('draft', 0)
  78. ->get();
  79. //If there are still evaluated activities in the course, recalculate course outcomes
  80. if (!$activities->isEmpty()) {
  81. $outcomeCount = Outcome::all()->count();
  82. // Variables to hold recalculated outcomes for the course
  83. $course_outcomes_attempted = array_fill(1, $outcomeCount, 0);
  84. $course_outcomes_achieved = array_fill(1, $outcomeCount, 0);
  85. // For each activity
  86. foreach ($activities as $activity2) {
  87. // If activity has been assessed
  88. if ($activity2->outcomes_attempted != NULL) {
  89. echo '<ul>';
  90. // Get the achieved criteria
  91. $criteria_achievement = json_decode($activity2->criteria_achieved, true);
  92. foreach ($criteria_achievement as $criterion_id => $criterion_achieved) {
  93. // Find corresponding learning outcome;
  94. $criterion = Criterion::withTrashed()->where('id', $criterion_id)->first();
  95. print '<li>' . $criterion->id . '</li>';
  96. $outcome = Outcome::find($criterion->outcome_id);
  97. // If criterion is achieved (1), add 1 to both arrays
  98. if ($criterion_achieved === 1) {
  99. $course_outcomes_attempted[$outcome->id] += 1;
  100. $course_outcomes_achieved[$outcome->id] += 1;
  101. }
  102. // Else, only add to the attempted outcomes arrays
  103. elseif ($criterion_achieved === 0) {
  104. $course_outcomes_attempted[$outcome->id] += 1;
  105. }
  106. }
  107. echo '</ul>';
  108. }
  109. }
  110. // Update course
  111. DB::table('courses')
  112. ->where('id', $course->id)
  113. ->update(array(
  114. 'outcomes_attempted' => json_encode($course_outcomes_attempted),
  115. 'outcomes_achieved' => json_encode($course_outcomes_achieved),
  116. 'updated_at' => date('Y-m-d H:i:s')
  117. ));
  118. }
  119. // Otherwise, set them all to NULL
  120. else {
  121. DB::table('courses')
  122. ->where('id', $course->id)
  123. ->update(array(
  124. 'outcomes_attempted' => NULL,
  125. 'outcomes_achieved' => NULL,
  126. 'updated_at' => date('Y-m-d H:i:s')
  127. ));
  128. }
  129. }
  130. return 'success';
  131. } catch (Exception $e) {
  132. return 'failure (' . $e->getLine() . '): ' . $e->getMessage();
  133. }
  134. });
  135. /**
  136. * Shared Routes
  137. */
  138. // Annual Plan routes
  139. Route::post('deleteCommentsFromOutcome', array('uses' => 'AnnualPlansController@deleteCommentsFromOutcome'));
  140. Route::post('addCommentsToOutcome', array('uses' => 'AnnualPlansController@addCommentsToOutcome'));
  141. Route::post('fetchAnnualPlan', array('uses' => 'AnnualPlansController@fetchTheAnnualPlan'));
  142. Route::post('deleteTaFromOutcome', array('uses' => 'TransformativeActionsController@deleteTaFromOutcome'));
  143. Route::post(
  144. 'postTransformativeToOutcome',
  145. array(
  146. 'as' => 'postTransformativeToOutcome',
  147. 'uses' => 'TransformativeActionsController@createTAForOutcome'
  148. )
  149. );
  150. //Para feature de import rubrics
  151. Route::post("fetchTemplatesForCriteria", "AnnualPlansController@fetchTemplatesForCriteria");
  152. Route::post("pairCriteriaFromTemplate", "AnnualPlansController@pairCriteriaFromTemplate");
  153. //end feature
  154. Route::post('postAnnualReport/{annual_id?}', 'AnnualPlansController@postAnnualReport');
  155. Route::get('printAnnualPlan/{annual_plan?}/{submit?}', 'AnnualPlansController@printAnnualPlan');
  156. Route::post('checkIfPlanReady', 'AnnualPlansController@checkIfPlanReady');
  157. Route::post('submitAnnualPlan/{annual_id?}', 'AnnualPlansController@submitAnnualPlan');
  158. Route::post("checkIfReady", 'AnnualPlansController@checkIfReady');
  159. Route::get("printAnnualReport/{annual_plan?}/{submit?}", 'AnnualPlansController@printAnnualReport');
  160. Route::post('fetchObjectiveInfo', array(
  161. 'as' => 'fetchObjectiveInfo',
  162. 'uses' => 'AnnualPlansController@fetchObjectiveInfo'
  163. ));
  164. Route::get('selectAnnualProgram', array(
  165. 'as' => 'selectAnnualProgram',
  166. 'uses' => 'AnnualPlansController@selectProgramPlan'
  167. ));
  168. Route::post("fetchReportWithOutcome", 'AnnualPlansController@fetchReportWithOutcome');
  169. // Route::post("fetchReportWithOutcome", array(
  170. // 'as' => 'fetchReportWithOutcome',
  171. // 'uses' => 'AnnualPlansController@fetchReportWithOutcome'
  172. // ));
  173. Route::get('annual_plan_report/{program_id}', array(
  174. 'as' => 'annual_plan_report/{program_id}',
  175. 'uses' => 'OutcomesController@annualReport'
  176. ));
  177. Route::post('fetchAnnualReport', array(
  178. 'as' => 'fetchAnnualReport',
  179. 'uses' => 'AnnualPlansController@fetchAnnualReport'
  180. ));
  181. //Shared course creation, ( por si School coordinator y Program coordinator
  182. // van a poder crear luego)
  183. Route::get('editCourses', 'CoursesController@editView');
  184. Route::post("createCourse", 'CoursesController@create');
  185. Route::post("updateCourseInfo", 'CoursesController@updateCourseInfo');
  186. Route::post("fetch_assoc_courses", 'CoursesController@fetchCourses');
  187. //Fetch Objectives for Template
  188. Route::post("fetchObjectiveForTemplate", 'TemplatesController@fetchObjectivesForTemplate');
  189. //shared viewTransformativeActions
  190. Route::get('viewTransformativeActions', 'TransformativeActionsController@viewTransformativeActions');
  191. Route::get('viewProgramActivities', 'TransformativeActionsController@viewProgramActivities');
  192. //View Three year plan
  193. Route::get('three-year-plan/show/{program_id}', "ThreeYearPlanController@showPDFs");
  194. Route::get("downloadThreeYearPlanPDF/{path_id}", "ThreeYearPlanController@showHTML");
  195. Route::get("findHTMLlinksTYP/{path_id}", 'ThreeYearPlanController@findHTML');
  196. /////////////////////////////////////////
  197. //
  198. // pairing everything in three year
  199. //
  200. /////////////////////////////////////////
  201. Route::post('pairEveryObjective', "ThreeYearPlanController@pairEveryObjective");
  202. Route::post('pairEveryCourse', "ThreeYearPlanController@pairEveryCourse");
  203. //////////////////////////////////////
  204. //
  205. //View annual plans and report
  206. //
  207. ///////////////////////////////////
  208. Route::get('{annual_report_or_plan}/show/{program_id}', "AnnualPlansController@annualPlansShow");
  209. Route::get("findHTMLlinksAP/{type_of_annual}/{path_id}", "AnnualPlansController@findHTML");
  210. //Route::post('submitAnnualPlan', array('uses' => 'AnnualPlansController@submitAnnualPlan'));
  211. Route::post('fetchTransformativeStatus', array('uses' => 'TransformativeActionsController@fetchStatus'));
  212. Route::post('saveTransStatus', array('uses' => 'TransformativeActionsController@saveTransStatus'));
  213. Route::post('futureTransformativeCourse', 'AnnualPlansController@futureTransformative');
  214. //other stuff
  215. Route::post('deleteCriterion', 'CriteriaController@delete');
  216. Route::post('postActivityCriterionTrans/{activity_id}', array(
  217. 'as' => 'postActivityCriterionTrans/{activity_id}',
  218. 'uses' => 'TransformativeActionsController@postActivityCriterion'
  219. ));
  220. Route::post('changeStatusOfCriterion', array(
  221. 'as' => 'changeStatusOfCriterion',
  222. 'uses' => 'CriteriaController@changeStatus'
  223. ));
  224. Route::post('createThreeYearCycle', array(
  225. 'as' => 'createThreeYearCycle',
  226. 'uses' => 'ThreeYearPlanController@create'
  227. ));
  228. Route::get('printThreeYear/{program_id}/{typ}/{submit?}', array(
  229. 'as' => 'printThreeYear/{program_id}/{typ}/{submit?}',
  230. 'uses' => 'ThreeYearPlanController@printPlan'
  231. ));
  232. Route::get('viewThreeYear/{program_id}/{typ}', array(
  233. 'as' => 'viewThreeYear/{program_id}/{typ}',
  234. 'uses' => 'ThreeYearPlanController@viewPlan'
  235. ));
  236. Route::post('submitTYP/{program_id}', 'ThreeYearPlanController@submit');
  237. // Fetch all criteria associated to an outcome
  238. Route::post('fetchInfo', array(
  239. 'as' => 'fetchInfo',
  240. 'uses' => 'AnnualPlansController@fetchInfo'
  241. ));
  242. Route::post('fetchCriteria', array(
  243. 'as' => 'fetchCriteria',
  244. 'uses' => 'OutcomesController@fetchCriteria'
  245. ));
  246. Route::post('fetchCriterionWithTemplate', array(
  247. 'as' => 'fetchCriterionWithTemplate',
  248. 'uses' => 'CriteriaController@fetchCriterionWithTemplate'
  249. ));
  250. Route::post('fetchFormative', array(
  251. 'as' => 'fetchFormative',
  252. 'uses' => 'TransformativeActionsController@fetchCourses'
  253. ));
  254. Route::post('fetchObjectivesForOutcome', "Objective2Controller@fetchObjectivesForOutcome");
  255. //Objectives and Criteria Shared Routes
  256. Route::get('criteria', array('uses' => 'CriteriaController@edit'));
  257. Route::get('objectives', array('uses' => 'Objective2Controller@edit'));
  258. // Fetch a criterion for a rubric
  259. Route::post('fetchCriterion', array(
  260. 'as' => 'fetchCriterion',
  261. 'uses' => 'CriteriaController@fetchCriterion'
  262. ));
  263. // Fetch Criterions associated to programs
  264. Route::post('fetchAllCriterion', array(
  265. 'as' => 'fetchAllCriterion',
  266. 'uses' => 'CriteriaController@fetchAllCriterion'
  267. ));
  268. ///////////////////////////
  269. //
  270. // pair criteria from template
  271. //
  272. ///////////////////////////
  273. Route::post('fetchFromTemplate', 'CriteriaController@fetchFromTemplate');
  274. Route::post('insertPCOBOFromTemplate', 'Objective2Controller@insertPCOBOFromTemplate');
  275. Route::post('deletePCOBOFromTemplate', 'Objective2Controller@deletePCOBOFromTemplate');
  276. Route::post('updatePCOBOFromTemplate', 'Objective2Controller@updatePCOBOFromTemplate');
  277. Route::post('insertPCOBO', 'Objective2Controller@insertPCOBO');
  278. /*//////////////////
  279. Export criteria from annual plans, rubrics
  280. ////////////////*/
  281. Route::post('fetchOutcomesFromPlan', "AnnualPlansController@fetchOutcomesFromPlan");
  282. Route::post('fetchObjectivesFromPlan', 'AnnualPlansController@fetchObjectivesFromPlan');
  283. Route::post("fetchSemestersFromPlan", 'AnnualPlansController@fetchSemestersFromPlan');
  284. Route::post('fetchCoursesFromPlanForTemplates', 'AnnualPlansController@fetchCoursesFromPlanForTemplate');
  285. Route::post('fetchCriteriaFromPlan', 'AnnualPlansController@fetchCriteriaFromPlan');
  286. /*////////////////////////
  287. //
  288. // Routes: view for objective_outcome
  289. //
  290. */ ////////////////////////
  291. Route::get('view-objective-outcome', 'Objective2Controller@viewObjectiveOutcome');
  292. Route::post('fetchObjectiveOutcome', 'Objective2Controller@fetchObjectiveOutcome');
  293. Route::post('fetchObjectiveCriteria', 'CriteriaController@fetchObjectiveCriteria');
  294. /*////////////////////////
  295. //
  296. // Routes view for criteria_outcome
  297. //
  298. */ ////////////////////////
  299. Route::get("view-criteria-outcome", "CriteriaController@viewCriteriaOutcome");
  300. Route::post('fetchCriteriaOutcomes', 'CriteriaController@fetchCriteriaOutcomes');
  301. Route::post('fetchCriteriaObjectiveOutcomes', 'CriteriaController@fetchCriteriaObjectiveOutcomes');
  302. Route::get('viewFormative', array(
  303. 'as' => 'viewFormative',
  304. 'uses' => 'TransformativeActionsController@viewFormativeActions'
  305. ));
  306. Route::post('delete', array(
  307. 'as' => 'delete',
  308. 'uses' => 'TransformativeActionsController@deleteTA'
  309. ));
  310. // Fetch a criterion for a rubric
  311. Route::post('fetchCriterionWithTrashed', array(
  312. 'as' => 'fetchCriterionWithTrashed',
  313. 'uses' => 'CriteriaController@fetchCriterionWithTrashed'
  314. ));
  315. Route::get('learning-outcomes/show/{id}', array(
  316. 'as' => "learning-outcomes/show/{id}",
  317. 'uses' => 'OutcomesController@show'
  318. ));
  319. //Fetch objectives for criteria when outcome is chosen
  320. Route::post('fetchObjectivesForSelect', array(
  321. 'as' => 'fetchObjectivesForSelect',
  322. 'uses' => 'CriteriaController@fetchObjectivesForSelect'
  323. ));
  324. // Fetch a criterion for a rubric with custom content
  325. Route::post('fetchRubricCriterion', array(
  326. 'as' => 'fetchRubricCriterion',
  327. 'uses' => 'RubricsController@fetchRubricCriterion'
  328. ));
  329. Route::post('fetchObjectives', 'Objective2Controller@fetchAllObjectives');
  330. // Load a rubric template
  331. Route::post('loadTemplate', array('uses' => 'TemplatesController@fetch'));
  332. Route::post('filterSemesters', array('uses' => 'SemestersController@filterSemesters'));
  333. // Log out user
  334. Route::get('logout', 'AuthController@logout');
  335. // Edit and update user profile
  336. Route::get('profile', 'UsersController@edit');
  337. Route::post('profile/update', array('before' => 'csrf', 'uses' => 'UsersController@update'));
  338. // Allows users to give feeback
  339. Route::post('feedback/send', array('before' => 'csrf', 'uses' => 'FeedbackController@send'));
  340. Route::resource(
  341. 'feedback',
  342. 'FeedbackController',
  343. array('only' => array('create'))
  344. );
  345. Route::get('agreement', 'AgreementController@index');
  346. Route::post('agreement/agree', array('before' => 'csrf', 'uses' => 'AgreementController@agree'));
  347. // Show users all learning outcomes and criteria
  348. Route::get('learning-outcomes-criteria', 'CriteriaController@index');
  349. Route::post('fetchOutcome', array('before' => 'csrf', 'uses' => 'OutcomesController@fetchOutcome'));
  350. // Show users all objectives and criteria
  351. Route::get('learning-objectives-criteria', 'Objective2Controller@viewObjectives');
  352. Route::post("postDeleteAllCriteria", 'Objective2Controller@postDeleteAll');
  353. Route::post('fetchObjectiveForCriteria', array('before' => 'csrf', 'uses' => 'ObjectivesController@fetchObjectiveForCriteria'));
  354. // Show professor overview to users with courses
  355. Route::get('professor', 'ProfessorsController@overview');
  356. // view objectives and criteria, edit criteria
  357. Route::post('fetchCriteriaFromProgram', 'Objective2Controller@fetchProgramCriteria');
  358. // Assessment reports for users' courses
  359. Route::get('my-assessment-reports', 'OutcomesController@professorAssessmentReport');
  360. Route::post('objectives/fetch', array('before' => 'csrf', 'uses' => 'ObjectivesController@fetch'));
  361. // Transformative Actions for p-coordinators and professors
  362. Route::get('transformativeAction', array('uses' => 'TransformativeActionsController@editTA'));
  363. Route::post('transformativeAction/createTA', array('before' => 'csrf', 'uses' => 'TransformativeActionsController@createTA'));
  364. Route::post('transformativeAction/selectTA', array('before' => 'csrf', 'uses' => 'TransformativeActionsController@selectTA'));
  365. Route::post('transformativeAction/updateTA', array('before' => 'csrf', 'uses' => 'TransformativeActionsController@updateTA'));
  366. Route::post('transformativeAction/filterTA', array('before' => 'csrf', 'uses' => 'TransformativeActionsController@filterTA'));
  367. Route::post('transformativeAction/objectivesFromOutcome', array('before' => 'csrf', 'uses' => 'TransformativeActionsController@objectivesFromOutcome'));
  368. Route::post('criteria/update', array('before' => 'csrf', 'uses' => 'CriteriaController@update'));
  369. Route::delete('critteria/delete', array('before' => 'csrf', 'uses' => 'CriteriaController@destroy'));
  370. //shared print_program and school
  371. Route::get('print_program_students/{program_id}', 'ProgramsController@print_program_students');
  372. Route::get('print_school_students_report/{school_id}', 'SchoolsController@print_school_students_report');
  373. /**
  374. * Administrator Routes
  375. */
  376. Route::group(array('before' => 'admin'), function () {
  377. Route::get('/administrator', 'AdministratorsController@overview2');
  378. Route::get('/administrator2', 'AdministratorsController@overview');
  379. Route::post('/administrator2/filter', 'AdministratorsController@overview2_filter_results');
  380. Route::post('administrator/rubrics', array(
  381. 'as' => 'rubrics',
  382. 'before' => 'csrf',
  383. 'uses' => 'CriteriaController@fetch'
  384. ));
  385. // manage courses permissions.
  386. Route::get('manageCoursesPermissions', 'ProgramsController@assignOtherProgramIndex');
  387. Route::post('addToOtherProgramTYP', 'ProgramsController@addToOtherProgramTYP');
  388. Route::post("fetchPairingInfo", 'ProgramsController@fetchPairingInfo');
  389. Route::post("updatePairingInfo", 'ProgramsController@updatePairingInfo');
  390. //New navigation routes
  391. Route::get('campusAnnualReport', 'AnnualPlansController@adminReportIndex');
  392. Route::get('campusResults', 'OutcomesController@adminProgramIndex');
  393. Route::get('manageSemesterCycle', 'ThreeYearPlanController@manageSemesterCycle');
  394. //Plans routes
  395. Route::get('showThreeYearPlans', 'ThreeYearPlanController@adminIndex');
  396. Route::post('fetchSubmit', 'ThreeYearPlanController@fetchSubmitted');
  397. Route::get('showAnnualPlans', 'AnnualPlansController@adminIndex');
  398. Route::get("showAnnualReports", "AnnualPlansController@adminReportIndex");
  399. Route::post('fetchSubmitAn', 'AnnualPlansController@fetchSubmitted');
  400. //endhere
  401. Route::post('createOutcome', array('before' => 'csrf', 'uses' => 'OutcomesController@create'));
  402. Route::post('createCriterion', array('before' => 'csrf', 'uses' => 'CriteriaController@create'));
  403. Route::get('learning-outcomes', 'OutcomesController@index');
  404. //Route::post('fetchObjectives', 'Objective2Controller@fetchAllObjectives');
  405. // TODO: Change later
  406. Route::get('new-learning-outcomes', 'OutcomesController@newIndex');
  407. Route::post('learning-outcomes/update', array('before' => 'csrf', 'uses' => 'OutcomesController@updateMore'));
  408. Route::post('learning-outcomes/delete', array('before' => 'csrf', 'uses' => 'OutcomesController@delete'));
  409. Route::get('administrator/users/{query?}', 'UsersController@index');
  410. Route::post('administrator/updateAccess', array('before' => 'csrf', 'uses' => 'UsersController@updateAccess'));
  411. Route::post('administrator/users/store', array('before' => 'csrf', 'uses' => 'UsersController@store'));
  412. //Route::get('criteria', array('uses' => 'CriteriaController@edit'));
  413. //Route::get('objectives', array('uses' => 'Objective2Controller@edit'));
  414. Route::get('administrator/semesters', 'SemestersController@edit');
  415. Route::post('administrator/semesters/update', 'SemestersController@update');
  416. Route::post('deleteObjective', 'Objective2Controller@delete');
  417. Route::get('assessment-report', 'OutcomesController@assessmentReport');
  418. // TODO: Change later
  419. Route::get('new-assessment-report/{outcome_id}', 'OutcomesController@newAssessmentReport');
  420. Route::get('template-list', 'TemplatesController@index');
  421. Route::get('template/{template}', 'TemplatesController@show');
  422. Route::post('onLoadFetch', 'TemplatesController@onLoadFetch');
  423. Route::get('courses/reassign', 'CoursesController@reassign');
  424. Route::post('courses/update', array('before' => 'csrf', 'uses' => 'CoursesController@update'));
  425. Route::get('activities/create', 'ActivitiesController@newCreate');
  426. Route::get('total_assessment-report', 'OutcomesController@totalAssessmentReport');
  427. });
  428. /**
  429. * School Coordinator Routes
  430. */
  431. Route::group(array('before' => 'scoord'), function () {
  432. Route::get('school-coordinator-test', 'SchoolCoordinatorsController@overview_test');
  433. Route::get('school-coordinator', 'SchoolCoordinatorsController@overview');
  434. Route::get('school/{id}', array(
  435. 'as' => 'school-coordinator',
  436. 'uses' => 'SchoolsController@show'
  437. ));
  438. Route::get('program/{id}', 'ProgramsController@show');
  439. Route::post('programs/report', 'ProgramsController@showReport');
  440. Route::get('template/{template}', 'TemplatesController@show');
  441. // Route::post('storeTypInfo', 'OutcomesController@storeCycleInfo'); //TODO: where is this route supposed to be placed?
  442. Route::get('programs', 'ProgramsController@index');
  443. Route::get('template-list', 'TemplatesController@index');
  444. Route::post('deleteObjective', 'Objective2Controller@delete');
  445. // Print school report
  446. Route::get('print_school/{id}', 'SchoolsController@print_school');
  447. // Assessment reports
  448. Route::get('school-assessment-report', 'OutcomesController@schoolAssessmentReport');
  449. Route::get('student_school_assessment-report/{school_id}', 'SchoolsController@studentSchoolAssessmentReport');
  450. // Gabriel added this, so the school coordinator can add criterias and objectives
  451. Route::post('createCriterion', array('before' => 'csrf', 'uses' => 'CriteriaController@create'));
  452. //Route::get('school-objective', 'Objective2Controller@edit');
  453. //Route::get('school-criteria', 'CriteriaController@edit');
  454. Route::post('crtiteria/update', array('before' => 'csrf', 'uses' => 'CriteriaController@update'));
  455. //Show users annual plan
  456. Route::get('annual-plan-program/{program_id}/{typ_id?}', 'AnnualPlansController@showPlan');
  457. Route::post('annual-plan-fetchTYP/{program_id}/{typ_id}', 'AnnualPlansController@fetchTYP');
  458. Route::post('annual-plan-postOnChange', 'AnnualPlansController@postAnnualPlan');
  459. Route::post('annual-plan-deleteCriteria', 'AnnualPlansController@deleteCriteria');
  460. Route::get('annual-plan-show/{program_id}', 'AnnualPlansController@viewAllPlans');
  461. Route::post('fetchAllTables', 'AnnualPlansController@fetchAllTables');
  462. Route::post('annual-plan-postTA', 'AnnualPlansController@postTA');
  463. Route::post('annual-report-post', 'AnnualPlansController@postReport');
  464. Route::post('annual-plan-deleteTA', 'AnnualPlansController@deleteTA');
  465. Route::post('annual-plan-trans-report', 'AnnualPlansController@transformativeReport');
  466. // Show users plan de tres a~nos
  467. Route::get('three-years-plan/{program_id}', 'ThreeYearPlanController@threeYearsReport');
  468. Route::post('fetchThreeYears', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@fetchThreeYears'));
  469. Route::post('typ/lookUp', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@lookup_typ_semester_outcome'));
  470. Route::post('section2_arrive', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@section2_arrive'));
  471. Route::post('section2_on_change', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@section2_on_change'));
  472. Route::post('section3_arrive', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@section3_arrive'));
  473. Route::post('section3_on_change', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@section3_on_change'));
  474. Route::post('typ/getObjectives', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@getObjectivesForTYP'));
  475. Route::post('typ/updateOutcomeSemsters', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@typ_update_outcomes_semesters'));
  476. Route::post('typ/update', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@update_typ_outcomes_semesters'));
  477. Route::post('createAnnualPlan/{program_id}', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@createAnnualPlan'));
  478. Route::post('verifyAndCreate/{program_id}', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@verifyAndCreate'));
  479. });
  480. /**
  481. * Program Coordinator Routes
  482. */
  483. Route::group(array('before' => 'pcoord'), function () {
  484. Route::get('program-coordinator', 'ProgramCoordinatorsController@overview');
  485. Route::post('deleteObjective', 'Objective2Controller@delete');
  486. Route::get('rubrics_old', 'TemplatesController@newTemplate');
  487. Route::get('rubrics', 'TemplatesController@newTemplate_new');
  488. Route::get('template/{template}', 'TemplatesController@show');
  489. Route::post('saveTemplate', array('before' => 'csrf', 'uses' => 'TemplatesController@create'));
  490. Route::post('updateTemplate', array('before' => 'csrf', 'uses' => 'TemplatesController@update'));
  491. Route::post('deleteTemplate', array('before' => 'csrf', 'uses' => 'TemplatesController@destroy'));
  492. Route::get('course/{id}', 'CoursesController@showLimited');
  493. Route::get('rubrics/{template_id}/download', 'TemplatesController@download');
  494. Route::post('program/fetch', array('before' => 'csrf', 'uses' => 'ProgramsController@fetch'));
  495. Route::post('createCriterion', array('before' => 'csrf', 'uses' => 'CriteriaController@create'));
  496. Route::get('printRubric/{id}', 'TemplatesController@printview');
  497. Route::get('rubric/{rubric_id}', 'RubricsController@show_limited');
  498. Route::get('grouped_course/{code}/{number}/{semester_code}', 'CoursesController@showGrouped');
  499. Route::get('template-list', 'TemplatesController@index');
  500. Route::get('student_program_assessment-report/{program_id}', 'ProgramsController@studentProgramAssessmentReport');
  501. //Criteria and objectives
  502. //Route::get('program-criteria', 'CriteriaController@edit');
  503. Route::post('crtiteria/update', array('before' => 'csrf', 'uses' => 'CriteriaController@update'));
  504. //Route::get('program-objective', 'Objective2Controller@edit');
  505. // Print program report
  506. Route::get('print_program/{id}', 'ProgramsController@print_program');
  507. // Print course (grouped sections) report
  508. Route::get('print_course/{code}/{number}/{semester_code}', 'CoursesController@print_course');
  509. // Assessment reports
  510. Route::get('program-assessment-report/{program_id}', 'OutcomesController@programAssessmentReport');
  511. Route::get('assessment-reports', 'OutcomesController@managerAssessmentReports');
  512. // Learning Objectives
  513. Route::get('program/{program}/objectives', 'ObjectivesController@index');
  514. Route::post('updateObjective', array('before' => 'csrf', 'uses' => 'ObjectivesController@update'));
  515. Route::post('program/{id}/createObjective', array('before' => 'csrf', 'uses' => 'ObjectivesController@create'));
  516. Route::post('fetchObjective', array('before' => 'csrf', 'uses' => 'ObjectivesController@fetchObjective'));
  517. Route::post('fetchObjectivesForCriteria', array('before' => 'csrf', 'uses' => 'ObjectivesController@fetchObjectivesForCriteria'));
  518. //Objectives
  519. //Route::get('objective', 'Objective2Controller@edit');
  520. Route::post('createObjective', array('before' => 'csrf', 'uses' => 'Objective2Controller@create'));
  521. Route::post('updateObjective', array('before' => 'csrf', 'uses' => 'Objective2Controller@update'));
  522. Route::post('fetchObjectiveWithTrashed', array('before' => 'csrf', 'uses' => 'Objective2Controller@fetchObjectiveWithTrashed'));
  523. Route::post('deletePCOBO', 'Objective2Controller@deletePCOBO');
  524. Route::post('updatePCOBO', 'Objective2Controller@updatePCOBO');
  525. // Five year plans,
  526. Route::get('five-year-plans', 'FiveYearPlansController@index');
  527. Route::get('program/{program}/five-year-plans/create', 'FiveYearPlansController@create');
  528. Route::get('program/{program}/five-year-plans/{five_year_plan}', 'FiveYearPlansController@show');
  529. Route::get('program/{program}/five-year-plans/{five_year_plan}/edit', 'FiveYearPlansController@edit');
  530. Route::get('five-year-plans/{five_year_plan}/ms-word', 'FiveYearPlansController@msWord');
  531. Route::post('five-year-plans/store', array('before' => 'csrf', 'uses' => 'FiveYearPlansController@store'));
  532. Route::post('five-year-plans/update', array('before' => 'csrf', 'uses' => 'FiveYearPlansController@update'));
  533. // Annual plans
  534. Route::get('annual-plans', 'AnnualPlansController@index');
  535. Route::get('program/{program}/annual-plans/create', 'AnnualPlansController@create');
  536. Route::get('program/{program}/annual-plans/{five_year_plan}', 'AnnualPlansController@show');
  537. Route::get('program/{program}/annual-plans/{five_year_plan}/edit', 'AnnualPlansController@edit');
  538. Route::post('annual-plans/store', array('before' => 'csrf', 'uses' => 'AnnualPlansController@store'));
  539. Route::post('annual-plans/update', array('before' => 'csrf', 'uses' => 'AnnualPlansController@update'));
  540. Route::get('learning-outcomes/shows/{id}', 'OutcomesController@show');
  541. // TODO: Change route name
  542. Route::get('learning-outcomes/newshow/{id}', 'OutcomesController@newShow');
  543. Route::get('new-report/{id}', 'OutcomesController@newReport');
  544. Route::get('new-report-all', 'OutcomesController@newReportAll');
  545. Route::get('courses/{id}', 'CoursesController@newShow');
  546. Route::get('annual-plan-program/{program_id}/{typ_id?}', 'AnnualPlansController@showPlan');
  547. Route::post('annual-plan-fetchTYP/{program_id}', 'AnnualPlansController@fetchTYP');
  548. Route::post('annual-plan-CreateOrEdit/{program_id}', 'AnnualPlansController@CreateOrEdit');
  549. Route::post('annual-plan-postOnChange', 'AnnualPlansController@postAnnualPlan');
  550. Route::post('annual-plan-deleteCriteria', 'AnnualPlansController@deleteCriteria');
  551. //Gabriel added this
  552. Route::get('annual-plan-program/{program_id}/{typ_id?}', 'AnnualPlansController@showPlan');
  553. Route::post('annual-plan-fetchTYP/{program_id}/{typ_id}', 'AnnualPlansController@fetchTYP');
  554. Route::post('annual-plan-postOnChange', 'AnnualPlansController@postAnnualPlan');
  555. Route::post('annual-plan-deleteCriteria', 'AnnualPlansController@deleteCriteria');
  556. Route::get('annual-plan-show/{program_id}', 'AnnualPlansController@viewAllPlans');
  557. Route::post('fetchAllTables', 'AnnualPlansController@fetchAllTables');
  558. Route::post('annual-plan-postTA', 'AnnualPlansController@postTA');
  559. Route::post('annual-report-post', 'AnnualPlansController@postReport');
  560. Route::post('annual-plan-deleteTA', 'AnnualPlansController@deleteTA');
  561. Route::post('annual-plan-trans-report', 'AnnualPlansController@transformativeReport');
  562. // Transformative Actions
  563. Route::post('transformativeAction/approveTA', array('before' => 'csrf', 'uses' => 'TransformativeActionsController@approveTA'));
  564. // Show users plan de tres a~nos
  565. Route::get('three-years-plan/{program_id}', 'ThreeYearPlanController@threeYearsReport');
  566. Route::post('fetchThreeYears', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@fetchThreeYears'));
  567. Route::post('typ/lookUp', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@lookup_typ_semester_outcome'));
  568. Route::post('section2_arrive', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@section2_arrive'));
  569. Route::post('section2_on_change', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@section2_on_change'));
  570. Route::post('section3_arrive', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@section3_arrive'));
  571. Route::post('section3_on_change', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@section3_on_change'));
  572. Route::post('typ/getObjectives', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@getObjectivesForTYP'));
  573. Route::post('typ/updateOutcomeSemsters', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@typ_update_outcomes_semesters'));
  574. Route::post('typ/update', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@update_typ_outcomes_semesters'));
  575. Route::post('createAnnualPlan/{program_id}', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@createAnnualPlan'));
  576. Route::post('verifyAndCreate/{program_id}', array('before' => 'csrf', 'uses' => 'ThreeYearPlanController@verifyAndCreate'));
  577. });
  578. /**
  579. * Professor Routes
  580. */
  581. Route::group(array('prefix' => 'professor', 'before' => 'prof'), function () {
  582. Route::get('rubrics', 'TemplatesController@newTemplateProf');
  583. Route::get('templateForProfessor', 'TemplatesController@ProfIndex');
  584. Route::post('program', array('before' => 'csrf', 'uses' => 'ProfessorsController@program'));
  585. Route::get('activities/{activity_id}/rubrics', 'RubricsController@newRubric');
  586. Route::get('activities/{activity_id}/other_method', 'RubricsController@newOtherMethod');
  587. Route::get('activities/{activity_id}/rubric', 'RubricsController@show');
  588. Route::get('activities/{activity_id}/rubric/{rubric_id}/download', 'RubricsController@download');
  589. Route::get('activities/{activity_id}/rubric/{rubric_id}/print', 'RubricsController@printview');
  590. Route::get('activities/{activity_id}/assess', 'ActivitiesController@assess');
  591. Route::get('activities/{activity_id}/view_assessment', 'ActivitiesController@viewAssessment');
  592. Route::get('activities/{activity_id}/print_assessment', 'ActivitiesController@printAssessment');
  593. Route::post('activities/saveAssessment', array('before' => 'csrf', 'uses' => 'ActivitiesController@saveAssessment'));
  594. Route::post('activities/deleteAssessment', array('before' => 'csrf', 'uses' => 'ActivitiesController@deleteAssessment'));
  595. Route::delete('activities/{activity_id}/delete', 'ActivitiesController@destroy');
  596. Route::post('activities/{activity_id}/update', array('before' => 'csrf', 'uses' => 'ActivitiesController@update'));
  597. Route::get('courses/{id}', 'CoursesController@show');
  598. Route::get('courses/{semester}/{id}/students/{number}', 'StudentsController@show');
  599. Route::get('courses/{semester}/{id}/students/{number}/print_report', 'StudentsController@printStudentReport');
  600. Route::get('activities/{id}', 'ActivitiesController@show');
  601. Route::post('activities/{id}', array('before' => 'csrf', 'uses' => 'ActivitiesController@create'));
  602. Route::get('students', 'StudentsController@students');
  603. Route::get('program', 'ProfessorsController@program');
  604. Route::get("program_students/{program_id}", 'ProgramsController@studentsProgramAssessmentReportForProfessors');
  605. Route::get('personal-information', 'ProfessorsController@personalInformation');
  606. Route::get('manual', 'ProfessorsController@manual');
  607. Route::post('loadRubric', array('before' => 'csrf', 'uses' => 'RubricsController@fetch'));
  608. Route::post('saveRubric', array('before' => 'csrf', 'uses' => 'RubricsController@create'));
  609. Route::post('updateRubric', array('before' => 'csrf', 'uses' => 'RubricsController@update'));
  610. Route::post('deleteRubric', array('before' => 'csrf', 'uses' => 'RubricsController@destroy'));
  611. Route::get('learning-outcomes-criteria', 'CriteriaController@index');
  612. Route::get('learning-objectives-criteria', 'Objective2Controller@viewObjectives');
  613. Route::get('export_grades/{id}', 'CoursesController@exportGrades');
  614. Route::get('template/{template}', 'TemplatesController@show');
  615. Route::get('compare_activities/{activity_1}/{activity_2}', 'ActivitiesController@compareActivities');
  616. // Assessment reports
  617. //Route::get('professor-assessment-report/{outcome_id}', 'OutcomesController@professorAssessmentReport');
  618. Route::get('professor-assessment-reports', 'OutcomesController@professorAssessmentReport');
  619. Route::get('general-studies-overview', 'ProfessorsController@generalStudiesOverview');
  620. Route::get('template/{template}', 'TemplatesController@profShow');
  621. /////////////////////////////////////////
  622. //
  623. // Routes for view.
  624. //
  625. //
  626. //////////////////////////////////////////
  627. Route::get('fetchObjectiveOutcome', 'Objective2Controller@viewObjectiveOutcome');
  628. Route::get('viewObjectiveOutcome', 'Objective2Controller@viewObjectiveOutcome');
  629. });
  630. });