Project

General

Profile

Feature #14897

Adding "Instructor" field to indicate which Admin is Instructor of a "teaching" site

Added by Laurie Hurson about 1 month ago. Updated about 22 hours ago.

Status:
Testing Required
Priority name:
Normal
Assignee:
Category name:
Courses
Target version:
Start date:
2021-10-22
Due date:
% Done:

0%

Estimated time:

Description

Hi All,

Brooklyn College OER team members often create teaching sites for faculty to ease the onboarding process for teaching on the Commons. This means that the team member is often listed as the instructor rather than the actual faculty member, who is added as an admin later. This confuses students and faculty when they do not seethe correct person listed as the instructor on the course.

Would there be a way to add a field in the Users or Setting area to indicate which admin on the site should be listed as "Instructor" in the course directory?

I can see this feature possibly having utility if more faculty begin cloning/sharing courses.

group instructor bug.mp4 (12.1 MB) group instructor bug.mp4 Laurie Hurson, 2021-11-18 12:24 PM
Sites on dev test.mp4 (20.2 MB) Sites on dev test.mp4 Laurie Hurson, 2021-11-18 12:24 PM

Related issues

Is duplicate of CUNY Academic Commons - Feature #14096: Improvements to the way that Course "Instructor" field is populated and managedDuplicate2021-03-02

History

#1 Updated by Boone Gorges about 1 month ago

Yes, we can add something like this. Currently, we just set the 'instructor' to the course creator, and the only way this can be changed is if a network admin later goes and changes it in the dashboard.

Questions about the workflow:
1. Do we prompt for Instructor during the creation workflow? If so, where? Perhaps this would be one of the fields that appears if you select 'Teaching' as the site purpose, with the default value set to the current user.
2. Do we offer this setting for Teaching groups as well, or only sites?
3. Can anyone make anyone else an Instructor? I can imagine a case where a user makes someone else an "instructor" just for a laugh. We could (a) limit who can select Instructors, (b) limit who can be selected as an Instructor, (c) introduce some some sort of verification step (an email to the designated instructor, with a link that must be clicked?), or (d) do nothing and just hope that it's not abused

#2 Updated by Laurie Hurson about 1 month ago

Thanks for this feedback Boone. Some thoughts below...

Questions about the workflow:
1. Do we prompt for Instructor during the creation workflow? If so, where? Perhaps this would be one of the fields that appears if you select 'Teaching' as the site purpose, with the default value set to the current user.

Related to question 3 below, i think the addition of this feature in the creation process could cause more confusion than if it's implemented as a setting that is available once the group or site is created and running. If implemented within the group/site settings only admins on the teaching group or site could be listed as instructor.

2. Do we offer this setting for Teaching groups as well, or only sites?

Yes, I think we want to be able to indicate a different admin as instructor for both groups and sites.

3. Can anyone make anyone else an Instructor? I can imagine a case where a user makes someone else an "instructor" just for a laugh.

I can imagine this maybe happening too, which is why i suggested that in order to be listed as instructor the person must be listed as admin on the teaching group or site. This would mean that the instructor cannot be set during the creation stage, and would need to be field in group>manage or Site>settings.

We could (a) limit who can select Instructors, (b) limit who can be selected as an Instructor, (c) introduce some some sort of verification step (an email to the designated instructor, with a link that must be clicked?),

Yes to (a) and (b) I would think we want to limit it to only group/site admins can be listed as instructor. I think an email would create a level of complexity that could be avoided if it is limited to admins.

#3 Updated by Boone Gorges about 1 month ago

  • Category name set to Courses
  • Assignee set to Raymond Hoh
  • Target version set to 1.19.0

Thanks, Laurie. Your solution is brilliant. We'll only put the field in the settings for existing sites/groups, and we'll limit selection to existing admins of the group/site. This is actually simpler because we can use a dropdown.

Ray, you want to take the lead on this? Put it in the Teaching-only settings, alongside 'Academic Term' and 'Disciplinary Cluster', when editing a site (https://github.com/cuny-academic-commons/cac/blob/ef763c73be9b4b30f1301ce3f3072f46e35fe676/wp-content/mu-plugins/cac-functions.php#L2291) or when editing a group (https://github.com/cuny-academic-commons/cac/blob/ef763c73be9b4b30f1301ce3f3072f46e35fe676/wp-content/themes/bp-nelo/functions.php#L713). Field should not appear during creation. There's internal support for multiple instructor IDs, so if you want to use a multiselect or Select2 or something, that would work. Might want to have a note along the lines of "Choose one or more of your [site/group] administrators to be listed as Instructor for the course", to make it clear where the dropdown/multiselect is pulling from. Then, use https://github.com/cuny-academic-commons/cac-courses/blob/99fb592b27452fc604ae8250204cdb0b6251327f/src/Course.php#L233 to save to the Course.

#4 Updated by Boone Gorges about 1 month ago

  • Is duplicate of Feature #14096: Improvements to the way that Course "Instructor" field is populated and managed added

#5 Updated by Raymond Hoh 15 days ago

  • Status changed from New to Testing Required

I've got a first pass of this ready on cdev for testing.

To manage the course instructors:

  • If you are a group administrator, visit a group's "Manage > Details" page.
  • If you are a site administrator, visit the "Settings > General" page in the admin dashboard.

Commits: https://github.com/cuny-academic-commons/cac/compare/d6bb28d...cc36a67d34, also see cac-courses PR here .

Boone, I created some wrapper functions to easily fetch a course from a group ID or site ID:

The logic for those functions were copied from their respective cac_create_course_object_from_X() functions. Feel free to tweak them.

And I'm mirroring the course instructor IDs to group and blog meta, so we can reference them more easily with cac_get_site_instructors() and cac_get_group_instructors().

Again, feel free to tweak the code as you see fit.

#6 Updated by Boone Gorges 15 days ago

Thanks, Ray! I've tested this and it looks great.

#7 Updated by Laurie Hurson 13 days ago

Hi Boone and Ray,

I tried testing this on Cdev and ran into some weird issues.

With groups - in some groups its works fine and in others there is so way to choose the instructor and I am also unable to indicate campus or purpose.

With Sites- on cdev I cannot access any of my sites to test this.

Videos attached.

#8 Updated by Raymond Hoh 13 days ago

Hi Laurie,

Only group and site administrators will be populated in the Instructors field. So if you wish to add a new instructor, you will need to add that person as a group admin first or if your course is connected to a site, that person will need to be added as a site administrator.

To view other sites on cdev, you will need to modify your computer's HOSTS file to add the site you wish to view on cdev.

For example:

# cdev sites
146.96.128.252 commons.gc.cuny.edu
146.96.128.252 lauriehudson.commons.gc.cuny.edu
146.96.128.252 anothersite.commons.gc.cuny.edu

If you already added those entries to your HOSTS file, you might need to create a new site on cdev. Afterwards, you will need to add that site to your HOSTS file.

#9 Updated by Boone Gorges 13 days ago

Ray's instructions on configuring your computer to view sites on cdev are correct.

Regarding your group video, the second group you tried uncovered a bug where a fatal PHP error could be triggered in groups that do not have the 'Teaching' purpose. I've fixed this bug.

#10 Updated by Laurie Hurson 13 days ago

Oh man, sorry for this silly question! I always forget that I need to add extra sites into the hosts file. Sorry about that.

But glad I could help surface that bug, though.

Thanks all!

#11 Updated by Raymond Hoh 13 days ago

Regarding your group video, the second group you tried uncovered a bug where a fatal PHP error could be triggered in groups that do not have the 'Teaching' purpose. I've fixed this bug.

Good catch, Boone! Thanks for fixing it. And thank you to Laurie for finding the bug.

#12 Updated by Laurie Hurson about 22 hours ago

Tested adding an insturctor on a cdev site this morning and it worked as intended.

Also worked in groups now that the bug is fixed. Thanks Boone and Ray!

Also available in: Atom PDF