PluginProbe ʕ •ᴥ•ʔ
Tutor LMS – eLearning and online course solution / 4.0.4
Tutor LMS – eLearning and online course solution v4.0.4
4.0.4 4.0.3 4.0.2 4.0.1 4.0.0 3.9.15 3.9.14 3.9.13 3.9.12 3.9.11 trunk 1.0.0 1.0.0-alpha 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.2.0 1.2.1 1.2.11 1.2.12 1.2.13 1.2.20 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.9 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.15 1.9.16 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.1.1 2.1.10 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.4.0 2.5.0 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 3.0.0 3.0.1 3.0.2 3.1.0 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.7.0 3.7.1 3.7.2 3.7.3 3.7.4 3.8.0 3.8.1 3.8.2 3.8.3 3.9.0 3.9.1 3.9.10 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.8 3.9.9
tutor / templates / user-profile.php
tutor / templates Last commit date
course-filter 3 months ago dashboard 1 week ago ecommerce 2 weeks ago email 1 month ago global 1 month ago instructor 3 years ago learning-area 1 week ago loop 1 month ago modal 3 months ago profile 3 years ago shared 2 weeks ago shortcode 3 months ago single 2 weeks ago template-part 1 month ago widget 3 years ago account-header.php 1 month ago account.php 1 month ago archive-course-init.php 10 months ago archive-course.php 3 years ago course-embed.php 3 months ago course-none.php 3 years ago dashboard-isolated.php 1 month ago dashboard.php 1 month ago feature_disabled.php 3 years ago login-form-legacy.php 1 month ago login-form.php 1 month ago login.php 1 month ago permission-denied.php 1 month ago public-profile.php 1 month ago single-assignment.php 3 years ago single-content-loader.php 3 months ago single-course.php 1 month ago single-lesson.php 3 years ago single-preview-lesson.php 3 years ago single-quiz.php 1 year ago template.php 3 years ago user-profile.php 1 month ago
user-profile.php
149 lines
1 <?php
2 /**
3 * Tutor dashboard profile.
4 *
5 * @package Tutor\Templates
6 * @author Themeum <support@themeum.com>
7 * @link https://themeum.com
8 * @since 4.0.0
9 */
10
11 defined( 'ABSPATH' ) || exit;
12
13 use Tutor\Components\Avatar;
14 use Tutor\Components\Constants\Size;
15 use TUTOR\Dashboard;
16 use TUTOR\Icon;
17 use Tutor\Components\SvgIcon;
18 use Tutor\Helpers\UrlHelper;
19 use TUTOR\Input;
20
21 $user_id = Input::get( 'student_id', get_current_user_id(), Input::TYPE_INT );
22 $student_details = get_userdata( $user_id );
23 $student_meta = get_user_meta( $user_id );
24 $cover_photo_url = tutor_utils()->get_cover_photo_url( $user_id );
25 $edit_profile_url = Dashboard::get_account_page_url( 'settings' ) . '?tab=account';
26 $phone_number = $student_meta['phone_number'][0] ?? '';
27
28 $social_fields = tutor_utils()->tutor_user_social_icons();
29 $social_links = array();
30
31 foreach ( $social_fields as $meta_key => $field ) {
32 $url = $student_meta[ $meta_key ][0] ?? '';
33 $social_links[ $meta_key ] = array(
34 'url' => $url,
35 'icon' => $field['svg_icon'] ?? Icon::GLOBE,
36 'label' => $field['label'],
37 );
38 }
39 ?>
40
41 <div class="tutor-profile-card">
42 <div class="tutor-profile-card-header" style="background-image: url(<?php echo esc_attr( $cover_photo_url ); ?>);">
43 <?php Avatar::make()->user( $user_id )->size( Size::SIZE_104 )->render(); ?>
44 <?php if ( tutor_utils()->is_dashboard_page( 'account/profile' ) ) : ?>
45 <a href="<?php echo esc_url( UrlHelper::add_query_params( $edit_profile_url, array( 'back_url' => UrlHelper::current() ) ) ); ?>" class="tutor-edit-profile-btn">
46 <?php SvgIcon::make()->name( Icon::EDIT_2 )->render(); ?>
47 <span><?php esc_html_e( 'Edit Profile', 'tutor' ); ?></span>
48 </a>
49 <?php endif; ?>
50 </div>
51 <div class="tutor-profile-card-body">
52 <div class="tutor-profile-card-body-left">
53 <div>
54 <h3 class="tutor-user-profile-title">
55 <?php echo esc_html( $student_details->display_name ); ?>
56 </h3>
57 <div class="tutor-user-profile-designation">
58 <?php echo esc_html( $student_meta['_tutor_profile_job_title'][0] ?? '' ); ?>
59 </div>
60
61 <?php
62 $has_social = array_filter( array_column( $social_links, 'url' ) );
63 if ( $has_social ) :
64 ?>
65 <div class="tutor-user-profile-social">
66 <?php foreach ( $social_links as $social_link ) : ?>
67 <?php if ( ! empty( $social_link['url'] ) ) : ?>
68 <a
69 href="<?php echo esc_url( $social_link['url'] ); ?>"
70 class="tutor-social-link"
71 target="_blank"
72 rel="noopener noreferrer"
73 aria-label="<?php echo esc_attr( $social_link['label'] ); ?>"
74 >
75 <?php SvgIcon::make()->name( $social_link['icon'] )->render(); ?>
76 </a>
77 <?php endif; ?>
78 <?php endforeach; ?>
79 </div>
80 <?php endif; ?>
81 </div>
82 </div>
83 <div class="tutor-profile-card-body-right">
84 <?php
85 $bio_text = $student_meta['_tutor_profile_bio'][0] ?? '';
86 if ( ! empty( $bio_text ) ) :
87 ?>
88 <div
89 class="tutor-bio-wrapper"
90 x-data="tutorReadMore({ lines: 4 })"
91 >
92 <div
93 class="tutor-user-profile-bio"
94 x-ref="content"
95 style="display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden;"
96 >
97 <?php echo wp_kses_post( $bio_text ); ?>
98 </div>
99
100 <button
101 type="button"
102 class="tutor-bio-toggle"
103 x-ref="readMore"
104 x-cloak
105 x-show="hasOverflow && ! expanded"
106 @click="toggle()"
107 :aria-expanded="expanded.toString()"
108 >
109 <?php esc_html_e( '… Read more', 'tutor' ); ?>
110 </button>
111
112 <button
113 type="button"
114 class="tutor-bio-toggle-less"
115 x-cloak
116 x-show="expanded"
117 @click="toggle()"
118 :aria-expanded="expanded.toString()"
119 >
120 <?php esc_html_e( 'Read less', 'tutor' ); ?>
121 </button>
122 </div>
123 <?php endif; ?>
124
125 <ul class="tutor-user-profile-details">
126 <li class="tutor-badge tutor-badge-disabled">
127 <?php esc_html_e( 'Username', 'tutor' ); ?> :
128 <span><?php echo esc_html( $student_details->user_login ); ?></span>
129 </li>
130 <li class="tutor-badge tutor-badge-disabled">
131 <?php esc_html_e( 'Email', 'tutor' ); ?> :
132 <span><?php echo esc_html( $student_details->user_email ); ?></span>
133 </li>
134 <?php if ( ! empty( $phone_number ) ) : ?>
135 <li class="tutor-badge tutor-badge-disabled">
136 <?php esc_html_e( 'Phone', 'tutor' ); ?> :
137 <span><?php echo esc_html( $phone_number ); ?></span>
138 </li>
139 <?php endif; ?>
140 </ul>
141 </div>
142 <div class="tutor-profile-member-since">
143 <?php SvgIcon::make()->name( Icon::MEMBER )->render(); ?>
144 <?php esc_html_e( 'Member since', 'tutor' ); ?>
145 <?php echo esc_html( tutor_i18n_get_formated_date( $student_details->user_registered, 'F j, Y' ) ); ?>
146 </div>
147 </div>
148 </div>
149