PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 3.6.4
Tutor LMS – eLearning and online course solution v3.6.4
4.0.0 3.9.15 3.9.14 3.9.13 3.9.12 3.9.11 trunk 1.0.0 1.0.0-alpha 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.2.0 1.2.1 1.2.11 1.2.12 1.2.13 1.2.20 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.15 1.9.16 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.1.1 2.1.10 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.4.0 2.5.0 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 3.0.0 3.0.1 3.0.2 3.1.0 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.7.0 3.7.1 3.7.2 3.7.3 3.7.4 3.8.0 3.8.1 3.8.2 3.8.3 3.9.0 3.9.1 3.9.10 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.8 3.9.9
tutor / includes / droip / backend / ElementGenerator / PriceGenerator.php
tutor / includes / droip / backend / ElementGenerator Last commit date
ActionsGenerator.php 1 year ago AddRatingGenerator.php 1 year ago CourseMetaGenerator.php 1 year ago ElementGenerator.php 1 year ago MaterialGenerator.php 1 year ago Preview.php 1 year ago PriceGenerator.php 1 year ago SocialLinkGenerator.php 1 year ago ThumbnailGenerator.php 1 year ago
PriceGenerator.php
94 lines
1 <?php
2
3 /**
4 * Preview script for html markup generator
5 *
6 * @package tutor-droip-elements
7 */
8
9 namespace TutorLMSDroip\ElementGenerator;
10
11 use TutorLMSDroip\Helper;
12
13 if ( ! defined( 'ABSPATH' ) ) {
14 exit; // Exit if accessed directly.
15 }
16
17 /**
18 * Class ActionsGenerator
19 * This class is used to define all helper functions.
20 *
21 * @package TutorLMSDroip\ElementGenerator
22 */
23 trait PriceGenerator {
24
25 /**
26 * Generate actionbox markup
27 *
28 * @return string
29 */
30 private function generate_price_markup() {
31 $course_id = isset( $this->options['post'] ) ? $this->options['post']->ID : get_the_ID();
32 $type = isset( $this->properties['type'] ) ? $this->properties['type'] : 'free';
33 if ( ! $course_id ) {
34 return '';
35 }
36
37 // echo $type . " - " . $this->isPaidCourse($course_id);
38 switch ( $type ) {
39 case 'free':{
40 if ( ! $this->isPaidCourse( $course_id ) ) {
41 return $this->generate_common_element();
42 }
43 break;
44 }
45 case 'paid':{
46 if ( $this->isPaidCourse( $course_id ) && Helper::is_course_for_single_purchaseble($course_id) ) {
47 return $this->generate_common_element();
48 }
49 break;
50 }
51 default: {
52 return '';
53 }
54 }
55 return '';
56 }
57 private function generate_price_value_markup() {
58 $course_id = isset( $this->options['post'] ) ? $this->options['post']->ID : get_the_ID();
59 $type = isset( $this->properties['type'] ) ? $this->properties['type'] : 'sale';
60 if ( ! $course_id || ! $this->isPaidCourse( $course_id ) ) {
61 return '';
62 }
63
64 $sale_price = self::get_course_meta( 'sale_price', $course_id, $this->options );
65 $course_price = self::get_course_meta( 'course_price', $course_id, $this->options );
66
67 switch ( $type ) {
68 case 'sale':{
69 if ( $sale_price ) {
70 return $this->generate_common_element( false, $sale_price );
71 } else {
72 return $this->generate_common_element( false, $course_price );
73 }
74 break;
75 }
76 case 'regular':{
77 if ( $sale_price ) {
78 return $this->generate_common_element( false, $course_price );
79 }
80 break;
81 }
82 default: {
83 return '';
84 }
85 }
86 return '';
87 }
88
89 private function isPaidCourse( $course_id ) {
90 $is_paid_course = tutor_utils()->is_course_purchasable( $course_id );
91 return $is_paid_course;
92 }
93 }
94