Version Description
(2022-08-15) = ~ Fixed: IPN paypal. ~ Added: hook 'learn-press/user-item/expiration-time'. ~ Added: autocomplete meta-box field. ~ Fixed: h5p error in curriculum editor. ~ Modified: duplicate course, sections, items. ~ Handle multiple button Continue course. ~ Modified: has_completed_item() function. ~ Fixed: Custom fields register not show on the Profile page.
Download this release
Release Info
Developer | ThimPress |
Plugin | LearnPress – WordPress LMS Plugin |
Version | 4.1.6.9.4 |
Comparing to | |
See all releases |
Code changes from version 4.1.6.9.3 to 4.1.6.9.4
- assets/css/learnpress-rtl.css +0 -3
- assets/css/learnpress-rtl.min.css +1 -1
- assets/css/learnpress.css +0 -3
- assets/css/learnpress.min.css +1 -1
- assets/js/admin/learnpress.min.js +1 -1
- assets/js/dist/frontend/courses.js +3 -3
- assets/js/dist/frontend/courses.min.js +1 -1
- assets/js/dist/frontend/quiz.js +7 -14
- assets/js/dist/frontend/quiz.min.js +1 -1
- assets/js/dist/frontend/single-course.js +5 -3
- assets/js/dist/frontend/single-course.min.js +1 -1
- assets/src/apps/js/frontend/courses.js +48 -46
- assets/src/apps/js/frontend/quiz/index.js +6 -10
- assets/src/apps/js/frontend/single-course.js +6 -3
- assets/src/js/admin/learnpress.js +57 -1
- inc/admin/editor/class-lp-admin-editor-quiz.php +6 -5
- inc/admin/meta-box/class-lp-meta-box-helper.php +1 -1
- inc/admin/meta-box/fields/color.php +8 -3
- inc/admin/meta-box/fields/course-permalink.php +13 -7
- inc/admin/meta-box/fields/html.php +1 -1
- inc/admin/meta-box/fields/image-dimensions.php +11 -2
- inc/admin/meta-box/fields/image.php +5 -1
- inc/admin/meta-box/fields/select.php +2 -2
- inc/admin/meta-box/fields/text.php +6 -3
- inc/admin/meta-box/fields/textarea.php +5 -2
- inc/admin/views/addons/html-loop-theme.php +2 -2
- inc/admin/views/addons/html-plugins-more.php +1 -1
- inc/admin/views/addons/html-themes.php +1 -1
- inc/admin/views/meta-boxes/class-lp-meta-box.php +1 -0
- inc/admin/views/meta-boxes/fields/autocomplete.php +123 -0
- inc/admin/views/meta-boxes/fields/checkbox.php +1 -1
- inc/admin/views/meta-boxes/fields/date.php +6 -2
- inc/admin/views/meta-boxes/fields/extra.php +6 -3
- inc/admin/views/meta-boxes/fields/repeater.php +7 -5
- inc/admin/views/meta-boxes/fields/select.php +26 -12
- inc/admin/views/meta-boxes/fields/text.php +1 -1
- inc/admin/views/meta-boxes/fields/wysiwyg.php +1 -1
- inc/admin/views/meta-boxes/lesson/settings.php +1 -1
- inc/admin/views/meta-boxes/lp-meta-box-functions.php +54 -49
- inc/admin/views/meta-boxes/quiz/settings.php +0 -1
- inc/background-process/class-lp-background-single-email.php +2 -2
- inc/class-lp-emails.php +0 -100
- inc/class-lp-page-controller.php +47 -2
- inc/class-lp-request-handler.php +3 -3
- inc/course/class-lp-course-section.php +2 -2
- inc/course/class-lp-course.php +36 -2
- inc/course/lp-course-functions.php +1 -1
- inc/curds/class-lp-course-curd.php +99 -152
- inc/curds/class-lp-lesson-curd.php +1 -1
- inc/curds/class-lp-question-curd.php +1 -1
- inc/curds/class-lp-quiz-curd.php +68 -38
- inc/curds/class-lp-section-curd.php +75 -20
- inc/custom-post-types/course.php +0 -61
- inc/custom-post-types/order.php +6 -2
- inc/databases/class-lp-db.php +82 -3
- inc/databases/class-lp-section-items-db.php +41 -0
- inc/emails/types/class-lp-email-type-finished-course.php +1 -1
- inc/external-plugin/elementor/widgets/register-form.php +3 -1
- inc/external-plugin/polylang/class-lp-polylang.php +2 -2
- inc/filters/class-lp-filter.php +9 -1
- inc/gateways/class-lp-gateway-abstract.php +2 -2
- inc/gateways/offline-payment/class-lp-gateway-offline-payment.php +1 -1
- inc/gateways/paypal/class-lp-gateway-paypal-basic.php +0 -47
- inc/gateways/paypal/class-lp-gateway-paypal-security.php +0 -105
- inc/gateways/paypal/class-lp-gateway-paypal.php +91 -196
- inc/gateways/paypal/paypal-ipn/cert/api_cert_chain.crt +0 -54
- inc/gateways/paypal/paypal-ipn/cert/index.php +0 -1
- inc/gateways/paypal/paypal-ipn/index.php +0 -1
- inc/gateways/paypal/paypal-ipn/ipn.php +0 -111
- inc/gateways/paypal/paypal-ipn/ipn_errors.log +0 -1
- inc/gateways/paypal/paypal-ipn/ipnlistener.php +0 -331
- inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php +2 -7
- inc/libraries/wp-background-process/classes/wp-background-process.php +2 -2
- inc/lp-core-functions.php +3 -165
- inc/lp-deprecated.php +5 -34
- inc/lp-template-hooks.php +1 -1
- inc/lp-webhooks.php +1 -1
- inc/order/class-lp-order.php +1 -1
- inc/templates/class-lp-template-course.php +0 -18
- inc/user-item/class-lp-user-item-course.php +13 -16
- inc/user-item/class-lp-user-item-quiz.php +0 -15
- inc/user-item/class-lp-user-item.php +40 -39
- inc/user/abstract-lp-user.php +7 -176
- inc/user/class-lp-user.php +1 -1
- inc/user/lp-user-functions.php +13 -19
- languages/learnpress.pot +205 -259
assets/css/learnpress-rtl.css
CHANGED
@@ -6935,9 +6935,6 @@ body.lp-sidebar-toggle__close #popup-course #popup-header, body.lp-sidebar-toggl
|
|
6935 |
#popup-course #sidebar-toggle {
|
6936 |
right: 249px;
|
6937 |
}
|
6938 |
-
#popup-course #sidebar-toggle:checked ~ #popup-sidebar {
|
6939 |
-
flex-basis: 0;
|
6940 |
-
}
|
6941 |
#popup-course .course-item-meta .item-meta.count-questions, #popup-course .course-item-meta .item-meta.duration {
|
6942 |
display: none;
|
6943 |
}
|
6935 |
#popup-course #sidebar-toggle {
|
6936 |
right: 249px;
|
6937 |
}
|
|
|
|
|
|
|
6938 |
#popup-course .course-item-meta .item-meta.count-questions, #popup-course .course-item-meta .item-meta.duration {
|
6939 |
display: none;
|
6940 |
}
|
assets/css/learnpress-rtl.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
@charset "UTF-8";@-webkit-keyframes rotating4{from{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@keyframes rotating4{from{-ms-transform:rotate(0);-moz-transform:rotate(0);-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-ms-transform:rotate(-360deg);-moz-transform:rotate(-360deg);-webkit-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@-webkit-keyframes animation4{from{right:-40%;width:40%}to{right:100%;width:10%}}@keyframes animation4{from{right:-40%;width:40%}to{right:100%;width:10%}}.learn-press-message{position:relative;margin:0 0 20px 0;padding:10px 15px 10px 50px;border-top:5px solid #00adff;border-radius:0 0 5px 5px;background:#f5f5f5;width:100%}.learn-press-message.icon{padding-right:45px}.learn-press-message.icon::before{background:#00adff}.learn-press-message.icon::after{position:absolute;top:50%;right:15px;width:10px;height:10px;margin-top:-13px;margin-left:10px;border-radius:50%;color:#fff;background:#00adff;font-family:"Font Awesome 5 Free";font-size:20px;line-height:26px;text-align:center;vertical-align:baseline;content:"\f129"}.learn-press-message::before,.learn-press-message::after{position:absolute;top:0;content:""}.learn-press-message::before{left:20px;width:20px;height:30px;background:#00adff}.learn-press-message::after{top:10px;left:20px;width:0;height:0;border:10px solid transparent;border-bottom-color:#f5f5f5}.learn-press-message.error{border-color:#d85554}.learn-press-message.error::before{background:#d85554}.learn-press-message.error.icon::before,.learn-press-message.error.icon::after{background:#d85554}.learn-press-message.error.icon::after{content:"\f00d"}.learn-press-message.warning{border-color:#ffc107}.learn-press-message.warning::before{background:#ffc107}.learn-press-message.warning.icon::before,.learn-press-message.warning.icon::after{background:#ffc107}.learn-press-message.warning.icon::after{content:"\f00d"}.learn-press-message.success{border-color:#059601}.learn-press-message.success::before{background:#059601}.learn-press-message.success.icon::before,.learn-press-message.success.icon::after{background:#059601}.learn-press-message.success.icon::after{content:"\f129"}.learn-press-message a{text-decoration:underline}@keyframes lp-rotating{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(-360deg);-moz-transform:rotate(-360deg);-ms-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@-webkit-keyframes lp-rotating{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(-360deg);-moz-transform:rotate(-360deg);-ms-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}.ajaxload{display:inline-block;position:relative;width:30px;height:30px;background:#7b7b7b;content:"";-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.ajaxload::after{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;display:inline-block;position:absolute;top:2px;right:50%;width:6px;height:6px;margin-right:-3px;background:#dedede;content:""}.lp-ajaxload-style-1{display:inline-block;position:relative;width:32px;height:32px}.lp-ajaxload-style-1::before,.lp-ajaxload-style-1::after{position:absolute;top:0;right:0;width:100%;height:100%;border:3px solid #ddd;content:""}.lp-ajaxload-style-1::after{clip:rect(0,32px,16px,16px);border-color:#2fa7ff;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.learn-press-tabs{margin-bottom:34px;background:#f1f2f8}.learn-press-tabs .learn-press-tabs__checker{display:none}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10)::after{background:#fff}.learn-press-tabs .learn-press-tabs__nav{display:flex;margin:0;padding:0;border:1px solid #e5e7f2;list-style:none}.learn-press-tabs .learn-press-tabs__tab{position:relative;margin:0;border-left:1px solid #e5e7f2;background:#f1f2f8;list-style:none}.learn-press-tabs .learn-press-tabs__tab:last-child{border-left:0}.learn-press-tabs .learn-press-tabs__tab>label{display:block;margin:0;padding:18px 65px;font-size:18px;line-height:1;font-weight:600;text-align:center;text-transform:capitalize;cursor:pointer}.learn-press-tabs .learn-press-tabs__tab>label a{color:#333}.learn-press-tabs .learn-press-tabs__tab>label a:focus{outline:0;text-decoration:none}@media(max-width:767px){.learn-press-tabs .learn-press-tabs__tab>label{padding:20px 50px 14px 50px}}.learn-press-tabs .learn-press-tabs__tab::before{position:absolute;top:-1px;right:0;width:100%;height:4px;background:transparent;content:""}.learn-press-tabs .learn-press-tabs__tab::after{position:absolute;bottom:-1px;right:0;width:100%;height:4px;background:transparent;content:""}.learn-press-tabs .learn-press-tabs__tab:first-child.active label{position:relative}.learn-press-tabs .learn-press-tabs__tab:first-child.active label::before{position:absolute;top:0;right:-1px;width:1px;height:100%;background:#fff;content:""}.learn-press-tabs.stretch .learn-press-tabs__tab{flex:1}.learn-press-tabs.stretch .learn-press-tabs__tab>label{padding:18px 10px}.learn-press-filters{display:flex;margin-bottom:30px;margin-right:0;list-style:none}.learn-press-filters>li{margin:0;font-size:16px;line-height:24px}@media(max-width:767px){.learn-press-filters>li{margin-left:30px;margin-right:0}.learn-press-filters>li:last-child{margin-left:0}}.learn-press-filters>li>a,.learn-press-filters>li>span{display:inline-block;font-weight:600}.learn-press-filters>li>span.count{font-weight:400}.learn-press-filters>li>span.count::before,.learn-press-filters>li>span.count::after{display:inline-block}.learn-press-filters>li>span.count::before{content:"("}.learn-press-filters>li>span.count::after{content:")"}.learn-press-filters>li span{color:#ffb606}.learn-press-filters>li span+span{color:#ffb606}.learn-press-filters>li span+span::before,.learn-press-filters>li span+span::after{color:#ffb606}.learn-press-filters>li a{color:#333;cursor:pointer}.learn-press-filters>li a+span{color:#333}.learn-press-filters>li a+span::before,.learn-press-filters>li a+span::after{color:#333}.learn-press-filters>li::after{margin:0 35px;color:#ccc;content:"|"}@media(max-width:767px){.learn-press-filters>li::after{display:none}}.learn-press-filters>li:last-child::after{display:none}.lp-checkout-form__before,.lp-checkout-form__after{width:45%;width:-webkit-calc(50% - 30px);width:-moz-calc(50% - 30px);width:calc(50% - 30px);margin:0 15px 40px 15px}.lp-checkout-form__before .lp-checkout-block h4,.lp-checkout-form__after .lp-checkout-block h4{margin-top:0;margin-bottom:18px;color:#333;font-size:24px;font-weight:600;line-height:1;font-family:var(--wp--preset--font-family--system-font)}@media(max-width:815px){.lp-checkout-form__before,.lp-checkout-form__after{width:100%;margin:0 0 40px 0}}.lp-checkout-form__before{float:left}.lp-checkout-form__before #checkout-order{width:100%}.lp-checkout-form .lp-checkout-form__after{float:right}.lp-checkout-form .lp-checkout-remember{letter-spacing:0;margin-top:0}.lp-checkout-form .lp-checkout-remember label{width:auto;color:#666;font-size:16px;font-weight:300;line-height:26px}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]{position:relative;top:3px;width:19px;height:19px;margin:0 0 0 4px;border:1px solid #ccc;cursor:pointer;-webkit-appearance:none}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]:focus{outline:0}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]:checked::after{position:absolute;top:2px;right:2px;color:#41abec;font-family:"Font Awesome 5 Free";font-size:14px;font-weight:900;line-height:1;content:"\f00c"}.lp-checkout-form .lp-checkout-remember a{color:#666;font-size:16px;font-weight:300;line-height:26px;text-decoration:underline;text-decoration-color:#ccc}.lp-checkout-form .lp-checkout-remember a:hover{color:var(--lp-primary-color);text-decoration-color:var(--lp-primary-color)}.lp-checkout-form .lp-form-fields{padding:0 0 14px 0}.lp-checkout-form .lp-form-fields label{display:block;margin-bottom:10px;font-size:16px}.lp-checkout-form .lp-form-fields input{height:44px;line-height:normal;width:100%;padding:0 15px;border:1px solid #ccc}.lp-checkout-form .rwmb-input input:not([type=checkbox]){width:100%;height:43px;padding:0 22px;border:1px solid #ccc;border-radius:3px;background-color:#fff;font-size:14px;font-weight:300;font-style:italic;line-height:43px}.lp-checkout-form .rwmb-input input:not([type=checkbox]):focus{border-color:var(--lp-primary-color);outline:0;color:#222}.lp-checkout-form .rwmb-input ::placeholder{opacity:1;color:#999}.lp-checkout-form .rwmb-input :-ms-input-placeholder{color:#999}.lp-checkout-form .rwmb-input ::-ms-input-placeholder{color:#999}.lp-checkout-form .rwmb-input input:-webkit-autofill,.lp-checkout-form .rwmb-input input:-webkit-autofill:hover,.lp-checkout-form .rwmb-input input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:#999 !important}.lp-checkout-form{margin:0 -15px;margin-top:50px}@media(max-width:815px){.lp-checkout-form{display:flex;flex-direction:column-reverse;margin:0}}.lp-checkout-form #btn-checkout-account-switch-to-guest{margin-bottom:60px}.lp-checkout-form .description{float:right}.lp-checkout-form a{color:#41abec}.lp-checkout-form a label{display:inline-block;color:inherit;font-weight:normal;cursor:pointer}.lp-checkout-form a:hover{color:#ffb606}.lp-checkout-form #checkout-account-guest{width:100%;margin-bottom:35px;padding-bottom:19px;border-bottom:1px solid rgba(204,204,204,0.3)}.lp-checkout-form #checkout-account-guest .lp-form-fields,.lp-checkout-form #checkout-account-guest .form-field{margin-bottom:0;padding-bottom:0}.lp-checkout-form div.lp-guest-checkout-output{margin-top:10px;padding:8px 20px;border:2px solid #41abec;border-radius:4px;font-size:16px;transition:all .2s ease}.lp-checkout-form label.lp-guest-checkout-output{margin-top:10px;cursor:pointer;user-select:none}.lp-checkout-form .lp-guest-checkout-notice{margin:30px 0 0 0}.lp-checkout-form .lp-guest-switch-login{margin-top:1em;color:#666;font-size:16px;font-weight:400}.lp-checkout-form input[name=checkout-account-switch-form]{display:none}.lp-checkout-form input[name=checkout-account-switch-form]:not(:checked)+.lp-checkout-block{display:none;overflow:hidden;height:0;margin:0;padding:0;border:0;opacity:0}.lp-checkout-form input[name=checkout-account-switch-form]:not(:checked)+.lp-checkout-block>*{overflow:hidden;height:0}.lp-checkout-form input[name=checkout-account-switch-form]:checked+.lp-checkout-block{display:block;overflow:auto;height:auto}.lp-checkout-form input[name=checkout-account-switch-form][value=guest]:checked ~ #btn-checkout-account-switch-to-guest{display:none}.lp-checkout-form::after{display:block;clear:both;content:""}.lp-checkout-form:focus{outline:0}#checkout-order .lp-checkout-order__inner{padding:0 20px;border:1px solid #ccc;border-radius:4px}#checkout-order table{width:100%;margin:0;border:0}#checkout-order td,#checkout-order th{box-sizing:content-box;border:1px solid rgba(204,204,204,0.3);border-top:0;border-left:0;border-right:0;background:unset;line-height:1;text-align:right;vertical-align:inherit}#checkout-order td:last-child,#checkout-order th:last-child{padding-left:0}#checkout-order .course-name{font-size:16px;font-weight:600;line-height:26px}#checkout-order .course-name a{display:-webkit-box;overflow:hidden;color:#000;-webkit-line-clamp:1;-webkit-box-orient:vertical}#checkout-order .course-name a:hover{color:var(--lp-primary-color)}#checkout-order .col-number{min-width:50px;color:#666;font-size:16px;font-weight:600;line-height:26px;text-align:left}#checkout-order .order-total>th{padding:24px 0 24px 20px}#checkout-order .order-total .col-number{color:#333;font-size:26px}#checkout-order tfoot .cart-subtotal{color:#666;font-size:16px;font-weight:600;line-height:26px}#checkout-order tfoot .cart-subtotal>th{padding:20px 0 17px 20px}#checkout-order tfoot .order-total th{color:#333;font-size:16px;font-weight:600;line-height:26px}#checkout-order tfoot tr:last-child{border-width:0}#checkout-order tfoot tr:last-child td,#checkout-order tfoot tr:last-child th{border-width:0}#checkout-order .course-thumbnail{width:80px;padding:20px 0 18px 13px}#checkout-order .course-thumbnail>img{width:100px;max-width:100% !important;height:auto !important}#checkout-account-register,#checkout-account-login{width:100%;margin-bottom:35px;padding-bottom:19px;border-bottom:1px solid rgba(204,204,204,0.3)}#checkout-account-register .form-field .rwmb-label,#checkout-account-register .form-field .rwmb-input .description,#checkout-account-login .form-field .rwmb-label,#checkout-account-login .form-field .rwmb-input .description{display:none}#checkout-account-register .lp-checkout-remember label,#checkout-account-login .lp-checkout-remember label{display:inline-block}#checkout-account-register .lp-checkout-remember a,#checkout-account-login .lp-checkout-remember a{float:left}#checkout-account-register .lp-checkout-sign-in-link,#checkout-account-register .lp-checkout-sign-up-link,#checkout-account-login .lp-checkout-sign-in-link,#checkout-account-login .lp-checkout-sign-up-link{display:flex;margin:0;color:#666;font-size:16px;font-weight:400}#checkout-account-register .lp-checkout-sign-in-link a,#checkout-account-register .lp-checkout-sign-up-link a,#checkout-account-login .lp-checkout-sign-in-link a,#checkout-account-login .lp-checkout-sign-up-link a{margin-right:5px;color:#41abec;cursor:pointer}#checkout-account-register .lp-checkout-sign-in-link a:hover,#checkout-account-register .lp-checkout-sign-up-link a:hover,#checkout-account-login .lp-checkout-sign-in-link a:hover,#checkout-account-login .lp-checkout-sign-up-link a:hover{color:var(--lp-primary-color)}#checkout-account-register .lp-checkout-sign-in-link a label,#checkout-account-register .lp-checkout-sign-up-link a label,#checkout-account-login .lp-checkout-sign-in-link a label,#checkout-account-login .lp-checkout-sign-up-link a label{display:inline-block;float:left;color:inherit;font-weight:normal;cursor:pointer}#checkout-payment{width:100%;margin-bottom:25px}#checkout-payment h4{margin-bottom:24px}#checkout-payment .secure-connection{float:left;margin-top:5px;color:#999;font-size:12px;font-weight:normal}#checkout-payment .secure-connection i{margin-left:5px;color:#ccc;font-size:18px}@media(max-width:767px){#checkout-payment .secure-connection{margin-top:0}}#checkout-payment .payment-methods{margin:0 0 24px 0;padding:0;list-style:none}#checkout-payment .lp-payment-method{position:relative;margin:0}#checkout-payment .lp-payment-method>label{display:flex;align-items:center}#checkout-payment .lp-payment-method .gateway-input,#checkout-payment .lp-payment-method .gateway-icon{vertical-align:middle}#checkout-payment .lp-payment-method .gateway-icon{max-height:32px}#checkout-payment .lp-payment-method .gateway-input{position:relative;width:20px;height:20px;margin:0 0 0 8px;border:1px solid #ccc;background:#fff;-webkit-appearance:none;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}#checkout-payment .lp-payment-method .gateway-input::before{position:absolute;top:50%;right:50%;width:6px;height:6px;background:#41abec;transform:translate(50%,-50%);-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}#checkout-payment .lp-payment-method .gateway-input:checked::before{content:""}#checkout-payment .lp-payment-method .gateway-input:focus{outline:0}#checkout-payment #checkout-order-action button{width:100%;border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color);font-weight:500}#checkout-payment #checkout-order-action button:hover{border-color:var(--lp-primary-color);opacity:.5;background:var(--lp-primary-color)}#checkout-payment #checkout-order-action button.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.lp-terms-and-conditions{color:#666;font-size:16px;font-weight:300;line-height:26px}.lp-terms-and-conditions a{color:#41abec}.lp-terms-and-conditions a:hover{color:var(--lp-primary-color)}.learn-press-checkout.guest-checkout{display:none}.button-continue-guest-checkout{clear:both}#learn-press-checkout .payment-methods{margin:0;padding:0;list-style:none}#learn-press-checkout .payment-methods .lp-payment-method{margin-bottom:20px}#learn-press-checkout .payment-methods .lp-payment-method>label{display:flex;flex-flow:row nowrap;padding:10px 20px;background:#f5f5f5;line-height:40px;cursor:pointer}#learn-press-checkout .payment-methods .lp-payment-method>label img{vertical-align:middle}#learn-press-checkout .payment-methods .lp-payment-method.selected>label{background:#d4d4d4}#learn-press-checkout .payment-methods .payment-method-form{display:none;padding:15px 20px;border-top:1px solid #ddd;background:#f9f9f9}#learn-press-checkout-login,#learn-press-checkout-register{margin-bottom:1.5em;padding:20px 20px 0 20px;border:1px solid #ddd;background:#fff}#learn-press-order-review,.learn-press-checkout-comment{margin-bottom:20px}#checkout-form-login,#checkout-form-register{_display:none}#checkout-form-login .learn-press-form-register,#checkout-form-login .learn-press-form-login,#checkout-form-register .learn-press-form-register,#checkout-form-register .learn-press-form-login{display:none}#checkout-guest-email{margin:0 0 20px 0}#checkout-guest-email .form-heading{margin:0}#checkout-guest-email #checkout-guest-options{margin:0;list-style:none}#checkout-guest-email #checkout-existing-account,#checkout-guest-email #checkout-new-account{display:none;margin:0}#checkout-guest-email.email-exists #checkout-existing-account{display:block}#checkout-guest-email.email-exists #checkout-new-account{display:none}.lp-list-table{width:100%;margin-bottom:20px}.lp-list-table th,.lp-list-table td{padding:20px;border:0 solid rgba(204,204,204,0.3);border-bottom-width:1px;background:#fff;font-size:16px;line-height:1;text-align:right}@media(max-width:767px){.lp-list-table th,.lp-list-table td{padding:15px}}.lp-list-table thead{box-sizing:border-box;border:1px solid #e5e7f2}.lp-list-table thead tr th{height:60px;border-bottom:0;color:#333;background:#f1f2f8;font-size:18px}.lp-list-table tbody,.lp-list-table tfoot{box-sizing:border-box;border:1px solid rgba(204,204,204,0.3);border-top:0}.lp-list-table tbody tr td,.lp-list-table tbody tr th,.lp-list-table tfoot tr td,.lp-list-table tfoot tr th{height:62px;color:#666;background:#fff;font-size:16px;font-weight:300}.lp-list-table tbody tr td a,.lp-list-table tbody tr th a,.lp-list-table tfoot tr td a,.lp-list-table tfoot tr th a{border-bottom:0;color:#666;text-decoration:none}.lp-list-table tbody tr td a:hover,.lp-list-table tbody tr th a:hover,.lp-list-table tfoot tr td a:hover,.lp-list-table tfoot tr th a:hover{color:var(--lp-primary-color)}.lp-list-table tbody tr .column-status .result-percent,.lp-list-table tfoot tr .column-status .result-percent{font-weight:500}.lp-list-table tbody tr .column-status .lp-label,.lp-list-table tfoot tr .column-status .lp-label{font-weight:600}.lp-list-table tbody tr:nth-child(odd),.lp-list-table tfoot tr:nth-child(odd){background:#f5f5f5}.lp-list-table .list-table-nav td{font-size:14px}.lp-list-table .list-table-nav td.nav-text{text-align:right}.lp-list-table .list-table-nav td.nav-pages{text-align:left}.lp-list-table .list-table-nav td.nav-pages .learn-press-pagination{text-align:left}.lp-list-table .list-table-nav td.nav-pages .page-numbers{margin-bottom:0}.lp-label{display:inline-block;color:#666;font-size:16px;font-weight:300;line-height:1}.learn-press-form .form-fields{margin:0;padding:0;list-style:none}.learn-press-form .form-fields .form-field{margin:0 0 20px 0}.learn-press-form .form-fields .form-field label{display:block;margin:0 0 10px 0}.learn-press-form .form-fields .form-field input[type=text],.learn-press-form .form-fields .form-field input[type=email],.learn-press-form .form-fields .form-field input[type=number],.learn-press-form .form-fields .form-field input[type=password],.learn-press-form .form-fields .form-field textarea{width:100%;padding:8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.learn-press-form .form-fields .form-field .description{margin-top:10px;font-size:14px;font-style:italic;line-height:1.4}.learn-press-form .form-fields .form-field .asterisk{color:red}.learn-press-form-login,.learn-press-form-register{max-width:600px;margin-left:auto;margin-bottom:60px;margin-right:auto;padding:40px;border:1px solid #eee;border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06) !important}.learn-press-form-login h3,.learn-press-form-register h3{margin-bottom:20px;font-size:28px;line-height:1.4}.learn-press-form-login .form-fields .form-field label,.learn-press-form-register .form-fields .form-field label{font-size:16px;font-weight:400;user-select:none}.learn-press-form-login .form-fields .form-field input[type=text],.learn-press-form-login .form-fields .form-field input[type=password],.learn-press-form-login .form-fields .form-field input[type=tel],.learn-press-form-login .form-fields .form-field input[type=url],.learn-press-form-login .form-fields .form-field input[type=number],.learn-press-form-register .form-fields .form-field input[type=text],.learn-press-form-register .form-fields .form-field input[type=password],.learn-press-form-register .form-fields .form-field input[type=tel],.learn-press-form-register .form-fields .form-field input[type=url],.learn-press-form-register .form-fields .form-field input[type=number]{height:42px;border:1px solid #bbb;border-radius:4px;line-height:42px}.learn-press-form-login .form-fields .form-field input[type=text]:focus,.learn-press-form-login .form-fields .form-field input[type=password]:focus,.learn-press-form-login .form-fields .form-field input[type=tel]:focus,.learn-press-form-login .form-fields .form-field input[type=url]:focus,.learn-press-form-login .form-fields .form-field input[type=number]:focus,.learn-press-form-register .form-fields .form-field input[type=text]:focus,.learn-press-form-register .form-fields .form-field input[type=password]:focus,.learn-press-form-register .form-fields .form-field input[type=tel]:focus,.learn-press-form-register .form-fields .form-field input[type=url]:focus,.learn-press-form-register .form-fields .form-field input[type=number]:focus{border:0;outline:2px solid transparent !important;outline-offset:2px;box-shadow:0 0 0 2px #666 !important}.learn-press-form-login .form-fields .form-field.required label::after,.learn-press-form-register .form-fields .form-field.required label::after{content:" *";display:inline}.learn-press-form-login form[name=learn-press-login]>p>label,.learn-press-form-register form[name=learn-press-login]>p>label{color:#666;font-size:16px;cursor:pointer;user-select:none}.learn-press-form-login form[name=learn-press-login]>p>a,.learn-press-form-register form[name=learn-press-login]>p>a{color:#666;font-size:16px;line-height:1}.learn-press-form-login form[name=learn-press-login]>p:last-child,.learn-press-form-register form[name=learn-press-login]>p:last-child{margin-bottom:0}.learn-press-form-login button[type=submit],.learn-press-form-register button[type=submit]{width:100%;height:50px;border-radius:3px;outline:0;color:#fff;background:var(--lp-primary-color);box-shadow:none;font-size:16px;line-height:1;vertical-align:middle;text-decoration:none}.required label{font-weight:bold}.required label:after{content:" *";display:inline}.lp-password-input{display:flex;flex-direction:column;justify-content:center;position:relative}.lp-password-input input[type=password]{padding-left:2.5rem}.lp-password-input input::-ms-reveal{display:none}.lp-password-input .lp-show-password-input{position:absolute;top:8px;left:10px;cursor:pointer}.lp-password-input .lp-show-password-input::after{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f06e"}.lp-password-input .lp-show-password-input.display-password::after{color:#585858;content:"\f070"}.form-desc{font-size:smaller;font-style:italic}.become-teacher-form{width:90%;max-width:500px;margin:0 auto}.become-teacher-form .form-field input[type=text],.become-teacher-form .form-field input[type=email],.become-teacher-form .form-field input[type=number],.become-teacher-form .form-field input[type=password]{width:100%}body div.entry-content>div.learnpress{--responsive--aligndefault-width:100%;max-width:var(--lp-content-width,100%)}.lp-user-profile{position:relative;background:#fff}.lp-user-profile .lp-user-profile-avatar img{position:relative;width:100%;height:auto;border-radius:unset;display:block}.lp-user-profile .lp-user-profile-avatar+.lp-user-profile-socials{margin-top:10px;margin-bottom:5px}.lp-user-profile .lp-user-profile-socials{display:flex;position:relative;z-index:1;justify-content:center;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.lp-user-profile .lp-user-profile-socials a{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;margin:0 7px;border:1px solid #cfcfcf;color:#666;background:#fff;font-size:14px;line-height:35px;text-align:center;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.lp-user-profile .lp-user-profile-socials a:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.lp-user-profile .wrapper-profile-header{color:#fff;background:var(--lp-secondary-color);position:relative}@media(max-width:990px){.lp-user-profile .wrapper-profile-header .lp-profile-content-area{min-height:inherit;padding:50px 15px}.lp-user-profile .wrapper-profile-header .lp-profile-left{float:right;position:static}.lp-user-profile .wrapper-profile-header .lp-profile-right{float:left;width:calc(100% - 270px);margin-right:0}}@media(max-width:768px){.lp-user-profile .wrapper-profile-header .lp-profile-left{width:220px}.lp-user-profile .wrapper-profile-header .lp-profile-right{width:calc(100% - 220px)}.lp-user-profile .wrapper-profile-header .lp-user-profile-socials{margin-left:-5px;margin-right:-5px}.lp-user-profile .wrapper-profile-header .lp-user-profile-socials a{width:36px;height:36px;margin:0 5px;line-height:36px}}@media(max-width:500px){.lp-user-profile .wrapper-profile-header .lp-profile-left{float:none;margin:0 auto}.lp-user-profile .wrapper-profile-header .lp-profile-right{width:100%;padding-top:30px;text-align:center}}.lp-user-profile .wrapper-profile-header::before{left:100%;right:auto}.lp-user-profile .wrapper-profile-header::after{right:100%;left:auto}.lp-user-profile .lp-profile-content-area{position:relative;padding-top:50px;padding-bottom:50px;display:flex;align-items:center}@media(max-width:650px){.lp-user-profile .lp-profile-content-area{flex-direction:column}.lp-user-profile .lp-profile-content-area .lp-profile-right{text-align:center;width:100%;padding:50px 15px 0}}.lp-user-profile .lp-profile-left{min-width:270px;max-width:270px;padding:5px;border:2px solid #eaeaea;border-radius:3px}.lp-user-profile .lp-profile-right{padding-left:15px;padding-right:35px}.lp-user-profile .lp-profile-username{padding-bottom:10px;font-size:18px;font-weight:500;text-transform:capitalize}.lp-user-profile .lp-profile-username::before,.lp-user-profile .lp-profile-username::after{content:"";width:30px;height:1px;background-color:white;display:inline-block;vertical-align:middle;margin:0}.lp-user-profile .lp-profile-username::before{margin-left:5px}.lp-user-profile .lp-profile-username::after{margin-right:5px}.lp-user-profile .lp-profile-user-bio{font-size:16px;font-weight:300;line-height:26px}.lp-user-profile #profile-sidebar{float:right;width:270px;margin-top:0;border:1px solid rgba(0,0,0,0.1);border-top:0;background:#fff;margin-top:58px}@media(max-width:990px){.lp-user-profile #profile-sidebar{width:100%}.lp-user-profile #profile-sidebar .lp-user-profile-avatar{max-width:150px}}.lp-user-profile #profile-nav .lp-profile-nav-tabs{margin:0;padding:0;list-style:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{position:relative;margin:0;border-top:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li a{display:block;padding:0 20px;color:#333;font-size:16px;font-weight:500;line-height:50px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{padding:0 52px 0 20px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a>i{display:inline-block;position:absolute;right:24px;width:28px;color:var(--lp-primary-color);font-size:12px;line-height:53px;text-align:right}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{float:left;margin-left:4px;color:#999;font-family:"Font Awesome 5 Free";font-size:10px;font-weight:900;content:"\f054"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li{margin:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li a{border-bottom:1px solid #f9f9f9}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li a:hover{color:var(--lp-primary-color);background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li:hover>a i{color:var(--lp-primary-color);background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active,.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:hover{background:var(--lp-primary-color)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active>a::after,.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:hover>a::after{content:"\f053"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a{padding-right:52px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.wishlist>a::before{position:absolute;right:25px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900;content:"\f004"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.wishlist:hover a::before{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.logout>a::after{display:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs li>a{box-sizing:border-box;height:50px}.lp-user-profile #profile-nav .lp-profile-nav-tabs li>ul{display:none;position:absolute;z-index:1000;top:0;right:100%;min-width:150px;margin:0;padding:0;background:#fff;box-shadow:0 15px 20px 0 rgba(0,0,0,0.05);list-style:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a i,.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a::after,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a i,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a::after{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>ul{display:block}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul{position:relative;right:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active{background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active>a{color:#ffb606}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active>a i{color:#ffb606}@media(max-width:990px){.lp-user-profile #profile-nav{overflow-x:scroll;border-top:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs{width:max-content}.lp-user-profile #profile-nav .lp-profile-nav-tabs::after{display:table;clear:both;content:""}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{float:right;border:0;border-left:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{height:auto;padding:0 45px 0 20px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{margin-right:10px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.has-child a::after{content:"\f077"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a{padding-right:45px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a::after{content:"\f078"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul{display:none;width:max-content;transform:translateX(20%)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul::after{display:table;clear:both;box-shadow:0 0;content:""}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li{float:right;border-left:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li:last-child{border-left:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li a{padding:0 10px}.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover ul{display:none !important}.lp-user-profile #profile-nav .lp-profile-nav-tabs li:not(.has-child)>a::after{display:none}}@media(max-width:560px){.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{max-width:80px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{font-size:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{margin-right:0}}.lp-user-profile .lp-profile-content{float:left;width:calc(100% - 300px);margin-bottom:60px;padding-top:58px}@media(max-width:990px){.lp-user-profile .lp-profile-content{width:100%}}@media(max-width:767px){.lp-user-profile .lp-profile-content .learn-press-tabs__nav{display:block;width:100%;border:0}.lp-user-profile .lp-profile-content .learn-press-tabs__nav::after{display:table;clear:both;content:""}.lp-user-profile .lp-profile-content .learn-press-tabs__tab{float:right;border-left:0}.lp-user-profile .lp-profile-content .learn-press-tabs__tab label{padding-left:25px;padding-right:25px}.lp-user-profile .lp-profile-content .profile-orders{overflow-x:scroll}}.lp-user-profile .lp-profile-content .course-categories,.lp-user-profile .lp-profile-content .course-instructor{margin-bottom:14px}.lp-user-profile .lp-profile-content .course-categories{padding:0}.lp-user-profile .lp-profile-content .lp-button{display:block;margin:0 auto 52px auto;padding:13px 34px;border-color:var(--lp-secondary-color);font-size:14px;font-weight:500;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.lp-user-profile .lp-profile-content .lp-button:hover{border-color:var(--lp-primary-color)}.lp-user-profile ul.learn-press-courses .course{margin:0 0 40px 0}.lp-user-profile .profile-orders .profile-heading{display:none}.lp-user-profile .profile-orders table{margin-top:0}.lp-user-profile .profile-orders .column-order-actions a{margin-left:6px;color:black;text-decoration:underline;font-weight:500}.lp-user-profile .profile-orders .column-order-actions a:hover,.lp-user-profile .profile-orders .column-order-actions a:focus{color:var(--lp-primary-color)}.lp-user-profile #dashboard-general-statistic{margin-bottom:55px;padding-bottom:20px;border-bottom:1px solid #ddd}.lp-user-profile .dashboard-general-statistic__row{display:flex;margin:0 -15px;justify-content:center;flex-wrap:wrap}.lp-user-profile .dashboard-general-statistic__row .statistic-box{min-width:200px;max-width:270px;margin:0 15px 40px 15px;padding:15px 20px;border:1px solid #ccc;border-radius:4px;background:#f9fafc;text-align:center}@media(max-width:990px){.lp-user-profile .dashboard-general-statistic__row .statistic-box{width:45%}}@media(max-width:767px){.lp-user-profile .dashboard-general-statistic__row .statistic-box{width:100%;margin:0 15px 15px}}.lp-user-profile .dashboard-general-statistic__row .statistic-box:hover{background:#eaeaea}.lp-user-profile .dashboard-general-statistic__row[data-col="2"] .statistic-box{width:50%}.lp-user-profile .dashboard-general-statistic__row[data-col="4"] .statistic-box{width:25%}.lp-user-profile .dashboard-general-statistic__row[data-col="5"] .statistic-box{width:20%}.lp-user-profile .statistic-box .statistic-box__text{margin:0 0 7px 0;padding:0;color:#666;font-size:18px;font-weight:400;line-height:1}.lp-user-profile .statistic-box .statistic-box__number{color:#333;font-size:18px;font-weight:500;line-height:1}.lp-user-profile .profile-courses>h3{margin-top:0;margin-bottom:36px;color:#333;font-size:30px;font-weight:600;line-height:1;text-transform:capitalize}.lp-profile-content table.lp-list-table{border-spacing:0;border-top:1px solid #ccc;border-right:1px solid #ccc;margin-bottom:40px}.lp-profile-content table.lp-list-table tr th,.lp-profile-content table.lp-list-table tr td{border-left:1px solid #ccc;border-bottom:1px solid #ccc;text-align:center}.lp-profile-content table.lp-list-table tr td a{color:var(--wp--preset--color--foreground);font-weight:400}.lp-profile-content table.lp-list-table tr td a:hover{color:var(--lp-primary-color)}.lp-profile-content #profile-content-order-details h3{margin-top:0;font-size:30px;line-height:1.5;font-weight:500;margin-bottom:15px;font-family:var(--wp--preset--font-family--system-font)}.profile-basic-information .form-field,form[name=profile-change-password] .form-field{margin:0 10px 24px 10px}.profile-basic-information .form-field>label,form[name=profile-change-password] .form-field>label{margin:0 0 12px 0;color:#333;font-size:16px;font-weight:500;font-style:italic}.profile-basic-information .form-field .form-field-input input,form[name=profile-change-password] .form-field .form-field-input input{height:43px;padding:8px 20px;font-weight:400}.profile-basic-information .form-field .form-field-input input[type=password],form[name=profile-change-password] .form-field .form-field-input input[type=password]{padding:8px 20px}.profile-basic-information .form-field .form-field-input textarea,form[name=profile-change-password] .form-field .form-field-input textarea{padding:9px 20px 16px 20px;font-weight:300;line-height:24px}.profile-basic-information .form-field .form-field-input input,.profile-basic-information .form-field .form-field-input textarea,form[name=profile-change-password] .form-field .form-field-input input,form[name=profile-change-password] .form-field .form-field-input textarea{border:1px solid #ccc;color:#999;font-size:14px;font-style:italic}.profile-basic-information .form-field .form-field-input input:focus,.profile-basic-information .form-field .form-field-input textarea:focus,form[name=profile-change-password] .form-field .form-field-input input:focus,form[name=profile-change-password] .form-field .form-field-input textarea:focus{border-color:var(--lp-primary-color);outline:0;color:#222}.profile-basic-information .form-field .form-field-input ::placeholder,form[name=profile-change-password] .form-field .form-field-input ::placeholder{opacity:1;color:#999}.profile-basic-information .form-field .form-field-input :-ms-input-placeholder,form[name=profile-change-password] .form-field .form-field-input :-ms-input-placeholder{color:#999}.profile-basic-information .form-field .form-field-input ::-ms-input-placeholder,form[name=profile-change-password] .form-field .form-field-input ::-ms-input-placeholder{color:#999}.profile-basic-information .form-field .form-field-input .description,form[name=profile-change-password] .form-field .form-field-input .description{margin-top:15px}@media(max-width:767px){.profile-basic-information .form-field,form[name=profile-change-password] .form-field{margin:0 0 24px 0}}.profile-basic-information .form-field__50,form[name=profile-change-password] .form-field__50{float:right;width:calc(50% - 20px);margin-left:10px}@media(max-width:767px){.profile-basic-information .form-field__50,form[name=profile-change-password] .form-field__50{float:unset;width:100%;margin:0 0 24px 0}}.profile-basic-information .form-field__clear,form[name=profile-change-password] .form-field__clear{clear:both}.profile-basic-information button,form[name=profile-change-password] button{padding:16px 24px;border:0;border-radius:3px;color:#fff;background:var(--lp-primary-color);font-size:16px;font-weight:400;line-height:1}.profile-basic-information button:hover,form[name=profile-change-password] button:hover{opacity:.5;background:var(--lp-primary-color)}.profile-basic-information p,form[name=profile-change-password] p{margin:0}#learn-press-profile-basic-information .form-fields::after{display:block;clear:both;content:""}@media(max-width:767px){#learn-press-profile-basic-information .form-fields{margin:0}}#learn-press-profile-basic-information button[type=submit]{padding:0 15px;height:40px;line-height:40px;border:0;display:inline-flex;align-items:center;justify-content:center;background-color:var(--lp-primary-color);color:white;font-size:16px;font-weight:400;-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}#learn-press-profile-basic-information button[type=submit]:hover{opacity:.5;background-color:var(--lp-primary-color)}.recover-order__title{margin-bottom:5px}.recover-order__description{margin-bottom:20px;color:#999;font-size:.8em;font-style:italic}div.order-recover{display:flex}div.order-recover>.button-recover-order{margin:0;margin-right:20px;flex:0 0 auto}div.order-recover>.button-recover-order.loading::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}div.order-recover input[type=text]{width:100%;height:43px;margin-left:10px;padding:0 22px;border:1px solid #ccc;border-radius:3px;background-color:#fff;font-size:14px;font-weight:300;font-style:italic;line-height:43px;flex:1 1 auto}.learn-press-profile-course__progress .lp_profile_course_progress{border:1px solid #eee;border-top:0;overflow-x:auto}.learn-press-profile-course__progress .lp_profile_course_progress__item{display:grid;align-items:center;padding:15px;border-top:1px solid #eee;grid-template-columns:90px 1fr 80px 190px 140px;column-gap:20px}.learn-press-profile-course__progress .lp_profile_course_progress__item div img{max-width:60px;height:auto}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__item div img{max-width:100%}}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__item{display:block}}.learn-press-profile-course__progress .lp_profile_course_progress__header{background-color:#eee}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__header{display:flex;overflow-x:auto;white-space:nowrap;justify-content:flex-end}}.lp_profile_course_progress__nav button.loading::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.entry-content ul.learn-press-profile-course__tab__inner{padding:0}.content ul.learn-press-courses{margin-right:-15px;margin-left:-15px}.content ul.learn-press-courses[data-layout=list]{margin:0}.learn-press-profile-course__tab__inner{display:flex;margin:40px 0 0 0 !important;padding:0 !important;background:#eee;list-style:none !important}.learn-press-profile-course__tab__inner>li{list-style:none;margin:0 !important}.learn-press-profile-course__tab__inner>li:hover{cursor:pointer}.learn-press-profile-course__tab__inner a{display:inline-block;padding:15px 30px;font-weight:600;position:relative}.learn-press-profile-course__tab__inner a.active{color:var(--lp-primary-color);background:#fff}.learn-press-profile-course__tab__inner a.active::before{content:"";height:4px;width:100%;background-color:var(--lp-primary-color);position:absolute;top:0;right:0;left:auto}.learn-press-course-tab-filters .learn-press-filters{margin-top:20px;margin-right:0;padding:0;list-style:none}.learn-press-course-tab-filters .learn-press-filters a.active{color:var(--lp-primary-color)}.lp-profile-content ul{list-style:none !important;padding:0 !important}.learnpress_avatar__form label{display:inline-block}.learnpress_avatar__form input[type=file]{display:none}.learnpress_avatar__form__upload{display:flex;width:200px;height:200px;border:1px dashed #ccc;border-radius:3px;background-color:#fafafa;font-size:14px;font-weight:300;font-style:italic;line-height:43px;text-align:center;cursor:pointer;align-items:center;justify-content:center}.learnpress_avatar__form__upload div{line-height:1.4}.learnpress_avatar__button--loading::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}button.learnpress_avatar__button{height:40px;padding:0 15px;border:0;background:var(--lp-primary-color);color:white;margin-top:15px;border-radius:3px}button.learnpress_avatar__button+button{margin-right:15px;margin-left:0}#primary .learn-press-courses[data-size="3"] .course{width:50%}body.learnpress .learn-press-tabs .learn-press-tabs__tab,body.learnpress .attachment-recent-works-thumbnail{border-radius:0}#learn-press-course-tabs.show-all .course-tab-panel{margin-bottom:40px}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .course-tab-panels .course-tab-panel:nth-child(1){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .learn-press-nav-tabs .course-nav:nth-child(1){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .learn-press-nav-tabs .course-nav:nth-child(1) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .course-tab-panels .course-tab-panel:nth-child(2){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .learn-press-nav-tabs .course-nav:nth-child(2){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .learn-press-nav-tabs .course-nav:nth-child(2) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .course-tab-panels .course-tab-panel:nth-child(3){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .learn-press-nav-tabs .course-nav:nth-child(3){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .learn-press-nav-tabs .course-nav:nth-child(3) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .course-tab-panels .course-tab-panel:nth-child(4){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .learn-press-nav-tabs .course-nav:nth-child(4){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .learn-press-nav-tabs .course-nav:nth-child(4) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .course-tab-panels .course-tab-panel:nth-child(5){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .learn-press-nav-tabs .course-nav:nth-child(5){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .learn-press-nav-tabs .course-nav:nth-child(5) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .course-tab-panels .course-tab-panel:nth-child(6){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .learn-press-nav-tabs .course-nav:nth-child(6){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .learn-press-nav-tabs .course-nav:nth-child(6) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .course-tab-panels .course-tab-panel:nth-child(7){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .learn-press-nav-tabs .course-nav:nth-child(7){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .learn-press-nav-tabs .course-nav:nth-child(7) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .course-tab-panels .course-tab-panel:nth-child(8){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .learn-press-nav-tabs .course-nav:nth-child(8){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .learn-press-nav-tabs .course-nav:nth-child(8) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .course-tab-panels .course-tab-panel:nth-child(9){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .learn-press-nav-tabs .course-nav:nth-child(9){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .learn-press-nav-tabs .course-nav:nth-child(9) label{color:var(--lp-primary-color);background:#fff}.course-tab-panels .course-tab-panel{padding-top:30px}.course-tab-panel{display:none}.course-tab-panel.active{display:block}.course-tab-panel .course-description{color:#666;font-size:16px;font-weight:300;line-height:26px}.course-tab-panel .course-description h4{margin-top:0;margin-bottom:1.125rem;color:#333;font-size:18px;font-weight:500}.course-tab-panel .course-description p{line-height:inherit}.course-tab-panel .course-description img{max-width:100%;height:auto;vertical-align:middle}.course-tab-panel .lp-course-author{display:flex;margin-bottom:40px}@media(max-width:767px){.course-tab-panel .lp-course-author{flex-direction:column}}.course-tab-panel .lp-course-author .course-author__pull-left{margin-left:30px;text-align:center;align-items:center}@media(max-width:767px){.course-tab-panel .lp-course-author .course-author__pull-left{margin-left:0;margin-bottom:30px}}.course-tab-panel .lp-course-author img{width:50px;height:50px;margin-bottom:20px;border-radius:50%;object-fit:cover;object-position:center}.course-tab-panel .lp-course-author .course-author__pull-right{flex:1}@media(max-width:767px){.course-tab-panel .lp-course-author .course-author__pull-right{width:100%;text-align:center}}.course-tab-panel .lp-course-author .author-title{margin-bottom:18px}.course-tab-panel .lp-course-author .author-title a{color:#333;box-shadow:none;font-size:18px;font-weight:500;text-transform:capitalize}.course-tab-panel .lp-course-author .author-title a:hover{color:var(--lp-primary-color)}.course-tab-panel .lp-course-author .author-description{color:#666;font-size:16px;font-weight:300;line-height:26px}.course-tab-panel .lp-course-author .author-socials{display:grid;grid-template-columns:repeat(4,33px);gap:10px;justify-content:center}.course-tab-panel .lp-course-author .author-socials>a{display:inline-block;width:33px;height:33px;margin:0;border:1px solid #ededed;border-radius:50%;color:#878787;box-shadow:none;font-size:14px;line-height:33px;text-align:center;vertical-align:middle;transition:all .3s}.course-tab-panel .lp-course-author .author-socials>a:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.course-tab-panel .lp-course-author .author-socials .fa-googleplus::before{content:"\f0d5"}.course-summary div.lp-list-co-instructor{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}.course-summary div.lp-list-co-instructor__item{display:flex;column-gap:30px}@media(max-width:767px){.course-summary div.lp-list-co-instructor__item{align-items:center;flex-direction:column;padding:0 15px;column-gap:0;row-gap:10px}}.course-summary div.lp-list-co-instructor__avatar>img{width:100%;max-width:96px;border-radius:999px}.course-summary div.lp-list-co-instructor__bio{flex:1}.course-summary div.lp-list-co-instructor__bio__top>a{font-size:18px;font-weight:600}.course-summary div.lp-list-co-instructor__bio__description{font-size:1rem}.course-summary .course-price{margin-bottom:10px}.course-summary .course-price .origin-price,.course-summary .course-price .price{vertical-align:middle}.course-summary .course-price .origin-price{margin-left:10px;font-size:18px;font-style:italic;text-decoration:line-through}.course-summary .course-price .price{font-size:24px}.course-summary .course-summary-sidebar .lp-course-buttons{margin-bottom:20px}.course-summary .course-featured-review .featured-review__title{margin-top:0;margin-bottom:6px;font-size:1.2rem;font-weight:500}.course-summary .course-featured-review .featured-review__stars{padding-bottom:12px;color:var(--lp-primary-color);font-size:16px}.course-summary .course-featured-review .featured-review__content{position:relative;color:#666;font-size:1rem;font-style:italic;line-height:24px}.course-summary .course-featured-review .featured-review__content::after{position:absolute;top:-42px;left:-15px;color:rgba(102,102,102,0.1);font-family:Arial;font-size:180px;font-weight:700;font-style:normal;content:"‘‘";transform:rotate(-180deg)}.course-summary .course-tags a{display:inline-block;padding:3px 5px;border-radius:4px;color:#fff;background:#9aa5ab;font-size:12px;line-height:1}.edit-content{margin-right:5px}ul.learn-press-nav-tabs{display:flex;margin:0;padding:0;border:1px solid rgba(204,204,204,0.3);border-bottom:0;background:#f1f2f8;list-style:none}ul.learn-press-nav-tabs .course-nav{float:right;position:relative;margin:0;border-left:1px solid rgba(204,204,204,0.3);border-bottom:1px solid rgba(204,204,204,0.3);list-style:none}ul.learn-press-nav-tabs .course-nav:first-child.active::after{position:absolute;top:-1px;right:-1px;width:1px;height:100%;background:#fff;content:""}ul.learn-press-nav-tabs .course-nav:last-child{border-left:0}ul.learn-press-nav-tabs .course-nav:last-child.active::after{position:absolute;top:-1px;left:-2px;width:2px;height:100%;background:#fff;content:""}ul.learn-press-nav-tabs .course-nav.active{border-bottom:0}ul.learn-press-nav-tabs .course-nav.active::before{position:absolute;top:-1px;right:0;width:100%;height:4px;background:var(--lp-primary-color);content:""}ul.learn-press-nav-tabs .course-nav.active label{color:var(--lp-primary-color);background-color:white}ul.learn-press-nav-tabs .course-nav a{display:inline-block;padding:10px 20px;border-bottom:0;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}ul.learn-press-nav-tabs .course-nav a:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}ul.learn-press-nav-tabs[data-tabs] .course-nav{flex:1}ul.learn-press-nav-tabs[data-tabs] .course-nav a{width:100%;text-align:center}ul.learn-press-nav-tabs::after{display:block;clear:both;content:""}@media(max-width:767px){ul.learn-press-nav-tabs{display:grid;grid-template-columns:repeat(2,1fr);max-height:none}}.course-item-popup #tab-curriculum{display:block}.course-curriculum ul.curriculum-sections{position:relative;z-index:499;margin:0;padding:0;list-style:none}.course-curriculum ul.curriculum-sections .closed .section-item__loadmore{display:none}.course-curriculum ul.curriculum-sections .section{margin:0;padding:0;flex-wrap:wrap}.course-curriculum ul.curriculum-sections .section:last-child{padding:0}.course-curriculum ul.curriculum-sections .section.section-empty .section-header{margin-bottom:20px}.course-curriculum ul.curriculum-sections .section.section-empty .learn-press-message{margin-left:15px;margin-right:15px}.course-curriculum ul.curriculum-sections .section-title.c+.section-desc{display:block}.course-curriculum ul.curriculum-sections .section-title.c span.show-desc::before{-webkit-transform:rotate(-180deg);-moz-transform:rotate(-180deg);-ms-transform:rotate(-180deg);-o-transform:rotate(-180deg);transform:rotate(-180deg);top:0}.course-curriculum ul.curriculum-sections .item-meta.duration{background:#d9e0f1}.course-curriculum .section-item__loadmore{display:flex;justify-content:center;align-items:center}.course-curriculum .section-item__loadmore button{display:inline-flex;margin-top:10px;margin-left:auto;margin-right:auto;padding:10px 20px;border:1px solid #ccc;border-radius:4px;outline:0;color:#222;background:#f7f7f7;box-shadow:none;font-weight:500;justify-content:center;align-items:center;cursor:pointer;font-size:1rem;font-family:sans-serif}.course-curriculum .section-item__loadmore.loading button::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.course-curriculum .section-header{display:table;width:100%;padding:0 0 26px 0;border-bottom:0;border-bottom:1px solid #d9e0f1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-curriculum .section-header .section-title,.course-curriculum .section-header .section-desc{margin:0}.course-curriculum .section-header span.show-desc{display:inline-block;position:absolute;top:50%;left:30px;width:20px;height:20px;transform:translate(0,-50%)}.course-curriculum .section-header span.show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f107"}.course-curriculum .section-header span.show-desc:hover::before{border-top-color:#ccc}.course-curriculum .section-header .section-desc{margin:0;margin-top:10px;font-size:14px;line-height:21px;color:#999;font-style:italic}.course-curriculum .section-header .section-meta{display:block;padding-top:17px;padding-bottom:15px;font-size:14px;text-align:left;vertical-align:middle;white-space:nowrap}.course-curriculum .section-item{width:100%}.course-curriculum .section-content{margin:0 0 15px 0;padding:0;list-style:none}.course-curriculum .section-content .course-item-meta{display:table-cell;padding:10px 0;text-align:left;vertical-align:middle;white-space:nowrap}.course-curriculum .section-content .course-item-meta .item-meta{display:inline-block;margin-right:14px;border-radius:3px;color:#fff;font-size:14px;line-height:23px;text-align:center;vertical-align:middle;padding:0 8px}.course-curriculum .section-content .course-item-meta .item-meta.final-quiz{background:#14c4ff}.course-curriculum .section-content .course-item-meta .item-meta.trans{padding:0}.course-curriculum .section-content .course-item-meta .count-questions{background:#9672cf}.course-curriculum .section-content .course-item-meta .duration{background:silver}.course-curriculum .section-content .course-item-meta .course-item-status{padding:0;color:#999;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-curriculum .section-content .course-item-meta .course-item-status::before{font-family:"Font Awesome 5 Free";font-size:14px;font-weight:900;vertical-align:middle;text-transform:lowercase;content:"\f00c"}.course-curriculum .section-content .course-item-preview{font-style:normal;padding:0}.course-curriculum .section-content .course-item-preview::before{color:#fff;padding:0 8px;background:#00adff;display:inline-flex;align-items:center;justify-content:center;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:baseline;content:attr(data-preview)}.course-curriculum .course-item{display:flex;position:relative;margin:0 0 2px 0;padding:0 30px 0 15px;background:rgba(241,242,248,0.4);font-size:14px;transition:padding-right linear .15s}@media(max-width:767px){.course-curriculum .course-item{padding:0 15px 0 0}}.course-curriculum .course-item>span{display:flex;width:28px;color:#666;font-size:16px;font-weight:300;align-items:center}.course-curriculum .course-item .section-item-link{display:table;padding-left:15px;padding-right:0;border-bottom:0;outline:0;box-shadow:none;line-height:1.5;color:#777;text-decoration:none}.course-curriculum .course-item .section-item-link:hover .item-name{color:var(--lp-primary-color)}.course-curriculum .course-item .section-item-link::before{display:table-cell;display:table-cell;right:0;width:20px;padding:15px 0;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:18px;font-weight:400;vertical-align:middle;transition:right linear .15s}.course-curriculum .course-item .item-icon,.course-curriculum .course-item .item-name{display:table-cell;padding:17px 16px;color:#333;font-size:16px;font-weight:600;vertical-align:middle}.course-curriculum .course-item .item-icon::before{font-size:18px}.course-curriculum .course-item .item-icon.icon-lock{float:left;margin-top:15px}.course-curriculum .course-item.course-item-lp_quiz .section-item-link::before{content:"\f059"}.course-curriculum .course-item.course-item-lp_lesson .section-item-link::before{content:"\f15b"}.course-curriculum .course-item.course-item-lp_lesson.course-item-type-video .section-item-link::before{content:"\f03d"}.course-curriculum .course-item.course-item-lp_lesson.course-item-type-audio .section-item-link::before{content:"\f028"}.course-curriculum .course-item.item-locked .course-item-status::before{color:var(--lp-secondary-color);content:"\f023"}.course-curriculum .course-item.has-status{padding-top:1px}.course-curriculum .course-item.has-status.status-completed .course-item-status::before,.course-curriculum .course-item.has-status.status-evaluated .course-item-status::before{color:#3bb54a}.course-curriculum .course-item.has-status.item-failed .course-item-status::before,.course-curriculum .course-item.has-status.failed .course-item-status::before{border-color:#f02425;color:#f02425;content:"\f00d"}.course-curriculum .course-item::before{position:absolute;top:50%;right:0;width:3px;height:0;background:#00adff;content:"";transition:height linear .15s,top linear .15s}.course-curriculum .course-item.current{padding-right:10px;background:#f9f9f9}.course-curriculum .course-item.current a::before{right:10px}.course-curriculum .course-item.current::before{top:0;height:100%}.course-curriculum .section-left{vertical-align:top}.course-curriculum .section-left .section-title{padding:0;color:#666;font-size:1.4rem;letter-spacing:0;text-transform:capitalize;display:block}.course-curriculum .curriculum-more__button{display:flex;width:100%;margin-top:20px;margin-bottom:20px;padding:10px 0;border:0;outline:0;color:#fff;background:#333;box-shadow:none;justify-content:center;align-items:center;cursor:pointer;font-size:1rem;font-family:sans-serif}.course-curriculum .curriculum-more__button.loading::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}body.course-item-popupx{overflow:hidden;_opacity:0}body.course-item-popupx #learn-press-course-curriculum{overflow:auto;position:fixed;z-index:9999;top:32px;bottom:0;right:0;width:400px;border-left:1px solid #ddd;background:#fff}body.course-item-popupx #learn-press-course-curriculum .section-header{padding:0 15px}body.course-item-popupx #learn-press-course-curriculum .section-header .section-desc{margin:-10px 0 5px}body.course-item-popupx #learn-press-course-curriculum .course-item{padding-left:15px;padding-right:15px}body.course-item-popupx #learn-press-course-curriculum .course-item a::before{right:15px}body.course-item-popupx #learn-press-content-item{overflow:hidden;position:fixed;z-index:9999;top:32px;left:0;bottom:0;right:400px;background:#fff}body.course-item-popupx #learn-press-content-item .content-item-wrap{max-width:900px;margin:10px auto}body.course-item-popupx #learn-press-content-item .course-item-title{font-size:1.4rem}body.course-item-popupx #learn-press-content-item .content-question-summary .review-heading{text-align:center}body.course-item-popupx #learn-press-content-item .content-question-summary .question-title{margin-bottom:10px;font-size:1.2rem}body.course-item-popupx #content-item-nav{position:fixed;z-index:99999;left:0;bottom:0;right:400px;height:60px;border-top:1px solid #ddd;background:#f5f5f5}body.course-item-popupx #content-item-nav .content-item-nav-wrap{max-width:900px;margin:10px auto}body.course-item-popupx #content-item-nav button{height:40px;padding:0 20px;line-height:40px}body.course-item-popupx .comment-form-textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.course-item-popupx.wpadminbar #learn-press-course-curriculum,body.course-item-popupx.wpadminbar #learn-press-content-item{top:92px}body.course-item-popupx.wpadminbar .content-item-description{margin-bottom:20px}body.course-item-popupx .content-item-summary{margin-bottom:50px}body.course-item-popupx .content-item-summary>h3{margin-bottom:20px}body.course-item-popupx .content-item-summary.content-item-video .entry-video{position:absolute;top:0;right:0;width:100%;background:#000;line-height:1}body.course-item-popupx .content-item-summary.content-item-video .entry-video iframe{width:100%;max-width:900px;margin-bottom:0;vertical-align:top}body.course-item-popupx .learn-press-content-protected-message{margin-bottom:50px;padding:20px;background:#ffe0e0}body.course-item-popupx.content-only #learn-press-content-item{z-index:9999999;top:0;bottom:0;right:0}body.course-item-popupx.content-only #learn-press-content-item .content-item-scrollable{bottom:0}body #ifr-course-item{position:absolute;z-index:999999;top:0;right:0;width:100%;height:100%;background:#fff}body .content-item-summary .form-button-finish-course,body .lp-quiz-buttons .form-button-finish-course{float:left}#wpadminbar #wp-admin-bar-edit-lp_quiz .ab-item::before,#wpadminbar #wp-admin-bar-edit-lp_lesson .ab-item::before,#wpadminbar #wp-admin-bar-edit-lp_question .ab-item::before{top:2px;font-family:"Font Awesome 5 Free"}#wpadminbar #wp-admin-bar-edit-lp_quiz .ab-item::before{content:"\f017"}#wpadminbar #wp-admin-bar-edit-lp_lesson .ab-item::before{content:"\f15c"}#wpadminbar #wp-admin-bar-edit-lp_question .ab-item::before{content:"\f29c"}.scroll-wrapper{overflow:hidden;opacity:0}.scroll-wrapper .scroll-element{background:transparent}.scroll-wrapper .scroll-element.scroll-y.scroll-scrolly_visible{transition:opacity .25s}.scroll-wrapper:hover .scroll-element.scroll-y.scroll-scrolly_visible{opacity:.7}.course-remaining-time .label-enrolled{font-size:inherit}.learn-press-form.completed button::before{margin-left:10px;font-family:"Font Awesome 5 Free";font-size:18px;content:"\f00c"}.lp-course-progress{position:relative}.lp-course-progress .lp-passing-conditional{position:absolute;top:0;width:3px;height:6px;margin-right:-1px;background:var(--lp-secondary-color)}.viewing-course-item .section-header .section-desc{display:none}.viewing-course-item .content-item-wrap{margin-top:50px}.course-meta{display:flex;margin-bottom:40px}.course-meta .course-meta__pull-left,.course-meta .course-meta__pull-right{display:flex;flex-wrap:wrap}.course-meta .course-meta__pull-left{flex:1}.course-meta .course-meta__pull-left .meta-item{margin-left:10px}.course-meta .course-meta__pull-right{flex:0 0 50%}.course-meta .course-meta__pull-right .meta-item{margin-right:10px}.course-meta.course-meta-primary .meta-item{flex:1}.course-meta.two-columns .course-meta{flex:1}.course-extra-box{margin-bottom:3px;border:1px solid rgba(204,204,204,0.3);border-radius:5px}.course-extra-box__title{--extra-height:50px;display:flex;align-items:center;position:relative;height:var(--extra-height);margin:0 !important;padding:0 38px 0 45px;background:rgba(181,187,211,0.15);font-size:1.1rem;font-weight:600;cursor:pointer}@media(max-width:767px){.course-extra-box__title{padding-right:15px}}.course-extra-box__title::after{position:absolute;top:0;left:20px;color:#666;font-family:"Font Awesome 5 Free";line-height:var(--extra-height);content:"\f0d7"}.course-extra-box__content{display:none}.course-extra-box__content-inner{-webkit-animation-name:course-extra-box__content-inner-transform;animation-name:course-extra-box__content-inner-transform;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-direction:normal;animation-direction:normal}.course-extra-box__content ul,.course-extra-box__content li{list-style:none}.course-extra-box__content ul{margin:0;padding:0}.course-extra-box__content li{margin:0;padding:10px 38px;border-bottom:1px solid rgba(204,204,204,0.3);color:#666;font-size:16px;font-weight:300}@media(max-width:767px){.course-extra-box__content li{padding-right:30px;padding-left:30px}}.course-extra-box__content li::before{margin-left:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900;content:"\f00c"}.course-extra-box__content li:last-child{border-bottom:0}.course-extra-box:last-child{margin-bottom:60px}.course-extra-box.active .course-extra-box__title::after{content:"\f0d8"}.course-extra-box+.comment-respond,.course-extra-box+.comments-area{margin-top:60px;margin-bottom:30px}.course-extra-box+.course-tabs{margin-top:60px}input[name=course-extra-box-ratio]{display:none}input[name=course-extra-box-ratio]:checked+.course-extra-box .course-extra-box__content{display:block}input[name=course-extra-box-ratio]:checked+.course-extra-box .course-extra-box__content .course-extra-box__content-inner{transform:scale(1)}@-webkit-keyframes course-extra-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(-5%);-moz-transform:translateX(-5%);-ms-transform:translateX(-5%);-o-transform:translateX(-5%);transform:translateX(-5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@keyframes course-extra-box__content-inner-transform{from{opacity:0;transform:translateX(-5%)}to{opacity:1;transform:translateX(0)}}.course-tab-panel-faqs{padding-top:64px}.course-tab-panel-faqs .course-faqs-box{margin-bottom:20px;border:1px solid rgba(204,204,204,0.6);border-radius:5px}.course-tab-panel-faqs .course-faqs-box__title{display:block;position:relative;margin:0;padding:20px 25px 20px 45px;font-size:1.1rem;font-weight:500;line-height:1.7;cursor:pointer}.course-tab-panel-faqs .course-faqs-box__title::after{position:absolute;top:50%;left:28px;color:#6c6c6c;font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900;content:"\f078";transform:translateY(-50%)}.course-tab-panel-faqs .course-faqs-box:last-child{margin-bottom:40px}.course-tab-panel-faqs .course-faqs-box:hover{background:rgba(241,242,248,0.4)}.course-tab-panel-faqs .course-faqs-box:hover .course-faqs-box__title{color:var(--lp-primary-color)}.course-tab-panel-faqs .course-faqs-box__content{display:none}.course-tab-panel-faqs .course-faqs-box__content-inner{padding:0 25px 25px 25px;color:#666;font-size:1rem;font-weight:300;line-height:26px;-webkit-animation-name:course-faqs-box__content-inner-transform;animation-name:course-faqs-box__content-inner-transform;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-direction:normal;animation-direction:normal}input[name=course-faqs-box-ratio]{display:none}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__content{display:block}input[name=course-faqs-box-ratio]:checked+.course-faqs-box{background:rgba(241,242,248,0.4)}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__title{color:var(--lp-primary-color)}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__title::after{content:"\f077"}@-webkit-keyframes course-faqs-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(-5%);-moz-transform:translateX(-5%);-ms-transform:translateX(-5%);-o-transform:translateX(-5%);transform:translateX(-5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@keyframes course-faqs-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(-5%);-moz-transform:translateX(-5%);-ms-transform:translateX(-5%);-o-transform:translateX(-5%);transform:translateX(-5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@media screen and (max-width:1300px){body.course-item-popup #learn-press-course-curriculum{width:300px}body.course-item-popup #learn-press-course-curriculum .progress-bg{width:40px}body.course-item-popup #content-item-nav{right:300px}body.course-item-popup .section-desc{display:none}}@media screen and (max-width:1200px){body.course-item-popupx #learn-press-course-curriculum{width:300px}body.course-item-popupx #content-item-nav{right:300px}body.course-item-popupx #learn-press-content-item .content-item-nav-wrap,body.course-item-popupx #learn-press-content-item .content-item-wrap{width:90%}}@media screen and (max-width:768px){body.course-item-popup .course-curriculum{width:200px}body.course-item-popup #content-item-nav{right:200px}body.course-item-popup #learn-press-content-item .content-item-nav-wrap,body.course-item-popup #learn-press-content-item .content-item-wrap{width:90%}body.course-item-popup.wpadminbar #learn-press-content-item,body.course-item-popup.wpadminbar #learn-press-course-curriculum{top:106px}.learn-press-course-results-progress{margin-left:0}.learn-press-course-results-progress .items-progress,.learn-press-course-results-progress .course-progress{float:none;width:100%;margin-left:0;margin-bottom:20px}}.lp-quiz-buttons{margin-bottom:20px;display:block;clear:both;content:""}.quiz-progress{margin-bottom:30px;background:#e7f7ff}.quiz-progress .progress-items{display:flex}.quiz-progress .progress-items .progress-item{position:relative;color:#777;font-size:15px;flex:1}.quiz-progress .progress-items .progress-item .progress-number,.quiz-progress .progress-items .progress-item .progress-label{display:block;line-height:1;text-align:center}.quiz-progress .progress-items .progress-item .progress-number{margin:15px 0 10px 0;font-size:20px}.quiz-progress .progress-items .progress-item .progress-label{margin-bottom:15px;font-size:14px}.quiz-progress .progress-items .progress-item i{display:none;float:right;width:60px;height:60px;color:#fff;background:#00adff;font-size:30px;line-height:60px;text-align:center}.quiz-progress .progress-items .progress-item::after{display:block;clear:both;content:""}.answer-options{margin:0;padding:0;list-style:none}.answer-options .answer-option{display:flex;overflow:hidden;position:relative;margin:0 0 18px 0;padding:10px;color:#777;background:#f5f5f5;font-size:20px;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-transition:background linear .25s;-moz-transition:background linear .25s;-ms-transition:background linear .25s;-o-transition:background linear .25s;transition:background linear .25s}.answer-options .answer-option .option-title{display:table-cell;font-size:smaller}.answer-options .answer-option .option-title .option-title-content{display:inline-block;vertical-align:middle}.answer-options .answer-option .option-title::before{position:absolute;top:0;bottom:0;right:0;width:3px;background:#ddd;content:"";-webkit-transition:background linear .25s;-moz-transition:background linear .25s;-ms-transition:background linear .25s;-o-transition:background linear .25s;transition:background linear .25s}.answer-options .answer-option input[type=checkbox],.answer-options .answer-option input[type=radio]{-webkit-appearance:initial;-moz-appearance:initial;position:relative;z-index:10;width:35px;min-width:35px;height:35px;margin:0 3px 0 10px;border:1px solid #cfcfcf;background:#f9fafc;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.answer-options .answer-option input[type=checkbox]:focus,.answer-options .answer-option input[type=radio]:focus{outline:0}.answer-options .answer-option input[type=checkbox]::after,.answer-options .answer-option input[type=radio]::after{margin-top:-10px;position:absolute;top:18px;right:9px;box-sizing:content-box;opacity:0;color:#3db748;font-family:"Font Awesome 5 Free";font-weight:900;font-size:16px;content:"\f00c"}.answer-options .answer-option input[type=checkbox]:checked ~ .option-title .option-title-content,.answer-options .answer-option input[type=radio]:checked ~ .option-title .option-title-content{position:relative}.answer-options .answer-option input[type=checkbox]:checked ~ .option-title::before,.answer-options .answer-option input[type=radio]:checked ~ .option-title::before{background:#00adff}.answer-options .answer-option input[type=checkbox]:checked::after,.answer-options .answer-option input[type=radio]:checked::after{opacity:1}.answer-options .answer-option input[type=checkbox]::after{margin-top:0;top:50%;right:50%;-webkit-transform:translate(50%,-50%);-moz-transform:translate(50%,-50%);-ms-transform:translate(50%,-50%);-o-transform:translate(50%,-50%);transform:translate(50%,-50%)}.answer-options .answer-option input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.answer-options .answer-option input[type=radio]::before{border-radius:50%}.answer-options .answer-option .option-title{margin:0}.answer-options .answer-option:hover{background:#e1f5ff}.answer-options .answer-option.answer-correct{background:#e1f5ff}.answer-options .answer-option.answer-correct input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answer-correct input[type=checkbox]:checked ~ .option-title::before{background:#e1f5ff}.answer-options .answer-option.answered-correct input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answered-correct input[type=checkbox]:checked ~ .option-title::before{background:#00adff}.answer-options .answer-option.answered-wrong input[type=radio]::before,.answer-options .answer-option.answered-wrong input[type=radio]::after,.answer-options .answer-option.answered-wrong input[type=checkbox]::before,.answer-options .answer-option.answered-wrong input[type=checkbox]::after{border-color:red}.answer-options .answer-option.answered-wrong input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answered-wrong input[type=checkbox]:checked ~ .option-title::before{background:red}button[data-counter]{position:relative}button[data-counter]::after{padding-right:5px;content:"(+" attr(data-counter) ")"}.quiz-result{max-width:320px;margin:20px auto 48px;text-align:center}.quiz-result .result-heading{display:none}.quiz-result.passed .result-message{background:#3bb54a}.quiz-result.passed .result-message::after{content:"\f00c"}.quiz-result .result-message{margin-bottom:30px;padding:10px 0 !important;color:#fff;background:#f02425;font-size:16px;line-height:22px;font-weight:400;display:flex;align-items:center;justify-content:center;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.quiz-result .result-message::after{margin-right:10px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f00d"}.quiz-result .result-grade .result-achieved,.quiz-result .result-grade .result-require{display:inline-block;margin:0 auto}.quiz-result .result-grade .result-achieved{padding-bottom:7px;border-bottom:1px solid #999;color:#333;font-size:28px;font-weight:500;line-height:1}.quiz-result .result-grade .result-require{display:block;padding-top:5px;color:#666;font-size:16px;font-weight:400;line-height:1}.quiz-result .result-grade .result-message{font-size:14px}.quiz-result.passed .result-achieved{color:#04adff}.quiz-result.passed .result-message strong{color:#04adff}.quiz-result .result-statistic{margin:0;padding:0;text-align:right;list-style:none}.quiz-result .result-statistic .result-statistic-field{display:flex;margin:0}.quiz-result .result-statistic .result-statistic-field+li{border-top:1px dashed #ccc}.quiz-result .result-statistic .result-statistic-field span,.quiz-result .result-statistic .result-statistic-field p{margin:0;flex:1}.quiz-result .result-statistic .result-statistic-field span{color:#666;font-size:16px;font-weight:400;line-height:35px}.quiz-result .result-statistic .result-statistic-field span::before{display:inline-block;width:15px;margin-left:10px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900}.quiz-result .result-statistic .result-statistic-field p{color:#333;font-size:16px;font-weight:500;line-height:35px;text-align:left}.quiz-result .result-statistic .result-statistic-field.result-time-spend label::before{font-weight:400;content:"\f017"}.quiz-result .result-statistic .result-statistic-field.result-point label::before{font-weight:400;content:"\f005"}.quiz-result .result-statistic .result-statistic-field.result-questions label::before{font-weight:400;content:"\f059"}.quiz-result .result-statistic .result-statistic-field.result-questions-correct label::before{color:#3db748;content:"\f00c"}.quiz-result .result-statistic .result-statistic-field.result-questions-wrong label::before{color:#f02425;content:"\f00d"}.quiz-result .result-statistic .result-statistic-field.result-questions-skipped label::before{color:#ddd;content:"\f2f5"}.quiz-status{position:sticky;z-index:99;top:0;left:0;right:0;margin:0 0 35px 0}.quiz-status>div{display:flex;box-sizing:border-box;width:100%;max-width:792px;height:60px;margin:0 auto;padding:5px 30px 5px 10px;border-radius:4px;background:var(--lp-primary-color);justify-content:center;align-items:center}@media(max-width:480px){.quiz-status>div{display:block;height:auto;text-align:center;padding:15px}.quiz-status>div .questions-index{margin-bottom:10px}}.quiz-status>div>div{display:flex;flex-direction:row-reverse;flex:0 0 50%;align-items:center}@media(max-width:480px){.quiz-status>div>div{justify-content:center}}.quiz-status>div .current-point{display:none}.quiz-status .questions-index{display:inline-block;color:#666;font-size:16px;font-weight:400;line-height:26px}.quiz-status .questions-index span{color:#333;font-weight:500}.quiz-status .countdown{position:relative;min-width:120px;margin-left:5px;padding:12px 29px;color:#333;background:#fff;font-size:14px;font-weight:400;line-height:1;text-align:center}.quiz-status .countdown .fas{position:absolute;top:50%;right:10px;color:#333;font-size:14px;transform:translateY(-50%)}.quiz-status .countdown .clock{display:none;width:40px;height:40px}.quiz-status .countdown .clock::before{position:absolute;width:40px;height:40px;border:4px solid #b1c1e6;border-radius:50%;content:"";-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.quiz-status .countdown .clock .circle-progress-bar{display:inline-block;position:relative;width:40px;height:40px;stroke:#5383f7}.quiz-status .countdown .clock .circle-progress-bar .circle-progress-bar__circle{transition:.35s stroke-dashoffset;transform:rotate(90deg);transform-origin:50% 50%}.quiz-status .countdown .clock.x .circle-progress-bar__circle{stroke:red}.quiz-status .submit-quiz button{margin:0 10px 0 0;border:0;border-radius:0;background:#fff;text-transform:uppercase}.quiz-status .submit-quiz button:hover{background:var(--lp-secondary-color)}.quiz-status.submitting .submit-quiz button{background:#ddd}.question-numbers{text-align:center;list-style:none}.question-numbers li{display:inline-block;position:relative;margin-bottom:3px}.question-numbers li a{display:block;min-width:20px;padding:8px;border:1px solid #ddd;color:#999;background:#f5f5f5;box-shadow:none;font-size:12px;line-height:1}.question-numbers li a span{vertical-align:middle}.question-numbers li a:hover{border:1px solid #3880a2;color:#fff;background:#00adff}.question-numbers li.current a{border-color:#3880a2;color:#fff !important;background:#00adff}.question-numbers li.current.skipped::after{background:#fff}.question-numbers li.answered a::after{margin-right:3px;font-family:"Font Awesome 5 Free";font-size:8px;vertical-align:middle}.question-numbers li.answered.answered-wrong a{color:red}.question-numbers li.answered.answered-true a{color:#00adff}.question-numbers li.answered.answered-true.current a{color:#fff}.question-numbers li.skipped::after{position:absolute;bottom:3px;right:50%;width:10px;height:4px;margin-right:-5px;border-radius:2px;background:#aaa;content:""}.quiz-intro{display:flex;margin:0 0 20px;padding:0;list-style:none;flex-flow:row wrap}@media(max-width:768px){.quiz-intro{padding-left:10px;padding-right:10px;justify-content:space-between}}.quiz-intro-item{display:flex;margin:0 0 0 40px;align-items:center}@media(max-width:768px){.quiz-intro-item{margin:0 0 0 20px}}.quiz-intro-item::before{position:relative;top:-2px;margin-left:10px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900}.quiz-intro-item--passing-grade{order:2}.quiz-intro-item--passing-grade::before{content:"\f012"}.quiz-intro-item--questions-count{order:1}.quiz-intro-item--questions-count::before{content:"\f12e"}.quiz-intro-item--duration{order:2}.quiz-intro-item--duration::before{content:"\f017"}.quiz-intro-item__title{margin:0;padding:0 0 0 8px;color:#333;font-size:16px;font-weight:300;line-height:1.7}.quiz-intro-item__content{color:#222;font-size:16px;font-weight:400}.question-explanation-content,.question-hint-content{margin-bottom:20px;padding:10px 15px;background:#f5f5f5}.redo-quiz button[type=submit]{content:attr(data-counter)}.circle-bar{position:relative;width:300px;height:300px;border-color:#ddd}.circle-bar::before{position:absolute;z-index:0;top:0;right:0;box-sizing:border-box;width:100%;height:100%;border:10px solid #ddd;border-radius:50%;content:""}.circle-bar .before,.circle-bar .after{position:absolute;z-index:0;top:0;right:0;box-sizing:border-box;width:100%;height:100%;border:10px solid #14c4ff;border-radius:50%;transform:rotate(-45deg)}.circle-bar .before{border-bottom-color:transparent;border-right-color:transparent;transform:rotate(-45deg)}.circle-bar .after{border-color:#14c4ff;border-top-color:transparent;border-left-color:transparent;transform:rotate(-45deg)}.circle-bar.bg50 .after{z-index:10;border-bottom-color:inherit;border-right-color:inherit;transform:rotate(-45deg)}.lp-quiz-buttons .complete-quiz,.lp-quiz-buttons .back-quiz,.lp-quiz-buttons .review-quiz{float:left}.quiz-result .result-grade{display:flex;flex-direction:column;position:relative;box-sizing:border-box;height:200px;margin-bottom:30px;padding:50px;justify-content:center;align-items:center;-webkit-transform:none !important;-moz-transform:none !important;-ms-transform:none !important;-o-transform:none !important;transform:none !important}.quiz-result .result-grade::before,.quiz-result .result-grade svg{position:absolute;top:0;right:50%;width:200px;height:200px;margin-right:-100px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.quiz-result .result-grade::before{box-sizing:border-box;padding:30px;border:10px solid #ccc;content:""}.quiz-result .result-grade svg{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.quiz-result .result-grade svg circle{stroke:var(--lp-primary-color)}.quiz-result.passed .result-grade svg{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.quiz-result.passed .result-grade .result-achieved{color:#333}.quiz-result.passed .result-grade .result-message strong{color:#4caf50}.quiz-questions .question{margin-bottom:60px}.question .answer-option{padding:0;_border:2px solid #d9e0f1;background:#fff}.question .answer-option input[type=radio],.question .answer-option input[type=checkbox]{position:absolute;top:50%;margin:-19px 10px 0 0;border-color:#d9e0f1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question .answer-option input[type=radio]::after,.question .answer-option input[type=checkbox]::after{border-color:#d9e0f1}.question .answer-option input[type=radio]:disabled,.question .answer-option input[type=checkbox]:disabled{border-color:#ddd;background:#f9f9f9}.question .answer-option input[type=radio]:disabled::after,.question .answer-option input[type=checkbox]:disabled::after{border-color:#ddd}.question .answer-option input[type=radio]:checked:not(:disabled)::after,.question .answer-option input[type=checkbox]:checked:not(:disabled)::after{border-color:#99aee4}.question .answer-option input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.question .answer-option input[type=radio]::before{border-radius:50%}.question .answer-option .option-title{display:flex;width:100%;margin:0;padding:14px 65px 11px 10px;border:1px solid #ccc;color:#666;background:#fff;font-size:16px;font-weight:300;line-height:26px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question .answer-option .option-title::after{display:inline-block;visibility:hidden !important;content:"."}.question .answer-option .option-title:hover{background:#f9f9f9}.question .answer-option .option-title::before{display:none}.question .answer-option.answer-correct .option-title{border-color:#4caf50}.question .answer-option.answered-wrong .option-title{border-color:#ff6423}.question .question-title{display:block;margin-top:0;margin-bottom:18px;color:#333;font-size:18px;font-weight:500}.question .question-title .edit-link{float:left;font-size:14px;font-weight:normal}.question .question-content{margin-bottom:30px;color:#666;font-size:16px;font-weight:300;line-height:26px}.question .question-content img{width:100%;max-width:100%}.question .question-response{margin-bottom:10px;font-size:14px}.question .question-response .label{display:inline-block;margin:0 0 0 5px;padding:8px 10px;border-radius:4px;color:#fff;line-height:1}.question .question-response .point{display:inline-block}.question .question-response.correct .label{background:#4caf50}.question .question-response.incorrect .label{background:#ff6423}.question .question-index{display:inline-block;margin:0 0 0 5px}.question .btn-show-hint{position:relative;margin:0 10px 0 0;padding:0;outline:0;color:#00adff;background:transparent;font-size:0;text-decoration:none}.question .btn-show-hint::before{font-family:"Font Awesome 5 Free";font-size:18px;content:"\f059"}.question .btn-show-hint:hover span{position:absolute;bottom:100%;right:0;width:auto;padding:6px 9px;border-radius:2px;color:#333;background:#eee;font-size:14px;font-weight:400;line-height:1;white-space:nowrap;text-transform:none}.question.question-fill_in_blanks .blanks .blank-input-wrap{display:inline-block}.question.question-fill_in_blanks .blanks .blank-block{margin-bottom:20px}.question.question-fill_in_blanks .blanks .blank-input{display:inline-block;width:auto;min-width:50px;margin:0 10px;padding:0 10px;border:0;border-bottom:1px dashed #ddd;text-align:center;white-space:nowrap}.question.question-fill_in_blanks .blanks .blank-input br{display:none}.question.question-fill_in_blanks .blanks .blank-input>*{display:inline;white-space:nowrap}.question.question-fill_in_blanks .blanks .blank-select{display:inline-block;height:30px;margin-right:4px;padding:1px}.question.question-fill_in_blanks .blanks .blank-fills{display:inline-block}.question.question-fill_in_blanks .blanks .blank-fills code{margin:0 5px;padding:0 6px;background:#ddd;line-height:1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question.question-fill_in_blanks .blanks.ordered{list-style-position:inside}.question.question-fill_in_blanks .blanks.one-paragraph{line-height:3}.lp-sort-bg label.option-title{background:rgba(255,182,6,0.68) !important}.learn-press-message.fixed{position:fixed;top:32px;right:0;left:0;background:rgba(0,173,255,0.6);text-align:center;z-index:100;color:#FFF;padding:10px}.learn-press-message.fixed[data-delay-in]{display:none}.lp-archive-courses ul{list-style-type:revert;padding:0 1em 23px 0}.lp-archive-courses ul.learn-press-breadcrumb,.lp-archive-courses ul.course-nav-tabs{list-style:none;padding:0}@media(max-width:768px){.lp-archive-courses ul.learn-press-breadcrumb,.lp-archive-courses ul.course-nav-tabs{padding-right:15px;padding-left:15px}}.lp-archive-courses ul,.lp-archive-courses ol{list-style-type:decimal;list-style-position:inside;padding:0 0 23px}.lp-archive-courses ol ul{padding:2px 35px 2px 0}.lp-archive-courses ol ol{padding:2px 20px 2px 0}.lp-archive-courses thead th,.lp-archive-courses tr th{padding:9px 24px}.lp-archive-courses tr td{border-top:1px solid #eee;padding:6px 24px}.learnpress #left-area ul,.learnpress .entry-content ul,.learnpress .et-l--body ul,.learnpress .et-l--footer ul,.learnpress .et-l--header ul{padding:0 !important;list-style:none !important}.learnpress.dt-the7 .learn-press-filters{margin-bottom:20px}.learnpress.dt-the7 .learn-press-courses[data-size="3"] .course{width:50%}.bridge.learnpress .lp-archive-courses{margin-top:100px}.bridge.learnpress .lp-archive-courses ul.learn-press-breadcrumb{padding-top:45px}.bridge.learnpress .content{z-index:110}.bridge.learnpress .comment-respond .comment-form{margin:0}.bridge.learnpress .comment-respond .comment-form>p,.bridge.learnpress .comment-respond .comment-form>div{padding:0}.bridge.learnpress.learnpress-profile .content{z-index:100}.bridge.learnpress #learn-press-item-comments{background:#f6f6f6}.learnpress.ast-separate-container .ast-article-single{padding-right:15px;padding-left:15px}body.learnpress-page.twentysixteen #primary .lp-entry-content{float:none;width:auto;margin:0 15%}body.learnpress-page.twentyfifteen .course-summary-sidebar .widget{width:100%;padding:0}body.learnpress-page.twentysixteen .entry-footer{display:none}body.learnpress-page.twentysixteen .lp-entry-content{float:none;width:auto}body.learnpress-page.twentyseventeen #primary article.type-page{width:100%}@media screen and (min-width:61.5625em){body.twentysixteen.learnpress-page .entry-footer{display:none}body.twentysixteen.learnpress-page .lp-entry-content{float:none;width:auto}body:not(.search-results) article:not(.type-page) .entry-footer{display:none}body:not(.search-results) article:not(.type-page) .lp-entry-content{float:none;width:auto}}body.twentyseventeen.learnpress-page #primary article.page .entry-header,body.twentyseventeen.learnpress-page #primary article.page .lp-entry-content{width:100%;float:none}@media screen and (min-width:48em){body.twentyseventeen.learnpress-page #primary article.page .entry-header,body.twentyseventeen.learnpress-page #primary article.page .lp-entry-content{width:100%;float:none}}.learn-press-tip{display:none;margin:0 5px;color:#444;font-size:13px;font-style:normal;line-height:1;vertical-align:baseline;cursor:pointer}.learn-press-tip.ready{display:inline-block}.learn-press-tip::before{font-family:"Font Awesome 5 Free";content:"\f059"}.learn-press-tip:hover{opacity:.8}.learn-press-tip-floating{position:absolute;z-index:9999999;min-width:20px;margin-right:-1px;padding:.618em 1em;color:#fff;background:#383838;font-size:12px;line-height:1.2em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.learn-press-tip-floating>*{font-size:12px}.learn-press-tip-floating .close{display:inline-block;position:absolute;top:-8px;left:-8px;width:16px;height:16px;border:1px solid #fff;color:#fff;background:#468fbc;line-height:16px;text-align:center;cursor:pointer;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.learn-press-tip-floating .close::before{font-family:"Font Awesome 5 Free";content:"\f00d"}.learn-press-tip-floating p{margin:0}.learn-press-tip-floating::before{position:absolute;bottom:-6px;right:50%;width:0;height:0;margin-right:-6px;border:6px solid transparent;border-top-color:#383838;border-bottom-width:0;content:""}body.lp-preview.admin-bar #learn-press-content-item{top:32px !important}body.lp-preview #learn-press-course-curriculum{display:none}body.lp-preview #learn-press-content-item{top:0 !important;right:0 !important}@-webkit-keyframes rotating4{from{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@keyframes rotating4{from{-ms-transform:rotate(0);-moz-transform:rotate(0);-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-ms-transform:rotate(-360deg);-moz-transform:rotate(-360deg);-webkit-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@-webkit-keyframes animation4{from{right:-40%;width:40%}to{right:100%;width:10%}}@keyframes animation4{from{right:-40%;width:40%}to{right:100%;width:10%}}#popup_container{opacity:0;transform:scale(0.5)}body.confirm #popup_overlay{z-index:999998 !important}body.confirm #popup_container{z-index:999999 !important;max-width:90% !important;min-width:300px !important;padding:10px !important;background:#f5f5f5;transition:opacity .25s;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}body.confirm #popup_container #popup_title{display:none !important}body.confirm #popup_container #popup_message{margin:-10px;background:#FFF;padding:20px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}body.confirm #popup_container .close{position:absolute;top:3px;left:10px}body.confirm #popup_container #popup_panel{margin-top:20px;text-align:center}body.confirm #popup_container #popup_panel button,body.confirm #popup_container #popup_panel input[type=button],body.confirm #popup_container #popup_panel input[type=submit]{height:30px;line-height:30px;padding:0 25px}body.confirm #popup_container #popup_cancel{display:none}body.confirm #popup_container.ready{opacity:1;transform:scale(1)}a{text-decoration:none}.lp-content-area{width:100%;max-width:1170px;margin:0 auto}@media(max-width:1024px){.lp-content-area{padding-left:15px;padding-right:15px}}.lp-content-area::after,.lp-content-area::before{display:table;clear:both;content:""}.lp-archive-courses{width:100%;scroll-margin:30px}.lp-archive-courses.loading ul.learn-press-courses{position:relative}.lp-archive-courses.loading ul.learn-press-courses::before,.lp-archive-courses.loading ul.learn-press-courses::after{content:"";position:absolute;top:0;bottom:0;right:15px;left:15px}.lp-archive-courses.loading ul.learn-press-courses::after{z-index:3;background:#f3f3f3;background:linear-gradient(-90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);background-size:400% 100%;list-style:none;animation:lp-skeleton-loading 1.4s ease infinite}.lp-archive-courses.loading ul.learn-press-courses::before{z-index:2;opacity:.8%;background:#fff}.lp-archive-courses form[name=search-course]{position:relative;margin-bottom:20px}.lp-archive-courses form[name=search-course] .search-course-input{width:100%;padding:12px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.lp-archive-courses form[name=search-course] .search-course-button{position:absolute;top:1px;left:1px;bottom:1px;height:auto;padding:15px;line-height:1px}.lp-archive-courses .learn-press-courses-header{float:right;padding-top:4px}.lp-archive-courses .learn-press-courses-header h1{margin:0;font-size:30px;font-weight:600}@media(max-width:767px){.lp-archive-courses .learn-press-courses-header{margin-bottom:20px}}.lp-archive-courses .course-item{flex-direction:column;display:flex;transition:all .3s}.lp-archive-courses .course-item:hover .course-thumbnail .thumbnail::before{opacity:1}.lp-archive-courses .course-item:hover .course-thumbnail a img{transform:scale(1.05)}.lp-archive-courses .course-item:hover .course-wishlist{opacity:1}.lp-archive-courses .course-item .course-wishlist.filled{opacity:1}.lp-archive-courses .course-item .course-instructor{float:right;margin-bottom:16px;font-size:14px;font-weight:300;line-height:25px;text-transform:capitalize}.lp-archive-courses .course-item .course-instructor a{color:#059de9}.lp-archive-courses .course-item .course-instructor a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-content{position:relative;border-top:0}.lp-archive-courses .course-content .course-permalink{display:-webkit-box;clear:both;overflow:hidden;position:relative;border:0;color:#fff;text-decoration:none;text-transform:none;-webkit-line-clamp:2;-webkit-box-orient:vertical;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.lp-archive-courses .course-content .course-permalink:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.lp-archive-courses .course-content .course-review{display:none}.lp-archive-courses .course-content .course-categories,.lp-archive-courses .course-content .course-tags{display:block;font-size:14px;font-weight:300}.lp-archive-courses .course-content .course-categories{float:right;position:relative;margin-left:10px;margin-bottom:16px}.lp-archive-courses .course-content .course-categories a{display:inline-block;display:none;margin:0 10px;color:#fff;text-decoration:none}.lp-archive-courses .course-content .course-categories a:first-child{display:block;margin-right:0;padding:2px 16px;background:var(--lp-primary-color)}.lp-archive-courses .course-content .course-categories a:hover{color:#333}.lp-archive-courses .course-content .course-categories::after{position:absolute;top:50%;left:-2px;width:1px;height:12px;opacity:.5;background:#999;content:"";transform:translate(0,-50%)}.lp-archive-courses .course-content .course-info{color:#666;font-size:14px;font-weight:300}.lp-archive-courses .course-content .course-info>span{display:block}.lp-archive-courses .course-content .course-info .course-price{float:left}.lp-archive-courses .course-content .course-info .course-price .origin-price,.lp-archive-courses .course-content .course-info .course-price .price{color:#333;font-size:16px;font-weight:600}.lp-archive-courses .course-content .course-info .course-price .origin-price{margin-left:10px;color:#666;font-size:14px;font-weight:300;text-decoration:line-through}.lp-archive-courses .course-content .course-info .course-instructor{float:left}.lp-archive-courses .course-content .course-info::after{display:block;clear:both;content:""}.lp-archive-courses .course-content .course-excerpt{display:-webkit-box;overflow:hidden;margin-bottom:28px;color:#666;font-size:16px;font-weight:300;line-height:26px;-webkit-line-clamp:2;-webkit-box-orient:vertical}.lp-archive-courses .course-content .separator{display:none}.lp-archive-courses .course-wrap-thumbnail{overflow:hidden;position:relative}.lp-archive-courses .course-wrap-thumbnail .lp-badge.featured{position:absolute;z-index:100;top:28px;right:-110px;width:300px;text-align:center;transform:rotate(45deg)}.lp-archive-courses .course-wrap-thumbnail .course-wishlist{position:absolute;z-index:2;top:6px;left:6px;opacity:0;color:#fff;cursor:pointer}.lp-archive-courses .course-wrap-thumbnail .course-wishlist::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f004"}.lp-archive-courses .course-wrap-thumbnail .course-wishlist .course-wishlist__btn{display:none}.lp-archive-courses .course-wrap-thumbnail .course-wishlist:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-wrap-thumbnail:hover::before{opacity:1}.lp-archive-courses .course-wrap-thumbnail:hover .course-thumbnail a img{transform:scale(1.05)}.lp-archive-courses .course-wrap-thumbnail:hover .course-wishlist{opacity:1}.lp-archive-courses .course-thumbnail a{display:block;overflow:hidden}.lp-archive-courses .course-thumbnail .thumbnail{margin:0;padding:0;border:0;border-radius:unset;line-height:unset}.lp-archive-courses .course-thumbnail .thumbnail::before{position:absolute;z-index:1;top:0;left:0;bottom:0;right:0;opacity:0;background:rgba(0,0,0,0.5);content:"";transition:all .3s}.lp-archive-courses .course-thumbnail img{display:block;width:100%;height:auto;transition:all .5s ease;transform:scale(1)}.lp-archive-courses .course-title{margin:0;padding:0;color:#333;font-size:16px;font-weight:600;line-height:24px}.lp-archive-courses .course-title:hover{color:var(--lp-primary-color)}@media(min-width:769px){.lp-archive-courses .course-summary-content .course-info-left{width:calc(100% - 330px)}}.lp-archive-courses .course-summary-content .course-title{margin-bottom:42px;color:#fff;font-size:1.5rem;font-weight:500;line-height:1}.lp-archive-courses .course-summary-content .course-meta.course-meta-secondary{margin-bottom:0}@media(max-width:768px){.lp-archive-courses .course-summary-content{width:100%}}.lp-archive-courses .course-detail-info{padding:40px 0 10px 0;color:#fff;background:var(--lp-secondary-color);position:relative}.lp-archive-courses .course-detail-info::before,.lp-archive-courses .course-detail-info::after{content:"";width:50%;height:100%;background:var(--lp-secondary-color);position:absolute;top:0}.lp-archive-courses .course-detail-info::before{left:100%;right:auto}.lp-archive-courses .course-detail-info::after{right:100%;left:auto}.lp-archive-courses .course-meta__pull-left .meta-item{display:flex;height:46px;margin-left:50px;font-size:16px;font-weight:300;text-transform:capitalize}.lp-archive-courses .course-meta__pull-left .meta-item span{padding-left:4px;padding-right:0}.lp-archive-courses .course-meta__pull-left .meta-item:last-child{margin-left:0}.lp-archive-courses .course-meta__pull-left .meta-item::before{margin-left:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900}.lp-archive-courses .course-meta__pull-left .meta-item .meta-item__image{margin-left:10px;flex:0 0 46px}.lp-archive-courses .course-meta__pull-left .meta-item .meta-item__image img{overflow:hidden;position:relative;width:46px;height:46px;border-radius:50%}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-duration::before{content:"\f017"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-level::before{content:"\f012"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-lesson::before{content:"\f0c5"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-quiz::before{content:"\f12e"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-student::before{content:"\f501"}@media(max-width:1024px){.lp-archive-courses .course-meta__pull-left .meta-item{margin-left:30px}}@media(max-width:767px){.lp-archive-courses .course-meta__pull-left .meta-item{margin-left:0}}.lp-archive-courses .course-meta__pull-left .meta-item__value label{margin:0;color:#999;font-size:14px;font-weight:300;line-height:1.5}.lp-archive-courses .course-meta__pull-left .meta-item__value>div{line-height:1.5}.lp-archive-courses .course-meta__pull-left .meta-item__value>div a{color:#fff;font-size:16px;font-weight:400;text-transform:capitalize}.lp-archive-courses .course-meta__pull-left .meta-item__value>div a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-meta__pull-left .meta-item-categories{align-items:center}.lp-archive-courses .course-meta__pull-left .meta-item-categories::before{margin-left:10px;font-size:36px;content:"\f02e"}.lp-archive-courses .course-meta__pull-left .meta-item-categories .meta-item__value div span{padding:0 5px}.lp-archive-courses .course-meta__pull-left .meta-item-categories .meta-item__value div a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-meta__pull-left .meta-item-review .meta-item__value{display:flex;flex-direction:column-reverse;justify-content:flex-end;align-items:flex-end}.lp-archive-courses .course-meta__pull-left .meta-item-review .meta-item__value .review-stars-rated{margin-bottom:0;line-height:1}@media(max-width:767px){.lp-archive-courses .course-meta__pull-left{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px}}.lp-archive-courses .course-meta-primary{margin-bottom:36px}.lp-archive-courses .course-meta-primary .meta-item-categories::before{font-weight:400}.lp-archive-courses .lp-entry-content{display:flex;flex-direction:row}.lp-archive-courses .lp-entry-content .entry-content-left{width:calc(100% - 300px);max-width:100%;margin:0;padding-left:40px;padding-top:60px}@media(max-width:768px){.lp-archive-courses .lp-entry-content .entry-content-left{width:100%;padding-left:0;margin-bottom:50px}}@media(max-width:768px){.lp-archive-courses .lp-entry-content{flex-direction:column}}.lp-archive-courses .course-summary-sidebar{width:300px;max-width:100%;margin-top:-272px}@media(max-width:768px){.lp-archive-courses .course-summary-sidebar{width:100%;margin-top:0}.lp-archive-courses .course-summary-sidebar .course-summary-sidebar__inner{width:100%}}@media(max-width:767px){.lp-archive-courses .course-summary-sidebar{width:100%;padding-right:0}}.lp-archive-courses .course-summary-sidebar__inner{width:300px}.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-top{box-shadow:0 15px 20px 0 rgba(0,0,0,0.05)}.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-secondary{margin-top:30px;padding:0}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist{color:#fff;background:transparent !important;font-size:0}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist.on,.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist::before{font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900;content:"\f004"}.lp-archive-courses .course-summary-sidebar__inner>div{overflow:hidden;padding:20px;background:#fff}.lp-archive-courses .course-summary-sidebar__inner>div ul{list-style:none}.lp-archive-courses .course-summary-sidebar__inner>div ul li a{color:#666;font-size:16px;font-weight:300;line-height:24px}.lp-archive-courses .course-summary-sidebar__inner>div ul li a:hover{color:var(--lp-primary-color);box-shadow:unset}.learn-press-courses{clear:both;margin:0 -15px;padding:0 !important;min-height:300px;list-style:none;position:relative;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.learn-press-courses .course{width:25%;margin:0 0 60px 0;box-shadow:none;list-style:none}.learn-press-courses[data-layout=list]{margin:0}.learn-press-courses[data-layout=list] .course{display:flex;width:100%;padding:24px;border:1px solid rgba(204,204,204,0.3);border-radius:4px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:767px){.learn-press-courses[data-layout=list] .course{padding:15px}}.learn-press-courses[data-layout=list] .course-item{flex-direction:row;width:100%;border:unset;justify-content:space-between}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-item{flex-direction:column}}.learn-press-courses[data-layout=list] .course-content{float:left;width:calc(64.2% - 76px);padding-top:5px}@media(max-width:1200px){.learn-press-courses[data-layout=list] .course-content{width:calc(64.2% - 40px)}}@media(max-width:1200px){.learn-press-courses[data-layout=list] .course-content{width:calc(64.2% - 25px)}}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content{width:100%;padding-top:20px}}.learn-press-courses[data-layout=list] .course-content .course-categories a{position:relative;padding:2px 15px 2px 20px;-webkit-clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%)}.learn-press-courses[data-layout=list] .course-content .course-permalink{height:25px;margin-bottom:5px;-webkit-line-clamp:1}.learn-press-courses[data-layout=list] .course-content .course-tags a{margin:0 0 10px 10px;padding:3px 5px;border-radius:3px;color:#fff;background:#e4a2a2;line-height:1}.learn-press-courses[data-layout=list] .course-content .course-footer{float:right;margin-left:20px}.learn-press-courses[data-layout=list] .course-content .course-footer .course-students{display:none}.learn-press-courses[data-layout=list] .course-content .course-footer .course-price{float:unset}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content .course-footer{margin-bottom:30px}}.learn-press-courses[data-layout=list] .course-content .course-readmore{float:left;position:relative;left:4px}.learn-press-courses[data-layout=list] .course-content .course-readmore a{padding:9px 24px;border-radius:3px;color:#fff;background:var(--lp-primary-color);font-weight:400;line-height:1;transition:all .3s;display:block}.learn-press-courses[data-layout=list] .course-content .course-readmore a:hover{opacity:.5;background:var(--lp-primary-color)}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content .course-readmore{display:flex;float:unset;clear:both}}.learn-press-courses[data-layout=list] .course-wrap-meta{display:flex;padding-top:12px;padding-bottom:18px;color:#333;font-size:14px;font-weight:400}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-left:28px;text-transform:capitalize}@media(max-width:1024px){.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-left:20px}}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item::before{position:relative;top:-1px;margin-left:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-level::before{content:"\f012"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-duration::before{content:"\f017"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-lesson::before{content:"\f0c5"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-quiz::before{content:"\f12e"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-student::before{content:"\f501"}@media(max-width:815px){.learn-press-courses[data-layout=list] .course-wrap-meta{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:15px}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-left:15px}}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-wrap-meta{grid-template-columns:repeat(3,1fr)}}.learn-press-courses[data-layout=list] .course-wrap-thumbnail{float:right;width:35.8%}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-wrap-thumbnail{width:100%}}.learn-press-courses[data-layout=list] .course-title{font-size:18px}.learn-press-courses[data-layout=grid] .course{padding:0 15px}@media(max-width:992px){.learn-press-courses[data-layout=grid] .course{width:50%}}@media(max-width:767px){.learn-press-courses[data-layout=grid] .course{width:100%}}.learn-press-courses[data-layout=grid] .course-item:hover{box-shadow:0 15px 20px 0 rgba(0,0,0,0.2)}.learn-press-courses[data-layout=grid] .course-item .course-instructor{margin-bottom:7px}.learn-press-courses[data-layout=grid] .course-content{padding:15px 20px 12px 20px;border:1px solid #f0f0f0;border-top:0;flex-grow:1}.learn-press-courses[data-layout=grid] .course-content .course-categories{float:left;position:absolute;z-index:1;top:-34px;left:-1px;margin-left:0}.learn-press-courses[data-layout=grid] .course-content .course-categories::after{display:none}.learn-press-courses[data-layout=grid] .course-content .course-categories a{position:relative;margin:0;padding:2px 22px 2px 12px;-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%)}.learn-press-courses[data-layout=grid] .course-content .course-permalink{height:48px;margin-bottom:20px}.learn-press-courses[data-layout=grid] .course-content .course-info{display:flex;flex-direction:column;flex-grow:1}.learn-press-courses[data-layout=grid] .course-content .course-wrap-meta,.learn-press-courses[data-layout=grid] .course-content .course-excerpt,.learn-press-courses[data-layout=grid] .course-content .course-readmore{display:none}.learn-press-courses[data-layout=grid] .course-content .course-footer{padding-top:18px;border-top:1px solid rgba(153,153,153,0.2)}.learn-press-courses[data-layout=grid] .course-content .course-footer .course-students{float:right;text-transform:capitalize}.learn-press-courses[data-layout=grid] .course-content .course-footer .course-students::before{position:relative;top:-1px;margin-left:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900;content:"\f501"}.learn-press-courses[data-layout=grid] .learn-press-message{margin-right:15px;margin-left:15px}.learn-press-courses[data-size="3"] .course{width:33.3333%}@media(max-width:767px){.learn-press-courses[data-size="3"] .course{width:100%}}.learn-press-courses .lp-archive-course-skeleton{position:absolute;height:100%;background:linear-gradient(-90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);animation:lp-skeleton-loading 1.4s ease infinite;background-size:400% 100%}.learn-press-courses .lp-archive-course-skeleton li{display:none}.lp-courses-bar{display:flex;float:left;margin-bottom:48px}@media(max-width:767px){.lp-courses-bar{flex-direction:row;width:100%;justify-content:space-between}}.lp-courses-bar .search-courses{position:relative;width:306px;max-width:100%;margin-left:20px;line-height:1;flex:1}.lp-courses-bar .search-courses input[type=text]{width:100%;height:44px;padding:6px 18px 6px 32px;border:1px solid #ccc;border-radius:5px;background:#fff;font-size:14px;font-style:italic;line-height:1}.lp-courses-bar .search-courses input[type=text]:focus{border-color:var(--lp-primary-color);outline:0}.lp-courses-bar .search-courses button{position:absolute;top:50%;left:12px;width:30px;height:30px;padding:0;border:0;color:#333;background:transparent;font-size:16px;line-height:1;transform:translate(0,-50%)}.lp-courses-bar .search-courses button:focus{border:0;outline:0}.lp-courses-bar .search-courses button.loading>i::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.lp-courses-bar .search-courses ::-webkit-input-placeholder{color:#999}.lp-courses-bar .search-courses :-ms-input-placeholder{color:#999}.lp-courses-bar .search-courses ::placeholder{color:#999}@media(max-width:767px){.lp-courses-bar .search-courses{width:100%}}.lp-courses-bar .switch-layout{display:flex;height:44px;line-height:1;text-align:left;flex:0 0 40px;align-items:center;justify-content:center}.lp-courses-bar .switch-layout input[type=radio]{display:none}.lp-courses-bar .switch-layout .switch-btn{display:block;width:40px;height:40px;margin:0;padding:0;border-radius:5px;font-size:16px;line-height:40px;text-align:center;cursor:pointer}.lp-courses-bar .switch-layout .switch-btn::before{display:inline-block;margin:8px 6px;color:#333;font-family:"Font Awesome 5 Free";font-weight:900;line-height:1}.lp-courses-bar .switch-layout .switch-btn.grid::before{content:"\f00a"}.lp-courses-bar .switch-layout .switch-btn.list{margin-right:3px}.lp-courses-bar .switch-layout .switch-btn.list::before{content:"\f03a"}input[type=radio]:nth-child(1):checked ~ .switch-btn:nth-child(2){background:#f5f5f5}input[type=radio]:nth-child(1):checked ~ .switch-btn:nth-child(2)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(3):checked ~ .switch-btn:nth-child(4){background:#f5f5f5}input[type=radio]:nth-child(3):checked ~ .switch-btn:nth-child(4)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(5):checked ~ .switch-btn:nth-child(6){background:#f5f5f5}input[type=radio]:nth-child(5):checked ~ .switch-btn:nth-child(6)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(7):checked ~ .switch-btn:nth-child(8){background:#f5f5f5}input[type=radio]:nth-child(7):checked ~ .switch-btn:nth-child(8)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(9):checked ~ .switch-btn:nth-child(10){background:#f5f5f5}input[type=radio]:nth-child(9):checked ~ .switch-btn:nth-child(10)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(11):checked ~ .switch-btn:nth-child(12){background:#f5f5f5}input[type=radio]:nth-child(11):checked ~ .switch-btn:nth-child(12)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(13):checked ~ .switch-btn:nth-child(14){background:#f5f5f5}input[type=radio]:nth-child(13):checked ~ .switch-btn:nth-child(14)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(15):checked ~ .switch-btn:nth-child(16){background:#f5f5f5}input[type=radio]:nth-child(15):checked ~ .switch-btn:nth-child(16)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(17):checked ~ .switch-btn:nth-child(18){background:#f5f5f5}input[type=radio]:nth-child(17):checked ~ .switch-btn:nth-child(18)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(19):checked ~ .switch-btn:nth-child(20){background:#f5f5f5}input[type=radio]:nth-child(19):checked ~ .switch-btn:nth-child(20)::before{color:var(--lp-primary-color)}.lp_allow_repuchase_select{padding:20px;background:#f7f7f7}.lp_allow_repuchase_select>ul{padding:0;list-style:none}.lp_allow_repuchase_select>a{display:inline-block;margin-top:10px;color:#fff;background-color:#222}.comment-respond .comment-reply-title{font-size:30px;font-weight:500;line-height:1.2;margin-bottom:15px}.comment-respond .comment-form{margin:0 -15px}.comment-respond .comment-form>p label{display:block;margin-bottom:10px;font-size:16px;font-weight:500}.comment-respond .comment-form>p.comment-notes,.comment-respond .comment-form>p.logged-in-as{color:#666;font-size:16px}.comment-respond .comment-form>p.logged-in-as a{color:#666;text-decoration:underline}.comment-respond .comment-form>p.logged-in-as a:hover,.comment-respond .comment-form>p.logged-in-as a:focus{color:var(--lp-primary-color)}.comment-respond .comment-form>p.comment-form-cookies-consent{clear:both}.comment-respond .comment-form>p.comment-form-cookies-consent input{padding:0;margin-left:8px}.comment-respond .comment-form>p.comment-form-cookies-consent label{display:inline}.comment-respond .comment-form>p,.comment-respond .comment-form>div{padding:0 15px;margin-bottom:15px}.comment-respond .comment-form input[type=text],.comment-respond .comment-form input[type=email],.comment-respond .comment-form input[type=url]{height:40px;line-height:normal;width:100% !important;margin-bottom:15px}.comment-respond .comment-form input[type=submit]{background-color:var(--lp-primary-color);border:0;min-height:40px;line-height:40px;padding:0 15px;font-size:16px;text-transform:capitalize;font-weight:500;margin-top:15px;cursor:pointer;color:white}.comment-respond .comment-form .comment-form-author,.comment-respond .comment-form .comment-form-email,.comment-respond .comment-form .comment-form-url{width:33.33%;float:right}@media(max-width:575px){.comment-respond .comment-form .comment-form-author,.comment-respond .comment-form .comment-form-email,.comment-respond .comment-form .comment-form-url{width:100%;float:unset}}.comment-respond .comment-form textarea,.comment-respond .comment-form input{border:1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;max-width:100%}.comment-respond .comment-form textarea{width:100%;display:block;padding:20px 15px;resize:none}.course-summary-sidebar .course-sidebar-preview{margin-bottom:35px;background:#fff}.course-summary-sidebar .lp-course-buttons{margin-bottom:34px}.course-summary-sidebar .lp-course-buttons>*{margin-bottom:10px}.course-summary-sidebar .lp-course-buttons>*:last-child{margin-bottom:0}.course-summary-sidebar .lp-course-buttons form,.course-summary-sidebar .lp-course-buttons button{width:100%;text-decoration:none}.course-summary-sidebar .lp-course-buttons button{font-weight:500}.course-summary-sidebar .lp-course-buttons button:hover{border-color:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course:hover{opacity:.5;background:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}.course-summary-sidebar .lp-course-buttons button ~ .lp-enroll-notice{margin-top:20px;padding:20px;border:2px solid #059601;border-radius:9px;font-size:15px;line-height:1.4}.course-summary-sidebar .lp-course-buttons button ~ .lp-enroll-notice.error{border-color:#d85554}.course-summary-sidebar .course-results-progress .items-progress,.course-summary-sidebar .course-results-progress .course-progress{display:flex;flex-direction:row;margin:0 0 5px;padding:0;justify-content:space-between;flex-wrap:wrap}.course-summary-sidebar .course-results-progress .items-progress__heading,.course-summary-sidebar .course-results-progress .course-progress__heading{margin:0;margin-bottom:7px;padding:0;color:#333;font-size:1rem;font-weight:500;flex:1 1 auto;width:auto}.course-summary-sidebar .course-results-progress .items-progress .learn-press-progress,.course-summary-sidebar .course-results-progress .course-progress .learn-press-progress{clear:both;width:100%}.course-summary-sidebar .course-results-progress .number{display:block;margin:0;color:#666;font-size:16px;font-weight:300;line-height:16px;text-align:left}.course-sidebar-preview .course-price{text-align:center}.course-sidebar-preview .course-price .origin-price{color:#666;font-size:18px;font-weight:300;font-style:unset}.course-sidebar-preview .course-price .price{color:#333;font-size:1.8rem;font-weight:500}.course-sidebar-preview .media-preview{overflow:hidden;position:relative;margin:-20px -20px 20px}.course-sidebar-preview .media-preview img{max-width:100%;height:auto;vertical-align:top}.course-sidebar-preview .course-time{margin-bottom:28px;padding-bottom:8px;border-bottom:1px solid rgba(204,204,204,0.3)}.course-sidebar-preview .course-time-row{display:flex;color:#666;font-size:16px;font-weight:300;justify-content:space-between}.course-sidebar-preview .course-time-row strong{color:#333;font-weight:500}.course-sidebar-preview .course-time-row time{color:#666;font-size:1rem;font-weight:300;line-height:24px}.course-sidebar-preview>*:last-child{margin-bottom:0}.learnpress-page .lp-button.secondary{background:#9198ab}.learnpress-page .lp-button.secondary:hover{background:#9ba6c5}.learnpress-page .lp-button:disabled,.learnpress-page .lp-button[disabled]{background:#ddd;pointer-events:none}.learnpress-page:hover{text-decoration:none}#popup-course{display:flex;position:fixed;z-index:99999;top:0;left:0;bottom:0;right:0;background:#fff}#popup-course .back-course{padding-right:30px;padding-left:30px;line-height:70px;background:rgba(255,255,255,0.1);color:#fff}#popup-course .back-course:hover{background:rgba(255,255,255,0.15)}@media(max-width:768px){#popup-course .back-course{background:transparent;opacity:.6;padding-right:15px;padding-left:15px}#popup-course .back-course:hover{background:transparent;opacity:1}}#popup-course #popup-header{display:flex;position:fixed;z-index:100;left:0;right:475px;padding:0;border-bottom:1px solid #d9e0f1;background:var(--lp-secondary-color);-webkit-transition:right .25s;-moz-transition:right .25s;-ms-transition:right .25s;-o-transition:right .25s;transition:right .25s}#popup-course #popup-header .course-title{margin:0;padding:0;line-height:70px;letter-spacing:unset}#popup-course #popup-header .course-title a{display:-webkit-box;overflow:hidden;color:#fff;font-size:16px;font-weight:400;text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical}#popup-course #popup-header .course-title a:hover{color:var(--lp-primary-color)}@media(max-width:768px){#popup-course #popup-header .course-title{flex:1}}#popup-course #popup-header .items-progress{display:flex;justify-content:center;align-items:center;column-gap:10px}@media(max-width:768px){#popup-course #popup-header .items-progress{flex:1}}@media(max-width:767px){#popup-course #popup-header .items-progress{padding-bottom:20px;justify-content:end}}#popup-course #popup-header .number{padding-left:10px;color:#fff;font-size:14px;font-weight:300}#popup-course #popup-header .lp-button{display:flex;position:relative;height:40px;margin:9px;border:0;color:#fff;background:var(--lp-primary-color);font-size:14px;font-weight:400;justify-content:center;line-height:40px;align-items:center}#popup-course #popup-header .lp-button:hover{opacity:.8}#popup-course #popup-header .lp-button-back{float:left;margin:9px 10px}#popup-course #popup-header .lp-button-back button::before,#popup-course #popup-header .lp-button-back button::after{content:""}#popup-course #popup-header .lp-button-back button::before{border:1px solid #ddd}#popup-course #popup-header .lp-button-back button::after{border:1px solid #ddd}#popup-course .popup-header__inner{display:flex;width:792px;margin:0 auto;justify-content:space-between;align-items:center;padding-right:15px;padding-left:15px}@media(max-width:1024px){#popup-course .popup-header__inner{width:100%}}@media(max-width:767px){#popup-course .popup-header__inner{flex-direction:column}}#popup-course #popup-sidebar{overflow:auto;position:relative;box-shadow:0 15px 30px 0 rgba(0,0,0,0.1);flex:0 0 475px;-webkit-transition:.25s;-moz-transition:.25s;-ms-transition:.25s;-o-transition:.25s;transition:.25s}#popup-course #popup-sidebar .search-course{display:flex;position:relative;height:70px;background:#f9fafc}#popup-course #popup-sidebar .search-course input[name=s]{display:block;width:100%;margin:6px 0;padding-right:20px;border:0;color:#999;background:transparent;box-shadow:none;font-size:14px;line-height:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#popup-course #popup-sidebar .search-course input[name=s]::-webkit-input-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::-moz-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]:-ms-input-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]:-moz-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::-webkit-input-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]::-moz-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:-ms-input-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:-moz-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]::placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:focus{outline:0;color:#222}#popup-course #popup-sidebar .search-course button{position:absolute;top:0;left:10px;width:16px;height:70px;margin:0 10px;padding:0;border:0;background:transparent;line-height:1px}#popup-course #popup-sidebar .search-course button::before{color:#666;font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900;content:"\f002"}#popup-course #popup-sidebar .search-course button.clear{display:none}#popup-course #popup-sidebar .search-course button.clear::before{content:"\f00d"}#popup-course #popup-sidebar .search-course .search-results{display:none;overflow:auto;position:fixed;z-index:99999999;top:92px;bottom:0;right:0;width:400px;margin:0;border-top-color:transparent;border-left:1px solid #d9e0f1;background:#fbfcff}#popup-course #popup-sidebar .search-course .search-results .search-results__item{border-bottom:1px solid #d9e0f1;background:#fff}#popup-course #popup-sidebar .search-course .search-results .search-results__item img{position:absolute;right:10px;width:40px;height:40px}#popup-course #popup-sidebar .search-course .search-results .search-results__item a{display:-webkit-box;overflow:hidden;position:relative;box-sizing:content-box;height:40px;padding:10px 60px 10px 10px;color:#777;text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical}#popup-course #popup-sidebar .search-course .search-results .search-results__item:hover{background:#d9e0f1}#popup-course #popup-sidebar .search-course .search-results .search-results__item-title{overflow:hidden;margin:0 0 -2px 0;padding:0;font-size:16px;font-weight:normal}#popup-course #popup-sidebar .search-course .search-results .search-results__item-author{font-size:12px}#popup-course #popup-sidebar .search-course .search-results .course-price{position:absolute;left:10px;bottom:10px;font-size:12px}#popup-course #popup-sidebar .search-course .search-results .course-price .origin-price{font-size:smaller;text-decoration:line-through}#popup-course #popup-sidebar .search-course .search-results .search-results__not-found{padding:10px;color:#777}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination{padding:10px;text-align:center}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination a,#popup-course #popup-sidebar .search-course .search-results .search-results__pagination span{display:inline-block;margin:0 2px 10px 3px;padding:5px 8px;border:1px solid #d9e0f1;border-radius:4px;color:#777;font-size:14px;line-height:1;cursor:pointer}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination span{color:#999;background:#d9e0f1}#popup-course #popup-sidebar .search-course.searching .search-results{display:block}#popup-course #popup-sidebar .search-course.searching .clear{display:block}#popup-course #popup-sidebar .search-course.searching button{display:none}#popup-course #popup-sidebar .search-course.searching::after{position:absolute;z-index:1;bottom:0;right:50%;width:0;height:0;margin-right:-10px;border:10px solid transparent;border-bottom-color:#fff;content:""}#popup-course #popup-sidebar .course-curriculum{overflow:auto;position:absolute;top:70px;bottom:0;width:475px}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar-thumb{background:#ccc}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar{width:6px}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar-track{background:#f5f5f5}#popup-course #popup-sidebar .section{position:relative;padding:0 0 4px 0}#popup-course #popup-sidebar .section .circle-progress{display:inline-block;position:absolute;top:50%;left:10px;width:24px;height:24px;margin-top:-12px;border:3px solid #d9e0f1;border-radius:50%}#popup-course #popup-sidebar .section.section-empty .section-header{margin:0}#popup-course #popup-sidebar .section.section-empty .learn-press-message{margin:0;padding:10px;border-bottom:1px solid #d9e0f1;border-radius:0;color:#999;background:#f5f5f5;font-size:14px}#popup-course #popup-sidebar .section.section-empty .learn-press-message::before,#popup-course #popup-sidebar .section.section-empty .learn-press-message::after{position:absolute;z-index:9999;top:-16px;right:10px;width:0;height:0;border:8px solid transparent;border-bottom-color:#f5f5f5;background:transparent;content:"";-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}#popup-course #popup-sidebar .section.section-empty .learn-press-message::after{z-index:9998;top:-20px;right:8px;border-width:10px;border-bottom-color:#d9e0f1}#popup-course #popup-sidebar .section-header{position:sticky;z-index:1000;top:0;height:94px;padding:38px 20px 20px 20px;cursor:pointer;background-color:white}#popup-course #popup-sidebar .section-header .section-title{padding:0 0 4px 0;color:#000;font-size:20px;font-weight:500}#popup-course #popup-sidebar .section-header .section-title .show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f0d7"}#popup-course #popup-sidebar .section-header .section-toggle{justify-content:flex-end;flex:0}#popup-course #popup-sidebar .section-header .section-toggle i{color:#666}#popup-course #popup-sidebar .section-header .section-meta{padding-top:6px;padding-bottom:0}#popup-course #popup-sidebar .section-content{margin-bottom:0}#popup-course #popup-sidebar .course-item{min-height:50px;margin-bottom:4px;padding:5px 20px;background:#f9fafc;align-items:center}#popup-course #popup-sidebar .course-item>span{display:none}#popup-course #popup-sidebar .course-item::before{top:-1px;bottom:-1px;height:auto;background:transparent}#popup-course #popup-sidebar .course-item::after{content:""}#popup-course #popup-sidebar .course-item.current{background:#eaeaea}#popup-course #popup-sidebar .course-item.has-status.failed .trans{color:#f02425}#popup-course #popup-sidebar .course-item.status-completed .trans{color:#3bb54a}#popup-course #popup-sidebar .section-item-link{line-height:1;padding-left:0}#popup-course #popup-sidebar .section-item-link::before{padding:12px 0;vertical-align:unset}#popup-course #popup-sidebar .section-item-link .item-name{width:100%;padding:0 17px 0 10px;font-size:14px;line-height:21px;font-weight:500}#popup-course #popup-sidebar .course-item-meta{padding:0}#popup-course #popup-sidebar .course-item-meta .item-meta{padding:0;color:#999;background:transparent;font-size:12px;line-height:1.5;height:auto}#popup-course #popup-sidebar .course-item-meta .item-meta:first-child{margin-right:0}#popup-course #popup-sidebar .course-item-meta .item-meta::before{font-size:12px;line-height:21px}#popup-course #popup-content{overflow:auto;position:relative;margin:70px 0 50px 0;flex:1;padding-right:15px;padding-left:15px}#popup-course #popup-content .lp-button{position:relative;margin:0 0 0 10px;padding:12px 29px;border-color:var(--lp-secondary-color);font-size:14px}#popup-course #popup-content .lp-button.instant-check .instant-check__icon{margin-left:5px}#popup-course #popup-content .lp-button.instant-check .instant-check__icon::before{font-family:"Font Awesome 5 Free";content:"\f058"}#popup-course #popup-content .lp-button.instant-check .instant-check__info{visibility:hidden;position:absolute;top:100%;right:0;margin-top:3px;padding:11px 20px;border-radius:3px;background:#eee;white-space:nowrap;text-transform:none}#popup-course #popup-content .lp-button.instant-check:hover .instant-check__info{visibility:visible;position:absolute;top:100%;right:0;margin-top:3px;padding:11px 11px;border-radius:3px;color:#333;background:#eee;white-space:nowrap}#popup-course #popup-content .lp-button.instant-check.loading .instant-check__icon{display:inline-block;animation:lp-rotating 1s linear infinite}#popup-course #popup-content .lp-button.instant-check.loading .instant-check__icon::before{font-weight:800;content:"\f110"}#popup-course #popup-content .lp-button:hover{border-color:var(--lp-primary-color)}#popup-course #popup-content .lp-button.completed{display:flex;flex-direction:row-reverse;margin-top:32px;border-color:transparent;color:#fff;background:#3db748;font-size:16px;align-items:center;justify-content:center}#popup-course #popup-content .lp-button.completed i{margin-right:9px;font-size:14px}#popup-course #popup-content.fixed-quiz-status .quiz-status{background:var(--lp-primary-color)}#popup-course #popup-content.fixed-quiz-status .quiz-status>div{padding:0}@media(max-width:767px){#popup-course #popup-content{margin-top:113px}}#popup-course #popup-footer{position:fixed;z-index:999;left:0;bottom:0;right:475px;width:100%;max-width:792px;height:50px;margin:0 auto;border-top:1px solid #ebebeb;background:#fff;-webkit-transition:right .25s;-moz-transition:right .25s;-ms-transition:right .25s;-o-transition:right .25s;transition:right .25s}@media(max-width:1024px){#popup-course #popup-footer{width:auto;padding:0 15px}}#popup-course #popup-footer .course-item-nav{justify-content:space-between}#popup-course #popup-footer .course-item-nav .prev,#popup-course #popup-footer .course-item-nav .next{display:flex;line-height:50px}#popup-course #popup-footer .course-item-nav .prev a,#popup-course #popup-footer .course-item-nav .next a{display:block;color:#666;font-size:16px}#popup-course #popup-footer .course-item-nav .prev::before,#popup-course #popup-footer .course-item-nav .next::before{color:#999;font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900}#popup-course #popup-footer .course-item-nav .prev:hover a,#popup-course #popup-footer .course-item-nav .prev:hover::before,#popup-course #popup-footer .course-item-nav .next:hover a,#popup-course #popup-footer .course-item-nav .next:hover::before{color:var(--lp-primary-color)}#popup-course #popup-footer .course-item-nav .prev:hover .course-item-nav__name,#popup-course #popup-footer .course-item-nav .next:hover .course-item-nav__name{display:block}#popup-course #popup-footer .course-item-nav .next{flex-direction:row-reverse}#popup-course #popup-footer .course-item-nav .next::before{margin-right:10px;content:"\f0da"}#popup-course #popup-footer .course-item-nav[data-nav=next]{justify-content:flex-end}#popup-course #popup-footer .prev::before{margin-left:10px;content:"\f0d9"}#popup-course #popup-footer .prev .course-item-nav__name{left:auto;right:-30px}#popup-course #popup-footer .prev .course-item-nav__name::before{left:auto;right:5px}@media(max-width:1024px){#popup-course #popup-footer .prev .course-item-nav__name{right:15px}}#popup-course #popup-footer .course-item-nav__name{display:none;position:absolute;top:-20px;left:-30px;width:auto;padding:10px 15px;color:#666;background:#ccc;font-size:14px;font-weight:300;line-height:1}@media(max-width:1024px){#popup-course #popup-footer .course-item-nav__name{top:-25px;left:15px;right:auto}}#popup-course #sidebar-toggle{display:inline-block;position:absolute;z-index:100;top:198px;right:475px;width:25px;height:56px;margin:0;background:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,0.15);cursor:pointer;transition:.25s;-webkit-appearance:none;border:0}#popup-course #sidebar-toggle:after{display:none}#popup-course #sidebar-toggle::before{display:inline-block;position:absolute;top:50%;right:50%;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f0d9";transition:.25s;transform:translate(50%,-50%)}#popup-course #sidebar-toggle:focus{border:0;outline:0}#popup-course .lp-quiz-buttons .complete-quiz,#popup-course .lp-quiz-buttons .back-quiz,#popup-course .lp-quiz-buttons .review-quiz{float:left}#popup-course .quiz-results,#popup-course .quiz-content,#popup-course .quiz-questions,#popup-course .quiz-buttons,#popup-course .quiz-attempts{margin-bottom:60px}#popup-course .quiz-questions .lp-fib-content{margin-bottom:20px;padding:20px;border:2px solid #f5f5f5;border-radius:6px;line-height:1.6}#popup-course .quiz-questions .lp-fib-input{display:inline-block;width:auto;max-width:none}#popup-course .quiz-questions .lp-fib-input>input{height:36px;padding:6px 16px;border:1px solid #222;line-height:36px}#popup-course .quiz-questions .lp-fib-answered{padding:0 10px;background:#ececec;white-space:nowrap}#popup-course .quiz-questions .lp-fib-answered.fail{border:2px solid #d85554}#popup-course .quiz-questions .lp-fib-answered.fail .lp-fib-answered__answer{text-decoration:line-through}#popup-course .quiz-questions .lp-fib-answered.correct{border:2px solid #00adff}#popup-course .quiz-questions .lp-fib-note{display:flex;margin-right:10px;font-size:14px;font-weight:400;align-items:center}#popup-course .quiz-questions .lp-fib-note>span{display:inline-block;width:20px;height:20px;margin:0 0 0 5px}#popup-course .quiz-questions .lp-sorting-choice__check-answer{padding:5px 20px;border:2px solid #059601;border-radius:5px;font-size:1rem}#popup-course .question .answer-option input[type=radio],#popup-course .question .answer-option input[type=checkbox]{-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);margin:0 10px 0 0}#popup-course .question .answer-option input[type=radio]::before{border-radius:50%}#popup-course .question .question-response{display:flex;align-items:center;justify-content:flex-start}#popup-course .scrollbar-light>.scroll-element{z-index:9999}#popup-course .scrollbar-light>.scroll-element.scroll-y{display:none}#popup-course .scrollbar-light>.scroll-element.scroll-y .scroll-bar{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.admin-bar #popup-course{top:32px}body.lp-sidebar-toggle__close #popup-course>#sidebar-toggle{right:0}body.lp-sidebar-toggle__close #popup-course>#sidebar-toggle::before{content:"\f0da"}body.lp-sidebar-toggle__close #popup-course #popup-sidebar{flex:0}body.lp-sidebar-toggle__close #popup-course #popup-header,body.lp-sidebar-toggle__close #popup-course #popup-footer{right:0}@media(max-width:768px){body:not(.lp-sidebar-toggle__open) #popup-course>#sidebar-toggle{right:0}body:not(.lp-sidebar-toggle__open) #popup-course>#sidebar-toggle::before{content:"\f0da"}body:not(.lp-sidebar-toggle__open) #popup-course #popup-sidebar{flex:0}}.course-curriculum .section-header .section-meta{position:relative}@media screen and (max-width:1280px){#popup-course #popup-sidebar{flex-basis:300px}#popup-course #popup-sidebar .course-curriculum{width:300px}#popup-course #popup-header,#popup-course #popup-footer{right:300px}#popup-course #sidebar-toggle{right:299px}}@media screen and (max-width:782px){body.admin-bar #popup-course{top:46px}#popup-course #popup-sidebar{flex-basis:250px}#popup-course #popup-sidebar .course-curriculum{width:250px}#popup-course #popup-header,#popup-course #popup-footer{right:250px}#popup-course #sidebar-toggle{right:249px}#popup-course #sidebar-toggle:checked ~ #popup-sidebar{flex-basis:0}#popup-course .course-item-meta .item-meta.count-questions,#popup-course .course-item-meta .item-meta.duration{display:none}}.content-item-wrap{width:792px;max-width:100%;margin:0 auto;padding-bottom:80px}@media(max-width:1024px){.content-item-wrap{width:100%}}.content-item-wrap .course-item-title{margin-top:0;margin-bottom:24px;color:#333;font-size:30px;font-weight:600}@media(max-width:767px){.content-item-wrap .course-item-title{text-align:center}}.content-item-wrap h4{font-size:1.5rem;font-weight:500;line-height:1.5}.content-item-wrap .content-item-summary{padding-top:50px}.content-item-wrap .content-item-description{margin-bottom:30px}.content-item-wrap .content-item-description h2,.content-item-wrap .content-item-description h3,.content-item-wrap .content-item-description h4,.content-item-wrap .content-item-description h5,.content-item-wrap .content-item-description h6{margin-top:0;margin-bottom:18px;font-size:18px;letter-spacing:unset}.content-item-wrap .content-item-description p{margin:0 0 18px 0;color:#666;font-size:16px;font-weight:300;line-height:26px}.content-item-wrap .content-item-description img{max-width:100%;height:auto;vertical-align:middle}.content-item-wrap #learn-press-quiz-app{margin-bottom:40px}.content-item-wrap .quiz-content{margin-bottom:40px;color:#666;font-size:16px;font-weight:300;line-height:26px}.content-item-wrap .quiz-content img{max-width:100%;height:auto;vertical-align:middle}.content-item-wrap .quiz-buttons{display:flex;justify-content:center;text-align:center}.content-item-wrap .quiz-buttons .button-right .lp-button{margin:0 15px 0 0}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]{margin:0;border:1px solid #d9e0f1;color:#777;background:#fbfcff}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]::before{display:inline-block;width:15px;height:15px;border:2px solid #d9e0f1;border-top-color:transparent;border-right-color:transparent;content:"";-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].prev::before{margin-right:7px;-webkit-transform:rotate(-135deg);-moz-transform:rotate(-135deg);-ms-transform:rotate(-135deg);-o-transform:rotate(-135deg);transform:rotate(-135deg)}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].next{margin-right:-1px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].next::before{margin-left:7px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]:hover{background:#fff}.content-item-wrap .quiz-buttons.align-center{display:block;text-align:center}.content-item-wrap .quiz-buttons.align-center .button-left{text-align:center}.content-item-wrap .quiz-buttons.align-center .button-left.fixed{position:fixed;z-index:99999;bottom:0;right:50%;width:100%;max-width:792px;height:49px;margin-right:237px;transform:translateX(50%)}@media(max-width:768px){.content-item-wrap .quiz-buttons.align-center .button-left.fixed{width:100% !important}}.content-item-wrap .quiz-buttons.align-center .button-left.nav-center{height:50px;margin-right:0 !important}.content-item-wrap .quiz-buttons:not(.infinity).is-first .prev{display:none}.content-item-wrap .quiz-buttons:not(.infinity).is-last .next{display:none}.content-item-wrap .quiz-buttons:not(.is-first):not(.is-last) .prev{border-top-left-radius:0;border-bottom-left-radius:0}.content-item-wrap .quiz-buttons:not(.is-first):not(.is-last) .next{border-top-right-radius:0;border-bottom-right-radius:0}.content-item-wrap .questions-pagination{height:33px;padding:8px 0;background:#fff;text-align:center}.content-item-wrap .questions-pagination .nav-links{text-align:center}.content-item-wrap .questions-pagination .nav-links .page-numbers{display:inline-block;vertical-align:middle;margin:0 3px 3px;padding:10px 16px;color:#666;background-color:transparent;font-size:16px;font-weight:300;line-height:1;border:1px solid;cursor:pointer}.content-item-wrap .questions-pagination .nav-links .page-numbers.next,.content-item-wrap .questions-pagination .nav-links .page-numbers.prev{display:inline-block;padding:10px;background:transparent;font-size:16px;text-align:center;text-decoration:none;text-transform:none;border:1px solid}.content-item-wrap .questions-pagination .nav-links .page-numbers.current,.content-item-wrap .questions-pagination .nav-links .page-numbers:hover{color:var(--lp-primary-color)}.course-curriculum .section-title{position:relative;margin-bottom:0;padding:8px 0;color:#5383f7;font-size:16px;font-weight:normal;line-height:1}.course-curriculum .section-title span.show-desc{display:inline-block;position:absolute;top:50%;left:30px;width:20px;height:20px;transform:translate(0,-50%)}.course-curriculum .section-title span.show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f107"}.course-curriculum .section-title span.show-desc:hover::before{border-top-color:#ccc}.lp-overlay{display:none;position:fixed;z-index:99999;top:0;left:0;bottom:0;right:0;width:100%;height:100%;background-color:rgba(209,213,219,0.8);transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms;transition-property:opacity}.wp-admin .lp-modal-dialog .lp-modal-header{padding:2em}.wp-admin .lp-modal-dialog .lp-modal-header h3{font-size:1.4em}.lp-modal-dialog{display:flex;position:fixed;z-index:9999;top:0;left:0;right:0;width:100%;min-height:100vh;text-align:center;align-items:center;justify-content:center}.lp-modal-dialog .lp-modal-content{display:inline-block;overflow:hidden;z-index:2;width:auto;max-width:600px;border-radius:8px;text-align:right;vertical-align:middle;background:white;color:black}.lp-modal-dialog .lp-modal-header{background:#7c60d9;border-bottom:1px solid #eee;padding:1em}.lp-modal-dialog .lp-modal-header h3{margin:0;color:white;font-size:inherit;font-weight:400}.lp-modal-dialog .lp-modal-body .main-content{max-height:500px;overflow:auto}.lp-modal-dialog .lp-modal-body .main-content h3,.lp-modal-dialog .lp-modal-body .main-content h2,.lp-modal-dialog .lp-modal-body .main-content .pd-2em{padding:1em}.lp-modal-dialog .lp-modal-footer{padding:20px;padding-top:0;background-color:#f9fafb;text-align:left}.lp-modal-dialog .btn-yes{color:#fff;background-color:#7c60d9}#lp-modal-overlay{display:none;position:fixed;z-index:999999;top:0;left:0;bottom:0;right:0;opacity:.5;background:#000}#lp-modal-window{display:none;position:fixed;z-index:999999;top:50%;right:50%;padding:35px 60px 28px 60px;background:#fff;transform:translate(50%,-50%);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#lp-modal-window #lp-modal-content{margin:0 0 24px 0;color:#333;font-size:16px;font-weight:400;line-height:26px;text-align:center}#lp-modal-window #lp-modal-content>*{margin:0 0 .5em}#lp-modal-window #lp-modal-buttons{display:flex;flex-direction:row-reverse;align-items:center;justify-content:center}#lp-modal-window #lp-modal-buttons .lp-button{position:relative;margin:0 10px 0 10px}.learn-press-comments{width:792px;max-width:100%;margin:0 auto}@media(max-width:1024px){.learn-press-comments{width:100%}}.learn-press-progress{overflow:hidden;position:relative;width:80px;height:6px;border-radius:3px}.learn-press-progress .learn-press-progress__active{position:absolute;z-index:1;right:-100%;width:100%;height:100%;border-radius:3px;background:var(--lp-primary-color);-webkit-transition:.5s;-moz-transition:.5s;-ms-transition:.5s;-o-transition:.5s;transition:.5s}.learn-press-progress::before{display:block;position:absolute;z-index:0;top:0;width:100%;height:100%;background:#ccc;content:""}.course-curriculum .section-header .section-left{display:flex}.course-curriculum .section-header .section-left .section-title{flex:1}.course-curriculum .section-header .section-left .section-toggle{flex:0 0 40px;align-items:center;text-align:center;cursor:pointer}.course-curriculum .section-header .section-left .section-toggle .fa-caret-down{display:none}.course-curriculum .section-header .learn-press-progress{width:80px}.course-curriculum .section.closed .section-toggle .fa-caret-down{display:block}.course-curriculum .section.closed .section-toggle .fa-caret-up{display:none}.course-curriculum .section.closed .section-content{overflow:hidden;height:0}*{box-sizing:border-box;margin:0;padding:0}button{cursor:pointer}input,button,select,textarea{outline:0}html{overflow-x:hidden}a{-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s}.lp-skeleton-animation{margin:0;padding:0;list-style:none}.lp-skeleton-animation>li{width:100%;height:16px;margin-top:15px;border-radius:2px;background:linear-gradient(-90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);background-size:400% 100%;list-style:none;animation:lp-skeleton-loading 1.4s ease infinite}@keyframes lp-skeleton-loading{0%{background-position:0 50%}to{background-position:100% 50%}}.learnpress.theme-twentytwentytwo .wp-site-blocks,.learnpress.twentytwentytwo .wp-site-blocks{max-width:none;padding-left:0;padding-right:0}.learnpress.theme-twentytwentytwo .wp-site-blocks>.wp-block-group,.learnpress.twentytwentytwo .wp-site-blocks>.wp-block-group{max-width:none;margin-left:auto;margin-right:auto}.learnpress.theme-twentytwentytwo .lp-archive-courses,.learnpress.twentytwentytwo .lp-archive-courses{max-width:none}.learnpress.twentytwentytwo .wp-container-11 .alignfull,.learnpress.twentytwentytwo .wp-container-9 .alignfull,.learnpress.twentytwentytwo .wp-container-12 .alignfull{max-width:100%;margin-right:0 !important;margin-left:0 !important;padding-right:0 !important;padding-left:0 !important}@media(max-width:1199px){.learnpress.twentytwentytwo .wp-site-blocks .wp-block-template-part{padding-right:15px;padding-left:15px}}input[type=text],input[type=email],input[type=number],input[type=password]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:0;box-shadow:unset}body{background:#fff}body.learnpress-page{overflow-x:hidden}.wrap-fullwidth a:focus,.wrap-fullwidth button:focus,.wrap-fullwidth input:focus,.wrap-fullwidth textarea:focus{border:0;outline:0}.wrap-fullwidth a:hover{text-decoration:none}.wrap-fullwidth p{word-break:break-word}.wrap-fullwidth p:last-child{margin-bottom:0}.wrap-fullwidth label{display:block;margin:0;outline:0}.wrap-fullwidth img{max-width:100%;height:auto}.wrap-fullwidth form{margin:0}.wrap-fullwidth .col-full{box-sizing:border-box;max-width:100%;padding:0}.wrap-fullwidth .col-full .woocommerce-breadcrumb{display:none}footer{clear:both}.margin-bottom{margin-bottom:20px}.hide-if-js{display:none !important}.clearfix::after{display:block;clear:both;content:""}.lp-form-fields{margin:0;padding:0;list-style:none}.lp-form-fields .form-field{margin:0 0 20px 0;list-style:none}.lp-content-wrap{width:1170px;max-width:90%;margin:0 auto}.lp-content-wrap>h2{margin-top:0;margin-bottom:26px;color:#333;font-size:30px;font-weight:600}.learn-press-breadcrumb{max-width:1170px;width:100%;margin:0 auto 45px auto;padding:0;color:#333;font-size:14px;font-weight:400;list-style:none}.learn-press-breadcrumb li{display:inline-block;margin:0}.learn-press-breadcrumb li a:hover{color:var(--lp-primary-color)}.learn-press-breadcrumb i{margin:0 5px;color:#666;font-size:12px}@media(max-width:1024px){.learn-press-breadcrumb{padding-left:15px;padding-right:15px}}.learn-press-breadcrumb a{color:#666;font-weight:500}.learnpress-page .lp-button,.learnpress-page #lp-button{padding:16px 24px;border:1px solid #ccc;color:#333;background:transparent;box-shadow:unset;font-family:inherit;font-size:16px;font-weight:400;line-height:1;text-align:center;vertical-align:middle;text-decoration:none;text-transform:capitalize;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-transition:all .25s;-moz-transition:all .25s;-ms-transition:all .25s;-o-transition:all .25s;transition:all .25s}.learnpress-page .lp-button.large,.learnpress-page #lp-button.large{height:52px;padding:18px 30px;font-size:18px}.learnpress-page .lp-button:hover,.learnpress-page #lp-button:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.learnpress-page .lp-button.btn-ajax-off .icon,.learnpress-page #lp-button.btn-ajax-off .icon{display:none}.learnpress-page .lp-button.btn-ajax-on .icon,.learnpress-page #lp-button.btn-ajax-on .icon{display:inline-block;margin-left:5px;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.learnpress-page .lp-button:focus,.learnpress-page #lp-button:focus{outline:0}.learnpress-page .lp-button.loading::before,.learnpress-page #lp-button.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}.learnpress-page .rwmb-field .description{margin-top:8px;color:#999;font-size:smaller;font-style:italic}.btn-base{border-color:var(--lp-primary-color);color:white;background-color:var(--lp-primary-color)}.lp-ajax-message{display:none;margin-top:20px;padding:20px;border:2px solid #059601;border-radius:9px;font-size:15px;line-height:1.4}.lp-ajax-message.error{border-color:#d85554}.course-meta{margin-bottom:14px}.course-meta .course-students::before{font-family:"Font Awesome 5 Free";content:""}.lp-entry-content .course-tabs{margin-bottom:60px}.learn-press-checkout-comment h4{display:none}.order-comments{width:100%;padding:15px;min-height:150px;border:1px solid #ccc;resize:none}.learn-press-progress .progress-bg{overflow:hidden;position:relative;height:6px;background:#ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.learn-press-progress .progress-bg .progress-active{position:absolute;right:50%;width:100%;height:100%;margin-right:-100%;background:var(--lp-primary-color);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.retake-course,.enroll-course,.purchase-course{display:inline-block}.table-orders{font-size:16px}.table-orders th,.table-orders td{padding:5px 10px}.form-button{display:inline-block}.learn-press-pagination{padding-bottom:20px;text-align:center}.learn-press-pagination .page-numbers{display:inline-block;margin:0;padding:0;border:0;outline:0;background:transparent;list-style:none}.learn-press-pagination .page-numbers>li{display:inline-block;margin:0;padding:0 14px}.learn-press-pagination .page-numbers>li .page-numbers{float:unset;padding:0;color:#666;background:transparent;font-size:16px;font-weight:300}.learn-press-pagination .page-numbers>li .page-numbers.current{color:var(--lp-primary-color);font-weight:400}.learn-press-pagination .page-numbers>li .page-numbers:hover{color:var(--lp-primary-color)}ul.list-table-nav{display:flex;margin-right:0;list-style:none}ul.list-table-nav .nav-text{text-align:right;flex:1}ul.list-table-nav .nav-pages{text-align:left;flex:1}ul.list-table-nav .nav-pages .learn-press-pagination{display:inline-block;margin-bottom:0}.primary-color{color:#00adff}.primary-color-before::before{color:#00adff}.primary-color-after::after{color:#00adff}.primary-background-color{background:#00adff}.primary-background-color{background:#00adff}.course-origin-price{margin-left:5px;font-size:85%;text-decoration:line-through}.course-item-nav{display:flex}.course-item-nav .prev span,.course-item-nav .next span{display:block;font-weight:bold}.course-item-nav .prev a,.course-item-nav .next a{color:#999}.course-item-nav .next{text-align:left}.content-item-wrap #comments{margin-left:0;margin-right:0}.content-item-wrap #comments #comment{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-summary-sidebar{position:relative}@media(min-width:769px){.course-summary-sidebar.slide-down .course-summary-sidebar__inner{position:fixed;top:0}}@media(min-width:1200px){.course-summary-sidebar.slide-top .course-summary-sidebar__inner{position:absolute}}.course-graduation span{color:#999}.course-graduation .icon{margin-left:5px;font-size:20px}.course-graduation.passed .icon{color:#059601}.course-graduation.error .icon{color:#d85554}.learn-press-template-warning::before{color:#ffc107;font-family:"Font Awesome 5 Free";content:"\f071"}.lp-badge{display:flex;height:30px;padding:0;line-height:1;align-items:center;justify-content:center}.lp-badge::before,.lp-badge::after{content:""}.lp-badge::before{display:inline-block;position:relative;z-index:10;color:#fff;font-weight:bold;line-height:1}.lp-badge.featured-course{position:absolute;z-index:1;top:25px;right:-110px;width:300px;background:#93f;text-align:center;transform:rotate(45deg)}.lp-badge.featured-course::before{font-size:12px;text-transform:uppercase;content:attr(data-text)}@media(min-width:769px){#learn-press-item-comments{padding-bottom:50px}}.course-tabs input[name=learn-press-course-tab-radio],.course-tabs .course-tab-panel{display:none}.course-tabs .course-nav label{display:flex;align-items:center;justify-content:center;margin:0;padding:17px 10px;font-size:16px;line-height:1;font-weight:600;text-transform:capitalize;cursor:pointer}.no-event{pointer-events:none}@media screen and (max-width:768px){ul.learn-press-courses .course{width:48%}}@media screen and (max-width:600px){ul.learn-press-courses .course{width:100%;margin-left:0}}.course-price:empty{display:none !important}.quiz-attempts .attempts-heading{margin-bottom:15px}.quiz-attempts table{border-spacing:0;border-right:1px solid var(--lp-secondary-color);border-top:1px solid var(--lp-secondary-color);width:100%}.quiz-attempts table tr th,.quiz-attempts table tr td{border-left:1px solid var(--lp-secondary-color);border-bottom:1px solid var(--lp-secondary-color);padding:5px 15px;text-align:center}.quiz-attempts table tr th{font-weight:500}@media(max-width:575px){#popup-course .quiz-attempts{overflow-x:auto}}
|
1 |
+
@charset "UTF-8";@-webkit-keyframes rotating4{from{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@keyframes rotating4{from{-ms-transform:rotate(0);-moz-transform:rotate(0);-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-ms-transform:rotate(-360deg);-moz-transform:rotate(-360deg);-webkit-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@-webkit-keyframes animation4{from{right:-40%;width:40%}to{right:100%;width:10%}}@keyframes animation4{from{right:-40%;width:40%}to{right:100%;width:10%}}.learn-press-message{position:relative;margin:0 0 20px 0;padding:10px 15px 10px 50px;border-top:5px solid #00adff;border-radius:0 0 5px 5px;background:#f5f5f5;width:100%}.learn-press-message.icon{padding-right:45px}.learn-press-message.icon::before{background:#00adff}.learn-press-message.icon::after{position:absolute;top:50%;right:15px;width:10px;height:10px;margin-top:-13px;margin-left:10px;border-radius:50%;color:#fff;background:#00adff;font-family:"Font Awesome 5 Free";font-size:20px;line-height:26px;text-align:center;vertical-align:baseline;content:"\f129"}.learn-press-message::before,.learn-press-message::after{position:absolute;top:0;content:""}.learn-press-message::before{left:20px;width:20px;height:30px;background:#00adff}.learn-press-message::after{top:10px;left:20px;width:0;height:0;border:10px solid transparent;border-bottom-color:#f5f5f5}.learn-press-message.error{border-color:#d85554}.learn-press-message.error::before{background:#d85554}.learn-press-message.error.icon::before,.learn-press-message.error.icon::after{background:#d85554}.learn-press-message.error.icon::after{content:"\f00d"}.learn-press-message.warning{border-color:#ffc107}.learn-press-message.warning::before{background:#ffc107}.learn-press-message.warning.icon::before,.learn-press-message.warning.icon::after{background:#ffc107}.learn-press-message.warning.icon::after{content:"\f00d"}.learn-press-message.success{border-color:#059601}.learn-press-message.success::before{background:#059601}.learn-press-message.success.icon::before,.learn-press-message.success.icon::after{background:#059601}.learn-press-message.success.icon::after{content:"\f129"}.learn-press-message a{text-decoration:underline}@keyframes lp-rotating{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(-360deg);-moz-transform:rotate(-360deg);-ms-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@-webkit-keyframes lp-rotating{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(-360deg);-moz-transform:rotate(-360deg);-ms-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}.ajaxload{display:inline-block;position:relative;width:30px;height:30px;background:#7b7b7b;content:"";-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.ajaxload::after{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;display:inline-block;position:absolute;top:2px;right:50%;width:6px;height:6px;margin-right:-3px;background:#dedede;content:""}.lp-ajaxload-style-1{display:inline-block;position:relative;width:32px;height:32px}.lp-ajaxload-style-1::before,.lp-ajaxload-style-1::after{position:absolute;top:0;right:0;width:100%;height:100%;border:3px solid #ddd;content:""}.lp-ajaxload-style-1::after{clip:rect(0,32px,16px,16px);border-color:#2fa7ff;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.learn-press-tabs{margin-bottom:34px;background:#f1f2f8}.learn-press-tabs .learn-press-tabs__checker{display:none}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10)::after{background:#fff}.learn-press-tabs .learn-press-tabs__nav{display:flex;margin:0;padding:0;border:1px solid #e5e7f2;list-style:none}.learn-press-tabs .learn-press-tabs__tab{position:relative;margin:0;border-left:1px solid #e5e7f2;background:#f1f2f8;list-style:none}.learn-press-tabs .learn-press-tabs__tab:last-child{border-left:0}.learn-press-tabs .learn-press-tabs__tab>label{display:block;margin:0;padding:18px 65px;font-size:18px;line-height:1;font-weight:600;text-align:center;text-transform:capitalize;cursor:pointer}.learn-press-tabs .learn-press-tabs__tab>label a{color:#333}.learn-press-tabs .learn-press-tabs__tab>label a:focus{outline:0;text-decoration:none}@media(max-width:767px){.learn-press-tabs .learn-press-tabs__tab>label{padding:20px 50px 14px 50px}}.learn-press-tabs .learn-press-tabs__tab::before{position:absolute;top:-1px;right:0;width:100%;height:4px;background:transparent;content:""}.learn-press-tabs .learn-press-tabs__tab::after{position:absolute;bottom:-1px;right:0;width:100%;height:4px;background:transparent;content:""}.learn-press-tabs .learn-press-tabs__tab:first-child.active label{position:relative}.learn-press-tabs .learn-press-tabs__tab:first-child.active label::before{position:absolute;top:0;right:-1px;width:1px;height:100%;background:#fff;content:""}.learn-press-tabs.stretch .learn-press-tabs__tab{flex:1}.learn-press-tabs.stretch .learn-press-tabs__tab>label{padding:18px 10px}.learn-press-filters{display:flex;margin-bottom:30px;margin-right:0;list-style:none}.learn-press-filters>li{margin:0;font-size:16px;line-height:24px}@media(max-width:767px){.learn-press-filters>li{margin-left:30px;margin-right:0}.learn-press-filters>li:last-child{margin-left:0}}.learn-press-filters>li>a,.learn-press-filters>li>span{display:inline-block;font-weight:600}.learn-press-filters>li>span.count{font-weight:400}.learn-press-filters>li>span.count::before,.learn-press-filters>li>span.count::after{display:inline-block}.learn-press-filters>li>span.count::before{content:"("}.learn-press-filters>li>span.count::after{content:")"}.learn-press-filters>li span{color:#ffb606}.learn-press-filters>li span+span{color:#ffb606}.learn-press-filters>li span+span::before,.learn-press-filters>li span+span::after{color:#ffb606}.learn-press-filters>li a{color:#333;cursor:pointer}.learn-press-filters>li a+span{color:#333}.learn-press-filters>li a+span::before,.learn-press-filters>li a+span::after{color:#333}.learn-press-filters>li::after{margin:0 35px;color:#ccc;content:"|"}@media(max-width:767px){.learn-press-filters>li::after{display:none}}.learn-press-filters>li:last-child::after{display:none}.lp-checkout-form__before,.lp-checkout-form__after{width:45%;width:-webkit-calc(50% - 30px);width:-moz-calc(50% - 30px);width:calc(50% - 30px);margin:0 15px 40px 15px}.lp-checkout-form__before .lp-checkout-block h4,.lp-checkout-form__after .lp-checkout-block h4{margin-top:0;margin-bottom:18px;color:#333;font-size:24px;font-weight:600;line-height:1;font-family:var(--wp--preset--font-family--system-font)}@media(max-width:815px){.lp-checkout-form__before,.lp-checkout-form__after{width:100%;margin:0 0 40px 0}}.lp-checkout-form__before{float:left}.lp-checkout-form__before #checkout-order{width:100%}.lp-checkout-form .lp-checkout-form__after{float:right}.lp-checkout-form .lp-checkout-remember{letter-spacing:0;margin-top:0}.lp-checkout-form .lp-checkout-remember label{width:auto;color:#666;font-size:16px;font-weight:300;line-height:26px}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]{position:relative;top:3px;width:19px;height:19px;margin:0 0 0 4px;border:1px solid #ccc;cursor:pointer;-webkit-appearance:none}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]:focus{outline:0}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]:checked::after{position:absolute;top:2px;right:2px;color:#41abec;font-family:"Font Awesome 5 Free";font-size:14px;font-weight:900;line-height:1;content:"\f00c"}.lp-checkout-form .lp-checkout-remember a{color:#666;font-size:16px;font-weight:300;line-height:26px;text-decoration:underline;text-decoration-color:#ccc}.lp-checkout-form .lp-checkout-remember a:hover{color:var(--lp-primary-color);text-decoration-color:var(--lp-primary-color)}.lp-checkout-form .lp-form-fields{padding:0 0 14px 0}.lp-checkout-form .lp-form-fields label{display:block;margin-bottom:10px;font-size:16px}.lp-checkout-form .lp-form-fields input{height:44px;line-height:normal;width:100%;padding:0 15px;border:1px solid #ccc}.lp-checkout-form .rwmb-input input:not([type=checkbox]){width:100%;height:43px;padding:0 22px;border:1px solid #ccc;border-radius:3px;background-color:#fff;font-size:14px;font-weight:300;font-style:italic;line-height:43px}.lp-checkout-form .rwmb-input input:not([type=checkbox]):focus{border-color:var(--lp-primary-color);outline:0;color:#222}.lp-checkout-form .rwmb-input ::placeholder{opacity:1;color:#999}.lp-checkout-form .rwmb-input :-ms-input-placeholder{color:#999}.lp-checkout-form .rwmb-input ::-ms-input-placeholder{color:#999}.lp-checkout-form .rwmb-input input:-webkit-autofill,.lp-checkout-form .rwmb-input input:-webkit-autofill:hover,.lp-checkout-form .rwmb-input input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:#999 !important}.lp-checkout-form{margin:0 -15px;margin-top:50px}@media(max-width:815px){.lp-checkout-form{display:flex;flex-direction:column-reverse;margin:0}}.lp-checkout-form #btn-checkout-account-switch-to-guest{margin-bottom:60px}.lp-checkout-form .description{float:right}.lp-checkout-form a{color:#41abec}.lp-checkout-form a label{display:inline-block;color:inherit;font-weight:normal;cursor:pointer}.lp-checkout-form a:hover{color:#ffb606}.lp-checkout-form #checkout-account-guest{width:100%;margin-bottom:35px;padding-bottom:19px;border-bottom:1px solid rgba(204,204,204,0.3)}.lp-checkout-form #checkout-account-guest .lp-form-fields,.lp-checkout-form #checkout-account-guest .form-field{margin-bottom:0;padding-bottom:0}.lp-checkout-form div.lp-guest-checkout-output{margin-top:10px;padding:8px 20px;border:2px solid #41abec;border-radius:4px;font-size:16px;transition:all .2s ease}.lp-checkout-form label.lp-guest-checkout-output{margin-top:10px;cursor:pointer;user-select:none}.lp-checkout-form .lp-guest-checkout-notice{margin:30px 0 0 0}.lp-checkout-form .lp-guest-switch-login{margin-top:1em;color:#666;font-size:16px;font-weight:400}.lp-checkout-form input[name=checkout-account-switch-form]{display:none}.lp-checkout-form input[name=checkout-account-switch-form]:not(:checked)+.lp-checkout-block{display:none;overflow:hidden;height:0;margin:0;padding:0;border:0;opacity:0}.lp-checkout-form input[name=checkout-account-switch-form]:not(:checked)+.lp-checkout-block>*{overflow:hidden;height:0}.lp-checkout-form input[name=checkout-account-switch-form]:checked+.lp-checkout-block{display:block;overflow:auto;height:auto}.lp-checkout-form input[name=checkout-account-switch-form][value=guest]:checked ~ #btn-checkout-account-switch-to-guest{display:none}.lp-checkout-form::after{display:block;clear:both;content:""}.lp-checkout-form:focus{outline:0}#checkout-order .lp-checkout-order__inner{padding:0 20px;border:1px solid #ccc;border-radius:4px}#checkout-order table{width:100%;margin:0;border:0}#checkout-order td,#checkout-order th{box-sizing:content-box;border:1px solid rgba(204,204,204,0.3);border-top:0;border-left:0;border-right:0;background:unset;line-height:1;text-align:right;vertical-align:inherit}#checkout-order td:last-child,#checkout-order th:last-child{padding-left:0}#checkout-order .course-name{font-size:16px;font-weight:600;line-height:26px}#checkout-order .course-name a{display:-webkit-box;overflow:hidden;color:#000;-webkit-line-clamp:1;-webkit-box-orient:vertical}#checkout-order .course-name a:hover{color:var(--lp-primary-color)}#checkout-order .col-number{min-width:50px;color:#666;font-size:16px;font-weight:600;line-height:26px;text-align:left}#checkout-order .order-total>th{padding:24px 0 24px 20px}#checkout-order .order-total .col-number{color:#333;font-size:26px}#checkout-order tfoot .cart-subtotal{color:#666;font-size:16px;font-weight:600;line-height:26px}#checkout-order tfoot .cart-subtotal>th{padding:20px 0 17px 20px}#checkout-order tfoot .order-total th{color:#333;font-size:16px;font-weight:600;line-height:26px}#checkout-order tfoot tr:last-child{border-width:0}#checkout-order tfoot tr:last-child td,#checkout-order tfoot tr:last-child th{border-width:0}#checkout-order .course-thumbnail{width:80px;padding:20px 0 18px 13px}#checkout-order .course-thumbnail>img{width:100px;max-width:100% !important;height:auto !important}#checkout-account-register,#checkout-account-login{width:100%;margin-bottom:35px;padding-bottom:19px;border-bottom:1px solid rgba(204,204,204,0.3)}#checkout-account-register .form-field .rwmb-label,#checkout-account-register .form-field .rwmb-input .description,#checkout-account-login .form-field .rwmb-label,#checkout-account-login .form-field .rwmb-input .description{display:none}#checkout-account-register .lp-checkout-remember label,#checkout-account-login .lp-checkout-remember label{display:inline-block}#checkout-account-register .lp-checkout-remember a,#checkout-account-login .lp-checkout-remember a{float:left}#checkout-account-register .lp-checkout-sign-in-link,#checkout-account-register .lp-checkout-sign-up-link,#checkout-account-login .lp-checkout-sign-in-link,#checkout-account-login .lp-checkout-sign-up-link{display:flex;margin:0;color:#666;font-size:16px;font-weight:400}#checkout-account-register .lp-checkout-sign-in-link a,#checkout-account-register .lp-checkout-sign-up-link a,#checkout-account-login .lp-checkout-sign-in-link a,#checkout-account-login .lp-checkout-sign-up-link a{margin-right:5px;color:#41abec;cursor:pointer}#checkout-account-register .lp-checkout-sign-in-link a:hover,#checkout-account-register .lp-checkout-sign-up-link a:hover,#checkout-account-login .lp-checkout-sign-in-link a:hover,#checkout-account-login .lp-checkout-sign-up-link a:hover{color:var(--lp-primary-color)}#checkout-account-register .lp-checkout-sign-in-link a label,#checkout-account-register .lp-checkout-sign-up-link a label,#checkout-account-login .lp-checkout-sign-in-link a label,#checkout-account-login .lp-checkout-sign-up-link a label{display:inline-block;float:left;color:inherit;font-weight:normal;cursor:pointer}#checkout-payment{width:100%;margin-bottom:25px}#checkout-payment h4{margin-bottom:24px}#checkout-payment .secure-connection{float:left;margin-top:5px;color:#999;font-size:12px;font-weight:normal}#checkout-payment .secure-connection i{margin-left:5px;color:#ccc;font-size:18px}@media(max-width:767px){#checkout-payment .secure-connection{margin-top:0}}#checkout-payment .payment-methods{margin:0 0 24px 0;padding:0;list-style:none}#checkout-payment .lp-payment-method{position:relative;margin:0}#checkout-payment .lp-payment-method>label{display:flex;align-items:center}#checkout-payment .lp-payment-method .gateway-input,#checkout-payment .lp-payment-method .gateway-icon{vertical-align:middle}#checkout-payment .lp-payment-method .gateway-icon{max-height:32px}#checkout-payment .lp-payment-method .gateway-input{position:relative;width:20px;height:20px;margin:0 0 0 8px;border:1px solid #ccc;background:#fff;-webkit-appearance:none;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}#checkout-payment .lp-payment-method .gateway-input::before{position:absolute;top:50%;right:50%;width:6px;height:6px;background:#41abec;transform:translate(50%,-50%);-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}#checkout-payment .lp-payment-method .gateway-input:checked::before{content:""}#checkout-payment .lp-payment-method .gateway-input:focus{outline:0}#checkout-payment #checkout-order-action button{width:100%;border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color);font-weight:500}#checkout-payment #checkout-order-action button:hover{border-color:var(--lp-primary-color);opacity:.5;background:var(--lp-primary-color)}#checkout-payment #checkout-order-action button.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.lp-terms-and-conditions{color:#666;font-size:16px;font-weight:300;line-height:26px}.lp-terms-and-conditions a{color:#41abec}.lp-terms-and-conditions a:hover{color:var(--lp-primary-color)}.learn-press-checkout.guest-checkout{display:none}.button-continue-guest-checkout{clear:both}#learn-press-checkout .payment-methods{margin:0;padding:0;list-style:none}#learn-press-checkout .payment-methods .lp-payment-method{margin-bottom:20px}#learn-press-checkout .payment-methods .lp-payment-method>label{display:flex;flex-flow:row nowrap;padding:10px 20px;background:#f5f5f5;line-height:40px;cursor:pointer}#learn-press-checkout .payment-methods .lp-payment-method>label img{vertical-align:middle}#learn-press-checkout .payment-methods .lp-payment-method.selected>label{background:#d4d4d4}#learn-press-checkout .payment-methods .payment-method-form{display:none;padding:15px 20px;border-top:1px solid #ddd;background:#f9f9f9}#learn-press-checkout-login,#learn-press-checkout-register{margin-bottom:1.5em;padding:20px 20px 0 20px;border:1px solid #ddd;background:#fff}#learn-press-order-review,.learn-press-checkout-comment{margin-bottom:20px}#checkout-form-login,#checkout-form-register{_display:none}#checkout-form-login .learn-press-form-register,#checkout-form-login .learn-press-form-login,#checkout-form-register .learn-press-form-register,#checkout-form-register .learn-press-form-login{display:none}#checkout-guest-email{margin:0 0 20px 0}#checkout-guest-email .form-heading{margin:0}#checkout-guest-email #checkout-guest-options{margin:0;list-style:none}#checkout-guest-email #checkout-existing-account,#checkout-guest-email #checkout-new-account{display:none;margin:0}#checkout-guest-email.email-exists #checkout-existing-account{display:block}#checkout-guest-email.email-exists #checkout-new-account{display:none}.lp-list-table{width:100%;margin-bottom:20px}.lp-list-table th,.lp-list-table td{padding:20px;border:0 solid rgba(204,204,204,0.3);border-bottom-width:1px;background:#fff;font-size:16px;line-height:1;text-align:right}@media(max-width:767px){.lp-list-table th,.lp-list-table td{padding:15px}}.lp-list-table thead{box-sizing:border-box;border:1px solid #e5e7f2}.lp-list-table thead tr th{height:60px;border-bottom:0;color:#333;background:#f1f2f8;font-size:18px}.lp-list-table tbody,.lp-list-table tfoot{box-sizing:border-box;border:1px solid rgba(204,204,204,0.3);border-top:0}.lp-list-table tbody tr td,.lp-list-table tbody tr th,.lp-list-table tfoot tr td,.lp-list-table tfoot tr th{height:62px;color:#666;background:#fff;font-size:16px;font-weight:300}.lp-list-table tbody tr td a,.lp-list-table tbody tr th a,.lp-list-table tfoot tr td a,.lp-list-table tfoot tr th a{border-bottom:0;color:#666;text-decoration:none}.lp-list-table tbody tr td a:hover,.lp-list-table tbody tr th a:hover,.lp-list-table tfoot tr td a:hover,.lp-list-table tfoot tr th a:hover{color:var(--lp-primary-color)}.lp-list-table tbody tr .column-status .result-percent,.lp-list-table tfoot tr .column-status .result-percent{font-weight:500}.lp-list-table tbody tr .column-status .lp-label,.lp-list-table tfoot tr .column-status .lp-label{font-weight:600}.lp-list-table tbody tr:nth-child(odd),.lp-list-table tfoot tr:nth-child(odd){background:#f5f5f5}.lp-list-table .list-table-nav td{font-size:14px}.lp-list-table .list-table-nav td.nav-text{text-align:right}.lp-list-table .list-table-nav td.nav-pages{text-align:left}.lp-list-table .list-table-nav td.nav-pages .learn-press-pagination{text-align:left}.lp-list-table .list-table-nav td.nav-pages .page-numbers{margin-bottom:0}.lp-label{display:inline-block;color:#666;font-size:16px;font-weight:300;line-height:1}.learn-press-form .form-fields{margin:0;padding:0;list-style:none}.learn-press-form .form-fields .form-field{margin:0 0 20px 0}.learn-press-form .form-fields .form-field label{display:block;margin:0 0 10px 0}.learn-press-form .form-fields .form-field input[type=text],.learn-press-form .form-fields .form-field input[type=email],.learn-press-form .form-fields .form-field input[type=number],.learn-press-form .form-fields .form-field input[type=password],.learn-press-form .form-fields .form-field textarea{width:100%;padding:8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.learn-press-form .form-fields .form-field .description{margin-top:10px;font-size:14px;font-style:italic;line-height:1.4}.learn-press-form .form-fields .form-field .asterisk{color:red}.learn-press-form-login,.learn-press-form-register{max-width:600px;margin-left:auto;margin-bottom:60px;margin-right:auto;padding:40px;border:1px solid #eee;border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06) !important}.learn-press-form-login h3,.learn-press-form-register h3{margin-bottom:20px;font-size:28px;line-height:1.4}.learn-press-form-login .form-fields .form-field label,.learn-press-form-register .form-fields .form-field label{font-size:16px;font-weight:400;user-select:none}.learn-press-form-login .form-fields .form-field input[type=text],.learn-press-form-login .form-fields .form-field input[type=password],.learn-press-form-login .form-fields .form-field input[type=tel],.learn-press-form-login .form-fields .form-field input[type=url],.learn-press-form-login .form-fields .form-field input[type=number],.learn-press-form-register .form-fields .form-field input[type=text],.learn-press-form-register .form-fields .form-field input[type=password],.learn-press-form-register .form-fields .form-field input[type=tel],.learn-press-form-register .form-fields .form-field input[type=url],.learn-press-form-register .form-fields .form-field input[type=number]{height:42px;border:1px solid #bbb;border-radius:4px;line-height:42px}.learn-press-form-login .form-fields .form-field input[type=text]:focus,.learn-press-form-login .form-fields .form-field input[type=password]:focus,.learn-press-form-login .form-fields .form-field input[type=tel]:focus,.learn-press-form-login .form-fields .form-field input[type=url]:focus,.learn-press-form-login .form-fields .form-field input[type=number]:focus,.learn-press-form-register .form-fields .form-field input[type=text]:focus,.learn-press-form-register .form-fields .form-field input[type=password]:focus,.learn-press-form-register .form-fields .form-field input[type=tel]:focus,.learn-press-form-register .form-fields .form-field input[type=url]:focus,.learn-press-form-register .form-fields .form-field input[type=number]:focus{border:0;outline:2px solid transparent !important;outline-offset:2px;box-shadow:0 0 0 2px #666 !important}.learn-press-form-login .form-fields .form-field.required label::after,.learn-press-form-register .form-fields .form-field.required label::after{content:" *";display:inline}.learn-press-form-login form[name=learn-press-login]>p>label,.learn-press-form-register form[name=learn-press-login]>p>label{color:#666;font-size:16px;cursor:pointer;user-select:none}.learn-press-form-login form[name=learn-press-login]>p>a,.learn-press-form-register form[name=learn-press-login]>p>a{color:#666;font-size:16px;line-height:1}.learn-press-form-login form[name=learn-press-login]>p:last-child,.learn-press-form-register form[name=learn-press-login]>p:last-child{margin-bottom:0}.learn-press-form-login button[type=submit],.learn-press-form-register button[type=submit]{width:100%;height:50px;border-radius:3px;outline:0;color:#fff;background:var(--lp-primary-color);box-shadow:none;font-size:16px;line-height:1;vertical-align:middle;text-decoration:none}.required label{font-weight:bold}.required label:after{content:" *";display:inline}.lp-password-input{display:flex;flex-direction:column;justify-content:center;position:relative}.lp-password-input input[type=password]{padding-left:2.5rem}.lp-password-input input::-ms-reveal{display:none}.lp-password-input .lp-show-password-input{position:absolute;top:8px;left:10px;cursor:pointer}.lp-password-input .lp-show-password-input::after{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f06e"}.lp-password-input .lp-show-password-input.display-password::after{color:#585858;content:"\f070"}.form-desc{font-size:smaller;font-style:italic}.become-teacher-form{width:90%;max-width:500px;margin:0 auto}.become-teacher-form .form-field input[type=text],.become-teacher-form .form-field input[type=email],.become-teacher-form .form-field input[type=number],.become-teacher-form .form-field input[type=password]{width:100%}body div.entry-content>div.learnpress{--responsive--aligndefault-width:100%;max-width:var(--lp-content-width,100%)}.lp-user-profile{position:relative;background:#fff}.lp-user-profile .lp-user-profile-avatar img{position:relative;width:100%;height:auto;border-radius:unset;display:block}.lp-user-profile .lp-user-profile-avatar+.lp-user-profile-socials{margin-top:10px;margin-bottom:5px}.lp-user-profile .lp-user-profile-socials{display:flex;position:relative;z-index:1;justify-content:center;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.lp-user-profile .lp-user-profile-socials a{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;margin:0 7px;border:1px solid #cfcfcf;color:#666;background:#fff;font-size:14px;line-height:35px;text-align:center;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.lp-user-profile .lp-user-profile-socials a:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.lp-user-profile .wrapper-profile-header{color:#fff;background:var(--lp-secondary-color);position:relative}@media(max-width:990px){.lp-user-profile .wrapper-profile-header .lp-profile-content-area{min-height:inherit;padding:50px 15px}.lp-user-profile .wrapper-profile-header .lp-profile-left{float:right;position:static}.lp-user-profile .wrapper-profile-header .lp-profile-right{float:left;width:calc(100% - 270px);margin-right:0}}@media(max-width:768px){.lp-user-profile .wrapper-profile-header .lp-profile-left{width:220px}.lp-user-profile .wrapper-profile-header .lp-profile-right{width:calc(100% - 220px)}.lp-user-profile .wrapper-profile-header .lp-user-profile-socials{margin-left:-5px;margin-right:-5px}.lp-user-profile .wrapper-profile-header .lp-user-profile-socials a{width:36px;height:36px;margin:0 5px;line-height:36px}}@media(max-width:500px){.lp-user-profile .wrapper-profile-header .lp-profile-left{float:none;margin:0 auto}.lp-user-profile .wrapper-profile-header .lp-profile-right{width:100%;padding-top:30px;text-align:center}}.lp-user-profile .wrapper-profile-header::before{left:100%;right:auto}.lp-user-profile .wrapper-profile-header::after{right:100%;left:auto}.lp-user-profile .lp-profile-content-area{position:relative;padding-top:50px;padding-bottom:50px;display:flex;align-items:center}@media(max-width:650px){.lp-user-profile .lp-profile-content-area{flex-direction:column}.lp-user-profile .lp-profile-content-area .lp-profile-right{text-align:center;width:100%;padding:50px 15px 0}}.lp-user-profile .lp-profile-left{min-width:270px;max-width:270px;padding:5px;border:2px solid #eaeaea;border-radius:3px}.lp-user-profile .lp-profile-right{padding-left:15px;padding-right:35px}.lp-user-profile .lp-profile-username{padding-bottom:10px;font-size:18px;font-weight:500;text-transform:capitalize}.lp-user-profile .lp-profile-username::before,.lp-user-profile .lp-profile-username::after{content:"";width:30px;height:1px;background-color:white;display:inline-block;vertical-align:middle;margin:0}.lp-user-profile .lp-profile-username::before{margin-left:5px}.lp-user-profile .lp-profile-username::after{margin-right:5px}.lp-user-profile .lp-profile-user-bio{font-size:16px;font-weight:300;line-height:26px}.lp-user-profile #profile-sidebar{float:right;width:270px;margin-top:0;border:1px solid rgba(0,0,0,0.1);border-top:0;background:#fff;margin-top:58px}@media(max-width:990px){.lp-user-profile #profile-sidebar{width:100%}.lp-user-profile #profile-sidebar .lp-user-profile-avatar{max-width:150px}}.lp-user-profile #profile-nav .lp-profile-nav-tabs{margin:0;padding:0;list-style:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{position:relative;margin:0;border-top:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li a{display:block;padding:0 20px;color:#333;font-size:16px;font-weight:500;line-height:50px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{padding:0 52px 0 20px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a>i{display:inline-block;position:absolute;right:24px;width:28px;color:var(--lp-primary-color);font-size:12px;line-height:53px;text-align:right}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{float:left;margin-left:4px;color:#999;font-family:"Font Awesome 5 Free";font-size:10px;font-weight:900;content:"\f054"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li{margin:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li a{border-bottom:1px solid #f9f9f9}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li a:hover{color:var(--lp-primary-color);background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li:hover>a i{color:var(--lp-primary-color);background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active,.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:hover{background:var(--lp-primary-color)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active>a::after,.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:hover>a::after{content:"\f053"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a{padding-right:52px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.wishlist>a::before{position:absolute;right:25px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900;content:"\f004"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.wishlist:hover a::before{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.logout>a::after{display:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs li>a{box-sizing:border-box;height:50px}.lp-user-profile #profile-nav .lp-profile-nav-tabs li>ul{display:none;position:absolute;z-index:1000;top:0;right:100%;min-width:150px;margin:0;padding:0;background:#fff;box-shadow:0 15px 20px 0 rgba(0,0,0,0.05);list-style:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a i,.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a::after,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a i,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a::after{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>ul{display:block}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul{position:relative;right:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active{background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active>a{color:#ffb606}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active>a i{color:#ffb606}@media(max-width:990px){.lp-user-profile #profile-nav{overflow-x:scroll;border-top:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs{width:max-content}.lp-user-profile #profile-nav .lp-profile-nav-tabs::after{display:table;clear:both;content:""}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{float:right;border:0;border-left:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{height:auto;padding:0 45px 0 20px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{margin-right:10px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.has-child a::after{content:"\f077"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a{padding-right:45px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a::after{content:"\f078"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul{display:none;width:max-content;transform:translateX(20%)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul::after{display:table;clear:both;box-shadow:0 0;content:""}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li{float:right;border-left:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li:last-child{border-left:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li a{padding:0 10px}.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover ul{display:none !important}.lp-user-profile #profile-nav .lp-profile-nav-tabs li:not(.has-child)>a::after{display:none}}@media(max-width:560px){.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{max-width:80px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{font-size:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{margin-right:0}}.lp-user-profile .lp-profile-content{float:left;width:calc(100% - 300px);margin-bottom:60px;padding-top:58px}@media(max-width:990px){.lp-user-profile .lp-profile-content{width:100%}}@media(max-width:767px){.lp-user-profile .lp-profile-content .learn-press-tabs__nav{display:block;width:100%;border:0}.lp-user-profile .lp-profile-content .learn-press-tabs__nav::after{display:table;clear:both;content:""}.lp-user-profile .lp-profile-content .learn-press-tabs__tab{float:right;border-left:0}.lp-user-profile .lp-profile-content .learn-press-tabs__tab label{padding-left:25px;padding-right:25px}.lp-user-profile .lp-profile-content .profile-orders{overflow-x:scroll}}.lp-user-profile .lp-profile-content .course-categories,.lp-user-profile .lp-profile-content .course-instructor{margin-bottom:14px}.lp-user-profile .lp-profile-content .course-categories{padding:0}.lp-user-profile .lp-profile-content .lp-button{display:block;margin:0 auto 52px auto;padding:13px 34px;border-color:var(--lp-secondary-color);font-size:14px;font-weight:500;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.lp-user-profile .lp-profile-content .lp-button:hover{border-color:var(--lp-primary-color)}.lp-user-profile ul.learn-press-courses .course{margin:0 0 40px 0}.lp-user-profile .profile-orders .profile-heading{display:none}.lp-user-profile .profile-orders table{margin-top:0}.lp-user-profile .profile-orders .column-order-actions a{margin-left:6px;color:black;text-decoration:underline;font-weight:500}.lp-user-profile .profile-orders .column-order-actions a:hover,.lp-user-profile .profile-orders .column-order-actions a:focus{color:var(--lp-primary-color)}.lp-user-profile #dashboard-general-statistic{margin-bottom:55px;padding-bottom:20px;border-bottom:1px solid #ddd}.lp-user-profile .dashboard-general-statistic__row{display:flex;margin:0 -15px;justify-content:center;flex-wrap:wrap}.lp-user-profile .dashboard-general-statistic__row .statistic-box{min-width:200px;max-width:270px;margin:0 15px 40px 15px;padding:15px 20px;border:1px solid #ccc;border-radius:4px;background:#f9fafc;text-align:center}@media(max-width:990px){.lp-user-profile .dashboard-general-statistic__row .statistic-box{width:45%}}@media(max-width:767px){.lp-user-profile .dashboard-general-statistic__row .statistic-box{width:100%;margin:0 15px 15px}}.lp-user-profile .dashboard-general-statistic__row .statistic-box:hover{background:#eaeaea}.lp-user-profile .dashboard-general-statistic__row[data-col="2"] .statistic-box{width:50%}.lp-user-profile .dashboard-general-statistic__row[data-col="4"] .statistic-box{width:25%}.lp-user-profile .dashboard-general-statistic__row[data-col="5"] .statistic-box{width:20%}.lp-user-profile .statistic-box .statistic-box__text{margin:0 0 7px 0;padding:0;color:#666;font-size:18px;font-weight:400;line-height:1}.lp-user-profile .statistic-box .statistic-box__number{color:#333;font-size:18px;font-weight:500;line-height:1}.lp-user-profile .profile-courses>h3{margin-top:0;margin-bottom:36px;color:#333;font-size:30px;font-weight:600;line-height:1;text-transform:capitalize}.lp-profile-content table.lp-list-table{border-spacing:0;border-top:1px solid #ccc;border-right:1px solid #ccc;margin-bottom:40px}.lp-profile-content table.lp-list-table tr th,.lp-profile-content table.lp-list-table tr td{border-left:1px solid #ccc;border-bottom:1px solid #ccc;text-align:center}.lp-profile-content table.lp-list-table tr td a{color:var(--wp--preset--color--foreground);font-weight:400}.lp-profile-content table.lp-list-table tr td a:hover{color:var(--lp-primary-color)}.lp-profile-content #profile-content-order-details h3{margin-top:0;font-size:30px;line-height:1.5;font-weight:500;margin-bottom:15px;font-family:var(--wp--preset--font-family--system-font)}.profile-basic-information .form-field,form[name=profile-change-password] .form-field{margin:0 10px 24px 10px}.profile-basic-information .form-field>label,form[name=profile-change-password] .form-field>label{margin:0 0 12px 0;color:#333;font-size:16px;font-weight:500;font-style:italic}.profile-basic-information .form-field .form-field-input input,form[name=profile-change-password] .form-field .form-field-input input{height:43px;padding:8px 20px;font-weight:400}.profile-basic-information .form-field .form-field-input input[type=password],form[name=profile-change-password] .form-field .form-field-input input[type=password]{padding:8px 20px}.profile-basic-information .form-field .form-field-input textarea,form[name=profile-change-password] .form-field .form-field-input textarea{padding:9px 20px 16px 20px;font-weight:300;line-height:24px}.profile-basic-information .form-field .form-field-input input,.profile-basic-information .form-field .form-field-input textarea,form[name=profile-change-password] .form-field .form-field-input input,form[name=profile-change-password] .form-field .form-field-input textarea{border:1px solid #ccc;color:#999;font-size:14px;font-style:italic}.profile-basic-information .form-field .form-field-input input:focus,.profile-basic-information .form-field .form-field-input textarea:focus,form[name=profile-change-password] .form-field .form-field-input input:focus,form[name=profile-change-password] .form-field .form-field-input textarea:focus{border-color:var(--lp-primary-color);outline:0;color:#222}.profile-basic-information .form-field .form-field-input ::placeholder,form[name=profile-change-password] .form-field .form-field-input ::placeholder{opacity:1;color:#999}.profile-basic-information .form-field .form-field-input :-ms-input-placeholder,form[name=profile-change-password] .form-field .form-field-input :-ms-input-placeholder{color:#999}.profile-basic-information .form-field .form-field-input ::-ms-input-placeholder,form[name=profile-change-password] .form-field .form-field-input ::-ms-input-placeholder{color:#999}.profile-basic-information .form-field .form-field-input .description,form[name=profile-change-password] .form-field .form-field-input .description{margin-top:15px}@media(max-width:767px){.profile-basic-information .form-field,form[name=profile-change-password] .form-field{margin:0 0 24px 0}}.profile-basic-information .form-field__50,form[name=profile-change-password] .form-field__50{float:right;width:calc(50% - 20px);margin-left:10px}@media(max-width:767px){.profile-basic-information .form-field__50,form[name=profile-change-password] .form-field__50{float:unset;width:100%;margin:0 0 24px 0}}.profile-basic-information .form-field__clear,form[name=profile-change-password] .form-field__clear{clear:both}.profile-basic-information button,form[name=profile-change-password] button{padding:16px 24px;border:0;border-radius:3px;color:#fff;background:var(--lp-primary-color);font-size:16px;font-weight:400;line-height:1}.profile-basic-information button:hover,form[name=profile-change-password] button:hover{opacity:.5;background:var(--lp-primary-color)}.profile-basic-information p,form[name=profile-change-password] p{margin:0}#learn-press-profile-basic-information .form-fields::after{display:block;clear:both;content:""}@media(max-width:767px){#learn-press-profile-basic-information .form-fields{margin:0}}#learn-press-profile-basic-information button[type=submit]{padding:0 15px;height:40px;line-height:40px;border:0;display:inline-flex;align-items:center;justify-content:center;background-color:var(--lp-primary-color);color:white;font-size:16px;font-weight:400;-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}#learn-press-profile-basic-information button[type=submit]:hover{opacity:.5;background-color:var(--lp-primary-color)}.recover-order__title{margin-bottom:5px}.recover-order__description{margin-bottom:20px;color:#999;font-size:.8em;font-style:italic}div.order-recover{display:flex}div.order-recover>.button-recover-order{margin:0;margin-right:20px;flex:0 0 auto}div.order-recover>.button-recover-order.loading::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}div.order-recover input[type=text]{width:100%;height:43px;margin-left:10px;padding:0 22px;border:1px solid #ccc;border-radius:3px;background-color:#fff;font-size:14px;font-weight:300;font-style:italic;line-height:43px;flex:1 1 auto}.learn-press-profile-course__progress .lp_profile_course_progress{border:1px solid #eee;border-top:0;overflow-x:auto}.learn-press-profile-course__progress .lp_profile_course_progress__item{display:grid;align-items:center;padding:15px;border-top:1px solid #eee;grid-template-columns:90px 1fr 80px 190px 140px;column-gap:20px}.learn-press-profile-course__progress .lp_profile_course_progress__item div img{max-width:60px;height:auto}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__item div img{max-width:100%}}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__item{display:block}}.learn-press-profile-course__progress .lp_profile_course_progress__header{background-color:#eee}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__header{display:flex;overflow-x:auto;white-space:nowrap;justify-content:flex-end}}.lp_profile_course_progress__nav button.loading::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.entry-content ul.learn-press-profile-course__tab__inner{padding:0}.content ul.learn-press-courses{margin-right:-15px;margin-left:-15px}.content ul.learn-press-courses[data-layout=list]{margin:0}.learn-press-profile-course__tab__inner{display:flex;margin:40px 0 0 0 !important;padding:0 !important;background:#eee;list-style:none !important}.learn-press-profile-course__tab__inner>li{list-style:none;margin:0 !important}.learn-press-profile-course__tab__inner>li:hover{cursor:pointer}.learn-press-profile-course__tab__inner a{display:inline-block;padding:15px 30px;font-weight:600;position:relative}.learn-press-profile-course__tab__inner a.active{color:var(--lp-primary-color);background:#fff}.learn-press-profile-course__tab__inner a.active::before{content:"";height:4px;width:100%;background-color:var(--lp-primary-color);position:absolute;top:0;right:0;left:auto}.learn-press-course-tab-filters .learn-press-filters{margin-top:20px;margin-right:0;padding:0;list-style:none}.learn-press-course-tab-filters .learn-press-filters a.active{color:var(--lp-primary-color)}.lp-profile-content ul{list-style:none !important;padding:0 !important}.learnpress_avatar__form label{display:inline-block}.learnpress_avatar__form input[type=file]{display:none}.learnpress_avatar__form__upload{display:flex;width:200px;height:200px;border:1px dashed #ccc;border-radius:3px;background-color:#fafafa;font-size:14px;font-weight:300;font-style:italic;line-height:43px;text-align:center;cursor:pointer;align-items:center;justify-content:center}.learnpress_avatar__form__upload div{line-height:1.4}.learnpress_avatar__button--loading::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}button.learnpress_avatar__button{height:40px;padding:0 15px;border:0;background:var(--lp-primary-color);color:white;margin-top:15px;border-radius:3px}button.learnpress_avatar__button+button{margin-right:15px;margin-left:0}#primary .learn-press-courses[data-size="3"] .course{width:50%}body.learnpress .learn-press-tabs .learn-press-tabs__tab,body.learnpress .attachment-recent-works-thumbnail{border-radius:0}#learn-press-course-tabs.show-all .course-tab-panel{margin-bottom:40px}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .course-tab-panels .course-tab-panel:nth-child(1){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .learn-press-nav-tabs .course-nav:nth-child(1){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .learn-press-nav-tabs .course-nav:nth-child(1) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .course-tab-panels .course-tab-panel:nth-child(2){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .learn-press-nav-tabs .course-nav:nth-child(2){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .learn-press-nav-tabs .course-nav:nth-child(2) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .course-tab-panels .course-tab-panel:nth-child(3){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .learn-press-nav-tabs .course-nav:nth-child(3){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .learn-press-nav-tabs .course-nav:nth-child(3) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .course-tab-panels .course-tab-panel:nth-child(4){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .learn-press-nav-tabs .course-nav:nth-child(4){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .learn-press-nav-tabs .course-nav:nth-child(4) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .course-tab-panels .course-tab-panel:nth-child(5){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .learn-press-nav-tabs .course-nav:nth-child(5){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .learn-press-nav-tabs .course-nav:nth-child(5) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .course-tab-panels .course-tab-panel:nth-child(6){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .learn-press-nav-tabs .course-nav:nth-child(6){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .learn-press-nav-tabs .course-nav:nth-child(6) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .course-tab-panels .course-tab-panel:nth-child(7){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .learn-press-nav-tabs .course-nav:nth-child(7){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .learn-press-nav-tabs .course-nav:nth-child(7) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .course-tab-panels .course-tab-panel:nth-child(8){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .learn-press-nav-tabs .course-nav:nth-child(8){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .learn-press-nav-tabs .course-nav:nth-child(8) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .course-tab-panels .course-tab-panel:nth-child(9){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .learn-press-nav-tabs .course-nav:nth-child(9){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .learn-press-nav-tabs .course-nav:nth-child(9) label{color:var(--lp-primary-color);background:#fff}.course-tab-panels .course-tab-panel{padding-top:30px}.course-tab-panel{display:none}.course-tab-panel.active{display:block}.course-tab-panel .course-description{color:#666;font-size:16px;font-weight:300;line-height:26px}.course-tab-panel .course-description h4{margin-top:0;margin-bottom:1.125rem;color:#333;font-size:18px;font-weight:500}.course-tab-panel .course-description p{line-height:inherit}.course-tab-panel .course-description img{max-width:100%;height:auto;vertical-align:middle}.course-tab-panel .lp-course-author{display:flex;margin-bottom:40px}@media(max-width:767px){.course-tab-panel .lp-course-author{flex-direction:column}}.course-tab-panel .lp-course-author .course-author__pull-left{margin-left:30px;text-align:center;align-items:center}@media(max-width:767px){.course-tab-panel .lp-course-author .course-author__pull-left{margin-left:0;margin-bottom:30px}}.course-tab-panel .lp-course-author img{width:50px;height:50px;margin-bottom:20px;border-radius:50%;object-fit:cover;object-position:center}.course-tab-panel .lp-course-author .course-author__pull-right{flex:1}@media(max-width:767px){.course-tab-panel .lp-course-author .course-author__pull-right{width:100%;text-align:center}}.course-tab-panel .lp-course-author .author-title{margin-bottom:18px}.course-tab-panel .lp-course-author .author-title a{color:#333;box-shadow:none;font-size:18px;font-weight:500;text-transform:capitalize}.course-tab-panel .lp-course-author .author-title a:hover{color:var(--lp-primary-color)}.course-tab-panel .lp-course-author .author-description{color:#666;font-size:16px;font-weight:300;line-height:26px}.course-tab-panel .lp-course-author .author-socials{display:grid;grid-template-columns:repeat(4,33px);gap:10px;justify-content:center}.course-tab-panel .lp-course-author .author-socials>a{display:inline-block;width:33px;height:33px;margin:0;border:1px solid #ededed;border-radius:50%;color:#878787;box-shadow:none;font-size:14px;line-height:33px;text-align:center;vertical-align:middle;transition:all .3s}.course-tab-panel .lp-course-author .author-socials>a:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.course-tab-panel .lp-course-author .author-socials .fa-googleplus::before{content:"\f0d5"}.course-summary div.lp-list-co-instructor{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}.course-summary div.lp-list-co-instructor__item{display:flex;column-gap:30px}@media(max-width:767px){.course-summary div.lp-list-co-instructor__item{align-items:center;flex-direction:column;padding:0 15px;column-gap:0;row-gap:10px}}.course-summary div.lp-list-co-instructor__avatar>img{width:100%;max-width:96px;border-radius:999px}.course-summary div.lp-list-co-instructor__bio{flex:1}.course-summary div.lp-list-co-instructor__bio__top>a{font-size:18px;font-weight:600}.course-summary div.lp-list-co-instructor__bio__description{font-size:1rem}.course-summary .course-price{margin-bottom:10px}.course-summary .course-price .origin-price,.course-summary .course-price .price{vertical-align:middle}.course-summary .course-price .origin-price{margin-left:10px;font-size:18px;font-style:italic;text-decoration:line-through}.course-summary .course-price .price{font-size:24px}.course-summary .course-summary-sidebar .lp-course-buttons{margin-bottom:20px}.course-summary .course-featured-review .featured-review__title{margin-top:0;margin-bottom:6px;font-size:1.2rem;font-weight:500}.course-summary .course-featured-review .featured-review__stars{padding-bottom:12px;color:var(--lp-primary-color);font-size:16px}.course-summary .course-featured-review .featured-review__content{position:relative;color:#666;font-size:1rem;font-style:italic;line-height:24px}.course-summary .course-featured-review .featured-review__content::after{position:absolute;top:-42px;left:-15px;color:rgba(102,102,102,0.1);font-family:Arial;font-size:180px;font-weight:700;font-style:normal;content:"‘‘";transform:rotate(-180deg)}.course-summary .course-tags a{display:inline-block;padding:3px 5px;border-radius:4px;color:#fff;background:#9aa5ab;font-size:12px;line-height:1}.edit-content{margin-right:5px}ul.learn-press-nav-tabs{display:flex;margin:0;padding:0;border:1px solid rgba(204,204,204,0.3);border-bottom:0;background:#f1f2f8;list-style:none}ul.learn-press-nav-tabs .course-nav{float:right;position:relative;margin:0;border-left:1px solid rgba(204,204,204,0.3);border-bottom:1px solid rgba(204,204,204,0.3);list-style:none}ul.learn-press-nav-tabs .course-nav:first-child.active::after{position:absolute;top:-1px;right:-1px;width:1px;height:100%;background:#fff;content:""}ul.learn-press-nav-tabs .course-nav:last-child{border-left:0}ul.learn-press-nav-tabs .course-nav:last-child.active::after{position:absolute;top:-1px;left:-2px;width:2px;height:100%;background:#fff;content:""}ul.learn-press-nav-tabs .course-nav.active{border-bottom:0}ul.learn-press-nav-tabs .course-nav.active::before{position:absolute;top:-1px;right:0;width:100%;height:4px;background:var(--lp-primary-color);content:""}ul.learn-press-nav-tabs .course-nav.active label{color:var(--lp-primary-color);background-color:white}ul.learn-press-nav-tabs .course-nav a{display:inline-block;padding:10px 20px;border-bottom:0;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}ul.learn-press-nav-tabs .course-nav a:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}ul.learn-press-nav-tabs[data-tabs] .course-nav{flex:1}ul.learn-press-nav-tabs[data-tabs] .course-nav a{width:100%;text-align:center}ul.learn-press-nav-tabs::after{display:block;clear:both;content:""}@media(max-width:767px){ul.learn-press-nav-tabs{display:grid;grid-template-columns:repeat(2,1fr);max-height:none}}.course-item-popup #tab-curriculum{display:block}.course-curriculum ul.curriculum-sections{position:relative;z-index:499;margin:0;padding:0;list-style:none}.course-curriculum ul.curriculum-sections .closed .section-item__loadmore{display:none}.course-curriculum ul.curriculum-sections .section{margin:0;padding:0;flex-wrap:wrap}.course-curriculum ul.curriculum-sections .section:last-child{padding:0}.course-curriculum ul.curriculum-sections .section.section-empty .section-header{margin-bottom:20px}.course-curriculum ul.curriculum-sections .section.section-empty .learn-press-message{margin-left:15px;margin-right:15px}.course-curriculum ul.curriculum-sections .section-title.c+.section-desc{display:block}.course-curriculum ul.curriculum-sections .section-title.c span.show-desc::before{-webkit-transform:rotate(-180deg);-moz-transform:rotate(-180deg);-ms-transform:rotate(-180deg);-o-transform:rotate(-180deg);transform:rotate(-180deg);top:0}.course-curriculum ul.curriculum-sections .item-meta.duration{background:#d9e0f1}.course-curriculum .section-item__loadmore{display:flex;justify-content:center;align-items:center}.course-curriculum .section-item__loadmore button{display:inline-flex;margin-top:10px;margin-left:auto;margin-right:auto;padding:10px 20px;border:1px solid #ccc;border-radius:4px;outline:0;color:#222;background:#f7f7f7;box-shadow:none;font-weight:500;justify-content:center;align-items:center;cursor:pointer;font-size:1rem;font-family:sans-serif}.course-curriculum .section-item__loadmore.loading button::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.course-curriculum .section-header{display:table;width:100%;padding:0 0 26px 0;border-bottom:0;border-bottom:1px solid #d9e0f1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-curriculum .section-header .section-title,.course-curriculum .section-header .section-desc{margin:0}.course-curriculum .section-header span.show-desc{display:inline-block;position:absolute;top:50%;left:30px;width:20px;height:20px;transform:translate(0,-50%)}.course-curriculum .section-header span.show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f107"}.course-curriculum .section-header span.show-desc:hover::before{border-top-color:#ccc}.course-curriculum .section-header .section-desc{margin:0;margin-top:10px;font-size:14px;line-height:21px;color:#999;font-style:italic}.course-curriculum .section-header .section-meta{display:block;padding-top:17px;padding-bottom:15px;font-size:14px;text-align:left;vertical-align:middle;white-space:nowrap}.course-curriculum .section-item{width:100%}.course-curriculum .section-content{margin:0 0 15px 0;padding:0;list-style:none}.course-curriculum .section-content .course-item-meta{display:table-cell;padding:10px 0;text-align:left;vertical-align:middle;white-space:nowrap}.course-curriculum .section-content .course-item-meta .item-meta{display:inline-block;margin-right:14px;border-radius:3px;color:#fff;font-size:14px;line-height:23px;text-align:center;vertical-align:middle;padding:0 8px}.course-curriculum .section-content .course-item-meta .item-meta.final-quiz{background:#14c4ff}.course-curriculum .section-content .course-item-meta .item-meta.trans{padding:0}.course-curriculum .section-content .course-item-meta .count-questions{background:#9672cf}.course-curriculum .section-content .course-item-meta .duration{background:silver}.course-curriculum .section-content .course-item-meta .course-item-status{padding:0;color:#999;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-curriculum .section-content .course-item-meta .course-item-status::before{font-family:"Font Awesome 5 Free";font-size:14px;font-weight:900;vertical-align:middle;text-transform:lowercase;content:"\f00c"}.course-curriculum .section-content .course-item-preview{font-style:normal;padding:0}.course-curriculum .section-content .course-item-preview::before{color:#fff;padding:0 8px;background:#00adff;display:inline-flex;align-items:center;justify-content:center;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:baseline;content:attr(data-preview)}.course-curriculum .course-item{display:flex;position:relative;margin:0 0 2px 0;padding:0 30px 0 15px;background:rgba(241,242,248,0.4);font-size:14px;transition:padding-right linear .15s}@media(max-width:767px){.course-curriculum .course-item{padding:0 15px 0 0}}.course-curriculum .course-item>span{display:flex;width:28px;color:#666;font-size:16px;font-weight:300;align-items:center}.course-curriculum .course-item .section-item-link{display:table;padding-left:15px;padding-right:0;border-bottom:0;outline:0;box-shadow:none;line-height:1.5;color:#777;text-decoration:none}.course-curriculum .course-item .section-item-link:hover .item-name{color:var(--lp-primary-color)}.course-curriculum .course-item .section-item-link::before{display:table-cell;display:table-cell;right:0;width:20px;padding:15px 0;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:18px;font-weight:400;vertical-align:middle;transition:right linear .15s}.course-curriculum .course-item .item-icon,.course-curriculum .course-item .item-name{display:table-cell;padding:17px 16px;color:#333;font-size:16px;font-weight:600;vertical-align:middle}.course-curriculum .course-item .item-icon::before{font-size:18px}.course-curriculum .course-item .item-icon.icon-lock{float:left;margin-top:15px}.course-curriculum .course-item.course-item-lp_quiz .section-item-link::before{content:"\f059"}.course-curriculum .course-item.course-item-lp_lesson .section-item-link::before{content:"\f15b"}.course-curriculum .course-item.course-item-lp_lesson.course-item-type-video .section-item-link::before{content:"\f03d"}.course-curriculum .course-item.course-item-lp_lesson.course-item-type-audio .section-item-link::before{content:"\f028"}.course-curriculum .course-item.item-locked .course-item-status::before{color:var(--lp-secondary-color);content:"\f023"}.course-curriculum .course-item.has-status{padding-top:1px}.course-curriculum .course-item.has-status.status-completed .course-item-status::before,.course-curriculum .course-item.has-status.status-evaluated .course-item-status::before{color:#3bb54a}.course-curriculum .course-item.has-status.item-failed .course-item-status::before,.course-curriculum .course-item.has-status.failed .course-item-status::before{border-color:#f02425;color:#f02425;content:"\f00d"}.course-curriculum .course-item::before{position:absolute;top:50%;right:0;width:3px;height:0;background:#00adff;content:"";transition:height linear .15s,top linear .15s}.course-curriculum .course-item.current{padding-right:10px;background:#f9f9f9}.course-curriculum .course-item.current a::before{right:10px}.course-curriculum .course-item.current::before{top:0;height:100%}.course-curriculum .section-left{vertical-align:top}.course-curriculum .section-left .section-title{padding:0;color:#666;font-size:1.4rem;letter-spacing:0;text-transform:capitalize;display:block}.course-curriculum .curriculum-more__button{display:flex;width:100%;margin-top:20px;margin-bottom:20px;padding:10px 0;border:0;outline:0;color:#fff;background:#333;box-shadow:none;justify-content:center;align-items:center;cursor:pointer;font-size:1rem;font-family:sans-serif}.course-curriculum .curriculum-more__button.loading::before{display:inline-block;margin-left:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}body.course-item-popupx{overflow:hidden;_opacity:0}body.course-item-popupx #learn-press-course-curriculum{overflow:auto;position:fixed;z-index:9999;top:32px;bottom:0;right:0;width:400px;border-left:1px solid #ddd;background:#fff}body.course-item-popupx #learn-press-course-curriculum .section-header{padding:0 15px}body.course-item-popupx #learn-press-course-curriculum .section-header .section-desc{margin:-10px 0 5px}body.course-item-popupx #learn-press-course-curriculum .course-item{padding-left:15px;padding-right:15px}body.course-item-popupx #learn-press-course-curriculum .course-item a::before{right:15px}body.course-item-popupx #learn-press-content-item{overflow:hidden;position:fixed;z-index:9999;top:32px;left:0;bottom:0;right:400px;background:#fff}body.course-item-popupx #learn-press-content-item .content-item-wrap{max-width:900px;margin:10px auto}body.course-item-popupx #learn-press-content-item .course-item-title{font-size:1.4rem}body.course-item-popupx #learn-press-content-item .content-question-summary .review-heading{text-align:center}body.course-item-popupx #learn-press-content-item .content-question-summary .question-title{margin-bottom:10px;font-size:1.2rem}body.course-item-popupx #content-item-nav{position:fixed;z-index:99999;left:0;bottom:0;right:400px;height:60px;border-top:1px solid #ddd;background:#f5f5f5}body.course-item-popupx #content-item-nav .content-item-nav-wrap{max-width:900px;margin:10px auto}body.course-item-popupx #content-item-nav button{height:40px;padding:0 20px;line-height:40px}body.course-item-popupx .comment-form-textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.course-item-popupx.wpadminbar #learn-press-course-curriculum,body.course-item-popupx.wpadminbar #learn-press-content-item{top:92px}body.course-item-popupx.wpadminbar .content-item-description{margin-bottom:20px}body.course-item-popupx .content-item-summary{margin-bottom:50px}body.course-item-popupx .content-item-summary>h3{margin-bottom:20px}body.course-item-popupx .content-item-summary.content-item-video .entry-video{position:absolute;top:0;right:0;width:100%;background:#000;line-height:1}body.course-item-popupx .content-item-summary.content-item-video .entry-video iframe{width:100%;max-width:900px;margin-bottom:0;vertical-align:top}body.course-item-popupx .learn-press-content-protected-message{margin-bottom:50px;padding:20px;background:#ffe0e0}body.course-item-popupx.content-only #learn-press-content-item{z-index:9999999;top:0;bottom:0;right:0}body.course-item-popupx.content-only #learn-press-content-item .content-item-scrollable{bottom:0}body #ifr-course-item{position:absolute;z-index:999999;top:0;right:0;width:100%;height:100%;background:#fff}body .content-item-summary .form-button-finish-course,body .lp-quiz-buttons .form-button-finish-course{float:left}#wpadminbar #wp-admin-bar-edit-lp_quiz .ab-item::before,#wpadminbar #wp-admin-bar-edit-lp_lesson .ab-item::before,#wpadminbar #wp-admin-bar-edit-lp_question .ab-item::before{top:2px;font-family:"Font Awesome 5 Free"}#wpadminbar #wp-admin-bar-edit-lp_quiz .ab-item::before{content:"\f017"}#wpadminbar #wp-admin-bar-edit-lp_lesson .ab-item::before{content:"\f15c"}#wpadminbar #wp-admin-bar-edit-lp_question .ab-item::before{content:"\f29c"}.scroll-wrapper{overflow:hidden;opacity:0}.scroll-wrapper .scroll-element{background:transparent}.scroll-wrapper .scroll-element.scroll-y.scroll-scrolly_visible{transition:opacity .25s}.scroll-wrapper:hover .scroll-element.scroll-y.scroll-scrolly_visible{opacity:.7}.course-remaining-time .label-enrolled{font-size:inherit}.learn-press-form.completed button::before{margin-left:10px;font-family:"Font Awesome 5 Free";font-size:18px;content:"\f00c"}.lp-course-progress{position:relative}.lp-course-progress .lp-passing-conditional{position:absolute;top:0;width:3px;height:6px;margin-right:-1px;background:var(--lp-secondary-color)}.viewing-course-item .section-header .section-desc{display:none}.viewing-course-item .content-item-wrap{margin-top:50px}.course-meta{display:flex;margin-bottom:40px}.course-meta .course-meta__pull-left,.course-meta .course-meta__pull-right{display:flex;flex-wrap:wrap}.course-meta .course-meta__pull-left{flex:1}.course-meta .course-meta__pull-left .meta-item{margin-left:10px}.course-meta .course-meta__pull-right{flex:0 0 50%}.course-meta .course-meta__pull-right .meta-item{margin-right:10px}.course-meta.course-meta-primary .meta-item{flex:1}.course-meta.two-columns .course-meta{flex:1}.course-extra-box{margin-bottom:3px;border:1px solid rgba(204,204,204,0.3);border-radius:5px}.course-extra-box__title{--extra-height:50px;display:flex;align-items:center;position:relative;height:var(--extra-height);margin:0 !important;padding:0 38px 0 45px;background:rgba(181,187,211,0.15);font-size:1.1rem;font-weight:600;cursor:pointer}@media(max-width:767px){.course-extra-box__title{padding-right:15px}}.course-extra-box__title::after{position:absolute;top:0;left:20px;color:#666;font-family:"Font Awesome 5 Free";line-height:var(--extra-height);content:"\f0d7"}.course-extra-box__content{display:none}.course-extra-box__content-inner{-webkit-animation-name:course-extra-box__content-inner-transform;animation-name:course-extra-box__content-inner-transform;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-direction:normal;animation-direction:normal}.course-extra-box__content ul,.course-extra-box__content li{list-style:none}.course-extra-box__content ul{margin:0;padding:0}.course-extra-box__content li{margin:0;padding:10px 38px;border-bottom:1px solid rgba(204,204,204,0.3);color:#666;font-size:16px;font-weight:300}@media(max-width:767px){.course-extra-box__content li{padding-right:30px;padding-left:30px}}.course-extra-box__content li::before{margin-left:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900;content:"\f00c"}.course-extra-box__content li:last-child{border-bottom:0}.course-extra-box:last-child{margin-bottom:60px}.course-extra-box.active .course-extra-box__title::after{content:"\f0d8"}.course-extra-box+.comment-respond,.course-extra-box+.comments-area{margin-top:60px;margin-bottom:30px}.course-extra-box+.course-tabs{margin-top:60px}input[name=course-extra-box-ratio]{display:none}input[name=course-extra-box-ratio]:checked+.course-extra-box .course-extra-box__content{display:block}input[name=course-extra-box-ratio]:checked+.course-extra-box .course-extra-box__content .course-extra-box__content-inner{transform:scale(1)}@-webkit-keyframes course-extra-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(-5%);-moz-transform:translateX(-5%);-ms-transform:translateX(-5%);-o-transform:translateX(-5%);transform:translateX(-5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@keyframes course-extra-box__content-inner-transform{from{opacity:0;transform:translateX(-5%)}to{opacity:1;transform:translateX(0)}}.course-tab-panel-faqs{padding-top:64px}.course-tab-panel-faqs .course-faqs-box{margin-bottom:20px;border:1px solid rgba(204,204,204,0.6);border-radius:5px}.course-tab-panel-faqs .course-faqs-box__title{display:block;position:relative;margin:0;padding:20px 25px 20px 45px;font-size:1.1rem;font-weight:500;line-height:1.7;cursor:pointer}.course-tab-panel-faqs .course-faqs-box__title::after{position:absolute;top:50%;left:28px;color:#6c6c6c;font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900;content:"\f078";transform:translateY(-50%)}.course-tab-panel-faqs .course-faqs-box:last-child{margin-bottom:40px}.course-tab-panel-faqs .course-faqs-box:hover{background:rgba(241,242,248,0.4)}.course-tab-panel-faqs .course-faqs-box:hover .course-faqs-box__title{color:var(--lp-primary-color)}.course-tab-panel-faqs .course-faqs-box__content{display:none}.course-tab-panel-faqs .course-faqs-box__content-inner{padding:0 25px 25px 25px;color:#666;font-size:1rem;font-weight:300;line-height:26px;-webkit-animation-name:course-faqs-box__content-inner-transform;animation-name:course-faqs-box__content-inner-transform;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-direction:normal;animation-direction:normal}input[name=course-faqs-box-ratio]{display:none}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__content{display:block}input[name=course-faqs-box-ratio]:checked+.course-faqs-box{background:rgba(241,242,248,0.4)}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__title{color:var(--lp-primary-color)}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__title::after{content:"\f077"}@-webkit-keyframes course-faqs-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(-5%);-moz-transform:translateX(-5%);-ms-transform:translateX(-5%);-o-transform:translateX(-5%);transform:translateX(-5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@keyframes course-faqs-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(-5%);-moz-transform:translateX(-5%);-ms-transform:translateX(-5%);-o-transform:translateX(-5%);transform:translateX(-5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@media screen and (max-width:1300px){body.course-item-popup #learn-press-course-curriculum{width:300px}body.course-item-popup #learn-press-course-curriculum .progress-bg{width:40px}body.course-item-popup #content-item-nav{right:300px}body.course-item-popup .section-desc{display:none}}@media screen and (max-width:1200px){body.course-item-popupx #learn-press-course-curriculum{width:300px}body.course-item-popupx #content-item-nav{right:300px}body.course-item-popupx #learn-press-content-item .content-item-nav-wrap,body.course-item-popupx #learn-press-content-item .content-item-wrap{width:90%}}@media screen and (max-width:768px){body.course-item-popup .course-curriculum{width:200px}body.course-item-popup #content-item-nav{right:200px}body.course-item-popup #learn-press-content-item .content-item-nav-wrap,body.course-item-popup #learn-press-content-item .content-item-wrap{width:90%}body.course-item-popup.wpadminbar #learn-press-content-item,body.course-item-popup.wpadminbar #learn-press-course-curriculum{top:106px}.learn-press-course-results-progress{margin-left:0}.learn-press-course-results-progress .items-progress,.learn-press-course-results-progress .course-progress{float:none;width:100%;margin-left:0;margin-bottom:20px}}.lp-quiz-buttons{margin-bottom:20px;display:block;clear:both;content:""}.quiz-progress{margin-bottom:30px;background:#e7f7ff}.quiz-progress .progress-items{display:flex}.quiz-progress .progress-items .progress-item{position:relative;color:#777;font-size:15px;flex:1}.quiz-progress .progress-items .progress-item .progress-number,.quiz-progress .progress-items .progress-item .progress-label{display:block;line-height:1;text-align:center}.quiz-progress .progress-items .progress-item .progress-number{margin:15px 0 10px 0;font-size:20px}.quiz-progress .progress-items .progress-item .progress-label{margin-bottom:15px;font-size:14px}.quiz-progress .progress-items .progress-item i{display:none;float:right;width:60px;height:60px;color:#fff;background:#00adff;font-size:30px;line-height:60px;text-align:center}.quiz-progress .progress-items .progress-item::after{display:block;clear:both;content:""}.answer-options{margin:0;padding:0;list-style:none}.answer-options .answer-option{display:flex;overflow:hidden;position:relative;margin:0 0 18px 0;padding:10px;color:#777;background:#f5f5f5;font-size:20px;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-transition:background linear .25s;-moz-transition:background linear .25s;-ms-transition:background linear .25s;-o-transition:background linear .25s;transition:background linear .25s}.answer-options .answer-option .option-title{display:table-cell;font-size:smaller}.answer-options .answer-option .option-title .option-title-content{display:inline-block;vertical-align:middle}.answer-options .answer-option .option-title::before{position:absolute;top:0;bottom:0;right:0;width:3px;background:#ddd;content:"";-webkit-transition:background linear .25s;-moz-transition:background linear .25s;-ms-transition:background linear .25s;-o-transition:background linear .25s;transition:background linear .25s}.answer-options .answer-option input[type=checkbox],.answer-options .answer-option input[type=radio]{-webkit-appearance:initial;-moz-appearance:initial;position:relative;z-index:10;width:35px;min-width:35px;height:35px;margin:0 3px 0 10px;border:1px solid #cfcfcf;background:#f9fafc;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.answer-options .answer-option input[type=checkbox]:focus,.answer-options .answer-option input[type=radio]:focus{outline:0}.answer-options .answer-option input[type=checkbox]::after,.answer-options .answer-option input[type=radio]::after{margin-top:-10px;position:absolute;top:18px;right:9px;box-sizing:content-box;opacity:0;color:#3db748;font-family:"Font Awesome 5 Free";font-weight:900;font-size:16px;content:"\f00c"}.answer-options .answer-option input[type=checkbox]:checked ~ .option-title .option-title-content,.answer-options .answer-option input[type=radio]:checked ~ .option-title .option-title-content{position:relative}.answer-options .answer-option input[type=checkbox]:checked ~ .option-title::before,.answer-options .answer-option input[type=radio]:checked ~ .option-title::before{background:#00adff}.answer-options .answer-option input[type=checkbox]:checked::after,.answer-options .answer-option input[type=radio]:checked::after{opacity:1}.answer-options .answer-option input[type=checkbox]::after{margin-top:0;top:50%;right:50%;-webkit-transform:translate(50%,-50%);-moz-transform:translate(50%,-50%);-ms-transform:translate(50%,-50%);-o-transform:translate(50%,-50%);transform:translate(50%,-50%)}.answer-options .answer-option input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.answer-options .answer-option input[type=radio]::before{border-radius:50%}.answer-options .answer-option .option-title{margin:0}.answer-options .answer-option:hover{background:#e1f5ff}.answer-options .answer-option.answer-correct{background:#e1f5ff}.answer-options .answer-option.answer-correct input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answer-correct input[type=checkbox]:checked ~ .option-title::before{background:#e1f5ff}.answer-options .answer-option.answered-correct input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answered-correct input[type=checkbox]:checked ~ .option-title::before{background:#00adff}.answer-options .answer-option.answered-wrong input[type=radio]::before,.answer-options .answer-option.answered-wrong input[type=radio]::after,.answer-options .answer-option.answered-wrong input[type=checkbox]::before,.answer-options .answer-option.answered-wrong input[type=checkbox]::after{border-color:red}.answer-options .answer-option.answered-wrong input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answered-wrong input[type=checkbox]:checked ~ .option-title::before{background:red}button[data-counter]{position:relative}button[data-counter]::after{padding-right:5px;content:"(+" attr(data-counter) ")"}.quiz-result{max-width:320px;margin:20px auto 48px;text-align:center}.quiz-result .result-heading{display:none}.quiz-result.passed .result-message{background:#3bb54a}.quiz-result.passed .result-message::after{content:"\f00c"}.quiz-result .result-message{margin-bottom:30px;padding:10px 0 !important;color:#fff;background:#f02425;font-size:16px;line-height:22px;font-weight:400;display:flex;align-items:center;justify-content:center;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.quiz-result .result-message::after{margin-right:10px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f00d"}.quiz-result .result-grade .result-achieved,.quiz-result .result-grade .result-require{display:inline-block;margin:0 auto}.quiz-result .result-grade .result-achieved{padding-bottom:7px;border-bottom:1px solid #999;color:#333;font-size:28px;font-weight:500;line-height:1}.quiz-result .result-grade .result-require{display:block;padding-top:5px;color:#666;font-size:16px;font-weight:400;line-height:1}.quiz-result .result-grade .result-message{font-size:14px}.quiz-result.passed .result-achieved{color:#04adff}.quiz-result.passed .result-message strong{color:#04adff}.quiz-result .result-statistic{margin:0;padding:0;text-align:right;list-style:none}.quiz-result .result-statistic .result-statistic-field{display:flex;margin:0}.quiz-result .result-statistic .result-statistic-field+li{border-top:1px dashed #ccc}.quiz-result .result-statistic .result-statistic-field span,.quiz-result .result-statistic .result-statistic-field p{margin:0;flex:1}.quiz-result .result-statistic .result-statistic-field span{color:#666;font-size:16px;font-weight:400;line-height:35px}.quiz-result .result-statistic .result-statistic-field span::before{display:inline-block;width:15px;margin-left:10px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900}.quiz-result .result-statistic .result-statistic-field p{color:#333;font-size:16px;font-weight:500;line-height:35px;text-align:left}.quiz-result .result-statistic .result-statistic-field.result-time-spend label::before{font-weight:400;content:"\f017"}.quiz-result .result-statistic .result-statistic-field.result-point label::before{font-weight:400;content:"\f005"}.quiz-result .result-statistic .result-statistic-field.result-questions label::before{font-weight:400;content:"\f059"}.quiz-result .result-statistic .result-statistic-field.result-questions-correct label::before{color:#3db748;content:"\f00c"}.quiz-result .result-statistic .result-statistic-field.result-questions-wrong label::before{color:#f02425;content:"\f00d"}.quiz-result .result-statistic .result-statistic-field.result-questions-skipped label::before{color:#ddd;content:"\f2f5"}.quiz-status{position:sticky;z-index:99;top:0;left:0;right:0;margin:0 0 35px 0}.quiz-status>div{display:flex;box-sizing:border-box;width:100%;max-width:792px;height:60px;margin:0 auto;padding:5px 30px 5px 10px;border-radius:4px;background:var(--lp-primary-color);justify-content:center;align-items:center}@media(max-width:480px){.quiz-status>div{display:block;height:auto;text-align:center;padding:15px}.quiz-status>div .questions-index{margin-bottom:10px}}.quiz-status>div>div{display:flex;flex-direction:row-reverse;flex:0 0 50%;align-items:center}@media(max-width:480px){.quiz-status>div>div{justify-content:center}}.quiz-status>div .current-point{display:none}.quiz-status .questions-index{display:inline-block;color:#666;font-size:16px;font-weight:400;line-height:26px}.quiz-status .questions-index span{color:#333;font-weight:500}.quiz-status .countdown{position:relative;min-width:120px;margin-left:5px;padding:12px 29px;color:#333;background:#fff;font-size:14px;font-weight:400;line-height:1;text-align:center}.quiz-status .countdown .fas{position:absolute;top:50%;right:10px;color:#333;font-size:14px;transform:translateY(-50%)}.quiz-status .countdown .clock{display:none;width:40px;height:40px}.quiz-status .countdown .clock::before{position:absolute;width:40px;height:40px;border:4px solid #b1c1e6;border-radius:50%;content:"";-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.quiz-status .countdown .clock .circle-progress-bar{display:inline-block;position:relative;width:40px;height:40px;stroke:#5383f7}.quiz-status .countdown .clock .circle-progress-bar .circle-progress-bar__circle{transition:.35s stroke-dashoffset;transform:rotate(90deg);transform-origin:50% 50%}.quiz-status .countdown .clock.x .circle-progress-bar__circle{stroke:red}.quiz-status .submit-quiz button{margin:0 10px 0 0;border:0;border-radius:0;background:#fff;text-transform:uppercase}.quiz-status .submit-quiz button:hover{background:var(--lp-secondary-color)}.quiz-status.submitting .submit-quiz button{background:#ddd}.question-numbers{text-align:center;list-style:none}.question-numbers li{display:inline-block;position:relative;margin-bottom:3px}.question-numbers li a{display:block;min-width:20px;padding:8px;border:1px solid #ddd;color:#999;background:#f5f5f5;box-shadow:none;font-size:12px;line-height:1}.question-numbers li a span{vertical-align:middle}.question-numbers li a:hover{border:1px solid #3880a2;color:#fff;background:#00adff}.question-numbers li.current a{border-color:#3880a2;color:#fff !important;background:#00adff}.question-numbers li.current.skipped::after{background:#fff}.question-numbers li.answered a::after{margin-right:3px;font-family:"Font Awesome 5 Free";font-size:8px;vertical-align:middle}.question-numbers li.answered.answered-wrong a{color:red}.question-numbers li.answered.answered-true a{color:#00adff}.question-numbers li.answered.answered-true.current a{color:#fff}.question-numbers li.skipped::after{position:absolute;bottom:3px;right:50%;width:10px;height:4px;margin-right:-5px;border-radius:2px;background:#aaa;content:""}.quiz-intro{display:flex;margin:0 0 20px;padding:0;list-style:none;flex-flow:row wrap}@media(max-width:768px){.quiz-intro{padding-left:10px;padding-right:10px;justify-content:space-between}}.quiz-intro-item{display:flex;margin:0 0 0 40px;align-items:center}@media(max-width:768px){.quiz-intro-item{margin:0 0 0 20px}}.quiz-intro-item::before{position:relative;top:-2px;margin-left:10px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900}.quiz-intro-item--passing-grade{order:2}.quiz-intro-item--passing-grade::before{content:"\f012"}.quiz-intro-item--questions-count{order:1}.quiz-intro-item--questions-count::before{content:"\f12e"}.quiz-intro-item--duration{order:2}.quiz-intro-item--duration::before{content:"\f017"}.quiz-intro-item__title{margin:0;padding:0 0 0 8px;color:#333;font-size:16px;font-weight:300;line-height:1.7}.quiz-intro-item__content{color:#222;font-size:16px;font-weight:400}.question-explanation-content,.question-hint-content{margin-bottom:20px;padding:10px 15px;background:#f5f5f5}.redo-quiz button[type=submit]{content:attr(data-counter)}.circle-bar{position:relative;width:300px;height:300px;border-color:#ddd}.circle-bar::before{position:absolute;z-index:0;top:0;right:0;box-sizing:border-box;width:100%;height:100%;border:10px solid #ddd;border-radius:50%;content:""}.circle-bar .before,.circle-bar .after{position:absolute;z-index:0;top:0;right:0;box-sizing:border-box;width:100%;height:100%;border:10px solid #14c4ff;border-radius:50%;transform:rotate(-45deg)}.circle-bar .before{border-bottom-color:transparent;border-right-color:transparent;transform:rotate(-45deg)}.circle-bar .after{border-color:#14c4ff;border-top-color:transparent;border-left-color:transparent;transform:rotate(-45deg)}.circle-bar.bg50 .after{z-index:10;border-bottom-color:inherit;border-right-color:inherit;transform:rotate(-45deg)}.lp-quiz-buttons .complete-quiz,.lp-quiz-buttons .back-quiz,.lp-quiz-buttons .review-quiz{float:left}.quiz-result .result-grade{display:flex;flex-direction:column;position:relative;box-sizing:border-box;height:200px;margin-bottom:30px;padding:50px;justify-content:center;align-items:center;-webkit-transform:none !important;-moz-transform:none !important;-ms-transform:none !important;-o-transform:none !important;transform:none !important}.quiz-result .result-grade::before,.quiz-result .result-grade svg{position:absolute;top:0;right:50%;width:200px;height:200px;margin-right:-100px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.quiz-result .result-grade::before{box-sizing:border-box;padding:30px;border:10px solid #ccc;content:""}.quiz-result .result-grade svg{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.quiz-result .result-grade svg circle{stroke:var(--lp-primary-color)}.quiz-result.passed .result-grade svg{-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.quiz-result.passed .result-grade .result-achieved{color:#333}.quiz-result.passed .result-grade .result-message strong{color:#4caf50}.quiz-questions .question{margin-bottom:60px}.question .answer-option{padding:0;_border:2px solid #d9e0f1;background:#fff}.question .answer-option input[type=radio],.question .answer-option input[type=checkbox]{position:absolute;top:50%;margin:-19px 10px 0 0;border-color:#d9e0f1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question .answer-option input[type=radio]::after,.question .answer-option input[type=checkbox]::after{border-color:#d9e0f1}.question .answer-option input[type=radio]:disabled,.question .answer-option input[type=checkbox]:disabled{border-color:#ddd;background:#f9f9f9}.question .answer-option input[type=radio]:disabled::after,.question .answer-option input[type=checkbox]:disabled::after{border-color:#ddd}.question .answer-option input[type=radio]:checked:not(:disabled)::after,.question .answer-option input[type=checkbox]:checked:not(:disabled)::after{border-color:#99aee4}.question .answer-option input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.question .answer-option input[type=radio]::before{border-radius:50%}.question .answer-option .option-title{display:flex;width:100%;margin:0;padding:14px 65px 11px 10px;border:1px solid #ccc;color:#666;background:#fff;font-size:16px;font-weight:300;line-height:26px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question .answer-option .option-title::after{display:inline-block;visibility:hidden !important;content:"."}.question .answer-option .option-title:hover{background:#f9f9f9}.question .answer-option .option-title::before{display:none}.question .answer-option.answer-correct .option-title{border-color:#4caf50}.question .answer-option.answered-wrong .option-title{border-color:#ff6423}.question .question-title{display:block;margin-top:0;margin-bottom:18px;color:#333;font-size:18px;font-weight:500}.question .question-title .edit-link{float:left;font-size:14px;font-weight:normal}.question .question-content{margin-bottom:30px;color:#666;font-size:16px;font-weight:300;line-height:26px}.question .question-content img{width:100%;max-width:100%}.question .question-response{margin-bottom:10px;font-size:14px}.question .question-response .label{display:inline-block;margin:0 0 0 5px;padding:8px 10px;border-radius:4px;color:#fff;line-height:1}.question .question-response .point{display:inline-block}.question .question-response.correct .label{background:#4caf50}.question .question-response.incorrect .label{background:#ff6423}.question .question-index{display:inline-block;margin:0 0 0 5px}.question .btn-show-hint{position:relative;margin:0 10px 0 0;padding:0;outline:0;color:#00adff;background:transparent;font-size:0;text-decoration:none}.question .btn-show-hint::before{font-family:"Font Awesome 5 Free";font-size:18px;content:"\f059"}.question .btn-show-hint:hover span{position:absolute;bottom:100%;right:0;width:auto;padding:6px 9px;border-radius:2px;color:#333;background:#eee;font-size:14px;font-weight:400;line-height:1;white-space:nowrap;text-transform:none}.question.question-fill_in_blanks .blanks .blank-input-wrap{display:inline-block}.question.question-fill_in_blanks .blanks .blank-block{margin-bottom:20px}.question.question-fill_in_blanks .blanks .blank-input{display:inline-block;width:auto;min-width:50px;margin:0 10px;padding:0 10px;border:0;border-bottom:1px dashed #ddd;text-align:center;white-space:nowrap}.question.question-fill_in_blanks .blanks .blank-input br{display:none}.question.question-fill_in_blanks .blanks .blank-input>*{display:inline;white-space:nowrap}.question.question-fill_in_blanks .blanks .blank-select{display:inline-block;height:30px;margin-right:4px;padding:1px}.question.question-fill_in_blanks .blanks .blank-fills{display:inline-block}.question.question-fill_in_blanks .blanks .blank-fills code{margin:0 5px;padding:0 6px;background:#ddd;line-height:1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question.question-fill_in_blanks .blanks.ordered{list-style-position:inside}.question.question-fill_in_blanks .blanks.one-paragraph{line-height:3}.lp-sort-bg label.option-title{background:rgba(255,182,6,0.68) !important}.learn-press-message.fixed{position:fixed;top:32px;right:0;left:0;background:rgba(0,173,255,0.6);text-align:center;z-index:100;color:#FFF;padding:10px}.learn-press-message.fixed[data-delay-in]{display:none}.lp-archive-courses ul{list-style-type:revert;padding:0 1em 23px 0}.lp-archive-courses ul.learn-press-breadcrumb,.lp-archive-courses ul.course-nav-tabs{list-style:none;padding:0}@media(max-width:768px){.lp-archive-courses ul.learn-press-breadcrumb,.lp-archive-courses ul.course-nav-tabs{padding-right:15px;padding-left:15px}}.lp-archive-courses ul,.lp-archive-courses ol{list-style-type:decimal;list-style-position:inside;padding:0 0 23px}.lp-archive-courses ol ul{padding:2px 35px 2px 0}.lp-archive-courses ol ol{padding:2px 20px 2px 0}.lp-archive-courses thead th,.lp-archive-courses tr th{padding:9px 24px}.lp-archive-courses tr td{border-top:1px solid #eee;padding:6px 24px}.learnpress #left-area ul,.learnpress .entry-content ul,.learnpress .et-l--body ul,.learnpress .et-l--footer ul,.learnpress .et-l--header ul{padding:0 !important;list-style:none !important}.learnpress.dt-the7 .learn-press-filters{margin-bottom:20px}.learnpress.dt-the7 .learn-press-courses[data-size="3"] .course{width:50%}.bridge.learnpress .lp-archive-courses{margin-top:100px}.bridge.learnpress .lp-archive-courses ul.learn-press-breadcrumb{padding-top:45px}.bridge.learnpress .content{z-index:110}.bridge.learnpress .comment-respond .comment-form{margin:0}.bridge.learnpress .comment-respond .comment-form>p,.bridge.learnpress .comment-respond .comment-form>div{padding:0}.bridge.learnpress.learnpress-profile .content{z-index:100}.bridge.learnpress #learn-press-item-comments{background:#f6f6f6}.learnpress.ast-separate-container .ast-article-single{padding-right:15px;padding-left:15px}body.learnpress-page.twentysixteen #primary .lp-entry-content{float:none;width:auto;margin:0 15%}body.learnpress-page.twentyfifteen .course-summary-sidebar .widget{width:100%;padding:0}body.learnpress-page.twentysixteen .entry-footer{display:none}body.learnpress-page.twentysixteen .lp-entry-content{float:none;width:auto}body.learnpress-page.twentyseventeen #primary article.type-page{width:100%}@media screen and (min-width:61.5625em){body.twentysixteen.learnpress-page .entry-footer{display:none}body.twentysixteen.learnpress-page .lp-entry-content{float:none;width:auto}body:not(.search-results) article:not(.type-page) .entry-footer{display:none}body:not(.search-results) article:not(.type-page) .lp-entry-content{float:none;width:auto}}body.twentyseventeen.learnpress-page #primary article.page .entry-header,body.twentyseventeen.learnpress-page #primary article.page .lp-entry-content{width:100%;float:none}@media screen and (min-width:48em){body.twentyseventeen.learnpress-page #primary article.page .entry-header,body.twentyseventeen.learnpress-page #primary article.page .lp-entry-content{width:100%;float:none}}.learn-press-tip{display:none;margin:0 5px;color:#444;font-size:13px;font-style:normal;line-height:1;vertical-align:baseline;cursor:pointer}.learn-press-tip.ready{display:inline-block}.learn-press-tip::before{font-family:"Font Awesome 5 Free";content:"\f059"}.learn-press-tip:hover{opacity:.8}.learn-press-tip-floating{position:absolute;z-index:9999999;min-width:20px;margin-right:-1px;padding:.618em 1em;color:#fff;background:#383838;font-size:12px;line-height:1.2em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.learn-press-tip-floating>*{font-size:12px}.learn-press-tip-floating .close{display:inline-block;position:absolute;top:-8px;left:-8px;width:16px;height:16px;border:1px solid #fff;color:#fff;background:#468fbc;line-height:16px;text-align:center;cursor:pointer;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.learn-press-tip-floating .close::before{font-family:"Font Awesome 5 Free";content:"\f00d"}.learn-press-tip-floating p{margin:0}.learn-press-tip-floating::before{position:absolute;bottom:-6px;right:50%;width:0;height:0;margin-right:-6px;border:6px solid transparent;border-top-color:#383838;border-bottom-width:0;content:""}body.lp-preview.admin-bar #learn-press-content-item{top:32px !important}body.lp-preview #learn-press-course-curriculum{display:none}body.lp-preview #learn-press-content-item{top:0 !important;right:0 !important}@-webkit-keyframes rotating4{from{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@keyframes rotating4{from{-ms-transform:rotate(0);-moz-transform:rotate(0);-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-ms-transform:rotate(-360deg);-moz-transform:rotate(-360deg);-webkit-transform:rotate(-360deg);-o-transform:rotate(-360deg);transform:rotate(-360deg)}}@-webkit-keyframes animation4{from{right:-40%;width:40%}to{right:100%;width:10%}}@keyframes animation4{from{right:-40%;width:40%}to{right:100%;width:10%}}#popup_container{opacity:0;transform:scale(0.5)}body.confirm #popup_overlay{z-index:999998 !important}body.confirm #popup_container{z-index:999999 !important;max-width:90% !important;min-width:300px !important;padding:10px !important;background:#f5f5f5;transition:opacity .25s;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}body.confirm #popup_container #popup_title{display:none !important}body.confirm #popup_container #popup_message{margin:-10px;background:#FFF;padding:20px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}body.confirm #popup_container .close{position:absolute;top:3px;left:10px}body.confirm #popup_container #popup_panel{margin-top:20px;text-align:center}body.confirm #popup_container #popup_panel button,body.confirm #popup_container #popup_panel input[type=button],body.confirm #popup_container #popup_panel input[type=submit]{height:30px;line-height:30px;padding:0 25px}body.confirm #popup_container #popup_cancel{display:none}body.confirm #popup_container.ready{opacity:1;transform:scale(1)}a{text-decoration:none}.lp-content-area{width:100%;max-width:1170px;margin:0 auto}@media(max-width:1024px){.lp-content-area{padding-left:15px;padding-right:15px}}.lp-content-area::after,.lp-content-area::before{display:table;clear:both;content:""}.lp-archive-courses{width:100%;scroll-margin:30px}.lp-archive-courses.loading ul.learn-press-courses{position:relative}.lp-archive-courses.loading ul.learn-press-courses::before,.lp-archive-courses.loading ul.learn-press-courses::after{content:"";position:absolute;top:0;bottom:0;right:15px;left:15px}.lp-archive-courses.loading ul.learn-press-courses::after{z-index:3;background:#f3f3f3;background:linear-gradient(-90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);background-size:400% 100%;list-style:none;animation:lp-skeleton-loading 1.4s ease infinite}.lp-archive-courses.loading ul.learn-press-courses::before{z-index:2;opacity:.8%;background:#fff}.lp-archive-courses form[name=search-course]{position:relative;margin-bottom:20px}.lp-archive-courses form[name=search-course] .search-course-input{width:100%;padding:12px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.lp-archive-courses form[name=search-course] .search-course-button{position:absolute;top:1px;left:1px;bottom:1px;height:auto;padding:15px;line-height:1px}.lp-archive-courses .learn-press-courses-header{float:right;padding-top:4px}.lp-archive-courses .learn-press-courses-header h1{margin:0;font-size:30px;font-weight:600}@media(max-width:767px){.lp-archive-courses .learn-press-courses-header{margin-bottom:20px}}.lp-archive-courses .course-item{flex-direction:column;display:flex;transition:all .3s}.lp-archive-courses .course-item:hover .course-thumbnail .thumbnail::before{opacity:1}.lp-archive-courses .course-item:hover .course-thumbnail a img{transform:scale(1.05)}.lp-archive-courses .course-item:hover .course-wishlist{opacity:1}.lp-archive-courses .course-item .course-wishlist.filled{opacity:1}.lp-archive-courses .course-item .course-instructor{float:right;margin-bottom:16px;font-size:14px;font-weight:300;line-height:25px;text-transform:capitalize}.lp-archive-courses .course-item .course-instructor a{color:#059de9}.lp-archive-courses .course-item .course-instructor a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-content{position:relative;border-top:0}.lp-archive-courses .course-content .course-permalink{display:-webkit-box;clear:both;overflow:hidden;position:relative;border:0;color:#fff;text-decoration:none;text-transform:none;-webkit-line-clamp:2;-webkit-box-orient:vertical;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.lp-archive-courses .course-content .course-permalink:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.lp-archive-courses .course-content .course-review{display:none}.lp-archive-courses .course-content .course-categories,.lp-archive-courses .course-content .course-tags{display:block;font-size:14px;font-weight:300}.lp-archive-courses .course-content .course-categories{float:right;position:relative;margin-left:10px;margin-bottom:16px}.lp-archive-courses .course-content .course-categories a{display:inline-block;display:none;margin:0 10px;color:#fff;text-decoration:none}.lp-archive-courses .course-content .course-categories a:first-child{display:block;margin-right:0;padding:2px 16px;background:var(--lp-primary-color)}.lp-archive-courses .course-content .course-categories a:hover{color:#333}.lp-archive-courses .course-content .course-categories::after{position:absolute;top:50%;left:-2px;width:1px;height:12px;opacity:.5;background:#999;content:"";transform:translate(0,-50%)}.lp-archive-courses .course-content .course-info{color:#666;font-size:14px;font-weight:300}.lp-archive-courses .course-content .course-info>span{display:block}.lp-archive-courses .course-content .course-info .course-price{float:left}.lp-archive-courses .course-content .course-info .course-price .origin-price,.lp-archive-courses .course-content .course-info .course-price .price{color:#333;font-size:16px;font-weight:600}.lp-archive-courses .course-content .course-info .course-price .origin-price{margin-left:10px;color:#666;font-size:14px;font-weight:300;text-decoration:line-through}.lp-archive-courses .course-content .course-info .course-instructor{float:left}.lp-archive-courses .course-content .course-info::after{display:block;clear:both;content:""}.lp-archive-courses .course-content .course-excerpt{display:-webkit-box;overflow:hidden;margin-bottom:28px;color:#666;font-size:16px;font-weight:300;line-height:26px;-webkit-line-clamp:2;-webkit-box-orient:vertical}.lp-archive-courses .course-content .separator{display:none}.lp-archive-courses .course-wrap-thumbnail{overflow:hidden;position:relative}.lp-archive-courses .course-wrap-thumbnail .lp-badge.featured{position:absolute;z-index:100;top:28px;right:-110px;width:300px;text-align:center;transform:rotate(45deg)}.lp-archive-courses .course-wrap-thumbnail .course-wishlist{position:absolute;z-index:2;top:6px;left:6px;opacity:0;color:#fff;cursor:pointer}.lp-archive-courses .course-wrap-thumbnail .course-wishlist::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f004"}.lp-archive-courses .course-wrap-thumbnail .course-wishlist .course-wishlist__btn{display:none}.lp-archive-courses .course-wrap-thumbnail .course-wishlist:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-wrap-thumbnail:hover::before{opacity:1}.lp-archive-courses .course-wrap-thumbnail:hover .course-thumbnail a img{transform:scale(1.05)}.lp-archive-courses .course-wrap-thumbnail:hover .course-wishlist{opacity:1}.lp-archive-courses .course-thumbnail a{display:block;overflow:hidden}.lp-archive-courses .course-thumbnail .thumbnail{margin:0;padding:0;border:0;border-radius:unset;line-height:unset}.lp-archive-courses .course-thumbnail .thumbnail::before{position:absolute;z-index:1;top:0;left:0;bottom:0;right:0;opacity:0;background:rgba(0,0,0,0.5);content:"";transition:all .3s}.lp-archive-courses .course-thumbnail img{display:block;width:100%;height:auto;transition:all .5s ease;transform:scale(1)}.lp-archive-courses .course-title{margin:0;padding:0;color:#333;font-size:16px;font-weight:600;line-height:24px}.lp-archive-courses .course-title:hover{color:var(--lp-primary-color)}@media(min-width:769px){.lp-archive-courses .course-summary-content .course-info-left{width:calc(100% - 330px)}}.lp-archive-courses .course-summary-content .course-title{margin-bottom:42px;color:#fff;font-size:1.5rem;font-weight:500;line-height:1}.lp-archive-courses .course-summary-content .course-meta.course-meta-secondary{margin-bottom:0}@media(max-width:768px){.lp-archive-courses .course-summary-content{width:100%}}.lp-archive-courses .course-detail-info{padding:40px 0 10px 0;color:#fff;background:var(--lp-secondary-color);position:relative}.lp-archive-courses .course-detail-info::before,.lp-archive-courses .course-detail-info::after{content:"";width:50%;height:100%;background:var(--lp-secondary-color);position:absolute;top:0}.lp-archive-courses .course-detail-info::before{left:100%;right:auto}.lp-archive-courses .course-detail-info::after{right:100%;left:auto}.lp-archive-courses .course-meta__pull-left .meta-item{display:flex;height:46px;margin-left:50px;font-size:16px;font-weight:300;text-transform:capitalize}.lp-archive-courses .course-meta__pull-left .meta-item span{padding-left:4px;padding-right:0}.lp-archive-courses .course-meta__pull-left .meta-item:last-child{margin-left:0}.lp-archive-courses .course-meta__pull-left .meta-item::before{margin-left:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900}.lp-archive-courses .course-meta__pull-left .meta-item .meta-item__image{margin-left:10px;flex:0 0 46px}.lp-archive-courses .course-meta__pull-left .meta-item .meta-item__image img{overflow:hidden;position:relative;width:46px;height:46px;border-radius:50%}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-duration::before{content:"\f017"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-level::before{content:"\f012"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-lesson::before{content:"\f0c5"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-quiz::before{content:"\f12e"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-student::before{content:"\f501"}@media(max-width:1024px){.lp-archive-courses .course-meta__pull-left .meta-item{margin-left:30px}}@media(max-width:767px){.lp-archive-courses .course-meta__pull-left .meta-item{margin-left:0}}.lp-archive-courses .course-meta__pull-left .meta-item__value label{margin:0;color:#999;font-size:14px;font-weight:300;line-height:1.5}.lp-archive-courses .course-meta__pull-left .meta-item__value>div{line-height:1.5}.lp-archive-courses .course-meta__pull-left .meta-item__value>div a{color:#fff;font-size:16px;font-weight:400;text-transform:capitalize}.lp-archive-courses .course-meta__pull-left .meta-item__value>div a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-meta__pull-left .meta-item-categories{align-items:center}.lp-archive-courses .course-meta__pull-left .meta-item-categories::before{margin-left:10px;font-size:36px;content:"\f02e"}.lp-archive-courses .course-meta__pull-left .meta-item-categories .meta-item__value div span{padding:0 5px}.lp-archive-courses .course-meta__pull-left .meta-item-categories .meta-item__value div a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-meta__pull-left .meta-item-review .meta-item__value{display:flex;flex-direction:column-reverse;justify-content:flex-end;align-items:flex-end}.lp-archive-courses .course-meta__pull-left .meta-item-review .meta-item__value .review-stars-rated{margin-bottom:0;line-height:1}@media(max-width:767px){.lp-archive-courses .course-meta__pull-left{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px}}.lp-archive-courses .course-meta-primary{margin-bottom:36px}.lp-archive-courses .course-meta-primary .meta-item-categories::before{font-weight:400}.lp-archive-courses .lp-entry-content{display:flex;flex-direction:row}.lp-archive-courses .lp-entry-content .entry-content-left{width:calc(100% - 300px);max-width:100%;margin:0;padding-left:40px;padding-top:60px}@media(max-width:768px){.lp-archive-courses .lp-entry-content .entry-content-left{width:100%;padding-left:0;margin-bottom:50px}}@media(max-width:768px){.lp-archive-courses .lp-entry-content{flex-direction:column}}.lp-archive-courses .course-summary-sidebar{width:300px;max-width:100%;margin-top:-272px}@media(max-width:768px){.lp-archive-courses .course-summary-sidebar{width:100%;margin-top:0}.lp-archive-courses .course-summary-sidebar .course-summary-sidebar__inner{width:100%}}@media(max-width:767px){.lp-archive-courses .course-summary-sidebar{width:100%;padding-right:0}}.lp-archive-courses .course-summary-sidebar__inner{width:300px}.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-top{box-shadow:0 15px 20px 0 rgba(0,0,0,0.05)}.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-secondary{margin-top:30px;padding:0}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist{color:#fff;background:transparent !important;font-size:0}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist.on,.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist::before{font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900;content:"\f004"}.lp-archive-courses .course-summary-sidebar__inner>div{overflow:hidden;padding:20px;background:#fff}.lp-archive-courses .course-summary-sidebar__inner>div ul{list-style:none}.lp-archive-courses .course-summary-sidebar__inner>div ul li a{color:#666;font-size:16px;font-weight:300;line-height:24px}.lp-archive-courses .course-summary-sidebar__inner>div ul li a:hover{color:var(--lp-primary-color);box-shadow:unset}.learn-press-courses{clear:both;margin:0 -15px;padding:0 !important;min-height:300px;list-style:none;position:relative;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.learn-press-courses .course{width:25%;margin:0 0 60px 0;box-shadow:none;list-style:none}.learn-press-courses[data-layout=list]{margin:0}.learn-press-courses[data-layout=list] .course{display:flex;width:100%;padding:24px;border:1px solid rgba(204,204,204,0.3);border-radius:4px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:767px){.learn-press-courses[data-layout=list] .course{padding:15px}}.learn-press-courses[data-layout=list] .course-item{flex-direction:row;width:100%;border:unset;justify-content:space-between}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-item{flex-direction:column}}.learn-press-courses[data-layout=list] .course-content{float:left;width:calc(64.2% - 76px);padding-top:5px}@media(max-width:1200px){.learn-press-courses[data-layout=list] .course-content{width:calc(64.2% - 40px)}}@media(max-width:1200px){.learn-press-courses[data-layout=list] .course-content{width:calc(64.2% - 25px)}}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content{width:100%;padding-top:20px}}.learn-press-courses[data-layout=list] .course-content .course-categories a{position:relative;padding:2px 15px 2px 20px;-webkit-clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%)}.learn-press-courses[data-layout=list] .course-content .course-permalink{height:25px;margin-bottom:5px;-webkit-line-clamp:1}.learn-press-courses[data-layout=list] .course-content .course-tags a{margin:0 0 10px 10px;padding:3px 5px;border-radius:3px;color:#fff;background:#e4a2a2;line-height:1}.learn-press-courses[data-layout=list] .course-content .course-footer{float:right;margin-left:20px}.learn-press-courses[data-layout=list] .course-content .course-footer .course-students{display:none}.learn-press-courses[data-layout=list] .course-content .course-footer .course-price{float:unset}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content .course-footer{margin-bottom:30px}}.learn-press-courses[data-layout=list] .course-content .course-readmore{float:left;position:relative;left:4px}.learn-press-courses[data-layout=list] .course-content .course-readmore a{padding:9px 24px;border-radius:3px;color:#fff;background:var(--lp-primary-color);font-weight:400;line-height:1;transition:all .3s;display:block}.learn-press-courses[data-layout=list] .course-content .course-readmore a:hover{opacity:.5;background:var(--lp-primary-color)}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content .course-readmore{display:flex;float:unset;clear:both}}.learn-press-courses[data-layout=list] .course-wrap-meta{display:flex;padding-top:12px;padding-bottom:18px;color:#333;font-size:14px;font-weight:400}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-left:28px;text-transform:capitalize}@media(max-width:1024px){.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-left:20px}}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item::before{position:relative;top:-1px;margin-left:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-level::before{content:"\f012"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-duration::before{content:"\f017"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-lesson::before{content:"\f0c5"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-quiz::before{content:"\f12e"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-student::before{content:"\f501"}@media(max-width:815px){.learn-press-courses[data-layout=list] .course-wrap-meta{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:15px}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-left:15px}}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-wrap-meta{grid-template-columns:repeat(3,1fr)}}.learn-press-courses[data-layout=list] .course-wrap-thumbnail{float:right;width:35.8%}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-wrap-thumbnail{width:100%}}.learn-press-courses[data-layout=list] .course-title{font-size:18px}.learn-press-courses[data-layout=grid] .course{padding:0 15px}@media(max-width:992px){.learn-press-courses[data-layout=grid] .course{width:50%}}@media(max-width:767px){.learn-press-courses[data-layout=grid] .course{width:100%}}.learn-press-courses[data-layout=grid] .course-item:hover{box-shadow:0 15px 20px 0 rgba(0,0,0,0.2)}.learn-press-courses[data-layout=grid] .course-item .course-instructor{margin-bottom:7px}.learn-press-courses[data-layout=grid] .course-content{padding:15px 20px 12px 20px;border:1px solid #f0f0f0;border-top:0;flex-grow:1}.learn-press-courses[data-layout=grid] .course-content .course-categories{float:left;position:absolute;z-index:1;top:-34px;left:-1px;margin-left:0}.learn-press-courses[data-layout=grid] .course-content .course-categories::after{display:none}.learn-press-courses[data-layout=grid] .course-content .course-categories a{position:relative;margin:0;padding:2px 22px 2px 12px;-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%)}.learn-press-courses[data-layout=grid] .course-content .course-permalink{height:48px;margin-bottom:20px}.learn-press-courses[data-layout=grid] .course-content .course-info{display:flex;flex-direction:column;flex-grow:1}.learn-press-courses[data-layout=grid] .course-content .course-wrap-meta,.learn-press-courses[data-layout=grid] .course-content .course-excerpt,.learn-press-courses[data-layout=grid] .course-content .course-readmore{display:none}.learn-press-courses[data-layout=grid] .course-content .course-footer{padding-top:18px;border-top:1px solid rgba(153,153,153,0.2)}.learn-press-courses[data-layout=grid] .course-content .course-footer .course-students{float:right;text-transform:capitalize}.learn-press-courses[data-layout=grid] .course-content .course-footer .course-students::before{position:relative;top:-1px;margin-left:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900;content:"\f501"}.learn-press-courses[data-layout=grid] .learn-press-message{margin-right:15px;margin-left:15px}.learn-press-courses[data-size="3"] .course{width:33.3333%}@media(max-width:767px){.learn-press-courses[data-size="3"] .course{width:100%}}.learn-press-courses .lp-archive-course-skeleton{position:absolute;height:100%;background:linear-gradient(-90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);animation:lp-skeleton-loading 1.4s ease infinite;background-size:400% 100%}.learn-press-courses .lp-archive-course-skeleton li{display:none}.lp-courses-bar{display:flex;float:left;margin-bottom:48px}@media(max-width:767px){.lp-courses-bar{flex-direction:row;width:100%;justify-content:space-between}}.lp-courses-bar .search-courses{position:relative;width:306px;max-width:100%;margin-left:20px;line-height:1;flex:1}.lp-courses-bar .search-courses input[type=text]{width:100%;height:44px;padding:6px 18px 6px 32px;border:1px solid #ccc;border-radius:5px;background:#fff;font-size:14px;font-style:italic;line-height:1}.lp-courses-bar .search-courses input[type=text]:focus{border-color:var(--lp-primary-color);outline:0}.lp-courses-bar .search-courses button{position:absolute;top:50%;left:12px;width:30px;height:30px;padding:0;border:0;color:#333;background:transparent;font-size:16px;line-height:1;transform:translate(0,-50%)}.lp-courses-bar .search-courses button:focus{border:0;outline:0}.lp-courses-bar .search-courses button.loading>i::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.lp-courses-bar .search-courses ::-webkit-input-placeholder{color:#999}.lp-courses-bar .search-courses :-ms-input-placeholder{color:#999}.lp-courses-bar .search-courses ::placeholder{color:#999}@media(max-width:767px){.lp-courses-bar .search-courses{width:100%}}.lp-courses-bar .switch-layout{display:flex;height:44px;line-height:1;text-align:left;flex:0 0 40px;align-items:center;justify-content:center}.lp-courses-bar .switch-layout input[type=radio]{display:none}.lp-courses-bar .switch-layout .switch-btn{display:block;width:40px;height:40px;margin:0;padding:0;border-radius:5px;font-size:16px;line-height:40px;text-align:center;cursor:pointer}.lp-courses-bar .switch-layout .switch-btn::before{display:inline-block;margin:8px 6px;color:#333;font-family:"Font Awesome 5 Free";font-weight:900;line-height:1}.lp-courses-bar .switch-layout .switch-btn.grid::before{content:"\f00a"}.lp-courses-bar .switch-layout .switch-btn.list{margin-right:3px}.lp-courses-bar .switch-layout .switch-btn.list::before{content:"\f03a"}input[type=radio]:nth-child(1):checked ~ .switch-btn:nth-child(2){background:#f5f5f5}input[type=radio]:nth-child(1):checked ~ .switch-btn:nth-child(2)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(3):checked ~ .switch-btn:nth-child(4){background:#f5f5f5}input[type=radio]:nth-child(3):checked ~ .switch-btn:nth-child(4)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(5):checked ~ .switch-btn:nth-child(6){background:#f5f5f5}input[type=radio]:nth-child(5):checked ~ .switch-btn:nth-child(6)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(7):checked ~ .switch-btn:nth-child(8){background:#f5f5f5}input[type=radio]:nth-child(7):checked ~ .switch-btn:nth-child(8)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(9):checked ~ .switch-btn:nth-child(10){background:#f5f5f5}input[type=radio]:nth-child(9):checked ~ .switch-btn:nth-child(10)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(11):checked ~ .switch-btn:nth-child(12){background:#f5f5f5}input[type=radio]:nth-child(11):checked ~ .switch-btn:nth-child(12)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(13):checked ~ .switch-btn:nth-child(14){background:#f5f5f5}input[type=radio]:nth-child(13):checked ~ .switch-btn:nth-child(14)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(15):checked ~ .switch-btn:nth-child(16){background:#f5f5f5}input[type=radio]:nth-child(15):checked ~ .switch-btn:nth-child(16)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(17):checked ~ .switch-btn:nth-child(18){background:#f5f5f5}input[type=radio]:nth-child(17):checked ~ .switch-btn:nth-child(18)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(19):checked ~ .switch-btn:nth-child(20){background:#f5f5f5}input[type=radio]:nth-child(19):checked ~ .switch-btn:nth-child(20)::before{color:var(--lp-primary-color)}.lp_allow_repuchase_select{padding:20px;background:#f7f7f7}.lp_allow_repuchase_select>ul{padding:0;list-style:none}.lp_allow_repuchase_select>a{display:inline-block;margin-top:10px;color:#fff;background-color:#222}.comment-respond .comment-reply-title{font-size:30px;font-weight:500;line-height:1.2;margin-bottom:15px}.comment-respond .comment-form{margin:0 -15px}.comment-respond .comment-form>p label{display:block;margin-bottom:10px;font-size:16px;font-weight:500}.comment-respond .comment-form>p.comment-notes,.comment-respond .comment-form>p.logged-in-as{color:#666;font-size:16px}.comment-respond .comment-form>p.logged-in-as a{color:#666;text-decoration:underline}.comment-respond .comment-form>p.logged-in-as a:hover,.comment-respond .comment-form>p.logged-in-as a:focus{color:var(--lp-primary-color)}.comment-respond .comment-form>p.comment-form-cookies-consent{clear:both}.comment-respond .comment-form>p.comment-form-cookies-consent input{padding:0;margin-left:8px}.comment-respond .comment-form>p.comment-form-cookies-consent label{display:inline}.comment-respond .comment-form>p,.comment-respond .comment-form>div{padding:0 15px;margin-bottom:15px}.comment-respond .comment-form input[type=text],.comment-respond .comment-form input[type=email],.comment-respond .comment-form input[type=url]{height:40px;line-height:normal;width:100% !important;margin-bottom:15px}.comment-respond .comment-form input[type=submit]{background-color:var(--lp-primary-color);border:0;min-height:40px;line-height:40px;padding:0 15px;font-size:16px;text-transform:capitalize;font-weight:500;margin-top:15px;cursor:pointer;color:white}.comment-respond .comment-form .comment-form-author,.comment-respond .comment-form .comment-form-email,.comment-respond .comment-form .comment-form-url{width:33.33%;float:right}@media(max-width:575px){.comment-respond .comment-form .comment-form-author,.comment-respond .comment-form .comment-form-email,.comment-respond .comment-form .comment-form-url{width:100%;float:unset}}.comment-respond .comment-form textarea,.comment-respond .comment-form input{border:1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;max-width:100%}.comment-respond .comment-form textarea{width:100%;display:block;padding:20px 15px;resize:none}.course-summary-sidebar .course-sidebar-preview{margin-bottom:35px;background:#fff}.course-summary-sidebar .lp-course-buttons{margin-bottom:34px}.course-summary-sidebar .lp-course-buttons>*{margin-bottom:10px}.course-summary-sidebar .lp-course-buttons>*:last-child{margin-bottom:0}.course-summary-sidebar .lp-course-buttons form,.course-summary-sidebar .lp-course-buttons button{width:100%;text-decoration:none}.course-summary-sidebar .lp-course-buttons button{font-weight:500}.course-summary-sidebar .lp-course-buttons button:hover{border-color:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course:hover{opacity:.5;background:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}.course-summary-sidebar .lp-course-buttons button ~ .lp-enroll-notice{margin-top:20px;padding:20px;border:2px solid #059601;border-radius:9px;font-size:15px;line-height:1.4}.course-summary-sidebar .lp-course-buttons button ~ .lp-enroll-notice.error{border-color:#d85554}.course-summary-sidebar .course-results-progress .items-progress,.course-summary-sidebar .course-results-progress .course-progress{display:flex;flex-direction:row;margin:0 0 5px;padding:0;justify-content:space-between;flex-wrap:wrap}.course-summary-sidebar .course-results-progress .items-progress__heading,.course-summary-sidebar .course-results-progress .course-progress__heading{margin:0;margin-bottom:7px;padding:0;color:#333;font-size:1rem;font-weight:500;flex:1 1 auto;width:auto}.course-summary-sidebar .course-results-progress .items-progress .learn-press-progress,.course-summary-sidebar .course-results-progress .course-progress .learn-press-progress{clear:both;width:100%}.course-summary-sidebar .course-results-progress .number{display:block;margin:0;color:#666;font-size:16px;font-weight:300;line-height:16px;text-align:left}.course-sidebar-preview .course-price{text-align:center}.course-sidebar-preview .course-price .origin-price{color:#666;font-size:18px;font-weight:300;font-style:unset}.course-sidebar-preview .course-price .price{color:#333;font-size:1.8rem;font-weight:500}.course-sidebar-preview .media-preview{overflow:hidden;position:relative;margin:-20px -20px 20px}.course-sidebar-preview .media-preview img{max-width:100%;height:auto;vertical-align:top}.course-sidebar-preview .course-time{margin-bottom:28px;padding-bottom:8px;border-bottom:1px solid rgba(204,204,204,0.3)}.course-sidebar-preview .course-time-row{display:flex;color:#666;font-size:16px;font-weight:300;justify-content:space-between}.course-sidebar-preview .course-time-row strong{color:#333;font-weight:500}.course-sidebar-preview .course-time-row time{color:#666;font-size:1rem;font-weight:300;line-height:24px}.course-sidebar-preview>*:last-child{margin-bottom:0}.learnpress-page .lp-button.secondary{background:#9198ab}.learnpress-page .lp-button.secondary:hover{background:#9ba6c5}.learnpress-page .lp-button:disabled,.learnpress-page .lp-button[disabled]{background:#ddd;pointer-events:none}.learnpress-page:hover{text-decoration:none}#popup-course{display:flex;position:fixed;z-index:99999;top:0;left:0;bottom:0;right:0;background:#fff}#popup-course .back-course{padding-right:30px;padding-left:30px;line-height:70px;background:rgba(255,255,255,0.1);color:#fff}#popup-course .back-course:hover{background:rgba(255,255,255,0.15)}@media(max-width:768px){#popup-course .back-course{background:transparent;opacity:.6;padding-right:15px;padding-left:15px}#popup-course .back-course:hover{background:transparent;opacity:1}}#popup-course #popup-header{display:flex;position:fixed;z-index:100;left:0;right:475px;padding:0;border-bottom:1px solid #d9e0f1;background:var(--lp-secondary-color);-webkit-transition:right .25s;-moz-transition:right .25s;-ms-transition:right .25s;-o-transition:right .25s;transition:right .25s}#popup-course #popup-header .course-title{margin:0;padding:0;line-height:70px;letter-spacing:unset}#popup-course #popup-header .course-title a{display:-webkit-box;overflow:hidden;color:#fff;font-size:16px;font-weight:400;text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical}#popup-course #popup-header .course-title a:hover{color:var(--lp-primary-color)}@media(max-width:768px){#popup-course #popup-header .course-title{flex:1}}#popup-course #popup-header .items-progress{display:flex;justify-content:center;align-items:center;column-gap:10px}@media(max-width:768px){#popup-course #popup-header .items-progress{flex:1}}@media(max-width:767px){#popup-course #popup-header .items-progress{padding-bottom:20px;justify-content:end}}#popup-course #popup-header .number{padding-left:10px;color:#fff;font-size:14px;font-weight:300}#popup-course #popup-header .lp-button{display:flex;position:relative;height:40px;margin:9px;border:0;color:#fff;background:var(--lp-primary-color);font-size:14px;font-weight:400;justify-content:center;line-height:40px;align-items:center}#popup-course #popup-header .lp-button:hover{opacity:.8}#popup-course #popup-header .lp-button-back{float:left;margin:9px 10px}#popup-course #popup-header .lp-button-back button::before,#popup-course #popup-header .lp-button-back button::after{content:""}#popup-course #popup-header .lp-button-back button::before{border:1px solid #ddd}#popup-course #popup-header .lp-button-back button::after{border:1px solid #ddd}#popup-course .popup-header__inner{display:flex;width:792px;margin:0 auto;justify-content:space-between;align-items:center;padding-right:15px;padding-left:15px}@media(max-width:1024px){#popup-course .popup-header__inner{width:100%}}@media(max-width:767px){#popup-course .popup-header__inner{flex-direction:column}}#popup-course #popup-sidebar{overflow:auto;position:relative;box-shadow:0 15px 30px 0 rgba(0,0,0,0.1);flex:0 0 475px;-webkit-transition:.25s;-moz-transition:.25s;-ms-transition:.25s;-o-transition:.25s;transition:.25s}#popup-course #popup-sidebar .search-course{display:flex;position:relative;height:70px;background:#f9fafc}#popup-course #popup-sidebar .search-course input[name=s]{display:block;width:100%;margin:6px 0;padding-right:20px;border:0;color:#999;background:transparent;box-shadow:none;font-size:14px;line-height:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#popup-course #popup-sidebar .search-course input[name=s]::-webkit-input-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::-moz-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]:-ms-input-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]:-moz-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::-webkit-input-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]::-moz-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:-ms-input-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:-moz-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]::placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:focus{outline:0;color:#222}#popup-course #popup-sidebar .search-course button{position:absolute;top:0;left:10px;width:16px;height:70px;margin:0 10px;padding:0;border:0;background:transparent;line-height:1px}#popup-course #popup-sidebar .search-course button::before{color:#666;font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900;content:"\f002"}#popup-course #popup-sidebar .search-course button.clear{display:none}#popup-course #popup-sidebar .search-course button.clear::before{content:"\f00d"}#popup-course #popup-sidebar .search-course .search-results{display:none;overflow:auto;position:fixed;z-index:99999999;top:92px;bottom:0;right:0;width:400px;margin:0;border-top-color:transparent;border-left:1px solid #d9e0f1;background:#fbfcff}#popup-course #popup-sidebar .search-course .search-results .search-results__item{border-bottom:1px solid #d9e0f1;background:#fff}#popup-course #popup-sidebar .search-course .search-results .search-results__item img{position:absolute;right:10px;width:40px;height:40px}#popup-course #popup-sidebar .search-course .search-results .search-results__item a{display:-webkit-box;overflow:hidden;position:relative;box-sizing:content-box;height:40px;padding:10px 60px 10px 10px;color:#777;text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical}#popup-course #popup-sidebar .search-course .search-results .search-results__item:hover{background:#d9e0f1}#popup-course #popup-sidebar .search-course .search-results .search-results__item-title{overflow:hidden;margin:0 0 -2px 0;padding:0;font-size:16px;font-weight:normal}#popup-course #popup-sidebar .search-course .search-results .search-results__item-author{font-size:12px}#popup-course #popup-sidebar .search-course .search-results .course-price{position:absolute;left:10px;bottom:10px;font-size:12px}#popup-course #popup-sidebar .search-course .search-results .course-price .origin-price{font-size:smaller;text-decoration:line-through}#popup-course #popup-sidebar .search-course .search-results .search-results__not-found{padding:10px;color:#777}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination{padding:10px;text-align:center}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination a,#popup-course #popup-sidebar .search-course .search-results .search-results__pagination span{display:inline-block;margin:0 2px 10px 3px;padding:5px 8px;border:1px solid #d9e0f1;border-radius:4px;color:#777;font-size:14px;line-height:1;cursor:pointer}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination span{color:#999;background:#d9e0f1}#popup-course #popup-sidebar .search-course.searching .search-results{display:block}#popup-course #popup-sidebar .search-course.searching .clear{display:block}#popup-course #popup-sidebar .search-course.searching button{display:none}#popup-course #popup-sidebar .search-course.searching::after{position:absolute;z-index:1;bottom:0;right:50%;width:0;height:0;margin-right:-10px;border:10px solid transparent;border-bottom-color:#fff;content:""}#popup-course #popup-sidebar .course-curriculum{overflow:auto;position:absolute;top:70px;bottom:0;width:475px}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar-thumb{background:#ccc}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar{width:6px}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar-track{background:#f5f5f5}#popup-course #popup-sidebar .section{position:relative;padding:0 0 4px 0}#popup-course #popup-sidebar .section .circle-progress{display:inline-block;position:absolute;top:50%;left:10px;width:24px;height:24px;margin-top:-12px;border:3px solid #d9e0f1;border-radius:50%}#popup-course #popup-sidebar .section.section-empty .section-header{margin:0}#popup-course #popup-sidebar .section.section-empty .learn-press-message{margin:0;padding:10px;border-bottom:1px solid #d9e0f1;border-radius:0;color:#999;background:#f5f5f5;font-size:14px}#popup-course #popup-sidebar .section.section-empty .learn-press-message::before,#popup-course #popup-sidebar .section.section-empty .learn-press-message::after{position:absolute;z-index:9999;top:-16px;right:10px;width:0;height:0;border:8px solid transparent;border-bottom-color:#f5f5f5;background:transparent;content:"";-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}#popup-course #popup-sidebar .section.section-empty .learn-press-message::after{z-index:9998;top:-20px;right:8px;border-width:10px;border-bottom-color:#d9e0f1}#popup-course #popup-sidebar .section-header{position:sticky;z-index:1000;top:0;height:94px;padding:38px 20px 20px 20px;cursor:pointer;background-color:white}#popup-course #popup-sidebar .section-header .section-title{padding:0 0 4px 0;color:#000;font-size:20px;font-weight:500}#popup-course #popup-sidebar .section-header .section-title .show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f0d7"}#popup-course #popup-sidebar .section-header .section-toggle{justify-content:flex-end;flex:0}#popup-course #popup-sidebar .section-header .section-toggle i{color:#666}#popup-course #popup-sidebar .section-header .section-meta{padding-top:6px;padding-bottom:0}#popup-course #popup-sidebar .section-content{margin-bottom:0}#popup-course #popup-sidebar .course-item{min-height:50px;margin-bottom:4px;padding:5px 20px;background:#f9fafc;align-items:center}#popup-course #popup-sidebar .course-item>span{display:none}#popup-course #popup-sidebar .course-item::before{top:-1px;bottom:-1px;height:auto;background:transparent}#popup-course #popup-sidebar .course-item::after{content:""}#popup-course #popup-sidebar .course-item.current{background:#eaeaea}#popup-course #popup-sidebar .course-item.has-status.failed .trans{color:#f02425}#popup-course #popup-sidebar .course-item.status-completed .trans{color:#3bb54a}#popup-course #popup-sidebar .section-item-link{line-height:1;padding-left:0}#popup-course #popup-sidebar .section-item-link::before{padding:12px 0;vertical-align:unset}#popup-course #popup-sidebar .section-item-link .item-name{width:100%;padding:0 17px 0 10px;font-size:14px;line-height:21px;font-weight:500}#popup-course #popup-sidebar .course-item-meta{padding:0}#popup-course #popup-sidebar .course-item-meta .item-meta{padding:0;color:#999;background:transparent;font-size:12px;line-height:1.5;height:auto}#popup-course #popup-sidebar .course-item-meta .item-meta:first-child{margin-right:0}#popup-course #popup-sidebar .course-item-meta .item-meta::before{font-size:12px;line-height:21px}#popup-course #popup-content{overflow:auto;position:relative;margin:70px 0 50px 0;flex:1;padding-right:15px;padding-left:15px}#popup-course #popup-content .lp-button{position:relative;margin:0 0 0 10px;padding:12px 29px;border-color:var(--lp-secondary-color);font-size:14px}#popup-course #popup-content .lp-button.instant-check .instant-check__icon{margin-left:5px}#popup-course #popup-content .lp-button.instant-check .instant-check__icon::before{font-family:"Font Awesome 5 Free";content:"\f058"}#popup-course #popup-content .lp-button.instant-check .instant-check__info{visibility:hidden;position:absolute;top:100%;right:0;margin-top:3px;padding:11px 20px;border-radius:3px;background:#eee;white-space:nowrap;text-transform:none}#popup-course #popup-content .lp-button.instant-check:hover .instant-check__info{visibility:visible;position:absolute;top:100%;right:0;margin-top:3px;padding:11px 11px;border-radius:3px;color:#333;background:#eee;white-space:nowrap}#popup-course #popup-content .lp-button.instant-check.loading .instant-check__icon{display:inline-block;animation:lp-rotating 1s linear infinite}#popup-course #popup-content .lp-button.instant-check.loading .instant-check__icon::before{font-weight:800;content:"\f110"}#popup-course #popup-content .lp-button:hover{border-color:var(--lp-primary-color)}#popup-course #popup-content .lp-button.completed{display:flex;flex-direction:row-reverse;margin-top:32px;border-color:transparent;color:#fff;background:#3db748;font-size:16px;align-items:center;justify-content:center}#popup-course #popup-content .lp-button.completed i{margin-right:9px;font-size:14px}#popup-course #popup-content.fixed-quiz-status .quiz-status{background:var(--lp-primary-color)}#popup-course #popup-content.fixed-quiz-status .quiz-status>div{padding:0}@media(max-width:767px){#popup-course #popup-content{margin-top:113px}}#popup-course #popup-footer{position:fixed;z-index:999;left:0;bottom:0;right:475px;width:100%;max-width:792px;height:50px;margin:0 auto;border-top:1px solid #ebebeb;background:#fff;-webkit-transition:right .25s;-moz-transition:right .25s;-ms-transition:right .25s;-o-transition:right .25s;transition:right .25s}@media(max-width:1024px){#popup-course #popup-footer{width:auto;padding:0 15px}}#popup-course #popup-footer .course-item-nav{justify-content:space-between}#popup-course #popup-footer .course-item-nav .prev,#popup-course #popup-footer .course-item-nav .next{display:flex;line-height:50px}#popup-course #popup-footer .course-item-nav .prev a,#popup-course #popup-footer .course-item-nav .next a{display:block;color:#666;font-size:16px}#popup-course #popup-footer .course-item-nav .prev::before,#popup-course #popup-footer .course-item-nav .next::before{color:#999;font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900}#popup-course #popup-footer .course-item-nav .prev:hover a,#popup-course #popup-footer .course-item-nav .prev:hover::before,#popup-course #popup-footer .course-item-nav .next:hover a,#popup-course #popup-footer .course-item-nav .next:hover::before{color:var(--lp-primary-color)}#popup-course #popup-footer .course-item-nav .prev:hover .course-item-nav__name,#popup-course #popup-footer .course-item-nav .next:hover .course-item-nav__name{display:block}#popup-course #popup-footer .course-item-nav .next{flex-direction:row-reverse}#popup-course #popup-footer .course-item-nav .next::before{margin-right:10px;content:"\f0da"}#popup-course #popup-footer .course-item-nav[data-nav=next]{justify-content:flex-end}#popup-course #popup-footer .prev::before{margin-left:10px;content:"\f0d9"}#popup-course #popup-footer .prev .course-item-nav__name{left:auto;right:-30px}#popup-course #popup-footer .prev .course-item-nav__name::before{left:auto;right:5px}@media(max-width:1024px){#popup-course #popup-footer .prev .course-item-nav__name{right:15px}}#popup-course #popup-footer .course-item-nav__name{display:none;position:absolute;top:-20px;left:-30px;width:auto;padding:10px 15px;color:#666;background:#ccc;font-size:14px;font-weight:300;line-height:1}@media(max-width:1024px){#popup-course #popup-footer .course-item-nav__name{top:-25px;left:15px;right:auto}}#popup-course #sidebar-toggle{display:inline-block;position:absolute;z-index:100;top:198px;right:475px;width:25px;height:56px;margin:0;background:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,0.15);cursor:pointer;transition:.25s;-webkit-appearance:none;border:0}#popup-course #sidebar-toggle:after{display:none}#popup-course #sidebar-toggle::before{display:inline-block;position:absolute;top:50%;right:50%;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f0d9";transition:.25s;transform:translate(50%,-50%)}#popup-course #sidebar-toggle:focus{border:0;outline:0}#popup-course .lp-quiz-buttons .complete-quiz,#popup-course .lp-quiz-buttons .back-quiz,#popup-course .lp-quiz-buttons .review-quiz{float:left}#popup-course .quiz-results,#popup-course .quiz-content,#popup-course .quiz-questions,#popup-course .quiz-buttons,#popup-course .quiz-attempts{margin-bottom:60px}#popup-course .quiz-questions .lp-fib-content{margin-bottom:20px;padding:20px;border:2px solid #f5f5f5;border-radius:6px;line-height:1.6}#popup-course .quiz-questions .lp-fib-input{display:inline-block;width:auto;max-width:none}#popup-course .quiz-questions .lp-fib-input>input{height:36px;padding:6px 16px;border:1px solid #222;line-height:36px}#popup-course .quiz-questions .lp-fib-answered{padding:0 10px;background:#ececec;white-space:nowrap}#popup-course .quiz-questions .lp-fib-answered.fail{border:2px solid #d85554}#popup-course .quiz-questions .lp-fib-answered.fail .lp-fib-answered__answer{text-decoration:line-through}#popup-course .quiz-questions .lp-fib-answered.correct{border:2px solid #00adff}#popup-course .quiz-questions .lp-fib-note{display:flex;margin-right:10px;font-size:14px;font-weight:400;align-items:center}#popup-course .quiz-questions .lp-fib-note>span{display:inline-block;width:20px;height:20px;margin:0 0 0 5px}#popup-course .quiz-questions .lp-sorting-choice__check-answer{padding:5px 20px;border:2px solid #059601;border-radius:5px;font-size:1rem}#popup-course .question .answer-option input[type=radio],#popup-course .question .answer-option input[type=checkbox]{-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);margin:0 10px 0 0}#popup-course .question .answer-option input[type=radio]::before{border-radius:50%}#popup-course .question .question-response{display:flex;align-items:center;justify-content:flex-start}#popup-course .scrollbar-light>.scroll-element{z-index:9999}#popup-course .scrollbar-light>.scroll-element.scroll-y{display:none}#popup-course .scrollbar-light>.scroll-element.scroll-y .scroll-bar{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.admin-bar #popup-course{top:32px}body.lp-sidebar-toggle__close #popup-course>#sidebar-toggle{right:0}body.lp-sidebar-toggle__close #popup-course>#sidebar-toggle::before{content:"\f0da"}body.lp-sidebar-toggle__close #popup-course #popup-sidebar{flex:0}body.lp-sidebar-toggle__close #popup-course #popup-header,body.lp-sidebar-toggle__close #popup-course #popup-footer{right:0}@media(max-width:768px){body:not(.lp-sidebar-toggle__open) #popup-course>#sidebar-toggle{right:0}body:not(.lp-sidebar-toggle__open) #popup-course>#sidebar-toggle::before{content:"\f0da"}body:not(.lp-sidebar-toggle__open) #popup-course #popup-sidebar{flex:0}}.course-curriculum .section-header .section-meta{position:relative}@media screen and (max-width:1280px){#popup-course #popup-sidebar{flex-basis:300px}#popup-course #popup-sidebar .course-curriculum{width:300px}#popup-course #popup-header,#popup-course #popup-footer{right:300px}#popup-course #sidebar-toggle{right:299px}}@media screen and (max-width:782px){body.admin-bar #popup-course{top:46px}#popup-course #popup-sidebar{flex-basis:250px}#popup-course #popup-sidebar .course-curriculum{width:250px}#popup-course #popup-header,#popup-course #popup-footer{right:250px}#popup-course #sidebar-toggle{right:249px}#popup-course .course-item-meta .item-meta.count-questions,#popup-course .course-item-meta .item-meta.duration{display:none}}.content-item-wrap{width:792px;max-width:100%;margin:0 auto;padding-bottom:80px}@media(max-width:1024px){.content-item-wrap{width:100%}}.content-item-wrap .course-item-title{margin-top:0;margin-bottom:24px;color:#333;font-size:30px;font-weight:600}@media(max-width:767px){.content-item-wrap .course-item-title{text-align:center}}.content-item-wrap h4{font-size:1.5rem;font-weight:500;line-height:1.5}.content-item-wrap .content-item-summary{padding-top:50px}.content-item-wrap .content-item-description{margin-bottom:30px}.content-item-wrap .content-item-description h2,.content-item-wrap .content-item-description h3,.content-item-wrap .content-item-description h4,.content-item-wrap .content-item-description h5,.content-item-wrap .content-item-description h6{margin-top:0;margin-bottom:18px;font-size:18px;letter-spacing:unset}.content-item-wrap .content-item-description p{margin:0 0 18px 0;color:#666;font-size:16px;font-weight:300;line-height:26px}.content-item-wrap .content-item-description img{max-width:100%;height:auto;vertical-align:middle}.content-item-wrap #learn-press-quiz-app{margin-bottom:40px}.content-item-wrap .quiz-content{margin-bottom:40px;color:#666;font-size:16px;font-weight:300;line-height:26px}.content-item-wrap .quiz-content img{max-width:100%;height:auto;vertical-align:middle}.content-item-wrap .quiz-buttons{display:flex;justify-content:center;text-align:center}.content-item-wrap .quiz-buttons .button-right .lp-button{margin:0 15px 0 0}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]{margin:0;border:1px solid #d9e0f1;color:#777;background:#fbfcff}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]::before{display:inline-block;width:15px;height:15px;border:2px solid #d9e0f1;border-top-color:transparent;border-right-color:transparent;content:"";-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].prev::before{margin-right:7px;-webkit-transform:rotate(-135deg);-moz-transform:rotate(-135deg);-ms-transform:rotate(-135deg);-o-transform:rotate(-135deg);transform:rotate(-135deg)}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].next{margin-right:-1px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].next::before{margin-left:7px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]:hover{background:#fff}.content-item-wrap .quiz-buttons.align-center{display:block;text-align:center}.content-item-wrap .quiz-buttons.align-center .button-left{text-align:center}.content-item-wrap .quiz-buttons.align-center .button-left.fixed{position:fixed;z-index:99999;bottom:0;right:50%;width:100%;max-width:792px;height:49px;margin-right:237px;transform:translateX(50%)}@media(max-width:768px){.content-item-wrap .quiz-buttons.align-center .button-left.fixed{width:100% !important}}.content-item-wrap .quiz-buttons.align-center .button-left.nav-center{height:50px;margin-right:0 !important}.content-item-wrap .quiz-buttons:not(.infinity).is-first .prev{display:none}.content-item-wrap .quiz-buttons:not(.infinity).is-last .next{display:none}.content-item-wrap .quiz-buttons:not(.is-first):not(.is-last) .prev{border-top-left-radius:0;border-bottom-left-radius:0}.content-item-wrap .quiz-buttons:not(.is-first):not(.is-last) .next{border-top-right-radius:0;border-bottom-right-radius:0}.content-item-wrap .questions-pagination{height:33px;padding:8px 0;background:#fff;text-align:center}.content-item-wrap .questions-pagination .nav-links{text-align:center}.content-item-wrap .questions-pagination .nav-links .page-numbers{display:inline-block;vertical-align:middle;margin:0 3px 3px;padding:10px 16px;color:#666;background-color:transparent;font-size:16px;font-weight:300;line-height:1;border:1px solid;cursor:pointer}.content-item-wrap .questions-pagination .nav-links .page-numbers.next,.content-item-wrap .questions-pagination .nav-links .page-numbers.prev{display:inline-block;padding:10px;background:transparent;font-size:16px;text-align:center;text-decoration:none;text-transform:none;border:1px solid}.content-item-wrap .questions-pagination .nav-links .page-numbers.current,.content-item-wrap .questions-pagination .nav-links .page-numbers:hover{color:var(--lp-primary-color)}.course-curriculum .section-title{position:relative;margin-bottom:0;padding:8px 0;color:#5383f7;font-size:16px;font-weight:normal;line-height:1}.course-curriculum .section-title span.show-desc{display:inline-block;position:absolute;top:50%;left:30px;width:20px;height:20px;transform:translate(0,-50%)}.course-curriculum .section-title span.show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f107"}.course-curriculum .section-title span.show-desc:hover::before{border-top-color:#ccc}.lp-overlay{display:none;position:fixed;z-index:99999;top:0;left:0;bottom:0;right:0;width:100%;height:100%;background-color:rgba(209,213,219,0.8);transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms;transition-property:opacity}.wp-admin .lp-modal-dialog .lp-modal-header{padding:2em}.wp-admin .lp-modal-dialog .lp-modal-header h3{font-size:1.4em}.lp-modal-dialog{display:flex;position:fixed;z-index:9999;top:0;left:0;right:0;width:100%;min-height:100vh;text-align:center;align-items:center;justify-content:center}.lp-modal-dialog .lp-modal-content{display:inline-block;overflow:hidden;z-index:2;width:auto;max-width:600px;border-radius:8px;text-align:right;vertical-align:middle;background:white;color:black}.lp-modal-dialog .lp-modal-header{background:#7c60d9;border-bottom:1px solid #eee;padding:1em}.lp-modal-dialog .lp-modal-header h3{margin:0;color:white;font-size:inherit;font-weight:400}.lp-modal-dialog .lp-modal-body .main-content{max-height:500px;overflow:auto}.lp-modal-dialog .lp-modal-body .main-content h3,.lp-modal-dialog .lp-modal-body .main-content h2,.lp-modal-dialog .lp-modal-body .main-content .pd-2em{padding:1em}.lp-modal-dialog .lp-modal-footer{padding:20px;padding-top:0;background-color:#f9fafb;text-align:left}.lp-modal-dialog .btn-yes{color:#fff;background-color:#7c60d9}#lp-modal-overlay{display:none;position:fixed;z-index:999999;top:0;left:0;bottom:0;right:0;opacity:.5;background:#000}#lp-modal-window{display:none;position:fixed;z-index:999999;top:50%;right:50%;padding:35px 60px 28px 60px;background:#fff;transform:translate(50%,-50%);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#lp-modal-window #lp-modal-content{margin:0 0 24px 0;color:#333;font-size:16px;font-weight:400;line-height:26px;text-align:center}#lp-modal-window #lp-modal-content>*{margin:0 0 .5em}#lp-modal-window #lp-modal-buttons{display:flex;flex-direction:row-reverse;align-items:center;justify-content:center}#lp-modal-window #lp-modal-buttons .lp-button{position:relative;margin:0 10px 0 10px}.learn-press-comments{width:792px;max-width:100%;margin:0 auto}@media(max-width:1024px){.learn-press-comments{width:100%}}.learn-press-progress{overflow:hidden;position:relative;width:80px;height:6px;border-radius:3px}.learn-press-progress .learn-press-progress__active{position:absolute;z-index:1;right:-100%;width:100%;height:100%;border-radius:3px;background:var(--lp-primary-color);-webkit-transition:.5s;-moz-transition:.5s;-ms-transition:.5s;-o-transition:.5s;transition:.5s}.learn-press-progress::before{display:block;position:absolute;z-index:0;top:0;width:100%;height:100%;background:#ccc;content:""}.course-curriculum .section-header .section-left{display:flex}.course-curriculum .section-header .section-left .section-title{flex:1}.course-curriculum .section-header .section-left .section-toggle{flex:0 0 40px;align-items:center;text-align:center;cursor:pointer}.course-curriculum .section-header .section-left .section-toggle .fa-caret-down{display:none}.course-curriculum .section-header .learn-press-progress{width:80px}.course-curriculum .section.closed .section-toggle .fa-caret-down{display:block}.course-curriculum .section.closed .section-toggle .fa-caret-up{display:none}.course-curriculum .section.closed .section-content{overflow:hidden;height:0}*{box-sizing:border-box;margin:0;padding:0}button{cursor:pointer}input,button,select,textarea{outline:0}html{overflow-x:hidden}a{-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s}.lp-skeleton-animation{margin:0;padding:0;list-style:none}.lp-skeleton-animation>li{width:100%;height:16px;margin-top:15px;border-radius:2px;background:linear-gradient(-90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);background-size:400% 100%;list-style:none;animation:lp-skeleton-loading 1.4s ease infinite}@keyframes lp-skeleton-loading{0%{background-position:0 50%}to{background-position:100% 50%}}.learnpress.theme-twentytwentytwo .wp-site-blocks,.learnpress.twentytwentytwo .wp-site-blocks{max-width:none;padding-left:0;padding-right:0}.learnpress.theme-twentytwentytwo .wp-site-blocks>.wp-block-group,.learnpress.twentytwentytwo .wp-site-blocks>.wp-block-group{max-width:none;margin-left:auto;margin-right:auto}.learnpress.theme-twentytwentytwo .lp-archive-courses,.learnpress.twentytwentytwo .lp-archive-courses{max-width:none}.learnpress.twentytwentytwo .wp-container-11 .alignfull,.learnpress.twentytwentytwo .wp-container-9 .alignfull,.learnpress.twentytwentytwo .wp-container-12 .alignfull{max-width:100%;margin-right:0 !important;margin-left:0 !important;padding-right:0 !important;padding-left:0 !important}@media(max-width:1199px){.learnpress.twentytwentytwo .wp-site-blocks .wp-block-template-part{padding-right:15px;padding-left:15px}}input[type=text],input[type=email],input[type=number],input[type=password]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:0;box-shadow:unset}body{background:#fff}body.learnpress-page{overflow-x:hidden}.wrap-fullwidth a:focus,.wrap-fullwidth button:focus,.wrap-fullwidth input:focus,.wrap-fullwidth textarea:focus{border:0;outline:0}.wrap-fullwidth a:hover{text-decoration:none}.wrap-fullwidth p{word-break:break-word}.wrap-fullwidth p:last-child{margin-bottom:0}.wrap-fullwidth label{display:block;margin:0;outline:0}.wrap-fullwidth img{max-width:100%;height:auto}.wrap-fullwidth form{margin:0}.wrap-fullwidth .col-full{box-sizing:border-box;max-width:100%;padding:0}.wrap-fullwidth .col-full .woocommerce-breadcrumb{display:none}footer{clear:both}.margin-bottom{margin-bottom:20px}.hide-if-js{display:none !important}.clearfix::after{display:block;clear:both;content:""}.lp-form-fields{margin:0;padding:0;list-style:none}.lp-form-fields .form-field{margin:0 0 20px 0;list-style:none}.lp-content-wrap{width:1170px;max-width:90%;margin:0 auto}.lp-content-wrap>h2{margin-top:0;margin-bottom:26px;color:#333;font-size:30px;font-weight:600}.learn-press-breadcrumb{max-width:1170px;width:100%;margin:0 auto 45px auto;padding:0;color:#333;font-size:14px;font-weight:400;list-style:none}.learn-press-breadcrumb li{display:inline-block;margin:0}.learn-press-breadcrumb li a:hover{color:var(--lp-primary-color)}.learn-press-breadcrumb i{margin:0 5px;color:#666;font-size:12px}@media(max-width:1024px){.learn-press-breadcrumb{padding-left:15px;padding-right:15px}}.learn-press-breadcrumb a{color:#666;font-weight:500}.learnpress-page .lp-button,.learnpress-page #lp-button{padding:16px 24px;border:1px solid #ccc;color:#333;background:transparent;box-shadow:unset;font-family:inherit;font-size:16px;font-weight:400;line-height:1;text-align:center;vertical-align:middle;text-decoration:none;text-transform:capitalize;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-transition:all .25s;-moz-transition:all .25s;-ms-transition:all .25s;-o-transition:all .25s;transition:all .25s}.learnpress-page .lp-button.large,.learnpress-page #lp-button.large{height:52px;padding:18px 30px;font-size:18px}.learnpress-page .lp-button:hover,.learnpress-page #lp-button:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.learnpress-page .lp-button.btn-ajax-off .icon,.learnpress-page #lp-button.btn-ajax-off .icon{display:none}.learnpress-page .lp-button.btn-ajax-on .icon,.learnpress-page #lp-button.btn-ajax-on .icon{display:inline-block;margin-left:5px;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.learnpress-page .lp-button:focus,.learnpress-page #lp-button:focus{outline:0}.learnpress-page .lp-button.loading::before,.learnpress-page #lp-button.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}.learnpress-page .rwmb-field .description{margin-top:8px;color:#999;font-size:smaller;font-style:italic}.btn-base{border-color:var(--lp-primary-color);color:white;background-color:var(--lp-primary-color)}.lp-ajax-message{display:none;margin-top:20px;padding:20px;border:2px solid #059601;border-radius:9px;font-size:15px;line-height:1.4}.lp-ajax-message.error{border-color:#d85554}.course-meta{margin-bottom:14px}.course-meta .course-students::before{font-family:"Font Awesome 5 Free";content:""}.lp-entry-content .course-tabs{margin-bottom:60px}.learn-press-checkout-comment h4{display:none}.order-comments{width:100%;padding:15px;min-height:150px;border:1px solid #ccc;resize:none}.learn-press-progress .progress-bg{overflow:hidden;position:relative;height:6px;background:#ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.learn-press-progress .progress-bg .progress-active{position:absolute;right:50%;width:100%;height:100%;margin-right:-100%;background:var(--lp-primary-color);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.retake-course,.enroll-course,.purchase-course{display:inline-block}.table-orders{font-size:16px}.table-orders th,.table-orders td{padding:5px 10px}.form-button{display:inline-block}.learn-press-pagination{padding-bottom:20px;text-align:center}.learn-press-pagination .page-numbers{display:inline-block;margin:0;padding:0;border:0;outline:0;background:transparent;list-style:none}.learn-press-pagination .page-numbers>li{display:inline-block;margin:0;padding:0 14px}.learn-press-pagination .page-numbers>li .page-numbers{float:unset;padding:0;color:#666;background:transparent;font-size:16px;font-weight:300}.learn-press-pagination .page-numbers>li .page-numbers.current{color:var(--lp-primary-color);font-weight:400}.learn-press-pagination .page-numbers>li .page-numbers:hover{color:var(--lp-primary-color)}ul.list-table-nav{display:flex;margin-right:0;list-style:none}ul.list-table-nav .nav-text{text-align:right;flex:1}ul.list-table-nav .nav-pages{text-align:left;flex:1}ul.list-table-nav .nav-pages .learn-press-pagination{display:inline-block;margin-bottom:0}.primary-color{color:#00adff}.primary-color-before::before{color:#00adff}.primary-color-after::after{color:#00adff}.primary-background-color{background:#00adff}.primary-background-color{background:#00adff}.course-origin-price{margin-left:5px;font-size:85%;text-decoration:line-through}.course-item-nav{display:flex}.course-item-nav .prev span,.course-item-nav .next span{display:block;font-weight:bold}.course-item-nav .prev a,.course-item-nav .next a{color:#999}.course-item-nav .next{text-align:left}.content-item-wrap #comments{margin-left:0;margin-right:0}.content-item-wrap #comments #comment{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-summary-sidebar{position:relative}@media(min-width:769px){.course-summary-sidebar.slide-down .course-summary-sidebar__inner{position:fixed;top:0}}@media(min-width:1200px){.course-summary-sidebar.slide-top .course-summary-sidebar__inner{position:absolute}}.course-graduation span{color:#999}.course-graduation .icon{margin-left:5px;font-size:20px}.course-graduation.passed .icon{color:#059601}.course-graduation.error .icon{color:#d85554}.learn-press-template-warning::before{color:#ffc107;font-family:"Font Awesome 5 Free";content:"\f071"}.lp-badge{display:flex;height:30px;padding:0;line-height:1;align-items:center;justify-content:center}.lp-badge::before,.lp-badge::after{content:""}.lp-badge::before{display:inline-block;position:relative;z-index:10;color:#fff;font-weight:bold;line-height:1}.lp-badge.featured-course{position:absolute;z-index:1;top:25px;right:-110px;width:300px;background:#93f;text-align:center;transform:rotate(45deg)}.lp-badge.featured-course::before{font-size:12px;text-transform:uppercase;content:attr(data-text)}@media(min-width:769px){#learn-press-item-comments{padding-bottom:50px}}.course-tabs input[name=learn-press-course-tab-radio],.course-tabs .course-tab-panel{display:none}.course-tabs .course-nav label{display:flex;align-items:center;justify-content:center;margin:0;padding:17px 10px;font-size:16px;line-height:1;font-weight:600;text-transform:capitalize;cursor:pointer}.no-event{pointer-events:none}@media screen and (max-width:768px){ul.learn-press-courses .course{width:48%}}@media screen and (max-width:600px){ul.learn-press-courses .course{width:100%;margin-left:0}}.course-price:empty{display:none !important}.quiz-attempts .attempts-heading{margin-bottom:15px}.quiz-attempts table{border-spacing:0;border-right:1px solid var(--lp-secondary-color);border-top:1px solid var(--lp-secondary-color);width:100%}.quiz-attempts table tr th,.quiz-attempts table tr td{border-left:1px solid var(--lp-secondary-color);border-bottom:1px solid var(--lp-secondary-color);padding:5px 15px;text-align:center}.quiz-attempts table tr th{font-weight:500}@media(max-width:575px){#popup-course .quiz-attempts{overflow-x:auto}}
|
assets/css/learnpress.css
CHANGED
@@ -6935,9 +6935,6 @@ body.lp-sidebar-toggle__close #popup-course #popup-header, body.lp-sidebar-toggl
|
|
6935 |
#popup-course #sidebar-toggle {
|
6936 |
left: 249px;
|
6937 |
}
|
6938 |
-
#popup-course #sidebar-toggle:checked ~ #popup-sidebar {
|
6939 |
-
flex-basis: 0;
|
6940 |
-
}
|
6941 |
#popup-course .course-item-meta .item-meta.count-questions, #popup-course .course-item-meta .item-meta.duration {
|
6942 |
display: none;
|
6943 |
}
|
6935 |
#popup-course #sidebar-toggle {
|
6936 |
left: 249px;
|
6937 |
}
|
|
|
|
|
|
|
6938 |
#popup-course .course-item-meta .item-meta.count-questions, #popup-course .course-item-meta .item-meta.duration {
|
6939 |
display: none;
|
6940 |
}
|
assets/css/learnpress.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
@charset "UTF-8";@-webkit-keyframes rotating4{from{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotating4{from{-ms-transform:rotate(0);-moz-transform:rotate(0);-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-ms-transform:rotate(360deg);-moz-transform:rotate(360deg);-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes animation4{from{left:-40%;width:40%}to{left:100%;width:10%}}@keyframes animation4{from{left:-40%;width:40%}to{left:100%;width:10%}}.learn-press-message{position:relative;margin:0 0 20px 0;padding:10px 50px 10px 15px;border-top:5px solid #00adff;border-radius:0 0 5px 5px;background:#f5f5f5;width:100%}.learn-press-message.icon{padding-left:45px}.learn-press-message.icon::before{background:#00adff}.learn-press-message.icon::after{position:absolute;top:50%;left:15px;width:10px;height:10px;margin-top:-13px;margin-right:10px;border-radius:50%;color:#fff;background:#00adff;font-family:"Font Awesome 5 Free";font-size:20px;line-height:26px;text-align:center;vertical-align:baseline;content:"\f129"}.learn-press-message::before,.learn-press-message::after{position:absolute;top:0;content:""}.learn-press-message::before{right:20px;width:20px;height:30px;background:#00adff}.learn-press-message::after{top:10px;right:20px;width:0;height:0;border:10px solid transparent;border-bottom-color:#f5f5f5}.learn-press-message.error{border-color:#d85554}.learn-press-message.error::before{background:#d85554}.learn-press-message.error.icon::before,.learn-press-message.error.icon::after{background:#d85554}.learn-press-message.error.icon::after{content:"\f00d"}.learn-press-message.warning{border-color:#ffc107}.learn-press-message.warning::before{background:#ffc107}.learn-press-message.warning.icon::before,.learn-press-message.warning.icon::after{background:#ffc107}.learn-press-message.warning.icon::after{content:"\f00d"}.learn-press-message.success{border-color:#059601}.learn-press-message.success::before{background:#059601}.learn-press-message.success.icon::before,.learn-press-message.success.icon::after{background:#059601}.learn-press-message.success.icon::after{content:"\f129"}.learn-press-message a{text-decoration:underline}@keyframes lp-rotating{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes lp-rotating{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}.ajaxload{display:inline-block;position:relative;width:30px;height:30px;background:#7b7b7b;content:"";-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.ajaxload::after{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;display:inline-block;position:absolute;top:2px;left:50%;width:6px;height:6px;margin-left:-3px;background:#dedede;content:""}.lp-ajaxload-style-1{display:inline-block;position:relative;width:32px;height:32px}.lp-ajaxload-style-1::before,.lp-ajaxload-style-1::after{position:absolute;top:0;left:0;width:100%;height:100%;border:3px solid #ddd;content:""}.lp-ajaxload-style-1::after{clip:rect(0,32px,16px,16px);border-color:#2fa7ff;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.learn-press-tabs{margin-bottom:34px;background:#f1f2f8}.learn-press-tabs .learn-press-tabs__checker{display:none}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10)::after{background:#fff}.learn-press-tabs .learn-press-tabs__nav{display:flex;margin:0;padding:0;border:1px solid #e5e7f2;list-style:none}.learn-press-tabs .learn-press-tabs__tab{position:relative;margin:0;border-right:1px solid #e5e7f2;background:#f1f2f8;list-style:none}.learn-press-tabs .learn-press-tabs__tab:last-child{border-right:0}.learn-press-tabs .learn-press-tabs__tab>label{display:block;margin:0;padding:18px 65px;font-size:18px;line-height:1;font-weight:600;text-align:center;text-transform:capitalize;cursor:pointer}.learn-press-tabs .learn-press-tabs__tab>label a{color:#333}.learn-press-tabs .learn-press-tabs__tab>label a:focus{outline:0;text-decoration:none}@media(max-width:767px){.learn-press-tabs .learn-press-tabs__tab>label{padding:20px 50px 14px 50px}}.learn-press-tabs .learn-press-tabs__tab::before{position:absolute;top:-1px;left:0;width:100%;height:4px;background:transparent;content:""}.learn-press-tabs .learn-press-tabs__tab::after{position:absolute;bottom:-1px;left:0;width:100%;height:4px;background:transparent;content:""}.learn-press-tabs .learn-press-tabs__tab:first-child.active label{position:relative}.learn-press-tabs .learn-press-tabs__tab:first-child.active label::before{position:absolute;top:0;left:-1px;width:1px;height:100%;background:#fff;content:""}.learn-press-tabs.stretch .learn-press-tabs__tab{flex:1}.learn-press-tabs.stretch .learn-press-tabs__tab>label{padding:18px 10px}.learn-press-filters{display:flex;margin-bottom:30px;margin-left:0;list-style:none}.learn-press-filters>li{margin:0;font-size:16px;line-height:24px}@media(max-width:767px){.learn-press-filters>li{margin-right:30px;margin-left:0}.learn-press-filters>li:last-child{margin-right:0}}.learn-press-filters>li>a,.learn-press-filters>li>span{display:inline-block;font-weight:600}.learn-press-filters>li>span.count{font-weight:400}.learn-press-filters>li>span.count::before,.learn-press-filters>li>span.count::after{display:inline-block}.learn-press-filters>li>span.count::before{content:"("}.learn-press-filters>li>span.count::after{content:")"}.learn-press-filters>li span{color:#ffb606}.learn-press-filters>li span+span{color:#ffb606}.learn-press-filters>li span+span::before,.learn-press-filters>li span+span::after{color:#ffb606}.learn-press-filters>li a{color:#333;cursor:pointer}.learn-press-filters>li a+span{color:#333}.learn-press-filters>li a+span::before,.learn-press-filters>li a+span::after{color:#333}.learn-press-filters>li::after{margin:0 35px;color:#ccc;content:"|"}@media(max-width:767px){.learn-press-filters>li::after{display:none}}.learn-press-filters>li:last-child::after{display:none}.lp-checkout-form__before,.lp-checkout-form__after{width:45%;width:-webkit-calc(50% - 30px);width:-moz-calc(50% - 30px);width:calc(50% - 30px);margin:0 15px 40px 15px}.lp-checkout-form__before .lp-checkout-block h4,.lp-checkout-form__after .lp-checkout-block h4{margin-top:0;margin-bottom:18px;color:#333;font-size:24px;font-weight:600;line-height:1;font-family:var(--wp--preset--font-family--system-font)}@media(max-width:815px){.lp-checkout-form__before,.lp-checkout-form__after{width:100%;margin:0 0 40px 0}}.lp-checkout-form__before{float:right}.lp-checkout-form__before #checkout-order{width:100%}.lp-checkout-form .lp-checkout-form__after{float:left}.lp-checkout-form .lp-checkout-remember{letter-spacing:0;margin-top:0}.lp-checkout-form .lp-checkout-remember label{width:auto;color:#666;font-size:16px;font-weight:300;line-height:26px}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]{position:relative;top:3px;width:19px;height:19px;margin:0 4px 0 0;border:1px solid #ccc;cursor:pointer;-webkit-appearance:none}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]:focus{outline:0}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]:checked::after{position:absolute;top:2px;left:2px;color:#41abec;font-family:"Font Awesome 5 Free";font-size:14px;font-weight:900;line-height:1;content:"\f00c"}.lp-checkout-form .lp-checkout-remember a{color:#666;font-size:16px;font-weight:300;line-height:26px;text-decoration:underline;text-decoration-color:#ccc}.lp-checkout-form .lp-checkout-remember a:hover{color:var(--lp-primary-color);text-decoration-color:var(--lp-primary-color)}.lp-checkout-form .lp-form-fields{padding:0 0 14px 0}.lp-checkout-form .lp-form-fields label{display:block;margin-bottom:10px;font-size:16px}.lp-checkout-form .lp-form-fields input{height:44px;line-height:normal;width:100%;padding:0 15px;border:1px solid #ccc}.lp-checkout-form .rwmb-input input:not([type=checkbox]){width:100%;height:43px;padding:0 22px;border:1px solid #ccc;border-radius:3px;background-color:#fff;font-size:14px;font-weight:300;font-style:italic;line-height:43px}.lp-checkout-form .rwmb-input input:not([type=checkbox]):focus{border-color:var(--lp-primary-color);outline:0;color:#222}.lp-checkout-form .rwmb-input ::placeholder{opacity:1;color:#999}.lp-checkout-form .rwmb-input :-ms-input-placeholder{color:#999}.lp-checkout-form .rwmb-input ::-ms-input-placeholder{color:#999}.lp-checkout-form .rwmb-input input:-webkit-autofill,.lp-checkout-form .rwmb-input input:-webkit-autofill:hover,.lp-checkout-form .rwmb-input input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:#999 !important}.lp-checkout-form{margin:0 -15px;margin-top:50px}@media(max-width:815px){.lp-checkout-form{display:flex;flex-direction:column-reverse;margin:0}}.lp-checkout-form #btn-checkout-account-switch-to-guest{margin-bottom:60px}.lp-checkout-form .description{float:left}.lp-checkout-form a{color:#41abec}.lp-checkout-form a label{display:inline-block;color:inherit;font-weight:normal;cursor:pointer}.lp-checkout-form a:hover{color:#ffb606}.lp-checkout-form #checkout-account-guest{width:100%;margin-bottom:35px;padding-bottom:19px;border-bottom:1px solid rgba(204,204,204,0.3)}.lp-checkout-form #checkout-account-guest .lp-form-fields,.lp-checkout-form #checkout-account-guest .form-field{margin-bottom:0;padding-bottom:0}.lp-checkout-form div.lp-guest-checkout-output{margin-top:10px;padding:8px 20px;border:2px solid #41abec;border-radius:4px;font-size:16px;transition:all .2s ease}.lp-checkout-form label.lp-guest-checkout-output{margin-top:10px;cursor:pointer;user-select:none}.lp-checkout-form .lp-guest-checkout-notice{margin:30px 0 0 0}.lp-checkout-form .lp-guest-switch-login{margin-top:1em;color:#666;font-size:16px;font-weight:400}.lp-checkout-form input[name=checkout-account-switch-form]{display:none}.lp-checkout-form input[name=checkout-account-switch-form]:not(:checked)+.lp-checkout-block{display:none;overflow:hidden;height:0;margin:0;padding:0;border:0;opacity:0}.lp-checkout-form input[name=checkout-account-switch-form]:not(:checked)+.lp-checkout-block>*{overflow:hidden;height:0}.lp-checkout-form input[name=checkout-account-switch-form]:checked+.lp-checkout-block{display:block;overflow:auto;height:auto}.lp-checkout-form input[name=checkout-account-switch-form][value=guest]:checked ~ #btn-checkout-account-switch-to-guest{display:none}.lp-checkout-form::after{display:block;clear:both;content:""}.lp-checkout-form:focus{outline:0}#checkout-order .lp-checkout-order__inner{padding:0 20px;border:1px solid #ccc;border-radius:4px}#checkout-order table{width:100%;margin:0;border:0}#checkout-order td,#checkout-order th{box-sizing:content-box;border:1px solid rgba(204,204,204,0.3);border-top:0;border-right:0;border-left:0;background:unset;line-height:1;text-align:left;vertical-align:inherit}#checkout-order td:last-child,#checkout-order th:last-child{padding-right:0}#checkout-order .course-name{font-size:16px;font-weight:600;line-height:26px}#checkout-order .course-name a{display:-webkit-box;overflow:hidden;color:#000;-webkit-line-clamp:1;-webkit-box-orient:vertical}#checkout-order .course-name a:hover{color:var(--lp-primary-color)}#checkout-order .col-number{min-width:50px;color:#666;font-size:16px;font-weight:600;line-height:26px;text-align:right}#checkout-order .order-total>th{padding:24px 20px 24px 0}#checkout-order .order-total .col-number{color:#333;font-size:26px}#checkout-order tfoot .cart-subtotal{color:#666;font-size:16px;font-weight:600;line-height:26px}#checkout-order tfoot .cart-subtotal>th{padding:20px 20px 17px 0}#checkout-order tfoot .order-total th{color:#333;font-size:16px;font-weight:600;line-height:26px}#checkout-order tfoot tr:last-child{border-width:0}#checkout-order tfoot tr:last-child td,#checkout-order tfoot tr:last-child th{border-width:0}#checkout-order .course-thumbnail{width:80px;padding:20px 13px 18px 0}#checkout-order .course-thumbnail>img{width:100px;max-width:100% !important;height:auto !important}#checkout-account-register,#checkout-account-login{width:100%;margin-bottom:35px;padding-bottom:19px;border-bottom:1px solid rgba(204,204,204,0.3)}#checkout-account-register .form-field .rwmb-label,#checkout-account-register .form-field .rwmb-input .description,#checkout-account-login .form-field .rwmb-label,#checkout-account-login .form-field .rwmb-input .description{display:none}#checkout-account-register .lp-checkout-remember label,#checkout-account-login .lp-checkout-remember label{display:inline-block}#checkout-account-register .lp-checkout-remember a,#checkout-account-login .lp-checkout-remember a{float:right}#checkout-account-register .lp-checkout-sign-in-link,#checkout-account-register .lp-checkout-sign-up-link,#checkout-account-login .lp-checkout-sign-in-link,#checkout-account-login .lp-checkout-sign-up-link{display:flex;margin:0;color:#666;font-size:16px;font-weight:400}#checkout-account-register .lp-checkout-sign-in-link a,#checkout-account-register .lp-checkout-sign-up-link a,#checkout-account-login .lp-checkout-sign-in-link a,#checkout-account-login .lp-checkout-sign-up-link a{margin-left:5px;color:#41abec;cursor:pointer}#checkout-account-register .lp-checkout-sign-in-link a:hover,#checkout-account-register .lp-checkout-sign-up-link a:hover,#checkout-account-login .lp-checkout-sign-in-link a:hover,#checkout-account-login .lp-checkout-sign-up-link a:hover{color:var(--lp-primary-color)}#checkout-account-register .lp-checkout-sign-in-link a label,#checkout-account-register .lp-checkout-sign-up-link a label,#checkout-account-login .lp-checkout-sign-in-link a label,#checkout-account-login .lp-checkout-sign-up-link a label{display:inline-block;float:right;color:inherit;font-weight:normal;cursor:pointer}#checkout-payment{width:100%;margin-bottom:25px}#checkout-payment h4{margin-bottom:24px}#checkout-payment .secure-connection{float:right;margin-top:5px;color:#999;font-size:12px;font-weight:normal}#checkout-payment .secure-connection i{margin-right:5px;color:#ccc;font-size:18px}@media(max-width:767px){#checkout-payment .secure-connection{margin-top:0}}#checkout-payment .payment-methods{margin:0 0 24px 0;padding:0;list-style:none}#checkout-payment .lp-payment-method{position:relative;margin:0}#checkout-payment .lp-payment-method>label{display:flex;align-items:center}#checkout-payment .lp-payment-method .gateway-input,#checkout-payment .lp-payment-method .gateway-icon{vertical-align:middle}#checkout-payment .lp-payment-method .gateway-icon{max-height:32px}#checkout-payment .lp-payment-method .gateway-input{position:relative;width:20px;height:20px;margin:0 8px 0 0;border:1px solid #ccc;background:#fff;-webkit-appearance:none;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}#checkout-payment .lp-payment-method .gateway-input::before{position:absolute;top:50%;left:50%;width:6px;height:6px;background:#41abec;transform:translate(-50%,-50%);-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}#checkout-payment .lp-payment-method .gateway-input:checked::before{content:""}#checkout-payment .lp-payment-method .gateway-input:focus{outline:0}#checkout-payment #checkout-order-action button{width:100%;border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color);font-weight:500}#checkout-payment #checkout-order-action button:hover{border-color:var(--lp-primary-color);opacity:.5;background:var(--lp-primary-color)}#checkout-payment #checkout-order-action button.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.lp-terms-and-conditions{color:#666;font-size:16px;font-weight:300;line-height:26px}.lp-terms-and-conditions a{color:#41abec}.lp-terms-and-conditions a:hover{color:var(--lp-primary-color)}.learn-press-checkout.guest-checkout{display:none}.button-continue-guest-checkout{clear:both}#learn-press-checkout .payment-methods{margin:0;padding:0;list-style:none}#learn-press-checkout .payment-methods .lp-payment-method{margin-bottom:20px}#learn-press-checkout .payment-methods .lp-payment-method>label{display:flex;flex-flow:row nowrap;padding:10px 20px;background:#f5f5f5;line-height:40px;cursor:pointer}#learn-press-checkout .payment-methods .lp-payment-method>label img{vertical-align:middle}#learn-press-checkout .payment-methods .lp-payment-method.selected>label{background:#d4d4d4}#learn-press-checkout .payment-methods .payment-method-form{display:none;padding:15px 20px;border-top:1px solid #ddd;background:#f9f9f9}#learn-press-checkout-login,#learn-press-checkout-register{margin-bottom:1.5em;padding:20px 20px 0 20px;border:1px solid #ddd;background:#fff}#learn-press-order-review,.learn-press-checkout-comment{margin-bottom:20px}#checkout-form-login,#checkout-form-register{_display:none}#checkout-form-login .learn-press-form-register,#checkout-form-login .learn-press-form-login,#checkout-form-register .learn-press-form-register,#checkout-form-register .learn-press-form-login{display:none}#checkout-guest-email{margin:0 0 20px 0}#checkout-guest-email .form-heading{margin:0}#checkout-guest-email #checkout-guest-options{margin:0;list-style:none}#checkout-guest-email #checkout-existing-account,#checkout-guest-email #checkout-new-account{display:none;margin:0}#checkout-guest-email.email-exists #checkout-existing-account{display:block}#checkout-guest-email.email-exists #checkout-new-account{display:none}.lp-list-table{width:100%;margin-bottom:20px}.lp-list-table th,.lp-list-table td{padding:20px;border:0 solid rgba(204,204,204,0.3);border-bottom-width:1px;background:#fff;font-size:16px;line-height:1;text-align:left}@media(max-width:767px){.lp-list-table th,.lp-list-table td{padding:15px}}.lp-list-table thead{box-sizing:border-box;border:1px solid #e5e7f2}.lp-list-table thead tr th{height:60px;border-bottom:0;color:#333;background:#f1f2f8;font-size:18px}.lp-list-table tbody,.lp-list-table tfoot{box-sizing:border-box;border:1px solid rgba(204,204,204,0.3);border-top:0}.lp-list-table tbody tr td,.lp-list-table tbody tr th,.lp-list-table tfoot tr td,.lp-list-table tfoot tr th{height:62px;color:#666;background:#fff;font-size:16px;font-weight:300}.lp-list-table tbody tr td a,.lp-list-table tbody tr th a,.lp-list-table tfoot tr td a,.lp-list-table tfoot tr th a{border-bottom:0;color:#666;text-decoration:none}.lp-list-table tbody tr td a:hover,.lp-list-table tbody tr th a:hover,.lp-list-table tfoot tr td a:hover,.lp-list-table tfoot tr th a:hover{color:var(--lp-primary-color)}.lp-list-table tbody tr .column-status .result-percent,.lp-list-table tfoot tr .column-status .result-percent{font-weight:500}.lp-list-table tbody tr .column-status .lp-label,.lp-list-table tfoot tr .column-status .lp-label{font-weight:600}.lp-list-table tbody tr:nth-child(odd),.lp-list-table tfoot tr:nth-child(odd){background:#f5f5f5}.lp-list-table .list-table-nav td{font-size:14px}.lp-list-table .list-table-nav td.nav-text{text-align:left}.lp-list-table .list-table-nav td.nav-pages{text-align:right}.lp-list-table .list-table-nav td.nav-pages .learn-press-pagination{text-align:right}.lp-list-table .list-table-nav td.nav-pages .page-numbers{margin-bottom:0}.lp-label{display:inline-block;color:#666;font-size:16px;font-weight:300;line-height:1}.learn-press-form .form-fields{margin:0;padding:0;list-style:none}.learn-press-form .form-fields .form-field{margin:0 0 20px 0}.learn-press-form .form-fields .form-field label{display:block;margin:0 0 10px 0}.learn-press-form .form-fields .form-field input[type=text],.learn-press-form .form-fields .form-field input[type=email],.learn-press-form .form-fields .form-field input[type=number],.learn-press-form .form-fields .form-field input[type=password],.learn-press-form .form-fields .form-field textarea{width:100%;padding:8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.learn-press-form .form-fields .form-field .description{margin-top:10px;font-size:14px;font-style:italic;line-height:1.4}.learn-press-form .form-fields .form-field .asterisk{color:red}.learn-press-form-login,.learn-press-form-register{max-width:600px;margin-right:auto;margin-bottom:60px;margin-left:auto;padding:40px;border:1px solid #eee;border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06) !important}.learn-press-form-login h3,.learn-press-form-register h3{margin-bottom:20px;font-size:28px;line-height:1.4}.learn-press-form-login .form-fields .form-field label,.learn-press-form-register .form-fields .form-field label{font-size:16px;font-weight:400;user-select:none}.learn-press-form-login .form-fields .form-field input[type=text],.learn-press-form-login .form-fields .form-field input[type=password],.learn-press-form-login .form-fields .form-field input[type=tel],.learn-press-form-login .form-fields .form-field input[type=url],.learn-press-form-login .form-fields .form-field input[type=number],.learn-press-form-register .form-fields .form-field input[type=text],.learn-press-form-register .form-fields .form-field input[type=password],.learn-press-form-register .form-fields .form-field input[type=tel],.learn-press-form-register .form-fields .form-field input[type=url],.learn-press-form-register .form-fields .form-field input[type=number]{height:42px;border:1px solid #bbb;border-radius:4px;line-height:42px}.learn-press-form-login .form-fields .form-field input[type=text]:focus,.learn-press-form-login .form-fields .form-field input[type=password]:focus,.learn-press-form-login .form-fields .form-field input[type=tel]:focus,.learn-press-form-login .form-fields .form-field input[type=url]:focus,.learn-press-form-login .form-fields .form-field input[type=number]:focus,.learn-press-form-register .form-fields .form-field input[type=text]:focus,.learn-press-form-register .form-fields .form-field input[type=password]:focus,.learn-press-form-register .form-fields .form-field input[type=tel]:focus,.learn-press-form-register .form-fields .form-field input[type=url]:focus,.learn-press-form-register .form-fields .form-field input[type=number]:focus{border:0;outline:2px solid transparent !important;outline-offset:2px;box-shadow:0 0 0 2px #666 !important}.learn-press-form-login .form-fields .form-field.required label::after,.learn-press-form-register .form-fields .form-field.required label::after{content:" *";display:inline}.learn-press-form-login form[name=learn-press-login]>p>label,.learn-press-form-register form[name=learn-press-login]>p>label{color:#666;font-size:16px;cursor:pointer;user-select:none}.learn-press-form-login form[name=learn-press-login]>p>a,.learn-press-form-register form[name=learn-press-login]>p>a{color:#666;font-size:16px;line-height:1}.learn-press-form-login form[name=learn-press-login]>p:last-child,.learn-press-form-register form[name=learn-press-login]>p:last-child{margin-bottom:0}.learn-press-form-login button[type=submit],.learn-press-form-register button[type=submit]{width:100%;height:50px;border-radius:3px;outline:0;color:#fff;background:var(--lp-primary-color);box-shadow:none;font-size:16px;line-height:1;vertical-align:middle;text-decoration:none}.required label{font-weight:bold}.required label:after{content:" *";display:inline}.lp-password-input{display:flex;flex-direction:column;justify-content:center;position:relative}.lp-password-input input[type=password]{padding-right:2.5rem}.lp-password-input input::-ms-reveal{display:none}.lp-password-input .lp-show-password-input{position:absolute;top:8px;right:10px;cursor:pointer}.lp-password-input .lp-show-password-input::after{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f06e"}.lp-password-input .lp-show-password-input.display-password::after{color:#585858;content:"\f070"}.form-desc{font-size:smaller;font-style:italic}.become-teacher-form{width:90%;max-width:500px;margin:0 auto}.become-teacher-form .form-field input[type=text],.become-teacher-form .form-field input[type=email],.become-teacher-form .form-field input[type=number],.become-teacher-form .form-field input[type=password]{width:100%}body div.entry-content>div.learnpress{--responsive--aligndefault-width:100%;max-width:var(--lp-content-width,100%)}.lp-user-profile{position:relative;background:#fff}.lp-user-profile .lp-user-profile-avatar img{position:relative;width:100%;height:auto;border-radius:unset;display:block}.lp-user-profile .lp-user-profile-avatar+.lp-user-profile-socials{margin-top:10px;margin-bottom:5px}.lp-user-profile .lp-user-profile-socials{display:flex;position:relative;z-index:1;justify-content:center;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.lp-user-profile .lp-user-profile-socials a{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;margin:0 7px;border:1px solid #cfcfcf;color:#666;background:#fff;font-size:14px;line-height:35px;text-align:center;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.lp-user-profile .lp-user-profile-socials a:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.lp-user-profile .wrapper-profile-header{color:#fff;background:var(--lp-secondary-color);position:relative}@media(max-width:990px){.lp-user-profile .wrapper-profile-header .lp-profile-content-area{min-height:inherit;padding:50px 15px}.lp-user-profile .wrapper-profile-header .lp-profile-left{float:left;position:static}.lp-user-profile .wrapper-profile-header .lp-profile-right{float:right;width:calc(100% - 270px);margin-left:0}}@media(max-width:768px){.lp-user-profile .wrapper-profile-header .lp-profile-left{width:220px}.lp-user-profile .wrapper-profile-header .lp-profile-right{width:calc(100% - 220px)}.lp-user-profile .wrapper-profile-header .lp-user-profile-socials{margin-right:-5px;margin-left:-5px}.lp-user-profile .wrapper-profile-header .lp-user-profile-socials a{width:36px;height:36px;margin:0 5px;line-height:36px}}@media(max-width:500px){.lp-user-profile .wrapper-profile-header .lp-profile-left{float:none;margin:0 auto}.lp-user-profile .wrapper-profile-header .lp-profile-right{width:100%;padding-top:30px;text-align:center}}.lp-user-profile .wrapper-profile-header::before{right:100%;left:auto}.lp-user-profile .wrapper-profile-header::after{left:100%;right:auto}.lp-user-profile .lp-profile-content-area{position:relative;padding-top:50px;padding-bottom:50px;display:flex;align-items:center}@media(max-width:650px){.lp-user-profile .lp-profile-content-area{flex-direction:column}.lp-user-profile .lp-profile-content-area .lp-profile-right{text-align:center;width:100%;padding:50px 15px 0}}.lp-user-profile .lp-profile-left{min-width:270px;max-width:270px;padding:5px;border:2px solid #eaeaea;border-radius:3px}.lp-user-profile .lp-profile-right{padding-right:15px;padding-left:35px}.lp-user-profile .lp-profile-username{padding-bottom:10px;font-size:18px;font-weight:500;text-transform:capitalize}.lp-user-profile .lp-profile-username::before,.lp-user-profile .lp-profile-username::after{content:"";width:30px;height:1px;background-color:white;display:inline-block;vertical-align:middle;margin:0}.lp-user-profile .lp-profile-username::before{margin-right:5px}.lp-user-profile .lp-profile-username::after{margin-left:5px}.lp-user-profile .lp-profile-user-bio{font-size:16px;font-weight:300;line-height:26px}.lp-user-profile #profile-sidebar{float:left;width:270px;margin-top:0;border:1px solid rgba(0,0,0,0.1);border-top:0;background:#fff;margin-top:58px}@media(max-width:990px){.lp-user-profile #profile-sidebar{width:100%}.lp-user-profile #profile-sidebar .lp-user-profile-avatar{max-width:150px}}.lp-user-profile #profile-nav .lp-profile-nav-tabs{margin:0;padding:0;list-style:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{position:relative;margin:0;border-top:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li a{display:block;padding:0 20px;color:#333;font-size:16px;font-weight:500;line-height:50px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{padding:0 20px 0 52px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a>i{display:inline-block;position:absolute;left:24px;width:28px;color:var(--lp-primary-color);font-size:12px;line-height:53px;text-align:left}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{float:right;margin-right:4px;color:#999;font-family:"Font Awesome 5 Free";font-size:10px;font-weight:900;content:"\f054"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li{margin:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li a{border-bottom:1px solid #f9f9f9}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li a:hover{color:var(--lp-primary-color);background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li:hover>a i{color:var(--lp-primary-color);background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active,.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:hover{background:var(--lp-primary-color)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active>a::after,.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:hover>a::after{content:"\f053"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a{padding-left:52px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.wishlist>a::before{position:absolute;left:25px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900;content:"\f004"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.wishlist:hover a::before{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.logout>a::after{display:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs li>a{box-sizing:border-box;height:50px}.lp-user-profile #profile-nav .lp-profile-nav-tabs li>ul{display:none;position:absolute;z-index:1000;top:0;left:100%;min-width:150px;margin:0;padding:0;background:#fff;box-shadow:0 15px 20px 0 rgba(0,0,0,0.05);list-style:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a i,.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a::after,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a i,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a::after{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>ul{display:block}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul{position:relative;left:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active{background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active>a{color:#ffb606}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active>a i{color:#ffb606}@media(max-width:990px){.lp-user-profile #profile-nav{overflow-x:scroll;border-top:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs{width:max-content}.lp-user-profile #profile-nav .lp-profile-nav-tabs::after{display:table;clear:both;content:""}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{float:left;border:0;border-right:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{height:auto;padding:0 20px 0 45px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{margin-left:10px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.has-child a::after{content:"\f077"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a{padding-left:45px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a::after{content:"\f078"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul{display:none;width:max-content;transform:translateX(-20%)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul::after{display:table;clear:both;box-shadow:0 0;content:""}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li{float:left;border-right:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li:last-child{border-right:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li a{padding:0 10px}.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover ul{display:none !important}.lp-user-profile #profile-nav .lp-profile-nav-tabs li:not(.has-child)>a::after{display:none}}@media(max-width:560px){.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{max-width:80px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{font-size:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{margin-left:0}}.lp-user-profile .lp-profile-content{float:right;width:calc(100% - 300px);margin-bottom:60px;padding-top:58px}@media(max-width:990px){.lp-user-profile .lp-profile-content{width:100%}}@media(max-width:767px){.lp-user-profile .lp-profile-content .learn-press-tabs__nav{display:block;width:100%;border:0}.lp-user-profile .lp-profile-content .learn-press-tabs__nav::after{display:table;clear:both;content:""}.lp-user-profile .lp-profile-content .learn-press-tabs__tab{float:left;border-right:0}.lp-user-profile .lp-profile-content .learn-press-tabs__tab label{padding-right:25px;padding-left:25px}.lp-user-profile .lp-profile-content .profile-orders{overflow-x:scroll}}.lp-user-profile .lp-profile-content .course-categories,.lp-user-profile .lp-profile-content .course-instructor{margin-bottom:14px}.lp-user-profile .lp-profile-content .course-categories{padding:0}.lp-user-profile .lp-profile-content .lp-button{display:block;margin:0 auto 52px auto;padding:13px 34px;border-color:var(--lp-secondary-color);font-size:14px;font-weight:500;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.lp-user-profile .lp-profile-content .lp-button:hover{border-color:var(--lp-primary-color)}.lp-user-profile ul.learn-press-courses .course{margin:0 0 40px 0}.lp-user-profile .profile-orders .profile-heading{display:none}.lp-user-profile .profile-orders table{margin-top:0}.lp-user-profile .profile-orders .column-order-actions a{margin-right:6px;color:black;text-decoration:underline;font-weight:500}.lp-user-profile .profile-orders .column-order-actions a:hover,.lp-user-profile .profile-orders .column-order-actions a:focus{color:var(--lp-primary-color)}.lp-user-profile #dashboard-general-statistic{margin-bottom:55px;padding-bottom:20px;border-bottom:1px solid #ddd}.lp-user-profile .dashboard-general-statistic__row{display:flex;margin:0 -15px;justify-content:center;flex-wrap:wrap}.lp-user-profile .dashboard-general-statistic__row .statistic-box{min-width:200px;max-width:270px;margin:0 15px 40px 15px;padding:15px 20px;border:1px solid #ccc;border-radius:4px;background:#f9fafc;text-align:center}@media(max-width:990px){.lp-user-profile .dashboard-general-statistic__row .statistic-box{width:45%}}@media(max-width:767px){.lp-user-profile .dashboard-general-statistic__row .statistic-box{width:100%;margin:0 15px 15px}}.lp-user-profile .dashboard-general-statistic__row .statistic-box:hover{background:#eaeaea}.lp-user-profile .dashboard-general-statistic__row[data-col="2"] .statistic-box{width:50%}.lp-user-profile .dashboard-general-statistic__row[data-col="4"] .statistic-box{width:25%}.lp-user-profile .dashboard-general-statistic__row[data-col="5"] .statistic-box{width:20%}.lp-user-profile .statistic-box .statistic-box__text{margin:0 0 7px 0;padding:0;color:#666;font-size:18px;font-weight:400;line-height:1}.lp-user-profile .statistic-box .statistic-box__number{color:#333;font-size:18px;font-weight:500;line-height:1}.lp-user-profile .profile-courses>h3{margin-top:0;margin-bottom:36px;color:#333;font-size:30px;font-weight:600;line-height:1;text-transform:capitalize}.lp-profile-content table.lp-list-table{border-spacing:0;border-top:1px solid #ccc;border-left:1px solid #ccc;margin-bottom:40px}.lp-profile-content table.lp-list-table tr th,.lp-profile-content table.lp-list-table tr td{border-right:1px solid #ccc;border-bottom:1px solid #ccc;text-align:center}.lp-profile-content table.lp-list-table tr td a{color:var(--wp--preset--color--foreground);font-weight:400}.lp-profile-content table.lp-list-table tr td a:hover{color:var(--lp-primary-color)}.lp-profile-content #profile-content-order-details h3{margin-top:0;font-size:30px;line-height:1.5;font-weight:500;margin-bottom:15px;font-family:var(--wp--preset--font-family--system-font)}.profile-basic-information .form-field,form[name=profile-change-password] .form-field{margin:0 10px 24px 10px}.profile-basic-information .form-field>label,form[name=profile-change-password] .form-field>label{margin:0 0 12px 0;color:#333;font-size:16px;font-weight:500;font-style:italic}.profile-basic-information .form-field .form-field-input input,form[name=profile-change-password] .form-field .form-field-input input{height:43px;padding:8px 20px;font-weight:400}.profile-basic-information .form-field .form-field-input input[type=password],form[name=profile-change-password] .form-field .form-field-input input[type=password]{padding:8px 20px}.profile-basic-information .form-field .form-field-input textarea,form[name=profile-change-password] .form-field .form-field-input textarea{padding:9px 20px 16px 20px;font-weight:300;line-height:24px}.profile-basic-information .form-field .form-field-input input,.profile-basic-information .form-field .form-field-input textarea,form[name=profile-change-password] .form-field .form-field-input input,form[name=profile-change-password] .form-field .form-field-input textarea{border:1px solid #ccc;color:#999;font-size:14px;font-style:italic}.profile-basic-information .form-field .form-field-input input:focus,.profile-basic-information .form-field .form-field-input textarea:focus,form[name=profile-change-password] .form-field .form-field-input input:focus,form[name=profile-change-password] .form-field .form-field-input textarea:focus{border-color:var(--lp-primary-color);outline:0;color:#222}.profile-basic-information .form-field .form-field-input ::placeholder,form[name=profile-change-password] .form-field .form-field-input ::placeholder{opacity:1;color:#999}.profile-basic-information .form-field .form-field-input :-ms-input-placeholder,form[name=profile-change-password] .form-field .form-field-input :-ms-input-placeholder{color:#999}.profile-basic-information .form-field .form-field-input ::-ms-input-placeholder,form[name=profile-change-password] .form-field .form-field-input ::-ms-input-placeholder{color:#999}.profile-basic-information .form-field .form-field-input .description,form[name=profile-change-password] .form-field .form-field-input .description{margin-top:15px}@media(max-width:767px){.profile-basic-information .form-field,form[name=profile-change-password] .form-field{margin:0 0 24px 0}}.profile-basic-information .form-field__50,form[name=profile-change-password] .form-field__50{float:left;width:calc(50% - 20px);margin-right:10px}@media(max-width:767px){.profile-basic-information .form-field__50,form[name=profile-change-password] .form-field__50{float:unset;width:100%;margin:0 0 24px 0}}.profile-basic-information .form-field__clear,form[name=profile-change-password] .form-field__clear{clear:both}.profile-basic-information button,form[name=profile-change-password] button{padding:16px 24px;border:0;border-radius:3px;color:#fff;background:var(--lp-primary-color);font-size:16px;font-weight:400;line-height:1}.profile-basic-information button:hover,form[name=profile-change-password] button:hover{opacity:.5;background:var(--lp-primary-color)}.profile-basic-information p,form[name=profile-change-password] p{margin:0}#learn-press-profile-basic-information .form-fields::after{display:block;clear:both;content:""}@media(max-width:767px){#learn-press-profile-basic-information .form-fields{margin:0}}#learn-press-profile-basic-information button[type=submit]{padding:0 15px;height:40px;line-height:40px;border:0;display:inline-flex;align-items:center;justify-content:center;background-color:var(--lp-primary-color);color:white;font-size:16px;font-weight:400;-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}#learn-press-profile-basic-information button[type=submit]:hover{opacity:.5;background-color:var(--lp-primary-color)}.recover-order__title{margin-bottom:5px}.recover-order__description{margin-bottom:20px;color:#999;font-size:.8em;font-style:italic}div.order-recover{display:flex}div.order-recover>.button-recover-order{margin:0;margin-left:20px;flex:0 0 auto}div.order-recover>.button-recover-order.loading::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}div.order-recover input[type=text]{width:100%;height:43px;margin-right:10px;padding:0 22px;border:1px solid #ccc;border-radius:3px;background-color:#fff;font-size:14px;font-weight:300;font-style:italic;line-height:43px;flex:1 1 auto}.learn-press-profile-course__progress .lp_profile_course_progress{border:1px solid #eee;border-top:0;overflow-x:auto}.learn-press-profile-course__progress .lp_profile_course_progress__item{display:grid;align-items:center;padding:15px;border-top:1px solid #eee;grid-template-columns:90px 1fr 80px 190px 140px;column-gap:20px}.learn-press-profile-course__progress .lp_profile_course_progress__item div img{max-width:60px;height:auto}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__item div img{max-width:100%}}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__item{display:block}}.learn-press-profile-course__progress .lp_profile_course_progress__header{background-color:#eee}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__header{display:flex;overflow-x:auto;white-space:nowrap;justify-content:flex-end}}.lp_profile_course_progress__nav button.loading::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.entry-content ul.learn-press-profile-course__tab__inner{padding:0}.content ul.learn-press-courses{margin-left:-15px;margin-right:-15px}.content ul.learn-press-courses[data-layout=list]{margin:0}.learn-press-profile-course__tab__inner{display:flex;margin:40px 0 0 0 !important;padding:0 !important;background:#eee;list-style:none !important}.learn-press-profile-course__tab__inner>li{list-style:none;margin:0 !important}.learn-press-profile-course__tab__inner>li:hover{cursor:pointer}.learn-press-profile-course__tab__inner a{display:inline-block;padding:15px 30px;font-weight:600;position:relative}.learn-press-profile-course__tab__inner a.active{color:var(--lp-primary-color);background:#fff}.learn-press-profile-course__tab__inner a.active::before{content:"";height:4px;width:100%;background-color:var(--lp-primary-color);position:absolute;top:0;left:0;right:auto}.learn-press-course-tab-filters .learn-press-filters{margin-top:20px;margin-left:0;padding:0;list-style:none}.learn-press-course-tab-filters .learn-press-filters a.active{color:var(--lp-primary-color)}.lp-profile-content ul{list-style:none !important;padding:0 !important}.learnpress_avatar__form label{display:inline-block}.learnpress_avatar__form input[type=file]{display:none}.learnpress_avatar__form__upload{display:flex;width:200px;height:200px;border:1px dashed #ccc;border-radius:3px;background-color:#fafafa;font-size:14px;font-weight:300;font-style:italic;line-height:43px;text-align:center;cursor:pointer;align-items:center;justify-content:center}.learnpress_avatar__form__upload div{line-height:1.4}.learnpress_avatar__button--loading::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}button.learnpress_avatar__button{height:40px;padding:0 15px;border:0;background:var(--lp-primary-color);color:white;margin-top:15px;border-radius:3px}button.learnpress_avatar__button+button{margin-left:15px;margin-right:0}#primary .learn-press-courses[data-size="3"] .course{width:50%}body.learnpress .learn-press-tabs .learn-press-tabs__tab,body.learnpress .attachment-recent-works-thumbnail{border-radius:0}#learn-press-course-tabs.show-all .course-tab-panel{margin-bottom:40px}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .course-tab-panels .course-tab-panel:nth-child(1){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .learn-press-nav-tabs .course-nav:nth-child(1){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .learn-press-nav-tabs .course-nav:nth-child(1) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .course-tab-panels .course-tab-panel:nth-child(2){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .learn-press-nav-tabs .course-nav:nth-child(2){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .learn-press-nav-tabs .course-nav:nth-child(2) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .course-tab-panels .course-tab-panel:nth-child(3){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .learn-press-nav-tabs .course-nav:nth-child(3){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .learn-press-nav-tabs .course-nav:nth-child(3) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .course-tab-panels .course-tab-panel:nth-child(4){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .learn-press-nav-tabs .course-nav:nth-child(4){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .learn-press-nav-tabs .course-nav:nth-child(4) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .course-tab-panels .course-tab-panel:nth-child(5){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .learn-press-nav-tabs .course-nav:nth-child(5){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .learn-press-nav-tabs .course-nav:nth-child(5) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .course-tab-panels .course-tab-panel:nth-child(6){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .learn-press-nav-tabs .course-nav:nth-child(6){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .learn-press-nav-tabs .course-nav:nth-child(6) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .course-tab-panels .course-tab-panel:nth-child(7){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .learn-press-nav-tabs .course-nav:nth-child(7){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .learn-press-nav-tabs .course-nav:nth-child(7) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .course-tab-panels .course-tab-panel:nth-child(8){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .learn-press-nav-tabs .course-nav:nth-child(8){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .learn-press-nav-tabs .course-nav:nth-child(8) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .course-tab-panels .course-tab-panel:nth-child(9){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .learn-press-nav-tabs .course-nav:nth-child(9){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .learn-press-nav-tabs .course-nav:nth-child(9) label{color:var(--lp-primary-color);background:#fff}.course-tab-panels .course-tab-panel{padding-top:30px}.course-tab-panel{display:none}.course-tab-panel.active{display:block}.course-tab-panel .course-description{color:#666;font-size:16px;font-weight:300;line-height:26px}.course-tab-panel .course-description h4{margin-top:0;margin-bottom:1.125rem;color:#333;font-size:18px;font-weight:500}.course-tab-panel .course-description p{line-height:inherit}.course-tab-panel .course-description img{max-width:100%;height:auto;vertical-align:middle}.course-tab-panel .lp-course-author{display:flex;margin-bottom:40px}@media(max-width:767px){.course-tab-panel .lp-course-author{flex-direction:column}}.course-tab-panel .lp-course-author .course-author__pull-left{margin-right:30px;text-align:center;align-items:center}@media(max-width:767px){.course-tab-panel .lp-course-author .course-author__pull-left{margin-right:0;margin-bottom:30px}}.course-tab-panel .lp-course-author img{width:50px;height:50px;margin-bottom:20px;border-radius:50%;object-fit:cover;object-position:center}.course-tab-panel .lp-course-author .course-author__pull-right{flex:1}@media(max-width:767px){.course-tab-panel .lp-course-author .course-author__pull-right{width:100%;text-align:center}}.course-tab-panel .lp-course-author .author-title{margin-bottom:18px}.course-tab-panel .lp-course-author .author-title a{color:#333;box-shadow:none;font-size:18px;font-weight:500;text-transform:capitalize}.course-tab-panel .lp-course-author .author-title a:hover{color:var(--lp-primary-color)}.course-tab-panel .lp-course-author .author-description{color:#666;font-size:16px;font-weight:300;line-height:26px}.course-tab-panel .lp-course-author .author-socials{display:grid;grid-template-columns:repeat(4,33px);gap:10px;justify-content:center}.course-tab-panel .lp-course-author .author-socials>a{display:inline-block;width:33px;height:33px;margin:0;border:1px solid #ededed;border-radius:50%;color:#878787;box-shadow:none;font-size:14px;line-height:33px;text-align:center;vertical-align:middle;transition:all .3s}.course-tab-panel .lp-course-author .author-socials>a:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.course-tab-panel .lp-course-author .author-socials .fa-googleplus::before{content:"\f0d5"}.course-summary div.lp-list-co-instructor{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}.course-summary div.lp-list-co-instructor__item{display:flex;column-gap:30px}@media(max-width:767px){.course-summary div.lp-list-co-instructor__item{align-items:center;flex-direction:column;padding:0 15px;column-gap:0;row-gap:10px}}.course-summary div.lp-list-co-instructor__avatar>img{width:100%;max-width:96px;border-radius:999px}.course-summary div.lp-list-co-instructor__bio{flex:1}.course-summary div.lp-list-co-instructor__bio__top>a{font-size:18px;font-weight:600}.course-summary div.lp-list-co-instructor__bio__description{font-size:1rem}.course-summary .course-price{margin-bottom:10px}.course-summary .course-price .origin-price,.course-summary .course-price .price{vertical-align:middle}.course-summary .course-price .origin-price{margin-right:10px;font-size:18px;font-style:italic;text-decoration:line-through}.course-summary .course-price .price{font-size:24px}.course-summary .course-summary-sidebar .lp-course-buttons{margin-bottom:20px}.course-summary .course-featured-review .featured-review__title{margin-top:0;margin-bottom:6px;font-size:1.2rem;font-weight:500}.course-summary .course-featured-review .featured-review__stars{padding-bottom:12px;color:var(--lp-primary-color);font-size:16px}.course-summary .course-featured-review .featured-review__content{position:relative;color:#666;font-size:1rem;font-style:italic;line-height:24px}.course-summary .course-featured-review .featured-review__content::after{position:absolute;top:-42px;right:-15px;color:rgba(102,102,102,0.1);font-family:Arial;font-size:180px;font-weight:700;font-style:normal;content:"‘‘";transform:rotate(180deg)}.course-summary .course-tags a{display:inline-block;padding:3px 5px;border-radius:4px;color:#fff;background:#9aa5ab;font-size:12px;line-height:1}.edit-content{margin-left:5px}ul.learn-press-nav-tabs{display:flex;margin:0;padding:0;border:1px solid rgba(204,204,204,0.3);border-bottom:0;background:#f1f2f8;list-style:none}ul.learn-press-nav-tabs .course-nav{float:left;position:relative;margin:0;border-right:1px solid rgba(204,204,204,0.3);border-bottom:1px solid rgba(204,204,204,0.3);list-style:none}ul.learn-press-nav-tabs .course-nav:first-child.active::after{position:absolute;top:-1px;left:-1px;width:1px;height:100%;background:#fff;content:""}ul.learn-press-nav-tabs .course-nav:last-child{border-right:0}ul.learn-press-nav-tabs .course-nav:last-child.active::after{position:absolute;top:-1px;right:-2px;width:2px;height:100%;background:#fff;content:""}ul.learn-press-nav-tabs .course-nav.active{border-bottom:0}ul.learn-press-nav-tabs .course-nav.active::before{position:absolute;top:-1px;left:0;width:100%;height:4px;background:var(--lp-primary-color);content:""}ul.learn-press-nav-tabs .course-nav.active label{color:var(--lp-primary-color);background-color:white}ul.learn-press-nav-tabs .course-nav a{display:inline-block;padding:10px 20px;border-bottom:0;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}ul.learn-press-nav-tabs .course-nav a:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}ul.learn-press-nav-tabs[data-tabs] .course-nav{flex:1}ul.learn-press-nav-tabs[data-tabs] .course-nav a{width:100%;text-align:center}ul.learn-press-nav-tabs::after{display:block;clear:both;content:""}@media(max-width:767px){ul.learn-press-nav-tabs{display:grid;grid-template-columns:repeat(2,1fr);max-height:none}}.course-item-popup #tab-curriculum{display:block}.course-curriculum ul.curriculum-sections{position:relative;z-index:499;margin:0;padding:0;list-style:none}.course-curriculum ul.curriculum-sections .closed .section-item__loadmore{display:none}.course-curriculum ul.curriculum-sections .section{margin:0;padding:0;flex-wrap:wrap}.course-curriculum ul.curriculum-sections .section:last-child{padding:0}.course-curriculum ul.curriculum-sections .section.section-empty .section-header{margin-bottom:20px}.course-curriculum ul.curriculum-sections .section.section-empty .learn-press-message{margin-right:15px;margin-left:15px}.course-curriculum ul.curriculum-sections .section-title.c+.section-desc{display:block}.course-curriculum ul.curriculum-sections .section-title.c span.show-desc::before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);top:0}.course-curriculum ul.curriculum-sections .item-meta.duration{background:#d9e0f1}.course-curriculum .section-item__loadmore{display:flex;justify-content:center;align-items:center}.course-curriculum .section-item__loadmore button{display:inline-flex;margin-top:10px;margin-right:auto;margin-left:auto;padding:10px 20px;border:1px solid #ccc;border-radius:4px;outline:0;color:#222;background:#f7f7f7;box-shadow:none;font-weight:500;justify-content:center;align-items:center;cursor:pointer;font-size:1rem;font-family:sans-serif}.course-curriculum .section-item__loadmore.loading button::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.course-curriculum .section-header{display:table;width:100%;padding:0 0 26px 0;border-bottom:0;border-bottom:1px solid #d9e0f1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-curriculum .section-header .section-title,.course-curriculum .section-header .section-desc{margin:0}.course-curriculum .section-header span.show-desc{display:inline-block;position:absolute;top:50%;right:30px;width:20px;height:20px;transform:translate(0,-50%)}.course-curriculum .section-header span.show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f107"}.course-curriculum .section-header span.show-desc:hover::before{border-top-color:#ccc}.course-curriculum .section-header .section-desc{margin:0;margin-top:10px;font-size:14px;line-height:21px;color:#999;font-style:italic}.course-curriculum .section-header .section-meta{display:block;padding-top:17px;padding-bottom:15px;font-size:14px;text-align:right;vertical-align:middle;white-space:nowrap}.course-curriculum .section-item{width:100%}.course-curriculum .section-content{margin:0 0 15px 0;padding:0;list-style:none}.course-curriculum .section-content .course-item-meta{display:table-cell;padding:10px 0;text-align:right;vertical-align:middle;white-space:nowrap}.course-curriculum .section-content .course-item-meta .item-meta{display:inline-block;margin-left:14px;border-radius:3px;color:#fff;font-size:14px;line-height:23px;text-align:center;vertical-align:middle;padding:0 8px}.course-curriculum .section-content .course-item-meta .item-meta.final-quiz{background:#14c4ff}.course-curriculum .section-content .course-item-meta .item-meta.trans{padding:0}.course-curriculum .section-content .course-item-meta .count-questions{background:#9672cf}.course-curriculum .section-content .course-item-meta .duration{background:silver}.course-curriculum .section-content .course-item-meta .course-item-status{padding:0;color:#999;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-curriculum .section-content .course-item-meta .course-item-status::before{font-family:"Font Awesome 5 Free";font-size:14px;font-weight:900;vertical-align:middle;text-transform:lowercase;content:"\f00c"}.course-curriculum .section-content .course-item-preview{font-style:normal;padding:0}.course-curriculum .section-content .course-item-preview::before{color:#fff;padding:0 8px;background:#00adff;display:inline-flex;align-items:center;justify-content:center;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:baseline;content:attr(data-preview)}.course-curriculum .course-item{display:flex;position:relative;margin:0 0 2px 0;padding:0 15px 0 30px;background:rgba(241,242,248,0.4);font-size:14px;transition:padding-left linear .15s}@media(max-width:767px){.course-curriculum .course-item{padding:0 0 0 15px}}.course-curriculum .course-item>span{display:flex;width:28px;color:#666;font-size:16px;font-weight:300;align-items:center}.course-curriculum .course-item .section-item-link{display:table;padding-right:15px;padding-left:0;border-bottom:0;outline:0;box-shadow:none;line-height:1.5;color:#777;text-decoration:none}.course-curriculum .course-item .section-item-link:hover .item-name{color:var(--lp-primary-color)}.course-curriculum .course-item .section-item-link::before{display:table-cell;display:table-cell;left:0;width:20px;padding:15px 0;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:18px;font-weight:400;vertical-align:middle;transition:left linear .15s}.course-curriculum .course-item .item-icon,.course-curriculum .course-item .item-name{display:table-cell;padding:17px 16px;color:#333;font-size:16px;font-weight:600;vertical-align:middle}.course-curriculum .course-item .item-icon::before{font-size:18px}.course-curriculum .course-item .item-icon.icon-lock{float:right;margin-top:15px}.course-curriculum .course-item.course-item-lp_quiz .section-item-link::before{content:"\f059"}.course-curriculum .course-item.course-item-lp_lesson .section-item-link::before{content:"\f15b"}.course-curriculum .course-item.course-item-lp_lesson.course-item-type-video .section-item-link::before{content:"\f03d"}.course-curriculum .course-item.course-item-lp_lesson.course-item-type-audio .section-item-link::before{content:"\f028"}.course-curriculum .course-item.item-locked .course-item-status::before{color:var(--lp-secondary-color);content:"\f023"}.course-curriculum .course-item.has-status{padding-top:1px}.course-curriculum .course-item.has-status.status-completed .course-item-status::before,.course-curriculum .course-item.has-status.status-evaluated .course-item-status::before{color:#3bb54a}.course-curriculum .course-item.has-status.item-failed .course-item-status::before,.course-curriculum .course-item.has-status.failed .course-item-status::before{border-color:#f02425;color:#f02425;content:"\f00d"}.course-curriculum .course-item::before{position:absolute;top:50%;left:0;width:3px;height:0;background:#00adff;content:"";transition:height linear .15s,top linear .15s}.course-curriculum .course-item.current{padding-left:10px;background:#f9f9f9}.course-curriculum .course-item.current a::before{left:10px}.course-curriculum .course-item.current::before{top:0;height:100%}.course-curriculum .section-left{vertical-align:top}.course-curriculum .section-left .section-title{padding:0;color:#666;font-size:1.4rem;letter-spacing:0;text-transform:capitalize;display:block}.course-curriculum .curriculum-more__button{display:flex;width:100%;margin-top:20px;margin-bottom:20px;padding:10px 0;border:0;outline:0;color:#fff;background:#333;box-shadow:none;justify-content:center;align-items:center;cursor:pointer;font-size:1rem;font-family:sans-serif}.course-curriculum .curriculum-more__button.loading::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}body.course-item-popupx{overflow:hidden;_opacity:0}body.course-item-popupx #learn-press-course-curriculum{overflow:auto;position:fixed;z-index:9999;top:32px;bottom:0;left:0;width:400px;border-right:1px solid #ddd;background:#fff}body.course-item-popupx #learn-press-course-curriculum .section-header{padding:0 15px}body.course-item-popupx #learn-press-course-curriculum .section-header .section-desc{margin:-10px 0 5px}body.course-item-popupx #learn-press-course-curriculum .course-item{padding-right:15px;padding-left:15px}body.course-item-popupx #learn-press-course-curriculum .course-item a::before{left:15px}body.course-item-popupx #learn-press-content-item{overflow:hidden;position:fixed;z-index:9999;top:32px;right:0;bottom:0;left:400px;background:#fff}body.course-item-popupx #learn-press-content-item .content-item-wrap{max-width:900px;margin:10px auto}body.course-item-popupx #learn-press-content-item .course-item-title{font-size:1.4rem}body.course-item-popupx #learn-press-content-item .content-question-summary .review-heading{text-align:center}body.course-item-popupx #learn-press-content-item .content-question-summary .question-title{margin-bottom:10px;font-size:1.2rem}body.course-item-popupx #content-item-nav{position:fixed;z-index:99999;right:0;bottom:0;left:400px;height:60px;border-top:1px solid #ddd;background:#f5f5f5}body.course-item-popupx #content-item-nav .content-item-nav-wrap{max-width:900px;margin:10px auto}body.course-item-popupx #content-item-nav button{height:40px;padding:0 20px;line-height:40px}body.course-item-popupx .comment-form-textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.course-item-popupx.wpadminbar #learn-press-course-curriculum,body.course-item-popupx.wpadminbar #learn-press-content-item{top:92px}body.course-item-popupx.wpadminbar .content-item-description{margin-bottom:20px}body.course-item-popupx .content-item-summary{margin-bottom:50px}body.course-item-popupx .content-item-summary>h3{margin-bottom:20px}body.course-item-popupx .content-item-summary.content-item-video .entry-video{position:absolute;top:0;left:0;width:100%;background:#000;line-height:1}body.course-item-popupx .content-item-summary.content-item-video .entry-video iframe{width:100%;max-width:900px;margin-bottom:0;vertical-align:top}body.course-item-popupx .learn-press-content-protected-message{margin-bottom:50px;padding:20px;background:#ffe0e0}body.course-item-popupx.content-only #learn-press-content-item{z-index:9999999;top:0;bottom:0;left:0}body.course-item-popupx.content-only #learn-press-content-item .content-item-scrollable{bottom:0}body #ifr-course-item{position:absolute;z-index:999999;top:0;left:0;width:100%;height:100%;background:#fff}body .content-item-summary .form-button-finish-course,body .lp-quiz-buttons .form-button-finish-course{float:right}#wpadminbar #wp-admin-bar-edit-lp_quiz .ab-item::before,#wpadminbar #wp-admin-bar-edit-lp_lesson .ab-item::before,#wpadminbar #wp-admin-bar-edit-lp_question .ab-item::before{top:2px;font-family:"Font Awesome 5 Free"}#wpadminbar #wp-admin-bar-edit-lp_quiz .ab-item::before{content:"\f017"}#wpadminbar #wp-admin-bar-edit-lp_lesson .ab-item::before{content:"\f15c"}#wpadminbar #wp-admin-bar-edit-lp_question .ab-item::before{content:"\f29c"}.scroll-wrapper{overflow:hidden;opacity:0}.scroll-wrapper .scroll-element{background:transparent}.scroll-wrapper .scroll-element.scroll-y.scroll-scrolly_visible{transition:opacity .25s}.scroll-wrapper:hover .scroll-element.scroll-y.scroll-scrolly_visible{opacity:.7}.course-remaining-time .label-enrolled{font-size:inherit}.learn-press-form.completed button::before{margin-right:10px;font-family:"Font Awesome 5 Free";font-size:18px;content:"\f00c"}.lp-course-progress{position:relative}.lp-course-progress .lp-passing-conditional{position:absolute;top:0;width:3px;height:6px;margin-left:-1px;background:var(--lp-secondary-color)}.viewing-course-item .section-header .section-desc{display:none}.viewing-course-item .content-item-wrap{margin-top:50px}.course-meta{display:flex;margin-bottom:40px}.course-meta .course-meta__pull-left,.course-meta .course-meta__pull-right{display:flex;flex-wrap:wrap}.course-meta .course-meta__pull-left{flex:1}.course-meta .course-meta__pull-left .meta-item{margin-right:10px}.course-meta .course-meta__pull-right{flex:0 0 50%}.course-meta .course-meta__pull-right .meta-item{margin-left:10px}.course-meta.course-meta-primary .meta-item{flex:1}.course-meta.two-columns .course-meta{flex:1}.course-extra-box{margin-bottom:3px;border:1px solid rgba(204,204,204,0.3);border-radius:5px}.course-extra-box__title{--extra-height:50px;display:flex;align-items:center;position:relative;height:var(--extra-height);margin:0 !important;padding:0 45px 0 38px;background:rgba(181,187,211,0.15);font-size:1.1rem;font-weight:600;cursor:pointer}@media(max-width:767px){.course-extra-box__title{padding-left:15px}}.course-extra-box__title::after{position:absolute;top:0;right:20px;color:#666;font-family:"Font Awesome 5 Free";line-height:var(--extra-height);content:"\f0d7"}.course-extra-box__content{display:none}.course-extra-box__content-inner{-webkit-animation-name:course-extra-box__content-inner-transform;animation-name:course-extra-box__content-inner-transform;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-direction:normal;animation-direction:normal}.course-extra-box__content ul,.course-extra-box__content li{list-style:none}.course-extra-box__content ul{margin:0;padding:0}.course-extra-box__content li{margin:0;padding:10px 38px;border-bottom:1px solid rgba(204,204,204,0.3);color:#666;font-size:16px;font-weight:300}@media(max-width:767px){.course-extra-box__content li{padding-left:30px;padding-right:30px}}.course-extra-box__content li::before{margin-right:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900;content:"\f00c"}.course-extra-box__content li:last-child{border-bottom:0}.course-extra-box:last-child{margin-bottom:60px}.course-extra-box.active .course-extra-box__title::after{content:"\f0d8"}.course-extra-box+.comment-respond,.course-extra-box+.comments-area{margin-top:60px;margin-bottom:30px}.course-extra-box+.course-tabs{margin-top:60px}input[name=course-extra-box-ratio]{display:none}input[name=course-extra-box-ratio]:checked+.course-extra-box .course-extra-box__content{display:block}input[name=course-extra-box-ratio]:checked+.course-extra-box .course-extra-box__content .course-extra-box__content-inner{transform:scale(1)}@-webkit-keyframes course-extra-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(5%);-moz-transform:translateX(5%);-ms-transform:translateX(5%);-o-transform:translateX(5%);transform:translateX(5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@keyframes course-extra-box__content-inner-transform{from{opacity:0;transform:translateX(5%)}to{opacity:1;transform:translateX(0)}}.course-tab-panel-faqs{padding-top:64px}.course-tab-panel-faqs .course-faqs-box{margin-bottom:20px;border:1px solid rgba(204,204,204,0.6);border-radius:5px}.course-tab-panel-faqs .course-faqs-box__title{display:block;position:relative;margin:0;padding:20px 45px 20px 25px;font-size:1.1rem;font-weight:500;line-height:1.7;cursor:pointer}.course-tab-panel-faqs .course-faqs-box__title::after{position:absolute;top:50%;right:28px;color:#6c6c6c;font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900;content:"\f078";transform:translateY(-50%)}.course-tab-panel-faqs .course-faqs-box:last-child{margin-bottom:40px}.course-tab-panel-faqs .course-faqs-box:hover{background:rgba(241,242,248,0.4)}.course-tab-panel-faqs .course-faqs-box:hover .course-faqs-box__title{color:var(--lp-primary-color)}.course-tab-panel-faqs .course-faqs-box__content{display:none}.course-tab-panel-faqs .course-faqs-box__content-inner{padding:0 25px 25px 25px;color:#666;font-size:1rem;font-weight:300;line-height:26px;-webkit-animation-name:course-faqs-box__content-inner-transform;animation-name:course-faqs-box__content-inner-transform;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-direction:normal;animation-direction:normal}input[name=course-faqs-box-ratio]{display:none}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__content{display:block}input[name=course-faqs-box-ratio]:checked+.course-faqs-box{background:rgba(241,242,248,0.4)}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__title{color:var(--lp-primary-color)}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__title::after{content:"\f077"}@-webkit-keyframes course-faqs-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(5%);-moz-transform:translateX(5%);-ms-transform:translateX(5%);-o-transform:translateX(5%);transform:translateX(5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@keyframes course-faqs-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(5%);-moz-transform:translateX(5%);-ms-transform:translateX(5%);-o-transform:translateX(5%);transform:translateX(5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@media screen and (max-width:1300px){body.course-item-popup #learn-press-course-curriculum{width:300px}body.course-item-popup #learn-press-course-curriculum .progress-bg{width:40px}body.course-item-popup #content-item-nav{left:300px}body.course-item-popup .section-desc{display:none}}@media screen and (max-width:1200px){body.course-item-popupx #learn-press-course-curriculum{width:300px}body.course-item-popupx #content-item-nav{left:300px}body.course-item-popupx #learn-press-content-item .content-item-nav-wrap,body.course-item-popupx #learn-press-content-item .content-item-wrap{width:90%}}@media screen and (max-width:768px){body.course-item-popup .course-curriculum{width:200px}body.course-item-popup #content-item-nav{left:200px}body.course-item-popup #learn-press-content-item .content-item-nav-wrap,body.course-item-popup #learn-press-content-item .content-item-wrap{width:90%}body.course-item-popup.wpadminbar #learn-press-content-item,body.course-item-popup.wpadminbar #learn-press-course-curriculum{top:106px}.learn-press-course-results-progress{margin-right:0}.learn-press-course-results-progress .items-progress,.learn-press-course-results-progress .course-progress{float:none;width:100%;margin-right:0;margin-bottom:20px}}.lp-quiz-buttons{margin-bottom:20px;display:block;clear:both;content:""}.quiz-progress{margin-bottom:30px;background:#e7f7ff}.quiz-progress .progress-items{display:flex}.quiz-progress .progress-items .progress-item{position:relative;color:#777;font-size:15px;flex:1}.quiz-progress .progress-items .progress-item .progress-number,.quiz-progress .progress-items .progress-item .progress-label{display:block;line-height:1;text-align:center}.quiz-progress .progress-items .progress-item .progress-number{margin:15px 0 10px 0;font-size:20px}.quiz-progress .progress-items .progress-item .progress-label{margin-bottom:15px;font-size:14px}.quiz-progress .progress-items .progress-item i{display:none;float:left;width:60px;height:60px;color:#fff;background:#00adff;font-size:30px;line-height:60px;text-align:center}.quiz-progress .progress-items .progress-item::after{display:block;clear:both;content:""}.answer-options{margin:0;padding:0;list-style:none}.answer-options .answer-option{display:flex;overflow:hidden;position:relative;margin:0 0 18px 0;padding:10px;color:#777;background:#f5f5f5;font-size:20px;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-transition:background linear .25s;-moz-transition:background linear .25s;-ms-transition:background linear .25s;-o-transition:background linear .25s;transition:background linear .25s}.answer-options .answer-option .option-title{display:table-cell;font-size:smaller}.answer-options .answer-option .option-title .option-title-content{display:inline-block;vertical-align:middle}.answer-options .answer-option .option-title::before{position:absolute;top:0;bottom:0;left:0;width:3px;background:#ddd;content:"";-webkit-transition:background linear .25s;-moz-transition:background linear .25s;-ms-transition:background linear .25s;-o-transition:background linear .25s;transition:background linear .25s}.answer-options .answer-option input[type=checkbox],.answer-options .answer-option input[type=radio]{-webkit-appearance:initial;-moz-appearance:initial;position:relative;z-index:10;width:35px;min-width:35px;height:35px;margin:0 10px 0 3px;border:1px solid #cfcfcf;background:#f9fafc;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.answer-options .answer-option input[type=checkbox]:focus,.answer-options .answer-option input[type=radio]:focus{outline:0}.answer-options .answer-option input[type=checkbox]::after,.answer-options .answer-option input[type=radio]::after{margin-top:-10px;position:absolute;top:18px;left:9px;box-sizing:content-box;opacity:0;color:#3db748;font-family:"Font Awesome 5 Free";font-weight:900;font-size:16px;content:"\f00c"}.answer-options .answer-option input[type=checkbox]:checked ~ .option-title .option-title-content,.answer-options .answer-option input[type=radio]:checked ~ .option-title .option-title-content{position:relative}.answer-options .answer-option input[type=checkbox]:checked ~ .option-title::before,.answer-options .answer-option input[type=radio]:checked ~ .option-title::before{background:#00adff}.answer-options .answer-option input[type=checkbox]:checked::after,.answer-options .answer-option input[type=radio]:checked::after{opacity:1}.answer-options .answer-option input[type=checkbox]::after{margin-top:0;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.answer-options .answer-option input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.answer-options .answer-option input[type=radio]::before{border-radius:50%}.answer-options .answer-option .option-title{margin:0}.answer-options .answer-option:hover{background:#e1f5ff}.answer-options .answer-option.answer-correct{background:#e1f5ff}.answer-options .answer-option.answer-correct input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answer-correct input[type=checkbox]:checked ~ .option-title::before{background:#e1f5ff}.answer-options .answer-option.answered-correct input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answered-correct input[type=checkbox]:checked ~ .option-title::before{background:#00adff}.answer-options .answer-option.answered-wrong input[type=radio]::before,.answer-options .answer-option.answered-wrong input[type=radio]::after,.answer-options .answer-option.answered-wrong input[type=checkbox]::before,.answer-options .answer-option.answered-wrong input[type=checkbox]::after{border-color:red}.answer-options .answer-option.answered-wrong input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answered-wrong input[type=checkbox]:checked ~ .option-title::before{background:red}button[data-counter]{position:relative}button[data-counter]::after{padding-left:5px;content:"(+" attr(data-counter) ")"}.quiz-result{max-width:320px;margin:20px auto 48px;text-align:center}.quiz-result .result-heading{display:none}.quiz-result.passed .result-message{background:#3bb54a}.quiz-result.passed .result-message::after{content:"\f00c"}.quiz-result .result-message{margin-bottom:30px;padding:10px 0 !important;color:#fff;background:#f02425;font-size:16px;line-height:22px;font-weight:400;display:flex;align-items:center;justify-content:center;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.quiz-result .result-message::after{margin-left:10px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f00d"}.quiz-result .result-grade .result-achieved,.quiz-result .result-grade .result-require{display:inline-block;margin:0 auto}.quiz-result .result-grade .result-achieved{padding-bottom:7px;border-bottom:1px solid #999;color:#333;font-size:28px;font-weight:500;line-height:1}.quiz-result .result-grade .result-require{display:block;padding-top:5px;color:#666;font-size:16px;font-weight:400;line-height:1}.quiz-result .result-grade .result-message{font-size:14px}.quiz-result.passed .result-achieved{color:#04adff}.quiz-result.passed .result-message strong{color:#04adff}.quiz-result .result-statistic{margin:0;padding:0;text-align:left;list-style:none}.quiz-result .result-statistic .result-statistic-field{display:flex;margin:0}.quiz-result .result-statistic .result-statistic-field+li{border-top:1px dashed #ccc}.quiz-result .result-statistic .result-statistic-field span,.quiz-result .result-statistic .result-statistic-field p{margin:0;flex:1}.quiz-result .result-statistic .result-statistic-field span{color:#666;font-size:16px;font-weight:400;line-height:35px}.quiz-result .result-statistic .result-statistic-field span::before{display:inline-block;width:15px;margin-right:10px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900}.quiz-result .result-statistic .result-statistic-field p{color:#333;font-size:16px;font-weight:500;line-height:35px;text-align:right}.quiz-result .result-statistic .result-statistic-field.result-time-spend label::before{font-weight:400;content:"\f017"}.quiz-result .result-statistic .result-statistic-field.result-point label::before{font-weight:400;content:"\f005"}.quiz-result .result-statistic .result-statistic-field.result-questions label::before{font-weight:400;content:"\f059"}.quiz-result .result-statistic .result-statistic-field.result-questions-correct label::before{color:#3db748;content:"\f00c"}.quiz-result .result-statistic .result-statistic-field.result-questions-wrong label::before{color:#f02425;content:"\f00d"}.quiz-result .result-statistic .result-statistic-field.result-questions-skipped label::before{color:#ddd;content:"\f2f5"}.quiz-status{position:sticky;z-index:99;top:0;right:0;left:0;margin:0 0 35px 0}.quiz-status>div{display:flex;box-sizing:border-box;width:100%;max-width:792px;height:60px;margin:0 auto;padding:5px 10px 5px 30px;border-radius:4px;background:var(--lp-primary-color);justify-content:center;align-items:center}@media(max-width:480px){.quiz-status>div{display:block;height:auto;text-align:center;padding:15px}.quiz-status>div .questions-index{margin-bottom:10px}}.quiz-status>div>div{display:flex;flex-direction:row-reverse;flex:0 0 50%;align-items:center}@media(max-width:480px){.quiz-status>div>div{justify-content:center}}.quiz-status>div .current-point{display:none}.quiz-status .questions-index{display:inline-block;color:#666;font-size:16px;font-weight:400;line-height:26px}.quiz-status .questions-index span{color:#333;font-weight:500}.quiz-status .countdown{position:relative;min-width:120px;margin-right:5px;padding:12px 29px;color:#333;background:#fff;font-size:14px;font-weight:400;line-height:1;text-align:center}.quiz-status .countdown .fas{position:absolute;top:50%;left:10px;color:#333;font-size:14px;transform:translateY(-50%)}.quiz-status .countdown .clock{display:none;width:40px;height:40px}.quiz-status .countdown .clock::before{position:absolute;width:40px;height:40px;border:4px solid #b1c1e6;border-radius:50%;content:"";-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.quiz-status .countdown .clock .circle-progress-bar{display:inline-block;position:relative;width:40px;height:40px;stroke:#5383f7}.quiz-status .countdown .clock .circle-progress-bar .circle-progress-bar__circle{transition:.35s stroke-dashoffset;transform:rotate(-90deg);transform-origin:50% 50%}.quiz-status .countdown .clock.x .circle-progress-bar__circle{stroke:red}.quiz-status .submit-quiz button{margin:0 0 0 10px;border:0;border-radius:0;background:#fff;text-transform:uppercase}.quiz-status .submit-quiz button:hover{background:var(--lp-secondary-color)}.quiz-status.submitting .submit-quiz button{background:#ddd}.question-numbers{text-align:center;list-style:none}.question-numbers li{display:inline-block;position:relative;margin-bottom:3px}.question-numbers li a{display:block;min-width:20px;padding:8px;border:1px solid #ddd;color:#999;background:#f5f5f5;box-shadow:none;font-size:12px;line-height:1}.question-numbers li a span{vertical-align:middle}.question-numbers li a:hover{border:1px solid #3880a2;color:#fff;background:#00adff}.question-numbers li.current a{border-color:#3880a2;color:#fff !important;background:#00adff}.question-numbers li.current.skipped::after{background:#fff}.question-numbers li.answered a::after{margin-left:3px;font-family:"Font Awesome 5 Free";font-size:8px;vertical-align:middle}.question-numbers li.answered.answered-wrong a{color:red}.question-numbers li.answered.answered-true a{color:#00adff}.question-numbers li.answered.answered-true.current a{color:#fff}.question-numbers li.skipped::after{position:absolute;bottom:3px;left:50%;width:10px;height:4px;margin-left:-5px;border-radius:2px;background:#aaa;content:""}.quiz-intro{display:flex;margin:0 0 20px;padding:0;list-style:none;flex-flow:row wrap}@media(max-width:768px){.quiz-intro{padding-right:10px;padding-left:10px;justify-content:space-between}}.quiz-intro-item{display:flex;margin:0 40px 0 0;align-items:center}@media(max-width:768px){.quiz-intro-item{margin:0 20px 0 0}}.quiz-intro-item::before{position:relative;top:-2px;margin-right:10px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900}.quiz-intro-item--passing-grade{order:2}.quiz-intro-item--passing-grade::before{content:"\f012"}.quiz-intro-item--questions-count{order:1}.quiz-intro-item--questions-count::before{content:"\f12e"}.quiz-intro-item--duration{order:2}.quiz-intro-item--duration::before{content:"\f017"}.quiz-intro-item__title{margin:0;padding:0 8px 0 0;color:#333;font-size:16px;font-weight:300;line-height:1.7}.quiz-intro-item__content{color:#222;font-size:16px;font-weight:400}.question-explanation-content,.question-hint-content{margin-bottom:20px;padding:10px 15px;background:#f5f5f5}.redo-quiz button[type=submit]{content:attr(data-counter)}.circle-bar{position:relative;width:300px;height:300px;border-color:#ddd}.circle-bar::before{position:absolute;z-index:0;top:0;left:0;box-sizing:border-box;width:100%;height:100%;border:10px solid #ddd;border-radius:50%;content:""}.circle-bar .before,.circle-bar .after{position:absolute;z-index:0;top:0;left:0;box-sizing:border-box;width:100%;height:100%;border:10px solid #14c4ff;border-radius:50%;transform:rotate(45deg)}.circle-bar .before{border-bottom-color:transparent;border-left-color:transparent;transform:rotate(45deg)}.circle-bar .after{border-color:#14c4ff;border-top-color:transparent;border-right-color:transparent;transform:rotate(45deg)}.circle-bar.bg50 .after{z-index:10;border-bottom-color:inherit;border-left-color:inherit;transform:rotate(45deg)}.lp-quiz-buttons .complete-quiz,.lp-quiz-buttons .back-quiz,.lp-quiz-buttons .review-quiz{float:right}.quiz-result .result-grade{display:flex;flex-direction:column;position:relative;box-sizing:border-box;height:200px;margin-bottom:30px;padding:50px;justify-content:center;align-items:center;-webkit-transform:none !important;-moz-transform:none !important;-ms-transform:none !important;-o-transform:none !important;transform:none !important}.quiz-result .result-grade::before,.quiz-result .result-grade svg{position:absolute;top:0;left:50%;width:200px;height:200px;margin-left:-100px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.quiz-result .result-grade::before{box-sizing:border-box;padding:30px;border:10px solid #ccc;content:""}.quiz-result .result-grade svg{-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.quiz-result .result-grade svg circle{stroke:var(--lp-primary-color)}.quiz-result.passed .result-grade svg{-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.quiz-result.passed .result-grade .result-achieved{color:#333}.quiz-result.passed .result-grade .result-message strong{color:#4caf50}.quiz-questions .question{margin-bottom:60px}.question .answer-option{padding:0;_border:2px solid #d9e0f1;background:#fff}.question .answer-option input[type=radio],.question .answer-option input[type=checkbox]{position:absolute;top:50%;margin:-19px 0 0 10px;border-color:#d9e0f1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question .answer-option input[type=radio]::after,.question .answer-option input[type=checkbox]::after{border-color:#d9e0f1}.question .answer-option input[type=radio]:disabled,.question .answer-option input[type=checkbox]:disabled{border-color:#ddd;background:#f9f9f9}.question .answer-option input[type=radio]:disabled::after,.question .answer-option input[type=checkbox]:disabled::after{border-color:#ddd}.question .answer-option input[type=radio]:checked:not(:disabled)::after,.question .answer-option input[type=checkbox]:checked:not(:disabled)::after{border-color:#99aee4}.question .answer-option input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.question .answer-option input[type=radio]::before{border-radius:50%}.question .answer-option .option-title{display:flex;width:100%;margin:0;padding:14px 10px 11px 65px;border:1px solid #ccc;color:#666;background:#fff;font-size:16px;font-weight:300;line-height:26px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question .answer-option .option-title::after{display:inline-block;visibility:hidden !important;content:"."}.question .answer-option .option-title:hover{background:#f9f9f9}.question .answer-option .option-title::before{display:none}.question .answer-option.answer-correct .option-title{border-color:#4caf50}.question .answer-option.answered-wrong .option-title{border-color:#ff6423}.question .question-title{display:block;margin-top:0;margin-bottom:18px;color:#333;font-size:18px;font-weight:500}.question .question-title .edit-link{float:right;font-size:14px;font-weight:normal}.question .question-content{margin-bottom:30px;color:#666;font-size:16px;font-weight:300;line-height:26px}.question .question-content img{width:100%;max-width:100%}.question .question-response{margin-bottom:10px;font-size:14px}.question .question-response .label{display:inline-block;margin:0 5px 0 0;padding:8px 10px;border-radius:4px;color:#fff;line-height:1}.question .question-response .point{display:inline-block}.question .question-response.correct .label{background:#4caf50}.question .question-response.incorrect .label{background:#ff6423}.question .question-index{display:inline-block;margin:0 5px 0 0}.question .btn-show-hint{position:relative;margin:0 0 0 10px;padding:0;outline:0;color:#00adff;background:transparent;font-size:0;text-decoration:none}.question .btn-show-hint::before{font-family:"Font Awesome 5 Free";font-size:18px;content:"\f059"}.question .btn-show-hint:hover span{position:absolute;bottom:100%;left:0;width:auto;padding:6px 9px;border-radius:2px;color:#333;background:#eee;font-size:14px;font-weight:400;line-height:1;white-space:nowrap;text-transform:none}.question.question-fill_in_blanks .blanks .blank-input-wrap{display:inline-block}.question.question-fill_in_blanks .blanks .blank-block{margin-bottom:20px}.question.question-fill_in_blanks .blanks .blank-input{display:inline-block;width:auto;min-width:50px;margin:0 10px;padding:0 10px;border:0;border-bottom:1px dashed #ddd;text-align:center;white-space:nowrap}.question.question-fill_in_blanks .blanks .blank-input br{display:none}.question.question-fill_in_blanks .blanks .blank-input>*{display:inline;white-space:nowrap}.question.question-fill_in_blanks .blanks .blank-select{display:inline-block;height:30px;margin-left:4px;padding:1px}.question.question-fill_in_blanks .blanks .blank-fills{display:inline-block}.question.question-fill_in_blanks .blanks .blank-fills code{margin:0 5px;padding:0 6px;background:#ddd;line-height:1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question.question-fill_in_blanks .blanks.ordered{list-style-position:inside}.question.question-fill_in_blanks .blanks.one-paragraph{line-height:3}.lp-sort-bg label.option-title{background:rgba(255,182,6,0.68) !important}.learn-press-message.fixed{position:fixed;top:32px;left:0;right:0;background:rgba(0,173,255,0.6);text-align:center;z-index:100;color:#FFF;padding:10px}.learn-press-message.fixed[data-delay-in]{display:none}.lp-archive-courses ul{list-style-type:revert;padding:0 0 23px 1em}.lp-archive-courses ul.learn-press-breadcrumb,.lp-archive-courses ul.course-nav-tabs{list-style:none;padding:0}@media(max-width:768px){.lp-archive-courses ul.learn-press-breadcrumb,.lp-archive-courses ul.course-nav-tabs{padding-left:15px;padding-right:15px}}.lp-archive-courses ul,.lp-archive-courses ol{list-style-type:decimal;list-style-position:inside;padding:0 0 23px}.lp-archive-courses ol ul{padding:2px 0 2px 35px}.lp-archive-courses ol ol{padding:2px 0 2px 20px}.lp-archive-courses thead th,.lp-archive-courses tr th{padding:9px 24px}.lp-archive-courses tr td{border-top:1px solid #eee;padding:6px 24px}.learnpress #left-area ul,.learnpress .entry-content ul,.learnpress .et-l--body ul,.learnpress .et-l--footer ul,.learnpress .et-l--header ul{padding:0 !important;list-style:none !important}.learnpress.dt-the7 .learn-press-filters{margin-bottom:20px}.learnpress.dt-the7 .learn-press-courses[data-size="3"] .course{width:50%}.bridge.learnpress .lp-archive-courses{margin-top:100px}.bridge.learnpress .lp-archive-courses ul.learn-press-breadcrumb{padding-top:45px}.bridge.learnpress .content{z-index:110}.bridge.learnpress .comment-respond .comment-form{margin:0}.bridge.learnpress .comment-respond .comment-form>p,.bridge.learnpress .comment-respond .comment-form>div{padding:0}.bridge.learnpress.learnpress-profile .content{z-index:100}.bridge.learnpress #learn-press-item-comments{background:#f6f6f6}.learnpress.ast-separate-container .ast-article-single{padding-left:15px;padding-right:15px}body.learnpress-page.twentysixteen #primary .lp-entry-content{float:none;width:auto;margin:0 15%}body.learnpress-page.twentyfifteen .course-summary-sidebar .widget{width:100%;padding:0}body.learnpress-page.twentysixteen .entry-footer{display:none}body.learnpress-page.twentysixteen .lp-entry-content{float:none;width:auto}body.learnpress-page.twentyseventeen #primary article.type-page{width:100%}@media screen and (min-width:61.5625em){body.twentysixteen.learnpress-page .entry-footer{display:none}body.twentysixteen.learnpress-page .lp-entry-content{float:none;width:auto}body:not(.search-results) article:not(.type-page) .entry-footer{display:none}body:not(.search-results) article:not(.type-page) .lp-entry-content{float:none;width:auto}}body.twentyseventeen.learnpress-page #primary article.page .entry-header,body.twentyseventeen.learnpress-page #primary article.page .lp-entry-content{width:100%;float:none}@media screen and (min-width:48em){body.twentyseventeen.learnpress-page #primary article.page .entry-header,body.twentyseventeen.learnpress-page #primary article.page .lp-entry-content{width:100%;float:none}}.learn-press-tip{display:none;margin:0 5px;color:#444;font-size:13px;font-style:normal;line-height:1;vertical-align:baseline;cursor:pointer}.learn-press-tip.ready{display:inline-block}.learn-press-tip::before{font-family:"Font Awesome 5 Free";content:"\f059"}.learn-press-tip:hover{opacity:.8}.learn-press-tip-floating{position:absolute;z-index:9999999;min-width:20px;margin-left:-1px;padding:.618em 1em;color:#fff;background:#383838;font-size:12px;line-height:1.2em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.learn-press-tip-floating>*{font-size:12px}.learn-press-tip-floating .close{display:inline-block;position:absolute;top:-8px;right:-8px;width:16px;height:16px;border:1px solid #fff;color:#fff;background:#468fbc;line-height:16px;text-align:center;cursor:pointer;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.learn-press-tip-floating .close::before{font-family:"Font Awesome 5 Free";content:"\f00d"}.learn-press-tip-floating p{margin:0}.learn-press-tip-floating::before{position:absolute;bottom:-6px;left:50%;width:0;height:0;margin-left:-6px;border:6px solid transparent;border-top-color:#383838;border-bottom-width:0;content:""}body.lp-preview.admin-bar #learn-press-content-item{top:32px !important}body.lp-preview #learn-press-course-curriculum{display:none}body.lp-preview #learn-press-content-item{top:0 !important;left:0 !important}@-webkit-keyframes rotating4{from{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotating4{from{-ms-transform:rotate(0);-moz-transform:rotate(0);-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-ms-transform:rotate(360deg);-moz-transform:rotate(360deg);-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes animation4{from{left:-40%;width:40%}to{left:100%;width:10%}}@keyframes animation4{from{left:-40%;width:40%}to{left:100%;width:10%}}#popup_container{opacity:0;transform:scale(0.5)}body.confirm #popup_overlay{z-index:999998 !important}body.confirm #popup_container{z-index:999999 !important;max-width:90% !important;min-width:300px !important;padding:10px !important;background:#f5f5f5;transition:opacity .25s;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}body.confirm #popup_container #popup_title{display:none !important}body.confirm #popup_container #popup_message{margin:-10px;background:#FFF;padding:20px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}body.confirm #popup_container .close{position:absolute;top:3px;right:10px}body.confirm #popup_container #popup_panel{margin-top:20px;text-align:center}body.confirm #popup_container #popup_panel button,body.confirm #popup_container #popup_panel input[type=button],body.confirm #popup_container #popup_panel input[type=submit]{height:30px;line-height:30px;padding:0 25px}body.confirm #popup_container #popup_cancel{display:none}body.confirm #popup_container.ready{opacity:1;transform:scale(1)}a{text-decoration:none}.lp-content-area{width:100%;max-width:1170px;margin:0 auto}@media(max-width:1024px){.lp-content-area{padding-right:15px;padding-left:15px}}.lp-content-area::after,.lp-content-area::before{display:table;clear:both;content:""}.lp-archive-courses{width:100%;scroll-margin:30px}.lp-archive-courses.loading ul.learn-press-courses{position:relative}.lp-archive-courses.loading ul.learn-press-courses::before,.lp-archive-courses.loading ul.learn-press-courses::after{content:"";position:absolute;top:0;bottom:0;left:15px;right:15px}.lp-archive-courses.loading ul.learn-press-courses::after{z-index:3;background:#f3f3f3;background:linear-gradient(90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);background-size:400% 100%;list-style:none;animation:lp-skeleton-loading 1.4s ease infinite}.lp-archive-courses.loading ul.learn-press-courses::before{z-index:2;opacity:.8%;background:#fff}.lp-archive-courses form[name=search-course]{position:relative;margin-bottom:20px}.lp-archive-courses form[name=search-course] .search-course-input{width:100%;padding:12px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.lp-archive-courses form[name=search-course] .search-course-button{position:absolute;top:1px;right:1px;bottom:1px;height:auto;padding:15px;line-height:1px}.lp-archive-courses .learn-press-courses-header{float:left;padding-top:4px}.lp-archive-courses .learn-press-courses-header h1{margin:0;font-size:30px;font-weight:600}@media(max-width:767px){.lp-archive-courses .learn-press-courses-header{margin-bottom:20px}}.lp-archive-courses .course-item{flex-direction:column;display:flex;transition:all .3s}.lp-archive-courses .course-item:hover .course-thumbnail .thumbnail::before{opacity:1}.lp-archive-courses .course-item:hover .course-thumbnail a img{transform:scale(1.05)}.lp-archive-courses .course-item:hover .course-wishlist{opacity:1}.lp-archive-courses .course-item .course-wishlist.filled{opacity:1}.lp-archive-courses .course-item .course-instructor{float:left;margin-bottom:16px;font-size:14px;font-weight:300;line-height:25px;text-transform:capitalize}.lp-archive-courses .course-item .course-instructor a{color:#059de9}.lp-archive-courses .course-item .course-instructor a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-content{position:relative;border-top:0}.lp-archive-courses .course-content .course-permalink{display:-webkit-box;clear:both;overflow:hidden;position:relative;border:0;color:#fff;text-decoration:none;text-transform:none;-webkit-line-clamp:2;-webkit-box-orient:vertical;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.lp-archive-courses .course-content .course-permalink:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.lp-archive-courses .course-content .course-review{display:none}.lp-archive-courses .course-content .course-categories,.lp-archive-courses .course-content .course-tags{display:block;font-size:14px;font-weight:300}.lp-archive-courses .course-content .course-categories{float:left;position:relative;margin-right:10px;margin-bottom:16px}.lp-archive-courses .course-content .course-categories a{display:inline-block;display:none;margin:0 10px;color:#fff;text-decoration:none}.lp-archive-courses .course-content .course-categories a:first-child{display:block;margin-left:0;padding:2px 16px;background:var(--lp-primary-color)}.lp-archive-courses .course-content .course-categories a:hover{color:#333}.lp-archive-courses .course-content .course-categories::after{position:absolute;top:50%;right:-2px;width:1px;height:12px;opacity:.5;background:#999;content:"";transform:translate(0,-50%)}.lp-archive-courses .course-content .course-info{color:#666;font-size:14px;font-weight:300}.lp-archive-courses .course-content .course-info>span{display:block}.lp-archive-courses .course-content .course-info .course-price{float:right}.lp-archive-courses .course-content .course-info .course-price .origin-price,.lp-archive-courses .course-content .course-info .course-price .price{color:#333;font-size:16px;font-weight:600}.lp-archive-courses .course-content .course-info .course-price .origin-price{margin-right:10px;color:#666;font-size:14px;font-weight:300;text-decoration:line-through}.lp-archive-courses .course-content .course-info .course-instructor{float:right}.lp-archive-courses .course-content .course-info::after{display:block;clear:both;content:""}.lp-archive-courses .course-content .course-excerpt{display:-webkit-box;overflow:hidden;margin-bottom:28px;color:#666;font-size:16px;font-weight:300;line-height:26px;-webkit-line-clamp:2;-webkit-box-orient:vertical}.lp-archive-courses .course-content .separator{display:none}.lp-archive-courses .course-wrap-thumbnail{overflow:hidden;position:relative}.lp-archive-courses .course-wrap-thumbnail .lp-badge.featured{position:absolute;z-index:100;top:28px;left:-110px;width:300px;text-align:center;transform:rotate(-45deg)}.lp-archive-courses .course-wrap-thumbnail .course-wishlist{position:absolute;z-index:2;top:6px;right:6px;opacity:0;color:#fff;cursor:pointer}.lp-archive-courses .course-wrap-thumbnail .course-wishlist::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f004"}.lp-archive-courses .course-wrap-thumbnail .course-wishlist .course-wishlist__btn{display:none}.lp-archive-courses .course-wrap-thumbnail .course-wishlist:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-wrap-thumbnail:hover::before{opacity:1}.lp-archive-courses .course-wrap-thumbnail:hover .course-thumbnail a img{transform:scale(1.05)}.lp-archive-courses .course-wrap-thumbnail:hover .course-wishlist{opacity:1}.lp-archive-courses .course-thumbnail a{display:block;overflow:hidden}.lp-archive-courses .course-thumbnail .thumbnail{margin:0;padding:0;border:0;border-radius:unset;line-height:unset}.lp-archive-courses .course-thumbnail .thumbnail::before{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;opacity:0;background:rgba(0,0,0,0.5);content:"";transition:all .3s}.lp-archive-courses .course-thumbnail img{display:block;width:100%;height:auto;transition:all .5s ease;transform:scale(1)}.lp-archive-courses .course-title{margin:0;padding:0;color:#333;font-size:16px;font-weight:600;line-height:24px}.lp-archive-courses .course-title:hover{color:var(--lp-primary-color)}@media(min-width:769px){.lp-archive-courses .course-summary-content .course-info-left{width:calc(100% - 330px)}}.lp-archive-courses .course-summary-content .course-title{margin-bottom:42px;color:#fff;font-size:1.5rem;font-weight:500;line-height:1}.lp-archive-courses .course-summary-content .course-meta.course-meta-secondary{margin-bottom:0}@media(max-width:768px){.lp-archive-courses .course-summary-content{width:100%}}.lp-archive-courses .course-detail-info{padding:40px 0 10px 0;color:#fff;background:var(--lp-secondary-color);position:relative}.lp-archive-courses .course-detail-info::before,.lp-archive-courses .course-detail-info::after{content:"";width:50%;height:100%;background:var(--lp-secondary-color);position:absolute;top:0}.lp-archive-courses .course-detail-info::before{right:100%;left:auto}.lp-archive-courses .course-detail-info::after{left:100%;right:auto}.lp-archive-courses .course-meta__pull-left .meta-item{display:flex;height:46px;margin-right:50px;font-size:16px;font-weight:300;text-transform:capitalize}.lp-archive-courses .course-meta__pull-left .meta-item span{padding-right:4px;padding-left:0}.lp-archive-courses .course-meta__pull-left .meta-item:last-child{margin-right:0}.lp-archive-courses .course-meta__pull-left .meta-item::before{margin-right:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900}.lp-archive-courses .course-meta__pull-left .meta-item .meta-item__image{margin-right:10px;flex:0 0 46px}.lp-archive-courses .course-meta__pull-left .meta-item .meta-item__image img{overflow:hidden;position:relative;width:46px;height:46px;border-radius:50%}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-duration::before{content:"\f017"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-level::before{content:"\f012"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-lesson::before{content:"\f0c5"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-quiz::before{content:"\f12e"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-student::before{content:"\f501"}@media(max-width:1024px){.lp-archive-courses .course-meta__pull-left .meta-item{margin-right:30px}}@media(max-width:767px){.lp-archive-courses .course-meta__pull-left .meta-item{margin-right:0}}.lp-archive-courses .course-meta__pull-left .meta-item__value label{margin:0;color:#999;font-size:14px;font-weight:300;line-height:1.5}.lp-archive-courses .course-meta__pull-left .meta-item__value>div{line-height:1.5}.lp-archive-courses .course-meta__pull-left .meta-item__value>div a{color:#fff;font-size:16px;font-weight:400;text-transform:capitalize}.lp-archive-courses .course-meta__pull-left .meta-item__value>div a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-meta__pull-left .meta-item-categories{align-items:center}.lp-archive-courses .course-meta__pull-left .meta-item-categories::before{margin-right:10px;font-size:36px;content:"\f02e"}.lp-archive-courses .course-meta__pull-left .meta-item-categories .meta-item__value div span{padding:0 5px}.lp-archive-courses .course-meta__pull-left .meta-item-categories .meta-item__value div a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-meta__pull-left .meta-item-review .meta-item__value{display:flex;flex-direction:column-reverse;justify-content:flex-end;align-items:flex-end}.lp-archive-courses .course-meta__pull-left .meta-item-review .meta-item__value .review-stars-rated{margin-bottom:0;line-height:1}@media(max-width:767px){.lp-archive-courses .course-meta__pull-left{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px}}.lp-archive-courses .course-meta-primary{margin-bottom:36px}.lp-archive-courses .course-meta-primary .meta-item-categories::before{font-weight:400}.lp-archive-courses .lp-entry-content{display:flex;flex-direction:row}.lp-archive-courses .lp-entry-content .entry-content-left{width:calc(100% - 300px);max-width:100%;margin:0;padding-right:40px;padding-top:60px}@media(max-width:768px){.lp-archive-courses .lp-entry-content .entry-content-left{width:100%;padding-right:0;margin-bottom:50px}}@media(max-width:768px){.lp-archive-courses .lp-entry-content{flex-direction:column}}.lp-archive-courses .course-summary-sidebar{width:300px;max-width:100%;margin-top:-272px}@media(max-width:768px){.lp-archive-courses .course-summary-sidebar{width:100%;margin-top:0}.lp-archive-courses .course-summary-sidebar .course-summary-sidebar__inner{width:100%}}@media(max-width:767px){.lp-archive-courses .course-summary-sidebar{width:100%;padding-left:0}}.lp-archive-courses .course-summary-sidebar__inner{width:300px}.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-top{box-shadow:0 15px 20px 0 rgba(0,0,0,0.05)}.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-secondary{margin-top:30px;padding:0}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist{color:#fff;background:transparent !important;font-size:0}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist.on,.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist::before{font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900;content:"\f004"}.lp-archive-courses .course-summary-sidebar__inner>div{overflow:hidden;padding:20px;background:#fff}.lp-archive-courses .course-summary-sidebar__inner>div ul{list-style:none}.lp-archive-courses .course-summary-sidebar__inner>div ul li a{color:#666;font-size:16px;font-weight:300;line-height:24px}.lp-archive-courses .course-summary-sidebar__inner>div ul li a:hover{color:var(--lp-primary-color);box-shadow:unset}.learn-press-courses{clear:both;margin:0 -15px;padding:0 !important;min-height:300px;list-style:none;position:relative;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.learn-press-courses .course{width:25%;margin:0 0 60px 0;box-shadow:none;list-style:none}.learn-press-courses[data-layout=list]{margin:0}.learn-press-courses[data-layout=list] .course{display:flex;width:100%;padding:24px;border:1px solid rgba(204,204,204,0.3);border-radius:4px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:767px){.learn-press-courses[data-layout=list] .course{padding:15px}}.learn-press-courses[data-layout=list] .course-item{flex-direction:row;width:100%;border:unset;justify-content:space-between}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-item{flex-direction:column}}.learn-press-courses[data-layout=list] .course-content{float:right;width:calc(64.2% - 76px);padding-top:5px}@media(max-width:1200px){.learn-press-courses[data-layout=list] .course-content{width:calc(64.2% - 40px)}}@media(max-width:1200px){.learn-press-courses[data-layout=list] .course-content{width:calc(64.2% - 25px)}}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content{width:100%;padding-top:20px}}.learn-press-courses[data-layout=list] .course-content .course-categories a{position:relative;padding:2px 20px 2px 15px;-webkit-clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%)}.learn-press-courses[data-layout=list] .course-content .course-permalink{height:25px;margin-bottom:5px;-webkit-line-clamp:1}.learn-press-courses[data-layout=list] .course-content .course-tags a{margin:0 10px 10px 0;padding:3px 5px;border-radius:3px;color:#fff;background:#e4a2a2;line-height:1}.learn-press-courses[data-layout=list] .course-content .course-footer{float:left;margin-right:20px}.learn-press-courses[data-layout=list] .course-content .course-footer .course-students{display:none}.learn-press-courses[data-layout=list] .course-content .course-footer .course-price{float:unset}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content .course-footer{margin-bottom:30px}}.learn-press-courses[data-layout=list] .course-content .course-readmore{float:right;position:relative;right:4px}.learn-press-courses[data-layout=list] .course-content .course-readmore a{padding:9px 24px;border-radius:3px;color:#fff;background:var(--lp-primary-color);font-weight:400;line-height:1;transition:all .3s;display:block}.learn-press-courses[data-layout=list] .course-content .course-readmore a:hover{opacity:.5;background:var(--lp-primary-color)}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content .course-readmore{display:flex;float:unset;clear:both}}.learn-press-courses[data-layout=list] .course-wrap-meta{display:flex;padding-top:12px;padding-bottom:18px;color:#333;font-size:14px;font-weight:400}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-right:28px;text-transform:capitalize}@media(max-width:1024px){.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-right:20px}}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item::before{position:relative;top:-1px;margin-right:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-level::before{content:"\f012"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-duration::before{content:"\f017"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-lesson::before{content:"\f0c5"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-quiz::before{content:"\f12e"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-student::before{content:"\f501"}@media(max-width:815px){.learn-press-courses[data-layout=list] .course-wrap-meta{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:15px}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-right:15px}}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-wrap-meta{grid-template-columns:repeat(3,1fr)}}.learn-press-courses[data-layout=list] .course-wrap-thumbnail{float:left;width:35.8%}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-wrap-thumbnail{width:100%}}.learn-press-courses[data-layout=list] .course-title{font-size:18px}.learn-press-courses[data-layout=grid] .course{padding:0 15px}@media(max-width:992px){.learn-press-courses[data-layout=grid] .course{width:50%}}@media(max-width:767px){.learn-press-courses[data-layout=grid] .course{width:100%}}.learn-press-courses[data-layout=grid] .course-item:hover{box-shadow:0 15px 20px 0 rgba(0,0,0,0.2)}.learn-press-courses[data-layout=grid] .course-item .course-instructor{margin-bottom:7px}.learn-press-courses[data-layout=grid] .course-content{padding:15px 20px 12px 20px;border:1px solid #f0f0f0;border-top:0;flex-grow:1}.learn-press-courses[data-layout=grid] .course-content .course-categories{float:right;position:absolute;z-index:1;top:-34px;right:-1px;margin-right:0}.learn-press-courses[data-layout=grid] .course-content .course-categories::after{display:none}.learn-press-courses[data-layout=grid] .course-content .course-categories a{position:relative;margin:0;padding:2px 12px 2px 22px;-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%)}.learn-press-courses[data-layout=grid] .course-content .course-permalink{height:48px;margin-bottom:20px}.learn-press-courses[data-layout=grid] .course-content .course-info{display:flex;flex-direction:column;flex-grow:1}.learn-press-courses[data-layout=grid] .course-content .course-wrap-meta,.learn-press-courses[data-layout=grid] .course-content .course-excerpt,.learn-press-courses[data-layout=grid] .course-content .course-readmore{display:none}.learn-press-courses[data-layout=grid] .course-content .course-footer{padding-top:18px;border-top:1px solid rgba(153,153,153,0.2)}.learn-press-courses[data-layout=grid] .course-content .course-footer .course-students{float:left;text-transform:capitalize}.learn-press-courses[data-layout=grid] .course-content .course-footer .course-students::before{position:relative;top:-1px;margin-right:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900;content:"\f501"}.learn-press-courses[data-layout=grid] .learn-press-message{margin-left:15px;margin-right:15px}.learn-press-courses[data-size="3"] .course{width:33.3333%}@media(max-width:767px){.learn-press-courses[data-size="3"] .course{width:100%}}.learn-press-courses .lp-archive-course-skeleton{position:absolute;height:100%;background:linear-gradient(90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);animation:lp-skeleton-loading 1.4s ease infinite;background-size:400% 100%}.learn-press-courses .lp-archive-course-skeleton li{display:none}.lp-courses-bar{display:flex;float:right;margin-bottom:48px}@media(max-width:767px){.lp-courses-bar{flex-direction:row;width:100%;justify-content:space-between}}.lp-courses-bar .search-courses{position:relative;width:306px;max-width:100%;margin-right:20px;line-height:1;flex:1}.lp-courses-bar .search-courses input[type=text]{width:100%;height:44px;padding:6px 32px 6px 18px;border:1px solid #ccc;border-radius:5px;background:#fff;font-size:14px;font-style:italic;line-height:1}.lp-courses-bar .search-courses input[type=text]:focus{border-color:var(--lp-primary-color);outline:0}.lp-courses-bar .search-courses button{position:absolute;top:50%;right:12px;width:30px;height:30px;padding:0;border:0;color:#333;background:transparent;font-size:16px;line-height:1;transform:translate(0,-50%)}.lp-courses-bar .search-courses button:focus{border:0;outline:0}.lp-courses-bar .search-courses button.loading>i::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.lp-courses-bar .search-courses ::-webkit-input-placeholder{color:#999}.lp-courses-bar .search-courses :-ms-input-placeholder{color:#999}.lp-courses-bar .search-courses ::placeholder{color:#999}@media(max-width:767px){.lp-courses-bar .search-courses{width:100%}}.lp-courses-bar .switch-layout{display:flex;height:44px;line-height:1;text-align:right;flex:0 0 40px;align-items:center;justify-content:center}.lp-courses-bar .switch-layout input[type=radio]{display:none}.lp-courses-bar .switch-layout .switch-btn{display:block;width:40px;height:40px;margin:0;padding:0;border-radius:5px;font-size:16px;line-height:40px;text-align:center;cursor:pointer}.lp-courses-bar .switch-layout .switch-btn::before{display:inline-block;margin:8px 6px;color:#333;font-family:"Font Awesome 5 Free";font-weight:900;line-height:1}.lp-courses-bar .switch-layout .switch-btn.grid::before{content:"\f00a"}.lp-courses-bar .switch-layout .switch-btn.list{margin-left:3px}.lp-courses-bar .switch-layout .switch-btn.list::before{content:"\f03a"}input[type=radio]:nth-child(1):checked ~ .switch-btn:nth-child(2){background:#f5f5f5}input[type=radio]:nth-child(1):checked ~ .switch-btn:nth-child(2)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(3):checked ~ .switch-btn:nth-child(4){background:#f5f5f5}input[type=radio]:nth-child(3):checked ~ .switch-btn:nth-child(4)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(5):checked ~ .switch-btn:nth-child(6){background:#f5f5f5}input[type=radio]:nth-child(5):checked ~ .switch-btn:nth-child(6)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(7):checked ~ .switch-btn:nth-child(8){background:#f5f5f5}input[type=radio]:nth-child(7):checked ~ .switch-btn:nth-child(8)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(9):checked ~ .switch-btn:nth-child(10){background:#f5f5f5}input[type=radio]:nth-child(9):checked ~ .switch-btn:nth-child(10)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(11):checked ~ .switch-btn:nth-child(12){background:#f5f5f5}input[type=radio]:nth-child(11):checked ~ .switch-btn:nth-child(12)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(13):checked ~ .switch-btn:nth-child(14){background:#f5f5f5}input[type=radio]:nth-child(13):checked ~ .switch-btn:nth-child(14)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(15):checked ~ .switch-btn:nth-child(16){background:#f5f5f5}input[type=radio]:nth-child(15):checked ~ .switch-btn:nth-child(16)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(17):checked ~ .switch-btn:nth-child(18){background:#f5f5f5}input[type=radio]:nth-child(17):checked ~ .switch-btn:nth-child(18)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(19):checked ~ .switch-btn:nth-child(20){background:#f5f5f5}input[type=radio]:nth-child(19):checked ~ .switch-btn:nth-child(20)::before{color:var(--lp-primary-color)}.lp_allow_repuchase_select{padding:20px;background:#f7f7f7}.lp_allow_repuchase_select>ul{padding:0;list-style:none}.lp_allow_repuchase_select>a{display:inline-block;margin-top:10px;color:#fff;background-color:#222}.comment-respond .comment-reply-title{font-size:30px;font-weight:500;line-height:1.2;margin-bottom:15px}.comment-respond .comment-form{margin:0 -15px}.comment-respond .comment-form>p label{display:block;margin-bottom:10px;font-size:16px;font-weight:500}.comment-respond .comment-form>p.comment-notes,.comment-respond .comment-form>p.logged-in-as{color:#666;font-size:16px}.comment-respond .comment-form>p.logged-in-as a{color:#666;text-decoration:underline}.comment-respond .comment-form>p.logged-in-as a:hover,.comment-respond .comment-form>p.logged-in-as a:focus{color:var(--lp-primary-color)}.comment-respond .comment-form>p.comment-form-cookies-consent{clear:both}.comment-respond .comment-form>p.comment-form-cookies-consent input{padding:0;margin-right:8px}.comment-respond .comment-form>p.comment-form-cookies-consent label{display:inline}.comment-respond .comment-form>p,.comment-respond .comment-form>div{padding:0 15px;margin-bottom:15px}.comment-respond .comment-form input[type=text],.comment-respond .comment-form input[type=email],.comment-respond .comment-form input[type=url]{height:40px;line-height:normal;width:100% !important;margin-bottom:15px}.comment-respond .comment-form input[type=submit]{background-color:var(--lp-primary-color);border:0;min-height:40px;line-height:40px;padding:0 15px;font-size:16px;text-transform:capitalize;font-weight:500;margin-top:15px;cursor:pointer;color:white}.comment-respond .comment-form .comment-form-author,.comment-respond .comment-form .comment-form-email,.comment-respond .comment-form .comment-form-url{width:33.33%;float:left}@media(max-width:575px){.comment-respond .comment-form .comment-form-author,.comment-respond .comment-form .comment-form-email,.comment-respond .comment-form .comment-form-url{width:100%;float:unset}}.comment-respond .comment-form textarea,.comment-respond .comment-form input{border:1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;max-width:100%}.comment-respond .comment-form textarea{width:100%;display:block;padding:20px 15px;resize:none}.course-summary-sidebar .course-sidebar-preview{margin-bottom:35px;background:#fff}.course-summary-sidebar .lp-course-buttons{margin-bottom:34px}.course-summary-sidebar .lp-course-buttons>*{margin-bottom:10px}.course-summary-sidebar .lp-course-buttons>*:last-child{margin-bottom:0}.course-summary-sidebar .lp-course-buttons form,.course-summary-sidebar .lp-course-buttons button{width:100%;text-decoration:none}.course-summary-sidebar .lp-course-buttons button{font-weight:500}.course-summary-sidebar .lp-course-buttons button:hover{border-color:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course:hover{opacity:.5;background:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}.course-summary-sidebar .lp-course-buttons button ~ .lp-enroll-notice{margin-top:20px;padding:20px;border:2px solid #059601;border-radius:9px;font-size:15px;line-height:1.4}.course-summary-sidebar .lp-course-buttons button ~ .lp-enroll-notice.error{border-color:#d85554}.course-summary-sidebar .course-results-progress .items-progress,.course-summary-sidebar .course-results-progress .course-progress{display:flex;flex-direction:row;margin:0 0 5px;padding:0;justify-content:space-between;flex-wrap:wrap}.course-summary-sidebar .course-results-progress .items-progress__heading,.course-summary-sidebar .course-results-progress .course-progress__heading{margin:0;margin-bottom:7px;padding:0;color:#333;font-size:1rem;font-weight:500;flex:1 1 auto;width:auto}.course-summary-sidebar .course-results-progress .items-progress .learn-press-progress,.course-summary-sidebar .course-results-progress .course-progress .learn-press-progress{clear:both;width:100%}.course-summary-sidebar .course-results-progress .number{display:block;margin:0;color:#666;font-size:16px;font-weight:300;line-height:16px;text-align:right}.course-sidebar-preview .course-price{text-align:center}.course-sidebar-preview .course-price .origin-price{color:#666;font-size:18px;font-weight:300;font-style:unset}.course-sidebar-preview .course-price .price{color:#333;font-size:1.8rem;font-weight:500}.course-sidebar-preview .media-preview{overflow:hidden;position:relative;margin:-20px -20px 20px}.course-sidebar-preview .media-preview img{max-width:100%;height:auto;vertical-align:top}.course-sidebar-preview .course-time{margin-bottom:28px;padding-bottom:8px;border-bottom:1px solid rgba(204,204,204,0.3)}.course-sidebar-preview .course-time-row{display:flex;color:#666;font-size:16px;font-weight:300;justify-content:space-between}.course-sidebar-preview .course-time-row strong{color:#333;font-weight:500}.course-sidebar-preview .course-time-row time{color:#666;font-size:1rem;font-weight:300;line-height:24px}.course-sidebar-preview>*:last-child{margin-bottom:0}.learnpress-page .lp-button.secondary{background:#9198ab}.learnpress-page .lp-button.secondary:hover{background:#9ba6c5}.learnpress-page .lp-button:disabled,.learnpress-page .lp-button[disabled]{background:#ddd;pointer-events:none}.learnpress-page:hover{text-decoration:none}#popup-course{display:flex;position:fixed;z-index:99999;top:0;right:0;bottom:0;left:0;background:#fff}#popup-course .back-course{padding-left:30px;padding-right:30px;line-height:70px;background:rgba(255,255,255,0.1);color:#fff}#popup-course .back-course:hover{background:rgba(255,255,255,0.15)}@media(max-width:768px){#popup-course .back-course{background:transparent;opacity:.6;padding-left:15px;padding-right:15px}#popup-course .back-course:hover{background:transparent;opacity:1}}#popup-course #popup-header{display:flex;position:fixed;z-index:100;right:0;left:475px;padding:0;border-bottom:1px solid #d9e0f1;background:var(--lp-secondary-color);-webkit-transition:left .25s;-moz-transition:left .25s;-ms-transition:left .25s;-o-transition:left .25s;transition:left .25s}#popup-course #popup-header .course-title{margin:0;padding:0;line-height:70px;letter-spacing:unset}#popup-course #popup-header .course-title a{display:-webkit-box;overflow:hidden;color:#fff;font-size:16px;font-weight:400;text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical}#popup-course #popup-header .course-title a:hover{color:var(--lp-primary-color)}@media(max-width:768px){#popup-course #popup-header .course-title{flex:1}}#popup-course #popup-header .items-progress{display:flex;justify-content:center;align-items:center;column-gap:10px}@media(max-width:768px){#popup-course #popup-header .items-progress{flex:1}}@media(max-width:767px){#popup-course #popup-header .items-progress{padding-bottom:20px;justify-content:end}}#popup-course #popup-header .number{padding-right:10px;color:#fff;font-size:14px;font-weight:300}#popup-course #popup-header .lp-button{display:flex;position:relative;height:40px;margin:9px;border:0;color:#fff;background:var(--lp-primary-color);font-size:14px;font-weight:400;justify-content:center;line-height:40px;align-items:center}#popup-course #popup-header .lp-button:hover{opacity:.8}#popup-course #popup-header .lp-button-back{float:right;margin:9px 10px}#popup-course #popup-header .lp-button-back button::before,#popup-course #popup-header .lp-button-back button::after{content:""}#popup-course #popup-header .lp-button-back button::before{border:1px solid #ddd}#popup-course #popup-header .lp-button-back button::after{border:1px solid #ddd}#popup-course .popup-header__inner{display:flex;width:792px;margin:0 auto;justify-content:space-between;align-items:center;padding-left:15px;padding-right:15px}@media(max-width:1024px){#popup-course .popup-header__inner{width:100%}}@media(max-width:767px){#popup-course .popup-header__inner{flex-direction:column}}#popup-course #popup-sidebar{overflow:auto;position:relative;box-shadow:0 15px 30px 0 rgba(0,0,0,0.1);flex:0 0 475px;-webkit-transition:.25s;-moz-transition:.25s;-ms-transition:.25s;-o-transition:.25s;transition:.25s}#popup-course #popup-sidebar .search-course{display:flex;position:relative;height:70px;background:#f9fafc}#popup-course #popup-sidebar .search-course input[name=s]{display:block;width:100%;margin:6px 0;padding-left:20px;border:0;color:#999;background:transparent;box-shadow:none;font-size:14px;line-height:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#popup-course #popup-sidebar .search-course input[name=s]::-webkit-input-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::-moz-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]:-ms-input-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]:-moz-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::-webkit-input-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]::-moz-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:-ms-input-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:-moz-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]::placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:focus{outline:0;color:#222}#popup-course #popup-sidebar .search-course button{position:absolute;top:0;right:10px;width:16px;height:70px;margin:0 10px;padding:0;border:0;background:transparent;line-height:1px}#popup-course #popup-sidebar .search-course button::before{color:#666;font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900;content:"\f002"}#popup-course #popup-sidebar .search-course button.clear{display:none}#popup-course #popup-sidebar .search-course button.clear::before{content:"\f00d"}#popup-course #popup-sidebar .search-course .search-results{display:none;overflow:auto;position:fixed;z-index:99999999;top:92px;bottom:0;left:0;width:400px;margin:0;border-top-color:transparent;border-right:1px solid #d9e0f1;background:#fbfcff}#popup-course #popup-sidebar .search-course .search-results .search-results__item{border-bottom:1px solid #d9e0f1;background:#fff}#popup-course #popup-sidebar .search-course .search-results .search-results__item img{position:absolute;left:10px;width:40px;height:40px}#popup-course #popup-sidebar .search-course .search-results .search-results__item a{display:-webkit-box;overflow:hidden;position:relative;box-sizing:content-box;height:40px;padding:10px 10px 10px 60px;color:#777;text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical}#popup-course #popup-sidebar .search-course .search-results .search-results__item:hover{background:#d9e0f1}#popup-course #popup-sidebar .search-course .search-results .search-results__item-title{overflow:hidden;margin:0 0 -2px 0;padding:0;font-size:16px;font-weight:normal}#popup-course #popup-sidebar .search-course .search-results .search-results__item-author{font-size:12px}#popup-course #popup-sidebar .search-course .search-results .course-price{position:absolute;right:10px;bottom:10px;font-size:12px}#popup-course #popup-sidebar .search-course .search-results .course-price .origin-price{font-size:smaller;text-decoration:line-through}#popup-course #popup-sidebar .search-course .search-results .search-results__not-found{padding:10px;color:#777}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination{padding:10px;text-align:center}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination a,#popup-course #popup-sidebar .search-course .search-results .search-results__pagination span{display:inline-block;margin:0 3px 10px 2px;padding:5px 8px;border:1px solid #d9e0f1;border-radius:4px;color:#777;font-size:14px;line-height:1;cursor:pointer}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination span{color:#999;background:#d9e0f1}#popup-course #popup-sidebar .search-course.searching .search-results{display:block}#popup-course #popup-sidebar .search-course.searching .clear{display:block}#popup-course #popup-sidebar .search-course.searching button{display:none}#popup-course #popup-sidebar .search-course.searching::after{position:absolute;z-index:1;bottom:0;left:50%;width:0;height:0;margin-left:-10px;border:10px solid transparent;border-bottom-color:#fff;content:""}#popup-course #popup-sidebar .course-curriculum{overflow:auto;position:absolute;top:70px;bottom:0;width:475px}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar-thumb{background:#ccc}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar{width:6px}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar-track{background:#f5f5f5}#popup-course #popup-sidebar .section{position:relative;padding:0 0 4px 0}#popup-course #popup-sidebar .section .circle-progress{display:inline-block;position:absolute;top:50%;right:10px;width:24px;height:24px;margin-top:-12px;border:3px solid #d9e0f1;border-radius:50%}#popup-course #popup-sidebar .section.section-empty .section-header{margin:0}#popup-course #popup-sidebar .section.section-empty .learn-press-message{margin:0;padding:10px;border-bottom:1px solid #d9e0f1;border-radius:0;color:#999;background:#f5f5f5;font-size:14px}#popup-course #popup-sidebar .section.section-empty .learn-press-message::before,#popup-course #popup-sidebar .section.section-empty .learn-press-message::after{position:absolute;z-index:9999;top:-16px;left:10px;width:0;height:0;border:8px solid transparent;border-bottom-color:#f5f5f5;background:transparent;content:"";-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}#popup-course #popup-sidebar .section.section-empty .learn-press-message::after{z-index:9998;top:-20px;left:8px;border-width:10px;border-bottom-color:#d9e0f1}#popup-course #popup-sidebar .section-header{position:sticky;z-index:1000;top:0;height:94px;padding:38px 20px 20px 20px;cursor:pointer;background-color:white}#popup-course #popup-sidebar .section-header .section-title{padding:0 0 4px 0;color:#000;font-size:20px;font-weight:500}#popup-course #popup-sidebar .section-header .section-title .show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f0d7"}#popup-course #popup-sidebar .section-header .section-toggle{justify-content:flex-end;flex:0}#popup-course #popup-sidebar .section-header .section-toggle i{color:#666}#popup-course #popup-sidebar .section-header .section-meta{padding-top:6px;padding-bottom:0}#popup-course #popup-sidebar .section-content{margin-bottom:0}#popup-course #popup-sidebar .course-item{min-height:50px;margin-bottom:4px;padding:5px 20px;background:#f9fafc;align-items:center}#popup-course #popup-sidebar .course-item>span{display:none}#popup-course #popup-sidebar .course-item::before{top:-1px;bottom:-1px;height:auto;background:transparent}#popup-course #popup-sidebar .course-item::after{content:""}#popup-course #popup-sidebar .course-item.current{background:#eaeaea}#popup-course #popup-sidebar .course-item.has-status.failed .trans{color:#f02425}#popup-course #popup-sidebar .course-item.status-completed .trans{color:#3bb54a}#popup-course #popup-sidebar .section-item-link{line-height:1;padding-right:0}#popup-course #popup-sidebar .section-item-link::before{padding:12px 0;vertical-align:unset}#popup-course #popup-sidebar .section-item-link .item-name{width:100%;padding:0 10px 0 17px;font-size:14px;line-height:21px;font-weight:500}#popup-course #popup-sidebar .course-item-meta{padding:0}#popup-course #popup-sidebar .course-item-meta .item-meta{padding:0;color:#999;background:transparent;font-size:12px;line-height:1.5;height:auto}#popup-course #popup-sidebar .course-item-meta .item-meta:first-child{margin-left:0}#popup-course #popup-sidebar .course-item-meta .item-meta::before{font-size:12px;line-height:21px}#popup-course #popup-content{overflow:auto;position:relative;margin:70px 0 50px 0;flex:1;padding-left:15px;padding-right:15px}#popup-course #popup-content .lp-button{position:relative;margin:0 10px 0 0;padding:12px 29px;border-color:var(--lp-secondary-color);font-size:14px}#popup-course #popup-content .lp-button.instant-check .instant-check__icon{margin-right:5px}#popup-course #popup-content .lp-button.instant-check .instant-check__icon::before{font-family:"Font Awesome 5 Free";content:"\f058"}#popup-course #popup-content .lp-button.instant-check .instant-check__info{visibility:hidden;position:absolute;top:100%;left:0;margin-top:3px;padding:11px 20px;border-radius:3px;background:#eee;white-space:nowrap;text-transform:none}#popup-course #popup-content .lp-button.instant-check:hover .instant-check__info{visibility:visible;position:absolute;top:100%;left:0;margin-top:3px;padding:11px 11px;border-radius:3px;color:#333;background:#eee;white-space:nowrap}#popup-course #popup-content .lp-button.instant-check.loading .instant-check__icon{display:inline-block;animation:lp-rotating 1s linear infinite}#popup-course #popup-content .lp-button.instant-check.loading .instant-check__icon::before{font-weight:800;content:"\f110"}#popup-course #popup-content .lp-button:hover{border-color:var(--lp-primary-color)}#popup-course #popup-content .lp-button.completed{display:flex;flex-direction:row-reverse;margin-top:32px;border-color:transparent;color:#fff;background:#3db748;font-size:16px;align-items:center;justify-content:center}#popup-course #popup-content .lp-button.completed i{margin-left:9px;font-size:14px}#popup-course #popup-content.fixed-quiz-status .quiz-status{background:var(--lp-primary-color)}#popup-course #popup-content.fixed-quiz-status .quiz-status>div{padding:0}@media(max-width:767px){#popup-course #popup-content{margin-top:113px}}#popup-course #popup-footer{position:fixed;z-index:999;right:0;bottom:0;left:475px;width:100%;max-width:792px;height:50px;margin:0 auto;border-top:1px solid #ebebeb;background:#fff;-webkit-transition:left .25s;-moz-transition:left .25s;-ms-transition:left .25s;-o-transition:left .25s;transition:left .25s}@media(max-width:1024px){#popup-course #popup-footer{width:auto;padding:0 15px}}#popup-course #popup-footer .course-item-nav{justify-content:space-between}#popup-course #popup-footer .course-item-nav .prev,#popup-course #popup-footer .course-item-nav .next{display:flex;line-height:50px}#popup-course #popup-footer .course-item-nav .prev a,#popup-course #popup-footer .course-item-nav .next a{display:block;color:#666;font-size:16px}#popup-course #popup-footer .course-item-nav .prev::before,#popup-course #popup-footer .course-item-nav .next::before{color:#999;font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900}#popup-course #popup-footer .course-item-nav .prev:hover a,#popup-course #popup-footer .course-item-nav .prev:hover::before,#popup-course #popup-footer .course-item-nav .next:hover a,#popup-course #popup-footer .course-item-nav .next:hover::before{color:var(--lp-primary-color)}#popup-course #popup-footer .course-item-nav .prev:hover .course-item-nav__name,#popup-course #popup-footer .course-item-nav .next:hover .course-item-nav__name{display:block}#popup-course #popup-footer .course-item-nav .next{flex-direction:row-reverse}#popup-course #popup-footer .course-item-nav .next::before{margin-left:10px;content:"\f0da"}#popup-course #popup-footer .course-item-nav[data-nav=next]{justify-content:flex-end}#popup-course #popup-footer .prev::before{margin-right:10px;content:"\f0d9"}#popup-course #popup-footer .prev .course-item-nav__name{right:auto;left:-30px}#popup-course #popup-footer .prev .course-item-nav__name::before{right:auto;left:5px}@media(max-width:1024px){#popup-course #popup-footer .prev .course-item-nav__name{left:15px}}#popup-course #popup-footer .course-item-nav__name{display:none;position:absolute;top:-20px;right:-30px;width:auto;padding:10px 15px;color:#666;background:#ccc;font-size:14px;font-weight:300;line-height:1}@media(max-width:1024px){#popup-course #popup-footer .course-item-nav__name{top:-25px;right:15px;left:auto}}#popup-course #sidebar-toggle{display:inline-block;position:absolute;z-index:100;top:198px;left:475px;width:25px;height:56px;margin:0;background:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,0.15);cursor:pointer;transition:.25s;-webkit-appearance:none;border:0}#popup-course #sidebar-toggle:after{display:none}#popup-course #sidebar-toggle::before{display:inline-block;position:absolute;top:50%;left:50%;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f0d9";transition:.25s;transform:translate(-50%,-50%)}#popup-course #sidebar-toggle:focus{border:0;outline:0}#popup-course .lp-quiz-buttons .complete-quiz,#popup-course .lp-quiz-buttons .back-quiz,#popup-course .lp-quiz-buttons .review-quiz{float:right}#popup-course .quiz-results,#popup-course .quiz-content,#popup-course .quiz-questions,#popup-course .quiz-buttons,#popup-course .quiz-attempts{margin-bottom:60px}#popup-course .quiz-questions .lp-fib-content{margin-bottom:20px;padding:20px;border:2px solid #f5f5f5;border-radius:6px;line-height:1.6}#popup-course .quiz-questions .lp-fib-input{display:inline-block;width:auto;max-width:none}#popup-course .quiz-questions .lp-fib-input>input{height:36px;padding:6px 16px;border:1px solid #222;line-height:36px}#popup-course .quiz-questions .lp-fib-answered{padding:0 10px;background:#ececec;white-space:nowrap}#popup-course .quiz-questions .lp-fib-answered.fail{border:2px solid #d85554}#popup-course .quiz-questions .lp-fib-answered.fail .lp-fib-answered__answer{text-decoration:line-through}#popup-course .quiz-questions .lp-fib-answered.correct{border:2px solid #00adff}#popup-course .quiz-questions .lp-fib-note{display:flex;margin-left:10px;font-size:14px;font-weight:400;align-items:center}#popup-course .quiz-questions .lp-fib-note>span{display:inline-block;width:20px;height:20px;margin:0 5px 0 0}#popup-course .quiz-questions .lp-sorting-choice__check-answer{padding:5px 20px;border:2px solid #059601;border-radius:5px;font-size:1rem}#popup-course .question .answer-option input[type=radio],#popup-course .question .answer-option input[type=checkbox]{-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);margin:0 0 0 10px}#popup-course .question .answer-option input[type=radio]::before{border-radius:50%}#popup-course .question .question-response{display:flex;align-items:center;justify-content:flex-start}#popup-course .scrollbar-light>.scroll-element{z-index:9999}#popup-course .scrollbar-light>.scroll-element.scroll-y{display:none}#popup-course .scrollbar-light>.scroll-element.scroll-y .scroll-bar{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.admin-bar #popup-course{top:32px}body.lp-sidebar-toggle__close #popup-course>#sidebar-toggle{left:0}body.lp-sidebar-toggle__close #popup-course>#sidebar-toggle::before{content:"\f0da"}body.lp-sidebar-toggle__close #popup-course #popup-sidebar{flex:0}body.lp-sidebar-toggle__close #popup-course #popup-header,body.lp-sidebar-toggle__close #popup-course #popup-footer{left:0}@media(max-width:768px){body:not(.lp-sidebar-toggle__open) #popup-course>#sidebar-toggle{left:0}body:not(.lp-sidebar-toggle__open) #popup-course>#sidebar-toggle::before{content:"\f0da"}body:not(.lp-sidebar-toggle__open) #popup-course #popup-sidebar{flex:0}}.course-curriculum .section-header .section-meta{position:relative}@media screen and (max-width:1280px){#popup-course #popup-sidebar{flex-basis:300px}#popup-course #popup-sidebar .course-curriculum{width:300px}#popup-course #popup-header,#popup-course #popup-footer{left:300px}#popup-course #sidebar-toggle{left:299px}}@media screen and (max-width:782px){body.admin-bar #popup-course{top:46px}#popup-course #popup-sidebar{flex-basis:250px}#popup-course #popup-sidebar .course-curriculum{width:250px}#popup-course #popup-header,#popup-course #popup-footer{left:250px}#popup-course #sidebar-toggle{left:249px}#popup-course #sidebar-toggle:checked ~ #popup-sidebar{flex-basis:0}#popup-course .course-item-meta .item-meta.count-questions,#popup-course .course-item-meta .item-meta.duration{display:none}}.content-item-wrap{width:792px;max-width:100%;margin:0 auto;padding-bottom:80px}@media(max-width:1024px){.content-item-wrap{width:100%}}.content-item-wrap .course-item-title{margin-top:0;margin-bottom:24px;color:#333;font-size:30px;font-weight:600}@media(max-width:767px){.content-item-wrap .course-item-title{text-align:center}}.content-item-wrap h4{font-size:1.5rem;font-weight:500;line-height:1.5}.content-item-wrap .content-item-summary{padding-top:50px}.content-item-wrap .content-item-description{margin-bottom:30px}.content-item-wrap .content-item-description h2,.content-item-wrap .content-item-description h3,.content-item-wrap .content-item-description h4,.content-item-wrap .content-item-description h5,.content-item-wrap .content-item-description h6{margin-top:0;margin-bottom:18px;font-size:18px;letter-spacing:unset}.content-item-wrap .content-item-description p{margin:0 0 18px 0;color:#666;font-size:16px;font-weight:300;line-height:26px}.content-item-wrap .content-item-description img{max-width:100%;height:auto;vertical-align:middle}.content-item-wrap #learn-press-quiz-app{margin-bottom:40px}.content-item-wrap .quiz-content{margin-bottom:40px;color:#666;font-size:16px;font-weight:300;line-height:26px}.content-item-wrap .quiz-content img{max-width:100%;height:auto;vertical-align:middle}.content-item-wrap .quiz-buttons{display:flex;justify-content:center;text-align:center}.content-item-wrap .quiz-buttons .button-right .lp-button{margin:0 0 0 15px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]{margin:0;border:1px solid #d9e0f1;color:#777;background:#fbfcff}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]::before{display:inline-block;width:15px;height:15px;border:2px solid #d9e0f1;border-top-color:transparent;border-left-color:transparent;content:"";-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].prev::before{margin-left:7px;-webkit-transform:rotate(135deg);-moz-transform:rotate(135deg);-ms-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].next{margin-left:-1px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].next::before{margin-right:7px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]:hover{background:#fff}.content-item-wrap .quiz-buttons.align-center{display:block;text-align:center}.content-item-wrap .quiz-buttons.align-center .button-left{text-align:center}.content-item-wrap .quiz-buttons.align-center .button-left.fixed{position:fixed;z-index:99999;bottom:0;left:50%;width:100%;max-width:792px;height:49px;margin-left:237px;transform:translateX(-50%)}@media(max-width:768px){.content-item-wrap .quiz-buttons.align-center .button-left.fixed{width:100% !important}}.content-item-wrap .quiz-buttons.align-center .button-left.nav-center{height:50px;margin-left:0 !important}.content-item-wrap .quiz-buttons:not(.infinity).is-first .prev{display:none}.content-item-wrap .quiz-buttons:not(.infinity).is-last .next{display:none}.content-item-wrap .quiz-buttons:not(.is-first):not(.is-last) .prev{border-top-right-radius:0;border-bottom-right-radius:0}.content-item-wrap .quiz-buttons:not(.is-first):not(.is-last) .next{border-top-left-radius:0;border-bottom-left-radius:0}.content-item-wrap .questions-pagination{height:33px;padding:8px 0;background:#fff;text-align:center}.content-item-wrap .questions-pagination .nav-links{text-align:center}.content-item-wrap .questions-pagination .nav-links .page-numbers{display:inline-block;vertical-align:middle;margin:0 3px 3px;padding:10px 16px;color:#666;background-color:transparent;font-size:16px;font-weight:300;line-height:1;border:1px solid;cursor:pointer}.content-item-wrap .questions-pagination .nav-links .page-numbers.next,.content-item-wrap .questions-pagination .nav-links .page-numbers.prev{display:inline-block;padding:10px;background:transparent;font-size:16px;text-align:center;text-decoration:none;text-transform:none;border:1px solid}.content-item-wrap .questions-pagination .nav-links .page-numbers.current,.content-item-wrap .questions-pagination .nav-links .page-numbers:hover{color:var(--lp-primary-color)}.course-curriculum .section-title{position:relative;margin-bottom:0;padding:8px 0;color:#5383f7;font-size:16px;font-weight:normal;line-height:1}.course-curriculum .section-title span.show-desc{display:inline-block;position:absolute;top:50%;right:30px;width:20px;height:20px;transform:translate(0,-50%)}.course-curriculum .section-title span.show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f107"}.course-curriculum .section-title span.show-desc:hover::before{border-top-color:#ccc}.lp-overlay{display:none;position:fixed;z-index:99999;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background-color:rgba(209,213,219,0.8);transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms;transition-property:opacity}.wp-admin .lp-modal-dialog .lp-modal-header{padding:2em}.wp-admin .lp-modal-dialog .lp-modal-header h3{font-size:1.4em}.lp-modal-dialog{display:flex;position:fixed;z-index:9999;top:0;right:0;left:0;width:100%;min-height:100vh;text-align:center;align-items:center;justify-content:center}.lp-modal-dialog .lp-modal-content{display:inline-block;overflow:hidden;z-index:2;width:auto;max-width:600px;border-radius:8px;text-align:left;vertical-align:middle;background:white;color:black}.lp-modal-dialog .lp-modal-header{background:#7c60d9;border-bottom:1px solid #eee;padding:1em}.lp-modal-dialog .lp-modal-header h3{margin:0;color:white;font-size:inherit;font-weight:400}.lp-modal-dialog .lp-modal-body .main-content{max-height:500px;overflow:auto}.lp-modal-dialog .lp-modal-body .main-content h3,.lp-modal-dialog .lp-modal-body .main-content h2,.lp-modal-dialog .lp-modal-body .main-content .pd-2em{padding:1em}.lp-modal-dialog .lp-modal-footer{padding:20px;padding-top:0;background-color:#f9fafb;text-align:right}.lp-modal-dialog .btn-yes{color:#fff;background-color:#7c60d9}#lp-modal-overlay{display:none;position:fixed;z-index:999999;top:0;right:0;bottom:0;left:0;opacity:.5;background:#000}#lp-modal-window{display:none;position:fixed;z-index:999999;top:50%;left:50%;padding:35px 60px 28px 60px;background:#fff;transform:translate(-50%,-50%);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#lp-modal-window #lp-modal-content{margin:0 0 24px 0;color:#333;font-size:16px;font-weight:400;line-height:26px;text-align:center}#lp-modal-window #lp-modal-content>*{margin:0 0 .5em}#lp-modal-window #lp-modal-buttons{display:flex;flex-direction:row-reverse;align-items:center;justify-content:center}#lp-modal-window #lp-modal-buttons .lp-button{position:relative;margin:0 10px 0 10px}.learn-press-comments{width:792px;max-width:100%;margin:0 auto}@media(max-width:1024px){.learn-press-comments{width:100%}}.learn-press-progress{overflow:hidden;position:relative;width:80px;height:6px;border-radius:3px}.learn-press-progress .learn-press-progress__active{position:absolute;z-index:1;left:-100%;width:100%;height:100%;border-radius:3px;background:var(--lp-primary-color);-webkit-transition:.5s;-moz-transition:.5s;-ms-transition:.5s;-o-transition:.5s;transition:.5s}.learn-press-progress::before{display:block;position:absolute;z-index:0;top:0;width:100%;height:100%;background:#ccc;content:""}.course-curriculum .section-header .section-left{display:flex}.course-curriculum .section-header .section-left .section-title{flex:1}.course-curriculum .section-header .section-left .section-toggle{flex:0 0 40px;align-items:center;text-align:center;cursor:pointer}.course-curriculum .section-header .section-left .section-toggle .fa-caret-down{display:none}.course-curriculum .section-header .learn-press-progress{width:80px}.course-curriculum .section.closed .section-toggle .fa-caret-down{display:block}.course-curriculum .section.closed .section-toggle .fa-caret-up{display:none}.course-curriculum .section.closed .section-content{overflow:hidden;height:0}*{box-sizing:border-box;margin:0;padding:0}button{cursor:pointer}input,button,select,textarea{outline:0}html{overflow-x:hidden}a{-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s}.lp-skeleton-animation{margin:0;padding:0;list-style:none}.lp-skeleton-animation>li{width:100%;height:16px;margin-top:15px;border-radius:2px;background:linear-gradient(90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);background-size:400% 100%;list-style:none;animation:lp-skeleton-loading 1.4s ease infinite}@keyframes lp-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.learnpress.theme-twentytwentytwo .wp-site-blocks,.learnpress.twentytwentytwo .wp-site-blocks{max-width:none;padding-right:0;padding-left:0}.learnpress.theme-twentytwentytwo .wp-site-blocks>.wp-block-group,.learnpress.twentytwentytwo .wp-site-blocks>.wp-block-group{max-width:none;margin-right:auto;margin-left:auto}.learnpress.theme-twentytwentytwo .lp-archive-courses,.learnpress.twentytwentytwo .lp-archive-courses{max-width:none}.learnpress.twentytwentytwo .wp-container-11 .alignfull,.learnpress.twentytwentytwo .wp-container-9 .alignfull,.learnpress.twentytwentytwo .wp-container-12 .alignfull{max-width:100%;margin-left:0 !important;margin-right:0 !important;padding-left:0 !important;padding-right:0 !important}@media(max-width:1199px){.learnpress.twentytwentytwo .wp-site-blocks .wp-block-template-part{padding-left:15px;padding-right:15px}}input[type=text],input[type=email],input[type=number],input[type=password]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:0;box-shadow:unset}body{background:#fff}body.learnpress-page{overflow-x:hidden}.wrap-fullwidth a:focus,.wrap-fullwidth button:focus,.wrap-fullwidth input:focus,.wrap-fullwidth textarea:focus{border:0;outline:0}.wrap-fullwidth a:hover{text-decoration:none}.wrap-fullwidth p{word-break:break-word}.wrap-fullwidth p:last-child{margin-bottom:0}.wrap-fullwidth label{display:block;margin:0;outline:0}.wrap-fullwidth img{max-width:100%;height:auto}.wrap-fullwidth form{margin:0}.wrap-fullwidth .col-full{box-sizing:border-box;max-width:100%;padding:0}.wrap-fullwidth .col-full .woocommerce-breadcrumb{display:none}footer{clear:both}.margin-bottom{margin-bottom:20px}.hide-if-js{display:none !important}.clearfix::after{display:block;clear:both;content:""}.lp-form-fields{margin:0;padding:0;list-style:none}.lp-form-fields .form-field{margin:0 0 20px 0;list-style:none}.lp-content-wrap{width:1170px;max-width:90%;margin:0 auto}.lp-content-wrap>h2{margin-top:0;margin-bottom:26px;color:#333;font-size:30px;font-weight:600}.learn-press-breadcrumb{max-width:1170px;width:100%;margin:0 auto 45px auto;padding:0;color:#333;font-size:14px;font-weight:400;list-style:none}.learn-press-breadcrumb li{display:inline-block;margin:0}.learn-press-breadcrumb li a:hover{color:var(--lp-primary-color)}.learn-press-breadcrumb i{margin:0 5px;color:#666;font-size:12px}@media(max-width:1024px){.learn-press-breadcrumb{padding-right:15px;padding-left:15px}}.learn-press-breadcrumb a{color:#666;font-weight:500}.learnpress-page .lp-button,.learnpress-page #lp-button{padding:16px 24px;border:1px solid #ccc;color:#333;background:transparent;box-shadow:unset;font-family:inherit;font-size:16px;font-weight:400;line-height:1;text-align:center;vertical-align:middle;text-decoration:none;text-transform:capitalize;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-transition:all .25s;-moz-transition:all .25s;-ms-transition:all .25s;-o-transition:all .25s;transition:all .25s}.learnpress-page .lp-button.large,.learnpress-page #lp-button.large{height:52px;padding:18px 30px;font-size:18px}.learnpress-page .lp-button:hover,.learnpress-page #lp-button:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.learnpress-page .lp-button.btn-ajax-off .icon,.learnpress-page #lp-button.btn-ajax-off .icon{display:none}.learnpress-page .lp-button.btn-ajax-on .icon,.learnpress-page #lp-button.btn-ajax-on .icon{display:inline-block;margin-right:5px;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.learnpress-page .lp-button:focus,.learnpress-page #lp-button:focus{outline:0}.learnpress-page .lp-button.loading::before,.learnpress-page #lp-button.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}.learnpress-page .rwmb-field .description{margin-top:8px;color:#999;font-size:smaller;font-style:italic}.btn-base{border-color:var(--lp-primary-color);color:white;background-color:var(--lp-primary-color)}.lp-ajax-message{display:none;margin-top:20px;padding:20px;border:2px solid #059601;border-radius:9px;font-size:15px;line-height:1.4}.lp-ajax-message.error{border-color:#d85554}.course-meta{margin-bottom:14px}.course-meta .course-students::before{font-family:"Font Awesome 5 Free";content:""}.lp-entry-content .course-tabs{margin-bottom:60px}.learn-press-checkout-comment h4{display:none}.order-comments{width:100%;padding:15px;min-height:150px;border:1px solid #ccc;resize:none}.learn-press-progress .progress-bg{overflow:hidden;position:relative;height:6px;background:#ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.learn-press-progress .progress-bg .progress-active{position:absolute;left:50%;width:100%;height:100%;margin-left:-100%;background:var(--lp-primary-color);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.retake-course,.enroll-course,.purchase-course{display:inline-block}.table-orders{font-size:16px}.table-orders th,.table-orders td{padding:5px 10px}.form-button{display:inline-block}.learn-press-pagination{padding-bottom:20px;text-align:center}.learn-press-pagination .page-numbers{display:inline-block;margin:0;padding:0;border:0;outline:0;background:transparent;list-style:none}.learn-press-pagination .page-numbers>li{display:inline-block;margin:0;padding:0 14px}.learn-press-pagination .page-numbers>li .page-numbers{float:unset;padding:0;color:#666;background:transparent;font-size:16px;font-weight:300}.learn-press-pagination .page-numbers>li .page-numbers.current{color:var(--lp-primary-color);font-weight:400}.learn-press-pagination .page-numbers>li .page-numbers:hover{color:var(--lp-primary-color)}ul.list-table-nav{display:flex;margin-left:0;list-style:none}ul.list-table-nav .nav-text{text-align:left;flex:1}ul.list-table-nav .nav-pages{text-align:right;flex:1}ul.list-table-nav .nav-pages .learn-press-pagination{display:inline-block;margin-bottom:0}.primary-color{color:#00adff}.primary-color-before::before{color:#00adff}.primary-color-after::after{color:#00adff}.primary-background-color{background:#00adff}.primary-background-color{background:#00adff}.course-origin-price{margin-right:5px;font-size:85%;text-decoration:line-through}.course-item-nav{display:flex}.course-item-nav .prev span,.course-item-nav .next span{display:block;font-weight:bold}.course-item-nav .prev a,.course-item-nav .next a{color:#999}.course-item-nav .next{text-align:right}.content-item-wrap #comments{margin-right:0;margin-left:0}.content-item-wrap #comments #comment{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-summary-sidebar{position:relative}@media(min-width:769px){.course-summary-sidebar.slide-down .course-summary-sidebar__inner{position:fixed;top:0}}@media(min-width:1200px){.course-summary-sidebar.slide-top .course-summary-sidebar__inner{position:absolute}}.course-graduation span{color:#999}.course-graduation .icon{margin-right:5px;font-size:20px}.course-graduation.passed .icon{color:#059601}.course-graduation.error .icon{color:#d85554}.learn-press-template-warning::before{color:#ffc107;font-family:"Font Awesome 5 Free";content:"\f071"}.lp-badge{display:flex;height:30px;padding:0;line-height:1;align-items:center;justify-content:center}.lp-badge::before,.lp-badge::after{content:""}.lp-badge::before{display:inline-block;position:relative;z-index:10;color:#fff;font-weight:bold;line-height:1}.lp-badge.featured-course{position:absolute;z-index:1;top:25px;left:-110px;width:300px;background:#93f;text-align:center;transform:rotate(-45deg)}.lp-badge.featured-course::before{font-size:12px;text-transform:uppercase;content:attr(data-text)}@media(min-width:769px){#learn-press-item-comments{padding-bottom:50px}}.course-tabs input[name=learn-press-course-tab-radio],.course-tabs .course-tab-panel{display:none}.course-tabs .course-nav label{display:flex;align-items:center;justify-content:center;margin:0;padding:17px 10px;font-size:16px;line-height:1;font-weight:600;text-transform:capitalize;cursor:pointer}.no-event{pointer-events:none}@media screen and (max-width:768px){ul.learn-press-courses .course{width:48%}}@media screen and (max-width:600px){ul.learn-press-courses .course{width:100%;margin-right:0}}.course-price:empty{display:none !important}.quiz-attempts .attempts-heading{margin-bottom:15px}.quiz-attempts table{border-spacing:0;border-left:1px solid var(--lp-secondary-color);border-top:1px solid var(--lp-secondary-color);width:100%}.quiz-attempts table tr th,.quiz-attempts table tr td{border-right:1px solid var(--lp-secondary-color);border-bottom:1px solid var(--lp-secondary-color);padding:5px 15px;text-align:center}.quiz-attempts table tr th{font-weight:500}@media(max-width:575px){#popup-course .quiz-attempts{overflow-x:auto}}
|
1 |
+
@charset "UTF-8";@-webkit-keyframes rotating4{from{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotating4{from{-ms-transform:rotate(0);-moz-transform:rotate(0);-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-ms-transform:rotate(360deg);-moz-transform:rotate(360deg);-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes animation4{from{left:-40%;width:40%}to{left:100%;width:10%}}@keyframes animation4{from{left:-40%;width:40%}to{left:100%;width:10%}}.learn-press-message{position:relative;margin:0 0 20px 0;padding:10px 50px 10px 15px;border-top:5px solid #00adff;border-radius:0 0 5px 5px;background:#f5f5f5;width:100%}.learn-press-message.icon{padding-left:45px}.learn-press-message.icon::before{background:#00adff}.learn-press-message.icon::after{position:absolute;top:50%;left:15px;width:10px;height:10px;margin-top:-13px;margin-right:10px;border-radius:50%;color:#fff;background:#00adff;font-family:"Font Awesome 5 Free";font-size:20px;line-height:26px;text-align:center;vertical-align:baseline;content:"\f129"}.learn-press-message::before,.learn-press-message::after{position:absolute;top:0;content:""}.learn-press-message::before{right:20px;width:20px;height:30px;background:#00adff}.learn-press-message::after{top:10px;right:20px;width:0;height:0;border:10px solid transparent;border-bottom-color:#f5f5f5}.learn-press-message.error{border-color:#d85554}.learn-press-message.error::before{background:#d85554}.learn-press-message.error.icon::before,.learn-press-message.error.icon::after{background:#d85554}.learn-press-message.error.icon::after{content:"\f00d"}.learn-press-message.warning{border-color:#ffc107}.learn-press-message.warning::before{background:#ffc107}.learn-press-message.warning.icon::before,.learn-press-message.warning.icon::after{background:#ffc107}.learn-press-message.warning.icon::after{content:"\f00d"}.learn-press-message.success{border-color:#059601}.learn-press-message.success::before{background:#059601}.learn-press-message.success.icon::before,.learn-press-message.success.icon::after{background:#059601}.learn-press-message.success.icon::after{content:"\f129"}.learn-press-message a{text-decoration:underline}@keyframes lp-rotating{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes lp-rotating{from{-webkit-transform:rotate(0);-moz-transform:rotate(0);-ms-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-moz-transform:rotate(360deg);-ms-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}.ajaxload{display:inline-block;position:relative;width:30px;height:30px;background:#7b7b7b;content:"";-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.ajaxload::after{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;display:inline-block;position:absolute;top:2px;left:50%;width:6px;height:6px;margin-left:-3px;background:#dedede;content:""}.lp-ajaxload-style-1{display:inline-block;position:relative;width:32px;height:32px}.lp-ajaxload-style-1::before,.lp-ajaxload-style-1::after{position:absolute;top:0;left:0;width:100%;height:100%;border:3px solid #ddd;content:""}.lp-ajaxload-style-1::after{clip:rect(0,32px,16px,16px);border-color:#2fa7ff;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.learn-press-tabs{margin-bottom:34px;background:#f1f2f8}.learn-press-tabs .learn-press-tabs__checker{display:none}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(1):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(1)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(2):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(2)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(3):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(3)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(4):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(4)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(5):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(5)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(6):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(6)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(7):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(7)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(8):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(8)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(9):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(9)::after{background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10){border-bottom:0;background:#fff}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10) label{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10) label a{color:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10)::before{background:#ffb606}.learn-press-tabs .learn-press-tabs__checker:nth-child(10):checked ~ .learn-press-tabs__nav .learn-press-tabs__tab:nth-child(10)::after{background:#fff}.learn-press-tabs .learn-press-tabs__nav{display:flex;margin:0;padding:0;border:1px solid #e5e7f2;list-style:none}.learn-press-tabs .learn-press-tabs__tab{position:relative;margin:0;border-right:1px solid #e5e7f2;background:#f1f2f8;list-style:none}.learn-press-tabs .learn-press-tabs__tab:last-child{border-right:0}.learn-press-tabs .learn-press-tabs__tab>label{display:block;margin:0;padding:18px 65px;font-size:18px;line-height:1;font-weight:600;text-align:center;text-transform:capitalize;cursor:pointer}.learn-press-tabs .learn-press-tabs__tab>label a{color:#333}.learn-press-tabs .learn-press-tabs__tab>label a:focus{outline:0;text-decoration:none}@media(max-width:767px){.learn-press-tabs .learn-press-tabs__tab>label{padding:20px 50px 14px 50px}}.learn-press-tabs .learn-press-tabs__tab::before{position:absolute;top:-1px;left:0;width:100%;height:4px;background:transparent;content:""}.learn-press-tabs .learn-press-tabs__tab::after{position:absolute;bottom:-1px;left:0;width:100%;height:4px;background:transparent;content:""}.learn-press-tabs .learn-press-tabs__tab:first-child.active label{position:relative}.learn-press-tabs .learn-press-tabs__tab:first-child.active label::before{position:absolute;top:0;left:-1px;width:1px;height:100%;background:#fff;content:""}.learn-press-tabs.stretch .learn-press-tabs__tab{flex:1}.learn-press-tabs.stretch .learn-press-tabs__tab>label{padding:18px 10px}.learn-press-filters{display:flex;margin-bottom:30px;margin-left:0;list-style:none}.learn-press-filters>li{margin:0;font-size:16px;line-height:24px}@media(max-width:767px){.learn-press-filters>li{margin-right:30px;margin-left:0}.learn-press-filters>li:last-child{margin-right:0}}.learn-press-filters>li>a,.learn-press-filters>li>span{display:inline-block;font-weight:600}.learn-press-filters>li>span.count{font-weight:400}.learn-press-filters>li>span.count::before,.learn-press-filters>li>span.count::after{display:inline-block}.learn-press-filters>li>span.count::before{content:"("}.learn-press-filters>li>span.count::after{content:")"}.learn-press-filters>li span{color:#ffb606}.learn-press-filters>li span+span{color:#ffb606}.learn-press-filters>li span+span::before,.learn-press-filters>li span+span::after{color:#ffb606}.learn-press-filters>li a{color:#333;cursor:pointer}.learn-press-filters>li a+span{color:#333}.learn-press-filters>li a+span::before,.learn-press-filters>li a+span::after{color:#333}.learn-press-filters>li::after{margin:0 35px;color:#ccc;content:"|"}@media(max-width:767px){.learn-press-filters>li::after{display:none}}.learn-press-filters>li:last-child::after{display:none}.lp-checkout-form__before,.lp-checkout-form__after{width:45%;width:-webkit-calc(50% - 30px);width:-moz-calc(50% - 30px);width:calc(50% - 30px);margin:0 15px 40px 15px}.lp-checkout-form__before .lp-checkout-block h4,.lp-checkout-form__after .lp-checkout-block h4{margin-top:0;margin-bottom:18px;color:#333;font-size:24px;font-weight:600;line-height:1;font-family:var(--wp--preset--font-family--system-font)}@media(max-width:815px){.lp-checkout-form__before,.lp-checkout-form__after{width:100%;margin:0 0 40px 0}}.lp-checkout-form__before{float:right}.lp-checkout-form__before #checkout-order{width:100%}.lp-checkout-form .lp-checkout-form__after{float:left}.lp-checkout-form .lp-checkout-remember{letter-spacing:0;margin-top:0}.lp-checkout-form .lp-checkout-remember label{width:auto;color:#666;font-size:16px;font-weight:300;line-height:26px}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]{position:relative;top:3px;width:19px;height:19px;margin:0 4px 0 0;border:1px solid #ccc;cursor:pointer;-webkit-appearance:none}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]:focus{outline:0}.lp-checkout-form .lp-checkout-remember label input[type=checkbox]:checked::after{position:absolute;top:2px;left:2px;color:#41abec;font-family:"Font Awesome 5 Free";font-size:14px;font-weight:900;line-height:1;content:"\f00c"}.lp-checkout-form .lp-checkout-remember a{color:#666;font-size:16px;font-weight:300;line-height:26px;text-decoration:underline;text-decoration-color:#ccc}.lp-checkout-form .lp-checkout-remember a:hover{color:var(--lp-primary-color);text-decoration-color:var(--lp-primary-color)}.lp-checkout-form .lp-form-fields{padding:0 0 14px 0}.lp-checkout-form .lp-form-fields label{display:block;margin-bottom:10px;font-size:16px}.lp-checkout-form .lp-form-fields input{height:44px;line-height:normal;width:100%;padding:0 15px;border:1px solid #ccc}.lp-checkout-form .rwmb-input input:not([type=checkbox]){width:100%;height:43px;padding:0 22px;border:1px solid #ccc;border-radius:3px;background-color:#fff;font-size:14px;font-weight:300;font-style:italic;line-height:43px}.lp-checkout-form .rwmb-input input:not([type=checkbox]):focus{border-color:var(--lp-primary-color);outline:0;color:#222}.lp-checkout-form .rwmb-input ::placeholder{opacity:1;color:#999}.lp-checkout-form .rwmb-input :-ms-input-placeholder{color:#999}.lp-checkout-form .rwmb-input ::-ms-input-placeholder{color:#999}.lp-checkout-form .rwmb-input input:-webkit-autofill,.lp-checkout-form .rwmb-input input:-webkit-autofill:hover,.lp-checkout-form .rwmb-input input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:#999 !important}.lp-checkout-form{margin:0 -15px;margin-top:50px}@media(max-width:815px){.lp-checkout-form{display:flex;flex-direction:column-reverse;margin:0}}.lp-checkout-form #btn-checkout-account-switch-to-guest{margin-bottom:60px}.lp-checkout-form .description{float:left}.lp-checkout-form a{color:#41abec}.lp-checkout-form a label{display:inline-block;color:inherit;font-weight:normal;cursor:pointer}.lp-checkout-form a:hover{color:#ffb606}.lp-checkout-form #checkout-account-guest{width:100%;margin-bottom:35px;padding-bottom:19px;border-bottom:1px solid rgba(204,204,204,0.3)}.lp-checkout-form #checkout-account-guest .lp-form-fields,.lp-checkout-form #checkout-account-guest .form-field{margin-bottom:0;padding-bottom:0}.lp-checkout-form div.lp-guest-checkout-output{margin-top:10px;padding:8px 20px;border:2px solid #41abec;border-radius:4px;font-size:16px;transition:all .2s ease}.lp-checkout-form label.lp-guest-checkout-output{margin-top:10px;cursor:pointer;user-select:none}.lp-checkout-form .lp-guest-checkout-notice{margin:30px 0 0 0}.lp-checkout-form .lp-guest-switch-login{margin-top:1em;color:#666;font-size:16px;font-weight:400}.lp-checkout-form input[name=checkout-account-switch-form]{display:none}.lp-checkout-form input[name=checkout-account-switch-form]:not(:checked)+.lp-checkout-block{display:none;overflow:hidden;height:0;margin:0;padding:0;border:0;opacity:0}.lp-checkout-form input[name=checkout-account-switch-form]:not(:checked)+.lp-checkout-block>*{overflow:hidden;height:0}.lp-checkout-form input[name=checkout-account-switch-form]:checked+.lp-checkout-block{display:block;overflow:auto;height:auto}.lp-checkout-form input[name=checkout-account-switch-form][value=guest]:checked ~ #btn-checkout-account-switch-to-guest{display:none}.lp-checkout-form::after{display:block;clear:both;content:""}.lp-checkout-form:focus{outline:0}#checkout-order .lp-checkout-order__inner{padding:0 20px;border:1px solid #ccc;border-radius:4px}#checkout-order table{width:100%;margin:0;border:0}#checkout-order td,#checkout-order th{box-sizing:content-box;border:1px solid rgba(204,204,204,0.3);border-top:0;border-right:0;border-left:0;background:unset;line-height:1;text-align:left;vertical-align:inherit}#checkout-order td:last-child,#checkout-order th:last-child{padding-right:0}#checkout-order .course-name{font-size:16px;font-weight:600;line-height:26px}#checkout-order .course-name a{display:-webkit-box;overflow:hidden;color:#000;-webkit-line-clamp:1;-webkit-box-orient:vertical}#checkout-order .course-name a:hover{color:var(--lp-primary-color)}#checkout-order .col-number{min-width:50px;color:#666;font-size:16px;font-weight:600;line-height:26px;text-align:right}#checkout-order .order-total>th{padding:24px 20px 24px 0}#checkout-order .order-total .col-number{color:#333;font-size:26px}#checkout-order tfoot .cart-subtotal{color:#666;font-size:16px;font-weight:600;line-height:26px}#checkout-order tfoot .cart-subtotal>th{padding:20px 20px 17px 0}#checkout-order tfoot .order-total th{color:#333;font-size:16px;font-weight:600;line-height:26px}#checkout-order tfoot tr:last-child{border-width:0}#checkout-order tfoot tr:last-child td,#checkout-order tfoot tr:last-child th{border-width:0}#checkout-order .course-thumbnail{width:80px;padding:20px 13px 18px 0}#checkout-order .course-thumbnail>img{width:100px;max-width:100% !important;height:auto !important}#checkout-account-register,#checkout-account-login{width:100%;margin-bottom:35px;padding-bottom:19px;border-bottom:1px solid rgba(204,204,204,0.3)}#checkout-account-register .form-field .rwmb-label,#checkout-account-register .form-field .rwmb-input .description,#checkout-account-login .form-field .rwmb-label,#checkout-account-login .form-field .rwmb-input .description{display:none}#checkout-account-register .lp-checkout-remember label,#checkout-account-login .lp-checkout-remember label{display:inline-block}#checkout-account-register .lp-checkout-remember a,#checkout-account-login .lp-checkout-remember a{float:right}#checkout-account-register .lp-checkout-sign-in-link,#checkout-account-register .lp-checkout-sign-up-link,#checkout-account-login .lp-checkout-sign-in-link,#checkout-account-login .lp-checkout-sign-up-link{display:flex;margin:0;color:#666;font-size:16px;font-weight:400}#checkout-account-register .lp-checkout-sign-in-link a,#checkout-account-register .lp-checkout-sign-up-link a,#checkout-account-login .lp-checkout-sign-in-link a,#checkout-account-login .lp-checkout-sign-up-link a{margin-left:5px;color:#41abec;cursor:pointer}#checkout-account-register .lp-checkout-sign-in-link a:hover,#checkout-account-register .lp-checkout-sign-up-link a:hover,#checkout-account-login .lp-checkout-sign-in-link a:hover,#checkout-account-login .lp-checkout-sign-up-link a:hover{color:var(--lp-primary-color)}#checkout-account-register .lp-checkout-sign-in-link a label,#checkout-account-register .lp-checkout-sign-up-link a label,#checkout-account-login .lp-checkout-sign-in-link a label,#checkout-account-login .lp-checkout-sign-up-link a label{display:inline-block;float:right;color:inherit;font-weight:normal;cursor:pointer}#checkout-payment{width:100%;margin-bottom:25px}#checkout-payment h4{margin-bottom:24px}#checkout-payment .secure-connection{float:right;margin-top:5px;color:#999;font-size:12px;font-weight:normal}#checkout-payment .secure-connection i{margin-right:5px;color:#ccc;font-size:18px}@media(max-width:767px){#checkout-payment .secure-connection{margin-top:0}}#checkout-payment .payment-methods{margin:0 0 24px 0;padding:0;list-style:none}#checkout-payment .lp-payment-method{position:relative;margin:0}#checkout-payment .lp-payment-method>label{display:flex;align-items:center}#checkout-payment .lp-payment-method .gateway-input,#checkout-payment .lp-payment-method .gateway-icon{vertical-align:middle}#checkout-payment .lp-payment-method .gateway-icon{max-height:32px}#checkout-payment .lp-payment-method .gateway-input{position:relative;width:20px;height:20px;margin:0 8px 0 0;border:1px solid #ccc;background:#fff;-webkit-appearance:none;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}#checkout-payment .lp-payment-method .gateway-input::before{position:absolute;top:50%;left:50%;width:6px;height:6px;background:#41abec;transform:translate(-50%,-50%);-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}#checkout-payment .lp-payment-method .gateway-input:checked::before{content:""}#checkout-payment .lp-payment-method .gateway-input:focus{outline:0}#checkout-payment #checkout-order-action button{width:100%;border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color);font-weight:500}#checkout-payment #checkout-order-action button:hover{border-color:var(--lp-primary-color);opacity:.5;background:var(--lp-primary-color)}#checkout-payment #checkout-order-action button.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.lp-terms-and-conditions{color:#666;font-size:16px;font-weight:300;line-height:26px}.lp-terms-and-conditions a{color:#41abec}.lp-terms-and-conditions a:hover{color:var(--lp-primary-color)}.learn-press-checkout.guest-checkout{display:none}.button-continue-guest-checkout{clear:both}#learn-press-checkout .payment-methods{margin:0;padding:0;list-style:none}#learn-press-checkout .payment-methods .lp-payment-method{margin-bottom:20px}#learn-press-checkout .payment-methods .lp-payment-method>label{display:flex;flex-flow:row nowrap;padding:10px 20px;background:#f5f5f5;line-height:40px;cursor:pointer}#learn-press-checkout .payment-methods .lp-payment-method>label img{vertical-align:middle}#learn-press-checkout .payment-methods .lp-payment-method.selected>label{background:#d4d4d4}#learn-press-checkout .payment-methods .payment-method-form{display:none;padding:15px 20px;border-top:1px solid #ddd;background:#f9f9f9}#learn-press-checkout-login,#learn-press-checkout-register{margin-bottom:1.5em;padding:20px 20px 0 20px;border:1px solid #ddd;background:#fff}#learn-press-order-review,.learn-press-checkout-comment{margin-bottom:20px}#checkout-form-login,#checkout-form-register{_display:none}#checkout-form-login .learn-press-form-register,#checkout-form-login .learn-press-form-login,#checkout-form-register .learn-press-form-register,#checkout-form-register .learn-press-form-login{display:none}#checkout-guest-email{margin:0 0 20px 0}#checkout-guest-email .form-heading{margin:0}#checkout-guest-email #checkout-guest-options{margin:0;list-style:none}#checkout-guest-email #checkout-existing-account,#checkout-guest-email #checkout-new-account{display:none;margin:0}#checkout-guest-email.email-exists #checkout-existing-account{display:block}#checkout-guest-email.email-exists #checkout-new-account{display:none}.lp-list-table{width:100%;margin-bottom:20px}.lp-list-table th,.lp-list-table td{padding:20px;border:0 solid rgba(204,204,204,0.3);border-bottom-width:1px;background:#fff;font-size:16px;line-height:1;text-align:left}@media(max-width:767px){.lp-list-table th,.lp-list-table td{padding:15px}}.lp-list-table thead{box-sizing:border-box;border:1px solid #e5e7f2}.lp-list-table thead tr th{height:60px;border-bottom:0;color:#333;background:#f1f2f8;font-size:18px}.lp-list-table tbody,.lp-list-table tfoot{box-sizing:border-box;border:1px solid rgba(204,204,204,0.3);border-top:0}.lp-list-table tbody tr td,.lp-list-table tbody tr th,.lp-list-table tfoot tr td,.lp-list-table tfoot tr th{height:62px;color:#666;background:#fff;font-size:16px;font-weight:300}.lp-list-table tbody tr td a,.lp-list-table tbody tr th a,.lp-list-table tfoot tr td a,.lp-list-table tfoot tr th a{border-bottom:0;color:#666;text-decoration:none}.lp-list-table tbody tr td a:hover,.lp-list-table tbody tr th a:hover,.lp-list-table tfoot tr td a:hover,.lp-list-table tfoot tr th a:hover{color:var(--lp-primary-color)}.lp-list-table tbody tr .column-status .result-percent,.lp-list-table tfoot tr .column-status .result-percent{font-weight:500}.lp-list-table tbody tr .column-status .lp-label,.lp-list-table tfoot tr .column-status .lp-label{font-weight:600}.lp-list-table tbody tr:nth-child(odd),.lp-list-table tfoot tr:nth-child(odd){background:#f5f5f5}.lp-list-table .list-table-nav td{font-size:14px}.lp-list-table .list-table-nav td.nav-text{text-align:left}.lp-list-table .list-table-nav td.nav-pages{text-align:right}.lp-list-table .list-table-nav td.nav-pages .learn-press-pagination{text-align:right}.lp-list-table .list-table-nav td.nav-pages .page-numbers{margin-bottom:0}.lp-label{display:inline-block;color:#666;font-size:16px;font-weight:300;line-height:1}.learn-press-form .form-fields{margin:0;padding:0;list-style:none}.learn-press-form .form-fields .form-field{margin:0 0 20px 0}.learn-press-form .form-fields .form-field label{display:block;margin:0 0 10px 0}.learn-press-form .form-fields .form-field input[type=text],.learn-press-form .form-fields .form-field input[type=email],.learn-press-form .form-fields .form-field input[type=number],.learn-press-form .form-fields .form-field input[type=password],.learn-press-form .form-fields .form-field textarea{width:100%;padding:8px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.learn-press-form .form-fields .form-field .description{margin-top:10px;font-size:14px;font-style:italic;line-height:1.4}.learn-press-form .form-fields .form-field .asterisk{color:red}.learn-press-form-login,.learn-press-form-register{max-width:600px;margin-right:auto;margin-bottom:60px;margin-left:auto;padding:40px;border:1px solid #eee;border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06) !important}.learn-press-form-login h3,.learn-press-form-register h3{margin-bottom:20px;font-size:28px;line-height:1.4}.learn-press-form-login .form-fields .form-field label,.learn-press-form-register .form-fields .form-field label{font-size:16px;font-weight:400;user-select:none}.learn-press-form-login .form-fields .form-field input[type=text],.learn-press-form-login .form-fields .form-field input[type=password],.learn-press-form-login .form-fields .form-field input[type=tel],.learn-press-form-login .form-fields .form-field input[type=url],.learn-press-form-login .form-fields .form-field input[type=number],.learn-press-form-register .form-fields .form-field input[type=text],.learn-press-form-register .form-fields .form-field input[type=password],.learn-press-form-register .form-fields .form-field input[type=tel],.learn-press-form-register .form-fields .form-field input[type=url],.learn-press-form-register .form-fields .form-field input[type=number]{height:42px;border:1px solid #bbb;border-radius:4px;line-height:42px}.learn-press-form-login .form-fields .form-field input[type=text]:focus,.learn-press-form-login .form-fields .form-field input[type=password]:focus,.learn-press-form-login .form-fields .form-field input[type=tel]:focus,.learn-press-form-login .form-fields .form-field input[type=url]:focus,.learn-press-form-login .form-fields .form-field input[type=number]:focus,.learn-press-form-register .form-fields .form-field input[type=text]:focus,.learn-press-form-register .form-fields .form-field input[type=password]:focus,.learn-press-form-register .form-fields .form-field input[type=tel]:focus,.learn-press-form-register .form-fields .form-field input[type=url]:focus,.learn-press-form-register .form-fields .form-field input[type=number]:focus{border:0;outline:2px solid transparent !important;outline-offset:2px;box-shadow:0 0 0 2px #666 !important}.learn-press-form-login .form-fields .form-field.required label::after,.learn-press-form-register .form-fields .form-field.required label::after{content:" *";display:inline}.learn-press-form-login form[name=learn-press-login]>p>label,.learn-press-form-register form[name=learn-press-login]>p>label{color:#666;font-size:16px;cursor:pointer;user-select:none}.learn-press-form-login form[name=learn-press-login]>p>a,.learn-press-form-register form[name=learn-press-login]>p>a{color:#666;font-size:16px;line-height:1}.learn-press-form-login form[name=learn-press-login]>p:last-child,.learn-press-form-register form[name=learn-press-login]>p:last-child{margin-bottom:0}.learn-press-form-login button[type=submit],.learn-press-form-register button[type=submit]{width:100%;height:50px;border-radius:3px;outline:0;color:#fff;background:var(--lp-primary-color);box-shadow:none;font-size:16px;line-height:1;vertical-align:middle;text-decoration:none}.required label{font-weight:bold}.required label:after{content:" *";display:inline}.lp-password-input{display:flex;flex-direction:column;justify-content:center;position:relative}.lp-password-input input[type=password]{padding-right:2.5rem}.lp-password-input input::-ms-reveal{display:none}.lp-password-input .lp-show-password-input{position:absolute;top:8px;right:10px;cursor:pointer}.lp-password-input .lp-show-password-input::after{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f06e"}.lp-password-input .lp-show-password-input.display-password::after{color:#585858;content:"\f070"}.form-desc{font-size:smaller;font-style:italic}.become-teacher-form{width:90%;max-width:500px;margin:0 auto}.become-teacher-form .form-field input[type=text],.become-teacher-form .form-field input[type=email],.become-teacher-form .form-field input[type=number],.become-teacher-form .form-field input[type=password]{width:100%}body div.entry-content>div.learnpress{--responsive--aligndefault-width:100%;max-width:var(--lp-content-width,100%)}.lp-user-profile{position:relative;background:#fff}.lp-user-profile .lp-user-profile-avatar img{position:relative;width:100%;height:auto;border-radius:unset;display:block}.lp-user-profile .lp-user-profile-avatar+.lp-user-profile-socials{margin-top:10px;margin-bottom:5px}.lp-user-profile .lp-user-profile-socials{display:flex;position:relative;z-index:1;justify-content:center;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap}.lp-user-profile .lp-user-profile-socials a{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;margin:0 7px;border:1px solid #cfcfcf;color:#666;background:#fff;font-size:14px;line-height:35px;text-align:center;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.lp-user-profile .lp-user-profile-socials a:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.lp-user-profile .wrapper-profile-header{color:#fff;background:var(--lp-secondary-color);position:relative}@media(max-width:990px){.lp-user-profile .wrapper-profile-header .lp-profile-content-area{min-height:inherit;padding:50px 15px}.lp-user-profile .wrapper-profile-header .lp-profile-left{float:left;position:static}.lp-user-profile .wrapper-profile-header .lp-profile-right{float:right;width:calc(100% - 270px);margin-left:0}}@media(max-width:768px){.lp-user-profile .wrapper-profile-header .lp-profile-left{width:220px}.lp-user-profile .wrapper-profile-header .lp-profile-right{width:calc(100% - 220px)}.lp-user-profile .wrapper-profile-header .lp-user-profile-socials{margin-right:-5px;margin-left:-5px}.lp-user-profile .wrapper-profile-header .lp-user-profile-socials a{width:36px;height:36px;margin:0 5px;line-height:36px}}@media(max-width:500px){.lp-user-profile .wrapper-profile-header .lp-profile-left{float:none;margin:0 auto}.lp-user-profile .wrapper-profile-header .lp-profile-right{width:100%;padding-top:30px;text-align:center}}.lp-user-profile .wrapper-profile-header::before{right:100%;left:auto}.lp-user-profile .wrapper-profile-header::after{left:100%;right:auto}.lp-user-profile .lp-profile-content-area{position:relative;padding-top:50px;padding-bottom:50px;display:flex;align-items:center}@media(max-width:650px){.lp-user-profile .lp-profile-content-area{flex-direction:column}.lp-user-profile .lp-profile-content-area .lp-profile-right{text-align:center;width:100%;padding:50px 15px 0}}.lp-user-profile .lp-profile-left{min-width:270px;max-width:270px;padding:5px;border:2px solid #eaeaea;border-radius:3px}.lp-user-profile .lp-profile-right{padding-right:15px;padding-left:35px}.lp-user-profile .lp-profile-username{padding-bottom:10px;font-size:18px;font-weight:500;text-transform:capitalize}.lp-user-profile .lp-profile-username::before,.lp-user-profile .lp-profile-username::after{content:"";width:30px;height:1px;background-color:white;display:inline-block;vertical-align:middle;margin:0}.lp-user-profile .lp-profile-username::before{margin-right:5px}.lp-user-profile .lp-profile-username::after{margin-left:5px}.lp-user-profile .lp-profile-user-bio{font-size:16px;font-weight:300;line-height:26px}.lp-user-profile #profile-sidebar{float:left;width:270px;margin-top:0;border:1px solid rgba(0,0,0,0.1);border-top:0;background:#fff;margin-top:58px}@media(max-width:990px){.lp-user-profile #profile-sidebar{width:100%}.lp-user-profile #profile-sidebar .lp-user-profile-avatar{max-width:150px}}.lp-user-profile #profile-nav .lp-profile-nav-tabs{margin:0;padding:0;list-style:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{position:relative;margin:0;border-top:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li a{display:block;padding:0 20px;color:#333;font-size:16px;font-weight:500;line-height:50px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{padding:0 20px 0 52px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a>i{display:inline-block;position:absolute;left:24px;width:28px;color:var(--lp-primary-color);font-size:12px;line-height:53px;text-align:left}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{float:right;margin-right:4px;color:#999;font-family:"Font Awesome 5 Free";font-size:10px;font-weight:900;content:"\f054"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li{margin:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li a{border-bottom:1px solid #f9f9f9}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li a:hover{color:var(--lp-primary-color);background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li ul li:hover>a i{color:var(--lp-primary-color);background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active,.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:hover{background:var(--lp-primary-color)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active>a::after,.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:hover>a::after{content:"\f053"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a{padding-left:52px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.wishlist>a::before{position:absolute;left:25px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900;content:"\f004"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.wishlist:hover a::before{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.logout>a::after{display:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs li>a{box-sizing:border-box;height:50px}.lp-user-profile #profile-nav .lp-profile-nav-tabs li>ul{display:none;position:absolute;z-index:1000;top:0;left:100%;min-width:150px;margin:0;padding:0;background:#fff;box-shadow:0 15px 20px 0 rgba(0,0,0,0.05);list-style:none}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a i,.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>a::after,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a i,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>a::after{color:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul,.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover>ul{display:block}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul{position:relative;left:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active{background:#fff}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active>a{color:#ffb606}.lp-user-profile #profile-nav .lp-profile-nav-tabs li.active>ul .active>a i{color:#ffb606}@media(max-width:990px){.lp-user-profile #profile-nav{overflow-x:scroll;border-top:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs{width:max-content}.lp-user-profile #profile-nav .lp-profile-nav-tabs::after{display:table;clear:both;content:""}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{float:left;border:0;border-right:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{height:auto;padding:0 20px 0 45px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{margin-left:10px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.has-child a::after{content:"\f077"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a{padding-left:45px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active a::after{content:"\f078"}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul{display:none;width:max-content;transform:translateX(-20%)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul::after{display:table;clear:both;box-shadow:0 0;content:""}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li{float:left;border-right:1px solid rgba(204,204,204,0.3)}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li:last-child{border-right:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li.active.has-child ul li a{padding:0 10px}.lp-user-profile #profile-nav .lp-profile-nav-tabs li:hover ul{display:none !important}.lp-user-profile #profile-nav .lp-profile-nav-tabs li:not(.has-child)>a::after{display:none}}@media(max-width:560px){.lp-user-profile #profile-nav .lp-profile-nav-tabs>li{max-width:80px}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a{font-size:0}.lp-user-profile #profile-nav .lp-profile-nav-tabs>li>a::after{margin-left:0}}.lp-user-profile .lp-profile-content{float:right;width:calc(100% - 300px);margin-bottom:60px;padding-top:58px}@media(max-width:990px){.lp-user-profile .lp-profile-content{width:100%}}@media(max-width:767px){.lp-user-profile .lp-profile-content .learn-press-tabs__nav{display:block;width:100%;border:0}.lp-user-profile .lp-profile-content .learn-press-tabs__nav::after{display:table;clear:both;content:""}.lp-user-profile .lp-profile-content .learn-press-tabs__tab{float:left;border-right:0}.lp-user-profile .lp-profile-content .learn-press-tabs__tab label{padding-right:25px;padding-left:25px}.lp-user-profile .lp-profile-content .profile-orders{overflow-x:scroll}}.lp-user-profile .lp-profile-content .course-categories,.lp-user-profile .lp-profile-content .course-instructor{margin-bottom:14px}.lp-user-profile .lp-profile-content .course-categories{padding:0}.lp-user-profile .lp-profile-content .lp-button{display:block;margin:0 auto 52px auto;padding:13px 34px;border-color:var(--lp-secondary-color);font-size:14px;font-weight:500;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.lp-user-profile .lp-profile-content .lp-button:hover{border-color:var(--lp-primary-color)}.lp-user-profile ul.learn-press-courses .course{margin:0 0 40px 0}.lp-user-profile .profile-orders .profile-heading{display:none}.lp-user-profile .profile-orders table{margin-top:0}.lp-user-profile .profile-orders .column-order-actions a{margin-right:6px;color:black;text-decoration:underline;font-weight:500}.lp-user-profile .profile-orders .column-order-actions a:hover,.lp-user-profile .profile-orders .column-order-actions a:focus{color:var(--lp-primary-color)}.lp-user-profile #dashboard-general-statistic{margin-bottom:55px;padding-bottom:20px;border-bottom:1px solid #ddd}.lp-user-profile .dashboard-general-statistic__row{display:flex;margin:0 -15px;justify-content:center;flex-wrap:wrap}.lp-user-profile .dashboard-general-statistic__row .statistic-box{min-width:200px;max-width:270px;margin:0 15px 40px 15px;padding:15px 20px;border:1px solid #ccc;border-radius:4px;background:#f9fafc;text-align:center}@media(max-width:990px){.lp-user-profile .dashboard-general-statistic__row .statistic-box{width:45%}}@media(max-width:767px){.lp-user-profile .dashboard-general-statistic__row .statistic-box{width:100%;margin:0 15px 15px}}.lp-user-profile .dashboard-general-statistic__row .statistic-box:hover{background:#eaeaea}.lp-user-profile .dashboard-general-statistic__row[data-col="2"] .statistic-box{width:50%}.lp-user-profile .dashboard-general-statistic__row[data-col="4"] .statistic-box{width:25%}.lp-user-profile .dashboard-general-statistic__row[data-col="5"] .statistic-box{width:20%}.lp-user-profile .statistic-box .statistic-box__text{margin:0 0 7px 0;padding:0;color:#666;font-size:18px;font-weight:400;line-height:1}.lp-user-profile .statistic-box .statistic-box__number{color:#333;font-size:18px;font-weight:500;line-height:1}.lp-user-profile .profile-courses>h3{margin-top:0;margin-bottom:36px;color:#333;font-size:30px;font-weight:600;line-height:1;text-transform:capitalize}.lp-profile-content table.lp-list-table{border-spacing:0;border-top:1px solid #ccc;border-left:1px solid #ccc;margin-bottom:40px}.lp-profile-content table.lp-list-table tr th,.lp-profile-content table.lp-list-table tr td{border-right:1px solid #ccc;border-bottom:1px solid #ccc;text-align:center}.lp-profile-content table.lp-list-table tr td a{color:var(--wp--preset--color--foreground);font-weight:400}.lp-profile-content table.lp-list-table tr td a:hover{color:var(--lp-primary-color)}.lp-profile-content #profile-content-order-details h3{margin-top:0;font-size:30px;line-height:1.5;font-weight:500;margin-bottom:15px;font-family:var(--wp--preset--font-family--system-font)}.profile-basic-information .form-field,form[name=profile-change-password] .form-field{margin:0 10px 24px 10px}.profile-basic-information .form-field>label,form[name=profile-change-password] .form-field>label{margin:0 0 12px 0;color:#333;font-size:16px;font-weight:500;font-style:italic}.profile-basic-information .form-field .form-field-input input,form[name=profile-change-password] .form-field .form-field-input input{height:43px;padding:8px 20px;font-weight:400}.profile-basic-information .form-field .form-field-input input[type=password],form[name=profile-change-password] .form-field .form-field-input input[type=password]{padding:8px 20px}.profile-basic-information .form-field .form-field-input textarea,form[name=profile-change-password] .form-field .form-field-input textarea{padding:9px 20px 16px 20px;font-weight:300;line-height:24px}.profile-basic-information .form-field .form-field-input input,.profile-basic-information .form-field .form-field-input textarea,form[name=profile-change-password] .form-field .form-field-input input,form[name=profile-change-password] .form-field .form-field-input textarea{border:1px solid #ccc;color:#999;font-size:14px;font-style:italic}.profile-basic-information .form-field .form-field-input input:focus,.profile-basic-information .form-field .form-field-input textarea:focus,form[name=profile-change-password] .form-field .form-field-input input:focus,form[name=profile-change-password] .form-field .form-field-input textarea:focus{border-color:var(--lp-primary-color);outline:0;color:#222}.profile-basic-information .form-field .form-field-input ::placeholder,form[name=profile-change-password] .form-field .form-field-input ::placeholder{opacity:1;color:#999}.profile-basic-information .form-field .form-field-input :-ms-input-placeholder,form[name=profile-change-password] .form-field .form-field-input :-ms-input-placeholder{color:#999}.profile-basic-information .form-field .form-field-input ::-ms-input-placeholder,form[name=profile-change-password] .form-field .form-field-input ::-ms-input-placeholder{color:#999}.profile-basic-information .form-field .form-field-input .description,form[name=profile-change-password] .form-field .form-field-input .description{margin-top:15px}@media(max-width:767px){.profile-basic-information .form-field,form[name=profile-change-password] .form-field{margin:0 0 24px 0}}.profile-basic-information .form-field__50,form[name=profile-change-password] .form-field__50{float:left;width:calc(50% - 20px);margin-right:10px}@media(max-width:767px){.profile-basic-information .form-field__50,form[name=profile-change-password] .form-field__50{float:unset;width:100%;margin:0 0 24px 0}}.profile-basic-information .form-field__clear,form[name=profile-change-password] .form-field__clear{clear:both}.profile-basic-information button,form[name=profile-change-password] button{padding:16px 24px;border:0;border-radius:3px;color:#fff;background:var(--lp-primary-color);font-size:16px;font-weight:400;line-height:1}.profile-basic-information button:hover,form[name=profile-change-password] button:hover{opacity:.5;background:var(--lp-primary-color)}.profile-basic-information p,form[name=profile-change-password] p{margin:0}#learn-press-profile-basic-information .form-fields::after{display:block;clear:both;content:""}@media(max-width:767px){#learn-press-profile-basic-information .form-fields{margin:0}}#learn-press-profile-basic-information button[type=submit]{padding:0 15px;height:40px;line-height:40px;border:0;display:inline-flex;align-items:center;justify-content:center;background-color:var(--lp-primary-color);color:white;font-size:16px;font-weight:400;-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}#learn-press-profile-basic-information button[type=submit]:hover{opacity:.5;background-color:var(--lp-primary-color)}.recover-order__title{margin-bottom:5px}.recover-order__description{margin-bottom:20px;color:#999;font-size:.8em;font-style:italic}div.order-recover{display:flex}div.order-recover>.button-recover-order{margin:0;margin-left:20px;flex:0 0 auto}div.order-recover>.button-recover-order.loading::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}div.order-recover input[type=text]{width:100%;height:43px;margin-right:10px;padding:0 22px;border:1px solid #ccc;border-radius:3px;background-color:#fff;font-size:14px;font-weight:300;font-style:italic;line-height:43px;flex:1 1 auto}.learn-press-profile-course__progress .lp_profile_course_progress{border:1px solid #eee;border-top:0;overflow-x:auto}.learn-press-profile-course__progress .lp_profile_course_progress__item{display:grid;align-items:center;padding:15px;border-top:1px solid #eee;grid-template-columns:90px 1fr 80px 190px 140px;column-gap:20px}.learn-press-profile-course__progress .lp_profile_course_progress__item div img{max-width:60px;height:auto}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__item div img{max-width:100%}}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__item{display:block}}.learn-press-profile-course__progress .lp_profile_course_progress__header{background-color:#eee}@media(max-width:575px){.learn-press-profile-course__progress .lp_profile_course_progress__header{display:flex;overflow-x:auto;white-space:nowrap;justify-content:flex-end}}.lp_profile_course_progress__nav button.loading::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.entry-content ul.learn-press-profile-course__tab__inner{padding:0}.content ul.learn-press-courses{margin-left:-15px;margin-right:-15px}.content ul.learn-press-courses[data-layout=list]{margin:0}.learn-press-profile-course__tab__inner{display:flex;margin:40px 0 0 0 !important;padding:0 !important;background:#eee;list-style:none !important}.learn-press-profile-course__tab__inner>li{list-style:none;margin:0 !important}.learn-press-profile-course__tab__inner>li:hover{cursor:pointer}.learn-press-profile-course__tab__inner a{display:inline-block;padding:15px 30px;font-weight:600;position:relative}.learn-press-profile-course__tab__inner a.active{color:var(--lp-primary-color);background:#fff}.learn-press-profile-course__tab__inner a.active::before{content:"";height:4px;width:100%;background-color:var(--lp-primary-color);position:absolute;top:0;left:0;right:auto}.learn-press-course-tab-filters .learn-press-filters{margin-top:20px;margin-left:0;padding:0;list-style:none}.learn-press-course-tab-filters .learn-press-filters a.active{color:var(--lp-primary-color)}.lp-profile-content ul{list-style:none !important;padding:0 !important}.learnpress_avatar__form label{display:inline-block}.learnpress_avatar__form input[type=file]{display:none}.learnpress_avatar__form__upload{display:flex;width:200px;height:200px;border:1px dashed #ccc;border-radius:3px;background-color:#fafafa;font-size:14px;font-weight:300;font-style:italic;line-height:43px;text-align:center;cursor:pointer;align-items:center;justify-content:center}.learnpress_avatar__form__upload div{line-height:1.4}.learnpress_avatar__button--loading::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}button.learnpress_avatar__button{height:40px;padding:0 15px;border:0;background:var(--lp-primary-color);color:white;margin-top:15px;border-radius:3px}button.learnpress_avatar__button+button{margin-left:15px;margin-right:0}#primary .learn-press-courses[data-size="3"] .course{width:50%}body.learnpress .learn-press-tabs .learn-press-tabs__tab,body.learnpress .attachment-recent-works-thumbnail{border-radius:0}#learn-press-course-tabs.show-all .course-tab-panel{margin-bottom:40px}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .course-tab-panels .course-tab-panel:nth-child(1){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .learn-press-nav-tabs .course-nav:nth-child(1){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(1):checked ~ .learn-press-nav-tabs .course-nav:nth-child(1) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .course-tab-panels .course-tab-panel:nth-child(2){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .learn-press-nav-tabs .course-nav:nth-child(2){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(2):checked ~ .learn-press-nav-tabs .course-nav:nth-child(2) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .course-tab-panels .course-tab-panel:nth-child(3){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .learn-press-nav-tabs .course-nav:nth-child(3){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(3):checked ~ .learn-press-nav-tabs .course-nav:nth-child(3) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .course-tab-panels .course-tab-panel:nth-child(4){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .learn-press-nav-tabs .course-nav:nth-child(4){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(4):checked ~ .learn-press-nav-tabs .course-nav:nth-child(4) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .course-tab-panels .course-tab-panel:nth-child(5){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .learn-press-nav-tabs .course-nav:nth-child(5){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(5):checked ~ .learn-press-nav-tabs .course-nav:nth-child(5) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .course-tab-panels .course-tab-panel:nth-child(6){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .learn-press-nav-tabs .course-nav:nth-child(6){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(6):checked ~ .learn-press-nav-tabs .course-nav:nth-child(6) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .course-tab-panels .course-tab-panel:nth-child(7){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .learn-press-nav-tabs .course-nav:nth-child(7){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(7):checked ~ .learn-press-nav-tabs .course-nav:nth-child(7) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .course-tab-panels .course-tab-panel:nth-child(8){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .learn-press-nav-tabs .course-nav:nth-child(8){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(8):checked ~ .learn-press-nav-tabs .course-nav:nth-child(8) label{color:var(--lp-primary-color);background:#fff}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .course-tab-panels .course-tab-panel:nth-child(9){display:block}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .learn-press-nav-tabs .course-nav:nth-child(9){border-bottom:0}#learn-press-course-tabs input[name=learn-press-course-tab-radio]:nth-child(9):checked ~ .learn-press-nav-tabs .course-nav:nth-child(9) label{color:var(--lp-primary-color);background:#fff}.course-tab-panels .course-tab-panel{padding-top:30px}.course-tab-panel{display:none}.course-tab-panel.active{display:block}.course-tab-panel .course-description{color:#666;font-size:16px;font-weight:300;line-height:26px}.course-tab-panel .course-description h4{margin-top:0;margin-bottom:1.125rem;color:#333;font-size:18px;font-weight:500}.course-tab-panel .course-description p{line-height:inherit}.course-tab-panel .course-description img{max-width:100%;height:auto;vertical-align:middle}.course-tab-panel .lp-course-author{display:flex;margin-bottom:40px}@media(max-width:767px){.course-tab-panel .lp-course-author{flex-direction:column}}.course-tab-panel .lp-course-author .course-author__pull-left{margin-right:30px;text-align:center;align-items:center}@media(max-width:767px){.course-tab-panel .lp-course-author .course-author__pull-left{margin-right:0;margin-bottom:30px}}.course-tab-panel .lp-course-author img{width:50px;height:50px;margin-bottom:20px;border-radius:50%;object-fit:cover;object-position:center}.course-tab-panel .lp-course-author .course-author__pull-right{flex:1}@media(max-width:767px){.course-tab-panel .lp-course-author .course-author__pull-right{width:100%;text-align:center}}.course-tab-panel .lp-course-author .author-title{margin-bottom:18px}.course-tab-panel .lp-course-author .author-title a{color:#333;box-shadow:none;font-size:18px;font-weight:500;text-transform:capitalize}.course-tab-panel .lp-course-author .author-title a:hover{color:var(--lp-primary-color)}.course-tab-panel .lp-course-author .author-description{color:#666;font-size:16px;font-weight:300;line-height:26px}.course-tab-panel .lp-course-author .author-socials{display:grid;grid-template-columns:repeat(4,33px);gap:10px;justify-content:center}.course-tab-panel .lp-course-author .author-socials>a{display:inline-block;width:33px;height:33px;margin:0;border:1px solid #ededed;border-radius:50%;color:#878787;box-shadow:none;font-size:14px;line-height:33px;text-align:center;vertical-align:middle;transition:all .3s}.course-tab-panel .lp-course-author .author-socials>a:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.course-tab-panel .lp-course-author .author-socials .fa-googleplus::before{content:"\f0d5"}.course-summary div.lp-list-co-instructor{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}.course-summary div.lp-list-co-instructor__item{display:flex;column-gap:30px}@media(max-width:767px){.course-summary div.lp-list-co-instructor__item{align-items:center;flex-direction:column;padding:0 15px;column-gap:0;row-gap:10px}}.course-summary div.lp-list-co-instructor__avatar>img{width:100%;max-width:96px;border-radius:999px}.course-summary div.lp-list-co-instructor__bio{flex:1}.course-summary div.lp-list-co-instructor__bio__top>a{font-size:18px;font-weight:600}.course-summary div.lp-list-co-instructor__bio__description{font-size:1rem}.course-summary .course-price{margin-bottom:10px}.course-summary .course-price .origin-price,.course-summary .course-price .price{vertical-align:middle}.course-summary .course-price .origin-price{margin-right:10px;font-size:18px;font-style:italic;text-decoration:line-through}.course-summary .course-price .price{font-size:24px}.course-summary .course-summary-sidebar .lp-course-buttons{margin-bottom:20px}.course-summary .course-featured-review .featured-review__title{margin-top:0;margin-bottom:6px;font-size:1.2rem;font-weight:500}.course-summary .course-featured-review .featured-review__stars{padding-bottom:12px;color:var(--lp-primary-color);font-size:16px}.course-summary .course-featured-review .featured-review__content{position:relative;color:#666;font-size:1rem;font-style:italic;line-height:24px}.course-summary .course-featured-review .featured-review__content::after{position:absolute;top:-42px;right:-15px;color:rgba(102,102,102,0.1);font-family:Arial;font-size:180px;font-weight:700;font-style:normal;content:"‘‘";transform:rotate(180deg)}.course-summary .course-tags a{display:inline-block;padding:3px 5px;border-radius:4px;color:#fff;background:#9aa5ab;font-size:12px;line-height:1}.edit-content{margin-left:5px}ul.learn-press-nav-tabs{display:flex;margin:0;padding:0;border:1px solid rgba(204,204,204,0.3);border-bottom:0;background:#f1f2f8;list-style:none}ul.learn-press-nav-tabs .course-nav{float:left;position:relative;margin:0;border-right:1px solid rgba(204,204,204,0.3);border-bottom:1px solid rgba(204,204,204,0.3);list-style:none}ul.learn-press-nav-tabs .course-nav:first-child.active::after{position:absolute;top:-1px;left:-1px;width:1px;height:100%;background:#fff;content:""}ul.learn-press-nav-tabs .course-nav:last-child{border-right:0}ul.learn-press-nav-tabs .course-nav:last-child.active::after{position:absolute;top:-1px;right:-2px;width:2px;height:100%;background:#fff;content:""}ul.learn-press-nav-tabs .course-nav.active{border-bottom:0}ul.learn-press-nav-tabs .course-nav.active::before{position:absolute;top:-1px;left:0;width:100%;height:4px;background:var(--lp-primary-color);content:""}ul.learn-press-nav-tabs .course-nav.active label{color:var(--lp-primary-color);background-color:white}ul.learn-press-nav-tabs .course-nav a{display:inline-block;padding:10px 20px;border-bottom:0;outline:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}ul.learn-press-nav-tabs .course-nav a:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}ul.learn-press-nav-tabs[data-tabs] .course-nav{flex:1}ul.learn-press-nav-tabs[data-tabs] .course-nav a{width:100%;text-align:center}ul.learn-press-nav-tabs::after{display:block;clear:both;content:""}@media(max-width:767px){ul.learn-press-nav-tabs{display:grid;grid-template-columns:repeat(2,1fr);max-height:none}}.course-item-popup #tab-curriculum{display:block}.course-curriculum ul.curriculum-sections{position:relative;z-index:499;margin:0;padding:0;list-style:none}.course-curriculum ul.curriculum-sections .closed .section-item__loadmore{display:none}.course-curriculum ul.curriculum-sections .section{margin:0;padding:0;flex-wrap:wrap}.course-curriculum ul.curriculum-sections .section:last-child{padding:0}.course-curriculum ul.curriculum-sections .section.section-empty .section-header{margin-bottom:20px}.course-curriculum ul.curriculum-sections .section.section-empty .learn-press-message{margin-right:15px;margin-left:15px}.course-curriculum ul.curriculum-sections .section-title.c+.section-desc{display:block}.course-curriculum ul.curriculum-sections .section-title.c span.show-desc::before{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg);top:0}.course-curriculum ul.curriculum-sections .item-meta.duration{background:#d9e0f1}.course-curriculum .section-item__loadmore{display:flex;justify-content:center;align-items:center}.course-curriculum .section-item__loadmore button{display:inline-flex;margin-top:10px;margin-right:auto;margin-left:auto;padding:10px 20px;border:1px solid #ccc;border-radius:4px;outline:0;color:#222;background:#f7f7f7;box-shadow:none;font-weight:500;justify-content:center;align-items:center;cursor:pointer;font-size:1rem;font-family:sans-serif}.course-curriculum .section-item__loadmore.loading button::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.course-curriculum .section-header{display:table;width:100%;padding:0 0 26px 0;border-bottom:0;border-bottom:1px solid #d9e0f1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-curriculum .section-header .section-title,.course-curriculum .section-header .section-desc{margin:0}.course-curriculum .section-header span.show-desc{display:inline-block;position:absolute;top:50%;right:30px;width:20px;height:20px;transform:translate(0,-50%)}.course-curriculum .section-header span.show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f107"}.course-curriculum .section-header span.show-desc:hover::before{border-top-color:#ccc}.course-curriculum .section-header .section-desc{margin:0;margin-top:10px;font-size:14px;line-height:21px;color:#999;font-style:italic}.course-curriculum .section-header .section-meta{display:block;padding-top:17px;padding-bottom:15px;font-size:14px;text-align:right;vertical-align:middle;white-space:nowrap}.course-curriculum .section-item{width:100%}.course-curriculum .section-content{margin:0 0 15px 0;padding:0;list-style:none}.course-curriculum .section-content .course-item-meta{display:table-cell;padding:10px 0;text-align:right;vertical-align:middle;white-space:nowrap}.course-curriculum .section-content .course-item-meta .item-meta{display:inline-block;margin-left:14px;border-radius:3px;color:#fff;font-size:14px;line-height:23px;text-align:center;vertical-align:middle;padding:0 8px}.course-curriculum .section-content .course-item-meta .item-meta.final-quiz{background:#14c4ff}.course-curriculum .section-content .course-item-meta .item-meta.trans{padding:0}.course-curriculum .section-content .course-item-meta .count-questions{background:#9672cf}.course-curriculum .section-content .course-item-meta .duration{background:silver}.course-curriculum .section-content .course-item-meta .course-item-status{padding:0;color:#999;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-curriculum .section-content .course-item-meta .course-item-status::before{font-family:"Font Awesome 5 Free";font-size:14px;font-weight:900;vertical-align:middle;text-transform:lowercase;content:"\f00c"}.course-curriculum .section-content .course-item-preview{font-style:normal;padding:0}.course-curriculum .section-content .course-item-preview::before{color:#fff;padding:0 8px;background:#00adff;display:inline-flex;align-items:center;justify-content:center;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;vertical-align:baseline;content:attr(data-preview)}.course-curriculum .course-item{display:flex;position:relative;margin:0 0 2px 0;padding:0 15px 0 30px;background:rgba(241,242,248,0.4);font-size:14px;transition:padding-left linear .15s}@media(max-width:767px){.course-curriculum .course-item{padding:0 0 0 15px}}.course-curriculum .course-item>span{display:flex;width:28px;color:#666;font-size:16px;font-weight:300;align-items:center}.course-curriculum .course-item .section-item-link{display:table;padding-right:15px;padding-left:0;border-bottom:0;outline:0;box-shadow:none;line-height:1.5;color:#777;text-decoration:none}.course-curriculum .course-item .section-item-link:hover .item-name{color:var(--lp-primary-color)}.course-curriculum .course-item .section-item-link::before{display:table-cell;display:table-cell;left:0;width:20px;padding:15px 0;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:18px;font-weight:400;vertical-align:middle;transition:left linear .15s}.course-curriculum .course-item .item-icon,.course-curriculum .course-item .item-name{display:table-cell;padding:17px 16px;color:#333;font-size:16px;font-weight:600;vertical-align:middle}.course-curriculum .course-item .item-icon::before{font-size:18px}.course-curriculum .course-item .item-icon.icon-lock{float:right;margin-top:15px}.course-curriculum .course-item.course-item-lp_quiz .section-item-link::before{content:"\f059"}.course-curriculum .course-item.course-item-lp_lesson .section-item-link::before{content:"\f15b"}.course-curriculum .course-item.course-item-lp_lesson.course-item-type-video .section-item-link::before{content:"\f03d"}.course-curriculum .course-item.course-item-lp_lesson.course-item-type-audio .section-item-link::before{content:"\f028"}.course-curriculum .course-item.item-locked .course-item-status::before{color:var(--lp-secondary-color);content:"\f023"}.course-curriculum .course-item.has-status{padding-top:1px}.course-curriculum .course-item.has-status.status-completed .course-item-status::before,.course-curriculum .course-item.has-status.status-evaluated .course-item-status::before{color:#3bb54a}.course-curriculum .course-item.has-status.item-failed .course-item-status::before,.course-curriculum .course-item.has-status.failed .course-item-status::before{border-color:#f02425;color:#f02425;content:"\f00d"}.course-curriculum .course-item::before{position:absolute;top:50%;left:0;width:3px;height:0;background:#00adff;content:"";transition:height linear .15s,top linear .15s}.course-curriculum .course-item.current{padding-left:10px;background:#f9f9f9}.course-curriculum .course-item.current a::before{left:10px}.course-curriculum .course-item.current::before{top:0;height:100%}.course-curriculum .section-left{vertical-align:top}.course-curriculum .section-left .section-title{padding:0;color:#666;font-size:1.4rem;letter-spacing:0;text-transform:capitalize;display:block}.course-curriculum .curriculum-more__button{display:flex;width:100%;margin-top:20px;margin-bottom:20px;padding:10px 0;border:0;outline:0;color:#fff;background:#333;box-shadow:none;justify-content:center;align-items:center;cursor:pointer;font-size:1rem;font-family:sans-serif}.course-curriculum .curriculum-more__button.loading::before{display:inline-block;margin-right:5px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}body.course-item-popupx{overflow:hidden;_opacity:0}body.course-item-popupx #learn-press-course-curriculum{overflow:auto;position:fixed;z-index:9999;top:32px;bottom:0;left:0;width:400px;border-right:1px solid #ddd;background:#fff}body.course-item-popupx #learn-press-course-curriculum .section-header{padding:0 15px}body.course-item-popupx #learn-press-course-curriculum .section-header .section-desc{margin:-10px 0 5px}body.course-item-popupx #learn-press-course-curriculum .course-item{padding-right:15px;padding-left:15px}body.course-item-popupx #learn-press-course-curriculum .course-item a::before{left:15px}body.course-item-popupx #learn-press-content-item{overflow:hidden;position:fixed;z-index:9999;top:32px;right:0;bottom:0;left:400px;background:#fff}body.course-item-popupx #learn-press-content-item .content-item-wrap{max-width:900px;margin:10px auto}body.course-item-popupx #learn-press-content-item .course-item-title{font-size:1.4rem}body.course-item-popupx #learn-press-content-item .content-question-summary .review-heading{text-align:center}body.course-item-popupx #learn-press-content-item .content-question-summary .question-title{margin-bottom:10px;font-size:1.2rem}body.course-item-popupx #content-item-nav{position:fixed;z-index:99999;right:0;bottom:0;left:400px;height:60px;border-top:1px solid #ddd;background:#f5f5f5}body.course-item-popupx #content-item-nav .content-item-nav-wrap{max-width:900px;margin:10px auto}body.course-item-popupx #content-item-nav button{height:40px;padding:0 20px;line-height:40px}body.course-item-popupx .comment-form-textarea{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.course-item-popupx.wpadminbar #learn-press-course-curriculum,body.course-item-popupx.wpadminbar #learn-press-content-item{top:92px}body.course-item-popupx.wpadminbar .content-item-description{margin-bottom:20px}body.course-item-popupx .content-item-summary{margin-bottom:50px}body.course-item-popupx .content-item-summary>h3{margin-bottom:20px}body.course-item-popupx .content-item-summary.content-item-video .entry-video{position:absolute;top:0;left:0;width:100%;background:#000;line-height:1}body.course-item-popupx .content-item-summary.content-item-video .entry-video iframe{width:100%;max-width:900px;margin-bottom:0;vertical-align:top}body.course-item-popupx .learn-press-content-protected-message{margin-bottom:50px;padding:20px;background:#ffe0e0}body.course-item-popupx.content-only #learn-press-content-item{z-index:9999999;top:0;bottom:0;left:0}body.course-item-popupx.content-only #learn-press-content-item .content-item-scrollable{bottom:0}body #ifr-course-item{position:absolute;z-index:999999;top:0;left:0;width:100%;height:100%;background:#fff}body .content-item-summary .form-button-finish-course,body .lp-quiz-buttons .form-button-finish-course{float:right}#wpadminbar #wp-admin-bar-edit-lp_quiz .ab-item::before,#wpadminbar #wp-admin-bar-edit-lp_lesson .ab-item::before,#wpadminbar #wp-admin-bar-edit-lp_question .ab-item::before{top:2px;font-family:"Font Awesome 5 Free"}#wpadminbar #wp-admin-bar-edit-lp_quiz .ab-item::before{content:"\f017"}#wpadminbar #wp-admin-bar-edit-lp_lesson .ab-item::before{content:"\f15c"}#wpadminbar #wp-admin-bar-edit-lp_question .ab-item::before{content:"\f29c"}.scroll-wrapper{overflow:hidden;opacity:0}.scroll-wrapper .scroll-element{background:transparent}.scroll-wrapper .scroll-element.scroll-y.scroll-scrolly_visible{transition:opacity .25s}.scroll-wrapper:hover .scroll-element.scroll-y.scroll-scrolly_visible{opacity:.7}.course-remaining-time .label-enrolled{font-size:inherit}.learn-press-form.completed button::before{margin-right:10px;font-family:"Font Awesome 5 Free";font-size:18px;content:"\f00c"}.lp-course-progress{position:relative}.lp-course-progress .lp-passing-conditional{position:absolute;top:0;width:3px;height:6px;margin-left:-1px;background:var(--lp-secondary-color)}.viewing-course-item .section-header .section-desc{display:none}.viewing-course-item .content-item-wrap{margin-top:50px}.course-meta{display:flex;margin-bottom:40px}.course-meta .course-meta__pull-left,.course-meta .course-meta__pull-right{display:flex;flex-wrap:wrap}.course-meta .course-meta__pull-left{flex:1}.course-meta .course-meta__pull-left .meta-item{margin-right:10px}.course-meta .course-meta__pull-right{flex:0 0 50%}.course-meta .course-meta__pull-right .meta-item{margin-left:10px}.course-meta.course-meta-primary .meta-item{flex:1}.course-meta.two-columns .course-meta{flex:1}.course-extra-box{margin-bottom:3px;border:1px solid rgba(204,204,204,0.3);border-radius:5px}.course-extra-box__title{--extra-height:50px;display:flex;align-items:center;position:relative;height:var(--extra-height);margin:0 !important;padding:0 45px 0 38px;background:rgba(181,187,211,0.15);font-size:1.1rem;font-weight:600;cursor:pointer}@media(max-width:767px){.course-extra-box__title{padding-left:15px}}.course-extra-box__title::after{position:absolute;top:0;right:20px;color:#666;font-family:"Font Awesome 5 Free";line-height:var(--extra-height);content:"\f0d7"}.course-extra-box__content{display:none}.course-extra-box__content-inner{-webkit-animation-name:course-extra-box__content-inner-transform;animation-name:course-extra-box__content-inner-transform;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-direction:normal;animation-direction:normal}.course-extra-box__content ul,.course-extra-box__content li{list-style:none}.course-extra-box__content ul{margin:0;padding:0}.course-extra-box__content li{margin:0;padding:10px 38px;border-bottom:1px solid rgba(204,204,204,0.3);color:#666;font-size:16px;font-weight:300}@media(max-width:767px){.course-extra-box__content li{padding-left:30px;padding-right:30px}}.course-extra-box__content li::before{margin-right:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900;content:"\f00c"}.course-extra-box__content li:last-child{border-bottom:0}.course-extra-box:last-child{margin-bottom:60px}.course-extra-box.active .course-extra-box__title::after{content:"\f0d8"}.course-extra-box+.comment-respond,.course-extra-box+.comments-area{margin-top:60px;margin-bottom:30px}.course-extra-box+.course-tabs{margin-top:60px}input[name=course-extra-box-ratio]{display:none}input[name=course-extra-box-ratio]:checked+.course-extra-box .course-extra-box__content{display:block}input[name=course-extra-box-ratio]:checked+.course-extra-box .course-extra-box__content .course-extra-box__content-inner{transform:scale(1)}@-webkit-keyframes course-extra-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(5%);-moz-transform:translateX(5%);-ms-transform:translateX(5%);-o-transform:translateX(5%);transform:translateX(5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@keyframes course-extra-box__content-inner-transform{from{opacity:0;transform:translateX(5%)}to{opacity:1;transform:translateX(0)}}.course-tab-panel-faqs{padding-top:64px}.course-tab-panel-faqs .course-faqs-box{margin-bottom:20px;border:1px solid rgba(204,204,204,0.6);border-radius:5px}.course-tab-panel-faqs .course-faqs-box__title{display:block;position:relative;margin:0;padding:20px 45px 20px 25px;font-size:1.1rem;font-weight:500;line-height:1.7;cursor:pointer}.course-tab-panel-faqs .course-faqs-box__title::after{position:absolute;top:50%;right:28px;color:#6c6c6c;font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900;content:"\f078";transform:translateY(-50%)}.course-tab-panel-faqs .course-faqs-box:last-child{margin-bottom:40px}.course-tab-panel-faqs .course-faqs-box:hover{background:rgba(241,242,248,0.4)}.course-tab-panel-faqs .course-faqs-box:hover .course-faqs-box__title{color:var(--lp-primary-color)}.course-tab-panel-faqs .course-faqs-box__content{display:none}.course-tab-panel-faqs .course-faqs-box__content-inner{padding:0 25px 25px 25px;color:#666;font-size:1rem;font-weight:300;line-height:26px;-webkit-animation-name:course-faqs-box__content-inner-transform;animation-name:course-faqs-box__content-inner-transform;-webkit-animation-duration:.3s;animation-duration:.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-direction:normal;animation-direction:normal}input[name=course-faqs-box-ratio]{display:none}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__content{display:block}input[name=course-faqs-box-ratio]:checked+.course-faqs-box{background:rgba(241,242,248,0.4)}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__title{color:var(--lp-primary-color)}input[name=course-faqs-box-ratio]:checked+.course-faqs-box .course-faqs-box__title::after{content:"\f077"}@-webkit-keyframes course-faqs-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(5%);-moz-transform:translateX(5%);-ms-transform:translateX(5%);-o-transform:translateX(5%);transform:translateX(5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@keyframes course-faqs-box__content-inner-transform{from{opacity:0;-webkit-transform:translateX(5%);-moz-transform:translateX(5%);-ms-transform:translateX(5%);-o-transform:translateX(5%);transform:translateX(5%)}to{opacity:1;-webkit-transform:translateX(0);-moz-transform:translateX(0);-ms-transform:translateX(0);-o-transform:translateX(0);transform:translateX(0)}}@media screen and (max-width:1300px){body.course-item-popup #learn-press-course-curriculum{width:300px}body.course-item-popup #learn-press-course-curriculum .progress-bg{width:40px}body.course-item-popup #content-item-nav{left:300px}body.course-item-popup .section-desc{display:none}}@media screen and (max-width:1200px){body.course-item-popupx #learn-press-course-curriculum{width:300px}body.course-item-popupx #content-item-nav{left:300px}body.course-item-popupx #learn-press-content-item .content-item-nav-wrap,body.course-item-popupx #learn-press-content-item .content-item-wrap{width:90%}}@media screen and (max-width:768px){body.course-item-popup .course-curriculum{width:200px}body.course-item-popup #content-item-nav{left:200px}body.course-item-popup #learn-press-content-item .content-item-nav-wrap,body.course-item-popup #learn-press-content-item .content-item-wrap{width:90%}body.course-item-popup.wpadminbar #learn-press-content-item,body.course-item-popup.wpadminbar #learn-press-course-curriculum{top:106px}.learn-press-course-results-progress{margin-right:0}.learn-press-course-results-progress .items-progress,.learn-press-course-results-progress .course-progress{float:none;width:100%;margin-right:0;margin-bottom:20px}}.lp-quiz-buttons{margin-bottom:20px;display:block;clear:both;content:""}.quiz-progress{margin-bottom:30px;background:#e7f7ff}.quiz-progress .progress-items{display:flex}.quiz-progress .progress-items .progress-item{position:relative;color:#777;font-size:15px;flex:1}.quiz-progress .progress-items .progress-item .progress-number,.quiz-progress .progress-items .progress-item .progress-label{display:block;line-height:1;text-align:center}.quiz-progress .progress-items .progress-item .progress-number{margin:15px 0 10px 0;font-size:20px}.quiz-progress .progress-items .progress-item .progress-label{margin-bottom:15px;font-size:14px}.quiz-progress .progress-items .progress-item i{display:none;float:left;width:60px;height:60px;color:#fff;background:#00adff;font-size:30px;line-height:60px;text-align:center}.quiz-progress .progress-items .progress-item::after{display:block;clear:both;content:""}.answer-options{margin:0;padding:0;list-style:none}.answer-options .answer-option{display:flex;overflow:hidden;position:relative;margin:0 0 18px 0;padding:10px;color:#777;background:#f5f5f5;font-size:20px;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-transition:background linear .25s;-moz-transition:background linear .25s;-ms-transition:background linear .25s;-o-transition:background linear .25s;transition:background linear .25s}.answer-options .answer-option .option-title{display:table-cell;font-size:smaller}.answer-options .answer-option .option-title .option-title-content{display:inline-block;vertical-align:middle}.answer-options .answer-option .option-title::before{position:absolute;top:0;bottom:0;left:0;width:3px;background:#ddd;content:"";-webkit-transition:background linear .25s;-moz-transition:background linear .25s;-ms-transition:background linear .25s;-o-transition:background linear .25s;transition:background linear .25s}.answer-options .answer-option input[type=checkbox],.answer-options .answer-option input[type=radio]{-webkit-appearance:initial;-moz-appearance:initial;position:relative;z-index:10;width:35px;min-width:35px;height:35px;margin:0 10px 0 3px;border:1px solid #cfcfcf;background:#f9fafc;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.answer-options .answer-option input[type=checkbox]:focus,.answer-options .answer-option input[type=radio]:focus{outline:0}.answer-options .answer-option input[type=checkbox]::after,.answer-options .answer-option input[type=radio]::after{margin-top:-10px;position:absolute;top:18px;left:9px;box-sizing:content-box;opacity:0;color:#3db748;font-family:"Font Awesome 5 Free";font-weight:900;font-size:16px;content:"\f00c"}.answer-options .answer-option input[type=checkbox]:checked ~ .option-title .option-title-content,.answer-options .answer-option input[type=radio]:checked ~ .option-title .option-title-content{position:relative}.answer-options .answer-option input[type=checkbox]:checked ~ .option-title::before,.answer-options .answer-option input[type=radio]:checked ~ .option-title::before{background:#00adff}.answer-options .answer-option input[type=checkbox]:checked::after,.answer-options .answer-option input[type=radio]:checked::after{opacity:1}.answer-options .answer-option input[type=checkbox]::after{margin-top:0;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.answer-options .answer-option input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.answer-options .answer-option input[type=radio]::before{border-radius:50%}.answer-options .answer-option .option-title{margin:0}.answer-options .answer-option:hover{background:#e1f5ff}.answer-options .answer-option.answer-correct{background:#e1f5ff}.answer-options .answer-option.answer-correct input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answer-correct input[type=checkbox]:checked ~ .option-title::before{background:#e1f5ff}.answer-options .answer-option.answered-correct input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answered-correct input[type=checkbox]:checked ~ .option-title::before{background:#00adff}.answer-options .answer-option.answered-wrong input[type=radio]::before,.answer-options .answer-option.answered-wrong input[type=radio]::after,.answer-options .answer-option.answered-wrong input[type=checkbox]::before,.answer-options .answer-option.answered-wrong input[type=checkbox]::after{border-color:red}.answer-options .answer-option.answered-wrong input[type=radio]:checked ~ .option-title::before,.answer-options .answer-option.answered-wrong input[type=checkbox]:checked ~ .option-title::before{background:red}button[data-counter]{position:relative}button[data-counter]::after{padding-left:5px;content:"(+" attr(data-counter) ")"}.quiz-result{max-width:320px;margin:20px auto 48px;text-align:center}.quiz-result .result-heading{display:none}.quiz-result.passed .result-message{background:#3bb54a}.quiz-result.passed .result-message::after{content:"\f00c"}.quiz-result .result-message{margin-bottom:30px;padding:10px 0 !important;color:#fff;background:#f02425;font-size:16px;line-height:22px;font-weight:400;display:flex;align-items:center;justify-content:center;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.quiz-result .result-message::after{margin-left:10px;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f00d"}.quiz-result .result-grade .result-achieved,.quiz-result .result-grade .result-require{display:inline-block;margin:0 auto}.quiz-result .result-grade .result-achieved{padding-bottom:7px;border-bottom:1px solid #999;color:#333;font-size:28px;font-weight:500;line-height:1}.quiz-result .result-grade .result-require{display:block;padding-top:5px;color:#666;font-size:16px;font-weight:400;line-height:1}.quiz-result .result-grade .result-message{font-size:14px}.quiz-result.passed .result-achieved{color:#04adff}.quiz-result.passed .result-message strong{color:#04adff}.quiz-result .result-statistic{margin:0;padding:0;text-align:left;list-style:none}.quiz-result .result-statistic .result-statistic-field{display:flex;margin:0}.quiz-result .result-statistic .result-statistic-field+li{border-top:1px dashed #ccc}.quiz-result .result-statistic .result-statistic-field span,.quiz-result .result-statistic .result-statistic-field p{margin:0;flex:1}.quiz-result .result-statistic .result-statistic-field span{color:#666;font-size:16px;font-weight:400;line-height:35px}.quiz-result .result-statistic .result-statistic-field span::before{display:inline-block;width:15px;margin-right:10px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900}.quiz-result .result-statistic .result-statistic-field p{color:#333;font-size:16px;font-weight:500;line-height:35px;text-align:right}.quiz-result .result-statistic .result-statistic-field.result-time-spend label::before{font-weight:400;content:"\f017"}.quiz-result .result-statistic .result-statistic-field.result-point label::before{font-weight:400;content:"\f005"}.quiz-result .result-statistic .result-statistic-field.result-questions label::before{font-weight:400;content:"\f059"}.quiz-result .result-statistic .result-statistic-field.result-questions-correct label::before{color:#3db748;content:"\f00c"}.quiz-result .result-statistic .result-statistic-field.result-questions-wrong label::before{color:#f02425;content:"\f00d"}.quiz-result .result-statistic .result-statistic-field.result-questions-skipped label::before{color:#ddd;content:"\f2f5"}.quiz-status{position:sticky;z-index:99;top:0;right:0;left:0;margin:0 0 35px 0}.quiz-status>div{display:flex;box-sizing:border-box;width:100%;max-width:792px;height:60px;margin:0 auto;padding:5px 10px 5px 30px;border-radius:4px;background:var(--lp-primary-color);justify-content:center;align-items:center}@media(max-width:480px){.quiz-status>div{display:block;height:auto;text-align:center;padding:15px}.quiz-status>div .questions-index{margin-bottom:10px}}.quiz-status>div>div{display:flex;flex-direction:row-reverse;flex:0 0 50%;align-items:center}@media(max-width:480px){.quiz-status>div>div{justify-content:center}}.quiz-status>div .current-point{display:none}.quiz-status .questions-index{display:inline-block;color:#666;font-size:16px;font-weight:400;line-height:26px}.quiz-status .questions-index span{color:#333;font-weight:500}.quiz-status .countdown{position:relative;min-width:120px;margin-right:5px;padding:12px 29px;color:#333;background:#fff;font-size:14px;font-weight:400;line-height:1;text-align:center}.quiz-status .countdown .fas{position:absolute;top:50%;left:10px;color:#333;font-size:14px;transform:translateY(-50%)}.quiz-status .countdown .clock{display:none;width:40px;height:40px}.quiz-status .countdown .clock::before{position:absolute;width:40px;height:40px;border:4px solid #b1c1e6;border-radius:50%;content:"";-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.quiz-status .countdown .clock .circle-progress-bar{display:inline-block;position:relative;width:40px;height:40px;stroke:#5383f7}.quiz-status .countdown .clock .circle-progress-bar .circle-progress-bar__circle{transition:.35s stroke-dashoffset;transform:rotate(-90deg);transform-origin:50% 50%}.quiz-status .countdown .clock.x .circle-progress-bar__circle{stroke:red}.quiz-status .submit-quiz button{margin:0 0 0 10px;border:0;border-radius:0;background:#fff;text-transform:uppercase}.quiz-status .submit-quiz button:hover{background:var(--lp-secondary-color)}.quiz-status.submitting .submit-quiz button{background:#ddd}.question-numbers{text-align:center;list-style:none}.question-numbers li{display:inline-block;position:relative;margin-bottom:3px}.question-numbers li a{display:block;min-width:20px;padding:8px;border:1px solid #ddd;color:#999;background:#f5f5f5;box-shadow:none;font-size:12px;line-height:1}.question-numbers li a span{vertical-align:middle}.question-numbers li a:hover{border:1px solid #3880a2;color:#fff;background:#00adff}.question-numbers li.current a{border-color:#3880a2;color:#fff !important;background:#00adff}.question-numbers li.current.skipped::after{background:#fff}.question-numbers li.answered a::after{margin-left:3px;font-family:"Font Awesome 5 Free";font-size:8px;vertical-align:middle}.question-numbers li.answered.answered-wrong a{color:red}.question-numbers li.answered.answered-true a{color:#00adff}.question-numbers li.answered.answered-true.current a{color:#fff}.question-numbers li.skipped::after{position:absolute;bottom:3px;left:50%;width:10px;height:4px;margin-left:-5px;border-radius:2px;background:#aaa;content:""}.quiz-intro{display:flex;margin:0 0 20px;padding:0;list-style:none;flex-flow:row wrap}@media(max-width:768px){.quiz-intro{padding-right:10px;padding-left:10px;justify-content:space-between}}.quiz-intro-item{display:flex;margin:0 40px 0 0;align-items:center}@media(max-width:768px){.quiz-intro-item{margin:0 20px 0 0}}.quiz-intro-item::before{position:relative;top:-2px;margin-right:10px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900}.quiz-intro-item--passing-grade{order:2}.quiz-intro-item--passing-grade::before{content:"\f012"}.quiz-intro-item--questions-count{order:1}.quiz-intro-item--questions-count::before{content:"\f12e"}.quiz-intro-item--duration{order:2}.quiz-intro-item--duration::before{content:"\f017"}.quiz-intro-item__title{margin:0;padding:0 8px 0 0;color:#333;font-size:16px;font-weight:300;line-height:1.7}.quiz-intro-item__content{color:#222;font-size:16px;font-weight:400}.question-explanation-content,.question-hint-content{margin-bottom:20px;padding:10px 15px;background:#f5f5f5}.redo-quiz button[type=submit]{content:attr(data-counter)}.circle-bar{position:relative;width:300px;height:300px;border-color:#ddd}.circle-bar::before{position:absolute;z-index:0;top:0;left:0;box-sizing:border-box;width:100%;height:100%;border:10px solid #ddd;border-radius:50%;content:""}.circle-bar .before,.circle-bar .after{position:absolute;z-index:0;top:0;left:0;box-sizing:border-box;width:100%;height:100%;border:10px solid #14c4ff;border-radius:50%;transform:rotate(45deg)}.circle-bar .before{border-bottom-color:transparent;border-left-color:transparent;transform:rotate(45deg)}.circle-bar .after{border-color:#14c4ff;border-top-color:transparent;border-right-color:transparent;transform:rotate(45deg)}.circle-bar.bg50 .after{z-index:10;border-bottom-color:inherit;border-left-color:inherit;transform:rotate(45deg)}.lp-quiz-buttons .complete-quiz,.lp-quiz-buttons .back-quiz,.lp-quiz-buttons .review-quiz{float:right}.quiz-result .result-grade{display:flex;flex-direction:column;position:relative;box-sizing:border-box;height:200px;margin-bottom:30px;padding:50px;justify-content:center;align-items:center;-webkit-transform:none !important;-moz-transform:none !important;-ms-transform:none !important;-o-transform:none !important;transform:none !important}.quiz-result .result-grade::before,.quiz-result .result-grade svg{position:absolute;top:0;left:50%;width:200px;height:200px;margin-left:-100px;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.quiz-result .result-grade::before{box-sizing:border-box;padding:30px;border:10px solid #ccc;content:""}.quiz-result .result-grade svg{-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.quiz-result .result-grade svg circle{stroke:var(--lp-primary-color)}.quiz-result.passed .result-grade svg{-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.quiz-result.passed .result-grade .result-achieved{color:#333}.quiz-result.passed .result-grade .result-message strong{color:#4caf50}.quiz-questions .question{margin-bottom:60px}.question .answer-option{padding:0;_border:2px solid #d9e0f1;background:#fff}.question .answer-option input[type=radio],.question .answer-option input[type=checkbox]{position:absolute;top:50%;margin:-19px 0 0 10px;border-color:#d9e0f1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question .answer-option input[type=radio]::after,.question .answer-option input[type=checkbox]::after{border-color:#d9e0f1}.question .answer-option input[type=radio]:disabled,.question .answer-option input[type=checkbox]:disabled{border-color:#ddd;background:#f9f9f9}.question .answer-option input[type=radio]:disabled::after,.question .answer-option input[type=checkbox]:disabled::after{border-color:#ddd}.question .answer-option input[type=radio]:checked:not(:disabled)::after,.question .answer-option input[type=checkbox]:checked:not(:disabled)::after{border-color:#99aee4}.question .answer-option input[type=radio]{-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.question .answer-option input[type=radio]::before{border-radius:50%}.question .answer-option .option-title{display:flex;width:100%;margin:0;padding:14px 10px 11px 65px;border:1px solid #ccc;color:#666;background:#fff;font-size:16px;font-weight:300;line-height:26px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question .answer-option .option-title::after{display:inline-block;visibility:hidden !important;content:"."}.question .answer-option .option-title:hover{background:#f9f9f9}.question .answer-option .option-title::before{display:none}.question .answer-option.answer-correct .option-title{border-color:#4caf50}.question .answer-option.answered-wrong .option-title{border-color:#ff6423}.question .question-title{display:block;margin-top:0;margin-bottom:18px;color:#333;font-size:18px;font-weight:500}.question .question-title .edit-link{float:right;font-size:14px;font-weight:normal}.question .question-content{margin-bottom:30px;color:#666;font-size:16px;font-weight:300;line-height:26px}.question .question-content img{width:100%;max-width:100%}.question .question-response{margin-bottom:10px;font-size:14px}.question .question-response .label{display:inline-block;margin:0 5px 0 0;padding:8px 10px;border-radius:4px;color:#fff;line-height:1}.question .question-response .point{display:inline-block}.question .question-response.correct .label{background:#4caf50}.question .question-response.incorrect .label{background:#ff6423}.question .question-index{display:inline-block;margin:0 5px 0 0}.question .btn-show-hint{position:relative;margin:0 0 0 10px;padding:0;outline:0;color:#00adff;background:transparent;font-size:0;text-decoration:none}.question .btn-show-hint::before{font-family:"Font Awesome 5 Free";font-size:18px;content:"\f059"}.question .btn-show-hint:hover span{position:absolute;bottom:100%;left:0;width:auto;padding:6px 9px;border-radius:2px;color:#333;background:#eee;font-size:14px;font-weight:400;line-height:1;white-space:nowrap;text-transform:none}.question.question-fill_in_blanks .blanks .blank-input-wrap{display:inline-block}.question.question-fill_in_blanks .blanks .blank-block{margin-bottom:20px}.question.question-fill_in_blanks .blanks .blank-input{display:inline-block;width:auto;min-width:50px;margin:0 10px;padding:0 10px;border:0;border-bottom:1px dashed #ddd;text-align:center;white-space:nowrap}.question.question-fill_in_blanks .blanks .blank-input br{display:none}.question.question-fill_in_blanks .blanks .blank-input>*{display:inline;white-space:nowrap}.question.question-fill_in_blanks .blanks .blank-select{display:inline-block;height:30px;margin-left:4px;padding:1px}.question.question-fill_in_blanks .blanks .blank-fills{display:inline-block}.question.question-fill_in_blanks .blanks .blank-fills code{margin:0 5px;padding:0 6px;background:#ddd;line-height:1;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.question.question-fill_in_blanks .blanks.ordered{list-style-position:inside}.question.question-fill_in_blanks .blanks.one-paragraph{line-height:3}.lp-sort-bg label.option-title{background:rgba(255,182,6,0.68) !important}.learn-press-message.fixed{position:fixed;top:32px;left:0;right:0;background:rgba(0,173,255,0.6);text-align:center;z-index:100;color:#FFF;padding:10px}.learn-press-message.fixed[data-delay-in]{display:none}.lp-archive-courses ul{list-style-type:revert;padding:0 0 23px 1em}.lp-archive-courses ul.learn-press-breadcrumb,.lp-archive-courses ul.course-nav-tabs{list-style:none;padding:0}@media(max-width:768px){.lp-archive-courses ul.learn-press-breadcrumb,.lp-archive-courses ul.course-nav-tabs{padding-left:15px;padding-right:15px}}.lp-archive-courses ul,.lp-archive-courses ol{list-style-type:decimal;list-style-position:inside;padding:0 0 23px}.lp-archive-courses ol ul{padding:2px 0 2px 35px}.lp-archive-courses ol ol{padding:2px 0 2px 20px}.lp-archive-courses thead th,.lp-archive-courses tr th{padding:9px 24px}.lp-archive-courses tr td{border-top:1px solid #eee;padding:6px 24px}.learnpress #left-area ul,.learnpress .entry-content ul,.learnpress .et-l--body ul,.learnpress .et-l--footer ul,.learnpress .et-l--header ul{padding:0 !important;list-style:none !important}.learnpress.dt-the7 .learn-press-filters{margin-bottom:20px}.learnpress.dt-the7 .learn-press-courses[data-size="3"] .course{width:50%}.bridge.learnpress .lp-archive-courses{margin-top:100px}.bridge.learnpress .lp-archive-courses ul.learn-press-breadcrumb{padding-top:45px}.bridge.learnpress .content{z-index:110}.bridge.learnpress .comment-respond .comment-form{margin:0}.bridge.learnpress .comment-respond .comment-form>p,.bridge.learnpress .comment-respond .comment-form>div{padding:0}.bridge.learnpress.learnpress-profile .content{z-index:100}.bridge.learnpress #learn-press-item-comments{background:#f6f6f6}.learnpress.ast-separate-container .ast-article-single{padding-left:15px;padding-right:15px}body.learnpress-page.twentysixteen #primary .lp-entry-content{float:none;width:auto;margin:0 15%}body.learnpress-page.twentyfifteen .course-summary-sidebar .widget{width:100%;padding:0}body.learnpress-page.twentysixteen .entry-footer{display:none}body.learnpress-page.twentysixteen .lp-entry-content{float:none;width:auto}body.learnpress-page.twentyseventeen #primary article.type-page{width:100%}@media screen and (min-width:61.5625em){body.twentysixteen.learnpress-page .entry-footer{display:none}body.twentysixteen.learnpress-page .lp-entry-content{float:none;width:auto}body:not(.search-results) article:not(.type-page) .entry-footer{display:none}body:not(.search-results) article:not(.type-page) .lp-entry-content{float:none;width:auto}}body.twentyseventeen.learnpress-page #primary article.page .entry-header,body.twentyseventeen.learnpress-page #primary article.page .lp-entry-content{width:100%;float:none}@media screen and (min-width:48em){body.twentyseventeen.learnpress-page #primary article.page .entry-header,body.twentyseventeen.learnpress-page #primary article.page .lp-entry-content{width:100%;float:none}}.learn-press-tip{display:none;margin:0 5px;color:#444;font-size:13px;font-style:normal;line-height:1;vertical-align:baseline;cursor:pointer}.learn-press-tip.ready{display:inline-block}.learn-press-tip::before{font-family:"Font Awesome 5 Free";content:"\f059"}.learn-press-tip:hover{opacity:.8}.learn-press-tip-floating{position:absolute;z-index:9999999;min-width:20px;margin-left:-1px;padding:.618em 1em;color:#fff;background:#383838;font-size:12px;line-height:1.2em;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.learn-press-tip-floating>*{font-size:12px}.learn-press-tip-floating .close{display:inline-block;position:absolute;top:-8px;right:-8px;width:16px;height:16px;border:1px solid #fff;color:#fff;background:#468fbc;line-height:16px;text-align:center;cursor:pointer;-webkit-border-radius:50%;-moz-border-radius:50%;border-radius:50%}.learn-press-tip-floating .close::before{font-family:"Font Awesome 5 Free";content:"\f00d"}.learn-press-tip-floating p{margin:0}.learn-press-tip-floating::before{position:absolute;bottom:-6px;left:50%;width:0;height:0;margin-left:-6px;border:6px solid transparent;border-top-color:#383838;border-bottom-width:0;content:""}body.lp-preview.admin-bar #learn-press-content-item{top:32px !important}body.lp-preview #learn-press-course-curriculum{display:none}body.lp-preview #learn-press-content-item{top:0 !important;left:0 !important}@-webkit-keyframes rotating4{from{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes rotating4{from{-ms-transform:rotate(0);-moz-transform:rotate(0);-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-ms-transform:rotate(360deg);-moz-transform:rotate(360deg);-webkit-transform:rotate(360deg);-o-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes animation4{from{left:-40%;width:40%}to{left:100%;width:10%}}@keyframes animation4{from{left:-40%;width:40%}to{left:100%;width:10%}}#popup_container{opacity:0;transform:scale(0.5)}body.confirm #popup_overlay{z-index:999998 !important}body.confirm #popup_container{z-index:999999 !important;max-width:90% !important;min-width:300px !important;padding:10px !important;background:#f5f5f5;transition:opacity .25s;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}body.confirm #popup_container #popup_title{display:none !important}body.confirm #popup_container #popup_message{margin:-10px;background:#FFF;padding:20px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}body.confirm #popup_container .close{position:absolute;top:3px;right:10px}body.confirm #popup_container #popup_panel{margin-top:20px;text-align:center}body.confirm #popup_container #popup_panel button,body.confirm #popup_container #popup_panel input[type=button],body.confirm #popup_container #popup_panel input[type=submit]{height:30px;line-height:30px;padding:0 25px}body.confirm #popup_container #popup_cancel{display:none}body.confirm #popup_container.ready{opacity:1;transform:scale(1)}a{text-decoration:none}.lp-content-area{width:100%;max-width:1170px;margin:0 auto}@media(max-width:1024px){.lp-content-area{padding-right:15px;padding-left:15px}}.lp-content-area::after,.lp-content-area::before{display:table;clear:both;content:""}.lp-archive-courses{width:100%;scroll-margin:30px}.lp-archive-courses.loading ul.learn-press-courses{position:relative}.lp-archive-courses.loading ul.learn-press-courses::before,.lp-archive-courses.loading ul.learn-press-courses::after{content:"";position:absolute;top:0;bottom:0;left:15px;right:15px}.lp-archive-courses.loading ul.learn-press-courses::after{z-index:3;background:#f3f3f3;background:linear-gradient(90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);background-size:400% 100%;list-style:none;animation:lp-skeleton-loading 1.4s ease infinite}.lp-archive-courses.loading ul.learn-press-courses::before{z-index:2;opacity:.8%;background:#fff}.lp-archive-courses form[name=search-course]{position:relative;margin-bottom:20px}.lp-archive-courses form[name=search-course] .search-course-input{width:100%;padding:12px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.lp-archive-courses form[name=search-course] .search-course-button{position:absolute;top:1px;right:1px;bottom:1px;height:auto;padding:15px;line-height:1px}.lp-archive-courses .learn-press-courses-header{float:left;padding-top:4px}.lp-archive-courses .learn-press-courses-header h1{margin:0;font-size:30px;font-weight:600}@media(max-width:767px){.lp-archive-courses .learn-press-courses-header{margin-bottom:20px}}.lp-archive-courses .course-item{flex-direction:column;display:flex;transition:all .3s}.lp-archive-courses .course-item:hover .course-thumbnail .thumbnail::before{opacity:1}.lp-archive-courses .course-item:hover .course-thumbnail a img{transform:scale(1.05)}.lp-archive-courses .course-item:hover .course-wishlist{opacity:1}.lp-archive-courses .course-item .course-wishlist.filled{opacity:1}.lp-archive-courses .course-item .course-instructor{float:left;margin-bottom:16px;font-size:14px;font-weight:300;line-height:25px;text-transform:capitalize}.lp-archive-courses .course-item .course-instructor a{color:#059de9}.lp-archive-courses .course-item .course-instructor a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-content{position:relative;border-top:0}.lp-archive-courses .course-content .course-permalink{display:-webkit-box;clear:both;overflow:hidden;position:relative;border:0;color:#fff;text-decoration:none;text-transform:none;-webkit-line-clamp:2;-webkit-box-orient:vertical;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.lp-archive-courses .course-content .course-permalink:focus{-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.lp-archive-courses .course-content .course-review{display:none}.lp-archive-courses .course-content .course-categories,.lp-archive-courses .course-content .course-tags{display:block;font-size:14px;font-weight:300}.lp-archive-courses .course-content .course-categories{float:left;position:relative;margin-right:10px;margin-bottom:16px}.lp-archive-courses .course-content .course-categories a{display:inline-block;display:none;margin:0 10px;color:#fff;text-decoration:none}.lp-archive-courses .course-content .course-categories a:first-child{display:block;margin-left:0;padding:2px 16px;background:var(--lp-primary-color)}.lp-archive-courses .course-content .course-categories a:hover{color:#333}.lp-archive-courses .course-content .course-categories::after{position:absolute;top:50%;right:-2px;width:1px;height:12px;opacity:.5;background:#999;content:"";transform:translate(0,-50%)}.lp-archive-courses .course-content .course-info{color:#666;font-size:14px;font-weight:300}.lp-archive-courses .course-content .course-info>span{display:block}.lp-archive-courses .course-content .course-info .course-price{float:right}.lp-archive-courses .course-content .course-info .course-price .origin-price,.lp-archive-courses .course-content .course-info .course-price .price{color:#333;font-size:16px;font-weight:600}.lp-archive-courses .course-content .course-info .course-price .origin-price{margin-right:10px;color:#666;font-size:14px;font-weight:300;text-decoration:line-through}.lp-archive-courses .course-content .course-info .course-instructor{float:right}.lp-archive-courses .course-content .course-info::after{display:block;clear:both;content:""}.lp-archive-courses .course-content .course-excerpt{display:-webkit-box;overflow:hidden;margin-bottom:28px;color:#666;font-size:16px;font-weight:300;line-height:26px;-webkit-line-clamp:2;-webkit-box-orient:vertical}.lp-archive-courses .course-content .separator{display:none}.lp-archive-courses .course-wrap-thumbnail{overflow:hidden;position:relative}.lp-archive-courses .course-wrap-thumbnail .lp-badge.featured{position:absolute;z-index:100;top:28px;left:-110px;width:300px;text-align:center;transform:rotate(-45deg)}.lp-archive-courses .course-wrap-thumbnail .course-wishlist{position:absolute;z-index:2;top:6px;right:6px;opacity:0;color:#fff;cursor:pointer}.lp-archive-courses .course-wrap-thumbnail .course-wishlist::before{font-family:"Font Awesome 5 Free";font-weight:900;content:"\f004"}.lp-archive-courses .course-wrap-thumbnail .course-wishlist .course-wishlist__btn{display:none}.lp-archive-courses .course-wrap-thumbnail .course-wishlist:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-wrap-thumbnail:hover::before{opacity:1}.lp-archive-courses .course-wrap-thumbnail:hover .course-thumbnail a img{transform:scale(1.05)}.lp-archive-courses .course-wrap-thumbnail:hover .course-wishlist{opacity:1}.lp-archive-courses .course-thumbnail a{display:block;overflow:hidden}.lp-archive-courses .course-thumbnail .thumbnail{margin:0;padding:0;border:0;border-radius:unset;line-height:unset}.lp-archive-courses .course-thumbnail .thumbnail::before{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;opacity:0;background:rgba(0,0,0,0.5);content:"";transition:all .3s}.lp-archive-courses .course-thumbnail img{display:block;width:100%;height:auto;transition:all .5s ease;transform:scale(1)}.lp-archive-courses .course-title{margin:0;padding:0;color:#333;font-size:16px;font-weight:600;line-height:24px}.lp-archive-courses .course-title:hover{color:var(--lp-primary-color)}@media(min-width:769px){.lp-archive-courses .course-summary-content .course-info-left{width:calc(100% - 330px)}}.lp-archive-courses .course-summary-content .course-title{margin-bottom:42px;color:#fff;font-size:1.5rem;font-weight:500;line-height:1}.lp-archive-courses .course-summary-content .course-meta.course-meta-secondary{margin-bottom:0}@media(max-width:768px){.lp-archive-courses .course-summary-content{width:100%}}.lp-archive-courses .course-detail-info{padding:40px 0 10px 0;color:#fff;background:var(--lp-secondary-color);position:relative}.lp-archive-courses .course-detail-info::before,.lp-archive-courses .course-detail-info::after{content:"";width:50%;height:100%;background:var(--lp-secondary-color);position:absolute;top:0}.lp-archive-courses .course-detail-info::before{right:100%;left:auto}.lp-archive-courses .course-detail-info::after{left:100%;right:auto}.lp-archive-courses .course-meta__pull-left .meta-item{display:flex;height:46px;margin-right:50px;font-size:16px;font-weight:300;text-transform:capitalize}.lp-archive-courses .course-meta__pull-left .meta-item span{padding-right:4px;padding-left:0}.lp-archive-courses .course-meta__pull-left .meta-item:last-child{margin-right:0}.lp-archive-courses .course-meta__pull-left .meta-item::before{margin-right:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900}.lp-archive-courses .course-meta__pull-left .meta-item .meta-item__image{margin-right:10px;flex:0 0 46px}.lp-archive-courses .course-meta__pull-left .meta-item .meta-item__image img{overflow:hidden;position:relative;width:46px;height:46px;border-radius:50%}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-duration::before{content:"\f017"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-level::before{content:"\f012"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-lesson::before{content:"\f0c5"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-quiz::before{content:"\f12e"}.lp-archive-courses .course-meta__pull-left .meta-item.meta-item-student::before{content:"\f501"}@media(max-width:1024px){.lp-archive-courses .course-meta__pull-left .meta-item{margin-right:30px}}@media(max-width:767px){.lp-archive-courses .course-meta__pull-left .meta-item{margin-right:0}}.lp-archive-courses .course-meta__pull-left .meta-item__value label{margin:0;color:#999;font-size:14px;font-weight:300;line-height:1.5}.lp-archive-courses .course-meta__pull-left .meta-item__value>div{line-height:1.5}.lp-archive-courses .course-meta__pull-left .meta-item__value>div a{color:#fff;font-size:16px;font-weight:400;text-transform:capitalize}.lp-archive-courses .course-meta__pull-left .meta-item__value>div a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-meta__pull-left .meta-item-categories{align-items:center}.lp-archive-courses .course-meta__pull-left .meta-item-categories::before{margin-right:10px;font-size:36px;content:"\f02e"}.lp-archive-courses .course-meta__pull-left .meta-item-categories .meta-item__value div span{padding:0 5px}.lp-archive-courses .course-meta__pull-left .meta-item-categories .meta-item__value div a:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-meta__pull-left .meta-item-review .meta-item__value{display:flex;flex-direction:column-reverse;justify-content:flex-end;align-items:flex-end}.lp-archive-courses .course-meta__pull-left .meta-item-review .meta-item__value .review-stars-rated{margin-bottom:0;line-height:1}@media(max-width:767px){.lp-archive-courses .course-meta__pull-left{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px}}.lp-archive-courses .course-meta-primary{margin-bottom:36px}.lp-archive-courses .course-meta-primary .meta-item-categories::before{font-weight:400}.lp-archive-courses .lp-entry-content{display:flex;flex-direction:row}.lp-archive-courses .lp-entry-content .entry-content-left{width:calc(100% - 300px);max-width:100%;margin:0;padding-right:40px;padding-top:60px}@media(max-width:768px){.lp-archive-courses .lp-entry-content .entry-content-left{width:100%;padding-right:0;margin-bottom:50px}}@media(max-width:768px){.lp-archive-courses .lp-entry-content{flex-direction:column}}.lp-archive-courses .course-summary-sidebar{width:300px;max-width:100%;margin-top:-272px}@media(max-width:768px){.lp-archive-courses .course-summary-sidebar{width:100%;margin-top:0}.lp-archive-courses .course-summary-sidebar .course-summary-sidebar__inner{width:100%}}@media(max-width:767px){.lp-archive-courses .course-summary-sidebar{width:100%;padding-left:0}}.lp-archive-courses .course-summary-sidebar__inner{width:300px}.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-top{box-shadow:0 15px 20px 0 rgba(0,0,0,0.05)}.lp-archive-courses .course-summary-sidebar__inner .course-sidebar-secondary{margin-top:30px;padding:0}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist{color:#fff;background:transparent !important;font-size:0}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist.on,.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist:hover{color:var(--lp-primary-color)}.lp-archive-courses .course-summary-sidebar__inner .learn-press-course-wishlist::before{font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900;content:"\f004"}.lp-archive-courses .course-summary-sidebar__inner>div{overflow:hidden;padding:20px;background:#fff}.lp-archive-courses .course-summary-sidebar__inner>div ul{list-style:none}.lp-archive-courses .course-summary-sidebar__inner>div ul li a{color:#666;font-size:16px;font-weight:300;line-height:24px}.lp-archive-courses .course-summary-sidebar__inner>div ul li a:hover{color:var(--lp-primary-color);box-shadow:unset}.learn-press-courses{clear:both;margin:0 -15px;padding:0 !important;min-height:300px;list-style:none;position:relative;display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-moz-flex;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.learn-press-courses .course{width:25%;margin:0 0 60px 0;box-shadow:none;list-style:none}.learn-press-courses[data-layout=list]{margin:0}.learn-press-courses[data-layout=list] .course{display:flex;width:100%;padding:24px;border:1px solid rgba(204,204,204,0.3);border-radius:4px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:767px){.learn-press-courses[data-layout=list] .course{padding:15px}}.learn-press-courses[data-layout=list] .course-item{flex-direction:row;width:100%;border:unset;justify-content:space-between}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-item{flex-direction:column}}.learn-press-courses[data-layout=list] .course-content{float:right;width:calc(64.2% - 76px);padding-top:5px}@media(max-width:1200px){.learn-press-courses[data-layout=list] .course-content{width:calc(64.2% - 40px)}}@media(max-width:1200px){.learn-press-courses[data-layout=list] .course-content{width:calc(64.2% - 25px)}}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content{width:100%;padding-top:20px}}.learn-press-courses[data-layout=list] .course-content .course-categories a{position:relative;padding:2px 20px 2px 15px;-webkit-clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%);clip-path:polygon(0 0,100% 0,88% 50%,100% 100%,0 100%)}.learn-press-courses[data-layout=list] .course-content .course-permalink{height:25px;margin-bottom:5px;-webkit-line-clamp:1}.learn-press-courses[data-layout=list] .course-content .course-tags a{margin:0 10px 10px 0;padding:3px 5px;border-radius:3px;color:#fff;background:#e4a2a2;line-height:1}.learn-press-courses[data-layout=list] .course-content .course-footer{float:left;margin-right:20px}.learn-press-courses[data-layout=list] .course-content .course-footer .course-students{display:none}.learn-press-courses[data-layout=list] .course-content .course-footer .course-price{float:unset}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content .course-footer{margin-bottom:30px}}.learn-press-courses[data-layout=list] .course-content .course-readmore{float:right;position:relative;right:4px}.learn-press-courses[data-layout=list] .course-content .course-readmore a{padding:9px 24px;border-radius:3px;color:#fff;background:var(--lp-primary-color);font-weight:400;line-height:1;transition:all .3s;display:block}.learn-press-courses[data-layout=list] .course-content .course-readmore a:hover{opacity:.5;background:var(--lp-primary-color)}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-content .course-readmore{display:flex;float:unset;clear:both}}.learn-press-courses[data-layout=list] .course-wrap-meta{display:flex;padding-top:12px;padding-bottom:18px;color:#333;font-size:14px;font-weight:400}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-right:28px;text-transform:capitalize}@media(max-width:1024px){.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-right:20px}}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item::before{position:relative;top:-1px;margin-right:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-level::before{content:"\f012"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-duration::before{content:"\f017"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-lesson::before{content:"\f0c5"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-quiz::before{content:"\f12e"}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item-student::before{content:"\f501"}@media(max-width:815px){.learn-press-courses[data-layout=list] .course-wrap-meta{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:15px}.learn-press-courses[data-layout=list] .course-wrap-meta .meta-item{padding-right:15px}}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-wrap-meta{grid-template-columns:repeat(3,1fr)}}.learn-press-courses[data-layout=list] .course-wrap-thumbnail{float:left;width:35.8%}@media(max-width:767px){.learn-press-courses[data-layout=list] .course-wrap-thumbnail{width:100%}}.learn-press-courses[data-layout=list] .course-title{font-size:18px}.learn-press-courses[data-layout=grid] .course{padding:0 15px}@media(max-width:992px){.learn-press-courses[data-layout=grid] .course{width:50%}}@media(max-width:767px){.learn-press-courses[data-layout=grid] .course{width:100%}}.learn-press-courses[data-layout=grid] .course-item:hover{box-shadow:0 15px 20px 0 rgba(0,0,0,0.2)}.learn-press-courses[data-layout=grid] .course-item .course-instructor{margin-bottom:7px}.learn-press-courses[data-layout=grid] .course-content{padding:15px 20px 12px 20px;border:1px solid #f0f0f0;border-top:0;flex-grow:1}.learn-press-courses[data-layout=grid] .course-content .course-categories{float:right;position:absolute;z-index:1;top:-34px;right:-1px;margin-right:0}.learn-press-courses[data-layout=grid] .course-content .course-categories::after{display:none}.learn-press-courses[data-layout=grid] .course-content .course-categories a{position:relative;margin:0;padding:2px 12px 2px 22px;-webkit-clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%);clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12px 50%)}.learn-press-courses[data-layout=grid] .course-content .course-permalink{height:48px;margin-bottom:20px}.learn-press-courses[data-layout=grid] .course-content .course-info{display:flex;flex-direction:column;flex-grow:1}.learn-press-courses[data-layout=grid] .course-content .course-wrap-meta,.learn-press-courses[data-layout=grid] .course-content .course-excerpt,.learn-press-courses[data-layout=grid] .course-content .course-readmore{display:none}.learn-press-courses[data-layout=grid] .course-content .course-footer{padding-top:18px;border-top:1px solid rgba(153,153,153,0.2)}.learn-press-courses[data-layout=grid] .course-content .course-footer .course-students{float:left;text-transform:capitalize}.learn-press-courses[data-layout=grid] .course-content .course-footer .course-students::before{position:relative;top:-1px;margin-right:8px;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-weight:900;content:"\f501"}.learn-press-courses[data-layout=grid] .learn-press-message{margin-left:15px;margin-right:15px}.learn-press-courses[data-size="3"] .course{width:33.3333%}@media(max-width:767px){.learn-press-courses[data-size="3"] .course{width:100%}}.learn-press-courses .lp-archive-course-skeleton{position:absolute;height:100%;background:linear-gradient(90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);animation:lp-skeleton-loading 1.4s ease infinite;background-size:400% 100%}.learn-press-courses .lp-archive-course-skeleton li{display:none}.lp-courses-bar{display:flex;float:right;margin-bottom:48px}@media(max-width:767px){.lp-courses-bar{flex-direction:row;width:100%;justify-content:space-between}}.lp-courses-bar .search-courses{position:relative;width:306px;max-width:100%;margin-right:20px;line-height:1;flex:1}.lp-courses-bar .search-courses input[type=text]{width:100%;height:44px;padding:6px 32px 6px 18px;border:1px solid #ccc;border-radius:5px;background:#fff;font-size:14px;font-style:italic;line-height:1}.lp-courses-bar .search-courses input[type=text]:focus{border-color:var(--lp-primary-color);outline:0}.lp-courses-bar .search-courses button{position:absolute;top:50%;right:12px;width:30px;height:30px;padding:0;border:0;color:#333;background:transparent;font-size:16px;line-height:1;transform:translate(0,-50%)}.lp-courses-bar .search-courses button:focus{border:0;outline:0}.lp-courses-bar .search-courses button.loading>i::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.lp-courses-bar .search-courses ::-webkit-input-placeholder{color:#999}.lp-courses-bar .search-courses :-ms-input-placeholder{color:#999}.lp-courses-bar .search-courses ::placeholder{color:#999}@media(max-width:767px){.lp-courses-bar .search-courses{width:100%}}.lp-courses-bar .switch-layout{display:flex;height:44px;line-height:1;text-align:right;flex:0 0 40px;align-items:center;justify-content:center}.lp-courses-bar .switch-layout input[type=radio]{display:none}.lp-courses-bar .switch-layout .switch-btn{display:block;width:40px;height:40px;margin:0;padding:0;border-radius:5px;font-size:16px;line-height:40px;text-align:center;cursor:pointer}.lp-courses-bar .switch-layout .switch-btn::before{display:inline-block;margin:8px 6px;color:#333;font-family:"Font Awesome 5 Free";font-weight:900;line-height:1}.lp-courses-bar .switch-layout .switch-btn.grid::before{content:"\f00a"}.lp-courses-bar .switch-layout .switch-btn.list{margin-left:3px}.lp-courses-bar .switch-layout .switch-btn.list::before{content:"\f03a"}input[type=radio]:nth-child(1):checked ~ .switch-btn:nth-child(2){background:#f5f5f5}input[type=radio]:nth-child(1):checked ~ .switch-btn:nth-child(2)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(3):checked ~ .switch-btn:nth-child(4){background:#f5f5f5}input[type=radio]:nth-child(3):checked ~ .switch-btn:nth-child(4)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(5):checked ~ .switch-btn:nth-child(6){background:#f5f5f5}input[type=radio]:nth-child(5):checked ~ .switch-btn:nth-child(6)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(7):checked ~ .switch-btn:nth-child(8){background:#f5f5f5}input[type=radio]:nth-child(7):checked ~ .switch-btn:nth-child(8)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(9):checked ~ .switch-btn:nth-child(10){background:#f5f5f5}input[type=radio]:nth-child(9):checked ~ .switch-btn:nth-child(10)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(11):checked ~ .switch-btn:nth-child(12){background:#f5f5f5}input[type=radio]:nth-child(11):checked ~ .switch-btn:nth-child(12)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(13):checked ~ .switch-btn:nth-child(14){background:#f5f5f5}input[type=radio]:nth-child(13):checked ~ .switch-btn:nth-child(14)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(15):checked ~ .switch-btn:nth-child(16){background:#f5f5f5}input[type=radio]:nth-child(15):checked ~ .switch-btn:nth-child(16)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(17):checked ~ .switch-btn:nth-child(18){background:#f5f5f5}input[type=radio]:nth-child(17):checked ~ .switch-btn:nth-child(18)::before{color:var(--lp-primary-color)}input[type=radio]:nth-child(19):checked ~ .switch-btn:nth-child(20){background:#f5f5f5}input[type=radio]:nth-child(19):checked ~ .switch-btn:nth-child(20)::before{color:var(--lp-primary-color)}.lp_allow_repuchase_select{padding:20px;background:#f7f7f7}.lp_allow_repuchase_select>ul{padding:0;list-style:none}.lp_allow_repuchase_select>a{display:inline-block;margin-top:10px;color:#fff;background-color:#222}.comment-respond .comment-reply-title{font-size:30px;font-weight:500;line-height:1.2;margin-bottom:15px}.comment-respond .comment-form{margin:0 -15px}.comment-respond .comment-form>p label{display:block;margin-bottom:10px;font-size:16px;font-weight:500}.comment-respond .comment-form>p.comment-notes,.comment-respond .comment-form>p.logged-in-as{color:#666;font-size:16px}.comment-respond .comment-form>p.logged-in-as a{color:#666;text-decoration:underline}.comment-respond .comment-form>p.logged-in-as a:hover,.comment-respond .comment-form>p.logged-in-as a:focus{color:var(--lp-primary-color)}.comment-respond .comment-form>p.comment-form-cookies-consent{clear:both}.comment-respond .comment-form>p.comment-form-cookies-consent input{padding:0;margin-right:8px}.comment-respond .comment-form>p.comment-form-cookies-consent label{display:inline}.comment-respond .comment-form>p,.comment-respond .comment-form>div{padding:0 15px;margin-bottom:15px}.comment-respond .comment-form input[type=text],.comment-respond .comment-form input[type=email],.comment-respond .comment-form input[type=url]{height:40px;line-height:normal;width:100% !important;margin-bottom:15px}.comment-respond .comment-form input[type=submit]{background-color:var(--lp-primary-color);border:0;min-height:40px;line-height:40px;padding:0 15px;font-size:16px;text-transform:capitalize;font-weight:500;margin-top:15px;cursor:pointer;color:white}.comment-respond .comment-form .comment-form-author,.comment-respond .comment-form .comment-form-email,.comment-respond .comment-form .comment-form-url{width:33.33%;float:left}@media(max-width:575px){.comment-respond .comment-form .comment-form-author,.comment-respond .comment-form .comment-form-email,.comment-respond .comment-form .comment-form-url{width:100%;float:unset}}.comment-respond .comment-form textarea,.comment-respond .comment-form input{border:1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;max-width:100%}.comment-respond .comment-form textarea{width:100%;display:block;padding:20px 15px;resize:none}.course-summary-sidebar .course-sidebar-preview{margin-bottom:35px;background:#fff}.course-summary-sidebar .lp-course-buttons{margin-bottom:34px}.course-summary-sidebar .lp-course-buttons>*{margin-bottom:10px}.course-summary-sidebar .lp-course-buttons>*:last-child{margin-bottom:0}.course-summary-sidebar .lp-course-buttons form,.course-summary-sidebar .lp-course-buttons button{width:100%;text-decoration:none}.course-summary-sidebar .lp-course-buttons button{font-weight:500}.course-summary-sidebar .lp-course-buttons button:hover{border-color:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course:hover{opacity:.5;background:var(--lp-primary-color)}.course-summary-sidebar .lp-course-buttons button.button-enroll-course.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}.course-summary-sidebar .lp-course-buttons button ~ .lp-enroll-notice{margin-top:20px;padding:20px;border:2px solid #059601;border-radius:9px;font-size:15px;line-height:1.4}.course-summary-sidebar .lp-course-buttons button ~ .lp-enroll-notice.error{border-color:#d85554}.course-summary-sidebar .course-results-progress .items-progress,.course-summary-sidebar .course-results-progress .course-progress{display:flex;flex-direction:row;margin:0 0 5px;padding:0;justify-content:space-between;flex-wrap:wrap}.course-summary-sidebar .course-results-progress .items-progress__heading,.course-summary-sidebar .course-results-progress .course-progress__heading{margin:0;margin-bottom:7px;padding:0;color:#333;font-size:1rem;font-weight:500;flex:1 1 auto;width:auto}.course-summary-sidebar .course-results-progress .items-progress .learn-press-progress,.course-summary-sidebar .course-results-progress .course-progress .learn-press-progress{clear:both;width:100%}.course-summary-sidebar .course-results-progress .number{display:block;margin:0;color:#666;font-size:16px;font-weight:300;line-height:16px;text-align:right}.course-sidebar-preview .course-price{text-align:center}.course-sidebar-preview .course-price .origin-price{color:#666;font-size:18px;font-weight:300;font-style:unset}.course-sidebar-preview .course-price .price{color:#333;font-size:1.8rem;font-weight:500}.course-sidebar-preview .media-preview{overflow:hidden;position:relative;margin:-20px -20px 20px}.course-sidebar-preview .media-preview img{max-width:100%;height:auto;vertical-align:top}.course-sidebar-preview .course-time{margin-bottom:28px;padding-bottom:8px;border-bottom:1px solid rgba(204,204,204,0.3)}.course-sidebar-preview .course-time-row{display:flex;color:#666;font-size:16px;font-weight:300;justify-content:space-between}.course-sidebar-preview .course-time-row strong{color:#333;font-weight:500}.course-sidebar-preview .course-time-row time{color:#666;font-size:1rem;font-weight:300;line-height:24px}.course-sidebar-preview>*:last-child{margin-bottom:0}.learnpress-page .lp-button.secondary{background:#9198ab}.learnpress-page .lp-button.secondary:hover{background:#9ba6c5}.learnpress-page .lp-button:disabled,.learnpress-page .lp-button[disabled]{background:#ddd;pointer-events:none}.learnpress-page:hover{text-decoration:none}#popup-course{display:flex;position:fixed;z-index:99999;top:0;right:0;bottom:0;left:0;background:#fff}#popup-course .back-course{padding-left:30px;padding-right:30px;line-height:70px;background:rgba(255,255,255,0.1);color:#fff}#popup-course .back-course:hover{background:rgba(255,255,255,0.15)}@media(max-width:768px){#popup-course .back-course{background:transparent;opacity:.6;padding-left:15px;padding-right:15px}#popup-course .back-course:hover{background:transparent;opacity:1}}#popup-course #popup-header{display:flex;position:fixed;z-index:100;right:0;left:475px;padding:0;border-bottom:1px solid #d9e0f1;background:var(--lp-secondary-color);-webkit-transition:left .25s;-moz-transition:left .25s;-ms-transition:left .25s;-o-transition:left .25s;transition:left .25s}#popup-course #popup-header .course-title{margin:0;padding:0;line-height:70px;letter-spacing:unset}#popup-course #popup-header .course-title a{display:-webkit-box;overflow:hidden;color:#fff;font-size:16px;font-weight:400;text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical}#popup-course #popup-header .course-title a:hover{color:var(--lp-primary-color)}@media(max-width:768px){#popup-course #popup-header .course-title{flex:1}}#popup-course #popup-header .items-progress{display:flex;justify-content:center;align-items:center;column-gap:10px}@media(max-width:768px){#popup-course #popup-header .items-progress{flex:1}}@media(max-width:767px){#popup-course #popup-header .items-progress{padding-bottom:20px;justify-content:end}}#popup-course #popup-header .number{padding-right:10px;color:#fff;font-size:14px;font-weight:300}#popup-course #popup-header .lp-button{display:flex;position:relative;height:40px;margin:9px;border:0;color:#fff;background:var(--lp-primary-color);font-size:14px;font-weight:400;justify-content:center;line-height:40px;align-items:center}#popup-course #popup-header .lp-button:hover{opacity:.8}#popup-course #popup-header .lp-button-back{float:right;margin:9px 10px}#popup-course #popup-header .lp-button-back button::before,#popup-course #popup-header .lp-button-back button::after{content:""}#popup-course #popup-header .lp-button-back button::before{border:1px solid #ddd}#popup-course #popup-header .lp-button-back button::after{border:1px solid #ddd}#popup-course .popup-header__inner{display:flex;width:792px;margin:0 auto;justify-content:space-between;align-items:center;padding-left:15px;padding-right:15px}@media(max-width:1024px){#popup-course .popup-header__inner{width:100%}}@media(max-width:767px){#popup-course .popup-header__inner{flex-direction:column}}#popup-course #popup-sidebar{overflow:auto;position:relative;box-shadow:0 15px 30px 0 rgba(0,0,0,0.1);flex:0 0 475px;-webkit-transition:.25s;-moz-transition:.25s;-ms-transition:.25s;-o-transition:.25s;transition:.25s}#popup-course #popup-sidebar .search-course{display:flex;position:relative;height:70px;background:#f9fafc}#popup-course #popup-sidebar .search-course input[name=s]{display:block;width:100%;margin:6px 0;padding-left:20px;border:0;color:#999;background:transparent;box-shadow:none;font-size:14px;line-height:1;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#popup-course #popup-sidebar .search-course input[name=s]::-webkit-input-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::-moz-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]:-ms-input-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]:-moz-placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::placeholder{color:#999}#popup-course #popup-sidebar .search-course input[name=s]::-webkit-input-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]::-moz-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:-ms-input-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:-moz-placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]::placeholder{font-style:italic}#popup-course #popup-sidebar .search-course input[name=s]:focus{outline:0;color:#222}#popup-course #popup-sidebar .search-course button{position:absolute;top:0;right:10px;width:16px;height:70px;margin:0 10px;padding:0;border:0;background:transparent;line-height:1px}#popup-course #popup-sidebar .search-course button::before{color:#666;font-family:"Font Awesome 5 Free";font-size:16px;font-weight:900;content:"\f002"}#popup-course #popup-sidebar .search-course button.clear{display:none}#popup-course #popup-sidebar .search-course button.clear::before{content:"\f00d"}#popup-course #popup-sidebar .search-course .search-results{display:none;overflow:auto;position:fixed;z-index:99999999;top:92px;bottom:0;left:0;width:400px;margin:0;border-top-color:transparent;border-right:1px solid #d9e0f1;background:#fbfcff}#popup-course #popup-sidebar .search-course .search-results .search-results__item{border-bottom:1px solid #d9e0f1;background:#fff}#popup-course #popup-sidebar .search-course .search-results .search-results__item img{position:absolute;left:10px;width:40px;height:40px}#popup-course #popup-sidebar .search-course .search-results .search-results__item a{display:-webkit-box;overflow:hidden;position:relative;box-sizing:content-box;height:40px;padding:10px 10px 10px 60px;color:#777;text-overflow:ellipsis;-webkit-line-clamp:1;-webkit-box-orient:vertical}#popup-course #popup-sidebar .search-course .search-results .search-results__item:hover{background:#d9e0f1}#popup-course #popup-sidebar .search-course .search-results .search-results__item-title{overflow:hidden;margin:0 0 -2px 0;padding:0;font-size:16px;font-weight:normal}#popup-course #popup-sidebar .search-course .search-results .search-results__item-author{font-size:12px}#popup-course #popup-sidebar .search-course .search-results .course-price{position:absolute;right:10px;bottom:10px;font-size:12px}#popup-course #popup-sidebar .search-course .search-results .course-price .origin-price{font-size:smaller;text-decoration:line-through}#popup-course #popup-sidebar .search-course .search-results .search-results__not-found{padding:10px;color:#777}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination{padding:10px;text-align:center}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination a,#popup-course #popup-sidebar .search-course .search-results .search-results__pagination span{display:inline-block;margin:0 3px 10px 2px;padding:5px 8px;border:1px solid #d9e0f1;border-radius:4px;color:#777;font-size:14px;line-height:1;cursor:pointer}#popup-course #popup-sidebar .search-course .search-results .search-results__pagination span{color:#999;background:#d9e0f1}#popup-course #popup-sidebar .search-course.searching .search-results{display:block}#popup-course #popup-sidebar .search-course.searching .clear{display:block}#popup-course #popup-sidebar .search-course.searching button{display:none}#popup-course #popup-sidebar .search-course.searching::after{position:absolute;z-index:1;bottom:0;left:50%;width:0;height:0;margin-left:-10px;border:10px solid transparent;border-bottom-color:#fff;content:""}#popup-course #popup-sidebar .course-curriculum{overflow:auto;position:absolute;top:70px;bottom:0;width:475px}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar-thumb{background:#ccc}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar{width:6px}#popup-course #popup-sidebar .course-curriculum::-webkit-scrollbar-track{background:#f5f5f5}#popup-course #popup-sidebar .section{position:relative;padding:0 0 4px 0}#popup-course #popup-sidebar .section .circle-progress{display:inline-block;position:absolute;top:50%;right:10px;width:24px;height:24px;margin-top:-12px;border:3px solid #d9e0f1;border-radius:50%}#popup-course #popup-sidebar .section.section-empty .section-header{margin:0}#popup-course #popup-sidebar .section.section-empty .learn-press-message{margin:0;padding:10px;border-bottom:1px solid #d9e0f1;border-radius:0;color:#999;background:#f5f5f5;font-size:14px}#popup-course #popup-sidebar .section.section-empty .learn-press-message::before,#popup-course #popup-sidebar .section.section-empty .learn-press-message::after{position:absolute;z-index:9999;top:-16px;left:10px;width:0;height:0;border:8px solid transparent;border-bottom-color:#f5f5f5;background:transparent;content:"";-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}#popup-course #popup-sidebar .section.section-empty .learn-press-message::after{z-index:9998;top:-20px;left:8px;border-width:10px;border-bottom-color:#d9e0f1}#popup-course #popup-sidebar .section-header{position:sticky;z-index:1000;top:0;height:94px;padding:38px 20px 20px 20px;cursor:pointer;background-color:white}#popup-course #popup-sidebar .section-header .section-title{padding:0 0 4px 0;color:#000;font-size:20px;font-weight:500}#popup-course #popup-sidebar .section-header .section-title .show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f0d7"}#popup-course #popup-sidebar .section-header .section-toggle{justify-content:flex-end;flex:0}#popup-course #popup-sidebar .section-header .section-toggle i{color:#666}#popup-course #popup-sidebar .section-header .section-meta{padding-top:6px;padding-bottom:0}#popup-course #popup-sidebar .section-content{margin-bottom:0}#popup-course #popup-sidebar .course-item{min-height:50px;margin-bottom:4px;padding:5px 20px;background:#f9fafc;align-items:center}#popup-course #popup-sidebar .course-item>span{display:none}#popup-course #popup-sidebar .course-item::before{top:-1px;bottom:-1px;height:auto;background:transparent}#popup-course #popup-sidebar .course-item::after{content:""}#popup-course #popup-sidebar .course-item.current{background:#eaeaea}#popup-course #popup-sidebar .course-item.has-status.failed .trans{color:#f02425}#popup-course #popup-sidebar .course-item.status-completed .trans{color:#3bb54a}#popup-course #popup-sidebar .section-item-link{line-height:1;padding-right:0}#popup-course #popup-sidebar .section-item-link::before{padding:12px 0;vertical-align:unset}#popup-course #popup-sidebar .section-item-link .item-name{width:100%;padding:0 10px 0 17px;font-size:14px;line-height:21px;font-weight:500}#popup-course #popup-sidebar .course-item-meta{padding:0}#popup-course #popup-sidebar .course-item-meta .item-meta{padding:0;color:#999;background:transparent;font-size:12px;line-height:1.5;height:auto}#popup-course #popup-sidebar .course-item-meta .item-meta:first-child{margin-left:0}#popup-course #popup-sidebar .course-item-meta .item-meta::before{font-size:12px;line-height:21px}#popup-course #popup-content{overflow:auto;position:relative;margin:70px 0 50px 0;flex:1;padding-left:15px;padding-right:15px}#popup-course #popup-content .lp-button{position:relative;margin:0 10px 0 0;padding:12px 29px;border-color:var(--lp-secondary-color);font-size:14px}#popup-course #popup-content .lp-button.instant-check .instant-check__icon{margin-right:5px}#popup-course #popup-content .lp-button.instant-check .instant-check__icon::before{font-family:"Font Awesome 5 Free";content:"\f058"}#popup-course #popup-content .lp-button.instant-check .instant-check__info{visibility:hidden;position:absolute;top:100%;left:0;margin-top:3px;padding:11px 20px;border-radius:3px;background:#eee;white-space:nowrap;text-transform:none}#popup-course #popup-content .lp-button.instant-check:hover .instant-check__info{visibility:visible;position:absolute;top:100%;left:0;margin-top:3px;padding:11px 11px;border-radius:3px;color:#333;background:#eee;white-space:nowrap}#popup-course #popup-content .lp-button.instant-check.loading .instant-check__icon{display:inline-block;animation:lp-rotating 1s linear infinite}#popup-course #popup-content .lp-button.instant-check.loading .instant-check__icon::before{font-weight:800;content:"\f110"}#popup-course #popup-content .lp-button:hover{border-color:var(--lp-primary-color)}#popup-course #popup-content .lp-button.completed{display:flex;flex-direction:row-reverse;margin-top:32px;border-color:transparent;color:#fff;background:#3db748;font-size:16px;align-items:center;justify-content:center}#popup-course #popup-content .lp-button.completed i{margin-left:9px;font-size:14px}#popup-course #popup-content.fixed-quiz-status .quiz-status{background:var(--lp-primary-color)}#popup-course #popup-content.fixed-quiz-status .quiz-status>div{padding:0}@media(max-width:767px){#popup-course #popup-content{margin-top:113px}}#popup-course #popup-footer{position:fixed;z-index:999;right:0;bottom:0;left:475px;width:100%;max-width:792px;height:50px;margin:0 auto;border-top:1px solid #ebebeb;background:#fff;-webkit-transition:left .25s;-moz-transition:left .25s;-ms-transition:left .25s;-o-transition:left .25s;transition:left .25s}@media(max-width:1024px){#popup-course #popup-footer{width:auto;padding:0 15px}}#popup-course #popup-footer .course-item-nav{justify-content:space-between}#popup-course #popup-footer .course-item-nav .prev,#popup-course #popup-footer .course-item-nav .next{display:flex;line-height:50px}#popup-course #popup-footer .course-item-nav .prev a,#popup-course #popup-footer .course-item-nav .next a{display:block;color:#666;font-size:16px}#popup-course #popup-footer .course-item-nav .prev::before,#popup-course #popup-footer .course-item-nav .next::before{color:#999;font-family:"Font Awesome 5 Free";font-size:12px;font-weight:900}#popup-course #popup-footer .course-item-nav .prev:hover a,#popup-course #popup-footer .course-item-nav .prev:hover::before,#popup-course #popup-footer .course-item-nav .next:hover a,#popup-course #popup-footer .course-item-nav .next:hover::before{color:var(--lp-primary-color)}#popup-course #popup-footer .course-item-nav .prev:hover .course-item-nav__name,#popup-course #popup-footer .course-item-nav .next:hover .course-item-nav__name{display:block}#popup-course #popup-footer .course-item-nav .next{flex-direction:row-reverse}#popup-course #popup-footer .course-item-nav .next::before{margin-left:10px;content:"\f0da"}#popup-course #popup-footer .course-item-nav[data-nav=next]{justify-content:flex-end}#popup-course #popup-footer .prev::before{margin-right:10px;content:"\f0d9"}#popup-course #popup-footer .prev .course-item-nav__name{right:auto;left:-30px}#popup-course #popup-footer .prev .course-item-nav__name::before{right:auto;left:5px}@media(max-width:1024px){#popup-course #popup-footer .prev .course-item-nav__name{left:15px}}#popup-course #popup-footer .course-item-nav__name{display:none;position:absolute;top:-20px;right:-30px;width:auto;padding:10px 15px;color:#666;background:#ccc;font-size:14px;font-weight:300;line-height:1}@media(max-width:1024px){#popup-course #popup-footer .course-item-nav__name{top:-25px;right:15px;left:auto}}#popup-course #sidebar-toggle{display:inline-block;position:absolute;z-index:100;top:198px;left:475px;width:25px;height:56px;margin:0;background:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,0.15);cursor:pointer;transition:.25s;-webkit-appearance:none;border:0}#popup-course #sidebar-toggle:after{display:none}#popup-course #sidebar-toggle::before{display:inline-block;position:absolute;top:50%;left:50%;color:var(--lp-primary-color);font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f0d9";transition:.25s;transform:translate(-50%,-50%)}#popup-course #sidebar-toggle:focus{border:0;outline:0}#popup-course .lp-quiz-buttons .complete-quiz,#popup-course .lp-quiz-buttons .back-quiz,#popup-course .lp-quiz-buttons .review-quiz{float:right}#popup-course .quiz-results,#popup-course .quiz-content,#popup-course .quiz-questions,#popup-course .quiz-buttons,#popup-course .quiz-attempts{margin-bottom:60px}#popup-course .quiz-questions .lp-fib-content{margin-bottom:20px;padding:20px;border:2px solid #f5f5f5;border-radius:6px;line-height:1.6}#popup-course .quiz-questions .lp-fib-input{display:inline-block;width:auto;max-width:none}#popup-course .quiz-questions .lp-fib-input>input{height:36px;padding:6px 16px;border:1px solid #222;line-height:36px}#popup-course .quiz-questions .lp-fib-answered{padding:0 10px;background:#ececec;white-space:nowrap}#popup-course .quiz-questions .lp-fib-answered.fail{border:2px solid #d85554}#popup-course .quiz-questions .lp-fib-answered.fail .lp-fib-answered__answer{text-decoration:line-through}#popup-course .quiz-questions .lp-fib-answered.correct{border:2px solid #00adff}#popup-course .quiz-questions .lp-fib-note{display:flex;margin-left:10px;font-size:14px;font-weight:400;align-items:center}#popup-course .quiz-questions .lp-fib-note>span{display:inline-block;width:20px;height:20px;margin:0 5px 0 0}#popup-course .quiz-questions .lp-sorting-choice__check-answer{padding:5px 20px;border:2px solid #059601;border-radius:5px;font-size:1rem}#popup-course .question .answer-option input[type=radio],#popup-course .question .answer-option input[type=checkbox]{-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);margin:0 0 0 10px}#popup-course .question .answer-option input[type=radio]::before{border-radius:50%}#popup-course .question .question-response{display:flex;align-items:center;justify-content:flex-start}#popup-course .scrollbar-light>.scroll-element{z-index:9999}#popup-course .scrollbar-light>.scroll-element.scroll-y{display:none}#popup-course .scrollbar-light>.scroll-element.scroll-y .scroll-bar{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}body.admin-bar #popup-course{top:32px}body.lp-sidebar-toggle__close #popup-course>#sidebar-toggle{left:0}body.lp-sidebar-toggle__close #popup-course>#sidebar-toggle::before{content:"\f0da"}body.lp-sidebar-toggle__close #popup-course #popup-sidebar{flex:0}body.lp-sidebar-toggle__close #popup-course #popup-header,body.lp-sidebar-toggle__close #popup-course #popup-footer{left:0}@media(max-width:768px){body:not(.lp-sidebar-toggle__open) #popup-course>#sidebar-toggle{left:0}body:not(.lp-sidebar-toggle__open) #popup-course>#sidebar-toggle::before{content:"\f0da"}body:not(.lp-sidebar-toggle__open) #popup-course #popup-sidebar{flex:0}}.course-curriculum .section-header .section-meta{position:relative}@media screen and (max-width:1280px){#popup-course #popup-sidebar{flex-basis:300px}#popup-course #popup-sidebar .course-curriculum{width:300px}#popup-course #popup-header,#popup-course #popup-footer{left:300px}#popup-course #sidebar-toggle{left:299px}}@media screen and (max-width:782px){body.admin-bar #popup-course{top:46px}#popup-course #popup-sidebar{flex-basis:250px}#popup-course #popup-sidebar .course-curriculum{width:250px}#popup-course #popup-header,#popup-course #popup-footer{left:250px}#popup-course #sidebar-toggle{left:249px}#popup-course .course-item-meta .item-meta.count-questions,#popup-course .course-item-meta .item-meta.duration{display:none}}.content-item-wrap{width:792px;max-width:100%;margin:0 auto;padding-bottom:80px}@media(max-width:1024px){.content-item-wrap{width:100%}}.content-item-wrap .course-item-title{margin-top:0;margin-bottom:24px;color:#333;font-size:30px;font-weight:600}@media(max-width:767px){.content-item-wrap .course-item-title{text-align:center}}.content-item-wrap h4{font-size:1.5rem;font-weight:500;line-height:1.5}.content-item-wrap .content-item-summary{padding-top:50px}.content-item-wrap .content-item-description{margin-bottom:30px}.content-item-wrap .content-item-description h2,.content-item-wrap .content-item-description h3,.content-item-wrap .content-item-description h4,.content-item-wrap .content-item-description h5,.content-item-wrap .content-item-description h6{margin-top:0;margin-bottom:18px;font-size:18px;letter-spacing:unset}.content-item-wrap .content-item-description p{margin:0 0 18px 0;color:#666;font-size:16px;font-weight:300;line-height:26px}.content-item-wrap .content-item-description img{max-width:100%;height:auto;vertical-align:middle}.content-item-wrap #learn-press-quiz-app{margin-bottom:40px}.content-item-wrap .quiz-content{margin-bottom:40px;color:#666;font-size:16px;font-weight:300;line-height:26px}.content-item-wrap .quiz-content img{max-width:100%;height:auto;vertical-align:middle}.content-item-wrap .quiz-buttons{display:flex;justify-content:center;text-align:center}.content-item-wrap .quiz-buttons .button-right .lp-button{margin:0 0 0 15px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]{margin:0;border:1px solid #d9e0f1;color:#777;background:#fbfcff}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]::before{display:inline-block;width:15px;height:15px;border:2px solid #d9e0f1;border-top-color:transparent;border-left-color:transparent;content:"";-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].prev::before{margin-left:7px;-webkit-transform:rotate(135deg);-moz-transform:rotate(135deg);-ms-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].next{margin-left:-1px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav].next::before{margin-right:7px}.content-item-wrap .quiz-buttons .lp-button[data-type=question-nav]:hover{background:#fff}.content-item-wrap .quiz-buttons.align-center{display:block;text-align:center}.content-item-wrap .quiz-buttons.align-center .button-left{text-align:center}.content-item-wrap .quiz-buttons.align-center .button-left.fixed{position:fixed;z-index:99999;bottom:0;left:50%;width:100%;max-width:792px;height:49px;margin-left:237px;transform:translateX(-50%)}@media(max-width:768px){.content-item-wrap .quiz-buttons.align-center .button-left.fixed{width:100% !important}}.content-item-wrap .quiz-buttons.align-center .button-left.nav-center{height:50px;margin-left:0 !important}.content-item-wrap .quiz-buttons:not(.infinity).is-first .prev{display:none}.content-item-wrap .quiz-buttons:not(.infinity).is-last .next{display:none}.content-item-wrap .quiz-buttons:not(.is-first):not(.is-last) .prev{border-top-right-radius:0;border-bottom-right-radius:0}.content-item-wrap .quiz-buttons:not(.is-first):not(.is-last) .next{border-top-left-radius:0;border-bottom-left-radius:0}.content-item-wrap .questions-pagination{height:33px;padding:8px 0;background:#fff;text-align:center}.content-item-wrap .questions-pagination .nav-links{text-align:center}.content-item-wrap .questions-pagination .nav-links .page-numbers{display:inline-block;vertical-align:middle;margin:0 3px 3px;padding:10px 16px;color:#666;background-color:transparent;font-size:16px;font-weight:300;line-height:1;border:1px solid;cursor:pointer}.content-item-wrap .questions-pagination .nav-links .page-numbers.next,.content-item-wrap .questions-pagination .nav-links .page-numbers.prev{display:inline-block;padding:10px;background:transparent;font-size:16px;text-align:center;text-decoration:none;text-transform:none;border:1px solid}.content-item-wrap .questions-pagination .nav-links .page-numbers.current,.content-item-wrap .questions-pagination .nav-links .page-numbers:hover{color:var(--lp-primary-color)}.course-curriculum .section-title{position:relative;margin-bottom:0;padding:8px 0;color:#5383f7;font-size:16px;font-weight:normal;line-height:1}.course-curriculum .section-title span.show-desc{display:inline-block;position:absolute;top:50%;right:30px;width:20px;height:20px;transform:translate(0,-50%)}.course-curriculum .section-title span.show-desc::before{font-family:"Font Awesome 5 Free";font-size:18px;font-weight:900;content:"\f107"}.course-curriculum .section-title span.show-desc:hover::before{border-top-color:#ccc}.lp-overlay{display:none;position:fixed;z-index:99999;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background-color:rgba(209,213,219,0.8);transition-timing-function:cubic-bezier(0.4,0,0.2,1);transition-duration:150ms;transition-property:opacity}.wp-admin .lp-modal-dialog .lp-modal-header{padding:2em}.wp-admin .lp-modal-dialog .lp-modal-header h3{font-size:1.4em}.lp-modal-dialog{display:flex;position:fixed;z-index:9999;top:0;right:0;left:0;width:100%;min-height:100vh;text-align:center;align-items:center;justify-content:center}.lp-modal-dialog .lp-modal-content{display:inline-block;overflow:hidden;z-index:2;width:auto;max-width:600px;border-radius:8px;text-align:left;vertical-align:middle;background:white;color:black}.lp-modal-dialog .lp-modal-header{background:#7c60d9;border-bottom:1px solid #eee;padding:1em}.lp-modal-dialog .lp-modal-header h3{margin:0;color:white;font-size:inherit;font-weight:400}.lp-modal-dialog .lp-modal-body .main-content{max-height:500px;overflow:auto}.lp-modal-dialog .lp-modal-body .main-content h3,.lp-modal-dialog .lp-modal-body .main-content h2,.lp-modal-dialog .lp-modal-body .main-content .pd-2em{padding:1em}.lp-modal-dialog .lp-modal-footer{padding:20px;padding-top:0;background-color:#f9fafb;text-align:right}.lp-modal-dialog .btn-yes{color:#fff;background-color:#7c60d9}#lp-modal-overlay{display:none;position:fixed;z-index:999999;top:0;right:0;bottom:0;left:0;opacity:.5;background:#000}#lp-modal-window{display:none;position:fixed;z-index:999999;top:50%;left:50%;padding:35px 60px 28px 60px;background:#fff;transform:translate(-50%,-50%);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}#lp-modal-window #lp-modal-content{margin:0 0 24px 0;color:#333;font-size:16px;font-weight:400;line-height:26px;text-align:center}#lp-modal-window #lp-modal-content>*{margin:0 0 .5em}#lp-modal-window #lp-modal-buttons{display:flex;flex-direction:row-reverse;align-items:center;justify-content:center}#lp-modal-window #lp-modal-buttons .lp-button{position:relative;margin:0 10px 0 10px}.learn-press-comments{width:792px;max-width:100%;margin:0 auto}@media(max-width:1024px){.learn-press-comments{width:100%}}.learn-press-progress{overflow:hidden;position:relative;width:80px;height:6px;border-radius:3px}.learn-press-progress .learn-press-progress__active{position:absolute;z-index:1;left:-100%;width:100%;height:100%;border-radius:3px;background:var(--lp-primary-color);-webkit-transition:.5s;-moz-transition:.5s;-ms-transition:.5s;-o-transition:.5s;transition:.5s}.learn-press-progress::before{display:block;position:absolute;z-index:0;top:0;width:100%;height:100%;background:#ccc;content:""}.course-curriculum .section-header .section-left{display:flex}.course-curriculum .section-header .section-left .section-title{flex:1}.course-curriculum .section-header .section-left .section-toggle{flex:0 0 40px;align-items:center;text-align:center;cursor:pointer}.course-curriculum .section-header .section-left .section-toggle .fa-caret-down{display:none}.course-curriculum .section-header .learn-press-progress{width:80px}.course-curriculum .section.closed .section-toggle .fa-caret-down{display:block}.course-curriculum .section.closed .section-toggle .fa-caret-up{display:none}.course-curriculum .section.closed .section-content{overflow:hidden;height:0}*{box-sizing:border-box;margin:0;padding:0}button{cursor:pointer}input,button,select,textarea{outline:0}html{overflow-x:hidden}a{-webkit-transition:.3s;-moz-transition:.3s;-ms-transition:.3s;-o-transition:.3s;transition:.3s}.lp-skeleton-animation{margin:0;padding:0;list-style:none}.lp-skeleton-animation>li{width:100%;height:16px;margin-top:15px;border-radius:2px;background:linear-gradient(90deg,hsla(0,0%,74.5%,0.2) 25%,hsla(0,0%,50.6%,0.24) 37%,hsla(0,0%,74.5%,0.2) 63%);background-size:400% 100%;list-style:none;animation:lp-skeleton-loading 1.4s ease infinite}@keyframes lp-skeleton-loading{0%{background-position:100% 50%}to{background-position:0 50%}}.learnpress.theme-twentytwentytwo .wp-site-blocks,.learnpress.twentytwentytwo .wp-site-blocks{max-width:none;padding-right:0;padding-left:0}.learnpress.theme-twentytwentytwo .wp-site-blocks>.wp-block-group,.learnpress.twentytwentytwo .wp-site-blocks>.wp-block-group{max-width:none;margin-right:auto;margin-left:auto}.learnpress.theme-twentytwentytwo .lp-archive-courses,.learnpress.twentytwentytwo .lp-archive-courses{max-width:none}.learnpress.twentytwentytwo .wp-container-11 .alignfull,.learnpress.twentytwentytwo .wp-container-9 .alignfull,.learnpress.twentytwentytwo .wp-container-12 .alignfull{max-width:100%;margin-left:0 !important;margin-right:0 !important;padding-left:0 !important;padding-right:0 !important}@media(max-width:1199px){.learnpress.twentytwentytwo .wp-site-blocks .wp-block-template-part{padding-left:15px;padding-right:15px}}input[type=text],input[type=email],input[type=number],input[type=password]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;margin:0;box-shadow:unset}body{background:#fff}body.learnpress-page{overflow-x:hidden}.wrap-fullwidth a:focus,.wrap-fullwidth button:focus,.wrap-fullwidth input:focus,.wrap-fullwidth textarea:focus{border:0;outline:0}.wrap-fullwidth a:hover{text-decoration:none}.wrap-fullwidth p{word-break:break-word}.wrap-fullwidth p:last-child{margin-bottom:0}.wrap-fullwidth label{display:block;margin:0;outline:0}.wrap-fullwidth img{max-width:100%;height:auto}.wrap-fullwidth form{margin:0}.wrap-fullwidth .col-full{box-sizing:border-box;max-width:100%;padding:0}.wrap-fullwidth .col-full .woocommerce-breadcrumb{display:none}footer{clear:both}.margin-bottom{margin-bottom:20px}.hide-if-js{display:none !important}.clearfix::after{display:block;clear:both;content:""}.lp-form-fields{margin:0;padding:0;list-style:none}.lp-form-fields .form-field{margin:0 0 20px 0;list-style:none}.lp-content-wrap{width:1170px;max-width:90%;margin:0 auto}.lp-content-wrap>h2{margin-top:0;margin-bottom:26px;color:#333;font-size:30px;font-weight:600}.learn-press-breadcrumb{max-width:1170px;width:100%;margin:0 auto 45px auto;padding:0;color:#333;font-size:14px;font-weight:400;list-style:none}.learn-press-breadcrumb li{display:inline-block;margin:0}.learn-press-breadcrumb li a:hover{color:var(--lp-primary-color)}.learn-press-breadcrumb i{margin:0 5px;color:#666;font-size:12px}@media(max-width:1024px){.learn-press-breadcrumb{padding-right:15px;padding-left:15px}}.learn-press-breadcrumb a{color:#666;font-weight:500}.learnpress-page .lp-button,.learnpress-page #lp-button{padding:16px 24px;border:1px solid #ccc;color:#333;background:transparent;box-shadow:unset;font-family:inherit;font-size:16px;font-weight:400;line-height:1;text-align:center;vertical-align:middle;text-decoration:none;text-transform:capitalize;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;-webkit-transition:all .25s;-moz-transition:all .25s;-ms-transition:all .25s;-o-transition:all .25s;transition:all .25s}.learnpress-page .lp-button.large,.learnpress-page #lp-button.large{height:52px;padding:18px 30px;font-size:18px}.learnpress-page .lp-button:hover,.learnpress-page #lp-button:hover{border-color:var(--lp-primary-color);color:#fff;background:var(--lp-primary-color)}.learnpress-page .lp-button.btn-ajax-off .icon,.learnpress-page #lp-button.btn-ajax-off .icon{display:none}.learnpress-page .lp-button.btn-ajax-on .icon,.learnpress-page #lp-button.btn-ajax-on .icon{display:inline-block;margin-right:5px;-webkit-animation:lp-rotating 1s linear infinite;-moz-animation:lp-rotating 1s linear infinite;animation:lp-rotating 1s linear infinite}.learnpress-page .lp-button:focus,.learnpress-page #lp-button:focus{outline:0}.learnpress-page .lp-button.loading::before,.learnpress-page #lp-button.loading::before{display:inline-block;font-family:"Font Awesome 5 Free";font-weight:900;content:"\f110";animation:lp-rotating 1s linear infinite}.learnpress-page .rwmb-field .description{margin-top:8px;color:#999;font-size:smaller;font-style:italic}.btn-base{border-color:var(--lp-primary-color);color:white;background-color:var(--lp-primary-color)}.lp-ajax-message{display:none;margin-top:20px;padding:20px;border:2px solid #059601;border-radius:9px;font-size:15px;line-height:1.4}.lp-ajax-message.error{border-color:#d85554}.course-meta{margin-bottom:14px}.course-meta .course-students::before{font-family:"Font Awesome 5 Free";content:""}.lp-entry-content .course-tabs{margin-bottom:60px}.learn-press-checkout-comment h4{display:none}.order-comments{width:100%;padding:15px;min-height:150px;border:1px solid #ccc;resize:none}.learn-press-progress .progress-bg{overflow:hidden;position:relative;height:6px;background:#ccc;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.learn-press-progress .progress-bg .progress-active{position:absolute;left:50%;width:100%;height:100%;margin-left:-100%;background:var(--lp-primary-color);-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.retake-course,.enroll-course,.purchase-course{display:inline-block}.table-orders{font-size:16px}.table-orders th,.table-orders td{padding:5px 10px}.form-button{display:inline-block}.learn-press-pagination{padding-bottom:20px;text-align:center}.learn-press-pagination .page-numbers{display:inline-block;margin:0;padding:0;border:0;outline:0;background:transparent;list-style:none}.learn-press-pagination .page-numbers>li{display:inline-block;margin:0;padding:0 14px}.learn-press-pagination .page-numbers>li .page-numbers{float:unset;padding:0;color:#666;background:transparent;font-size:16px;font-weight:300}.learn-press-pagination .page-numbers>li .page-numbers.current{color:var(--lp-primary-color);font-weight:400}.learn-press-pagination .page-numbers>li .page-numbers:hover{color:var(--lp-primary-color)}ul.list-table-nav{display:flex;margin-left:0;list-style:none}ul.list-table-nav .nav-text{text-align:left;flex:1}ul.list-table-nav .nav-pages{text-align:right;flex:1}ul.list-table-nav .nav-pages .learn-press-pagination{display:inline-block;margin-bottom:0}.primary-color{color:#00adff}.primary-color-before::before{color:#00adff}.primary-color-after::after{color:#00adff}.primary-background-color{background:#00adff}.primary-background-color{background:#00adff}.course-origin-price{margin-right:5px;font-size:85%;text-decoration:line-through}.course-item-nav{display:flex}.course-item-nav .prev span,.course-item-nav .next span{display:block;font-weight:bold}.course-item-nav .prev a,.course-item-nav .next a{color:#999}.course-item-nav .next{text-align:right}.content-item-wrap #comments{margin-right:0;margin-left:0}.content-item-wrap #comments #comment{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.course-summary-sidebar{position:relative}@media(min-width:769px){.course-summary-sidebar.slide-down .course-summary-sidebar__inner{position:fixed;top:0}}@media(min-width:1200px){.course-summary-sidebar.slide-top .course-summary-sidebar__inner{position:absolute}}.course-graduation span{color:#999}.course-graduation .icon{margin-right:5px;font-size:20px}.course-graduation.passed .icon{color:#059601}.course-graduation.error .icon{color:#d85554}.learn-press-template-warning::before{color:#ffc107;font-family:"Font Awesome 5 Free";content:"\f071"}.lp-badge{display:flex;height:30px;padding:0;line-height:1;align-items:center;justify-content:center}.lp-badge::before,.lp-badge::after{content:""}.lp-badge::before{display:inline-block;position:relative;z-index:10;color:#fff;font-weight:bold;line-height:1}.lp-badge.featured-course{position:absolute;z-index:1;top:25px;left:-110px;width:300px;background:#93f;text-align:center;transform:rotate(-45deg)}.lp-badge.featured-course::before{font-size:12px;text-transform:uppercase;content:attr(data-text)}@media(min-width:769px){#learn-press-item-comments{padding-bottom:50px}}.course-tabs input[name=learn-press-course-tab-radio],.course-tabs .course-tab-panel{display:none}.course-tabs .course-nav label{display:flex;align-items:center;justify-content:center;margin:0;padding:17px 10px;font-size:16px;line-height:1;font-weight:600;text-transform:capitalize;cursor:pointer}.no-event{pointer-events:none}@media screen and (max-width:768px){ul.learn-press-courses .course{width:48%}}@media screen and (max-width:600px){ul.learn-press-courses .course{width:100%;margin-right:0}}.course-price:empty{display:none !important}.quiz-attempts .attempts-heading{margin-bottom:15px}.quiz-attempts table{border-spacing:0;border-left:1px solid var(--lp-secondary-color);border-top:1px solid var(--lp-secondary-color);width:100%}.quiz-attempts table tr th,.quiz-attempts table tr td{border-right:1px solid var(--lp-secondary-color);border-bottom:1px solid var(--lp-secondary-color);padding:5px 15px;text-align:center}.quiz-attempts table tr th{font-weight:500}@media(max-width:575px){#popup-course .quiz-attempts{overflow-x:auto}}
|
assets/js/admin/learnpress.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
const $=jQuery,$doc=$(document),$win=$(window),makePaymentsSortable=function(){$(".learn-press-payments.sortable tbody").sortable({handle:".dashicons-menu",helper:(e,t)=>(t.children().each((function(){$(this).width($(this).width())})),t),axis:"y",start(e,t){},stop(e,t){},update(e,t){const a=$(this).children().map((function(){return $(this).find('input[name="payment-order"]').val()})).get();$.post({url:"",data:{"lp-ajax":"update-payment-order",order:a},success(e){}})}})},lpMetaboxCustomFields=()=>{$(".lp-metabox__custom-fields").on("click",".lp-metabox-custom-field-button",(function(){const t=$(this).data("row").replace(/lp_metabox_custom_fields_key/gi,Math.floor(1e3*Math.random())+1);return $(this).closest("table").find("tbody").append(t),e($(this).closest(".lp-metabox__custom-fields")),!1})),$(".lp-metabox__custom-fields").on("click","a.delete",(function(){return $(this).closest("tr").remove(),e($(this).closest(".lp-metabox__custom-fields")),!1})),$(".lp-metabox__custom-fields tbody").sortable({items:"tr",cursor:"move",axis:"y",handle:"td.sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65,update(t,a){e($(this).closest(".lp-metabox__custom-fields"))}});const e=e=>{e.find("tbody tr").each((function(e,t){$(this).find(".sort .count").val(e)}))}},lpMetaboxRepeaterField=()=>{const e=e=>{e.find(".lp_repeater_meta_box__field").each((function(e,t){$(this).find(".lp_repeater_meta_box__field__count").val(e),$(this).find(".lp_repeater_meta_box__title__title > span").text(e+1)}))};$(".lp_repeater_meta_box__add").on("click",(function(){const t=$(this).data("add").replace(/lp_metabox_repeater_key/gi,Math.floor(1e3*Math.random())+1);return $(this).closest(".lp_repeater_meta_box__wrapper").find(".lp_repeater_meta_box__fields").append(t),e($(this).closest(".lp_repeater_meta_box__wrapper")),$(this).closest(".lp_repeater_meta_box__wrapper").find(".lp_repeater_meta_box__fields").last().find("input").trigger("focus"),!1})),$(".lp_repeater_meta_box__wrapper").on("click","a.lp_repeater_meta_box__title__delete",(function(){return $(this).closest(".lp_repeater_meta_box__field").remove(),e($(this).closest(".lp_repeater_meta_box__wrapper")),!1})),$(".lp_repeater_meta_box__fields").on("click",".lp_repeater_meta_box__title__toggle, .lp_repeater_meta_box__title__title",(function(){const e=$(this).closest(".lp_repeater_meta_box__field");return e.hasClass("lp_repeater_meta_box__field_active")?e.removeClass("lp_repeater_meta_box__field_active"):e.addClass("lp_repeater_meta_box__field_active"),!1})),$(".lp_repeater_meta_box__fields").sortable({items:".lp_repeater_meta_box__field",cursor:"grab",axis:"y",handle:".lp_repeater_meta_box__title__sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65,update(t,a){e($(this).closest(".lp_repeater_meta_box__wrapper"))}})},lpMetaboxExtraInfo=()=>{$(".lp_course_extra_meta_box__add").on("click",(function(){return $(this).closest(".lp_course_extra_meta_box__content").find(".lp_course_extra_meta_box__fields").append($(this).data("add")),$(this).closest(".lp_course_extra_meta_box__content").find(".lp_course_extra_meta_box__field").last().find("input").trigger("focus"),!1})),document.querySelectorAll(".lp_course_extra_meta_box__fields").forEach(e=>{e.addEventListener("keydown",t=>{const a=e.querySelectorAll(".lp_course_extra_meta_box__input");if(13===t.keyCode)return t.preventDefault(),a.forEach(e=>{e.blur()}),!1})}),$(".lp_course_extra_meta_box__fields").on("click","a.delete",(function(){return $(this).closest(".lp_course_extra_meta_box__field").remove(),!1})),$(".lp_course_extra_meta_box__fields").sortable({items:".lp_course_extra_meta_box__field",cursor:"grab",axis:"y",handle:".sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65}),$(".lp_course_faq_meta_box__add").on("click",(function(){return $(this).closest(".lp_course_faq_meta_box__content").find(".lp_course_faq_meta_box__fields").append($(this).data("add")),!1})),document.querySelectorAll(".lp_course_faq_meta_box__fields").forEach(e=>{e.addEventListener("keydown",t=>{const a=e.querySelectorAll(".lp_course_faq_meta_box__field input"),s=e.querySelectorAll(".lp_course_faq_meta_box__field textarea");if(13===t.keyCode)return t.preventDefault(),[...a,...s].forEach(e=>{e.blur()}),!1})}),$(".lp_course_faq_meta_box__fields").on("click","a.delete",(function(){return $(this).closest(".lp_course_faq_meta_box__field").remove(),!1})),$(".lp_course_faq_meta_box__fields").sortable({items:".lp_course_faq_meta_box__field",cursor:"grab",axis:"y",handle:".sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65})},lpGetFinalQuiz=()=>{[...document.querySelectorAll(".lp-metabox-get-final-quiz")].map(t=>{t.addEventListener("click",a=>{a.preventDefault();const s=t.textContent,l=t.dataset.loading,i=document.querySelector(".lp-metabox-evaluate-final_quiz");i&&i.remove(),t.textContent=l,e(t).then(e=>{const{message:a,data:l}=e;t.textContent=s;const i=document.createElement("div");i.className="lp-metabox-evaluate-final_quiz",i.innerHTML=l||a,t.parentNode.insertBefore(i,t.nextSibling)})})});const e=async e=>{if(!lpGlobalSettings.root)return;return await wp.apiFetch({path:"lp/v1/admin/course/get_final_quiz",method:"POST",data:{courseId:e.dataset.postid||""}})}},lpMetaboxColorPicker=()=>{$(".lp-metabox__colorpick").iris({change(e,t){$(this).parent().find(".colorpickpreview").css({backgroundColor:t.color.toString()})},hide:!0,border:!0}).on("click focus",(function(e){e.stopPropagation(),$(".iris-picker").hide(),$(this).closest("td").find(".iris-picker").show(),$(this).data("original-value",$(this).val())})).on("change",(function(){if($(this).is(".iris-error")){$(this).data("original-value").match(/^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/)?$(this).val($(this).data("original-value")).trigger("change"):$(this).val("").trigger("change")}})),$("body").on("click",(function(){$(".iris-picker").hide()}))},lpMetaboxImage=()=>{$(".lp-metabox-field__image").each((e,t)=>{let a;const s=$(t).find(".lp-metabox-field__image--add"),l=$(t).find(".lp-metabox-field__image--delete"),i=$(t).find(".lp-metabox-field__image--image"),o=$(t).find(".lp-metabox-field__image--id");o.val()?(s.hide(),l.show()):(s.show(),l.hide()),s.on("click",e=>{e.preventDefault(),a||(a=wp.media({title:s.data("choose"),button:{text:s.data("update")},multiple:!1}),a.on("select",(function(){const e=a.state().get("selection").first().toJSON(),t=e.sizes&&e.sizes.thumbnail?e.sizes.thumbnail.url:e.url;i.append('<div class="lp-metabox-field__image--inner"><img src="'+t+'" alt="" style="max-width:100%;"/></div>'),o.val(e.id),s.hide(),l.show()}))),a.open()}),l.on("click",e=>{e.preventDefault(),i.html(""),s.show(),l.hide(),o.val("")})})},lpMetaboxImageAdvanced=()=>{$(".lp-metabox-field__image-advanced").each((e,t)=>{let a;const s=$(t).find("#lp-gallery-images-ids"),l=$(t).find(".lp-metabox-field__image-advanced-images"),i=$(t).find(".lp-metabox-field__image-advanced-upload > a");$(i).on("click",e=>{e.preventDefault(),a||(a=wp.media({title:i.data("choose"),button:{text:i.data("update")},states:[new wp.media.controller.Library({title:i.data("choose"),filterable:"all",multiple:!0})]}),a.on("select",(function(){const e=a.state().get("selection");let t=s.val();e.forEach((function(e){if((e=e.toJSON()).id){t=t?t+","+e.id:e.id;const a=e.sizes&&e.sizes.thumbnail?e.sizes.thumbnail.url:e.url;l.append('<li class="image" data-attachment_id="'+e.id+'"><img src="'+a+'" /><ul class="actions"><li><a href="#" class="delete" title="'+i.data("delete")+'">'+i.data("text")+"</a></li></ul></li>")}})),s.val(t)}))),a.open()}),l.sortable({items:"li.image",cursor:"move",scrollSensitivity:40,forcePlaceholderSize:!0,forceHelperSize:!1,helper:"clone",opacity:.65,placeholder:"lp-metabox-sortable-placeholder",start(e,t){t.item.css("background-color","#f6f6f6")},stop(e,t){t.item.removeAttr("style")},update(){let e="";l.find("li.image").css("cursor","default").each((function(){const t=$(this).attr("data-attachment_id");e=e+t+","})),s.val(e)}}),$(l).find("li.image").each((e,t)=>{$(t).find("a.delete").on("click",()=>{$(t).remove();let e="";return $(l).find("li.image").css("cursor","default").each((function(){const t=$(this).attr("data-attachment_id");e=e+t+","})),s.val(e),!1})})})},lpMetaboxCourseTabs=()=>{$(document.body).on("lp-metabox-course-tab-panels",(function(){$("ul.lp-meta-box__course-tab__tabs").show(),$("ul.lp-meta-box__course-tab__tabs a").on("click",(function(e){e.preventDefault();const t=$(this).closest("div.lp-meta-box__course-tab");$("ul.lp-meta-box__course-tab__tabs li",t).removeClass("active"),$(this).parent().addClass("active"),$("div.lp-meta-box-course-panels",t).hide(),$($(this).attr("href")).show()})),$("div.lp-meta-box__course-tab").each((function(){$(this).find("ul.lp-meta-box__course-tab__tabs li").eq(0).find("a").trigger("click")}))})).trigger("lp-metabox-course-tab-panels")},lpMetaboxCondition=()=>{document.querySelectorAll(".lp-meta-box .form-field").forEach(e=>{e.hasAttribute("data-show")&&e.dataset.show?lpMetaboxConditionType(e,e.dataset.show,"show"):e.hasAttribute("data-hide")&&e.dataset.hide&&lpMetaboxConditionType(e,e.dataset.hide,"hide")})},lpMetaboxConditionType=(e,t,a="show")=>{const s=JSON.parse(t),l=document.querySelectorAll(`input[id^="${s[0]}"]`),i="="===s[1]?"=":"!=",o=s[2],n=(t,s,l)=>{switch(t){case"checkbox":let t=o;"yes"===o||"1"===o||1===o||"true"===o?t=!0:"no"!==o&&"0"!==o&&0!==o&&"false"!==o||(t=!1),"!="==i&&t!==Boolean(l?l.checked:s.checked)||"="==i&&t==Boolean(l?l.checked:s.checked)?e.style.display="show"===a?"flex":"none":e.style.display="show"===a?"none":"flex"}};l.forEach(e=>{const t=e.getAttribute("type");n(t,e),e.addEventListener("change",a=>{const s=a.target;n(t,e,s)})})},initTooltips=function(){$(".learn-press-tooltip").each((function(){const e=$(this),t=$.extend({title:"data-tooltip",offset:10,gravity:"s"},e.data());e.tipsy(t)}))},initSelect2=function(){$.fn.select2&&$(".lp-select-2 select").select2()},initSingleCoursePermalink=function(){$doc.on("change",'.learn-press-single-course-permalink input[type="radio"]',(function(){const e=$(this).closest(".learn-press-single-course-permalink");e.hasClass("custom-base")?e.find('input[type="text"]').prop("readonly",!1):e.siblings(".custom-base").find('input[type="text"]').prop("readonly",!0)})).on("change","input.learn-press-course-base",(function(){$("#course_permalink_structure").val($(this).val())})).on("focus","#course_permalink_structure",(function(){$("#learn_press_custom_permalink").click()})).on("change","#learn_press_courses_page_id",(function(){$("tr.learn-press-courses-page-id").toggleClass("hide-if-js",!parseInt(this.value))}))},togglePaymentStatus=function(e){e.preventDefault();const t=$(this).closest("tr"),a=($(this),t.find(".status").hasClass("enabled")?"no":"yes");$.ajax({url:"",data:{"lp-ajax":"update-payment-status",status:a,id:t.data("payment")},success(e){e=LP.parseJSON(e);for(const t in e)$("#payment-"+t+" .status").toggleClass("enabled",e[t])}})},updateEmailStatus=function(){(function(){$.post({url:window.location.href,data:{"lp-ajax":"update_email_status",status:$(this).parent().hasClass("enabled")?"no":"yes",id:$(this).data("id")},dataType:"text",success:$.proxy((function(e){e=LP.parseJSON(e);for(const t in e)$("#email-"+t+" .status").toggleClass("enabled",e[t])}),this)})}).apply(this)},lpMetaboxsalePriceDate=()=>{if(!$("#course-settings").length)return;$(".lp_sale_dates_fields").each((function(){const e=$(this),t=e.closest("div.lp-meta-box-course-panels");let a=!1;e.find("input").each((function(){""!==$(this).val()&&(a=!0)})),a?(t.find(".lp_sale_price_schedule").hide(),t.find(".lp_sale_dates_fields").show()):(t.find(".lp_sale_price_schedule").show(),t.find(".lp_sale_dates_fields").hide())})),$(".lp-meta-box-course-panels").on("click",".lp_sale_price_schedule",(function(){const e=$(this).closest("div.lp-meta-box-course-panels");return $(this).hide(),e.find(".lp_cancel_sale_schedule").show(),e.find(".lp_sale_dates_fields").show(),!1})),$(".lp-meta-box-course-panels").on("click",".lp_cancel_sale_schedule",(function(){const e=$(this).closest("div.lp-meta-box-course-panels");return $(this).hide(),e.find(".lp_sale_price_schedule").show(),e.find(".lp_sale_dates_fields").hide(),e.find(".lp_sale_dates_fields").find("input").val(""),!1})),$(document).on("input","#price_course_data",(function(e){const t=$(this),a=$(".lp_meta_box_regular_price"),s=$(".lp_meta_box_sale_price"),l=$(e.target).attr("id");t.find(".learn-press-tip-floating").remove(),parseInt(s.val())>parseInt(a.val())&&("_lp_price"===l?a.parent(".form-field").append('<div class="learn-press-tip-floating">'+lpAdminCourseEditorSettings.i18n.notice_price+"</div>"):"_lp_sale_price"===l&&s.parent(".form-field").append('<div class="learn-press-tip-floating">'+lpAdminCourseEditorSettings.i18n.notice_sale_price+"</div>"))}));const e=function(e){const t=$(e).is("#_lp_sale_start")?"minDate":"maxDate",a=$("minDate"===t?"#_lp_sale_end":"#_lp_sale_start"),s=$(e).datetimepicker("getDate");$(a).datetimepicker("option",t,s),$(e).trigger("change")};$(".lp_sale_dates_fields").each((function(){$(this).find("input").datetimepicker({timeFormat:"HH:mm",separator:" ",dateFormat:"yy-mm-dd",showButtonPanel:!0,onSelect(){e($(this))}}),$(this).find("input").each((function(){e($(this))}))}))},lpHidePassingGrade=()=>{const e=["evaluate_final_quiz","evaluate_final_assignment"];[...document.querySelectorAll("input[type=radio][name=_lp_course_result]")].map((t,a)=>(t.checked&&e.includes(t.value)&&$("._lp_passing_condition_field").hide(),null)),$("input[type=radio][name=_lp_course_result]").on("change",(function(t){e.includes(t.target.value)?$("._lp_passing_condition_field").hide():$("._lp_passing_condition_field").show()}))},callbackFilterTemplates=function(){const e=$(this);if(e.hasClass("current"))return!1;const t=$("#learn-press-template-files"),a=t.find("tr[data-template]"),s=e.data("template"),l=e.data("filter");return e.addClass("current").siblings("a").removeClass("current"),s?a.map((function(){$(this).toggleClass("hide-if-js",$(this).data("template")!==s)})):l?a.map((function(){$(this).toggleClass("hide-if-js","yes"!==$(this).data("filter-"+l))})):a.removeClass("hide-if-js"),$("#learn-press-no-templates").toggleClass("hide-if-js",!!t.find("tr.template-row:not(.hide-if-js):first").length),!1},toggleEmails=function(e){e.preventDefault();const t=$(this).data("status");$.ajax({url:"",data:{"lp-ajax":"update_email_status",status:t},success(e){e=LP.parseJSON(e);for(const t in e)$("#email-"+t+" .status").toggleClass("enabled",e[t])}})},importCourses=function(){const t=$("#learn-press-install-sample-data-notice"),a=$(this).attr("data-action");a&&(e.preventDefault(),"yes"===a?t.find(".install-sample-data-notice").slideUp().siblings(".install-sample-data-loading").slideDown():t.fadeOut(),$.ajax({url:ajaxurl,dataType:"html",type:"post",data:{action:"learnpress_install_sample_data",yes:a},success(e){(e=LP.parseJSON(e)).url?$.ajax({url:e.url,success(){t.find(".install-sample-data-notice").html(e.message).slideDown().siblings(".install-sample-data-loading").slideUp()}}):t.find(".install-sample-data-notice").html(e.message).slideDown().siblings(".install-sample-data-loading").slideUp()}}))},onReady=function(){$(".learn-press-payments.sortable tbody").sortable({handle:".dashicons-menu",helper:(e,t)=>(t.children().each((function(){$(this).width($(this).width())})),t),axis:"y",start(e,t){},stop(e,t){},update(e,t){const a=$(this).children().map((function(){return $(this).find('input[name="payment-order"]').val()})).get();$.post({url:"",data:{"lp-ajax":"update-payment-order",order:a},success(e){}})}}),$.fn.select2&&$(".lp-select-2 select").select2(),$(".learn-press-tooltip").each((function(){const e=$(this),t=$.extend({title:"data-tooltip",offset:10,gravity:"s"},e.data());e.tipsy(t)})),$doc.on("change",'.learn-press-single-course-permalink input[type="radio"]',(function(){const e=$(this).closest(".learn-press-single-course-permalink");e.hasClass("custom-base")?e.find('input[type="text"]').prop("readonly",!1):e.siblings(".custom-base").find('input[type="text"]').prop("readonly",!0)})).on("change","input.learn-press-course-base",(function(){$("#course_permalink_structure").val($(this).val())})).on("focus","#course_permalink_structure",(function(){$("#learn_press_custom_permalink").click()})).on("change","#learn_press_courses_page_id",(function(){$("tr.learn-press-courses-page-id").toggleClass("hide-if-js",!parseInt(this.value))})),lpMetaboxCourseTabs(),lpMetaboxCustomFields(),lpMetaboxColorPicker(),lpMetaboxImageAdvanced(),$(".lp-metabox-field__image").each((e,t)=>{let a;const s=$(t).find(".lp-metabox-field__image--add"),l=$(t).find(".lp-metabox-field__image--delete"),i=$(t).find(".lp-metabox-field__image--image"),o=$(t).find(".lp-metabox-field__image--id");o.val()?(s.hide(),l.show()):(s.show(),l.hide()),s.on("click",e=>{e.preventDefault(),a||(a=wp.media({title:s.data("choose"),button:{text:s.data("update")},multiple:!1}),a.on("select",(function(){const e=a.state().get("selection").first().toJSON(),t=e.sizes&&e.sizes.thumbnail?e.sizes.thumbnail.url:e.url;i.append('<div class="lp-metabox-field__image--inner"><img src="'+t+'" alt="" style="max-width:100%;"/></div>'),o.val(e.id),s.hide(),l.show()}))),a.open()}),l.on("click",e=>{e.preventDefault(),i.html(""),s.show(),l.hide(),o.val("")})}),lpMetaboxsalePriceDate(),lpMetaboxExtraInfo(),lpHidePassingGrade(),lpGetFinalQuiz(),document.querySelectorAll(".lp-meta-box .form-field").forEach(e=>{e.hasAttribute("data-show")&&e.dataset.show?lpMetaboxConditionType(e,e.dataset.show,"show"):e.hasAttribute("data-hide")&&e.dataset.hide&&lpMetaboxConditionType(e,e.dataset.hide,"hide")}),lpMetaboxRepeaterField(),$(document).on("click",".learn-press-payments .status .dashicons",togglePaymentStatus).on("click",".change-email-status",updateEmailStatus).on("click",".learn-press-filter-template",callbackFilterTemplates).on("click","#learn-press-enable-emails, #learn-press-disable-emails",toggleEmails).on("click","#learn-press-install-sample-data-notice a",importCourses)};$(document).ready(onReady);
|
1 |
+
const $=jQuery,$doc=$(document),$win=$(window),makePaymentsSortable=function(){$(".learn-press-payments.sortable tbody").sortable({handle:".dashicons-menu",helper:(e,t)=>(t.children().each((function(){$(this).width($(this).width())})),t),axis:"y",start(e,t){},stop(e,t){},update(e,t){const a=$(this).children().map((function(){return $(this).find('input[name="payment-order"]').val()})).get();$.post({url:"",data:{"lp-ajax":"update-payment-order",order:a},success(e){}})}})},lpMetaboxCustomFields=()=>{$(".lp-metabox__custom-fields").on("click",".lp-metabox-custom-field-button",(function(){const t=$(this).data("row").replace(/lp_metabox_custom_fields_key/gi,Math.floor(1e3*Math.random())+1);return $(this).closest("table").find("tbody").append(t),e($(this).closest(".lp-metabox__custom-fields")),!1})),$(".lp-metabox__custom-fields").on("click","a.delete",(function(){return $(this).closest("tr").remove(),e($(this).closest(".lp-metabox__custom-fields")),!1})),$(".lp-metabox__custom-fields tbody").sortable({items:"tr",cursor:"move",axis:"y",handle:"td.sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65,update(t,a){e($(this).closest(".lp-metabox__custom-fields"))}});const e=e=>{e.find("tbody tr").each((function(e,t){$(this).find(".sort .count").val(e)}))}},lpMetaboxRepeaterField=()=>{const e=e=>{e.find(".lp_repeater_meta_box__field").each((function(e,t){$(this).find(".lp_repeater_meta_box__field__count").val(e),$(this).find(".lp_repeater_meta_box__title__title > span").text(e+1)}))};$(".lp_repeater_meta_box__add").on("click",(function(){const t=$(this).data("add").replace(/lp_metabox_repeater_key/gi,Math.floor(1e3*Math.random())+1);return $(this).closest(".lp_repeater_meta_box__wrapper").find(".lp_repeater_meta_box__fields").append(t),e($(this).closest(".lp_repeater_meta_box__wrapper")),$(this).closest(".lp_repeater_meta_box__wrapper").find(".lp_repeater_meta_box__fields").last().find("input").trigger("focus"),!1})),$(".lp_repeater_meta_box__wrapper").on("click","a.lp_repeater_meta_box__title__delete",(function(){return $(this).closest(".lp_repeater_meta_box__field").remove(),e($(this).closest(".lp_repeater_meta_box__wrapper")),!1})),$(".lp_repeater_meta_box__fields").on("click",".lp_repeater_meta_box__title__toggle, .lp_repeater_meta_box__title__title",(function(){const e=$(this).closest(".lp_repeater_meta_box__field");return e.hasClass("lp_repeater_meta_box__field_active")?e.removeClass("lp_repeater_meta_box__field_active"):e.addClass("lp_repeater_meta_box__field_active"),!1})),$(".lp_repeater_meta_box__fields").sortable({items:".lp_repeater_meta_box__field",cursor:"grab",axis:"y",handle:".lp_repeater_meta_box__title__sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65,update(t,a){e($(this).closest(".lp_repeater_meta_box__wrapper"))}})},lpMetaboxExtraInfo=()=>{$(".lp_course_extra_meta_box__add").on("click",(function(){return $(this).closest(".lp_course_extra_meta_box__content").find(".lp_course_extra_meta_box__fields").append($(this).data("add")),$(this).closest(".lp_course_extra_meta_box__content").find(".lp_course_extra_meta_box__field").last().find("input").trigger("focus"),!1})),document.querySelectorAll(".lp_course_extra_meta_box__fields").forEach(e=>{e.addEventListener("keydown",t=>{const a=e.querySelectorAll(".lp_course_extra_meta_box__input");if(13===t.keyCode)return t.preventDefault(),a.forEach(e=>{e.blur()}),!1})}),$(".lp_course_extra_meta_box__fields").on("click","a.delete",(function(){return $(this).closest(".lp_course_extra_meta_box__field").remove(),!1})),$(".lp_course_extra_meta_box__fields").sortable({items:".lp_course_extra_meta_box__field",cursor:"grab",axis:"y",handle:".sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65}),$(".lp_course_faq_meta_box__add").on("click",(function(){return $(this).closest(".lp_course_faq_meta_box__content").find(".lp_course_faq_meta_box__fields").append($(this).data("add")),!1})),document.querySelectorAll(".lp_course_faq_meta_box__fields").forEach(e=>{e.addEventListener("keydown",t=>{const a=e.querySelectorAll(".lp_course_faq_meta_box__field input"),s=e.querySelectorAll(".lp_course_faq_meta_box__field textarea");if(13===t.keyCode)return t.preventDefault(),[...a,...s].forEach(e=>{e.blur()}),!1})}),$(".lp_course_faq_meta_box__fields").on("click","a.delete",(function(){return $(this).closest(".lp_course_faq_meta_box__field").remove(),!1})),$(".lp_course_faq_meta_box__fields").sortable({items:".lp_course_faq_meta_box__field",cursor:"grab",axis:"y",handle:".sort",scrollSensitivity:40,forcePlaceholderSize:!0,helper:"clone",opacity:.65})},lpGetFinalQuiz=()=>{[...document.querySelectorAll(".lp-metabox-get-final-quiz")].map(t=>{t.addEventListener("click",a=>{a.preventDefault();const s=t.textContent,l=t.dataset.loading,i=document.querySelector(".lp-metabox-evaluate-final_quiz");i&&i.remove(),t.textContent=l,e(t).then(e=>{const{message:a,data:l}=e;t.textContent=s;const i=document.createElement("div");i.className="lp-metabox-evaluate-final_quiz",i.innerHTML=l||a,t.parentNode.insertBefore(i,t.nextSibling)})})});const e=async e=>{if(!lpGlobalSettings.root)return;return await wp.apiFetch({path:"lp/v1/admin/course/get_final_quiz",method:"POST",data:{courseId:e.dataset.postid||""}})}},lpMetaboxColorPicker=()=>{$(".lp-metabox__colorpick").iris({change(e,t){$(this).parent().find(".colorpickpreview").css({backgroundColor:t.color.toString()})},hide:!0,border:!0}).on("click focus",(function(e){e.stopPropagation(),$(".iris-picker").hide(),$(this).closest("td").find(".iris-picker").show(),$(this).data("original-value",$(this).val())})).on("change",(function(){if($(this).is(".iris-error")){$(this).data("original-value").match(/^\#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/)?$(this).val($(this).data("original-value")).trigger("change"):$(this).val("").trigger("change")}})),$("body").on("click",(function(){$(".iris-picker").hide()}))},lpMetaboxImage=()=>{$(".lp-metabox-field__image").each((e,t)=>{let a;const s=$(t).find(".lp-metabox-field__image--add"),l=$(t).find(".lp-metabox-field__image--delete"),i=$(t).find(".lp-metabox-field__image--image"),o=$(t).find(".lp-metabox-field__image--id");o.val()?(s.hide(),l.show()):(s.show(),l.hide()),s.on("click",e=>{e.preventDefault(),a||(a=wp.media({title:s.data("choose"),button:{text:s.data("update")},multiple:!1}),a.on("select",(function(){const e=a.state().get("selection").first().toJSON(),t=e.sizes&&e.sizes.thumbnail?e.sizes.thumbnail.url:e.url;i.append('<div class="lp-metabox-field__image--inner"><img src="'+t+'" alt="" style="max-width:100%;"/></div>'),o.val(e.id),s.hide(),l.show()}))),a.open()}),l.on("click",e=>{e.preventDefault(),i.html(""),s.show(),l.hide(),o.val("")})})},lpMetaboxImageAdvanced=()=>{$(".lp-metabox-field__image-advanced").each((e,t)=>{let a;const s=$(t).find("#lp-gallery-images-ids"),l=$(t).find(".lp-metabox-field__image-advanced-images"),i=$(t).find(".lp-metabox-field__image-advanced-upload > a");$(i).on("click",e=>{e.preventDefault(),a||(a=wp.media({title:i.data("choose"),button:{text:i.data("update")},states:[new wp.media.controller.Library({title:i.data("choose"),filterable:"all",multiple:!0})]}),a.on("select",(function(){const e=a.state().get("selection");let t=s.val();e.forEach((function(e){if((e=e.toJSON()).id){t=t?t+","+e.id:e.id;const a=e.sizes&&e.sizes.thumbnail?e.sizes.thumbnail.url:e.url;l.append('<li class="image" data-attachment_id="'+e.id+'"><img src="'+a+'" /><ul class="actions"><li><a href="#" class="delete" title="'+i.data("delete")+'">'+i.data("text")+"</a></li></ul></li>")}})),s.val(t)}))),a.open()}),l.sortable({items:"li.image",cursor:"move",scrollSensitivity:40,forcePlaceholderSize:!0,forceHelperSize:!1,helper:"clone",opacity:.65,placeholder:"lp-metabox-sortable-placeholder",start(e,t){t.item.css("background-color","#f6f6f6")},stop(e,t){t.item.removeAttr("style")},update(){let e="";l.find("li.image").css("cursor","default").each((function(){const t=$(this).attr("data-attachment_id");e=e+t+","})),s.val(e)}}),$(l).find("li.image").each((e,t)=>{$(t).find("a.delete").on("click",()=>{$(t).remove();let e="";return $(l).find("li.image").css("cursor","default").each((function(){const t=$(this).attr("data-attachment_id");e=e+t+","})),s.val(e),!1})})})},lpMetaboxCourseTabs=()=>{$(document.body).on("lp-metabox-course-tab-panels",(function(){$("ul.lp-meta-box__course-tab__tabs").show(),$("ul.lp-meta-box__course-tab__tabs a").on("click",(function(e){e.preventDefault();const t=$(this).closest("div.lp-meta-box__course-tab");$("ul.lp-meta-box__course-tab__tabs li",t).removeClass("active"),$(this).parent().addClass("active"),$("div.lp-meta-box-course-panels",t).hide(),$($(this).attr("href")).show()})),$("div.lp-meta-box__course-tab").each((function(){$(this).find("ul.lp-meta-box__course-tab__tabs li").eq(0).find("a").trigger("click")}))})).trigger("lp-metabox-course-tab-panels")},lpMetaboxCondition=()=>{document.querySelectorAll(".lp-meta-box .form-field").forEach(e=>{e.hasAttribute("data-show")&&e.dataset.show?lpMetaboxConditionType(e,e.dataset.show,"show"):e.hasAttribute("data-hide")&&e.dataset.hide&&lpMetaboxConditionType(e,e.dataset.hide,"hide")})},lpMetaboxConditionType=(e,t,a="show")=>{const s=JSON.parse(t),l=document.querySelectorAll(`input[id^="${s[0]}"]`),i="="===s[1]?"=":"!=",o=s[2],n=(t,s,l)=>{switch(t){case"checkbox":let t=o;"yes"===o||"1"===o||1===o||"true"===o?t=!0:"no"!==o&&"0"!==o&&0!==o&&"false"!==o||(t=!1),"!="==i&&t!==Boolean(l?l.checked:s.checked)||"="==i&&t==Boolean(l?l.checked:s.checked)?e.style.display="show"===a?"flex":"none":e.style.display="show"===a?"none":"flex"}};l.forEach(e=>{const t=e.getAttribute("type");n(t,e),e.addEventListener("change",a=>{const s=a.target;n(t,e,s)})})},initTooltips=function(){$(".learn-press-tooltip").each((function(){const e=$(this),t=$.extend({title:"data-tooltip",offset:10,gravity:"s"},e.data());e.tipsy(t)}))},initSelect2=function(){if($.fn.select2){const e=$(".lp-select-2 select");e.select2({placeholder:"Select a value"}),e.on("change.select2",(function(e){const t=$(e.target);t.val().length||t.val(null)})),$(".lp_autocomplete_metabox_field").each((function(){const e=$(this).data("atts");let t=e.action;if(!t)switch(e.data){case"users":t=e.rest_url+"wp/v2/users";break;default:t=e.rest_url+"wp/v2/"+e.data}$(this).find("select").select2({placeholder:e.placeholder?e.placeholder:"Select",ajax:{url:t,dataType:"json",delay:250,beforeSend(t){t.setRequestHeader("X-WP-Nonce",e.nonce)},data:e=>({search:e.term}),processResults:e=>({results:e.map(e=>({id:e.id,text:e.title&&e.title.rendered?e.title.rendered:e.name}))}),cache:!0},minimumInputLength:2})}))}},initSingleCoursePermalink=function(){$doc.on("change",'.learn-press-single-course-permalink input[type="radio"]',(function(){const e=$(this).closest(".learn-press-single-course-permalink");e.hasClass("custom-base")?e.find('input[type="text"]').prop("readonly",!1):e.siblings(".custom-base").find('input[type="text"]').prop("readonly",!0)})).on("change","input.learn-press-course-base",(function(){$("#course_permalink_structure").val($(this).val())})).on("focus","#course_permalink_structure",(function(){$("#learn_press_custom_permalink").click()})).on("change","#learn_press_courses_page_id",(function(){$("tr.learn-press-courses-page-id").toggleClass("hide-if-js",!parseInt(this.value))}))},togglePaymentStatus=function(e){e.preventDefault();const t=$(this).closest("tr"),a=($(this),t.find(".status").hasClass("enabled")?"no":"yes");$.ajax({url:"",data:{"lp-ajax":"update-payment-status",status:a,id:t.data("payment")},success(e){e=LP.parseJSON(e);for(const t in e)$("#payment-"+t+" .status").toggleClass("enabled",e[t])}})},updateEmailStatus=function(){(function(){$.post({url:window.location.href,data:{"lp-ajax":"update_email_status",status:$(this).parent().hasClass("enabled")?"no":"yes",id:$(this).data("id")},dataType:"text",success:$.proxy((function(e){e=LP.parseJSON(e);for(const t in e)$("#email-"+t+" .status").toggleClass("enabled",e[t])}),this)})}).apply(this)},lpMetaboxsalePriceDate=()=>{if(!$("#course-settings").length)return;$(".lp_sale_dates_fields").each((function(){const e=$(this),t=e.closest("div.lp-meta-box-course-panels");let a=!1;e.find("input").each((function(){""!==$(this).val()&&(a=!0)})),a?(t.find(".lp_sale_price_schedule").hide(),t.find(".lp_sale_dates_fields").show()):(t.find(".lp_sale_price_schedule").show(),t.find(".lp_sale_dates_fields").hide())})),$(".lp-meta-box-course-panels").on("click",".lp_sale_price_schedule",(function(){const e=$(this).closest("div.lp-meta-box-course-panels");return $(this).hide(),e.find(".lp_cancel_sale_schedule").show(),e.find(".lp_sale_dates_fields").show(),!1})),$(".lp-meta-box-course-panels").on("click",".lp_cancel_sale_schedule",(function(){const e=$(this).closest("div.lp-meta-box-course-panels");return $(this).hide(),e.find(".lp_sale_price_schedule").show(),e.find(".lp_sale_dates_fields").hide(),e.find(".lp_sale_dates_fields").find("input").val(""),!1})),$(document).on("input","#price_course_data",(function(e){const t=$(this),a=$(".lp_meta_box_regular_price"),s=$(".lp_meta_box_sale_price"),l=$(e.target).attr("id");t.find(".learn-press-tip-floating").remove(),parseInt(s.val())>parseInt(a.val())&&("_lp_price"===l?a.parent(".form-field").append('<div class="learn-press-tip-floating">'+lpAdminCourseEditorSettings.i18n.notice_price+"</div>"):"_lp_sale_price"===l&&s.parent(".form-field").append('<div class="learn-press-tip-floating">'+lpAdminCourseEditorSettings.i18n.notice_sale_price+"</div>"))}));const e=function(e){const t=$(e).is("#_lp_sale_start")?"minDate":"maxDate",a=$("minDate"===t?"#_lp_sale_end":"#_lp_sale_start"),s=$(e).datetimepicker("getDate");$(a).datetimepicker("option",t,s),$(e).trigger("change")};$(".lp_sale_dates_fields").each((function(){$(this).find("input").datetimepicker({timeFormat:"HH:mm",separator:" ",dateFormat:"yy-mm-dd",showButtonPanel:!0,onSelect(){e($(this))}}),$(this).find("input").each((function(){e($(this))}))}))},lpHidePassingGrade=()=>{const e=["evaluate_final_quiz","evaluate_final_assignment"];[...document.querySelectorAll("input[type=radio][name=_lp_course_result]")].map((t,a)=>(t.checked&&e.includes(t.value)&&$("._lp_passing_condition_field").hide(),null)),$("input[type=radio][name=_lp_course_result]").on("change",(function(t){e.includes(t.target.value)?$("._lp_passing_condition_field").hide():$("._lp_passing_condition_field").show()}))},callbackFilterTemplates=function(){const e=$(this);if(e.hasClass("current"))return!1;const t=$("#learn-press-template-files"),a=t.find("tr[data-template]"),s=e.data("template"),l=e.data("filter");return e.addClass("current").siblings("a").removeClass("current"),s?a.map((function(){$(this).toggleClass("hide-if-js",$(this).data("template")!==s)})):l?a.map((function(){$(this).toggleClass("hide-if-js","yes"!==$(this).data("filter-"+l))})):a.removeClass("hide-if-js"),$("#learn-press-no-templates").toggleClass("hide-if-js",!!t.find("tr.template-row:not(.hide-if-js):first").length),!1},toggleEmails=function(e){e.preventDefault();const t=$(this).data("status");$.ajax({url:"",data:{"lp-ajax":"update_email_status",status:t},success(e){e=LP.parseJSON(e);for(const t in e)$("#email-"+t+" .status").toggleClass("enabled",e[t])}})},importCourses=function(){const t=$("#learn-press-install-sample-data-notice"),a=$(this).attr("data-action");a&&(e.preventDefault(),"yes"===a?t.find(".install-sample-data-notice").slideUp().siblings(".install-sample-data-loading").slideDown():t.fadeOut(),$.ajax({url:ajaxurl,dataType:"html",type:"post",data:{action:"learnpress_install_sample_data",yes:a},success(e){(e=LP.parseJSON(e)).url?$.ajax({url:e.url,success(){t.find(".install-sample-data-notice").html(e.message).slideDown().siblings(".install-sample-data-loading").slideUp()}}):t.find(".install-sample-data-notice").html(e.message).slideDown().siblings(".install-sample-data-loading").slideUp()}}))},onReady=function(){$(".learn-press-payments.sortable tbody").sortable({handle:".dashicons-menu",helper:(e,t)=>(t.children().each((function(){$(this).width($(this).width())})),t),axis:"y",start(e,t){},stop(e,t){},update(e,t){const a=$(this).children().map((function(){return $(this).find('input[name="payment-order"]').val()})).get();$.post({url:"",data:{"lp-ajax":"update-payment-order",order:a},success(e){}})}}),initSelect2(),$(".learn-press-tooltip").each((function(){const e=$(this),t=$.extend({title:"data-tooltip",offset:10,gravity:"s"},e.data());e.tipsy(t)})),$doc.on("change",'.learn-press-single-course-permalink input[type="radio"]',(function(){const e=$(this).closest(".learn-press-single-course-permalink");e.hasClass("custom-base")?e.find('input[type="text"]').prop("readonly",!1):e.siblings(".custom-base").find('input[type="text"]').prop("readonly",!0)})).on("change","input.learn-press-course-base",(function(){$("#course_permalink_structure").val($(this).val())})).on("focus","#course_permalink_structure",(function(){$("#learn_press_custom_permalink").click()})).on("change","#learn_press_courses_page_id",(function(){$("tr.learn-press-courses-page-id").toggleClass("hide-if-js",!parseInt(this.value))})),lpMetaboxCourseTabs(),lpMetaboxCustomFields(),lpMetaboxColorPicker(),lpMetaboxImageAdvanced(),$(".lp-metabox-field__image").each((e,t)=>{let a;const s=$(t).find(".lp-metabox-field__image--add"),l=$(t).find(".lp-metabox-field__image--delete"),i=$(t).find(".lp-metabox-field__image--image"),o=$(t).find(".lp-metabox-field__image--id");o.val()?(s.hide(),l.show()):(s.show(),l.hide()),s.on("click",e=>{e.preventDefault(),a||(a=wp.media({title:s.data("choose"),button:{text:s.data("update")},multiple:!1}),a.on("select",(function(){const e=a.state().get("selection").first().toJSON(),t=e.sizes&&e.sizes.thumbnail?e.sizes.thumbnail.url:e.url;i.append('<div class="lp-metabox-field__image--inner"><img src="'+t+'" alt="" style="max-width:100%;"/></div>'),o.val(e.id),s.hide(),l.show()}))),a.open()}),l.on("click",e=>{e.preventDefault(),i.html(""),s.show(),l.hide(),o.val("")})}),lpMetaboxsalePriceDate(),lpMetaboxExtraInfo(),lpHidePassingGrade(),lpGetFinalQuiz(),document.querySelectorAll(".lp-meta-box .form-field").forEach(e=>{e.hasAttribute("data-show")&&e.dataset.show?lpMetaboxConditionType(e,e.dataset.show,"show"):e.hasAttribute("data-hide")&&e.dataset.hide&&lpMetaboxConditionType(e,e.dataset.hide,"hide")}),lpMetaboxRepeaterField(),$(document).on("click",".learn-press-payments .status .dashicons",togglePaymentStatus).on("click",".change-email-status",updateEmailStatus).on("click",".learn-press-filter-template",callbackFilterTemplates).on("click","#learn-press-enable-emails, #learn-press-disable-emails",toggleEmails).on("click","#learn-press-install-sample-data-notice a",importCourses)};$(document).ready(onReady);
|
assets/js/dist/frontend/courses.js
CHANGED
@@ -78,10 +78,10 @@ window.lpArchiveRequestCourse = (args, callBackSuccess) => {
|
|
78 |
const urlCourseArchive = lpArchiveAddQueryArgs(wpRestUrl + 'lp/v1/courses/archive-course', { ...lpArchiveSkeleton,
|
79 |
...args
|
80 |
});
|
81 |
-
|
82 |
-
|
83 |
method: 'GET'
|
84 |
-
}).then(response => {
|
85 |
if (typeof response.data.content !== 'undefined' && listCourse) {
|
86 |
listCourse.innerHTML = response.data.content || '';
|
87 |
}
|
78 |
const urlCourseArchive = lpArchiveAddQueryArgs(wpRestUrl + 'lp/v1/courses/archive-course', { ...lpArchiveSkeleton,
|
79 |
...args
|
80 |
});
|
81 |
+
const url = lpGlobalSettings.lp_rest_url + 'lp/v1/courses/archive-course' + urlCourseArchive.search;
|
82 |
+
fetch(url, {
|
83 |
method: 'GET'
|
84 |
+
}).then(response => response.json()).then(response => {
|
85 |
if (typeof response.data.content !== 'undefined' && listCourse) {
|
86 |
listCourse.innerHTML = response.data.content || '';
|
87 |
}
|
assets/js/dist/frontend/courses.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function(){lpGlobalSettings.courses_url;const e=document.location.href;let t,r,o=JSON.parse(window.localStorage.getItem("lp_filter_courses"))||{},s=!1,n=1,c=null,
|
1 |
+
!function(){lpGlobalSettings.courses_url;const e=document.location.href;let t,r,o=JSON.parse(window.localStorage.getItem("lp_filter_courses"))||{},s=!1,n=1,c=null,l=null;lpGlobalSettings.is_course_archive&&(window.location.search.length||-1!==e.search("page")||(o={}));const a=(e,t)=>{const r=new URL(e);return Object.keys(t).forEach((e=>{r.searchParams.set(e,t[e])})),r};window.lpArchiveRequestCourse=(e,o)=>{const c=lpGlobalSettings.lp_rest_url;if(!c)return;if(!t)return;const i=l&&l.querySelector("div.lp-archive-courses .lp-content-area"),p=i&&i.querySelector("ul.learn-press-courses");if(!p)return;if(s)return;s=!0,r?p.append(t):r=t.outerHTML;const d=a(c+"lp/v1/courses/archive-course",{...lpArchiveSkeleton,...e}),h=lpGlobalSettings.lp_rest_url+"lp/v1/courses/archive-course"+d.search;fetch(h,{method:"GET"}).then((e=>e.json())).then((e=>{void 0!==e.data.content&&p&&(p.innerHTML=e.data.content||"");const t=e.data.pagination,r=document.querySelector(".learn-press-pagination");if(r&&r.remove(),void 0!==t){const e=(new DOMParser).parseFromString(t,"text/html").querySelector(".learn-press-pagination");e&&(p.after(e),u())}wp.hooks.doAction("lp-js-get-courses",e),"function"==typeof o&&o(e)})).catch((e=>{p.innerHTML+=`<div class="lp-ajax-message error" style="display:block">${e.message||"Error: Query lp/v1/courses/archive-course"}</div>`,console.log(e)})).finally((()=>{if(s=!1,jQuery("form.search-courses button").removeClass("loading"),n)n=0;else{const e={behavior:"smooth"};l.scrollIntoView(e)}window.localStorage.setItem("lp_filter_courses",JSON.stringify(e));const t=a(document.location,e);window.history.pushState("","",t)}))};const u=()=>{const e=document.querySelectorAll(".lp-archive-courses .learn-press-pagination .page-numbers");e.length>0&&e.forEach((r=>r.addEventListener("click",(o=>{if(o.preventDefault(),o.stopPropagation(),!l)return;t&&(t.style.display="block"),l.scrollIntoView({behavior:"smooth"});let s={};if(s=JSON.parse(window.localStorage.getItem("lp_filter_courses"))||{},o.currentTarget.getAttribute("href")){const t=[...e].filter((e=>e.classList.contains("current"))),n=o.currentTarget.textContent||r.classList.contains("next")&&parseInt(t[0].textContent)+1||r.classList.contains("prev")&&parseInt(t[0].textContent)-1;s.paged=n,lpArchiveRequestCourse({...s})}}))))};function i(){l=document.querySelector(".lp-archive-courses"),t=document.querySelector(".lp-archive-course-skeleton"),c=document.querySelector(".no-first-load-ajax"),t&&(t&&!c&&lpArchiveRequestCourse(o),u(),(()=>{const e=document.querySelectorAll("form.search-courses"),r=JSON.parse(window.localStorage.getItem("lp_filter_courses"))||{};e.forEach((e=>{const o=e.querySelector('input[name="c_search"]'),s=e.querySelector('[type="submit"]');let n;o.addEventListener("keyup",(e=>{t&&(t.style.display="block"),e.preventDefault();const o=e.target.value.trim();(!o||o&&o.length>2)&&(void 0!==n&&clearTimeout(n),n=setTimeout((function(){s.classList.add("loading"),r.c_search=o,r.paged=1,lpArchiveRequestCourse({...r})}),800))})),e.addEventListener("submit",(t=>{t.preventDefault();const r=e.querySelector('input[name="c_search"]');r&&r.dispatchEvent(new Event("keyup"))}))}))})()),(()=>{const e=document.querySelectorAll('.lp-archive-courses input[name="lp-switch-layout-btn"]');e.length>0&&e.forEach((e=>e.addEventListener("change",(e=>{e.preventDefault();const t=e.target.value;if(t){const e=document.querySelector(".lp-archive-courses .learn-press-courses[data-layout]");e&&(e.dataset.layout=t),LP.Cookies.set("courses-layout",t)}}))))})(),(()=>{const e=LP.Cookies.get("courses-layout"),t=document.querySelectorAll('.lp-courses-bar .switch-layout [name="lp-switch-layout-btn"]');t.length>0&&[...t].map((t=>t.value===e&&(t.checked=!0)))})()}document.addEventListener("DOMContentLoaded",(function(e){i()}))}();
|
assets/js/dist/frontend/quiz.js
CHANGED
@@ -2050,9 +2050,7 @@ class Quiz extends _wordpress_element__WEBPACK_IMPORTED_MODULE_1__.Component {
|
|
2050 |
componentDidMount() {
|
2051 |
const {
|
2052 |
settings,
|
2053 |
-
setQuizData
|
2054 |
-
status,
|
2055 |
-
isReviewing
|
2056 |
} = this.props;
|
2057 |
const {
|
2058 |
question_ids,
|
@@ -2071,19 +2069,14 @@ class Quiz extends _wordpress_element__WEBPACK_IMPORTED_MODULE_1__.Component {
|
|
2071 |
setQuizData(settings);
|
2072 |
}
|
2073 |
|
2074 |
-
componentDidUpdate(prevProps, prevState) {
|
2075 |
const {
|
2076 |
-
status
|
2077 |
-
|
2078 |
-
|
2079 |
-
const notStarted = -1 !== ['', 'viewed', undefined].indexOf(status) || !status;
|
2080 |
-
|
2081 |
-
if (isReviewing || !notStarted) {
|
2082 |
-
const elQuiz = document.querySelector('.quiz-content');
|
2083 |
|
2084 |
-
|
2085 |
-
|
2086 |
-
}
|
2087 |
}
|
2088 |
}
|
2089 |
|
2050 |
componentDidMount() {
|
2051 |
const {
|
2052 |
settings,
|
2053 |
+
setQuizData
|
|
|
|
|
2054 |
} = this.props;
|
2055 |
const {
|
2056 |
question_ids,
|
2069 |
setQuizData(settings);
|
2070 |
}
|
2071 |
|
2072 |
+
componentDidUpdate(prevProps, prevState, snapshot) {
|
2073 |
const {
|
2074 |
+
status
|
2075 |
+
} = prevProps;
|
2076 |
+
const elQuizContent = document.querySelector('.quiz-content');
|
|
|
|
|
|
|
|
|
2077 |
|
2078 |
+
if (status !== undefined && elQuizContent) {
|
2079 |
+
elQuizContent.style.display = 'none';
|
|
|
2080 |
}
|
2081 |
}
|
2082 |
|
assets/js/dist/frontend/quiz.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function(){var e={605:function(){LP.Hook.addAction("lp-compatible-builder",(()=>{LP.Hook.removeAction("lp-compatible-builder"),"undefined"!=typeof elementorFrontend&&[...document.querySelectorAll("#popup-content")][0].addEventListener("scroll",(()=>{Waypoint.refreshAll(),window.dispatchEvent(new Event("resize"))})),"undefined"!=typeof vc_js&&"undefined"!=typeof VcWaypoint&&[...document.querySelectorAll("#popup-content")][0].addEventListener("scroll",(()=>{VcWaypoint.refreshAll()}))})),LP.Hook.addAction("lp-quiz-compatible-builder",(()=>(LP.Hook.removeAction("lp-quiz-compatible-builder"),LP.Hook.doAction("lp-compatible-builder"),"undefined"!=typeof elementorFrontend?window.elementorFrontend.init():"undefined"!=typeof vc_js?("undefined"!=typeof vc_round_charts&&vc_round_charts(),"undefined"!=typeof vc_pieChart&&vc_pieChart(),"undefined"!=typeof vc_line_charts&&vc_line_charts(),window.vc_js()):void 0))),LP.Hook.addAction("lp-question-compatible-builder",(()=>(LP.Hook.removeAction("lp-question-compatible-builder"),LP.Hook.removeAction("lp-quiz-compatible-builder"),LP.Hook.doAction("lp-compatible-builder"),"undefined"!=typeof elementorFrontend?window.elementorFrontend.init():"undefined"!=typeof vc_js?("undefined"!=typeof vc_round_charts&&vc_round_charts(),"undefined"!=typeof vc_pieChart&&vc_pieChart(),"undefined"!=typeof vc_line_charts&&vc_line_charts(),window.vc_js()):void 0)))},184:function(e,t){var s;!function(){"use strict";var n={}.hasOwnProperty;function r(){for(var e=[],t=0;t<arguments.length;t++){var s=arguments[t];if(s){var i=typeof s;if("string"===i||"number"===i)e.push(s);else if(Array.isArray(s)){if(s.length){var o=r.apply(null,s);o&&e.push(o)}}else if("object"===i)if(s.toString===Object.prototype.toString)for(var a in s)n.call(s,a)&&s[a]&&e.push(a);else e.push(s.toString())}}return e.join(" ")}e.exports?(r.default=r,e.exports=r):void 0===(s=function(){return r}.apply(t,[]))||(e.exports=s)}()},965:function(e){"use strict";function t(e,s){var n;if(Array.isArray(s))for(n=0;n<s.length;n++)t(e,s[n]);else for(n in s)e[n]=(e[n]||[]).concat(s[n])}e.exports=function(e){var s,n={};return t(n,e),(s=function(e){return function(t){return function(s){var r,i,o=n[s.type],a=t(s);if(o)for(r=0;r<o.length;r++)(i=o[r](s,e))&&e.dispatch(i);return a}}}).effects=n,s}}},t={};function s(n){var r=t[n];if(void 0!==r)return r.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,s),i.exports}s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,{a:t}),t},s.d=function(e,t){for(var n in t)s.o(t,n)&&!s.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};!function(){"use strict";s.r(n),s.d(n,{default:function(){return tt},init:function(){return st}});var e={};s.r(e),s.d(e,{__requestBeforeStartQuiz:function(){return ge},__requestCheckAnswerSuccess:function(){return ze},__requestShowHintSuccess:function(){return ye},__requestStartQuizSuccess:function(){return fe},__requestSubmitQuiz:function(){return qe},__requestSubmitQuizSuccess:function(){return we},checkAnswer:function(){return be},markQuestionRendered:function(){return ke},sendKey:function(){return Qe},setCurrentPage:function(){return he},setCurrentQuestion:function(){return me},setQuizData:function(){return pe},setQuizMode:function(){return Pe},showHint:function(){return Ee},startQuiz:function(){return _e},submitQuiz:function(){return ve},updateUserQuestionAnswers:function(){return Se}});var t={};s.r(t),s.d(t,{getCurrentQuestion:function(){return Fe},getData:function(){return xe},getDefaultRestArgs:function(){return De},getItemStatus:function(){return Ae},getProp:function(){return Te},getQuestion:function(){return Ue},getQuestionAnswered:function(){return Me},getQuestionMark:function(){return He},getQuestionOptions:function(){return Ce},getQuestions:function(){return Le},getQuestionsSelectedAnswers:function(){return Be},getQuizAnswered:function(){return Oe},getQuizAttempts:function(){return Re},getUserMark:function(){return Je},isCheckedAnswer:function(){return $e},isCorrect:function(){return je}});var r=window.wp.element;function i(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}var o=window.wp.compose,a=window.wp.data,u=window.wp.i18n,l=e=>{let t;const s=86400;if(e>s)t=(e-e%s)/s,e%=s;else if(e==s)return"24:00";const n=new Date(1e3*e).toUTCString().match(/\d{2}:\d{2}:\d{2}/)[0].split(":");return t&&(n[0]=parseInt(n[0])+24*t),n.join(":")};const{Hook:c}=LP;var d=()=>{const e=e=>(0,a.select)("learnpress/quiz").getData(e),t=c.applyFilters("quiz-meta-fields",{duration:{title:(0,u.__)("Duration:","learnpress"),name:"duration",content:l(e("duration"))||"--"},passingGrade:{title:(0,u.__)("Passing grade:","learnpress"),name:"passing-grade",content:e("passingGrade")||"--"},questionsCount:{title:(0,u.__)("Questions:","learnpress"),name:"questions-count",content:e("questionIds")?e("questionIds").length:0}});return t&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("ul",{className:"quiz-intro"},Object.values(t).map(((e,t)=>{const s=e.name||t;return(0,r.createElement)("li",{key:`quiz-intro-field-${t}`,className:`quiz-intro-item quiz-intro-item--${s}`},(0,r.createElement)("div",{className:"quiz-intro-item__title",dangerouslySetInnerHTML:{__html:e.title}}),(0,r.createElement)("span",{className:"quiz-intro-item__content",dangerouslySetInnerHTML:{__html:e.content}}))}))))};class p extends r.Component{constructor(){super(...arguments),i(this,"startQuiz",(e=>{e&&e.preventDefault();const t=document.querySelector(".lp-button.start");t&&t.setAttribute("disabled","disabled"),t.classList.add("loading");const{startQuiz:s,status:n}=this.props;if("completed"===n){const{confirm:e,isOpen:s}=(0,a.select)("learnpress/modal");if("no"===e((0,u.__)("Are you sure you want to retake quiz?","learnpress"),this.startQuiz))return void(!s()&&t&&t.removeAttribute("disabled"))}s()})),i(this,"nav",(e=>t=>{let{questionNav:s,currentPage:n,numPages:r,setCurrentPage:i}=this.props;"prev"===e?n>1?n-=1:n="infinity"===s?r:1:n<r?n+=1:n="infinity"===s?1:r,i(n)})),i(this,"moveTo",(e=>t=>{t.preventDefault();const{numPages:s,setCurrentPage:n}=this.props;e<1||e>s||n(e)})),i(this,"isLast",(()=>{const{currentPage:e,numPages:t}=this.props;return e===t})),i(this,"isFirst",(()=>{const{currentPage:e}=this.props;return 1===e})),i(this,"submit",(()=>{const{submitQuiz:e}=this.props,{confirm:t}=(0,a.select)("learnpress/modal");"no"!==t((0,u.__)("Are you sure to submit quiz?","learnpress"),this.submit)&&e()})),i(this,"setQuizMode",(e=>()=>{const{setQuizMode:t}=this.props;t(e)})),i(this,"isReviewing",(()=>{const{isReviewing:e}=this.props;return e}))}pageNumbers(e){const{numPages:t,currentPage:s}=this.props;if(t<2)return"";(e={numPages:t,currentPage:s,midSize:1,endSize:1,prevNext:!0,...e||{}}).endSize<1&&(e.endSize=1),e.midSize<0&&(e.midSize=1);const n=[...Array(t).keys()];let i=!1;return(0,r.createElement)("div",{className:"nav-links"},e.prevNext&&!this.isFirst()&&(0,r.createElement)("button",{className:"page-numbers prev","data-type":"question-navx",onClick:this.nav("prev")},(0,u.__)("Prev","learnpress")),n.map((t=>(t+=1)===e.currentPage?(i=!0,(0,r.createElement)("span",{key:`page-number-${t}`,className:"page-numbers current"},t)):t<=e.endSize||e.currentPage&&t>=e.currentPage-e.midSize&&t<=e.currentPage+e.midSize||t>e.numPages-e.endSize?(i=!0,(0,r.createElement)("button",{key:`page-number-${t}`,className:"page-numbers",onClick:this.moveTo(t)},t)):i?(i=!1,(0,r.createElement)("span",{key:`page-number-${t}`,className:"page-numbers dots"},"…")):"")),e.prevNext&&!this.isLast()&&(0,r.createElement)("button",{className:"page-numbers next","data-type":"question-navx",onClick:this.nav("next")},(0,u.__)("Next","learnpress")))}render(){const{status:e,questionNav:t,isReviewing:s,showReview:n,numPages:i,question:o,questionsPerPage:a,canRetry:l,retakeNumber:c,requiredPassword:d,allowRetake:p}=this.props,m=["quiz-buttons"];("started"===e||s)&&m.push("align-center"),"questionNav"===t&&m.push("infinity"),this.isFirst()&&m.push("is-first"),this.isLast()&&m.push("is-last");const h=document.querySelector("#popup-sidebar"),g=document.querySelector("#learn-press-quiz-app");let f="";f="started"===e||s?{marginLeft:h&&h.offsetWidth/2,width:g&&g.offsetWidth}:null;let _=" fixed";return"no"==lpQuizSettings.navigationPosition&&(_=" nav-center"),(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:m.join(" ")},(0,r.createElement)("div",{className:"button-left"+("started"===e||s?_:""),style:f},("completed"===e&&l||-1!==["","viewed"].indexOf(e))&&!s&&!d&&(0,r.createElement)("button",{className:"lp-button start",onClick:this.startQuiz},"completed"===e?`${(0,u.__)("Retake","learnpress")} ${p?"":" "+(c?` (${c})`:"")} `:" "+(0,u.__)("Start","learnpress")),("started"===e||s)&&i>1&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"questions-pagination"},this.pageNumbers()))),(0,r.createElement)("div",{className:"button-right"},"started"===e&&(0,r.createElement)(r.Fragment,null,("infinity"===t||this.isLast())&&!s&&(0,r.createElement)("button",{className:"lp-button submit-quiz",onClick:this.submit},(0,u.__)("Finish Quiz","learnpress"))),s&&n&&(0,r.createElement)("button",{className:"lp-button back-quiz",onClick:this.setQuizMode("")},(0,u.__)("Result","learnpress")),"completed"===e&&n&&!s&&(0,r.createElement)("button",{className:"lp-button review-quiz",onClick:this.setQuizMode("reviewing")},(0,u.__)("Review","learnpress")))),this.props.message&&!0!==this.props.success&&(0,r.createElement)("div",{className:"learn-press-message error"},this.props.message))}}const m=(0,o.compose)((0,a.withSelect)((e=>{const{getData:t}=e("learnpress/quiz");return{status:t("status"),showCheck:t("instantCheck"),checkedQuestions:t("checkedQuestions"),hintedQuestions:t("hintedQuestions"),questionsPerPage:t("questionsPerPage")}})))((e=>{const{showCheck:t,checkedQuestions:s,hintedQuestions:n,question:i,status:o,type:a,Button:u}=e;if("started"!==o)return!1;const l=(0,r.createElement)(u,{question:i});switch(a){case"hint":return n?!!i.hasHint&&-1===n.indexOf(i.id)&&l:l;case"check":return!!t&&(s?-1===s.indexOf(i.id)&&l:l)}}));var h=(0,o.compose)([(0,a.withSelect)((e=>{const{getData:t,getCurrentQuestion:s}=e("learnpress/quiz"),n={id:t("id"),status:t("status"),questionIds:t("questionIds"),questionNav:t("questionNav"),isReviewing:t("reviewQuestions")&&"reviewing"===t("mode"),showReview:t("reviewQuestions"),showCheck:t("instantCheck"),checkedQuestions:t("checkedQuestions"),hintedQuestions:t("hintedQuestions"),numPages:t("numPages"),pages:t("pages"),currentPage:t("currentPage"),questionsPerPage:t("questionsPerPage"),pageNumbers:t("pageNumbers"),keyPressed:t("keyPressed"),canRetry:t("retakeCount")>0&&t("retaken")<t("retakeCount"),retakeNumber:t("retakeCount")>0&&t("retaken")<t("retakeCount")?t("retakeCount")-t("retaken"):null,message:t("messageResponse")||!1,success:void 0===t("successResponse")||t("successResponse"),requiredPassword:t("requiredPassword"),allowRetake:t("allowRetake")};if(1===n.questionsPerPage&&(n.question=s("object")),1===lpQuizSettings.checkNorequizenroll){const e=window.localStorage.getItem("quiz_off_retaken_"+lpQuizSettings.id);t("retakeCount")>e?(n.retakeNumber=t("retakeCount")-e,n.canRetry=!0):n.canRetry=!1}return n.allowRetake&&(n.canRetry=!0),n})),(0,a.withDispatch)(((e,t)=>{let{id:s}=t;const{startQuiz:n,setCurrentQuestion:r,submitQuiz:i,setQuizMode:o,showHint:a,checkAnswer:u,setCurrentPage:l}=e("learnpress/quiz");return{startQuiz:n,setCurrentQuestion:r,setQuizMode:o,setCurrentPage:l,submitQuiz(e){i(e)},showHint(e){a(e)},checkAnswer(e){u(e)}}}))])(p);function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var s=arguments[t];for(var n in s)Object.prototype.hasOwnProperty.call(s,n)&&(e[n]=s[n])}return e},g.apply(this,arguments)}class f extends r.Component{constructor(){super(...arguments),i(this,"showHint",(()=>{const{showHint:e,question:t}=this.props;e(t.id,!t.showHint)}))}render(){const{question:e}=this.props;return e.hint?(0,r.createElement)("button",{className:"btn-show-hint",onClick:this.showHint},(0,r.createElement)("span",null,(0,u.__)("Hint","learnpress"))):""}}var _=(0,o.compose)((0,a.withDispatch)(((e,t)=>{let{id:s}=t;const{showHint:n}=e("learnpress/quiz");return{showHint(e,t){n(e,t)}}})))(f),q=s(184),w=s.n(q);class v extends r.Component{constructor(){super(...arguments),i(this,"checkAnswer",(()=>{const{checkAnswer:e,question:t,answered:s}=this.props;s&&(e(t.id),this.setState({loading:!0}))})),this.state={loading:!1}}render(){const{answered:e}=this.props;return(0,r.createElement)(r.Fragment,null,(0,r.createElement)("button",{className:w()("lp-button","instant-check",{loading:this.state.loading,disable:!e}),onClick:this.checkAnswer},(0,r.createElement)("span",{className:"instant-check__icon"}),(0,u.__)("Check answer","learnpress"),!e&&(0,r.createElement)("div",{className:"instant-check__info",dangerouslySetInnerHTML:{__html:(0,u.__)("You need to answer the question before check answer.","learnpress")}})))}}var S=(0,o.compose)((0,a.withSelect)(((e,t)=>{let{question:{id:s}}=t;const{getQuestionAnswered:n}=e("learnpress/quiz");return{answered:n(s)}})),(0,a.withDispatch)(((e,t)=>{let{id:s}=t;const{checkAnswer:n}=e("learnpress/quiz");return{checkAnswer(e){n(e)}}})))(v),y=function(e){const{question:t}=e,s={"instant-check":()=>(0,r.createElement)(m,{type:"check",Button:S,question:t}),hint:()=>(0,r.createElement)(m,{type:"hint",Button:_,question:t})};return(0,r.createElement)(r.Fragment,null,LP.config.questionFooterButtons().map((e=>(0,r.createElement)(r.Fragment,{key:`button-${e}`},s[e]&&s[e]()))))};const E=window.jQuery,{uniqueId:z,isArray:b,isNumber:k,bind:P}=lodash;class Q extends r.Component{constructor(){super(...arguments),i(this,"setRef",(e=>{this.$wrap=E(e)})),i(this,"parseOptions",(e=>(e&&(e=b(e)?e:JSON.parse(CryptoJS.AES.decrypt(e.data,e.key,{format:CryptoJSAesJson}).toString(CryptoJS.enc.Utf8)),e=b(e)?e:JSON.parse(e)),e||[]))),i(this,"getWrapperClass",(()=>{const{question:e,answered:t}=this.props,s=["question","question-"+e.type],n=this.parseOptions(e.options);return n.length&&void 0!==n[0].isTrue&&s.push("question-answered"),s})),i(this,"getEditLink",(()=>{const{question:e,editPermalink:t}=this.props;return t?t.replace(/post=(.*[0-9])/,`post=${e.id}`):""})),i(this,"editPermalink",(e=>(0,u.sprintf)('<a href="%s">%s</a>',e,(0,u.__)("Edit","learnpress")))),this.state={time:null,showHint:!1},this.$wrap=null}componentDidMount(e){const{question:t,isCurrent:s,markQuestionRendered:n}=this.props;return s&&n(t.id),this.state.time||this.setState({time:new Date}),LP.Hook.doAction("lp-question-compatible-builder"),"undefined"!=typeof MathJax&&MathJax.Hub.Queue(["Typeset",MathJax.Hub]),e}render(){const{question:e,isShow:t,isShowIndex:s,isShowHint:n,status:i}=this.props,o=LP.questionTypes.default,a=this.getEditLink();a&&jQuery("#wp-admin-bar-edit-lp_question").find(".ab-item").attr("href",a);const l={index:()=>s?(0,r.createElement)("span",{className:"question-index"},s,"."):"",title:()=>(0,r.createElement)("span",{dangerouslySetInnerHTML:{__html:e.title}}),hint:()=>(0,r.createElement)(_,{question:e}),"edit-permalink":()=>a&&(0,r.createElement)("span",{dangerouslySetInnerHTML:{__html:this.editPermalink(a)},className:"edit-link"})},c={title:()=>(0,r.createElement)("h4",{className:"question-title"},LP.config.questionTitleParts().map((e=>(0,r.createElement)(r.Fragment,{key:`title-part-${e}`},l[e]&&l[e]())))),content:()=>(0,r.createElement)("div",{className:"question-content",dangerouslySetInnerHTML:{__html:e.content}}),"answer-options":()=>this.$wrap&&(0,r.createElement)(o,g({},this.props,{$wrap:this.$wrap})),explanation:()=>e.explanation&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"question-explanation-content"},(0,r.createElement)("strong",{className:"explanation-title"},(0,u.__)("Explanation","learnpress"),":"),(0,r.createElement)("div",{dangerouslySetInnerHTML:{__html:e.explanation}}))),hint:()=>e.hint&&!e.explanation&&e.showHint&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"question-hint-content"},(0,r.createElement)("strong",{className:"hint-title"},(0,u.__)("Hint","learnpress"),":"),(0,r.createElement)("div",{dangerouslySetInnerHTML:{__html:e.hint}}))),buttons:()=>"started"===i&&(0,r.createElement)(y,{question:e})},d=LP.config.questionBlocks();return(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:this.getWrapperClass().join(" "),style:{display:t?"":"none"},"data-id":e.id,ref:this.setRef},d.map((e=>(0,r.createElement)(r.Fragment,{key:`block-${e}`},c[e]?c[e]():"")))))}}var N=(0,o.compose)([(0,a.withSelect)(((e,t)=>{let{question:{id:s}}=t;const{getData:n,getQuestionAnswered:r,getQuestionMark:i}=e("learnpress/quiz");return{status:n("status"),questions:n("question"),answered:r(s),questionsRendered:n("questionsRendered"),editPermalink:n("editPermalink"),numPages:n("numPages"),mark:i(s)||""}})),(0,a.withDispatch)((e=>{const{updateUserQuestionAnswers:t,markQuestionRendered:s}=e("learnpress/quiz");return{markQuestionRendered:s,updateUserQuestionAnswers:t}}))])(Q);class I extends r.Component{constructor(e){super(...arguments),i(this,"startQuiz",(e=>{e.preventDefault();const{startQuiz:t}=this.props;t()})),i(this,"isInVisibleRange",((e,t)=>{const{currentPage:s,questionsPerPage:n}=this.props;return s===Math.ceil(t/n)})),i(this,"nav",(e=>{const{sendKey:t}=this.props;switch(e.keyCode){case 37:return t("left");case 38:case 40:return;case 39:return t("right");default:e.keyCode>=49&&e.keyCode<=57&&t(e.keyCode-48)}})),this.needToTop=!1,this.state={isReviewing:null,currentPage:0,self:this}}static getDerivedStateFromProps(e,t){const s=["isReviewing","currentPage"],n={};for(let r=0;r<s.length;r++)e[s[r]]!==t[s[r]]&&(n[s[r]]=e[s[r]]);return Object.values(n).length?(t.self.needToTop=!0,n):null}componentDidUpdate(){this.needToTop&&(jQuery("#popup-content").animate({scrollTop:0}).find(".content-item-scrollable:last").animate({scrollTop:0}),this.needToTop=!1)}render(){const{status:e,currentQuestion:t,questions:s,questionsRendered:n,isReviewing:i,questionsPerPage:o}=this.props;let a=!0;return"completed"!==e||i||(a=!1),(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{tabIndex:100,onKeyUp:this.nav},(0,r.createElement)("div",{className:"quiz-questions",style:{display:a?"":"none"}},s.map(((e,s)=>{const i=!o&&t===e.id,a=n&&-1!==n.indexOf(e.id),u=this.isInVisibleRange(e.id,s+1);return a||!a||u?(0,r.createElement)(N,{key:`loop-question-${e.id}`,isCurrent:i,isShow:u,isShowIndex:!!o&&s+1,questionsPerPage:o,question:e}):""})))))}}var C=(0,o.compose)((0,a.withSelect)(((e,t,s)=>{const{getData:n,getQuestions:r}=e("learnpress/quiz");return{status:n("status"),currentQuestion:n("currentQuestion"),questions:r(),questionsRendered:n("questionsRendered"),isReviewing:"reviewing"===n("mode"),numPages:n("numPages"),currentPage:n("currentPage"),questionsPerPage:n("questionsPerPage")||1}})),(0,a.withDispatch)((e=>{const{startQuiz:t,sendKey:s}=e("learnpress/quiz");return{startQuiz:t,sendKey:s}})))(I),A=()=>{const e=(0,a.select)("learnpress/quiz").getData("attempts")||[],t=e&&!!e.length;return!!t&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"quiz-attempts"},(0,r.createElement)("h4",{className:"attempts-heading"},(0,u.__)("Last Attempted","learnpress")),t&&(0,r.createElement)("table",null,(0,r.createElement)("thead",null,(0,r.createElement)("tr",null,(0,r.createElement)("th",{className:"quiz-attempts__questions"},(0,u.__)("Questions","learnpress")),(0,r.createElement)("th",{className:"quiz-attempts__spend"},(0,u.__)("Time spent","learnpress")),(0,r.createElement)("th",{className:"quiz-attempts__marks"},(0,u.__)("Marks","learnpress")),(0,r.createElement)("th",{className:"quiz-attempts__grade"},(0,u.__)("Passing grade","learnpress")),(0,r.createElement)("th",{className:"quiz-attempts__result"},(0,u.__)("Result","learnpress")))),(0,r.createElement)("tbody",null,e.map(((e,t)=>(0,r.createElement)("tr",{key:`attempt-${t}`},(0,r.createElement)("td",{className:"quiz-attempts__questions"},`${e.questionCorrect} / ${e.questionCount}`),(0,r.createElement)("td",{className:"quiz-attempts__spend"},e.timeSpend||"--"),(0,r.createElement)("td",{className:"quiz-attempts__marks"},`${e.userMark} / ${e.mark}`),(0,r.createElement)("td",{className:"quiz-attempts__grade"},e.passingGrade||"-"),(0,r.createElement)("td",{className:"quiz-attempts__result"},`${parseFloat(e.result).toFixed(2)}%`," ",(0,r.createElement)("span",null,e.graduationText)))))))))},T=()=>{const{getData:e}=(0,a.select)("learnpress/quiz"),{submitQuiz:t}=(0,a.dispatch)("learnpress/quiz"),s=e("totalTime"),n=e("duration"),[i,o]=(0,r.useState)(s);let[u,l]=(0,r.useState)(0);const c=s>0;return(0,r.useEffect)((()=>{const e=setInterval((()=>{if(c){let s=i;s-=1,s>0?(o(s),u++,l(n-s)):(clearInterval(e),t())}else u++,l(u),o(u)}),1e3);return()=>clearInterval(e)}),[i,u]),(0,r.createElement)("div",{className:"countdown"},(0,r.createElement)("i",{className:"fas fa-stopwatch"}),(0,r.createElement)("span",null,function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:":";const t=[];let n;return s<3600?(t.push((i-i%60)/60),t.push(i%60)):s&&(t.push((i-i%3600)/3600),n=i%3600,t.push((n-n%60)/60),t.push(n%60)),t.map((e=>e<10?`0${e}`:e)).join(e)}()),(0,r.createElement)("input",{type:"hidden",name:"lp-quiz-time-spend",value:u}))},R=window.wp.url;const O=jQuery;let L=null;const x={elLPOverlay:null,elMainContent:null,elTitle:null,elBtnYes:null,elBtnNo:null,elFooter:null,elCalledModal:null,callBackYes:null,instance:null,init(){return!!this.instance||(this.elLPOverlay=O(".lp-overlay"),!!this.elLPOverlay.length&&(L=this.elLPOverlay,this.elMainContent=L.find(".main-content"),this.elTitle=L.find(".modal-title"),this.elBtnYes=L.find(".btn-yes"),this.elBtnNo=L.find(".btn-no"),this.elFooter=L.find(".lp-modal-footer"),O(document).on("click",".close, .btn-no",(function(){L.hide()})),O(document).on("click",".btn-yes",(function(e){e.preventDefault(),e.stopPropagation(),"function"==typeof x.callBackYes&&x.callBackYes()})),this.instance=this,!0))},setElCalledModal(e){this.elCalledModal=e},setContentModal(e,t){this.elMainContent.html(e),"function"==typeof t&&t()},setTitleModal(e){this.elTitle.html(e)}};var D=x,M={elBtnFinishCourse:null,elBtnCompleteItem:null,init(){D.init()&&void 0!==lpGlobalSettings&&"yes"===lpGlobalSettings.option_enable_popup_confirm_finish&&(this.elBtnFinishCourse=document.querySelectorAll(".lp-btn-finish-course"),this.elBtnCompleteItem=document.querySelector(".lp-btn-complete-item"),this.elBtnCompleteItem&&this.elBtnCompleteItem.addEventListener("click",(e=>{e.preventDefault();const t=e.target.closest("form");D.elLPOverlay.show(),D.setTitleModal(t.dataset.title),D.setContentModal('<div class="pd-2em">'+t.dataset.confirm+"</div>"),D.callBackYes=()=>{t.submit()}})),this.elBtnFinishCourse&&this.elBtnFinishCourse.forEach((e=>e.addEventListener("click",(e=>{e.preventDefault();const t=e.target.closest("form");D.elLPOverlay.show(),D.setTitleModal(t.dataset.title),D.setContentModal('<div class="pd-2em">'+t.dataset.confirm+"</div>"),D.callBackYes=()=>{t.submit()}})))))}};const{debounce:H}=lodash;var F=()=>{const[e,t]=(0,r.useState)(0),[s,n]=(0,r.useState)(!1),i=(0,a.useSelect)((e=>e("learnpress/quiz").getData("id")),[]),o=(0,a.useSelect)((e=>e("learnpress/quiz").getData("results")),[]),l=(0,a.useSelect)((e=>e("learnpress/quiz").getData("passingGrade")),[]),c=(0,a.useSelect)((e=>e("learnpress/quiz").getData("submitting")),[]);(0,r.useEffect)((()=>{p();let e="";if(e=o.graduation?o.graduation:o.result>=f.replace(/[^0-9\.]+/g,"")?"passed":"failed",e){const t=document.querySelector(`.course-curriculum .course-item.course-item-${i}`);t&&(t.classList.remove("failed","passed"),t.classList.add("has-status","status-completed",e))}const t=[...document.querySelectorAll("#popup-header .items-progress")][0],s=document.querySelector(".curriculum-sections");if(t&&s){const e=t.dataset.totalItems,s=t.querySelector(".items-completed"),n=t.querySelector(".learn-press-progress__active");if(s){const t=document.querySelectorAll("#popup-sidebar .course-curriculum .course-item.status-completed");s.textContent=parseInt(t.length);const r=100-100*parseInt(t.length)/parseInt(e);n.style.left="-"+r+"%"}}}),[o]),(0,r.useEffect)((()=>{void 0!==c&&d()}),[c]);const d=()=>{const e=document.querySelectorAll(".popup-header__inner");e.length>0&&0===e[0].querySelectorAll("form.form-button-finish-course").length&&(async e=>{const t=await wp.apiFetch({path:(0,R.addQueryArgs)("lp/v1/lazy-load/items-progress",{courseId:lpGlobalSettings.post_id||"",userId:lpGlobalSettings.user_id||""}),method:"GET"}),{data:s}=t;e.innerHTML+=s,M.init()})(e[0])},p=()=>{t(0),n(!1),jQuery.easing._customEasing=function(e,t,s,n,r){return n*Math.sqrt(1-(t=t/r-1)*t)+s},H((()=>{const e=jQuery("<span />").css({width:1,height:1}).appendTo(document.body);e.css("left",0).animate({left:o.result},{duration:1500,step:(e,s)=>{t(e)},done:()=>{n(!0),e.remove(),jQuery("#quizResultGrade").css({transform:"scale(1.3)",transition:"all 0.25s"}),H((()=>{jQuery("#quizResultGrade").css({transform:"scale(1)"})}),500)()},easing:"_customEasing"})}),o.result>0?1e3:10)()};let m=e;Number.isInteger(e)||(m=parseFloat(e).toFixed(2));const h=190*Math.PI,g={strokeDasharray:`${h} ${h}`,strokeDashoffset:h-m/100*h},f=o.passingGrade||l;let _="";_=o.graduation?o.graduation:m>=f.replace(/[^0-9\.]+/g,"")?"passed":"failed";let q="";q=o.graduationText?o.graduationText:"passed"===_?(0,u.__)("Passed","learnpress"):(0,u.__)("Failed","learnpress");const w=["quiz-result",_];return(0,r.createElement)("div",{className:w.join(" ")},(0,r.createElement)("h3",{className:"result-heading"},(0,u.__)("Your Result","learnpress")),(0,r.createElement)("div",{id:"quizResultGrade",className:"result-grade"},(0,r.createElement)("svg",{className:"circle-progress-bar",width:200,height:200},(0,r.createElement)("circle",{className:"circle-progress-bar__circle",stroke:"",strokeWidth:10,style:g,fill:"transparent",r:95,cx:100,cy:100})),(0,r.createElement)("span",{className:"result-achieved"},`${m}%`),(0,r.createElement)("span",{className:"result-require"},f||"-")),s&&(0,r.createElement)("p",{className:"result-message"},q),(0,r.createElement)("ul",{className:"result-statistic"},(0,r.createElement)("li",{className:"result-statistic-field result-time-spend"},(0,r.createElement)("span",null,(0,u.__)("Time spent","learnpress")),(0,r.createElement)("p",null,o.timeSpend)),(0,r.createElement)("li",{className:"result-statistic-field result-point"},(0,r.createElement)("span",null,(0,u.__)("Points","learnpress")),(0,r.createElement)("p",null,o.userMark," / ",o.mark)),(0,r.createElement)("li",{className:"result-statistic-field result-questions"},(0,r.createElement)("span",null,(0,u.__)("Questions","learnpress")),(0,r.createElement)("p",null,o.questionCount)),(0,r.createElement)("li",{className:"result-statistic-field result-questions-correct"},(0,r.createElement)("span",null,(0,u.__)("Correct","learnpress")),(0,r.createElement)("p",null,o.questionCorrect)),(0,r.createElement)("li",{className:"result-statistic-field result-questions-wrong"},(0,r.createElement)("span",null,(0,u.__)("Wrong","learnpress")),(0,r.createElement)("p",null,o.questionWrong)),(0,r.createElement)("li",{className:"result-statistic-field result-questions-skipped"},(0,r.createElement)("span",null,(0,u.__)("Skipped","learnpress")),(0,r.createElement)("p",null,o.questionEmpty))))};const U=jQuery,{debounce:$}=lodash;var j=()=>{const{submitQuiz:e}=(0,a.dispatch)("learnpress/quiz");(0,r.useEffect)((()=>{const e=U("#popup-content");if(!e.length)return;const t=e.find(".content-item-scrollable:eq(1)"),s=e.find(".content-item-wrap"),n=e.find(".quiz-status"),r=n.offset().top-92;let i=!1,o="-"+s.css("margin-left");U(window).on("resize.refresh-quiz-stauts-bar",$((function(){o="-"+s.css("margin-left"),n.css({"margin-left":o,"margin-right":o})}),100)).trigger("resize.refresh-quiz-stauts-bar"),t.on("scroll",(()=>{if(t.scrollTop()>=r){if(i)return;i=!0}else{if(!i)return;i=!1}i?e.addClass("fixed-quiz-status"):e.removeClass("fixed-quiz-status")}))}),[]);const t=()=>{const{confirm:s}=(0,a.select)("learnpress/modal");"no"!==s((0,u.__)("Are you sure to submit quiz?","learnpress"),t)&&e()},{getData:s,getUserMark:n}=(0,a.select)("learnpress/quiz"),i=s("currentPage"),o=s("questionsPerPage"),l=s("questionIds").length,c=s("submitting"),d=(s("duration"),n()),p=["quiz-status"],m=(i-1)*o+1;let h=m+o-1,g="";return h=Math.min(h,l),c&&p.push("submitting"),g=h<l?o>1?(0,u.sprintf)((0,u.__)("Question <span>%d to %d of %d</span>","learnpress"),m,h,l):(0,u.sprintf)((0,u.__)("Question <span>%d of %d</span>","learnpress"),m,l):(0,u.sprintf)((0,u.__)("Question <span>%d to %d</span>","learnpress"),m,h),(0,r.createElement)("div",{className:p.join(" ")},(0,r.createElement)("div",null,(0,r.createElement)("div",{className:"questions-index",dangerouslySetInnerHTML:{__html:g}}),(0,r.createElement)("div",{className:"current-point"},(0,u.sprintf)((0,u.__)("Earned Point: %s","learnpress"),d)),(0,r.createElement)("div",null,(0,r.createElement)("div",{className:"submit-quiz"},(0,r.createElement)("button",{className:"lp-button",id:"button-submit-quiz",onClick:t},c?(0,u.__)("Submitting...","learnpress"):(0,u.__)("Finish Quiz","learnpress"))),(0,r.createElement)(T,null))))};const{omit:B,flow:J,isArray:G,chunk:K}=lodash,{camelCaseDashObjectKeys:W}=LP,{get:Z,set:Y}=LP.localStorage,V={},X=(e,t)=>{const{answered:s,id:n}=e,r={...s[t.questionId]||{},answered:t.answers,temp:!0};return n&&localStorage.setItem(`LP_Quiz_${n}_Answered`,JSON.stringify({...e.answered,[t.questionId]:r})),{...e,answered:{...e.answered,[t.questionId]:r}}},ee=(e,t)=>{const{questionsRendered:s}=e;return G(s)?(s.push(t.questionId),{...e,questionsRendered:[...s]}):{...e,questionsRendered:[t.questionId]}},te=(e,t)=>(t.currentPage&&Y(`Q${e.id}.currentPage`,t.currentPage),{...e,...t}),se=(e,t)=>{const s=e.questions.map((e=>e.id==t.questionId?{...e,showHint:t.showHint}:e));return{...e,questions:[...s]}},ne=(e,t)=>{const s=e.questions.map((e=>{if(e.id!==t.questionId)return e;const s={explanation:t.explanation};return t.options&&(s.options=t.options),{...e,...s}})),n={...e.answered,[t.questionId]:t.result};let r=localStorage.getItem(`LP_Quiz_${e.id}_Answered`);return r&&(r={...JSON.parse(r),...n},localStorage.setItem(`LP_Quiz_${e.id}_Answered`,JSON.stringify(r))),{...e,questions:[...s],answered:n,checkedQuestions:[...e.checkedQuestions,t.questionId]}},re=(e,t)=>{localStorage.removeItem(`LP_Quiz_${e.id}_Answered`);const s=e.questions.map((s=>{const n={};return e.reviewQuestions&&(t.results.questions[s.id].explanation&&(n.explanation=t.results.questions[s.id].explanation),t.results.questions[s.id].options&&(n.options=t.results.questions[s.id].options)),{...s,...n}}));return te(e,{submitting:!1,currentPage:1,...t.results,questions:[...s]})},ie=(e,t)=>{const s=void 0!==t.results.success&&t.results.success,n=t.results.message||!1;return te(e,{checkedQuestions:[],hintedQuestions:[],mode:"",currentPage:1,...t.results.results,successResponse:s,messageResponse:n})},oe=J(a.combineReducers,(e=>(t,s)=>e(t,s)),(e=>(t,s)=>e(t,s)),(e=>(t,s)=>e(t,s)))({a(){return arguments.length>0&&void 0!==arguments[0]?arguments[0]:{a:1}},b(){return arguments.length>0&&void 0!==arguments[0]?arguments[0]:{b:2}}});var ae=(0,a.combineReducers)({blocks:oe,userQuiz:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:V,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_QUIZ_DATA":1>t.data.questionsPerPage&&(t.data.questionsPerPage=1);const s=K(e.questionIds||t.data.questionIds,t.data.questionsPerPage);return t.data.numPages=s.length,t.data.pages=s,{...e,...t.data,currentPage:Z(`Q${t.data.id}.currentPage`)||t.data.currentPage};case"SUBMIT_QUIZ":return{...e,submitting:!0};case"START_QUIZ":case"START_QUIZ_SUCCESS":return ie(e,t);case"SET_CURRENT_QUESTION":return Y(`Q${e.id}.currentQuestion`,t.questionId),{...e,currentQuestion:t.questionId};case"SET_CURRENT_PAGE":return Y(`Q${e.id}.currentPage`,t.currentPage),{...e,currentPage:t.currentPage};case"SUBMIT_QUIZ_SUCCESS":return re(e,t);case"UPDATE_USER_QUESTION_ANSWERS":return"started"===e.status?X(e,t):e;case"MARK_QUESTION_RENDERED":return ee(e,t);case"SET_QUIZ_MODE":return"reviewing"==t.mode?te(e,{mode:t.mode}):{...e,mode:t.mode};case"SET_QUESTION_HINT":return se(e,t);case"CHECK_ANSWER":return ne(e,t);case"SEND_KEY":return{...e,keyPressed:t.keyPressed}}return e}}),ue=window.LP.dataControls;function le(){const e=[].slice.call(arguments,2),t=(0,a.dispatch)(arguments[0]),s=arguments[1];t[s](...e)}const{camelCaseDashObjectKeys:ce,Hook:de}=LP;function pe(e,t){return{type:"SET_QUIZ_DATA",data:ce(t="string"==typeof e?{[e]:t}:e)}}function me(e){return{type:"SET_CURRENT_QUESTION",questionId:e}}function he(e){return{type:"SET_CURRENT_PAGE",currentPage:e}}function ge(e,t,s){return{type:"BEFORE_START_QUIZ"}}function fe(e,t,s,n){return de.doAction("quiz-started",e,t,s,n),{type:"START_QUIZ_SUCCESS",quizId:t,courseId:s,userId:n,results:e}}const _e=function*(){const{itemId:e,courseId:t}=(0,a.select)("learnpress/quiz").getDefaultRestArgs();if(!0!==de.applyFilters("before-start-quiz",!0,e,t))return;let s=yield(0,ue.apiFetch)({path:"lp/v1/users/start-quiz",method:"POST",data:{item_id:e,course_id:t}});const n=document.querySelector(".lp-button.start");if("error"!==s.status){if(s=de.applyFilters("request-start-quiz-response",s,e,t),1===lpQuizSettings.checkNorequizenroll){const e="quiz_off_"+lpQuizSettings.id;window.localStorage.removeItem(e);const t={endTime:Date.now()+1e3*s.results.duration,status:s.results.status};window.localStorage.setItem(e,JSON.stringify(t));const n="quiz_off_retaken_"+lpQuizSettings.id;let r=window.localStorage.getItem(n);null===r?r=0:r++,window.localStorage.setItem(n,r)}yield le("learnpress/quiz","__requestStartQuizSuccess",ce(s),e,t)}else{const e=document.querySelector(".quiz-buttons"),t=`<div class="learn-press-message error">${s.message}</div>`;e.insertAdjacentHTML("afterend",t),n.classList.remove("loading")}};function qe(){return{type:"SUBMIT_QUIZ"}}function we(e,t,s){return de.doAction("quiz-submitted",e,t,s),{type:"SUBMIT_QUIZ_SUCCESS",results:e}}function*ve(){const{getDefaultRestArgs:e,getQuestionsSelectedAnswers:t}=(0,a.select)("learnpress/quiz"),{itemId:s,courseId:n}=e();if(!0!==de.applyFilters("before-submit-quiz",!0))return;const r=t();if(1===lpQuizSettings.checkNorequizenroll){const e=`LP_Quiz_${s}_Answered`,t=localStorage.getItem(e);if(null!==t){const e=JSON.parse(t);for(const[t,s]of Object.entries(e))r[t]=s.answered}}let i=0;const o=document.querySelector("input[name=lp-quiz-time-spend]");o&&(i=o.value);let u=yield(0,ue.apiFetch)({path:"lp/v1/users/submit-quiz",method:"POST",data:{item_id:s,course_id:n,answered:r,time_spend:i}});if(u=de.applyFilters("request-submit-quiz-response",u,s,n),"success"===u.status){if(1===lpQuizSettings.checkNorequizenroll){const e="quiz_off_"+lpQuizSettings.id,t=window.localStorage.getItem(e);if(null!==t){const s=JSON.parse(t);s.status=u.results.status,s.results=u.results.results,window.localStorage.setItem(e,JSON.stringify(s)),window.localStorage.removeItem("LP_Quiz_"+lpQuizSettings.id+"_Answered")}}yield le("learnpress/quiz","__requestSubmitQuizSuccess",ce(u.results),s,n)}}function Se(e,t,s){return{type:"UPDATE_USER_QUESTION_ANSWERS",questionId:e,answers:t}}function ye(e,t){return{type:"SET_QUESTION_HINT",questionId:e,showHint:t}}function*Ee(e,t){yield le("learnpress/quiz","__requestShowHintSuccess",e,t)}function ze(e,t){return{type:"CHECK_ANSWER",questionId:e,...t}}function*be(e){const{getDefaultRestArgs:t,getQuestionAnswered:s}=(0,a.select)("learnpress/quiz"),{itemId:n,courseId:r}=t(),i=yield(0,ue.apiFetch)({path:"lp/v1/users/check-answer",method:"POST",data:{item_id:n,course_id:r,question_id:e,answered:s(e)||""}});if("success"===i.status){if(1===lpQuizSettings.checkNorequizenroll){const t="quiz_off_"+lpQuizSettings.id,s=window.localStorage.getItem(t);if(null!==s){const n=JSON.parse(s),r=i.options;void 0===n.checked_questions?(n.checked_questions=[],n.checked_questions.push(e)):-1===n.checked_questions.indexOf(e)&&n.checked_questions.push(e),void 0===n.question_options?(n.question_options={},n.question_options[e]=r):void 0===n.question_options[e]&&(n.question_options[e]=r),window.localStorage.setItem(t,JSON.stringify(n))}}yield le("learnpress/quiz","__requestCheckAnswerSuccess",e,ce(i))}}function ke(e){return{type:"MARK_QUESTION_RENDERED",questionId:e}}function Pe(e){return{type:"SET_QUIZ_MODE",mode:e}}function Qe(e){return setTimeout((()=>{le("learnpress/quiz","sendKey","")}),300),{type:"SEND_KEY",keyPressed:e}}const{get:Ne,isArray:Ie}=lodash,Ce=function(e,t){console.time("parseOptions");let s=Ue(e,t).options;return s=Ie(s)?s:JSON.parse(CryptoJS.AES.decrypt(s.data,s.key,{format:CryptoJSAesJson}).toString(CryptoJS.enc.Utf8)),s=Ie(s)?s:JSON.parse(s),console.timeEnd("parseOptions"),s};function Ae(e,t){const s=(0,a.select)("course-learner/user").getItemById(t);return s?Ne(s,"userSettings.status"):""}function Te(e,t,s){return e[t]||s}function Re(e,t){const s=(0,a.select)("course-learner/user").getItemById(t);return s?Ne(s,"userSettings.attempts"):[]}function Oe(e,t){const s=(0,a.select)("course-learner/user").getItemById(t);return s?Ne(s,"userSettings.answered",{}):{}}function Le(e){const{userQuiz:t}=e,s=Ne(t,"questions");return s?Object.values(s):[]}function xe(e,t){const{userQuiz:s}=e;return t?Ne(s,t):s}function De(e){const{userQuiz:t}=e;return{itemId:t.id,courseId:t.courseId}}function Me(e,t){const{userQuiz:s}=e;return Ne(s,`answered.${t}.answered`)||void 0}function He(e,t){const{userQuiz:s}=e;return Ne(s,`answered.${t}.mark`)||void 0}function Fe(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const s=Ne(e,"userQuiz.questionsPerPage")||1;if(s>1)return!1;const n=Ne(e,"userQuiz.currentPage")||1;return Ne(e,"object"===t?`userQuiz.questions[${n-1}]`:`userQuiz.questionIds[${n-1}]`)}const Ue=function(e,t){const{userQuiz:s}=e;return(0,a.select)("learnpress/quiz").getQuestions().find((e=>e.id==t))};function $e(e,t){return-1!==(Ne(e,"userQuiz.checkedQuestions")||[]).indexOf(t)}function je(e,t){}const Be=function(e,t){const s=Ne(e,"userQuiz.answered"),n={};for(const e in s)if(s.hasOwnProperty(e)&&(s[e].temp||s[e].blanks)){if(t&&e===t)return s[e].answered;n[e]=s[e].answered}return n};function Je(e){const t=e.userQuiz||{},{answered:s,negativeMarking:n,questions:r,checkedQuestions:i}=t;let o=0;for(let e in s){if(!s.hasOwnProperty(e))continue;e=parseInt(e);const t=s[e],a=t.questionMark?t.questionMark:function(){const t=r.find((t=>t.id===e));return t?t.point:0}();i.indexOf(e),t.temp||(n?t.answered&&(o=t.correct?o+t.mark:o-a):t.answered&&t.correct&&(o+=t.mark))}return o>0?o:0}var Ge=s(965),Ke=s.n(Ge);const We={ENROLL_COURSE_X:(e,t)=>{}};const{controls:Ze}=LP.dataControls;!function(e){let t=()=>{throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")};const s={getState:e.getState,dispatch:function(){return t(...arguments)}};t=Ke()(We)(s)(e.dispatch),e.dispatch=t}((0,a.registerStore)("learnpress/quiz",{reducer:ae,selectors:t,actions:e,controls:{...Ze}}));const{chunk:Ye}=lodash;class Ve extends r.Component{constructor(e){super(...arguments),i(this,"startQuiz",(e=>{this.props.startQuiz()})),this.state={currentPage:1,numPages:0,pages:[]}}componentDidMount(){const{settings:e,setQuizData:t,status:s,isReviewing:n}=this.props,{question_ids:r,questions_per_page:i}=e,o=Ye(r,i);e.currentPage=1,e.numPages=o.length,e.pages=o;const a=!!e.id&&localStorage.getItem(`LP_Quiz_${e.id}_Answered`);a&&(e.answered=JSON.parse(a)),t(e)}componentDidUpdate(e,t){const{status:s,isReviewing:n}=this.props,r=-1!==["","viewed",void 0].indexOf(s)||!s;if(n||!r){const e=document.querySelector(".quiz-content");e&&(e.style.display="none")}}render(){const{status:e,isReviewing:t}=this.props,s=-1!==["","completed","viewed"].indexOf(e)||!e,n=-1!==["","viewed",void 0].indexOf(e)||!e;return void 0!==e&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",null,!t&&"completed"===e&&(0,r.createElement)(F,null),!t&&n&&(0,r.createElement)(d,null),"started"===e&&(0,r.createElement)(j,null),(-1!==["completed","started"].indexOf(e)||t)&&(0,r.createElement)(C,null),(0,r.createElement)(h,null),s&&!t&&(0,r.createElement)(A,null)))}}var Xe=(0,o.compose)([(0,a.withSelect)((e=>{const{getQuestions:t,getData:s}=e("learnpress/quiz");return{questions:t(),status:s("status"),store:s(),answered:s("answered"),isReviewing:"reviewing"===s("mode"),questionIds:s("questionIds"),checkCount:s("instantCheck"),questionsPerPage:s("questionsPerPage")||1}})),(0,a.withDispatch)((e=>{const{setQuizData:t,startQuiz:s}=e("learnpress/quiz");return{setQuizData:t,startQuiz:s}}))])(Ve);s(605);const{modal:{default:et}}=LP;var tt=Xe;const st=(e,t)=>{if(1===lpQuizSettings.checkNorequizenroll){const e="quiz_off_"+lpQuizSettings.id,s=window.localStorage.getItem(e);if(null!==s){const e=JSON.parse(s);if(t.status=e.status,"started"===e.status){const s=Date.now();t.total_time=Math.floor((e.endTime-s)/1e3)}else"completed"===e.status&&(t.results=e.results,t.answered=e.results.answered,t.questions=e.results.questions);if(void 0!==e.checked_questions&&(t.checked_questions=e.checked_questions),void 0!==e.question_options)for(const s in t.questions){let n=t.questions[s];void 0!==e.question_options[n.id]&&(n.options=e.question_options[n.id]),t.questions[s]=n}}}wp.element.render((0,r.createElement)(et,null,(0,r.createElement)(Xe,{settings:t})),[...document.querySelectorAll(e)][0]),LP.Hook.doAction("lp-quiz-compatible-builder")}}(),(window.LP=window.LP||{}).quiz=n}();
|
1 |
+
!function(){var e={605:function(){LP.Hook.addAction("lp-compatible-builder",(()=>{LP.Hook.removeAction("lp-compatible-builder"),"undefined"!=typeof elementorFrontend&&[...document.querySelectorAll("#popup-content")][0].addEventListener("scroll",(()=>{Waypoint.refreshAll(),window.dispatchEvent(new Event("resize"))})),"undefined"!=typeof vc_js&&"undefined"!=typeof VcWaypoint&&[...document.querySelectorAll("#popup-content")][0].addEventListener("scroll",(()=>{VcWaypoint.refreshAll()}))})),LP.Hook.addAction("lp-quiz-compatible-builder",(()=>(LP.Hook.removeAction("lp-quiz-compatible-builder"),LP.Hook.doAction("lp-compatible-builder"),"undefined"!=typeof elementorFrontend?window.elementorFrontend.init():"undefined"!=typeof vc_js?("undefined"!=typeof vc_round_charts&&vc_round_charts(),"undefined"!=typeof vc_pieChart&&vc_pieChart(),"undefined"!=typeof vc_line_charts&&vc_line_charts(),window.vc_js()):void 0))),LP.Hook.addAction("lp-question-compatible-builder",(()=>(LP.Hook.removeAction("lp-question-compatible-builder"),LP.Hook.removeAction("lp-quiz-compatible-builder"),LP.Hook.doAction("lp-compatible-builder"),"undefined"!=typeof elementorFrontend?window.elementorFrontend.init():"undefined"!=typeof vc_js?("undefined"!=typeof vc_round_charts&&vc_round_charts(),"undefined"!=typeof vc_pieChart&&vc_pieChart(),"undefined"!=typeof vc_line_charts&&vc_line_charts(),window.vc_js()):void 0)))},184:function(e,t){var s;!function(){"use strict";var n={}.hasOwnProperty;function r(){for(var e=[],t=0;t<arguments.length;t++){var s=arguments[t];if(s){var i=typeof s;if("string"===i||"number"===i)e.push(s);else if(Array.isArray(s)){if(s.length){var o=r.apply(null,s);o&&e.push(o)}}else if("object"===i)if(s.toString===Object.prototype.toString)for(var a in s)n.call(s,a)&&s[a]&&e.push(a);else e.push(s.toString())}}return e.join(" ")}e.exports?(r.default=r,e.exports=r):void 0===(s=function(){return r}.apply(t,[]))||(e.exports=s)}()},965:function(e){"use strict";function t(e,s){var n;if(Array.isArray(s))for(n=0;n<s.length;n++)t(e,s[n]);else for(n in s)e[n]=(e[n]||[]).concat(s[n])}e.exports=function(e){var s,n={};return t(n,e),(s=function(e){return function(t){return function(s){var r,i,o=n[s.type],a=t(s);if(o)for(r=0;r<o.length;r++)(i=o[r](s,e))&&e.dispatch(i);return a}}}).effects=n,s}}},t={};function s(n){var r=t[n];if(void 0!==r)return r.exports;var i=t[n]={exports:{}};return e[n](i,i.exports,s),i.exports}s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,{a:t}),t},s.d=function(e,t){for(var n in t)s.o(t,n)&&!s.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};!function(){"use strict";s.r(n),s.d(n,{default:function(){return tt},init:function(){return st}});var e={};s.r(e),s.d(e,{__requestBeforeStartQuiz:function(){return ge},__requestCheckAnswerSuccess:function(){return ze},__requestShowHintSuccess:function(){return ye},__requestStartQuizSuccess:function(){return fe},__requestSubmitQuiz:function(){return qe},__requestSubmitQuizSuccess:function(){return we},checkAnswer:function(){return be},markQuestionRendered:function(){return ke},sendKey:function(){return Qe},setCurrentPage:function(){return he},setCurrentQuestion:function(){return me},setQuizData:function(){return pe},setQuizMode:function(){return Pe},showHint:function(){return Ee},startQuiz:function(){return _e},submitQuiz:function(){return ve},updateUserQuestionAnswers:function(){return Se}});var t={};s.r(t),s.d(t,{getCurrentQuestion:function(){return Fe},getData:function(){return xe},getDefaultRestArgs:function(){return De},getItemStatus:function(){return Ae},getProp:function(){return Te},getQuestion:function(){return Ue},getQuestionAnswered:function(){return Me},getQuestionMark:function(){return He},getQuestionOptions:function(){return Ce},getQuestions:function(){return Le},getQuestionsSelectedAnswers:function(){return Be},getQuizAnswered:function(){return Oe},getQuizAttempts:function(){return Re},getUserMark:function(){return Je},isCheckedAnswer:function(){return $e},isCorrect:function(){return je}});var r=window.wp.element;function i(e,t,s){return t in e?Object.defineProperty(e,t,{value:s,enumerable:!0,configurable:!0,writable:!0}):e[t]=s,e}var o=window.wp.compose,a=window.wp.data,u=window.wp.i18n,l=e=>{let t;const s=86400;if(e>s)t=(e-e%s)/s,e%=s;else if(e==s)return"24:00";const n=new Date(1e3*e).toUTCString().match(/\d{2}:\d{2}:\d{2}/)[0].split(":");return t&&(n[0]=parseInt(n[0])+24*t),n.join(":")};const{Hook:c}=LP;var d=()=>{const e=e=>(0,a.select)("learnpress/quiz").getData(e),t=c.applyFilters("quiz-meta-fields",{duration:{title:(0,u.__)("Duration:","learnpress"),name:"duration",content:l(e("duration"))||"--"},passingGrade:{title:(0,u.__)("Passing grade:","learnpress"),name:"passing-grade",content:e("passingGrade")||"--"},questionsCount:{title:(0,u.__)("Questions:","learnpress"),name:"questions-count",content:e("questionIds")?e("questionIds").length:0}});return t&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("ul",{className:"quiz-intro"},Object.values(t).map(((e,t)=>{const s=e.name||t;return(0,r.createElement)("li",{key:`quiz-intro-field-${t}`,className:`quiz-intro-item quiz-intro-item--${s}`},(0,r.createElement)("div",{className:"quiz-intro-item__title",dangerouslySetInnerHTML:{__html:e.title}}),(0,r.createElement)("span",{className:"quiz-intro-item__content",dangerouslySetInnerHTML:{__html:e.content}}))}))))};class p extends r.Component{constructor(){super(...arguments),i(this,"startQuiz",(e=>{e&&e.preventDefault();const t=document.querySelector(".lp-button.start");t&&t.setAttribute("disabled","disabled"),t.classList.add("loading");const{startQuiz:s,status:n}=this.props;if("completed"===n){const{confirm:e,isOpen:s}=(0,a.select)("learnpress/modal");if("no"===e((0,u.__)("Are you sure you want to retake quiz?","learnpress"),this.startQuiz))return void(!s()&&t&&t.removeAttribute("disabled"))}s()})),i(this,"nav",(e=>t=>{let{questionNav:s,currentPage:n,numPages:r,setCurrentPage:i}=this.props;"prev"===e?n>1?n-=1:n="infinity"===s?r:1:n<r?n+=1:n="infinity"===s?1:r,i(n)})),i(this,"moveTo",(e=>t=>{t.preventDefault();const{numPages:s,setCurrentPage:n}=this.props;e<1||e>s||n(e)})),i(this,"isLast",(()=>{const{currentPage:e,numPages:t}=this.props;return e===t})),i(this,"isFirst",(()=>{const{currentPage:e}=this.props;return 1===e})),i(this,"submit",(()=>{const{submitQuiz:e}=this.props,{confirm:t}=(0,a.select)("learnpress/modal");"no"!==t((0,u.__)("Are you sure to submit quiz?","learnpress"),this.submit)&&e()})),i(this,"setQuizMode",(e=>()=>{const{setQuizMode:t}=this.props;t(e)})),i(this,"isReviewing",(()=>{const{isReviewing:e}=this.props;return e}))}pageNumbers(e){const{numPages:t,currentPage:s}=this.props;if(t<2)return"";(e={numPages:t,currentPage:s,midSize:1,endSize:1,prevNext:!0,...e||{}}).endSize<1&&(e.endSize=1),e.midSize<0&&(e.midSize=1);const n=[...Array(t).keys()];let i=!1;return(0,r.createElement)("div",{className:"nav-links"},e.prevNext&&!this.isFirst()&&(0,r.createElement)("button",{className:"page-numbers prev","data-type":"question-navx",onClick:this.nav("prev")},(0,u.__)("Prev","learnpress")),n.map((t=>(t+=1)===e.currentPage?(i=!0,(0,r.createElement)("span",{key:`page-number-${t}`,className:"page-numbers current"},t)):t<=e.endSize||e.currentPage&&t>=e.currentPage-e.midSize&&t<=e.currentPage+e.midSize||t>e.numPages-e.endSize?(i=!0,(0,r.createElement)("button",{key:`page-number-${t}`,className:"page-numbers",onClick:this.moveTo(t)},t)):i?(i=!1,(0,r.createElement)("span",{key:`page-number-${t}`,className:"page-numbers dots"},"…")):"")),e.prevNext&&!this.isLast()&&(0,r.createElement)("button",{className:"page-numbers next","data-type":"question-navx",onClick:this.nav("next")},(0,u.__)("Next","learnpress")))}render(){const{status:e,questionNav:t,isReviewing:s,showReview:n,numPages:i,question:o,questionsPerPage:a,canRetry:l,retakeNumber:c,requiredPassword:d,allowRetake:p}=this.props,m=["quiz-buttons"];("started"===e||s)&&m.push("align-center"),"questionNav"===t&&m.push("infinity"),this.isFirst()&&m.push("is-first"),this.isLast()&&m.push("is-last");const h=document.querySelector("#popup-sidebar"),g=document.querySelector("#learn-press-quiz-app");let f="";f="started"===e||s?{marginLeft:h&&h.offsetWidth/2,width:g&&g.offsetWidth}:null;let _=" fixed";return"no"==lpQuizSettings.navigationPosition&&(_=" nav-center"),(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:m.join(" ")},(0,r.createElement)("div",{className:"button-left"+("started"===e||s?_:""),style:f},("completed"===e&&l||-1!==["","viewed"].indexOf(e))&&!s&&!d&&(0,r.createElement)("button",{className:"lp-button start",onClick:this.startQuiz},"completed"===e?`${(0,u.__)("Retake","learnpress")} ${p?"":" "+(c?` (${c})`:"")} `:" "+(0,u.__)("Start","learnpress")),("started"===e||s)&&i>1&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"questions-pagination"},this.pageNumbers()))),(0,r.createElement)("div",{className:"button-right"},"started"===e&&(0,r.createElement)(r.Fragment,null,("infinity"===t||this.isLast())&&!s&&(0,r.createElement)("button",{className:"lp-button submit-quiz",onClick:this.submit},(0,u.__)("Finish Quiz","learnpress"))),s&&n&&(0,r.createElement)("button",{className:"lp-button back-quiz",onClick:this.setQuizMode("")},(0,u.__)("Result","learnpress")),"completed"===e&&n&&!s&&(0,r.createElement)("button",{className:"lp-button review-quiz",onClick:this.setQuizMode("reviewing")},(0,u.__)("Review","learnpress")))),this.props.message&&!0!==this.props.success&&(0,r.createElement)("div",{className:"learn-press-message error"},this.props.message))}}const m=(0,o.compose)((0,a.withSelect)((e=>{const{getData:t}=e("learnpress/quiz");return{status:t("status"),showCheck:t("instantCheck"),checkedQuestions:t("checkedQuestions"),hintedQuestions:t("hintedQuestions"),questionsPerPage:t("questionsPerPage")}})))((e=>{const{showCheck:t,checkedQuestions:s,hintedQuestions:n,question:i,status:o,type:a,Button:u}=e;if("started"!==o)return!1;const l=(0,r.createElement)(u,{question:i});switch(a){case"hint":return n?!!i.hasHint&&-1===n.indexOf(i.id)&&l:l;case"check":return!!t&&(s?-1===s.indexOf(i.id)&&l:l)}}));var h=(0,o.compose)([(0,a.withSelect)((e=>{const{getData:t,getCurrentQuestion:s}=e("learnpress/quiz"),n={id:t("id"),status:t("status"),questionIds:t("questionIds"),questionNav:t("questionNav"),isReviewing:t("reviewQuestions")&&"reviewing"===t("mode"),showReview:t("reviewQuestions"),showCheck:t("instantCheck"),checkedQuestions:t("checkedQuestions"),hintedQuestions:t("hintedQuestions"),numPages:t("numPages"),pages:t("pages"),currentPage:t("currentPage"),questionsPerPage:t("questionsPerPage"),pageNumbers:t("pageNumbers"),keyPressed:t("keyPressed"),canRetry:t("retakeCount")>0&&t("retaken")<t("retakeCount"),retakeNumber:t("retakeCount")>0&&t("retaken")<t("retakeCount")?t("retakeCount")-t("retaken"):null,message:t("messageResponse")||!1,success:void 0===t("successResponse")||t("successResponse"),requiredPassword:t("requiredPassword"),allowRetake:t("allowRetake")};if(1===n.questionsPerPage&&(n.question=s("object")),1===lpQuizSettings.checkNorequizenroll){const e=window.localStorage.getItem("quiz_off_retaken_"+lpQuizSettings.id);t("retakeCount")>e?(n.retakeNumber=t("retakeCount")-e,n.canRetry=!0):n.canRetry=!1}return n.allowRetake&&(n.canRetry=!0),n})),(0,a.withDispatch)(((e,t)=>{let{id:s}=t;const{startQuiz:n,setCurrentQuestion:r,submitQuiz:i,setQuizMode:o,showHint:a,checkAnswer:u,setCurrentPage:l}=e("learnpress/quiz");return{startQuiz:n,setCurrentQuestion:r,setQuizMode:o,setCurrentPage:l,submitQuiz(e){i(e)},showHint(e){a(e)},checkAnswer(e){u(e)}}}))])(p);function g(){return g=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var s=arguments[t];for(var n in s)Object.prototype.hasOwnProperty.call(s,n)&&(e[n]=s[n])}return e},g.apply(this,arguments)}class f extends r.Component{constructor(){super(...arguments),i(this,"showHint",(()=>{const{showHint:e,question:t}=this.props;e(t.id,!t.showHint)}))}render(){const{question:e}=this.props;return e.hint?(0,r.createElement)("button",{className:"btn-show-hint",onClick:this.showHint},(0,r.createElement)("span",null,(0,u.__)("Hint","learnpress"))):""}}var _=(0,o.compose)((0,a.withDispatch)(((e,t)=>{let{id:s}=t;const{showHint:n}=e("learnpress/quiz");return{showHint(e,t){n(e,t)}}})))(f),q=s(184),w=s.n(q);class v extends r.Component{constructor(){super(...arguments),i(this,"checkAnswer",(()=>{const{checkAnswer:e,question:t,answered:s}=this.props;s&&(e(t.id),this.setState({loading:!0}))})),this.state={loading:!1}}render(){const{answered:e}=this.props;return(0,r.createElement)(r.Fragment,null,(0,r.createElement)("button",{className:w()("lp-button","instant-check",{loading:this.state.loading,disable:!e}),onClick:this.checkAnswer},(0,r.createElement)("span",{className:"instant-check__icon"}),(0,u.__)("Check answer","learnpress"),!e&&(0,r.createElement)("div",{className:"instant-check__info",dangerouslySetInnerHTML:{__html:(0,u.__)("You need to answer the question before check answer.","learnpress")}})))}}var S=(0,o.compose)((0,a.withSelect)(((e,t)=>{let{question:{id:s}}=t;const{getQuestionAnswered:n}=e("learnpress/quiz");return{answered:n(s)}})),(0,a.withDispatch)(((e,t)=>{let{id:s}=t;const{checkAnswer:n}=e("learnpress/quiz");return{checkAnswer(e){n(e)}}})))(v),y=function(e){const{question:t}=e,s={"instant-check":()=>(0,r.createElement)(m,{type:"check",Button:S,question:t}),hint:()=>(0,r.createElement)(m,{type:"hint",Button:_,question:t})};return(0,r.createElement)(r.Fragment,null,LP.config.questionFooterButtons().map((e=>(0,r.createElement)(r.Fragment,{key:`button-${e}`},s[e]&&s[e]()))))};const E=window.jQuery,{uniqueId:z,isArray:b,isNumber:k,bind:P}=lodash;class Q extends r.Component{constructor(){super(...arguments),i(this,"setRef",(e=>{this.$wrap=E(e)})),i(this,"parseOptions",(e=>(e&&(e=b(e)?e:JSON.parse(CryptoJS.AES.decrypt(e.data,e.key,{format:CryptoJSAesJson}).toString(CryptoJS.enc.Utf8)),e=b(e)?e:JSON.parse(e)),e||[]))),i(this,"getWrapperClass",(()=>{const{question:e,answered:t}=this.props,s=["question","question-"+e.type],n=this.parseOptions(e.options);return n.length&&void 0!==n[0].isTrue&&s.push("question-answered"),s})),i(this,"getEditLink",(()=>{const{question:e,editPermalink:t}=this.props;return t?t.replace(/post=(.*[0-9])/,`post=${e.id}`):""})),i(this,"editPermalink",(e=>(0,u.sprintf)('<a href="%s">%s</a>',e,(0,u.__)("Edit","learnpress")))),this.state={time:null,showHint:!1},this.$wrap=null}componentDidMount(e){const{question:t,isCurrent:s,markQuestionRendered:n}=this.props;return s&&n(t.id),this.state.time||this.setState({time:new Date}),LP.Hook.doAction("lp-question-compatible-builder"),"undefined"!=typeof MathJax&&MathJax.Hub.Queue(["Typeset",MathJax.Hub]),e}render(){const{question:e,isShow:t,isShowIndex:s,isShowHint:n,status:i}=this.props,o=LP.questionTypes.default,a=this.getEditLink();a&&jQuery("#wp-admin-bar-edit-lp_question").find(".ab-item").attr("href",a);const l={index:()=>s?(0,r.createElement)("span",{className:"question-index"},s,"."):"",title:()=>(0,r.createElement)("span",{dangerouslySetInnerHTML:{__html:e.title}}),hint:()=>(0,r.createElement)(_,{question:e}),"edit-permalink":()=>a&&(0,r.createElement)("span",{dangerouslySetInnerHTML:{__html:this.editPermalink(a)},className:"edit-link"})},c={title:()=>(0,r.createElement)("h4",{className:"question-title"},LP.config.questionTitleParts().map((e=>(0,r.createElement)(r.Fragment,{key:`title-part-${e}`},l[e]&&l[e]())))),content:()=>(0,r.createElement)("div",{className:"question-content",dangerouslySetInnerHTML:{__html:e.content}}),"answer-options":()=>this.$wrap&&(0,r.createElement)(o,g({},this.props,{$wrap:this.$wrap})),explanation:()=>e.explanation&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"question-explanation-content"},(0,r.createElement)("strong",{className:"explanation-title"},(0,u.__)("Explanation","learnpress"),":"),(0,r.createElement)("div",{dangerouslySetInnerHTML:{__html:e.explanation}}))),hint:()=>e.hint&&!e.explanation&&e.showHint&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"question-hint-content"},(0,r.createElement)("strong",{className:"hint-title"},(0,u.__)("Hint","learnpress"),":"),(0,r.createElement)("div",{dangerouslySetInnerHTML:{__html:e.hint}}))),buttons:()=>"started"===i&&(0,r.createElement)(y,{question:e})},d=LP.config.questionBlocks();return(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:this.getWrapperClass().join(" "),style:{display:t?"":"none"},"data-id":e.id,ref:this.setRef},d.map((e=>(0,r.createElement)(r.Fragment,{key:`block-${e}`},c[e]?c[e]():"")))))}}var N=(0,o.compose)([(0,a.withSelect)(((e,t)=>{let{question:{id:s}}=t;const{getData:n,getQuestionAnswered:r,getQuestionMark:i}=e("learnpress/quiz");return{status:n("status"),questions:n("question"),answered:r(s),questionsRendered:n("questionsRendered"),editPermalink:n("editPermalink"),numPages:n("numPages"),mark:i(s)||""}})),(0,a.withDispatch)((e=>{const{updateUserQuestionAnswers:t,markQuestionRendered:s}=e("learnpress/quiz");return{markQuestionRendered:s,updateUserQuestionAnswers:t}}))])(Q);class I extends r.Component{constructor(e){super(...arguments),i(this,"startQuiz",(e=>{e.preventDefault();const{startQuiz:t}=this.props;t()})),i(this,"isInVisibleRange",((e,t)=>{const{currentPage:s,questionsPerPage:n}=this.props;return s===Math.ceil(t/n)})),i(this,"nav",(e=>{const{sendKey:t}=this.props;switch(e.keyCode){case 37:return t("left");case 38:case 40:return;case 39:return t("right");default:e.keyCode>=49&&e.keyCode<=57&&t(e.keyCode-48)}})),this.needToTop=!1,this.state={isReviewing:null,currentPage:0,self:this}}static getDerivedStateFromProps(e,t){const s=["isReviewing","currentPage"],n={};for(let r=0;r<s.length;r++)e[s[r]]!==t[s[r]]&&(n[s[r]]=e[s[r]]);return Object.values(n).length?(t.self.needToTop=!0,n):null}componentDidUpdate(){this.needToTop&&(jQuery("#popup-content").animate({scrollTop:0}).find(".content-item-scrollable:last").animate({scrollTop:0}),this.needToTop=!1)}render(){const{status:e,currentQuestion:t,questions:s,questionsRendered:n,isReviewing:i,questionsPerPage:o}=this.props;let a=!0;return"completed"!==e||i||(a=!1),(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{tabIndex:100,onKeyUp:this.nav},(0,r.createElement)("div",{className:"quiz-questions",style:{display:a?"":"none"}},s.map(((e,s)=>{const i=!o&&t===e.id,a=n&&-1!==n.indexOf(e.id),u=this.isInVisibleRange(e.id,s+1);return a||!a||u?(0,r.createElement)(N,{key:`loop-question-${e.id}`,isCurrent:i,isShow:u,isShowIndex:!!o&&s+1,questionsPerPage:o,question:e}):""})))))}}var C=(0,o.compose)((0,a.withSelect)(((e,t,s)=>{const{getData:n,getQuestions:r}=e("learnpress/quiz");return{status:n("status"),currentQuestion:n("currentQuestion"),questions:r(),questionsRendered:n("questionsRendered"),isReviewing:"reviewing"===n("mode"),numPages:n("numPages"),currentPage:n("currentPage"),questionsPerPage:n("questionsPerPage")||1}})),(0,a.withDispatch)((e=>{const{startQuiz:t,sendKey:s}=e("learnpress/quiz");return{startQuiz:t,sendKey:s}})))(I),A=()=>{const e=(0,a.select)("learnpress/quiz").getData("attempts")||[],t=e&&!!e.length;return!!t&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",{className:"quiz-attempts"},(0,r.createElement)("h4",{className:"attempts-heading"},(0,u.__)("Last Attempted","learnpress")),t&&(0,r.createElement)("table",null,(0,r.createElement)("thead",null,(0,r.createElement)("tr",null,(0,r.createElement)("th",{className:"quiz-attempts__questions"},(0,u.__)("Questions","learnpress")),(0,r.createElement)("th",{className:"quiz-attempts__spend"},(0,u.__)("Time spent","learnpress")),(0,r.createElement)("th",{className:"quiz-attempts__marks"},(0,u.__)("Marks","learnpress")),(0,r.createElement)("th",{className:"quiz-attempts__grade"},(0,u.__)("Passing grade","learnpress")),(0,r.createElement)("th",{className:"quiz-attempts__result"},(0,u.__)("Result","learnpress")))),(0,r.createElement)("tbody",null,e.map(((e,t)=>(0,r.createElement)("tr",{key:`attempt-${t}`},(0,r.createElement)("td",{className:"quiz-attempts__questions"},`${e.questionCorrect} / ${e.questionCount}`),(0,r.createElement)("td",{className:"quiz-attempts__spend"},e.timeSpend||"--"),(0,r.createElement)("td",{className:"quiz-attempts__marks"},`${e.userMark} / ${e.mark}`),(0,r.createElement)("td",{className:"quiz-attempts__grade"},e.passingGrade||"-"),(0,r.createElement)("td",{className:"quiz-attempts__result"},`${parseFloat(e.result).toFixed(2)}%`," ",(0,r.createElement)("span",null,e.graduationText)))))))))},T=()=>{const{getData:e}=(0,a.select)("learnpress/quiz"),{submitQuiz:t}=(0,a.dispatch)("learnpress/quiz"),s=e("totalTime"),n=e("duration"),[i,o]=(0,r.useState)(s);let[u,l]=(0,r.useState)(0);const c=s>0;return(0,r.useEffect)((()=>{const e=setInterval((()=>{if(c){let s=i;s-=1,s>0?(o(s),u++,l(n-s)):(clearInterval(e),t())}else u++,l(u),o(u)}),1e3);return()=>clearInterval(e)}),[i,u]),(0,r.createElement)("div",{className:"countdown"},(0,r.createElement)("i",{className:"fas fa-stopwatch"}),(0,r.createElement)("span",null,function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:":";const t=[];let n;return s<3600?(t.push((i-i%60)/60),t.push(i%60)):s&&(t.push((i-i%3600)/3600),n=i%3600,t.push((n-n%60)/60),t.push(n%60)),t.map((e=>e<10?`0${e}`:e)).join(e)}()),(0,r.createElement)("input",{type:"hidden",name:"lp-quiz-time-spend",value:u}))},R=window.wp.url;const O=jQuery;let L=null;const x={elLPOverlay:null,elMainContent:null,elTitle:null,elBtnYes:null,elBtnNo:null,elFooter:null,elCalledModal:null,callBackYes:null,instance:null,init(){return!!this.instance||(this.elLPOverlay=O(".lp-overlay"),!!this.elLPOverlay.length&&(L=this.elLPOverlay,this.elMainContent=L.find(".main-content"),this.elTitle=L.find(".modal-title"),this.elBtnYes=L.find(".btn-yes"),this.elBtnNo=L.find(".btn-no"),this.elFooter=L.find(".lp-modal-footer"),O(document).on("click",".close, .btn-no",(function(){L.hide()})),O(document).on("click",".btn-yes",(function(e){e.preventDefault(),e.stopPropagation(),"function"==typeof x.callBackYes&&x.callBackYes()})),this.instance=this,!0))},setElCalledModal(e){this.elCalledModal=e},setContentModal(e,t){this.elMainContent.html(e),"function"==typeof t&&t()},setTitleModal(e){this.elTitle.html(e)}};var D=x,M={elBtnFinishCourse:null,elBtnCompleteItem:null,init(){D.init()&&void 0!==lpGlobalSettings&&"yes"===lpGlobalSettings.option_enable_popup_confirm_finish&&(this.elBtnFinishCourse=document.querySelectorAll(".lp-btn-finish-course"),this.elBtnCompleteItem=document.querySelector(".lp-btn-complete-item"),this.elBtnCompleteItem&&this.elBtnCompleteItem.addEventListener("click",(e=>{e.preventDefault();const t=e.target.closest("form");D.elLPOverlay.show(),D.setTitleModal(t.dataset.title),D.setContentModal('<div class="pd-2em">'+t.dataset.confirm+"</div>"),D.callBackYes=()=>{t.submit()}})),this.elBtnFinishCourse&&this.elBtnFinishCourse.forEach((e=>e.addEventListener("click",(e=>{e.preventDefault();const t=e.target.closest("form");D.elLPOverlay.show(),D.setTitleModal(t.dataset.title),D.setContentModal('<div class="pd-2em">'+t.dataset.confirm+"</div>"),D.callBackYes=()=>{t.submit()}})))))}};const{debounce:H}=lodash;var F=()=>{const[e,t]=(0,r.useState)(0),[s,n]=(0,r.useState)(!1),i=(0,a.useSelect)((e=>e("learnpress/quiz").getData("id")),[]),o=(0,a.useSelect)((e=>e("learnpress/quiz").getData("results")),[]),l=(0,a.useSelect)((e=>e("learnpress/quiz").getData("passingGrade")),[]),c=(0,a.useSelect)((e=>e("learnpress/quiz").getData("submitting")),[]);(0,r.useEffect)((()=>{p();let e="";if(e=o.graduation?o.graduation:o.result>=f.replace(/[^0-9\.]+/g,"")?"passed":"failed",e){const t=document.querySelector(`.course-curriculum .course-item.course-item-${i}`);t&&(t.classList.remove("failed","passed"),t.classList.add("has-status","status-completed",e))}const t=[...document.querySelectorAll("#popup-header .items-progress")][0],s=document.querySelector(".curriculum-sections");if(t&&s){const e=t.dataset.totalItems,s=t.querySelector(".items-completed"),n=t.querySelector(".learn-press-progress__active");if(s){const t=document.querySelectorAll("#popup-sidebar .course-curriculum .course-item.status-completed");s.textContent=parseInt(t.length);const r=100-100*parseInt(t.length)/parseInt(e);n.style.left="-"+r+"%"}}}),[o]),(0,r.useEffect)((()=>{void 0!==c&&d()}),[c]);const d=()=>{const e=document.querySelectorAll(".popup-header__inner");e.length>0&&0===e[0].querySelectorAll("form.form-button-finish-course").length&&(async e=>{const t=await wp.apiFetch({path:(0,R.addQueryArgs)("lp/v1/lazy-load/items-progress",{courseId:lpGlobalSettings.post_id||"",userId:lpGlobalSettings.user_id||""}),method:"GET"}),{data:s}=t;e.innerHTML+=s,M.init()})(e[0])},p=()=>{t(0),n(!1),jQuery.easing._customEasing=function(e,t,s,n,r){return n*Math.sqrt(1-(t=t/r-1)*t)+s},H((()=>{const e=jQuery("<span />").css({width:1,height:1}).appendTo(document.body);e.css("left",0).animate({left:o.result},{duration:1500,step:(e,s)=>{t(e)},done:()=>{n(!0),e.remove(),jQuery("#quizResultGrade").css({transform:"scale(1.3)",transition:"all 0.25s"}),H((()=>{jQuery("#quizResultGrade").css({transform:"scale(1)"})}),500)()},easing:"_customEasing"})}),o.result>0?1e3:10)()};let m=e;Number.isInteger(e)||(m=parseFloat(e).toFixed(2));const h=190*Math.PI,g={strokeDasharray:`${h} ${h}`,strokeDashoffset:h-m/100*h},f=o.passingGrade||l;let _="";_=o.graduation?o.graduation:m>=f.replace(/[^0-9\.]+/g,"")?"passed":"failed";let q="";q=o.graduationText?o.graduationText:"passed"===_?(0,u.__)("Passed","learnpress"):(0,u.__)("Failed","learnpress");const w=["quiz-result",_];return(0,r.createElement)("div",{className:w.join(" ")},(0,r.createElement)("h3",{className:"result-heading"},(0,u.__)("Your Result","learnpress")),(0,r.createElement)("div",{id:"quizResultGrade",className:"result-grade"},(0,r.createElement)("svg",{className:"circle-progress-bar",width:200,height:200},(0,r.createElement)("circle",{className:"circle-progress-bar__circle",stroke:"",strokeWidth:10,style:g,fill:"transparent",r:95,cx:100,cy:100})),(0,r.createElement)("span",{className:"result-achieved"},`${m}%`),(0,r.createElement)("span",{className:"result-require"},f||"-")),s&&(0,r.createElement)("p",{className:"result-message"},q),(0,r.createElement)("ul",{className:"result-statistic"},(0,r.createElement)("li",{className:"result-statistic-field result-time-spend"},(0,r.createElement)("span",null,(0,u.__)("Time spent","learnpress")),(0,r.createElement)("p",null,o.timeSpend)),(0,r.createElement)("li",{className:"result-statistic-field result-point"},(0,r.createElement)("span",null,(0,u.__)("Points","learnpress")),(0,r.createElement)("p",null,o.userMark," / ",o.mark)),(0,r.createElement)("li",{className:"result-statistic-field result-questions"},(0,r.createElement)("span",null,(0,u.__)("Questions","learnpress")),(0,r.createElement)("p",null,o.questionCount)),(0,r.createElement)("li",{className:"result-statistic-field result-questions-correct"},(0,r.createElement)("span",null,(0,u.__)("Correct","learnpress")),(0,r.createElement)("p",null,o.questionCorrect)),(0,r.createElement)("li",{className:"result-statistic-field result-questions-wrong"},(0,r.createElement)("span",null,(0,u.__)("Wrong","learnpress")),(0,r.createElement)("p",null,o.questionWrong)),(0,r.createElement)("li",{className:"result-statistic-field result-questions-skipped"},(0,r.createElement)("span",null,(0,u.__)("Skipped","learnpress")),(0,r.createElement)("p",null,o.questionEmpty))))};const U=jQuery,{debounce:$}=lodash;var j=()=>{const{submitQuiz:e}=(0,a.dispatch)("learnpress/quiz");(0,r.useEffect)((()=>{const e=U("#popup-content");if(!e.length)return;const t=e.find(".content-item-scrollable:eq(1)"),s=e.find(".content-item-wrap"),n=e.find(".quiz-status"),r=n.offset().top-92;let i=!1,o="-"+s.css("margin-left");U(window).on("resize.refresh-quiz-stauts-bar",$((function(){o="-"+s.css("margin-left"),n.css({"margin-left":o,"margin-right":o})}),100)).trigger("resize.refresh-quiz-stauts-bar"),t.on("scroll",(()=>{if(t.scrollTop()>=r){if(i)return;i=!0}else{if(!i)return;i=!1}i?e.addClass("fixed-quiz-status"):e.removeClass("fixed-quiz-status")}))}),[]);const t=()=>{const{confirm:s}=(0,a.select)("learnpress/modal");"no"!==s((0,u.__)("Are you sure to submit quiz?","learnpress"),t)&&e()},{getData:s,getUserMark:n}=(0,a.select)("learnpress/quiz"),i=s("currentPage"),o=s("questionsPerPage"),l=s("questionIds").length,c=s("submitting"),d=(s("duration"),n()),p=["quiz-status"],m=(i-1)*o+1;let h=m+o-1,g="";return h=Math.min(h,l),c&&p.push("submitting"),g=h<l?o>1?(0,u.sprintf)((0,u.__)("Question <span>%d to %d of %d</span>","learnpress"),m,h,l):(0,u.sprintf)((0,u.__)("Question <span>%d of %d</span>","learnpress"),m,l):(0,u.sprintf)((0,u.__)("Question <span>%d to %d</span>","learnpress"),m,h),(0,r.createElement)("div",{className:p.join(" ")},(0,r.createElement)("div",null,(0,r.createElement)("div",{className:"questions-index",dangerouslySetInnerHTML:{__html:g}}),(0,r.createElement)("div",{className:"current-point"},(0,u.sprintf)((0,u.__)("Earned Point: %s","learnpress"),d)),(0,r.createElement)("div",null,(0,r.createElement)("div",{className:"submit-quiz"},(0,r.createElement)("button",{className:"lp-button",id:"button-submit-quiz",onClick:t},c?(0,u.__)("Submitting...","learnpress"):(0,u.__)("Finish Quiz","learnpress"))),(0,r.createElement)(T,null))))};const{omit:B,flow:J,isArray:G,chunk:K}=lodash,{camelCaseDashObjectKeys:W}=LP,{get:Z,set:Y}=LP.localStorage,V={},X=(e,t)=>{const{answered:s,id:n}=e,r={...s[t.questionId]||{},answered:t.answers,temp:!0};return n&&localStorage.setItem(`LP_Quiz_${n}_Answered`,JSON.stringify({...e.answered,[t.questionId]:r})),{...e,answered:{...e.answered,[t.questionId]:r}}},ee=(e,t)=>{const{questionsRendered:s}=e;return G(s)?(s.push(t.questionId),{...e,questionsRendered:[...s]}):{...e,questionsRendered:[t.questionId]}},te=(e,t)=>(t.currentPage&&Y(`Q${e.id}.currentPage`,t.currentPage),{...e,...t}),se=(e,t)=>{const s=e.questions.map((e=>e.id==t.questionId?{...e,showHint:t.showHint}:e));return{...e,questions:[...s]}},ne=(e,t)=>{const s=e.questions.map((e=>{if(e.id!==t.questionId)return e;const s={explanation:t.explanation};return t.options&&(s.options=t.options),{...e,...s}})),n={...e.answered,[t.questionId]:t.result};let r=localStorage.getItem(`LP_Quiz_${e.id}_Answered`);return r&&(r={...JSON.parse(r),...n},localStorage.setItem(`LP_Quiz_${e.id}_Answered`,JSON.stringify(r))),{...e,questions:[...s],answered:n,checkedQuestions:[...e.checkedQuestions,t.questionId]}},re=(e,t)=>{localStorage.removeItem(`LP_Quiz_${e.id}_Answered`);const s=e.questions.map((s=>{const n={};return e.reviewQuestions&&(t.results.questions[s.id].explanation&&(n.explanation=t.results.questions[s.id].explanation),t.results.questions[s.id].options&&(n.options=t.results.questions[s.id].options)),{...s,...n}}));return te(e,{submitting:!1,currentPage:1,...t.results,questions:[...s]})},ie=(e,t)=>{const s=void 0!==t.results.success&&t.results.success,n=t.results.message||!1;return te(e,{checkedQuestions:[],hintedQuestions:[],mode:"",currentPage:1,...t.results.results,successResponse:s,messageResponse:n})},oe=J(a.combineReducers,(e=>(t,s)=>e(t,s)),(e=>(t,s)=>e(t,s)),(e=>(t,s)=>e(t,s)))({a(){return arguments.length>0&&void 0!==arguments[0]?arguments[0]:{a:1}},b(){return arguments.length>0&&void 0!==arguments[0]?arguments[0]:{b:2}}});var ae=(0,a.combineReducers)({blocks:oe,userQuiz:function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:V,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_QUIZ_DATA":1>t.data.questionsPerPage&&(t.data.questionsPerPage=1);const s=K(e.questionIds||t.data.questionIds,t.data.questionsPerPage);return t.data.numPages=s.length,t.data.pages=s,{...e,...t.data,currentPage:Z(`Q${t.data.id}.currentPage`)||t.data.currentPage};case"SUBMIT_QUIZ":return{...e,submitting:!0};case"START_QUIZ":case"START_QUIZ_SUCCESS":return ie(e,t);case"SET_CURRENT_QUESTION":return Y(`Q${e.id}.currentQuestion`,t.questionId),{...e,currentQuestion:t.questionId};case"SET_CURRENT_PAGE":return Y(`Q${e.id}.currentPage`,t.currentPage),{...e,currentPage:t.currentPage};case"SUBMIT_QUIZ_SUCCESS":return re(e,t);case"UPDATE_USER_QUESTION_ANSWERS":return"started"===e.status?X(e,t):e;case"MARK_QUESTION_RENDERED":return ee(e,t);case"SET_QUIZ_MODE":return"reviewing"==t.mode?te(e,{mode:t.mode}):{...e,mode:t.mode};case"SET_QUESTION_HINT":return se(e,t);case"CHECK_ANSWER":return ne(e,t);case"SEND_KEY":return{...e,keyPressed:t.keyPressed}}return e}}),ue=window.LP.dataControls;function le(){const e=[].slice.call(arguments,2),t=(0,a.dispatch)(arguments[0]),s=arguments[1];t[s](...e)}const{camelCaseDashObjectKeys:ce,Hook:de}=LP;function pe(e,t){return{type:"SET_QUIZ_DATA",data:ce(t="string"==typeof e?{[e]:t}:e)}}function me(e){return{type:"SET_CURRENT_QUESTION",questionId:e}}function he(e){return{type:"SET_CURRENT_PAGE",currentPage:e}}function ge(e,t,s){return{type:"BEFORE_START_QUIZ"}}function fe(e,t,s,n){return de.doAction("quiz-started",e,t,s,n),{type:"START_QUIZ_SUCCESS",quizId:t,courseId:s,userId:n,results:e}}const _e=function*(){const{itemId:e,courseId:t}=(0,a.select)("learnpress/quiz").getDefaultRestArgs();if(!0!==de.applyFilters("before-start-quiz",!0,e,t))return;let s=yield(0,ue.apiFetch)({path:"lp/v1/users/start-quiz",method:"POST",data:{item_id:e,course_id:t}});const n=document.querySelector(".lp-button.start");if("error"!==s.status){if(s=de.applyFilters("request-start-quiz-response",s,e,t),1===lpQuizSettings.checkNorequizenroll){const e="quiz_off_"+lpQuizSettings.id;window.localStorage.removeItem(e);const t={endTime:Date.now()+1e3*s.results.duration,status:s.results.status};window.localStorage.setItem(e,JSON.stringify(t));const n="quiz_off_retaken_"+lpQuizSettings.id;let r=window.localStorage.getItem(n);null===r?r=0:r++,window.localStorage.setItem(n,r)}yield le("learnpress/quiz","__requestStartQuizSuccess",ce(s),e,t)}else{const e=document.querySelector(".quiz-buttons"),t=`<div class="learn-press-message error">${s.message}</div>`;e.insertAdjacentHTML("afterend",t),n.classList.remove("loading")}};function qe(){return{type:"SUBMIT_QUIZ"}}function we(e,t,s){return de.doAction("quiz-submitted",e,t,s),{type:"SUBMIT_QUIZ_SUCCESS",results:e}}function*ve(){const{getDefaultRestArgs:e,getQuestionsSelectedAnswers:t}=(0,a.select)("learnpress/quiz"),{itemId:s,courseId:n}=e();if(!0!==de.applyFilters("before-submit-quiz",!0))return;const r=t();if(1===lpQuizSettings.checkNorequizenroll){const e=`LP_Quiz_${s}_Answered`,t=localStorage.getItem(e);if(null!==t){const e=JSON.parse(t);for(const[t,s]of Object.entries(e))r[t]=s.answered}}let i=0;const o=document.querySelector("input[name=lp-quiz-time-spend]");o&&(i=o.value);let u=yield(0,ue.apiFetch)({path:"lp/v1/users/submit-quiz",method:"POST",data:{item_id:s,course_id:n,answered:r,time_spend:i}});if(u=de.applyFilters("request-submit-quiz-response",u,s,n),"success"===u.status){if(1===lpQuizSettings.checkNorequizenroll){const e="quiz_off_"+lpQuizSettings.id,t=window.localStorage.getItem(e);if(null!==t){const s=JSON.parse(t);s.status=u.results.status,s.results=u.results.results,window.localStorage.setItem(e,JSON.stringify(s)),window.localStorage.removeItem("LP_Quiz_"+lpQuizSettings.id+"_Answered")}}yield le("learnpress/quiz","__requestSubmitQuizSuccess",ce(u.results),s,n)}}function Se(e,t,s){return{type:"UPDATE_USER_QUESTION_ANSWERS",questionId:e,answers:t}}function ye(e,t){return{type:"SET_QUESTION_HINT",questionId:e,showHint:t}}function*Ee(e,t){yield le("learnpress/quiz","__requestShowHintSuccess",e,t)}function ze(e,t){return{type:"CHECK_ANSWER",questionId:e,...t}}function*be(e){const{getDefaultRestArgs:t,getQuestionAnswered:s}=(0,a.select)("learnpress/quiz"),{itemId:n,courseId:r}=t(),i=yield(0,ue.apiFetch)({path:"lp/v1/users/check-answer",method:"POST",data:{item_id:n,course_id:r,question_id:e,answered:s(e)||""}});if("success"===i.status){if(1===lpQuizSettings.checkNorequizenroll){const t="quiz_off_"+lpQuizSettings.id,s=window.localStorage.getItem(t);if(null!==s){const n=JSON.parse(s),r=i.options;void 0===n.checked_questions?(n.checked_questions=[],n.checked_questions.push(e)):-1===n.checked_questions.indexOf(e)&&n.checked_questions.push(e),void 0===n.question_options?(n.question_options={},n.question_options[e]=r):void 0===n.question_options[e]&&(n.question_options[e]=r),window.localStorage.setItem(t,JSON.stringify(n))}}yield le("learnpress/quiz","__requestCheckAnswerSuccess",e,ce(i))}}function ke(e){return{type:"MARK_QUESTION_RENDERED",questionId:e}}function Pe(e){return{type:"SET_QUIZ_MODE",mode:e}}function Qe(e){return setTimeout((()=>{le("learnpress/quiz","sendKey","")}),300),{type:"SEND_KEY",keyPressed:e}}const{get:Ne,isArray:Ie}=lodash,Ce=function(e,t){console.time("parseOptions");let s=Ue(e,t).options;return s=Ie(s)?s:JSON.parse(CryptoJS.AES.decrypt(s.data,s.key,{format:CryptoJSAesJson}).toString(CryptoJS.enc.Utf8)),s=Ie(s)?s:JSON.parse(s),console.timeEnd("parseOptions"),s};function Ae(e,t){const s=(0,a.select)("course-learner/user").getItemById(t);return s?Ne(s,"userSettings.status"):""}function Te(e,t,s){return e[t]||s}function Re(e,t){const s=(0,a.select)("course-learner/user").getItemById(t);return s?Ne(s,"userSettings.attempts"):[]}function Oe(e,t){const s=(0,a.select)("course-learner/user").getItemById(t);return s?Ne(s,"userSettings.answered",{}):{}}function Le(e){const{userQuiz:t}=e,s=Ne(t,"questions");return s?Object.values(s):[]}function xe(e,t){const{userQuiz:s}=e;return t?Ne(s,t):s}function De(e){const{userQuiz:t}=e;return{itemId:t.id,courseId:t.courseId}}function Me(e,t){const{userQuiz:s}=e;return Ne(s,`answered.${t}.answered`)||void 0}function He(e,t){const{userQuiz:s}=e;return Ne(s,`answered.${t}.mark`)||void 0}function Fe(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";const s=Ne(e,"userQuiz.questionsPerPage")||1;if(s>1)return!1;const n=Ne(e,"userQuiz.currentPage")||1;return Ne(e,"object"===t?`userQuiz.questions[${n-1}]`:`userQuiz.questionIds[${n-1}]`)}const Ue=function(e,t){const{userQuiz:s}=e;return(0,a.select)("learnpress/quiz").getQuestions().find((e=>e.id==t))};function $e(e,t){return-1!==(Ne(e,"userQuiz.checkedQuestions")||[]).indexOf(t)}function je(e,t){}const Be=function(e,t){const s=Ne(e,"userQuiz.answered"),n={};for(const e in s)if(s.hasOwnProperty(e)&&(s[e].temp||s[e].blanks)){if(t&&e===t)return s[e].answered;n[e]=s[e].answered}return n};function Je(e){const t=e.userQuiz||{},{answered:s,negativeMarking:n,questions:r,checkedQuestions:i}=t;let o=0;for(let e in s){if(!s.hasOwnProperty(e))continue;e=parseInt(e);const t=s[e],a=t.questionMark?t.questionMark:function(){const t=r.find((t=>t.id===e));return t?t.point:0}();i.indexOf(e),t.temp||(n?t.answered&&(o=t.correct?o+t.mark:o-a):t.answered&&t.correct&&(o+=t.mark))}return o>0?o:0}var Ge=s(965),Ke=s.n(Ge);const We={ENROLL_COURSE_X:(e,t)=>{}};const{controls:Ze}=LP.dataControls;!function(e){let t=()=>{throw new Error("Dispatching while constructing your middleware is not allowed. Other middleware would not be applied to this dispatch.")};const s={getState:e.getState,dispatch:function(){return t(...arguments)}};t=Ke()(We)(s)(e.dispatch),e.dispatch=t}((0,a.registerStore)("learnpress/quiz",{reducer:ae,selectors:t,actions:e,controls:{...Ze}}));const{chunk:Ye}=lodash;class Ve extends r.Component{constructor(e){super(...arguments),i(this,"startQuiz",(e=>{this.props.startQuiz()})),this.state={currentPage:1,numPages:0,pages:[]}}componentDidMount(){const{settings:e,setQuizData:t}=this.props,{question_ids:s,questions_per_page:n}=e,r=Ye(s,n);e.currentPage=1,e.numPages=r.length,e.pages=r;const i=!!e.id&&localStorage.getItem(`LP_Quiz_${e.id}_Answered`);i&&(e.answered=JSON.parse(i)),t(e)}componentDidUpdate(e,t,s){const{status:n}=e,r=document.querySelector(".quiz-content");void 0!==n&&r&&(r.style.display="none")}render(){const{status:e,isReviewing:t}=this.props,s=-1!==["","completed","viewed"].indexOf(e)||!e,n=-1!==["","viewed",void 0].indexOf(e)||!e;return void 0!==e&&(0,r.createElement)(r.Fragment,null,(0,r.createElement)("div",null,!t&&"completed"===e&&(0,r.createElement)(F,null),!t&&n&&(0,r.createElement)(d,null),"started"===e&&(0,r.createElement)(j,null),(-1!==["completed","started"].indexOf(e)||t)&&(0,r.createElement)(C,null),(0,r.createElement)(h,null),s&&!t&&(0,r.createElement)(A,null)))}}var Xe=(0,o.compose)([(0,a.withSelect)((e=>{const{getQuestions:t,getData:s}=e("learnpress/quiz");return{questions:t(),status:s("status"),store:s(),answered:s("answered"),isReviewing:"reviewing"===s("mode"),questionIds:s("questionIds"),checkCount:s("instantCheck"),questionsPerPage:s("questionsPerPage")||1}})),(0,a.withDispatch)((e=>{const{setQuizData:t,startQuiz:s}=e("learnpress/quiz");return{setQuizData:t,startQuiz:s}}))])(Ve);s(605);const{modal:{default:et}}=LP;var tt=Xe;const st=(e,t)=>{if(1===lpQuizSettings.checkNorequizenroll){const e="quiz_off_"+lpQuizSettings.id,s=window.localStorage.getItem(e);if(null!==s){const e=JSON.parse(s);if(t.status=e.status,"started"===e.status){const s=Date.now();t.total_time=Math.floor((e.endTime-s)/1e3)}else"completed"===e.status&&(t.results=e.results,t.answered=e.results.answered,t.questions=e.results.questions);if(void 0!==e.checked_questions&&(t.checked_questions=e.checked_questions),void 0!==e.question_options)for(const s in t.questions){let n=t.questions[s];void 0!==e.question_options[n.id]&&(n.options=e.question_options[n.id]),t.questions[s]=n}}}wp.element.render((0,r.createElement)(et,null,(0,r.createElement)(Xe,{settings:t})),[...document.querySelectorAll(e)][0]),LP.Hook.doAction("lp-quiz-compatible-builder")}}(),(window.LP=window.LP||{}).quiz=n}();
|
assets/js/dist/frontend/single-course.js
CHANGED
@@ -1234,7 +1234,7 @@ const accordionExtraTab = () => {
|
|
1234 |
};
|
1235 |
|
1236 |
const courseContinue = () => {
|
1237 |
-
const formContinue = document.
|
1238 |
|
1239 |
if (formContinue != null) {
|
1240 |
const getResponse = async ele => {
|
@@ -1251,8 +1251,10 @@ const courseContinue = () => {
|
|
1251 |
|
1252 |
getResponse(formContinue).then(function (result) {
|
1253 |
if (result.status === 'success') {
|
1254 |
-
formContinue.
|
1255 |
-
|
|
|
|
|
1256 |
}
|
1257 |
});
|
1258 |
}
|
1234 |
};
|
1235 |
|
1236 |
const courseContinue = () => {
|
1237 |
+
const formContinue = document.querySelectorAll('form.continue-course');
|
1238 |
|
1239 |
if (formContinue != null) {
|
1240 |
const getResponse = async ele => {
|
1251 |
|
1252 |
getResponse(formContinue).then(function (result) {
|
1253 |
if (result.status === 'success') {
|
1254 |
+
formContinue.forEach(form => {
|
1255 |
+
form.style.display = 'block';
|
1256 |
+
form.action = result.data;
|
1257 |
+
});
|
1258 |
}
|
1259 |
});
|
1260 |
}
|
assets/js/dist/frontend/single-course.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function(){"use strict";var e={n:function(t){var s=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(s,{a:s}),s},d:function(t,s){for(var o in s)e.o(s,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:s[o]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}};window.wp.element,window.LP.quiz;const t=jQuery,{throttle:s}=lodash,o=()=>{const e=document.querySelector("#sidebar-toggle");e&&(t(window).innerWidth()<=768||LP.Cookies.get("sidebar-toggle")?e.setAttribute("checked","checked"):e.removeAttribute("checked"),document.querySelector("#popup-course").addEventListener("click",(e=>{var s;"sidebar-toggle"===e.target.id&&(LP.Cookies.set("sidebar-toggle",!!e.target.checked),s=LP.Cookies.get("sidebar-toggle"),t("body").removeClass("lp-sidebar-toggle__open"),t("body").removeClass("lp-sidebar-toggle__close"),s?t("body").addClass("lp-sidebar-toggle__close"):t("body").addClass("lp-sidebar-toggle__open"))}))),t("#learn-press-course-curriculum").find(".section-desc").each(((e,s)=>{const o=t('<span class="show-desc"></span>').on("click",(()=>{r.toggleClass("c")})),r=t(s).siblings(".section-title").append(o)})),t(".section").each((function(){const e=t(this);e.find(".section-left").on("click",(function(){const t=e.toggleClass("closed").hasClass("closed"),s=LP.Cookies.get("closed-section-"+lpGlobalSettings.post_id)||[],o=parseInt(e.data("section-id")),r=s.findIndex((e=>e==o));t?s.push(parseInt(e.data("section-id"))):s.splice(r,1),LP.Cookies.remove("closed-section-(.*)"),LP.Cookies.set("closed-section-"+lpGlobalSettings.post_id,[...new Set(s)])}))}))};document.addEventListener("DOMContentLoaded",(()=>{o()}));var r=window.wp.url;const a=jQuery;let n=null;const l={elLPOverlay:null,elMainContent:null,elTitle:null,elBtnYes:null,elBtnNo:null,elFooter:null,elCalledModal:null,callBackYes:null,instance:null,init(){return!!this.instance||(this.elLPOverlay=a(".lp-overlay"),!!this.elLPOverlay.length&&(n=this.elLPOverlay,this.elMainContent=n.find(".main-content"),this.elTitle=n.find(".modal-title"),this.elBtnYes=n.find(".btn-yes"),this.elBtnNo=n.find(".btn-no"),this.elFooter=n.find(".lp-modal-footer"),a(document).on("click",".close, .btn-no",(function(){n.hide()})),a(document).on("click",".btn-yes",(function(e){e.preventDefault(),e.stopPropagation(),"function"==typeof l.callBackYes&&l.callBackYes()})),this.instance=this,!0))},setElCalledModal(e){this.elCalledModal=e},setContentModal(e,t){this.elMainContent.html(e),"function"==typeof t&&t()},setTitleModal(e){this.elTitle.html(e)}};var c=l,i={elBtnFinishCourse:null,elBtnCompleteItem:null,init(){c.init()&&void 0!==lpGlobalSettings&&"yes"===lpGlobalSettings.option_enable_popup_confirm_finish&&(this.elBtnFinishCourse=document.querySelectorAll(".lp-btn-finish-course"),this.elBtnCompleteItem=document.querySelector(".lp-btn-complete-item"),this.elBtnCompleteItem&&this.elBtnCompleteItem.addEventListener("click",(e=>{e.preventDefault();const t=e.target.closest("form");c.elLPOverlay.show(),c.setTitleModal(t.dataset.title),c.setContentModal('<div class="pd-2em">'+t.dataset.confirm+"</div>"),c.callBackYes=()=>{t.submit()}})),this.elBtnFinishCourse&&this.elBtnFinishCourse.forEach((e=>e.addEventListener("click",(e=>{e.preventDefault();const t=e.target.closest("form");c.elLPOverlay.show(),c.setTitleModal(t.dataset.title),c.setContentModal('<div class="pd-2em">'+t.dataset.confirm+"</div>"),c.callBackYes=()=>{t.submit()}})))))}},d=window.wp.apiFetch,u=e.n(d);const p=jQuery;var m={init(){this.scrollToItemViewing=function(){const e=p(".viewing-course-item");if(e.length){const t=p("#learn-press-course-curriculum"),s=(p("#popup-sidebar").outerHeight(),p(".section-title").outerHeight(),p(".section-header").outerHeight()),o=new RegExp("^viewing-course-item-([0-9].*)"),r=e.attr("class").split(/\s+/);let a=0;if(p.each(r,(function(e,t){const s=o.exec(t);if(s)return a=s[1],!1})),0===a)return;const n=p(".course-item-"+a),l=(n.offset().top,n.offset().top-t.offset().top+t.scrollTop());t.animate({scrollTop:LP.Hook.applyFilters("scroll-item-current",l-s)},800)}},this.scrollToItemViewing()}};const g=()=>{const e=document.querySelector("#popup-course"),t=document.querySelector("#learn-press-course-curriculum");if(e&&t){const s=t.querySelector(".curriculum-sections"),o=e.querySelector(".search-course"),r=e.querySelector('.search-course input[type="text"]');if(!r||!s||!o)return;const a=s.querySelectorAll("li.section"),n=s.querySelectorAll("li.course-item"),l=[];n.forEach((e=>{const t=e.dataset.id,s=e.querySelector(".item-name");l.push({id:t,name:s?s.textContent.toLowerCase():""})}));const c=e=>{e.preventDefault();const t=r.value;o.classList.add("searching"),t||o.classList.remove("searching");const s=[];l.forEach((e=>{t&&!e.name.match(t.toLowerCase())||(s.push(e.id),n.forEach((e=>{-1!==s.indexOf(e.dataset.id)?e.classList.remove("hide-if-js"):e.classList.add("hide-if-js")})))})),a.forEach((e=>{const t=e.querySelectorAll(".course-item"),o=[];t.forEach((e=>{s.includes(e.dataset.id)&&o.push(e.dataset.id)})),0===o.length?e.classList.add("hide-if-js"):e.classList.remove("hide-if-js")}))},i=o.querySelector(".clear");i&&i.addEventListener("click",(e=>{e.preventDefault(),r.value="",c(e)})),o.addEventListener("submit",c),r.addEventListener("keyup",c)}};function h(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const t=()=>{const e=document.querySelector(".learnpress-course-curriculum");e&&s(e)},s=async t=>{const s=t.querySelector(".lp-skeleton-animation"),a=t.dataset.id,l=t.dataset.section;try{const s=1,c=await u()({path:(0,r.addQueryArgs)("lp/v1/lazy-load/course-curriculum",{courseId:e||lpGlobalSettings.post_id||"",page:s,sectionID:l||""}),method:"GET"}),{data:i,status:d,message:p}=c;let m=i.section_ids;if("error"===d)throw new Error(p||"Error");let g=i.content;if(void 0===g&&(g=i,m=c.section_ids),l)if(m&&!m.includes(l)){const e=await n("",s+1,l);if(e){const{data2:s,pages2:r,page2:n}=e;await o({ele:t,returnData:g,sectionID:l,itemID:a,data2:s,pages2:r,page2:n})}}else await o({ele:t,returnData:g,sectionID:l,itemID:a});else g&&t.insertAdjacentHTML("beforeend",g)}catch(e){t.insertAdjacentHTML("beforeend",`<div class="lp-ajax-message error" style="display:block">${e.message||"Error: Query lp/v1/lazy-load/course-curriculum"}</div>`)}s&&s.remove(),g()},o=async e=>{let{ele:t,returnData:s,sectionID:o,itemID:r,data2:n,pages2:l,page2:c}=e;const i=(new DOMParser).parseFromString(s,"text/html");if(n){const e=i.querySelector(".curriculum-sections"),t=i.querySelector(".curriculum-more__button");t&&(l<=c?t.remove():t.dataset.page=c),e.insertAdjacentHTML("beforeend",n)}const d=i.querySelector(`[data-section-id="${o}"]`);if(d){const e=[...d.querySelectorAll(".course-item")].map((e=>e.dataset.id)),t=d.querySelector(".section-content"),s=d.querySelector(".section-item__loadmore");if(r&&!e.includes(r)){const e=await a("",2,o,r),{data3:n,pages3:l,paged3:c,page:i}=e;l<=c||l<=i?s.remove():s.dataset.page=i,n&&t&&t.insertAdjacentHTML("beforeend",n)}}t.insertAdjacentHTML("beforeend",i.body.innerHTML),m.init()},a=async(e,t,s,o)=>{const n=await u()({path:(0,r.addQueryArgs)("lp/v1/lazy-load/course-curriculum-items",{sectionId:s||"",page:t}),method:"GET"}),{data:l,status:c,pages:i,message:d}=n,{page:p}=l;let m;if("success"===c){let r=l.content;if(m=l.item_ids,void 0===r&&(r=l,m=n.item_ids),e+=r,s&&m&&o&&!m.includes(o))return a(e,t+1,s,o)}return{data3:e,pages3:i||l.pages,status3:c,message3:d,page:p||0}},n=async(t,s,o)=>{const a=await u()({path:(0,r.addQueryArgs)("lp/v1/lazy-load/course-curriculum",{courseId:e||lpGlobalSettings.post_id||"",page:s,sectionID:o||"",loadMore:!0}),method:"GET"}),{data:l,status:c,message:i}=a;let d=l.content,p=l.section_ids,m=l.pages;return void 0===d&&(d=l,p=a.section_ids,m=a.pages),"success"===c&&(t+=d,o&&p&&p.length>0&&!p.includes(o))?n(t,s+1,o):{data2:t,pages2:m||l.pages,page2:s,status2:c,message2:i}};t(),document.addEventListener("click",(e=>{[...document.querySelectorAll(".section-item__loadmore")].map((async t=>{if(t.contains(e.target)){const e=t.parentNode,s=e.getAttribute("data-section-id"),o=e.querySelector(".section-content"),r=parseInt(t.dataset.page);t.classList.add("loading");try{const e=await a("",r+1,s,""),{data3:n,pages3:l,status3:c,message3:i}=e;if("error"===c)throw new Error(i||"Error");l<=r+1?t.remove():t.dataset.page=r+1,o.insertAdjacentHTML("beforeend",n)}catch(e){o.insertAdjacentHTML("beforeend",`<div class="lp-ajax-message error" style="display:block">${e.message||"Error: Query lp/v1/lazy-load/course-curriculum"}</div>`)}t.classList.remove("loading"),g()}})),[...document.querySelectorAll(".curriculum-more__button")].map((async t=>{if(t.contains(e.target)){const e=parseInt(t.dataset.page),s=t.parentNode.parentNode.querySelector(".curriculum-sections");if(e&&s){t.classList.add("loading");try{const o=await n("",e+1,""),{data2:r,pages2:a,status2:l,message2:c}=o;if("error"===l)throw new Error(c||"Error");a<=e+1?t.remove():t.dataset.page=e+1,s.insertAdjacentHTML("beforeend",r)}catch(e){s.insertAdjacentHTML("beforeend",`<div class="lp-ajax-message error" style="display:block">${e.message||"Error: Query lp/v1/lazy-load/course-curriculum"}</div>`)}t.classList.remove("loading"),g()}}})),document.querySelector(".learnpress-course-curriculum")&&[...document.querySelectorAll(".section")].map((t=>{t.contains(e.target)&&t.querySelector(".section-left").contains(e.target)&&t.classList.toggle("closed")}))}))}const y=jQuery;y(window).on("load",(()=>{y("#popup-course"),y("#learn-press-course-curriculum"),[...document.querySelectorAll(".course-extra-box")].map((e=>{const t=e.querySelector(".course-extra-box__title");t.addEventListener("click",(()=>{const s=t.nextElementSibling,o=document.querySelector(".course-extra-box.active");o&&!e.classList.contains("active")&&(o.classList.remove("active"),o.querySelector(".course-extra-box__content").style.display="none"),e.classList.contains("active")?(e.classList.remove("active"),s.style.display="none"):(e.classList.add("active"),s.style.display="block")}))})),y("#learn-press-course-tabs").on("change",'input[name="learn-press-course-tab-radio"]',(function(e){const t=y('input[name="learn-press-course-tab-radio"]:checked').val();LP.Cookies.set("course-tab",t),y('label[for="'+y(e.target).attr("id")+'"]').closest("li").addClass("active").siblings().removeClass("active")})),function(){const e=y(".course-summary-sidebar");if(!e.length)return;const t=y(window),s=e.children(),o=e.offset();let r=0;const a=e.height(),n=s.height();t.on("scroll.fixed-course-sidebar",(function(){r=t.scrollTop();const l=r-o.top+32;if(l<0)return e.removeClass("slide-top slide-down"),void s.css("top","");l>a-n?(e.removeClass("slide-down").addClass("slide-top"),s.css("top",a-n)):(e.removeClass("slide-top").addClass("slide-down"),s.css("top",32))})).trigger("scroll.fixed-course-sidebar")}(),(()=>{const e=document.querySelectorAll("form.enroll-course");e.length>0&&e.forEach((e=>{e.addEventListener("submit",(t=>{t.preventDefault();const s=e.querySelector("input[name=enroll-course]").value,o=e.querySelector("button.button-enroll-course");o.classList.add("loading"),o.disabled=!0,(async(t,s)=>{try{const o=await wp.apiFetch({path:"lp/v1/courses/enroll-course",method:"POST",data:{id:t}});s.classList.remove("loading"),s.disabled=!1;const{status:r,data:{redirect:a},message:n}=o;n&&r&&(s.style.display="none",e.innerHTML+=`<div class="lp-enroll-notice ${r}">${n}</div>`,a&&(window.location.href=a))}catch(e){form.innerHTML+=`<div class="lp-enroll-notice error">${e.message&&e.message}</div>`}})(s,o)}))})),null!==document.querySelector(".course-detail-info")&&window.addEventListener("pageshow",(e=>{(e.persisted||void 0!==window.performance&&"back_forward"==String(window.performance.getEntriesByType("navigation")[0].type))&&location.reload()}))})(),(()=>{const e=document.querySelectorAll("form.purchase-course");e.length>0&&e.forEach((e=>{const t=()=>{document.querySelectorAll(".lp_allow_repuchase_select").forEach((t=>{const o=t.querySelectorAll("[name=_lp_allow_repurchase_type]");for(let t=0,r=o.length;t<r;t++)if(o[t].checked){const r=o[t].value,a=e.querySelector("input[name=purchase-course]").value,n=e.querySelector("button.button-purchase-course");n.classList.add("loading"),n.disabled=!0,s(a,n,r);break}}))},s=async function(s,o){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];try{const a=await wp.apiFetch({path:"lp/v1/courses/purchase-course",method:"POST",data:{id:s,repurchaseType:r}});o&&(o.classList.remove("loading"),o.disabled=!1);const{status:n,data:{redirect:l,type:i,html:d,titlePopup:u},message:p}=a;if("allow_repurchase"===i&&"success"===n){if(!e.querySelector(".lp_allow_repuchase_select")){if(!c.init())return;c.elLPOverlay.show(),c.setTitleModal(u||""),c.setContentModal(d),c.callBackYes=()=>{c.elLPOverlay.hide(),t()}}}else p&&n&&(e.innerHTML+=`<div class="lp-enroll-notice ${n}">${p}</div>`,"success"===n&&l&&(window.location.href=l))}catch(t){e.innerHTML+=`<div class="lp-enroll-notice error">${t.message&&t.message}</div>`}};e.addEventListener("submit",(t=>{t.preventDefault();const o=e.querySelector("input[name=purchase-course]").value,r=e.querySelector("button.button-purchase-course");r.classList.add("loading"),r.disabled=!0,s(o,r)}))}))})(),(()=>{const e=document.querySelectorAll(".lp-form-retake-course");e.length&&e.forEach((e=>{const t=e.querySelector(".button-retake-course"),s=e.querySelector("[name=retake-course]").value,o=e.querySelector(".lp-ajax-message");e.addEventListener("submit",(e=>{e.preventDefault()})),t.addEventListener("click",(e=>{var r;e.preventDefault(),t.classList.add("loading"),t.disabled=!0,r=t,wp.apiFetch({path:"/lp/v1/courses/retake-course",method:"POST",data:{id:s}}).then((e=>{const{status:t,message:s,data:a}=e;o.innerHTML=s,null!=t&&"success"===t?(r.style.display="none",setTimeout((()=>{window.location.replace(a.url_redirect)}),1e3)):o.classList.add("error")})).catch((e=>{o.classList.add("error"),o.innerHTML="error: "+e.message})).then((()=>{r.classList.remove("loading"),r.disabled=!1,o.style.display="block"}))}))}))})(),(()=>{const e=document.querySelectorAll(".lp-course-progress-wrapper");if(!e.length)return;if("IntersectionObserver"in window){const s=new IntersectionObserver(((e,o)=>{e.forEach((e=>{if(e.isIntersecting){const o=e.target;setTimeout((function(){t(o)}),600),s.unobserve(o)}}))}));[...e].map((e=>s.observe(e)))}const t=async e=>{const t=await wp.apiFetch({path:"lp/v1/lazy-load/course-progress",method:"POST",data:{courseId:lpGlobalSettings.post_id||"",userId:lpGlobalSettings.user_id||""}}),{data:s}=t;e.innerHTML=s}})(),(()=>{const e=document.querySelector("form.continue-course");null!=e&&(async e=>await wp.apiFetch({path:"lp/v1/courses/continue-course",method:"POST",data:{courseId:lpGlobalSettings.post_id||"",userId:lpGlobalSettings.user_id||""}}))().then((function(t){"success"===t.status&&(e.style.display="block",e.action=t.data)}))})(),i.init(),h()})),LP.Hook.addAction("lp_course_curriculum_skeleton",(function(e){h(e)}))}();
|
1 |
+
!function(){"use strict";var e={n:function(t){var s=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(s,{a:s}),s},d:function(t,s){for(var o in s)e.o(s,o)&&!e.o(t,o)&&Object.defineProperty(t,o,{enumerable:!0,get:s[o]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}};window.wp.element,window.LP.quiz;const t=jQuery,{throttle:s}=lodash,o=()=>{const e=document.querySelector("#sidebar-toggle");e&&(t(window).innerWidth()<=768||LP.Cookies.get("sidebar-toggle")?e.setAttribute("checked","checked"):e.removeAttribute("checked"),document.querySelector("#popup-course").addEventListener("click",(e=>{var s;"sidebar-toggle"===e.target.id&&(LP.Cookies.set("sidebar-toggle",!!e.target.checked),s=LP.Cookies.get("sidebar-toggle"),t("body").removeClass("lp-sidebar-toggle__open"),t("body").removeClass("lp-sidebar-toggle__close"),s?t("body").addClass("lp-sidebar-toggle__close"):t("body").addClass("lp-sidebar-toggle__open"))}))),t("#learn-press-course-curriculum").find(".section-desc").each(((e,s)=>{const o=t('<span class="show-desc"></span>').on("click",(()=>{r.toggleClass("c")})),r=t(s).siblings(".section-title").append(o)})),t(".section").each((function(){const e=t(this);e.find(".section-left").on("click",(function(){const t=e.toggleClass("closed").hasClass("closed"),s=LP.Cookies.get("closed-section-"+lpGlobalSettings.post_id)||[],o=parseInt(e.data("section-id")),r=s.findIndex((e=>e==o));t?s.push(parseInt(e.data("section-id"))):s.splice(r,1),LP.Cookies.remove("closed-section-(.*)"),LP.Cookies.set("closed-section-"+lpGlobalSettings.post_id,[...new Set(s)])}))}))};document.addEventListener("DOMContentLoaded",(()=>{o()}));var r=window.wp.url;const a=jQuery;let n=null;const l={elLPOverlay:null,elMainContent:null,elTitle:null,elBtnYes:null,elBtnNo:null,elFooter:null,elCalledModal:null,callBackYes:null,instance:null,init(){return!!this.instance||(this.elLPOverlay=a(".lp-overlay"),!!this.elLPOverlay.length&&(n=this.elLPOverlay,this.elMainContent=n.find(".main-content"),this.elTitle=n.find(".modal-title"),this.elBtnYes=n.find(".btn-yes"),this.elBtnNo=n.find(".btn-no"),this.elFooter=n.find(".lp-modal-footer"),a(document).on("click",".close, .btn-no",(function(){n.hide()})),a(document).on("click",".btn-yes",(function(e){e.preventDefault(),e.stopPropagation(),"function"==typeof l.callBackYes&&l.callBackYes()})),this.instance=this,!0))},setElCalledModal(e){this.elCalledModal=e},setContentModal(e,t){this.elMainContent.html(e),"function"==typeof t&&t()},setTitleModal(e){this.elTitle.html(e)}};var c=l,i={elBtnFinishCourse:null,elBtnCompleteItem:null,init(){c.init()&&void 0!==lpGlobalSettings&&"yes"===lpGlobalSettings.option_enable_popup_confirm_finish&&(this.elBtnFinishCourse=document.querySelectorAll(".lp-btn-finish-course"),this.elBtnCompleteItem=document.querySelector(".lp-btn-complete-item"),this.elBtnCompleteItem&&this.elBtnCompleteItem.addEventListener("click",(e=>{e.preventDefault();const t=e.target.closest("form");c.elLPOverlay.show(),c.setTitleModal(t.dataset.title),c.setContentModal('<div class="pd-2em">'+t.dataset.confirm+"</div>"),c.callBackYes=()=>{t.submit()}})),this.elBtnFinishCourse&&this.elBtnFinishCourse.forEach((e=>e.addEventListener("click",(e=>{e.preventDefault();const t=e.target.closest("form");c.elLPOverlay.show(),c.setTitleModal(t.dataset.title),c.setContentModal('<div class="pd-2em">'+t.dataset.confirm+"</div>"),c.callBackYes=()=>{t.submit()}})))))}},d=window.wp.apiFetch,u=e.n(d);const p=jQuery;var m={init(){this.scrollToItemViewing=function(){const e=p(".viewing-course-item");if(e.length){const t=p("#learn-press-course-curriculum"),s=(p("#popup-sidebar").outerHeight(),p(".section-title").outerHeight(),p(".section-header").outerHeight()),o=new RegExp("^viewing-course-item-([0-9].*)"),r=e.attr("class").split(/\s+/);let a=0;if(p.each(r,(function(e,t){const s=o.exec(t);if(s)return a=s[1],!1})),0===a)return;const n=p(".course-item-"+a),l=(n.offset().top,n.offset().top-t.offset().top+t.scrollTop());t.animate({scrollTop:LP.Hook.applyFilters("scroll-item-current",l-s)},800)}},this.scrollToItemViewing()}};const g=()=>{const e=document.querySelector("#popup-course"),t=document.querySelector("#learn-press-course-curriculum");if(e&&t){const s=t.querySelector(".curriculum-sections"),o=e.querySelector(".search-course"),r=e.querySelector('.search-course input[type="text"]');if(!r||!s||!o)return;const a=s.querySelectorAll("li.section"),n=s.querySelectorAll("li.course-item"),l=[];n.forEach((e=>{const t=e.dataset.id,s=e.querySelector(".item-name");l.push({id:t,name:s?s.textContent.toLowerCase():""})}));const c=e=>{e.preventDefault();const t=r.value;o.classList.add("searching"),t||o.classList.remove("searching");const s=[];l.forEach((e=>{t&&!e.name.match(t.toLowerCase())||(s.push(e.id),n.forEach((e=>{-1!==s.indexOf(e.dataset.id)?e.classList.remove("hide-if-js"):e.classList.add("hide-if-js")})))})),a.forEach((e=>{const t=e.querySelectorAll(".course-item"),o=[];t.forEach((e=>{s.includes(e.dataset.id)&&o.push(e.dataset.id)})),0===o.length?e.classList.add("hide-if-js"):e.classList.remove("hide-if-js")}))},i=o.querySelector(".clear");i&&i.addEventListener("click",(e=>{e.preventDefault(),r.value="",c(e)})),o.addEventListener("submit",c),r.addEventListener("keyup",c)}};function h(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const t=()=>{const e=document.querySelector(".learnpress-course-curriculum");e&&s(e)},s=async t=>{const s=t.querySelector(".lp-skeleton-animation"),a=t.dataset.id,l=t.dataset.section;try{const s=1,c=await u()({path:(0,r.addQueryArgs)("lp/v1/lazy-load/course-curriculum",{courseId:e||lpGlobalSettings.post_id||"",page:s,sectionID:l||""}),method:"GET"}),{data:i,status:d,message:p}=c;let m=i.section_ids;if("error"===d)throw new Error(p||"Error");let g=i.content;if(void 0===g&&(g=i,m=c.section_ids),l)if(m&&!m.includes(l)){const e=await n("",s+1,l);if(e){const{data2:s,pages2:r,page2:n}=e;await o({ele:t,returnData:g,sectionID:l,itemID:a,data2:s,pages2:r,page2:n})}}else await o({ele:t,returnData:g,sectionID:l,itemID:a});else g&&t.insertAdjacentHTML("beforeend",g)}catch(e){t.insertAdjacentHTML("beforeend",`<div class="lp-ajax-message error" style="display:block">${e.message||"Error: Query lp/v1/lazy-load/course-curriculum"}</div>`)}s&&s.remove(),g()},o=async e=>{let{ele:t,returnData:s,sectionID:o,itemID:r,data2:n,pages2:l,page2:c}=e;const i=(new DOMParser).parseFromString(s,"text/html");if(n){const e=i.querySelector(".curriculum-sections"),t=i.querySelector(".curriculum-more__button");t&&(l<=c?t.remove():t.dataset.page=c),e.insertAdjacentHTML("beforeend",n)}const d=i.querySelector(`[data-section-id="${o}"]`);if(d){const e=[...d.querySelectorAll(".course-item")].map((e=>e.dataset.id)),t=d.querySelector(".section-content"),s=d.querySelector(".section-item__loadmore");if(r&&!e.includes(r)){const e=await a("",2,o,r),{data3:n,pages3:l,paged3:c,page:i}=e;l<=c||l<=i?s.remove():s.dataset.page=i,n&&t&&t.insertAdjacentHTML("beforeend",n)}}t.insertAdjacentHTML("beforeend",i.body.innerHTML),m.init()},a=async(e,t,s,o)=>{const n=await u()({path:(0,r.addQueryArgs)("lp/v1/lazy-load/course-curriculum-items",{sectionId:s||"",page:t}),method:"GET"}),{data:l,status:c,pages:i,message:d}=n,{page:p}=l;let m;if("success"===c){let r=l.content;if(m=l.item_ids,void 0===r&&(r=l,m=n.item_ids),e+=r,s&&m&&o&&!m.includes(o))return a(e,t+1,s,o)}return{data3:e,pages3:i||l.pages,status3:c,message3:d,page:p||0}},n=async(t,s,o)=>{const a=await u()({path:(0,r.addQueryArgs)("lp/v1/lazy-load/course-curriculum",{courseId:e||lpGlobalSettings.post_id||"",page:s,sectionID:o||"",loadMore:!0}),method:"GET"}),{data:l,status:c,message:i}=a;let d=l.content,p=l.section_ids,m=l.pages;return void 0===d&&(d=l,p=a.section_ids,m=a.pages),"success"===c&&(t+=d,o&&p&&p.length>0&&!p.includes(o))?n(t,s+1,o):{data2:t,pages2:m||l.pages,page2:s,status2:c,message2:i}};t(),document.addEventListener("click",(e=>{[...document.querySelectorAll(".section-item__loadmore")].map((async t=>{if(t.contains(e.target)){const e=t.parentNode,s=e.getAttribute("data-section-id"),o=e.querySelector(".section-content"),r=parseInt(t.dataset.page);t.classList.add("loading");try{const e=await a("",r+1,s,""),{data3:n,pages3:l,status3:c,message3:i}=e;if("error"===c)throw new Error(i||"Error");l<=r+1?t.remove():t.dataset.page=r+1,o.insertAdjacentHTML("beforeend",n)}catch(e){o.insertAdjacentHTML("beforeend",`<div class="lp-ajax-message error" style="display:block">${e.message||"Error: Query lp/v1/lazy-load/course-curriculum"}</div>`)}t.classList.remove("loading"),g()}})),[...document.querySelectorAll(".curriculum-more__button")].map((async t=>{if(t.contains(e.target)){const e=parseInt(t.dataset.page),s=t.parentNode.parentNode.querySelector(".curriculum-sections");if(e&&s){t.classList.add("loading");try{const o=await n("",e+1,""),{data2:r,pages2:a,status2:l,message2:c}=o;if("error"===l)throw new Error(c||"Error");a<=e+1?t.remove():t.dataset.page=e+1,s.insertAdjacentHTML("beforeend",r)}catch(e){s.insertAdjacentHTML("beforeend",`<div class="lp-ajax-message error" style="display:block">${e.message||"Error: Query lp/v1/lazy-load/course-curriculum"}</div>`)}t.classList.remove("loading"),g()}}})),document.querySelector(".learnpress-course-curriculum")&&[...document.querySelectorAll(".section")].map((t=>{t.contains(e.target)&&t.querySelector(".section-left").contains(e.target)&&t.classList.toggle("closed")}))}))}const y=jQuery;y(window).on("load",(()=>{y("#popup-course"),y("#learn-press-course-curriculum"),[...document.querySelectorAll(".course-extra-box")].map((e=>{const t=e.querySelector(".course-extra-box__title");t.addEventListener("click",(()=>{const s=t.nextElementSibling,o=document.querySelector(".course-extra-box.active");o&&!e.classList.contains("active")&&(o.classList.remove("active"),o.querySelector(".course-extra-box__content").style.display="none"),e.classList.contains("active")?(e.classList.remove("active"),s.style.display="none"):(e.classList.add("active"),s.style.display="block")}))})),y("#learn-press-course-tabs").on("change",'input[name="learn-press-course-tab-radio"]',(function(e){const t=y('input[name="learn-press-course-tab-radio"]:checked').val();LP.Cookies.set("course-tab",t),y('label[for="'+y(e.target).attr("id")+'"]').closest("li").addClass("active").siblings().removeClass("active")})),function(){const e=y(".course-summary-sidebar");if(!e.length)return;const t=y(window),s=e.children(),o=e.offset();let r=0;const a=e.height(),n=s.height();t.on("scroll.fixed-course-sidebar",(function(){r=t.scrollTop();const l=r-o.top+32;if(l<0)return e.removeClass("slide-top slide-down"),void s.css("top","");l>a-n?(e.removeClass("slide-down").addClass("slide-top"),s.css("top",a-n)):(e.removeClass("slide-top").addClass("slide-down"),s.css("top",32))})).trigger("scroll.fixed-course-sidebar")}(),(()=>{const e=document.querySelectorAll("form.enroll-course");e.length>0&&e.forEach((e=>{e.addEventListener("submit",(t=>{t.preventDefault();const s=e.querySelector("input[name=enroll-course]").value,o=e.querySelector("button.button-enroll-course");o.classList.add("loading"),o.disabled=!0,(async(t,s)=>{try{const o=await wp.apiFetch({path:"lp/v1/courses/enroll-course",method:"POST",data:{id:t}});s.classList.remove("loading"),s.disabled=!1;const{status:r,data:{redirect:a},message:n}=o;n&&r&&(s.style.display="none",e.innerHTML+=`<div class="lp-enroll-notice ${r}">${n}</div>`,a&&(window.location.href=a))}catch(e){form.innerHTML+=`<div class="lp-enroll-notice error">${e.message&&e.message}</div>`}})(s,o)}))})),null!==document.querySelector(".course-detail-info")&&window.addEventListener("pageshow",(e=>{(e.persisted||void 0!==window.performance&&"back_forward"==String(window.performance.getEntriesByType("navigation")[0].type))&&location.reload()}))})(),(()=>{const e=document.querySelectorAll("form.purchase-course");e.length>0&&e.forEach((e=>{const t=()=>{document.querySelectorAll(".lp_allow_repuchase_select").forEach((t=>{const o=t.querySelectorAll("[name=_lp_allow_repurchase_type]");for(let t=0,r=o.length;t<r;t++)if(o[t].checked){const r=o[t].value,a=e.querySelector("input[name=purchase-course]").value,n=e.querySelector("button.button-purchase-course");n.classList.add("loading"),n.disabled=!0,s(a,n,r);break}}))},s=async function(s,o){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];try{const a=await wp.apiFetch({path:"lp/v1/courses/purchase-course",method:"POST",data:{id:s,repurchaseType:r}});o&&(o.classList.remove("loading"),o.disabled=!1);const{status:n,data:{redirect:l,type:i,html:d,titlePopup:u},message:p}=a;if("allow_repurchase"===i&&"success"===n){if(!e.querySelector(".lp_allow_repuchase_select")){if(!c.init())return;c.elLPOverlay.show(),c.setTitleModal(u||""),c.setContentModal(d),c.callBackYes=()=>{c.elLPOverlay.hide(),t()}}}else p&&n&&(e.innerHTML+=`<div class="lp-enroll-notice ${n}">${p}</div>`,"success"===n&&l&&(window.location.href=l))}catch(t){e.innerHTML+=`<div class="lp-enroll-notice error">${t.message&&t.message}</div>`}};e.addEventListener("submit",(t=>{t.preventDefault();const o=e.querySelector("input[name=purchase-course]").value,r=e.querySelector("button.button-purchase-course");r.classList.add("loading"),r.disabled=!0,s(o,r)}))}))})(),(()=>{const e=document.querySelectorAll(".lp-form-retake-course");e.length&&e.forEach((e=>{const t=e.querySelector(".button-retake-course"),s=e.querySelector("[name=retake-course]").value,o=e.querySelector(".lp-ajax-message");e.addEventListener("submit",(e=>{e.preventDefault()})),t.addEventListener("click",(e=>{var r;e.preventDefault(),t.classList.add("loading"),t.disabled=!0,r=t,wp.apiFetch({path:"/lp/v1/courses/retake-course",method:"POST",data:{id:s}}).then((e=>{const{status:t,message:s,data:a}=e;o.innerHTML=s,null!=t&&"success"===t?(r.style.display="none",setTimeout((()=>{window.location.replace(a.url_redirect)}),1e3)):o.classList.add("error")})).catch((e=>{o.classList.add("error"),o.innerHTML="error: "+e.message})).then((()=>{r.classList.remove("loading"),r.disabled=!1,o.style.display="block"}))}))}))})(),(()=>{const e=document.querySelectorAll(".lp-course-progress-wrapper");if(!e.length)return;if("IntersectionObserver"in window){const s=new IntersectionObserver(((e,o)=>{e.forEach((e=>{if(e.isIntersecting){const o=e.target;setTimeout((function(){t(o)}),600),s.unobserve(o)}}))}));[...e].map((e=>s.observe(e)))}const t=async e=>{const t=await wp.apiFetch({path:"lp/v1/lazy-load/course-progress",method:"POST",data:{courseId:lpGlobalSettings.post_id||"",userId:lpGlobalSettings.user_id||""}}),{data:s}=t;e.innerHTML=s}})(),(()=>{const e=document.querySelectorAll("form.continue-course");null!=e&&(async e=>await wp.apiFetch({path:"lp/v1/courses/continue-course",method:"POST",data:{courseId:lpGlobalSettings.post_id||"",userId:lpGlobalSettings.user_id||""}}))().then((function(t){"success"===t.status&&e.forEach((e=>{e.style.display="block",e.action=t.data}))}))})(),i.init(),h()})),LP.Hook.addAction("lp_course_curriculum_skeleton",(function(e){h(e)}))}();
|
assets/src/apps/js/frontend/courses.js
CHANGED
@@ -74,63 +74,65 @@ window.lpArchiveRequestCourse = ( args, callBackSuccess ) => {
|
|
74 |
}
|
75 |
|
76 |
const urlCourseArchive = lpArchiveAddQueryArgs( wpRestUrl + 'lp/v1/courses/archive-course', { ...lpArchiveSkeleton, ...args } );
|
|
|
77 |
|
78 |
-
|
79 |
-
path: 'lp/v1/courses/archive-course' + urlCourseArchive.search,
|
80 |
method: 'GET',
|
81 |
-
} )
|
82 |
-
|
83 |
-
|
84 |
-
|
|
|
|
|
85 |
|
86 |
-
|
87 |
|
88 |
-
|
89 |
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
|
100 |
-
|
101 |
-
|
102 |
-
|
|
|
103 |
}
|
104 |
-
}
|
105 |
|
106 |
-
|
107 |
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
};
|
135 |
|
136 |
const lpArchiveSearchCourse = () => {
|
74 |
}
|
75 |
|
76 |
const urlCourseArchive = lpArchiveAddQueryArgs( wpRestUrl + 'lp/v1/courses/archive-course', { ...lpArchiveSkeleton, ...args } );
|
77 |
+
const url = lpGlobalSettings.lp_rest_url + 'lp/v1/courses/archive-course' + urlCourseArchive.search;
|
78 |
|
79 |
+
fetch( url, {
|
|
|
80 |
method: 'GET',
|
81 |
+
} )
|
82 |
+
.then( ( response ) => response.json() )
|
83 |
+
.then( ( response ) => {
|
84 |
+
if ( typeof response.data.content !== 'undefined' && listCourse ) {
|
85 |
+
listCourse.innerHTML = response.data.content || '';
|
86 |
+
}
|
87 |
|
88 |
+
const pagination = response.data.pagination;
|
89 |
|
90 |
+
// lpArchiveSearchCourse();
|
91 |
|
92 |
+
const paginationEle = document.querySelector( '.learn-press-pagination' );
|
93 |
+
if ( paginationEle ) {
|
94 |
+
paginationEle.remove();
|
95 |
+
}
|
96 |
|
97 |
+
if ( typeof pagination !== 'undefined' ) {
|
98 |
+
const paginationHTML = new DOMParser().parseFromString( pagination, 'text/html' );
|
99 |
+
const paginationNewNode = paginationHTML.querySelector( '.learn-press-pagination' );
|
100 |
+
//const paginationInnerHTML = paginationSelector && paginationSelector.innerHTML;
|
101 |
|
102 |
+
if ( paginationNewNode ) {
|
103 |
+
listCourse.after( paginationNewNode );
|
104 |
+
lpArchivePaginationCourse();
|
105 |
+
}
|
106 |
}
|
|
|
107 |
|
108 |
+
wp.hooks.doAction( 'lp-js-get-courses', response );
|
109 |
|
110 |
+
if ( typeof callBackSuccess === 'function' ) {
|
111 |
+
callBackSuccess( response );
|
112 |
+
}
|
113 |
+
} ).catch( ( error ) => {
|
114 |
+
listCourse.innerHTML += `<div class="lp-ajax-message error" style="display:block">${ error.message || 'Error: Query lp/v1/courses/archive-course' }</div>`;
|
115 |
+
console.log( error );
|
116 |
+
} ).finally( () => {
|
117 |
+
isLoading = false;
|
118 |
+
// skeleton && skeleton.remove();
|
119 |
+
|
120 |
+
jQuery( 'form.search-courses button' ).removeClass( 'loading' );
|
121 |
+
|
122 |
+
if ( ! firstLoad ) {
|
123 |
+
// Scroll to archive element
|
124 |
+
const optionScroll = { behavior: 'smooth' };
|
125 |
+
elArchive.scrollIntoView( optionScroll );
|
126 |
+
} else {
|
127 |
+
firstLoad = 0;
|
128 |
+
}
|
129 |
|
130 |
+
// Save filter courses to Storage
|
131 |
+
window.localStorage.setItem( 'lp_filter_courses', JSON.stringify( args ) );
|
132 |
+
// Change url by params filter courses
|
133 |
+
const urlPush = lpArchiveAddQueryArgs( document.location, args );
|
134 |
+
window.history.pushState( '', '', urlPush );
|
135 |
+
} );
|
136 |
};
|
137 |
|
138 |
const lpArchiveSearchCourse = () => {
|
assets/src/apps/js/frontend/quiz/index.js
CHANGED
@@ -18,7 +18,7 @@ class Quiz extends Component {
|
|
18 |
}
|
19 |
|
20 |
componentDidMount() {
|
21 |
-
const { settings, setQuizData
|
22 |
|
23 |
const { question_ids, questions_per_page } = settings;
|
24 |
|
@@ -37,16 +37,12 @@ class Quiz extends Component {
|
|
37 |
setQuizData( settings );
|
38 |
}
|
39 |
|
40 |
-
componentDidUpdate( prevProps, prevState ) {
|
41 |
-
const { status
|
42 |
-
|
43 |
-
const notStarted = -1 !== [ '', 'viewed', undefined ].indexOf( status ) || ! status;
|
44 |
|
45 |
-
if (
|
46 |
-
|
47 |
-
if ( elQuiz ) {
|
48 |
-
elQuiz.style.display = 'none';
|
49 |
-
}
|
50 |
}
|
51 |
}
|
52 |
|
18 |
}
|
19 |
|
20 |
componentDidMount() {
|
21 |
+
const { settings, setQuizData } = this.props;
|
22 |
|
23 |
const { question_ids, questions_per_page } = settings;
|
24 |
|
37 |
setQuizData( settings );
|
38 |
}
|
39 |
|
40 |
+
componentDidUpdate( prevProps, prevState, snapshot ) {
|
41 |
+
const { status } = prevProps;
|
42 |
+
const elQuizContent = document.querySelector( '.quiz-content' );
|
|
|
43 |
|
44 |
+
if ( status !== undefined && elQuizContent ) {
|
45 |
+
elQuizContent.style.display = 'none';
|
|
|
|
|
|
|
46 |
}
|
47 |
}
|
48 |
|
assets/src/apps/js/frontend/single-course.js
CHANGED
@@ -332,7 +332,7 @@ const accordionExtraTab = () => {
|
|
332 |
};
|
333 |
|
334 |
const courseContinue = () => {
|
335 |
-
const formContinue = document.
|
336 |
|
337 |
if ( formContinue != null ) {
|
338 |
const getResponse = async ( ele ) => {
|
@@ -347,10 +347,13 @@ const courseContinue = () => {
|
|
347 |
|
348 |
return response;
|
349 |
};
|
|
|
350 |
getResponse( formContinue ).then( function( result ) {
|
351 |
if ( result.status === 'success' ) {
|
352 |
-
formContinue.
|
353 |
-
|
|
|
|
|
354 |
}
|
355 |
} );
|
356 |
}
|
332 |
};
|
333 |
|
334 |
const courseContinue = () => {
|
335 |
+
const formContinue = document.querySelectorAll( 'form.continue-course' );
|
336 |
|
337 |
if ( formContinue != null ) {
|
338 |
const getResponse = async ( ele ) => {
|
347 |
|
348 |
return response;
|
349 |
};
|
350 |
+
|
351 |
getResponse( formContinue ).then( function( result ) {
|
352 |
if ( result.status === 'success' ) {
|
353 |
+
formContinue.forEach( ( form ) => {
|
354 |
+
form.style.display = 'block';
|
355 |
+
form.action = result.data;
|
356 |
+
} );
|
357 |
}
|
358 |
} );
|
359 |
}
|
assets/src/js/admin/learnpress.js
CHANGED
@@ -552,7 +552,63 @@ const initTooltips = function initTooltips() {
|
|
552 |
|
553 |
const initSelect2 = function initSelect2() {
|
554 |
if ( $.fn.select2 ) {
|
555 |
-
$( '.lp-select-2 select' )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
556 |
}
|
557 |
};
|
558 |
|
552 |
|
553 |
const initSelect2 = function initSelect2() {
|
554 |
if ( $.fn.select2 ) {
|
555 |
+
const elSelect2 = $( '.lp-select-2 select' );
|
556 |
+
elSelect2.select2( {
|
557 |
+
placeholder: 'Select a value',
|
558 |
+
} );
|
559 |
+
elSelect2.on( 'change.select2', function( e ) {
|
560 |
+
const el = $( e.target );
|
561 |
+
const val = el.val();
|
562 |
+
|
563 |
+
if ( ! val.length ) {
|
564 |
+
el.val( null );
|
565 |
+
}
|
566 |
+
} );
|
567 |
+
|
568 |
+
$( '.lp_autocomplete_metabox_field' ).each( function() {
|
569 |
+
const dataAtts = $( this ).data( 'atts' );
|
570 |
+
let action = dataAtts.action;
|
571 |
+
|
572 |
+
if ( ! action ) {
|
573 |
+
switch ( dataAtts.data ) {
|
574 |
+
case 'users':
|
575 |
+
action = dataAtts.rest_url + 'wp/v2/users';
|
576 |
+
break;
|
577 |
+
default:
|
578 |
+
action = dataAtts.rest_url + 'wp/v2/' + dataAtts.data;
|
579 |
+
break;
|
580 |
+
}
|
581 |
+
}
|
582 |
+
|
583 |
+
$( this ).find( 'select' ).select2( {
|
584 |
+
placeholder: dataAtts.placeholder ? dataAtts.placeholder : 'Select',
|
585 |
+
ajax: {
|
586 |
+
url: action,
|
587 |
+
dataType: 'json',
|
588 |
+
delay: 250,
|
589 |
+
beforeSend( xhr ) {
|
590 |
+
xhr.setRequestHeader( 'X-WP-Nonce', dataAtts.nonce );
|
591 |
+
},
|
592 |
+
data( params ) {
|
593 |
+
return {
|
594 |
+
search: params.term,
|
595 |
+
};
|
596 |
+
},
|
597 |
+
processResults( data ) {
|
598 |
+
return {
|
599 |
+
results: data.map( ( item ) => {
|
600 |
+
return {
|
601 |
+
id: item.id,
|
602 |
+
text: item.title && item.title.rendered ? item.title.rendered : item.name,
|
603 |
+
};
|
604 |
+
} ),
|
605 |
+
};
|
606 |
+
},
|
607 |
+
cache: true,
|
608 |
+
},
|
609 |
+
minimumInputLength: 2,
|
610 |
+
} );
|
611 |
+
} );
|
612 |
}
|
613 |
};
|
614 |
|
inc/admin/editor/class-lp-admin-editor-quiz.php
CHANGED
@@ -411,10 +411,10 @@ class LP_Admin_Editor_Quiz extends LP_Admin_Editor {
|
|
411 |
* @return bool
|
412 |
*/
|
413 |
public function delete_question_answer( $args = array() ) {
|
414 |
-
$question_id =
|
415 |
-
$answer_id =
|
416 |
|
417 |
-
if ( !
|
418 |
return false;
|
419 |
}
|
420 |
|
@@ -576,13 +576,14 @@ class LP_Admin_Editor_Quiz extends LP_Admin_Editor {
|
|
576 |
* @return bool
|
577 |
*/
|
578 |
public function add_questions_to_quiz( $args = array() ) {
|
579 |
-
$questions =
|
580 |
-
$questions = json_decode( wp_unslash( $questions ), true );
|
581 |
|
582 |
if ( ! $questions ) {
|
583 |
return false;
|
584 |
}
|
585 |
|
|
|
|
|
586 |
$quiz_id = $this->quiz->get_id();
|
587 |
|
588 |
if ( get_post_status( $quiz_id ) == 'auto-draft' ) {
|
411 |
* @return bool
|
412 |
*/
|
413 |
public function delete_question_answer( $args = array() ) {
|
414 |
+
$question_id = LP_Helper::sanitize_params_submitted( $_POST['question_id'] ?? 0 );
|
415 |
+
$answer_id = LP_Helper::sanitize_params_submitted( $_POST['answer_id'] ?? 0 );
|
416 |
|
417 |
+
if ( ! $question_id || ! $answer_id ) {
|
418 |
return false;
|
419 |
}
|
420 |
|
576 |
* @return bool
|
577 |
*/
|
578 |
public function add_questions_to_quiz( $args = array() ) {
|
579 |
+
$questions = LP_Helper::sanitize_params_submitted( $_POST['items'] ?? '' );
|
|
|
580 |
|
581 |
if ( ! $questions ) {
|
582 |
return false;
|
583 |
}
|
584 |
|
585 |
+
$questions = json_decode( wp_unslash( $questions ), true );
|
586 |
+
|
587 |
$quiz_id = $this->quiz->get_id();
|
588 |
|
589 |
if ( get_post_status( $quiz_id ) == 'auto-draft' ) {
|
inc/admin/meta-box/class-lp-meta-box-helper.php
CHANGED
@@ -117,7 +117,7 @@ if ( ! class_exists( 'LP_Meta_Box_Helper' ) ) {
|
|
117 |
|
118 |
public static function save_fields( $options, $data = null ) {
|
119 |
if ( is_null( $data ) ) {
|
120 |
-
$data = $_POST;
|
121 |
}
|
122 |
|
123 |
if ( empty( $data ) ) {
|
117 |
|
118 |
public static function save_fields( $options, $data = null ) {
|
119 |
if ( is_null( $data ) ) {
|
120 |
+
$data = LP_Helper::sanitize_params_submitted( $_POST );
|
121 |
}
|
122 |
|
123 |
if ( empty( $data ) ) {
|
inc/admin/meta-box/fields/color.php
CHANGED
@@ -2,7 +2,9 @@
|
|
2 |
|
3 |
<tr valign="top">
|
4 |
<th scope="row" class="titledesc">
|
5 |
-
<label for="<?php echo esc_attr( $value['id'] ); ?>"
|
|
|
|
|
6 |
</th>
|
7 |
<td class="forminp lp-metabox-field__color forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">‎
|
8 |
<span class="colorpickpreview" style="background: <?php echo esc_attr( $option_value ); ?>"> </span>
|
@@ -16,7 +18,10 @@
|
|
16 |
class="<?php echo esc_attr( $value['class'] ); ?> colorpick lp-metabox__colorpick"
|
17 |
placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
|
18 |
<?php echo implode( ' ', $custom_attributes ); ?>
|
19 |
-
|
20 |
-
|
|
|
|
|
|
|
21 |
</td>
|
22 |
</tr>
|
2 |
|
3 |
<tr valign="top">
|
4 |
<th scope="row" class="titledesc">
|
5 |
+
<label for="<?php echo esc_attr( $value['id'] ); ?>">
|
6 |
+
<?php echo wp_kses_post( $value['title'] ); ?><?php echo wp_kses_post( $tooltip_html ); ?>
|
7 |
+
</label>
|
8 |
</th>
|
9 |
<td class="forminp lp-metabox-field__color forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">‎
|
10 |
<span class="colorpickpreview" style="background: <?php echo esc_attr( $option_value ); ?>"> </span>
|
18 |
class="<?php echo esc_attr( $value['class'] ); ?> colorpick lp-metabox__colorpick"
|
19 |
placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
|
20 |
<?php echo implode( ' ', $custom_attributes ); ?>
|
21 |
+
/>
|
22 |
+
<?php echo wp_kses_post( $description ); ?>
|
23 |
+
<div id="colorPickerDiv_<?php echo esc_attr( $value['id'] ); ?>"
|
24 |
+
class="colorpickdiv"
|
25 |
+
style="z-index: 100;background:#eee;border:1px solid #ccc;position:absolute;display:none;"></div>
|
26 |
</td>
|
27 |
</tr>
|
inc/admin/meta-box/fields/course-permalink.php
CHANGED
@@ -11,7 +11,7 @@ if ( ! empty( $wp_post_types[ LP_COURSE_CPT ] ) ) {
|
|
11 |
$default_courses_slug = '';
|
12 |
}
|
13 |
|
14 |
-
$course_permalink = $settings->get( 'course_base' );
|
15 |
$courses_page_id = learn_press_get_page_id( 'courses' );
|
16 |
$base_slug = urldecode( ( $courses_page_id > 0 && get_post( $courses_page_id ) ) ? get_page_uri( $courses_page_id ) : _x( 'courses', 'default-slug', 'learnpress' ) );
|
17 |
$course_base = _x( 'course', 'default-slug', 'learnpress' );
|
@@ -45,7 +45,9 @@ $is_custom = ( $base_type == 'custom' && $course_permalink != '' );
|
|
45 |
|
46 |
<tr valign="top">
|
47 |
<th scope="row" class="titledesc">
|
48 |
-
<label for="<?php echo esc_attr( $value['id'] ); ?>"
|
|
|
|
|
49 |
</th>
|
50 |
<td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">‎
|
51 |
<ul>
|
@@ -67,18 +69,22 @@ $is_custom = ( $base_type == 'custom' && $course_permalink != '' );
|
|
67 |
}
|
68 |
?>
|
69 |
<label>
|
70 |
-
<input name="<?php echo
|
71 |
-
|
72 |
-
|
|
|
|
|
|
|
73 |
</label>
|
74 |
</li>
|
75 |
<?php endforeach; ?>
|
76 |
|
77 |
<li class="learn-press-single-course-permalink custom-base">
|
78 |
<label>
|
79 |
-
<input name="<?php echo $value['id']; ?>" id="learn_press_custom_permalink" type="radio" value="custom" <?php checked( $is_custom, true ); ?> />
|
80 |
<?php esc_html_e( 'Custom Base', 'learnpress' ); ?>
|
81 |
-
<input name="course_permalink_structure" id="course_permalink_structure" readonly="<?php echo ! $is_custom ? 'readonly' : false; ?>" type="text"
|
|
|
82 |
</label>
|
83 |
<p class="description"><?php esc_html_e( 'Enter a custom base to use. A base must be set or WordPress will use default values instead.', 'learnpress' ); ?></p>
|
84 |
</li>
|
11 |
$default_courses_slug = '';
|
12 |
}
|
13 |
|
14 |
+
$course_permalink = $settings->get( 'course_base', '' );
|
15 |
$courses_page_id = learn_press_get_page_id( 'courses' );
|
16 |
$base_slug = urldecode( ( $courses_page_id > 0 && get_post( $courses_page_id ) ) ? get_page_uri( $courses_page_id ) : _x( 'courses', 'default-slug', 'learnpress' ) );
|
17 |
$course_base = _x( 'course', 'default-slug', 'learnpress' );
|
45 |
|
46 |
<tr valign="top">
|
47 |
<th scope="row" class="titledesc">
|
48 |
+
<label for="<?php echo esc_attr( $value['id'] ); ?>">
|
49 |
+
<?php echo wp_kses_post( $value['title'] ); ?><?php echo wp_kses_post( $tooltip_html ); ?>
|
50 |
+
</label>
|
51 |
</th>
|
52 |
<td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">‎
|
53 |
<ul>
|
69 |
}
|
70 |
?>
|
71 |
<label>
|
72 |
+
<input name="<?php echo esc_attr( $value['id'] ); ?>" type="radio"
|
73 |
+
value="<?php echo esc_attr( $structure['value'] ); ?>"
|
74 |
+
class="learn-press-course-base"
|
75 |
+
<?php learn_press_echo_vuejs_write_on_php( $is_checked ); ?> />
|
76 |
+
<?php echo wp_kses_post( $structure['text'] ); ?>
|
77 |
+
<p><code><?php echo wp_kses_post( $structure['code'] ); ?></code></p>
|
78 |
</label>
|
79 |
</li>
|
80 |
<?php endforeach; ?>
|
81 |
|
82 |
<li class="learn-press-single-course-permalink custom-base">
|
83 |
<label>
|
84 |
+
<input name="<?php echo esc_attr( $value['id'] ); ?>" id="learn_press_custom_permalink" type="radio" value="custom" <?php checked( $is_custom, true ); ?> />
|
85 |
<?php esc_html_e( 'Custom Base', 'learnpress' ); ?>
|
86 |
+
<input name="course_permalink_structure" id="course_permalink_structure" readonly="<?php echo ! $is_custom ? 'readonly' : false; ?>" type="text"
|
87 |
+
value="<?php echo esc_attr( trailingslashit( $course_permalink ) ); ?>" class="regular-text code"/>
|
88 |
</label>
|
89 |
<p class="description"><?php esc_html_e( 'Enter a custom base to use. A base must be set or WordPress will use default values instead.', 'learnpress' ); ?></p>
|
90 |
</li>
|
inc/admin/meta-box/fields/html.php
CHANGED
@@ -9,6 +9,6 @@ if ( ! isset( $value ) || ! isset( $tooltip_html ) ) {
|
|
9 |
<label><?php echo wp_kses_post( $value['title'] ); ?> <?php echo wp_kses_post( $tooltip_html ); ?></label>
|
10 |
</th>
|
11 |
<td class="forminp forminp-<?php echo esc_attr( $value['type'] ); ?>">
|
12 |
-
<?php
|
13 |
</td>
|
14 |
</tr>
|
9 |
<label><?php echo wp_kses_post( $value['title'] ); ?> <?php echo wp_kses_post( $tooltip_html ); ?></label>
|
10 |
</th>
|
11 |
<td class="forminp forminp-<?php echo esc_attr( $value['type'] ); ?>">
|
12 |
+
<?php learn_press_echo_vuejs_write_on_php( $value['default'] ); ?>
|
13 |
</td>
|
14 |
</tr>
|
inc/admin/meta-box/fields/image-dimensions.php
CHANGED
@@ -6,9 +6,18 @@ $crop = isset( $size['crop'] ) ? $size['crop'] : $value['default'][2];
|
|
6 |
?>
|
7 |
<tr valign="top">
|
8 |
<th scope="row" class="titledesc">
|
9 |
-
<label
|
|
|
|
|
|
|
10 |
</th>
|
11 |
<td class="forminp image_width_settings">
|
12 |
-
<input name="<?php echo esc_attr( $value['id'] ); ?>[width]"
|
|
|
|
|
|
|
|
|
|
|
|
|
13 |
</td>
|
14 |
</tr>
|
6 |
?>
|
7 |
<tr valign="top">
|
8 |
<th scope="row" class="titledesc">
|
9 |
+
<label>
|
10 |
+
<?php echo esc_html( $value['title'] ); ?>
|
11 |
+
<?php echo wp_kses_post( $tooltip_html ); ?>
|
12 |
+
</label>
|
13 |
</th>
|
14 |
<td class="forminp image_width_settings">
|
15 |
+
<input name="<?php echo esc_attr( $value['id'] ); ?>[width]"
|
16 |
+
id="<?php echo esc_attr( $value['id'] ); ?>-width" type="text"
|
17 |
+
size="3" value="<?php echo esc_attr( $width ); ?>" />×
|
18 |
+
<input name="<?php echo esc_attr( $value['id'] ); ?>[height]"
|
19 |
+
id="<?php echo esc_attr( $value['id'] ); ?>-height"
|
20 |
+
type="text" size="3"
|
21 |
+
value="<?php echo esc_attr( $height ); ?>" />px
|
22 |
</td>
|
23 |
</tr>
|
inc/admin/meta-box/fields/image.php
CHANGED
@@ -2,10 +2,14 @@
|
|
2 |
|
3 |
<tr valign="top">
|
4 |
<th scope="row" class="titledesc">
|
5 |
-
<label for="<?php echo esc_attr( $value['id'] ); ?>"
|
|
|
|
|
|
|
6 |
</th>
|
7 |
<td class="forminp lp-metabox-field__image forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">‎
|
8 |
<div class="lp-metabox-field__image--image">
|
|
|
9 |
<?php if ( ! empty( $option_value ) ) : ?>
|
10 |
<div class="lp-metabox-field__image--inner">
|
11 |
<?php echo wp_get_attachment_image( $option_value, 'thumbnail' ); ?>
|
2 |
|
3 |
<tr valign="top">
|
4 |
<th scope="row" class="titledesc">
|
5 |
+
<label for="<?php echo esc_attr( $value['id'] ); ?>">
|
6 |
+
<?php echo wp_kses_post( $value['title'] ); ?>
|
7 |
+
<?php echo wp_kses_post( $tooltip_html ); ?>
|
8 |
+
</label>
|
9 |
</th>
|
10 |
<td class="forminp lp-metabox-field__image forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">‎
|
11 |
<div class="lp-metabox-field__image--image">
|
12 |
+
<div>
|
13 |
<?php if ( ! empty( $option_value ) ) : ?>
|
14 |
<div class="lp-metabox-field__image--inner">
|
15 |
<?php echo wp_get_attachment_image( $option_value, 'thumbnail' ); ?>
|
inc/admin/meta-box/fields/select.php
CHANGED
@@ -10,7 +10,7 @@
|
|
10 |
id="<?php echo esc_attr( $value['id'] ); ?>"
|
11 |
style="<?php echo esc_attr( $value['css'] ); ?>"
|
12 |
class="<?php echo esc_attr( $value['class'] ); ?>"
|
13 |
-
<?php echo
|
14 |
<?php echo 'multiselect' === $value['type'] ? 'multiple="multiple"' : ''; ?>
|
15 |
>
|
16 |
<?php foreach ( $value['options'] as $key => $val ) { ?>
|
@@ -28,6 +28,6 @@
|
|
28 |
<?php
|
29 |
}
|
30 |
?>
|
31 |
-
</select
|
32 |
</td>
|
33 |
</tr>
|
10 |
id="<?php echo esc_attr( $value['id'] ); ?>"
|
11 |
style="<?php echo esc_attr( $value['css'] ); ?>"
|
12 |
class="<?php echo esc_attr( $value['class'] ); ?>"
|
13 |
+
<?php echo implode( ' ', $custom_attributes ); ?>
|
14 |
<?php echo 'multiselect' === $value['type'] ? 'multiple="multiple"' : ''; ?>
|
15 |
>
|
16 |
<?php foreach ( $value['options'] as $key => $val ) { ?>
|
28 |
<?php
|
29 |
}
|
30 |
?>
|
31 |
+
</select><?php echo wp_kses_post( $description ); ?>
|
32 |
</td>
|
33 |
</tr>
|
inc/admin/meta-box/fields/text.php
CHANGED
@@ -12,7 +12,10 @@ $option_value = $value['value'];
|
|
12 |
|
13 |
<tr valign="top">
|
14 |
<th scope="row" class="titledesc">
|
15 |
-
<label for="<?php echo esc_attr( $value['id'] ); ?>"
|
|
|
|
|
|
|
16 |
</th>
|
17 |
<td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
|
18 |
<input
|
@@ -23,7 +26,7 @@ $option_value = $value['value'];
|
|
23 |
value="<?php echo esc_attr( $option_value ); ?>"
|
24 |
class="<?php echo esc_attr( $value['class'] ); ?>"
|
25 |
placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
|
26 |
-
|
27 |
-
/><?php echo esc_html( $value['suffix'] ); ?> <?php echo $description; ?>
|
28 |
</td>
|
29 |
</tr>
|
12 |
|
13 |
<tr valign="top">
|
14 |
<th scope="row" class="titledesc">
|
15 |
+
<label for="<?php echo esc_attr( $value['id'] ); ?>">
|
16 |
+
<?php echo wp_kses_post( $value['title'] ); ?>
|
17 |
+
<?php echo wp_kses_post( $tooltip_html ); ?>
|
18 |
+
</label>
|
19 |
</th>
|
20 |
<td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
|
21 |
<input
|
26 |
value="<?php echo esc_attr( $option_value ); ?>"
|
27 |
class="<?php echo esc_attr( $value['class'] ); ?>"
|
28 |
placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
|
29 |
+
<?php echo implode( ' ', $custom_attributes ); ?>
|
30 |
+
/><?php echo esc_html( $value['suffix'] ); ?> <?php echo wp_kses_post( $description ); ?>
|
31 |
</td>
|
32 |
</tr>
|
inc/admin/meta-box/fields/textarea.php
CHANGED
@@ -2,7 +2,10 @@
|
|
2 |
|
3 |
<tr valign="top">
|
4 |
<th scope="row" class="titledesc">
|
5 |
-
<label for="<?php echo esc_attr( $value['id'] ); ?>"
|
|
|
|
|
|
|
6 |
</th>
|
7 |
<td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
|
8 |
<?php echo wp_kses_post( $description ); ?>
|
@@ -13,7 +16,7 @@
|
|
13 |
style="<?php echo esc_attr( $value['css'] ); ?>"
|
14 |
class="<?php echo esc_attr( $value['class'] ); ?>"
|
15 |
placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
|
16 |
-
<?php echo
|
17 |
><?php echo wp_kses_post( $option_value ); ?></textarea>
|
18 |
</td>
|
19 |
</tr>
|
2 |
|
3 |
<tr valign="top">
|
4 |
<th scope="row" class="titledesc">
|
5 |
+
<label for="<?php echo esc_attr( $value['id'] ); ?>">
|
6 |
+
<?php echo esc_html( $value['title'] ); ?>
|
7 |
+
<?php echo wp_kses_post( $tooltip_html ); ?>
|
8 |
+
</label>
|
9 |
</th>
|
10 |
<td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
|
11 |
<?php echo wp_kses_post( $description ); ?>
|
16 |
style="<?php echo esc_attr( $value['css'] ); ?>"
|
17 |
class="<?php echo esc_attr( $value['class'] ); ?>"
|
18 |
placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
|
19 |
+
<?php echo implode( ' ', $custom_attributes ); ?>
|
20 |
><?php echo wp_kses_post( $option_value ); ?></textarea>
|
21 |
</td>
|
22 |
</tr>
|
inc/admin/views/addons/html-loop-theme.php
CHANGED
@@ -26,10 +26,10 @@ defined( 'ABSPATH' ) || exit();
|
|
26 |
</h2>
|
27 |
<div class="theme-detail">
|
28 |
<div class="theme-price">
|
29 |
-
<?php echo '
|
30 |
</div>
|
31 |
<div class="number-sale">
|
32 |
-
<?php echo $theme['number_of_sales']
|
33 |
</div>
|
34 |
</div>
|
35 |
|
26 |
</h2>
|
27 |
<div class="theme-detail">
|
28 |
<div class="theme-price">
|
29 |
+
<?php echo sprintf( '$%s', $theme['price_cents'] / 100 ); ?>
|
30 |
</div>
|
31 |
<div class="number-sale">
|
32 |
+
<?php echo sprintf( '%s %s', $theme['number_of_sales'], esc_html__( ' sales', 'learnpress' ) ); ?>
|
33 |
</div>
|
34 |
</div>
|
35 |
|
inc/admin/views/addons/html-plugins-more.php
CHANGED
@@ -46,7 +46,7 @@ foreach ( $all_plugins as $plugins ) {
|
|
46 |
if ( $plugins['items'] ) {
|
47 |
?>
|
48 |
<h2>
|
49 |
-
<?php echo
|
50 |
</h2>
|
51 |
<ul class="addons-browse widefat">
|
52 |
<?php
|
46 |
if ( $plugins['items'] ) {
|
47 |
?>
|
48 |
<h2>
|
49 |
+
<?php echo sprintf( '%s (<span>%s</span>)', esc_html( $plugins['title'] ), sizeof( $plugins['items'] ) ); ?>
|
50 |
</h2>
|
51 |
<ul class="addons-browse widefat">
|
52 |
<?php
|
inc/admin/views/addons/html-themes.php
CHANGED
@@ -44,7 +44,7 @@ $lp_query_items_bg->query_related_themes();
|
|
44 |
foreach ( $all_themes as $themes ) {
|
45 |
if ( $themes['items'] ) {
|
46 |
?>
|
47 |
-
<h2><?php echo
|
48 |
<ul class="addons-browse related-themes widefat">
|
49 |
<?php
|
50 |
foreach ( $themes['items'] as $key => $item ) {
|
44 |
foreach ( $all_themes as $themes ) {
|
45 |
if ( $themes['items'] ) {
|
46 |
?>
|
47 |
+
<h2><?php echo sprintf( '%s (<span>%s</span>)', esc_html( $themes['title'] ), sizeof( $themes['items'] ) ); ?></h2>
|
48 |
<ul class="addons-browse related-themes widefat">
|
49 |
<?php
|
50 |
foreach ( $themes['items'] as $key => $item ) {
|
inc/admin/views/meta-boxes/class-lp-meta-box.php
CHANGED
@@ -40,6 +40,7 @@ abstract class LP_Meta_Box {
|
|
40 |
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/fields/date.php';
|
41 |
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/fields/wysiwyg.php';
|
42 |
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/fields/repeater.php';
|
|
|
43 |
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/lp-meta-box-functions.php';
|
44 |
}
|
45 |
|
40 |
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/fields/date.php';
|
41 |
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/fields/wysiwyg.php';
|
42 |
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/fields/repeater.php';
|
43 |
+
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/fields/autocomplete.php';
|
44 |
include_once LP_PLUGIN_PATH . 'inc/admin/views/meta-boxes/lp-meta-box-functions.php';
|
45 |
}
|
46 |
|
inc/admin/views/meta-boxes/fields/autocomplete.php
ADDED
@@ -0,0 +1,123 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
*
|
5 |
+
* @author nhamdv
|
6 |
+
* @version 1.0.0
|
7 |
+
* @since 4.1.6.9.4-beta-1
|
8 |
+
*/
|
9 |
+
class LP_Meta_Box_Autocomplete_Field extends LP_Meta_Box_Field {
|
10 |
+
|
11 |
+
/**
|
12 |
+
* @param array $field
|
13 |
+
* @param array $extra = array( 'placeholder' => 'Select an item', 'action': rest_url( 'wp/v2/users' ), rest_url( 'wp/v2/post' ), rest_url( 'wp/v2/page' ), 'data': users, page, post, course, lesson )
|
14 |
+
*
|
15 |
+
* @return string
|
16 |
+
*/
|
17 |
+
public function __construct( $label = '', $description = '', $default = '', $extra = array() ) {
|
18 |
+
parent::__construct( $label, $description, $default, $extra );
|
19 |
+
}
|
20 |
+
|
21 |
+
public function output( $thepostid ) {
|
22 |
+
if ( empty( $this->id ) ) {
|
23 |
+
return;
|
24 |
+
}
|
25 |
+
|
26 |
+
$field = $this->extra;
|
27 |
+
$field['id'] = $this->id;
|
28 |
+
$field['default'] = $this->default;
|
29 |
+
$field['description'] = $this->description;
|
30 |
+
$field['label'] = $this->label;
|
31 |
+
|
32 |
+
$meta = $this->meta_value( $thepostid );
|
33 |
+
|
34 |
+
$default = ( ! $meta && isset( $field['default'] ) ) ? (array) $field['default'] : $meta;
|
35 |
+
|
36 |
+
$field = wp_parse_args(
|
37 |
+
$field,
|
38 |
+
array(
|
39 |
+
'class' => 'select',
|
40 |
+
'style' => '',
|
41 |
+
'wrapper_class' => '',
|
42 |
+
'value' => isset( $field['value'] ) ? $field['value'] : $default,
|
43 |
+
'name' => $field['id'],
|
44 |
+
'desc_tip' => false,
|
45 |
+
'custom_attributes' => array(),
|
46 |
+
)
|
47 |
+
);
|
48 |
+
|
49 |
+
$wrapper_class = ! empty( $field['wrapper_class'] ) ? esc_attr( $field['wrapper_class'] ) : '';
|
50 |
+
|
51 |
+
$field_attributes = (array) $field['custom_attributes'];
|
52 |
+
$field_attributes['style'] = 'width: 300px;' . $field['style'];
|
53 |
+
$field_attributes['id'] = $field['id'];
|
54 |
+
$field_attributes['name'] = $field['name'] . '[]';
|
55 |
+
$field_attributes['class'] = $field['class'];
|
56 |
+
$field_attributes['multiple'] = true;
|
57 |
+
|
58 |
+
$data_atts = array(
|
59 |
+
'placeholder' => $field['placeholder'] ?? esc_html__( 'Select', 'learnpress' ),
|
60 |
+
'action' => $field['action'] ?? '',
|
61 |
+
'data' => $field['data'] ?? '', // users, pages, posts, lp_course, lp_lesson...
|
62 |
+
'nonce' => wp_create_nonce( 'wp_rest' ),
|
63 |
+
'rest_url' => rest_url(),
|
64 |
+
);
|
65 |
+
?>
|
66 |
+
<p class="form-field lp_autocomplete_metabox_field <?php echo esc_attr( $field['id'] . '_field ' . $wrapper_class ); ?>" data-atts="<?php echo esc_attr( wp_json_encode( $data_atts ) ); ?>">
|
67 |
+
<label for="<?php echo esc_attr( $field['id'] ); ?>">
|
68 |
+
<?php echo wp_kses_post( $field['label'] ); ?>
|
69 |
+
</label>
|
70 |
+
|
71 |
+
<select <?php echo lp_implode_html_attributes( $field_attributes ); ?>>
|
72 |
+
<?php
|
73 |
+
if ( ! empty( $field['value'] ) ) {
|
74 |
+
foreach ( $field['value'] as $value ) {
|
75 |
+
if ( ! empty( $field['data'] ) ) {
|
76 |
+
if ( $field['data'] === 'users' ) {
|
77 |
+
$user = get_user_by( 'id', $value );
|
78 |
+
|
79 |
+
if ( ! $user ) {
|
80 |
+
continue;
|
81 |
+
}
|
82 |
+
|
83 |
+
echo '<option value="' . esc_attr( $value ) . '" selected>' . esc_html( $user->display_name ) . '</option>';
|
84 |
+
} else {
|
85 |
+
$post = get_post( $value );
|
86 |
+
if ( ! $post ) {
|
87 |
+
continue;
|
88 |
+
}
|
89 |
+
echo '<option value="' . esc_attr( $value ) . '" selected>' . esc_html( $post->post_title ) . '</option>';
|
90 |
+
}
|
91 |
+
} else {
|
92 |
+
echo '<option value="' . esc_attr( $value ) . '" selected>' . esc_html( $value ) . '</option>';
|
93 |
+
}
|
94 |
+
}
|
95 |
+
|
96 |
+
do_action( 'learn-press/admin/metabox/autocomplete/' . $field['id'] . '/option', $field['value'], $field, $thepostid );
|
97 |
+
}
|
98 |
+
?>
|
99 |
+
</select>
|
100 |
+
|
101 |
+
<?php
|
102 |
+
if ( ! empty( $field['description'] ) ) {
|
103 |
+
echo '<span class="description">' . wp_kses_post( $field['description'] ) . '</span>';
|
104 |
+
|
105 |
+
if ( ! empty( $field['desc_tip'] ) ) {
|
106 |
+
learn_press_quick_tip( $field['desc_tip'] );
|
107 |
+
}
|
108 |
+
}
|
109 |
+
?>
|
110 |
+
</p>
|
111 |
+
<?php
|
112 |
+
}
|
113 |
+
|
114 |
+
public function save( $post_id ) {
|
115 |
+
$value = isset( $_POST[ $this->id ] ) ? (array) wp_unslash( $_POST[ $this->id ] ) : array();
|
116 |
+
|
117 |
+
$value = apply_filters( 'learn-press/admin/metabox/autocomplete/' . $this->id . '/save', $value, $post_id );
|
118 |
+
|
119 |
+
update_post_meta( $post_id, $this->id, $value );
|
120 |
+
|
121 |
+
do_action( 'lp/metabox/field/autocomplete/save/after', $post_id, $this->id, $value );
|
122 |
+
}
|
123 |
+
}
|
inc/admin/views/meta-boxes/fields/checkbox.php
CHANGED
@@ -62,7 +62,7 @@ class LP_Meta_Box_Checkbox_Field extends LP_Meta_Box_Field {
|
|
62 |
}
|
63 |
}
|
64 |
|
65 |
-
echo '<div class="form-field ' . esc_attr( $field['id']
|
66 |
<label for="' . esc_attr( $field['id'] ) . '">' . wp_kses_post( $field['label'] ) . '</label>';
|
67 |
|
68 |
echo '<input type="checkbox" ' . $class . ' ' . $style . ' ' . $name . ' ' . $checked . ' id="' . esc_attr( $field['id'] ) . '" ' . implode( ' ', $custom_attributes ) . '/> ';
|
62 |
}
|
63 |
}
|
64 |
|
65 |
+
echo '<div class="form-field ' . esc_attr( $field['id'] . '_field ' . $wrapper_class ) . '">
|
66 |
<label for="' . esc_attr( $field['id'] ) . '">' . wp_kses_post( $field['label'] ) . '</label>';
|
67 |
|
68 |
echo '<input type="checkbox" ' . $class . ' ' . $style . ' ' . $name . ' ' . $checked . ' id="' . esc_attr( $field['id'] ) . '" ' . implode( ' ', $custom_attributes ) . '/> ';
|
inc/admin/views/meta-boxes/fields/date.php
CHANGED
@@ -28,8 +28,12 @@ class LP_Meta_Box_Date_Field extends LP_Meta_Box_Field {
|
|
28 |
|
29 |
<div class="lp_sale_dates_fields">
|
30 |
<p class="form-field <?php echo esc_attr( $this->extra['wrapper_class'] ); ?>">
|
31 |
-
<label for="_lp_sale_start"><?php echo $this->label; ?></label>
|
32 |
-
<input type="text" class="short" name="<?php echo
|
|
|
|
|
|
|
|
|
33 |
|
34 |
<?php if ( ! empty( $this->extra['cancel'] ) ) : ?>
|
35 |
<a href="#" class="description lp_cancel_sale_schedule"><?php esc_html_e( 'Cancel', 'learnpress' ); ?></a>
|
28 |
|
29 |
<div class="lp_sale_dates_fields">
|
30 |
<p class="form-field <?php echo esc_attr( $this->extra['wrapper_class'] ); ?>">
|
31 |
+
<label for="_lp_sale_start"><?php echo wp_kses_post( $this->label ); ?></label>
|
32 |
+
<input type="text" class="short" name="<?php echo esc_attr( $this->id ); ?>"
|
33 |
+
id="<?php echo esc_attr( $this->id ); ?>"
|
34 |
+
value="<?php echo esc_attr( $date ); ?>"
|
35 |
+
placeholder="<?php echo esc_attr( $this->extra['placeholder'] ); ?>"
|
36 |
+
style="width:320px;" />
|
37 |
|
38 |
<?php if ( ! empty( $this->extra['cancel'] ) ) : ?>
|
39 |
<a href="#" class="description lp_cancel_sale_schedule"><?php esc_html_e( 'Cancel', 'learnpress' ); ?></a>
|
inc/admin/views/meta-boxes/fields/extra.php
CHANGED
@@ -26,14 +26,18 @@ class LP_Meta_Box_Extra_Field extends LP_Meta_Box_Field {
|
|
26 |
?>
|
27 |
|
28 |
<div class="form-field lp_course_extra_meta_box">
|
29 |
-
<label for="<?php echo esc_attr( $this->id ); ?>"
|
|
|
|
|
30 |
<div class="lp_course_extra_meta_box__content">
|
31 |
<div class="lp_course_extra_meta_box__fields">
|
32 |
<?php if ( ! empty( $fields[0][0] ) ) : ?>
|
33 |
<?php foreach ( $fields as $field ) : ?>
|
34 |
<div class="lp_course_extra_meta_box__field">
|
35 |
<span class="sort"></span>
|
36 |
-
<input name="<?php echo esc_attr( $this->id ); ?>[]"
|
|
|
|
|
37 |
<a href="#" class="delete"></a>
|
38 |
</div>
|
39 |
<?php endforeach; ?>
|
@@ -45,7 +49,6 @@ class LP_Meta_Box_Extra_Field extends LP_Meta_Box_Field {
|
|
45 |
</a>
|
46 |
</div>
|
47 |
</div>
|
48 |
-
|
49 |
<?php
|
50 |
}
|
51 |
|
26 |
?>
|
27 |
|
28 |
<div class="form-field lp_course_extra_meta_box">
|
29 |
+
<label for="<?php echo esc_attr( $this->id ); ?>">
|
30 |
+
<?php echo wp_kses_post( $this->label ); ?>
|
31 |
+
</label>
|
32 |
<div class="lp_course_extra_meta_box__content">
|
33 |
<div class="lp_course_extra_meta_box__fields">
|
34 |
<?php if ( ! empty( $fields[0][0] ) ) : ?>
|
35 |
<?php foreach ( $fields as $field ) : ?>
|
36 |
<div class="lp_course_extra_meta_box__field">
|
37 |
<span class="sort"></span>
|
38 |
+
<input name="<?php echo esc_attr( $this->id ); ?>[]"
|
39 |
+
value="<?php echo esc_attr( $field ); ?>"
|
40 |
+
type="text" class="lp_course_extra_meta_box__input">
|
41 |
<a href="#" class="delete"></a>
|
42 |
</div>
|
43 |
<?php endforeach; ?>
|
49 |
</a>
|
50 |
</div>
|
51 |
</div>
|
|
|
52 |
<?php
|
53 |
}
|
54 |
|
inc/admin/views/meta-boxes/fields/repeater.php
CHANGED
@@ -27,7 +27,9 @@ class LP_Meta_Box_Repeater_Field extends LP_Meta_Box_Field {
|
|
27 |
?>
|
28 |
|
29 |
<div class="form-field lp_repeater_meta_box">
|
30 |
-
<label for="_lp_key_features"
|
|
|
|
|
31 |
<div class="lp_repeater_meta_box__wrapper">
|
32 |
<div class="lp_repeater_meta_box__fields">
|
33 |
<?php if ( ! empty( $repeaters ) ) : ?>
|
@@ -45,7 +47,7 @@ class LP_Meta_Box_Repeater_Field extends LP_Meta_Box_Field {
|
|
45 |
echo esc_attr( ob_get_clean() );
|
46 |
?>
|
47 |
">
|
48 |
-
<?php echo
|
49 |
</a>
|
50 |
</div>
|
51 |
</div>
|
@@ -77,12 +79,12 @@ class LP_Meta_Box_Repeater_Field extends LP_Meta_Box_Field {
|
|
77 |
|
78 |
public function repeater_html( $thepostid, $repeater, $is_attr = false, $key = 'lp_metabox_repeater_key' ) {
|
79 |
?>
|
80 |
-
<div class="lp_repeater_meta_box__field <?php echo $is_attr ? 'lp_repeater_meta_box__field_active' : ''; ?>">
|
81 |
<input class="lp_repeater_meta_box__field__count" type="hidden" value="<?php echo esc_attr( $key ); ?>" name="<?php echo esc_attr( $this->id ) . '[' . $key . ']' . '[sort]'; ?>">
|
82 |
<div class="lp_repeater_meta_box__title">
|
83 |
<span class="lp_repeater_meta_box__title__sort"></span>
|
84 |
<span class="lp_repeater_meta_box__title__title">
|
85 |
-
<?php echo
|
86 |
<span><?php echo esc_html( absint( $key ) + 1 ); ?></span>
|
87 |
</span>
|
88 |
<a href="#" class="lp_repeater_meta_box__title__delete"></a>
|
@@ -94,7 +96,7 @@ class LP_Meta_Box_Repeater_Field extends LP_Meta_Box_Field {
|
|
94 |
foreach ( $this->extra['fields'] as $field_key => $field ) {
|
95 |
$field->id = $this->id . '[' . $key . '][' . $field_key . ']';
|
96 |
$field->extra['value'] = $is_attr ? '' : $repeater[ $field_key ];
|
97 |
-
|
98 |
}
|
99 |
}
|
100 |
?>
|
27 |
?>
|
28 |
|
29 |
<div class="form-field lp_repeater_meta_box">
|
30 |
+
<label for="_lp_key_features">
|
31 |
+
<?php echo wp_kses_post( $this->label ); ?>
|
32 |
+
</label>
|
33 |
<div class="lp_repeater_meta_box__wrapper">
|
34 |
<div class="lp_repeater_meta_box__fields">
|
35 |
<?php if ( ! empty( $repeaters ) ) : ?>
|
47 |
echo esc_attr( ob_get_clean() );
|
48 |
?>
|
49 |
">
|
50 |
+
<?php echo wp_kses_post( $this->extra['add_text'] ?? esc_html__( '+ Add more', 'learnpress' ) ); ?>
|
51 |
</a>
|
52 |
</div>
|
53 |
</div>
|
79 |
|
80 |
public function repeater_html( $thepostid, $repeater, $is_attr = false, $key = 'lp_metabox_repeater_key' ) {
|
81 |
?>
|
82 |
+
<div class="lp_repeater_meta_box__field <?php echo esc_attr( $is_attr ? 'lp_repeater_meta_box__field_active' : '' ); ?>">
|
83 |
<input class="lp_repeater_meta_box__field__count" type="hidden" value="<?php echo esc_attr( $key ); ?>" name="<?php echo esc_attr( $this->id ) . '[' . $key . ']' . '[sort]'; ?>">
|
84 |
<div class="lp_repeater_meta_box__title">
|
85 |
<span class="lp_repeater_meta_box__title__sort"></span>
|
86 |
<span class="lp_repeater_meta_box__title__title">
|
87 |
+
<?php echo wp_kses_post( $this->extra['title_text'] ?? esc_html__( 'Repeater', 'learnpress' ) ); ?>
|
88 |
<span><?php echo esc_html( absint( $key ) + 1 ); ?></span>
|
89 |
</span>
|
90 |
<a href="#" class="lp_repeater_meta_box__title__delete"></a>
|
96 |
foreach ( $this->extra['fields'] as $field_key => $field ) {
|
97 |
$field->id = $this->id . '[' . $key . '][' . $field_key . ']';
|
98 |
$field->extra['value'] = $is_attr ? '' : $repeater[ $field_key ];
|
99 |
+
learn_press_echo_vuejs_write_on_php( $field->output( $thepostid ) );
|
100 |
}
|
101 |
}
|
102 |
?>
|
inc/admin/views/meta-boxes/fields/select.php
CHANGED
@@ -76,9 +76,13 @@ class LP_Meta_Box_Select_Field extends LP_Meta_Box_Field {
|
|
76 |
$description = ! empty( $field['description'] ) && false === $field['desc_tip'] ? $field['description'] : '';
|
77 |
?>
|
78 |
|
79 |
-
<p class="form-field <?php echo esc_attr( $field['id'] ) . '_field ' . esc_attr( $field['wrapper_class'] ); ?>"
|
80 |
-
|
|
|
|
|
|
|
81 |
<select <?php echo lp_implode_html_attributes( $field_attributes ); ?>>
|
|
|
82 |
<?php
|
83 |
foreach ( $field['options'] as $key => $value ) {
|
84 |
echo '<option value="' . esc_attr( $key ) . '"' . ( is_array( $field['value'] ) ? selected( in_array( (string) $key, $field['value'], true ), true ) : selected( $key, $field['value'], false ) ) . '>' . esc_html( $value ) . '</option>';
|
@@ -99,15 +103,15 @@ class LP_Meta_Box_Select_Field extends LP_Meta_Box_Field {
|
|
99 |
}
|
100 |
|
101 |
public function save( $post_id ) {
|
102 |
-
$
|
103 |
|
104 |
if ( ! isset( $_POST[ $this->id ] ) ) {
|
105 |
return;
|
106 |
}
|
107 |
|
108 |
-
if ( $
|
109 |
-
$get_values = get_post_meta( $post_id, $this->id
|
110 |
-
$new_values =
|
111 |
|
112 |
$array_get_values = ! empty( $get_values ) ? array_values( $get_values ) : array();
|
113 |
$array_new_values = ! empty( $new_values ) ? array_values( $new_values ) : array();
|
@@ -123,12 +127,22 @@ class LP_Meta_Box_Select_Field extends LP_Meta_Box_Field {
|
|
123 |
add_post_meta( $post_id, $this->id, $level_id, false );
|
124 |
}
|
125 |
} else {
|
126 |
-
$
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
$value =
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
132 |
}
|
133 |
|
134 |
update_post_meta( $post_id, $this->id, $value );
|
76 |
$description = ! empty( $field['description'] ) && false === $field['desc_tip'] ? $field['description'] : '';
|
77 |
?>
|
78 |
|
79 |
+
<p class="form-field <?php echo esc_attr( $field['id'] ) . '_field ' . esc_attr( $field['wrapper_class'] ); ?>"
|
80 |
+
<?php learn_press_echo_vuejs_write_on_php( $this->condition ? $this->condition : '' ); ?>>
|
81 |
+
<label for="<?php echo esc_attr( $field['id'] ); ?>">
|
82 |
+
<?php echo wp_kses_post( $field['label'] ); ?>
|
83 |
+
</label>
|
84 |
<select <?php echo lp_implode_html_attributes( $field_attributes ); ?>>
|
85 |
+
<option value="" hidden style="display: none"></option>
|
86 |
<?php
|
87 |
foreach ( $field['options'] as $key => $value ) {
|
88 |
echo '<option value="' . esc_attr( $key ) . '"' . ( is_array( $field['value'] ) ? selected( in_array( (string) $key, $field['value'], true ), true ) : selected( $key, $field['value'], false ) ) . '>' . esc_html( $value ) . '</option>';
|
103 |
}
|
104 |
|
105 |
public function save( $post_id ) {
|
106 |
+
$multiple_meta = $this->extra['multil_meta'] ?? false;
|
107 |
|
108 |
if ( ! isset( $_POST[ $this->id ] ) ) {
|
109 |
return;
|
110 |
}
|
111 |
|
112 |
+
if ( $multiple_meta ) {
|
113 |
+
$get_values = get_post_meta( $post_id, $this->id ) ?? array();
|
114 |
+
$new_values = LP_Helper::sanitize_params_submitted( $_POST[ $this->id ] ?? [] );
|
115 |
|
116 |
$array_get_values = ! empty( $get_values ) ? array_values( $get_values ) : array();
|
117 |
$array_new_values = ! empty( $new_values ) ? array_values( $new_values ) : array();
|
127 |
add_post_meta( $post_id, $this->id, $level_id, false );
|
128 |
}
|
129 |
} else {
|
130 |
+
$multiple = ! empty( $this->extra['multiple'] );
|
131 |
+
|
132 |
+
if ( $multiple ) {
|
133 |
+
$value_tmp = ! empty( $_POST[ $this->id ] ) ? LP_Helper::sanitize_params_submitted( $_POST[ $this->id ] ) : array();
|
134 |
+
// Clear item has value empty.
|
135 |
+
$value = [];
|
136 |
+
array_map(
|
137 |
+
function( $item ) use ( &$value ) {
|
138 |
+
if ( $item !== '' ) {
|
139 |
+
$value[] = $item;
|
140 |
+
}
|
141 |
+
},
|
142 |
+
$value_tmp
|
143 |
+
);
|
144 |
+
} else {
|
145 |
+
$value = ! empty( $_POST[ $this->id ] ) ? sanitize_text_field( wp_unslash( $_POST[ $this->id ] ) ) : '';
|
146 |
}
|
147 |
|
148 |
update_post_meta( $post_id, $this->id, $value );
|
inc/admin/views/meta-boxes/fields/text.php
CHANGED
@@ -48,7 +48,7 @@ class LP_Meta_Box_Text_Field extends LP_Meta_Box_Field {
|
|
48 |
}
|
49 |
}
|
50 |
|
51 |
-
echo '<div class="form-field ' . $this->id . '_field ' . $wrapper_class . '">
|
52 |
<label for="' . esc_attr( $this->id ) . '">' . wp_kses_post( $this->label ) . '</label>';
|
53 |
|
54 |
echo '<input type="' . esc_attr( $type_input ) . '" ' . $class . ' ' . $style . ' name="' . $this->id . '" id="' . $this->id . '" value="' . $value . '" placeholder="' . esc_attr( $placeholder ) . '" ' . implode(
|
48 |
}
|
49 |
}
|
50 |
|
51 |
+
echo '<div class="form-field ' . esc_attr( $this->id . '_field ' . $wrapper_class ) . '">
|
52 |
<label for="' . esc_attr( $this->id ) . '">' . wp_kses_post( $this->label ) . '</label>';
|
53 |
|
54 |
echo '<input type="' . esc_attr( $type_input ) . '" ' . $class . ' ' . $style . ' name="' . $this->id . '" id="' . $this->id . '" value="' . $value . '" placeholder="' . esc_attr( $placeholder ) . '" ' . implode(
|
inc/admin/views/meta-boxes/fields/wysiwyg.php
CHANGED
@@ -37,7 +37,7 @@ class LP_Meta_Box_WP_Editor_Field extends LP_Meta_Box_Field {
|
|
37 |
$value = $extra['value'] ?? $value;
|
38 |
$desc_tip = $extra['desc_tip'] ?? '';
|
39 |
|
40 |
-
echo '<div class="lp-meta-box__wp-editor form-field ' . $this->id . '_field ' . $wrapper_class . '">
|
41 |
<label for="' . esc_attr( $this->id ) . '">' . wp_kses_post( $this->label ) . '</label>';
|
42 |
|
43 |
echo wp_editor(
|
37 |
$value = $extra['value'] ?? $value;
|
38 |
$desc_tip = $extra['desc_tip'] ?? '';
|
39 |
|
40 |
+
echo '<div class="lp-meta-box__wp-editor form-field ' . esc_attr( $this->id . '_field ' . $wrapper_class ) . '">
|
41 |
<label for="' . esc_attr( $this->id ) . '">' . wp_kses_post( $this->label ) . '</label>';
|
42 |
|
43 |
echo wp_editor(
|
inc/admin/views/meta-boxes/lesson/settings.php
CHANGED
@@ -48,7 +48,7 @@ class LP_Meta_Box_Lesson extends LP_Meta_Box {
|
|
48 |
foreach ( $this->metabox( $post->ID ) as $key => $object ) {
|
49 |
if ( is_a( $object, 'LP_Meta_Box_Field' ) ) {
|
50 |
$object->id = $key;
|
51 |
-
|
52 |
} elseif ( is_array( $object ) ) {
|
53 |
$is_old = true;
|
54 |
}
|
48 |
foreach ( $this->metabox( $post->ID ) as $key => $object ) {
|
49 |
if ( is_a( $object, 'LP_Meta_Box_Field' ) ) {
|
50 |
$object->id = $key;
|
51 |
+
learn_press_echo_vuejs_write_on_php( $object->output( $post->ID ) );
|
52 |
} elseif ( is_array( $object ) ) {
|
53 |
$is_old = true;
|
54 |
}
|
inc/admin/views/meta-boxes/lp-meta-box-functions.php
CHANGED
@@ -36,16 +36,18 @@ function lp_meta_box_text_input_field( $field ) {
|
|
36 |
$custom_attributes_str = implode( ' ', $custom_attributes );
|
37 |
?>
|
38 |
|
39 |
-
<div class="form-field <?php echo $field['id'] . '_field ' . $wrapper_class; ?>">
|
40 |
-
<label for="<?php echo
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
|
|
|
|
49 |
<?php
|
50 |
if ( ! empty( $field['description'] ) ) {
|
51 |
echo '<p class="description">';
|
@@ -91,14 +93,16 @@ function lp_meta_box_textarea_field( $field ) {
|
|
91 |
$custom_attributes_str = implode( ' ', $custom_attributes );
|
92 |
?>
|
93 |
|
94 |
-
<p class="form-field <?php echo $field['id'] . '_field '; ?>">
|
95 |
-
<label for="<?php echo
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
|
|
|
|
102 |
<?php
|
103 |
if ( ! empty( $field['description'] ) ) {
|
104 |
echo '<span class="description">' . wp_kses_post( $field['description'] ) . '</span>';
|
@@ -145,17 +149,18 @@ function lp_meta_box_checkbox_field( $field ) {
|
|
145 |
$custom_attributes_str = implode( ' ', $custom_attributes );
|
146 |
?>
|
147 |
|
148 |
-
<div class="form-field <?php echo $field['id'] . '_field'
|
149 |
-
<label for="<?php echo
|
|
|
|
|
150 |
|
151 |
<input type="checkbox"
|
152 |
-
class="<?php echo $field['class']; ?>"
|
153 |
-
style="<?php echo $field['style']; ?>"
|
154 |
-
name="<?php echo $name; ?>"
|
155 |
-
id="<?php echo $field['id']; ?>"
|
156 |
-
<?php
|
157 |
-
|
158 |
-
<?php echo $custom_attributes_str; ?> />
|
159 |
|
160 |
<?php
|
161 |
if ( ! empty( $field['description'] ) ) {
|
@@ -208,10 +213,10 @@ function lp_meta_box_select_field( $field = array() ) {
|
|
208 |
);
|
209 |
|
210 |
$field_attributes = (array) $field['custom_attributes'];
|
211 |
-
$field_attributes['style'] = $field['style'];
|
212 |
-
$field_attributes['id'] = $field['id'];
|
213 |
$field_attributes['name'] = $field['multiple'] ? $field['name'] . '[]' : $field['name'];
|
214 |
-
$field_attributes['class'] = $field['class'];
|
215 |
|
216 |
if ( $field['multiple'] ) {
|
217 |
$field['wrapper_class'] = 'lp-select-2';
|
@@ -222,7 +227,7 @@ function lp_meta_box_select_field( $field = array() ) {
|
|
222 |
$description = ! empty( $field['description'] ) && false === $field['desc_tip'] ? $field['description'] : '';
|
223 |
?>
|
224 |
|
225 |
-
<p class="form-field <?php echo esc_attr( $field['id']
|
226 |
<label for="<?php echo esc_attr( $field['id'] ); ?>"><?php echo wp_kses_post( $field['label'] ); ?></label>
|
227 |
<select <?php echo lp_implode_html_attributes( $field_attributes ); ?>>
|
228 |
<?php
|
@@ -253,9 +258,9 @@ function lp_meta_box_radio_field( $field ) {
|
|
253 |
global $thepostid, $post;
|
254 |
|
255 |
$thepostid = empty( $thepostid ) ? $post->ID : $thepostid;
|
256 |
-
$field['class'] =
|
257 |
-
$field['style'] =
|
258 |
-
$field['wrapper_class'] =
|
259 |
$field['default'] = ( ! get_post_meta(
|
260 |
$thepostid,
|
261 |
$field['id'],
|
@@ -265,11 +270,11 @@ function lp_meta_box_radio_field( $field ) {
|
|
265 |
$field['id'],
|
266 |
true
|
267 |
);
|
268 |
-
$field['value'] =
|
269 |
-
$field['name'] =
|
270 |
-
$field['desc_tip'] =
|
271 |
|
272 |
-
echo '<fieldset class="form-field ' . esc_attr( $field['id']
|
273 |
|
274 |
if ( ! empty( $field['description'] ) && false !== $field['desc_tip'] ) {
|
275 |
learn_press_quick_tip( $field['description'] );
|
@@ -328,7 +333,7 @@ function lp_meta_box_file_input_field( $field ) {
|
|
328 |
}
|
329 |
}
|
330 |
|
331 |
-
echo '<div class="form-field ' . esc_attr( $field['id']
|
332 |
<label for="' . esc_attr( $field['id'] ) . '">' . wp_kses_post( $field['label'] ) . '</label>';
|
333 |
|
334 |
echo '<div id="' . esc_attr( $field['id'] ) . '" class="lp-meta-box__file ' . esc_attr( $field['class'] ) . '" data-mime="' . $field['mime_type'] . '" data-multil="' . $field['multil'] . '" style="' . esc_attr( $field['style'] ) . '" ' . implode(
|
@@ -388,10 +393,10 @@ function lp_meta_box_duration_field( $field ) {
|
|
388 |
global $thepostid, $post;
|
389 |
|
390 |
$thepostid = empty( $thepostid ) ? $post->ID : $thepostid;
|
391 |
-
$field['placeholder'] =
|
392 |
-
$field['class'] =
|
393 |
-
$field['style'] =
|
394 |
-
$field['wrapper_class'] =
|
395 |
$field['default'] = ( ! get_post_meta(
|
396 |
$thepostid,
|
397 |
$field['id'],
|
@@ -401,8 +406,8 @@ function lp_meta_box_duration_field( $field ) {
|
|
401 |
$field['id'],
|
402 |
true
|
403 |
);
|
404 |
-
$field['value'] =
|
405 |
-
$field['name'] =
|
406 |
$data_type = empty( $field['data_type'] ) ? '' : $field['data_type'];
|
407 |
$duration = learn_press_get_course_duration_support();
|
408 |
|
@@ -431,7 +436,7 @@ function lp_meta_box_duration_field( $field ) {
|
|
431 |
$html_option .= sprintf( '<option value="%s" %s>%s</option>', $k, selected( $k, $a2, false ), $v );
|
432 |
}
|
433 |
|
434 |
-
echo '<p class="lp-meta-box__duration form-field ' . esc_attr( $field['id']
|
435 |
<label for="' . esc_attr( $field['id'] ) . '">' . wp_kses_post( $field['label'] ) . '</label>';
|
436 |
|
437 |
echo '<input type="number" class="' . esc_attr( $field['class'] ) . '" style="' . esc_attr( $field['style'] ) . '" name="' . esc_attr( $field['name'] ) . '[]" id="' . esc_attr( $field['id'] ) . '" value="' . esc_attr( $a1 ) . '" placeholder="' . esc_attr( $field['placeholder'] ) . '" ' . implode(
|
@@ -465,7 +470,7 @@ function lp_metabox_custom_fields( $field, $values, $key ) {
|
|
465 |
?>
|
466 |
<tr>
|
467 |
<td class="sort">
|
468 |
-
<input class="count" type="hidden" value="<?php echo $key; ?>" name="<?php echo esc_attr( $field['id'] ) . '[' . $key . ']' . '[sort]'; ?>">
|
469 |
<input type="hidden" value="<?php echo ! empty( $values['id'] ) ? $values['id'] : wp_rand( 1, 10000 ) . $key; ?>" name="<?php echo esc_attr( $field['id'] ) . '[' . $key . ']' . '[id]'; ?>">
|
470 |
</td>
|
471 |
<?php
|
@@ -488,7 +493,7 @@ function lp_metabox_custom_fields( $field, $values, $key ) {
|
|
488 |
case 'tel':
|
489 |
?>
|
490 |
<td>
|
491 |
-
<input name="<?php echo esc_attr( $name ); ?>" type="<?php echo $val['type']; ?>"
|
492 |
class="input-text"
|
493 |
placeholder="<?php echo isset( $val['placeholder'] ) ? esc_attr( $val['placeholder'] ) : ''; ?>"
|
494 |
value="<?php echo ! empty( $values[ $cfk ] ) ? esc_attr( $values[ $cfk ] ) : ''; ?>">
|
@@ -512,7 +517,7 @@ function lp_metabox_custom_fields( $field, $values, $key ) {
|
|
512 |
(string) $cfks
|
513 |
) : '';
|
514 |
?>
|
515 |
-
><?php echo $cfselect; ?></option>
|
516 |
<?php
|
517 |
}
|
518 |
}
|
36 |
$custom_attributes_str = implode( ' ', $custom_attributes );
|
37 |
?>
|
38 |
|
39 |
+
<div class="form-field <?php echo esc_attr( $field['id'] . '_field ' . $wrapper_class ); ?>">
|
40 |
+
<label for="<?php echo esc_attr( $field['id'] ); ?>">
|
41 |
+
<?php echo wp_kses_post( $field['label'] ); ?>
|
42 |
+
</label>
|
43 |
+
<input type="<?php echo esc_attr( $field['type_input'] ); ?>"
|
44 |
+
class="<?php echo esc_attr( $field['class'] ); ?>"
|
45 |
+
style="<?php echo esc_attr( $field['style'] ); ?>"
|
46 |
+
name="<?php echo esc_attr( $field['id'] ); ?>"
|
47 |
+
id="<?php echo esc_attr( $field['id'] ); ?>"
|
48 |
+
value="<?php echo esc_attr( $field['value'] ); ?>"
|
49 |
+
placeholder="<?php echo esc_attr( $field['placeholder'] ); ?>"
|
50 |
+
<?php echo learn_press_echo_vuejs_write_on_php( $custom_attributes_str ); ?> />
|
51 |
<?php
|
52 |
if ( ! empty( $field['description'] ) ) {
|
53 |
echo '<p class="description">';
|
93 |
$custom_attributes_str = implode( ' ', $custom_attributes );
|
94 |
?>
|
95 |
|
96 |
+
<p class="form-field <?php echo esc_attr( $field['id'] . '_field ' ); ?>">
|
97 |
+
<label for="<?php echo esc_attr( $field['id'] ); ?>>">
|
98 |
+
<?php echo wp_kses_post( $field['label'] ); ?>
|
99 |
+
</label>
|
100 |
+
<textarea class="<?php echo esc_attr( $field['class'] ); ?>"
|
101 |
+
style="<?php echo esc_attr( $field['style'] ); ?>"
|
102 |
+
name="<?php echo esc_attr( $field['name'] ); ?>"
|
103 |
+
id="<?php esc_attr( $field['id'] ); ?>"
|
104 |
+
placeholder="<?php echo esc_attr( $field['placeholder'] ); ?>"
|
105 |
+
rows="5" <?php echo esc_attr( $custom_attributes_str ); ?>><?php echo wp_kses_post( $field['value'] ); ?></textarea>
|
106 |
<?php
|
107 |
if ( ! empty( $field['description'] ) ) {
|
108 |
echo '<span class="description">' . wp_kses_post( $field['description'] ) . '</span>';
|
149 |
$custom_attributes_str = implode( ' ', $custom_attributes );
|
150 |
?>
|
151 |
|
152 |
+
<div class="form-field <?php echo esc_attr( $field['id'] . '_field' . $wrapper_class ); ?>">
|
153 |
+
<label for="<?php echo esc_attr( $field['id'] ); ?>">
|
154 |
+
<?php echo wp_kses_post( $field['label'] ); ?>
|
155 |
+
</label>
|
156 |
|
157 |
<input type="checkbox"
|
158 |
+
class="<?php echo esc_attr( $field['class'] ); ?>"
|
159 |
+
style="<?php echo esc_attr( $field['style'] ); ?>"
|
160 |
+
name="<?php echo esc_attr( $name ); ?>"
|
161 |
+
id="<?php echo esc_attr( $field['id'] ); ?>"
|
162 |
+
<?php learn_press_echo_vuejs_write_on_php( $checked ); ?>
|
163 |
+
<?php learn_press_echo_vuejs_write_on_php( $custom_attributes_str ); ?> />
|
|
|
164 |
|
165 |
<?php
|
166 |
if ( ! empty( $field['description'] ) ) {
|
213 |
);
|
214 |
|
215 |
$field_attributes = (array) $field['custom_attributes'];
|
216 |
+
$field_attributes['style'] = $field['style'] ?? '';
|
217 |
+
$field_attributes['id'] = $field['id'] ?? '';
|
218 |
$field_attributes['name'] = $field['multiple'] ? $field['name'] . '[]' : $field['name'];
|
219 |
+
$field_attributes['class'] = $field['class'] ?? '';
|
220 |
|
221 |
if ( $field['multiple'] ) {
|
222 |
$field['wrapper_class'] = 'lp-select-2';
|
227 |
$description = ! empty( $field['description'] ) && false === $field['desc_tip'] ? $field['description'] : '';
|
228 |
?>
|
229 |
|
230 |
+
<p class="form-field <?php echo esc_attr( $field['id'] . '_field ' . $field['wrapper_class'] ); ?>">
|
231 |
<label for="<?php echo esc_attr( $field['id'] ); ?>"><?php echo wp_kses_post( $field['label'] ); ?></label>
|
232 |
<select <?php echo lp_implode_html_attributes( $field_attributes ); ?>>
|
233 |
<?php
|
258 |
global $thepostid, $post;
|
259 |
|
260 |
$thepostid = empty( $thepostid ) ? $post->ID : $thepostid;
|
261 |
+
$field['class'] = $field['class'] ?? 'select';
|
262 |
+
$field['style'] = $field['style'] ?? '';
|
263 |
+
$field['wrapper_class'] = $field['wrapper_class'] ?? '';
|
264 |
$field['default'] = ( ! get_post_meta(
|
265 |
$thepostid,
|
266 |
$field['id'],
|
270 |
$field['id'],
|
271 |
true
|
272 |
);
|
273 |
+
$field['value'] = $field['value'] ?? $field['default'];
|
274 |
+
$field['name'] = $field['name'] ?? $field['id'];
|
275 |
+
$field['desc_tip'] = $field['desc_tip'] ?? false;
|
276 |
|
277 |
+
echo '<fieldset class="form-field ' . esc_attr( $field['id'] . '_field ' . $field['wrapper_class'] ) . '"><h4>' . wp_kses_post( $field['label'] ) . '</h4>';
|
278 |
|
279 |
if ( ! empty( $field['description'] ) && false !== $field['desc_tip'] ) {
|
280 |
learn_press_quick_tip( $field['description'] );
|
333 |
}
|
334 |
}
|
335 |
|
336 |
+
echo '<div class="form-field ' . esc_attr( $field['id'] . '_field ' . $field['wrapper_class'] ) . '">
|
337 |
<label for="' . esc_attr( $field['id'] ) . '">' . wp_kses_post( $field['label'] ) . '</label>';
|
338 |
|
339 |
echo '<div id="' . esc_attr( $field['id'] ) . '" class="lp-meta-box__file ' . esc_attr( $field['class'] ) . '" data-mime="' . $field['mime_type'] . '" data-multil="' . $field['multil'] . '" style="' . esc_attr( $field['style'] ) . '" ' . implode(
|
393 |
global $thepostid, $post;
|
394 |
|
395 |
$thepostid = empty( $thepostid ) ? $post->ID : $thepostid;
|
396 |
+
$field['placeholder'] = $field['placeholder'] ?? '';
|
397 |
+
$field['class'] = $field['class'] ?? 'short';
|
398 |
+
$field['style'] = $field['style'] ?? '';
|
399 |
+
$field['wrapper_class'] = $field['wrapper_class'] ?? '';
|
400 |
$field['default'] = ( ! get_post_meta(
|
401 |
$thepostid,
|
402 |
$field['id'],
|
406 |
$field['id'],
|
407 |
true
|
408 |
);
|
409 |
+
$field['value'] = $field['value'] ?? $field['default'];
|
410 |
+
$field['name'] = $field['name'] ?? $field['id'];
|
411 |
$data_type = empty( $field['data_type'] ) ? '' : $field['data_type'];
|
412 |
$duration = learn_press_get_course_duration_support();
|
413 |
|
436 |
$html_option .= sprintf( '<option value="%s" %s>%s</option>', $k, selected( $k, $a2, false ), $v );
|
437 |
}
|
438 |
|
439 |
+
echo '<p class="lp-meta-box__duration form-field ' . esc_attr( $field['id'] . '_field ' . $field['wrapper_class'] ) . '">
|
440 |
<label for="' . esc_attr( $field['id'] ) . '">' . wp_kses_post( $field['label'] ) . '</label>';
|
441 |
|
442 |
echo '<input type="number" class="' . esc_attr( $field['class'] ) . '" style="' . esc_attr( $field['style'] ) . '" name="' . esc_attr( $field['name'] ) . '[]" id="' . esc_attr( $field['id'] ) . '" value="' . esc_attr( $a1 ) . '" placeholder="' . esc_attr( $field['placeholder'] ) . '" ' . implode(
|
470 |
?>
|
471 |
<tr>
|
472 |
<td class="sort">
|
473 |
+
<input class="count" type="hidden" value="<?php echo esc_attr( $key ); ?>" name="<?php echo esc_attr( $field['id'] ) . '[' . $key . ']' . '[sort]'; ?>">
|
474 |
<input type="hidden" value="<?php echo ! empty( $values['id'] ) ? $values['id'] : wp_rand( 1, 10000 ) . $key; ?>" name="<?php echo esc_attr( $field['id'] ) . '[' . $key . ']' . '[id]'; ?>">
|
475 |
</td>
|
476 |
<?php
|
493 |
case 'tel':
|
494 |
?>
|
495 |
<td>
|
496 |
+
<input name="<?php echo esc_attr( $name ); ?>" type="<?php echo esc_attr( $val['type'] ); ?>"
|
497 |
class="input-text"
|
498 |
placeholder="<?php echo isset( $val['placeholder'] ) ? esc_attr( $val['placeholder'] ) : ''; ?>"
|
499 |
value="<?php echo ! empty( $values[ $cfk ] ) ? esc_attr( $values[ $cfk ] ) : ''; ?>">
|
517 |
(string) $cfks
|
518 |
) : '';
|
519 |
?>
|
520 |
+
><?php echo wp_kses_post( $cfselect ); ?></option>
|
521 |
<?php
|
522 |
}
|
523 |
}
|
inc/admin/views/meta-boxes/quiz/settings.php
CHANGED
@@ -63,7 +63,6 @@ class LP_Meta_Box_Quiz extends LP_Meta_Box {
|
|
63 |
'custom_attributes' => array(
|
64 |
'min' => '-1',
|
65 |
'step' => '1',
|
66 |
-
'max' => '100',
|
67 |
),
|
68 |
'style' => 'width: 60px;',
|
69 |
)
|
63 |
'custom_attributes' => array(
|
64 |
'min' => '-1',
|
65 |
'step' => '1',
|
|
|
66 |
),
|
67 |
'style' => 'width: 60px;',
|
68 |
)
|
inc/background-process/class-lp-background-single-email.php
CHANGED
@@ -20,8 +20,8 @@ if ( ! class_exists( 'LP_Background_Single_Email' ) ) {
|
|
20 |
* Method async handle
|
21 |
*/
|
22 |
protected function handle() {
|
23 |
-
$params = $_POST['params'] ?? false;
|
24 |
-
$class_name = $_POST['class_name'] ?? false;
|
25 |
|
26 |
if ( ! $class_name || ! $params ) {
|
27 |
error_log( 'Params send email on background is invalid' );
|
20 |
* Method async handle
|
21 |
*/
|
22 |
protected function handle() {
|
23 |
+
$params = LP_Helper::sanitize_params_submitted( $_POST['params'] ?? false );
|
24 |
+
$class_name = LP_Helper::sanitize_params_submitted( $_POST['class_name'] ?? false );
|
25 |
|
26 |
if ( ! $class_name || ! $params ) {
|
27 |
error_log( 'Params send email on background is invalid' );
|
inc/class-lp-emails.php
CHANGED
@@ -110,106 +110,6 @@ if ( ! class_exists( 'LP_Emails' ) ) {
|
|
110 |
do_action( 'learnpress/emails/register', $this->emails );
|
111 |
}
|
112 |
|
113 |
-
|
114 |
-
/**
|
115 |
-
* @version 1.0
|
116 |
-
*/
|
117 |
-
public function __clone() {
|
118 |
-
_doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'learnpress' ), '1.0' );
|
119 |
-
}
|
120 |
-
|
121 |
-
/**
|
122 |
-
* @version 1.0
|
123 |
-
*/
|
124 |
-
public function __wakeup() {
|
125 |
-
_doing_it_wrong( __FUNCTION__, __( 'Cheatin’ huh?', 'learnpress' ), '1.0' );
|
126 |
-
}
|
127 |
-
|
128 |
-
/**
|
129 |
-
* Init email notification hooks.
|
130 |
-
*
|
131 |
-
* @since 3.0.0
|
132 |
-
* @editor tungnx
|
133 |
-
* @reason comment - not use
|
134 |
-
*/
|
135 |
-
/*
|
136 |
-
public static function init_email_notifications() {
|
137 |
-
self::instance();
|
138 |
-
}*/
|
139 |
-
|
140 |
-
/**
|
141 |
-
* Push email notification into queue.
|
142 |
-
*
|
143 |
-
* @since 3.0.0
|
144 |
-
*/
|
145 |
-
/*
|
146 |
-
public static function queue_email() {
|
147 |
-
$data_queue = array(
|
148 |
-
'filter' => current_filter(),
|
149 |
-
'args' => func_get_args(),
|
150 |
-
);
|
151 |
-
LP()->background( 'emailer' )->push_to_queue( $data_queue );
|
152 |
-
}*/
|
153 |
-
|
154 |
-
/**
|
155 |
-
* Send email notification.
|
156 |
-
*
|
157 |
-
* @editor tungnx
|
158 |
-
* @reason not use
|
159 |
-
* @deprecated 4.1.1
|
160 |
-
*/
|
161 |
-
/*
|
162 |
-
public static function send_email() {
|
163 |
-
try {
|
164 |
-
$args = func_get_args();
|
165 |
-
self::instance();
|
166 |
-
do_action_ref_array( current_filter() . '/notification', $args );
|
167 |
-
} catch ( Exception $e ) {
|
168 |
-
}
|
169 |
-
}*/
|
170 |
-
|
171 |
-
/**
|
172 |
-
* Email header.
|
173 |
-
*
|
174 |
-
* @param string $heading
|
175 |
-
* @param bool $echo
|
176 |
-
*
|
177 |
-
* @return string
|
178 |
-
* @editor tungnx
|
179 |
-
* @modify 4.1.4 comment - not used
|
180 |
-
*/
|
181 |
-
/*public function email_header( string $heading, bool $echo = true ): string {
|
182 |
-
ob_start();
|
183 |
-
learn_press_get_template( 'emails/email-header.php', array( 'email_heading' => $heading ) );
|
184 |
-
$header = ob_get_clean();
|
185 |
-
if ( $echo ) {
|
186 |
-
echo $header;
|
187 |
-
}
|
188 |
-
|
189 |
-
return $header;
|
190 |
-
}*/
|
191 |
-
|
192 |
-
/**
|
193 |
-
* Email footer.
|
194 |
-
*
|
195 |
-
* @param string $footer_text
|
196 |
-
* @param bool $echo
|
197 |
-
*
|
198 |
-
* @return string
|
199 |
-
* @editor tungnx
|
200 |
-
* @modify 4.1.4 comment - not used
|
201 |
-
*/
|
202 |
-
/*public function email_footer( string $footer_text, bool $echo = true ): string {
|
203 |
-
ob_start();
|
204 |
-
learn_press_get_template( 'emails/email-footer.php', array( 'footer_text' => $footer_text ) );
|
205 |
-
$footer = ob_get_clean();
|
206 |
-
if ( $echo ) {
|
207 |
-
echo $footer;
|
208 |
-
}
|
209 |
-
|
210 |
-
return $footer;
|
211 |
-
}*/
|
212 |
-
|
213 |
public function set_current( $id ) {
|
214 |
$this->_last_current = $this->_current;
|
215 |
|
110 |
do_action( 'learnpress/emails/register', $this->emails );
|
111 |
}
|
112 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
113 |
public function set_current( $id ) {
|
114 |
$this->_last_current = $this->_current;
|
115 |
|
inc/class-lp-page-controller.php
CHANGED
@@ -50,6 +50,9 @@ class LP_Page_Controller {
|
|
50 |
// Set link profile to admin menu
|
51 |
add_action( 'admin_bar_menu', array( $this, 'learn_press_edit_admin_bar' ) );
|
52 |
add_action( 'plugins_loaded', array( $this, 'lp_rest_api_called' ) );
|
|
|
|
|
|
|
53 |
}
|
54 |
|
55 |
/**
|
@@ -68,6 +71,45 @@ class LP_Page_Controller {
|
|
68 |
}
|
69 |
}
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
/**
|
72 |
* Set link item course when form search default wp
|
73 |
*
|
@@ -92,9 +134,12 @@ class LP_Page_Controller {
|
|
92 |
return $post_link;
|
93 |
}
|
94 |
|
95 |
-
$course
|
96 |
-
|
|
|
|
|
97 |
|
|
|
98 |
} elseif ( LP_COURSE_CPT === $post->post_type ) {
|
99 |
// Abort early if the placeholder rewrite tag isn't in the generated URL
|
100 |
if ( false === strpos( $post_link, '%' ) ) {
|
50 |
// Set link profile to admin menu
|
51 |
add_action( 'admin_bar_menu', array( $this, 'learn_press_edit_admin_bar' ) );
|
52 |
add_action( 'plugins_loaded', array( $this, 'lp_rest_api_called' ) );
|
53 |
+
|
54 |
+
// Web hook detected PayPal request.
|
55 |
+
add_action( 'init', [ $this, 'check_webhook_paypal_ipn' ] );
|
56 |
}
|
57 |
|
58 |
/**
|
71 |
}
|
72 |
}
|
73 |
|
74 |
+
/**
|
75 |
+
* Check notify papal call when done.
|
76 |
+
*
|
77 |
+
* Set in param notify_url on @see LP_Gateway_Paypal::get_paypal_args()
|
78 |
+
*/
|
79 |
+
public function check_webhook_paypal_ipn() {
|
80 |
+
//error_log( 'xxx:' . json_encode( $_POST, JSON_UNESCAPED_UNICODE ) );
|
81 |
+
|
82 |
+
// Paypal payment done
|
83 |
+
if ( ! isset( $_GET['paypal_notify'] ) ) {
|
84 |
+
return;
|
85 |
+
}
|
86 |
+
|
87 |
+
if ( ! isset( $_POST['ipn_track_id'] ) ) {
|
88 |
+
return;
|
89 |
+
}
|
90 |
+
|
91 |
+
try {
|
92 |
+
$paypal = new LP_Gateway_Paypal();
|
93 |
+
$verify = $paypal->validate_ipn();
|
94 |
+
|
95 |
+
if ( $verify ) {
|
96 |
+
if ( isset( $_POST['custom'] ) ) {
|
97 |
+
$data_order = json_decode( LP_Helper::sanitize_params_submitted( $_POST['custom'] ) );
|
98 |
+
|
99 |
+
if ( json_last_error() === JSON_ERROR_NONE ) {
|
100 |
+
$order_id = $data_order->order_id;
|
101 |
+
|
102 |
+
$lp_order = learn_press_get_order( $order_id );
|
103 |
+
$lp_order->set_status( 'completed' );
|
104 |
+
$lp_order->save();
|
105 |
+
}
|
106 |
+
}
|
107 |
+
}
|
108 |
+
} catch ( Throwable $e ) {
|
109 |
+
error_log( $e->getMessage() );
|
110 |
+
}
|
111 |
+
}
|
112 |
+
|
113 |
/**
|
114 |
* Set link item course when form search default wp
|
115 |
*
|
134 |
return $post_link;
|
135 |
}
|
136 |
|
137 |
+
$course = learn_press_get_course( $course_id );
|
138 |
+
if ( ! $course ) {
|
139 |
+
return $post_link;
|
140 |
+
}
|
141 |
|
142 |
+
$post_link = $course->get_item_link( $item_id );
|
143 |
} elseif ( LP_COURSE_CPT === $post->post_type ) {
|
144 |
// Abort early if the placeholder rewrite tag isn't in the generated URL
|
145 |
if ( false === strpos( $post_link, '%' ) ) {
|
inc/class-lp-request-handler.php
CHANGED
@@ -212,10 +212,10 @@ class LP_Request {
|
|
212 |
public static function get( $var, $default = false, $type = '', $env = 'request' ) {
|
213 |
switch ( strtolower( $env ) ) {
|
214 |
case 'post':
|
215 |
-
$env = $_POST;
|
216 |
break;
|
217 |
case 'get':
|
218 |
-
$env = $_GET;
|
219 |
break;
|
220 |
case 'put':
|
221 |
case 'delete':
|
@@ -228,7 +228,7 @@ class LP_Request {
|
|
228 |
$env = $wp->query_vars;
|
229 |
break;
|
230 |
default:
|
231 |
-
$env = $_REQUEST;
|
232 |
}
|
233 |
|
234 |
$return = array_key_exists( $var, $env ) ? $env[ $var ] : $default;
|
212 |
public static function get( $var, $default = false, $type = '', $env = 'request' ) {
|
213 |
switch ( strtolower( $env ) ) {
|
214 |
case 'post':
|
215 |
+
$env = LP_Helper::sanitize_params_submitted( $_POST );
|
216 |
break;
|
217 |
case 'get':
|
218 |
+
$env = LP_Helper::sanitize_params_submitted( $_GET );
|
219 |
break;
|
220 |
case 'put':
|
221 |
case 'delete':
|
228 |
$env = $wp->query_vars;
|
229 |
break;
|
230 |
default:
|
231 |
+
$env = LP_Helper::sanitize_params_submitted( $_REQUEST );
|
232 |
}
|
233 |
|
234 |
$return = array_key_exists( $var, $env ) ? $env[ $var ] : $default;
|
inc/course/class-lp-course-section.php
CHANGED
@@ -137,10 +137,10 @@ class LP_Course_Section extends LP_Abstract_Object_Data {
|
|
137 |
/**
|
138 |
* Return section id
|
139 |
*
|
140 |
-
* @return
|
141 |
*/
|
142 |
public function get_id() {
|
143 |
-
return $this->_data['id'];
|
144 |
}
|
145 |
|
146 |
/**
|
137 |
/**
|
138 |
* Return section id
|
139 |
*
|
140 |
+
* @return int
|
141 |
*/
|
142 |
public function get_id() {
|
143 |
+
return (int) $this->_data['id'];
|
144 |
}
|
145 |
|
146 |
/**
|
inc/course/class-lp-course.php
CHANGED
@@ -556,7 +556,7 @@ if ( ! class_exists( 'LP_Course' ) ) {
|
|
556 |
LP_Courses_Cache::instance()->save_cache_keys( $key_cache );
|
557 |
LP_Courses_Cache::instance()->save_cache_keys( $key_cache_total_rows );
|
558 |
} catch ( Throwable $e ) {
|
559 |
-
$courses =
|
560 |
error_log( __FUNCTION__ . ': ' . $e->getMessage() );
|
561 |
}
|
562 |
|
@@ -747,6 +747,40 @@ if ( ! class_exists( 'LP_Course' ) ) {
|
|
747 |
return apply_filters( 'learn-press/course-sections', $sections, $this->get_id(), $return, $section_id );
|
748 |
}
|
749 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
750 |
/**
|
751 |
* Get raw data curriculum.
|
752 |
*
|
@@ -774,7 +808,7 @@ if ( ! class_exists( 'LP_Course' ) ) {
|
|
774 |
$item_arr = (array) $item;
|
775 |
$item_arr['title'] = html_entity_decode( $itemObject->get_title() );
|
776 |
$item_arr['preview'] = $itemObject->is_preview();
|
777 |
-
$section_items_arr['items'][] = $item_arr;
|
778 |
}
|
779 |
|
780 |
$sections_data[] = $section_items_arr;
|
556 |
LP_Courses_Cache::instance()->save_cache_keys( $key_cache );
|
557 |
LP_Courses_Cache::instance()->save_cache_keys( $key_cache_total_rows );
|
558 |
} catch ( Throwable $e ) {
|
559 |
+
$courses = [];
|
560 |
error_log( __FUNCTION__ . ': ' . $e->getMessage() );
|
561 |
}
|
562 |
|
747 |
return apply_filters( 'learn-press/course-sections', $sections, $this->get_id(), $return, $section_id );
|
748 |
}
|
749 |
|
750 |
+
/**
|
751 |
+
* Get sections arr
|
752 |
+
*
|
753 |
+
* @param int $section_id
|
754 |
+
*
|
755 |
+
* @return array
|
756 |
+
* @version 1.0.0
|
757 |
+
* @sicne 4.1.6.9.4
|
758 |
+
*/
|
759 |
+
public function get_sections_data_arr( int $section_id = 0 ): array {
|
760 |
+
$sections_items = $this->get_full_sections_and_items_course();
|
761 |
+
$sections = array();
|
762 |
+
|
763 |
+
foreach ( $sections_items as $section_items ) {
|
764 |
+
$section = [
|
765 |
+
'section_id' => $section_items->id,
|
766 |
+
'section_name' => $section_items->title,
|
767 |
+
'section_course_id' => $this->get_id(),
|
768 |
+
'section_order' => $section_items->order,
|
769 |
+
'section_description' => $section_items->description,
|
770 |
+
'items' => $section_items->items,
|
771 |
+
];
|
772 |
+
|
773 |
+
if ( $section_id && $section_id == $section['section_id'] ) {
|
774 |
+
$sections = $section;
|
775 |
+
break;
|
776 |
+
}
|
777 |
+
|
778 |
+
$sections[] = $section;
|
779 |
+
}
|
780 |
+
|
781 |
+
return $sections;
|
782 |
+
}
|
783 |
+
|
784 |
/**
|
785 |
* Get raw data curriculum.
|
786 |
*
|
808 |
$item_arr = (array) $item;
|
809 |
$item_arr['title'] = html_entity_decode( $itemObject->get_title() );
|
810 |
$item_arr['preview'] = $itemObject->is_preview();
|
811 |
+
$section_items_arr['items'][] = apply_filters( 'learn-press/item/to_array', $item_arr );
|
812 |
}
|
813 |
|
814 |
$sections_data[] = $section_items_arr;
|
inc/course/lp-course-functions.php
CHANGED
@@ -984,7 +984,7 @@ function learn_press_course_grade_html( string $grade = '', bool $echo = true )
|
|
984 |
$html = apply_filters( 'learn-press/course/grade-html', $html, $grade );
|
985 |
|
986 |
if ( $echo ) {
|
987 |
-
echo
|
988 |
}
|
989 |
|
990 |
return $html;
|
984 |
$html = apply_filters( 'learn-press/course/grade-html', $html, $grade );
|
985 |
|
986 |
if ( $echo ) {
|
987 |
+
echo wp_kses_post( $html );
|
988 |
}
|
989 |
|
990 |
return $html;
|
inc/curds/class-lp-course-curd.php
CHANGED
@@ -118,111 +118,6 @@ if ( ! class_exists( 'LP_Course_CURD' ) ) {
|
|
118 |
wp_delete_post( $course_id );
|
119 |
}
|
120 |
|
121 |
-
/**
|
122 |
-
* Duplicate course.
|
123 |
-
*
|
124 |
-
* @param $course_id
|
125 |
-
* @param array $args
|
126 |
-
*
|
127 |
-
* @return mixed|WP_Error
|
128 |
-
* @since 3.0.0
|
129 |
-
*/
|
130 |
-
public function duplicate_bk( &$course_id, $args = array() ) {
|
131 |
-
|
132 |
-
if ( ! $course_id ) {
|
133 |
-
return new WP_Error( __( '<p>Op! ID not found</p>', 'learnpress' ) );
|
134 |
-
}
|
135 |
-
|
136 |
-
if ( learn_press_get_post_type( $course_id ) != LP_COURSE_CPT ) {
|
137 |
-
return new WP_Error( __( '<p>Op! The course does not exist</p>', 'learnpress' ) );
|
138 |
-
}
|
139 |
-
|
140 |
-
// ensure that user can create course
|
141 |
-
if ( ! current_user_can( 'edit_posts' ) ) {
|
142 |
-
return new WP_Error(
|
143 |
-
__(
|
144 |
-
'<p>Sorry! You don\'t have permission to duplicate this course</p>',
|
145 |
-
'learnpress'
|
146 |
-
)
|
147 |
-
);
|
148 |
-
}
|
149 |
-
// duplicate course
|
150 |
-
$new_course_id = learn_press_duplicate_post( $course_id, $args );
|
151 |
-
|
152 |
-
if ( ! $new_course_id || is_wp_error( $new_course_id ) ) {
|
153 |
-
return new WP_Error( __( '<p>Sorry! Failed to duplicate course!</p>', 'learnpress' ) );
|
154 |
-
} else {
|
155 |
-
|
156 |
-
// original course section curd
|
157 |
-
$course = LP_Course::get_course( $course_id );
|
158 |
-
|
159 |
-
// new course section curd
|
160 |
-
$new_course_section_curd = new LP_Section_CURD( $new_course_id );
|
161 |
-
|
162 |
-
// curriculum course
|
163 |
-
// $course->load_curriculum();
|
164 |
-
$curriculum = $course->get_curriculum_raw();
|
165 |
-
|
166 |
-
// quiz curd
|
167 |
-
$quiz_curd = new LP_Quiz_CURD();
|
168 |
-
|
169 |
-
if ( is_array( $curriculum ) ) {
|
170 |
-
|
171 |
-
foreach ( $curriculum as $section ) {
|
172 |
-
|
173 |
-
$data = array(
|
174 |
-
'section_name' => $section['title'],
|
175 |
-
'section_course_id' => $new_course_id,
|
176 |
-
'section_order' => $section['order'],
|
177 |
-
'section_description' => $section['description'],
|
178 |
-
);
|
179 |
-
|
180 |
-
// clone sections to new course
|
181 |
-
$new_section = $new_course_section_curd->create( $data );
|
182 |
-
|
183 |
-
// get section items of original course
|
184 |
-
$items = $section['items'];
|
185 |
-
|
186 |
-
$new_items = array();
|
187 |
-
|
188 |
-
// duplicate items
|
189 |
-
if ( is_array( $items ) ) {
|
190 |
-
foreach ( $items as $key => $item ) {
|
191 |
-
// duplicate quiz
|
192 |
-
if ( $item['type'] == LP_QUIZ_CPT ) {
|
193 |
-
$new_item_id = $quiz_curd->duplicate(
|
194 |
-
$item['id'],
|
195 |
-
array( 'post_status' => 'publish' )
|
196 |
-
);
|
197 |
-
} else {
|
198 |
-
// clone lesson
|
199 |
-
$new_item_id = learn_press_duplicate_post(
|
200 |
-
$item['id'],
|
201 |
-
array( 'post_status' => 'publish' )
|
202 |
-
);
|
203 |
-
}
|
204 |
-
|
205 |
-
// get new items data to add to section
|
206 |
-
$new_items[ $key ] = array(
|
207 |
-
'id' => $new_item_id,
|
208 |
-
'type' => $item['type'],
|
209 |
-
);
|
210 |
-
}
|
211 |
-
|
212 |
-
// add new clone items to section
|
213 |
-
$new_course_section_curd->add_items_section( $new_section['section_id'], $new_items );
|
214 |
-
}
|
215 |
-
}
|
216 |
-
|
217 |
-
do_action( 'learn-press/after-duplicate', $course_id, $new_course_id, $args );
|
218 |
-
|
219 |
-
return $new_course_id;
|
220 |
-
}
|
221 |
-
}
|
222 |
-
|
223 |
-
return false;
|
224 |
-
}
|
225 |
-
|
226 |
/**
|
227 |
* Duplicate course.
|
228 |
*
|
@@ -252,13 +147,12 @@ if ( ! class_exists( 'LP_Course_CURD' ) ) {
|
|
252 |
return $course_id_new;
|
253 |
}
|
254 |
|
255 |
-
$this->
|
256 |
|
257 |
// Call save course duplicate
|
258 |
-
//$course_post = get_post( $course_id_new );
|
259 |
LP_Course_Post_Type::instance()->save( $course_id_new );
|
260 |
|
261 |
-
do_action( 'learn-press/after-duplicate', $course_id, $course_id_new, $args );
|
262 |
} catch ( Throwable $e ) {
|
263 |
$course_id_new = new WP_Error( $e->getMessage() );
|
264 |
}
|
@@ -268,63 +162,116 @@ if ( ! class_exists( 'LP_Course_CURD' ) ) {
|
|
268 |
|
269 |
/**
|
270 |
* Duplicate sections and items of course
|
|
|
271 |
* @param int $course_id_new
|
272 |
* @param LP_Course $course_origin
|
273 |
*/
|
274 |
-
public function
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
// quiz curd
|
279 |
-
$quiz_curd = new LP_Quiz_CURD();
|
280 |
|
281 |
-
if ( is_array( $curriculum ) ) {
|
282 |
// new course section curd
|
283 |
-
$
|
284 |
-
foreach ( $curriculum as $
|
285 |
$data = array(
|
286 |
-
'
|
|
|
287 |
'section_course_id' => $course_id_new,
|
288 |
-
'section_order' => $
|
289 |
-
'section_description' => $
|
290 |
);
|
291 |
|
292 |
-
//
|
293 |
-
$
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
322 |
}
|
323 |
|
324 |
-
|
325 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
326 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
327 |
}
|
|
|
|
|
328 |
}
|
329 |
}
|
330 |
|
118 |
wp_delete_post( $course_id );
|
119 |
}
|
120 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
121 |
/**
|
122 |
* Duplicate course.
|
123 |
*
|
147 |
return $course_id_new;
|
148 |
}
|
149 |
|
150 |
+
$this->duplicate_sections( $course_id_new, $course_origin );
|
151 |
|
152 |
// Call save course duplicate
|
|
|
153 |
LP_Course_Post_Type::instance()->save( $course_id_new );
|
154 |
|
155 |
+
do_action( 'learn-press/item/after-duplicate', $course_id, $course_id_new, $args );
|
156 |
} catch ( Throwable $e ) {
|
157 |
$course_id_new = new WP_Error( $e->getMessage() );
|
158 |
}
|
162 |
|
163 |
/**
|
164 |
* Duplicate sections and items of course
|
165 |
+
*
|
166 |
* @param int $course_id_new
|
167 |
* @param LP_Course $course_origin
|
168 |
*/
|
169 |
+
public function duplicate_sections( int $course_id_new, LP_Course $course_origin ) {
|
170 |
+
try {
|
171 |
+
$curriculum = $course_origin->get_curriculum_raw();
|
|
|
|
|
|
|
172 |
|
|
|
173 |
// new course section curd
|
174 |
+
$section_curd_new = new LP_Section_CURD( $course_id_new );
|
175 |
+
foreach ( $curriculum as $section_origin ) {
|
176 |
$data = array(
|
177 |
+
'section_id' => $section_origin['id'],
|
178 |
+
'section_name' => $section_origin['title'],
|
179 |
'section_course_id' => $course_id_new,
|
180 |
+
'section_order' => $section_origin['order'],
|
181 |
+
'section_description' => $section_origin['description'],
|
182 |
);
|
183 |
|
184 |
+
// Hook before clone section.
|
185 |
+
$can_clone = true;
|
186 |
+
$can_clone = apply_filters( 'lp/section/can-clone', $can_clone, $course_id_new, $course_origin, $section_origin );
|
187 |
+
if ( ! $can_clone ) {
|
188 |
+
continue;
|
189 |
+
}
|
190 |
+
|
191 |
+
// Clone section
|
192 |
+
$section_new = $section_curd_new->create( $data );
|
193 |
+
// Clone items of section
|
194 |
+
if ( isset( $section_new['section_id'] ) ) {
|
195 |
+
$this->duplicate_section_items( $section_new['section_id'], $section_curd_new, $section_origin );
|
196 |
+
$args = compact( 'section_new', 'section_origin', 'course_id_new', 'course_origin' );
|
197 |
+
do_action( 'lp/section/clone/success', $args );
|
198 |
+
}
|
199 |
+
}
|
200 |
+
} catch ( Throwable $e ) {
|
201 |
+
error_log( $e->getMessage() );
|
202 |
+
}
|
203 |
+
}
|
204 |
+
|
205 |
+
/**
|
206 |
+
* Duplicate items of section.
|
207 |
+
*
|
208 |
+
* @param int $section_id_new
|
209 |
+
* @param LP_Section_CURD $section_curd_new
|
210 |
+
* @param array $section_origin
|
211 |
+
*
|
212 |
+
* @version 3.0.1
|
213 |
+
* @since 3.0.0
|
214 |
+
* @return void
|
215 |
+
*/
|
216 |
+
public function duplicate_section_items( int $section_id_new, LP_Section_CURD $section_curd_new, array $section_origin ) {
|
217 |
+
try {
|
218 |
+
$item_origins = $section_origin['items'] ?? array();
|
219 |
+
$new_items = array();
|
220 |
+
|
221 |
+
foreach ( $item_origins as $key => $item_origin ) {
|
222 |
+
if ( ! isset( $item_origin['type'] ) ) {
|
223 |
+
continue;
|
224 |
+
}
|
225 |
+
|
226 |
+
// Get class CURD of item.
|
227 |
+
$class_item_curd_str = ucwords( $item_origin['type'], '_' ) . '_CURD';
|
228 |
+
/**
|
229 |
+
* @var LP_Object_Data_CURD $class_item_curd_str
|
230 |
+
*/
|
231 |
+
if ( class_exists( $class_item_curd_str ) ) {
|
232 |
+
$can_clone = true;
|
233 |
+
$args = compact( 'item_origin', 'section_id_new', 'section_curd_new', 'section_origin' );
|
234 |
+
$can_clone = apply_filters( 'lp/section/item/can-clone', $can_clone, $args );
|
235 |
+
|
236 |
+
if ( ! $can_clone ) {
|
237 |
+
continue;
|
238 |
}
|
239 |
|
240 |
+
$class_item_curd = new $class_item_curd_str();
|
241 |
+
$new_item_id = $class_item_curd->duplicate(
|
242 |
+
$item_origin['id'],
|
243 |
+
array( 'post_status' => 'publish' )
|
244 |
+
);
|
245 |
+
|
246 |
+
// Prepare data to assign item to section.
|
247 |
+
$new_items[ $key ] = array(
|
248 |
+
'id' => $new_item_id,
|
249 |
+
'type' => $item_origin['type'],
|
250 |
+
'order' => $item_origin['order'],
|
251 |
+
);
|
252 |
}
|
253 |
+
|
254 |
+
// duplicate quiz
|
255 |
+
/*if ( $item_origin['type'] === LP_QUIZ_CPT ) {
|
256 |
+
$new_item_id = $quiz_curd->duplicate(
|
257 |
+
$item_origin['id'],
|
258 |
+
array( 'post_status' => 'publish' )
|
259 |
+
);
|
260 |
+
} else {
|
261 |
+
// clone item
|
262 |
+
$new_item_id = learn_press_duplicate_post(
|
263 |
+
$item_origin['id'],
|
264 |
+
array( 'post_status' => 'publish' )
|
265 |
+
);
|
266 |
+
}*/
|
267 |
+
}
|
268 |
+
|
269 |
+
// add new clone items to section
|
270 |
+
if ( ! empty( $new_items ) ) {
|
271 |
+
$section_curd_new->add_items_section( $section_id_new, $new_items );
|
272 |
}
|
273 |
+
} catch ( Throwable $e ) {
|
274 |
+
error_log( $e->getMessage() );
|
275 |
}
|
276 |
}
|
277 |
|
inc/curds/class-lp-lesson-curd.php
CHANGED
@@ -117,7 +117,7 @@ if ( ! class_exists( 'LP_Lesson_CURD' ) ) {
|
|
117 |
return new WP_Error( '3', 'Sorry! Failed to duplicate lesson!' );
|
118 |
}
|
119 |
|
120 |
-
do_action( 'learn-press/after-duplicate', $lesson_id, $new_lesson_id, $args );
|
121 |
return $new_lesson_id;
|
122 |
}
|
123 |
|
117 |
return new WP_Error( '3', 'Sorry! Failed to duplicate lesson!' );
|
118 |
}
|
119 |
|
120 |
+
do_action( 'learn-press/item/after-duplicate', $lesson_id, $new_lesson_id, $args );
|
121 |
return $new_lesson_id;
|
122 |
}
|
123 |
|
inc/curds/class-lp-question-curd.php
CHANGED
@@ -183,7 +183,7 @@ if ( ! class_exists( 'LP_Question_CURD' ) ) {
|
|
183 |
// duplicate answer
|
184 |
$this->duplicate_answer( $question_id, $new_question_id );
|
185 |
|
186 |
-
do_action( 'learn-press/after-duplicate', $question_id, $new_question_id, $args );
|
187 |
|
188 |
return $new_question_id;
|
189 |
}
|
183 |
// duplicate answer
|
184 |
$this->duplicate_answer( $question_id, $new_question_id );
|
185 |
|
186 |
+
do_action( 'learn-press/item/after-duplicate', $question_id, $new_question_id, $args );
|
187 |
|
188 |
return $new_question_id;
|
189 |
}
|
inc/curds/class-lp-quiz-curd.php
CHANGED
@@ -145,72 +145,102 @@ if ( ! function_exists( 'LP_Quiz_CURD' ) ) {
|
|
145 |
*
|
146 |
* @since 3.0.0
|
147 |
*
|
148 |
-
* @param $
|
149 |
* @param array $args
|
150 |
*
|
151 |
* @return mixed|WP_Error
|
152 |
*/
|
153 |
-
public function duplicate( &$
|
|
|
154 |
|
155 |
-
|
156 |
-
|
157 |
-
|
|
|
158 |
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
|
168 |
-
|
169 |
-
|
170 |
|
171 |
-
|
172 |
-
|
173 |
-
|
|
|
|
|
174 |
|
175 |
-
|
176 |
-
|
|
|
|
|
|
|
177 |
|
178 |
-
|
179 |
-
|
180 |
|
181 |
-
|
182 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
183 |
|
184 |
-
|
|
|
|
|
|
|
|
|
185 |
|
186 |
-
|
187 |
|
188 |
-
|
189 |
-
|
|
|
|
|
190 |
|
191 |
-
|
192 |
-
|
193 |
}
|
194 |
-
}
|
195 |
|
196 |
-
|
|
|
197 |
|
198 |
-
|
199 |
-
|
|
|
200 |
|
|
|
|
|
|
|
|
|
|
|
|
|
201 |
}
|
202 |
|
203 |
/**
|
204 |
* @param LP_Quiz $quiz
|
|
|
|
|
205 |
*/
|
206 |
-
protected function _load_questions( &$quiz ) {
|
207 |
$id = $quiz->get_id();
|
208 |
$questions = LP_Object_Cache::get( 'questions-' . $id, 'learn-press/quizzes' );
|
209 |
|
210 |
if ( false === $questions || $quiz->get_no_cache() ) {
|
211 |
$this->load_questions( $quiz->get_id() );
|
212 |
}
|
213 |
-
}
|
214 |
|
215 |
/**
|
216 |
* Read question of a quiz from database
|
@@ -533,10 +563,10 @@ if ( ! function_exists( 'LP_Quiz_CURD' ) ) {
|
|
533 |
}
|
534 |
|
535 |
// list exist quiz question
|
536 |
-
|
537 |
// add new question and set to cache
|
538 |
-
|
539 |
-
LP_Object_Cache::set( 'questions-' . $the_quiz->get_id(), $list_questions, 'learn-press/quizzes' );
|
540 |
|
541 |
global $wpdb;
|
542 |
|
145 |
*
|
146 |
* @since 3.0.0
|
147 |
*
|
148 |
+
* @param $quiz_id_origin
|
149 |
* @param array $args
|
150 |
*
|
151 |
* @return mixed|WP_Error
|
152 |
*/
|
153 |
+
public function duplicate( &$quiz_id_origin, $args = array() ) {
|
154 |
+
$quiz_id_new = 0;
|
155 |
|
156 |
+
try {
|
157 |
+
if ( ! $quiz_id_origin ) {
|
158 |
+
return new WP_Error( 'lp/clone/quiz/id_null', 'Op! Quiz ID not found' );
|
159 |
+
}
|
160 |
|
161 |
+
if ( learn_press_get_post_type( $quiz_id_origin ) != LP_QUIZ_CPT ) {
|
162 |
+
return new WP_Error( 'lp/clone/quiz/type_invalid', 'Op! The quiz does not exist' );
|
163 |
+
}
|
164 |
|
165 |
+
// Ensure that user can create quiz
|
166 |
+
if ( ! current_user_can( 'edit_posts' ) ) {
|
167 |
+
return new WP_Error( 'lp/clone/quiz/permission', 'Sorry! You have not permission to duplicate this quiz' );
|
168 |
+
}
|
169 |
|
170 |
+
// Duplicate quiz
|
171 |
+
$quiz_id_new = learn_press_duplicate_post( $quiz_id_origin, $args, true );
|
172 |
|
173 |
+
if ( ! $quiz_id_new || is_wp_error( $quiz_id_new ) ) {
|
174 |
+
return new WP_Error( 'lp/clone/quiz/clone_error', 'Sorry! Failed to duplicate quiz!' );
|
175 |
+
} else {
|
176 |
+
// duplicate questions.
|
177 |
+
$this->duplicate_questions( $quiz_id_origin, $quiz_id_new );
|
178 |
|
179 |
+
do_action( 'learn-press/item/after-duplicate', $quiz_id_origin, $quiz_id_new, $args );
|
180 |
+
}
|
181 |
+
} catch ( Throwable $e ) {
|
182 |
+
error_log( $e->getMessage() );
|
183 |
+
}
|
184 |
|
185 |
+
return $quiz_id_new;
|
186 |
+
}
|
187 |
|
188 |
+
/**
|
189 |
+
* Duplicate questions.
|
190 |
+
*
|
191 |
+
* @param int $quiz_id_origin
|
192 |
+
* @param int $quiz_id_new
|
193 |
+
*
|
194 |
+
* @return void
|
195 |
+
*/
|
196 |
+
public function duplicate_questions( int $quiz_id_origin, int $quiz_id_new ) {
|
197 |
+
$question_curd = new LP_Question_CURD();
|
198 |
|
199 |
+
try {
|
200 |
+
$quiz_origin = learn_press_get_quiz( $quiz_id_origin );
|
201 |
+
if ( ! $quiz_origin ) {
|
202 |
+
return;
|
203 |
+
}
|
204 |
|
205 |
+
$questions_origin = $quiz_origin->get_questions();
|
206 |
|
207 |
+
foreach ( $questions_origin as $question_id_origin ) {
|
208 |
+
$can_clone = true;
|
209 |
+
$args = compact( 'question_id_origin', 'quiz_origin', 'quiz_id_new' );
|
210 |
+
$can_clone = apply_filters( 'lp/quiz/question/can-clone', $can_clone, $args );
|
211 |
|
212 |
+
if ( ! $can_clone ) {
|
213 |
+
continue;
|
214 |
}
|
|
|
215 |
|
216 |
+
// duplicate question
|
217 |
+
$question_id_new = $question_curd->duplicate( $question_id_origin, array( 'post_status' => 'publish' ) );
|
218 |
|
219 |
+
if ( ! $question_id_new || is_wp_error( $question_id_new ) ) {
|
220 |
+
continue;
|
221 |
+
}
|
222 |
|
223 |
+
// add duplicate question to new quiz
|
224 |
+
$this->add_question( $quiz_id_new, $question_id_new );
|
225 |
+
}
|
226 |
+
} catch ( Throwable $e ) {
|
227 |
+
error_log( $e->getMessage() );
|
228 |
+
}
|
229 |
}
|
230 |
|
231 |
/**
|
232 |
* @param LP_Quiz $quiz
|
233 |
+
*
|
234 |
+
* @depecated 4.1.6.9.4
|
235 |
*/
|
236 |
+
/*protected function _load_questions( &$quiz ) {
|
237 |
$id = $quiz->get_id();
|
238 |
$questions = LP_Object_Cache::get( 'questions-' . $id, 'learn-press/quizzes' );
|
239 |
|
240 |
if ( false === $questions || $quiz->get_no_cache() ) {
|
241 |
$this->load_questions( $quiz->get_id() );
|
242 |
}
|
243 |
+
}*/
|
244 |
|
245 |
/**
|
246 |
* Read question of a quiz from database
|
563 |
}
|
564 |
|
565 |
// list exist quiz question
|
566 |
+
//$list_questions = $this->get_questions( $the_quiz );
|
567 |
// add new question and set to cache
|
568 |
+
//$list_questions[ $question_id ] = strval( $question_id );
|
569 |
+
//LP_Object_Cache::set( 'questions-' . $the_quiz->get_id(), $list_questions, 'learn-press/quizzes' );
|
570 |
|
571 |
global $wpdb;
|
572 |
|
inc/curds/class-lp-section-curd.php
CHANGED
@@ -27,25 +27,30 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
27 |
/**
|
28 |
* Create item and insert to database.
|
29 |
*
|
30 |
-
* @param $
|
31 |
*
|
32 |
-
* @return
|
33 |
* @since 3.0.0
|
|
|
34 |
*/
|
35 |
-
public function create( &$
|
36 |
global $wpdb;
|
37 |
$section = [];
|
38 |
|
39 |
try {
|
40 |
-
$section
|
41 |
-
|
42 |
$last_section_order_number = LP_Section_DB::getInstance()->get_last_number_order( $section['section_course_id'] );
|
43 |
-
$
|
44 |
-
$insert_data =
|
45 |
-
'
|
46 |
-
|
47 |
-
|
48 |
-
|
|
|
|
|
|
|
|
|
49 |
);
|
50 |
|
51 |
$wpdb->insert(
|
@@ -54,6 +59,8 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
54 |
array( '%d', '%s', '%d', '%s' )
|
55 |
);
|
56 |
$section['section_id'] = $wpdb->insert_id;
|
|
|
|
|
57 |
} catch ( Throwable $e ) {
|
58 |
error_log( $e->getMessage() );
|
59 |
}
|
@@ -412,12 +419,15 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
412 |
$all_items = array_merge( $current_items, $items );
|
413 |
$result = array();
|
414 |
foreach ( $all_items as $key => $item ) {
|
|
|
|
|
|
|
415 |
|
416 |
$item = (array) $item;
|
417 |
$exist = $this->item_section_exist( $section_id, $item['id'] );
|
418 |
|
419 |
if ( $exist ) {
|
420 |
-
$
|
421 |
$wpdb->learnpress_section_items,
|
422 |
array( 'item_order' => $key ),
|
423 |
array(
|
@@ -426,7 +436,7 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
426 |
)
|
427 |
);
|
428 |
} else {
|
429 |
-
$
|
430 |
$wpdb->learnpress_section_items,
|
431 |
array(
|
432 |
'section_id' => $section_id,
|
@@ -438,6 +448,10 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
438 |
}
|
439 |
// get WP Post
|
440 |
$post = get_post( $item['id'] );
|
|
|
|
|
|
|
|
|
441 |
$item = array_merge(
|
442 |
$item,
|
443 |
array(
|
@@ -455,14 +469,56 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
455 |
}
|
456 |
|
457 |
$result[] = $item;
|
458 |
-
// $order ++;
|
459 |
}
|
460 |
|
461 |
-
// LP_Object_Cache::set( 'course-' . $this->course_id . '-' . $section_id, $all_items, 'learn-press/course-section-items' );
|
462 |
-
|
463 |
return $result;
|
464 |
}
|
465 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
466 |
/**
|
467 |
* Check item was been added to any section.
|
468 |
*
|
@@ -588,9 +644,8 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
588 |
* @since 3.0.0
|
589 |
*/
|
590 |
public function update_section_items( $section_id, $items ) {
|
591 |
-
$current_items = $this->get_section_items( $section_id );
|
592 |
-
|
593 |
global $wpdb;
|
|
|
594 |
|
595 |
foreach ( $items as $index => $item ) {
|
596 |
$order = $index + 1;
|
@@ -621,7 +676,7 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
621 |
/**
|
622 |
* Remove non-existent items.
|
623 |
*/
|
624 |
-
foreach ( $current_items as $item ) {
|
625 |
$find = $this->check_item_exist( $items, $item['id'] );
|
626 |
|
627 |
if ( ! $find ) {
|
@@ -633,7 +688,7 @@ class LP_Section_CURD extends LP_Object_Data_CURD implements LP_Interface_CURD {
|
|
633 |
)
|
634 |
);
|
635 |
}
|
636 |
-
}
|
637 |
|
638 |
return $items;
|
639 |
}
|
27 |
/**
|
28 |
* Create item and insert to database.
|
29 |
*
|
30 |
+
* @param $section_origin array
|
31 |
*
|
32 |
+
* @return array
|
33 |
* @since 3.0.0
|
34 |
+
* @version 3.0.1
|
35 |
*/
|
36 |
+
public function create( &$section_origin ) {
|
37 |
global $wpdb;
|
38 |
$section = [];
|
39 |
|
40 |
try {
|
41 |
+
$section = $this->parse( $section_origin );
|
42 |
+
//$section = stripslashes_deep( $section );
|
43 |
$last_section_order_number = LP_Section_DB::getInstance()->get_last_number_order( $section['section_course_id'] );
|
44 |
+
$section_order_new = $last_section_order_number + 1;
|
45 |
+
$insert_data = apply_filters(
|
46 |
+
'lp/section/data-insert',
|
47 |
+
array(
|
48 |
+
'section_course_id' => $this->course_id,
|
49 |
+
'section_name' => $section['section_name'],
|
50 |
+
'section_order' => $section_order_new,
|
51 |
+
'section_description' => $section['section_description'],
|
52 |
+
),
|
53 |
+
$section_origin
|
54 |
);
|
55 |
|
56 |
$wpdb->insert(
|
59 |
array( '%d', '%s', '%d', '%s' )
|
60 |
);
|
61 |
$section['section_id'] = $wpdb->insert_id;
|
62 |
+
|
63 |
+
do_action( 'lp/section/created', $section );
|
64 |
} catch ( Throwable $e ) {
|
65 |
error_log( $e->getMessage() );
|
66 |
}
|
419 |
$all_items = array_merge( $current_items, $items );
|
420 |
$result = array();
|
421 |
foreach ( $all_items as $key => $item ) {
|
422 |
+
if ( ! isset( $item['id'] ) || ! isset( $item['type'] ) ) {
|
423 |
+
continue;
|
424 |
+
}
|
425 |
|
426 |
$item = (array) $item;
|
427 |
$exist = $this->item_section_exist( $section_id, $item['id'] );
|
428 |
|
429 |
if ( $exist ) {
|
430 |
+
$wpdb->update(
|
431 |
$wpdb->learnpress_section_items,
|
432 |
array( 'item_order' => $key ),
|
433 |
array(
|
436 |
)
|
437 |
);
|
438 |
} else {
|
439 |
+
$wpdb->insert(
|
440 |
$wpdb->learnpress_section_items,
|
441 |
array(
|
442 |
'section_id' => $section_id,
|
448 |
}
|
449 |
// get WP Post
|
450 |
$post = get_post( $item['id'] );
|
451 |
+
if ( ! $post ) {
|
452 |
+
continue;
|
453 |
+
}
|
454 |
+
|
455 |
$item = array_merge(
|
456 |
$item,
|
457 |
array(
|
469 |
}
|
470 |
|
471 |
$result[] = $item;
|
|
|
472 |
}
|
473 |
|
|
|
|
|
474 |
return $result;
|
475 |
}
|
476 |
|
477 |
+
/**
|
478 |
+
* Add item to section.
|
479 |
+
*
|
480 |
+
* @param $section_id
|
481 |
+
* @param $item
|
482 |
+
*
|
483 |
+
* @return void
|
484 |
+
* @version 1.0.0
|
485 |
+
* @since 4.1.6.9.4
|
486 |
+
*/
|
487 |
+
public function assign_item_section( $section_id, $item = array() ) {
|
488 |
+
global $wpdb;
|
489 |
+
|
490 |
+
if ( ! isset( $item['item_id'] ) && ! isset( $item['item_type'] ) ) {
|
491 |
+
return;
|
492 |
+
}
|
493 |
+
|
494 |
+
try {
|
495 |
+
$exist = $this->item_section_exist( $section_id, $item['item_id'] );
|
496 |
+
|
497 |
+
if ( $exist ) {
|
498 |
+
$wpdb->update(
|
499 |
+
$wpdb->learnpress_section_items,
|
500 |
+
array( 'item_order' => $item['item_order'] ?? 0 ),
|
501 |
+
array(
|
502 |
+
'section_id' => $section_id,
|
503 |
+
'item_id' => $item['item_id'],
|
504 |
+
)
|
505 |
+
);
|
506 |
+
} else {
|
507 |
+
$wpdb->insert(
|
508 |
+
$wpdb->learnpress_section_items,
|
509 |
+
array(
|
510 |
+
'section_id' => $section_id,
|
511 |
+
'item_id' => $item['item_id'],
|
512 |
+
'item_order' => $item['item_order'] ?? 0,
|
513 |
+
'item_type' => $item['item_type'],
|
514 |
+
)
|
515 |
+
);
|
516 |
+
}
|
517 |
+
} catch ( Throwable $e ) {
|
518 |
+
return $e->getMessage();
|
519 |
+
}
|
520 |
+
}
|
521 |
+
|
522 |
/**
|
523 |
* Check item was been added to any section.
|
524 |
*
|
644 |
* @since 3.0.0
|
645 |
*/
|
646 |
public function update_section_items( $section_id, $items ) {
|
|
|
|
|
647 |
global $wpdb;
|
648 |
+
$current_items = $this->get_section_items( $section_id );
|
649 |
|
650 |
foreach ( $items as $index => $item ) {
|
651 |
$order = $index + 1;
|
676 |
/**
|
677 |
* Remove non-existent items.
|
678 |
*/
|
679 |
+
/*foreach ( $current_items as $item ) {
|
680 |
$find = $this->check_item_exist( $items, $item['id'] );
|
681 |
|
682 |
if ( ! $find ) {
|
688 |
)
|
689 |
);
|
690 |
}
|
691 |
+
}*/
|
692 |
|
693 |
return $items;
|
694 |
}
|
inc/custom-post-types/course.php
CHANGED
@@ -445,67 +445,6 @@ if ( ! class_exists( 'LP_Course_Post_Type' ) ) {
|
|
445 |
|
446 |
}
|
447 |
|
448 |
-
/**
|
449 |
-
* Update course price and sale price
|
450 |
-
*
|
451 |
-
* @editor tungnx
|
452 |
-
* @since modify 4.0.9
|
453 |
-
* @reason this function of LP old, LP4 no need.
|
454 |
-
*/
|
455 |
-
/*
|
456 |
-
private function _update_price( WP_Post $post ) {
|
457 |
-
global $wpdb;
|
458 |
-
|
459 |
-
$request = $_POST;
|
460 |
-
$price = floatval( LP_Request::get( '_lp_price' ) );
|
461 |
-
$sale_price = LP_Request::get( '_lp_sale_price' );
|
462 |
-
$sale_price_start = LP_Request::get( '_lp_sale_start' );
|
463 |
-
$sale_price_end = LP_Request::get( '_lp_sale_end' );
|
464 |
-
$keys = array();
|
465 |
-
|
466 |
-
if ( $price <= 0 ) {
|
467 |
-
$keys = array( '_lp_payment', '_lp_price', '_lp_sale_price', '_lp_sale_start', '_lp_sale_end' );
|
468 |
-
} elseif ( ( $sale_price == '' ) || ( $sale_price < 0 ) || ( absint( $sale_price ) >= $price ) || ! $this->_validate_sale_price_date() ) {
|
469 |
-
$keys = array( '_lp_sale_price', '_lp_sale_start', '_lp_sale_end' );
|
470 |
-
}
|
471 |
-
|
472 |
-
if ( $keys ) {
|
473 |
-
$format = array_fill( 0, sizeof( $keys ), '%s' );
|
474 |
-
$sql = "
|
475 |
-
DELETE
|
476 |
-
FROM {$wpdb->postmeta}
|
477 |
-
WHERE meta_key IN(" . join( ',', $format ) . ')
|
478 |
-
AND post_id = %d
|
479 |
-
';
|
480 |
-
$keys[] = $post->ID;
|
481 |
-
$sql = $wpdb->prepare( $sql, $keys );
|
482 |
-
$wpdb->query( $sql );
|
483 |
-
|
484 |
-
foreach ( $keys as $key ) {
|
485 |
-
unset( $_REQUEST[ $key ] );
|
486 |
-
unset( $_POST[ $key ] );
|
487 |
-
}
|
488 |
-
}
|
489 |
-
}*/
|
490 |
-
|
491 |
-
/**
|
492 |
-
* Check sale price dates are in range
|
493 |
-
*
|
494 |
-
* @editor tungnx
|
495 |
-
* @reason not use
|
496 |
-
* @return bool
|
497 |
-
*/
|
498 |
-
/*
|
499 |
-
private function _validate_sale_price_date() {
|
500 |
-
$now = current_time( 'timestamp' );
|
501 |
-
$sale_price_start = learn_press_get_request( '_lp_sale_start' );
|
502 |
-
$sale_price_end = learn_press_get_request( '_lp_sale_end' );
|
503 |
-
$end = strtotime( $sale_price_end );
|
504 |
-
$start = strtotime( $sale_price_start );
|
505 |
-
|
506 |
-
return ( ( $sale_price_start ) && ( $now <= $end || ! $sale_price_end ) || ( ! $sale_price_start && ! $sale_price_end ) );
|
507 |
-
}*/
|
508 |
-
|
509 |
/**
|
510 |
* Add columns to admin manage course page
|
511 |
*
|
445 |
|
446 |
}
|
447 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
448 |
/**
|
449 |
* Add columns to admin manage course page
|
450 |
*
|
inc/custom-post-types/order.php
CHANGED
@@ -329,7 +329,7 @@ if ( ! class_exists( 'LP_Order_Post_Type' ) ) {
|
|
329 |
* @param WP_Post $post
|
330 |
* @throws Exception
|
331 |
* @editor tungnx
|
332 |
-
* @version 1.0.
|
333 |
*/
|
334 |
public function save( int $post_id, WP_Post $post ) {
|
335 |
global $action;
|
@@ -354,7 +354,11 @@ if ( ! class_exists( 'LP_Order_Post_Type' ) ) {
|
|
354 |
$order->set_user_id( $user_id );
|
355 |
}
|
356 |
|
357 |
-
$
|
|
|
|
|
|
|
|
|
358 |
$order->save();
|
359 |
}
|
360 |
}
|
329 |
* @param WP_Post $post
|
330 |
* @throws Exception
|
331 |
* @editor tungnx
|
332 |
+
* @version 1.0.2
|
333 |
*/
|
334 |
public function save( int $post_id, WP_Post $post ) {
|
335 |
global $action;
|
354 |
$order->set_user_id( $user_id );
|
355 |
}
|
356 |
|
357 |
+
$status = LP_Helper::sanitize_params_submitted( $_POST['order-status'] ?? '' );
|
358 |
+
if ( $status ) {
|
359 |
+
$order->set_status( learn_press_get_request( 'order-status' ) );
|
360 |
+
}
|
361 |
+
|
362 |
$order->save();
|
363 |
}
|
364 |
}
|
inc/databases/class-lp-db.php
CHANGED
@@ -627,20 +627,27 @@ class LP_Database {
|
|
627 |
|
628 |
// Limit
|
629 |
$LIMIT = '';
|
630 |
-
if (
|
631 |
$filter->limit = absint( $filter->limit );
|
632 |
-
if ( $filter->limit > $filter->max_limit ) {
|
633 |
$filter->limit = $filter->max_limit;
|
634 |
-
}
|
635 |
$offset = $filter->limit * ( $filter->page - 1 );
|
636 |
$LIMIT = $this->wpdb->prepare( 'LIMIT %d, %d', $offset, $filter->limit );
|
637 |
}
|
638 |
|
|
|
|
|
|
|
|
|
|
|
|
|
639 |
$COLLECTION = '';
|
640 |
if ( ! empty( $filter->collection ) ) {
|
641 |
$COLLECTION = $filter->collection;
|
642 |
}
|
643 |
|
|
|
644 |
$ALIAS_COLLECTION = 'X';
|
645 |
if ( ! empty( $filter->collection_alias ) ) {
|
646 |
$ALIAS_COLLECTION = $filter->collection_alias;
|
@@ -665,6 +672,11 @@ class LP_Database {
|
|
665 |
}
|
666 |
|
667 |
if ( ! $filter->query_count ) {
|
|
|
|
|
|
|
|
|
|
|
668 |
$result = $this->wpdb->get_results( $query );
|
669 |
}
|
670 |
|
@@ -676,12 +688,79 @@ class LP_Database {
|
|
676 |
$this->check_execute_has_error();
|
677 |
|
678 |
if ( $filter->query_count ) {
|
|
|
|
|
|
|
|
|
|
|
679 |
return $total_rows;
|
680 |
}
|
681 |
|
682 |
return $result;
|
683 |
}
|
684 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
685 |
/**
|
686 |
* Get values of list object by key
|
687 |
*
|
627 |
|
628 |
// Limit
|
629 |
$LIMIT = '';
|
630 |
+
if ( $filter->limit != -1 ) {
|
631 |
$filter->limit = absint( $filter->limit );
|
632 |
+
/*if ( $filter->limit > $filter->max_limit ) {
|
633 |
$filter->limit = $filter->max_limit;
|
634 |
+
}*/
|
635 |
$offset = $filter->limit * ( $filter->page - 1 );
|
636 |
$LIMIT = $this->wpdb->prepare( 'LIMIT %d, %d', $offset, $filter->limit );
|
637 |
}
|
638 |
|
639 |
+
// For nest query
|
640 |
+
if ( $filter->return_string_query ) {
|
641 |
+
$LIMIT = '';
|
642 |
+
}
|
643 |
+
|
644 |
+
// From table or group select
|
645 |
$COLLECTION = '';
|
646 |
if ( ! empty( $filter->collection ) ) {
|
647 |
$COLLECTION = $filter->collection;
|
648 |
}
|
649 |
|
650 |
+
// Alias table
|
651 |
$ALIAS_COLLECTION = 'X';
|
652 |
if ( ! empty( $filter->collection_alias ) ) {
|
653 |
$ALIAS_COLLECTION = $filter->collection_alias;
|
672 |
}
|
673 |
|
674 |
if ( ! $filter->query_count ) {
|
675 |
+
// Debug string query
|
676 |
+
if ( $filter->debug_string_query ) {
|
677 |
+
return $query;
|
678 |
+
}
|
679 |
+
|
680 |
$result = $this->wpdb->get_results( $query );
|
681 |
}
|
682 |
|
688 |
$this->check_execute_has_error();
|
689 |
|
690 |
if ( $filter->query_count ) {
|
691 |
+
// Debug string query
|
692 |
+
if ( $filter->debug_string_query ) {
|
693 |
+
return $query_total;
|
694 |
+
}
|
695 |
+
|
696 |
return $total_rows;
|
697 |
}
|
698 |
|
699 |
return $result;
|
700 |
}
|
701 |
|
702 |
+
/**
|
703 |
+
* Query update
|
704 |
+
*
|
705 |
+
* @throws Exception
|
706 |
+
* @since 4.1.6.9.4
|
707 |
+
* @version 1.0.0
|
708 |
+
*/
|
709 |
+
public function update_execute( LP_Filter $filter ) {
|
710 |
+
|
711 |
+
$COLLECTION = $filter->collection;
|
712 |
+
|
713 |
+
// SET value
|
714 |
+
$SET = apply_filters( 'lp/query/set', $filter->set, $filter );
|
715 |
+
$SET = implode( ' ', array_unique( $SET ) );
|
716 |
+
|
717 |
+
// Where
|
718 |
+
$WHERE = array( 'WHERE 1=1' );
|
719 |
+
$WHERE = array_merge( $WHERE, $filter->where );
|
720 |
+
$WHERE = apply_filters( 'lp/query/where', $WHERE, $filter );
|
721 |
+
$WHERE = implode( ' ', array_unique( $WHERE ) );
|
722 |
+
|
723 |
+
$query = "
|
724 |
+
UPDATE $COLLECTION
|
725 |
+
SET $SET
|
726 |
+
$WHERE
|
727 |
+
";
|
728 |
+
|
729 |
+
$result = $this->wpdb->query( $query );
|
730 |
+
|
731 |
+
$this->check_execute_has_error();
|
732 |
+
|
733 |
+
return $result;
|
734 |
+
}
|
735 |
+
|
736 |
+
/**
|
737 |
+
* Query delete
|
738 |
+
*
|
739 |
+
* @throws Exception
|
740 |
+
* @since 4.1.6.9.4
|
741 |
+
* @version 1.0.0
|
742 |
+
*/
|
743 |
+
public function delete_execute( LP_Filter $filter ) {
|
744 |
+
$COLLECTION = $filter->collection;
|
745 |
+
|
746 |
+
// Where
|
747 |
+
$WHERE = array( 'WHERE 1=1' );
|
748 |
+
$WHERE = array_merge( $WHERE, $filter->where );
|
749 |
+
$WHERE = apply_filters( 'lp/query/where', $WHERE, $filter );
|
750 |
+
$WHERE = implode( ' ', array_unique( $WHERE ) );
|
751 |
+
|
752 |
+
$query = "
|
753 |
+
DELETE FROM $COLLECTION
|
754 |
+
$WHERE
|
755 |
+
";
|
756 |
+
|
757 |
+
$result = $this->wpdb->query( $query );
|
758 |
+
|
759 |
+
$this->check_execute_has_error();
|
760 |
+
|
761 |
+
return $result;
|
762 |
+
}
|
763 |
+
|
764 |
/**
|
765 |
* Get values of list object by key
|
766 |
*
|
inc/databases/class-lp-section-items-db.php
CHANGED
@@ -45,6 +45,47 @@ class LP_Section_Items_DB extends LP_Database {
|
|
45 |
|
46 |
return $this->execute( $filter );
|
47 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
}
|
49 |
|
50 |
LP_Section_DB::getInstance();
|
45 |
|
46 |
return $this->execute( $filter );
|
47 |
}
|
48 |
+
|
49 |
+
/**
|
50 |
+
* Update table
|
51 |
+
*
|
52 |
+
* @throws Exception
|
53 |
+
*/
|
54 |
+
public function update( LP_Section_Items_Filter $filter ) {
|
55 |
+
$filter->collection = $this->tb_lp_section_items;
|
56 |
+
$this->update_execute( $filter );
|
57 |
+
}
|
58 |
+
|
59 |
+
/**
|
60 |
+
* Delete items on section
|
61 |
+
*
|
62 |
+
* @param LP_Section_Items_Filter $filter
|
63 |
+
*
|
64 |
+
* @return bool|int|mysqli_result|resource|null
|
65 |
+
* @throws Exception
|
66 |
+
*/
|
67 |
+
public function delete_items_by_section_id( LP_Section_Items_Filter $filter ) {
|
68 |
+
if ( empty( $filter->item_ids ) ) {
|
69 |
+
return 1;
|
70 |
+
}
|
71 |
+
|
72 |
+
$where = 'WHERE 1=1 ';
|
73 |
+
|
74 |
+
$where .= $this->wpdb->prepare(
|
75 |
+
'AND item_id IN(' . LP_Helper::db_format_array( $filter->item_ids, '%d' ) . ')',
|
76 |
+
$filter->item_ids
|
77 |
+
);
|
78 |
+
|
79 |
+
$result = $this->wpdb->query(
|
80 |
+
"DELETE FROM $this->tb_lp_section_items
|
81 |
+
$where
|
82 |
+
"
|
83 |
+
);
|
84 |
+
|
85 |
+
$this->check_execute_has_error();
|
86 |
+
|
87 |
+
return $result;
|
88 |
+
}
|
89 |
}
|
90 |
|
91 |
LP_Section_DB::getInstance();
|
inc/emails/types/class-lp-email-type-finished-course.php
CHANGED
@@ -132,7 +132,7 @@ class LP_Email_Type_Finished_Course extends LP_Email {
|
|
132 |
'{{user_name}}' => $user->get_username(),
|
133 |
'{{user_display_name}}' => $user->get_display_name(),
|
134 |
'{{user_email}}' => $user->get_email(),
|
135 |
-
'{{course_grade}}' => $user_course_data->
|
136 |
'{{course_result_percent}}' => $user_course_data->get_percent_result( 2 ),
|
137 |
]
|
138 |
);
|
132 |
'{{user_name}}' => $user->get_username(),
|
133 |
'{{user_display_name}}' => $user->get_display_name(),
|
134 |
'{{user_email}}' => $user->get_email(),
|
135 |
+
'{{course_grade}}' => $user_course_data->get_graduation( 'display' ),
|
136 |
'{{course_result_percent}}' => $user_course_data->get_percent_result( 2 ),
|
137 |
]
|
138 |
);
|
inc/external-plugin/elementor/widgets/register-form.php
CHANGED
@@ -1,6 +1,8 @@
|
|
1 |
<?php
|
2 |
namespace Elementor;
|
3 |
|
|
|
|
|
4 |
class LP_Elementor_Widget_Register_Form extends LP_Elementor_Widget_Base {
|
5 |
|
6 |
public function get_name() {
|
@@ -27,7 +29,7 @@ class LP_Elementor_Widget_Register_Form extends LP_Elementor_Widget_Base {
|
|
27 |
}
|
28 |
|
29 |
public function render() {
|
30 |
-
if ( 'yes' !== LP_Settings::
|
31 |
learn_press_display_message( __( 'Register form is disabled', 'learnpress' ), 'error' );
|
32 |
}
|
33 |
|
1 |
<?php
|
2 |
namespace Elementor;
|
3 |
|
4 |
+
use LP_Settings;
|
5 |
+
|
6 |
class LP_Elementor_Widget_Register_Form extends LP_Elementor_Widget_Base {
|
7 |
|
8 |
public function get_name() {
|
29 |
}
|
30 |
|
31 |
public function render() {
|
32 |
+
if ( 'yes' !== LP_Settings::get_option( 'enable_register_profile', 'no' ) ) {
|
33 |
learn_press_display_message( __( 'Register form is disabled', 'learnpress' ), 'error' );
|
34 |
}
|
35 |
|
inc/external-plugin/polylang/class-lp-polylang.php
CHANGED
@@ -78,7 +78,7 @@ class LP_Polylang {
|
|
78 |
* @return LP_Course_Filter
|
79 |
*/
|
80 |
public function filter_query_courses( LP_Course_Filter $filter ): LP_Course_Filter {
|
81 |
-
$pll_current_lang = $_REQUEST['pll-current-lang'] ?? '';
|
82 |
|
83 |
if ( empty( $pll_current_lang ) ) {
|
84 |
return $filter;
|
@@ -101,7 +101,7 @@ class LP_Polylang {
|
|
101 |
* @return LP_User_Items_Filter
|
102 |
*/
|
103 |
public function filter_query_user_courses( LP_User_Items_Filter $filter ): LP_User_Items_Filter {
|
104 |
-
$pll_current_lang = $_REQUEST['pll-current-lang'] ?? '';
|
105 |
|
106 |
if ( empty( $pll_current_lang ) ) {
|
107 |
return $filter;
|
78 |
* @return LP_Course_Filter
|
79 |
*/
|
80 |
public function filter_query_courses( LP_Course_Filter $filter ): LP_Course_Filter {
|
81 |
+
$pll_current_lang = LP_Helper::sanitize_params_submitted( $_REQUEST['pll-current-lang'] ?? '' );
|
82 |
|
83 |
if ( empty( $pll_current_lang ) ) {
|
84 |
return $filter;
|
101 |
* @return LP_User_Items_Filter
|
102 |
*/
|
103 |
public function filter_query_user_courses( LP_User_Items_Filter $filter ): LP_User_Items_Filter {
|
104 |
+
$pll_current_lang = LP_Helper::sanitize_params_submitted( $_REQUEST['pll-current-lang'] ?? '' );
|
105 |
|
106 |
if ( empty( $pll_current_lang ) ) {
|
107 |
return $filter;
|
inc/filters/class-lp-filter.php
CHANGED
@@ -14,7 +14,7 @@ defined( 'ABSPATH' ) || exit();
|
|
14 |
|
15 |
class LP_Filter {
|
16 |
/**
|
17 |
-
* @var int
|
18 |
*/
|
19 |
public $limit = 10;
|
20 |
/**
|
@@ -77,6 +77,10 @@ class LP_Filter {
|
|
77 |
* @var array
|
78 |
*/
|
79 |
public $exclude_fields = array();
|
|
|
|
|
|
|
|
|
80 |
/**
|
81 |
* @var array
|
82 |
*/
|
@@ -101,6 +105,10 @@ class LP_Filter {
|
|
101 |
* @var bool set true to return string query
|
102 |
*/
|
103 |
public $return_string_query = false;
|
|
|
|
|
|
|
|
|
104 |
/**
|
105 |
* @var string
|
106 |
*/
|
14 |
|
15 |
class LP_Filter {
|
16 |
/**
|
17 |
+
* @var int set -1 for no limit
|
18 |
*/
|
19 |
public $limit = 10;
|
20 |
/**
|
77 |
* @var array
|
78 |
*/
|
79 |
public $exclude_fields = array();
|
80 |
+
/**
|
81 |
+
* @var array for purpose run query update.
|
82 |
+
*/
|
83 |
+
public $set = array();
|
84 |
/**
|
85 |
* @var array
|
86 |
*/
|
105 |
* @var bool set true to return string query
|
106 |
*/
|
107 |
public $return_string_query = false;
|
108 |
+
/**
|
109 |
+
* @var string return string query to debug
|
110 |
+
*/
|
111 |
+
public $debug_string_query = '';
|
112 |
/**
|
113 |
* @var string
|
114 |
*/
|
inc/gateways/class-lp-gateway-abstract.php
CHANGED
@@ -149,11 +149,11 @@ class LP_Gateway_Abstract extends LP_Abstract_Settings {
|
|
149 |
/**
|
150 |
* Process the payment.
|
151 |
*
|
152 |
-
* @param $
|
153 |
*
|
154 |
* @return array
|
155 |
*/
|
156 |
-
public function process_payment( $
|
157 |
return array();
|
158 |
}
|
159 |
|
149 |
/**
|
150 |
* Process the payment.
|
151 |
*
|
152 |
+
* @param $order_id
|
153 |
*
|
154 |
* @return array
|
155 |
*/
|
156 |
+
public function process_payment( $order_id ) {
|
157 |
return array();
|
158 |
}
|
159 |
|
inc/gateways/offline-payment/class-lp-gateway-offline-payment.php
CHANGED
@@ -70,7 +70,7 @@ if ( ! function_exists( 'LP_Gateway_Offline_Payment' ) ) {
|
|
70 |
* @return bool
|
71 |
*/
|
72 |
public function offline_payment_available(): bool {
|
73 |
-
return LP_Settings::instance()->get( "{$this->id}.enable" ) === 'yes';
|
74 |
}
|
75 |
|
76 |
/**
|
70 |
* @return bool
|
71 |
*/
|
72 |
public function offline_payment_available(): bool {
|
73 |
+
return LP_Settings::instance()->get( "{$this->id}.enable", 'no' ) === 'yes';
|
74 |
}
|
75 |
|
76 |
/**
|
inc/gateways/paypal/class-lp-gateway-paypal-basic.php
DELETED
@@ -1,47 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
die( __FILE__ );
|
3 |
-
class LP_Gateway_Paypal_Basic extends LP_Gateway_Paypal {
|
4 |
-
public function get_request_url( $order_id ) {
|
5 |
-
|
6 |
-
$user = learn_press_get_current_user();
|
7 |
-
|
8 |
-
$nonce = wp_create_nonce( 'learn-press-paypal-nonce' );
|
9 |
-
$order = new LP_Order( $order_id );
|
10 |
-
$custom = array(
|
11 |
-
'order_id' => $order_id,
|
12 |
-
'order_key' => $order->order_key,
|
13 |
-
);
|
14 |
-
|
15 |
-
$query = array(
|
16 |
-
'cmd' => '_xclick',
|
17 |
-
'amount' => learn_press_get_cart_total(),
|
18 |
-
'quantity' => '1',
|
19 |
-
'business' => $this->paypal_email,
|
20 |
-
'item_name' => learn_press_get_cart_description(),
|
21 |
-
'return' => esc_url_raw(
|
22 |
-
add_query_arg(
|
23 |
-
array(
|
24 |
-
'learn-press-transaction-method' => 'paypal-standard',
|
25 |
-
'paypal-nonce' => $nonce,
|
26 |
-
)
|
27 |
-
),
|
28 |
-
learn_press_get_cart_course_url()
|
29 |
-
),
|
30 |
-
'currency_code' => learn_press_get_currency(),
|
31 |
-
'notify_url' => get_home_url() /* SITE_URL */ . '/?' . learn_press_get_web_hook( 'paypal-standard' ) . '=1',
|
32 |
-
'no_note' => '1',
|
33 |
-
'shipping' => '0',
|
34 |
-
'email' => $user->user_email,
|
35 |
-
'rm' => '2',
|
36 |
-
'cancel_return' => learn_press_get_cart_course_url(),
|
37 |
-
'custom' => json_encode( $custom ),
|
38 |
-
'no_shipping' => '1',
|
39 |
-
);
|
40 |
-
|
41 |
-
$query = apply_filters( 'learn_press_paypal_standard_query', $query );
|
42 |
-
|
43 |
-
$paypal_payment_url = $this->paypal_url . '?' . http_build_query( $query );
|
44 |
-
|
45 |
-
return $paypal_payment_url;
|
46 |
-
}
|
47 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/gateways/paypal/class-lp-gateway-paypal-security.php
DELETED
@@ -1,105 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
die( __FILE__ );
|
3 |
-
|
4 |
-
class LP_Gateway_Paypal_Security extends LP_Gateway_Paypal {
|
5 |
-
public function get_request_url( $order_id ) {
|
6 |
-
$user = learn_press_get_current_user();
|
7 |
-
$sandbox = LP_Settings::instance()->get( 'paypal_sandbox' ) == 'yes';
|
8 |
-
|
9 |
-
$payment_form = '';
|
10 |
-
|
11 |
-
$paypal_api_url = $sandbox ? $this->paypal_nvp_api_sandbox_url : $this->paypal_nvp_api_live_url;// PAYPAL_NVP_API_SANDBOX_URL : PAYPAL_NVP_API_LIVE_URL;
|
12 |
-
$paypal_payment_url = $sandbox ? $this->paypal_payment_sandbox_url : $this->paypal_payment_sandbox_url;//'https://www.sandbox.paypal.com/cgi-bin/webscr' : 'https://www.paypal.com/cgi-bin/webscr';
|
13 |
-
|
14 |
-
$paypal_email = $sandbox ? LP_Settings::instance()->get( 'paypal_sandbox_email' ) : LP_Settings::instance()->get( 'paypal_email' );
|
15 |
-
$paypal_api_username = $sandbox ? LP_Settings::instance()->get( 'paypal_sandbox_api_username' ) : LP_Settings::instance()->get( 'paypal_api_username' );
|
16 |
-
$paypal_api_password = $sandbox ? LP_Settings::instance()->get( 'paypal_sandbox_api_password' ) : LP_Settings::instance()->get( 'paypal_api_password' );
|
17 |
-
$paypal_api_signature = $sandbox ? LP_Settings::instance()->get( 'paypal_sandbox_api_signature' ) : LP_Settings::instance()->get( 'paypal_api_signature' );
|
18 |
-
|
19 |
-
if ( ! empty( $paypal_email )
|
20 |
-
&& ! empty( $paypal_api_username )
|
21 |
-
&& ! empty( $paypal_api_password )
|
22 |
-
&& ! empty( $paypal_api_signature )
|
23 |
-
) {
|
24 |
-
|
25 |
-
remove_filter( 'the_title', 'wptexturize' ); // remove this because it screws up the product titles in PayPal
|
26 |
-
$temp_id = learn_press_uniqid();
|
27 |
-
|
28 |
-
$button_request = array(
|
29 |
-
'USER' => trim( $paypal_api_username ),
|
30 |
-
'PWD' => trim( $paypal_api_password ),
|
31 |
-
'SIGNATURE' => trim( $paypal_api_signature ),
|
32 |
-
'VERSION' => '96.0', //The PayPal API version
|
33 |
-
'METHOD' => 'BMCreateButton',
|
34 |
-
'BUTTONCODE' => 'ENCRYPTED',
|
35 |
-
'BUTTONIMAGE' => 'REG',
|
36 |
-
'BUYNOWTEXT' => 'PAYNOW',
|
37 |
-
);
|
38 |
-
$button_request['BUTTONTYPE'] = 'BUYNOW';
|
39 |
-
//$L_BUTTONVARS[] = 'amount=' . learn_press_get_cart_total();
|
40 |
-
//$L_BUTTONVARS[] = 'quantity=1';
|
41 |
-
$nonce = wp_create_nonce( 'learn-press-paypal-nonce' );
|
42 |
-
|
43 |
-
$L_BUTTONVARS[] = 'business=' . $paypal_email;
|
44 |
-
//$L_BUTTONVARS[] = 'item_name=' . learn_press_get_cart_description();
|
45 |
-
$L_BUTTONVARS[] = 'return=' . esc_url_raw(
|
46 |
-
add_query_arg(
|
47 |
-
array(
|
48 |
-
'learn-press-transaction-method' => 'paypal-standard-secure',
|
49 |
-
'paypal-nonce' => $nonce,
|
50 |
-
),
|
51 |
-
learn_press_get_cart_course_url()
|
52 |
-
)
|
53 |
-
);
|
54 |
-
$L_BUTTONVARS[] = 'currency_code=' . learn_press_get_currency();//$general_settings['default-currency'];
|
55 |
-
$L_BUTTONVARS[] = 'notify_url=' . learn_press_get_web_hook( 'paypal-standard-secure' );
|
56 |
-
$L_BUTTONVARS[] = 'no_note=1';
|
57 |
-
$L_BUTTONVARS[] = 'shipping=0';
|
58 |
-
$L_BUTTONVARS[] = 'email=' . $user->user_email;
|
59 |
-
$L_BUTTONVARS[] = 'rm=2'; //Return Method - https://developer.paypal.com/webapps/developer/docs/classic/button-manager/integration-guide/ButtonManagerHTMLVariables/
|
60 |
-
$L_BUTTONVARS[] = 'cancel_return=' . learn_press_get_cart_course_url();
|
61 |
-
$L_BUTTONVARS[] = 'custom=' . $temp_id;
|
62 |
-
$L_BUTTONVARS[] = 'no_shipping=1';
|
63 |
-
|
64 |
-
foreach ( $this->get_item_lines() as $k => $v ) {
|
65 |
-
$L_BUTTONVARS[] = "{$k}={$v}";
|
66 |
-
}
|
67 |
-
$L_BUTTONVARS = apply_filters( 'learn_press_paypal_standard_secure_button_vars', $L_BUTTONVARS );
|
68 |
-
$count = 0;
|
69 |
-
foreach ( $L_BUTTONVARS as $L_BUTTONVAR ) {
|
70 |
-
$button_request[ 'L_BUTTONVAR' . $count ] = $L_BUTTONVAR;
|
71 |
-
$count ++;
|
72 |
-
}
|
73 |
-
|
74 |
-
$button_request = apply_filters( 'learn_press_paypal_standard_secure_button_request', $button_request );
|
75 |
-
|
76 |
-
$response = wp_remote_post( $paypal_api_url, array( 'body' => $button_request ) );
|
77 |
-
|
78 |
-
if ( ! is_wp_error( $response ) ) {
|
79 |
-
parse_str( wp_remote_retrieve_body( $response ), $response_array );
|
80 |
-
if ( ! empty( $response_array['ACK'] ) && 'Success' === $response_array['ACK'] ) {
|
81 |
-
if ( ! empty( $response_array['WEBSITECODE'] ) ) {
|
82 |
-
$payment_form = str_replace( array( "\r\n", "\r", "\n" ), '', stripslashes( $response_array['WEBSITECODE'] ) );
|
83 |
-
}
|
84 |
-
}
|
85 |
-
} else {
|
86 |
-
print_r( $response );
|
87 |
-
}
|
88 |
-
|
89 |
-
if ( preg_match( '/-----BEGIN PKCS7-----.*-----END PKCS7-----/i', $payment_form, $matches ) ) {
|
90 |
-
|
91 |
-
$query = array(
|
92 |
-
'cmd' => '_s-xclick',
|
93 |
-
'encrypted' => $matches[0],
|
94 |
-
);
|
95 |
-
$paypal_payment_url = $paypal_payment_url . '?' . http_build_query( $query );
|
96 |
-
|
97 |
-
return $paypal_payment_url;
|
98 |
-
} else {
|
99 |
-
echo $payment_form;
|
100 |
-
}
|
101 |
-
}
|
102 |
-
|
103 |
-
return false;
|
104 |
-
}
|
105 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/gateways/paypal/class-lp-gateway-paypal.php
CHANGED
@@ -5,6 +5,7 @@
|
|
5 |
* @author ThimPress
|
6 |
* @package LearnPress/Classes
|
7 |
* @since 3.0.0
|
|
|
8 |
*/
|
9 |
|
10 |
/**
|
@@ -17,35 +18,35 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
17 |
* Class LP_Gateway_Paypal.
|
18 |
*/
|
19 |
class LP_Gateway_Paypal extends LP_Gateway_Abstract {
|
|
|
|
|
|
|
|
|
20 |
/**
|
21 |
* @var null|string
|
22 |
*/
|
23 |
-
protected $paypal_live_url =
|
24 |
-
|
25 |
/**
|
26 |
* @var null|string
|
27 |
*/
|
28 |
-
protected $
|
29 |
-
|
30 |
/**
|
31 |
* @var null|string
|
32 |
*/
|
33 |
-
protected $
|
34 |
|
35 |
/**
|
36 |
* @var null|string
|
37 |
*/
|
38 |
-
protected $
|
39 |
-
|
40 |
/**
|
41 |
* @var null|string
|
42 |
*/
|
43 |
-
protected $
|
44 |
-
|
45 |
/**
|
46 |
* @var null
|
47 |
*/
|
48 |
-
protected $
|
49 |
|
50 |
/**
|
51 |
* @var string
|
@@ -80,7 +81,7 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
80 |
/**
|
81 |
* @var array
|
82 |
*/
|
83 |
-
protected $line_items = array();
|
84 |
|
85 |
/**
|
86 |
* LP_Gateway_Paypal constructor.
|
@@ -95,20 +96,10 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
95 |
$this->title = esc_html__( 'PayPal', 'learnpress' );
|
96 |
$this->description = esc_html__( 'Pay with PayPal', 'learnpress' );
|
97 |
|
98 |
-
// live
|
99 |
-
$this->paypal_live_url = 'https://www.paypal.com/';
|
100 |
-
$this->paypal_payment_live_url = 'https://www.paypal.com/cgi-bin/webscr';
|
101 |
-
$this->paypal_nvp_api_live_url = 'https://api-3t.paypal.com/nvp';
|
102 |
-
|
103 |
-
// sandbox
|
104 |
-
$this->paypal_sandbox_url = 'https://www.sandbox.paypal.com/';
|
105 |
-
$this->paypal_payment_sandbox_url = 'https://www.sandbox.paypal.com/cgi-bin/webscr';
|
106 |
-
$this->paypal_nvp_api_sandbox_url = 'https://api-3t.sandbox.paypal.com/nvp';
|
107 |
-
|
108 |
// get settings
|
109 |
$this->settings = LP_Settings::instance()->get_group( 'paypal', '' );
|
110 |
|
111 |
-
$this->enabled = $this->settings->get( 'enable' );
|
112 |
|
113 |
$this->init();
|
114 |
|
@@ -120,7 +111,7 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
120 |
*/
|
121 |
public function init() {
|
122 |
if ( $this->is_enabled() ) {
|
123 |
-
if ( $this->settings->get( 'paypal_sandbox' )
|
124 |
$this->paypal_url = $this->paypal_live_url;
|
125 |
$this->paypal_payment_url = $this->paypal_payment_live_url;
|
126 |
$this->paypal_nvp_api_url = $this->paypal_nvp_api_live_url;
|
@@ -131,81 +122,20 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
131 |
$this->paypal_nvp_api_url = $this->paypal_nvp_api_sandbox_url;
|
132 |
$this->paypal_email = $this->settings->get( 'paypal_sandbox_email' );
|
133 |
}
|
134 |
-
|
135 |
-
if ( did_action( 'init' ) ) {
|
136 |
-
$this->register_web_hook();
|
137 |
-
$this->parse_ipn();
|
138 |
-
} else {
|
139 |
-
add_action( 'init', array( $this, 'register_web_hook' ) );
|
140 |
-
add_action( 'init', array( $this, 'parse_ipn' ) );
|
141 |
-
}
|
142 |
-
add_action( 'learn_press_web_hook_learn_press_paypal', array( $this, 'web_hook_process_paypal' ) );
|
143 |
}
|
144 |
|
145 |
add_filter( 'learn-press/payment-gateway/' . $this->id . '/available', array( $this, 'paypal_available' ), 10, 2 );
|
146 |
}
|
147 |
|
148 |
-
public function register_web_hook() {
|
149 |
-
learn_press_register_web_hook( 'paypal', 'learn_press_paypal' );
|
150 |
-
}
|
151 |
-
|
152 |
-
public function validate_ipn() {
|
153 |
-
$validate_ipn = array( 'cmd' => '_notify-validate' );
|
154 |
-
$validate_ipn += wp_unslash( $_POST );
|
155 |
-
|
156 |
-
// Send back post vars to paypal
|
157 |
-
$params = array(
|
158 |
-
'body' => $validate_ipn,
|
159 |
-
'timeout' => 60,
|
160 |
-
'httpversion' => '1.1',
|
161 |
-
'compress' => false,
|
162 |
-
'decompress' => false,
|
163 |
-
);
|
164 |
-
|
165 |
-
// Post back to get a response
|
166 |
-
$response = wp_safe_remote_post( ! empty( $_REQUEST['test_ipn'] ) ? $this->paypal_payment_sandbox_url : $this->paypal_payment_live_url, $params );
|
167 |
-
if ( ! is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 ) {
|
168 |
-
$body = wp_remote_retrieve_body( $response );
|
169 |
-
if ( 'VERIFIED' === $body ) {
|
170 |
-
return true;
|
171 |
-
}
|
172 |
-
}
|
173 |
-
|
174 |
-
return false;
|
175 |
-
}
|
176 |
-
|
177 |
-
public function web_hook_process_paypal( $request ) {
|
178 |
-
if ( $this->validate_ipn() ) {
|
179 |
-
if ( ! empty( $request['custom'] ) && ( $order = $this->get_order( $request['custom'] ) ) ) {
|
180 |
-
$request['payment_status'] = strtolower( $request['payment_status'] );
|
181 |
-
|
182 |
-
if ( isset( $request['test_ipn'] ) && 1 == $request['test_ipn'] && 'pending' == $request['payment_status'] ) {
|
183 |
-
$request['payment_status'] = 'completed';
|
184 |
-
}
|
185 |
-
|
186 |
-
$method = 'payment_status_' . $request['payment_status'];
|
187 |
-
$callback = array( $this, $method );
|
188 |
-
if ( is_callable( $callback ) ) {
|
189 |
-
call_user_func( $callback, $order, $request );
|
190 |
-
}
|
191 |
-
}
|
192 |
-
}
|
193 |
-
}
|
194 |
-
|
195 |
-
public function payment_method_name( $slug ) {
|
196 |
-
return $slug == 'paypal-standard' ? 'Paypal' : $slug;
|
197 |
-
}
|
198 |
-
|
199 |
/**
|
200 |
* Check payment gateway available.
|
201 |
*
|
202 |
-
* @param $default
|
203 |
* @param $payment
|
204 |
*
|
205 |
* @return bool
|
206 |
*/
|
207 |
-
public function paypal_available( $default, $payment ) {
|
208 |
-
|
209 |
if ( ! $this->is_enabled() ) {
|
210 |
return false;
|
211 |
}
|
@@ -221,70 +151,37 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
221 |
}
|
222 |
|
223 |
return $default;
|
224 |
-
|
225 |
-
}
|
226 |
-
|
227 |
-
public function get_order( $raw_custom ) {
|
228 |
-
$raw_custom = stripslashes( $raw_custom );
|
229 |
-
if ( ( $custom = json_decode( $raw_custom ) ) && is_object( $custom ) ) {
|
230 |
-
$order_id = $custom->order_id;
|
231 |
-
$order_key = $custom->order_key;
|
232 |
-
|
233 |
-
// Fallback to serialized data if safe. This is @deprecated in 2.3.11
|
234 |
-
} elseif ( preg_match( '/^a:2:{/', $raw_custom ) && ! preg_match( '/[CO]:\+?[0-9]+:"/', $raw_custom ) && ( $custom = LP_Helper::maybe_unserialize( $raw_custom ) ) ) {
|
235 |
-
$order_id = $custom[0];
|
236 |
-
$order_key = $custom[1];
|
237 |
-
|
238 |
-
// Nothing was found
|
239 |
-
} else {
|
240 |
-
_e( 'Error: order ID and key were not found in "custom".' );
|
241 |
-
|
242 |
-
return false;
|
243 |
-
}
|
244 |
-
|
245 |
-
$order = new LP_Order( $order_id );
|
246 |
-
|
247 |
-
if ( ! $order || $order->order_key !== $order_key ) {
|
248 |
-
printf( __( 'Error: Order Keys do not match %1$s and %2$s.' ), $order->order_key, $order_key );
|
249 |
-
|
250 |
-
return false;
|
251 |
-
}
|
252 |
-
|
253 |
-
return $order;
|
254 |
}
|
255 |
|
256 |
/**
|
257 |
-
*
|
|
|
258 |
*
|
259 |
-
* @
|
260 |
-
*
|
261 |
-
* @return int
|
262 |
-
* @editor tungnx
|
263 |
-
* @modify 4.1.2
|
264 |
-
* @reason comment - not user
|
265 |
*/
|
266 |
-
|
|
|
|
|
267 |
|
268 |
-
$
|
269 |
-
'
|
270 |
-
'
|
271 |
-
'numberposts' => 1, // we should only have one, so limit to 1
|
272 |
);
|
273 |
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
|
|
|
|
|
|
278 |
}
|
|
|
|
|
|
|
279 |
}
|
280 |
|
281 |
-
return
|
282 |
-
}*/
|
283 |
-
|
284 |
-
public function parse_ipn() {
|
285 |
-
if ( ! isset( $_REQUEST['ipn'] ) ) {
|
286 |
-
return;
|
287 |
-
}
|
288 |
}
|
289 |
|
290 |
/**
|
@@ -293,7 +190,7 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
293 |
* @param LP_Order $order
|
294 |
* @param array $request
|
295 |
*/
|
296 |
-
protected function payment_status_completed( $order, $request ) {
|
297 |
if ( $order->has_status( 'completed' ) ) {
|
298 |
exit;
|
299 |
}
|
@@ -306,7 +203,7 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
306 |
}
|
307 |
} else {
|
308 |
}
|
309 |
-
}
|
310 |
|
311 |
/**
|
312 |
* Handle a pending payment
|
@@ -314,83 +211,73 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
314 |
* @param LP_Order
|
315 |
* @param Paypal IPN params
|
316 |
*/
|
317 |
-
protected function payment_status_pending( $order, $request ) {
|
318 |
$this->payment_status_completed( $order, $request );
|
319 |
-
}
|
320 |
|
321 |
/**
|
322 |
* @param LP_Order
|
323 |
* @param string $txn_id
|
324 |
* @param string $note - not use
|
325 |
*/
|
326 |
-
public function payment_complete( $order, $txn_id = '', $note = '' ) {
|
327 |
$order->payment_complete( $txn_id );
|
328 |
-
}
|
329 |
-
|
330 |
-
public function process_payment( $order ) {
|
331 |
-
$redirect = $this->get_request_url( $order );
|
332 |
-
|
333 |
-
$json = array(
|
334 |
-
'result' => $redirect ? 'success' : 'fail',
|
335 |
-
'redirect' => $redirect,
|
336 |
-
);
|
337 |
-
|
338 |
-
return $json;
|
339 |
-
}
|
340 |
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
|
351 |
-
|
352 |
-
|
|
|
353 |
|
354 |
-
|
355 |
-
|
|
|
356 |
}
|
357 |
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
return true;
|
364 |
-
}
|
365 |
-
|
366 |
-
public function get_item_lines() {
|
367 |
-
return $this->line_items;
|
368 |
-
}
|
369 |
-
|
370 |
-
public function get_request_url( $order_id ) {
|
371 |
-
|
372 |
-
$order = new LP_Order( $order_id );
|
373 |
-
$query = $this->get_paypal_args( $order );
|
374 |
-
|
375 |
-
$paypal_payment_url = $this->paypal_url . '?' . http_build_query( $query );
|
376 |
-
|
377 |
-
return $paypal_payment_url;
|
378 |
}
|
379 |
|
380 |
/**
|
|
|
|
|
381 |
* @param LP_Order $order
|
382 |
*
|
383 |
* @return array
|
384 |
*/
|
385 |
-
public function get_paypal_args( $order ) {
|
386 |
$checkout = LP()->checkout();
|
387 |
-
$
|
388 |
-
$custom = array(
|
389 |
'order_id' => $order->get_id(),
|
390 |
'order_key' => $order->get_order_key(),
|
391 |
'checkout_email' => $checkout->get_checkout_email(),
|
392 |
);
|
393 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
394 |
$args = array_merge(
|
395 |
array(
|
396 |
'cmd' => '_cart',
|
@@ -404,16 +291,19 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
404 |
'cancel_return' => esc_url_raw( learn_press_is_enable_cart() ? learn_press_get_page_link( 'cart' ) : get_home_url() /* SITE_URL */ ),
|
405 |
'bn' => 'LearnPress_Cart',
|
406 |
'custom' => json_encode( $custom ),
|
407 |
-
'notify_url' => get_home_url() . '/?
|
408 |
),
|
409 |
-
$
|
410 |
);
|
411 |
|
412 |
-
$args = apply_filters( 'learn_press_paypal_args', $args );
|
413 |
-
|
414 |
return apply_filters( 'learn-press/paypal/args', $args );
|
415 |
}
|
416 |
|
|
|
|
|
|
|
|
|
|
|
417 |
public function get_settings() {
|
418 |
return apply_filters(
|
419 |
'learn-press/gateway-payment/paypal/settings',
|
@@ -452,6 +342,11 @@ if ( ! class_exists( 'LP_Gateway_Paypal' ) ) {
|
|
452 |
);
|
453 |
}
|
454 |
|
|
|
|
|
|
|
|
|
|
|
455 |
public function get_icon() {
|
456 |
if ( empty( $this->icon ) ) {
|
457 |
$this->icon = LP()->plugin_url( 'assets/images/paypal-logo-preview.png' );
|
5 |
* @author ThimPress
|
6 |
* @package LearnPress/Classes
|
7 |
* @since 3.0.0
|
8 |
+
* @version 3.0.1
|
9 |
*/
|
10 |
|
11 |
/**
|
18 |
* Class LP_Gateway_Paypal.
|
19 |
*/
|
20 |
class LP_Gateway_Paypal extends LP_Gateway_Abstract {
|
21 |
+
/**
|
22 |
+
* @var string
|
23 |
+
*/
|
24 |
+
public $id = 'paypal';
|
25 |
/**
|
26 |
* @var null|string
|
27 |
*/
|
28 |
+
protected $paypal_live_url = 'https://www.paypal.com/';
|
|
|
29 |
/**
|
30 |
* @var null|string
|
31 |
*/
|
32 |
+
protected $paypal_payment_live_url = 'https://www.paypal.com/cgi-bin/webscr';
|
|
|
33 |
/**
|
34 |
* @var null|string
|
35 |
*/
|
36 |
+
protected $paypal_nvp_api_live_url = 'https://api-3t.paypal.com/nvp';
|
37 |
|
38 |
/**
|
39 |
* @var null|string
|
40 |
*/
|
41 |
+
protected $paypal_sandbox_url = 'https://www.sandbox.paypal.com/';
|
|
|
42 |
/**
|
43 |
* @var null|string
|
44 |
*/
|
45 |
+
protected $paypal_payment_sandbox_url = 'https://www.sandbox.paypal.com/cgi-bin/webscr';
|
|
|
46 |
/**
|
47 |
* @var null
|
48 |
*/
|
49 |
+
protected $paypal_nvp_api_sandbox_url = 'https://api-3t.sandbox.paypal.com/nvp';
|
50 |
|
51 |
/**
|
52 |
* @var string
|
81 |
/**
|
82 |
* @var array
|
83 |
*/
|
84 |
+
//protected $line_items = array();
|
85 |
|
86 |
/**
|
87 |
* LP_Gateway_Paypal constructor.
|
96 |
$this->title = esc_html__( 'PayPal', 'learnpress' );
|
97 |
$this->description = esc_html__( 'Pay with PayPal', 'learnpress' );
|
98 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
99 |
// get settings
|
100 |
$this->settings = LP_Settings::instance()->get_group( 'paypal', '' );
|
101 |
|
102 |
+
$this->enabled = $this->settings->get( 'enable', 'no' );
|
103 |
|
104 |
$this->init();
|
105 |
|
111 |
*/
|
112 |
public function init() {
|
113 |
if ( $this->is_enabled() ) {
|
114 |
+
if ( $this->settings->get( 'paypal_sandbox', 'no' ) === 'no' ) {
|
115 |
$this->paypal_url = $this->paypal_live_url;
|
116 |
$this->paypal_payment_url = $this->paypal_payment_live_url;
|
117 |
$this->paypal_nvp_api_url = $this->paypal_nvp_api_live_url;
|
122 |
$this->paypal_nvp_api_url = $this->paypal_nvp_api_sandbox_url;
|
123 |
$this->paypal_email = $this->settings->get( 'paypal_sandbox_email' );
|
124 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
}
|
126 |
|
127 |
add_filter( 'learn-press/payment-gateway/' . $this->id . '/available', array( $this, 'paypal_available' ), 10, 2 );
|
128 |
}
|
129 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
130 |
/**
|
131 |
* Check payment gateway available.
|
132 |
*
|
133 |
+
* @param bool $default
|
134 |
* @param $payment
|
135 |
*
|
136 |
* @return bool
|
137 |
*/
|
138 |
+
public function paypal_available( bool $default, $payment ): bool {
|
|
|
139 |
if ( ! $this->is_enabled() ) {
|
140 |
return false;
|
141 |
}
|
151 |
}
|
152 |
|
153 |
return $default;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
154 |
}
|
155 |
|
156 |
/**
|
157 |
+
* https://developer.paypal.com/api/nvp-soap/ipn/IPNImplementation/#link-ipnlistenerrequestresponseflow
|
158 |
+
* Check validate IPN.
|
159 |
*
|
160 |
+
* @return bool
|
|
|
|
|
|
|
|
|
|
|
161 |
*/
|
162 |
+
public function validate_ipn():bool {
|
163 |
+
$validate_ipn = array( 'cmd' => '_notify-validate' );
|
164 |
+
$validate_ipn += wp_unslash( $_POST );
|
165 |
|
166 |
+
$params = array(
|
167 |
+
'body' => $validate_ipn,
|
168 |
+
'timeout' => 60,
|
|
|
169 |
);
|
170 |
|
171 |
+
// Post back to get a response
|
172 |
+
$response = wp_remote_post( $this->paypal_payment_url, $params );
|
173 |
+
|
174 |
+
if ( ! is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 ) {
|
175 |
+
$body = wp_remote_retrieve_body( $response );
|
176 |
+
if ( 'VERIFIED' === $body ) {
|
177 |
+
return true;
|
178 |
}
|
179 |
+
} else {
|
180 |
+
error_log( 'Error code paypal validate ipn: ' . $response['response']['code'] );
|
181 |
+
error_log( 'Error code paypal validate ipn: ' . $response->get_error_message() );
|
182 |
}
|
183 |
|
184 |
+
return false;
|
|
|
|
|
|
|
|
|
|
|
|
|
185 |
}
|
186 |
|
187 |
/**
|
190 |
* @param LP_Order $order
|
191 |
* @param array $request
|
192 |
*/
|
193 |
+
/*protected function payment_status_completed( $order, $request ) {
|
194 |
if ( $order->has_status( 'completed' ) ) {
|
195 |
exit;
|
196 |
}
|
203 |
}
|
204 |
} else {
|
205 |
}
|
206 |
+
}*/
|
207 |
|
208 |
/**
|
209 |
* Handle a pending payment
|
211 |
* @param LP_Order
|
212 |
* @param Paypal IPN params
|
213 |
*/
|
214 |
+
/*protected function payment_status_pending( $order, $request ) {
|
215 |
$this->payment_status_completed( $order, $request );
|
216 |
+
}*/
|
217 |
|
218 |
/**
|
219 |
* @param LP_Order
|
220 |
* @param string $txn_id
|
221 |
* @param string $note - not use
|
222 |
*/
|
223 |
+
/*public function payment_complete( $order, $txn_id = '', $note = '' ) {
|
224 |
$order->payment_complete( $txn_id );
|
225 |
+
}*/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
226 |
|
227 |
+
/**
|
228 |
+
* Handle payment.
|
229 |
+
*
|
230 |
+
* @param int $order_id
|
231 |
+
*
|
232 |
+
* @return array
|
233 |
+
*/
|
234 |
+
public function process_payment( $order_id = 0 ): array {
|
235 |
+
$paypal_payment_url = '';
|
236 |
|
237 |
+
try {
|
238 |
+
$order = new LP_Order( $order_id );
|
239 |
+
$paypal_args = $this->get_paypal_args( $order );
|
240 |
|
241 |
+
$paypal_payment_url = $this->paypal_url . '?' . http_build_query( $paypal_args );
|
242 |
+
} catch ( Throwable $e ) {
|
243 |
+
error_log( $e->getMessage() );
|
244 |
}
|
245 |
|
246 |
+
return array(
|
247 |
+
'result' => ! empty( $paypal_payment_url ) ? 'success' : 'fail',
|
248 |
+
'redirect' => $paypal_payment_url,
|
249 |
+
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
250 |
}
|
251 |
|
252 |
/**
|
253 |
+
* Prepare args to send to PayPal
|
254 |
+
*
|
255 |
* @param LP_Order $order
|
256 |
*
|
257 |
* @return array
|
258 |
*/
|
259 |
+
public function get_paypal_args( LP_Order $order ): array {
|
260 |
$checkout = LP()->checkout();
|
261 |
+
$custom = array(
|
|
|
262 |
'order_id' => $order->get_id(),
|
263 |
'order_key' => $order->get_order_key(),
|
264 |
'checkout_email' => $checkout->get_checkout_email(),
|
265 |
);
|
266 |
|
267 |
+
// Item
|
268 |
+
$items = LP()->get_cart()->get_items();
|
269 |
+
$item_arg = [
|
270 |
+
'item_name_1' => $order->get_order_number(),
|
271 |
+
'quantity_1' => 0,
|
272 |
+
'amount_1' => 0,
|
273 |
+
];
|
274 |
+
if ( $items ) {
|
275 |
+
foreach ( $items as $item ) {
|
276 |
+
$item_arg['quantity_1'] += $item['quantity'];
|
277 |
+
$item_arg['amount_1'] += $item['total'];
|
278 |
+
}
|
279 |
+
}
|
280 |
+
|
281 |
$args = array_merge(
|
282 |
array(
|
283 |
'cmd' => '_cart',
|
291 |
'cancel_return' => esc_url_raw( learn_press_is_enable_cart() ? learn_press_get_page_link( 'cart' ) : get_home_url() /* SITE_URL */ ),
|
292 |
'bn' => 'LearnPress_Cart',
|
293 |
'custom' => json_encode( $custom ),
|
294 |
+
'notify_url' => get_home_url() . '/?paypal_notify=1',
|
295 |
),
|
296 |
+
$item_arg
|
297 |
);
|
298 |
|
|
|
|
|
299 |
return apply_filters( 'learn-press/paypal/args', $args );
|
300 |
}
|
301 |
|
302 |
+
/**
|
303 |
+
* Settings form fields for this gateway
|
304 |
+
*
|
305 |
+
* @return array
|
306 |
+
*/
|
307 |
public function get_settings() {
|
308 |
return apply_filters(
|
309 |
'learn-press/gateway-payment/paypal/settings',
|
342 |
);
|
343 |
}
|
344 |
|
345 |
+
/**
|
346 |
+
* Icon for the gateway
|
347 |
+
*
|
348 |
+
* @return string
|
349 |
+
*/
|
350 |
public function get_icon() {
|
351 |
if ( empty( $this->icon ) ) {
|
352 |
$this->icon = LP()->plugin_url( 'assets/images/paypal-logo-preview.png' );
|
inc/gateways/paypal/paypal-ipn/cert/api_cert_chain.crt
DELETED
@@ -1,54 +0,0 @@
|
|
1 |
-
-----BEGIN CERTIFICATE-----
|
2 |
-
MIIDgzCCAuygAwIBAgIQJUuKhThCzONY+MXdriJupDANBgkqhkiG9w0BAQUFADBf
|
3 |
-
MQswCQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xNzA1BgNVBAsT
|
4 |
-
LkNsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkw
|
5 |
-
HhcNOTcwNDE3MDAwMDAwWhcNMTExMDI0MjM1OTU5WjCBujEfMB0GA1UEChMWVmVy
|
6 |
-
aVNpZ24gVHJ1c3QgTmV0d29yazEXMBUGA1UECxMOVmVyaVNpZ24sIEluYy4xMzAx
|
7 |
-
BgNVBAsTKlZlcmlTaWduIEludGVybmF0aW9uYWwgU2VydmVyIENBIC0gQ2xhc3Mg
|
8 |
-
MzFJMEcGA1UECxNAd3d3LnZlcmlzaWduLmNvbS9DUFMgSW5jb3JwLmJ5IFJlZi4g
|
9 |
-
TElBQklMSVRZIExURC4oYyk5NyBWZXJpU2lnbjCBnzANBgkqhkiG9w0BAQEFAAOB
|
10 |
-
jQAwgYkCgYEA2IKA6NYZAn0fhRg5JaJlK+G/1AXTvOY2O6rwTGxbtueqPHNFVbLx
|
11 |
-
veqXQu2aNAoV1Klc9UAl3dkHwTKydWzEyruj/lYncUOqY/UwPpMo5frxCTvzt01O
|
12 |
-
OfdcSVq4wR3Tsor+cDCVQsv+K1GLWjw6+SJPkLICp1OcTzTnqwSye28CAwEAAaOB
|
13 |
-
4zCB4DAPBgNVHRMECDAGAQH/AgEAMEQGA1UdIAQ9MDswOQYLYIZIAYb4RQEHAQEw
|
14 |
-
KjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL0NQUzA0BgNV
|
15 |
-
HSUELTArBggrBgEFBQcDAQYIKwYBBQUHAwIGCWCGSAGG+EIEAQYKYIZIAYb4RQEI
|
16 |
-
ATALBgNVHQ8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgEGMDEGA1UdHwQqMCgwJqAk
|
17 |
-
oCKGIGh0dHA6Ly9jcmwudmVyaXNpZ24uY29tL3BjYTMuY3JsMA0GCSqGSIb3DQEB
|
18 |
-
BQUAA4GBAAgB7ORolANC8XPxI6I63unx2sZUxCM+hurPajozq+qcBBQHNgYL+Yhv
|
19 |
-
1RPuKSvD5HKNRO3RrCAJLeH24RkFOLA9D59/+J4C3IYChmFOJl9en5IeDCSk9dBw
|
20 |
-
E88mw0M9SR2egi5SX7w+xmYpAY5Okiy8RnUDgqxz6dl+C2fvVFIa
|
21 |
-
-----END CERTIFICATE-----
|
22 |
-
-----BEGIN CERTIFICATE-----
|
23 |
-
MIICPDCCAaUCEHC65B0Q2Sk0tjjKewPMur8wDQYJKoZIhvcNAQECBQAwXzELMAkG
|
24 |
-
A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz
|
25 |
-
cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2
|
26 |
-
MDEyOTAwMDAwMFoXDTI4MDgwMTIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV
|
27 |
-
BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt
|
28 |
-
YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN
|
29 |
-
ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE
|
30 |
-
BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is
|
31 |
-
I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G
|
32 |
-
CSqGSIb3DQEBAgUAA4GBALtMEivPLCYATxQT3ab7/AoRhIzzKBxnki98tsX63/Do
|
33 |
-
lbwdj2wsqFHMc9ikwFPwTtYmwHYBV4GSXiHx0bH/59AhWM1pF+NEHJwZRDmJXNyc
|
34 |
-
AA9WjQKZ7aKQRUzkuxCkPfAyAw7xzvjoyVGM5mKf5p/AfbdynMk2OmufTqj/ZA1k
|
35 |
-
-----END CERTIFICATE-----
|
36 |
-
-----BEGIN CERTIFICATE-----
|
37 |
-
MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJ
|
38 |
-
BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh
|
39 |
-
c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy
|
40 |
-
MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp
|
41 |
-
emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X
|
42 |
-
DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw
|
43 |
-
FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMg
|
44 |
-
UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo
|
45 |
-
YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5
|
46 |
-
MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB
|
47 |
-
AQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCOFoUgRm1HP9SFIIThbbP4
|
48 |
-
pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71lSk8UOg0
|
49 |
-
13gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwID
|
50 |
-
AQABMA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSk
|
51 |
-
U01UbSuvDV1Ai2TT1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7i
|
52 |
-
F6YM40AIOw7n60RzKprxaZLvcRTDOaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpY
|
53 |
-
oJ2daZH9
|
54 |
-
-----END CERTIFICATE-----
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/gateways/paypal/paypal-ipn/cert/index.php
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
<?php // Silence is golden.
|
|
inc/gateways/paypal/paypal-ipn/index.php
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
<?php // Silence is golden.
|
|
inc/gateways/paypal/paypal-ipn/ipn.php
DELETED
@@ -1,111 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* PHP-PayPal-IPN Example
|
4 |
-
*
|
5 |
-
* This shows a basic example of how to use the IpnListener() PHP class to
|
6 |
-
* implement a PayPal Instant Payment Notification (IPN) listener script.
|
7 |
-
*
|
8 |
-
* For a more in depth tutorial, see my blog post:
|
9 |
-
* http://www.micahcarrick.com/paypal-ipn-with-php.html
|
10 |
-
*
|
11 |
-
* This code is available at github:
|
12 |
-
* https://github.com/Quixotix/PHP-PayPal-IPN
|
13 |
-
*
|
14 |
-
* @package PHP-PayPal-IPN
|
15 |
-
* @author Micah Carrick
|
16 |
-
* @copyright (c) 2011 - Micah Carrick
|
17 |
-
* @license http://opensource.org/licenses/gpl-3.0.html
|
18 |
-
*/
|
19 |
-
|
20 |
-
|
21 |
-
/*
|
22 |
-
Since this script is executed on the back end between the PayPal server and this
|
23 |
-
script, you will want to log errors to a file or email. Do not try to use echo
|
24 |
-
or print--it will not work!
|
25 |
-
|
26 |
-
Here I am turning on PHP error logging to a file called "ipn_errors.log". Make
|
27 |
-
sure your web server has permissions to write to that file. In a production
|
28 |
-
environment it is better to have that log file outside of the web root.
|
29 |
-
*/
|
30 |
-
ini_set( 'log_errors', true );
|
31 |
-
ini_set( 'error_log', dirname( __FILE__ ) . '/ipn_errors.log' );
|
32 |
-
|
33 |
-
|
34 |
-
// instantiate the IpnListener class
|
35 |
-
include( 'ipnlistener.php' );
|
36 |
-
$listener = new IpnListener();
|
37 |
-
|
38 |
-
|
39 |
-
/*
|
40 |
-
When you are testing your IPN script you should be using a PayPal "Sandbox"
|
41 |
-
account: https://developer.paypal.com
|
42 |
-
When you are ready to go live change use_sandbox to false.
|
43 |
-
*/
|
44 |
-
$listener->use_sandbox = true;
|
45 |
-
|
46 |
-
/*
|
47 |
-
By default the IpnListener object is going going to post the data back to PayPal
|
48 |
-
using cURL over a secure SSL connection. This is the recommended way to post
|
49 |
-
the data back, however, some people may have connections problems using this
|
50 |
-
method.
|
51 |
-
|
52 |
-
To post over standard HTTP connection, use:
|
53 |
-
$listener->use_ssl = false;
|
54 |
-
|
55 |
-
To post using the fsockopen() function rather than cURL, use:
|
56 |
-
$listener->use_curl = false;
|
57 |
-
*/
|
58 |
-
|
59 |
-
/*
|
60 |
-
The processIpn() method will encode the POST variables sent by PayPal and then
|
61 |
-
POST them back to the PayPal server. An exception will be thrown if there is
|
62 |
-
a fatal error (cannot connect, your server is not configured properly, etc.).
|
63 |
-
Use a try/catch block to catch these fatal errors and log to the ipn_errors.log
|
64 |
-
file we setup at the top of this file.
|
65 |
-
|
66 |
-
The processIpn() method will send the raw data on 'php://input' to PayPal. You
|
67 |
-
can optionally pass the data to processIpn() yourself:
|
68 |
-
$verified = $listener->processIpn($my_post_data);
|
69 |
-
*/
|
70 |
-
try {
|
71 |
-
$listener->requirePostMethod();
|
72 |
-
$verified = $listener->processIpn();
|
73 |
-
} catch ( Exception $e ) {
|
74 |
-
error_log( $e->getMessage() );
|
75 |
-
exit( 0 );
|
76 |
-
}
|
77 |
-
|
78 |
-
|
79 |
-
/*
|
80 |
-
The processIpn() method returned true if the IPN was "VERIFIED" and false if it
|
81 |
-
was "INVALID".
|
82 |
-
*/
|
83 |
-
if ( $verified ) {
|
84 |
-
/*
|
85 |
-
Once you have a verified IPN you need to do a few more checks on the POST
|
86 |
-
fields--typically against data you stored in your database during when the
|
87 |
-
end user made a purchase (such as in the "success" page on a web payments
|
88 |
-
standard button). The fields PayPal recommends checking are:
|
89 |
-
|
90 |
-
1. Check the $_POST['payment_status'] is "Completed"
|
91 |
-
2. Check that $_POST['txn_id'] has not been previously processed
|
92 |
-
3. Check that $_POST['receiver_email'] is your Primary PayPal email
|
93 |
-
4. Check that $_POST['payment_amount'] and $_POST['payment_currency']
|
94 |
-
are correct
|
95 |
-
|
96 |
-
Since implementations on this varies, I will leave these checks out of this
|
97 |
-
example and just send an email using the getTextReport() method to get all
|
98 |
-
of the details about the IPN.
|
99 |
-
*/
|
100 |
-
mail( 'YOUR EMAIL ADDRESS', 'Verified IPN', $listener->getTextReport() );
|
101 |
-
|
102 |
-
} else {
|
103 |
-
/*
|
104 |
-
An Invalid IPN *may* be caused by a fraudulent transaction attempt. It's
|
105 |
-
a good idea to have a developer or sys admin manually investigate any
|
106 |
-
invalid IPN.
|
107 |
-
*/
|
108 |
-
mail( 'YOUR EMAIL ADDRESS', 'Invalid IPN', $listener->getTextReport() );
|
109 |
-
}
|
110 |
-
|
111 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/gateways/paypal/paypal-ipn/ipn_errors.log
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
[05-Feb-2015 07:28:49 UTC] Invalid HTTP request method.
|
|
inc/gateways/paypal/paypal-ipn/ipnlistener.php
DELETED
@@ -1,331 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
/**
|
4 |
-
* PayPal IPN Listener
|
5 |
-
*
|
6 |
-
* A class to listen for and handle Instant Payment Notifications (IPN) from
|
7 |
-
* the PayPal server.
|
8 |
-
*
|
9 |
-
* https://github.com/Quixotix/PHP-PayPal-IPN
|
10 |
-
*
|
11 |
-
* @package PHP-PayPal-IPN
|
12 |
-
* @author Micah Carrick
|
13 |
-
* @copyright (c) 2012 - Micah Carrick
|
14 |
-
* @version 2.1.0
|
15 |
-
*/
|
16 |
-
class IpnListener {
|
17 |
-
|
18 |
-
/**
|
19 |
-
* If true, the recommended cURL PHP library is used to send the post back
|
20 |
-
* to PayPal. If flase then fsockopen() is used. Default true.
|
21 |
-
*
|
22 |
-
* @var boolean
|
23 |
-
*/
|
24 |
-
public $use_curl = true;
|
25 |
-
|
26 |
-
/**
|
27 |
-
* If true, explicitly sets cURL to use SSL version 3. Use this if cURL
|
28 |
-
* is compiled with GnuTLS SSL.
|
29 |
-
*
|
30 |
-
* @var boolean
|
31 |
-
*/
|
32 |
-
public $force_ssl_v3 = true;
|
33 |
-
|
34 |
-
/**
|
35 |
-
* If true, cURL will use the CURLOPT_FOLLOWLOCATION to follow any
|
36 |
-
* "Location: ..." headers in the response.
|
37 |
-
*
|
38 |
-
* @var boolean
|
39 |
-
*/
|
40 |
-
public $follow_location = false;
|
41 |
-
|
42 |
-
/**
|
43 |
-
* If true, an SSL secure connection (port 443) is used for the post back
|
44 |
-
* as recommended by PayPal. If false, a standard HTTP (port 80) connection
|
45 |
-
* is used. Default true.
|
46 |
-
*
|
47 |
-
* @var boolean
|
48 |
-
*/
|
49 |
-
public $use_ssl = true;
|
50 |
-
|
51 |
-
/**
|
52 |
-
* If true, the paypal sandbox URI www.sandbox.paypal.com is used for the
|
53 |
-
* post back. If false, the live URI www.paypal.com is used. Default false.
|
54 |
-
*
|
55 |
-
* @var boolean
|
56 |
-
*/
|
57 |
-
public $use_sandbox = false;
|
58 |
-
|
59 |
-
/**
|
60 |
-
* The amount of time, in seconds, to wait for the PayPal server to respond
|
61 |
-
* before timing out. Default 30 seconds.
|
62 |
-
*
|
63 |
-
* @var int
|
64 |
-
*/
|
65 |
-
public $timeout = 30;
|
66 |
-
|
67 |
-
private $post_data = array();
|
68 |
-
private $post_uri = '';
|
69 |
-
private $response_status = '';
|
70 |
-
private $response = '';
|
71 |
-
|
72 |
-
const PAYPAL_HOST = 'www.paypal.com';
|
73 |
-
const SANDBOX_HOST = 'www.sandbox.paypal.com';
|
74 |
-
|
75 |
-
/**
|
76 |
-
* Post Back Using cURL
|
77 |
-
*
|
78 |
-
* Sends the post back to PayPal using the cURL library. Called by
|
79 |
-
* the processIpn() method if the use_curl property is true. Throws an
|
80 |
-
* exception if the post fails. Populates the response, response_status,
|
81 |
-
* and post_uri properties on success.
|
82 |
-
*
|
83 |
-
* @param string The post data as a URL encoded string
|
84 |
-
*/
|
85 |
-
protected function curlPost( $encoded_data ) {
|
86 |
-
|
87 |
-
if ( $this->use_ssl ) {
|
88 |
-
$uri = 'https://' . $this->getPaypalHost() . '/cgi-bin/webscr';
|
89 |
-
$this->post_uri = $uri;
|
90 |
-
} else {
|
91 |
-
$uri = 'http://' . $this->getPaypalHost() . '/cgi-bin/webscr';
|
92 |
-
$this->post_uri = $uri;
|
93 |
-
}
|
94 |
-
|
95 |
-
$ch = curl_init();
|
96 |
-
|
97 |
-
curl_setopt( $ch, CURLOPT_SSL_VERIFYPEER, true );
|
98 |
-
curl_setopt( $ch, CURLOPT_SSL_VERIFYHOST, 2 );
|
99 |
-
curl_setopt(
|
100 |
-
$ch,
|
101 |
-
CURLOPT_CAINFO,
|
102 |
-
dirname( __FILE__ ) . '/cert/api_cert_chain.crt'
|
103 |
-
);
|
104 |
-
curl_setopt( $ch, CURLOPT_URL, $uri );
|
105 |
-
curl_setopt( $ch, CURLOPT_POST, true );
|
106 |
-
curl_setopt( $ch, CURLOPT_POSTFIELDS, $encoded_data );
|
107 |
-
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, $this->follow_location );
|
108 |
-
curl_setopt( $ch, CURLOPT_TIMEOUT, $this->timeout );
|
109 |
-
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
|
110 |
-
curl_setopt( $ch, CURLOPT_HEADER, true );
|
111 |
-
|
112 |
-
if ( $this->force_ssl_v3 ) {
|
113 |
-
curl_setopt( $ch, CURLOPT_SSLVERSION, 3 );
|
114 |
-
}
|
115 |
-
|
116 |
-
$this->response = curl_exec( $ch );
|
117 |
-
$this->response_status = strval( curl_getinfo( $ch, CURLINFO_HTTP_CODE ) );
|
118 |
-
|
119 |
-
if ( $this->response === false || $this->response_status == '0' ) {
|
120 |
-
$errno = curl_errno( $ch );
|
121 |
-
$errstr = curl_error( $ch );
|
122 |
-
throw new Exception( "cURL error: [$errno] $errstr" );
|
123 |
-
}
|
124 |
-
}
|
125 |
-
|
126 |
-
/**
|
127 |
-
* Post Back Using fsockopen()
|
128 |
-
*
|
129 |
-
* Sends the post back to PayPal using the fsockopen() function. Called by
|
130 |
-
* the processIpn() method if the use_curl property is false. Throws an
|
131 |
-
* exception if the post fails. Populates the response, response_status,
|
132 |
-
* and post_uri properties on success.
|
133 |
-
*
|
134 |
-
* @param string The post data as a URL encoded string
|
135 |
-
*/
|
136 |
-
protected function fsockPost( $encoded_data ) {
|
137 |
-
|
138 |
-
if ( $this->use_ssl ) {
|
139 |
-
$uri = 'ssl://' . $this->getPaypalHost();
|
140 |
-
$port = '443';
|
141 |
-
$this->post_uri = $uri . '/cgi-bin/webscr';
|
142 |
-
} else {
|
143 |
-
$uri = $this->getPaypalHost(); // no "http://" in call to fsockopen()
|
144 |
-
$port = '80';
|
145 |
-
$this->post_uri = 'http://' . $uri . '/cgi-bin/webscr';
|
146 |
-
}
|
147 |
-
|
148 |
-
$fp = fsockopen( $uri, $port, $errno, $errstr, $this->timeout );
|
149 |
-
|
150 |
-
if ( ! $fp ) {
|
151 |
-
// fsockopen error
|
152 |
-
throw new Exception( "fsockopen error: [$errno] $errstr" );
|
153 |
-
}
|
154 |
-
|
155 |
-
$header = "POST /cgi-bin/webscr HTTP/1.1\r\n";
|
156 |
-
$header .= 'Host: ' . $this->getPaypalHost() . "\r\n";
|
157 |
-
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
|
158 |
-
$header .= 'Content-Length: ' . strlen( $encoded_data ) . "\r\n";
|
159 |
-
$header .= "Connection: Close\r\n\r\n";
|
160 |
-
|
161 |
-
fputs( $fp, $header . $encoded_data . "\r\n\r\n" );
|
162 |
-
|
163 |
-
while ( ! feof( $fp ) ) {
|
164 |
-
if ( empty( $this->response ) ) {
|
165 |
-
// extract HTTP status from first line
|
166 |
-
$this->response .= $status = fgets( $fp, 1024 );
|
167 |
-
$this->response_status = trim( substr( $status, 9, 4 ) );
|
168 |
-
} else {
|
169 |
-
$this->response .= fgets( $fp, 1024 );
|
170 |
-
}
|
171 |
-
}
|
172 |
-
|
173 |
-
fclose( $fp );
|
174 |
-
}
|
175 |
-
|
176 |
-
private function getPaypalHost() {
|
177 |
-
if ( $this->use_sandbox ) {
|
178 |
-
return self::SANDBOX_HOST;
|
179 |
-
} else {
|
180 |
-
return self::PAYPAL_HOST;
|
181 |
-
}
|
182 |
-
}
|
183 |
-
|
184 |
-
/**
|
185 |
-
* Get POST URI
|
186 |
-
*
|
187 |
-
* Returns the URI that was used to send the post back to PayPal. This can
|
188 |
-
* be useful for troubleshooting connection problems. The default URI
|
189 |
-
* would be "ssl://www.sandbox.paypal.com:443/cgi-bin/webscr"
|
190 |
-
*
|
191 |
-
* @return string
|
192 |
-
*/
|
193 |
-
public function getPostUri() {
|
194 |
-
return $this->post_uri;
|
195 |
-
}
|
196 |
-
|
197 |
-
/**
|
198 |
-
* Get Response
|
199 |
-
*
|
200 |
-
* Returns the entire response from PayPal as a string including all the
|
201 |
-
* HTTP headers.
|
202 |
-
*
|
203 |
-
* @return string
|
204 |
-
*/
|
205 |
-
public function getResponse() {
|
206 |
-
return $this->response;
|
207 |
-
}
|
208 |
-
|
209 |
-
/**
|
210 |
-
* Get Response Status
|
211 |
-
*
|
212 |
-
* Returns the HTTP response status code from PayPal. This should be "200"
|
213 |
-
* if the post back was successful.
|
214 |
-
*
|
215 |
-
* @return string
|
216 |
-
*/
|
217 |
-
public function getResponseStatus() {
|
218 |
-
return $this->response_status;
|
219 |
-
}
|
220 |
-
|
221 |
-
/**
|
222 |
-
* Get Text Report
|
223 |
-
*
|
224 |
-
* Returns a report of the IPN transaction in plain text format. This is
|
225 |
-
* useful in emails to order processors and system administrators. Override
|
226 |
-
* this method in your own class to customize the report.
|
227 |
-
*
|
228 |
-
* @return string
|
229 |
-
*/
|
230 |
-
public function getTextReport() {
|
231 |
-
|
232 |
-
$r = '';
|
233 |
-
|
234 |
-
// date and POST url
|
235 |
-
for ( $i = 0; $i < 80; $i ++ ) {
|
236 |
-
$r .= '-';
|
237 |
-
}
|
238 |
-
$r .= "\n[" . date( 'm/d/Y g:i A' ) . '] - ' . $this->getPostUri();
|
239 |
-
if ( $this->use_curl ) {
|
240 |
-
$r .= " (curl)\n";
|
241 |
-
} else {
|
242 |
-
$r .= " (fsockopen)\n";
|
243 |
-
}
|
244 |
-
|
245 |
-
// HTTP Response
|
246 |
-
for ( $i = 0; $i < 80; $i ++ ) {
|
247 |
-
$r .= '-';
|
248 |
-
}
|
249 |
-
$r .= "\n{$this->getResponse()}\n";
|
250 |
-
|
251 |
-
// POST vars
|
252 |
-
for ( $i = 0; $i < 80; $i ++ ) {
|
253 |
-
$r .= '-';
|
254 |
-
}
|
255 |
-
$r .= "\n";
|
256 |
-
|
257 |
-
foreach ( $this->post_data as $key => $value ) {
|
258 |
-
$r .= str_pad( $key, 25 ) . "$value\n";
|
259 |
-
}
|
260 |
-
$r .= "\n\n";
|
261 |
-
|
262 |
-
return $r;
|
263 |
-
}
|
264 |
-
|
265 |
-
/**
|
266 |
-
* Process IPN
|
267 |
-
*
|
268 |
-
* Handles the IPN post back to PayPal and parsing the response. Call this
|
269 |
-
* method from your IPN listener script. Returns true if the response came
|
270 |
-
* back as "VERIFIED", false if the response came back "INVALID", and
|
271 |
-
* throws an exception if there is an error.
|
272 |
-
*
|
273 |
-
* @param array
|
274 |
-
*
|
275 |
-
* @return boolean
|
276 |
-
*/
|
277 |
-
public function processIpn( $post_data = null ) {
|
278 |
-
|
279 |
-
$encoded_data = 'cmd=_notify-validate';
|
280 |
-
|
281 |
-
if ( $post_data === null ) {
|
282 |
-
// use raw POST data
|
283 |
-
if ( ! empty( $_POST ) ) {
|
284 |
-
$this->post_data = $_POST;
|
285 |
-
$encoded_data .= '&' . file_get_contents( 'php://input' );
|
286 |
-
} else {
|
287 |
-
throw new Exception( 'No POST data found.' );
|
288 |
-
}
|
289 |
-
} else {
|
290 |
-
// use provided data array
|
291 |
-
$this->post_data = $post_data;
|
292 |
-
|
293 |
-
foreach ( $this->post_data as $key => $value ) {
|
294 |
-
$encoded_data .= "&$key=" . urlencode( $value );
|
295 |
-
}
|
296 |
-
}
|
297 |
-
|
298 |
-
if ( $this->use_curl ) {
|
299 |
-
$this->curlPost( $encoded_data );
|
300 |
-
} else {
|
301 |
-
$this->fsockPost( $encoded_data );
|
302 |
-
}
|
303 |
-
|
304 |
-
if ( strpos( $this->response_status, '200' ) === false ) {
|
305 |
-
throw new Exception( 'Invalid response status: ' . $this->response_status );
|
306 |
-
}
|
307 |
-
|
308 |
-
if ( strpos( $this->response, 'VERIFIED' ) !== false ) {
|
309 |
-
return true;
|
310 |
-
} elseif ( strpos( $this->response, 'INVALID' ) !== false ) {
|
311 |
-
return false;
|
312 |
-
} else {
|
313 |
-
throw new Exception( 'Unexpected response from PayPal.' );
|
314 |
-
}
|
315 |
-
}
|
316 |
-
|
317 |
-
/**
|
318 |
-
* Require Post Method
|
319 |
-
*
|
320 |
-
* Throws an exception and sets a HTTP 405 response header if the request
|
321 |
-
* method was not POST.
|
322 |
-
*/
|
323 |
-
public function requirePostMethod() {
|
324 |
-
// require POST requests
|
325 |
-
if ( $_SERVER['REQUEST_METHOD'] && $_SERVER['REQUEST_METHOD'] != 'POST' ) {
|
326 |
-
header( 'Allow: POST', true, 405 );
|
327 |
-
throw new Exception( 'Invalid HTTP request method.' );
|
328 |
-
}
|
329 |
-
}
|
330 |
-
}
|
331 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php
CHANGED
@@ -832,11 +832,6 @@ class LP_Jwt_Courses_V1_Controller extends LP_REST_Jwt_Posts_Controller {
|
|
832 |
|
833 |
$user_item = $user_course ? $user_course->get_item( $item->get_id() ) : false;
|
834 |
|
835 |
-
if ( $user_item ) {
|
836 |
-
$graduation = $user_item->get_graduation();
|
837 |
-
$status = $user_item->get_status();
|
838 |
-
}
|
839 |
-
|
840 |
if ( $user ) {
|
841 |
$can_view_content_course = $user->can_view_content_course( absint( $section->get_course_id() ) );
|
842 |
$can_view_item = $user->can_view_item( $item->get_id(), $can_view_content_course );
|
@@ -848,8 +843,8 @@ class LP_Jwt_Courses_V1_Controller extends LP_REST_Jwt_Posts_Controller {
|
|
848 |
'title' => $post->post_title,
|
849 |
'preview' => $item->is_preview(),
|
850 |
'duration' => $item->get_duration()->to_timer( $format, true ),
|
851 |
-
'graduation' =>
|
852 |
-
'status' =>
|
853 |
'locked' => isset( $can_view_item->flag ) ? ! $can_view_item->flag : true,
|
854 |
);
|
855 |
}
|
832 |
|
833 |
$user_item = $user_course ? $user_course->get_item( $item->get_id() ) : false;
|
834 |
|
|
|
|
|
|
|
|
|
|
|
835 |
if ( $user ) {
|
836 |
$can_view_content_course = $user->can_view_content_course( absint( $section->get_course_id() ) );
|
837 |
$can_view_item = $user->can_view_item( $item->get_id(), $can_view_content_course );
|
843 |
'title' => $post->post_title,
|
844 |
'preview' => $item->is_preview(),
|
845 |
'duration' => $item->get_duration()->to_timer( $format, true ),
|
846 |
+
'graduation' => $user_item ? $user_item->get_graduation() : '',
|
847 |
+
'status' => $user_item ? $user_item->get_status() : '',
|
848 |
'locked' => isset( $can_view_item->flag ) ? ! $can_view_item->flag : true,
|
849 |
);
|
850 |
}
|
inc/libraries/wp-background-process/classes/wp-background-process.php
CHANGED
@@ -66,7 +66,7 @@ abstract class WP_Background_Process extends WP_Async_Request {
|
|
66 |
* Dispatch
|
67 |
*
|
68 |
* @access public
|
69 |
-
* @return
|
70 |
*/
|
71 |
public function dispatch() {
|
72 |
// Schedule the cron healthcheck.
|
@@ -502,4 +502,4 @@ abstract class WP_Background_Process extends WP_Async_Request {
|
|
502 |
*/
|
503 |
abstract protected function task( $item );
|
504 |
|
505 |
-
}
|
66 |
* Dispatch
|
67 |
*
|
68 |
* @access public
|
69 |
+
* @return array|WP_Error
|
70 |
*/
|
71 |
public function dispatch() {
|
72 |
// Schedule the cron healthcheck.
|
502 |
*/
|
503 |
abstract protected function task( $item );
|
504 |
|
505 |
+
}
|
inc/lp-core-functions.php
CHANGED
@@ -404,45 +404,6 @@ function learn_press_question_name_from_slug( $slug ) {
|
|
404 |
return apply_filters( 'learn-press/question/slug-to-name', $name, $slug );
|
405 |
}
|
406 |
|
407 |
-
/**
|
408 |
-
* Get the post types which supported to insert into course's section
|
409 |
-
*
|
410 |
-
* @return array
|
411 |
-
*/
|
412 |
-
function learn_press_section_item_types() {
|
413 |
-
$types = array(
|
414 |
-
'lp_lesson' => esc_html__( 'Lesson', 'learnpress' ),
|
415 |
-
'lp_quiz' => esc_html__( 'Quiz', 'learnpress' ),
|
416 |
-
);
|
417 |
-
|
418 |
-
return apply_filters( 'learn-press/section/support-item-type', $types );
|
419 |
-
}
|
420 |
-
|
421 |
-
/**
|
422 |
-
* Enqueue js code to print out
|
423 |
-
*
|
424 |
-
* @param string $code
|
425 |
-
* @param bool $script_tag - wrap code between <script> tag
|
426 |
-
* @depecated 4.1.6.8
|
427 |
-
*/
|
428 |
-
function learn_press_enqueue_script( $code, $script_tag = false ) {
|
429 |
-
_deprecated_function( __FUNCTION__, '4.1.6.8' );
|
430 |
-
global $learn_press_queued_js, $learn_press_queued_js_tag;
|
431 |
-
|
432 |
-
if ( $script_tag ) {
|
433 |
-
if ( empty( $learn_press_queued_js_tag ) ) {
|
434 |
-
$learn_press_queued_js_tag = '';
|
435 |
-
}
|
436 |
-
$learn_press_queued_js_tag .= "\n" . $code . "\n";
|
437 |
-
} else {
|
438 |
-
if ( empty( $learn_press_queued_js ) ) {
|
439 |
-
$learn_press_queued_js = '';
|
440 |
-
}
|
441 |
-
|
442 |
-
$learn_press_queued_js .= "\n" . $code . "\n";
|
443 |
-
}
|
444 |
-
}
|
445 |
-
|
446 |
/**
|
447 |
* Get terms of a course by taxonomy.
|
448 |
* E.g: course_tag, course_category
|
@@ -585,113 +546,6 @@ function learn_press_get_post_by_name( $name, $type, $single = true ) {
|
|
585 |
return $id ? get_post( $id ) : false;
|
586 |
}
|
587 |
|
588 |
-
/**
|
589 |
-
* Cache static pages
|
590 |
-
*
|
591 |
-
* @deprecated 4.1.6.8
|
592 |
-
*/
|
593 |
-
/*function learn_press_setup_pages() {
|
594 |
-
global $wpdb;
|
595 |
-
|
596 |
-
$page_ids = LP_Object_Cache::get( 'static-page-ids', 'learn-press' );
|
597 |
-
|
598 |
-
if ( false === $page_ids ) {
|
599 |
-
$pages = learn_press_static_pages( true );
|
600 |
-
$page_ids = array();
|
601 |
-
|
602 |
-
foreach ( $pages as $page ) {
|
603 |
-
$id = get_option( 'learn_press_' . $page . '_page_id' );
|
604 |
-
|
605 |
-
if ( absint( $id ) > 0 ) {
|
606 |
-
$page_ids[] = $id;
|
607 |
-
}
|
608 |
-
}
|
609 |
-
|
610 |
-
if ( ! $page_ids ) {
|
611 |
-
return;
|
612 |
-
}
|
613 |
-
|
614 |
-
$query = $wpdb->prepare(
|
615 |
-
"
|
616 |
-
SELECT ID, post_title, post_name, post_date, post_date_gmt, post_modified, post_modified_gmt, post_content, post_parent, post_type
|
617 |
-
FROM {$wpdb->posts}
|
618 |
-
WHERE %d AND ID IN(" . join( ',', $page_ids ) . ')
|
619 |
-
AND post_status <> %s
|
620 |
-
',
|
621 |
-
1,
|
622 |
-
'trash'
|
623 |
-
);
|
624 |
-
|
625 |
-
if ( ! $rows = $wpdb->get_results( $query ) ) {
|
626 |
-
return;
|
627 |
-
}
|
628 |
-
|
629 |
-
foreach ( $rows as $page ) {
|
630 |
-
$page = sanitize_post( $page, 'raw' );
|
631 |
-
wp_cache_add( $page->ID, $page, 'posts' );
|
632 |
-
}
|
633 |
-
}
|
634 |
-
}*/
|
635 |
-
|
636 |
-
function learn_press_get_course_item_object( $post_type ) {
|
637 |
-
switch ( $post_type ) {
|
638 |
-
case 'lp_quiz':
|
639 |
-
$class = 'LP_Quiz';
|
640 |
-
break;
|
641 |
-
case 'lp_lesson':
|
642 |
-
$class = 'LP_Lesson';
|
643 |
-
break;
|
644 |
-
case 'lp_question':
|
645 |
-
$class = 'LP_Question';
|
646 |
-
}
|
647 |
-
}
|
648 |
-
|
649 |
-
/**
|
650 |
-
* Print out js code in the queue
|
651 |
-
*
|
652 |
-
* @depecated 4.1.6.8
|
653 |
-
*/
|
654 |
-
function learn_press_print_script() {
|
655 |
-
_deprecated_function( __FUNCTION__, '4.1.6.8' );
|
656 |
-
global $learn_press_queued_js, $learn_press_queued_js_tag;
|
657 |
-
|
658 |
-
if ( ! empty( $learn_press_queued_js ) ) {
|
659 |
-
?>
|
660 |
-
<!-- LearnPress JavaScript -->
|
661 |
-
<script type="text/javascript">
|
662 |
-
jQuery(function ($) {
|
663 |
-
<?php
|
664 |
-
$learn_press_queued_js = wp_check_invalid_utf8( $learn_press_queued_js );
|
665 |
-
$learn_press_queued_js = preg_replace( '/&#(x)?0*(?(1)27|39);?/i', "'", $learn_press_queued_js );
|
666 |
-
$learn_press_queued_js = str_replace( "\r", '', $learn_press_queued_js );
|
667 |
-
|
668 |
-
// echo $learn_press_queued_js;
|
669 |
-
?>
|
670 |
-
})
|
671 |
-
</script>
|
672 |
-
|
673 |
-
<?php
|
674 |
-
unset( $learn_press_queued_js );
|
675 |
-
}
|
676 |
-
|
677 |
-
if ( ! empty( $learn_press_queued_js_tag ) ) {
|
678 |
-
// echo $learn_press_queued_js_tag;
|
679 |
-
}
|
680 |
-
}
|
681 |
-
|
682 |
-
// add_action( 'wp_footer', 'learn_press_print_script' );
|
683 |
-
// add_action( 'admin_footer', 'learn_press_print_script' );
|
684 |
-
|
685 |
-
|
686 |
-
/**
|
687 |
-
* @param string $str
|
688 |
-
* @param int $lines
|
689 |
-
* @depecated 4.1.6.8
|
690 |
-
*/
|
691 |
-
/*function learn_press_email_new_line( $lines = 1, $str = "\r\n" ) {
|
692 |
-
echo str_repeat( $str, $lines );
|
693 |
-
}*/
|
694 |
-
|
695 |
if ( ! function_exists( 'learn_press_is_ajax' ) ) {
|
696 |
function learn_press_is_ajax() {
|
697 |
return defined( 'LP_DOING_AJAX' ) && LP_DOING_AJAX && 'yes' != learn_press_get_request( 'noajax' );
|
@@ -1587,22 +1441,6 @@ function learn_press_seconds_to_weeks( int $secs = 0 ) {
|
|
1587 |
return $result;
|
1588 |
}
|
1589 |
|
1590 |
-
/**
|
1591 |
-
* @depecated since version 4.1.6.6
|
1592 |
-
*/
|
1593 |
-
/*function learn_press_get_query_var( $var ) {
|
1594 |
-
global $wp_query;
|
1595 |
-
|
1596 |
-
$return = null;
|
1597 |
-
if ( ! empty( $wp_query->query_vars[ $var ] ) ) {
|
1598 |
-
$return = $wp_query->query_vars[ $var ];
|
1599 |
-
} elseif ( ! empty( $_REQUEST[ $var ] ) ) {
|
1600 |
-
$return = $_REQUEST[ $var ];
|
1601 |
-
}
|
1602 |
-
|
1603 |
-
return apply_filters( 'learn_press_query_var', $return, $var );
|
1604 |
-
}*/
|
1605 |
-
|
1606 |
function learn_press_course_lesson_permalink_friendly( $permalink, $lesson_id, $course_id ) {
|
1607 |
if ( '' != get_option( 'permalink_structure' ) ) {
|
1608 |
if ( preg_match( '!\?lesson=([^\?\&]*)!', $permalink, $matches ) ) {
|
@@ -1811,11 +1649,11 @@ function learn_press_maybe_send_json( $data, $callback = null ) {
|
|
1811 |
* @return mixed
|
1812 |
*/
|
1813 |
function learn_press_get_request( $key, $default = null, $hash = null ) {
|
1814 |
-
$return =
|
1815 |
|
1816 |
if ( $hash ) {
|
1817 |
if ( ! empty( $hash[ $key ] ) ) {
|
1818 |
-
$return =
|
1819 |
}
|
1820 |
} else {
|
1821 |
if ( ! empty( $_POST[ $key ] ) ) {
|
@@ -2302,7 +2140,7 @@ function learn_press_single_term_title( $prefix = '', $display = true ) {
|
|
2302 |
}
|
2303 |
|
2304 |
if ( $display ) {
|
2305 |
-
echo $prefix . $term_name;
|
2306 |
}
|
2307 |
|
2308 |
return $prefix . $term_name;
|
404 |
return apply_filters( 'learn-press/question/slug-to-name', $name, $slug );
|
405 |
}
|
406 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
407 |
/**
|
408 |
* Get terms of a course by taxonomy.
|
409 |
* E.g: course_tag, course_category
|
546 |
return $id ? get_post( $id ) : false;
|
547 |
}
|
548 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
549 |
if ( ! function_exists( 'learn_press_is_ajax' ) ) {
|
550 |
function learn_press_is_ajax() {
|
551 |
return defined( 'LP_DOING_AJAX' ) && LP_DOING_AJAX && 'yes' != learn_press_get_request( 'noajax' );
|
1441 |
return $result;
|
1442 |
}
|
1443 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1444 |
function learn_press_course_lesson_permalink_friendly( $permalink, $lesson_id, $course_id ) {
|
1445 |
if ( '' != get_option( 'permalink_structure' ) ) {
|
1446 |
if ( preg_match( '!\?lesson=([^\?\&]*)!', $permalink, $matches ) ) {
|
1649 |
* @return mixed
|
1650 |
*/
|
1651 |
function learn_press_get_request( $key, $default = null, $hash = null ) {
|
1652 |
+
$return = $default;
|
1653 |
|
1654 |
if ( $hash ) {
|
1655 |
if ( ! empty( $hash[ $key ] ) ) {
|
1656 |
+
$return = $hash[ $key ];
|
1657 |
}
|
1658 |
} else {
|
1659 |
if ( ! empty( $_POST[ $key ] ) ) {
|
2140 |
}
|
2141 |
|
2142 |
if ( $display ) {
|
2143 |
+
echo wp_kses_post( $prefix . $term_name );
|
2144 |
}
|
2145 |
|
2146 |
return $prefix . $term_name;
|
inc/lp-deprecated.php
CHANGED
@@ -389,8 +389,10 @@ function learn_press_get_students_list_filter() {
|
|
389 |
return apply_filters( 'learn_press_get_students_list_filter', $filter );
|
390 |
}
|
391 |
|
392 |
-
|
393 |
-
|
|
|
|
|
394 |
$request = array();
|
395 |
if ( $args ) {
|
396 |
foreach ( $args as $key ) {
|
@@ -399,7 +401,7 @@ function learn_press_get_request_args( $args = array() ) {
|
|
399 |
}
|
400 |
|
401 |
return $request;
|
402 |
-
}
|
403 |
|
404 |
|
405 |
/**
|
@@ -1362,37 +1364,6 @@ if ( ! function_exists( 'learn_press_profile_mobile_menu' ) ) {
|
|
1362 |
}
|
1363 |
}
|
1364 |
|
1365 |
-
/**
|
1366 |
-
* @deprecated
|
1367 |
-
*
|
1368 |
-
* @return bool
|
1369 |
-
*/
|
1370 |
-
function learn_press_is_content_only() {
|
1371 |
-
global $wp;
|
1372 |
-
|
1373 |
-
return ! empty( $wp->query_vars['content-item-only'] );
|
1374 |
-
}
|
1375 |
-
|
1376 |
-
if ( ! function_exists( 'learn_press_profile_localize_script' ) ) {
|
1377 |
-
|
1378 |
-
/**
|
1379 |
-
* @deprecated
|
1380 |
-
*
|
1381 |
-
* Translate javascript text
|
1382 |
-
*/
|
1383 |
-
function learn_press_profile_localize_script( $assets ) {
|
1384 |
-
$translate = array(
|
1385 |
-
'confirm_cancel_order' => array(
|
1386 |
-
'message' => __( 'Are you sure you want to cancel order?', 'learnpress' ),
|
1387 |
-
'title' => __( 'Cancel Order', 'learnpress' ),
|
1388 |
-
),
|
1389 |
-
);
|
1390 |
-
// LP_Assets::add_localize( $translate );
|
1391 |
-
}
|
1392 |
-
}
|
1393 |
-
add_action( 'learn_press_enqueue_scripts', 'learn_press_profile_localize_script' );
|
1394 |
-
|
1395 |
-
|
1396 |
/**
|
1397 |
* Redirect back to course if the order have one course in that
|
1398 |
*
|
389 |
return apply_filters( 'learn_press_get_students_list_filter', $filter );
|
390 |
}
|
391 |
|
392 |
+
/**
|
393 |
+
* @depecated 4.1.6.9
|
394 |
+
*/
|
395 |
+
/*function learn_press_get_request_args( $args = array() ) {
|
396 |
$request = array();
|
397 |
if ( $args ) {
|
398 |
foreach ( $args as $key ) {
|
401 |
}
|
402 |
|
403 |
return $request;
|
404 |
+
}*/
|
405 |
|
406 |
|
407 |
/**
|
1364 |
}
|
1365 |
}
|
1366 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1367 |
/**
|
1368 |
* Redirect back to course if the order have one course in that
|
1369 |
*
|
inc/lp-template-hooks.php
CHANGED
@@ -376,7 +376,7 @@ add_action(
|
|
376 |
*/
|
377 |
add_action(
|
378 |
'learn-press/single-button-toggle-sidebar',
|
379 |
-
LP()->template( 'course' )->text( '<input type="checkbox" id="sidebar-toggle" />' ),
|
380 |
5
|
381 |
);
|
382 |
|
376 |
*/
|
377 |
add_action(
|
378 |
'learn-press/single-button-toggle-sidebar',
|
379 |
+
LP()->template( 'course' )->text( '<input type="checkbox" id="sidebar-toggle" />', 'single-button-toggle-sidebar' ),
|
380 |
5
|
381 |
);
|
382 |
|
inc/lp-webhooks.php
CHANGED
@@ -72,7 +72,7 @@ function learn_press_process_web_hooks() {
|
|
72 |
} else {
|
73 |
|
74 |
}
|
75 |
-
$web_hooks_processed[ $param ] = $_REQUEST;
|
76 |
break;
|
77 |
}
|
78 |
}
|
72 |
} else {
|
73 |
|
74 |
}
|
75 |
+
$web_hooks_processed[ $param ] = LP_Helper::sanitize_params_submitted( $_REQUEST );
|
76 |
break;
|
77 |
}
|
78 |
}
|
inc/order/class-lp-order.php
CHANGED
@@ -324,7 +324,7 @@ if ( ! class_exists( 'LP_Order' ) ) {
|
|
324 |
* @param string $new_status
|
325 |
* @param string $note - Optional. Note for changing status.
|
326 |
*/
|
327 |
-
public function set_status( string $new_status, string $note = '' ) {
|
328 |
$new_status = 'lp-' === substr( $new_status, 0, 3 ) ? substr( $new_status, 3 ) : $new_status;
|
329 |
$valid_statuses = learn_press_get_order_statuses( false, true );
|
330 |
|
324 |
* @param string $new_status
|
325 |
* @param string $note - Optional. Note for changing status.
|
326 |
*/
|
327 |
+
public function set_status( string $new_status = '', string $note = '' ) {
|
328 |
$new_status = 'lp-' === substr( $new_status, 0, 3 ) ? substr( $new_status, 3 ) : $new_status;
|
329 |
$valid_statuses = learn_press_get_order_statuses( false, true );
|
330 |
|
inc/templates/class-lp-template-course.php
CHANGED
@@ -88,24 +88,6 @@ class LP_Template_Course extends LP_Abstract_Template {
|
|
88 |
echo wp_kses_post( $course->get_image() );
|
89 |
}
|
90 |
|
91 |
-
/**
|
92 |
-
* @editor tungnx
|
93 |
-
* @modify 4.1.3
|
94 |
-
*/
|
95 |
-
/*
|
96 |
-
public function loop_item_user_progress() {
|
97 |
-
$course = learn_press_get_course();
|
98 |
-
$user = learn_press_get_current_user();
|
99 |
-
|
100 |
-
if ( ! $user || ! $course ) {
|
101 |
-
return;
|
102 |
-
}
|
103 |
-
|
104 |
-
if ( $user->has_enrolled_course( $course->get_id() ) ) {
|
105 |
-
echo $user->get_course_status( $course->get_id() );
|
106 |
-
}
|
107 |
-
}*/
|
108 |
-
|
109 |
/**
|
110 |
* @param LP_Quiz $item
|
111 |
*/
|
88 |
echo wp_kses_post( $course->get_image() );
|
89 |
}
|
90 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
91 |
/**
|
92 |
* @param LP_Quiz $item
|
93 |
*/
|
inc/user-item/class-lp-user-item-course.php
CHANGED
@@ -202,13 +202,20 @@ class LP_User_Item_Course extends LP_User_Item implements ArrayAccess {
|
|
202 |
return false;
|
203 |
}*/
|
204 |
|
205 |
-
|
206 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
207 |
if ( $return == '' ) {
|
208 |
-
return $
|
209 |
}
|
210 |
|
211 |
-
return $
|
212 |
}
|
213 |
|
214 |
/**
|
@@ -377,20 +384,14 @@ class LP_User_Item_Course extends LP_User_Item implements ArrayAccess {
|
|
377 |
* @param string $context
|
378 |
*
|
379 |
* @return string
|
|
|
380 |
*/
|
381 |
-
public function get_grade( string $context = '
|
382 |
$grade = $this->get_graduation() ?? '';
|
383 |
|
384 |
return $context == 'display' ? learn_press_course_grade_html( $grade, false ) : $grade;
|
385 |
}
|
386 |
|
387 |
-
/**
|
388 |
-
* @return bool
|
389 |
-
*/
|
390 |
-
public function is_passed() {
|
391 |
-
return $this->get_grade() == 'passed';
|
392 |
-
}
|
393 |
-
|
394 |
/**
|
395 |
* @param int $decimal
|
396 |
*
|
@@ -657,8 +658,6 @@ class LP_User_Item_Course extends LP_User_Item implements ArrayAccess {
|
|
657 |
|
658 |
/**
|
659 |
* Check course of use has enrolled
|
660 |
-
*
|
661 |
-
* @throws Exception
|
662 |
*/
|
663 |
public function is_enrolled(): bool {
|
664 |
return $this->get_status() == LP_COURSE_ENROLLED;
|
@@ -666,8 +665,6 @@ class LP_User_Item_Course extends LP_User_Item implements ArrayAccess {
|
|
666 |
|
667 |
/**
|
668 |
* Check course of use has purchased
|
669 |
-
*
|
670 |
-
* @throws Exception
|
671 |
* @author tungnx
|
672 |
* @since 4.1.3
|
673 |
* @version 1.0.0
|
202 |
return false;
|
203 |
}*/
|
204 |
|
205 |
+
/**
|
206 |
+
* Get course.
|
207 |
+
*
|
208 |
+
* @param string $return
|
209 |
+
*
|
210 |
+
* @return bool|LP_Course|int|mixed
|
211 |
+
*/
|
212 |
+
public function get_course( string $return = '' ) {
|
213 |
+
$course_id = $this->get_data( 'item_id', 0 );
|
214 |
if ( $return == '' ) {
|
215 |
+
return $course_id ? learn_press_get_course( $course_id ) : false;
|
216 |
}
|
217 |
|
218 |
+
return $course_id;
|
219 |
}
|
220 |
|
221 |
/**
|
384 |
* @param string $context
|
385 |
*
|
386 |
* @return string
|
387 |
+
* @depecated 4.1.6.9.3
|
388 |
*/
|
389 |
+
public function get_grade( string $context = '' ): string {
|
390 |
$grade = $this->get_graduation() ?? '';
|
391 |
|
392 |
return $context == 'display' ? learn_press_course_grade_html( $grade, false ) : $grade;
|
393 |
}
|
394 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
395 |
/**
|
396 |
* @param int $decimal
|
397 |
*
|
658 |
|
659 |
/**
|
660 |
* Check course of use has enrolled
|
|
|
|
|
661 |
*/
|
662 |
public function is_enrolled(): bool {
|
663 |
return $this->get_status() == LP_COURSE_ENROLLED;
|
665 |
|
666 |
/**
|
667 |
* Check course of use has purchased
|
|
|
|
|
668 |
* @author tungnx
|
669 |
* @since 4.1.3
|
670 |
* @version 1.0.0
|
inc/user-item/class-lp-user-item-quiz.php
CHANGED
@@ -242,17 +242,6 @@ class LP_User_Item_Quiz extends LP_User_Item {
|
|
242 |
return $prop ? $result[ $prop ] : new LP_Quiz_Results( $result );
|
243 |
}
|
244 |
|
245 |
-
/**
|
246 |
-
* Get user quiz graduation. [passed, failed, null]
|
247 |
-
*
|
248 |
-
* @since 4.0.0
|
249 |
-
*
|
250 |
-
* @return string
|
251 |
-
*/
|
252 |
-
public function get_graduation() {
|
253 |
-
return apply_filters( 'learn-press/user-quiz-graduation', $this->get_data( 'graduation' ), $this->get_item_id(), $this->get_course_id(), $this->get_user() );
|
254 |
-
}
|
255 |
-
|
256 |
/**
|
257 |
* Get user quiz graduation text for displaying purpose. [Passed, Failed, null]
|
258 |
*
|
@@ -598,10 +587,6 @@ class LP_User_Item_Quiz extends LP_User_Item {
|
|
598 |
return LP_User_Items_Result_DB::instance()->get_result( $this->get_user_item_id() );
|
599 |
}
|
600 |
|
601 |
-
public function is_passed() {
|
602 |
-
return $this->get_graduation();
|
603 |
-
}
|
604 |
-
|
605 |
public function get_percent_result( $decimal = 2 ) {
|
606 |
return apply_filters( 'learn-press/user/quiz-percent-result', sprintf( '%s%%', round( $this->get_result( 'result' ), $decimal ), $this->get_user_id(), $this->get_item_id() ) );
|
607 |
}
|
242 |
return $prop ? $result[ $prop ] : new LP_Quiz_Results( $result );
|
243 |
}
|
244 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
245 |
/**
|
246 |
* Get user quiz graduation text for displaying purpose. [Passed, Failed, null]
|
247 |
*
|
587 |
return LP_User_Items_Result_DB::instance()->get_result( $this->get_user_item_id() );
|
588 |
}
|
589 |
|
|
|
|
|
|
|
|
|
590 |
public function get_percent_result( $decimal = 2 ) {
|
591 |
return apply_filters( 'learn-press/user/quiz-percent-result', sprintf( '%s%%', round( $this->get_result( 'result' ), $decimal ), $this->get_user_id(), $this->get_item_id() ) );
|
592 |
}
|
inc/user-item/class-lp-user-item.php
CHANGED
@@ -368,18 +368,20 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
368 |
*
|
369 |
* @return string|LP_Datetime $time
|
370 |
* @since 3.3.0
|
|
|
371 |
*/
|
372 |
-
public function get_expiration_time( $format = '' ) {
|
373 |
$duration = get_post_meta( $this->get_item_id(), '_lp_duration', true );
|
374 |
$start_time = $this->get_start_time( '', false );
|
375 |
|
376 |
if ( ! absint( $duration ) || ! $start_time ) {
|
377 |
-
|
|
|
|
|
|
|
378 |
}
|
379 |
|
380 |
-
|
381 |
-
|
382 |
-
return $this->format_time( $date, $format );
|
383 |
}
|
384 |
|
385 |
/**
|
@@ -407,10 +409,6 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
407 |
* @modify 4.1.3
|
408 |
*/
|
409 |
public function get_status( string $field = 'status', bool $force_cache = false ): string {
|
410 |
-
/*if ( ! is_null( $this->get_data( $field, null ) && ! $force_cache ) ) {
|
411 |
-
return $this->get_data( $field );
|
412 |
-
}*/
|
413 |
-
|
414 |
$got_status = '';
|
415 |
|
416 |
try {
|
@@ -445,21 +443,6 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
445 |
return ! ! $this->get_user_item_id();
|
446 |
}
|
447 |
|
448 |
-
/**
|
449 |
-
* @editor tungnx
|
450 |
-
* @reason comment - not use
|
451 |
-
*/
|
452 |
-
/*
|
453 |
-
public function is_available() {
|
454 |
-
if ( null === $this->_is_available ) {
|
455 |
-
$user = $this->get_user();
|
456 |
-
$order = $user->get_course_order( $this->get_item_id() );
|
457 |
-
$this->_is_available = $order && ( $order->get_status() === 'completed' ) && $this->is_exists();
|
458 |
-
}
|
459 |
-
|
460 |
-
return $this->_is_available;
|
461 |
-
}*/
|
462 |
-
|
463 |
/**
|
464 |
* @param string $return
|
465 |
*
|
@@ -469,13 +452,20 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
469 |
return $this->get_data( 'user_id', 0 );
|
470 |
}
|
471 |
|
472 |
-
|
473 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
474 |
if ( $return == '' ) {
|
475 |
-
return $
|
476 |
}
|
477 |
|
478 |
-
return $
|
479 |
}
|
480 |
|
481 |
/**
|
@@ -744,10 +734,16 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
744 |
/**
|
745 |
* Get graduation
|
746 |
*
|
747 |
-
* @
|
|
|
|
|
748 |
*/
|
749 |
-
public function get_graduation() {
|
750 |
-
|
|
|
|
|
|
|
|
|
751 |
}
|
752 |
|
753 |
/**
|
@@ -842,7 +838,7 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
842 |
return $interval;
|
843 |
}
|
844 |
|
845 |
-
public function get_history() {
|
846 |
return LP_Object_Cache::get(
|
847 |
sprintf(
|
848 |
'course-item-%s-%s-%s',
|
@@ -852,7 +848,7 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
852 |
),
|
853 |
'learn-press/user-course-items'
|
854 |
);
|
855 |
-
}
|
856 |
|
857 |
/**
|
858 |
* @editor tungnx
|
@@ -1080,8 +1076,9 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
1080 |
*
|
1081 |
* @return LP_Datetime
|
1082 |
* @since 3.3.0
|
|
|
1083 |
*/
|
1084 |
-
public function set_duration( $duration ) {
|
1085 |
if ( $duration instanceof LP_Datetime ) {
|
1086 |
$period = $duration->toSql();
|
1087 |
} else {
|
@@ -1089,15 +1086,18 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
1089 |
}
|
1090 |
|
1091 |
return $this->get_expiration_time();
|
1092 |
-
}
|
1093 |
|
1094 |
-
|
|
|
|
|
|
|
1095 |
|
1096 |
$new_data = $this->get_mysql_data();
|
1097 |
ksort( $new_data );
|
1098 |
|
1099 |
return $this->_data_key !== md5( serialize( $new_data ) );
|
1100 |
-
}
|
1101 |
|
1102 |
protected function _set_data_date( $key, $value, $extra = false ) {
|
1103 |
if ( $value instanceof LP_Datetime ) {
|
@@ -1115,8 +1115,9 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
1115 |
* @param $arguments
|
1116 |
*
|
1117 |
* @return mixed
|
|
|
1118 |
*/
|
1119 |
-
public function __call( $name, $arguments ) {
|
1120 |
if ( ! method_exists( $this, $name ) ) {
|
1121 |
$course = $this->get_course();
|
1122 |
|
@@ -1130,7 +1131,7 @@ class LP_User_Item extends LP_Abstract_Object_Data implements ArrayAccess {
|
|
1130 |
}
|
1131 |
|
1132 |
return false;
|
1133 |
-
}
|
1134 |
|
1135 |
public function offsetSet( $offset, $value ) {
|
1136 |
// TODO: Implement offsetSet() method.
|
368 |
*
|
369 |
* @return string|LP_Datetime $time
|
370 |
* @since 3.3.0
|
371 |
+
* @version 3.3.1
|
372 |
*/
|
373 |
+
public function get_expiration_time( string $format = '' ) {
|
374 |
$duration = get_post_meta( $this->get_item_id(), '_lp_duration', true );
|
375 |
$start_time = $this->get_start_time( '', false );
|
376 |
|
377 |
if ( ! absint( $duration ) || ! $start_time ) {
|
378 |
+
$expire = null;
|
379 |
+
} else {
|
380 |
+
$date = new LP_Datetime( $start_time->getPeriod( $duration, true ) );
|
381 |
+
$expire = $this->format_time( $date, $format );
|
382 |
}
|
383 |
|
384 |
+
return apply_filters( 'learn-press/user-item/expiration-time', $expire, $format, $this );
|
|
|
|
|
385 |
}
|
386 |
|
387 |
/**
|
409 |
* @modify 4.1.3
|
410 |
*/
|
411 |
public function get_status( string $field = 'status', bool $force_cache = false ): string {
|
|
|
|
|
|
|
|
|
412 |
$got_status = '';
|
413 |
|
414 |
try {
|
443 |
return ! ! $this->get_user_item_id();
|
444 |
}
|
445 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
446 |
/**
|
447 |
* @param string $return
|
448 |
*
|
452 |
return $this->get_data( 'user_id', 0 );
|
453 |
}
|
454 |
|
455 |
+
/**
|
456 |
+
* Get course.
|
457 |
+
*
|
458 |
+
* @param string $return
|
459 |
+
*
|
460 |
+
* @return bool|LP_Course|int|mixed
|
461 |
+
*/
|
462 |
+
public function get_course( string $return = '' ) {
|
463 |
+
$course_id = $this->get_data( 'ref_id', 0 );
|
464 |
if ( $return == '' ) {
|
465 |
+
return $course_id ? learn_press_get_course( $course_id ) : false;
|
466 |
}
|
467 |
|
468 |
+
return $course_id;
|
469 |
}
|
470 |
|
471 |
/**
|
734 |
/**
|
735 |
* Get graduation
|
736 |
*
|
737 |
+
* @param string $context
|
738 |
+
*
|
739 |
+
* @return string
|
740 |
*/
|
741 |
+
public function get_graduation( string $context = '' ): string {
|
742 |
+
$grade = $this->get_data( 'graduation', '' );
|
743 |
+
if ( ! $grade ) {
|
744 |
+
return '';
|
745 |
+
}
|
746 |
+
return $context == 'display' ? learn_press_course_grade_html( $grade, false ) : $grade;
|
747 |
}
|
748 |
|
749 |
/**
|
838 |
return $interval;
|
839 |
}
|
840 |
|
841 |
+
/*public function get_history() {
|
842 |
return LP_Object_Cache::get(
|
843 |
sprintf(
|
844 |
'course-item-%s-%s-%s',
|
848 |
),
|
849 |
'learn-press/user-course-items'
|
850 |
);
|
851 |
+
}*/
|
852 |
|
853 |
/**
|
854 |
* @editor tungnx
|
1076 |
*
|
1077 |
* @return LP_Datetime
|
1078 |
* @since 3.3.0
|
1079 |
+
* @depecated 4.1.6.9.4
|
1080 |
*/
|
1081 |
+
/*public function set_duration( $duration ) {
|
1082 |
if ( $duration instanceof LP_Datetime ) {
|
1083 |
$period = $duration->toSql();
|
1084 |
} else {
|
1086 |
}
|
1087 |
|
1088 |
return $this->get_expiration_time();
|
1089 |
+
}*/
|
1090 |
|
1091 |
+
/**
|
1092 |
+
* @depecated 4.1.6.9.4
|
1093 |
+
*/
|
1094 |
+
/*public function is_change() {
|
1095 |
|
1096 |
$new_data = $this->get_mysql_data();
|
1097 |
ksort( $new_data );
|
1098 |
|
1099 |
return $this->_data_key !== md5( serialize( $new_data ) );
|
1100 |
+
}*/
|
1101 |
|
1102 |
protected function _set_data_date( $key, $value, $extra = false ) {
|
1103 |
if ( $value instanceof LP_Datetime ) {
|
1115 |
* @param $arguments
|
1116 |
*
|
1117 |
* @return mixed
|
1118 |
+
* @depecated 4.1.6.9.4
|
1119 |
*/
|
1120 |
+
/*public function __call( $name, $arguments ) {
|
1121 |
if ( ! method_exists( $this, $name ) ) {
|
1122 |
$course = $this->get_course();
|
1123 |
|
1131 |
}
|
1132 |
|
1133 |
return false;
|
1134 |
+
}*/
|
1135 |
|
1136 |
public function offsetSet( $offset, $value ) {
|
1137 |
// TODO: Implement offsetSet() method.
|
inc/user/abstract-lp-user.php
CHANGED
@@ -817,164 +817,6 @@ if ( ! class_exists( 'LP_Abstract_User' ) ) {
|
|
817 |
return apply_filters( 'learn_press_user_quiz_last_results', $results, $quiz_id, $this );
|
818 |
}
|
819 |
|
820 |
-
/**
|
821 |
-
* Get history of a quiz for an user
|
822 |
-
*
|
823 |
-
* @param int $quiz_id
|
824 |
-
* @param int $course_id
|
825 |
-
* @param int $history_id
|
826 |
-
* @param bool $force
|
827 |
-
*
|
828 |
-
* @return mixed|null|void
|
829 |
-
* @editor tungnx
|
830 |
-
* @modify 4.1.4.1 - comment - not use
|
831 |
-
*/
|
832 |
-
/*public function get_quiz_history( $quiz_id, $course_id = 0, $history_id = null, $force = false ) {
|
833 |
-
$course_id = $this->_get_course( $course_id );
|
834 |
-
|
835 |
-
$course = learn_press_get_course( $course_id );
|
836 |
-
if ( $course ) {
|
837 |
-
$quizzes = $course->get_quizzes( 'ID' );
|
838 |
-
} else {
|
839 |
-
$quizzes = array();
|
840 |
-
}
|
841 |
-
$key = $this->get_id() . '-' . $course_id . '-' . $quiz_id;
|
842 |
-
|
843 |
-
$cached = LP_Cache::get_quiz_history( false, array() );
|
844 |
-
|
845 |
-
if ( ( ! array_key_exists( $key, $cached ) || $force ) && $quizzes && in_array( $quiz_id, $quizzes ) ) {
|
846 |
-
global $wpdb;
|
847 |
-
$t1 = $wpdb->learnpress_user_items;
|
848 |
-
$t2 = $wpdb->learnpress_user_itemmeta;
|
849 |
-
$in = array_fill( 0, sizeof( $quizzes ), '%d' );
|
850 |
-
$prepare_params = array_merge(
|
851 |
-
array( 'lp_quiz', $this->get_id(), $course_id ),
|
852 |
-
$quizzes
|
853 |
-
);
|
854 |
-
$query = $wpdb->prepare(
|
855 |
-
"
|
856 |
-
SELECT *
|
857 |
-
FROM $t1 uq
|
858 |
-
WHERE uq.item_type = %s
|
859 |
-
AND uq.user_id = %d
|
860 |
-
AND uq.ref_id = %d
|
861 |
-
AND uq.item_id IN(" . join( ',', $in ) . ')
|
862 |
-
ORDER BY uq.user_item_id DESC
|
863 |
-
',
|
864 |
-
$prepare_params
|
865 |
-
);
|
866 |
-
|
867 |
-
$history = array();
|
868 |
-
foreach ( $quizzes as $_quiz_id ) {
|
869 |
-
$history[ $this->get_id() . '-' . $course_id . '-' . $_quiz_id ] = array();
|
870 |
-
}
|
871 |
-
if ( $results = $wpdb->get_results( $query ) ) {
|
872 |
-
$item_ids = array();
|
873 |
-
foreach ( $results as $result ) {
|
874 |
-
$item_ids[] = $result->user_item_id;
|
875 |
-
$cache_key = $this->get_id() . '-' . $course_id . '-' . $result->item_id;
|
876 |
-
if ( empty( $history[ $cache_key ] ) ) {
|
877 |
-
$history[ $cache_key ] = array();
|
878 |
-
}
|
879 |
-
// limit newest 10 items
|
880 |
-
if ( sizeof( $history[ $cache_key ] ) >= 10 ) {
|
881 |
-
// break;
|
882 |
-
}
|
883 |
-
|
884 |
-
$history[ $cache_key ][ $result->user_item_id ] = (object) array(
|
885 |
-
'history_id' => $result->user_item_id,
|
886 |
-
'start' => $result->start_time,
|
887 |
-
'end' => $result->end_time,
|
888 |
-
'status' => $result->status,
|
889 |
-
'question' => '',
|
890 |
-
'questions' => array(),
|
891 |
-
'question_answers' => array(),
|
892 |
-
);
|
893 |
-
}
|
894 |
-
if ( $item_ids && $meta = $this->_get_quiz_meta( $item_ids ) ) {
|
895 |
-
$maps = array(
|
896 |
-
'questions' => 'questions',
|
897 |
-
'current_question' => 'question',
|
898 |
-
'question_answers' => 'question_answers',
|
899 |
-
'question_checked' => 'question_checked',
|
900 |
-
);
|
901 |
-
foreach ( $meta as $k => $v ) {
|
902 |
-
$_key = $this->get_id() . '-' . $course_id . '-' . $v->item_id;
|
903 |
-
if ( empty( $history[ $_key ] ) ) {
|
904 |
-
continue;
|
905 |
-
}
|
906 |
-
if ( empty( $history[ $_key ][ $v->user_item_id ] ) ) {
|
907 |
-
continue;
|
908 |
-
}
|
909 |
-
$obj_key = ! empty( $maps[ $v->meta_key ] ) ? $maps[ $v->meta_key ] : $v->meta_key;
|
910 |
-
if ( ! $obj_key ) {
|
911 |
-
continue;
|
912 |
-
}
|
913 |
-
$history[ $_key ][ $v->user_item_id ]->{$obj_key} = LP_Helper::maybe_unserialize( $v->meta_value );
|
914 |
-
}
|
915 |
-
}
|
916 |
-
}
|
917 |
-
|
918 |
-
if ( $history ) {
|
919 |
-
foreach ( $history as $k1 => $v1 ) {
|
920 |
-
if ( empty( $cached[ $k1 ] ) ) {
|
921 |
-
$cached[ $k1 ] = $v1;
|
922 |
-
continue;
|
923 |
-
}
|
924 |
-
foreach ( $v1 as $k2 => $v2 ) {
|
925 |
-
$cached[ $k1 ][ $k2 ] = $v2;
|
926 |
-
}
|
927 |
-
}
|
928 |
-
}
|
929 |
-
LP_Cache::set_quiz_history( $cached );
|
930 |
-
}
|
931 |
-
|
932 |
-
return apply_filters(
|
933 |
-
'learn_press_user_quiz_history',
|
934 |
-
isset( $cached[ $key ] ) ? $cached[ $key ] : array(),
|
935 |
-
$this,
|
936 |
-
$quiz_id
|
937 |
-
);
|
938 |
-
}*/
|
939 |
-
|
940 |
-
/**
|
941 |
-
* @editor tungnx
|
942 |
-
* @modify 4.1.4.1 - comment - not use
|
943 |
-
*/
|
944 |
-
/*private function _get_quiz_meta( $user_item_id ) {
|
945 |
-
global $wpdb;
|
946 |
-
settype( $user_item_id, 'array' );
|
947 |
-
$in = array_fill( 0, sizeof( $user_item_id ), '%d' );
|
948 |
-
|
949 |
-
$query = $wpdb->prepare(
|
950 |
-
"
|
951 |
-
SELECT learnpress_user_item_id as user_item_id, meta_key, meta_value, item_id
|
952 |
-
FROM {$wpdb->prefix}learnpress_user_itemmeta im
|
953 |
-
INNER JOIN {$wpdb->prefix}learnpress_user_items i ON i.user_item_id = im.learnpress_user_item_id
|
954 |
-
WHERE learnpress_user_item_id IN(" . join( ',', $in ) . ')
|
955 |
-
',
|
956 |
-
$user_item_id
|
957 |
-
);
|
958 |
-
|
959 |
-
return $wpdb->get_results( $query );
|
960 |
-
}*/
|
961 |
-
|
962 |
-
/**
|
963 |
-
* @editor tungnx
|
964 |
-
* @modify 4.1.4.1 comment - not use
|
965 |
-
*/
|
966 |
-
/*public function get_current_results( $quiz_id, $course_id = 0 ) {
|
967 |
-
$course_id = $this->_get_course( $course_id );
|
968 |
-
|
969 |
-
$history = $this->get_quiz_history( $quiz_id, $course_id );
|
970 |
-
$current = false;
|
971 |
-
if ( $history ) {
|
972 |
-
$current = reset( $history );
|
973 |
-
}
|
974 |
-
|
975 |
-
return $current;
|
976 |
-
}*/
|
977 |
-
|
978 |
/**
|
979 |
* Check if user has at least one role.
|
980 |
*
|
@@ -1211,11 +1053,7 @@ if ( ! class_exists( 'LP_Abstract_User' ) ) {
|
|
1211 |
public function has_passed_course( $course_id ) {
|
1212 |
$user_course = $this->get_course_data( $course_id );
|
1213 |
|
1214 |
-
|
1215 |
-
return true;
|
1216 |
-
} else {
|
1217 |
-
return false;
|
1218 |
-
}
|
1219 |
}
|
1220 |
|
1221 |
/**
|
@@ -1607,14 +1445,17 @@ if ( ! class_exists( 'LP_Abstract_User' ) ) {
|
|
1607 |
}
|
1608 |
|
1609 |
/**
|
|
|
|
|
1610 |
* @param $item
|
1611 |
* @param int $course_id
|
1612 |
* @param bool $force
|
1613 |
*
|
1614 |
* @return mixed|void
|
|
|
|
|
1615 |
*/
|
1616 |
public function has_completed_item( $item, $course_id = 0, $force = false ) {
|
1617 |
-
|
1618 |
$course_id = $this->_get_course( $course_id );
|
1619 |
|
1620 |
$return = false;
|
@@ -1627,19 +1468,9 @@ if ( ! class_exists( 'LP_Abstract_User' ) ) {
|
|
1627 |
$item_id = absint( $item['ID'] );
|
1628 |
}
|
1629 |
}
|
1630 |
-
if ( $item_id ) {
|
1631 |
-
if ( empty( $item['item_type'] ) ) {
|
1632 |
-
$type = learn_press_get_post_type( $item_id );
|
1633 |
-
} else {
|
1634 |
-
$type = $item['item_type'];
|
1635 |
-
}
|
1636 |
-
if ( ! $type ) {
|
1637 |
-
$type = learn_press_get_post_type( $item_id );
|
1638 |
-
}
|
1639 |
|
1640 |
-
|
1641 |
-
|
1642 |
-
}
|
1643 |
}
|
1644 |
|
1645 |
return apply_filters( 'learn_press_user_has_completed_item', $return, $item );
|
817 |
return apply_filters( 'learn_press_user_quiz_last_results', $results, $quiz_id, $this );
|
818 |
}
|
819 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
820 |
/**
|
821 |
* Check if user has at least one role.
|
822 |
*
|
1053 |
public function has_passed_course( $course_id ) {
|
1054 |
$user_course = $this->get_course_data( $course_id );
|
1055 |
|
1056 |
+
return $user_course && $user_course->is_passed();
|
|
|
|
|
|
|
|
|
1057 |
}
|
1058 |
|
1059 |
/**
|
1445 |
}
|
1446 |
|
1447 |
/**
|
1448 |
+
* Check item completed.
|
1449 |
+
*
|
1450 |
* @param $item
|
1451 |
* @param int $course_id
|
1452 |
* @param bool $force
|
1453 |
*
|
1454 |
* @return mixed|void
|
1455 |
+
* @version 3.0.1
|
1456 |
+
* @since 3.0.0
|
1457 |
*/
|
1458 |
public function has_completed_item( $item, $course_id = 0, $force = false ) {
|
|
|
1459 |
$course_id = $this->_get_course( $course_id );
|
1460 |
|
1461 |
$return = false;
|
1468 |
$item_id = absint( $item['ID'] );
|
1469 |
}
|
1470 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1471 |
|
1472 |
+
if ( $item_id ) {
|
1473 |
+
$return = 'completed' === $this->get_item_status( $item_id, $course_id );
|
|
|
1474 |
}
|
1475 |
|
1476 |
return apply_filters( 'learn_press_user_has_completed_item', $return, $item );
|
inc/user/class-lp-user.php
CHANGED
@@ -318,7 +318,7 @@ class LP_User extends LP_Abstract_User {
|
|
318 |
$output = $output->check;
|
319 |
}
|
320 |
|
321 |
-
return apply_filters( 'learn-press/user/can-enroll-course', $output, $course, $return_bool );
|
322 |
}
|
323 |
|
324 |
/**
|
318 |
$output = $output->check;
|
319 |
}
|
320 |
|
321 |
+
return apply_filters( 'learn-press/user/can-enroll-course', $output, $course, $return_bool, $this );
|
322 |
}
|
323 |
|
324 |
/**
|
inc/user/lp-user-functions.php
CHANGED
@@ -1145,7 +1145,7 @@ function learn_press_update_user_profile_basic_information( $wp_error = false )
|
|
1145 |
);
|
1146 |
|
1147 |
$update_data = apply_filters( 'learn-press/update-profile-basic-information-data', $update_data );
|
1148 |
-
$update_meta =
|
1149 |
|
1150 |
$return = LP_Forms_Handler::update_user_data( $update_data, $update_meta );
|
1151 |
|
@@ -1895,10 +1895,9 @@ function learn_press_update_extra_user_profile_fields( $user_id ) {
|
|
1895 |
}
|
1896 |
|
1897 |
if ( isset( $_POST['_lp_extra_info'] ) ) {
|
1898 |
-
update_user_meta( $user_id, '_lp_extra_info', $_POST['_lp_extra_info'] );
|
1899 |
}
|
1900 |
}
|
1901 |
-
|
1902 |
add_action( 'personal_options_update', 'learn_press_update_extra_user_profile_fields' );
|
1903 |
add_action( 'edit_user_profile_update', 'learn_press_update_extra_user_profile_fields' );
|
1904 |
|
@@ -1939,15 +1938,15 @@ function learn_press_social_profiles() {
|
|
1939 |
}
|
1940 |
|
1941 |
function lp_add_default_fields( $fields ) {
|
1942 |
-
$first_name = LP_Settings::
|
1943 |
|
1944 |
if ( $first_name === 'yes' ) {
|
1945 |
?>
|
1946 |
<li class="form-field">
|
1947 |
<label for="reg_first_name"><?php esc_html_e( 'First name', 'learnpress' ); ?></label>
|
1948 |
<input id="reg_first_name" name="reg_first_name" type="text"
|
1949 |
-
|
1950 |
-
|
1951 |
</li>
|
1952 |
<?php
|
1953 |
}
|
@@ -1959,8 +1958,8 @@ function lp_add_default_fields( $fields ) {
|
|
1959 |
<li class="form-field">
|
1960 |
<label for="reg_last_name"><?php esc_html_e( 'Last name', 'learnpress' ); ?></label>
|
1961 |
<input id="reg_last_name" name="reg_last_name" type="text"
|
1962 |
-
|
1963 |
-
|
1964 |
</li>
|
1965 |
<?php
|
1966 |
}
|
@@ -1972,8 +1971,8 @@ function lp_add_default_fields( $fields ) {
|
|
1972 |
<li class="form-field">
|
1973 |
<label for="reg_display_name"><?php esc_html_e( 'Display name', 'learnpress' ); ?></label>
|
1974 |
<input id="reg_display_name" name="reg_display_name" type="text"
|
1975 |
-
|
1976 |
-
|
1977 |
</li>
|
1978 |
<?php
|
1979 |
}
|
@@ -2015,17 +2014,12 @@ function lp_custom_register_fields_display() {
|
|
2015 |
case 'number':
|
2016 |
case 'email':
|
2017 |
case 'url':
|
2018 |
-
?>
|
2019 |
-
<label for="description"><?php echo esc_html( $custom_field['name'] ); ?></label>
|
2020 |
-
<?php
|
2021 |
-
break;
|
2022 |
case 'tel':
|
2023 |
?>
|
2024 |
-
<label for="">
|
2025 |
-
|
2026 |
-
|
2027 |
-
|
2028 |
-
</label>
|
2029 |
<?php
|
2030 |
break;
|
2031 |
case 'textarea':
|
1145 |
);
|
1146 |
|
1147 |
$update_data = apply_filters( 'learn-press/update-profile-basic-information-data', $update_data );
|
1148 |
+
$update_meta = LP_Helper::sanitize_params_submitted( $_POST['_lp_custom_register'] ?? '' );
|
1149 |
|
1150 |
$return = LP_Forms_Handler::update_user_data( $update_data, $update_meta );
|
1151 |
|
1895 |
}
|
1896 |
|
1897 |
if ( isset( $_POST['_lp_extra_info'] ) ) {
|
1898 |
+
update_user_meta( $user_id, '_lp_extra_info', LP_Helper::sanitize_params_submitted( $_POST['_lp_extra_info'] ) );
|
1899 |
}
|
1900 |
}
|
|
|
1901 |
add_action( 'personal_options_update', 'learn_press_update_extra_user_profile_fields' );
|
1902 |
add_action( 'edit_user_profile_update', 'learn_press_update_extra_user_profile_fields' );
|
1903 |
|
1938 |
}
|
1939 |
|
1940 |
function lp_add_default_fields( $fields ) {
|
1941 |
+
$first_name = LP_Settings::get_option( 'enable_register_first_name', 'no' );
|
1942 |
|
1943 |
if ( $first_name === 'yes' ) {
|
1944 |
?>
|
1945 |
<li class="form-field">
|
1946 |
<label for="reg_first_name"><?php esc_html_e( 'First name', 'learnpress' ); ?></label>
|
1947 |
<input id="reg_first_name" name="reg_first_name" type="text"
|
1948 |
+
placeholder="<?php esc_attr_e( 'First name', 'learnpress' ); ?>"
|
1949 |
+
value="<?php echo esc_attr( wp_unslash( $_POST['reg_first_name'] ?? '' ) ); ?>">
|
1950 |
</li>
|
1951 |
<?php
|
1952 |
}
|
1958 |
<li class="form-field">
|
1959 |
<label for="reg_last_name"><?php esc_html_e( 'Last name', 'learnpress' ); ?></label>
|
1960 |
<input id="reg_last_name" name="reg_last_name" type="text"
|
1961 |
+
placeholder="<?php esc_attr_e( 'Last name', 'learnpress' ); ?>"
|
1962 |
+
value="<?php echo esc_attr( wp_unslash( $_POST['reg_last_name'] ?? '' ) ); ?>">
|
1963 |
</li>
|
1964 |
<?php
|
1965 |
}
|
1971 |
<li class="form-field">
|
1972 |
<label for="reg_display_name"><?php esc_html_e( 'Display name', 'learnpress' ); ?></label>
|
1973 |
<input id="reg_display_name" name="reg_display_name" type="text"
|
1974 |
+
placeholder="<?php esc_attr_e( 'Display name', 'learnpress' ); ?>"
|
1975 |
+
value="<?php echo esc_attr( wp_unslash( $_POST['reg_display_name'] ?? '' ) ); ?>">
|
1976 |
</li>
|
1977 |
<?php
|
1978 |
}
|
2014 |
case 'number':
|
2015 |
case 'email':
|
2016 |
case 'url':
|
|
|
|
|
|
|
|
|
2017 |
case 'tel':
|
2018 |
?>
|
2019 |
+
<label for="description"><?php echo esc_html( $custom_field['name'] ); ?></label>
|
2020 |
+
<input name="_lp_custom_register_form[<?php echo esc_attr( $value ); ?>]"
|
2021 |
+
type="<?php echo esc_attr( $custom_field['type'] ); ?>" class="regular-text"
|
2022 |
+
value="" />
|
|
|
2023 |
<?php
|
2024 |
break;
|
2025 |
case 'textarea':
|
languages/learnpress.pot
CHANGED
@@ -2,14 +2,14 @@
|
|
2 |
# This file is distributed under the same license as the LearnPress plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: LearnPress 4.1.6.9\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/lp-doing\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"POT-Creation-Date: 2022-08-
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.6.0\n"
|
15 |
"X-Domain: learnpress\n"
|
@@ -17,7 +17,7 @@ msgstr ""
|
|
17 |
#. Plugin Name of the plugin
|
18 |
#: inc/admin/class-lp-admin.php:135
|
19 |
#: inc/admin/class-lp-admin.php:143
|
20 |
-
#: inc/admin/lp-admin-functions.php:
|
21 |
#: inc/admin/settings/class-lp-settings-emails.php:154
|
22 |
#: inc/external-plugin/elementor/class-lp-elementor.php:41
|
23 |
#: assets/js/dist/frontend/quiz.min.js:8
|
@@ -164,7 +164,6 @@ msgstr ""
|
|
164 |
#: inc/admin/settings/class-lp-settings-advanced.php:72
|
165 |
#: inc/course/lp-course-functions.php:449
|
166 |
#: inc/custom-post-types/lesson.php:158
|
167 |
-
#: inc/lp-core-functions.php:402
|
168 |
#: inc/lp-template-functions.php:1009
|
169 |
msgid "Lesson"
|
170 |
msgstr ""
|
@@ -174,7 +173,6 @@ msgstr ""
|
|
174 |
#: inc/course/lp-course-functions.php:450
|
175 |
#: inc/custom-post-types/question.php:320
|
176 |
#: inc/custom-post-types/quiz.php:87
|
177 |
-
#: inc/lp-core-functions.php:403
|
178 |
#: inc/lp-template-functions.php:999
|
179 |
#: templates/profile/tabs/quizzes.php:54
|
180 |
msgid "Quiz"
|
@@ -432,9 +430,9 @@ msgid "Billing"
|
|
432 |
msgstr ""
|
433 |
|
434 |
#: inc/admin/class-lp-admin.php:249
|
435 |
-
#: inc/admin/views/meta-boxes/fields/date.php:
|
436 |
#: inc/class-lp-assets.php:73
|
437 |
-
#: inc/lp-core-functions.php:
|
438 |
#: inc/order/class-lp-order.php:954
|
439 |
#: assets/js/dist/frontend/quiz.min.js:44
|
440 |
msgid "Cancel"
|
@@ -480,7 +478,7 @@ msgstr ""
|
|
480 |
#: inc/admin/settings/class-lp-settings-profile.php:150
|
481 |
#: inc/admin/sub-menus/class-lp-submenu-statistics.php:21
|
482 |
#: inc/admin/sub-menus/class-lp-submenu-statistics.php:28
|
483 |
-
#: inc/class-lp-page-controller.php:
|
484 |
#: inc/custom-post-types/course.php:107
|
485 |
#: inc/custom-post-types/course.php:109
|
486 |
#: inc/lp-template-functions.php:312
|
@@ -632,13 +630,13 @@ msgstr ""
|
|
632 |
|
633 |
#: inc/admin/class-lp-modal-search-items.php:183
|
634 |
#: inc/admin/class-lp-modal-search-users.php:141
|
635 |
-
#: inc/lp-core-functions.php:
|
636 |
msgid "<"
|
637 |
msgstr ""
|
638 |
|
639 |
#: inc/admin/class-lp-modal-search-items.php:184
|
640 |
#: inc/admin/class-lp-modal-search-users.php:142
|
641 |
-
#: inc/lp-core-functions.php:
|
642 |
msgid ">"
|
643 |
msgstr ""
|
644 |
|
@@ -802,8 +800,8 @@ msgid "Finish"
|
|
802 |
msgstr ""
|
803 |
|
804 |
#: inc/admin/class-lp-setup-wizard.php:356
|
805 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
806 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
807 |
msgid "PayPal"
|
808 |
msgstr ""
|
809 |
|
@@ -812,18 +810,18 @@ msgstr ""
|
|
812 |
msgid "Total Raised"
|
813 |
msgstr ""
|
814 |
|
815 |
-
#: inc/admin/editor/class-lp-admin-editor-course.php:
|
816 |
#: inc/curds/class-lp-course-curd.php:46
|
817 |
msgid "New Course"
|
818 |
msgstr ""
|
819 |
|
820 |
-
#: inc/admin/editor/class-lp-admin-editor-course.php:
|
821 |
-
#: inc/admin/editor/class-lp-admin-editor-course.php:
|
822 |
msgid "You can not delete this item!"
|
823 |
msgstr ""
|
824 |
|
825 |
-
#: inc/admin/editor/class-lp-admin-editor-course.php:
|
826 |
-
#: inc/admin/editor/class-lp-admin-editor-course.php:
|
827 |
msgid "Invalid params!"
|
828 |
msgstr ""
|
829 |
|
@@ -843,7 +841,7 @@ msgid "New Quiz"
|
|
843 |
msgstr ""
|
844 |
|
845 |
#: inc/admin/editor/class-lp-admin-editor-quiz.php:164
|
846 |
-
#: inc/admin/editor/class-lp-admin-editor-quiz.php:
|
847 |
msgid "Quiz creation failed."
|
848 |
msgstr ""
|
849 |
|
@@ -873,7 +871,7 @@ msgid "Buy Now"
|
|
873 |
msgstr ""
|
874 |
|
875 |
#: inc/admin/lp-admin-actions.php:222
|
876 |
-
#: inc/custom-post-types/course.php:
|
877 |
msgid "Categories"
|
878 |
msgstr ""
|
879 |
|
@@ -901,78 +899,78 @@ msgctxt "copy lesson"
|
|
901 |
msgid "Duplicate"
|
902 |
msgstr ""
|
903 |
|
904 |
-
#: inc/admin/lp-admin-functions.php:
|
905 |
msgid "[ Add a new page ]"
|
906 |
msgstr ""
|
907 |
|
908 |
-
#: inc/admin/lp-admin-functions.php:
|
909 |
msgid "Select Page"
|
910 |
msgstr ""
|
911 |
|
912 |
-
#: inc/admin/lp-admin-functions.php:
|
913 |
#: inc/admin/meta-box/fields/select-page.php:24
|
914 |
msgid "Select a page…"
|
915 |
msgstr ""
|
916 |
|
917 |
-
#: inc/admin/lp-admin-functions.php:
|
918 |
msgctxt "drop down pages"
|
919 |
msgid "or"
|
920 |
msgstr ""
|
921 |
|
922 |
-
#: inc/admin/lp-admin-functions.php:
|
923 |
msgid "Create new"
|
924 |
msgstr ""
|
925 |
|
926 |
-
#: inc/admin/lp-admin-functions.php:
|
927 |
msgid "New page title"
|
928 |
msgstr ""
|
929 |
|
930 |
-
#: inc/admin/lp-admin-functions.php:
|
931 |
msgid "Ok [Enter]"
|
932 |
msgstr ""
|
933 |
|
934 |
-
#: inc/admin/lp-admin-functions.php:
|
935 |
msgid "Cancel [ESC]"
|
936 |
msgstr ""
|
937 |
|
938 |
-
#: inc/admin/lp-admin-functions.php:
|
939 |
msgid "Edit page"
|
940 |
msgstr ""
|
941 |
|
942 |
-
#: inc/admin/lp-admin-functions.php:
|
943 |
msgid "View page"
|
944 |
msgstr ""
|
945 |
|
946 |
-
#: inc/admin/lp-admin-functions.php:
|
947 |
msgid "Minutes"
|
948 |
msgstr ""
|
949 |
|
950 |
-
#: inc/admin/lp-admin-functions.php:
|
951 |
-
#: inc/admin/lp-admin-functions.php:
|
952 |
#: inc/admin/settings/class-lp-settings-emails.php:141
|
953 |
msgid "Plain Text"
|
954 |
msgstr ""
|
955 |
|
956 |
-
#: inc/admin/lp-admin-functions.php:
|
957 |
-
#: inc/admin/lp-admin-functions.php:
|
958 |
#: inc/admin/settings/class-lp-settings-emails.php:142
|
959 |
msgid "HTML"
|
960 |
msgstr ""
|
961 |
|
962 |
-
#: inc/admin/lp-admin-functions.php:
|
963 |
#: inc/admin/views/addons/html-loop-theme.php:45
|
964 |
msgid "Get it now"
|
965 |
msgstr ""
|
966 |
|
967 |
-
#: inc/admin/lp-admin-functions.php:
|
968 |
#: inc/admin/views/addons/html-loop-theme.php:46
|
969 |
msgid "View Demo"
|
970 |
msgstr ""
|
971 |
|
972 |
-
#: inc/admin/lp-admin-functions.php:
|
973 |
-
#: inc/admin/lp-admin-functions.php:
|
974 |
-
#: inc/admin/lp-admin-functions.php:
|
975 |
-
#: inc/admin/lp-admin-functions.php:
|
976 |
#: inc/admin/views/statistics/courses.php:27
|
977 |
#: inc/admin/views/statistics/general.php:43
|
978 |
#: inc/admin/views/statistics/orders.php:29
|
@@ -990,7 +988,7 @@ msgstr ""
|
|
990 |
msgid "All"
|
991 |
msgstr ""
|
992 |
|
993 |
-
#: inc/admin/lp-admin-functions.php:
|
994 |
#: inc/admin/views/statistics/courses.php:9
|
995 |
#: inc/admin/views/statistics/general.php:9
|
996 |
#: inc/admin/views/statistics/orders.php:9
|
@@ -998,68 +996,68 @@ msgstr ""
|
|
998 |
msgid "Instructors"
|
999 |
msgstr ""
|
1000 |
|
1001 |
-
#: inc/admin/lp-admin-functions.php:
|
1002 |
#: inc/admin/views/statistics/courses.php:8
|
1003 |
#: inc/admin/views/statistics/general.php:8
|
1004 |
#: inc/admin/views/statistics/orders.php:8
|
1005 |
#: inc/admin/views/statistics/users.php:8
|
1006 |
-
#: inc/custom-post-types/course.php:
|
1007 |
-
#: inc/custom-post-types/course.php:
|
1008 |
msgid "Students"
|
1009 |
msgstr ""
|
1010 |
|
1011 |
-
#: inc/admin/lp-admin-functions.php:
|
1012 |
-
#: inc/admin/lp-admin-functions.php:
|
1013 |
#: inc/templates/class-lp-template-profile.php:112
|
1014 |
#: inc/user/class-lp-profile.php:841
|
1015 |
msgid "Publish"
|
1016 |
msgstr ""
|
1017 |
|
1018 |
-
#: inc/admin/lp-admin-functions.php:
|
1019 |
-
#: inc/admin/lp-admin-functions.php:
|
1020 |
-
#: inc/admin/lp-admin-functions.php:
|
1021 |
#: inc/templates/class-lp-template-profile.php:113
|
1022 |
#: inc/user/class-lp-profile.php:842
|
1023 |
msgid "Pending"
|
1024 |
msgstr ""
|
1025 |
|
1026 |
-
#: inc/admin/lp-admin-functions.php:
|
1027 |
-
#: inc/admin/lp-admin-functions.php:
|
1028 |
msgid "Paid"
|
1029 |
msgstr ""
|
1030 |
|
1031 |
-
#: inc/admin/lp-admin-functions.php:
|
1032 |
-
#: inc/admin/lp-admin-functions.php:
|
1033 |
#: inc/course/abstract-course.php:721
|
1034 |
#: inc/course/abstract-course.php:750
|
1035 |
#: templates/order/order-details.php:43
|
1036 |
msgid "Free"
|
1037 |
msgstr ""
|
1038 |
|
1039 |
-
#: inc/admin/lp-admin-functions.php:
|
1040 |
#: inc/user-item/class-lp-user-item-quiz.php:146
|
1041 |
-
#: inc/user-item/class-lp-user-item.php:
|
1042 |
#: templates/content-lesson/button-complete.php:37
|
1043 |
msgid "Completed"
|
1044 |
msgstr ""
|
1045 |
|
1046 |
-
#: inc/admin/lp-admin-functions.php:
|
1047 |
msgid "Pending Courses / Publish Courses"
|
1048 |
msgstr ""
|
1049 |
|
1050 |
-
#: inc/admin/lp-admin-functions.php:
|
1051 |
msgid "Free Courses / Priced Courses"
|
1052 |
msgstr ""
|
1053 |
|
1054 |
-
#: inc/admin/lp-admin-functions.php:
|
1055 |
msgid " Copy"
|
1056 |
msgstr ""
|
1057 |
|
1058 |
-
#: inc/admin/lp-admin-functions.php:
|
1059 |
msgid "Question id %s does not exist."
|
1060 |
msgstr ""
|
1061 |
|
1062 |
-
#: inc/admin/lp-admin-functions.php:
|
1063 |
msgid "Quiz id %s does not exist."
|
1064 |
msgstr ""
|
1065 |
|
@@ -1087,11 +1085,11 @@ msgstr ""
|
|
1087 |
msgid "Courses base with category"
|
1088 |
msgstr ""
|
1089 |
|
1090 |
-
#: inc/admin/meta-box/fields/course-permalink.php:
|
1091 |
msgid "Custom Base"
|
1092 |
msgstr ""
|
1093 |
|
1094 |
-
#: inc/admin/meta-box/fields/course-permalink.php:
|
1095 |
msgid "Enter a custom base to use. A base must be set or WordPress will use default values instead."
|
1096 |
msgstr ""
|
1097 |
|
@@ -1113,7 +1111,7 @@ msgstr ""
|
|
1113 |
|
1114 |
#: inc/admin/meta-box/fields/image-advanced.php:25
|
1115 |
#: inc/admin/meta-box/fields/image-advanced.php:38
|
1116 |
-
#: inc/admin/meta-box/fields/image.php:
|
1117 |
#: inc/admin/views/course/section.php:48
|
1118 |
#: inc/admin/views/question/fib-answer-editor.php:24
|
1119 |
#: inc/admin/views/question/option.php:22
|
@@ -1132,15 +1130,16 @@ msgstr ""
|
|
1132 |
msgid "Delete image"
|
1133 |
msgstr ""
|
1134 |
|
1135 |
-
#: inc/admin/meta-box/fields/image.php:
|
1136 |
msgid "Select images"
|
1137 |
msgstr ""
|
1138 |
|
1139 |
-
#: inc/admin/meta-box/fields/image.php:
|
|
|
1140 |
msgid "Select"
|
1141 |
msgstr ""
|
1142 |
|
1143 |
-
#: inc/admin/meta-box/fields/image.php:
|
1144 |
#: assets/js/dist/frontend/quiz.min.js:215
|
1145 |
msgid "Upload"
|
1146 |
msgstr ""
|
@@ -1150,7 +1149,7 @@ msgstr ""
|
|
1150 |
#: inc/admin/views/meta-boxes/order/exports-invoice.php:80
|
1151 |
#: inc/class-lp-checkout.php:305
|
1152 |
#: inc/class-lp-checkout.php:313
|
1153 |
-
#: inc/lp-deprecated.php:
|
1154 |
#: templates/checkout/account-register.php:25
|
1155 |
#: templates/global/become-teacher-form.php:39
|
1156 |
#: templates/global/form-register.php:29
|
@@ -1184,7 +1183,7 @@ msgstr ""
|
|
1184 |
|
1185 |
#: inc/admin/meta-box/fields/payment-order.php:10
|
1186 |
#: inc/emails/class-lp-email.php:1030
|
1187 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
1188 |
msgid "Enable/Disable"
|
1189 |
msgstr ""
|
1190 |
|
@@ -1333,23 +1332,23 @@ msgid "Enable default fields"
|
|
1333 |
msgstr ""
|
1334 |
|
1335 |
#: inc/admin/settings/class-lp-settings-profile.php:89
|
1336 |
-
#: inc/user/lp-user-functions.php:
|
1337 |
-
#: inc/user/lp-user-functions.php:
|
1338 |
#: templates/profile/tabs/settings/basic-information.php:33
|
1339 |
msgid "First name"
|
1340 |
msgstr ""
|
1341 |
|
1342 |
#: inc/admin/settings/class-lp-settings-profile.php:96
|
1343 |
-
#: inc/user/lp-user-functions.php:
|
1344 |
-
#: inc/user/lp-user-functions.php:
|
1345 |
#: templates/profile/tabs/settings/basic-information.php:39
|
1346 |
msgid "Last name"
|
1347 |
msgstr ""
|
1348 |
|
1349 |
#: inc/admin/settings/class-lp-settings-profile.php:103
|
1350 |
#: inc/admin/settings/class-lp-settings-profile.php:115
|
1351 |
-
#: inc/user/lp-user-functions.php:
|
1352 |
-
#: inc/user/lp-user-functions.php:
|
1353 |
#: templates/profile/tabs/settings/basic-information.php:45
|
1354 |
msgid "Display name"
|
1355 |
msgstr ""
|
@@ -1360,7 +1359,7 @@ msgstr ""
|
|
1360 |
|
1361 |
#: inc/admin/settings/class-lp-settings-profile.php:112
|
1362 |
#: inc/admin/views/quiz/editor.php:47
|
1363 |
-
#: inc/lp-deprecated.php:
|
1364 |
#: templates/global/become-teacher-form.php:35
|
1365 |
#: templates/profile/tabs/courses/course-list.php:22
|
1366 |
msgid "Name"
|
@@ -1748,8 +1747,8 @@ msgstr ""
|
|
1748 |
|
1749 |
#: inc/admin/views/meta-boxes/course/settings.php:50
|
1750 |
#: inc/admin/views/meta-boxes/course/settings.php:367
|
1751 |
-
#: inc/custom-post-types/course.php:
|
1752 |
-
#: inc/custom-post-types/course.php:
|
1753 |
#: inc/custom-post-types/lesson.php:221
|
1754 |
#: inc/custom-post-types/question.php:319
|
1755 |
#: inc/custom-post-types/quiz.php:236
|
@@ -1761,7 +1760,7 @@ msgstr ""
|
|
1761 |
#: inc/admin/views/meta-boxes/quiz/settings.php:17
|
1762 |
#: inc/custom-post-types/lesson.php:227
|
1763 |
#: inc/custom-post-types/quiz.php:239
|
1764 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
1765 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:500
|
1766 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:636
|
1767 |
msgid "Duration"
|
@@ -1940,8 +1939,8 @@ msgid "The condition that must be achieved to finish the course."
|
|
1940 |
msgstr ""
|
1941 |
|
1942 |
#: inc/admin/views/meta-boxes/course/settings.php:451
|
1943 |
-
#: inc/templates/class-lp-template-course.php:
|
1944 |
-
#: inc/templates/class-lp-template-course.php:
|
1945 |
#: inc/widgets/course-extra.php:35
|
1946 |
msgid "Requirements"
|
1947 |
msgstr ""
|
@@ -1976,25 +1975,25 @@ msgstr ""
|
|
1976 |
|
1977 |
#: inc/admin/views/meta-boxes/fields/extra-faq.php:41
|
1978 |
#: inc/admin/views/meta-boxes/fields/extra-faq.php:61
|
1979 |
-
#: inc/custom-post-types/course.php:
|
1980 |
-
#: inc/custom-post-types/course.php:
|
1981 |
#: inc/external-plugin/elementor/widgets/become-a-teacher.php:26
|
1982 |
#: inc/external-plugin/elementor/widgets/list-courses.php:32
|
1983 |
msgid "Content"
|
1984 |
msgstr ""
|
1985 |
|
1986 |
#: inc/admin/views/meta-boxes/fields/extra-faq.php:69
|
1987 |
-
#: inc/admin/views/meta-boxes/fields/extra.php:
|
1988 |
-
#: inc/admin/views/meta-boxes/fields/repeater.php:
|
1989 |
msgid "+ Add more"
|
1990 |
msgstr ""
|
1991 |
|
1992 |
#: inc/admin/views/meta-boxes/fields/file.php:88
|
1993 |
-
#: inc/admin/views/meta-boxes/lp-meta-box-functions.php:
|
1994 |
msgid "+ Add media"
|
1995 |
msgstr ""
|
1996 |
|
1997 |
-
#: inc/admin/views/meta-boxes/fields/repeater.php:
|
1998 |
msgid "Repeater"
|
1999 |
msgstr ""
|
2000 |
|
@@ -2052,7 +2051,6 @@ msgstr ""
|
|
2052 |
#: inc/admin/views/meta-boxes/order/content-tab-preview-exports-invoice.php:72
|
2053 |
#: inc/admin/views/meta-boxes/order/details.php:155
|
2054 |
#: inc/custom-post-types/course.php:79
|
2055 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:358
|
2056 |
#: templates/checkout/order-received.php:60
|
2057 |
msgid "Item"
|
2058 |
msgstr ""
|
@@ -2287,28 +2285,28 @@ msgstr ""
|
|
2287 |
msgid "How many times the user can re-take this quiz. Set 0 to disable. Set -1 to infinite."
|
2288 |
msgstr ""
|
2289 |
|
2290 |
-
#: inc/admin/views/meta-boxes/quiz/settings.php:
|
2291 |
msgid "Pagination"
|
2292 |
msgstr ""
|
2293 |
|
2294 |
-
#: inc/admin/views/meta-boxes/quiz/settings.php:
|
2295 |
msgid "The number of questions displayed on each page."
|
2296 |
msgstr ""
|
2297 |
|
2298 |
-
#: inc/admin/views/meta-boxes/quiz/settings.php:
|
2299 |
#: assets/js/dist/frontend/quiz.min.js:308
|
2300 |
msgid "Review"
|
2301 |
msgstr ""
|
2302 |
|
2303 |
-
#: inc/admin/views/meta-boxes/quiz/settings.php:
|
2304 |
msgid "Allow students to review this quiz after they finish the quiz."
|
2305 |
msgstr ""
|
2306 |
|
2307 |
-
#: inc/admin/views/meta-boxes/quiz/settings.php:
|
2308 |
msgid "Show correct answer"
|
2309 |
msgstr ""
|
2310 |
|
2311 |
-
#: inc/admin/views/meta-boxes/quiz/settings.php:
|
2312 |
msgid "Allow students view correct answer question in review this quiz."
|
2313 |
msgstr ""
|
2314 |
|
@@ -2403,7 +2401,7 @@ msgstr ""
|
|
2403 |
#: inc/custom-post-types/question.php:208
|
2404 |
#: inc/custom-post-types/quiz.php:175
|
2405 |
#: inc/custom-post-types/quiz.php:238
|
2406 |
-
#: inc/custom-post-types/quiz.php:
|
2407 |
#: assets/js/dist/frontend/quiz.min.js:21
|
2408 |
#: assets/js/dist/frontend/quiz.min.js:210
|
2409 |
msgid "Questions"
|
@@ -2800,19 +2798,19 @@ msgid "Congrats! You have completed \"%s\"."
|
|
2800 |
msgstr ""
|
2801 |
|
2802 |
#: inc/class-lp-assets.php:72
|
2803 |
-
#: inc/lp-core-functions.php:
|
2804 |
#: assets/js/dist/frontend/quiz.min.js:41
|
2805 |
msgid "OK"
|
2806 |
msgstr ""
|
2807 |
|
2808 |
#: inc/class-lp-assets.php:74
|
2809 |
-
#: inc/lp-core-functions.php:
|
2810 |
#: templates/global/lp-modal-overlay.php:24
|
2811 |
msgid "Yes"
|
2812 |
msgstr ""
|
2813 |
|
2814 |
#: inc/class-lp-assets.php:75
|
2815 |
-
#: inc/lp-core-functions.php:
|
2816 |
#: templates/global/lp-modal-overlay.php:23
|
2817 |
msgid "No"
|
2818 |
msgstr ""
|
@@ -2965,11 +2963,6 @@ msgstr ""
|
|
2965 |
msgid "Type item buy invalid!"
|
2966 |
msgstr ""
|
2967 |
|
2968 |
-
#: inc/class-lp-emails.php:118
|
2969 |
-
#: inc/class-lp-emails.php:125
|
2970 |
-
msgid "Cheatin’ huh?"
|
2971 |
-
msgstr ""
|
2972 |
-
|
2973 |
#: inc/class-lp-forms-handler.php:30
|
2974 |
#: inc/class-lp-forms-handler.php:231
|
2975 |
#: inc/curds/class-lp-user-curd.php:2137
|
@@ -3074,18 +3067,18 @@ msgstr ""
|
|
3074 |
msgid "Password reset is not allowed for this user."
|
3075 |
msgstr ""
|
3076 |
|
3077 |
-
#: inc/class-lp-page-controller.php:
|
3078 |
#: inc/course/lp-course-functions.php:176
|
3079 |
msgctxt "slug"
|
3080 |
msgid "uncategorized"
|
3081 |
msgstr ""
|
3082 |
|
3083 |
-
#: inc/class-lp-page-controller.php:
|
3084 |
#: inc/lp-template-functions.php:310
|
3085 |
msgid "Course Search Results"
|
3086 |
msgstr ""
|
3087 |
|
3088 |
-
#: inc/class-lp-page-controller.php:
|
3089 |
msgid "No payment method is available."
|
3090 |
msgstr ""
|
3091 |
|
@@ -3095,7 +3088,6 @@ msgid "item"
|
|
3095 |
msgstr ""
|
3096 |
|
3097 |
#: inc/class-lp-query-list-table.php:28
|
3098 |
-
#: templates/single-course/content-item/popup-header.php:29
|
3099 |
msgid "items"
|
3100 |
msgstr ""
|
3101 |
|
@@ -3193,10 +3185,9 @@ msgid "Edit this item"
|
|
3193 |
msgstr ""
|
3194 |
|
3195 |
#: inc/course/lp-course-functions.php:970
|
3196 |
-
#: inc/lp-core-functions.php:
|
3197 |
#: inc/templates/class-lp-template-profile.php:103
|
3198 |
#: inc/user-item/class-lp-user-item-quiz.php:147
|
3199 |
-
#: inc/user-item/class-lp-user-item.php:814
|
3200 |
#: inc/user/class-lp-profile.php:874
|
3201 |
#: inc/user/class-lp-profile.php:908
|
3202 |
#: assets/js/dist/frontend/quiz.min.js:167
|
@@ -3204,10 +3195,9 @@ msgid "Passed"
|
|
3204 |
msgstr ""
|
3205 |
|
3206 |
#: inc/course/lp-course-functions.php:973
|
3207 |
-
#: inc/lp-core-functions.php:
|
3208 |
#: inc/templates/class-lp-template-profile.php:104
|
3209 |
#: inc/user-item/class-lp-user-item-quiz.php:148
|
3210 |
-
#: inc/user-item/class-lp-user-item.php:815
|
3211 |
#: inc/user/class-lp-profile.php:875
|
3212 |
#: inc/user/class-lp-profile.php:909
|
3213 |
#: assets/js/dist/frontend/quiz.min.js:169
|
@@ -3215,14 +3205,11 @@ msgid "Failed"
|
|
3215 |
msgstr ""
|
3216 |
|
3217 |
#: inc/course/lp-course-functions.php:976
|
3218 |
-
#: inc/lp-core-functions.php:
|
3219 |
#: inc/lp-deprecated.php:385
|
3220 |
#: inc/templates/class-lp-template-profile.php:101
|
3221 |
#: inc/user-item/class-lp-user-item-quiz.php:144
|
3222 |
#: inc/user-item/class-lp-user-item-quiz.php:145
|
3223 |
-
#: inc/user-item/class-lp-user-item.php:808
|
3224 |
-
#: inc/user-item/class-lp-user-item.php:809
|
3225 |
-
#: inc/user-item/class-lp-user-item.php:810
|
3226 |
msgid "In Progress"
|
3227 |
msgstr ""
|
3228 |
|
@@ -3254,42 +3241,11 @@ msgstr ""
|
|
3254 |
msgid "Course does not exist."
|
3255 |
msgstr ""
|
3256 |
|
3257 |
-
#: inc/curds/class-lp-course-curd.php:133
|
3258 |
-
#: inc/curds/class-lp-lesson-curd.php:101
|
3259 |
-
#: inc/curds/class-lp-question-curd.php:150
|
3260 |
-
#: inc/curds/class-lp-quiz-curd.php:156
|
3261 |
-
msgid "<p>Op! ID not found</p>"
|
3262 |
-
msgstr ""
|
3263 |
-
|
3264 |
-
#: inc/curds/class-lp-course-curd.php:137
|
3265 |
-
msgid "<p>Op! The course does not exist</p>"
|
3266 |
-
msgstr ""
|
3267 |
-
|
3268 |
-
#: inc/curds/class-lp-course-curd.php:143
|
3269 |
-
msgid "<p>Sorry! You don't have permission to duplicate this course</p>"
|
3270 |
-
msgstr ""
|
3271 |
-
|
3272 |
-
#: inc/curds/class-lp-course-curd.php:153
|
3273 |
-
msgid "<p>Sorry! Failed to duplicate course!</p>"
|
3274 |
-
msgstr ""
|
3275 |
-
|
3276 |
#: inc/curds/class-lp-lesson-curd.php:35
|
3277 |
msgid "New Lesson"
|
3278 |
msgstr ""
|
3279 |
|
3280 |
-
#: inc/curds/class-lp-lesson-curd.php:
|
3281 |
-
msgid "<p>Op! The lesson does not exist</p>"
|
3282 |
-
msgstr ""
|
3283 |
-
|
3284 |
-
#: inc/curds/class-lp-lesson-curd.php:111
|
3285 |
-
msgid "<p>Sorry! You don't have permission to duplicate this lesson</p>"
|
3286 |
-
msgstr ""
|
3287 |
-
|
3288 |
-
#: inc/curds/class-lp-lesson-curd.php:118
|
3289 |
-
msgid "<p>Sorry! Failed to duplicate lesson!</p>"
|
3290 |
-
msgstr ""
|
3291 |
-
|
3292 |
-
#: inc/curds/class-lp-lesson-curd.php:140
|
3293 |
msgid "Invalid lesson with ID \"%d\"."
|
3294 |
msgstr ""
|
3295 |
|
@@ -3318,6 +3274,10 @@ msgstr ""
|
|
3318 |
msgid "Question does not exist."
|
3319 |
msgstr ""
|
3320 |
|
|
|
|
|
|
|
|
|
3321 |
#: inc/curds/class-lp-question-curd.php:154
|
3322 |
msgid "<p>Op! The question does not exist</p>"
|
3323 |
msgstr ""
|
@@ -3342,28 +3302,16 @@ msgstr ""
|
|
3342 |
msgid "Invalid quiz with ID \"%d\"."
|
3343 |
msgstr ""
|
3344 |
|
3345 |
-
#: inc/curds/class-lp-
|
3346 |
-
msgid "<p>Op! The quiz does not exist</p>"
|
3347 |
-
msgstr ""
|
3348 |
-
|
3349 |
-
#: inc/curds/class-lp-quiz-curd.php:165
|
3350 |
-
msgid "<p>Sorry! You have not permission to duplicate this quiz</p>"
|
3351 |
-
msgstr ""
|
3352 |
-
|
3353 |
-
#: inc/curds/class-lp-quiz-curd.php:172
|
3354 |
-
msgid "<p>Sorry! Failed to duplicate quiz!</p>"
|
3355 |
-
msgstr ""
|
3356 |
-
|
3357 |
-
#: inc/curds/class-lp-user-curd.php:1926
|
3358 |
msgid "No item in Order"
|
3359 |
msgstr ""
|
3360 |
|
3361 |
-
#: inc/curds/class-lp-user-curd.php:
|
3362 |
#: inc/user/class-lp-user.php:736
|
3363 |
msgid "quiz"
|
3364 |
msgstr ""
|
3365 |
|
3366 |
-
#: inc/curds/class-lp-user-curd.php:
|
3367 |
#: inc/user/class-lp-user.php:737
|
3368 |
msgid "quizzes"
|
3369 |
msgstr ""
|
@@ -3615,34 +3563,34 @@ msgctxt "slug"
|
|
3615 |
msgid "course-tag"
|
3616 |
msgstr ""
|
3617 |
|
3618 |
-
#: inc/custom-post-types/course.php:
|
3619 |
-
#: inc/custom-post-types/course.php:
|
3620 |
#: templates/emails/order-items-table.php:87
|
3621 |
msgid "Price"
|
3622 |
msgstr ""
|
3623 |
|
3624 |
-
#: inc/custom-post-types/course.php:
|
3625 |
-
#: inc/custom-post-types/course.php:
|
3626 |
msgid "Thumbnail"
|
3627 |
msgstr ""
|
3628 |
|
3629 |
-
#: inc/custom-post-types/course.php:
|
3630 |
msgid "<strong>%d</strong> section"
|
3631 |
msgid_plural "<strong>%d</strong> sections"
|
3632 |
msgstr[0] ""
|
3633 |
msgstr[1] ""
|
3634 |
|
3635 |
-
#: inc/custom-post-types/course.php:
|
3636 |
msgid "<strong>%d</strong> "
|
3637 |
msgid_plural "<strong>%d</strong> "
|
3638 |
msgstr[0] ""
|
3639 |
msgstr[1] ""
|
3640 |
|
3641 |
-
#: inc/custom-post-types/course.php:
|
3642 |
msgid "No content"
|
3643 |
msgstr ""
|
3644 |
|
3645 |
-
#: inc/custom-post-types/course.php:
|
3646 |
#: inc/lp-template-functions.php:67
|
3647 |
msgid "Curriculum"
|
3648 |
msgstr ""
|
@@ -3702,7 +3650,7 @@ msgstr ""
|
|
3702 |
|
3703 |
#: inc/custom-post-types/lesson.php:316
|
3704 |
#: inc/custom-post-types/question.php:490
|
3705 |
-
#: inc/custom-post-types/quiz.php:
|
3706 |
msgid "Assigned"
|
3707 |
msgstr ""
|
3708 |
|
@@ -3731,11 +3679,12 @@ msgstr ""
|
|
3731 |
|
3732 |
#: inc/custom-post-types/order.php:664
|
3733 |
#: inc/lp-deprecated.php:354
|
|
|
3734 |
msgid "Purchased"
|
3735 |
msgstr ""
|
3736 |
|
3737 |
#: inc/custom-post-types/order.php:667
|
3738 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
3739 |
#: templates/emails/order-items-table.php:72
|
3740 |
#: templates/emails/plain/order-items-table.php:58
|
3741 |
#: templates/profile/tabs/orders/list.php:31
|
@@ -3908,8 +3857,8 @@ msgid "Do you want to move question \"{{QUESTION_NAME}}\" to trash?"
|
|
3908 |
msgstr ""
|
3909 |
|
3910 |
#: inc/custom-post-types/quiz.php:286
|
3911 |
-
#: inc/templates/class-lp-template-course.php:
|
3912 |
-
#: inc/templates/class-lp-template-course.php:
|
3913 |
msgid "%d question"
|
3914 |
msgid_plural "%d questions"
|
3915 |
msgstr[0] ""
|
@@ -3919,19 +3868,19 @@ msgstr[1] ""
|
|
3919 |
msgid "This quiz has no questions"
|
3920 |
msgstr ""
|
3921 |
|
3922 |
-
#: inc/custom-post-types/quiz.php:
|
3923 |
msgid "hours"
|
3924 |
msgstr ""
|
3925 |
|
3926 |
-
#: inc/custom-post-types/quiz.php:
|
3927 |
msgid "minutes"
|
3928 |
msgstr ""
|
3929 |
|
3930 |
-
#: inc/custom-post-types/quiz.php:
|
3931 |
msgid "days"
|
3932 |
msgstr ""
|
3933 |
|
3934 |
-
#: inc/custom-post-types/quiz.php:
|
3935 |
msgid "weeks"
|
3936 |
msgstr ""
|
3937 |
|
@@ -4311,11 +4260,11 @@ msgstr ""
|
|
4311 |
msgid "Login form is disabled"
|
4312 |
msgstr ""
|
4313 |
|
4314 |
-
#: inc/external-plugin/elementor/widgets/register-form.php:
|
4315 |
msgid "Register Form"
|
4316 |
msgstr ""
|
4317 |
|
4318 |
-
#: inc/external-plugin/elementor/widgets/register-form.php:
|
4319 |
msgid "Register form is disabled"
|
4320 |
msgstr ""
|
4321 |
|
@@ -4380,7 +4329,7 @@ msgid "Border"
|
|
4380 |
msgstr ""
|
4381 |
|
4382 |
#: inc/external-plugin/elementor/widgets/widget-base.php:419
|
4383 |
-
#: inc/lp-deprecated.php:
|
4384 |
#: templates/global/become-teacher-form.php:47
|
4385 |
msgid "Message"
|
4386 |
msgstr ""
|
@@ -4409,35 +4358,31 @@ msgstr ""
|
|
4409 |
msgid "Payment to be made upon delivery."
|
4410 |
msgstr ""
|
4411 |
|
4412 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
4413 |
msgid "Make payment via Paypal."
|
4414 |
msgstr ""
|
4415 |
|
4416 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
4417 |
msgid "Pay with PayPal"
|
4418 |
msgstr ""
|
4419 |
|
4420 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
4421 |
-
msgid "IPN payment completed"
|
4422 |
-
msgstr ""
|
4423 |
-
|
4424 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:429
|
4425 |
msgid "Enable PayPal Standard"
|
4426 |
msgstr ""
|
4427 |
|
4428 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
4429 |
msgid "PayPal email"
|
4430 |
msgstr ""
|
4431 |
|
4432 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
4433 |
msgid "Sandbox mode"
|
4434 |
msgstr ""
|
4435 |
|
4436 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
4437 |
msgid "Enable PayPal sandbox"
|
4438 |
msgstr ""
|
4439 |
|
4440 |
-
#: inc/gateways/paypal/class-lp-gateway-paypal.php:
|
4441 |
msgid "Sandbox email address"
|
4442 |
msgstr ""
|
4443 |
|
@@ -4518,7 +4463,7 @@ msgstr ""
|
|
4518 |
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:64
|
4519 |
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:89
|
4520 |
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:114
|
4521 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4522 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:32
|
4523 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:58
|
4524 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:430
|
@@ -4619,210 +4564,210 @@ msgstr ""
|
|
4619 |
msgid "%s secs"
|
4620 |
msgstr ""
|
4621 |
|
4622 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4623 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:436
|
4624 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:203
|
4625 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:572
|
4626 |
msgid "Course name."
|
4627 |
msgstr ""
|
4628 |
|
4629 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4630 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:441
|
4631 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:208
|
4632 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:577
|
4633 |
msgid "Course slug."
|
4634 |
msgstr ""
|
4635 |
|
4636 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4637 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:446
|
4638 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:213
|
4639 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:582
|
4640 |
msgid "Course URL."
|
4641 |
msgstr ""
|
4642 |
|
4643 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4644 |
msgid "Course Image URL."
|
4645 |
msgstr ""
|
4646 |
|
4647 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4648 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:453
|
4649 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:220
|
4650 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:589
|
4651 |
msgid "The date the Course was created, in the site's timezone."
|
4652 |
msgstr ""
|
4653 |
|
4654 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4655 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:459
|
4656 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:226
|
4657 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:595
|
4658 |
msgid "The date the Course was created, as GMT."
|
4659 |
msgstr ""
|
4660 |
|
4661 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4662 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:465
|
4663 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:232
|
4664 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:601
|
4665 |
msgid "The date the Course was last modified, in the site's timezone."
|
4666 |
msgstr ""
|
4667 |
|
4668 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4669 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:471
|
4670 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:238
|
4671 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:607
|
4672 |
msgid "The date the Course was last modified, as GMT."
|
4673 |
msgstr ""
|
4674 |
|
4675 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4676 |
msgid "Shows if the course is on sale."
|
4677 |
msgstr ""
|
4678 |
|
4679 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4680 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:477
|
4681 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:244
|
4682 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:613
|
4683 |
msgid "Course status (post status)."
|
4684 |
msgstr ""
|
4685 |
|
4686 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4687 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:484
|
4688 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:251
|
4689 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:620
|
4690 |
msgid "Content course."
|
4691 |
msgstr ""
|
4692 |
|
4693 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4694 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:489
|
4695 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:256
|
4696 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:625
|
4697 |
msgid "Retrieves the course excerpt.."
|
4698 |
msgstr ""
|
4699 |
|
4700 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4701 |
msgid "Count student enrolled"
|
4702 |
msgstr ""
|
4703 |
|
4704 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4705 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:494
|
4706 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:630
|
4707 |
msgid "Can finish course"
|
4708 |
msgstr ""
|
4709 |
|
4710 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4711 |
msgid "Can retake course"
|
4712 |
msgstr ""
|
4713 |
|
4714 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4715 |
msgid "Total retake"
|
4716 |
msgstr ""
|
4717 |
|
4718 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4719 |
msgid "Retaken"
|
4720 |
msgstr ""
|
4721 |
|
4722 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4723 |
msgid "Course Review add-on"
|
4724 |
msgstr ""
|
4725 |
|
4726 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4727 |
msgid "Course Price"
|
4728 |
msgstr ""
|
4729 |
|
4730 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4731 |
msgid "Course Price Rendered"
|
4732 |
msgstr ""
|
4733 |
|
4734 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4735 |
msgid "Course Origin Price"
|
4736 |
msgstr ""
|
4737 |
|
4738 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4739 |
msgid "Course Origin Price Rendered"
|
4740 |
msgstr ""
|
4741 |
|
4742 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4743 |
msgid "Course Sale Price"
|
4744 |
msgstr ""
|
4745 |
|
4746 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4747 |
msgid "Course Sale Price Rendered"
|
4748 |
msgstr ""
|
4749 |
|
4750 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4751 |
msgid "List of categories."
|
4752 |
msgstr ""
|
4753 |
|
4754 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4755 |
msgid "Category ID."
|
4756 |
msgstr ""
|
4757 |
|
4758 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4759 |
msgid "Category name."
|
4760 |
msgstr ""
|
4761 |
|
4762 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4763 |
msgid "Category slug."
|
4764 |
msgstr ""
|
4765 |
|
4766 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4767 |
msgid "List of tags."
|
4768 |
msgstr ""
|
4769 |
|
4770 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4771 |
msgid "Tag ID."
|
4772 |
msgstr ""
|
4773 |
|
4774 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4775 |
msgid "Tag name."
|
4776 |
msgstr ""
|
4777 |
|
4778 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4779 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4780 |
msgid "Tag slug."
|
4781 |
msgstr ""
|
4782 |
|
4783 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4784 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4785 |
msgid "Retrieves the course sections and items.."
|
4786 |
msgstr ""
|
4787 |
|
4788 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4789 |
msgid "User ID."
|
4790 |
msgstr ""
|
4791 |
|
4792 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4793 |
msgid "Display name."
|
4794 |
msgstr ""
|
4795 |
|
4796 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4797 |
msgid "Social Infor."
|
4798 |
msgstr ""
|
4799 |
|
4800 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4801 |
#: inc/jwt/rest-api/version1/class-lp-rest-section-items-v1-controller.php:14
|
4802 |
msgid "Section ID."
|
4803 |
msgstr ""
|
4804 |
|
4805 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4806 |
#: inc/jwt/rest-api/version1/class-lp-rest-sections-v1-controller.php:122
|
4807 |
msgid "Section name."
|
4808 |
msgstr ""
|
4809 |
|
4810 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4811 |
#: inc/jwt/rest-api/version1/class-lp-rest-sections-v1-controller.php:14
|
4812 |
msgid "Course ID."
|
4813 |
msgstr ""
|
4814 |
|
4815 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4816 |
#: inc/jwt/rest-api/version1/class-lp-rest-sections-v1-controller.php:127
|
4817 |
msgid "Section description."
|
4818 |
msgstr ""
|
4819 |
|
4820 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4821 |
msgid "Section items."
|
4822 |
msgstr ""
|
4823 |
|
4824 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4825 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4826 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:510
|
4827 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:266
|
4828 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:646
|
@@ -4830,82 +4775,82 @@ msgstr ""
|
|
4830 |
msgid "Item ID."
|
4831 |
msgstr ""
|
4832 |
|
4833 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4834 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:687
|
4835 |
msgid "Item Type."
|
4836 |
msgstr ""
|
4837 |
|
4838 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4839 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:692
|
4840 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:721
|
4841 |
msgid "Item title."
|
4842 |
msgstr ""
|
4843 |
|
4844 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4845 |
msgid "Percent."
|
4846 |
msgstr ""
|
4847 |
|
4848 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4849 |
msgid "Duration."
|
4850 |
msgstr ""
|
4851 |
|
4852 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4853 |
msgid "Graduation."
|
4854 |
msgstr ""
|
4855 |
|
4856 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4857 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:542
|
4858 |
msgid "Status."
|
4859 |
msgstr ""
|
4860 |
|
4861 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4862 |
msgid "Locked."
|
4863 |
msgstr ""
|
4864 |
|
4865 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4866 |
msgid "List of course user data."
|
4867 |
msgstr ""
|
4868 |
|
4869 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4870 |
msgid "Graduation"
|
4871 |
msgstr ""
|
4872 |
|
4873 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4874 |
msgid "Start time"
|
4875 |
msgstr ""
|
4876 |
|
4877 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4878 |
#: templates/profile/tabs/courses/course-list.php:25
|
4879 |
msgid "End time"
|
4880 |
msgstr ""
|
4881 |
|
4882 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4883 |
#: templates/profile/tabs/courses/course-list.php:24
|
4884 |
msgid "Expiration time"
|
4885 |
msgstr ""
|
4886 |
|
4887 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4888 |
msgid "Limit result set to courses assigned a specific category ID."
|
4889 |
msgstr ""
|
4890 |
|
4891 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4892 |
msgid "Limit result set to courses assigned a specific tag ID."
|
4893 |
msgstr ""
|
4894 |
|
4895 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4896 |
msgid "Filter by course to in-progress, passed, failed."
|
4897 |
msgstr ""
|
4898 |
|
4899 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4900 |
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:610
|
4901 |
msgid "Get item learned by user."
|
4902 |
msgstr ""
|
4903 |
|
4904 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4905 |
msgid "Get item popularity."
|
4906 |
msgstr ""
|
4907 |
|
4908 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:
|
4909 |
msgid "Disable some fields schema."
|
4910 |
msgstr ""
|
4911 |
|
@@ -4970,6 +4915,11 @@ msgstr ""
|
|
4970 |
msgid "Video intro."
|
4971 |
msgstr ""
|
4972 |
|
|
|
|
|
|
|
|
|
|
|
4973 |
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:14
|
4974 |
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:475
|
4975 |
msgid "Method '%s' not implemented. Must be overridden in subclass."
|
@@ -4991,10 +4941,6 @@ msgstr ""
|
|
4991 |
msgid "Sorry, you cannot view this resource."
|
4992 |
msgstr ""
|
4993 |
|
4994 |
-
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:65
|
4995 |
-
msgid "Invalid ID."
|
4996 |
-
msgstr ""
|
4997 |
-
|
4998 |
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:506
|
4999 |
#: inc/jwt/rest-api/version1/class-lp-rest-section-items-v1-controller.php:315
|
5000 |
#: inc/jwt/rest-api/version1/class-lp-rest-sections-v1-controller.php:143
|
@@ -5219,820 +5165,820 @@ msgstr ""
|
|
5219 |
msgid "Your password has been updated, Please login aga
|
2 |
# This file is distributed under the same license as the LearnPress plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: LearnPress 4.1.6.9.4-beta-2\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/lp-doing\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2022-08-29T09:58:18+03:00\n"
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.6.0\n"
|
15 |
"X-Domain: learnpress\n"
|
17 |
#. Plugin Name of the plugin
|
18 |
#: inc/admin/class-lp-admin.php:135
|
19 |
#: inc/admin/class-lp-admin.php:143
|
20 |
+
#: inc/admin/lp-admin-functions.php:1715
|
21 |
#: inc/admin/settings/class-lp-settings-emails.php:154
|
22 |
#: inc/external-plugin/elementor/class-lp-elementor.php:41
|
23 |
#: assets/js/dist/frontend/quiz.min.js:8
|
164 |
#: inc/admin/settings/class-lp-settings-advanced.php:72
|
165 |
#: inc/course/lp-course-functions.php:449
|
166 |
#: inc/custom-post-types/lesson.php:158
|
|
|
167 |
#: inc/lp-template-functions.php:1009
|
168 |
msgid "Lesson"
|
169 |
msgstr ""
|
173 |
#: inc/course/lp-course-functions.php:450
|
174 |
#: inc/custom-post-types/question.php:320
|
175 |
#: inc/custom-post-types/quiz.php:87
|
|
|
176 |
#: inc/lp-template-functions.php:999
|
177 |
#: templates/profile/tabs/quizzes.php:54
|
178 |
msgid "Quiz"
|
430 |
msgstr ""
|
431 |
|
432 |
#: inc/admin/class-lp-admin.php:249
|
433 |
+
#: inc/admin/views/meta-boxes/fields/date.php:39
|
434 |
#: inc/class-lp-assets.php:73
|
435 |
+
#: inc/lp-core-functions.php:3039
|
436 |
#: inc/order/class-lp-order.php:954
|
437 |
#: assets/js/dist/frontend/quiz.min.js:44
|
438 |
msgid "Cancel"
|
478 |
#: inc/admin/settings/class-lp-settings-profile.php:150
|
479 |
#: inc/admin/sub-menus/class-lp-submenu-statistics.php:21
|
480 |
#: inc/admin/sub-menus/class-lp-submenu-statistics.php:28
|
481 |
+
#: inc/class-lp-page-controller.php:284
|
482 |
#: inc/custom-post-types/course.php:107
|
483 |
#: inc/custom-post-types/course.php:109
|
484 |
#: inc/lp-template-functions.php:312
|
630 |
|
631 |
#: inc/admin/class-lp-modal-search-items.php:183
|
632 |
#: inc/admin/class-lp-modal-search-users.php:141
|
633 |
+
#: inc/lp-core-functions.php:659
|
634 |
msgid "<"
|
635 |
msgstr ""
|
636 |
|
637 |
#: inc/admin/class-lp-modal-search-items.php:184
|
638 |
#: inc/admin/class-lp-modal-search-users.php:142
|
639 |
+
#: inc/lp-core-functions.php:660
|
640 |
msgid ">"
|
641 |
msgstr ""
|
642 |
|
800 |
msgstr ""
|
801 |
|
802 |
#: inc/admin/class-lp-setup-wizard.php:356
|
803 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:92
|
804 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:96
|
805 |
msgid "PayPal"
|
806 |
msgstr ""
|
807 |
|
810 |
msgid "Total Raised"
|
811 |
msgstr ""
|
812 |
|
813 |
+
#: inc/admin/editor/class-lp-admin-editor-course.php:80
|
814 |
#: inc/curds/class-lp-course-curd.php:46
|
815 |
msgid "New Course"
|
816 |
msgstr ""
|
817 |
|
818 |
+
#: inc/admin/editor/class-lp-admin-editor-course.php:233
|
819 |
+
#: inc/admin/editor/class-lp-admin-editor-course.php:262
|
820 |
msgid "You can not delete this item!"
|
821 |
msgstr ""
|
822 |
|
823 |
+
#: inc/admin/editor/class-lp-admin-editor-course.php:237
|
824 |
+
#: inc/admin/editor/class-lp-admin-editor-course.php:266
|
825 |
msgid "Invalid params!"
|
826 |
msgstr ""
|
827 |
|
841 |
msgstr ""
|
842 |
|
843 |
#: inc/admin/editor/class-lp-admin-editor-quiz.php:164
|
844 |
+
#: inc/admin/editor/class-lp-admin-editor-quiz.php:604
|
845 |
msgid "Quiz creation failed."
|
846 |
msgstr ""
|
847 |
|
871 |
msgstr ""
|
872 |
|
873 |
#: inc/admin/lp-admin-actions.php:222
|
874 |
+
#: inc/custom-post-types/course.php:495
|
875 |
msgid "Categories"
|
876 |
msgstr ""
|
877 |
|
899 |
msgid "Duplicate"
|
900 |
msgstr ""
|
901 |
|
902 |
+
#: inc/admin/lp-admin-functions.php:222
|
903 |
msgid "[ Add a new page ]"
|
904 |
msgstr ""
|
905 |
|
906 |
+
#: inc/admin/lp-admin-functions.php:245
|
907 |
msgid "Select Page"
|
908 |
msgstr ""
|
909 |
|
910 |
+
#: inc/admin/lp-admin-functions.php:263
|
911 |
#: inc/admin/meta-box/fields/select-page.php:24
|
912 |
msgid "Select a page…"
|
913 |
msgstr ""
|
914 |
|
915 |
+
#: inc/admin/lp-admin-functions.php:291
|
916 |
msgctxt "drop down pages"
|
917 |
msgid "or"
|
918 |
msgstr ""
|
919 |
|
920 |
+
#: inc/admin/lp-admin-functions.php:294
|
921 |
msgid "Create new"
|
922 |
msgstr ""
|
923 |
|
924 |
+
#: inc/admin/lp-admin-functions.php:299
|
925 |
msgid "New page title"
|
926 |
msgstr ""
|
927 |
|
928 |
+
#: inc/admin/lp-admin-functions.php:301
|
929 |
msgid "Ok [Enter]"
|
930 |
msgstr ""
|
931 |
|
932 |
+
#: inc/admin/lp-admin-functions.php:303
|
933 |
msgid "Cancel [ESC]"
|
934 |
msgstr ""
|
935 |
|
936 |
+
#: inc/admin/lp-admin-functions.php:308
|
937 |
msgid "Edit page"
|
938 |
msgstr ""
|
939 |
|
940 |
+
#: inc/admin/lp-admin-functions.php:311
|
941 |
msgid "View page"
|
942 |
msgstr ""
|
943 |
|
944 |
+
#: inc/admin/lp-admin-functions.php:425
|
945 |
msgid "Minutes"
|
946 |
msgstr ""
|
947 |
|
948 |
+
#: inc/admin/lp-admin-functions.php:469
|
949 |
+
#: inc/admin/lp-admin-functions.php:515
|
950 |
#: inc/admin/settings/class-lp-settings-emails.php:141
|
951 |
msgid "Plain Text"
|
952 |
msgstr ""
|
953 |
|
954 |
+
#: inc/admin/lp-admin-functions.php:470
|
955 |
+
#: inc/admin/lp-admin-functions.php:516
|
956 |
#: inc/admin/settings/class-lp-settings-emails.php:142
|
957 |
msgid "HTML"
|
958 |
msgstr ""
|
959 |
|
960 |
+
#: inc/admin/lp-admin-functions.php:715
|
961 |
#: inc/admin/views/addons/html-loop-theme.php:45
|
962 |
msgid "Get it now"
|
963 |
msgstr ""
|
964 |
|
965 |
+
#: inc/admin/lp-admin-functions.php:717
|
966 |
#: inc/admin/views/addons/html-loop-theme.php:46
|
967 |
msgid "View Demo"
|
968 |
msgstr ""
|
969 |
|
970 |
+
#: inc/admin/lp-admin-functions.php:1029
|
971 |
+
#: inc/admin/lp-admin-functions.php:1223
|
972 |
+
#: inc/admin/lp-admin-functions.php:1439
|
973 |
+
#: inc/admin/lp-admin-functions.php:2297
|
974 |
#: inc/admin/views/statistics/courses.php:27
|
975 |
#: inc/admin/views/statistics/general.php:43
|
976 |
#: inc/admin/views/statistics/orders.php:29
|
988 |
msgid "All"
|
989 |
msgstr ""
|
990 |
|
991 |
+
#: inc/admin/lp-admin-functions.php:1034
|
992 |
#: inc/admin/views/statistics/courses.php:9
|
993 |
#: inc/admin/views/statistics/general.php:9
|
994 |
#: inc/admin/views/statistics/orders.php:9
|
996 |
msgid "Instructors"
|
997 |
msgstr ""
|
998 |
|
999 |
+
#: inc/admin/lp-admin-functions.php:1039
|
1000 |
#: inc/admin/views/statistics/courses.php:8
|
1001 |
#: inc/admin/views/statistics/general.php:8
|
1002 |
#: inc/admin/views/statistics/orders.php:8
|
1003 |
#: inc/admin/views/statistics/users.php:8
|
1004 |
+
#: inc/custom-post-types/course.php:474
|
1005 |
+
#: inc/custom-post-types/course.php:491
|
1006 |
msgid "Students"
|
1007 |
msgstr ""
|
1008 |
|
1009 |
+
#: inc/admin/lp-admin-functions.php:1228
|
1010 |
+
#: inc/admin/lp-admin-functions.php:2302
|
1011 |
#: inc/templates/class-lp-template-profile.php:112
|
1012 |
#: inc/user/class-lp-profile.php:841
|
1013 |
msgid "Publish"
|
1014 |
msgstr ""
|
1015 |
|
1016 |
+
#: inc/admin/lp-admin-functions.php:1233
|
1017 |
+
#: inc/admin/lp-admin-functions.php:1449
|
1018 |
+
#: inc/admin/lp-admin-functions.php:2307
|
1019 |
#: inc/templates/class-lp-template-profile.php:113
|
1020 |
#: inc/user/class-lp-profile.php:842
|
1021 |
msgid "Pending"
|
1022 |
msgstr ""
|
1023 |
|
1024 |
+
#: inc/admin/lp-admin-functions.php:1238
|
1025 |
+
#: inc/admin/lp-admin-functions.php:2312
|
1026 |
msgid "Paid"
|
1027 |
msgstr ""
|
1028 |
|
1029 |
+
#: inc/admin/lp-admin-functions.php:1243
|
1030 |
+
#: inc/admin/lp-admin-functions.php:2317
|
1031 |
#: inc/course/abstract-course.php:721
|
1032 |
#: inc/course/abstract-course.php:750
|
1033 |
#: templates/order/order-details.php:43
|
1034 |
msgid "Free"
|
1035 |
msgstr ""
|
1036 |
|
1037 |
+
#: inc/admin/lp-admin-functions.php:1444
|
1038 |
#: inc/user-item/class-lp-user-item-quiz.php:146
|
1039 |
+
#: inc/user-item/class-lp-user-item.php:806
|
1040 |
#: templates/content-lesson/button-complete.php:37
|
1041 |
msgid "Completed"
|
1042 |
msgstr ""
|
1043 |
|
1044 |
+
#: inc/admin/lp-admin-functions.php:1477
|
1045 |
msgid "Pending Courses / Publish Courses"
|
1046 |
msgstr ""
|
1047 |
|
1048 |
+
#: inc/admin/lp-admin-functions.php:1478
|
1049 |
msgid "Free Courses / Priced Courses"
|
1050 |
msgstr ""
|
1051 |
|
1052 |
+
#: inc/admin/lp-admin-functions.php:1858
|
1053 |
msgid " Copy"
|
1054 |
msgstr ""
|
1055 |
|
1056 |
+
#: inc/admin/lp-admin-functions.php:1966
|
1057 |
msgid "Question id %s does not exist."
|
1058 |
msgstr ""
|
1059 |
|
1060 |
+
#: inc/admin/lp-admin-functions.php:1970
|
1061 |
msgid "Quiz id %s does not exist."
|
1062 |
msgstr ""
|
1063 |
|
1085 |
msgid "Courses base with category"
|
1086 |
msgstr ""
|
1087 |
|
1088 |
+
#: inc/admin/meta-box/fields/course-permalink.php:85
|
1089 |
msgid "Custom Base"
|
1090 |
msgstr ""
|
1091 |
|
1092 |
+
#: inc/admin/meta-box/fields/course-permalink.php:89
|
1093 |
msgid "Enter a custom base to use. A base must be set or WordPress will use default values instead."
|
1094 |
msgstr ""
|
1095 |
|
1111 |
|
1112 |
#: inc/admin/meta-box/fields/image-advanced.php:25
|
1113 |
#: inc/admin/meta-box/fields/image-advanced.php:38
|
1114 |
+
#: inc/admin/meta-box/fields/image.php:25
|
1115 |
#: inc/admin/views/course/section.php:48
|
1116 |
#: inc/admin/views/question/fib-answer-editor.php:24
|
1117 |
#: inc/admin/views/question/option.php:22
|
1130 |
msgid "Delete image"
|
1131 |
msgstr ""
|
1132 |
|
1133 |
+
#: inc/admin/meta-box/fields/image.php:24
|
1134 |
msgid "Select images"
|
1135 |
msgstr ""
|
1136 |
|
1137 |
+
#: inc/admin/meta-box/fields/image.php:24
|
1138 |
+
#: inc/admin/views/meta-boxes/fields/autocomplete.php:59
|
1139 |
msgid "Select"
|
1140 |
msgstr ""
|
1141 |
|
1142 |
+
#: inc/admin/meta-box/fields/image.php:24
|
1143 |
#: assets/js/dist/frontend/quiz.min.js:215
|
1144 |
msgid "Upload"
|
1145 |
msgstr ""
|
1149 |
#: inc/admin/views/meta-boxes/order/exports-invoice.php:80
|
1150 |
#: inc/class-lp-checkout.php:305
|
1151 |
#: inc/class-lp-checkout.php:313
|
1152 |
+
#: inc/lp-deprecated.php:2246
|
1153 |
#: templates/checkout/account-register.php:25
|
1154 |
#: templates/global/become-teacher-form.php:39
|
1155 |
#: templates/global/form-register.php:29
|
1183 |
|
1184 |
#: inc/admin/meta-box/fields/payment-order.php:10
|
1185 |
#: inc/emails/class-lp-email.php:1030
|
1186 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:315
|
1187 |
msgid "Enable/Disable"
|
1188 |
msgstr ""
|
1189 |
|
1332 |
msgstr ""
|
1333 |
|
1334 |
#: inc/admin/settings/class-lp-settings-profile.php:89
|
1335 |
+
#: inc/user/lp-user-functions.php:1946
|
1336 |
+
#: inc/user/lp-user-functions.php:1948
|
1337 |
#: templates/profile/tabs/settings/basic-information.php:33
|
1338 |
msgid "First name"
|
1339 |
msgstr ""
|
1340 |
|
1341 |
#: inc/admin/settings/class-lp-settings-profile.php:96
|
1342 |
+
#: inc/user/lp-user-functions.php:1959
|
1343 |
+
#: inc/user/lp-user-functions.php:1961
|
1344 |
#: templates/profile/tabs/settings/basic-information.php:39
|
1345 |
msgid "Last name"
|
1346 |
msgstr ""
|
1347 |
|
1348 |
#: inc/admin/settings/class-lp-settings-profile.php:103
|
1349 |
#: inc/admin/settings/class-lp-settings-profile.php:115
|
1350 |
+
#: inc/user/lp-user-functions.php:1972
|
1351 |
+
#: inc/user/lp-user-functions.php:1974
|
1352 |
#: templates/profile/tabs/settings/basic-information.php:45
|
1353 |
msgid "Display name"
|
1354 |
msgstr ""
|
1359 |
|
1360 |
#: inc/admin/settings/class-lp-settings-profile.php:112
|
1361 |
#: inc/admin/views/quiz/editor.php:47
|
1362 |
+
#: inc/lp-deprecated.php:2238
|
1363 |
#: templates/global/become-teacher-form.php:35
|
1364 |
#: templates/profile/tabs/courses/course-list.php:22
|
1365 |
msgid "Name"
|
1747 |
|
1748 |
#: inc/admin/views/meta-boxes/course/settings.php:50
|
1749 |
#: inc/admin/views/meta-boxes/course/settings.php:367
|
1750 |
+
#: inc/custom-post-types/course.php:472
|
1751 |
+
#: inc/custom-post-types/course.php:489
|
1752 |
#: inc/custom-post-types/lesson.php:221
|
1753 |
#: inc/custom-post-types/question.php:319
|
1754 |
#: inc/custom-post-types/quiz.php:236
|
1760 |
#: inc/admin/views/meta-boxes/quiz/settings.php:17
|
1761 |
#: inc/custom-post-types/lesson.php:227
|
1762 |
#: inc/custom-post-types/quiz.php:239
|
1763 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1072
|
1764 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:500
|
1765 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:636
|
1766 |
msgid "Duration"
|
1939 |
msgstr ""
|
1940 |
|
1941 |
#: inc/admin/views/meta-boxes/course/settings.php:451
|
1942 |
+
#: inc/templates/class-lp-template-course.php:283
|
1943 |
+
#: inc/templates/class-lp-template-course.php:906
|
1944 |
#: inc/widgets/course-extra.php:35
|
1945 |
msgid "Requirements"
|
1946 |
msgstr ""
|
1975 |
|
1976 |
#: inc/admin/views/meta-boxes/fields/extra-faq.php:41
|
1977 |
#: inc/admin/views/meta-boxes/fields/extra-faq.php:61
|
1978 |
+
#: inc/custom-post-types/course.php:473
|
1979 |
+
#: inc/custom-post-types/course.php:490
|
1980 |
#: inc/external-plugin/elementor/widgets/become-a-teacher.php:26
|
1981 |
#: inc/external-plugin/elementor/widgets/list-courses.php:32
|
1982 |
msgid "Content"
|
1983 |
msgstr ""
|
1984 |
|
1985 |
#: inc/admin/views/meta-boxes/fields/extra-faq.php:69
|
1986 |
+
#: inc/admin/views/meta-boxes/fields/extra.php:48
|
1987 |
+
#: inc/admin/views/meta-boxes/fields/repeater.php:50
|
1988 |
msgid "+ Add more"
|
1989 |
msgstr ""
|
1990 |
|
1991 |
#: inc/admin/views/meta-boxes/fields/file.php:88
|
1992 |
+
#: inc/admin/views/meta-boxes/lp-meta-box-functions.php:374
|
1993 |
msgid "+ Add media"
|
1994 |
msgstr ""
|
1995 |
|
1996 |
+
#: inc/admin/views/meta-boxes/fields/repeater.php:87
|
1997 |
msgid "Repeater"
|
1998 |
msgstr ""
|
1999 |
|
2051 |
#: inc/admin/views/meta-boxes/order/content-tab-preview-exports-invoice.php:72
|
2052 |
#: inc/admin/views/meta-boxes/order/details.php:155
|
2053 |
#: inc/custom-post-types/course.php:79
|
|
|
2054 |
#: templates/checkout/order-received.php:60
|
2055 |
msgid "Item"
|
2056 |
msgstr ""
|
2285 |
msgid "How many times the user can re-take this quiz. Set 0 to disable. Set -1 to infinite."
|
2286 |
msgstr ""
|
2287 |
|
2288 |
+
#: inc/admin/views/meta-boxes/quiz/settings.php:71
|
2289 |
msgid "Pagination"
|
2290 |
msgstr ""
|
2291 |
|
2292 |
+
#: inc/admin/views/meta-boxes/quiz/settings.php:72
|
2293 |
msgid "The number of questions displayed on each page."
|
2294 |
msgstr ""
|
2295 |
|
2296 |
+
#: inc/admin/views/meta-boxes/quiz/settings.php:85
|
2297 |
#: assets/js/dist/frontend/quiz.min.js:308
|
2298 |
msgid "Review"
|
2299 |
msgstr ""
|
2300 |
|
2301 |
+
#: inc/admin/views/meta-boxes/quiz/settings.php:86
|
2302 |
msgid "Allow students to review this quiz after they finish the quiz."
|
2303 |
msgstr ""
|
2304 |
|
2305 |
+
#: inc/admin/views/meta-boxes/quiz/settings.php:90
|
2306 |
msgid "Show correct answer"
|
2307 |
msgstr ""
|
2308 |
|
2309 |
+
#: inc/admin/views/meta-boxes/quiz/settings.php:91
|
2310 |
msgid "Allow students view correct answer question in review this quiz."
|
2311 |
msgstr ""
|
2312 |
|
2401 |
#: inc/custom-post-types/question.php:208
|
2402 |
#: inc/custom-post-types/quiz.php:175
|
2403 |
#: inc/custom-post-types/quiz.php:238
|
2404 |
+
#: inc/custom-post-types/quiz.php:464
|
2405 |
#: assets/js/dist/frontend/quiz.min.js:21
|
2406 |
#: assets/js/dist/frontend/quiz.min.js:210
|
2407 |
msgid "Questions"
|
2798 |
msgstr ""
|
2799 |
|
2800 |
#: inc/class-lp-assets.php:72
|
2801 |
+
#: inc/lp-core-functions.php:3038
|
2802 |
#: assets/js/dist/frontend/quiz.min.js:41
|
2803 |
msgid "OK"
|
2804 |
msgstr ""
|
2805 |
|
2806 |
#: inc/class-lp-assets.php:74
|
2807 |
+
#: inc/lp-core-functions.php:3040
|
2808 |
#: templates/global/lp-modal-overlay.php:24
|
2809 |
msgid "Yes"
|
2810 |
msgstr ""
|
2811 |
|
2812 |
#: inc/class-lp-assets.php:75
|
2813 |
+
#: inc/lp-core-functions.php:3041
|
2814 |
#: templates/global/lp-modal-overlay.php:23
|
2815 |
msgid "No"
|
2816 |
msgstr ""
|
2963 |
msgid "Type item buy invalid!"
|
2964 |
msgstr ""
|
2965 |
|
|
|
|
|
|
|
|
|
|
|
2966 |
#: inc/class-lp-forms-handler.php:30
|
2967 |
#: inc/class-lp-forms-handler.php:231
|
2968 |
#: inc/curds/class-lp-user-curd.php:2137
|
3067 |
msgid "Password reset is not allowed for this user."
|
3068 |
msgstr ""
|
3069 |
|
3070 |
+
#: inc/class-lp-page-controller.php:173
|
3071 |
#: inc/course/lp-course-functions.php:176
|
3072 |
msgctxt "slug"
|
3073 |
msgid "uncategorized"
|
3074 |
msgstr ""
|
3075 |
|
3076 |
+
#: inc/class-lp-page-controller.php:282
|
3077 |
#: inc/lp-template-functions.php:310
|
3078 |
msgid "Course Search Results"
|
3079 |
msgstr ""
|
3080 |
|
3081 |
+
#: inc/class-lp-page-controller.php:351
|
3082 |
msgid "No payment method is available."
|
3083 |
msgstr ""
|
3084 |
|
3088 |
msgstr ""
|
3089 |
|
3090 |
#: inc/class-lp-query-list-table.php:28
|
|
|
3091 |
msgid "items"
|
3092 |
msgstr ""
|
3093 |
|
3185 |
msgstr ""
|
3186 |
|
3187 |
#: inc/course/lp-course-functions.php:970
|
3188 |
+
#: inc/lp-core-functions.php:2415
|
3189 |
#: inc/templates/class-lp-template-profile.php:103
|
3190 |
#: inc/user-item/class-lp-user-item-quiz.php:147
|
|
|
3191 |
#: inc/user/class-lp-profile.php:874
|
3192 |
#: inc/user/class-lp-profile.php:908
|
3193 |
#: assets/js/dist/frontend/quiz.min.js:167
|
3195 |
msgstr ""
|
3196 |
|
3197 |
#: inc/course/lp-course-functions.php:973
|
3198 |
+
#: inc/lp-core-functions.php:2418
|
3199 |
#: inc/templates/class-lp-template-profile.php:104
|
3200 |
#: inc/user-item/class-lp-user-item-quiz.php:148
|
|
|
3201 |
#: inc/user/class-lp-profile.php:875
|
3202 |
#: inc/user/class-lp-profile.php:909
|
3203 |
#: assets/js/dist/frontend/quiz.min.js:169
|
3205 |
msgstr ""
|
3206 |
|
3207 |
#: inc/course/lp-course-functions.php:976
|
3208 |
+
#: inc/lp-core-functions.php:2421
|
3209 |
#: inc/lp-deprecated.php:385
|
3210 |
#: inc/templates/class-lp-template-profile.php:101
|
3211 |
#: inc/user-item/class-lp-user-item-quiz.php:144
|
3212 |
#: inc/user-item/class-lp-user-item-quiz.php:145
|
|
|
|
|
|
|
3213 |
msgid "In Progress"
|
3214 |
msgstr ""
|
3215 |
|
3241 |
msgid "Course does not exist."
|
3242 |
msgstr ""
|
3243 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3244 |
#: inc/curds/class-lp-lesson-curd.php:35
|
3245 |
msgid "New Lesson"
|
3246 |
msgstr ""
|
3247 |
|
3248 |
+
#: inc/curds/class-lp-lesson-curd.php:139
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3249 |
msgid "Invalid lesson with ID \"%d\"."
|
3250 |
msgstr ""
|
3251 |
|
3274 |
msgid "Question does not exist."
|
3275 |
msgstr ""
|
3276 |
|
3277 |
+
#: inc/curds/class-lp-question-curd.php:150
|
3278 |
+
msgid "<p>Op! ID not found</p>"
|
3279 |
+
msgstr ""
|
3280 |
+
|
3281 |
#: inc/curds/class-lp-question-curd.php:154
|
3282 |
msgid "<p>Op! The question does not exist</p>"
|
3283 |
msgstr ""
|
3302 |
msgid "Invalid quiz with ID \"%d\"."
|
3303 |
msgstr ""
|
3304 |
|
3305 |
+
#: inc/curds/class-lp-user-curd.php:1930
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3306 |
msgid "No item in Order"
|
3307 |
msgstr ""
|
3308 |
|
3309 |
+
#: inc/curds/class-lp-user-curd.php:2062
|
3310 |
#: inc/user/class-lp-user.php:736
|
3311 |
msgid "quiz"
|
3312 |
msgstr ""
|
3313 |
|
3314 |
+
#: inc/curds/class-lp-user-curd.php:2063
|
3315 |
#: inc/user/class-lp-user.php:737
|
3316 |
msgid "quizzes"
|
3317 |
msgstr ""
|
3563 |
msgid "course-tag"
|
3564 |
msgstr ""
|
3565 |
|
3566 |
+
#: inc/custom-post-types/course.php:475
|
3567 |
+
#: inc/custom-post-types/course.php:492
|
3568 |
#: templates/emails/order-items-table.php:87
|
3569 |
msgid "Price"
|
3570 |
msgstr ""
|
3571 |
|
3572 |
+
#: inc/custom-post-types/course.php:481
|
3573 |
+
#: inc/custom-post-types/course.php:484
|
3574 |
msgid "Thumbnail"
|
3575 |
msgstr ""
|
3576 |
|
3577 |
+
#: inc/custom-post-types/course.php:526
|
3578 |
msgid "<strong>%d</strong> section"
|
3579 |
msgid_plural "<strong>%d</strong> sections"
|
3580 |
msgstr[0] ""
|
3581 |
msgstr[1] ""
|
3582 |
|
3583 |
+
#: inc/custom-post-types/course.php:540
|
3584 |
msgid "<strong>%d</strong> "
|
3585 |
msgid_plural "<strong>%d</strong> "
|
3586 |
msgstr[0] ""
|
3587 |
msgstr[1] ""
|
3588 |
|
3589 |
+
#: inc/custom-post-types/course.php:551
|
3590 |
msgid "No content"
|
3591 |
msgstr ""
|
3592 |
|
3593 |
+
#: inc/custom-post-types/course.php:569
|
3594 |
#: inc/lp-template-functions.php:67
|
3595 |
msgid "Curriculum"
|
3596 |
msgstr ""
|
3650 |
|
3651 |
#: inc/custom-post-types/lesson.php:316
|
3652 |
#: inc/custom-post-types/question.php:490
|
3653 |
+
#: inc/custom-post-types/quiz.php:456
|
3654 |
msgid "Assigned"
|
3655 |
msgstr ""
|
3656 |
|
3679 |
|
3680 |
#: inc/custom-post-types/order.php:664
|
3681 |
#: inc/lp-deprecated.php:354
|
3682 |
+
#: inc/user-item/class-lp-user-item.php:805
|
3683 |
msgid "Purchased"
|
3684 |
msgstr ""
|
3685 |
|
3686 |
#: inc/custom-post-types/order.php:667
|
3687 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1330
|
3688 |
#: templates/emails/order-items-table.php:72
|
3689 |
#: templates/emails/plain/order-items-table.php:58
|
3690 |
#: templates/profile/tabs/orders/list.php:31
|
3857 |
msgstr ""
|
3858 |
|
3859 |
#: inc/custom-post-types/quiz.php:286
|
3860 |
+
#: inc/templates/class-lp-template-course.php:97
|
3861 |
+
#: inc/templates/class-lp-template-course.php:102
|
3862 |
msgid "%d question"
|
3863 |
msgid_plural "%d questions"
|
3864 |
msgstr[0] ""
|
3868 |
msgid "This quiz has no questions"
|
3869 |
msgstr ""
|
3870 |
|
3871 |
+
#: inc/custom-post-types/quiz.php:302
|
3872 |
msgid "hours"
|
3873 |
msgstr ""
|
3874 |
|
3875 |
+
#: inc/custom-post-types/quiz.php:305
|
3876 |
msgid "minutes"
|
3877 |
msgstr ""
|
3878 |
|
3879 |
+
#: inc/custom-post-types/quiz.php:308
|
3880 |
msgid "days"
|
3881 |
msgstr ""
|
3882 |
|
3883 |
+
#: inc/custom-post-types/quiz.php:311
|
3884 |
msgid "weeks"
|
3885 |
msgstr ""
|
3886 |
|
4260 |
msgid "Login form is disabled"
|
4261 |
msgstr ""
|
4262 |
|
4263 |
+
#: inc/external-plugin/elementor/widgets/register-form.php:13
|
4264 |
msgid "Register Form"
|
4265 |
msgstr ""
|
4266 |
|
4267 |
+
#: inc/external-plugin/elementor/widgets/register-form.php:33
|
4268 |
msgid "Register form is disabled"
|
4269 |
msgstr ""
|
4270 |
|
4329 |
msgstr ""
|
4330 |
|
4331 |
#: inc/external-plugin/elementor/widgets/widget-base.php:419
|
4332 |
+
#: inc/lp-deprecated.php:2260
|
4333 |
#: templates/global/become-teacher-form.php:47
|
4334 |
msgid "Message"
|
4335 |
msgstr ""
|
4358 |
msgid "Payment to be made upon delivery."
|
4359 |
msgstr ""
|
4360 |
|
4361 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:93
|
4362 |
msgid "Make payment via Paypal."
|
4363 |
msgstr ""
|
4364 |
|
4365 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:97
|
4366 |
msgid "Pay with PayPal"
|
4367 |
msgstr ""
|
4368 |
|
4369 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:319
|
|
|
|
|
|
|
|
|
4370 |
msgid "Enable PayPal Standard"
|
4371 |
msgstr ""
|
4372 |
|
4373 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:322
|
4374 |
msgid "PayPal email"
|
4375 |
msgstr ""
|
4376 |
|
4377 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:327
|
4378 |
msgid "Sandbox mode"
|
4379 |
msgstr ""
|
4380 |
|
4381 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:331
|
4382 |
msgid "Enable PayPal sandbox"
|
4383 |
msgstr ""
|
4384 |
|
4385 |
+
#: inc/gateways/paypal/class-lp-gateway-paypal.php:334
|
4386 |
msgid "Sandbox email address"
|
4387 |
msgstr ""
|
4388 |
|
4463 |
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:64
|
4464 |
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:89
|
4465 |
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:114
|
4466 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:992
|
4467 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:32
|
4468 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:58
|
4469 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:430
|
4564 |
msgid "%s secs"
|
4565 |
msgstr ""
|
4566 |
|
4567 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:998
|
4568 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:436
|
4569 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:203
|
4570 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:572
|
4571 |
msgid "Course name."
|
4572 |
msgstr ""
|
4573 |
|
4574 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1003
|
4575 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:441
|
4576 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:208
|
4577 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:577
|
4578 |
msgid "Course slug."
|
4579 |
msgstr ""
|
4580 |
|
4581 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1008
|
4582 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:446
|
4583 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:213
|
4584 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:582
|
4585 |
msgid "Course URL."
|
4586 |
msgstr ""
|
4587 |
|
4588 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1015
|
4589 |
msgid "Course Image URL."
|
4590 |
msgstr ""
|
4591 |
|
4592 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1021
|
4593 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:453
|
4594 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:220
|
4595 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:589
|
4596 |
msgid "The date the Course was created, in the site's timezone."
|
4597 |
msgstr ""
|
4598 |
|
4599 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1028
|
4600 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:459
|
4601 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:226
|
4602 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:595
|
4603 |
msgid "The date the Course was created, as GMT."
|
4604 |
msgstr ""
|
4605 |
|
4606 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1035
|
4607 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:465
|
4608 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:232
|
4609 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:601
|
4610 |
msgid "The date the Course was last modified, in the site's timezone."
|
4611 |
msgstr ""
|
4612 |
|
4613 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1042
|
4614 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:471
|
4615 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:238
|
4616 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:607
|
4617 |
msgid "The date the Course was last modified, as GMT."
|
4618 |
msgstr ""
|
4619 |
|
4620 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1049
|
4621 |
msgid "Shows if the course is on sale."
|
4622 |
msgstr ""
|
4623 |
|
4624 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1055
|
4625 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:477
|
4626 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:244
|
4627 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:613
|
4628 |
msgid "Course status (post status)."
|
4629 |
msgstr ""
|
4630 |
|
4631 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1062
|
4632 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:484
|
4633 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:251
|
4634 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:620
|
4635 |
msgid "Content course."
|
4636 |
msgstr ""
|
4637 |
|
4638 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1067
|
4639 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:489
|
4640 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:256
|
4641 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:625
|
4642 |
msgid "Retrieves the course excerpt.."
|
4643 |
msgstr ""
|
4644 |
|
4645 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1077
|
4646 |
msgid "Count student enrolled"
|
4647 |
msgstr ""
|
4648 |
|
4649 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1083
|
4650 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:494
|
4651 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:630
|
4652 |
msgid "Can finish course"
|
4653 |
msgstr ""
|
4654 |
|
4655 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1089
|
4656 |
msgid "Can retake course"
|
4657 |
msgstr ""
|
4658 |
|
4659 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1095
|
4660 |
msgid "Total retake"
|
4661 |
msgstr ""
|
4662 |
|
4663 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1101
|
4664 |
msgid "Retaken"
|
4665 |
msgstr ""
|
4666 |
|
4667 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1107
|
4668 |
msgid "Course Review add-on"
|
4669 |
msgstr ""
|
4670 |
|
4671 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1113
|
4672 |
msgid "Course Price"
|
4673 |
msgstr ""
|
4674 |
|
4675 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1119
|
4676 |
msgid "Course Price Rendered"
|
4677 |
msgstr ""
|
4678 |
|
4679 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1125
|
4680 |
msgid "Course Origin Price"
|
4681 |
msgstr ""
|
4682 |
|
4683 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1131
|
4684 |
msgid "Course Origin Price Rendered"
|
4685 |
msgstr ""
|
4686 |
|
4687 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1137
|
4688 |
msgid "Course Sale Price"
|
4689 |
msgstr ""
|
4690 |
|
4691 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1143
|
4692 |
msgid "Course Sale Price Rendered"
|
4693 |
msgstr ""
|
4694 |
|
4695 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1149
|
4696 |
msgid "List of categories."
|
4697 |
msgstr ""
|
4698 |
|
4699 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1156
|
4700 |
msgid "Category ID."
|
4701 |
msgstr ""
|
4702 |
|
4703 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1161
|
4704 |
msgid "Category name."
|
4705 |
msgstr ""
|
4706 |
|
4707 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1167
|
4708 |
msgid "Category slug."
|
4709 |
msgstr ""
|
4710 |
|
4711 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1176
|
4712 |
msgid "List of tags."
|
4713 |
msgstr ""
|
4714 |
|
4715 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1183
|
4716 |
msgid "Tag ID."
|
4717 |
msgstr ""
|
4718 |
|
4719 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1188
|
4720 |
msgid "Tag name."
|
4721 |
msgstr ""
|
4722 |
|
4723 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1194
|
4724 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1221
|
4725 |
msgid "Tag slug."
|
4726 |
msgstr ""
|
4727 |
|
4728 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1203
|
4729 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1236
|
4730 |
msgid "Retrieves the course sections and items.."
|
4731 |
msgstr ""
|
4732 |
|
4733 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1210
|
4734 |
msgid "User ID."
|
4735 |
msgstr ""
|
4736 |
|
4737 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1215
|
4738 |
msgid "Display name."
|
4739 |
msgstr ""
|
4740 |
|
4741 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1227
|
4742 |
msgid "Social Infor."
|
4743 |
msgstr ""
|
4744 |
|
4745 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1243
|
4746 |
#: inc/jwt/rest-api/version1/class-lp-rest-section-items-v1-controller.php:14
|
4747 |
msgid "Section ID."
|
4748 |
msgstr ""
|
4749 |
|
4750 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1248
|
4751 |
#: inc/jwt/rest-api/version1/class-lp-rest-sections-v1-controller.php:122
|
4752 |
msgid "Section name."
|
4753 |
msgstr ""
|
4754 |
|
4755 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1253
|
4756 |
#: inc/jwt/rest-api/version1/class-lp-rest-sections-v1-controller.php:14
|
4757 |
msgid "Course ID."
|
4758 |
msgstr ""
|
4759 |
|
4760 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1258
|
4761 |
#: inc/jwt/rest-api/version1/class-lp-rest-sections-v1-controller.php:127
|
4762 |
msgid "Section description."
|
4763 |
msgstr ""
|
4764 |
|
4765 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1263
|
4766 |
msgid "Section items."
|
4767 |
msgstr ""
|
4768 |
|
4769 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1268
|
4770 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1283
|
4771 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:510
|
4772 |
#: inc/jwt/rest-api/version1/class-lp-rest-questions-v1-controller.php:266
|
4773 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:646
|
4775 |
msgid "Item ID."
|
4776 |
msgstr ""
|
4777 |
|
4778 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1273
|
4779 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:687
|
4780 |
msgid "Item Type."
|
4781 |
msgstr ""
|
4782 |
|
4783 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1278
|
4784 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:692
|
4785 |
#: inc/jwt/rest-api/version1/class-lp-rest-quiz-v1-controller.php:721
|
4786 |
msgid "Item title."
|
4787 |
msgstr ""
|
4788 |
|
4789 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1288
|
4790 |
msgid "Percent."
|
4791 |
msgstr ""
|
4792 |
|
4793 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1293
|
4794 |
msgid "Duration."
|
4795 |
msgstr ""
|
4796 |
|
4797 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1298
|
4798 |
msgid "Graduation."
|
4799 |
msgstr ""
|
4800 |
|
4801 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1303
|
4802 |
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:542
|
4803 |
msgid "Status."
|
4804 |
msgstr ""
|
4805 |
|
4806 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1308
|
4807 |
msgid "Locked."
|
4808 |
msgstr ""
|
4809 |
|
4810 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1318
|
4811 |
msgid "List of course user data."
|
4812 |
msgstr ""
|
4813 |
|
4814 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1325
|
4815 |
msgid "Graduation"
|
4816 |
msgstr ""
|
4817 |
|
4818 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1336
|
4819 |
msgid "Start time"
|
4820 |
msgstr ""
|
4821 |
|
4822 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1342
|
4823 |
#: templates/profile/tabs/courses/course-list.php:25
|
4824 |
msgid "End time"
|
4825 |
msgstr ""
|
4826 |
|
4827 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1348
|
4828 |
#: templates/profile/tabs/courses/course-list.php:24
|
4829 |
msgid "Expiration time"
|
4830 |
msgstr ""
|
4831 |
|
4832 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1368
|
4833 |
msgid "Limit result set to courses assigned a specific category ID."
|
4834 |
msgstr ""
|
4835 |
|
4836 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1374
|
4837 |
msgid "Limit result set to courses assigned a specific tag ID."
|
4838 |
msgstr ""
|
4839 |
|
4840 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1380
|
4841 |
msgid "Filter by course to in-progress, passed, failed."
|
4842 |
msgstr ""
|
4843 |
|
4844 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1387
|
4845 |
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:610
|
4846 |
msgid "Get item learned by user."
|
4847 |
msgstr ""
|
4848 |
|
4849 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1393
|
4850 |
msgid "Get item popularity."
|
4851 |
msgstr ""
|
4852 |
|
4853 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-courses-v1-controller.php:1398
|
4854 |
msgid "Disable some fields schema."
|
4855 |
msgstr ""
|
4856 |
|
4915 |
msgid "Video intro."
|
4916 |
msgstr ""
|
4917 |
|
4918 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-lessons-v1-controller.php:572
|
4919 |
+
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:65
|
4920 |
+
msgid "Invalid ID."
|
4921 |
+
msgstr ""
|
4922 |
+
|
4923 |
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:14
|
4924 |
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:475
|
4925 |
msgid "Method '%s' not implemented. Must be overridden in subclass."
|
4941 |
msgid "Sorry, you cannot view this resource."
|
4942 |
msgstr ""
|
4943 |
|
|
|
|
|
|
|
|
|
4944 |
#: inc/jwt/rest-api/version1/class-lp-rest-posts-controller.php:506
|
4945 |
#: inc/jwt/rest-api/version1/class-lp-rest-section-items-v1-controller.php:315
|
4946 |
#: inc/jwt/rest-api/version1/class-lp-rest-sections-v1-controller.php:143
|
5165 |
msgid "Your password has been updated, Please login aga
|