<input type="hidden" name="unit_page_num" id="unit_page_num" value="1" /> <input type="hidden" name="unit_pagination" class="unit_pagination" value="<?php echo $unit_pagination; ?> " /> <input type="hidden" name="action" value="update_unit" /> <input type="hidden" name="active_element" id="active_element" value="<?php echo isset($_GET['active_element']) ? (int) $_GET['active_element'] : 1; ?> " /> <?php $unit = new Unit($unit_id); $unit_object = $unit->get_unit(); $unit_id = isset($unit_object->ID) && $unit_object->ID !== '' ? $unit_object->ID : ''; $can_publish = CoursePress_Capabilities::can_change_course_unit_status($course_id, $unit_id); $data_nonce = wp_create_nonce('toggle-' . $unit_id); ?> <div class='section static'> <div class='unit-detail-settings'> <h3><i class="fa fa-cog"></i> <?php _e('Unit Settings', 'cp'); ?> <div class="unit-state"> <?php $control_position = 'off'; if ($unit_id > 0 && $unit_object && 'publish' == $unit_object->post_status) { $control_position = 'on'; } ?>
<i class="fa fa-times-circle cp-move-icon remove-btn"></i> </a></div> <?php } ?> <div class="unit-buttons unit-control-buttons"> <a href="<?php echo admin_url('admin.php?page=course_details&tab=units&course_id=' . $course_id . '&unit_id=' . $unit_object->ID . '&action=edit'); ?> " class="button button-units save-unit-button"><?php _e('Settings', 'cp'); ?> </a> <?php if (CoursePress_Capabilities::can_change_course_unit_status($course_id, $unit_object->ID)) { ?> <a href="<?php echo admin_url('admin.php?page=course_details&tab=units&course_id=' . $course_id . '&unit_id=' . $unit_object->ID . '&action=change_status&new_status=' . ($unit_object->post_status == 'unpublished') ? 'publish' : 'private'); ?> " class="button button-<?php echo $unit_object->post_status == 'unpublished' ? 'publish' : 'unpublish'; ?> "><?php echo $unit_object->post_status == 'unpublished' ? __('Publish', 'cp') : __('Unpublish', 'cp'); ?> </a> <?php } ?> </div>
function change_unit_state() { $user_id = empty($_POST['user_id']) ? get_current_user_id() : (int) $_POST['user_id']; $course_id = (int) $_POST['course_id']; $unit_id = (int) $_POST['unit_id']; $nonce_check = wp_verify_nonce($_POST['unit_nonce'], 'toggle-' . $unit_id); $cap = CoursePress_Capabilities::can_change_course_unit_status($course_id, $unit_id, $user_id); $doing_ajax = defined('DOING_AJAX') && DOING_AJAX ? true : false; $ajax_response = array(); if ($nonce_check && $cap && $doing_ajax) { $unit = new Unit($unit_id); $unit->change_status($_POST['unit_state']); $ajax_response['toggle'] = true; $ajax_response['nonce'] = wp_create_nonce('toggle-' . $unit_id); /** * Unit status toggled. * * @since 1.2.1 * * @param int course_id Parent course ID. * @param int unit_id Unit ID about to be updated. * @param int user_id User initiating the update. */ do_action('coursepress_course_status_changed', $course_id, $unit_id, $user_id); } else { $ajax_response['toggle'] = false; $ajax_response['reason'] = __('Invalid request. Security check failed.', 'cp'); /** * Unit status toggled. * * @since 1.2.1 * * @param int course_id Parent course ID. * @param int unit_id Unit ID about to be updated. * @param int user_id User initiating the update. */ do_action('coursepress_course_status_change_fail', $course_id, $unit_id, $user_id); } $response = array('what' => 'instructor_invite', 'action' => 'instructor_invite', 'id' => 1, 'data' => json_encode($ajax_response)); ob_end_clean(); ob_start(); $xmlResponse = new WP_Ajax_Response($response); $xmlResponse->send(); ob_end_flush(); }
<?php $style = ''; $can_list_count = 0; $list_order = 1; $courses = $wp_course_search->get_results(); foreach ($courses as $course) { $can_list = false; // $can_create = CoursePress_Capabilities::can_creare_course(); $can_update = CoursePress_Capabilities::can_update_course($course->ID); $can_delete = CoursePress_Capabilities::can_delete_course($course->ID); $can_publish = CoursePress_Capabilities::can_change_course_status($course->ID); $can_create_unit = CoursePress_Capabilities::can_create_course_unit($course->ID); $can_update_unit = CoursePress_Capabilities::can_update_course_unit($course->ID); $can_view_unit = CoursePress_Capabilities::can_view_course_units($course->ID); $can_delete_unit = CoursePress_Capabilities::can_delete_course_unit($course->ID); $can_publish_unit = CoursePress_Capabilities::can_change_course_unit_status($course->ID); $my_course = CoursePress_Capabilities::is_course_instructor($course->ID); $creator = CoursePress_Capabilities::is_course_creator($course->ID); $zero_instructor_courses = false; if (!$my_course && !$creator && !$can_update && !$can_delete && !$can_publish && !$can_view_unit) { continue; } else { $can_list = true; $can_list_count++; } $course_obj = new Course($course->ID); $course_object = $course_obj->get_course(); $style = ''; //( 'alternate' == $style ) ? '' : 'alternate'; ?> <tr id='user-<?php