PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 1.3.2
Tutor LMS – eLearning and online course solution v1.3.2
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 / templates / dashboard / earning.php
tutor / templates / dashboard Last commit date
earning 7 years ago enrolled-courses 7 years ago instructor 7 years ago reviews 7 years ago settings 7 years ago withdraw-method-fields 7 years ago dashboard.php 7 years ago earning.php 7 years ago enrolled-courses.php 7 years ago index.php 7 years ago logged-in.php 7 years ago my-courses.php 7 years ago my-profile.php 7 years ago purchase_history.php 7 years ago quiz-attempts.php 7 years ago registration.php 7 years ago reviews.php 7 years ago settings.php 7 years ago wishlist.php 7 years ago withdraw.php 7 years ago
earning.php
181 lines
1 <?php
2 /**
3 * Template for displaying instructors earnings
4 *
5 * @since v.1.1.2
6 *
7 * @author Themeum
8 * @url https://themeum.com
9 */
10
11 global $wpdb;
12
13 $instructor_id = get_current_user_id();
14
15 $earning_sum = tutor_utils()->get_earning_sum();
16 if ( ! $earning_sum){
17 echo '<p>'.__('No Earning info available', 'tutor' ).'</p>';
18 return;
19 }
20
21 $user_id = get_current_user_id();
22 $complete_status = tutor_utils()->get_earnings_completed_statuses();
23 $complete_status = "'".implode("','", $complete_status)."'";
24
25 /**
26 * Getting the last week
27 */
28 $start_date = date("Y-m-01");
29 $end_date = date("Y-m-t");
30
31 /**
32 * Format Date Name
33 */
34 $begin = new DateTime($start_date);
35 $end = new DateTime($end_date.' + 1 day');
36 $interval = DateInterval::createFromDateString('1 day');
37 $period = new DatePeriod($begin, $interval, $end);
38
39 $datesPeriod = array();
40 foreach ($period as $dt) {
41 $datesPeriod[$dt->format("Y-m-d")] = 0;
42 }
43
44 /**
45 * Query This Month
46 */
47
48 $salesQuery = $wpdb->get_results( "
49 SELECT SUM(instructor_amount) as total_earning,
50 DATE(created_at) as date_format
51 from {$wpdb->prefix}tutor_earnings
52 WHERE user_id = {$user_id} AND order_status IN({$complete_status})
53 AND (created_at BETWEEN '{$start_date}' AND '{$end_date}')
54 GROUP BY date_format
55 ORDER BY created_at ASC ;");
56
57 $total_earning = wp_list_pluck($salesQuery, 'total_earning');
58 $queried_date = wp_list_pluck($salesQuery, 'date_format');
59 $dateWiseSales = array_combine($queried_date, $total_earning);
60
61 $chartData = array_merge($datesPeriod, $dateWiseSales);
62 foreach ($chartData as $key => $salesCount){
63 unset($chartData[$key]);
64 $formatDate = date('d M', strtotime($key));
65 $chartData[$formatDate] = $salesCount;
66 }
67
68 ?>
69
70
71 <h3><?php _e('Earnings', 'tutor') ?></h3>
72
73 <div class="tutor-dashboard-content-inner">
74
75 <div class="tutor-dashboard-inline-links">
76 <ul>
77 <li class="active"><a href="<?php echo tutor_utils()->get_tutor_dashboard_page_permalink('earning'); ?>"> <?php _e('Earning'); ?></a>
78 </li>
79 <li><a href="<?php echo tutor_utils()->get_tutor_dashboard_page_permalink('earning/report'); ?>"> <?php _e('Report'); ?> </a>
80 </li>
81 <li><a href="<?php echo tutor_utils()->get_tutor_dashboard_page_permalink('earning/statements'); ?>">
82 <?php _e('Statements'); ?> </a> </li>
83 </ul>
84 </div>
85
86 <div class="tutor-dashboard-info-cards">
87 <div class="tutor-dashboard-info-card">
88 <p>
89 <span> <?php _e('My Balance', 'tutor'); ?> </span>
90 <span class="tutor-dashboard-info-val"><?php echo tutor_utils()->tutor_price($earning_sum->balance); ?></span>
91 </p>
92 </div>
93 <div class="tutor-dashboard-info-card" title="<?php _e('All Time', 'tutor'); ?>">
94 <p>
95 <span> <?php _e('My Earning', 'tutor'); ?> </span>
96 <span class="tutor-dashboard-info-val"><?php echo tutor_utils()->tutor_price($earning_sum->instructor_amount); ?></span>
97 </p>
98 </div>
99 <div class="tutor-dashboard-info-card" title="<?php _e('Based on course price', 'tutor'); ?>">
100 <p>
101 <span> <?php _e('All time sales.', 'tutor'); ?> </span>
102 <span class="tutor-dashboard-info-val"><?php echo tutor_utils()->tutor_price($earning_sum->course_price_total); ?></span>
103 </p>
104 </div>
105 <div class="tutor-dashboard-info-card" title="<?php _e('All of withdraw type excluding rejected.', 'tutor'); ?>">
106 <p>
107 <span> <?php _e('All time withdraws.', 'tutor'); ?> </span>
108 <span class="tutor-dashboard-info-val"><?php echo tutor_utils()->tutor_price($earning_sum->withdraws_amount); ?></span>
109 </p>
110 </div>
111 <div class="tutor-dashboard-info-card">
112 <p>
113 <span> <?php _e('Deducted Commissions.', 'tutor'); ?> </span>
114 <span class="tutor-dashboard-info-val"><?php echo tutor_utils()->tutor_price($earning_sum->admin_amount); ?></span>
115 </p>
116 </div>
117
118 <?php if ($earning_sum->deduct_fees_amount > 0){ ?>
119 <div class="tutor-dashboard-info-card">
120 <p>
121 <span> <?php _e('Deducted Fees.', 'tutor'); ?> </span>
122 <span class="tutor-dashboard-info-val"><?php echo tutor_utils()->tutor_price($earning_sum->deduct_fees_amount); ?></span>
123 </p>
124 </div>
125 <?php } ?>
126 </div>
127
128 <div class="tutor-dashboard-item-group">
129 <h4><?php _e('Earning Chart for this month', 'tutor') ?> (<?php echo date("F") ?>)</h4>
130 <canvas id="tutorChart" style="width: 100%; height: 400px;"></canvas>
131 </div>
132
133 </div>
134
135
136 <?php
137 $tutor_primary_color = tutor_utils()->get_option('tutor_primary_color');
138 if ( ! $tutor_primary_color){
139 $tutor_primary_color = '#3057D5';
140 }
141 ?>
142
143
144
145 <script>
146 var ctx = document.getElementById("tutorChart").getContext('2d');
147 var tutorChart = new Chart(ctx, {
148 type: 'line',
149 data: {
150 labels: <?php echo json_encode(array_keys($chartData)); ?>,
151 datasets: [{
152 label: 'Earning',
153 backgroundColor: '<?php echo $tutor_primary_color; ?>',
154 borderColor: '<?php echo $tutor_primary_color; ?>',
155 data: <?php echo json_encode(array_values($chartData)); ?>,
156 borderWidth: 2,
157 fill: false,
158 lineTension: 0,
159 }]
160 },
161 options: {
162 scales: {
163 yAxes: [{
164 ticks: {
165 min: 0, // it is for ignoring negative step.
166 beginAtZero: true,
167 callback: function(value, index, values) {
168 if (Math.floor(value) === value) {
169 return value;
170 }
171 }
172 }
173 }]
174 },
175
176 legend: {
177 display: false
178 }
179 }
180 });
181 </script>