TracCloud: Dissertation Scheduling: Difference between revisions

From Redrock Wiki

No edit summary
No edit summary
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{WIP}}
{{TracCloudGuideTabs}}
{{TracCloudGuideTabs}}
<div class="tcWidgetPage">
<div class="tcWidgetPage">
Line 8: Line 7:
<div class="pageTitle">Dissertation Scheduling</div>
<div class="pageTitle">Dissertation Scheduling</div>


The Dissertation Scheduling feature allows faculty to join existing student appointments for programs other than their own. Faculty will see a view similar to the example below, but this can be customized for your instance. They will see appointments for <i>programs</i> other than their own. A program custom field will need to be created in both the appointment record and the faculty record to manage this linking.
The Dissertation Scheduling feature allows faculty to join existing student appointments for programs other than their own. Faculty will see a view similar to the example below, but this can be customized for your instance. A program custom field will need to be created in both the appointment record and the faculty record to manage this linkage.


From the provided list, a faculty member will click the appointment they wish to join. This will send them a confirmation email and will link that appointment to them so that other faculty cannot also join that appointment.
From the provided list of appointments, a faculty member will click the one they wish to join. This will send them a confirmation email and will link that appointment to them so that other faculty won't see it in their results.


[[File:510532.png|800px]]
[[File:510532.png|800px]]
Line 25: Line 24:


* <b>Department/Program Title</b>
* <b>Department/Program Title</b>
::
::Enter your preferred phrasing for the program/department field.


* <b>Faculty Link Field</b>
* <b>Faculty Link Field</b>
Line 188: Line 187:
[[File:104641.png|600px]]
[[File:104641.png|600px]]


<hr>
<hr>
==<b>Usage</b>==
<hr>
<hr>


Line 202: Line 197:
[[TracCloud_Report:_Cases_Listing|Example]]
[[TracCloud_Report:_Cases_Listing|Example]]


<!--[[Category:TracCloud Manual]]-->
[[Category:TracCloud Manual]]
</div>
</div>

Latest revision as of 19:26, 1 June 2026

Optional Add-on
Dissertation Scheduling

The Dissertation Scheduling feature allows faculty to join existing student appointments for programs other than their own. Faculty will see a view similar to the example below, but this can be customized for your instance. A program custom field will need to be created in both the appointment record and the faculty record to manage this linkage.

From the provided list of appointments, a faculty member will click the one they wish to join. This will send them a confirmation email and will link that appointment to them so that other faculty won't see it in their results.


Configuration

Options for this feature are found in Other > Other Options > Preferences > Dissertation Scheduling.



  • Profile for Dissertation Appointments (required)
Choose the profile that faculty will be able to find and commit to appointments in.
  • Department/Program Title
Enter your preferred phrasing for the program/department field.
  • Faculty Link Field
This is the field that links appointments to faculty. This should almost always be set to: Appointments.CustomData->>'$.FacultyID'
  • Appointment Program Link Field
This should be the appointment custom field containing the program code.
  • faculty Program Link Field
The faculty equivalent of the above field.



This fields determine how the faculty-facing appointment list displays. The settings for the display at the top of this article can be found below.


Expand to view HTML example



Prefix Style or Scripts

<style>

table.apptlisting tr:nth-child(even) > * {
  background: white;
}

table.apptlisting tr:hover > * {
  background: lightgrey;
}

table.apptlisting {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr);
  width: 100%;
  height: 400px;
  overflow-y: scroll;
}

table.apptlisting td {
  padding-bottom: 0 !important;
  max-width: 250px;
}

table.apptlisting th {
  max-width: 250px;
}

table.apptlisting td[colspan="5"] {
  grid-column: 1 / -1;
  border-top: none;
  padding-top: 0;
  padding-bottom: 8px !important;
  max-width: 100%;
}

table.apptlisting .rowHead th {
  position: sticky;
  top: 0;
  background-color: white;
}

table.apptlisting .apptconfirmed, table.apptlisting .apptconfirmed td {
background-color: #fffdd0;
}

table.apptlisting thead,
table.apptlisting tbody,
table.apptlisting tr {
  display: contents;
}

table.apptlisting tr:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);
}

</style>
<script>
  curPageLength = 6;

function evenOdd(i) {
   return ((i % 2) == 0) ? 'Even' : 'Odd';
}
function getApptClass(row) {
  if (row.Status2 == 'Faculty Confirmed') {
    return 'text-success apptconfirmed';
  } else {
    return '';
  }
}
function getConfirmedIcon(row) {
  if (row.Status2 == 'Faculty Confirmed') {
    return '<i class="fa-regular fa-square-check" > </i>';
  } else {
    return '<i class="fa-regular fa-square" > </i>';
  }
}
</script>

Header HTML

<div>Choose an appointment date and time for one of the tentatively scheduled dissertation exams below:</div>
<table class="apptlisting recordListing table table-striped table-hover " >
<thead class="rowHead" >
<tr >
    <th><i class="fa-regular fa-check" > </i></th><th >Date / Time</th><th>${data.progTitle}</th><th >Student</th><th >Location</th>
</tr>
</thead>

Row HTML

<tr class="lrow row${evenOdd(i)} ${getApptClass(row)} appointment-block" data-recid="${row.Sequence}"
    data-datetime="${row.StartDT}" onkeyup="enterToClick();">
    <td><span tabindex="0">${getConfirmedIcon(row)}</span></td>
    <td>${convertISO_toFormat(row.StartDT, 'Y-m-d g:ia')}</td>
    <td>${row.ProgramName}</td>
    <td>${row.StudentName}</td>
    <td>${row.Location ?? ''}</td>
</tr>

Footer HTML

</table>
<div>Click and then confirm a dissertion exam time. Thank you!</div>
<div class="pull-right">
<button class="btn btn-default mr-1" type="button" onClick="prevPage();" >Previous</button>
<a href="#" onClick="gotoPage();" ><span id="thisCurPage" > </span></a>
<button class="btn btn-default ml-1" type="button" onClick="nextPage();" >Next</button>
<script>
  jQuery(function() {
    jQuery('#thisCurPage').text(curPage + ' / ' + curMaxPages)
  })
</script>

</div>



  • Link for faculty
The link provided in the bottom of this menu is what faculty will need to visit to search for appointments. This can be provided in batch emails, embedded in the welcome message, etc.

Additionally, it's important to keep in mind that when a faculty member commits to an appointment, they will be sent a copy of the consultant confirmation email. You may want to utilize Twig to greet the faculty instead of the consultant, which can be accomplished with Twig. Go to Other > Other Options > Profiles > [Your Profile] > Prefs > Emails > Confirmation Emails > Consultant confirmation email. An example for how you can change this email if the faculty is the recipient can be seen below.

{% if emailItem.recipientType == 'Faculty' %}
Hello {{Faculty.FirstName}},
{% else %}
Hello {{Consultant.First_Name}},
{% endif %}


For information on purchasing the Dissertation Scheduling Module, reach out to [email protected]
For Dissertation Scheduling functionality questions, reach out to [email protected]


See Also:

Example