PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 1.2.1
Tutor LMS – eLearning and online course solution v1.2.1
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 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 my-reviews.php 7 years ago quiz-attempts.php 7 years ago registration.php 7 years ago wishlist.php 7 years ago withdraw.php 7 years ago
earning.php
168 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 <div class="tutor-dashboard-content-inner">
72
73 <div class="tutor-dashboard-inline-links">
74 <ul>
75 <li class="active"><a href="<?php echo tutor_utils()->get_tutor_dashboard_page_permalink('earning'); ?>"> <?php _e('Earning'); ?></a>
76 </li>
77 <li><a href="<?php echo tutor_utils()->get_tutor_dashboard_page_permalink('earning/report'); ?>"> <?php _e('Report'); ?> </a>
78 </li>
79 <li><a href="<?php echo tutor_utils()->get_tutor_dashboard_page_permalink('earning/statements'); ?>">
80 <?php _e('Statements'); ?> </a> </li>
81 </ul>
82 </div>
83
84
85 <div class="tutor-dashboard-earning-info-row">
86
87 <div class="tutor-dashboard-earning-sum">
88 <h3><?php echo tutor_utils()->tutor_price($earning_sum->balance); ?></h3>
89 <p><?php _e('My Balance', 'tutor'); ?></p>
90 </div>
91
92 <div class="tutor-dashboard-earning-sum">
93
94
95 <h3><?php echo tutor_utils()->tutor_price($earning_sum->instructor_amount); ?></h3>
96 <p><?php _e('My Earning', 'tutor'); ?></p>
97 <p class="text-small"><?php _e('All time', 'tutor'); ?></p>
98 </div>
99
100 <div class="tutor-dashboard-earning-sum">
101 <h3><?php echo tutor_utils()->tutor_price($earning_sum->course_price_total); ?></h3>
102 <p><?php _e('All time sales.', 'tutor'); ?></p>
103 <p class="text-small"><?php _e('Based on course price.', 'tutor'); ?></p>
104 </div>
105
106 <div class="tutor-dashboard-earning-sum">
107 <h3><?php echo tutor_utils()->tutor_price($earning_sum->withdraws_amount); ?></h3>
108 <p><?php _e('All time withdraws.', 'tutor'); ?></p>
109 <p class="text-small"><?php _e('All of withdraw type excluding rejected.', 'tutor'); ?></p>
110 </div>
111
112 <div class="tutor-dashboard-earning-sum">
113 <h3><?php echo tutor_utils()->tutor_price($earning_sum->admin_amount); ?></h3>
114 <p><?php _e('Deducted Commissions', 'tutor'); ?></p>
115 </div>
116
117 <?php
118 if ($earning_sum->deduct_fees_amount > 0){
119 ?>
120 <div class="tutor-dashboard-earning-sum">
121 <h3><?php echo tutor_utils()->tutor_price($earning_sum->deduct_fees_amount); ?></h3>
122 <p><?php _e('Deducted Fees', 'tutor'); ?></p>
123 </div>
124 <?php } ?>
125 </div>
126
127 </div>
128
129 <h4>Earning Chart for this month (<?php echo date("F") ?>)</h4>
130
131 <canvas id="tutorChart" style="width: 100%; height: 400px;"></canvas>
132 <script>
133 var ctx = document.getElementById("tutorChart").getContext('2d');
134 var tutorChart = new Chart(ctx, {
135 type: 'line',
136 data: {
137 labels: <?php echo json_encode(array_keys($chartData)); ?>,
138 datasets: [{
139 label: 'Earning',
140 backgroundColor: '#3057D5',
141 borderColor: '#3057D5',
142 data: <?php echo json_encode(array_values($chartData)); ?>,
143 borderWidth: 2,
144 fill: false,
145 lineTension: 0,
146 }]
147 },
148 options: {
149 scales: {
150 yAxes: [{
151 ticks: {
152 min: 0, // it is for ignoring negative step.
153 beginAtZero: true,
154 callback: function(value, index, values) {
155 if (Math.floor(value) === value) {
156 return value;
157 }
158 }
159 }
160 }]
161 },
162
163 legend: {
164 display: false
165 }
166 }
167 });
168 </script>