<% # Copyright (C) 2011 - present Instructure, Inc. # # This file is part of Canvas. # # Canvas is free software: you can redistribute it and/or modify it under # the terms of the GNU Affero General Public License as published by the Free # Software Foundation, version 3 of the License. # # Canvas is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU Affero General Public License for more # details. # # You should have received a copy of the GNU Affero General Public License along # with this program. If not, see . %> <%= fields_for :settings do |f| %>
<%= mt(:description, <<~TEXT) This plugin allows final grades to be published back to a student information system (SIS). When enabled, the user will be given an option in the gradebook to publish these grades. This will occur via a POST request to the specified publish endpoint. Each type defines it's own content format and mime type. The response from the endpoint does not matter and is currently ignored. For example, the Instructure formatted CSV will POST a csv file with mime type 'text/csv' to the specified endpoint, containing the following columns: "publisher\\_id", "publisher\\_sis\\_id", "course\\_id", "course\\_sis\\_id", "section\\_id", "section\\_sis\\_id", "student\\_id", "student\\_sis\\_id", "enrollment\\_id", "enrollment\\_status", "score", "grade", "custom\\_grade\\_status" (Note: the "grade" column is only returned if the course specifies a grading standard) For each student in the course being published, there will be 1 or more rows in the published csv. Specifically, there will be 1 row for each login that the student has in the course's root account. Most of the time this will result in 1 row per student, but if the student has multiple logins, there will be a row for each of them. If "Include final grade overrides" is checked, and the feature for Final Grade Override is enabled, students with an override grade/score will receive that in place of the calculated score and grade. If the Custom Status Labels feature is enabled, the "custom\\_grade\\_status" column will contain any custom grade statuses applied to the final grade overrides for that student. TEXT %>
<%= f.blabel :format_type, :en => "Output format type" %> <%= f.select :format_type, Course.valid_grade_export_types.keys.map{|k| [Course.valid_grade_export_types[k][:name], k]}, { selected: settings[:format_type] } %>
<%= f.blabel :publish_endpoint, :en => "Endpoint to publish to" %> <%= f.text_field :publish_endpoint, value: settings[:publish_endpoint] %>
<%= f.check_box :wait_for_success, { checked: Canvas::Plugin.value_to_boolean(settings[:wait_for_success]) }, 'yes', 'no' %> <%= f.label :wait_for_success, :en => "Wait for success notifications" %>
<%= f.check_box :include_final_grade_overrides, { checked: Canvas::Plugin.value_to_boolean(settings[:include_final_grade_overrides]) }, "yes", "no" %> <%= f.label :include_final_grade_overrides, :en => "Include final grade overrides" %>
<%= f.blabel :success_timeout, :en => "Success notification timeout (in seconds)" %> <%= f.text_field :success_timeout, value: settings[:success_timeout] %>
<% end %>