Documentation ¶
Overview ¶
Package uwquest provides methods for accessing data from the UWaterloo Quest Information System, primarily through the Client struct.
Index ¶
Constants ¶
const ( BaseURL = "https://quest.pecs.uwaterloo.ca/psc/SS/ACADEMIC/SA/c/" StudentCenterURL = BaseURL + "SA_LEARNER_SERVICES.SSS_STUDENT_CENTER.GBL" GradesURL = BaseURL + "UW_SS_MENU.UW_SSR_SSENRL_GRDE.GBL" SchedulesURL = BaseURL + "SA_LEARNER_SERVICES.SSR_SSENRL_LIST.GBL" )
Quest endpoint URLs.
Variables ¶
var ErrBadLogin = errors.New("uwquest: bad login (invalid user ID or password)")
ErrBadLogin is an error which identifies a login error.
Functions ¶
This section is empty.
Types ¶
type Class ¶
type Class struct { Index int Number, Section int Component string Schedule string Location string Instructor string StartEndDate string }
Class represents a class within a particular course.
type Client ¶
type Client struct { // Session refers the HTTP client session that performs Client's underlying // requests. // // This Session is authorized with the Quest API backend upon login. Session *http.Client // Jar is a cookiejar that contains Session's cookies. Jar *cookiejar.Jar }
Client is capable of interacting with the UW Quest API.
func NewClient ¶
NewClient returns a new Client.
It needs to be authenticated with the Quest backend using Login, before it can fetch other data from Quest.
func (*Client) Grades ¶
func (c *Client) Grades(termIndex int) ([]*CourseGrade, error)
Grades fetches the grades for a particular term.
func (*Client) Login ¶
Login authenticats the Client session with the Quest API backend.
Requires a username (WatIAM ID) and password.
func (*Client) Schedules ¶
func (c *Client) Schedules(termIndex int) ([]*CourseSchedule, error)
Schedules fetches course schedules for a particular term.
func (*Client) TermsWithSchedule ¶
TermsWithSchedule fetches the study terms for which Quest has course schedules available.
type CourseGrade ¶
type CourseGrade struct { Index int Name string Description string GradingBasis string Units *float32 // may be nil Grade string GradePoints *float32 // may be nil }
A CourseGrade represents the grades for a particular course.
func (*CourseGrade) String ¶
func (cg *CourseGrade) String() string
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package examples is a directory that contains example Go programs that use package uwquest to access Quest data.
|
Package examples is a directory that contains example Go programs that use package uwquest to access Quest data. |
gradecheck
Module
|