Version Description
29 May, 2019 =
Added: centralized tutor version upgrading system by a dedicated class called
Upgrader
Added: add to cart guest mode in WooCommerce integration based on Tutor LMS > settings > woocommerce
Added: Gutenberg support on course edit page based on settings
Added: Automatic free plugin install from pro when the pro version is activated but the free plugin does not exist (pro)
Added: nice notice bar for install or activate free version from pro (pro)
Added: Pro text in the tutor LMS dashboard menu when Tutor Pro plugin installed and activated
Updated: a design for course listing, removed hover and moved it to straight course gird footer
Fixed: a Gutenberg bug related post author on course post type, usually post_author column saved 0 if course edit with Gutenberg, we fixed this issue.
Fixed: a template condition in the course description
Removed: license restriction for features, it required now for auto-update (pro)
Fixed: Response design all issue fixed
Fixed: array count check and return issue in utils
Fixed: a bug in dashboard/settings, withdraw menu removed from subscriber/users dashboard, and only shown in the instructor's dashboard.
Release Info
Developer | themeum |
Plugin | Tutor LMS – eLearning and online course solution |
Version | 1.3.2 |
Comparing to | |
See all releases |
Code changes from version 1.3.1 to 1.3.2
- assets/css/tutor-admin.css +2 -2
- assets/css/tutor-front.css +382 -237
- assets/js/tutor-front.js +2 -0
- classes/Admin.php +11 -7
- classes/Course.php +27 -0
- classes/Instructor.php +3 -0
- classes/Options.php +5 -0
- classes/Post_types.php +3 -0
- classes/Question.php +3 -0
- classes/Student.php +3 -0
- classes/Theme_Compatibility.php +3 -0
- classes/Tools.php +3 -0
- classes/Tutor.php +4 -20
- classes/TutorEDD.php +3 -0
- classes/Tutor_Base.php +2 -0
- classes/Upgrader.php +54 -0
- classes/User.php +3 -0
- classes/Utils.php +4 -1
- classes/Withdraw.php +0 -1
- classes/WooCommerce.php +9 -0
- includes/theme-compatibility/storefront/assets/css/style.css +2 -2
- readme.txt +17 -1
- templates/dashboard.php +2 -1
- templates/dashboard/earning.php +9 -2
- templates/dashboard/earning/statement.php +50 -50
- templates/dashboard/earning/statements.php +61 -54
- templates/dashboard/enrolled-courses.php +2 -6
- templates/dashboard/enrolled-courses/active-courses.php +2 -6
- templates/dashboard/enrolled-courses/completed-courses.php +2 -6
- templates/dashboard/logged-in.php +1 -1
- templates/dashboard/my-courses.php +2 -7
- templates/dashboard/purchase_history.php +37 -34
- templates/dashboard/quiz-attempts.php +5 -6
- templates/dashboard/settings.php +5 -3
- templates/dashboard/settings/education.php +5 -3
- templates/dashboard/settings/reset-password.php +25 -21
- templates/dashboard/settings/skill.php +5 -4
- templates/dashboard/settings/withdraw-settings.php +5 -7
- templates/loop/course.php +0 -1
- templates/loop/footer.php +1 -8
- templates/loop/meta.php +40 -21
- templates/loop/rating.php +2 -0
- templates/loop/title.php +3 -2
- templates/single-course-enrolled-announcements.php +1 -1
- templates/single-course-enrolled-overview.php +1 -1
- templates/single-course-enrolled-questions.php +1 -1
- templates/single/course/add-to-cart.php +14 -2
- templates/single/course/course-content.php +18 -15
- templates/single/course/tags.php +1 -1
- templates/single/quiz/body.php +9 -9
- tutor.php +2 -2
@@ -1905,8 +1905,8 @@ Lesson Edit Modal
|
|
1905 |
font-family: 'tutor';
|
1906 |
margin-right: 5px;
|
1907 |
content: "\e91d";
|
1908 |
-
-webkit-animation: spin
|
1909 |
-
animation: spin
|
1910 |
display: inline-block;
|
1911 |
}
|
1912 |
.tutor-notice-warning{
|
1905 |
font-family: 'tutor';
|
1906 |
margin-right: 5px;
|
1907 |
content: "\e91d";
|
1908 |
+
-webkit-animation: spin 1s steps(8) infinite;
|
1909 |
+
animation: spin 1s steps(8) infinite;
|
1910 |
display: inline-block;
|
1911 |
}
|
1912 |
.tutor-notice-warning{
|
@@ -14,6 +14,11 @@ body {
|
|
14 |
.tutor-wrap{
|
15 |
color: var(--tutor-text-color);
|
16 |
}
|
|
|
|
|
|
|
|
|
|
|
17 |
/**
|
18 |
Most Important CSS
|
19 |
.tutor-container
|
@@ -158,6 +163,10 @@ Most Important CSS
|
|
158 |
margin-bottom: 40px;
|
159 |
}
|
160 |
|
|
|
|
|
|
|
|
|
161 |
/********************/
|
162 |
/*start single course*/
|
163 |
/********************/
|
@@ -257,6 +266,12 @@ Most Important CSS
|
|
257 |
margin-bottom: 5px;
|
258 |
min-width: 95px;
|
259 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
260 |
.tutor-single-course-meta ul li:last-child{
|
261 |
margin-right: 0;
|
262 |
}
|
@@ -336,6 +351,7 @@ Most Important CSS
|
|
336 |
border: 1px solid #ddd;
|
337 |
border-radius: 4px;
|
338 |
}
|
|
|
339 |
}
|
340 |
|
341 |
.tutor-single-course-meta.tutor-lead-meta ul{
|
@@ -376,6 +392,30 @@ Most Important CSS
|
|
376 |
content: ',';
|
377 |
margin-right: 4px;
|
378 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
379 |
/*benifit*/
|
380 |
.tutor-course-benefits-content ul{
|
381 |
list-style: none;
|
@@ -520,7 +560,7 @@ div[class*="tutor-course-col"] {
|
|
520 |
border-radius: 4px;
|
521 |
-webkit-transition: 300ms;
|
522 |
transition: 300ms;
|
523 |
-
border: 1px solid
|
524 |
height: 100%;
|
525 |
display: -webkit-box;
|
526 |
display: -ms-flexbox;
|
@@ -627,25 +667,49 @@ div[class*="tutor-course-col"] {
|
|
627 |
margin-right: 4px;
|
628 |
margin-left: 0;
|
629 |
}
|
630 |
-
.tutor-course-loop-title
|
631 |
-
font-size:
|
632 |
line-height: 28px;
|
633 |
-
font-weight:
|
634 |
margin-bottom: 17px;
|
|
|
|
|
635 |
color: var(--tutor-text-color);
|
636 |
}
|
637 |
-
.tutor-course-loop-title a:hover
|
638 |
color: var(--tutor-primary-color);
|
639 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
640 |
.tutor-loop-course-footer{
|
641 |
padding: 15px;
|
642 |
-
border-top: 1px solid
|
643 |
color: #838791;
|
644 |
font-size: 12px;
|
645 |
line-height: 25px;
|
646 |
border-bottom-left-radius: 4px;
|
647 |
border-bottom-right-radius: 4px;
|
648 |
-
position: relative;
|
649 |
font-weight: 400;
|
650 |
}
|
651 |
.tutor-loop-course-footer:after{
|
@@ -653,37 +717,15 @@ div[class*="tutor-course-col"] {
|
|
653 |
display: table;
|
654 |
clear: both;
|
655 |
}
|
656 |
-
|
657 |
-
.tutor-loop-course-footer i{
|
658 |
-
font-size: 15px;
|
659 |
-
color: var(--tutor-light-color);
|
660 |
-
line-height: 25px;
|
661 |
-
margin-right: 3px;
|
662 |
-
float: left;
|
663 |
-
}
|
664 |
-
.tutor-loop-course-footer i:not(:first-child){
|
665 |
-
margin-left: 12px;
|
666 |
-
}
|
667 |
-
|
668 |
-
.tutor-loop-course-footer span{
|
669 |
-
line-height: 25px;
|
670 |
-
float: left;
|
671 |
-
}
|
672 |
-
|
673 |
.tutor-loop-course-footer span.woocommerce-Price-currencySymbol{
|
674 |
vertical-align: top;
|
675 |
}
|
676 |
|
677 |
.tutor-course-loop-price{
|
678 |
-
float: right;
|
679 |
color: var(--tutor-text-color);
|
680 |
-
font-size:
|
681 |
-
font-weight: 500;
|
682 |
}
|
683 |
.tutor-course-loop-price .price del{
|
684 |
-
font-size: 12px;
|
685 |
-
opacity: 1;
|
686 |
-
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
|
687 |
font-weight: 400;
|
688 |
}
|
689 |
|
@@ -699,54 +741,57 @@ div[class*="tutor-course-col"] {
|
|
699 |
.tutor-course-loop-price .price del + ins{
|
700 |
background: transparent;
|
701 |
margin-left: 0;
|
|
|
702 |
}
|
703 |
-
.tutor-loop-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
height: calc(100% + 1px);
|
709 |
-
color: #fff;
|
710 |
-
text-align: center;
|
711 |
-
top: 0;
|
712 |
-
opacity: 0;
|
713 |
-
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
|
714 |
-
-webkit-transition: 100ms;
|
715 |
-
transition: 100ms;
|
716 |
-
border-bottom-left-radius: 4px;
|
717 |
-
border-bottom-right-radius: 4px;
|
718 |
-
background: var(--tutor-primary-color);
|
719 |
}
|
720 |
-
|
721 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
722 |
font-size: 14px;
|
723 |
-
|
724 |
-
font-weight: 700;
|
725 |
-
-webkit-animation: rotate_cs 5s infinite; /* Safari 4.0 - 8.0 */
|
726 |
-
animation: rotate_cs 5s infinite;
|
727 |
padding: 0;
|
728 |
-
display: block;
|
729 |
-
width: 100%;
|
730 |
-
line-height: 54px;
|
731 |
-
background: var(--tutor-primary-color);
|
732 |
}
|
733 |
-
|
734 |
-
|
|
|
|
|
735 |
}
|
736 |
|
737 |
-
|
738 |
-
|
|
|
|
|
|
|
|
|
739 |
}
|
740 |
|
741 |
-
.tutor-loop-
|
742 |
content: '\e915';
|
743 |
-
font-family:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
744 |
margin-right: 5px;
|
|
|
745 |
}
|
746 |
|
747 |
-
|
748 |
-
|
749 |
-
}
|
750 |
|
751 |
/* Standard syntax */
|
752 |
@-webkit-keyframes mymove {
|
@@ -816,15 +861,9 @@ div[class*="tutor-course-col"] {
|
|
816 |
}
|
817 |
}
|
818 |
|
819 |
-
.tutor-course-loop-title h2{
|
820 |
-
font-size: 16px;
|
821 |
-
font-size: 16px;
|
822 |
-
font-size: 16px;
|
823 |
-
font-size: 1rem;
|
824 |
-
}
|
825 |
.tutor-course-filter-wrap{
|
826 |
clear: both;
|
827 |
-
margin-bottom:
|
828 |
}
|
829 |
.tutor-course-filter-form{
|
830 |
display: inline-block;
|
@@ -904,7 +943,7 @@ div[class*="tutor-course-col"] {
|
|
904 |
|
905 |
.tutor-loop-author > div a{
|
906 |
color: var(--tutor-text-color);
|
907 |
-
font-weight:
|
908 |
-webkit-transition: 300ms;
|
909 |
transition: 300ms;
|
910 |
}
|
@@ -1039,6 +1078,8 @@ a.tutor-btn.bordered-btn:hover,
|
|
1039 |
.tutor-wrap nav.course-enrolled-nav ul li{
|
1040 |
display: inline-block;
|
1041 |
}
|
|
|
|
|
1042 |
.tutor-wrap nav.course-enrolled-nav ul li a{
|
1043 |
display: block;
|
1044 |
font-size: 16px;
|
@@ -1054,6 +1095,23 @@ a.tutor-btn.bordered-btn:hover,
|
|
1054 |
border-bottom: 2px solid var(--tutor-primary-color);
|
1055 |
color: var(--tutor-text-color);
|
1056 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1057 |
/* *********************** */
|
1058 |
/* Tutor Dashboard */
|
1059 |
/* *********************** */
|
@@ -1067,6 +1125,7 @@ a.tutor-btn.bordered-btn:hover,
|
|
1067 |
align-items: center;
|
1068 |
padding-bottom: 30px;
|
1069 |
border-bottom: 1px solid #DCDFE5;
|
|
|
1070 |
}
|
1071 |
|
1072 |
.tutor-dashboard-header-avatar img{
|
@@ -1081,11 +1140,19 @@ a.tutor-btn.bordered-btn:hover,
|
|
1081 |
-ms-flex-positive: 1;
|
1082 |
flex-grow: 1;
|
1083 |
padding-left: 20px;
|
|
|
|
|
|
|
|
|
|
|
|
|
1084 |
}
|
1085 |
|
1086 |
.tutor-dashboard-header-display-name h4{
|
1087 |
font-size: 30px;
|
1088 |
-
margin-
|
|
|
|
|
1089 |
}
|
1090 |
|
1091 |
.tutor-dashboard-header-stats{
|
@@ -1094,6 +1161,7 @@ a.tutor-btn.bordered-btn:hover,
|
|
1094 |
display: flex;
|
1095 |
-ms-flex-wrap: wrap;
|
1096 |
flex-wrap: wrap;
|
|
|
1097 |
}
|
1098 |
|
1099 |
.tutor-dashboard-header-stats > div:not(:first-child){
|
@@ -1101,6 +1169,8 @@ a.tutor-btn.bordered-btn:hover,
|
|
1101 |
}
|
1102 |
|
1103 |
|
|
|
|
|
1104 |
/* end dashboard header */
|
1105 |
|
1106 |
/**
|
@@ -1247,7 +1317,9 @@ a.tutor-btn.bordered-btn:hover,
|
|
1247 |
}
|
1248 |
|
1249 |
/*dashboard quiz attempts*/
|
1250 |
-
|
|
|
|
|
1251 |
.tutor-dashboard-content .tutor-quiz-attempt-history tr th,
|
1252 |
.tutor-dashboard-content .tutor-quiz-attempt-history tr td{
|
1253 |
vertical-align: middle;
|
@@ -1270,6 +1342,39 @@ a.tutor-btn.bordered-btn:hover,
|
|
1270 |
margin-right: 4px;
|
1271 |
}
|
1272 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1273 |
.tutor-dashboard-content .tutor-quiz-attempt-history table a{
|
1274 |
color: var(--tutor-primary-color);
|
1275 |
font-weight: 700;
|
@@ -1304,10 +1409,23 @@ a.tutor-btn.bordered-btn:hover,
|
|
1304 |
display: -ms-flexbox;
|
1305 |
display: flex;
|
1306 |
}
|
|
|
1307 |
.tutor-dashboard-profile .tutor-dashboard-profile-item .heading{
|
1308 |
min-width: 190px;
|
1309 |
}
|
1310 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1311 |
.tutor-dashboard-profile .tutor-dashboard-profile-item .content{
|
1312 |
-webkit-box-flex: 1;
|
1313 |
-ms-flex-positive: 1;
|
@@ -1425,14 +1543,6 @@ a.tutor-btn.bordered-btn:hover,
|
|
1425 |
}
|
1426 |
|
1427 |
@media (max-width: 991px) {
|
1428 |
-
ul.tutor-dashboard-permalinks li{
|
1429 |
-
display: inline-block;
|
1430 |
-
border-bottom: none !important;
|
1431 |
-
border-right: 1px solid #E8EFF1;
|
1432 |
-
}
|
1433 |
-
ul.tutor-dashboard-permalinks li:last-child{
|
1434 |
-
border-right-color: transparent;
|
1435 |
-
}
|
1436 |
.tutor-dashboard-student .tutor-col-3,
|
1437 |
.tutor-dashboard-student .tutor-col-9{
|
1438 |
-webkit-box-flex: 0;
|
@@ -1534,27 +1644,32 @@ a.tutor-btn.bordered-btn:hover,
|
|
1534 |
|
1535 |
/** Earning Report */
|
1536 |
.tutor-date-range-filter-wrap{
|
1537 |
-
display: -webkit-box;
|
1538 |
-
display: -ms-flexbox;
|
1539 |
-
display: flex;
|
1540 |
margin: 15px 0 20px;
|
1541 |
font-size: 12px;
|
1542 |
}
|
|
|
|
|
1543 |
.report-top-sub-menu{
|
1544 |
-
margin: 0;
|
1545 |
-
|
1546 |
-
-
|
1547 |
-
flex: 1;
|
1548 |
-
display: -webkit-box;
|
1549 |
-
display: -ms-flexbox;
|
1550 |
-
display: flex;
|
1551 |
}
|
|
|
1552 |
.report-top-sub-menu a{
|
1553 |
text-decoration: none;
|
1554 |
padding: 5px 8px;
|
1555 |
border: 1px solid #D7DADF;
|
1556 |
color: #AAAEB3;
|
|
|
|
|
|
|
1557 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
1558 |
.report-top-sub-menu a:hover{
|
1559 |
background: #EDF0F9;
|
1560 |
color: #333;
|
@@ -1564,24 +1679,37 @@ a.tutor-btn.bordered-btn:hover,
|
|
1564 |
color: #ffffff;
|
1565 |
border: 1px solid var(--tutor-primary-hover-color);
|
1566 |
}
|
1567 |
-
|
1568 |
-
|
1569 |
-
border-right: none;
|
1570 |
}
|
1571 |
-
|
1572 |
.report-date-range-form{
|
1573 |
display: -webkit-box;
|
1574 |
display: -ms-flexbox;
|
1575 |
display: flex;
|
1576 |
margin-bottom: 0;
|
|
|
1577 |
}
|
1578 |
.date-range-input{
|
1579 |
position: relative;
|
1580 |
-
margin-right: 5px;
|
1581 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1582 |
.date-range-input:last-child{
|
1583 |
margin-right: 0;
|
1584 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
1585 |
.date-range-input input, .date-range-input input[type=text]{
|
1586 |
border: 1px solid #D7DADF;
|
1587 |
box-shadow: none;
|
@@ -1590,6 +1718,7 @@ a.tutor-btn.bordered-btn:hover,
|
|
1590 |
padding-right: 30px;
|
1591 |
padding-top: 0;
|
1592 |
padding-bottom: 0;
|
|
|
1593 |
}
|
1594 |
.date-range-input i.tutor-icon-calendar{
|
1595 |
position: absolute;
|
@@ -1609,6 +1738,11 @@ a.tutor-btn.bordered-btn:hover,
|
|
1609 |
.report-download-csv-icon a{
|
1610 |
text-decoration: none;
|
1611 |
}
|
|
|
|
|
|
|
|
|
|
|
1612 |
table.tutor-dashboard-statement-table p{
|
1613 |
margin: 0;
|
1614 |
padding: 0;
|
@@ -1630,7 +1764,7 @@ Withdraw Method
|
|
1630 |
display: flex;
|
1631 |
-ms-flex-wrap: wrap;
|
1632 |
flex-wrap: wrap;
|
1633 |
-
margin: 0 -15px
|
1634 |
}
|
1635 |
|
1636 |
.withdraw-method-select-wrap .withdraw-method-select{
|
@@ -1638,6 +1772,7 @@ Withdraw Method
|
|
1638 |
-ms-flex-positive: 1;
|
1639 |
flex-grow: 1;
|
1640 |
padding: 0 15px;
|
|
|
1641 |
}
|
1642 |
.withdraw-method-select-wrap .withdraw-method-select label{
|
1643 |
display: block;
|
@@ -1710,6 +1845,12 @@ Withdraw Method
|
|
1710 |
padding: 0 15px 20px;
|
1711 |
}
|
1712 |
|
|
|
|
|
|
|
|
|
|
|
|
|
1713 |
.withdraw-method-form > div.withdraw-account-save-btn-wrap{
|
1714 |
width: 100%;
|
1715 |
}
|
@@ -1764,114 +1905,14 @@ label[for="tutor_withdraw_amount"]{
|
|
1764 |
|
1765 |
/** END Withdraw */
|
1766 |
|
1767 |
-
/**
|
1768 |
-
DatePicker
|
1769 |
-
*/
|
1770 |
-
.ui-datepicker {
|
1771 |
-
background-color: #fff;
|
1772 |
-
border: 1px solid #EEEEEE;
|
1773 |
-
display: none;
|
1774 |
-
margin-top: 4px;
|
1775 |
-
padding: 5px;
|
1776 |
-
width: 180px;
|
1777 |
-
}
|
1778 |
-
.ui-datepicker a,
|
1779 |
-
.ui-datepicker a:hover {
|
1780 |
-
text-decoration: none;
|
1781 |
-
}
|
1782 |
-
.ui-datepicker a:hover,
|
1783 |
-
.ui-datepicker td:hover a {
|
1784 |
-
color: var(--tutor-primary-hover-color);
|
1785 |
-
-webkit-transition: color 0.1s ease-in-out;
|
1786 |
-
transition: color 0.1s ease-in-out;
|
1787 |
-
}
|
1788 |
-
.ui-datepicker .ui-datepicker-header {
|
1789 |
-
margin-bottom: 4px;
|
1790 |
-
text-align: center;
|
1791 |
-
}
|
1792 |
-
.ui-datepicker .ui-datepicker-title {
|
1793 |
-
font-weight: 700;
|
1794 |
-
}
|
1795 |
-
.ui-datepicker .ui-datepicker-prev,
|
1796 |
-
.ui-datepicker .ui-datepicker-next {
|
1797 |
-
cursor: default;
|
1798 |
-
font-family: 'tutor';
|
1799 |
-
-webkit-font-smoothing: antialiased;
|
1800 |
-
font-style: normal;
|
1801 |
-
font-weight: normal;
|
1802 |
-
height: 20px;
|
1803 |
-
line-height: 1;
|
1804 |
-
margin-top: 2px;
|
1805 |
-
width: 30px;
|
1806 |
-
}
|
1807 |
-
.ui-datepicker .ui-datepicker-prev {
|
1808 |
-
float: left;
|
1809 |
-
text-align: left;
|
1810 |
-
}
|
1811 |
-
.ui-datepicker .ui-datepicker-next {
|
1812 |
-
float: right;
|
1813 |
-
text-align: right;
|
1814 |
-
}
|
1815 |
-
.ui-datepicker .ui-datepicker-prev:before {
|
1816 |
-
content: "\e921";
|
1817 |
-
}
|
1818 |
-
.ui-datepicker .ui-datepicker-next:before {
|
1819 |
-
content: "\e903";
|
1820 |
-
}
|
1821 |
-
.ui-datepicker .ui-icon {
|
1822 |
-
display: none;
|
1823 |
-
}
|
1824 |
-
.ui-datepicker .ui-datepicker-calendar {
|
1825 |
-
table-layout: fixed;
|
1826 |
-
width: 100%;
|
1827 |
-
}
|
1828 |
-
.ui-datepicker .ui-datepicker-calendar th,
|
1829 |
-
.ui-datepicker .ui-datepicker-calendar td {
|
1830 |
-
text-align: center;
|
1831 |
-
padding: 0;
|
1832 |
-
}
|
1833 |
-
.ui-datepicker .ui-datepicker-calendar td {
|
1834 |
-
border-radius: 4px;
|
1835 |
-
-webkit-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
|
1836 |
-
transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
|
1837 |
-
}
|
1838 |
-
.ui-datepicker .ui-datepicker-calendar td:hover {
|
1839 |
-
background-color: #eee;
|
1840 |
-
cursor: pointer;
|
1841 |
-
}
|
1842 |
-
.ui-datepicker .ui-datepicker-calendar td a {
|
1843 |
-
text-decoration: none;
|
1844 |
-
}
|
1845 |
-
.ui-datepicker .ui-datepicker-current-day {
|
1846 |
-
background-color: var( --tutor-primary-hover-color);
|
1847 |
-
}
|
1848 |
-
.ui-datepicker .ui-datepicker-current-day a {
|
1849 |
-
color: #fff
|
1850 |
-
}
|
1851 |
-
.ui-datepicker .ui-datepicker-calendar .ui-datepicker-unselectable:hover {
|
1852 |
-
background-color: #fff;
|
1853 |
-
cursor: default;
|
1854 |
-
}
|
1855 |
-
|
1856 |
-
.ui-datepicker-calendar .ui-state-default {
|
1857 |
-
border: none;
|
1858 |
-
background: none;
|
1859 |
-
}
|
1860 |
-
.ui-datepicker-calendar .ui-state-default.ui-state-highlight {
|
1861 |
-
background: #EEEEEE;
|
1862 |
-
padding: 3px;
|
1863 |
-
display: block;
|
1864 |
-
}
|
1865 |
-
|
1866 |
-
/** End DatePicker **/
|
1867 |
-
|
1868 |
-
|
1869 |
.tutor-mycourse-thumbnail {
|
1870 |
-webkit-box-flex: 0;
|
1871 |
-ms-flex: 0 0 250px;
|
1872 |
flex: 0 0 250px;
|
1873 |
-ms-flex-item-align: center;
|
1874 |
-
|
|
|
|
|
1875 |
}
|
1876 |
.tutor-mycourse-content {
|
1877 |
padding: 20px;
|
@@ -1879,6 +1920,19 @@ DatePicker
|
|
1879 |
-ms-flex: 1;
|
1880 |
flex: 1;
|
1881 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1882 |
.tutor-mycourse-content h3{
|
1883 |
margin: 0 0 9px;
|
1884 |
}
|
@@ -1925,7 +1979,16 @@ DatePicker
|
|
1925 |
margin-bottom: 30px;
|
1926 |
border: 1px solid #DCDFE5;
|
1927 |
border-radius: 4px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1928 |
}
|
|
|
1929 |
.tutor-dashboard-content-inner .tutor-mycourse-wrap .tutor-course-status h4{
|
1930 |
display: none;
|
1931 |
}
|
@@ -2004,7 +2067,6 @@ DatePicker
|
|
2004 |
|
2005 |
.tutor-course-delete-popup{
|
2006 |
text-align: center;
|
2007 |
-
padding: 40px 35px;
|
2008 |
font-size: 16px;
|
2009 |
line-height: 25px;
|
2010 |
font-weight: 400;
|
@@ -2059,47 +2121,54 @@ DatePicker
|
|
2059 |
color: #ffffff;
|
2060 |
}
|
2061 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2062 |
/* *********************** */
|
2063 |
/* End Tutor Student Dashboard */
|
2064 |
/************************ */
|
2065 |
.tutor-profile-photo-upload-wrap{
|
2066 |
width: 200px;
|
2067 |
-
height:
|
2068 |
-
margin-bottom:
|
2069 |
position: relative;
|
2070 |
}
|
2071 |
.tutor-profile-photo-upload-wrap img{
|
2072 |
width: 100%;
|
2073 |
-
height:
|
|
|
2074 |
}
|
2075 |
a.tutor-profile-photo-upload-btn {
|
2076 |
position: absolute;
|
2077 |
-
|
2078 |
background-color: var(--tutor-primary-color);
|
2079 |
color: #fff;
|
2080 |
display: block;
|
2081 |
width: 100%;
|
2082 |
text-align: CENTER;
|
2083 |
-
padding:
|
2084 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2085 |
.tutor-profile-photo-delete-btn{
|
2086 |
position: absolute;
|
2087 |
color: #ff000c;
|
2088 |
right: 10px;
|
2089 |
top: 10px;
|
2090 |
}
|
2091 |
-
.tutor-reset-password-form-wrap .tutor-form-group{
|
2092 |
-
display: -webkit-box;
|
2093 |
-
display: -ms-flexbox;
|
2094 |
-
display: flex;
|
2095 |
-
max-width: 500px;
|
2096 |
-
}
|
2097 |
-
|
2098 |
-
.tutor-reset-password-form-wrap .tutor-form-group label{
|
2099 |
-
-webkit-box-flex: 0;
|
2100 |
-
-ms-flex: 0 0 200px;
|
2101 |
-
flex: 0 0 200px;
|
2102 |
-
}
|
2103 |
/**
|
2104 |
Instructor
|
2105 |
*/
|
@@ -2257,6 +2326,7 @@ a.page-numbers:hover {
|
|
2257 |
display: -webkit-box;
|
2258 |
display: -ms-flexbox;
|
2259 |
display: flex;
|
|
|
2260 |
}
|
2261 |
.tutor-lesson-sidebar{
|
2262 |
-webkit-box-flex: 0;
|
@@ -2266,9 +2336,16 @@ a.page-numbers:hover {
|
|
2266 |
|
2267 |
@media (max-width: 991px) {
|
2268 |
.tutor-lesson-sidebar{
|
2269 |
-
|
2270 |
-
|
2271 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2272 |
}
|
2273 |
}
|
2274 |
|
@@ -2731,7 +2808,7 @@ a.page-numbers:hover {
|
|
2731 |
.tutor-lead-info-btn-group .tutor-course-compelte-form-wrap{
|
2732 |
width: calc(50% - 22px);
|
2733 |
text-align: center;
|
2734 |
-
margin:
|
2735 |
display: inline-block;
|
2736 |
}
|
2737 |
|
@@ -2945,8 +3022,8 @@ ul.tutor-required-fields{
|
|
2945 |
font-family: 'tutor';
|
2946 |
margin-right: 5px;
|
2947 |
content: "\e91d";
|
2948 |
-
-webkit-animation: spin
|
2949 |
-
animation: spin
|
2950 |
display: inline-block;
|
2951 |
}
|
2952 |
.loading-lesson .tutor-lesson-video-wrap:before{
|
@@ -3151,6 +3228,12 @@ Course question and answer
|
|
3151 |
color: var(--tutor-text-color);
|
3152 |
}
|
3153 |
|
|
|
|
|
|
|
|
|
|
|
|
|
3154 |
@media (max-width: 767px) {
|
3155 |
.tutor-quiz-header .tutor-quiz-meta{
|
3156 |
display: block;
|
@@ -3158,18 +3241,17 @@ Course question and answer
|
|
3158 |
padding: 0;
|
3159 |
}
|
3160 |
.tutor-quiz-header .tutor-quiz-meta li{
|
3161 |
-
display:
|
3162 |
color: var(--tutor-text-color);
|
3163 |
margin: 5px;
|
3164 |
-
border:
|
3165 |
-
padding:
|
3166 |
-
border-radius:
|
|
|
|
|
|
|
|
|
3167 |
}
|
3168 |
-
}
|
3169 |
-
.tutor-quiz-header .tutor-quiz-meta li strong{
|
3170 |
-
display: block;
|
3171 |
-
color: var(--tutor-light-color);
|
3172 |
-
font-weight: 400;
|
3173 |
}
|
3174 |
.tutor-quiz-attempt-history{
|
3175 |
overflow-x: auto;
|
@@ -3213,6 +3295,34 @@ Course question and answer
|
|
3213 |
.tutor-quiz-attempt-history table span.result-pass{
|
3214 |
background: var(--tutor-success-button-color);
|
3215 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3216 |
/*.attempt-reviewed-text {*/
|
3217 |
/*color: #777;*/
|
3218 |
/*font-size: 12px;*/
|
@@ -3273,9 +3383,10 @@ Course question and answer
|
|
3273 |
height: 175px;
|
3274 |
border-radius: 5px;
|
3275 |
box-shadow: none;
|
3276 |
-
min-width:
|
3277 |
margin-bottom: 5px;
|
3278 |
}
|
|
|
3279 |
.tutor-quiz-answers-wrap textarea:focus{
|
3280 |
background: transparent;
|
3281 |
outline: none !important;
|
@@ -3401,6 +3512,17 @@ Course question and answer
|
|
3401 |
vertical-align: top;
|
3402 |
}
|
3403 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3404 |
|
3405 |
.answer-type-matching .quiz-answer-matching-items-wrap{
|
3406 |
margin: 0 -10px;
|
@@ -4147,6 +4269,12 @@ social share
|
|
4147 |
margin-right: 0;
|
4148 |
}
|
4149 |
|
|
|
|
|
|
|
|
|
|
|
|
|
4150 |
.tutor-single-course-meta ul li.tutor-social-share button{
|
4151 |
margin: 0;
|
4152 |
border: none;
|
@@ -4311,11 +4439,23 @@ social share
|
|
4311 |
background: #fff;
|
4312 |
padding: 60px;
|
4313 |
width: 90%;
|
4314 |
-
max-width:
|
4315 |
max-height: 90%;
|
4316 |
overflow-y: auto;
|
4317 |
}
|
4318 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4319 |
button.tm-close.tutor-icon-line-cross {
|
4320 |
position: absolute;
|
4321 |
right: 23px;
|
@@ -4323,6 +4463,11 @@ button.tm-close.tutor-icon-line-cross {
|
|
4323 |
background: transparent;
|
4324 |
padding: 0;
|
4325 |
font-size: 24px;
|
|
|
|
|
|
|
|
|
|
|
4326 |
}
|
4327 |
|
4328 |
.label-order-status{
|
14 |
.tutor-wrap{
|
15 |
color: var(--tutor-text-color);
|
16 |
}
|
17 |
+
|
18 |
+
.tutor-wrap img{
|
19 |
+
max-width: 100%;
|
20 |
+
height: auto;
|
21 |
+
}
|
22 |
/**
|
23 |
Most Important CSS
|
24 |
.tutor-container
|
163 |
margin-bottom: 40px;
|
164 |
}
|
165 |
|
166 |
+
.responsive-table-wrap{
|
167 |
+
overflow-x: auto;
|
168 |
+
}
|
169 |
+
|
170 |
/********************/
|
171 |
/*start single course*/
|
172 |
/********************/
|
266 |
margin-bottom: 5px;
|
267 |
min-width: 95px;
|
268 |
}
|
269 |
+
@media (max-width: 575px) {
|
270 |
+
.tutor-single-course-meta ul li{
|
271 |
+
margin-right: 10px;
|
272 |
+
}
|
273 |
+
}
|
274 |
+
|
275 |
.tutor-single-course-meta ul li:last-child{
|
276 |
margin-right: 0;
|
277 |
}
|
351 |
border: 1px solid #ddd;
|
352 |
border-radius: 4px;
|
353 |
}
|
354 |
+
|
355 |
}
|
356 |
|
357 |
.tutor-single-course-meta.tutor-lead-meta ul{
|
392 |
content: ',';
|
393 |
margin-right: 4px;
|
394 |
}
|
395 |
+
|
396 |
+
@media (max-width: 575px){
|
397 |
+
.tutor-single-course-meta.tutor-lead-meta ul{
|
398 |
+
display: block;
|
399 |
+
}
|
400 |
+
.tutor-single-course-meta.tutor-lead-meta ul li{
|
401 |
+
display: block;
|
402 |
+
border: none;
|
403 |
+
margin: 0;
|
404 |
+
width: 100%;
|
405 |
+
padding: 0 0 10px;
|
406 |
+
}
|
407 |
+
.tutor-single-course-meta.tutor-lead-meta ul li span{
|
408 |
+
display: inline-block;
|
409 |
+
color: var(--tutor-text-color);
|
410 |
+
font-weight: 700;
|
411 |
+
}
|
412 |
+
|
413 |
+
.tutor-single-course-meta.tutor-lead-meta ul li span::after{
|
414 |
+
content: ':';
|
415 |
+
color: var(--tutor-text-color);
|
416 |
+
}
|
417 |
+
}
|
418 |
+
|
419 |
/*benifit*/
|
420 |
.tutor-course-benefits-content ul{
|
421 |
list-style: none;
|
560 |
border-radius: 4px;
|
561 |
-webkit-transition: 300ms;
|
562 |
transition: 300ms;
|
563 |
+
border: 1px solid rgba(0, 0, 0, 0.05);
|
564 |
height: 100%;
|
565 |
display: -webkit-box;
|
566 |
display: -ms-flexbox;
|
667 |
margin-right: 4px;
|
668 |
margin-left: 0;
|
669 |
}
|
670 |
+
.tutor-course-loop-title h2{
|
671 |
+
font-size: 20px;
|
672 |
line-height: 28px;
|
673 |
+
font-weight: 600;
|
674 |
margin-bottom: 17px;
|
675 |
+
}
|
676 |
+
.tutor-course-loop-title h2 a{
|
677 |
color: var(--tutor-text-color);
|
678 |
}
|
679 |
+
.tutor-course-loop-title h2 a:hover{
|
680 |
color: var(--tutor-primary-color);
|
681 |
}
|
682 |
+
.tutor-course-loop-meta{
|
683 |
+
margin-bottom: 15px;
|
684 |
+
color: var(--tutor-text-color);
|
685 |
+
}
|
686 |
+
.tutor-course-loop-meta > div{
|
687 |
+
display: inline-block;
|
688 |
+
}
|
689 |
+
|
690 |
+
|
691 |
+
.tutor-course-loop-meta > div i{
|
692 |
+
font-size: 16px;
|
693 |
+
margin-right: 4px;
|
694 |
+
}
|
695 |
+
|
696 |
+
.tutor-course-loop-meta > div i,
|
697 |
+
.tutor-course-loop-meta > div span{
|
698 |
+
vertical-align: middle;
|
699 |
+
}
|
700 |
+
|
701 |
+
.tutor-course-loop-meta > div + div{
|
702 |
+
margin-left: 10px;
|
703 |
+
}
|
704 |
+
|
705 |
.tutor-loop-course-footer{
|
706 |
padding: 15px;
|
707 |
+
border-top: 1px solid rgba(0, 0, 0, 0.05);
|
708 |
color: #838791;
|
709 |
font-size: 12px;
|
710 |
line-height: 25px;
|
711 |
border-bottom-left-radius: 4px;
|
712 |
border-bottom-right-radius: 4px;
|
|
|
713 |
font-weight: 400;
|
714 |
}
|
715 |
.tutor-loop-course-footer:after{
|
717 |
display: table;
|
718 |
clear: both;
|
719 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
720 |
.tutor-loop-course-footer span.woocommerce-Price-currencySymbol{
|
721 |
vertical-align: top;
|
722 |
}
|
723 |
|
724 |
.tutor-course-loop-price{
|
|
|
725 |
color: var(--tutor-text-color);
|
726 |
+
font-size: 16px;
|
|
|
727 |
}
|
728 |
.tutor-course-loop-price .price del{
|
|
|
|
|
|
|
729 |
font-weight: 400;
|
730 |
}
|
731 |
|
741 |
.tutor-course-loop-price .price del + ins{
|
742 |
background: transparent;
|
743 |
margin-left: 0;
|
744 |
+
text-decoration: none;
|
745 |
}
|
746 |
+
.tutor-course-loop-price > .price{
|
747 |
+
display: flex;
|
748 |
+
align-items: center;
|
749 |
+
justify-content: flex-start;
|
750 |
+
font-weight: 600;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
751 |
}
|
752 |
+
|
753 |
+
.tutor-course-loop-price > .price .tutor-loop-cart-btn-wrap a{
|
754 |
+
color: var(--tutor-text-color);
|
755 |
+
position: relative;
|
756 |
+
line-height: 20px;
|
757 |
+
vertical-align: top;
|
758 |
+
display: block;
|
759 |
+
font-weight: 400;
|
760 |
font-size: 14px;
|
761 |
+
background: transparent;
|
|
|
|
|
|
|
762 |
padding: 0;
|
|
|
|
|
|
|
|
|
763 |
}
|
764 |
+
|
765 |
+
|
766 |
+
.tutor-course-loop-price > .price .tutor-loop-cart-btn-wrap a:hover{
|
767 |
+
color: var(--tutor-primary-color);
|
768 |
}
|
769 |
|
770 |
+
|
771 |
+
.tutor-course-loop-price > .price .tutor-loop-cart-btn-wrap{
|
772 |
+
margin-left: auto;
|
773 |
+
}
|
774 |
+
.tutor-course-loop-price > .price .tutor-loop-cart-btn-wrap a.added{
|
775 |
+
display: none;
|
776 |
}
|
777 |
|
778 |
+
.tutor-course-loop-price > .price .tutor-loop-cart-btn-wrap a::before{
|
779 |
content: '\e915';
|
780 |
+
font-family: 'tutor' !important;
|
781 |
+
speak: none;
|
782 |
+
font-style: normal;
|
783 |
+
font-weight: normal;
|
784 |
+
font-variant: normal;
|
785 |
+
text-transform: none;
|
786 |
+
line-height: 20px;
|
787 |
+
-webkit-font-smoothing: antialiased;
|
788 |
+
-moz-osx-font-smoothing: grayscale;
|
789 |
margin-right: 5px;
|
790 |
+
vertical-align: top;
|
791 |
}
|
792 |
|
793 |
+
|
794 |
+
|
|
|
795 |
|
796 |
/* Standard syntax */
|
797 |
@-webkit-keyframes mymove {
|
861 |
}
|
862 |
}
|
863 |
|
|
|
|
|
|
|
|
|
|
|
|
|
864 |
.tutor-course-filter-wrap{
|
865 |
clear: both;
|
866 |
+
margin-bottom: 50px;
|
867 |
}
|
868 |
.tutor-course-filter-form{
|
869 |
display: inline-block;
|
943 |
|
944 |
.tutor-loop-author > div a{
|
945 |
color: var(--tutor-text-color);
|
946 |
+
font-weight: 500;
|
947 |
-webkit-transition: 300ms;
|
948 |
transition: 300ms;
|
949 |
}
|
1078 |
.tutor-wrap nav.course-enrolled-nav ul li{
|
1079 |
display: inline-block;
|
1080 |
}
|
1081 |
+
|
1082 |
+
|
1083 |
.tutor-wrap nav.course-enrolled-nav ul li a{
|
1084 |
display: block;
|
1085 |
font-size: 16px;
|
1095 |
border-bottom: 2px solid var(--tutor-primary-color);
|
1096 |
color: var(--tutor-text-color);
|
1097 |
}
|
1098 |
+
|
1099 |
+
|
1100 |
+
@media (max-width: 575px) {
|
1101 |
+
.tutor-wrap nav.course-enrolled-nav ul li{
|
1102 |
+
display: inline-block;
|
1103 |
+
}
|
1104 |
+
.tutor-wrap nav.course-enrolled-nav ul li:not(:first-child) a,
|
1105 |
+
.tutor-wrap nav.course-enrolled-nav ul li a{
|
1106 |
+
padding: 8px;
|
1107 |
+
margin: 0;
|
1108 |
+
}
|
1109 |
+
.tutor-wrap nav.course-enrolled-nav ul li.active a{
|
1110 |
+
border: none;
|
1111 |
+
color: var(--tutor-primary-color);
|
1112 |
+
}
|
1113 |
+
}
|
1114 |
+
|
1115 |
/* *********************** */
|
1116 |
/* Tutor Dashboard */
|
1117 |
/* *********************** */
|
1125 |
align-items: center;
|
1126 |
padding-bottom: 30px;
|
1127 |
border-bottom: 1px solid #DCDFE5;
|
1128 |
+
flex-wrap: wrap;
|
1129 |
}
|
1130 |
|
1131 |
.tutor-dashboard-header-avatar img{
|
1140 |
-ms-flex-positive: 1;
|
1141 |
flex-grow: 1;
|
1142 |
padding-left: 20px;
|
1143 |
+
padding-top: 15px;
|
1144 |
+
padding-bottom: 15px;
|
1145 |
+
}
|
1146 |
+
|
1147 |
+
.tutor-dashboard-header-button{
|
1148 |
+
padding-top: 15px;
|
1149 |
}
|
1150 |
|
1151 |
.tutor-dashboard-header-display-name h4{
|
1152 |
font-size: 30px;
|
1153 |
+
margin-top: 0px;
|
1154 |
+
margin-bottom: 10px;
|
1155 |
+
line-height: 34px;
|
1156 |
}
|
1157 |
|
1158 |
.tutor-dashboard-header-stats{
|
1161 |
display: flex;
|
1162 |
-ms-flex-wrap: wrap;
|
1163 |
flex-wrap: wrap;
|
1164 |
+
line-height: 25px;
|
1165 |
}
|
1166 |
|
1167 |
.tutor-dashboard-header-stats > div:not(:first-child){
|
1169 |
}
|
1170 |
|
1171 |
|
1172 |
+
|
1173 |
+
|
1174 |
/* end dashboard header */
|
1175 |
|
1176 |
/**
|
1317 |
}
|
1318 |
|
1319 |
/*dashboard quiz attempts*/
|
1320 |
+
.tutor-dashboard-content{
|
1321 |
+
margin-bottom: 60px;
|
1322 |
+
}
|
1323 |
.tutor-dashboard-content .tutor-quiz-attempt-history tr th,
|
1324 |
.tutor-dashboard-content .tutor-quiz-attempt-history tr td{
|
1325 |
vertical-align: middle;
|
1342 |
margin-right: 4px;
|
1343 |
}
|
1344 |
|
1345 |
+
|
1346 |
+
.tutor-dashboard-content .tutor-quiz-attempt-history table tr th{
|
1347 |
+
background: #FAFBFC;
|
1348 |
+
}
|
1349 |
+
|
1350 |
+
.tutor-dashboard-content .tutor-quiz-attempt-history table tr td{
|
1351 |
+
background: #fff;
|
1352 |
+
}
|
1353 |
+
|
1354 |
+
@media (max-width: 768px) {
|
1355 |
+
.tutor-dashboard-content .tutor-quiz-attempt-history table tr{
|
1356 |
+
display: flex;
|
1357 |
+
flex-wrap: wrap;
|
1358 |
+
box-sizing: border-box;
|
1359 |
+
}
|
1360 |
+
.tutor-dashboard-content .tutor-quiz-attempt-history table tr th{
|
1361 |
+
display: none;
|
1362 |
+
}
|
1363 |
+
.tutor-dashboard-content .tutor-quiz-attempt-history table tr td{
|
1364 |
+
width: 100%;
|
1365 |
+
}
|
1366 |
+
.tutor-dashboard-content .tutor-quiz-attempt-history table tr td:not(:first-child){
|
1367 |
+
text-align: right;
|
1368 |
+
}
|
1369 |
+
|
1370 |
+
.tutor-dashboard-content .tutor-quiz-attempt-history table tr td:not(:first-child)::before{
|
1371 |
+
content: attr(title) ": ";
|
1372 |
+
float: left;
|
1373 |
+
font-weight: 700;
|
1374 |
+
}
|
1375 |
+
|
1376 |
+
}
|
1377 |
+
|
1378 |
.tutor-dashboard-content .tutor-quiz-attempt-history table a{
|
1379 |
color: var(--tutor-primary-color);
|
1380 |
font-weight: 700;
|
1409 |
display: -ms-flexbox;
|
1410 |
display: flex;
|
1411 |
}
|
1412 |
+
|
1413 |
.tutor-dashboard-profile .tutor-dashboard-profile-item .heading{
|
1414 |
min-width: 190px;
|
1415 |
}
|
1416 |
|
1417 |
+
@media (max-width: 480px) {
|
1418 |
+
.tutor-dashboard-profile .tutor-dashboard-profile-item{
|
1419 |
+
flex-wrap: wrap;
|
1420 |
+
}
|
1421 |
+
.tutor-dashboard-profile .tutor-dashboard-profile-item .heading{
|
1422 |
+
min-width: 100%;
|
1423 |
+
width: 100%;
|
1424 |
+
font-weight: 700;
|
1425 |
+
margin-bottom: 6px;
|
1426 |
+
}
|
1427 |
+
}
|
1428 |
+
|
1429 |
.tutor-dashboard-profile .tutor-dashboard-profile-item .content{
|
1430 |
-webkit-box-flex: 1;
|
1431 |
-ms-flex-positive: 1;
|
1543 |
}
|
1544 |
|
1545 |
@media (max-width: 991px) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1546 |
.tutor-dashboard-student .tutor-col-3,
|
1547 |
.tutor-dashboard-student .tutor-col-9{
|
1548 |
-webkit-box-flex: 0;
|
1644 |
|
1645 |
/** Earning Report */
|
1646 |
.tutor-date-range-filter-wrap{
|
|
|
|
|
|
|
1647 |
margin: 15px 0 20px;
|
1648 |
font-size: 12px;
|
1649 |
}
|
1650 |
+
|
1651 |
+
|
1652 |
.report-top-sub-menu{
|
1653 |
+
margin: 0 10px 5px 0;
|
1654 |
+
display: inline-block;
|
1655 |
+
font-size: 0;
|
|
|
|
|
|
|
|
|
1656 |
}
|
1657 |
+
|
1658 |
.report-top-sub-menu a{
|
1659 |
text-decoration: none;
|
1660 |
padding: 5px 8px;
|
1661 |
border: 1px solid #D7DADF;
|
1662 |
color: #AAAEB3;
|
1663 |
+
white-space: nowrap;
|
1664 |
+
display: inline-block;
|
1665 |
+
font-size: 12px;
|
1666 |
}
|
1667 |
+
|
1668 |
+
|
1669 |
+
.report-top-sub-menu a:not(:first-child){
|
1670 |
+
margin-left: -1px;
|
1671 |
+
}
|
1672 |
+
|
1673 |
.report-top-sub-menu a:hover{
|
1674 |
background: #EDF0F9;
|
1675 |
color: #333;
|
1679 |
color: #ffffff;
|
1680 |
border: 1px solid var(--tutor-primary-hover-color);
|
1681 |
}
|
1682 |
+
.tutor-date-range-wrap{
|
1683 |
+
display: inline-block;
|
|
|
1684 |
}
|
|
|
1685 |
.report-date-range-form{
|
1686 |
display: -webkit-box;
|
1687 |
display: -ms-flexbox;
|
1688 |
display: flex;
|
1689 |
margin-bottom: 0;
|
1690 |
+
max-width: 370px;
|
1691 |
}
|
1692 |
.date-range-input{
|
1693 |
position: relative;
|
|
|
1694 |
}
|
1695 |
+
|
1696 |
+
|
1697 |
+
.date-range-input input{
|
1698 |
+
border-radius: 0 !important;
|
1699 |
+
margin: 0 !important;
|
1700 |
+
border-right: none !important;
|
1701 |
+
font-size: 14px;
|
1702 |
+
}
|
1703 |
+
|
1704 |
.date-range-input:last-child{
|
1705 |
margin-right: 0;
|
1706 |
}
|
1707 |
+
|
1708 |
+
|
1709 |
+
.date-range-input:last-child button{
|
1710 |
+
border-radius: 0;
|
1711 |
+
}
|
1712 |
+
|
1713 |
.date-range-input input, .date-range-input input[type=text]{
|
1714 |
border: 1px solid #D7DADF;
|
1715 |
box-shadow: none;
|
1718 |
padding-right: 30px;
|
1719 |
padding-top: 0;
|
1720 |
padding-bottom: 0;
|
1721 |
+
width: 100%;
|
1722 |
}
|
1723 |
.date-range-input i.tutor-icon-calendar{
|
1724 |
position: absolute;
|
1738 |
.report-download-csv-icon a{
|
1739 |
text-decoration: none;
|
1740 |
}
|
1741 |
+
|
1742 |
+
.tutor-dashboard-statement-table-wrap{
|
1743 |
+
overflow-x: auto;
|
1744 |
+
}
|
1745 |
+
|
1746 |
table.tutor-dashboard-statement-table p{
|
1747 |
margin: 0;
|
1748 |
padding: 0;
|
1764 |
display: flex;
|
1765 |
-ms-flex-wrap: wrap;
|
1766 |
flex-wrap: wrap;
|
1767 |
+
margin: 0 -15px 40px;
|
1768 |
}
|
1769 |
|
1770 |
.withdraw-method-select-wrap .withdraw-method-select{
|
1772 |
-ms-flex-positive: 1;
|
1773 |
flex-grow: 1;
|
1774 |
padding: 0 15px;
|
1775 |
+
margin-bottom: 30px;
|
1776 |
}
|
1777 |
.withdraw-method-select-wrap .withdraw-method-select label{
|
1778 |
display: block;
|
1845 |
padding: 0 15px 20px;
|
1846 |
}
|
1847 |
|
1848 |
+
@media (max-width: 480px) {
|
1849 |
+
.withdraw-method-form > div{
|
1850 |
+
width: 100%;
|
1851 |
+
}
|
1852 |
+
}
|
1853 |
+
|
1854 |
.withdraw-method-form > div.withdraw-account-save-btn-wrap{
|
1855 |
width: 100%;
|
1856 |
}
|
1905 |
|
1906 |
/** END Withdraw */
|
1907 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1908 |
.tutor-mycourse-thumbnail {
|
1909 |
-webkit-box-flex: 0;
|
1910 |
-ms-flex: 0 0 250px;
|
1911 |
flex: 0 0 250px;
|
1912 |
-ms-flex-item-align: center;
|
1913 |
+
-webkit-background-size: cover;
|
1914 |
+
background-size: cover;
|
1915 |
+
background-position: center;
|
1916 |
}
|
1917 |
.tutor-mycourse-content {
|
1918 |
padding: 20px;
|
1920 |
-ms-flex: 1;
|
1921 |
flex: 1;
|
1922 |
}
|
1923 |
+
|
1924 |
+
|
1925 |
+
@media (max-width: 580px) {
|
1926 |
+
.tutor-mycourse-thumbnail{
|
1927 |
+
height: 200px;
|
1928 |
+
}
|
1929 |
+
.tutor-mycourse-thumbnail,
|
1930 |
+
.tutor-mycourse-content{
|
1931 |
+
min-width: 100%;
|
1932 |
+
width: 100%;
|
1933 |
+
}
|
1934 |
+
}
|
1935 |
+
|
1936 |
.tutor-mycourse-content h3{
|
1937 |
margin: 0 0 9px;
|
1938 |
}
|
1979 |
margin-bottom: 30px;
|
1980 |
border: 1px solid #DCDFE5;
|
1981 |
border-radius: 4px;
|
1982 |
+
flex-direction: row;
|
1983 |
+
overflow: hidden;
|
1984 |
+
}
|
1985 |
+
|
1986 |
+
@media (max-width: 580px) {
|
1987 |
+
.tutor-dashboard-content-inner .tutor-mycourse-wrap{
|
1988 |
+
flex-wrap: wrap;
|
1989 |
+
}
|
1990 |
}
|
1991 |
+
|
1992 |
.tutor-dashboard-content-inner .tutor-mycourse-wrap .tutor-course-status h4{
|
1993 |
display: none;
|
1994 |
}
|
2067 |
|
2068 |
.tutor-course-delete-popup{
|
2069 |
text-align: center;
|
|
|
2070 |
font-size: 16px;
|
2071 |
line-height: 25px;
|
2072 |
font-weight: 400;
|
2121 |
color: #ffffff;
|
2122 |
}
|
2123 |
|
2124 |
+
@media (max-width: 768px) {
|
2125 |
+
.tutor-modal-button-group button{
|
2126 |
+
padding: 5px 20px;
|
2127 |
+
min-width: auto;
|
2128 |
+
margin-bottom: 6px;
|
2129 |
+
}
|
2130 |
+
.tutor-modal-button-group{
|
2131 |
+
margin-top: 20px;
|
2132 |
+
}
|
2133 |
+
}
|
2134 |
+
|
2135 |
/* *********************** */
|
2136 |
/* End Tutor Student Dashboard */
|
2137 |
/************************ */
|
2138 |
.tutor-profile-photo-upload-wrap{
|
2139 |
width: 200px;
|
2140 |
+
height: auto;
|
2141 |
+
margin-bottom: 70px;
|
2142 |
position: relative;
|
2143 |
}
|
2144 |
.tutor-profile-photo-upload-wrap img{
|
2145 |
width: 100%;
|
2146 |
+
height: auto;
|
2147 |
+
display: block;
|
2148 |
}
|
2149 |
a.tutor-profile-photo-upload-btn {
|
2150 |
position: absolute;
|
2151 |
+
top: 100%;
|
2152 |
background-color: var(--tutor-primary-color);
|
2153 |
color: #fff;
|
2154 |
display: block;
|
2155 |
width: 100%;
|
2156 |
text-align: CENTER;
|
2157 |
+
padding: 9px 0;
|
2158 |
}
|
2159 |
+
|
2160 |
+
|
2161 |
+
a.tutor-profile-photo-upload-btn:hover{
|
2162 |
+
background-color: var(--tutor-primary-hover-color);
|
2163 |
+
color: #fff;
|
2164 |
+
}
|
2165 |
+
|
2166 |
.tutor-profile-photo-delete-btn{
|
2167 |
position: absolute;
|
2168 |
color: #ff000c;
|
2169 |
right: 10px;
|
2170 |
top: 10px;
|
2171 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2172 |
/**
|
2173 |
Instructor
|
2174 |
*/
|
2326 |
display: -webkit-box;
|
2327 |
display: -ms-flexbox;
|
2328 |
display: flex;
|
2329 |
+
position: relative;
|
2330 |
}
|
2331 |
.tutor-lesson-sidebar{
|
2332 |
-webkit-box-flex: 0;
|
2336 |
|
2337 |
@media (max-width: 991px) {
|
2338 |
.tutor-lesson-sidebar{
|
2339 |
+
position: absolute;
|
2340 |
+
left: 0;
|
2341 |
+
top: 70px;
|
2342 |
+
width: 400px;
|
2343 |
+
max-width: 95%;
|
2344 |
+
height: calc(100% - 70px);
|
2345 |
+
z-index: 9;
|
2346 |
+
background: #fff;
|
2347 |
+
overflow-y: auto;
|
2348 |
+
display: none;
|
2349 |
}
|
2350 |
}
|
2351 |
|
2808 |
.tutor-lead-info-btn-group .tutor-course-compelte-form-wrap{
|
2809 |
width: calc(50% - 22px);
|
2810 |
text-align: center;
|
2811 |
+
margin: 9px;
|
2812 |
display: inline-block;
|
2813 |
}
|
2814 |
|
3022 |
font-family: 'tutor';
|
3023 |
margin-right: 5px;
|
3024 |
content: "\e91d";
|
3025 |
+
-webkit-animation: spin 1s steps(8) infinite;
|
3026 |
+
animation: spin 1s steps(8) infinite;
|
3027 |
display: inline-block;
|
3028 |
}
|
3029 |
.loading-lesson .tutor-lesson-video-wrap:before{
|
3228 |
color: var(--tutor-text-color);
|
3229 |
}
|
3230 |
|
3231 |
+
.tutor-quiz-header .tutor-quiz-meta li strong{
|
3232 |
+
display: block;
|
3233 |
+
color: var(--tutor-light-color);
|
3234 |
+
font-weight: 400;
|
3235 |
+
}
|
3236 |
+
|
3237 |
@media (max-width: 767px) {
|
3238 |
.tutor-quiz-header .tutor-quiz-meta{
|
3239 |
display: block;
|
3241 |
padding: 0;
|
3242 |
}
|
3243 |
.tutor-quiz-header .tutor-quiz-meta li{
|
3244 |
+
display: block;
|
3245 |
color: var(--tutor-text-color);
|
3246 |
margin: 5px;
|
3247 |
+
border: none;
|
3248 |
+
padding: 0;
|
3249 |
+
border-radius: 0;
|
3250 |
+
}
|
3251 |
+
.tutor-quiz-header .tutor-quiz-meta li strong{
|
3252 |
+
display: inline-block;
|
3253 |
+
margin-right: 5px;
|
3254 |
}
|
|
|
|
|
|
|
|
|
|
|
3255 |
}
|
3256 |
.tutor-quiz-attempt-history{
|
3257 |
overflow-x: auto;
|
3295 |
.tutor-quiz-attempt-history table span.result-pass{
|
3296 |
background: var(--tutor-success-button-color);
|
3297 |
}
|
3298 |
+
|
3299 |
+
@media (max-width: 767px) {
|
3300 |
+
.single-quiz-page.tutor-quiz-attempt-history table tr{
|
3301 |
+
display: flex;
|
3302 |
+
flex-wrap: wrap;
|
3303 |
+
overflow: hidden;
|
3304 |
+
}
|
3305 |
+
.single-quiz-page.tutor-quiz-attempt-history table tr th{
|
3306 |
+
display: none;
|
3307 |
+
}
|
3308 |
+
.single-quiz-page.tutor-quiz-attempt-history table tr td{
|
3309 |
+
width: 100%;
|
3310 |
+
}
|
3311 |
+
|
3312 |
+
.single-quiz-page.tutor-quiz-attempt-history table tr td:first-child{
|
3313 |
+
font-weight: 600;
|
3314 |
+
background: #f1f1f1;
|
3315 |
+
}
|
3316 |
+
.single-quiz-page.tutor-quiz-attempt-history table tr td:not(:first-child){
|
3317 |
+
text-align: right;
|
3318 |
+
}
|
3319 |
+
.single-quiz-page.tutor-quiz-attempt-history table tr td:not(:first-child)::before{
|
3320 |
+
content: attr(title) ": ";
|
3321 |
+
float: left;
|
3322 |
+
font-weight: 700;
|
3323 |
+
}
|
3324 |
+
}
|
3325 |
+
|
3326 |
/*.attempt-reviewed-text {*/
|
3327 |
/*color: #777;*/
|
3328 |
/*font-size: 12px;*/
|
3383 |
height: 175px;
|
3384 |
border-radius: 5px;
|
3385 |
box-shadow: none;
|
3386 |
+
min-width: 100%;
|
3387 |
margin-bottom: 5px;
|
3388 |
}
|
3389 |
+
|
3390 |
.tutor-quiz-answers-wrap textarea:focus{
|
3391 |
background: transparent;
|
3392 |
outline: none !important;
|
3512 |
vertical-align: top;
|
3513 |
}
|
3514 |
|
3515 |
+
@media (max-width: 767px) {
|
3516 |
+
.answer-type-matching .quiz-answer-matching-items-wrap .quiz-answer-item-matching{
|
3517 |
+
width: 50%;
|
3518 |
+
}
|
3519 |
+
}
|
3520 |
+
|
3521 |
+
@media (max-width: 575px) {
|
3522 |
+
.answer-type-matching .quiz-answer-matching-items-wrap .quiz-answer-item-matching{
|
3523 |
+
width: 100%;
|
3524 |
+
}
|
3525 |
+
}
|
3526 |
|
3527 |
.answer-type-matching .quiz-answer-matching-items-wrap{
|
3528 |
margin: 0 -10px;
|
4269 |
margin-right: 0;
|
4270 |
}
|
4271 |
|
4272 |
+
@media (max-width: 575px) {
|
4273 |
+
.tutor-single-course-meta ul li.tutor-social-share{
|
4274 |
+
display: none;
|
4275 |
+
}
|
4276 |
+
}
|
4277 |
+
|
4278 |
.tutor-single-course-meta ul li.tutor-social-share button{
|
4279 |
margin: 0;
|
4280 |
border: none;
|
4439 |
background: #fff;
|
4440 |
padding: 60px;
|
4441 |
width: 90%;
|
4442 |
+
max-width: 750px;
|
4443 |
max-height: 90%;
|
4444 |
overflow-y: auto;
|
4445 |
}
|
4446 |
|
4447 |
+
@media (max-width: 768px) {
|
4448 |
+
.tutor-frontend-modal .tutor-frontend-modal-content{
|
4449 |
+
padding: 40px;
|
4450 |
+
}
|
4451 |
+
}
|
4452 |
+
|
4453 |
+
@media (max-width: 540px) {
|
4454 |
+
.tutor-frontend-modal .tutor-frontend-modal-content{
|
4455 |
+
padding: 20px;
|
4456 |
+
}
|
4457 |
+
}
|
4458 |
+
|
4459 |
button.tm-close.tutor-icon-line-cross {
|
4460 |
position: absolute;
|
4461 |
right: 23px;
|
4463 |
background: transparent;
|
4464 |
padding: 0;
|
4465 |
font-size: 24px;
|
4466 |
+
border: none;
|
4467 |
+
color: var(--tutor-light-color);
|
4468 |
+
}
|
4469 |
+
button.tm-close.tutor-icon-line-cross:hover{
|
4470 |
+
color: red;
|
4471 |
}
|
4472 |
|
4473 |
.label-order-status{
|
@@ -378,6 +378,7 @@ jQuery(document).ready(function($){
|
|
378 |
success: function (data) {
|
379 |
$wrap.html(data.data.html);
|
380 |
videoPlayer.init();
|
|
|
381 |
},
|
382 |
complete: function () {
|
383 |
$wrap.removeClass('loading-lesson');
|
@@ -407,6 +408,7 @@ jQuery(document).ready(function($){
|
|
407 |
success: function (data) {
|
408 |
$wrap.html(data.data.html);
|
409 |
init_quiz_builder();
|
|
|
410 |
},
|
411 |
complete: function () {
|
412 |
$wrap.removeClass('loading-lesson');
|
378 |
success: function (data) {
|
379 |
$wrap.html(data.data.html);
|
380 |
videoPlayer.init();
|
381 |
+
$('.tutor-lesson-sidebar').css('display', '');
|
382 |
},
|
383 |
complete: function () {
|
384 |
$wrap.removeClass('loading-lesson');
|
408 |
success: function (data) {
|
409 |
$wrap.html(data.data.html);
|
410 |
init_quiz_builder();
|
411 |
+
$('.tutor-lesson-sidebar').css('display', '');
|
412 |
},
|
413 |
complete: function () {
|
414 |
$wrap.removeClass('loading-lesson');
|
@@ -29,7 +29,6 @@ class Admin{
|
|
29 |
|
30 |
//Admin Footer Text
|
31 |
add_filter( 'admin_footer_text', array( $this, 'admin_footer_text' ), 1 );
|
32 |
-
|
33 |
//Register Course Widget
|
34 |
add_action( 'widgets_init', array($this, 'register_course_widget') );
|
35 |
}
|
@@ -45,8 +44,13 @@ class Admin{
|
|
45 |
|
46 |
$course_post_type = tutor()->course_post_type;
|
47 |
|
48 |
-
|
|
|
|
|
|
|
49 |
|
|
|
|
|
50 |
add_submenu_page('tutor', __('Categories', 'tutor'), __('Categories', 'tutor'), 'manage_tutor', 'edit-tags.php?taxonomy=course-category&post_type='.$course_post_type, null );
|
51 |
|
52 |
add_submenu_page('tutor', __('Tags', 'tutor'), __('Tags', 'tutor'), 'manage_tutor', 'edit-tags.php?taxonomy=course-tag&post_type='.$course_post_type, null );
|
@@ -71,10 +75,10 @@ class Admin{
|
|
71 |
add_submenu_page('tutor', __('Settings', 'tutor'), __('Settings', 'tutor'), 'manage_tutor', 'tutor_settings', array($this, 'tutor_page') );
|
72 |
|
73 |
add_submenu_page('tutor',__('Uninstall Tutor LMS', 'tutor'), null, 'deactivate_plugin', 'tutor-uninstall', array($this, 'tutor_uninstall'));
|
74 |
-
|
75 |
if ( ! $hasPro){
|
76 |
add_submenu_page( 'tutor', __( 'Get Pro', 'tutor' ), __( '<span class="dashicons dashicons-awards tutor-get-pro-text"></span> Get Pro', 'tutor' ), 'manage_options', 'tutor-get-pro', array($this, 'tutor_get_pro') );
|
77 |
-
}
|
78 |
|
79 |
}
|
80 |
|
@@ -311,7 +315,7 @@ class Admin{
|
|
311 |
'gzip_enabled' => is_callable( 'gzopen' ),
|
312 |
'mbstring_enabled' => extension_loaded( 'mbstring' ),
|
313 |
);
|
314 |
-
|
315 |
}
|
316 |
|
317 |
|
@@ -350,7 +354,7 @@ class Admin{
|
|
350 |
foreach( $terms as $term ){
|
351 |
/**D*/ wp_remove_object_terms( $post_id, array( $term->term_id ), 'course-category' );
|
352 |
}
|
353 |
-
|
354 |
//Delete tags if available
|
355 |
$terms = wp_get_object_terms( $post_id, 'course-tag' );
|
356 |
foreach( $terms as $term ){
|
@@ -390,7 +394,7 @@ class Admin{
|
|
390 |
|
391 |
deactivate_plugins($plugin_file);
|
392 |
}
|
393 |
-
|
394 |
wp_redirect('plugins.php');
|
395 |
die();
|
396 |
}
|
29 |
|
30 |
//Admin Footer Text
|
31 |
add_filter( 'admin_footer_text', array( $this, 'admin_footer_text' ), 1 );
|
|
|
32 |
//Register Course Widget
|
33 |
add_action( 'widgets_init', array($this, 'register_course_widget') );
|
34 |
}
|
44 |
|
45 |
$course_post_type = tutor()->course_post_type;
|
46 |
|
47 |
+
$pro_text = '';
|
48 |
+
if ($hasPro){
|
49 |
+
$pro_text = ' '.__('Pro', 'tutor');
|
50 |
+
}
|
51 |
|
52 |
+
add_menu_page(__('Tutor LMS', 'tutor').$pro_text, __('Tutor LMS', 'tutor').$pro_text, 'manage_tutor_instructor', 'tutor', null,
|
53 |
+
'dashicons-welcome-learn-more', 2);
|
54 |
add_submenu_page('tutor', __('Categories', 'tutor'), __('Categories', 'tutor'), 'manage_tutor', 'edit-tags.php?taxonomy=course-category&post_type='.$course_post_type, null );
|
55 |
|
56 |
add_submenu_page('tutor', __('Tags', 'tutor'), __('Tags', 'tutor'), 'manage_tutor', 'edit-tags.php?taxonomy=course-tag&post_type='.$course_post_type, null );
|
75 |
add_submenu_page('tutor', __('Settings', 'tutor'), __('Settings', 'tutor'), 'manage_tutor', 'tutor_settings', array($this, 'tutor_page') );
|
76 |
|
77 |
add_submenu_page('tutor',__('Uninstall Tutor LMS', 'tutor'), null, 'deactivate_plugin', 'tutor-uninstall', array($this, 'tutor_uninstall'));
|
78 |
+
|
79 |
if ( ! $hasPro){
|
80 |
add_submenu_page( 'tutor', __( 'Get Pro', 'tutor' ), __( '<span class="dashicons dashicons-awards tutor-get-pro-text"></span> Get Pro', 'tutor' ), 'manage_options', 'tutor-get-pro', array($this, 'tutor_get_pro') );
|
81 |
+
}
|
82 |
|
83 |
}
|
84 |
|
315 |
'gzip_enabled' => is_callable( 'gzopen' ),
|
316 |
'mbstring_enabled' => extension_loaded( 'mbstring' ),
|
317 |
);
|
318 |
+
|
319 |
}
|
320 |
|
321 |
|
354 |
foreach( $terms as $term ){
|
355 |
/**D*/ wp_remove_object_terms( $post_id, array( $term->term_id ), 'course-category' );
|
356 |
}
|
357 |
+
|
358 |
//Delete tags if available
|
359 |
$terms = wp_get_object_terms( $post_id, 'course-tag' );
|
360 |
foreach( $terms as $term ){
|
394 |
|
395 |
deactivate_plugins($plugin_file);
|
396 |
}
|
397 |
+
|
398 |
wp_redirect('plugins.php');
|
399 |
die();
|
400 |
}
|
@@ -34,6 +34,11 @@ class Course extends Tutor_Base {
|
|
34 |
*/
|
35 |
add_action('wp_ajax_tutor_delete_dashboard_course', array($this, 'tutor_delete_dashboard_course'));
|
36 |
|
|
|
|
|
|
|
|
|
|
|
37 |
}
|
38 |
/**
|
39 |
* Registering metabox
|
@@ -536,4 +541,26 @@ class Course extends Tutor_Base {
|
|
536 |
}
|
537 |
|
538 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
539 |
}
|
34 |
*/
|
35 |
add_action('wp_ajax_tutor_delete_dashboard_course', array($this, 'tutor_delete_dashboard_course'));
|
36 |
|
37 |
+
/**
|
38 |
+
* Gutenberg author support
|
39 |
+
*/
|
40 |
+
|
41 |
+
add_filter('wp_insert_post_data', array($this, 'tutor_add_gutenberg_author'), '99', 2);
|
42 |
}
|
43 |
/**
|
44 |
* Registering metabox
|
541 |
}
|
542 |
|
543 |
|
544 |
+
public function tutor_add_gutenberg_author($data , $postarr){
|
545 |
+
global $wpdb;
|
546 |
+
|
547 |
+
$post_author = (int) tutor_utils()->avalue_dot('post_author', $data);
|
548 |
+
|
549 |
+
if ( ! $post_author){
|
550 |
+
$user_ID = (int) tutor_utils()->avalue_dot('user_ID', $postarr);
|
551 |
+
if ($user_ID){
|
552 |
+
$data['post_author'] = $user_ID;
|
553 |
+
}else{
|
554 |
+
global $wpdb;
|
555 |
+
|
556 |
+
$post_ID = (int) tutor_utils()->avalue_dot('ID', $postarr);
|
557 |
+
$post_author = (int) $wpdb->get_var("SELECT post_author FROM {$wpdb->posts} WHERE ID = {$post_ID} ");
|
558 |
+
|
559 |
+
$data['post_author'] = $post_author;
|
560 |
+
}
|
561 |
+
}
|
562 |
+
|
563 |
+
return $data;
|
564 |
+
}
|
565 |
+
|
566 |
}
|
@@ -9,6 +9,9 @@
|
|
9 |
|
10 |
namespace TUTOR;
|
11 |
|
|
|
|
|
|
|
12 |
|
13 |
class Instructor {
|
14 |
|
9 |
|
10 |
namespace TUTOR;
|
11 |
|
12 |
+
if ( ! defined( 'ABSPATH' ) )
|
13 |
+
exit;
|
14 |
+
|
15 |
|
16 |
class Instructor {
|
17 |
|
@@ -125,6 +125,11 @@ class Options {
|
|
125 |
'label' => __('General', 'tutor'),
|
126 |
'desc' => __('Course Settings', 'tutor'),
|
127 |
'fields' => array(
|
|
|
|
|
|
|
|
|
|
|
128 |
'display_course_instructors' => array(
|
129 |
'type' => 'checkbox',
|
130 |
'label' => __('Display instructors profile', 'tutor'),
|
125 |
'label' => __('General', 'tutor'),
|
126 |
'desc' => __('Course Settings', 'tutor'),
|
127 |
'fields' => array(
|
128 |
+
'enable_gutenberg_course_edit' => array(
|
129 |
+
'type' => 'checkbox',
|
130 |
+
'label' => __('Enable Gutenberg', 'tutor'),
|
131 |
+
'label_title' => __('Enable Gutenberg support in course edit page.', 'tutor'),
|
132 |
+
),
|
133 |
'display_course_instructors' => array(
|
134 |
'type' => 'checkbox',
|
135 |
'label' => __('Display instructors profile', 'tutor'),
|
@@ -25,6 +25,8 @@ class Post_types{
|
|
25 |
}
|
26 |
|
27 |
public function register_course_post_types() {
|
|
|
|
|
28 |
$labels = array(
|
29 |
'name' => _x( 'Courses', 'post type general name', 'tutor' ),
|
30 |
'singular_name' => _x( 'Course', 'post type singular name', 'tutor' ),
|
@@ -58,6 +60,7 @@ class Post_types{
|
|
58 |
'menu_position' => null,
|
59 |
'taxonomies' => array( 'course-category', 'course-tag' ),
|
60 |
'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt'),
|
|
|
61 |
|
62 |
'capabilities' => array(
|
63 |
'edit_post' => 'edit_tutor_course',
|
25 |
}
|
26 |
|
27 |
public function register_course_post_types() {
|
28 |
+
$enable_gutenberg = (bool) tutor_utils()->get_option('enable_gutenberg_course_edit');
|
29 |
+
|
30 |
$labels = array(
|
31 |
'name' => _x( 'Courses', 'post type general name', 'tutor' ),
|
32 |
'singular_name' => _x( 'Course', 'post type singular name', 'tutor' ),
|
60 |
'menu_position' => null,
|
61 |
'taxonomies' => array( 'course-category', 'course-tag' ),
|
62 |
'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt'),
|
63 |
+
'show_in_rest' => $enable_gutenberg,
|
64 |
|
65 |
'capabilities' => array(
|
66 |
'edit_post' => 'edit_tutor_course',
|
@@ -3,6 +3,9 @@
|
|
3 |
|
4 |
namespace TUTOR;
|
5 |
|
|
|
|
|
|
|
6 |
|
7 |
class Question {
|
8 |
|
3 |
|
4 |
namespace TUTOR;
|
5 |
|
6 |
+
if ( ! defined( 'ABSPATH' ) )
|
7 |
+
exit;
|
8 |
+
|
9 |
|
10 |
class Question {
|
11 |
|
@@ -9,6 +9,9 @@
|
|
9 |
|
10 |
namespace TUTOR;
|
11 |
|
|
|
|
|
|
|
12 |
|
13 |
class Student {
|
14 |
|
9 |
|
10 |
namespace TUTOR;
|
11 |
|
12 |
+
if ( ! defined( 'ABSPATH' ) )
|
13 |
+
exit;
|
14 |
+
|
15 |
|
16 |
class Student {
|
17 |
|
@@ -12,6 +12,9 @@
|
|
12 |
namespace TUTOR;
|
13 |
|
14 |
|
|
|
|
|
|
|
15 |
class Theme_Compatibility {
|
16 |
|
17 |
public function __construct() {
|
12 |
namespace TUTOR;
|
13 |
|
14 |
|
15 |
+
if ( ! defined( 'ABSPATH' ) )
|
16 |
+
exit;
|
17 |
+
|
18 |
class Theme_Compatibility {
|
19 |
|
20 |
public function __construct() {
|
@@ -2,6 +2,9 @@
|
|
2 |
|
3 |
namespace TUTOR;
|
4 |
|
|
|
|
|
|
|
5 |
|
6 |
class Tools {
|
7 |
|
2 |
|
3 |
namespace TUTOR;
|
4 |
|
5 |
+
if ( ! defined( 'ABSPATH' ) )
|
6 |
+
exit;
|
7 |
+
|
8 |
|
9 |
class Tools {
|
10 |
|
@@ -47,6 +47,7 @@ final class Tutor{
|
|
47 |
private $withdraw;
|
48 |
|
49 |
private $course_widget;
|
|
|
50 |
|
51 |
/**
|
52 |
* @return null|Tutor
|
@@ -68,8 +69,6 @@ final class Tutor{
|
|
68 |
$this->url = plugin_dir_url(TUTOR_FILE);
|
69 |
$this->basename = plugin_basename(TUTOR_FILE);
|
70 |
|
71 |
-
add_action('admin_init', array($this, 'tutor_course_post_type_update'));
|
72 |
-
|
73 |
/**
|
74 |
* Include Files
|
75 |
*/
|
@@ -113,6 +112,7 @@ final class Tutor{
|
|
113 |
$this->withdraw = new Withdraw();
|
114 |
|
115 |
$this->course_widget = new Course_Widget();
|
|
|
116 |
|
117 |
/**
|
118 |
* Run Method
|
@@ -202,7 +202,7 @@ final class Tutor{
|
|
202 |
/**
|
203 |
* Backward Compatibility for version < 1.2.0
|
204 |
*/
|
205 |
-
if (version_compare(get_option('
|
206 |
/**
|
207 |
* Creating New Database
|
208 |
*/
|
@@ -216,7 +216,7 @@ final class Tutor{
|
|
216 |
/**
|
217 |
* Backward Compatibility to < 1.3.1 for make course plural
|
218 |
*/
|
219 |
-
if (version_compare(get_option('
|
220 |
global $wpdb;
|
221 |
|
222 |
if ( ! get_option('is_course_post_type_updated')){
|
@@ -234,22 +234,6 @@ final class Tutor{
|
|
234 |
wp_clear_scheduled_hook('tutor_once_in_day_run_schedule');
|
235 |
}
|
236 |
|
237 |
-
public function tutor_course_post_type_update(){
|
238 |
-
/**
|
239 |
-
* Backward Compatibility to < 1.3.1 for make course plural
|
240 |
-
*/
|
241 |
-
if (version_compare(get_option('TUTOR_VERSION'), '1.3.1', '<')){
|
242 |
-
global $wpdb;
|
243 |
-
|
244 |
-
if ( ! get_option('is_course_post_type_updated')){
|
245 |
-
$wpdb->update($wpdb->posts, array('post_type' => 'courses'), array('post_type' => 'course'));
|
246 |
-
update_option('is_course_post_type_updated', true);
|
247 |
-
update_option('tutor_version', '1.3.1');
|
248 |
-
flush_rewrite_rules();
|
249 |
-
}
|
250 |
-
}
|
251 |
-
}
|
252 |
-
|
253 |
public function create_database(){
|
254 |
global $wpdb;
|
255 |
|
47 |
private $withdraw;
|
48 |
|
49 |
private $course_widget;
|
50 |
+
private $upgrader;
|
51 |
|
52 |
/**
|
53 |
* @return null|Tutor
|
69 |
$this->url = plugin_dir_url(TUTOR_FILE);
|
70 |
$this->basename = plugin_basename(TUTOR_FILE);
|
71 |
|
|
|
|
|
72 |
/**
|
73 |
* Include Files
|
74 |
*/
|
112 |
$this->withdraw = new Withdraw();
|
113 |
|
114 |
$this->course_widget = new Course_Widget();
|
115 |
+
$this->upgrader = new Upgrader();
|
116 |
|
117 |
/**
|
118 |
* Run Method
|
202 |
/**
|
203 |
* Backward Compatibility for version < 1.2.0
|
204 |
*/
|
205 |
+
if (version_compare(get_option('tutor_version'), '1.2.0', '<')){
|
206 |
/**
|
207 |
* Creating New Database
|
208 |
*/
|
216 |
/**
|
217 |
* Backward Compatibility to < 1.3.1 for make course plural
|
218 |
*/
|
219 |
+
if (version_compare(get_option('tutor_version'), '1.3.1', '<')){
|
220 |
global $wpdb;
|
221 |
|
222 |
if ( ! get_option('is_course_post_type_updated')){
|
234 |
wp_clear_scheduled_hook('tutor_once_in_day_run_schedule');
|
235 |
}
|
236 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
237 |
public function create_database(){
|
238 |
global $wpdb;
|
239 |
|
@@ -5,6 +5,9 @@
|
|
5 |
|
6 |
namespace TUTOR;
|
7 |
|
|
|
|
|
|
|
8 |
class TutorEDD extends Tutor_Base {
|
9 |
|
10 |
public function __construct() {
|
5 |
|
6 |
namespace TUTOR;
|
7 |
|
8 |
+
if ( ! defined( 'ABSPATH' ) )
|
9 |
+
exit;
|
10 |
+
|
11 |
class TutorEDD extends Tutor_Base {
|
12 |
|
13 |
public function __construct() {
|
@@ -8,6 +8,8 @@
|
|
8 |
|
9 |
namespace TUTOR;
|
10 |
|
|
|
|
|
11 |
|
12 |
class Tutor_Base {
|
13 |
|
8 |
|
9 |
namespace TUTOR;
|
10 |
|
11 |
+
if ( ! defined( 'ABSPATH' ) )
|
12 |
+
exit;
|
13 |
|
14 |
class Tutor_Base {
|
15 |
|
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace TUTOR;
|
4 |
+
|
5 |
+
|
6 |
+
if ( ! defined( 'ABSPATH' ) )
|
7 |
+
exit;
|
8 |
+
|
9 |
+
class Upgrader {
|
10 |
+
|
11 |
+
public function __construct() {
|
12 |
+
add_action('admin_init', array($this, 'init_upgrader'));
|
13 |
+
}
|
14 |
+
|
15 |
+
public function init_upgrader(){
|
16 |
+
$upgrades = $this->available_upgrades();
|
17 |
+
|
18 |
+
if (tutor_utils()->count($upgrades)){
|
19 |
+
foreach ($upgrades as $upgrade){
|
20 |
+
$this->{$upgrade}();
|
21 |
+
}
|
22 |
+
}
|
23 |
+
}
|
24 |
+
|
25 |
+
public function available_upgrades(){
|
26 |
+
$version = get_option('tutor_version');
|
27 |
+
|
28 |
+
$upgrades = array();
|
29 |
+
if ($version){
|
30 |
+
$upgrades[] = 'upgrade_to_1_3_1';
|
31 |
+
}
|
32 |
+
|
33 |
+
return $upgrades;
|
34 |
+
}
|
35 |
+
|
36 |
+
/**
|
37 |
+
* Upgrade to version 1.3.1
|
38 |
+
*/
|
39 |
+
public function upgrade_to_1_3_1(){
|
40 |
+
if (version_compare(get_option('tutor_version'), '1.3.1', '<')) {
|
41 |
+
global $wpdb;
|
42 |
+
|
43 |
+
if ( ! get_option('is_course_post_type_updated')){
|
44 |
+
$wpdb->update($wpdb->posts, array('post_type' => 'courses'), array('post_type' => 'course'));
|
45 |
+
update_option('is_course_post_type_updated', true);
|
46 |
+
update_option('tutor_version', '1.3.1');
|
47 |
+
flush_rewrite_rules();
|
48 |
+
}
|
49 |
+
|
50 |
+
}
|
51 |
+
}
|
52 |
+
|
53 |
+
|
54 |
+
}
|
@@ -2,6 +2,9 @@
|
|
2 |
|
3 |
namespace TUTOR;
|
4 |
|
|
|
|
|
|
|
5 |
|
6 |
class User {
|
7 |
|
2 |
|
3 |
namespace TUTOR;
|
4 |
|
5 |
+
if ( ! defined( 'ABSPATH' ) )
|
6 |
+
exit;
|
7 |
+
|
8 |
|
9 |
class User {
|
10 |
|
@@ -3838,7 +3838,10 @@ class Utils {
|
|
3838 |
* @since v.1.0.4
|
3839 |
*/
|
3840 |
public function count($array = array()){
|
3841 |
-
|
|
|
|
|
|
|
3842 |
}
|
3843 |
|
3844 |
/**
|
3838 |
* @since v.1.0.4
|
3839 |
*/
|
3840 |
public function count($array = array()){
|
3841 |
+
if (is_array($array) && count($array)){
|
3842 |
+
return count($array);
|
3843 |
+
}
|
3844 |
+
return false;
|
3845 |
}
|
3846 |
|
3847 |
/**
|
@@ -10,7 +10,6 @@
|
|
10 |
|
11 |
namespace TUTOR;
|
12 |
|
13 |
-
|
14 |
if ( ! defined( 'ABSPATH' ) )
|
15 |
exit;
|
16 |
|
10 |
|
11 |
namespace TUTOR;
|
12 |
|
|
|
13 |
if ( ! defined( 'ABSPATH' ) )
|
14 |
exit;
|
15 |
|
@@ -8,6 +8,9 @@
|
|
8 |
|
9 |
namespace TUTOR;
|
10 |
|
|
|
|
|
|
|
11 |
class WooCommerce extends Tutor_Base {
|
12 |
|
13 |
public function __construct() {
|
@@ -264,6 +267,12 @@ class WooCommerce extends Tutor_Base {
|
|
264 |
'label_title' => __('Enable WooComerce to sell course', 'tutor'),
|
265 |
'desc' => __('By integrating WooCommerce, you can sell your course', 'tutor'),
|
266 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
267 |
),
|
268 |
),
|
269 |
),
|
8 |
|
9 |
namespace TUTOR;
|
10 |
|
11 |
+
if ( ! defined( 'ABSPATH' ) )
|
12 |
+
exit;
|
13 |
+
|
14 |
class WooCommerce extends Tutor_Base {
|
15 |
|
16 |
public function __construct() {
|
267 |
'label_title' => __('Enable WooComerce to sell course', 'tutor'),
|
268 |
'desc' => __('By integrating WooCommerce, you can sell your course', 'tutor'),
|
269 |
),
|
270 |
+
'enable_guest_course_cart' => array(
|
271 |
+
'type' => 'checkbox',
|
272 |
+
'label' => __('Enable / Disable', 'tutor'),
|
273 |
+
'label_title' => __('Enable Add to cart by guest', 'tutor'),
|
274 |
+
'desc' => __('From the course details page, any user without login can add to cart course', 'tutor'),
|
275 |
+
),
|
276 |
),
|
277 |
),
|
278 |
),
|
@@ -1,4 +1,4 @@
|
|
1 |
-
body.single-lesson #content .col-full{
|
2 |
width: 100%;
|
3 |
max-width: 100%;
|
4 |
padding: 0;
|
@@ -7,4 +7,4 @@ body.single-lesson #content .col-full{
|
|
7 |
.tutor-container{
|
8 |
max-width: 100%;
|
9 |
padding: 0;
|
10 |
-
}
|
1 |
+
body.single-lesson #content .col-full, body.single-tutor_quiz #content .col-full{
|
2 |
width: 100%;
|
3 |
max-width: 100%;
|
4 |
padding: 0;
|
7 |
.tutor-container{
|
8 |
max-width: 100%;
|
9 |
padding: 0;
|
10 |
+
}
|
@@ -5,7 +5,7 @@ Tags: lms, course, elearning, education, quiz, training, sell courses, courses,
|
|
5 |
Requires at least: 4.5
|
6 |
Tested up to: 5.2
|
7 |
Requires PHP: 5.4.0
|
8 |
-
Stable tag: 1.3.
|
9 |
License: GPLv3
|
10 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
11 |
|
@@ -207,6 +207,22 @@ Tutor enables you to use any third party plugins without facing any compatibilit
|
|
207 |
|
208 |
== Changelog ==
|
209 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
210 |
= 1.3.1 - 22 May, 2019 =
|
211 |
|
212 |
* Added: status in the purchase history list
|
5 |
Requires at least: 4.5
|
6 |
Tested up to: 5.2
|
7 |
Requires PHP: 5.4.0
|
8 |
+
Stable tag: 1.3.2
|
9 |
License: GPLv3
|
10 |
License URI: https://www.gnu.org/licenses/gpl-3.0.html
|
11 |
|
207 |
|
208 |
== Changelog ==
|
209 |
|
210 |
+
= 1.3.2 - 29 May, 2019 =
|
211 |
+
|
212 |
+
* Added: centralized tutor version upgrading system by a dedicated class called `Upgrader`
|
213 |
+
* Added: add to cart guest mode in WooCommerce integration based on Tutor LMS > settings > woocommerce
|
214 |
+
* Added: Gutenberg support on course edit page based on settings
|
215 |
+
* Added: Automatic free plugin install from pro when the pro version is activated but the free plugin does not exist (pro)
|
216 |
+
* Added: nice notice bar for install or activate free version from pro (pro)
|
217 |
+
* Added: Pro text in the tutor LMS dashboard menu when Tutor Pro plugin installed and activated
|
218 |
+
* Updated: a design for course listing, removed hover and moved it to straight course gird footer
|
219 |
+
* Fixed: a Gutenberg bug related post author on course post type, usually post_author column saved 0 if course edit with Gutenberg, we fixed this issue.
|
220 |
+
* Fixed: a template condition in the course description
|
221 |
+
* Removed: license restriction for features, it required now for auto-update (pro)
|
222 |
+
* Fixed: Response design all issue fixed
|
223 |
+
* Fixed: array count check and return issue in utils
|
224 |
+
* Fixed: a bug in dashboard/settings, withdraw menu removed from subscriber/users dashboard, and only shown in the instructor's dashboard.
|
225 |
+
|
226 |
= 1.3.1 - 22 May, 2019 =
|
227 |
|
228 |
* Added: status in the purchase history list
|
@@ -77,8 +77,9 @@ do_action('tutor_dashboard/before/wrap'); ?>
|
|
77 |
<?php
|
78 |
|
79 |
if(current_user_can(tutor()->instructor_role)){
|
|
|
80 |
?>
|
81 |
-
<a class="tutor-btn bordered-btn" href="<?php echo esc_url(add_query_arg(array('post_type'
|
82 |
<?php _e('<i class="tutor-icon-video-camera"></i> Upload A Course', 'tutor'); ?>
|
83 |
</a>
|
84 |
<?php
|
77 |
<?php
|
78 |
|
79 |
if(current_user_can(tutor()->instructor_role)){
|
80 |
+
$course_type = tutor()->course_post_type;
|
81 |
?>
|
82 |
+
<a class="tutor-btn bordered-btn" href="<?php echo esc_url(add_query_arg(array('post_type'=>$course_type),admin_url('post-new.php'))); ?>">
|
83 |
<?php _e('<i class="tutor-icon-video-camera"></i> Upload A Course', 'tutor'); ?>
|
84 |
</a>
|
85 |
<?php
|
@@ -133,6 +133,13 @@ foreach ($chartData as $key => $salesCount){
|
|
133 |
</div>
|
134 |
|
135 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
|
137 |
|
138 |
<script>
|
@@ -143,8 +150,8 @@ foreach ($chartData as $key => $salesCount){
|
|
143 |
labels: <?php echo json_encode(array_keys($chartData)); ?>,
|
144 |
datasets: [{
|
145 |
label: 'Earning',
|
146 |
-
backgroundColor: '
|
147 |
-
borderColor: '
|
148 |
data: <?php echo json_encode(array_values($chartData)); ?>,
|
149 |
borderWidth: 2,
|
150 |
fill: false,
|
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>
|
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,
|
@@ -3,64 +3,64 @@
|
|
3 |
|
4 |
if ($statements->count) {
|
5 |
?>
|
6 |
-
|
7 |
-
|
8 |
-
<tr>
|
9 |
-
<th><?php _e('Course', 'tutor'); ?></th>
|
10 |
-
<th><?php _e('Earning', 'tutor'); ?></th>
|
11 |
-
<th><?php _e('Deduct', 'tutor'); ?></th>
|
12 |
-
</tr>
|
13 |
-
|
14 |
-
<?php
|
15 |
-
foreach ($statements->results as $statement){
|
16 |
-
?>
|
17 |
<tr>
|
18 |
-
<
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
</a>
|
23 |
-
</p>
|
24 |
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
|
30 |
-
|
31 |
-
|
32 |
-
|
|
|
33 |
|
34 |
-
<
|
35 |
-
|
36 |
-
|
37 |
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
?>
|
42 |
-
</td>
|
43 |
-
<td>
|
44 |
-
<p><?php echo tutor_utils()->tutor_price($statement->instructor_amount); ?></p>
|
45 |
-
<p class="small-text"> <?php _e('As per'); ?> <?php echo $statement->instructor_rate ?> (<?php echo $statement->commission_type ?>) </p>
|
46 |
-
</td>
|
47 |
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
|
|
|
|
|
|
|
|
|
|
52 |
|
53 |
-
<
|
54 |
-
($statement->
|
55 |
-
|
56 |
-
|
57 |
-
</td>
|
58 |
-
</tr>
|
59 |
-
<?php
|
60 |
-
}
|
61 |
-
?>
|
62 |
-
</table>
|
63 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
<?php
|
65 |
}else{
|
66 |
printf("<span>%s</span>", __('Statement data is empty', 'tutor'));
|
3 |
|
4 |
if ($statements->count) {
|
5 |
?>
|
6 |
+
<div class="tutor-dashboard-statement-table-wrap">
|
7 |
+
<table class="tutor-dashboard-statement-table">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8 |
<tr>
|
9 |
+
<th><?php _e('Course', 'tutor'); ?></th>
|
10 |
+
<th><?php _e('Earning', 'tutor'); ?></th>
|
11 |
+
<th><?php _e('Deduct', 'tutor'); ?></th>
|
12 |
+
</tr>
|
|
|
|
|
13 |
|
14 |
+
<?php
|
15 |
+
foreach ($statements->results as $statement){
|
16 |
+
?>
|
17 |
+
<tr>
|
18 |
+
<td>
|
19 |
+
<p>
|
20 |
+
<a href="<?php echo get_the_permalink($statement->course_id); ?>" target="_blank">
|
21 |
+
<?php echo $statement->course_title; ?>
|
22 |
+
</a>
|
23 |
+
</p>
|
24 |
|
25 |
+
<p>
|
26 |
+
<?php _e('Price', 'tutor'); ?>
|
27 |
+
<?php echo tutor_utils()->tutor_price($statement->course_price_total); ?>
|
28 |
+
</p>
|
29 |
|
30 |
+
<p class="small-text">
|
31 |
+
<span class="statement-order-<?php echo $statement->order_status; ?>"><?php echo $statement->order_status; ?></span> <?php
|
32 |
+
_e('Order ID'); ?> #<?php echo $statement->order_id; ?>,
|
33 |
|
34 |
+
<strong><?php _e('Date:', 'tutor') ?></strong>
|
35 |
+
<i><?php echo date(get_option('date_format', strtotime($statement->created_at))).' '.date(get_option('time_format', strtotime($statement->created_at))) ?></i>
|
36 |
+
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
37 |
|
38 |
+
<?php
|
39 |
+
$order = new WC_Order($statement->order_id);
|
40 |
+
echo '<div class="statement-address"> <strong>Purchaser</strong> <address>'.$order->get_formatted_billing_address().'</address></div>';
|
41 |
+
?>
|
42 |
+
</td>
|
43 |
+
<td>
|
44 |
+
<p><?php echo tutor_utils()->tutor_price($statement->instructor_amount); ?></p>
|
45 |
+
<p class="small-text"> <?php _e('As per'); ?> <?php echo $statement->instructor_rate ?> (<?php echo $statement->commission_type ?>) </p>
|
46 |
+
</td>
|
47 |
|
48 |
+
<td>
|
49 |
+
<p><?php _e('Commission', 'tutor'); ?> : <?php echo tutor_utils()->tutor_price($statement->admin_amount); ?> </p>
|
50 |
+
<p class="small-text"><?php _e('Rate', 'tutor'); ?> : <?php echo $statement->admin_rate; ?> </p>
|
51 |
+
<p class="small-text"><?php _e('Type', 'tutor'); ?> : <?php echo $statement->commission_type; ?> </p>
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
|
53 |
+
<p><?php _e('Deducted', 'tutor'); ?> : <?php echo $statement->deduct_fees_name; ?> <?php echo tutor_utils()->tutor_price
|
54 |
+
($statement->deduct_fees_amount); ?>
|
55 |
+
</p>
|
56 |
+
<p class="small-text"><?php _e('Type', 'tutor'); ?> : <?php echo $statement->deduct_fees_type; ?> </p>
|
57 |
+
</td>
|
58 |
+
</tr>
|
59 |
+
<?php
|
60 |
+
}
|
61 |
+
?>
|
62 |
+
</table>
|
63 |
+
</div>
|
64 |
<?php
|
65 |
}else{
|
66 |
printf("<span>%s</span>", __('Statement data is empty', 'tutor'));
|
@@ -125,62 +125,69 @@ if ($statements->count) {
|
|
125 |
?>
|
126 |
</p>
|
127 |
|
128 |
-
<
|
129 |
-
<
|
130 |
-
<th><?php _e('Course', 'tutor'); ?></th>
|
131 |
-
<th><?php _e('Earning', 'tutor'); ?></th>
|
132 |
-
<th><?php _e('Deduct', 'tutor'); ?></th>
|
133 |
-
</tr>
|
134 |
-
|
135 |
-
<?php
|
136 |
-
foreach ($statements->results as $statement){
|
137 |
-
?>
|
138 |
<tr>
|
139 |
-
<
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
</a>
|
144 |
-
</p>
|
145 |
-
|
146 |
-
<p>
|
147 |
-
<?php _e('Price', 'tutor'); ?>
|
148 |
-
<?php echo tutor_utils()->tutor_price($statement->course_price_total); ?>
|
149 |
-
</p>
|
150 |
-
|
151 |
-
<p class="small-text">
|
152 |
-
<span class="statement-order-<?php echo $statement->order_status; ?>"><?php echo $statement->order_status; ?></span> <?php
|
153 |
-
_e('Order ID'); ?> #<?php echo $statement->order_id; ?>,
|
154 |
-
|
155 |
-
<strong><?php _e('Date:', 'tutor') ?></strong>
|
156 |
-
<i><?php echo date(get_option('date_format', strtotime($statement->created_at))).' '.date(get_option('time_format', strtotime($statement->created_at))) ?></i>
|
157 |
-
</p>
|
158 |
-
|
159 |
-
<?php
|
160 |
-
$order = new WC_Order($statement->order_id);
|
161 |
-
echo '<div class="statement-address"> <strong>Purchaser</strong> <address>'.$order->get_formatted_billing_address().'</address></div>';
|
162 |
-
?>
|
163 |
-
</td>
|
164 |
-
<td>
|
165 |
-
<p><?php echo tutor_utils()->tutor_price($statement->instructor_amount); ?></p>
|
166 |
-
<p class="small-text"> <?php _e('As per'); ?> <?php echo $statement->instructor_rate ?> (<?php echo $statement->commission_type ?>) </p>
|
167 |
-
</td>
|
168 |
-
|
169 |
-
<td>
|
170 |
-
<p><?php _e('Commission', 'tutor'); ?> : <?php echo tutor_utils()->tutor_price($statement->admin_amount); ?> </p>
|
171 |
-
<p class="small-text"><?php _e('Rate', 'tutor'); ?> : <?php echo $statement->admin_rate; ?> </p>
|
172 |
-
<p class="small-text"><?php _e('Type', 'tutor'); ?> : <?php echo $statement->commission_type; ?> </p>
|
173 |
-
|
174 |
-
<p><?php _e('Deducted', 'tutor'); ?> : <?php echo $statement->deduct_fees_name; ?> <?php echo tutor_utils()->tutor_price
|
175 |
-
($statement->deduct_fees_amount); ?>
|
176 |
-
</p>
|
177 |
-
<p class="small-text"><?php _e('Type', 'tutor'); ?> : <?php echo $statement->deduct_fees_type; ?> </p>
|
178 |
-
</td>
|
179 |
</tr>
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
184 |
<?php } else{
|
185 |
printf("<span>%s</span>", __('Statement data is empty', 'tutor'));
|
186 |
} ?>
|
125 |
?>
|
126 |
</p>
|
127 |
|
128 |
+
<div class="tutor-dashboard-statement-table-wrap">
|
129 |
+
<table class="tutor-dashboard-statement-table">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
<tr>
|
131 |
+
<th><?php _e('Course Info', 'tutor'); ?></th>
|
132 |
+
<th><?php _e('Earning', 'tutor'); ?></th>
|
133 |
+
<th><?php _e('Commission', 'tutor'); ?></th>
|
134 |
+
<th><?php _e('Deduct', 'tutor'); ?></th>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
135 |
</tr>
|
136 |
+
|
137 |
+
<?php
|
138 |
+
foreach ($statements->results as $statement){
|
139 |
+
?>
|
140 |
+
<tr>
|
141 |
+
<td>
|
142 |
+
|
143 |
+
<p class="small-text">
|
144 |
+
<span class="statement-order-<?php echo $statement->order_status; ?>"><?php echo $statement->order_status; ?></span>
|
145 |
+
<strong><?php _e('Date:', 'tutor') ?></strong>
|
146 |
+
<i><?php echo date(get_option('date_format', strtotime($statement->created_at))).' '.date(get_option('time_format', strtotime($statement->created_at))) ?></i>
|
147 |
+
</p>
|
148 |
+
|
149 |
+
<p>
|
150 |
+
<a href="<?php echo get_the_permalink($statement->course_id); ?>" target="_blank">
|
151 |
+
<?php echo $statement->course_title; ?>
|
152 |
+
</a>
|
153 |
+
</p>
|
154 |
+
|
155 |
+
<p>
|
156 |
+
<strong><?php _e('Price: ', 'tutor'); ?></strong>
|
157 |
+
<?php echo tutor_utils()->tutor_price($statement->course_price_total); ?>
|
158 |
+
</p>
|
159 |
+
|
160 |
+
<p class="small-text"><strong><?php _e('Order ID'); ?> #<?php echo $statement->order_id; ?></strong></p>
|
161 |
+
|
162 |
+
<?php
|
163 |
+
$order = new WC_Order($statement->order_id);
|
164 |
+
echo '<div class="statement-address"> <strong>Purchaser</strong> <address>'.$order->get_formatted_billing_address().'</address></div>';
|
165 |
+
?>
|
166 |
+
</td>
|
167 |
+
<td>
|
168 |
+
<p><?php echo tutor_utils()->tutor_price($statement->instructor_amount); ?></p>
|
169 |
+
<p class="small-text"> <?php _e('As per'); ?> <?php echo $statement->instructor_rate ?> (<?php echo $statement->commission_type ?>) </p>
|
170 |
+
</td>
|
171 |
+
|
172 |
+
<td>
|
173 |
+
<p><?php echo tutor_utils()->tutor_price($statement->admin_amount); ?> </p>
|
174 |
+
<p class="small-text"><?php _e('Rate', 'tutor'); ?> : <?php echo $statement->admin_rate; ?> </p>
|
175 |
+
<p class="small-text"><?php _e('Type', 'tutor'); ?> : <?php echo $statement->commission_type; ?> </p>
|
176 |
+
|
177 |
+
</td>
|
178 |
+
|
179 |
+
<td>
|
180 |
+
<p><?php echo $statement->deduct_fees_name; ?> <?php echo tutor_utils()->tutor_price($statement->deduct_fees_amount); ?>
|
181 |
+
</p>
|
182 |
+
<p class="small-text"><?php _e('Type', 'tutor'); ?> : <?php echo $statement->deduct_fees_type; ?> </p>
|
183 |
+
</td>
|
184 |
+
</tr>
|
185 |
+
<?php
|
186 |
+
}
|
187 |
+
?>
|
188 |
+
</table>
|
189 |
+
</div>
|
190 |
+
|
191 |
<?php } else{
|
192 |
printf("<span>%s</span>", __('Statement data is empty', 'tutor'));
|
193 |
} ?>
|
@@ -20,15 +20,11 @@
|
|
20 |
while ($my_courses->have_posts()):
|
21 |
$my_courses->the_post();
|
22 |
$avg_rating = tutor_utils()->get_course_rating()->rating_avg;
|
|
|
23 |
?>
|
24 |
<div class="tutor-mycourse-wrap tutor-mycourse-<?php the_ID(); ?>">
|
25 |
-
|
26 |
-
<div class="tutor-mycourse-thumbnail">
|
27 |
-
<?php tutor_course_loop_thumbnail(); ?>
|
28 |
-
</div>
|
29 |
-
|
30 |
<div class="tutor-mycourse-content">
|
31 |
-
|
32 |
<div class="tutor-mycourse-rating">
|
33 |
<?php tutor_utils()->star_rating_generator($avg_rating); ?>
|
34 |
<a href="<?php echo get_the_permalink().'#single-course-ratings'; ?>"><?php _e('Leave a rating', 'tutor') ?></a>
|
20 |
while ($my_courses->have_posts()):
|
21 |
$my_courses->the_post();
|
22 |
$avg_rating = tutor_utils()->get_course_rating()->rating_avg;
|
23 |
+
$tutor_course_img = get_tutor_course_thumbnail_src();
|
24 |
?>
|
25 |
<div class="tutor-mycourse-wrap tutor-mycourse-<?php the_ID(); ?>">
|
26 |
+
<div class="tutor-mycourse-thumbnail" style="background-image: url(<?php echo esc_url($tutor_course_img); ?>)"></div>
|
|
|
|
|
|
|
|
|
27 |
<div class="tutor-mycourse-content">
|
|
|
28 |
<div class="tutor-mycourse-rating">
|
29 |
<?php tutor_utils()->star_rating_generator($avg_rating); ?>
|
30 |
<a href="<?php echo get_the_permalink().'#single-course-ratings'; ?>"><?php _e('Leave a rating', 'tutor') ?></a>
|
@@ -19,16 +19,12 @@
|
|
19 |
while ($active_courses->have_posts()):
|
20 |
$active_courses->the_post();
|
21 |
$avg_rating = tutor_utils()->get_course_rating()->rating_avg;
|
|
|
22 |
?>
|
23 |
<div class="tutor-mycourse-wrap tutor-mycourse-<?php the_ID(); ?>">
|
24 |
|
25 |
-
<div class="tutor-mycourse-thumbnail">
|
26 |
-
<?php
|
27 |
|
28 |
-
|
29 |
-
|
30 |
-
?>
|
31 |
-
</div>
|
32 |
|
33 |
<div class="tutor-mycourse-content">
|
34 |
|
19 |
while ($active_courses->have_posts()):
|
20 |
$active_courses->the_post();
|
21 |
$avg_rating = tutor_utils()->get_course_rating()->rating_avg;
|
22 |
+
$tutor_course_img = get_tutor_course_thumbnail_src();
|
23 |
?>
|
24 |
<div class="tutor-mycourse-wrap tutor-mycourse-<?php the_ID(); ?>">
|
25 |
|
|
|
|
|
26 |
|
27 |
+
<div class="tutor-mycourse-thumbnail" style="background-image: url(<?php echo esc_url($tutor_course_img); ?>)"></div>
|
|
|
|
|
|
|
28 |
|
29 |
<div class="tutor-mycourse-content">
|
30 |
|
@@ -19,16 +19,12 @@
|
|
19 |
$completed_courses->the_post();
|
20 |
|
21 |
$avg_rating = tutor_utils()->get_course_rating()->rating_avg;
|
|
|
22 |
?>
|
23 |
<div class="tutor-mycourse-wrap tutor-mycourse-<?php the_ID(); ?>">
|
24 |
|
25 |
-
<div class="tutor-mycourse-thumbnail">
|
26 |
-
<?php
|
27 |
|
28 |
-
|
29 |
-
|
30 |
-
?>
|
31 |
-
</div>
|
32 |
|
33 |
<div class="tutor-mycourse-content">
|
34 |
|
19 |
$completed_courses->the_post();
|
20 |
|
21 |
$avg_rating = tutor_utils()->get_course_rating()->rating_avg;
|
22 |
+
$tutor_course_img = get_tutor_course_thumbnail_src();
|
23 |
?>
|
24 |
<div class="tutor-mycourse-wrap tutor-mycourse-<?php the_ID(); ?>">
|
25 |
|
|
|
|
|
26 |
|
27 |
+
<div class="tutor-mycourse-thumbnail" style="background-image: url(<?php echo esc_url($tutor_course_img); ?>)"></div>
|
|
|
|
|
|
|
28 |
|
29 |
<div class="tutor-mycourse-content">
|
30 |
|
@@ -1 +1 @@
|
|
1 |
-
<h2
|
1 |
+
<h2><?php _e('You are already logged in', 'tutor') ?></h2>
|
@@ -11,16 +11,11 @@
|
|
11 |
setup_postdata($post);
|
12 |
|
13 |
$avg_rating = tutor_utils()->get_course_rating()->rating_avg;
|
|
|
14 |
?>
|
15 |
|
16 |
<div id="tutor-dashboard-course-<?php the_ID(); ?>" class="tutor-mycourse-wrap tutor-mycourse-<?php the_ID(); ?>">
|
17 |
-
|
18 |
-
<div class="tutor-mycourse-thumbnail">
|
19 |
-
<?php
|
20 |
-
tutor_course_loop_thumbnail();
|
21 |
-
?>
|
22 |
-
</div>
|
23 |
-
|
24 |
<div class="tutor-mycourse-content">
|
25 |
<div class="tutor-mycourse-rating">
|
26 |
<?php
|
11 |
setup_postdata($post);
|
12 |
|
13 |
$avg_rating = tutor_utils()->get_course_rating()->rating_avg;
|
14 |
+
$tutor_course_img = get_tutor_course_thumbnail_src();
|
15 |
?>
|
16 |
|
17 |
<div id="tutor-dashboard-course-<?php the_ID(); ?>" class="tutor-mycourse-wrap tutor-mycourse-<?php the_ID(); ?>">
|
18 |
+
<div class="tutor-mycourse-thumbnail" style="background-image: url(<?php echo esc_url($tutor_course_img); ?>)"></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
<div class="tutor-mycourse-content">
|
20 |
<div class="tutor-mycourse-rating">
|
21 |
<?php
|
@@ -5,41 +5,44 @@ $orders = tutor_utils()->get_orders_by_user_id();
|
|
5 |
|
6 |
if (tutor_utils()->count($orders)){
|
7 |
?>
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
|
35 |
-
<td>
|
36 |
-
<?php echo date_i18n(get_option('date_format'), strtotime($order->post_date)) ?>
|
37 |
-
</td>
|
38 |
-
</tr>
|
39 |
-
<?php
|
40 |
-
}
|
41 |
-
?>
|
42 |
-
</table>
|
43 |
<?php
|
44 |
}else{
|
45 |
echo _e('No purchase history available', 'tutor');
|
5 |
|
6 |
if (tutor_utils()->count($orders)){
|
7 |
?>
|
8 |
+
<div class="responsive-table-wrap">
|
9 |
+
<table>
|
10 |
+
<tr>
|
11 |
+
<th><?php _e('ID', 'tutor'); ?></th>
|
12 |
+
<th><?php _e('Courses', 'tutor'); ?></th>
|
13 |
+
<th><?php _e('Amount', 'tutor'); ?></th>
|
14 |
+
<th><?php _e('Status', 'tutor'); ?></th>
|
15 |
+
<th><?php _e('Date', 'tutor'); ?></th>
|
16 |
+
</tr>
|
17 |
+
<?php
|
18 |
+
foreach ($orders as $order){
|
19 |
+
$wc_order = wc_get_order($order->ID);
|
20 |
+
?>
|
21 |
+
<tr>
|
22 |
+
<td>#<?php echo $order->ID; ?></td>
|
23 |
+
<td>
|
24 |
+
<?php
|
25 |
+
$courses = tutor_utils()->get_course_enrolled_ids_by_order_id($order->ID);
|
26 |
+
if (tutor_utils()->count($courses)){
|
27 |
+
foreach ($courses as $course){
|
28 |
+
echo '<p>'.get_the_title($course['course_id']).'</p>';
|
29 |
+
}
|
30 |
+
}
|
31 |
+
?>
|
32 |
+
</td>
|
33 |
+
<td><?php echo tutor_utils()->tutor_price($wc_order->get_total()); ?></td>
|
34 |
+
<td><?php echo tutor_utils()->order_status_context($order->post_status); ?></td>
|
35 |
+
|
36 |
+
<td>
|
37 |
+
<?php echo date_i18n(get_option('date_format'), strtotime($order->post_date)) ?>
|
38 |
+
</td>
|
39 |
+
</tr>
|
40 |
+
<?php
|
41 |
+
}
|
42 |
+
?>
|
43 |
+
</table>
|
44 |
+
</div>
|
45 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
46 |
<?php
|
47 |
}else{
|
48 |
echo _e('No purchase history available', 'tutor');
|
@@ -32,7 +32,7 @@ if ($attempted_count){
|
|
32 |
$passing_grade = tutor_utils()->get_quiz_option($attempt->quiz_id, 'passing_grade', 0);
|
33 |
?>
|
34 |
<tr class="<?php echo esc_attr($earned_percentage >= $passing_grade ? 'pass' : 'fail') ?>">
|
35 |
-
<td>
|
36 |
<div>
|
37 |
<?php
|
38 |
echo $earned_percentage >= $passing_grade ? '<span class="result-pass">'.__('Pass', 'tutor').'</span>' : '<span class="result-fail">'.__('Fail', 'tutor').'</span>';
|
@@ -54,14 +54,13 @@ if ($attempted_count){
|
|
54 |
</div>
|
55 |
<a href="<?php echo get_the_permalink($attempt->course_id); ?>" target="_blank"><?php echo get_the_title($attempt->course_id); ?></a>
|
56 |
</td>
|
57 |
-
<td><?php echo $attempt->total_questions; ?> </td>
|
58 |
-
<td> <?php echo $attempt->total_marks; ?> </td>
|
59 |
|
60 |
-
<td>
|
61 |
<?php echo $attempt->earned_marks."({$earned_percentage}%)"; ?>
|
62 |
</td>
|
63 |
-
|
64 |
-
<td>
|
65 |
<?php
|
66 |
|
67 |
$pass_marks = ($attempt->total_marks * $passing_grade) / 100;
|
32 |
$passing_grade = tutor_utils()->get_quiz_option($attempt->quiz_id, 'passing_grade', 0);
|
33 |
?>
|
34 |
<tr class="<?php echo esc_attr($earned_percentage >= $passing_grade ? 'pass' : 'fail') ?>">
|
35 |
+
<td class="td-course-title" title="<?php _e('Course Title', 'tutor'); ?>">
|
36 |
<div>
|
37 |
<?php
|
38 |
echo $earned_percentage >= $passing_grade ? '<span class="result-pass">'.__('Pass', 'tutor').'</span>' : '<span class="result-fail">'.__('Fail', 'tutor').'</span>';
|
54 |
</div>
|
55 |
<a href="<?php echo get_the_permalink($attempt->course_id); ?>" target="_blank"><?php echo get_the_title($attempt->course_id); ?></a>
|
56 |
</td>
|
57 |
+
<td title="<?php _e('Questions', 'tutor'); ?>" class="td-questions"><?php echo $attempt->total_questions; ?> </td>
|
58 |
+
<td title="<?php _e('Total Marks', 'tutor'); ?>" class="td-total-marks"> <?php echo $attempt->total_marks; ?> </td>
|
59 |
|
60 |
+
<td title="<?php _e('Earned Marks', 'tutor'); ?>" class="td-earned-marks">
|
61 |
<?php echo $attempt->earned_marks."({$earned_percentage}%)"; ?>
|
62 |
</td>
|
63 |
+
<td title="<?php _e('Pass Marks', 'tutor'); ?>" class="td-pass-marks">
|
|
|
64 |
<?php
|
65 |
|
66 |
$pass_marks = ($attempt->total_marks * $passing_grade) / 100;
|
@@ -18,9 +18,11 @@
|
|
18 |
<li>
|
19 |
<a href="<?php echo esc_url($reset_password); ?>"> <?php _e('Reset Password', 'tutor'); ?></a>
|
20 |
</li>
|
21 |
-
|
22 |
-
<
|
23 |
-
|
|
|
|
|
24 |
|
25 |
</ul>
|
26 |
</div>
|
18 |
<li>
|
19 |
<a href="<?php echo esc_url($reset_password); ?>"> <?php _e('Reset Password', 'tutor'); ?></a>
|
20 |
</li>
|
21 |
+
<?php if(current_user_can(tutor()->instructor_role)){ ?>
|
22 |
+
<li>
|
23 |
+
<a href="<?php echo esc_url($withdraw); ?>"> <?php _e('Withdraw', 'tutor'); ?></a>
|
24 |
+
</li>
|
25 |
+
<?php } ?>
|
26 |
|
27 |
</ul>
|
28 |
</div>
|
@@ -20,9 +20,11 @@
|
|
20 |
<li>
|
21 |
<a href="<?php /*echo esc_url($skill); */?>"> <?php /*_e('Expertise & Skill', 'tutor'); */?></a>
|
22 |
</li>-->
|
23 |
-
|
24 |
-
<
|
25 |
-
|
|
|
|
|
26 |
|
27 |
</ul>
|
28 |
</div>
|
20 |
<li>
|
21 |
<a href="<?php /*echo esc_url($skill); */?>"> <?php /*_e('Expertise & Skill', 'tutor'); */?></a>
|
22 |
</li>-->
|
23 |
+
<?php if(current_user_can(tutor()->instructor_role)){ ?>
|
24 |
+
<li>
|
25 |
+
<a href="<?php echo esc_url($withdraw); ?>"> <?php _e('Withdraw', 'tutor'); ?></a>
|
26 |
+
</li>
|
27 |
+
<?php } ?>
|
28 |
|
29 |
</ul>
|
30 |
</div>
|
@@ -1,5 +1,3 @@
|
|
1 |
-
|
2 |
-
|
3 |
<div class="tutor-dashboard-content-inner">
|
4 |
|
5 |
<div class="tutor-dashboard-inline-links">
|
@@ -15,19 +13,17 @@
|
|
15 |
<li class="active">
|
16 |
<a href="<?php echo esc_url($reset_password); ?>"> <?php _e('Reset Password', 'tutor'); ?></a>
|
17 |
</li>
|
18 |
-
|
19 |
-
<
|
20 |
-
|
|
|
|
|
21 |
|
22 |
</ul>
|
23 |
</div>
|
24 |
|
25 |
-
|
26 |
<h3><?php _e('Reset Password', 'tutor') ?></h3>
|
27 |
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
<div class="tutor-reset-password-form-wrap">
|
32 |
|
33 |
<?php
|
@@ -59,19 +55,27 @@
|
|
59 |
|
60 |
<?php do_action('tutor_reset_password_input_before') ?>
|
61 |
|
62 |
-
<div class="tutor-form-
|
63 |
-
<
|
64 |
-
|
|
|
|
|
|
|
|
|
65 |
</div>
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
<
|
74 |
-
|
|
|
|
|
|
|
|
|
75 |
</div>
|
76 |
|
77 |
<div class="tutor-form-group">
|
|
|
|
|
1 |
<div class="tutor-dashboard-content-inner">
|
2 |
|
3 |
<div class="tutor-dashboard-inline-links">
|
13 |
<li class="active">
|
14 |
<a href="<?php echo esc_url($reset_password); ?>"> <?php _e('Reset Password', 'tutor'); ?></a>
|
15 |
</li>
|
16 |
+
<?php if(current_user_can(tutor()->instructor_role)){ ?>
|
17 |
+
<li>
|
18 |
+
<a href="<?php echo esc_url($withdraw); ?>"> <?php _e('Withdraw', 'tutor'); ?></a>
|
19 |
+
</li>
|
20 |
+
<?php } ?>
|
21 |
|
22 |
</ul>
|
23 |
</div>
|
24 |
|
|
|
25 |
<h3><?php _e('Reset Password', 'tutor') ?></h3>
|
26 |
|
|
|
|
|
|
|
27 |
<div class="tutor-reset-password-form-wrap">
|
28 |
|
29 |
<?php
|
55 |
|
56 |
<?php do_action('tutor_reset_password_input_before') ?>
|
57 |
|
58 |
+
<div class="tutor-form-row">
|
59 |
+
<div class="tutor-form-col-12">
|
60 |
+
<div class="tutor-form-group">
|
61 |
+
<label> <?php _e('Previous Password', 'tutor'); ?> </label>
|
62 |
+
<input type="password" name="previous_password">
|
63 |
+
</div>
|
64 |
+
</div>
|
65 |
</div>
|
66 |
+
<div class="tutor-form-row">
|
67 |
+
<div class="tutor-form-col-6">
|
68 |
+
<div class="tutor-form-group">
|
69 |
+
<label><?php _e('New Password', 'tutor'); ?></label>
|
70 |
+
<input type="password" name="new_password">
|
71 |
+
</div>
|
72 |
+
</div>
|
73 |
+
<div class="tutor-form-col-6">
|
74 |
+
<div class="tutor-form-group">
|
75 |
+
<label><?php _e('Confirm New Password', 'tutor'); ?></label>
|
76 |
+
<input type="password" name="confirm_new_password">
|
77 |
+
</div>
|
78 |
+
</div>
|
79 |
</div>
|
80 |
|
81 |
<div class="tutor-form-group">
|
@@ -20,10 +20,11 @@
|
|
20 |
<li class="active">
|
21 |
<a href="<?php /*echo esc_url($skill); */?>"> <?php /*_e('Expertise & Skill'); */?></a>
|
22 |
</li>-->
|
23 |
-
|
24 |
-
<
|
25 |
-
|
26 |
-
|
|
|
27 |
</ul>
|
28 |
</div>
|
29 |
|
20 |
<li class="active">
|
21 |
<a href="<?php /*echo esc_url($skill); */?>"> <?php /*_e('Expertise & Skill'); */?></a>
|
22 |
</li>-->
|
23 |
+
<?php if(current_user_can(tutor()->instructor_role)){ ?>
|
24 |
+
<li>
|
25 |
+
<a href="<?php echo esc_url($withdraw); ?>"> <?php _e('Withdraw', 'tutor'); ?></a>
|
26 |
+
</li>
|
27 |
+
<?php } ?>
|
28 |
</ul>
|
29 |
</div>
|
30 |
|
@@ -1,7 +1,5 @@
|
|
1 |
|
2 |
-
|
3 |
<div class="tutor-dashboard-content-inner">
|
4 |
-
|
5 |
<div class="tutor-dashboard-inline-links">
|
6 |
<?php
|
7 |
$settings_url = tutor_utils()->get_tutor_dashboard_page_permalink('settings');
|
@@ -14,16 +12,16 @@
|
|
14 |
</li>
|
15 |
<li>
|
16 |
<a href="<?php echo esc_url($reset_password); ?>"> <?php _e('Reset Password', 'tutor'); ?></a>
|
17 |
-
</li
|
18 |
-
|
19 |
-
|
20 |
-
|
|
|
21 |
</ul>
|
22 |
</div>
|
23 |
|
24 |
<h3><?php _e('Select a withdraw method', 'tutor') ?></h3>
|
25 |
|
26 |
-
|
27 |
<form id="tutor-withdraw-account-set-form" action="" method="post">
|
28 |
|
29 |
<?php
|
1 |
|
|
|
2 |
<div class="tutor-dashboard-content-inner">
|
|
|
3 |
<div class="tutor-dashboard-inline-links">
|
4 |
<?php
|
5 |
$settings_url = tutor_utils()->get_tutor_dashboard_page_permalink('settings');
|
12 |
</li>
|
13 |
<li>
|
14 |
<a href="<?php echo esc_url($reset_password); ?>"> <?php _e('Reset Password', 'tutor'); ?></a>
|
15 |
+
</li><?php if(current_user_can(tutor()->instructor_role)){ ?>
|
16 |
+
<li class="active">
|
17 |
+
<a href="<?php echo esc_url($withdraw); ?>"> <?php _e('Withdraw', 'tutor'); ?></a>
|
18 |
+
</li>
|
19 |
+
<?php } ?>
|
20 |
</ul>
|
21 |
</div>
|
22 |
|
23 |
<h3><?php _e('Select a withdraw method', 'tutor') ?></h3>
|
24 |
|
|
|
25 |
<form id="tutor-withdraw-account-set-form" action="" method="post">
|
26 |
|
27 |
<?php
|
@@ -29,7 +29,6 @@ do_action('tutor_course/loop/before_title');
|
|
29 |
do_action('tutor_course/loop/title');
|
30 |
do_action('tutor_course/loop/after_title');
|
31 |
|
32 |
-
|
33 |
do_action('tutor_course/loop/before_meta');
|
34 |
do_action('tutor_course/loop/meta');
|
35 |
do_action('tutor_course/loop/after_meta');
|
29 |
do_action('tutor_course/loop/title');
|
30 |
do_action('tutor_course/loop/after_title');
|
31 |
|
|
|
32 |
do_action('tutor_course/loop/before_meta');
|
33 |
do_action('tutor_course/loop/meta');
|
34 |
do_action('tutor_course/loop/after_meta');
|
@@ -1,10 +1,3 @@
|
|
1 |
<div class="tutor-loop-course-footer">
|
2 |
-
<?php
|
3 |
-
$course_duration = get_tutor_course_duration_context();
|
4 |
-
$course_students = tutor_utils()->count_enrolled_users_by_course();
|
5 |
-
|
6 |
-
if(!empty($course_duration)) echo "<i class='tutor-icon-clock'></i> <span>$course_duration</span>";
|
7 |
-
echo "<i class='tutor-icon-user'></i> <span>$course_students</span>";
|
8 |
-
tutor_course_loop_price();
|
9 |
-
?>
|
10 |
</div>
|
1 |
<div class="tutor-loop-course-footer">
|
2 |
+
<?php tutor_course_loop_price(); ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
</div>
|
@@ -3,29 +3,48 @@ global $post, $authordata;
|
|
3 |
|
4 |
$profile_url = tutor_utils()->profile_url($authordata->ID);
|
5 |
?>
|
6 |
-
<div class="tutor-loop-author">
|
7 |
-
<div class="tutor-single-course-avatar">
|
8 |
-
<a href="<?php echo $profile_url; ?>"> <?php echo tutor_utils()->get_tutor_avatar($post->post_author); ?></a>
|
9 |
-
</div>
|
10 |
|
11 |
-
|
12 |
-
|
13 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
14 |
</div>
|
15 |
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
}
|
28 |
-
|
29 |
-
|
30 |
-
</div>
|
31 |
</div>
|
3 |
|
4 |
$profile_url = tutor_utils()->profile_url($authordata->ID);
|
5 |
?>
|
|
|
|
|
|
|
|
|
6 |
|
7 |
+
|
8 |
+
|
9 |
+
<div class="tutor-course-loop-meta">
|
10 |
+
<?php
|
11 |
+
$course_duration = get_tutor_course_duration_context();
|
12 |
+
$course_students = tutor_utils()->count_enrolled_users_by_course();
|
13 |
+
?>
|
14 |
+
<div class="tutor-single-loop-meta">
|
15 |
+
<i class='tutor-icon-user'></i><span><?php echo $course_students; ?></span>
|
16 |
+
</div>
|
17 |
+
<?php
|
18 |
+
if(!empty($course_duration)) { ?>
|
19 |
+
<div class="tutor-single-loop-meta">
|
20 |
+
<i class='tutor-icon-clock'></i> <span><?php echo $course_duration; ?></span>
|
21 |
+
</div>
|
22 |
+
<?php } ?>
|
23 |
</div>
|
24 |
|
25 |
+
|
26 |
+
<div class="tutor-loop-author">
|
27 |
+
<div class="tutor-single-course-avatar">
|
28 |
+
<a href="<?php echo $profile_url; ?>"> <?php echo tutor_utils()->get_tutor_avatar($post->post_author); ?></a>
|
29 |
+
</div>
|
30 |
+
<div class="tutor-single-course-author-name">
|
31 |
+
<span><?php _e('by', 'tutor'); ?></span>
|
32 |
+
<a href="<?php echo $profile_url; ?>"><?php echo get_the_author(); ?></a>
|
33 |
+
</div>
|
34 |
+
|
35 |
+
<div class="tutor-course-lising-category">
|
36 |
+
<?php
|
37 |
+
$course_categories = get_tutor_course_categories();
|
38 |
+
if(!empty($course_categories) && is_array($course_categories ) && count($course_categories)){
|
39 |
+
?>
|
40 |
+
<span><?php esc_html_e('In', 'tutor') ?></span>
|
41 |
+
<?php
|
42 |
+
foreach ($course_categories as $course_category){
|
43 |
+
$category_name = $course_category->name;
|
44 |
+
$category_link = get_term_link($course_category->term_id);
|
45 |
+
echo "<a href='$category_link'>$category_name </a>";
|
46 |
+
}
|
47 |
}
|
48 |
+
?>
|
49 |
+
</div>
|
|
|
50 |
</div>
|
@@ -13,6 +13,8 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
13 |
|
14 |
?>
|
15 |
|
|
|
|
|
16 |
<div class="tutor-loop-rating-wrap">
|
17 |
<?php
|
18 |
$course_rating = tutor_utils()->get_course_rating();
|
13 |
|
14 |
?>
|
15 |
|
16 |
+
|
17 |
+
|
18 |
<div class="tutor-loop-rating-wrap">
|
19 |
<?php
|
20 |
$course_rating = tutor_utils()->get_course_rating();
|
@@ -10,5 +10,6 @@
|
|
10 |
?>
|
11 |
|
12 |
<div class="tutor-course-loop-title">
|
13 |
-
|
14 |
-
</div>
|
|
10 |
?>
|
11 |
|
12 |
<div class="tutor-course-loop-title">
|
13 |
+
<h2><a href="<?php echo get_the_permalink(); ?>"><?php the_title(); ?></a></h2>
|
14 |
+
</div>
|
15 |
+
|
@@ -17,7 +17,7 @@ do_action('tutor_course/single/enrolled/before/wrap');
|
|
17 |
<div <?php tutor_post_class('tutor-single-anouncement-wrap tutor-page-wrap'); ?>>
|
18 |
<div class="tutor-container">
|
19 |
<div class="tutor-row">
|
20 |
-
<div class="tutor-col-8">
|
21 |
<?php do_action('tutor_course/single/enrolled/before/wrap'); ?>
|
22 |
<?php tutor_course_enrolled_lead_info(); ?>
|
23 |
<?php tutor_course_enrolled_nav(); ?>
|
17 |
<div <?php tutor_post_class('tutor-single-anouncement-wrap tutor-page-wrap'); ?>>
|
18 |
<div class="tutor-container">
|
19 |
<div class="tutor-row">
|
20 |
+
<div class="tutor-col-8 tutor-col-md-100">
|
21 |
<?php do_action('tutor_course/single/enrolled/before/wrap'); ?>
|
22 |
<?php tutor_course_enrolled_lead_info(); ?>
|
23 |
<?php tutor_course_enrolled_nav(); ?>
|
@@ -16,7 +16,7 @@ do_action('tutor_course/single/enrolled/before/wrap');
|
|
16 |
<div <?php tutor_post_class('tutor-single-overview-wrap tutor-page-wrap'); ?>>
|
17 |
<div class="tutor-container">
|
18 |
<div class="tutor-row">
|
19 |
-
<div class="tutor-col-8">
|
20 |
<?php tutor_course_enrolled_lead_info(); ?>
|
21 |
<?php tutor_course_enrolled_nav(); ?>
|
22 |
<?php get_tutor_posts_attachments(); ?>
|
16 |
<div <?php tutor_post_class('tutor-single-overview-wrap tutor-page-wrap'); ?>>
|
17 |
<div class="tutor-container">
|
18 |
<div class="tutor-row">
|
19 |
+
<div class="tutor-col-8 tutor-col-md-100">
|
20 |
<?php tutor_course_enrolled_lead_info(); ?>
|
21 |
<?php tutor_course_enrolled_nav(); ?>
|
22 |
<?php get_tutor_posts_attachments(); ?>
|
@@ -17,7 +17,7 @@ get_header();
|
|
17 |
<div <?php tutor_post_class('tutor-question-answare-wrap tutor-page-wrap'); ?>>
|
18 |
<div class="tutor-container">
|
19 |
<div class="tutor-row">
|
20 |
-
<div class="tutor-col-8">
|
21 |
<?php tutor_course_enrolled_lead_info(); ?>
|
22 |
<?php tutor_course_enrolled_nav(); ?>
|
23 |
<?php tutor_course_question_and_answer(); ?>
|
17 |
<div <?php tutor_post_class('tutor-question-answare-wrap tutor-page-wrap'); ?>>
|
18 |
<div class="tutor-container">
|
19 |
<div class="tutor-row">
|
20 |
+
<div class="tutor-col-8 tutor-col-md-100">
|
21 |
<?php tutor_course_enrolled_lead_info(); ?>
|
22 |
<?php tutor_course_enrolled_nav(); ?>
|
23 |
<?php tutor_course_question_and_answer(); ?>
|
@@ -12,17 +12,29 @@ if ( ! defined( 'ABSPATH' ) )
|
|
12 |
exit;
|
13 |
$isLoggedIn = is_user_logged_in();
|
14 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
$tutor_form_class = apply_filters( 'tutor_enroll_form_classes', array(
|
16 |
'tutor-enroll-form',
|
17 |
) );
|
18 |
|
19 |
-
$is_purchasable = tutor_utils()->is_course_purchasable();
|
20 |
$tutor_course_sell_by = apply_filters('tutor_course_sell_by', null);
|
21 |
|
22 |
do_action('tutor_course/single/add-to-cart/before');
|
23 |
?>
|
24 |
|
25 |
-
<div class="tutor-single-add-to-cart-box <?php echo
|
26 |
<?php
|
27 |
if ($is_purchasable && $tutor_course_sell_by){
|
28 |
tutor_load_template('single.course.add-to-cart-'.$tutor_course_sell_by);
|
12 |
exit;
|
13 |
$isLoggedIn = is_user_logged_in();
|
14 |
|
15 |
+
$enable_course_sell_by_woocommerce = tutor_utils()->get_option('enable_course_sell_by_woocommerce');
|
16 |
+
$enable_guest_course_cart = tutor_utils()->get_option('enable_guest_course_cart');
|
17 |
+
|
18 |
+
$is_purchasable = tutor_utils()->is_course_purchasable();
|
19 |
+
|
20 |
+
$required_loggedin_class = '';
|
21 |
+
if ( ! $isLoggedIn){
|
22 |
+
$required_loggedin_class = apply_filters('tutor_enroll_required_login_class', 'cart-required-login');
|
23 |
+
}
|
24 |
+
if ($is_purchasable && $enable_course_sell_by_woocommerce && $enable_guest_course_cart){
|
25 |
+
$required_loggedin_class = '';
|
26 |
+
}
|
27 |
+
|
28 |
$tutor_form_class = apply_filters( 'tutor_enroll_form_classes', array(
|
29 |
'tutor-enroll-form',
|
30 |
) );
|
31 |
|
|
|
32 |
$tutor_course_sell_by = apply_filters('tutor_course_sell_by', null);
|
33 |
|
34 |
do_action('tutor_course/single/add-to-cart/before');
|
35 |
?>
|
36 |
|
37 |
+
<div class="tutor-single-add-to-cart-box <?php echo $required_loggedin_class; ?> ">
|
38 |
<?php
|
39 |
if ($is_purchasable && $tutor_course_sell_by){
|
40 |
tutor_load_template('single.course.add-to-cart-'.$tutor_course_sell_by);
|
@@ -13,24 +13,27 @@
|
|
13 |
do_action('tutor_course/single/before/content');
|
14 |
|
15 |
global $post;
|
16 |
-
$content = get_the_content();
|
17 |
-
if ( empty($content)){
|
18 |
-
return;
|
19 |
-
}
|
20 |
?>
|
21 |
|
22 |
-
<div class="tutor-single-course-segment tutor-course-content-wrap">
|
23 |
-
|
24 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
</div>
|
26 |
|
27 |
-
<div class="tutor-course-content-content">
|
28 |
-
<?php
|
29 |
-
the_content();
|
30 |
-
//echo wpautop($content);
|
31 |
-
?>
|
32 |
-
</div>
|
33 |
-
</div>
|
34 |
-
|
35 |
|
36 |
<?php do_action('tutor_course/single/after/content'); ?>
|
13 |
do_action('tutor_course/single/before/content');
|
14 |
|
15 |
global $post;
|
|
|
|
|
|
|
|
|
16 |
?>
|
17 |
|
18 |
+
<div class="tutor-single-course-segment tutor-course-content-wrap">
|
19 |
+
<?php
|
20 |
+
if ( ! empty(get_the_content())){
|
21 |
+
?>
|
22 |
+
<div class="course-content-title">
|
23 |
+
<h4 class="tutor-segment-title"><?php _e('Description', 'tutor'); ?></h4>
|
24 |
+
</div>
|
25 |
+
<?php
|
26 |
+
}
|
27 |
+
?>
|
28 |
+
|
29 |
+
|
30 |
+
<div class="tutor-course-content-content">
|
31 |
+
<?php
|
32 |
+
the_content();
|
33 |
+
//echo wpautop($content);
|
34 |
+
?>
|
35 |
+
</div>
|
36 |
</div>
|
37 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
|
39 |
<?php do_action('tutor_course/single/after/content'); ?>
|
@@ -17,7 +17,7 @@ $course_tags = get_tutor_course_tags();
|
|
17 |
if(is_array($course_tags) && count($course_tags)){ ?>
|
18 |
<div class="tutor-single-course-segment">
|
19 |
<div class="course-benefits-title">
|
20 |
-
<h4 class="tutor-segment-title"><?php esc_html_e('
|
21 |
</div>
|
22 |
<div class="tutor-course-tags">
|
23 |
<?php
|
17 |
if(is_array($course_tags) && count($course_tags)){ ?>
|
18 |
<div class="tutor-single-course-segment">
|
19 |
<div class="course-benefits-title">
|
20 |
+
<h4 class="tutor-segment-title"><?php esc_html_e('Tags', 'tutor') ?></h4>
|
21 |
</div>
|
22 |
<div class="tutor-course-tags">
|
23 |
<?php
|
@@ -93,7 +93,7 @@ $attempt_remaining = $attempts_allowed - $attempted_count;
|
|
93 |
|
94 |
echo '<h4 class="question-text">';
|
95 |
if ( ! $hide_question_number_overview){
|
96 |
-
echo $question_i;
|
97 |
}
|
98 |
echo $question->question_title;
|
99 |
echo '</h4>';
|
@@ -397,7 +397,7 @@ $attempt_remaining = $attempts_allowed - $attempted_count;
|
|
397 |
?>
|
398 |
<h4 class="tutor-quiz-attempt-history-title"><?php _e('Previous attempts', 'tutor'); ?></h4>
|
399 |
|
400 |
-
<div class="tutor-quiz-attempt-history">
|
401 |
<table>
|
402 |
<tr>
|
403 |
<th><?php _e('Time', 'tutor'); ?></th>
|
@@ -412,7 +412,7 @@ $attempt_remaining = $attempts_allowed - $attempted_count;
|
|
412 |
?>
|
413 |
|
414 |
<tr>
|
415 |
-
<td>
|
416 |
<?php
|
417 |
echo date_i18n(get_option('date_format'), strtotime($attempt->attempt_started_at)).' '.date_i18n(get_option('time_format'), strtotime($attempt->attempt_started_at));
|
418 |
|
@@ -420,29 +420,29 @@ $attempt_remaining = $attempts_allowed - $attempted_count;
|
|
420 |
?>
|
421 |
<p class="attempt-reviewed-text">
|
422 |
<?php
|
423 |
-
echo __('Manually reviewed at', 'tutor').
|
424 |
?>
|
425 |
</p>
|
426 |
<?php
|
427 |
}
|
428 |
?>
|
429 |
</td>
|
430 |
-
<td>
|
431 |
<?php echo $attempt->total_questions; ?>
|
432 |
</td>
|
433 |
|
434 |
-
<td>
|
435 |
<?php echo $attempt->total_marks; ?>
|
436 |
</td>
|
437 |
|
438 |
-
<td>
|
439 |
<?php
|
440 |
$earned_percentage = $attempt->earned_marks > 0 ? ( number_format(($attempt->earned_marks * 100) / $attempt->total_marks)) : 0;
|
441 |
echo $attempt->earned_marks."({$earned_percentage}%)";
|
442 |
?>
|
443 |
</td>
|
444 |
|
445 |
-
<td>
|
446 |
<?php
|
447 |
|
448 |
$pass_marks = ($attempt->total_marks * $passing_grade) / 100;
|
@@ -453,7 +453,7 @@ $attempt_remaining = $attempts_allowed - $attempted_count;
|
|
453 |
?>
|
454 |
</td>
|
455 |
|
456 |
-
<td>
|
457 |
<?php
|
458 |
if ($earned_percentage >= $passing_grade){
|
459 |
echo '<span class="result-pass">'.__('Pass', 'tutor').'</span>';
|
93 |
|
94 |
echo '<h4 class="question-text">';
|
95 |
if ( ! $hide_question_number_overview){
|
96 |
+
echo $question_i. ". ";
|
97 |
}
|
98 |
echo $question->question_title;
|
99 |
echo '</h4>';
|
397 |
?>
|
398 |
<h4 class="tutor-quiz-attempt-history-title"><?php _e('Previous attempts', 'tutor'); ?></h4>
|
399 |
|
400 |
+
<div class="tutor-quiz-attempt-history single-quiz-page">
|
401 |
<table>
|
402 |
<tr>
|
403 |
<th><?php _e('Time', 'tutor'); ?></th>
|
412 |
?>
|
413 |
|
414 |
<tr>
|
415 |
+
<td title="<?php _e('Time', 'tutor'); ?>">
|
416 |
<?php
|
417 |
echo date_i18n(get_option('date_format'), strtotime($attempt->attempt_started_at)).' '.date_i18n(get_option('time_format'), strtotime($attempt->attempt_started_at));
|
418 |
|
420 |
?>
|
421 |
<p class="attempt-reviewed-text">
|
422 |
<?php
|
423 |
+
echo __('Manually reviewed at', 'tutor').date_i18n(get_option('date_format', strtotime($attempt->manually_reviewed_at))).' '.date_i18n(get_option('time_format', strtotime($attempt->manually_reviewed_at)));
|
424 |
?>
|
425 |
</p>
|
426 |
<?php
|
427 |
}
|
428 |
?>
|
429 |
</td>
|
430 |
+
<td title="<?php _e('Questions', 'tutor'); ?>">
|
431 |
<?php echo $attempt->total_questions; ?>
|
432 |
</td>
|
433 |
|
434 |
+
<td title="<?php _e('Total Marks', 'tutor'); ?>">
|
435 |
<?php echo $attempt->total_marks; ?>
|
436 |
</td>
|
437 |
|
438 |
+
<td title="<?php _e('Earned Marks', 'tutor'); ?>">
|
439 |
<?php
|
440 |
$earned_percentage = $attempt->earned_marks > 0 ? ( number_format(($attempt->earned_marks * 100) / $attempt->total_marks)) : 0;
|
441 |
echo $attempt->earned_marks."({$earned_percentage}%)";
|
442 |
?>
|
443 |
</td>
|
444 |
|
445 |
+
<td title="<?php _e('Pass Mark', 'tutor'); ?>">
|
446 |
<?php
|
447 |
|
448 |
$pass_marks = ($attempt->total_marks * $passing_grade) / 100;
|
453 |
?>
|
454 |
</td>
|
455 |
|
456 |
+
<td title="<?php _e('Result', 'tutor'); ?>">
|
457 |
<?php
|
458 |
if ($earned_percentage >= $passing_grade){
|
459 |
echo '<span class="result-pass">'.__('Pass', 'tutor').'</span>';
|
@@ -4,7 +4,7 @@ Plugin Name: Tutor LMS
|
|
4 |
Plugin URI: https://www.themeum.com/product/tutor-lms/
|
5 |
Description: Tutor is a complete solution for creating a Learning Management System in WordPress way. It can help you to create small to large scale online education site very conveniently. Power features like report, certificate, course preview, private file sharing make Tutor a robust plugin for any educational institutes.
|
6 |
Author: Themeum
|
7 |
-
Version: 1.3.
|
8 |
Author URI: http://themeum.com
|
9 |
Requires at least: 4.5
|
10 |
Tested up to: 5.2
|
@@ -17,7 +17,7 @@ if ( ! defined( 'ABSPATH' ) )
|
|
17 |
/**
|
18 |
* Defined the tutor main file
|
19 |
*/
|
20 |
-
define('TUTOR_VERSION', '1.3.
|
21 |
define('TUTOR_FILE', __FILE__);
|
22 |
|
23 |
|
4 |
Plugin URI: https://www.themeum.com/product/tutor-lms/
|
5 |
Description: Tutor is a complete solution for creating a Learning Management System in WordPress way. It can help you to create small to large scale online education site very conveniently. Power features like report, certificate, course preview, private file sharing make Tutor a robust plugin for any educational institutes.
|
6 |
Author: Themeum
|
7 |
+
Version: 1.3.2
|
8 |
Author URI: http://themeum.com
|
9 |
Requires at least: 4.5
|
10 |
Tested up to: 5.2
|
17 |
/**
|
18 |
* Defined the tutor main file
|
19 |
*/
|
20 |
+
define('TUTOR_VERSION', '1.3.2');
|
21 |
define('TUTOR_FILE', __FILE__);
|
22 |
|
23 |
|