function opigno_statistics_app_node_update in Opigno Statistics App 7
Implements hook_node_update().
Update node related data on statistic tables
Parameters
StdClass $node:
File
- ./
opigno_statistics_app.module, line 460 - Module file. Defines module hooks.
Code
function opigno_statistics_app_node_update($node) {
if ($node->type === 'course') {
$course = $node;
db_update('opigno_statistics_user_course')
->fields(array(
'course_name' => $course->title,
))
->condition('course_nid', $course->nid)
->execute();
//Update required on lessons on the course
$course_lessons = opigno_quiz_app_course_lessons($course->nid);
if (!empty($course_lessons)) {
$course_lesson_ids = array_keys($course_lessons[$course->nid]);
foreach ($course_lesson_ids as $course_lesson_id) {
$course_lesson = node_load($course_lesson_id);
$required = opigno_statistics_app_is_lesson_required_in_course($course_lesson, $course);
db_update('opigno_statistics_user_course_details')
->fields(array(
'required' => $required,
))
->where('opigno_statistics_user_course_fk IN (SELECT opigno_statistics_user_course_pk FROM {opigno_statistics_user_course} WHERE course_nid = :course_nid)', array(
':course_nid' => $course->nid,
), 'IN')
->condition('entity_id', $course_lesson_id)
->execute();
}
}
}
elseif (opigno_statistics_app_node_is_a_lesson($node)) {
db_update('opigno_statistics_user_course_details')
->fields(array(
'entity_name' => $node->title,
))
->condition('entity_id', $node->nid)
->condition('type', $node->type)
->execute();
}
}