Version Description
- Added unique classes to my account page - account details section.
- Fixed bug with member directory search not working in some cases.
- Fixed bug where upload field with data is still required.
- Fixed XSS on member directory search field.
Download this release
Release Info
Developer | Collizo4sky |
Plugin | WP User Avatar |
Version | 3.2.16 |
Comparing to | |
See all releases |
Code changes from version 3.2.15 to 3.2.16
- changelog.txt +6 -0
- languages/wp-user-avatar.pot +14 -14
- readme.txt +8 -2
- src/ShortcodeParser/Builder/FieldsShortcodeCallback.php +4 -3
- src/ShortcodeParser/MyAccount/edit-profile.tmpl.php +34 -32
- src/Themes/DragDrop/AbstractMemberDirectoryTheme.php +21 -13
- vendor/autoload.php +6 -1
- vendor/composer/ClassLoader.php +102 -11
- vendor/composer/InstalledVersions.php +21 -6
- vendor/composer/autoload_classmap.php +1 -1
- vendor/composer/autoload_files.php +1 -1
- vendor/composer/autoload_namespaces.php +1 -1
- vendor/composer/autoload_psr4.php +1 -1
- vendor/composer/autoload_real.php +16 -34
- vendor/composer/autoload_static.php +4 -4
- vendor/composer/installed.php +11 -11
- wp-user-avatar.php +2 -2
changelog.txt
CHANGED
@@ -1,5 +1,11 @@
|
|
1 |
== Changelog ==
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
= 3.2.15 =
|
4 |
* Fixed bug where social icons where showing when disabled.
|
5 |
* Removed display name from sorted field options.
|
1 |
== Changelog ==
|
2 |
|
3 |
+
= 3.2.16 =
|
4 |
+
* Added unique classes to my account page - account details section.
|
5 |
+
* Fixed bug with member directory search not working in some cases.
|
6 |
+
* Fixed bug where upload field with data is still required.
|
7 |
+
* Fixed XSS on member directory search field.
|
8 |
+
|
9 |
= 3.2.15 =
|
10 |
* Fixed bug where social icons where showing when disabled.
|
11 |
* Removed display name from sorted field options.
|
languages/wp-user-avatar.pot
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
# This file is distributed under the same license as the ProfilePress package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: ProfilePress 3.2.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-user-avatar\n"
|
7 |
-
"POT-Creation-Date: 2022-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -561,7 +561,7 @@ msgstr ""
|
|
561 |
#: src/AdminBarDashboardAccess/include.settings-page.php:54
|
562 |
#: src/AdminBarDashboardAccess/include.settings-page.php:109
|
563 |
#: src/Functions/custom-settings-api.php:1078
|
564 |
-
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:
|
565 |
msgid "Save Changes"
|
566 |
msgstr ""
|
567 |
|
@@ -1016,7 +1016,7 @@ msgstr ""
|
|
1016 |
#: src/Functions/GlobalFunctions.php:1276
|
1017 |
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:350
|
1018 |
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:209
|
1019 |
-
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:
|
1020 |
#: src/Themes/DragDrop/AbstractTheme.php:183
|
1021 |
#: src/Themes/DragDrop/AbstractTheme.php:224
|
1022 |
msgid "First Name"
|
@@ -1036,7 +1036,7 @@ msgstr ""
|
|
1036 |
#: src/Functions/GlobalFunctions.php:1277
|
1037 |
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:383
|
1038 |
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:210
|
1039 |
-
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:
|
1040 |
#: src/Themes/DragDrop/AbstractTheme.php:186
|
1041 |
#: src/Themes/DragDrop/AbstractTheme.php:227
|
1042 |
msgid "Last Name"
|
@@ -1222,7 +1222,7 @@ msgstr ""
|
|
1222 |
#: src/Admin/SettingsPages/DragDropBuilder/Fields/Username.php:22
|
1223 |
#: src/Functions/GlobalFunctions.php:1275
|
1224 |
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:135
|
1225 |
-
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:
|
1226 |
#: src/Themes/DragDrop/AbstractTheme.php:159
|
1227 |
#: src/Themes/DragDrop/AbstractTheme.php:218
|
1228 |
#: src/Themes/DragDrop/UserProfile/DefaultTemplate.php:105
|
@@ -4204,7 +4204,7 @@ msgid "Log Out"
|
|
4204 |
msgstr ""
|
4205 |
|
4206 |
#: src/NavigationMenuLinks/Backend.php:31 src/RegisterActivation/Base.php:159
|
4207 |
-
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:
|
4208 |
#: src/ShortcodeParser/Builder/GlobalShortcodes.php:180
|
4209 |
#: src/Widgets/TabbedWidget.php:89
|
4210 |
msgid "Sign Up"
|
@@ -4375,11 +4375,11 @@ msgstr ""
|
|
4375 |
msgid "custom field not defined"
|
4376 |
msgstr ""
|
4377 |
|
4378 |
-
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:
|
4379 |
msgid "Delete Avatar"
|
4380 |
msgstr ""
|
4381 |
|
4382 |
-
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:
|
4383 |
msgid "Delete Cover Photo"
|
4384 |
msgstr ""
|
4385 |
|
@@ -4916,7 +4916,7 @@ msgid "Fields to show in sorting dropdown menu"
|
|
4916 |
msgstr ""
|
4917 |
|
4918 |
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:244
|
4919 |
-
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:
|
4920 |
msgid "Search"
|
4921 |
msgstr ""
|
4922 |
|
@@ -4980,19 +4980,19 @@ msgstr ""
|
|
4980 |
msgid "No Result Text"
|
4981 |
msgstr ""
|
4982 |
|
4983 |
-
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:
|
4984 |
msgid "Newest Users First"
|
4985 |
msgstr ""
|
4986 |
|
4987 |
-
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:
|
4988 |
msgid "Oldest Users First"
|
4989 |
msgstr ""
|
4990 |
|
4991 |
-
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:
|
4992 |
msgid "Sort by"
|
4993 |
msgstr ""
|
4994 |
|
4995 |
-
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:
|
4996 |
msgid "More Filters"
|
4997 |
msgstr ""
|
4998 |
|
2 |
# This file is distributed under the same license as the ProfilePress package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: ProfilePress 3.2.16\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wp-user-avatar\n"
|
7 |
+
"POT-Creation-Date: 2022-07-21 19:21:35+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
561 |
#: src/AdminBarDashboardAccess/include.settings-page.php:54
|
562 |
#: src/AdminBarDashboardAccess/include.settings-page.php:109
|
563 |
#: src/Functions/custom-settings-api.php:1078
|
564 |
+
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:1039
|
565 |
msgid "Save Changes"
|
566 |
msgstr ""
|
567 |
|
1016 |
#: src/Functions/GlobalFunctions.php:1276
|
1017 |
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:350
|
1018 |
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:209
|
1019 |
+
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:479
|
1020 |
#: src/Themes/DragDrop/AbstractTheme.php:183
|
1021 |
#: src/Themes/DragDrop/AbstractTheme.php:224
|
1022 |
msgid "First Name"
|
1036 |
#: src/Functions/GlobalFunctions.php:1277
|
1037 |
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:383
|
1038 |
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:210
|
1039 |
+
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:480
|
1040 |
#: src/Themes/DragDrop/AbstractTheme.php:186
|
1041 |
#: src/Themes/DragDrop/AbstractTheme.php:227
|
1042 |
msgid "Last Name"
|
1222 |
#: src/Admin/SettingsPages/DragDropBuilder/Fields/Username.php:22
|
1223 |
#: src/Functions/GlobalFunctions.php:1275
|
1224 |
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:135
|
1225 |
+
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:481
|
1226 |
#: src/Themes/DragDrop/AbstractTheme.php:159
|
1227 |
#: src/Themes/DragDrop/AbstractTheme.php:218
|
1228 |
#: src/Themes/DragDrop/UserProfile/DefaultTemplate.php:105
|
4204 |
msgstr ""
|
4205 |
|
4206 |
#: src/NavigationMenuLinks/Backend.php:31 src/RegisterActivation/Base.php:159
|
4207 |
+
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:1036
|
4208 |
#: src/ShortcodeParser/Builder/GlobalShortcodes.php:180
|
4209 |
#: src/Widgets/TabbedWidget.php:89
|
4210 |
msgid "Sign Up"
|
4375 |
msgid "custom field not defined"
|
4376 |
msgstr ""
|
4377 |
|
4378 |
+
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:1105
|
4379 |
msgid "Delete Avatar"
|
4380 |
msgstr ""
|
4381 |
|
4382 |
+
#: src/ShortcodeParser/Builder/FieldsShortcodeCallback.php:1141
|
4383 |
msgid "Delete Cover Photo"
|
4384 |
msgstr ""
|
4385 |
|
4916 |
msgstr ""
|
4917 |
|
4918 |
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:244
|
4919 |
+
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:846
|
4920 |
msgid "Search"
|
4921 |
msgstr ""
|
4922 |
|
4980 |
msgid "No Result Text"
|
4981 |
msgstr ""
|
4982 |
|
4983 |
+
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:477
|
4984 |
msgid "Newest Users First"
|
4985 |
msgstr ""
|
4986 |
|
4987 |
+
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:478
|
4988 |
msgid "Oldest Users First"
|
4989 |
msgstr ""
|
4990 |
|
4991 |
+
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:713
|
4992 |
msgid "Sort by"
|
4993 |
msgstr ""
|
4994 |
|
4995 |
+
#: src/Themes/DragDrop/AbstractMemberDirectoryTheme.php:750
|
4996 |
msgid "More Filters"
|
4997 |
msgstr ""
|
4998 |
|
readme.txt
CHANGED
@@ -1,11 +1,11 @@
|
|
1 |
-
=== WordPress Membership, User Registration, Login Form, User Profile & Restrict Content Plugin – ProfilePress ===
|
2 |
Contributors: properfraction, collizo4sky
|
3 |
Donate link: https://profilepress.com/pricing/
|
4 |
Tags: membership, user registration, user profile, registration form, login form, 2fa, two-factor authenticator, login, registration, password reset, members, users, profile, front-end profile, edit profile, avatar, profile picture
|
5 |
Requires at least: 4.7
|
6 |
Requires PHP: 7.1.0
|
7 |
Tested up to: 6.0
|
8 |
-
Stable tag: 3.2.
|
9 |
License: GPLv2 or later
|
10 |
|
11 |
Modern membership plugin: restrict content, user registration, front-end login form, customizable user profile & member directory.
|
@@ -118,6 +118,12 @@ No. You can create and manage your forms, user profiles and member directories w
|
|
118 |
|
119 |
== Changelog ==
|
120 |
|
|
|
|
|
|
|
|
|
|
|
|
|
121 |
= 3.2.15 =
|
122 |
* Fixed bug where social icons where showing when disabled.
|
123 |
* Removed display name from sorted field options.
|
1 |
+
=== WordPress Membership, User Registration, Login Form, User Profile & Restrict Content Plugin – ProfilePress ===
|
2 |
Contributors: properfraction, collizo4sky
|
3 |
Donate link: https://profilepress.com/pricing/
|
4 |
Tags: membership, user registration, user profile, registration form, login form, 2fa, two-factor authenticator, login, registration, password reset, members, users, profile, front-end profile, edit profile, avatar, profile picture
|
5 |
Requires at least: 4.7
|
6 |
Requires PHP: 7.1.0
|
7 |
Tested up to: 6.0
|
8 |
+
Stable tag: 3.2.16
|
9 |
License: GPLv2 or later
|
10 |
|
11 |
Modern membership plugin: restrict content, user registration, front-end login form, customizable user profile & member directory.
|
118 |
|
119 |
== Changelog ==
|
120 |
|
121 |
+
= 3.2.16 =
|
122 |
+
* Added unique classes to my account page - account details section.
|
123 |
+
* Fixed bug with member directory search not working in some cases.
|
124 |
+
* Fixed bug where upload field with data is still required.
|
125 |
+
* Fixed XSS on member directory search field.
|
126 |
+
|
127 |
= 3.2.15 =
|
128 |
* Fixed bug where social icons where showing when disabled.
|
129 |
* Removed display name from sorted field options.
|
src/ShortcodeParser/Builder/FieldsShortcodeCallback.php
CHANGED
@@ -836,7 +836,7 @@ class FieldsShortcodeCallback
|
|
836 |
}
|
837 |
|
838 |
$atts['required'] = 'false';
|
839 |
-
|
840 |
$attributes = $this->field_attributes('ignore_value', $this->valid_field_atts(ppress_normalize_attributes($atts)));
|
841 |
|
842 |
$checkbox_tag_key = "{$key}[]";
|
@@ -998,8 +998,9 @@ class FieldsShortcodeCallback
|
|
998 |
$user_upload_data = get_user_meta($this->current_user->ID, 'pp_uploaded_files', true);
|
999 |
// if the user uploads isn't empty and there exist a file with the custom field key.
|
1000 |
if ( ! empty($user_upload_data) && ($filename = @$user_upload_data[$key])) {
|
1001 |
-
$link
|
1002 |
-
$html
|
|
|
1003 |
}
|
1004 |
|
1005 |
$html = apply_filters('ppress_edit_profile_hide_file', $html);
|
836 |
}
|
837 |
|
838 |
$atts['required'] = 'false';
|
839 |
+
|
840 |
$attributes = $this->field_attributes('ignore_value', $this->valid_field_atts(ppress_normalize_attributes($atts)));
|
841 |
|
842 |
$checkbox_tag_key = "{$key}[]";
|
998 |
$user_upload_data = get_user_meta($this->current_user->ID, 'pp_uploaded_files', true);
|
999 |
// if the user uploads isn't empty and there exist a file with the custom field key.
|
1000 |
if ( ! empty($user_upload_data) && ($filename = @$user_upload_data[$key])) {
|
1001 |
+
$link = PPRESS_FILE_UPLOAD_URL . $filename;
|
1002 |
+
$html .= "<div class='ppress-user-upload'><a href='$link'>$filename</a></div>";
|
1003 |
+
$attributes = str_replace('required="required"', '', $attributes);
|
1004 |
}
|
1005 |
|
1006 |
$html = apply_filters('ppress_edit_profile_hide_file', $html);
|
src/ShortcodeParser/MyAccount/edit-profile.tmpl.php
CHANGED
@@ -80,111 +80,113 @@ $sub_menus = apply_filters('ppress_my_account_settings_sub_menus', ['general' =>
|
|
80 |
|
81 |
<div class="profilepress-myaccount-form-wrap">
|
82 |
|
83 |
-
<div class="profilepress-myaccount-form-field">
|
84 |
<div class="ppmyac-custom-file">
|
85 |
-
<?=
|
86 |
<label for="pp-cover-image" class="ppmyac-custom-file-label" data-browse="<?= esc_html__('Browse', 'wp-user-avatar'); ?>">
|
87 |
<?= esc_html__('Cover photo (min. width: 1000px)', 'wp-user-avatar') ?>
|
88 |
</label>
|
89 |
</div>
|
90 |
</div>
|
91 |
|
92 |
-
<div class="profilepress-myaccount-form-field">
|
93 |
<div class="profilepress-myaccount-delete-cover-image-wrap">
|
94 |
<div class="profilepress-myaccount-cover-image">
|
95 |
<div class="profilepress-myaccount-has-cover-image" style="<?= ! $cover_image_url ? 'display:none' : '' ?>">
|
96 |
-
<?=
|
97 |
</div>
|
98 |
-
<?=
|
99 |
<div class="profilepress-myaccount-cover-image-empty" style="<?= $cover_image_url ? 'display:none' : '' ?>"></div>
|
100 |
</div>
|
101 |
</div>
|
102 |
</div>
|
103 |
|
104 |
-
<div class="profilepress-myaccount-form-field">
|
105 |
<div class="ppmyac-custom-file">
|
106 |
-
<?=
|
107 |
<label for="pp-avatar" class="ppmyac-custom-file-label" data-browse="<?= esc_html__('Browse', 'wp-user-avatar'); ?>">
|
108 |
<?= esc_html__('Profile picture', 'wp-user-avatar') ?>
|
109 |
</label>
|
110 |
</div>
|
111 |
</div>
|
112 |
|
113 |
-
<div class="profilepress-myaccount-form-field">
|
114 |
<div class="profilepress-myaccount-delete-avatar-wrap">
|
115 |
<div class="profilepress-myaccount-delete-avatar">
|
116 |
<?= UserAvatar::get_avatar_img($current_user_id); ?>
|
117 |
-
<?=
|
118 |
</div>
|
119 |
</div>
|
120 |
</div>
|
121 |
|
122 |
-
<div class="profilepress-myaccount-form-field">
|
123 |
<label for="edit-profile-email"><?= esc_html__('Email address', 'wp-user-avatar') ?></label>
|
124 |
-
<?=
|
125 |
</div>
|
126 |
|
127 |
-
<div class="profilepress-myaccount-form-field">
|
128 |
<label for="edit-profile-first-name"><?= esc_html__('First name', 'wp-user-avatar') ?></label>
|
129 |
-
<?=
|
130 |
</div>
|
131 |
|
132 |
-
<div class="profilepress-myaccount-form-field">
|
133 |
<label for="edit-profile-last-name"><?= esc_html__('Last name', 'wp-user-avatar') ?></label>
|
134 |
-
<?=
|
135 |
</div>
|
136 |
|
137 |
-
<div class="profilepress-myaccount-form-field">
|
138 |
<label for="edit-profile-nickname"><?= esc_html__('Nickname', 'wp-user-avatar') ?></label>
|
139 |
-
<?=
|
140 |
</div>
|
141 |
|
142 |
-
<div class="profilepress-myaccount-form-field">
|
143 |
<label for="eup_display_name"><?= esc_html__('Display name publicly as', 'wp-user-avatar') ?></label>
|
144 |
<?php $this->display_name_select_dropdown(); ?>
|
145 |
</div>
|
146 |
|
147 |
-
<div class="profilepress-myaccount-form-field">
|
148 |
<label for="edit-profile-website"><?= esc_html__('Website', 'wp-user-avatar') ?></label>
|
149 |
-
<?=
|
150 |
</div>
|
151 |
|
152 |
-
<div class="profilepress-myaccount-form-field">
|
153 |
<label for="edit-profile-bio"><?= esc_html__('About yourself', 'wp-user-avatar') ?></label>
|
154 |
-
<?=
|
155 |
</div>
|
156 |
|
157 |
<?php if (is_array($contact_infos) && ! empty($contact_infos)) : ?>
|
158 |
|
159 |
<?php foreach ($contact_infos as $field_key => $label) : ?>
|
160 |
-
|
|
|
161 |
<label for="<?= $field_key ?>"><?= $label ?></label>
|
162 |
-
<?=
|
163 |
</div>
|
164 |
<?php endforeach; ?>
|
165 |
|
166 |
-
<?php endif;
|
167 |
|
168 |
-
|
|
|
|
|
169 |
|
170 |
-
<?php foreach ($custom_fields as $custom_field) : ?>
|
171 |
-
<?php
|
172 |
$field_key = $custom_field['field_key'];
|
|
|
173 |
// skip woocommerce core billing / shipping fields added to wordpress profile admin page.
|
174 |
if (in_array($field_key, ppress_woocommerce_billing_shipping_fields())) continue;
|
175 |
?>
|
176 |
-
<div class="profilepress-myaccount-form-field">
|
177 |
<?php if ($custom_field['type'] !== 'agreeable') : ?>
|
178 |
<label for="<?= $field_key ?>"><?= $custom_field['label_name'] ?></label>
|
179 |
<?php endif; ?>
|
180 |
-
<?=
|
181 |
</div>
|
182 |
<?php endforeach; ?>
|
183 |
|
184 |
<?php endif; ?>
|
185 |
|
186 |
-
<div class="profilepress-myaccount-form-field">
|
187 |
-
<?=
|
188 |
</div>
|
189 |
</div>
|
190 |
|
80 |
|
81 |
<div class="profilepress-myaccount-form-wrap">
|
82 |
|
83 |
+
<div class="profilepress-myaccount-form-field pp-cover-image">
|
84 |
<div class="ppmyac-custom-file">
|
85 |
+
<?= '[edit-profile-cover-image id="pp-cover-image" class="ppmyac-custom-file-input"]' ?>
|
86 |
<label for="pp-cover-image" class="ppmyac-custom-file-label" data-browse="<?= esc_html__('Browse', 'wp-user-avatar'); ?>">
|
87 |
<?= esc_html__('Cover photo (min. width: 1000px)', 'wp-user-avatar') ?>
|
88 |
</label>
|
89 |
</div>
|
90 |
</div>
|
91 |
|
92 |
+
<div class="profilepress-myaccount-form-field pp-user-cover-image">
|
93 |
<div class="profilepress-myaccount-delete-cover-image-wrap">
|
94 |
<div class="profilepress-myaccount-cover-image">
|
95 |
<div class="profilepress-myaccount-has-cover-image" style="<?= ! $cover_image_url ? 'display:none' : '' ?>">
|
96 |
+
<?= '[pp-user-cover-image]'; ?>
|
97 |
</div>
|
98 |
+
<?= sprintf('[pp-remove-cover-image-button label="%s" class="ppmyac-remove-avatar"]', __('Remove', 'wp-user-avatar')); ?>
|
99 |
<div class="profilepress-myaccount-cover-image-empty" style="<?= $cover_image_url ? 'display:none' : '' ?>"></div>
|
100 |
</div>
|
101 |
</div>
|
102 |
</div>
|
103 |
|
104 |
+
<div class="profilepress-myaccount-form-field edit-profile-avatar">
|
105 |
<div class="ppmyac-custom-file">
|
106 |
+
<?= '[edit-profile-avatar id="pp-avatar" class="ppmyac-custom-file-input"]' ?>
|
107 |
<label for="pp-avatar" class="ppmyac-custom-file-label" data-browse="<?= esc_html__('Browse', 'wp-user-avatar'); ?>">
|
108 |
<?= esc_html__('Profile picture', 'wp-user-avatar') ?>
|
109 |
</label>
|
110 |
</div>
|
111 |
</div>
|
112 |
|
113 |
+
<div class="profilepress-myaccount-form-field delete-avatar">
|
114 |
<div class="profilepress-myaccount-delete-avatar-wrap">
|
115 |
<div class="profilepress-myaccount-delete-avatar">
|
116 |
<?= UserAvatar::get_avatar_img($current_user_id); ?>
|
117 |
+
<?= sprintf('[pp-remove-avatar-button label="%s" class="ppmyac-remove-avatar"]', __('Remove', 'wp-user-avatar')); ?>
|
118 |
</div>
|
119 |
</div>
|
120 |
</div>
|
121 |
|
122 |
+
<div class="profilepress-myaccount-form-field edit-profile-email">
|
123 |
<label for="edit-profile-email"><?= esc_html__('Email address', 'wp-user-avatar') ?></label>
|
124 |
+
<?= '[edit-profile-email id="edit-profile-email" class="profilepress-myaccount-form-control"]'; ?>
|
125 |
</div>
|
126 |
|
127 |
+
<div class="profilepress-myaccount-form-field edit-profile-first-name">
|
128 |
<label for="edit-profile-first-name"><?= esc_html__('First name', 'wp-user-avatar') ?></label>
|
129 |
+
<?= '[edit-profile-first-name id="edit-profile-first-name" class="profilepress-myaccount-form-control"]'; ?>
|
130 |
</div>
|
131 |
|
132 |
+
<div class="profilepress-myaccount-form-field edit-profile-last-name">
|
133 |
<label for="edit-profile-last-name"><?= esc_html__('Last name', 'wp-user-avatar') ?></label>
|
134 |
+
<?= '[edit-profile-last-name id="edit-profile-last-name" class="profilepress-myaccount-form-control"]'; ?>
|
135 |
</div>
|
136 |
|
137 |
+
<div class="profilepress-myaccount-form-field edit-profile-nickname">
|
138 |
<label for="edit-profile-nickname"><?= esc_html__('Nickname', 'wp-user-avatar') ?></label>
|
139 |
+
<?= '[edit-profile-nickname id="edit-profile-nickname" class="profilepress-myaccount-form-control"]'; ?>
|
140 |
</div>
|
141 |
|
142 |
+
<div class="profilepress-myaccount-form-field eup_display_name">
|
143 |
<label for="eup_display_name"><?= esc_html__('Display name publicly as', 'wp-user-avatar') ?></label>
|
144 |
<?php $this->display_name_select_dropdown(); ?>
|
145 |
</div>
|
146 |
|
147 |
+
<div class="profilepress-myaccount-form-field edit-profile-website">
|
148 |
<label for="edit-profile-website"><?= esc_html__('Website', 'wp-user-avatar') ?></label>
|
149 |
+
<?= '[edit-profile-website id="edit-profile-website" class="profilepress-myaccount-form-control"]'; ?>
|
150 |
</div>
|
151 |
|
152 |
+
<div class="profilepress-myaccount-form-field edit-profile-bio">
|
153 |
<label for="edit-profile-bio"><?= esc_html__('About yourself', 'wp-user-avatar') ?></label>
|
154 |
+
<?= '[edit-profile-bio id="edit-profile-bio" class="profilepress-myaccount-form-control"]'; ?>
|
155 |
</div>
|
156 |
|
157 |
<?php if (is_array($contact_infos) && ! empty($contact_infos)) : ?>
|
158 |
|
159 |
<?php foreach ($contact_infos as $field_key => $label) : ?>
|
160 |
+
|
161 |
+
<div class="profilepress-myaccount-form-field <?= $field_key ?>">
|
162 |
<label for="<?= $field_key ?>"><?= $label ?></label>
|
163 |
+
<?= sprintf('[edit-profile-cpf key="%1$s" id="%1$s" type="%2$s" class="profilepress-myaccount-form-control"]', $field_key, 'text'); ?>
|
164 |
</div>
|
165 |
<?php endforeach; ?>
|
166 |
|
167 |
+
<?php endif;
|
168 |
|
169 |
+
if (is_array($custom_fields) && ! empty($custom_fields)) : ?>
|
170 |
+
|
171 |
+
<?php foreach ($custom_fields as $custom_field) :
|
172 |
|
|
|
|
|
173 |
$field_key = $custom_field['field_key'];
|
174 |
+
|
175 |
// skip woocommerce core billing / shipping fields added to wordpress profile admin page.
|
176 |
if (in_array($field_key, ppress_woocommerce_billing_shipping_fields())) continue;
|
177 |
?>
|
178 |
+
<div class="profilepress-myaccount-form-field <?= $field_key ?>">
|
179 |
<?php if ($custom_field['type'] !== 'agreeable') : ?>
|
180 |
<label for="<?= $field_key ?>"><?= $custom_field['label_name'] ?></label>
|
181 |
<?php endif; ?>
|
182 |
+
<?= sprintf('[edit-profile-cpf id="%1$s" key="%1$s" type="%2$s" class="profilepress-myaccount-form-control"]', $field_key, $custom_field['type']) ?>
|
183 |
</div>
|
184 |
<?php endforeach; ?>
|
185 |
|
186 |
<?php endif; ?>
|
187 |
|
188 |
+
<div class="profilepress-myaccount-form-field edit-profile-submit">
|
189 |
+
<?= '[edit-profile-submit]'; ?>
|
190 |
</div>
|
191 |
</div>
|
192 |
|
src/Themes/DragDrop/AbstractMemberDirectoryTheme.php
CHANGED
@@ -424,7 +424,7 @@ abstract class AbstractMemberDirectoryTheme extends AbstractTheme
|
|
424 |
|
425 |
$total_users_found = $wp_user_query->get_total();
|
426 |
|
427 |
-
if ( ! empty($query_params['ppmd-search']) && is_array($users) && ! empty($users)) {
|
428 |
|
429 |
/**
|
430 |
* @var int $key
|
@@ -439,6 +439,9 @@ abstract class AbstractMemberDirectoryTheme extends AbstractTheme
|
|
439 |
|
440 |
$total_users_found = count($users);
|
441 |
|
|
|
|
|
|
|
442 |
}
|
443 |
|
444 |
$cache[$this->form_id] = [
|
@@ -452,7 +455,6 @@ abstract class AbstractMemberDirectoryTheme extends AbstractTheme
|
|
452 |
|
453 |
protected function search_filter_query_params()
|
454 |
{
|
455 |
-
|
456 |
static $cache = [];
|
457 |
|
458 |
if ( ! isset($cache[$this->form_id])) {
|
@@ -511,12 +513,13 @@ abstract class AbstractMemberDirectoryTheme extends AbstractTheme
|
|
511 |
]));
|
512 |
|
513 |
$args = [
|
514 |
-
'number'
|
515 |
-
'paged'
|
516 |
-
'offset'
|
517 |
-
|
518 |
-
'
|
519 |
-
'
|
|
|
520 |
];
|
521 |
|
522 |
// no check for username because it's the default orderby
|
@@ -553,17 +556,17 @@ abstract class AbstractMemberDirectoryTheme extends AbstractTheme
|
|
553 |
|
554 |
$search_columns = $parsed_args['search_columns'];
|
555 |
|
556 |
-
$filter_meta_fields = $parsed_args['filter_meta_fields'];
|
557 |
-
|
558 |
$roles = $parsed_args['roles'];
|
559 |
|
|
|
|
|
560 |
$args['search'] = '*' . $search_term . '*';
|
561 |
|
562 |
// we need to empty out the search column so wp user query doesn't restrict the search only
|
563 |
// to supplied search columns. We want to also check usermeta too.
|
564 |
add_filter('user_search_columns', '__return_empty_array', 999999999);
|
565 |
|
566 |
-
add_action('pre_user_query', function ($query) {
|
567 |
// removes "AND ()" from query which causes the sql to be invalid.
|
568 |
// SELECT DISTINCT wp_users.* FROM wp_users INNER JOIN wp_usermeta ON
|
569 |
// ( wp_users.ID = wp_usermeta.user_id ) WHERE 1=1 AND ( wp_users.user_nicename LIKE '%little%' OR
|
@@ -571,13 +574,18 @@ abstract class AbstractMemberDirectoryTheme extends AbstractTheme
|
|
571 |
// OR ( wp_usermeta.meta_key = 'last_name' AND wp_usermeta.meta_value LIKE '%little%' ) OR ( wp_usermeta.meta_key = 'twitter'
|
572 |
// AND wp_usermeta.meta_value LIKE '%little%' ) ) ) AND () ORDER BY user_registered DESC
|
573 |
$query->query_where = str_replace('AND ()', '', $query->query_where);
|
|
|
|
|
|
|
|
|
|
|
574 |
});
|
575 |
|
576 |
/**
|
577 |
* Modifies the query so we can tactically include searching of $search_columns in wp_users table
|
578 |
* @see https://wordpress.stackexchange.com/a/248674/59917
|
579 |
*/
|
580 |
-
add_filter('get_meta_sql', function ($sql) use ($search_term, $search_columns, $filter_meta_fields
|
581 |
|
582 |
global $wpdb;
|
583 |
|
@@ -843,7 +851,7 @@ abstract class AbstractMemberDirectoryTheme extends AbstractTheme
|
|
843 |
<div class="ppressmd-member-directory-header-row ppressmd-member-directory-search-row">
|
844 |
<div class="ppressmd-member-directory-search-line">
|
845 |
<label>
|
846 |
-
<input name="search-<?= $this->form_id ?>" type="search" class="ppressmd-search-line" placeholder="<?= $search_string ?>" value="<?= $entered_search_term ?>">
|
847 |
</label>
|
848 |
<input type="submit" class="ppressmd-do-search ppressmd-button" value="<?= $search_string ?>">
|
849 |
</div>
|
424 |
|
425 |
$total_users_found = $wp_user_query->get_total();
|
426 |
|
427 |
+
if ( ! empty($roles) && ! empty($query_params['ppmd-search']) && is_array($users) && ! empty($users)) {
|
428 |
|
429 |
/**
|
430 |
* @var int $key
|
439 |
|
440 |
$total_users_found = count($users);
|
441 |
|
442 |
+
// only necessary because if filtering by role, LIMIT is removed from query.
|
443 |
+
// limit is removed in pre_user_query action callback.
|
444 |
+
$users = array_slice($users, $offset, $users_per_page);
|
445 |
}
|
446 |
|
447 |
$cache[$this->form_id] = [
|
455 |
|
456 |
protected function search_filter_query_params()
|
457 |
{
|
|
|
458 |
static $cache = [];
|
459 |
|
460 |
if ( ! isset($cache[$this->form_id])) {
|
513 |
]));
|
514 |
|
515 |
$args = [
|
516 |
+
'number' => $parsed_args['number'],
|
517 |
+
'paged' => $parsed_args['paged'],
|
518 |
+
'offset' => $parsed_args['offset'],
|
519 |
+
// excluded cos we are doing this filtering in PHP self::wp_user_query()
|
520 |
+
//'role__in' => $parsed_args['roles'],
|
521 |
+
'include' => $parsed_args['include_user_ids'],
|
522 |
+
'exclude' => $parsed_args['exclude_user_ids']
|
523 |
];
|
524 |
|
525 |
// no check for username because it's the default orderby
|
556 |
|
557 |
$search_columns = $parsed_args['search_columns'];
|
558 |
|
|
|
|
|
559 |
$roles = $parsed_args['roles'];
|
560 |
|
561 |
+
$filter_meta_fields = $parsed_args['filter_meta_fields'];
|
562 |
+
|
563 |
$args['search'] = '*' . $search_term . '*';
|
564 |
|
565 |
// we need to empty out the search column so wp user query doesn't restrict the search only
|
566 |
// to supplied search columns. We want to also check usermeta too.
|
567 |
add_filter('user_search_columns', '__return_empty_array', 999999999);
|
568 |
|
569 |
+
add_action('pre_user_query', function ($query) use ($roles) {
|
570 |
// removes "AND ()" from query which causes the sql to be invalid.
|
571 |
// SELECT DISTINCT wp_users.* FROM wp_users INNER JOIN wp_usermeta ON
|
572 |
// ( wp_users.ID = wp_usermeta.user_id ) WHERE 1=1 AND ( wp_users.user_nicename LIKE '%little%' OR
|
574 |
// OR ( wp_usermeta.meta_key = 'last_name' AND wp_usermeta.meta_value LIKE '%little%' ) OR ( wp_usermeta.meta_key = 'twitter'
|
575 |
// AND wp_usermeta.meta_value LIKE '%little%' ) ) ) AND () ORDER BY user_registered DESC
|
576 |
$query->query_where = str_replace('AND ()', '', $query->query_where);
|
577 |
+
|
578 |
+
if ( ! empty($roles)) {
|
579 |
+
// remove query LIMIT so we can get actual total number of result
|
580 |
+
unset($query->query_limit);
|
581 |
+
}
|
582 |
});
|
583 |
|
584 |
/**
|
585 |
* Modifies the query so we can tactically include searching of $search_columns in wp_users table
|
586 |
* @see https://wordpress.stackexchange.com/a/248674/59917
|
587 |
*/
|
588 |
+
add_filter('get_meta_sql', function ($sql) use ($search_term, $search_columns, $filter_meta_fields) {
|
589 |
|
590 |
global $wpdb;
|
591 |
|
851 |
<div class="ppressmd-member-directory-header-row ppressmd-member-directory-search-row">
|
852 |
<div class="ppressmd-member-directory-search-line">
|
853 |
<label>
|
854 |
+
<input name="search-<?= $this->form_id ?>" type="search" class="ppressmd-search-line" placeholder="<?= $search_string ?>" value="<?= esc_attr($entered_search_term) ?>">
|
855 |
</label>
|
856 |
<input type="submit" class="ppressmd-do-search ppressmd-button" value="<?= $search_string ?>">
|
857 |
</div>
|
vendor/autoload.php
CHANGED
@@ -2,6 +2,11 @@
|
|
2 |
|
3 |
// autoload.php @generated by Composer
|
4 |
|
|
|
|
|
|
|
|
|
|
|
5 |
require_once __DIR__ . '/composer/autoload_real.php';
|
6 |
|
7 |
-
return
|
2 |
|
3 |
// autoload.php @generated by Composer
|
4 |
|
5 |
+
if (PHP_VERSION_ID < 50600) {
|
6 |
+
echo 'Composer 2.3.0 dropped support for autoloading on PHP <5.6 and you are running '.PHP_VERSION.', please upgrade PHP or use Composer 2.2 LTS via "composer self-update --2.2". Aborting.'.PHP_EOL;
|
7 |
+
exit(1);
|
8 |
+
}
|
9 |
+
|
10 |
require_once __DIR__ . '/composer/autoload_real.php';
|
11 |
|
12 |
+
return ComposerAutoloaderInitb15b0b66fa591157ab77757b7544be6d::getLoader();
|
vendor/composer/ClassLoader.php
CHANGED
@@ -42,30 +42,75 @@ namespace Composer\Autoload;
|
|
42 |
*/
|
43 |
class ClassLoader
|
44 |
{
|
|
|
45 |
private $vendorDir;
|
46 |
|
47 |
// PSR-4
|
|
|
|
|
|
|
|
|
48 |
private $prefixLengthsPsr4 = array();
|
|
|
|
|
|
|
|
|
49 |
private $prefixDirsPsr4 = array();
|
|
|
|
|
|
|
|
|
50 |
private $fallbackDirsPsr4 = array();
|
51 |
|
52 |
// PSR-0
|
|
|
|
|
|
|
|
|
53 |
private $prefixesPsr0 = array();
|
|
|
|
|
|
|
|
|
54 |
private $fallbackDirsPsr0 = array();
|
55 |
|
|
|
56 |
private $useIncludePath = false;
|
|
|
|
|
|
|
|
|
|
|
57 |
private $classMap = array();
|
|
|
|
|
58 |
private $classMapAuthoritative = false;
|
|
|
|
|
|
|
|
|
|
|
59 |
private $missingClasses = array();
|
|
|
|
|
60 |
private $apcuPrefix;
|
61 |
|
|
|
|
|
|
|
62 |
private static $registeredLoaders = array();
|
63 |
|
|
|
|
|
|
|
64 |
public function __construct($vendorDir = null)
|
65 |
{
|
66 |
$this->vendorDir = $vendorDir;
|
67 |
}
|
68 |
|
|
|
|
|
|
|
69 |
public function getPrefixes()
|
70 |
{
|
71 |
if (!empty($this->prefixesPsr0)) {
|
@@ -75,28 +120,47 @@ class ClassLoader
|
|
75 |
return array();
|
76 |
}
|
77 |
|
|
|
|
|
|
|
|
|
78 |
public function getPrefixesPsr4()
|
79 |
{
|
80 |
return $this->prefixDirsPsr4;
|
81 |
}
|
82 |
|
|
|
|
|
|
|
|
|
83 |
public function getFallbackDirs()
|
84 |
{
|
85 |
return $this->fallbackDirsPsr0;
|
86 |
}
|
87 |
|
|
|
|
|
|
|
|
|
88 |
public function getFallbackDirsPsr4()
|
89 |
{
|
90 |
return $this->fallbackDirsPsr4;
|
91 |
}
|
92 |
|
|
|
|
|
|
|
|
|
93 |
public function getClassMap()
|
94 |
{
|
95 |
return $this->classMap;
|
96 |
}
|
97 |
|
98 |
/**
|
99 |
-
* @param
|
|
|
|
|
|
|
100 |
*/
|
101 |
public function addClassMap(array $classMap)
|
102 |
{
|
@@ -111,9 +175,11 @@ class ClassLoader
|
|
111 |
* Registers a set of PSR-0 directories for a given prefix, either
|
112 |
* appending or prepending to the ones previously set for this prefix.
|
113 |
*
|
114 |
-
* @param string
|
115 |
-
* @param
|
116 |
-
* @param bool
|
|
|
|
|
117 |
*/
|
118 |
public function add($prefix, $paths, $prepend = false)
|
119 |
{
|
@@ -156,11 +222,13 @@ class ClassLoader
|
|
156 |
* Registers a set of PSR-4 directories for a given namespace, either
|
157 |
* appending or prepending to the ones previously set for this namespace.
|
158 |
*
|
159 |
-
* @param string
|
160 |
-
* @param
|
161 |
-
* @param bool
|
162 |
*
|
163 |
* @throws \InvalidArgumentException
|
|
|
|
|
164 |
*/
|
165 |
public function addPsr4($prefix, $paths, $prepend = false)
|
166 |
{
|
@@ -204,8 +272,10 @@ class ClassLoader
|
|
204 |
* Registers a set of PSR-0 directories for a given prefix,
|
205 |
* replacing any others previously set for this prefix.
|
206 |
*
|
207 |
-
* @param string
|
208 |
-
* @param
|
|
|
|
|
209 |
*/
|
210 |
public function set($prefix, $paths)
|
211 |
{
|
@@ -220,10 +290,12 @@ class ClassLoader
|
|
220 |
* Registers a set of PSR-4 directories for a given namespace,
|
221 |
* replacing any others previously set for this namespace.
|
222 |
*
|
223 |
-
* @param string
|
224 |
-
* @param
|
225 |
*
|
226 |
* @throws \InvalidArgumentException
|
|
|
|
|
227 |
*/
|
228 |
public function setPsr4($prefix, $paths)
|
229 |
{
|
@@ -243,6 +315,8 @@ class ClassLoader
|
|
243 |
* Turns on searching the include path for class files.
|
244 |
*
|
245 |
* @param bool $useIncludePath
|
|
|
|
|
246 |
*/
|
247 |
public function setUseIncludePath($useIncludePath)
|
248 |
{
|
@@ -265,6 +339,8 @@ class ClassLoader
|
|
265 |
* that have not been registered with the class map.
|
266 |
*
|
267 |
* @param bool $classMapAuthoritative
|
|
|
|
|
268 |
*/
|
269 |
public function setClassMapAuthoritative($classMapAuthoritative)
|
270 |
{
|
@@ -285,6 +361,8 @@ class ClassLoader
|
|
285 |
* APCu prefix to use to cache found/not-found classes, if the extension is enabled.
|
286 |
*
|
287 |
* @param string|null $apcuPrefix
|
|
|
|
|
288 |
*/
|
289 |
public function setApcuPrefix($apcuPrefix)
|
290 |
{
|
@@ -305,6 +383,8 @@ class ClassLoader
|
|
305 |
* Registers this instance as an autoloader.
|
306 |
*
|
307 |
* @param bool $prepend Whether to prepend the autoloader or not
|
|
|
|
|
308 |
*/
|
309 |
public function register($prepend = false)
|
310 |
{
|
@@ -324,6 +404,8 @@ class ClassLoader
|
|
324 |
|
325 |
/**
|
326 |
* Unregisters this instance as an autoloader.
|
|
|
|
|
327 |
*/
|
328 |
public function unregister()
|
329 |
{
|
@@ -403,6 +485,11 @@ class ClassLoader
|
|
403 |
return self::$registeredLoaders;
|
404 |
}
|
405 |
|
|
|
|
|
|
|
|
|
|
|
406 |
private function findFileWithExtension($class, $ext)
|
407 |
{
|
408 |
// PSR-4 lookup
|
@@ -474,6 +561,10 @@ class ClassLoader
|
|
474 |
* Scope isolated include.
|
475 |
*
|
476 |
* Prevents access to $this/self from included files.
|
|
|
|
|
|
|
|
|
477 |
*/
|
478 |
function includeFile($file)
|
479 |
{
|
42 |
*/
|
43 |
class ClassLoader
|
44 |
{
|
45 |
+
/** @var ?string */
|
46 |
private $vendorDir;
|
47 |
|
48 |
// PSR-4
|
49 |
+
/**
|
50 |
+
* @var array[]
|
51 |
+
* @psalm-var array<string, array<string, int>>
|
52 |
+
*/
|
53 |
private $prefixLengthsPsr4 = array();
|
54 |
+
/**
|
55 |
+
* @var array[]
|
56 |
+
* @psalm-var array<string, array<int, string>>
|
57 |
+
*/
|
58 |
private $prefixDirsPsr4 = array();
|
59 |
+
/**
|
60 |
+
* @var array[]
|
61 |
+
* @psalm-var array<string, string>
|
62 |
+
*/
|
63 |
private $fallbackDirsPsr4 = array();
|
64 |
|
65 |
// PSR-0
|
66 |
+
/**
|
67 |
+
* @var array[]
|
68 |
+
* @psalm-var array<string, array<string, string[]>>
|
69 |
+
*/
|
70 |
private $prefixesPsr0 = array();
|
71 |
+
/**
|
72 |
+
* @var array[]
|
73 |
+
* @psalm-var array<string, string>
|
74 |
+
*/
|
75 |
private $fallbackDirsPsr0 = array();
|
76 |
|
77 |
+
/** @var bool */
|
78 |
private $useIncludePath = false;
|
79 |
+
|
80 |
+
/**
|
81 |
+
* @var string[]
|
82 |
+
* @psalm-var array<string, string>
|
83 |
+
*/
|
84 |
private $classMap = array();
|
85 |
+
|
86 |
+
/** @var bool */
|
87 |
private $classMapAuthoritative = false;
|
88 |
+
|
89 |
+
/**
|
90 |
+
* @var bool[]
|
91 |
+
* @psalm-var array<string, bool>
|
92 |
+
*/
|
93 |
private $missingClasses = array();
|
94 |
+
|
95 |
+
/** @var ?string */
|
96 |
private $apcuPrefix;
|
97 |
|
98 |
+
/**
|
99 |
+
* @var self[]
|
100 |
+
*/
|
101 |
private static $registeredLoaders = array();
|
102 |
|
103 |
+
/**
|
104 |
+
* @param ?string $vendorDir
|
105 |
+
*/
|
106 |
public function __construct($vendorDir = null)
|
107 |
{
|
108 |
$this->vendorDir = $vendorDir;
|
109 |
}
|
110 |
|
111 |
+
/**
|
112 |
+
* @return string[]
|
113 |
+
*/
|
114 |
public function getPrefixes()
|
115 |
{
|
116 |
if (!empty($this->prefixesPsr0)) {
|
120 |
return array();
|
121 |
}
|
122 |
|
123 |
+
/**
|
124 |
+
* @return array[]
|
125 |
+
* @psalm-return array<string, array<int, string>>
|
126 |
+
*/
|
127 |
public function getPrefixesPsr4()
|
128 |
{
|
129 |
return $this->prefixDirsPsr4;
|
130 |
}
|
131 |
|
132 |
+
/**
|
133 |
+
* @return array[]
|
134 |
+
* @psalm-return array<string, string>
|
135 |
+
*/
|
136 |
public function getFallbackDirs()
|
137 |
{
|
138 |
return $this->fallbackDirsPsr0;
|
139 |
}
|
140 |
|
141 |
+
/**
|
142 |
+
* @return array[]
|
143 |
+
* @psalm-return array<string, string>
|
144 |
+
*/
|
145 |
public function getFallbackDirsPsr4()
|
146 |
{
|
147 |
return $this->fallbackDirsPsr4;
|
148 |
}
|
149 |
|
150 |
+
/**
|
151 |
+
* @return string[] Array of classname => path
|
152 |
+
* @psalm-return array<string, string>
|
153 |
+
*/
|
154 |
public function getClassMap()
|
155 |
{
|
156 |
return $this->classMap;
|
157 |
}
|
158 |
|
159 |
/**
|
160 |
+
* @param string[] $classMap Class to filename map
|
161 |
+
* @psalm-param array<string, string> $classMap
|
162 |
+
*
|
163 |
+
* @return void
|
164 |
*/
|
165 |
public function addClassMap(array $classMap)
|
166 |
{
|
175 |
* Registers a set of PSR-0 directories for a given prefix, either
|
176 |
* appending or prepending to the ones previously set for this prefix.
|
177 |
*
|
178 |
+
* @param string $prefix The prefix
|
179 |
+
* @param string[]|string $paths The PSR-0 root directories
|
180 |
+
* @param bool $prepend Whether to prepend the directories
|
181 |
+
*
|
182 |
+
* @return void
|
183 |
*/
|
184 |
public function add($prefix, $paths, $prepend = false)
|
185 |
{
|
222 |
* Registers a set of PSR-4 directories for a given namespace, either
|
223 |
* appending or prepending to the ones previously set for this namespace.
|
224 |
*
|
225 |
+
* @param string $prefix The prefix/namespace, with trailing '\\'
|
226 |
+
* @param string[]|string $paths The PSR-4 base directories
|
227 |
+
* @param bool $prepend Whether to prepend the directories
|
228 |
*
|
229 |
* @throws \InvalidArgumentException
|
230 |
+
*
|
231 |
+
* @return void
|
232 |
*/
|
233 |
public function addPsr4($prefix, $paths, $prepend = false)
|
234 |
{
|
272 |
* Registers a set of PSR-0 directories for a given prefix,
|
273 |
* replacing any others previously set for this prefix.
|
274 |
*
|
275 |
+
* @param string $prefix The prefix
|
276 |
+
* @param string[]|string $paths The PSR-0 base directories
|
277 |
+
*
|
278 |
+
* @return void
|
279 |
*/
|
280 |
public function set($prefix, $paths)
|
281 |
{
|
290 |
* Registers a set of PSR-4 directories for a given namespace,
|
291 |
* replacing any others previously set for this namespace.
|
292 |
*
|
293 |
+
* @param string $prefix The prefix/namespace, with trailing '\\'
|
294 |
+
* @param string[]|string $paths The PSR-4 base directories
|
295 |
*
|
296 |
* @throws \InvalidArgumentException
|
297 |
+
*
|
298 |
+
* @return void
|
299 |
*/
|
300 |
public function setPsr4($prefix, $paths)
|
301 |
{
|
315 |
* Turns on searching the include path for class files.
|
316 |
*
|
317 |
* @param bool $useIncludePath
|
318 |
+
*
|
319 |
+
* @return void
|
320 |
*/
|
321 |
public function setUseIncludePath($useIncludePath)
|
322 |
{
|
339 |
* that have not been registered with the class map.
|
340 |
*
|
341 |
* @param bool $classMapAuthoritative
|
342 |
+
*
|
343 |
+
* @return void
|
344 |
*/
|
345 |
public function setClassMapAuthoritative($classMapAuthoritative)
|
346 |
{
|
361 |
* APCu prefix to use to cache found/not-found classes, if the extension is enabled.
|
362 |
*
|
363 |
* @param string|null $apcuPrefix
|
364 |
+
*
|
365 |
+
* @return void
|
366 |
*/
|
367 |
public function setApcuPrefix($apcuPrefix)
|
368 |
{
|
383 |
* Registers this instance as an autoloader.
|
384 |
*
|
385 |
* @param bool $prepend Whether to prepend the autoloader or not
|
386 |
+
*
|
387 |
+
* @return void
|
388 |
*/
|
389 |
public function register($prepend = false)
|
390 |
{
|
404 |
|
405 |
/**
|
406 |
* Unregisters this instance as an autoloader.
|
407 |
+
*
|
408 |
+
* @return void
|
409 |
*/
|
410 |
public function unregister()
|
411 |
{
|
485 |
return self::$registeredLoaders;
|
486 |
}
|
487 |
|
488 |
+
/**
|
489 |
+
* @param string $class
|
490 |
+
* @param string $ext
|
491 |
+
* @return string|false
|
492 |
+
*/
|
493 |
private function findFileWithExtension($class, $ext)
|
494 |
{
|
495 |
// PSR-4 lookup
|
561 |
* Scope isolated include.
|
562 |
*
|
563 |
* Prevents access to $this/self from included files.
|
564 |
+
*
|
565 |
+
* @param string $file
|
566 |
+
* @return void
|
567 |
+
* @private
|
568 |
*/
|
569 |
function includeFile($file)
|
570 |
{
|
vendor/composer/InstalledVersions.php
CHANGED
@@ -20,12 +20,27 @@ use Composer\Semver\VersionParser;
|
|
20 |
*
|
21 |
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
|
22 |
*
|
23 |
-
* To require
|
|
|
|
|
24 |
*/
|
25 |
class InstalledVersions
|
26 |
{
|
|
|
|
|
|
|
|
|
27 |
private static $installed;
|
|
|
|
|
|
|
|
|
28 |
private static $canGetVendors;
|
|
|
|
|
|
|
|
|
|
|
29 |
private static $installedByVendor = array();
|
30 |
|
31 |
/**
|
@@ -228,7 +243,7 @@ class InstalledVersions
|
|
228 |
|
229 |
/**
|
230 |
* @return array
|
231 |
-
* @psalm-return array{name: string, version: string, reference: string,
|
232 |
*/
|
233 |
public static function getRootPackage()
|
234 |
{
|
@@ -242,7 +257,7 @@ class InstalledVersions
|
|
242 |
*
|
243 |
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
|
244 |
* @return array[]
|
245 |
-
* @psalm-return array{root: array{name: string, version: string, reference: string,
|
246 |
*/
|
247 |
public static function getRawData()
|
248 |
{
|
@@ -265,7 +280,7 @@ class InstalledVersions
|
|
265 |
* Returns the raw data of all installed.php which are currently loaded for custom implementations
|
266 |
*
|
267 |
* @return array[]
|
268 |
-
* @psalm-return list<array{root: array{name: string, version: string, reference: string,
|
269 |
*/
|
270 |
public static function getAllRawData()
|
271 |
{
|
@@ -288,7 +303,7 @@ class InstalledVersions
|
|
288 |
* @param array[] $data A vendor/composer/installed.php data set
|
289 |
* @return void
|
290 |
*
|
291 |
-
* @psalm-param array{root: array{name: string, version: string, reference: string,
|
292 |
*/
|
293 |
public static function reload($data)
|
294 |
{
|
@@ -298,7 +313,7 @@ class InstalledVersions
|
|
298 |
|
299 |
/**
|
300 |
* @return array[]
|
301 |
-
* @psalm-return list<array{root: array{name: string, version: string, reference: string,
|
302 |
*/
|
303 |
private static function getInstalled()
|
304 |
{
|
20 |
*
|
21 |
* See also https://getcomposer.org/doc/07-runtime.md#installed-versions
|
22 |
*
|
23 |
+
* To require its presence, you can require `composer-runtime-api ^2.0`
|
24 |
+
*
|
25 |
+
* @final
|
26 |
*/
|
27 |
class InstalledVersions
|
28 |
{
|
29 |
+
/**
|
30 |
+
* @var mixed[]|null
|
31 |
+
* @psalm-var array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}|array{}|null
|
32 |
+
*/
|
33 |
private static $installed;
|
34 |
+
|
35 |
+
/**
|
36 |
+
* @var bool|null
|
37 |
+
*/
|
38 |
private static $canGetVendors;
|
39 |
+
|
40 |
+
/**
|
41 |
+
* @var array[]
|
42 |
+
* @psalm-var array<string, array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
43 |
+
*/
|
44 |
private static $installedByVendor = array();
|
45 |
|
46 |
/**
|
243 |
|
244 |
/**
|
245 |
* @return array
|
246 |
+
* @psalm-return array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}
|
247 |
*/
|
248 |
public static function getRootPackage()
|
249 |
{
|
257 |
*
|
258 |
* @deprecated Use getAllRawData() instead which returns all datasets for all autoloaders present in the process. getRawData only returns the first dataset loaded, which may not be what you expect.
|
259 |
* @return array[]
|
260 |
+
* @psalm-return array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}
|
261 |
*/
|
262 |
public static function getRawData()
|
263 |
{
|
280 |
* Returns the raw data of all installed.php which are currently loaded for custom implementations
|
281 |
*
|
282 |
* @return array[]
|
283 |
+
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
284 |
*/
|
285 |
public static function getAllRawData()
|
286 |
{
|
303 |
* @param array[] $data A vendor/composer/installed.php data set
|
304 |
* @return void
|
305 |
*
|
306 |
+
* @psalm-param array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>} $data
|
307 |
*/
|
308 |
public static function reload($data)
|
309 |
{
|
313 |
|
314 |
/**
|
315 |
* @return array[]
|
316 |
+
* @psalm-return list<array{root: array{name: string, pretty_version: string, version: string, reference: string|null, type: string, install_path: string, aliases: string[], dev: bool}, versions: array<string, array{pretty_version?: string, version?: string, reference?: string|null, type?: string, install_path?: string, aliases?: string[], dev_requirement: bool, replaced?: string[], provided?: string[]}>}>
|
317 |
*/
|
318 |
private static function getInstalled()
|
319 |
{
|
vendor/composer/autoload_classmap.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_classmap.php @generated by Composer
|
4 |
|
5 |
-
$vendorDir = dirname(
|
6 |
$baseDir = dirname($vendorDir);
|
7 |
|
8 |
return array(
|
2 |
|
3 |
// autoload_classmap.php @generated by Composer
|
4 |
|
5 |
+
$vendorDir = dirname(__DIR__);
|
6 |
$baseDir = dirname($vendorDir);
|
7 |
|
8 |
return array(
|
vendor/composer/autoload_files.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_files.php @generated by Composer
|
4 |
|
5 |
-
$vendorDir = dirname(
|
6 |
$baseDir = dirname($vendorDir);
|
7 |
|
8 |
return array(
|
2 |
|
3 |
// autoload_files.php @generated by Composer
|
4 |
|
5 |
+
$vendorDir = dirname(__DIR__);
|
6 |
$baseDir = dirname($vendorDir);
|
7 |
|
8 |
return array(
|
vendor/composer/autoload_namespaces.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_namespaces.php @generated by Composer
|
4 |
|
5 |
-
$vendorDir = dirname(
|
6 |
$baseDir = dirname($vendorDir);
|
7 |
|
8 |
return array(
|
2 |
|
3 |
// autoload_namespaces.php @generated by Composer
|
4 |
|
5 |
+
$vendorDir = dirname(__DIR__);
|
6 |
$baseDir = dirname($vendorDir);
|
7 |
|
8 |
return array(
|
vendor/composer/autoload_psr4.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_psr4.php @generated by Composer
|
4 |
|
5 |
-
$vendorDir = dirname(
|
6 |
$baseDir = dirname($vendorDir);
|
7 |
|
8 |
return array(
|
2 |
|
3 |
// autoload_psr4.php @generated by Composer
|
4 |
|
5 |
+
$vendorDir = dirname(__DIR__);
|
6 |
$baseDir = dirname($vendorDir);
|
7 |
|
8 |
return array(
|
vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -24,52 +24,34 @@ class ComposerAutoloaderInit83c239f73953f902fd203ac8c88fa4b3
|
|
24 |
|
25 |
require __DIR__ . '/platform_check.php';
|
26 |
|
27 |
-
spl_autoload_register(array('
|
28 |
-
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(
|
29 |
-
spl_autoload_unregister(array('
|
30 |
|
31 |
-
|
32 |
-
|
33 |
-
require __DIR__ . '/autoload_static.php';
|
34 |
-
|
35 |
-
call_user_func(\Composer\Autoload\ComposerStaticInit83c239f73953f902fd203ac8c88fa4b3::getInitializer($loader));
|
36 |
-
} else {
|
37 |
-
$map = require __DIR__ . '/autoload_namespaces.php';
|
38 |
-
foreach ($map as $namespace => $path) {
|
39 |
-
$loader->set($namespace, $path);
|
40 |
-
}
|
41 |
-
|
42 |
-
$map = require __DIR__ . '/autoload_psr4.php';
|
43 |
-
foreach ($map as $namespace => $path) {
|
44 |
-
$loader->setPsr4($namespace, $path);
|
45 |
-
}
|
46 |
-
|
47 |
-
$classMap = require __DIR__ . '/autoload_classmap.php';
|
48 |
-
if ($classMap) {
|
49 |
-
$loader->addClassMap($classMap);
|
50 |
-
}
|
51 |
-
}
|
52 |
|
53 |
$loader->register(true);
|
54 |
|
55 |
-
|
56 |
-
$includeFiles = Composer\Autoload\ComposerStaticInit83c239f73953f902fd203ac8c88fa4b3::$files;
|
57 |
-
} else {
|
58 |
-
$includeFiles = require __DIR__ . '/autoload_files.php';
|
59 |
-
}
|
60 |
foreach ($includeFiles as $fileIdentifier => $file) {
|
61 |
-
|
62 |
}
|
63 |
|
64 |
return $loader;
|
65 |
}
|
66 |
}
|
67 |
|
68 |
-
|
|
|
|
|
|
|
|
|
|
|
69 |
{
|
70 |
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
71 |
-
require $file;
|
72 |
-
|
73 |
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
|
|
|
|
|
74 |
}
|
75 |
}
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInitb15b0b66fa591157ab77757b7544be6d
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
24 |
|
25 |
require __DIR__ . '/platform_check.php';
|
26 |
|
27 |
+
spl_autoload_register(array('ComposerAutoloaderInitb15b0b66fa591157ab77757b7544be6d', 'loadClassLoader'), true, true);
|
28 |
+
self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__));
|
29 |
+
spl_autoload_unregister(array('ComposerAutoloaderInitb15b0b66fa591157ab77757b7544be6d', 'loadClassLoader'));
|
30 |
|
31 |
+
require __DIR__ . '/autoload_static.php';
|
32 |
+
call_user_func(\Composer\Autoload\ComposerStaticInitb15b0b66fa591157ab77757b7544be6d::getInitializer($loader));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
|
34 |
$loader->register(true);
|
35 |
|
36 |
+
$includeFiles = \Composer\Autoload\ComposerStaticInitb15b0b66fa591157ab77757b7544be6d::$files;
|
|
|
|
|
|
|
|
|
37 |
foreach ($includeFiles as $fileIdentifier => $file) {
|
38 |
+
composerRequireb15b0b66fa591157ab77757b7544be6d($fileIdentifier, $file);
|
39 |
}
|
40 |
|
41 |
return $loader;
|
42 |
}
|
43 |
}
|
44 |
|
45 |
+
/**
|
46 |
+
* @param string $fileIdentifier
|
47 |
+
* @param string $file
|
48 |
+
* @return void
|
49 |
+
*/
|
50 |
+
function composerRequireb15b0b66fa591157ab77757b7544be6d($fileIdentifier, $file)
|
51 |
{
|
52 |
if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
|
|
|
|
|
53 |
$GLOBALS['__composer_autoload_files'][$fileIdentifier] = true;
|
54 |
+
|
55 |
+
require $file;
|
56 |
}
|
57 |
}
|
vendor/composer/autoload_static.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
-
class
|
8 |
{
|
9 |
public static $files = array (
|
10 |
'fda73876e8be17735f680f484cec1679' => __DIR__ . '/../..' . '/src/Functions/custom-settings-api.php',
|
@@ -298,9 +298,9 @@ class ComposerStaticInit83c239f73953f902fd203ac8c88fa4b3
|
|
298 |
public static function getInitializer(ClassLoader $loader)
|
299 |
{
|
300 |
return \Closure::bind(function () use ($loader) {
|
301 |
-
$loader->prefixLengthsPsr4 =
|
302 |
-
$loader->prefixDirsPsr4 =
|
303 |
-
$loader->classMap =
|
304 |
|
305 |
}, null, ClassLoader::class);
|
306 |
}
|
4 |
|
5 |
namespace Composer\Autoload;
|
6 |
|
7 |
+
class ComposerStaticInitb15b0b66fa591157ab77757b7544be6d
|
8 |
{
|
9 |
public static $files = array (
|
10 |
'fda73876e8be17735f680f484cec1679' => __DIR__ . '/../..' . '/src/Functions/custom-settings-api.php',
|
298 |
public static function getInitializer(ClassLoader $loader)
|
299 |
{
|
300 |
return \Closure::bind(function () use ($loader) {
|
301 |
+
$loader->prefixLengthsPsr4 = ComposerStaticInitb15b0b66fa591157ab77757b7544be6d::$prefixLengthsPsr4;
|
302 |
+
$loader->prefixDirsPsr4 = ComposerStaticInitb15b0b66fa591157ab77757b7544be6d::$prefixDirsPsr4;
|
303 |
+
$loader->classMap = ComposerStaticInitb15b0b66fa591157ab77757b7544be6d::$classMap;
|
304 |
|
305 |
}, null, ClassLoader::class);
|
306 |
}
|
vendor/composer/installed.php
CHANGED
@@ -1,60 +1,60 @@
|
|
1 |
<?php return array(
|
2 |
'root' => array(
|
3 |
-
'
|
4 |
-
'
|
|
|
|
|
5 |
'type' => 'library',
|
6 |
'install_path' => __DIR__ . '/../../',
|
7 |
'aliases' => array(),
|
8 |
-
'reference' => '879e973e849b8179cdd93e766cf066e96ad5abba',
|
9 |
-
'name' => '__root__',
|
10 |
'dev' => false,
|
11 |
),
|
12 |
'versions' => array(
|
13 |
'__root__' => array(
|
14 |
-
'pretty_version' => 'dev
|
15 |
-
'version' => 'dev
|
|
|
16 |
'type' => 'library',
|
17 |
'install_path' => __DIR__ . '/../../',
|
18 |
'aliases' => array(),
|
19 |
-
'reference' => '879e973e849b8179cdd93e766cf066e96ad5abba',
|
20 |
'dev_requirement' => false,
|
21 |
),
|
22 |
'barryvdh/composer-cleanup-plugin' => array(
|
23 |
'pretty_version' => 'dev-master',
|
24 |
'version' => 'dev-master',
|
|
|
25 |
'type' => 'composer-plugin',
|
26 |
'install_path' => __DIR__ . '/../barryvdh/composer-cleanup-plugin',
|
27 |
'aliases' => array(
|
28 |
0 => '0.1.x-dev',
|
29 |
),
|
30 |
-
'reference' => '74d878666436c99f5b671b90312e85479afeedb0',
|
31 |
'dev_requirement' => false,
|
32 |
),
|
33 |
'collizo4sky/persist-admin-notices-dismissal' => array(
|
34 |
'pretty_version' => '1.4.4',
|
35 |
'version' => '1.4.4.0',
|
|
|
36 |
'type' => 'library',
|
37 |
'install_path' => __DIR__ . '/../collizo4sky/persist-admin-notices-dismissal',
|
38 |
'aliases' => array(),
|
39 |
-
'reference' => '900739eb6b0ec0210465f5983a6d4e0e420289e4',
|
40 |
'dev_requirement' => false,
|
41 |
),
|
42 |
'pelago/emogrifier' => array(
|
43 |
'pretty_version' => 'v3.1.0',
|
44 |
'version' => '3.1.0.0',
|
|
|
45 |
'type' => 'library',
|
46 |
'install_path' => __DIR__ . '/../pelago/emogrifier',
|
47 |
'aliases' => array(),
|
48 |
-
'reference' => 'f6a5c7d44612d86c3901c93f1592f5440e6b2cd8',
|
49 |
'dev_requirement' => false,
|
50 |
),
|
51 |
'symfony/css-selector' => array(
|
52 |
'pretty_version' => 'v3.4.47',
|
53 |
'version' => '3.4.47.0',
|
|
|
54 |
'type' => 'library',
|
55 |
'install_path' => __DIR__ . '/../symfony/css-selector',
|
56 |
'aliases' => array(),
|
57 |
-
'reference' => 'da3d9da2ce0026771f5fe64cb332158f1bd2bc33',
|
58 |
'dev_requirement' => false,
|
59 |
),
|
60 |
),
|
1 |
<?php return array(
|
2 |
'root' => array(
|
3 |
+
'name' => '__root__',
|
4 |
+
'pretty_version' => '3.x-dev',
|
5 |
+
'version' => '3.9999999.9999999.9999999-dev',
|
6 |
+
'reference' => 'bc0e8fa5bfc967379c0e40a1247ff3b2db8c1e81',
|
7 |
'type' => 'library',
|
8 |
'install_path' => __DIR__ . '/../../',
|
9 |
'aliases' => array(),
|
|
|
|
|
10 |
'dev' => false,
|
11 |
),
|
12 |
'versions' => array(
|
13 |
'__root__' => array(
|
14 |
+
'pretty_version' => '3.x-dev',
|
15 |
+
'version' => '3.9999999.9999999.9999999-dev',
|
16 |
+
'reference' => 'bc0e8fa5bfc967379c0e40a1247ff3b2db8c1e81',
|
17 |
'type' => 'library',
|
18 |
'install_path' => __DIR__ . '/../../',
|
19 |
'aliases' => array(),
|
|
|
20 |
'dev_requirement' => false,
|
21 |
),
|
22 |
'barryvdh/composer-cleanup-plugin' => array(
|
23 |
'pretty_version' => 'dev-master',
|
24 |
'version' => 'dev-master',
|
25 |
+
'reference' => '74d878666436c99f5b671b90312e85479afeedb0',
|
26 |
'type' => 'composer-plugin',
|
27 |
'install_path' => __DIR__ . '/../barryvdh/composer-cleanup-plugin',
|
28 |
'aliases' => array(
|
29 |
0 => '0.1.x-dev',
|
30 |
),
|
|
|
31 |
'dev_requirement' => false,
|
32 |
),
|
33 |
'collizo4sky/persist-admin-notices-dismissal' => array(
|
34 |
'pretty_version' => '1.4.4',
|
35 |
'version' => '1.4.4.0',
|
36 |
+
'reference' => '900739eb6b0ec0210465f5983a6d4e0e420289e4',
|
37 |
'type' => 'library',
|
38 |
'install_path' => __DIR__ . '/../collizo4sky/persist-admin-notices-dismissal',
|
39 |
'aliases' => array(),
|
|
|
40 |
'dev_requirement' => false,
|
41 |
),
|
42 |
'pelago/emogrifier' => array(
|
43 |
'pretty_version' => 'v3.1.0',
|
44 |
'version' => '3.1.0.0',
|
45 |
+
'reference' => 'f6a5c7d44612d86c3901c93f1592f5440e6b2cd8',
|
46 |
'type' => 'library',
|
47 |
'install_path' => __DIR__ . '/../pelago/emogrifier',
|
48 |
'aliases' => array(),
|
|
|
49 |
'dev_requirement' => false,
|
50 |
),
|
51 |
'symfony/css-selector' => array(
|
52 |
'pretty_version' => 'v3.4.47',
|
53 |
'version' => '3.4.47.0',
|
54 |
+
'reference' => 'da3d9da2ce0026771f5fe64cb332158f1bd2bc33',
|
55 |
'type' => 'library',
|
56 |
'install_path' => __DIR__ . '/../symfony/css-selector',
|
57 |
'aliases' => array(),
|
|
|
58 |
'dev_requirement' => false,
|
59 |
),
|
60 |
),
|
wp-user-avatar.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: ProfilePress
|
4 |
* Plugin URI: https://profilepress.com
|
5 |
* Description: The modern WordPress membership and user profile plugin.
|
6 |
-
* Version: 3.2.
|
7 |
* Author: ProfilePress Team
|
8 |
* Author URI: https://profilepress.com
|
9 |
* Text Domain: wp-user-avatar
|
@@ -14,7 +14,7 @@
|
|
14 |
defined('ABSPATH') or die("No script kiddies please!");
|
15 |
|
16 |
define('PROFILEPRESS_SYSTEM_FILE_PATH', __FILE__);
|
17 |
-
define('PPRESS_VERSION_NUMBER', '3.2.
|
18 |
|
19 |
require __DIR__ . '/vendor/autoload.php';
|
20 |
|
3 |
* Plugin Name: ProfilePress
|
4 |
* Plugin URI: https://profilepress.com
|
5 |
* Description: The modern WordPress membership and user profile plugin.
|
6 |
+
* Version: 3.2.16
|
7 |
* Author: ProfilePress Team
|
8 |
* Author URI: https://profilepress.com
|
9 |
* Text Domain: wp-user-avatar
|
14 |
defined('ABSPATH') or die("No script kiddies please!");
|
15 |
|
16 |
define('PROFILEPRESS_SYSTEM_FILE_PATH', __FILE__);
|
17 |
+
define('PPRESS_VERSION_NUMBER', '3.2.16');
|
18 |
|
19 |
require __DIR__ . '/vendor/autoload.php';
|
20 |
|