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