PluginProbe ʕ •ᴥ•ʔ
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress / 4.16.19
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress v4.16.19
4.16.19 4.16.18 4.16.17 4.16.16 trunk 1.0 1.0.1 1.0.2 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.5a 1.1.6 1.1.7 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.4 1.4.1 1.4.2 1.5 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.6 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.7 1.7.1 1.7.2 1.8 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 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 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.1.9 2.2.10 2.2.11 2.2.12 2.2.13 2.2.14 2.2.15 2.2.16 2.2.2 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 3.0 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.13.3 4.13.4 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.15.0 4.15.1 4.15.10 4.15.11 4.15.12 4.15.13 4.15.14 4.15.15 4.15.16 4.15.17 4.15.18 4.15.19 4.15.2 4.15.20 4.15.20.1 4.15.21 4.15.22 4.15.23 4.15.24 4.15.25 4.15.3 4.15.4 4.15.5 4.15.6 4.15.7 4.15.8 4.15.9 4.16.0 4.16.1 4.16.10 4.16.11 4.16.12 4.16.13 4.16.14 4.16.15 4.16.2 4.16.3 4.16.4 4.16.5 4.16.6 4.16.7 4.16.8 4.16.9 4.2.0 4.3.0 4.3.1 4.3.2 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.6.0 4.7.0 4.8.0 4.9.0
wp-user-avatar / src / Themes / DragDrop / UserProfile / Dixon.php
wp-user-avatar / src / Themes / DragDrop / UserProfile Last commit date
DefaultTemplate.php 3 years ago Dixon.php 1 year ago
Dixon.php
369 lines
1 <?php
2
3 namespace ProfilePress\Core\Themes\DragDrop\UserProfile;
4
5 use ProfilePress\Core\Admin\SettingsPages\DragDropBuilder\DragDropBuilder;
6 use ProfilePress\Core\Base;
7 use ProfilePress\Core\Themes\DragDrop\AbstractTheme;
8 use ProfilePress\Core\Admin\SettingsPages\DragDropBuilder\Fields;
9
10 class Dixon extends AbstractTheme
11 {
12 public static function default_field_listing()
13 {
14 Fields\Init::init();
15 $standard_fields = DragDropBuilder::get_instance()->standard_fields();
16
17 return [
18 $standard_fields['profile-username'],
19 $standard_fields['profile-email'],
20 $standard_fields['profile-first-name'],
21 $standard_fields['profile-last-name'],
22 $standard_fields['profile-website'],
23 $standard_fields['profile-bio'],
24 ];
25 }
26
27 public function appearance_settings($settings)
28 {
29 $settings[] = [
30 'id' => 'dixon_profile_header_text',
31 'type' => 'select',
32 'label' => esc_html__('Header Text', 'wp-user-avatar'),
33 'options' => ppress_standard_fields_key_value_pair(),
34 'priority' => 10
35 ];
36
37 $settings[] = [
38 'id' => 'dixon_profile_header_byline',
39 'type' => 'text',
40 'label' => esc_html__('Header Byline', 'wp-user-avatar'),
41 'priority' => 12
42 ];
43
44 $settings[] = [
45 'id' => 'dixon_profile_section_header_text',
46 'type' => 'text',
47 'label' => esc_html__('Profile Header Text', 'wp-user-avatar'),
48 'priority' => 15
49 ];
50
51 return $settings;
52 }
53
54 public function color_settings($settings)
55 {
56 $settings2 = [
57 [
58 'id' => 'dixon_profile_bg_color',
59 'type' => 'color',
60 'label' => esc_html__('Background', 'wp-user-avatar')
61 ],
62 [
63 'id' => 'dixon_profile_header_bg_color',
64 'type' => 'color',
65 'label' => esc_html__('Header Background', 'wp-user-avatar')
66 ],
67 [
68 'id' => 'dixon_profile_header_text_color',
69 'type' => 'color',
70 'label' => esc_html__('Header Text', 'wp-user-avatar')
71 ],
72 [
73 'id' => 'dixon_profile_header_text_underline_color',
74 'type' => 'color',
75 'label' => esc_html__('Text Underline', 'wp-user-avatar')
76 ],
77 [
78 'id' => 'dixon_profile_avatar_border_color',
79 'type' => 'color',
80 'label' => esc_html__('Avatar Border', 'wp-user-avatar')
81 ],
82 [
83 'id' => 'dixon_profile_info_border_color',
84 'type' => 'color',
85 'label' => esc_html__('Profile Info Border', 'wp-user-avatar')
86 ],
87 [
88 'id' => 'dixon_profile_info_bg_color',
89 'type' => 'color',
90 'label' => esc_html__('Profile Info Background', 'wp-user-avatar')
91 ],
92 [
93 'id' => 'dixon_profile_info_text_color',
94 'type' => 'color',
95 'label' => esc_html__('Profile Info Text', 'wp-user-avatar')
96 ]
97 ];
98
99 return array_merge($settings, $settings2);
100 }
101
102 public function metabox_settings($settings, $form_type, $DragDropBuilderInstance)
103 {
104 $settings['dixon_profile_social_links'] = [
105 'tab_title' => esc_html__('Social Links', 'wp-user-avatar'),
106 [
107 'id' => 'dixon_profile_hide_social_links',
108 'type' => 'checkbox',
109 'label' => esc_html__('Hide Social Links', 'wp-user-avatar'),
110 'checkbox_label' => esc_html__('Check to hide', 'wp-user-avatar'),
111 ]
112 ];
113
114 return $settings;
115 }
116
117 public function default_metabox_settings()
118 {
119 $data = parent::default_metabox_settings();
120 $data['dixon_profile_header_text'] = 'username';
121 $data['dixon_profile_header_byline'] = esc_html__('Profile', 'wp-user-avatar');
122 $data['dixon_profile_section_header_text'] = esc_html__('PROFILE DETAILS', 'wp-user-avatar');
123 $data['dixon_profile_hide_social_links'] = 'false';
124 $data['dixon_profile_bg_color'] = '#ececec';
125 $data['dixon_profile_header_bg_color'] = '#196783';
126 $data['dixon_profile_header_text_color'] = '#ffffff';
127 $data['dixon_profile_avatar_border_color'] = '#ffffff';
128 $data['dixon_profile_header_text_underline_color'] = '#52edc7';
129 $data['dixon_profile_info_border_color'] = '#ff0000';
130 $data['dixon_profile_info_bg_color'] = '#ffffff';
131 $data['dixon_profile_info_text_color'] = '#6b6969';
132
133 return $data;
134 }
135
136 protected function social_links_block()
137 {
138 if ($this->get_meta('dixon_profile_hide_social_links') == 'true') return;
139
140 $asset_url = $this->asset_image_url . '/dixon-fe-profile';
141
142 $facebook_field = $this->get_profile_field(Base::cif_facebook, true);
143 $twitter_field = $this->get_profile_field(Base::cif_twitter, true);
144 $linkedin_field = $this->get_profile_field(Base::cif_linkedin, true);
145
146 ob_start();
147 ?>
148 <div class="dixon-icon">
149 <ul>
150 <?php if ( ! empty($facebook_field)) : ?>
151 <li>
152 <a href="<?= $facebook_field ?>"><img src="<?= $asset_url ?>/facebook.png"/></a>
153 </li>
154 <?php endif;
155 if ( ! empty($twitter_field)) : ?>
156 <li>
157 <a href="<?= $twitter_field ?>"><img style="width: 65px;height: 65px;" src="<?= $asset_url ?>/../bash/x.svg"/></a>
158 </li>
159 <?php endif; ?>
160 <?php if ( ! empty($linkedin_field)) : ?>
161 <li>
162 <a href="<?= $linkedin_field ?>"><img src="<?= $asset_url ?>/linkedin.png"/></a>
163 </li>
164 <?php endif; ?>
165 </ul>
166 </div>
167 <?php
168 return ob_get_clean();
169 }
170
171 public function form_structure()
172 {
173 $header_text = wp_kses_post($this->get_profile_field($this->get_meta('dixon_profile_header_text')));
174
175 $header_byline = wp_kses_post($this->get_meta('dixon_profile_header_byline'));
176 $section_header_text = wp_kses_post($this->get_meta('dixon_profile_section_header_text'));
177
178 $social_links_block = $this->social_links_block();
179
180 $profile_listing = $this->profile_listing()
181 ->title_start_tag('<div class="dixon-section-left"><span>')
182 ->title_end_tag('</span></div>')
183 ->info_start_tag('<div class="dixon-section-right"><span>')
184 ->info_end_tag('</span></div>')
185 ->forge()
186 ->output();
187
188 return <<<HTML
189 [pp-form-wrapper class="dixon-wrapper"]
190 <div class="dixon-header">
191 <div class="dixon-container">
192 <div class="dixon-img">
193 <div class="dixon-avatar">
194 <img src="[profile-avatar-url]" />
195 </div>
196 </div>
197 <div class="dixon-text"> <span>$header_text</span><br>
198 $header_byline
199 </div>
200 $social_links_block
201 </div>
202 </div>
203 <div class="dixon-container">
204 <div style="text-align:center;">
205 <h3>$section_header_text</h3>
206 </div>
207 <div class="dixon-section">
208 $profile_listing
209 </div>
210 </div>
211 [/pp-form-wrapper]
212 HTML;
213
214 }
215
216 public function form_css()
217 {
218 $form_id = $this->form_id;
219 $form_type = $this->form_type;
220
221 $bg_color = esc_html($this->get_meta('dixon_profile_bg_color'));
222 $header_bg_color = esc_html($this->get_meta('dixon_profile_header_bg_color'));
223 $header_text_color = esc_html($this->get_meta('dixon_profile_header_text_color'));
224 $avatar_border_color = esc_html($this->get_meta('dixon_profile_avatar_border_color'));
225 $text_underline_color = esc_html($this->get_meta('dixon_profile_header_text_underline_color'));
226 $info_border_color = esc_html($this->get_meta('dixon_profile_info_border_color'));
227 $profile_info_background = esc_html($this->get_meta('dixon_profile_info_bg_color'));
228 $profile_info_text = esc_html($this->get_meta('dixon_profile_info_text_color'));
229
230 $google_font = apply_filters('ppress_disable_google_fonts', false) ? '' :
231 "@import url('https://fonts.googleapis.com/css?family=Lato:300,400,600,700|Raleway:300,400,600,700&display=swap');";
232
233 return <<<CSS
234 $google_font
235
236 div#pp-$form_type-$form_id.dixon-wrapper * {
237 -webkit-box-sizing: border-box;
238 -moz-box-sizing: border-box;
239 box-sizing: border-box;
240 }
241
242 div#pp-$form_type-$form_id.dixon-wrapper {
243 width: 100%;
244 max-width: 800px;
245 background: $bg_color;
246 }
247
248 div#pp-$form_type-$form_id.dixon-wrapper .dixon-section-left {
249 float:left;
250 color:$profile_info_text;
251 }
252 div#pp-$form_type-$form_id.dixon-wrapper .dixon-section-right {
253 margin-left:30%;
254 color: $profile_info_text;
255 }
256 div#pp-$form_type-$form_id.dixon-wrapper .dixon-container {
257 margin:auto;
258 width:100%;
259 padding-bottom: 10px;
260 min-height: 240px;
261 }
262 div#pp-$form_type-$form_id.dixon-wrapper .dixon-section-left > span,
263 div#pp-$form_type-$form_id.dixon-wrapper .dixon-section-right > span {
264 padding-bottom:20px;
265 margin:0;
266 display: block;
267 }
268
269 div#pp-$form_type-$form_id.dixon-wrapper .dixon-section-left > a,
270 div#pp-$form_type-$form_id.dixon-wrapper .dixon-section-right > a {
271 text-decoration:none;
272 }
273
274 div#pp-$form_type-$form_id.dixon-wrapper .dixon-container h3 {
275 margin:30px 0;
276 font-family:Lato, sans-serif;
277 color: $header_bg_color;
278 font-size:28px;
279 }
280
281 div#pp-$form_type-$form_id.dixon-wrapper .dixon-header {
282 background-color: $header_bg_color;
283 width:100%;
284 height:60%;
285 padding-bottom: 5px;
286 }
287
288 div#pp-$form_type-$form_id.dixon-wrapper .dixon-aside {
289 margin-top:30px;
290 }
291
292 div#pp-$form_type-$form_id.dixon-wrapper .dixon-section {
293 background:$profile_info_background;
294 padding:40px 20px 10px;
295 border-top:4px solid $info_border_color;
296 margin: 0 10px;
297 }
298 div#pp-$form_type-$form_id.dixon-wrapper .dixon-img {
299 padding-top:40px;
300 position:relative;
301 float:left;
302 width: 50%;
303 }
304
305 div#pp-$form_type-$form_id.dixon-wrapper .dixon-icon > ul > li img {
306 box-shadow: none;
307 }
308
309 div#pp-$form_type-$form_id.dixon-wrapper .dixon-text {
310 text-align:center;
311 font-size:30px;
312 color: $header_text_color;
313 padding-top:50px;
314 line-height:40px;
315 font-family:Raleway, sans-serif;
316 text-transform:uppercase;
317 }
318
319
320 div#pp-$form_type-$form_id.dixon-wrapper div#pp-$form_type-$form_id.dixon-wrapper .dixon-icon ul li::before {
321 content: none;
322 }
323
324 div#pp-$form_type-$form_id.dixon-wrapper .dixon-icon li {
325 display:inline-block;
326 text-align:center;
327 }
328 div#pp-$form_type-$form_id.dixon-wrapper .dixon-icon {
329 text-align:center;
330 margin-top:15px;
331 }
332 div#pp-$form_type-$form_id.dixon-wrapper .dixon-text span {
333 border-bottom:1px solid $text_underline_color;
334 padding-bottom:4px;
335 }
336 div#pp-$form_type-$form_id.dixon-wrapper .dixon-aside img {
337 width:190px;
338 margin-top:-30px;
339 }
340
341 div#pp-$form_type-$form_id.dixon-wrapper .dixon-section-right span a {
342 color:#24758e;
343 }
344
345 div#pp-$form_type-$form_id.dixon-wrapper .dixon-light {
346 margin-left:10px;
347 }
348 div#pp-$form_type-$form_id.dixon-wrapper .dixon-img-left {
349 margin-left:5px;
350 }
351 div#pp-$form_type-$form_id.dixon-wrapper .dixon-aside-text {
352 border-bottom: 1px solid #949798;
353 border-top: 1px solid #949798;
354 padding:25px 0;
355 margin-top: 50px;
356 }
357
358 div#pp-$form_type-$form_id.dixon-wrapper .dixon-avatar > img {
359 border: 3px solid $avatar_border_color;
360 border-radius: 50%;
361 margin: 10px;
362 width: 70%;
363 height: auto;
364 float: left;
365 }
366 CSS;
367
368 }
369 }