Skip to content
Cydney Caldwell edited this page Mar 26, 2019 · 5 revisions

Customization

This guide lists most of the features and settings that may need to be customized.

Sign-On

The phpWebsite content management system supports local (stand-alone) accounts, and Shibboleth Single Sign-on. The authentication system is pluggable, so support for other authentication systems can be added.

Domain Names

The primary domain name (its web address or URL) is configurable through code changes. This is used for the "From" address when Internship Inventory sends emails. Making this configurable through a settings UI is on our TODO list.

Semesters / Terms

The default set of semesters are labeled: Spring YYYY, Summer 1 YYYY, Summer 2 YYYY, Fall YYYY (where YYYY is replaced with the four-digit year). These are stored in the intern_term table, and can be easily re-named. Adding additional terms is possible, but updates to the logic in /class/Term.php will be necessary to handle creating the terms in the correct order at the correct times of the year.

Departments / Courses / Majors

The departments and courses are manually added by an administrator. The list of majors is obtained through a SOAP web service and keyed on the major's name to avoid duplicates.

Student Information

The student information system is pluggable. Currently, Internship Inventory supports querying a SOAP web service (which we connect to our Banner database), or querying a table in the Internship Inventory's database.

SOAP Web Service

If your school is also a Banner customer, we're happy to share our SOAP back-end. However, we do not publicly share that code (it's a separate project). Please inquire with us for access to our Web Service code (it may require further customization to fit your Banner environment).

Local Database Student Table

We plan on moving to a REST-based web service in the near future.

The local database table option allows you to populate the table in any way you'd like, including nightly data exports/imports. You would need to supply an external script to write student data to the table. This is the simplest and most self-contained option.

PDF Contract Overlay

The internship contract PDF is customizable. Currently, you'll need to place your PDF file in /pdf directory, and modify InternshipContractPdfView.php to point to your document. The field locations ([x,y]-coordinates) are also located in this file.

Workflow

The workflow states are listed in class/WorkflowState/ and the corresponding transitions are in class/WorkflowTransition/. The states and transitions can be added to or updated to customize the workflow for your campus.

Email Text

The main body text of emails that Internship Inventory sends are stored in /templates/email/. These templates can be easily modified to use whatever text is needed.

Themes

The overall design and layout of the site is controlled by a phpWebsite theme. The default theme is a mobile-first responsive theme. It is purposefully made to be a neutral design in order to work for as many use cases as possible. To add your campus' logo and colors, please see the phpWebsite project's theme documentation.