示例#1
0
 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;
 }
示例#2
0
 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'));
                 }
             }
         }
     }
 }
示例#3
0
    }
    ?>
      </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' => '&laquo;', 'next_text' => '&raquo;'));
        ?>
  
      </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' => ''));
    }
}
示例#4
0
 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;
 }
示例#5
0
$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');
?>