function instructor_complete_unit() { if (!isset($_POST['security']) || !wp_verify_nonce($_POST['security'], 'vibe_security') || !is_numeric($_POST['course_id']) || !is_numeric($_POST['user_id']) || !is_numeric($_POST['id']) || !current_user_can('edit_posts')) { echo '<div id="message" class="info notice"><p>' . __('Security check failed !', 'vibe') . '</p></div>'; die; } if (bp_course_is_member($_POST['course_id'], $_POST['user_id'])) { $time = apply_filters('wplms_force_complete_unit', time(), $_POST['id'], $_POST['course_id'], $_POST['user_id']); update_user_meta($_POST['user_id'], $_POST['id'], $time); update_post_meta($_POST['id'], $_POST['user_id'], 0); $curriculum = bp_course_get_curriculum_units($_POST['course_id']); $per = round(100 / count($curriculum), 2); $progress = bp_course_get_user_progress($_POST['user_id'], $_POST['course_id']); $new_progress = $progress + $per; if ($new_progress > 100) { $new_progress = 100; } bp_course_update_user_progress($_POST['user_id'], $_POST['course_id'], $new_progress); do_action('wplms_unit_instructor_complete', $_POST['id'], $_POST['user_id'], $_POST['course_id']); } die; }
function buddydrive_file_downloaded($buddyfile) { if (!empty($buddyfile->ID)) { if ($buddyfile->check_for == 'course') { if (!is_user_logged_in()) { wp_die(__('File can not be accessed', 'vibe')); } $user_id = get_current_user_id(); $enable = get_post_meta($buddyfile->ID, 'buddydrive_course', true); if (!empty($enable)) { $course_id = get_post_meta($buddyfile->ID, 'course', true); if (!bp_course_is_member($course_id, $user_id)) { wp_die(__('File can not be accessed', 'vibe')); } } } } }
} ?> </ul> </div> </div> <div class="show_course_reviews"> <?php if (get_comments_number() == 0) { echo '<div id="message" class="notice"><p>'; _e('No Reviews found for this course.', 'vibe'); echo '</p></div>'; } else { ?> <ol class="reviewlist commentlist"> <?php wp_list_comments(array('type' => 'comment', 'reverse_top_level' => false, 'avatar_size' => 120, 'callback' => 'wplms_course_reviews')); paginate_comments_links(array('prev_text' => '«', 'next_text' => '»')); ?> </ol> <?php } ?> </div> <?php $course_review = get_post_meta(get_the_ID(), 'vibe_course_review', true); if (is_user_logged_in() && vibe_validate($course_review) && bp_course_is_member($post->ID, $user_id)) { comment_form(array('fields' => $fields, 'comment_field' => $comment_field, 'label_submit' => __('Post Review', 'vibe'), 'title_reply' => '<span>' . __('Post Review', 'vibe') . '</span>', 'logged_in_as' => '', 'comment_notes_after' => '')); } }
function auto_progress($progress, $course_id) { $vibe_course_auto_progress = get_post_meta($course_id, 'vibe_course_auto_progress', true); if (vibe_validate($vibe_course_auto_progress)) { $course_duration_parameter = apply_filters('vibe_course_duration_parameter', 86400, $course_id); $user_id = get_current_user_id(); if (bp_course_is_member($course_id, $user_id)) { $end_time = apply_filters('bp_course_auto_progress_user_start_time', get_user_meta($user_id, $course_id, true)); if (empty($end_time)) { $end_time = time(); } } else { $start_date = get_post_meta($course_id, 'vibe_start_date', true); if (empty($start_date)) { $start_date = get_post_field('post_date', $course_id); $start_time = strtotime($start_date); } else { $start_time = strtotime($start_date); } } } else { if (is_user_logged_in()) { $user_id = get_current_user_id(); if (bp_course_is_member($course_id, $user_id)) { $progress = bp_course_get_user_progress($user_id, $course_id); if (!empty($progress)) { return $progress; } else { return 0; } } } } if (isset($end_time)) { if ($end_time < time()) { $progress = 100; } else { $elapsed = ($end_time - time()) / $course_duration_parameter; $total = get_post_meta($course_id, 'vibe_duration', true); $progress = 100 - round($elapsed / $total, 2) * 100; } } else { if (isset($start_time)) { $elapsed = (time() - $start_time) / $course_duration_parameter; $total = get_post_meta($course_id, 'vibe_duration', true); $progress = 100 - round($elapsed / $total, 2) * 100; } } if ($progress < 0) { $progress = 0; } if ($progress > 100) { $progress = 100; } return $progress; }
$flag = apply_filters('wplms_course_activity_visibility', 1); global $bp; if ($flag) { ?> <li id="activity-course_<?php echo $bp->current_item; ?> " class="selected"><a href="#" title=""><?php _e('All Activity', 'vibe'); ?> </a></li> <?php } ?> <?php if (is_user_logged_in() && bp_course_is_member()) { ?> <li id="activity-course_personal_<?php echo $bp->current_item; ?> "><a href="#" title=""><?php _e('My Activity', 'vibe'); ?> </a></li> <?php } ?> <li id="activity-filter-select" class="last"> <label for="activity-filter-by"><?php _e('Show:', 'vibe'); ?>