From c7b35cd3fccb5daa00bbd28973e60251d5d6314c Mon Sep 17 00:00:00 2001 From: Nathan Coad Date: Thu, 23 Jun 2016 10:57:08 +1000 Subject: [PATCH] add code for removal of leader/helper role --- booking.studygroup_leaders.inc | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/booking.studygroup_leaders.inc b/booking.studygroup_leaders.inc index 246f7ec..7cd0f02 100644 --- a/booking.studygroup_leaders.inc +++ b/booking.studygroup_leaders.inc @@ -360,6 +360,7 @@ function booking_studygroup_leadhelp_edit_form_submit($form, &$form_state) { global $event; $values = $form_state['input']; + $group_id = $form_state['values']['booking_gid']; watchdog('booking_debug', "
Studygroup leader/helper test submission form :\n@info
", array('@info' => print_r( $form_state, true))); $role_types = array( @@ -376,8 +377,27 @@ function booking_studygroup_leadhelp_edit_form_submit($form, &$form_state) { watchdog('booking_debug', "
Studygroup assignment previous value:\n@info\nCurrent value:\n@current
", array('@info' => print_r( $previous_value, true), '@current' => print_r( $person, true))); //compare it against $person - //if $person is now empty, do a delete query - //if $person is now different, run an update query + //if $person is now empty, set the person's role to zero + if (empty($person) && $previous_value != 0) { + watchdog('booking', "Clearing leader/helper role for nid @id and group @group. Used to have role @role.", + array('@id' => $previous_value, '@group' => $group_id, '@role' => $type_id)); + db_update('booking_studygroup_mapping') + ->fields(array( + 'booking_studygroup_role' => 0, + )) + ->condition('booking_studygroup_id', $group_id) + ->condition('booking_node_id', $previous_value) + ->execute(); + } + elseif (!empty($person)) { + preg_match('/[\s\w,]+\s\[(\d+)\]/i', $person, $matches); + $person_nid = $matches[1]; + //if $person is now different, run an update query + if ($person_nid != $previous_value) { + + } + } + } } }