Version Description
Download this release
Release Info
Developer | nsinelnikov |
Plugin | Ultimate Member – User Profile & Membership Plugin |
Version | 2.1.0 |
Comparing to | |
See all releases |
Code changes from version 2.0.56 to 2.1.0
- assets/css/jquery-ui.css +1311 -0
- assets/css/um-fileupload.css +1 -0
- assets/css/um-members-rtl.css +82 -0
- assets/css/um-members.css +994 -373
- assets/css/um-misc.css +10 -0
- assets/css/um-old-default.css +11 -2
- assets/css/um-profile.css +9 -4
- assets/css/um-responsive.css +7 -101
- assets/css/um-styles.css +26 -11
- assets/css/um.rtl.css +8 -4
- assets/dynamic_css/dynamic_profile.php +37 -31
- assets/js/dropdown.js +85 -0
- assets/js/dropdown.min.js +1 -0
- assets/js/um-conditional.js +9 -3
- assets/js/um-conditional.min.js +1 -1
- assets/js/um-functions.js +8 -22
- assets/js/um-functions.min.js +1 -1
- assets/js/um-members.js +1383 -25
- assets/js/um-members.min.js +1 -1
- assets/js/um-modal.js +16 -18
- assets/js/um-modal.min.js +1 -1
- assets/js/um-profile.js +2 -1
- assets/js/um-profile.min.js +1 -1
- assets/js/um-raty.js +2 -2
- assets/js/um-raty.min.js +1 -1
- assets/js/um-scripts.js +106 -17
- assets/js/um-scripts.min.js +1 -1
- includes/admin/assets/css/um-admin-forms.css +55 -4
- includes/admin/assets/css/um-admin-global.css +4 -0
- includes/admin/assets/css/um-admin-select2.css +2 -2
- includes/admin/assets/js/um-admin-blocks-shortcode.js +2 -2
- includes/admin/assets/js/um-admin-forms.js +393 -21
- includes/admin/assets/js/um-admin-modal.js +18 -3
- includes/admin/class-admin.php +13 -0
- includes/admin/core/class-admin-ajax-hooks.php +1 -0
- includes/admin/core/class-admin-builder.php +26 -9
- includes/admin/core/class-admin-enqueue.php +17 -8
- includes/admin/core/class-admin-forms.php +147 -1
- includes/admin/core/class-admin-metabox.php +45 -9
- includes/admin/core/class-admin-notices.php +1 -1
- includes/admin/core/class-admin-settings.php +297 -283
- includes/admin/core/class-admin-users.php +1 -1
- includes/admin/core/packages/2.1.0-beta1/functions.php +25 -0
- includes/admin/core/packages/2.1.0-beta1/hooks.php +6 -0
- includes/admin/core/packages/2.1.0-beta1/init.php +57 -0
- includes/admin/core/packages/2.1.0-beta1/member-directory.php +181 -0
- includes/admin/core/packages/2.1.0-beta1/metadata.php +18 -0
- includes/admin/templates/directory/general.php +58 -86
- includes/admin/templates/directory/pagination.php +51 -22
- includes/admin/templates/directory/profile.php +96 -70
- includes/admin/templates/directory/search.php +64 -67
- includes/admin/templates/directory/sorting.php +54 -0
- includes/admin/templates/form/profile_customize.php +87 -77
- includes/class-config.php +94 -66
- includes/class-dependencies.php +42 -32
- includes/class-extensions.php +2 -2
- includes/class-functions.php +30 -3
- includes/class-init.php +31 -25
- includes/core/class-access.php +18 -9
- includes/core/class-account.php +106 -49
- includes/core/class-ajax-common.php +7 -1
- includes/core/class-builtin.php +17 -15
- includes/core/class-common.php +38 -34
- includes/core/class-enqueue.php +36 -16
- includes/core/class-fields.php +224 -138
- includes/core/class-files.php +39 -248
- includes/core/class-form.php +13 -8
- includes/core/class-gdpr.php +1 -1
- includes/core/class-mail.php +4 -1
- includes/core/class-member-directory.php +2198 -0
- includes/core/class-members.php +0 -620
- includes/core/class-plugin-updater.php +9 -1
- includes/core/class-profile.php +9 -4
- includes/core/class-register.php +7 -6
- includes/core/class-rewrite.php +27 -41
- includes/core/class-setup.php +11 -6
- includes/core/class-shortcodes.php +57 -17
- includes/core/class-uploader.php +114 -79
- includes/core/class-user-posts.php +47 -28
- includes/core/class-user.php +4 -8
- includes/core/um-actions-account.php +40 -45
- includes/core/um-actions-form.php +26 -17
- includes/core/um-actions-members.php +0 -255
- includes/core/um-actions-profile.php +77 -23
- includes/core/um-actions-register.php +15 -13
- includes/core/um-actions-wpadmin.php +12 -2
- includes/core/um-filters-account.php +6 -46
- includes/core/um-filters-fields.php +29 -3
- includes/core/um-filters-members.php +1 -495
- includes/core/um-filters-profile.php +24 -22
- includes/core/um-filters-user.php +7 -6
- includes/um-deprecated-functions.php +156 -1
- includes/um-short-functions.php +13 -145
- includes/widgets/class-um-search-widget.php +1 -1
- languages/ultimate-member-en_US.mo +0 -0
- languages/ultimate-member-en_US.po +4246 -7693
assets/css/jquery-ui.css
ADDED
@@ -0,0 +1,1311 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*! jQuery UI - v1.12.1 - 2016-09-14
|
2 |
+
* http://jqueryui.com
|
3 |
+
* Includes: core.css, accordion.css, autocomplete.css, menu.css, button.css, controlgroup.css, checkboxradio.css, datepicker.css, dialog.css, draggable.css, resizable.css, progressbar.css, selectable.css, selectmenu.css, slider.css, sortable.css, spinner.css, tabs.css, tooltip.css, theme.css
|
4 |
+
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&fwDefault=normal&cornerRadius=3px&bgColorHeader=e9e9e9&bgTextureHeader=flat&borderColorHeader=dddddd&fcHeader=333333&iconColorHeader=444444&bgColorContent=ffffff&bgTextureContent=flat&borderColorContent=dddddd&fcContent=333333&iconColorContent=444444&bgColorDefault=f6f6f6&bgTextureDefault=flat&borderColorDefault=c5c5c5&fcDefault=454545&iconColorDefault=777777&bgColorHover=ededed&bgTextureHover=flat&borderColorHover=cccccc&fcHover=2b2b2b&iconColorHover=555555&bgColorActive=007fff&bgTextureActive=flat&borderColorActive=003eff&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=fffa90&bgTextureHighlight=flat&borderColorHighlight=dad55e&fcHighlight=777620&iconColorHighlight=777620&bgColorError=fddfdf&bgTextureError=flat&borderColorError=f1a899&fcError=5f3f3f&iconColorError=cc0000&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=5px&offsetTopShadow=0px&offsetLeftShadow=0px&cornerRadiusShadow=8px
|
5 |
+
* Copyright jQuery Foundation and other contributors; Licensed MIT */
|
6 |
+
|
7 |
+
/* Layout helpers
|
8 |
+
----------------------------------*/
|
9 |
+
.ui-helper-hidden {
|
10 |
+
display: none;
|
11 |
+
}
|
12 |
+
.ui-helper-hidden-accessible {
|
13 |
+
border: 0;
|
14 |
+
clip: rect(0 0 0 0);
|
15 |
+
height: 1px;
|
16 |
+
margin: -1px;
|
17 |
+
overflow: hidden;
|
18 |
+
padding: 0;
|
19 |
+
position: absolute;
|
20 |
+
width: 1px;
|
21 |
+
}
|
22 |
+
.ui-helper-reset {
|
23 |
+
margin: 0;
|
24 |
+
padding: 0;
|
25 |
+
border: 0;
|
26 |
+
outline: 0;
|
27 |
+
line-height: 1.3;
|
28 |
+
text-decoration: none;
|
29 |
+
font-size: 100%;
|
30 |
+
list-style: none;
|
31 |
+
}
|
32 |
+
.ui-helper-clearfix:before,
|
33 |
+
.ui-helper-clearfix:after {
|
34 |
+
content: "";
|
35 |
+
display: table;
|
36 |
+
border-collapse: collapse;
|
37 |
+
}
|
38 |
+
.ui-helper-clearfix:after {
|
39 |
+
clear: both;
|
40 |
+
}
|
41 |
+
.ui-helper-zfix {
|
42 |
+
width: 100%;
|
43 |
+
height: 100%;
|
44 |
+
top: 0;
|
45 |
+
left: 0;
|
46 |
+
position: absolute;
|
47 |
+
opacity: 0;
|
48 |
+
filter:Alpha(Opacity=0); /* support: IE8 */
|
49 |
+
}
|
50 |
+
|
51 |
+
.ui-front {
|
52 |
+
z-index: 100;
|
53 |
+
}
|
54 |
+
|
55 |
+
|
56 |
+
/* Interaction Cues
|
57 |
+
----------------------------------*/
|
58 |
+
.ui-state-disabled {
|
59 |
+
cursor: default !important;
|
60 |
+
pointer-events: none;
|
61 |
+
}
|
62 |
+
|
63 |
+
|
64 |
+
/* Icons
|
65 |
+
----------------------------------*/
|
66 |
+
.ui-icon {
|
67 |
+
display: inline-block;
|
68 |
+
vertical-align: middle;
|
69 |
+
margin-top: -.25em;
|
70 |
+
position: relative;
|
71 |
+
text-indent: -99999px;
|
72 |
+
overflow: hidden;
|
73 |
+
background-repeat: no-repeat;
|
74 |
+
}
|
75 |
+
|
76 |
+
.ui-widget-icon-block {
|
77 |
+
left: 50%;
|
78 |
+
margin-left: -8px;
|
79 |
+
display: block;
|
80 |
+
}
|
81 |
+
|
82 |
+
/* Misc visuals
|
83 |
+
----------------------------------*/
|
84 |
+
|
85 |
+
/* Overlays */
|
86 |
+
.ui-widget-overlay {
|
87 |
+
position: fixed;
|
88 |
+
top: 0;
|
89 |
+
left: 0;
|
90 |
+
width: 100%;
|
91 |
+
height: 100%;
|
92 |
+
}
|
93 |
+
.ui-accordion .ui-accordion-header {
|
94 |
+
display: block;
|
95 |
+
cursor: pointer;
|
96 |
+
position: relative;
|
97 |
+
margin: 2px 0 0 0;
|
98 |
+
padding: .5em .5em .5em .7em;
|
99 |
+
font-size: 100%;
|
100 |
+
}
|
101 |
+
.ui-accordion .ui-accordion-content {
|
102 |
+
padding: 1em 2.2em;
|
103 |
+
border-top: 0;
|
104 |
+
overflow: auto;
|
105 |
+
}
|
106 |
+
.ui-autocomplete {
|
107 |
+
position: absolute;
|
108 |
+
top: 0;
|
109 |
+
left: 0;
|
110 |
+
cursor: default;
|
111 |
+
}
|
112 |
+
.ui-menu {
|
113 |
+
list-style: none;
|
114 |
+
padding: 0;
|
115 |
+
margin: 0;
|
116 |
+
display: block;
|
117 |
+
outline: 0;
|
118 |
+
}
|
119 |
+
.ui-menu .ui-menu {
|
120 |
+
position: absolute;
|
121 |
+
}
|
122 |
+
.ui-menu .ui-menu-item {
|
123 |
+
margin: 0;
|
124 |
+
cursor: pointer;
|
125 |
+
/* support: IE10, see #8844 */
|
126 |
+
list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
|
127 |
+
}
|
128 |
+
.ui-menu .ui-menu-item-wrapper {
|
129 |
+
position: relative;
|
130 |
+
padding: 3px 1em 3px .4em;
|
131 |
+
}
|
132 |
+
.ui-menu .ui-menu-divider {
|
133 |
+
margin: 5px 0;
|
134 |
+
height: 0;
|
135 |
+
font-size: 0;
|
136 |
+
line-height: 0;
|
137 |
+
border-width: 1px 0 0 0;
|
138 |
+
}
|
139 |
+
.ui-menu .ui-state-focus,
|
140 |
+
.ui-menu .ui-state-active {
|
141 |
+
margin: -1px;
|
142 |
+
}
|
143 |
+
|
144 |
+
/* icon support */
|
145 |
+
.ui-menu-icons {
|
146 |
+
position: relative;
|
147 |
+
}
|
148 |
+
.ui-menu-icons .ui-menu-item-wrapper {
|
149 |
+
padding-left: 2em;
|
150 |
+
}
|
151 |
+
|
152 |
+
/* left-aligned */
|
153 |
+
.ui-menu .ui-icon {
|
154 |
+
position: absolute;
|
155 |
+
top: 0;
|
156 |
+
bottom: 0;
|
157 |
+
left: .2em;
|
158 |
+
margin: auto 0;
|
159 |
+
}
|
160 |
+
|
161 |
+
/* right-aligned */
|
162 |
+
.ui-menu .ui-menu-icon {
|
163 |
+
left: auto;
|
164 |
+
right: 0;
|
165 |
+
}
|
166 |
+
.ui-button {
|
167 |
+
padding: .4em 1em;
|
168 |
+
display: inline-block;
|
169 |
+
position: relative;
|
170 |
+
line-height: normal;
|
171 |
+
margin-right: .1em;
|
172 |
+
cursor: pointer;
|
173 |
+
vertical-align: middle;
|
174 |
+
text-align: center;
|
175 |
+
-webkit-user-select: none;
|
176 |
+
-moz-user-select: none;
|
177 |
+
-ms-user-select: none;
|
178 |
+
user-select: none;
|
179 |
+
|
180 |
+
/* Support: IE <= 11 */
|
181 |
+
overflow: visible;
|
182 |
+
}
|
183 |
+
|
184 |
+
.ui-button,
|
185 |
+
.ui-button:link,
|
186 |
+
.ui-button:visited,
|
187 |
+
.ui-button:hover,
|
188 |
+
.ui-button:active {
|
189 |
+
text-decoration: none;
|
190 |
+
}
|
191 |
+
|
192 |
+
/* to make room for the icon, a width needs to be set here */
|
193 |
+
.ui-button-icon-only {
|
194 |
+
width: 2em;
|
195 |
+
box-sizing: border-box;
|
196 |
+
text-indent: -9999px;
|
197 |
+
white-space: nowrap;
|
198 |
+
}
|
199 |
+
|
200 |
+
/* no icon support for input elements */
|
201 |
+
input.ui-button.ui-button-icon-only {
|
202 |
+
text-indent: 0;
|
203 |
+
}
|
204 |
+
|
205 |
+
/* button icon element(s) */
|
206 |
+
.ui-button-icon-only .ui-icon {
|
207 |
+
position: absolute;
|
208 |
+
top: 50%;
|
209 |
+
left: 50%;
|
210 |
+
margin-top: -8px;
|
211 |
+
margin-left: -8px;
|
212 |
+
}
|
213 |
+
|
214 |
+
.ui-button.ui-icon-notext .ui-icon {
|
215 |
+
padding: 0;
|
216 |
+
width: 2.1em;
|
217 |
+
height: 2.1em;
|
218 |
+
text-indent: -9999px;
|
219 |
+
white-space: nowrap;
|
220 |
+
|
221 |
+
}
|
222 |
+
|
223 |
+
input.ui-button.ui-icon-notext .ui-icon {
|
224 |
+
width: auto;
|
225 |
+
height: auto;
|
226 |
+
text-indent: 0;
|
227 |
+
white-space: normal;
|
228 |
+
padding: .4em 1em;
|
229 |
+
}
|
230 |
+
|
231 |
+
/* workarounds */
|
232 |
+
/* Support: Firefox 5 - 40 */
|
233 |
+
input.ui-button::-moz-focus-inner,
|
234 |
+
button.ui-button::-moz-focus-inner {
|
235 |
+
border: 0;
|
236 |
+
padding: 0;
|
237 |
+
}
|
238 |
+
.ui-controlgroup {
|
239 |
+
vertical-align: middle;
|
240 |
+
display: inline-block;
|
241 |
+
}
|
242 |
+
.ui-controlgroup > .ui-controlgroup-item {
|
243 |
+
float: left;
|
244 |
+
margin-left: 0;
|
245 |
+
margin-right: 0;
|
246 |
+
}
|
247 |
+
.ui-controlgroup > .ui-controlgroup-item:focus,
|
248 |
+
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus {
|
249 |
+
z-index: 9999;
|
250 |
+
}
|
251 |
+
.ui-controlgroup-vertical > .ui-controlgroup-item {
|
252 |
+
display: block;
|
253 |
+
float: none;
|
254 |
+
width: 100%;
|
255 |
+
margin-top: 0;
|
256 |
+
margin-bottom: 0;
|
257 |
+
text-align: left;
|
258 |
+
}
|
259 |
+
.ui-controlgroup-vertical .ui-controlgroup-item {
|
260 |
+
box-sizing: border-box;
|
261 |
+
}
|
262 |
+
.ui-controlgroup .ui-controlgroup-label {
|
263 |
+
padding: .4em 1em;
|
264 |
+
}
|
265 |
+
.ui-controlgroup .ui-controlgroup-label span {
|
266 |
+
font-size: 80%;
|
267 |
+
}
|
268 |
+
.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
|
269 |
+
border-left: none;
|
270 |
+
}
|
271 |
+
.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
|
272 |
+
border-top: none;
|
273 |
+
}
|
274 |
+
.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
|
275 |
+
border-right: none;
|
276 |
+
}
|
277 |
+
.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
|
278 |
+
border-bottom: none;
|
279 |
+
}
|
280 |
+
|
281 |
+
/* Spinner specific style fixes */
|
282 |
+
.ui-controlgroup-vertical .ui-spinner-input {
|
283 |
+
|
284 |
+
/* Support: IE8 only, Android < 4.4 only */
|
285 |
+
width: 75%;
|
286 |
+
width: calc( 100% - 2.4em );
|
287 |
+
}
|
288 |
+
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
|
289 |
+
border-top-style: solid;
|
290 |
+
}
|
291 |
+
|
292 |
+
.ui-checkboxradio-label .ui-icon-background {
|
293 |
+
box-shadow: inset 1px 1px 1px #ccc;
|
294 |
+
border-radius: .12em;
|
295 |
+
border: none;
|
296 |
+
}
|
297 |
+
.ui-checkboxradio-radio-label .ui-icon-background {
|
298 |
+
width: 16px;
|
299 |
+
height: 16px;
|
300 |
+
border-radius: 1em;
|
301 |
+
overflow: visible;
|
302 |
+
border: none;
|
303 |
+
}
|
304 |
+
.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
|
305 |
+
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
|
306 |
+
background-image: none;
|
307 |
+
width: 8px;
|
308 |
+
height: 8px;
|
309 |
+
border-width: 4px;
|
310 |
+
border-style: solid;
|
311 |
+
}
|
312 |
+
.ui-checkboxradio-disabled {
|
313 |
+
pointer-events: none;
|
314 |
+
}
|
315 |
+
.ui-datepicker {
|
316 |
+
width: 17em;
|
317 |
+
padding: .2em .2em 0;
|
318 |
+
display: none;
|
319 |
+
}
|
320 |
+
.ui-datepicker .ui-datepicker-header {
|
321 |
+
position: relative;
|
322 |
+
padding: .2em 0;
|
323 |
+
}
|
324 |
+
.ui-datepicker .ui-datepicker-prev,
|
325 |
+
.ui-datepicker .ui-datepicker-next {
|
326 |
+
position: absolute;
|
327 |
+
top: 2px;
|
328 |
+
width: 1.8em;
|
329 |
+
height: 1.8em;
|
330 |
+
}
|
331 |
+
.ui-datepicker .ui-datepicker-prev-hover,
|
332 |
+
.ui-datepicker .ui-datepicker-next-hover {
|
333 |
+
top: 1px;
|
334 |
+
}
|
335 |
+
.ui-datepicker .ui-datepicker-prev {
|
336 |
+
left: 2px;
|
337 |
+
}
|
338 |
+
.ui-datepicker .ui-datepicker-next {
|
339 |
+
right: 2px;
|
340 |
+
}
|
341 |
+
.ui-datepicker .ui-datepicker-prev-hover {
|
342 |
+
left: 1px;
|
343 |
+
}
|
344 |
+
.ui-datepicker .ui-datepicker-next-hover {
|
345 |
+
right: 1px;
|
346 |
+
}
|
347 |
+
.ui-datepicker .ui-datepicker-prev span,
|
348 |
+
.ui-datepicker .ui-datepicker-next span {
|
349 |
+
display: block;
|
350 |
+
position: absolute;
|
351 |
+
left: 50%;
|
352 |
+
margin-left: -8px;
|
353 |
+
top: 50%;
|
354 |
+
margin-top: -8px;
|
355 |
+
}
|
356 |
+
.ui-datepicker .ui-datepicker-title {
|
357 |
+
margin: 0 2.3em;
|
358 |
+
line-height: 1.8em;
|
359 |
+
text-align: center;
|
360 |
+
}
|
361 |
+
.ui-datepicker .ui-datepicker-title select {
|
362 |
+
font-size: 1em;
|
363 |
+
margin: 1px 0;
|
364 |
+
}
|
365 |
+
.ui-datepicker select.ui-datepicker-month,
|
366 |
+
.ui-datepicker select.ui-datepicker-year {
|
367 |
+
width: 45%;
|
368 |
+
}
|
369 |
+
.ui-datepicker table {
|
370 |
+
width: 100%;
|
371 |
+
font-size: .9em;
|
372 |
+
border-collapse: collapse;
|
373 |
+
margin: 0 0 .4em;
|
374 |
+
}
|
375 |
+
.ui-datepicker th {
|
376 |
+
padding: .7em .3em;
|
377 |
+
text-align: center;
|
378 |
+
font-weight: bold;
|
379 |
+
border: 0;
|
380 |
+
}
|
381 |
+
.ui-datepicker td {
|
382 |
+
border: 0;
|
383 |
+
padding: 1px;
|
384 |
+
}
|
385 |
+
.ui-datepicker td span,
|
386 |
+
.ui-datepicker td a {
|
387 |
+
display: block;
|
388 |
+
padding: .2em;
|
389 |
+
text-align: right;
|
390 |
+
text-decoration: none;
|
391 |
+
}
|
392 |
+
.ui-datepicker .ui-datepicker-buttonpane {
|
393 |
+
background-image: none;
|
394 |
+
margin: .7em 0 0 0;
|
395 |
+
padding: 0 .2em;
|
396 |
+
border-left: 0;
|
397 |
+
border-right: 0;
|
398 |
+
border-bottom: 0;
|
399 |
+
}
|
400 |
+
.ui-datepicker .ui-datepicker-buttonpane button {
|
401 |
+
float: right;
|
402 |
+
margin: .5em .2em .4em;
|
403 |
+
cursor: pointer;
|
404 |
+
padding: .2em .6em .3em .6em;
|
405 |
+
width: auto;
|
406 |
+
overflow: visible;
|
407 |
+
}
|
408 |
+
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
|
409 |
+
float: left;
|
410 |
+
}
|
411 |
+
|
412 |
+
/* with multiple calendars */
|
413 |
+
.ui-datepicker.ui-datepicker-multi {
|
414 |
+
width: auto;
|
415 |
+
}
|
416 |
+
.ui-datepicker-multi .ui-datepicker-group {
|
417 |
+
float: left;
|
418 |
+
}
|
419 |
+
.ui-datepicker-multi .ui-datepicker-group table {
|
420 |
+
width: 95%;
|
421 |
+
margin: 0 auto .4em;
|
422 |
+
}
|
423 |
+
.ui-datepicker-multi-2 .ui-datepicker-group {
|
424 |
+
width: 50%;
|
425 |
+
}
|
426 |
+
.ui-datepicker-multi-3 .ui-datepicker-group {
|
427 |
+
width: 33.3%;
|
428 |
+
}
|
429 |
+
.ui-datepicker-multi-4 .ui-datepicker-group {
|
430 |
+
width: 25%;
|
431 |
+
}
|
432 |
+
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
|
433 |
+
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
|
434 |
+
border-left-width: 0;
|
435 |
+
}
|
436 |
+
.ui-datepicker-multi .ui-datepicker-buttonpane {
|
437 |
+
clear: left;
|
438 |
+
}
|
439 |
+
.ui-datepicker-row-break {
|
440 |
+
clear: both;
|
441 |
+
width: 100%;
|
442 |
+
font-size: 0;
|
443 |
+
}
|
444 |
+
|
445 |
+
/* RTL support */
|
446 |
+
.ui-datepicker-rtl {
|
447 |
+
direction: rtl;
|
448 |
+
}
|
449 |
+
.ui-datepicker-rtl .ui-datepicker-prev {
|
450 |
+
right: 2px;
|
451 |
+
left: auto;
|
452 |
+
}
|
453 |
+
.ui-datepicker-rtl .ui-datepicker-next {
|
454 |
+
left: 2px;
|
455 |
+
right: auto;
|
456 |
+
}
|
457 |
+
.ui-datepicker-rtl .ui-datepicker-prev:hover {
|
458 |
+
right: 1px;
|
459 |
+
left: auto;
|
460 |
+
}
|
461 |
+
.ui-datepicker-rtl .ui-datepicker-next:hover {
|
462 |
+
left: 1px;
|
463 |
+
right: auto;
|
464 |
+
}
|
465 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane {
|
466 |
+
clear: right;
|
467 |
+
}
|
468 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
|
469 |
+
float: left;
|
470 |
+
}
|
471 |
+
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
|
472 |
+
.ui-datepicker-rtl .ui-datepicker-group {
|
473 |
+
float: right;
|
474 |
+
}
|
475 |
+
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
|
476 |
+
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
|
477 |
+
border-right-width: 0;
|
478 |
+
border-left-width: 1px;
|
479 |
+
}
|
480 |
+
|
481 |
+
/* Icons */
|
482 |
+
.ui-datepicker .ui-icon {
|
483 |
+
display: block;
|
484 |
+
text-indent: -99999px;
|
485 |
+
overflow: hidden;
|
486 |
+
background-repeat: no-repeat;
|
487 |
+
left: .5em;
|
488 |
+
top: .3em;
|
489 |
+
}
|
490 |
+
.ui-dialog {
|
491 |
+
position: absolute;
|
492 |
+
top: 0;
|
493 |
+
left: 0;
|
494 |
+
padding: .2em;
|
495 |
+
outline: 0;
|
496 |
+
}
|
497 |
+
.ui-dialog .ui-dialog-titlebar {
|
498 |
+
padding: .4em 1em;
|
499 |
+
position: relative;
|
500 |
+
}
|
501 |
+
.ui-dialog .ui-dialog-title {
|
502 |
+
float: left;
|
503 |
+
margin: .1em 0;
|
504 |
+
white-space: nowrap;
|
505 |
+
width: 90%;
|
506 |
+
overflow: hidden;
|
507 |
+
text-overflow: ellipsis;
|
508 |
+
}
|
509 |
+
.ui-dialog .ui-dialog-titlebar-close {
|
510 |
+
position: absolute;
|
511 |
+
right: .3em;
|
512 |
+
top: 50%;
|
513 |
+
width: 20px;
|
514 |
+
margin: -10px 0 0 0;
|
515 |
+
padding: 1px;
|
516 |
+
height: 20px;
|
517 |
+
}
|
518 |
+
.ui-dialog .ui-dialog-content {
|
519 |
+
position: relative;
|
520 |
+
border: 0;
|
521 |
+
padding: .5em 1em;
|
522 |
+
background: none;
|
523 |
+
overflow: auto;
|
524 |
+
}
|
525 |
+
.ui-dialog .ui-dialog-buttonpane {
|
526 |
+
text-align: left;
|
527 |
+
border-width: 1px 0 0 0;
|
528 |
+
background-image: none;
|
529 |
+
margin-top: .5em;
|
530 |
+
padding: .3em 1em .5em .4em;
|
531 |
+
}
|
532 |
+
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
|
533 |
+
float: right;
|
534 |
+
}
|
535 |
+
.ui-dialog .ui-dialog-buttonpane button {
|
536 |
+
margin: .5em .4em .5em 0;
|
537 |
+
cursor: pointer;
|
538 |
+
}
|
539 |
+
.ui-dialog .ui-resizable-n {
|
540 |
+
height: 2px;
|
541 |
+
top: 0;
|
542 |
+
}
|
543 |
+
.ui-dialog .ui-resizable-e {
|
544 |
+
width: 2px;
|
545 |
+
right: 0;
|
546 |
+
}
|
547 |
+
.ui-dialog .ui-resizable-s {
|
548 |
+
height: 2px;
|
549 |
+
bottom: 0;
|
550 |
+
}
|
551 |
+
.ui-dialog .ui-resizable-w {
|
552 |
+
width: 2px;
|
553 |
+
left: 0;
|
554 |
+
}
|
555 |
+
.ui-dialog .ui-resizable-se,
|
556 |
+
.ui-dialog .ui-resizable-sw,
|
557 |
+
.ui-dialog .ui-resizable-ne,
|
558 |
+
.ui-dialog .ui-resizable-nw {
|
559 |
+
width: 7px;
|
560 |
+
height: 7px;
|
561 |
+
}
|
562 |
+
.ui-dialog .ui-resizable-se {
|
563 |
+
right: 0;
|
564 |
+
bottom: 0;
|
565 |
+
}
|
566 |
+
.ui-dialog .ui-resizable-sw {
|
567 |
+
left: 0;
|
568 |
+
bottom: 0;
|
569 |
+
}
|
570 |
+
.ui-dialog .ui-resizable-ne {
|
571 |
+
right: 0;
|
572 |
+
top: 0;
|
573 |
+
}
|
574 |
+
.ui-dialog .ui-resizable-nw {
|
575 |
+
left: 0;
|
576 |
+
top: 0;
|
577 |
+
}
|
578 |
+
.ui-draggable .ui-dialog-titlebar {
|
579 |
+
cursor: move;
|
580 |
+
}
|
581 |
+
.ui-draggable-handle {
|
582 |
+
-ms-touch-action: none;
|
583 |
+
touch-action: none;
|
584 |
+
}
|
585 |
+
.ui-resizable {
|
586 |
+
position: relative;
|
587 |
+
}
|
588 |
+
.ui-resizable-handle {
|
589 |
+
position: absolute;
|
590 |
+
font-size: 0.1px;
|
591 |
+
display: block;
|
592 |
+
-ms-touch-action: none;
|
593 |
+
touch-action: none;
|
594 |
+
}
|
595 |
+
.ui-resizable-disabled .ui-resizable-handle,
|
596 |
+
.ui-resizable-autohide .ui-resizable-handle {
|
597 |
+
display: none;
|
598 |
+
}
|
599 |
+
.ui-resizable-n {
|
600 |
+
cursor: n-resize;
|
601 |
+
height: 7px;
|
602 |
+
width: 100%;
|
603 |
+
top: -5px;
|
604 |
+
left: 0;
|
605 |
+
}
|
606 |
+
.ui-resizable-s {
|
607 |
+
cursor: s-resize;
|
608 |
+
height: 7px;
|
609 |
+
width: 100%;
|
610 |
+
bottom: -5px;
|
611 |
+
left: 0;
|
612 |
+
}
|
613 |
+
.ui-resizable-e {
|
614 |
+
cursor: e-resize;
|
615 |
+
width: 7px;
|
616 |
+
right: -5px;
|
617 |
+
top: 0;
|
618 |
+
height: 100%;
|
619 |
+
}
|
620 |
+
.ui-resizable-w {
|
621 |
+
cursor: w-resize;
|
622 |
+
width: 7px;
|
623 |
+
left: -5px;
|
624 |
+
top: 0;
|
625 |
+
height: 100%;
|
626 |
+
}
|
627 |
+
.ui-resizable-se {
|
628 |
+
cursor: se-resize;
|
629 |
+
width: 12px;
|
630 |
+
height: 12px;
|
631 |
+
right: 1px;
|
632 |
+
bottom: 1px;
|
633 |
+
}
|
634 |
+
.ui-resizable-sw {
|
635 |
+
cursor: sw-resize;
|
636 |
+
width: 9px;
|
637 |
+
height: 9px;
|
638 |
+
left: -5px;
|
639 |
+
bottom: -5px;
|
640 |
+
}
|
641 |
+
.ui-resizable-nw {
|
642 |
+
cursor: nw-resize;
|
643 |
+
width: 9px;
|
644 |
+
height: 9px;
|
645 |
+
left: -5px;
|
646 |
+
top: -5px;
|
647 |
+
}
|
648 |
+
.ui-resizable-ne {
|
649 |
+
cursor: ne-resize;
|
650 |
+
width: 9px;
|
651 |
+
height: 9px;
|
652 |
+
right: -5px;
|
653 |
+
top: -5px;
|
654 |
+
}
|
655 |
+
.ui-progressbar {
|
656 |
+
height: 2em;
|
657 |
+
text-align: left;
|
658 |
+
overflow: hidden;
|
659 |
+
}
|
660 |
+
.ui-progressbar .ui-progressbar-value {
|
661 |
+
margin: -1px;
|
662 |
+
height: 100%;
|
663 |
+
}
|
664 |
+
.ui-progressbar .ui-progressbar-overlay {
|
665 |
+
background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
|
666 |
+
height: 100%;
|
667 |
+
filter: alpha(opacity=25); /* support: IE8 */
|
668 |
+
opacity: 0.25;
|
669 |
+
}
|
670 |
+
.ui-progressbar-indeterminate .ui-progressbar-value {
|
671 |
+
background-image: none;
|
672 |
+
}
|
673 |
+
.ui-selectable {
|
674 |
+
-ms-touch-action: none;
|
675 |
+
touch-action: none;
|
676 |
+
}
|
677 |
+
.ui-selectable-helper {
|
678 |
+
position: absolute;
|
679 |
+
z-index: 100;
|
680 |
+
border: 1px dotted black;
|
681 |
+
}
|
682 |
+
.ui-selectmenu-menu {
|
683 |
+
padding: 0;
|
684 |
+
margin: 0;
|
685 |
+
position: absolute;
|
686 |
+
top: 0;
|
687 |
+
left: 0;
|
688 |
+
display: none;
|
689 |
+
}
|
690 |
+
.ui-selectmenu-menu .ui-menu {
|
691 |
+
overflow: auto;
|
692 |
+
overflow-x: hidden;
|
693 |
+
padding-bottom: 1px;
|
694 |
+
}
|
695 |
+
.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
|
696 |
+
font-size: 1em;
|
697 |
+
font-weight: bold;
|
698 |
+
line-height: 1.5;
|
699 |
+
padding: 2px 0.4em;
|
700 |
+
margin: 0.5em 0 0 0;
|
701 |
+
height: auto;
|
702 |
+
border: 0;
|
703 |
+
}
|
704 |
+
.ui-selectmenu-open {
|
705 |
+
display: block;
|
706 |
+
}
|
707 |
+
.ui-selectmenu-text {
|
708 |
+
display: block;
|
709 |
+
margin-right: 20px;
|
710 |
+
overflow: hidden;
|
711 |
+
text-overflow: ellipsis;
|
712 |
+
}
|
713 |
+
.ui-selectmenu-button.ui-button {
|
714 |
+
text-align: left;
|
715 |
+
white-space: nowrap;
|
716 |
+
width: 14em;
|
717 |
+
}
|
718 |
+
.ui-selectmenu-icon.ui-icon {
|
719 |
+
float: right;
|
720 |
+
margin-top: 0;
|
721 |
+
}
|
722 |
+
.ui-slider {
|
723 |
+
position: relative;
|
724 |
+
text-align: left;
|
725 |
+
}
|
726 |
+
.ui-slider .ui-slider-handle {
|
727 |
+
position: absolute;
|
728 |
+
z-index: 2;
|
729 |
+
width: 1.2em;
|
730 |
+
height: 1.2em;
|
731 |
+
cursor: default;
|
732 |
+
-ms-touch-action: none;
|
733 |
+
touch-action: none;
|
734 |
+
}
|
735 |
+
.ui-slider .ui-slider-range {
|
736 |
+
position: absolute;
|
737 |
+
z-index: 1;
|
738 |
+
font-size: .7em;
|
739 |
+
display: block;
|
740 |
+
border: 0;
|
741 |
+
background-position: 0 0;
|
742 |
+
}
|
743 |
+
|
744 |
+
/* support: IE8 - See #6727 */
|
745 |
+
.ui-slider.ui-state-disabled .ui-slider-handle,
|
746 |
+
.ui-slider.ui-state-disabled .ui-slider-range {
|
747 |
+
filter: inherit;
|
748 |
+
}
|
749 |
+
|
750 |
+
.ui-slider-horizontal {
|
751 |
+
height: .8em;
|
752 |
+
}
|
753 |
+
.ui-slider-horizontal .ui-slider-handle {
|
754 |
+
top: -.3em;
|
755 |
+
margin-left: -.6em;
|
756 |
+
}
|
757 |
+
.ui-slider-horizontal .ui-slider-range {
|
758 |
+
top: 0;
|
759 |
+
height: 100%;
|
760 |
+
}
|
761 |
+
.ui-slider-horizontal .ui-slider-range-min {
|
762 |
+
left: 0;
|
763 |
+
}
|
764 |
+
.ui-slider-horizontal .ui-slider-range-max {
|
765 |
+
right: 0;
|
766 |
+
}
|
767 |
+
|
768 |
+
.ui-slider-vertical {
|
769 |
+
width: .8em;
|
770 |
+
height: 100px;
|
771 |
+
}
|
772 |
+
.ui-slider-vertical .ui-slider-handle {
|
773 |
+
left: -.3em;
|
774 |
+
margin-left: 0;
|
775 |
+
margin-bottom: -.6em;
|
776 |
+
}
|
777 |
+
.ui-slider-vertical .ui-slider-range {
|
778 |
+
left: 0;
|
779 |
+
width: 100%;
|
780 |
+
}
|
781 |
+
.ui-slider-vertical .ui-slider-range-min {
|
782 |
+
bottom: 0;
|
783 |
+
}
|
784 |
+
.ui-slider-vertical .ui-slider-range-max {
|
785 |
+
top: 0;
|
786 |
+
}
|
787 |
+
.ui-sortable-handle {
|
788 |
+
-ms-touch-action: none;
|
789 |
+
touch-action: none;
|
790 |
+
}
|
791 |
+
.ui-spinner {
|
792 |
+
position: relative;
|
793 |
+
display: inline-block;
|
794 |
+
overflow: hidden;
|
795 |
+
padding: 0;
|
796 |
+
vertical-align: middle;
|
797 |
+
}
|
798 |
+
.ui-spinner-input {
|
799 |
+
border: none;
|
800 |
+
background: none;
|
801 |
+
color: inherit;
|
802 |
+
padding: .222em 0;
|
803 |
+
margin: .2em 0;
|
804 |
+
vertical-align: middle;
|
805 |
+
margin-left: .4em;
|
806 |
+
margin-right: 2em;
|
807 |
+
}
|
808 |
+
.ui-spinner-button {
|
809 |
+
width: 1.6em;
|
810 |
+
height: 50%;
|
811 |
+
font-size: .5em;
|
812 |
+
padding: 0;
|
813 |
+
margin: 0;
|
814 |
+
text-align: center;
|
815 |
+
position: absolute;
|
816 |
+
cursor: default;
|
817 |
+
display: block;
|
818 |
+
overflow: hidden;
|
819 |
+
right: 0;
|
820 |
+
}
|
821 |
+
/* more specificity required here to override default borders */
|
822 |
+
.ui-spinner a.ui-spinner-button {
|
823 |
+
border-top-style: none;
|
824 |
+
border-bottom-style: none;
|
825 |
+
border-right-style: none;
|
826 |
+
}
|
827 |
+
.ui-spinner-up {
|
828 |
+
top: 0;
|
829 |
+
}
|
830 |
+
.ui-spinner-down {
|
831 |
+
bottom: 0;
|
832 |
+
}
|
833 |
+
.ui-tabs {
|
834 |
+
position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
|
835 |
+
padding: .2em;
|
836 |
+
}
|
837 |
+
.ui-tabs .ui-tabs-nav {
|
838 |
+
margin: 0;
|
839 |
+
padding: .2em .2em 0;
|
840 |
+
}
|
841 |
+
.ui-tabs .ui-tabs-nav li {
|
842 |
+
list-style: none;
|
843 |
+
float: left;
|
844 |
+
position: relative;
|
845 |
+
top: 0;
|
846 |
+
margin: 1px .2em 0 0;
|
847 |
+
border-bottom-width: 0;
|
848 |
+
padding: 0;
|
849 |
+
white-space: nowrap;
|
850 |
+
}
|
851 |
+
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
|
852 |
+
float: left;
|
853 |
+
padding: .5em 1em;
|
854 |
+
text-decoration: none;
|
855 |
+
}
|
856 |
+
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
|
857 |
+
margin-bottom: -1px;
|
858 |
+
padding-bottom: 1px;
|
859 |
+
}
|
860 |
+
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
|
861 |
+
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
|
862 |
+
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
|
863 |
+
cursor: text;
|
864 |
+
}
|
865 |
+
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
|
866 |
+
cursor: pointer;
|
867 |
+
}
|
868 |
+
.ui-tabs .ui-tabs-panel {
|
869 |
+
display: block;
|
870 |
+
border-width: 0;
|
871 |
+
padding: 1em 1.4em;
|
872 |
+
background: none;
|
873 |
+
}
|
874 |
+
.ui-tooltip {
|
875 |
+
padding: 8px;
|
876 |
+
position: absolute;
|
877 |
+
z-index: 9999;
|
878 |
+
max-width: 300px;
|
879 |
+
}
|
880 |
+
body .ui-tooltip {
|
881 |
+
border-width: 2px;
|
882 |
+
}
|
883 |
+
/* Component containers
|
884 |
+
----------------------------------*/
|
885 |
+
.ui-widget {
|
886 |
+
font-family: Arial,Helvetica,sans-serif;
|
887 |
+
font-size: 1em;
|
888 |
+
}
|
889 |
+
.ui-widget .ui-widget {
|
890 |
+
font-size: 1em;
|
891 |
+
}
|
892 |
+
.ui-widget input,
|
893 |
+
.ui-widget select,
|
894 |
+
.ui-widget textarea,
|
895 |
+
.ui-widget button {
|
896 |
+
font-family: Arial,Helvetica,sans-serif;
|
897 |
+
font-size: 1em;
|
898 |
+
}
|
899 |
+
.ui-widget.ui-widget-content {
|
900 |
+
border: 1px solid #c5c5c5;
|
901 |
+
}
|
902 |
+
.ui-widget-content {
|
903 |
+
border: 1px solid #dddddd;
|
904 |
+
background: #ffffff;
|
905 |
+
color: #333333;
|
906 |
+
}
|
907 |
+
.ui-widget-content a {
|
908 |
+
color: #333333;
|
909 |
+
}
|
910 |
+
.ui-widget-header {
|
911 |
+
border: 1px solid #dddddd;
|
912 |
+
background: #e9e9e9;
|
913 |
+
color: #333333;
|
914 |
+
font-weight: bold;
|
915 |
+
}
|
916 |
+
.ui-widget-header a {
|
917 |
+
color: #333333;
|
918 |
+
}
|
919 |
+
|
920 |
+
/* Interaction states
|
921 |
+
----------------------------------*/
|
922 |
+
.ui-state-default,
|
923 |
+
.ui-widget-content .ui-state-default,
|
924 |
+
.ui-widget-header .ui-state-default,
|
925 |
+
.ui-button,
|
926 |
+
|
927 |
+
/* We use html here because we need a greater specificity to make sure disabled
|
928 |
+
works properly when clicked or hovered */
|
929 |
+
html .ui-button.ui-state-disabled:hover,
|
930 |
+
html .ui-button.ui-state-disabled:active {
|
931 |
+
border: 1px solid #c5c5c5;
|
932 |
+
background: #f6f6f6;
|
933 |
+
font-weight: normal;
|
934 |
+
color: #454545;
|
935 |
+
}
|
936 |
+
.ui-state-default a,
|
937 |
+
.ui-state-default a:link,
|
938 |
+
.ui-state-default a:visited,
|
939 |
+
a.ui-button,
|
940 |
+
a:link.ui-button,
|
941 |
+
a:visited.ui-button,
|
942 |
+
.ui-button {
|
943 |
+
color: #454545;
|
944 |
+
text-decoration: none;
|
945 |
+
}
|
946 |
+
.ui-state-hover,
|
947 |
+
.ui-widget-content .ui-state-hover,
|
948 |
+
.ui-widget-header .ui-state-hover,
|
949 |
+
.ui-state-focus,
|
950 |
+
.ui-widget-content .ui-state-focus,
|
951 |
+
.ui-widget-header .ui-state-focus,
|
952 |
+
.ui-button:hover,
|
953 |
+
.ui-button:focus {
|
954 |
+
border: 1px solid #cccccc;
|
955 |
+
background: #ededed;
|
956 |
+
font-weight: normal;
|
957 |
+
color: #2b2b2b;
|
958 |
+
}
|
959 |
+
.ui-state-hover a,
|
960 |
+
.ui-state-hover a:hover,
|
961 |
+
.ui-state-hover a:link,
|
962 |
+
.ui-state-hover a:visited,
|
963 |
+
.ui-state-focus a,
|
964 |
+
.ui-state-focus a:hover,
|
965 |
+
.ui-state-focus a:link,
|
966 |
+
.ui-state-focus a:visited,
|
967 |
+
a.ui-button:hover,
|
968 |
+
a.ui-button:focus {
|
969 |
+
color: #2b2b2b;
|
970 |
+
text-decoration: none;
|
971 |
+
}
|
972 |
+
|
973 |
+
.ui-visual-focus {
|
974 |
+
box-shadow: 0 0 3px 1px rgb(94, 158, 214);
|
975 |
+
}
|
976 |
+
.ui-state-active,
|
977 |
+
.ui-widget-content .ui-state-active,
|
978 |
+
.ui-widget-header .ui-state-active,
|
979 |
+
a.ui-button:active,
|
980 |
+
.ui-button:active,
|
981 |
+
.ui-button.ui-state-active:hover {
|
982 |
+
border: 1px solid #003eff;
|
983 |
+
background: #007fff;
|
984 |
+
font-weight: normal;
|
985 |
+
color: #ffffff;
|
986 |
+
}
|
987 |
+
.ui-icon-background,
|
988 |
+
.ui-state-active .ui-icon-background {
|
989 |
+
border: #003eff;
|
990 |
+
background-color: #ffffff;
|
991 |
+
}
|
992 |
+
.ui-state-active a,
|
993 |
+
.ui-state-active a:link,
|
994 |
+
.ui-state-active a:visited {
|
995 |
+
color: #ffffff;
|
996 |
+
text-decoration: none;
|
997 |
+
}
|
998 |
+
|
999 |
+
/* Interaction Cues
|
1000 |
+
----------------------------------*/
|
1001 |
+
.ui-state-highlight,
|
1002 |
+
.ui-widget-content .ui-state-highlight,
|
1003 |
+
.ui-widget-header .ui-state-highlight {
|
1004 |
+
border: 1px solid #dad55e;
|
1005 |
+
background: #fffa90;
|
1006 |
+
color: #777620;
|
1007 |
+
}
|
1008 |
+
.ui-state-checked {
|
1009 |
+
border: 1px solid #dad55e;
|
1010 |
+
background: #fffa90;
|
1011 |
+
}
|
1012 |
+
.ui-state-highlight a,
|
1013 |
+
.ui-widget-content .ui-state-highlight a,
|
1014 |
+
.ui-widget-header .ui-state-highlight a {
|
1015 |
+
color: #777620;
|
1016 |
+
}
|
1017 |
+
.ui-state-error,
|
1018 |
+
.ui-widget-content .ui-state-error,
|
1019 |
+
.ui-widget-header .ui-state-error {
|
1020 |
+
border: 1px solid #f1a899;
|
1021 |
+
background: #fddfdf;
|
1022 |
+
color: #5f3f3f;
|
1023 |
+
}
|
1024 |
+
.ui-state-error a,
|
1025 |
+
.ui-widget-content .ui-state-error a,
|
1026 |
+
.ui-widget-header .ui-state-error a {
|
1027 |
+
color: #5f3f3f;
|
1028 |
+
}
|
1029 |
+
.ui-state-error-text,
|
1030 |
+
.ui-widget-content .ui-state-error-text,
|
1031 |
+
.ui-widget-header .ui-state-error-text {
|
1032 |
+
color: #5f3f3f;
|
1033 |
+
}
|
1034 |
+
.ui-priority-primary,
|
1035 |
+
.ui-widget-content .ui-priority-primary,
|
1036 |
+
.ui-widget-header .ui-priority-primary {
|
1037 |
+
font-weight: bold;
|
1038 |
+
}
|
1039 |
+
.ui-priority-secondary,
|
1040 |
+
.ui-widget-content .ui-priority-secondary,
|
1041 |
+
.ui-widget-header .ui-priority-secondary {
|
1042 |
+
opacity: .7;
|
1043 |
+
filter:Alpha(Opacity=70); /* support: IE8 */
|
1044 |
+
font-weight: normal;
|
1045 |
+
}
|
1046 |
+
.ui-state-disabled,
|
1047 |
+
.ui-widget-content .ui-state-disabled,
|
1048 |
+
.ui-widget-header .ui-state-disabled {
|
1049 |
+
opacity: .35;
|
1050 |
+
filter:Alpha(Opacity=35); /* support: IE8 */
|
1051 |
+
background-image: none;
|
1052 |
+
}
|
1053 |
+
.ui-state-disabled .ui-icon {
|
1054 |
+
filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */
|
1055 |
+
}
|
1056 |
+
|
1057 |
+
/* Icons
|
1058 |
+
----------------------------------*/
|
1059 |
+
|
1060 |
+
/* states and images */
|
1061 |
+
.ui-icon {
|
1062 |
+
width: 16px;
|
1063 |
+
height: 16px;
|
1064 |
+
}
|
1065 |
+
.ui-icon,
|
1066 |
+
.ui-widget-content .ui-icon {
|
1067 |
+
background-image: url("images/ui-icons_444444_256x240.png");
|
1068 |
+
}
|
1069 |
+
.ui-widget-header .ui-icon {
|
1070 |
+
background-image: url("images/ui-icons_444444_256x240.png");
|
1071 |
+
}
|
1072 |
+
.ui-state-hover .ui-icon,
|
1073 |
+
.ui-state-focus .ui-icon,
|
1074 |
+
.ui-button:hover .ui-icon,
|
1075 |
+
.ui-button:focus .ui-icon {
|
1076 |
+
background-image: url("images/ui-icons_555555_256x240.png");
|
1077 |
+
}
|
1078 |
+
.ui-state-active .ui-icon,
|
1079 |
+
.ui-button:active .ui-icon {
|
1080 |
+
background-image: url("images/ui-icons_ffffff_256x240.png");
|
1081 |
+
}
|
1082 |
+
.ui-state-highlight .ui-icon,
|
1083 |
+
.ui-button .ui-state-highlight.ui-icon {
|
1084 |
+
background-image: url("images/ui-icons_777620_256x240.png");
|
1085 |
+
}
|
1086 |
+
.ui-state-error .ui-icon,
|
1087 |
+
.ui-state-error-text .ui-icon {
|
1088 |
+
background-image: url("images/ui-icons_cc0000_256x240.png");
|
1089 |
+
}
|
1090 |
+
.ui-button .ui-icon {
|
1091 |
+
background-image: url("images/ui-icons_777777_256x240.png");
|
1092 |
+
}
|
1093 |
+
|
1094 |
+
/* positioning */
|
1095 |
+
.ui-icon-blank { background-position: 16px 16px; }
|
1096 |
+
.ui-icon-caret-1-n { background-position: 0 0; }
|
1097 |
+
.ui-icon-caret-1-ne { background-position: -16px 0; }
|
1098 |
+
.ui-icon-caret-1-e { background-position: -32px 0; }
|
1099 |
+
.ui-icon-caret-1-se { background-position: -48px 0; }
|
1100 |
+
.ui-icon-caret-1-s { background-position: -65px 0; }
|
1101 |
+
.ui-icon-caret-1-sw { background-position: -80px 0; }
|
1102 |
+
.ui-icon-caret-1-w { background-position: -96px 0; }
|
1103 |
+
.ui-icon-caret-1-nw { background-position: -112px 0; }
|
1104 |
+
.ui-icon-caret-2-n-s { background-position: -128px 0; }
|
1105 |
+
.ui-icon-caret-2-e-w { background-position: -144px 0; }
|
1106 |
+
.ui-icon-triangle-1-n { background-position: 0 -16px; }
|
1107 |
+
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
|
1108 |
+
.ui-icon-triangle-1-e { background-position: -32px -16px; }
|
1109 |
+
.ui-icon-triangle-1-se { background-position: -48px -16px; }
|
1110 |
+
.ui-icon-triangle-1-s { background-position: -65px -16px; }
|
1111 |
+
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
|
1112 |
+
.ui-icon-triangle-1-w { background-position: -96px -16px; }
|
1113 |
+
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
|
1114 |
+
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
|
1115 |
+
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
|
1116 |
+
.ui-icon-arrow-1-n { background-position: 0 -32px; }
|
1117 |
+
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
|
1118 |
+
.ui-icon-arrow-1-e { background-position: -32px -32px; }
|
1119 |
+
.ui-icon-arrow-1-se { background-position: -48px -32px; }
|
1120 |
+
.ui-icon-arrow-1-s { background-position: -65px -32px; }
|
1121 |
+
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
|
1122 |
+
.ui-icon-arrow-1-w { background-position: -96px -32px; }
|
1123 |
+
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
|
1124 |
+
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
|
1125 |
+
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
|
1126 |
+
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
|
1127 |
+
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
|
1128 |
+
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
|
1129 |
+
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
|
1130 |
+
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
|
1131 |
+
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
|
1132 |
+
.ui-icon-arrowthick-1-n { background-position: 1px -48px; }
|
1133 |
+
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
|
1134 |
+
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
|
1135 |
+
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
|
1136 |
+
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
|
1137 |
+
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
|
1138 |
+
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
|
1139 |
+
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
|
1140 |
+
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
|
1141 |
+
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
|
1142 |
+
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
|
1143 |
+
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
|
1144 |
+
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
|
1145 |
+
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
|
1146 |
+
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
|
1147 |
+
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
|
1148 |
+
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
|
1149 |
+
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
|
1150 |
+
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
|
1151 |
+
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
|
1152 |
+
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
|
1153 |
+
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
|
1154 |
+
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
|
1155 |
+
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
|
1156 |
+
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
|
1157 |
+
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
|
1158 |
+
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
|
1159 |
+
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
|
1160 |
+
.ui-icon-arrow-4 { background-position: 0 -80px; }
|
1161 |
+
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
|
1162 |
+
.ui-icon-extlink { background-position: -32px -80px; }
|
1163 |
+
.ui-icon-newwin { background-position: -48px -80px; }
|
1164 |
+
.ui-icon-refresh { background-position: -64px -80px; }
|
1165 |
+
.ui-icon-shuffle { background-position: -80px -80px; }
|
1166 |
+
.ui-icon-transfer-e-w { background-position: -96px -80px; }
|
1167 |
+
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
|
1168 |
+
.ui-icon-folder-collapsed { background-position: 0 -96px; }
|
1169 |
+
.ui-icon-folder-open { background-position: -16px -96px; }
|
1170 |
+
.ui-icon-document { background-position: -32px -96px; }
|
1171 |
+
.ui-icon-document-b { background-position: -48px -96px; }
|
1172 |
+
.ui-icon-note { background-position: -64px -96px; }
|
1173 |
+
.ui-icon-mail-closed { background-position: -80px -96px; }
|
1174 |
+
.ui-icon-mail-open { background-position: -96px -96px; }
|
1175 |
+
.ui-icon-suitcase { background-position: -112px -96px; }
|
1176 |
+
.ui-icon-comment { background-position: -128px -96px; }
|
1177 |
+
.ui-icon-person { background-position: -144px -96px; }
|
1178 |
+
.ui-icon-print { background-position: -160px -96px; }
|
1179 |
+
.ui-icon-trash { background-position: -176px -96px; }
|
1180 |
+
.ui-icon-locked { background-position: -192px -96px; }
|
1181 |
+
.ui-icon-unlocked { background-position: -208px -96px; }
|
1182 |
+
.ui-icon-bookmark { background-position: -224px -96px; }
|
1183 |
+
.ui-icon-tag { background-position: -240px -96px; }
|
1184 |
+
.ui-icon-home { background-position: 0 -112px; }
|
1185 |
+
.ui-icon-flag { background-position: -16px -112px; }
|
1186 |
+
.ui-icon-calendar { background-position: -32px -112px; }
|
1187 |
+
.ui-icon-cart { background-position: -48px -112px; }
|
1188 |
+
.ui-icon-pencil { background-position: -64px -112px; }
|
1189 |
+
.ui-icon-clock { background-position: -80px -112px; }
|
1190 |
+
.ui-icon-disk { background-position: -96px -112px; }
|
1191 |
+
.ui-icon-calculator { background-position: -112px -112px; }
|
1192 |
+
.ui-icon-zoomin { background-position: -128px -112px; }
|
1193 |
+
.ui-icon-zoomout { background-position: -144px -112px; }
|
1194 |
+
.ui-icon-search { background-position: -160px -112px; }
|
1195 |
+
.ui-icon-wrench { background-position: -176px -112px; }
|
1196 |
+
.ui-icon-gear { background-position: -192px -112px; }
|
1197 |
+
.ui-icon-heart { background-position: -208px -112px; }
|
1198 |
+
.ui-icon-star { background-position: -224px -112px; }
|
1199 |
+
.ui-icon-link { background-position: -240px -112px; }
|
1200 |
+
.ui-icon-cancel { background-position: 0 -128px; }
|
1201 |
+
.ui-icon-plus { background-position: -16px -128px; }
|
1202 |
+
.ui-icon-plusthick { background-position: -32px -128px; }
|
1203 |
+
.ui-icon-minus { background-position: -48px -128px; }
|
1204 |
+
.ui-icon-minusthick { background-position: -64px -128px; }
|
1205 |
+
.ui-icon-close { background-position: -80px -128px; }
|
1206 |
+
.ui-icon-closethick { background-position: -96px -128px; }
|
1207 |
+
.ui-icon-key { background-position: -112px -128px; }
|
1208 |
+
.ui-icon-lightbulb { background-position: -128px -128px; }
|
1209 |
+
.ui-icon-scissors { background-position: -144px -128px; }
|
1210 |
+
.ui-icon-clipboard { background-position: -160px -128px; }
|
1211 |
+
.ui-icon-copy { background-position: -176px -128px; }
|
1212 |
+
.ui-icon-contact { background-position: -192px -128px; }
|
1213 |
+
.ui-icon-image { background-position: -208px -128px; }
|
1214 |
+
.ui-icon-video { background-position: -224px -128px; }
|
1215 |
+
.ui-icon-script { background-position: -240px -128px; }
|
1216 |
+
.ui-icon-alert { background-position: 0 -144px; }
|
1217 |
+
.ui-icon-info { background-position: -16px -144px; }
|
1218 |
+
.ui-icon-notice { background-position: -32px -144px; }
|
1219 |
+
.ui-icon-help { background-position: -48px -144px; }
|
1220 |
+
.ui-icon-check { background-position: -64px -144px; }
|
1221 |
+
.ui-icon-bullet { background-position: -80px -144px; }
|
1222 |
+
.ui-icon-radio-on { background-position: -96px -144px; }
|
1223 |
+
.ui-icon-radio-off { background-position: -112px -144px; }
|
1224 |
+
.ui-icon-pin-w { background-position: -128px -144px; }
|
1225 |
+
.ui-icon-pin-s { background-position: -144px -144px; }
|
1226 |
+
.ui-icon-play { background-position: 0 -160px; }
|
1227 |
+
.ui-icon-pause { background-position: -16px -160px; }
|
1228 |
+
.ui-icon-seek-next { background-position: -32px -160px; }
|
1229 |
+
.ui-icon-seek-prev { background-position: -48px -160px; }
|
1230 |
+
.ui-icon-seek-end { background-position: -64px -160px; }
|
1231 |
+
.ui-icon-seek-start { background-position: -80px -160px; }
|
1232 |
+
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
|
1233 |
+
.ui-icon-seek-first { background-position: -80px -160px; }
|
1234 |
+
.ui-icon-stop { background-position: -96px -160px; }
|
1235 |
+
.ui-icon-eject { background-position: -112px -160px; }
|
1236 |
+
.ui-icon-volume-off { background-position: -128px -160px; }
|
1237 |
+
.ui-icon-volume-on { background-position: -144px -160px; }
|
1238 |
+
.ui-icon-power { background-position: 0 -176px; }
|
1239 |
+
.ui-icon-signal-diag { background-position: -16px -176px; }
|
1240 |
+
.ui-icon-signal { background-position: -32px -176px; }
|
1241 |
+
.ui-icon-battery-0 { background-position: -48px -176px; }
|
1242 |
+
.ui-icon-battery-1 { background-position: -64px -176px; }
|
1243 |
+
.ui-icon-battery-2 { background-position: -80px -176px; }
|
1244 |
+
.ui-icon-battery-3 { background-position: -96px -176px; }
|
1245 |
+
.ui-icon-circle-plus { background-position: 0 -192px; }
|
1246 |
+
.ui-icon-circle-minus { background-position: -16px -192px; }
|
1247 |
+
.ui-icon-circle-close { background-position: -32px -192px; }
|
1248 |
+
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
|
1249 |
+
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
|
1250 |
+
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
|
1251 |
+
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
|
1252 |
+
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
|
1253 |
+
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
|
1254 |
+
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
|
1255 |
+
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
|
1256 |
+
.ui-icon-circle-zoomin { background-position: -176px -192px; }
|
1257 |
+
.ui-icon-circle-zoomout { background-position: -192px -192px; }
|
1258 |
+
.ui-icon-circle-check { background-position: -208px -192px; }
|
1259 |
+
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
|
1260 |
+
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
|
1261 |
+
.ui-icon-circlesmall-close { background-position: -32px -208px; }
|
1262 |
+
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
|
1263 |
+
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
|
1264 |
+
.ui-icon-squaresmall-close { background-position: -80px -208px; }
|
1265 |
+
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
|
1266 |
+
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
|
1267 |
+
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
|
1268 |
+
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
|
1269 |
+
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
|
1270 |
+
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }
|
1271 |
+
|
1272 |
+
|
1273 |
+
/* Misc visuals
|
1274 |
+
----------------------------------*/
|
1275 |
+
|
1276 |
+
/* Corner radius */
|
1277 |
+
.ui-corner-all,
|
1278 |
+
.ui-corner-top,
|
1279 |
+
.ui-corner-left,
|
1280 |
+
.ui-corner-tl {
|
1281 |
+
border-top-left-radius: 3px;
|
1282 |
+
}
|
1283 |
+
.ui-corner-all,
|
1284 |
+
.ui-corner-top,
|
1285 |
+
.ui-corner-right,
|
1286 |
+
.ui-corner-tr {
|
1287 |
+
border-top-right-radius: 3px;
|
1288 |
+
}
|
1289 |
+
.ui-corner-all,
|
1290 |
+
.ui-corner-bottom,
|
1291 |
+
.ui-corner-left,
|
1292 |
+
.ui-corner-bl {
|
1293 |
+
border-bottom-left-radius: 3px;
|
1294 |
+
}
|
1295 |
+
.ui-corner-all,
|
1296 |
+
.ui-corner-bottom,
|
1297 |
+
.ui-corner-right,
|
1298 |
+
.ui-corner-br {
|
1299 |
+
border-bottom-right-radius: 3px;
|
1300 |
+
}
|
1301 |
+
|
1302 |
+
/* Overlays */
|
1303 |
+
.ui-widget-overlay {
|
1304 |
+
background: #aaaaaa;
|
1305 |
+
opacity: .3;
|
1306 |
+
filter: Alpha(Opacity=30); /* support: IE8 */
|
1307 |
+
}
|
1308 |
+
.ui-widget-shadow {
|
1309 |
+
-webkit-box-shadow: 0px 0px 5px #666666;
|
1310 |
+
box-shadow: 0px 0px 5px #666666;
|
1311 |
+
}
|
assets/css/um-fileupload.css
CHANGED
@@ -70,6 +70,7 @@
|
|
70 |
.um-single-fileinfo {
|
71 |
padding: 26px 0 20px 0;
|
72 |
display: inline-block;
|
|
|
73 |
}
|
74 |
|
75 |
.um-single-fileinfo span.icon {
|
70 |
.um-single-fileinfo {
|
71 |
padding: 26px 0 20px 0;
|
72 |
display: inline-block;
|
73 |
+
max-width: 100%;
|
74 |
}
|
75 |
|
76 |
.um-single-fileinfo span.icon {
|
assets/css/um-members-rtl.css
ADDED
@@ -0,0 +1,82 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line label {
|
2 |
+
margin: 0 0 0 10px; }
|
3 |
+
|
4 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type {
|
5 |
+
margin: 0 0 0 10px; }
|
6 |
+
|
7 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a a {
|
8 |
+
margin: 0 0 0 5px; }
|
9 |
+
|
10 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a .um-new-dropdown {
|
11 |
+
right: -12px;
|
12 |
+
left: auto; }
|
13 |
+
|
14 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters .um-member-directory-filters-a a {
|
15 |
+
margin: 0 0 0 5px; }
|
16 |
+
|
17 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-datepicker-filter-type input, .um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-timepicker-filter-type input {
|
18 |
+
margin: 0 0 0 5px; }
|
19 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-datepicker-filter-type input:nth-child(even), .um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-timepicker-filter-type input:nth-child(even) {
|
20 |
+
margin: 0 5px 0 0; }
|
21 |
+
|
22 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-members-filter-tag {
|
23 |
+
margin: 0 0 5px 10px; }
|
24 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-members-filter-tag:first-child {
|
25 |
+
margin-left: 10px; }
|
26 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-members-filter-tag .um-members-filter-remove {
|
27 |
+
margin-left: 0;
|
28 |
+
margin-right: 10px; }
|
29 |
+
|
30 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-members-edit-btn a.um-edit-profile-btn:before {
|
31 |
+
margin-right: 0;
|
32 |
+
margin-left: 8px; }
|
33 |
+
|
34 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-photo {
|
35 |
+
margin: 0 0 0 15px; }
|
36 |
+
|
37 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content {
|
38 |
+
margin: 0 0 0 10px; }
|
39 |
+
|
40 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-actions .um-member-cog .um-new-dropdown {
|
41 |
+
right: auto;
|
42 |
+
left: 0;
|
43 |
+
text-align: right; }
|
44 |
+
|
45 |
+
.um-directory .um-members-pagination-box .um-members-pagi {
|
46 |
+
align-items: center; }
|
47 |
+
.um-directory .um-members-pagination-box .um-members-pagi .pagi.pagi-arrow {
|
48 |
+
transform: rotate(180deg); }
|
49 |
+
|
50 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type {
|
51 |
+
margin: 0 0 0 2px; }
|
52 |
+
|
53 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-new-dropdown {
|
54 |
+
right: auto;
|
55 |
+
left: 0; }
|
56 |
+
|
57 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo {
|
58 |
+
margin: 0 0 0 10px; }
|
59 |
+
|
60 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons {
|
61 |
+
margin: 0 0 0 10px; }
|
62 |
+
|
63 |
+
.um-directory.uimob500 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type {
|
64 |
+
margin: 0 0 0 5px; }
|
65 |
+
|
66 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo {
|
67 |
+
margin: 0 0 0 10px; }
|
68 |
+
|
69 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer {
|
70 |
+
align-items: flex-start; }
|
71 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons {
|
72 |
+
margin: 0 0 0 10px; }
|
73 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons .um-members-list-footer-button-wrapper {
|
74 |
+
margin: 0 0 5px 10px; }
|
75 |
+
|
76 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo {
|
77 |
+
margin: 0 0 0 10px; }
|
78 |
+
|
79 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons {
|
80 |
+
margin: 0 0 0 10px; }
|
81 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons .um-members-list-footer-button-wrapper {
|
82 |
+
margin: 0 0 5px 10px; }
|
assets/css/um-members.css
CHANGED
@@ -1,373 +1,994 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
.um-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
.um-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
.um-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
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 |
-
|
137 |
-
|
138 |
-
|
139 |
-
}
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
}
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
.um-member-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
.um-member.
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
.um-member-
|
196 |
-
|
197 |
-
.um-member-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
.um-member-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
.um-member-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
.um-member-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
}
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
}
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
}
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
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 |
-
.um-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
.um-
|
320 |
-
|
321 |
-
.um-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
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 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
@-webkit-keyframes um-ajax-spinning {
|
2 |
+
0% {
|
3 |
+
-webkit-transform: rotate(0deg);
|
4 |
+
transform: rotate(0deg); }
|
5 |
+
100% {
|
6 |
+
-webkit-transform: rotate(360deg);
|
7 |
+
transform: rotate(360deg); } }
|
8 |
+
|
9 |
+
@-moz-keyframes um-ajax-spinning {
|
10 |
+
0% {
|
11 |
+
-webkit-transform: rotate(0deg);
|
12 |
+
transform: rotate(0deg); }
|
13 |
+
100% {
|
14 |
+
-webkit-transform: rotate(360deg);
|
15 |
+
transform: rotate(360deg); } }
|
16 |
+
|
17 |
+
@-ms-keyframes um-ajax-spinning {
|
18 |
+
0% {
|
19 |
+
-webkit-transform: rotate(0deg);
|
20 |
+
transform: rotate(0deg); }
|
21 |
+
100% {
|
22 |
+
-webkit-transform: rotate(360deg);
|
23 |
+
transform: rotate(360deg); } }
|
24 |
+
|
25 |
+
@keyframes um-ajax-spinning {
|
26 |
+
0% {
|
27 |
+
-webkit-transform: rotate(0deg);
|
28 |
+
transform: rotate(0deg); }
|
29 |
+
100% {
|
30 |
+
-webkit-transform: rotate(360deg);
|
31 |
+
transform: rotate(360deg); } }
|
32 |
+
|
33 |
+
.um-new-dropdown {
|
34 |
+
font-size: 16px;
|
35 |
+
margin: 0;
|
36 |
+
position: absolute;
|
37 |
+
height: auto;
|
38 |
+
background: #fff;
|
39 |
+
z-index: 10;
|
40 |
+
display: none;
|
41 |
+
border: 1px solid #ddd;
|
42 |
+
box-shadow: 0 7px 14px 0 rgba(50, 50, 93, 0.1), 0 3px 6px 0 rgba(0, 0, 0, 0.07);
|
43 |
+
-webkit-box-shadow: 0 7px 14px 0 rgba(50, 50, 93, 0.1), 0 3px 6px 0 rgba(0, 0, 0, 0.07);
|
44 |
+
box-sizing: border-box;
|
45 |
+
-moz-box-sizing: border-box;
|
46 |
+
-webkit-box-sizing: border-box;
|
47 |
+
border-radius: 5px 5px 5px 5px;
|
48 |
+
-moz-border-radius: 5px 5px 5px 5px;
|
49 |
+
-webkit-border-radius: 5px 5px 5px 5px; }
|
50 |
+
.um-new-dropdown ul {
|
51 |
+
margin: 0;
|
52 |
+
padding: 0; }
|
53 |
+
.um-new-dropdown ul li {
|
54 |
+
list-style-type: none;
|
55 |
+
padding: 0;
|
56 |
+
margin: 0; }
|
57 |
+
.um-new-dropdown ul li a {
|
58 |
+
display: block;
|
59 |
+
padding: 8px 12px;
|
60 |
+
line-height: 1; }
|
61 |
+
|
62 |
+
.um-new-dropdown-arr {
|
63 |
+
position: absolute;
|
64 |
+
font-size: 24px;
|
65 |
+
width: 24px;
|
66 |
+
height: 24px;
|
67 |
+
overflow: hidden;
|
68 |
+
z-index: 15;
|
69 |
+
color: #eee; }
|
70 |
+
.um-new-dropdown-arr * {
|
71 |
+
display: block;
|
72 |
+
width: 24px;
|
73 |
+
height: 24px;
|
74 |
+
vertical-align: bottom;
|
75 |
+
overflow: hidden;
|
76 |
+
line-height: 24px; }
|
77 |
+
|
78 |
+
body #content .um-directory a {
|
79 |
+
text-decoration: none;
|
80 |
+
border-bottom: none;
|
81 |
+
box-shadow: none; }
|
82 |
+
body #content .um-directory a:hover, body #content .um-directory a:focus {
|
83 |
+
text-decoration: none;
|
84 |
+
border-bottom: none;
|
85 |
+
box-shadow: none; }
|
86 |
+
|
87 |
+
.um-directory {
|
88 |
+
display: flex;
|
89 |
+
flex-direction: column;
|
90 |
+
justify-content: flex-start;
|
91 |
+
align-items: stretch;
|
92 |
+
flex-wrap: nowrap;
|
93 |
+
position: relative; }
|
94 |
+
.um-directory a {
|
95 |
+
text-decoration: none;
|
96 |
+
border-bottom: none;
|
97 |
+
box-shadow: none; }
|
98 |
+
.um-directory a:hover, .um-directory a:focus {
|
99 |
+
text-decoration: none;
|
100 |
+
border-bottom: none;
|
101 |
+
box-shadow: none; }
|
102 |
+
.um-directory .select2-container--disabled {
|
103 |
+
opacity: 0.6; }
|
104 |
+
.um-directory .um-members-overlay {
|
105 |
+
display: none;
|
106 |
+
position: absolute;
|
107 |
+
width: 100%;
|
108 |
+
top: 0;
|
109 |
+
bottom: 0;
|
110 |
+
background: rgba(255, 255, 255, 0.8);
|
111 |
+
z-index: 2; }
|
112 |
+
.um-directory .um-members-overlay .um-ajax-loading {
|
113 |
+
-webkit-transition: 0.1s opacity;
|
114 |
+
-moz-transition: 0.1s opacity;
|
115 |
+
-ms-transition: 0.1s opacity;
|
116 |
+
-o-transition: 0.1s opacity;
|
117 |
+
transition: 0.1s opacity;
|
118 |
+
color: #c6c6c6 !important;
|
119 |
+
-webkit-animation: um-ajax-spinning 1.1s infinite linear;
|
120 |
+
animation: um-ajax-spinning 1.1s infinite linear;
|
121 |
+
border-top: 0.2em solid rgba(198, 198, 198, 0.2);
|
122 |
+
border-right: 0.2em solid rgba(198, 198, 198, 0.2);
|
123 |
+
border-bottom: 0.2em solid rgba(198, 198, 198, 0.2);
|
124 |
+
border-left: .2em solid #c6c6c6;
|
125 |
+
font-size: 1.75em;
|
126 |
+
position: absolute;
|
127 |
+
left: calc(50% - 1.75em);
|
128 |
+
top: calc(50% - 1.75em);
|
129 |
+
filter: alpha(opacity=0);
|
130 |
+
-ms-transform: translateZ(0);
|
131 |
+
transform: translateZ(0);
|
132 |
+
border-radius: 50%;
|
133 |
+
display: block;
|
134 |
+
width: 2.5em;
|
135 |
+
height: 2.5em;
|
136 |
+
margin: 0;
|
137 |
+
outline: 0;
|
138 |
+
padding: 0;
|
139 |
+
vertical-align: baseline; }
|
140 |
+
.um-directory .um-member-directory-header {
|
141 |
+
display: flex;
|
142 |
+
flex-direction: column;
|
143 |
+
justify-content: flex-start;
|
144 |
+
align-items: stretch;
|
145 |
+
flex-wrap: nowrap;
|
146 |
+
width: 100%; }
|
147 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row {
|
148 |
+
display: flex;
|
149 |
+
flex-direction: row;
|
150 |
+
justify-content: flex-start;
|
151 |
+
align-items: baseline;
|
152 |
+
flex-wrap: nowrap;
|
153 |
+
margin: 0 0 10px 0; }
|
154 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row.um-header-row-invisible {
|
155 |
+
margin: 0; }
|
156 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row.um-member-directory-search-row {
|
157 |
+
justify-content: flex-end; }
|
158 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line {
|
159 |
+
display: flex;
|
160 |
+
flex-direction: row;
|
161 |
+
justify-content: flex-start;
|
162 |
+
align-items: baseline;
|
163 |
+
flex-wrap: nowrap;
|
164 |
+
width: 60%; }
|
165 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line label {
|
166 |
+
flex: 1;
|
167 |
+
margin: 0 10px 0 0;
|
168 |
+
min-width: 90px;
|
169 |
+
max-width: 85%; }
|
170 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line label span {
|
171 |
+
display: none;
|
172 |
+
margin: 0 5px 0 0; }
|
173 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line label .um-search-line {
|
174 |
+
-webkit-appearance: textfield;
|
175 |
+
width: 100%; }
|
176 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line .um-do-search {
|
177 |
+
min-width: 15%; }
|
178 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line {
|
179 |
+
display: flex;
|
180 |
+
flex-direction: row;
|
181 |
+
justify-content: space-between;
|
182 |
+
align-items: center;
|
183 |
+
flex-wrap: nowrap;
|
184 |
+
width: 100%; }
|
185 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type {
|
186 |
+
font-size: 30px;
|
187 |
+
line-height: 30px;
|
188 |
+
margin: 0 10px 0 0;
|
189 |
+
width: 30px; }
|
190 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type .um-member-directory-view-type-a {
|
191 |
+
color: #ddd;
|
192 |
+
display: none; }
|
193 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type.um-disabled {
|
194 |
+
cursor: default; }
|
195 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type.um-disabled a {
|
196 |
+
cursor: default; }
|
197 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type:not(.um-disabled) .um-member-directory-view-type-a:hover {
|
198 |
+
color: #ccc; }
|
199 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type:not(.um-disabled) .um-member-directory-view-type-a:focus {
|
200 |
+
color: #ddd; }
|
201 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting {
|
202 |
+
display: flex;
|
203 |
+
flex-direction: row;
|
204 |
+
justify-content: flex-start;
|
205 |
+
align-items: baseline;
|
206 |
+
flex-wrap: nowrap;
|
207 |
+
flex: 5; }
|
208 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a {
|
209 |
+
display: flex;
|
210 |
+
flex-direction: row;
|
211 |
+
justify-content: flex-start;
|
212 |
+
align-items: baseline;
|
213 |
+
flex-wrap: nowrap;
|
214 |
+
position: relative;
|
215 |
+
cursor: pointer; }
|
216 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a a {
|
217 |
+
margin: 0 5px 0 0; }
|
218 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a i.um-faicon-caret-down {
|
219 |
+
display: inline; }
|
220 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a i.um-faicon-caret-up {
|
221 |
+
display: none; }
|
222 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a.um-member-directory-sorting-visible i.um-faicon-caret-down {
|
223 |
+
display: none; }
|
224 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a.um-member-directory-sorting-visible i.um-faicon-caret-up {
|
225 |
+
display: inline; }
|
226 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a .um-new-dropdown {
|
227 |
+
top: 24px;
|
228 |
+
width: 200px;
|
229 |
+
left: -12px; }
|
230 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-member-directory-sorting-a .um-new-dropdown li a[data-selected="1"] {
|
231 |
+
display: none; }
|
232 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters {
|
233 |
+
display: flex;
|
234 |
+
flex-direction: row;
|
235 |
+
justify-content: flex-end;
|
236 |
+
align-items: baseline;
|
237 |
+
flex-wrap: nowrap;
|
238 |
+
flex: 2;
|
239 |
+
text-align: right; }
|
240 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters .um-member-directory-filters-a {
|
241 |
+
display: flex;
|
242 |
+
flex-direction: row;
|
243 |
+
justify-content: flex-start;
|
244 |
+
align-items: baseline;
|
245 |
+
flex-wrap: nowrap;
|
246 |
+
cursor: pointer; }
|
247 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters .um-member-directory-filters-a a {
|
248 |
+
margin: 0 5px 0 0; }
|
249 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters .um-member-directory-filters-a i.um-faicon-caret-down {
|
250 |
+
display: inline; }
|
251 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters .um-member-directory-filters-a i.um-faicon-caret-up {
|
252 |
+
display: none; }
|
253 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters .um-member-directory-filters-a.um-member-directory-filters-visible i.um-faicon-caret-down {
|
254 |
+
display: none; }
|
255 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters .um-member-directory-filters-a.um-member-directory-filters-visible i.um-faicon-caret-up {
|
256 |
+
display: inline; }
|
257 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search {
|
258 |
+
margin: 0;
|
259 |
+
width: 100%;
|
260 |
+
display: grid;
|
261 |
+
grid-template-rows: auto 1fr;
|
262 |
+
grid-template-columns: repeat(3, 1fr);
|
263 |
+
grid-gap: 10px;
|
264 |
+
grid-auto-rows: minmax(max-content, auto);
|
265 |
+
-ms-grid-template-rows: auto 1fr;
|
266 |
+
-ms-grid-template-columns: repeat(3, 1fr);
|
267 |
+
-ms-grid-gap: 10px;
|
268 |
+
-ms-grid-auto-rows: minmax(max-content, auto);
|
269 |
+
align-items: center; }
|
270 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter {
|
271 |
+
display: flex;
|
272 |
+
flex-direction: row;
|
273 |
+
justify-content: flex-start;
|
274 |
+
align-items: baseline;
|
275 |
+
flex-wrap: nowrap;
|
276 |
+
width: 100%; }
|
277 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter .select2-container {
|
278 |
+
float: left;
|
279 |
+
width: 100% !important; }
|
280 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter .um-s1 {
|
281 |
+
width: 100%; }
|
282 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-slider-filter-type {
|
283 |
+
flex-direction: column;
|
284 |
+
align-items: stretch; }
|
285 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-slider-filter-type .um-slider {
|
286 |
+
width: calc( 100% - 16px); }
|
287 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-slider-filter-type .um-slider .ui-slider-range.ui-widget-header {
|
288 |
+
background: #44b0ec;
|
289 |
+
border: 1px solid #44b0ec !important;
|
290 |
+
margin-top: -1px; }
|
291 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-slider-filter-type .um-slider.ui-slider.ui-slider-horizontal {
|
292 |
+
border: 1px solid #ddd !important;
|
293 |
+
box-sizing: border-box;
|
294 |
+
margin: 4px 8px 0 8px; }
|
295 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-slider-filter-type .um-slider-range {
|
296 |
+
display: flex;
|
297 |
+
flex-direction: row;
|
298 |
+
justify-content: flex-start;
|
299 |
+
align-items: baseline;
|
300 |
+
flex-wrap: nowrap;
|
301 |
+
margin: 6px 0 0 8px;
|
302 |
+
font-size: 0.8em; }
|
303 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-datepicker-filter-type, .um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-timepicker-filter-type {
|
304 |
+
display: flex;
|
305 |
+
flex-direction: row;
|
306 |
+
justify-content: flex-start;
|
307 |
+
align-items: baseline;
|
308 |
+
flex-wrap: nowrap; }
|
309 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-datepicker-filter-type input, .um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-timepicker-filter-type input {
|
310 |
+
width: calc( 50% - 5px);
|
311 |
+
margin: 0 5px 0 0;
|
312 |
+
box-sizing: border-box;
|
313 |
+
-moz-box-sizing: border-box;
|
314 |
+
-webkit-box-sizing: border-box; }
|
315 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-datepicker-filter-type input:nth-child(even), .um-directory .um-member-directory-header .um-member-directory-header-row .um-search .um-search-filter.um-timepicker-filter-type input:nth-child(even) {
|
316 |
+
margin: 0 0 0 5px; }
|
317 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search[style*="overflow: hidden;"] .um-search-filter {
|
318 |
+
pointer-events: none; }
|
319 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-search.um-search-invisible {
|
320 |
+
display: none; }
|
321 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line {
|
322 |
+
display: flex;
|
323 |
+
flex-direction: row;
|
324 |
+
justify-content: flex-start;
|
325 |
+
align-items: baseline;
|
326 |
+
flex-wrap: wrap;
|
327 |
+
margin: 0;
|
328 |
+
padding: 0;
|
329 |
+
box-sizing: border-box;
|
330 |
+
border: none; }
|
331 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-members-filter-tag {
|
332 |
+
display: flex;
|
333 |
+
flex-direction: row;
|
334 |
+
justify-content: flex-start;
|
335 |
+
align-items: center;
|
336 |
+
flex-wrap: nowrap;
|
337 |
+
margin: 0 10px 5px 0;
|
338 |
+
padding: 0 10px;
|
339 |
+
border-radius: 3px;
|
340 |
+
cursor: default;
|
341 |
+
background: #f1f1f1;
|
342 |
+
font-size: 13px; }
|
343 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-members-filter-tag:first-child {
|
344 |
+
margin-left: 0; }
|
345 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-members-filter-tag .um-members-filter-remove {
|
346 |
+
float: right;
|
347 |
+
display: inline-block;
|
348 |
+
margin-left: 10px;
|
349 |
+
cursor: pointer;
|
350 |
+
font-weight: bold;
|
351 |
+
font-size: 20px; }
|
352 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-members-filter-tag .um-members-filter-remove:hover {
|
353 |
+
color: #a00; }
|
354 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-clear-filters {
|
355 |
+
display: none; }
|
356 |
+
.um-directory .um-member-directory-header .um-member-directory-header-row .um-filtered-line .um-clear-filters a {
|
357 |
+
padding: 3px 10px;
|
358 |
+
margin: 0 10px; }
|
359 |
+
.um-directory .um-members-wrapper {
|
360 |
+
display: flex;
|
361 |
+
flex-direction: column;
|
362 |
+
justify-content: flex-start;
|
363 |
+
align-items: stretch;
|
364 |
+
flex-wrap: nowrap;
|
365 |
+
width: 100%;
|
366 |
+
margin: 0 0 10px 0;
|
367 |
+
padding: 0;
|
368 |
+
position: relative;
|
369 |
+
height: 300px; }
|
370 |
+
.um-directory .um-members-wrapper .um-members-intro {
|
371 |
+
text-align: center;
|
372 |
+
margin: 0 0 10px 0; }
|
373 |
+
.um-directory .um-members-wrapper .um-members-total {
|
374 |
+
font-size: 20px;
|
375 |
+
font-weight: 300; }
|
376 |
+
.um-directory .um-members-wrapper .um-members {
|
377 |
+
width: 100%;
|
378 |
+
margin: 0;
|
379 |
+
padding: 0;
|
380 |
+
-ms-word-break: break-all;
|
381 |
+
word-break: break-word;
|
382 |
+
word-wrap: break-word; }
|
383 |
+
.um-directory .um-members-wrapper .um-members .um-member {
|
384 |
+
border: 1px solid #ddd;
|
385 |
+
box-sizing: border-box;
|
386 |
+
-moz-box-sizing: border-box;
|
387 |
+
-webkit-box-sizing: border-box; }
|
388 |
+
.um-directory .um-members-wrapper .um-members .um-member .um-member-photo.radius-1 a img {
|
389 |
+
-moz-border-radius: 999px !important;
|
390 |
+
-webkit-border-radius: 999px !important;
|
391 |
+
border-radius: 999px !important; }
|
392 |
+
.um-directory .um-members-wrapper .um-members .um-member .um-member-photo.radius-1.radius-2 a img {
|
393 |
+
-moz-border-radius: 4px !important;
|
394 |
+
-webkit-border-radius: 4px !important;
|
395 |
+
border-radius: 4px !important; }
|
396 |
+
.um-directory .um-members-wrapper .um-members .um-member .um-member-photo.radius-1.radius-3 a img {
|
397 |
+
-moz-border-radius: 0 !important;
|
398 |
+
-webkit-border-radius: 0 !important;
|
399 |
+
border-radius: 0 !important; }
|
400 |
+
.um-directory .um-members-wrapper .um-members .um-member .um-member-card .um-member-name {
|
401 |
+
display: flex;
|
402 |
+
flex-direction: row;
|
403 |
+
justify-content: flex-start;
|
404 |
+
align-items: baseline;
|
405 |
+
flex-wrap: nowrap; }
|
406 |
+
.um-directory .um-members-wrapper .um-members .um-member .um-member-card .um-member-name a {
|
407 |
+
display: flex;
|
408 |
+
flex-direction: row;
|
409 |
+
justify-content: flex-start;
|
410 |
+
align-items: center;
|
411 |
+
flex-wrap: nowrap; }
|
412 |
+
.um-directory .um-members-wrapper .um-members img {
|
413 |
+
display: block;
|
414 |
+
overflow: hidden;
|
415 |
+
-moz-border-radius: 0;
|
416 |
+
-webkit-border-radius: 0;
|
417 |
+
border-radius: 0;
|
418 |
+
margin: 0;
|
419 |
+
padding: 0; }
|
420 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-gutter-sizer {
|
421 |
+
width: 5%; }
|
422 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member {
|
423 |
+
float: left;
|
424 |
+
width: 30%;
|
425 |
+
background: #fff;
|
426 |
+
text-align: center;
|
427 |
+
margin-bottom: 40px;
|
428 |
+
position: relative; }
|
429 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-status {
|
430 |
+
display: none;
|
431 |
+
background: #999; }
|
432 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-status.awaiting_admin_review, .um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-status.inactive, .um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-status.rejected {
|
433 |
+
display: block;
|
434 |
+
position: absolute;
|
435 |
+
top: 0;
|
436 |
+
left: 0;
|
437 |
+
width: 100%;
|
438 |
+
padding: 7px 15px;
|
439 |
+
color: #fff;
|
440 |
+
z-index: 10;
|
441 |
+
font-size: 13px;
|
442 |
+
box-sizing: border-box;
|
443 |
+
-moz-box-sizing: border-box;
|
444 |
+
-webkit-box-sizing: border-box; }
|
445 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-status.awaiting_admin_review {
|
446 |
+
background: #c74a4a; }
|
447 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-photo {
|
448 |
+
padding: 40px 0 20px 0;
|
449 |
+
text-align: center; }
|
450 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-photo a {
|
451 |
+
text-decoration: none;
|
452 |
+
box-shadow: none !important;
|
453 |
+
display: inline !important; }
|
454 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-photo a img {
|
455 |
+
display: inline !important;
|
456 |
+
border: 5px solid #fff;
|
457 |
+
background: #fff;
|
458 |
+
width: 140px;
|
459 |
+
height: 140px;
|
460 |
+
float: none !important; }
|
461 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member.awaiting_admin_review, .um-directory .um-members-wrapper .um-members.um-members-grid .um-member.inactive, .um-directory .um-members-wrapper .um-members.um-members-grid .um-member.rejected {
|
462 |
+
opacity: 0.7; }
|
463 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member.with-cover .um-member-photo {
|
464 |
+
padding-top: 0; }
|
465 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member.with-cover .um-member-photo a img {
|
466 |
+
width: 90px;
|
467 |
+
height: 90px;
|
468 |
+
position: relative;
|
469 |
+
top: -35px;
|
470 |
+
margin-bottom: -45px;
|
471 |
+
float: none;
|
472 |
+
opacity: 1; }
|
473 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-cover {
|
474 |
+
background-color: #eee;
|
475 |
+
box-sizing: border-box;
|
476 |
+
position: relative; }
|
477 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-cover[data-ratio] {
|
478 |
+
overflow-y: hidden; }
|
479 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-cover .um-member-cover-e {
|
480 |
+
text-align: center;
|
481 |
+
box-sizing: border-box; }
|
482 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-cover .um-member-cover-e img {
|
483 |
+
width: 100% !important; }
|
484 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card {
|
485 |
+
padding-bottom: 15px; }
|
486 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card.no-photo {
|
487 |
+
padding-top: 30px; }
|
488 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-name {
|
489 |
+
margin: 0 0 4px 0;
|
490 |
+
justify-content: center; }
|
491 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-name a {
|
492 |
+
font-size: 16px;
|
493 |
+
line-height: 26px;
|
494 |
+
color: #444;
|
495 |
+
font-weight: 700; }
|
496 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-members-edit-btn {
|
497 |
+
margin: 2px 0;
|
498 |
+
height: 40px; }
|
499 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-members-edit-btn a.um-edit-profile-btn {
|
500 |
+
padding: 10px 15px !important;
|
501 |
+
transition: none !important;
|
502 |
+
display: inline-block !important;
|
503 |
+
margin: 0 auto !important;
|
504 |
+
min-width: 110px;
|
505 |
+
width: auto;
|
506 |
+
text-align: center;
|
507 |
+
font-size: 13px; }
|
508 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-members-edit-btn a.um-edit-profile-btn:before {
|
509 |
+
font-family: "FontAwesome";
|
510 |
+
margin-right: 8px;
|
511 |
+
width: 14px;
|
512 |
+
text-align: left;
|
513 |
+
display: inline-block;
|
514 |
+
font-size: 16px;
|
515 |
+
position: relative;
|
516 |
+
left: 0;
|
517 |
+
top: 1px;
|
518 |
+
content: "\f013"; }
|
519 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-tagline {
|
520 |
+
font-size: 13px;
|
521 |
+
line-height: 22px;
|
522 |
+
color: #999;
|
523 |
+
padding: 0 15px; }
|
524 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-meta {
|
525 |
+
display: none;
|
526 |
+
margin: 20px 15px 0 15px;
|
527 |
+
padding: 15px 0;
|
528 |
+
border-top: 1px solid #e5e5e5; }
|
529 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-meta.no-animate {
|
530 |
+
display: block; }
|
531 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-meta .um-member-metaline {
|
532 |
+
font-size: 13px;
|
533 |
+
padding: 12px 0 0 0;
|
534 |
+
line-height: 16px;
|
535 |
+
vertical-align: middle; }
|
536 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-meta .um-member-metaline strong {
|
537 |
+
display: block;
|
538 |
+
clear: both; }
|
539 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-meta .um-member-metaline span {
|
540 |
+
display: block;
|
541 |
+
text-align: center; }
|
542 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-meta .um-member-connect {
|
543 |
+
padding-top: 20px; }
|
544 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-meta .um-member-connect a {
|
545 |
+
display: inline-block;
|
546 |
+
width: 40px;
|
547 |
+
line-height: 40px;
|
548 |
+
height: 40px;
|
549 |
+
-moz-border-radius: 999px;
|
550 |
+
-webkit-border-radius: 999px;
|
551 |
+
border-radius: 999px;
|
552 |
+
color: #fff !important;
|
553 |
+
opacity: 0.85;
|
554 |
+
margin: 0 1px;
|
555 |
+
font-size: 22px;
|
556 |
+
transition: 0.25s; }
|
557 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-meta .um-member-connect a:hover {
|
558 |
+
opacity: 1;
|
559 |
+
color: #fff; }
|
560 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-less {
|
561 |
+
display: none; }
|
562 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-less a {
|
563 |
+
color: #666;
|
564 |
+
display: inline-block; }
|
565 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-less a i {
|
566 |
+
display: block;
|
567 |
+
font-size: 32px;
|
568 |
+
height: 32px;
|
569 |
+
line-height: 32px; }
|
570 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-more a {
|
571 |
+
color: #666;
|
572 |
+
display: inline-block; }
|
573 |
+
.um-directory .um-members-wrapper .um-members.um-members-grid .um-member .um-member-card .um-member-meta-main .um-member-more a i {
|
574 |
+
display: block;
|
575 |
+
font-size: 32px;
|
576 |
+
height: 32px;
|
577 |
+
line-height: 32px; }
|
578 |
+
.um-directory .um-members-wrapper .um-members.um-members-list {
|
579 |
+
display: grid;
|
580 |
+
grid-template-rows: auto 1fr;
|
581 |
+
grid-template-columns: repeat(1, 1fr);
|
582 |
+
grid-gap: 10px;
|
583 |
+
grid-auto-rows: minmax(max-content, auto);
|
584 |
+
-ms-grid-template-rows: auto 1fr;
|
585 |
+
-ms-grid-template-columns: repeat(1, 1fr);
|
586 |
+
-ms-grid-gap: 10px;
|
587 |
+
-ms-grid-auto-rows: minmax(max-content, auto);
|
588 |
+
align-items: center; }
|
589 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member {
|
590 |
+
display: flex;
|
591 |
+
flex-direction: column;
|
592 |
+
justify-content: flex-start;
|
593 |
+
align-items: stretch;
|
594 |
+
flex-wrap: nowrap;
|
595 |
+
width: 100%;
|
596 |
+
padding: 15px;
|
597 |
+
margin: 0;
|
598 |
+
background: none;
|
599 |
+
box-sizing: border-box;
|
600 |
+
-moz-box-sizing: border-box;
|
601 |
+
-webkit-box-sizing: border-box; }
|
602 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-status {
|
603 |
+
display: none;
|
604 |
+
background: #999; }
|
605 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-status.awaiting_admin_review, .um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-status.inactive, .um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-status.rejected {
|
606 |
+
display: block;
|
607 |
+
width: 100%;
|
608 |
+
padding: 7px 15px;
|
609 |
+
margin-bottom: 10px;
|
610 |
+
color: #fff;
|
611 |
+
font-size: 13px;
|
612 |
+
box-sizing: border-box;
|
613 |
+
-moz-box-sizing: border-box;
|
614 |
+
-webkit-box-sizing: border-box; }
|
615 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-status.awaiting_admin_review {
|
616 |
+
background: #c74a4a; }
|
617 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container {
|
618 |
+
display: flex;
|
619 |
+
flex-direction: row;
|
620 |
+
justify-content: flex-start;
|
621 |
+
align-items: flex-start;
|
622 |
+
flex-wrap: nowrap;
|
623 |
+
width: 100%;
|
624 |
+
margin: 0 0 10px 0;
|
625 |
+
padding: 0; }
|
626 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-photo {
|
627 |
+
width: 100px;
|
628 |
+
margin: 0 15px 0 0;
|
629 |
+
padding: 0; }
|
630 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-photo a {
|
631 |
+
width: 100px;
|
632 |
+
height: 100px;
|
633 |
+
display: block; }
|
634 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-photo a img {
|
635 |
+
width: 100px;
|
636 |
+
height: 100px;
|
637 |
+
position: relative;
|
638 |
+
top: 0;
|
639 |
+
margin: 0;
|
640 |
+
margin-bottom: 0;
|
641 |
+
border: none; }
|
642 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card {
|
643 |
+
display: flex;
|
644 |
+
flex-direction: row;
|
645 |
+
justify-content: flex-start;
|
646 |
+
align-items: flex-start;
|
647 |
+
flex-wrap: nowrap;
|
648 |
+
width: calc( 100% - 115px);
|
649 |
+
padding: 0;
|
650 |
+
margin: 0;
|
651 |
+
box-sizing: border-box;
|
652 |
+
-moz-box-sizing: border-box;
|
653 |
+
-webkit-box-sizing: border-box; }
|
654 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content {
|
655 |
+
display: flex;
|
656 |
+
flex-direction: column;
|
657 |
+
justify-content: flex-start;
|
658 |
+
align-items: stretch;
|
659 |
+
flex-wrap: nowrap;
|
660 |
+
width: calc( 100% - 30px);
|
661 |
+
margin: 0 10px 0 0; }
|
662 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-card-header {
|
663 |
+
width: 100%; }
|
664 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-card-header .um-member-name {
|
665 |
+
margin: 0 0 4px 0; }
|
666 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-card-header .um-member-name a {
|
667 |
+
font-size: 16px;
|
668 |
+
line-height: 26px;
|
669 |
+
color: #444;
|
670 |
+
font-weight: 700; }
|
671 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-tagline {
|
672 |
+
display: flex;
|
673 |
+
flex-direction: row;
|
674 |
+
justify-content: flex-start;
|
675 |
+
align-items: baseline;
|
676 |
+
flex-wrap: wrap;
|
677 |
+
width: 100%;
|
678 |
+
font-size: 13px;
|
679 |
+
color: #999;
|
680 |
+
padding: 0;
|
681 |
+
box-sizing: border-box; }
|
682 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-meta-main {
|
683 |
+
width: 100%;
|
684 |
+
padding: 0;
|
685 |
+
box-sizing: border-box;
|
686 |
+
display: none; }
|
687 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-meta-main.no-animate {
|
688 |
+
display: block; }
|
689 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-meta-main .um-member-meta {
|
690 |
+
float: left;
|
691 |
+
width: 100%;
|
692 |
+
display: block;
|
693 |
+
margin: 10px 0 0 0;
|
694 |
+
box-sizing: border-box;
|
695 |
+
border: none; }
|
696 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-meta-main .um-member-meta .um-member-metaline {
|
697 |
+
display: flex;
|
698 |
+
flex-direction: row;
|
699 |
+
justify-content: flex-start;
|
700 |
+
align-items: center;
|
701 |
+
flex-wrap: wrap;
|
702 |
+
font-size: 13px;
|
703 |
+
padding: 12px 0 0 0;
|
704 |
+
line-height: 16px;
|
705 |
+
width: 100%; }
|
706 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-meta-main .um-member-meta .um-member-connect {
|
707 |
+
padding-top: 10px; }
|
708 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-meta-main .um-member-meta .um-member-connect a {
|
709 |
+
display: inline-block;
|
710 |
+
width: 40px;
|
711 |
+
line-height: 40px;
|
712 |
+
height: 40px;
|
713 |
+
-moz-border-radius: 999px;
|
714 |
+
-webkit-border-radius: 999px;
|
715 |
+
border-radius: 999px;
|
716 |
+
color: #fff !important;
|
717 |
+
opacity: 0.85;
|
718 |
+
margin: 0 1px;
|
719 |
+
font-size: 22px;
|
720 |
+
transition: 0.25s;
|
721 |
+
text-align: center; }
|
722 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-content .um-member-meta-main .um-member-meta .um-member-connect a:hover {
|
723 |
+
opacity: 1;
|
724 |
+
color: #fff; }
|
725 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-actions {
|
726 |
+
display: flex;
|
727 |
+
flex-direction: column;
|
728 |
+
justify-content: flex-start;
|
729 |
+
align-items: flex-end;
|
730 |
+
flex-wrap: nowrap;
|
731 |
+
width: 20px;
|
732 |
+
text-align: right;
|
733 |
+
padding: 0; }
|
734 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-actions .um-member-cog {
|
735 |
+
position: relative; }
|
736 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-actions .um-member-cog .um-member-actions-a {
|
737 |
+
line-height: 1;
|
738 |
+
display: block;
|
739 |
+
color: #666; }
|
740 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-actions .um-member-cog .um-member-actions-a i {
|
741 |
+
display: block;
|
742 |
+
font-size: 20px;
|
743 |
+
line-height: 1; }
|
744 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-actions .um-member-cog .um-new-dropdown {
|
745 |
+
width: 180px;
|
746 |
+
right: 0;
|
747 |
+
text-align: left; }
|
748 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-container .um-member-card .um-member-card-actions a {
|
749 |
+
box-sizing: border-box; }
|
750 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer {
|
751 |
+
display: flex;
|
752 |
+
flex-direction: row;
|
753 |
+
justify-content: flex-end;
|
754 |
+
align-items: center;
|
755 |
+
flex-wrap: nowrap;
|
756 |
+
width: 100%; }
|
757 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons {
|
758 |
+
display: flex;
|
759 |
+
flex-direction: row;
|
760 |
+
justify-content: flex-start;
|
761 |
+
align-items: baseline;
|
762 |
+
flex-wrap: nowrap;
|
763 |
+
width: calc( 100% - 145px);
|
764 |
+
margin: 0 10px 0 0; }
|
765 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons .um-members-list-footer-button-wrapper {
|
766 |
+
display: flex;
|
767 |
+
flex-direction: row;
|
768 |
+
justify-content: flex-start;
|
769 |
+
align-items: baseline;
|
770 |
+
flex-wrap: nowrap;
|
771 |
+
margin: 0; }
|
772 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons > :not(:last-child) {
|
773 |
+
margin: 0 10px 0 0; }
|
774 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-reveal-buttons {
|
775 |
+
width: 20px;
|
776 |
+
text-align: right; }
|
777 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-reveal-buttons .um-member-more {
|
778 |
+
display: flex;
|
779 |
+
flex-direction: column;
|
780 |
+
justify-content: flex-start;
|
781 |
+
align-items: baseline;
|
782 |
+
flex-wrap: nowrap; }
|
783 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-reveal-buttons .um-member-more a {
|
784 |
+
color: #666;
|
785 |
+
display: inline-block; }
|
786 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-reveal-buttons .um-member-more a i {
|
787 |
+
display: block;
|
788 |
+
font-size: 28px;
|
789 |
+
height: 28px;
|
790 |
+
line-height: 28px; }
|
791 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-reveal-buttons .um-member-less {
|
792 |
+
display: flex;
|
793 |
+
flex-direction: column;
|
794 |
+
justify-content: flex-start;
|
795 |
+
align-items: baseline;
|
796 |
+
flex-wrap: nowrap;
|
797 |
+
display: none; }
|
798 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-reveal-buttons .um-member-less a {
|
799 |
+
color: #666;
|
800 |
+
display: inline-block; }
|
801 |
+
.um-directory .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-reveal-buttons .um-member-less a i {
|
802 |
+
display: block;
|
803 |
+
font-size: 28px;
|
804 |
+
height: 28px;
|
805 |
+
line-height: 28px; }
|
806 |
+
.um-directory .um-members-wrapper .um-members .um-members-none {
|
807 |
+
text-align: center;
|
808 |
+
font-size: 18px; }
|
809 |
+
.um-directory .um-members-pagination-box {
|
810 |
+
width: 100%;
|
811 |
+
float: left;
|
812 |
+
margin: 0 0 10px 0;
|
813 |
+
padding: 0; }
|
814 |
+
.um-directory .um-members-pagination-box .um-members-pagi {
|
815 |
+
display: flex;
|
816 |
+
flex-direction: row;
|
817 |
+
justify-content: center;
|
818 |
+
align-items: baseline;
|
819 |
+
flex-wrap: nowrap;
|
820 |
+
width: 100%;
|
821 |
+
margin: 0;
|
822 |
+
padding: 0;
|
823 |
+
font-size: 15px; }
|
824 |
+
.um-directory .um-members-pagination-box .um-members-pagi .pagi {
|
825 |
+
cursor: pointer;
|
826 |
+
display: inline-block;
|
827 |
+
width: auto;
|
828 |
+
height: 34px;
|
829 |
+
line-height: 34px;
|
830 |
+
transition: all .2s linear;
|
831 |
+
padding: 0 14px;
|
832 |
+
color: #666 !important;
|
833 |
+
font-weight: normal; }
|
834 |
+
.um-directory .um-members-pagination-box .um-members-pagi .pagi.pagi-arrow {
|
835 |
+
line-height: 38px; }
|
836 |
+
.um-directory .um-members-pagination-box .um-members-pagi .pagi.pagi-arrow i:before {
|
837 |
+
font-size: 20px;
|
838 |
+
vertical-align: middle !important;
|
839 |
+
height: 34px;
|
840 |
+
line-height: 34px;
|
841 |
+
top: -2px;
|
842 |
+
position: relative; }
|
843 |
+
.um-directory .um-members-pagination-box .um-members-pagi .pagi.current {
|
844 |
+
cursor: default;
|
845 |
+
color: #fff !important; }
|
846 |
+
.um-directory .um-members-pagination-box .um-members-pagi .pagi.current:hover {
|
847 |
+
color: #fff !important; }
|
848 |
+
.um-directory .um-members-pagination-box .um-members-pagi .pagi.disabled {
|
849 |
+
cursor: default;
|
850 |
+
opacity: .4; }
|
851 |
+
.um-directory .um-members-pagination-box .um-members-pagi .pagi.none {
|
852 |
+
color: #aaa !important; }
|
853 |
+
.um-directory .um-members-pagination-box .um-members-pagidrop {
|
854 |
+
width: 100%;
|
855 |
+
float: left;
|
856 |
+
margin: 0;
|
857 |
+
text-align: center;
|
858 |
+
padding: 5px 0;
|
859 |
+
font-size: 15px; }
|
860 |
+
.um-directory.um-loaded .um-members-wrapper {
|
861 |
+
height: auto; }
|
862 |
+
.um-directory[data-view_type="list"] .um-member-directory-header .um-member-directory-header-row .um-member-directory-view-type .um-member-directory-view-type-a[data-type="list"] {
|
863 |
+
display: block; }
|
864 |
+
.um-directory[data-view_type="grid"] .um-member-directory-header .um-member-directory-header-row .um-member-directory-view-type .um-member-directory-view-type-a[data-type="grid"] {
|
865 |
+
display: block; }
|
866 |
+
.um-directory[data-view_type="map"] .um-member-directory-header .um-member-directory-header-row .um-member-directory-view-type .um-member-directory-view-type-a[data-type="map"] {
|
867 |
+
display: block; }
|
868 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line {
|
869 |
+
width: 100%; }
|
870 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row.um-member-directory-search-row {
|
871 |
+
justify-content: flex-start; }
|
872 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line {
|
873 |
+
flex-wrap: wrap; }
|
874 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type {
|
875 |
+
width: 20px;
|
876 |
+
font-size: 20px;
|
877 |
+
line-height: 20px;
|
878 |
+
margin: 0 2px 0 0; }
|
879 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting {
|
880 |
+
width: calc( 100% - 25px);
|
881 |
+
justify-content: flex-end; }
|
882 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-sorting .um-new-dropdown {
|
883 |
+
right: 0;
|
884 |
+
left: auto; }
|
885 |
+
.um-directory.uimob340 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-filters {
|
886 |
+
flex: none;
|
887 |
+
width: 100%; }
|
888 |
+
.um-directory.uimob340 .um-member-directory-header .um-search {
|
889 |
+
grid-template-columns: repeat(1, 1fr); }
|
890 |
+
.um-directory.uimob340 .um-members-wrapper .um-members .um-member {
|
891 |
+
width: 100%; }
|
892 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-grid .um-gutter-sizer {
|
893 |
+
width: 0; }
|
894 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member {
|
895 |
+
padding: 10px; }
|
896 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo {
|
897 |
+
width: 50px;
|
898 |
+
margin: 0 10px 0 0; }
|
899 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo a {
|
900 |
+
width: 50px;
|
901 |
+
height: 50px; }
|
902 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo a img {
|
903 |
+
width: 50px;
|
904 |
+
height: 50px; }
|
905 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card {
|
906 |
+
width: calc( 100% - 60px); }
|
907 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer {
|
908 |
+
align-items: flex-start; }
|
909 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons {
|
910 |
+
display: flex;
|
911 |
+
flex-direction: column;
|
912 |
+
justify-content: flex-start;
|
913 |
+
align-items: stretch;
|
914 |
+
flex-wrap: nowrap;
|
915 |
+
width: calc( 100% - 90px);
|
916 |
+
margin: 0 10px 0 0; }
|
917 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons .um-members-list-footer-button-wrapper {
|
918 |
+
margin: 0 0 5px 0; }
|
919 |
+
.um-directory.uimob340 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons .um-members-list-footer-button-wrapper a.um-button {
|
920 |
+
width: 100% !important; }
|
921 |
+
.um-directory.uimob340 .um-members-pagination-box .um-members-pagi {
|
922 |
+
display: none; }
|
923 |
+
.um-directory.uimob500 .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line {
|
924 |
+
width: 100%; }
|
925 |
+
.um-directory.uimob500 .um-member-directory-header .um-member-directory-header-row.um-member-directory-search-row {
|
926 |
+
justify-content: flex-start; }
|
927 |
+
.um-directory.uimob500 .um-member-directory-header .um-member-directory-header-row .um-member-directory-nav-line .um-member-directory-view-type {
|
928 |
+
width: 20px;
|
929 |
+
font-size: 20px;
|
930 |
+
line-height: 20px;
|
931 |
+
margin: 0 5px 0 0; }
|
932 |
+
.um-directory.uimob500 .um-member-directory-header .um-search {
|
933 |
+
grid-template-columns: repeat(1, 1fr); }
|
934 |
+
.um-directory.uimob500 .um-members-wrapper .um-members .um-member {
|
935 |
+
width: 100%; }
|
936 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-grid .um-gutter-sizer {
|
937 |
+
width: 0; }
|
938 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo {
|
939 |
+
width: 70px;
|
940 |
+
margin: 0 10px 0 0; }
|
941 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo a {
|
942 |
+
width: 70px;
|
943 |
+
height: 70px; }
|
944 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo a img {
|
945 |
+
width: 70px;
|
946 |
+
height: 70px; }
|
947 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card {
|
948 |
+
width: calc( 100% - 80px); }
|
949 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer {
|
950 |
+
align-items: flex-start; }
|
951 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons {
|
952 |
+
flex-wrap: wrap;
|
953 |
+
width: calc( 100% - 110px);
|
954 |
+
margin: 0 10px 0 0; }
|
955 |
+
.um-directory.uimob500 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons .um-members-list-footer-button-wrapper {
|
956 |
+
margin: 0 10px 5px 0; }
|
957 |
+
.um-directory.uimob500 .um-members-pagination-box .um-members-pagi {
|
958 |
+
display: none; }
|
959 |
+
.um-directory.uimob800 .um-member-directory-header .um-member-directory-header-row .um-member-directory-search-line {
|
960 |
+
width: 100%; }
|
961 |
+
.um-directory.uimob800 .um-member-directory-header .um-search {
|
962 |
+
grid-template-columns: repeat(2, 1fr); }
|
963 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-grid .um-gutter-sizer {
|
964 |
+
width: 4%; }
|
965 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-grid .um-member {
|
966 |
+
width: 48%; }
|
967 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo {
|
968 |
+
width: 80px;
|
969 |
+
margin: 0 10px 0 0; }
|
970 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo a {
|
971 |
+
width: 80px;
|
972 |
+
height: 80px; }
|
973 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-photo a img {
|
974 |
+
width: 80px;
|
975 |
+
height: 80px; }
|
976 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card {
|
977 |
+
width: calc( 100% - 90px); }
|
978 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer {
|
979 |
+
align-items: flex-start; }
|
980 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons {
|
981 |
+
flex-wrap: wrap;
|
982 |
+
width: calc( 100% - 120px);
|
983 |
+
margin: 0 10px 0 0; }
|
984 |
+
.um-directory.uimob800 .um-members-wrapper .um-members.um-members-list .um-member .um-member-card-footer .um-member-card-footer-buttons .um-members-list-footer-button-wrapper {
|
985 |
+
margin: 0 10px 5px 0; }
|
986 |
+
.um-directory.uimob960 .um-member-directory-header .um-search {
|
987 |
+
grid-template-columns: repeat(2, 1fr); }
|
988 |
+
.um-directory.uimob960 .um-members-wrapper .um-members.um-members-grid .um-gutter-sizer {
|
989 |
+
width: 4%; }
|
990 |
+
.um-directory.uimob960 .um-members-wrapper .um-members.um-members-grid .um-member {
|
991 |
+
width: 48%; }
|
992 |
+
|
993 |
+
.select2-container .select2-results li.select2-results__option[aria-disabled=true] {
|
994 |
+
display: none; }
|
assets/css/um-misc.css
CHANGED
@@ -62,6 +62,16 @@
|
|
62 |
line-height: 36px;
|
63 |
height: 36px;
|
64 |
font-size: 20px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
65 |
}
|
66 |
|
67 |
/* pop effect */
|
62 |
line-height: 36px;
|
63 |
height: 36px;
|
64 |
font-size: 20px;
|
65 |
+
border-radius: 999px;
|
66 |
+
color: #fff !important;
|
67 |
+
opacity: 0.85;
|
68 |
+
margin: 0 1px;
|
69 |
+
transition: 0.25s;
|
70 |
+
display: inline-block;
|
71 |
+
}
|
72 |
+
|
73 |
+
.um-profile-connect.um-member-connect a:hover {
|
74 |
+
opacity: 1;
|
75 |
}
|
76 |
|
77 |
/* pop effect */
|
assets/css/um-old-default.css
CHANGED
@@ -89,6 +89,10 @@ div.uimob800 .um-account-side li a.current:hover
|
|
89 |
color: #ffffff;
|
90 |
}
|
91 |
|
|
|
|
|
|
|
|
|
92 |
.um .um-button.um-alt,
|
93 |
.um input[type=submit].um-button.um-alt {
|
94 |
background: #eeeeee;
|
@@ -104,6 +108,11 @@ div.uimob800 .um-account-side li a.current:hover
|
|
104 |
color: #666666;
|
105 |
}
|
106 |
|
|
|
|
|
|
|
|
|
|
|
107 |
.um .um-tip {
|
108 |
color: #cccccc;
|
109 |
}
|
@@ -128,7 +137,7 @@ div.uimob800 .um-account-side li a.current:hover
|
|
128 |
.select2-drop-active,
|
129 |
.select2-drop.select2-drop-above
|
130 |
{
|
131 |
-
border:
|
132 |
}
|
133 |
|
134 |
.um .um-form .select2-container-multi .select2-choices .select2-search-field input[type=text] {
|
@@ -142,7 +151,7 @@ div.uimob800 .um-account-side li a.current:hover
|
|
142 |
.um .um-form .um-datepicker.picker__input.picker__input--active,
|
143 |
.um .um-form .um-datepicker.picker__input.picker__input--target,
|
144 |
.um .um-form textarea:focus {
|
145 |
-
border:
|
146 |
}
|
147 |
|
148 |
.um .um-form input[type=text],
|
89 |
color: #ffffff;
|
90 |
}
|
91 |
|
92 |
+
.um .um-button:before {
|
93 |
+
color: #ffffff;
|
94 |
+
}
|
95 |
+
|
96 |
.um .um-button.um-alt,
|
97 |
.um input[type=submit].um-button.um-alt {
|
98 |
background: #eeeeee;
|
108 |
color: #666666;
|
109 |
}
|
110 |
|
111 |
+
.um .um-button.um-alt:before,
|
112 |
+
.um input[type=submit].um-button.um-alt:before {
|
113 |
+
color: #666666;
|
114 |
+
}
|
115 |
+
|
116 |
.um .um-tip {
|
117 |
color: #cccccc;
|
118 |
}
|
137 |
.select2-drop-active,
|
138 |
.select2-drop.select2-drop-above
|
139 |
{
|
140 |
+
border: 1px solid #ddd !important;
|
141 |
}
|
142 |
|
143 |
.um .um-form .select2-container-multi .select2-choices .select2-search-field input[type=text] {
|
151 |
.um .um-form .um-datepicker.picker__input.picker__input--active,
|
152 |
.um .um-form .um-datepicker.picker__input.picker__input--target,
|
153 |
.um .um-form textarea:focus {
|
154 |
+
border: 1px solid #bbb !important;
|
155 |
}
|
156 |
|
157 |
.um .um-form input[type=text],
|
assets/css/um-profile.css
CHANGED
@@ -143,7 +143,7 @@
|
|
143 |
height: 30px;
|
144 |
line-height: 30px;
|
145 |
z-index: 66;
|
146 |
-
|
147 |
}
|
148 |
|
149 |
.um-profile-edit i {
|
@@ -194,19 +194,24 @@
|
|
194 |
float: left;
|
195 |
position: relative;
|
196 |
width:200px;
|
|
|
|
|
197 |
}
|
198 |
|
199 |
.um-profile-photo a.um-profile-photo-img {
|
200 |
float: left;
|
201 |
position: absolute;
|
202 |
background: #fff;
|
203 |
-
|
204 |
-
|
|
|
|
|
|
|
205 |
}
|
206 |
|
207 |
.um-profile-photo a.um-profile-photo-img img {
|
208 |
width: 100%;
|
209 |
-
height:
|
210 |
}
|
211 |
|
212 |
.um-profile-photo-overlay {
|
143 |
height: 30px;
|
144 |
line-height: 30px;
|
145 |
z-index: 66;
|
146 |
+
margin-right: 10px;
|
147 |
}
|
148 |
|
149 |
.um-profile-edit i {
|
194 |
float: left;
|
195 |
position: relative;
|
196 |
width:200px;
|
197 |
+
margin: 0 0 0 30px;
|
198 |
+
box-sizing: border-box;
|
199 |
}
|
200 |
|
201 |
.um-profile-photo a.um-profile-photo-img {
|
202 |
float: left;
|
203 |
position: absolute;
|
204 |
background: #fff;
|
205 |
+
border-radius: 100%;
|
206 |
+
border: 5px solid #fff;
|
207 |
+
border-bottom: 5px solid #fff !important;/* rewrite ".um-header a" style */
|
208 |
+
overflow: hidden;
|
209 |
+
left: 0;
|
210 |
}
|
211 |
|
212 |
.um-profile-photo a.um-profile-photo-img img {
|
213 |
width: 100%;
|
214 |
+
height: auto;
|
215 |
}
|
216 |
|
217 |
.um-profile-photo-overlay {
|
assets/css/um-responsive.css
CHANGED
@@ -152,6 +152,7 @@ div.uimob340 .um-profile-photo {
|
|
152 |
position: absolute;
|
153 |
top: -40px;
|
154 |
left: 0;
|
|
|
155 |
}
|
156 |
|
157 |
div.uimob340 .um-header.no-cover .um-profile-photo {
|
@@ -214,27 +215,6 @@ div.uimob340 .um-field-half {
|
|
214 |
width: 100%;
|
215 |
}
|
216 |
|
217 |
-
div.uimob340 .um-search {
|
218 |
-
padding: 20px 0 !important;
|
219 |
-
width: 100% !important;
|
220 |
-
box-sizing: border-box;
|
221 |
-
}
|
222 |
-
|
223 |
-
div.uimob340 .um-search .um-search-filter {
|
224 |
-
width: 100% !important;
|
225 |
-
float: none !important;
|
226 |
-
padding: 0 0 15px 0 !important;
|
227 |
-
}
|
228 |
-
|
229 |
-
div.uimob340 .um-search .um-search-submit .um-button {
|
230 |
-
display: block !important;
|
231 |
-
min-width: 100% !important;
|
232 |
-
margin: 0 0 15px 0 !important;
|
233 |
-
}
|
234 |
-
|
235 |
-
div.uimob340 .um-member {width: 100%}
|
236 |
-
div.uimob340 .um-gutter-sizer {width: 0px}
|
237 |
-
|
238 |
div.uimob340 .um-account-main {
|
239 |
float: none;
|
240 |
width: 100%;
|
@@ -374,6 +354,7 @@ div.uimob500 .um-profile-photo {
|
|
374 |
position: absolute;
|
375 |
top: -40px;
|
376 |
left: 0;
|
|
|
377 |
}
|
378 |
|
379 |
div.uimob500 .um-header.no-cover .um-profile-photo {
|
@@ -436,27 +417,6 @@ div.uimob500 .um-field-half {
|
|
436 |
width: 100%;
|
437 |
}
|
438 |
|
439 |
-
div.uimob500 .um-search {
|
440 |
-
padding: 20px 0 !important;
|
441 |
-
width: 100% !important;
|
442 |
-
box-sizing: border-box;
|
443 |
-
}
|
444 |
-
|
445 |
-
div.uimob500 .um-search .um-search-filter {
|
446 |
-
width: 100% !important;
|
447 |
-
float: none !important;
|
448 |
-
padding: 0 0 15px 0 !important;
|
449 |
-
}
|
450 |
-
|
451 |
-
div.uimob500 .um-search .um-search-submit .um-button {
|
452 |
-
display: block !important;
|
453 |
-
min-width: 100% !important;
|
454 |
-
margin: 0 0 15px 0 !important;
|
455 |
-
}
|
456 |
-
|
457 |
-
div.uimob500 .um-member {width: 100%}
|
458 |
-
div.uimob500 .um-gutter-sizer {width: 0px}
|
459 |
-
|
460 |
div.uimob500 .um-account-main {
|
461 |
float: none;
|
462 |
width: 100%;
|
@@ -575,8 +535,12 @@ div.uimob800 .um-account-meta img {
|
|
575 |
height: auto;
|
576 |
}
|
577 |
|
|
|
|
|
|
|
|
|
578 |
div.uimob800 .um-profile-photo {
|
579 |
-
width:
|
580 |
}
|
581 |
|
582 |
div.uimob800 .um-profile-photo a.um-profile-photo-img {
|
@@ -598,35 +562,6 @@ div.uimob800 .um-cover-overlay
|
|
598 |
padding: 0;
|
599 |
}
|
600 |
|
601 |
-
div.uimob800 .um-search {
|
602 |
-
padding: 20px 0 !important;
|
603 |
-
width: 100% !important;
|
604 |
-
box-sizing: border-box;
|
605 |
-
}
|
606 |
-
|
607 |
-
div.uimob800 .um-search .um-search-filter {
|
608 |
-
width: 48% !important;
|
609 |
-
float: left !important;
|
610 |
-
padding: 0 0 15px 0 !important;
|
611 |
-
}
|
612 |
-
|
613 |
-
div.uimob800 .um-search .um-search-filter-2 {
|
614 |
-
margin-left: 4%;
|
615 |
-
}
|
616 |
-
|
617 |
-
div.uimob800 .um-search .um-search-submit .um-button {
|
618 |
-
display: block !important;
|
619 |
-
width: 48% !important;
|
620 |
-
margin: 0 0 15px 0 !important;
|
621 |
-
box-sizing: border-box;
|
622 |
-
float: left;
|
623 |
-
}
|
624 |
-
|
625 |
-
div.uimob800 .um-search .um-search-submit .um-button.um-alt {float: right}
|
626 |
-
|
627 |
-
div.uimob800 .um-member {width: 48%}
|
628 |
-
div.uimob800 .um-gutter-sizer {width: 4%}
|
629 |
-
|
630 |
/********************************************/
|
631 |
|
632 |
/**
|
@@ -635,35 +570,6 @@ div.uimob800 .um-gutter-sizer {width: 4%}
|
|
635 |
|
636 |
/********************************************/
|
637 |
|
638 |
-
div.uimob960 .um-search {
|
639 |
-
padding: 20px 0 !important;
|
640 |
-
width: 100% !important;
|
641 |
-
box-sizing: border-box;
|
642 |
-
}
|
643 |
-
|
644 |
-
div.uimob960 .um-search .um-search-filter {
|
645 |
-
width: 48% !important;
|
646 |
-
float: left !important;
|
647 |
-
padding: 0 0 15px 0 !important;
|
648 |
-
}
|
649 |
-
|
650 |
-
div.uimob960 .um-search .um-search-filter-2 {
|
651 |
-
margin-left: 4%;
|
652 |
-
}
|
653 |
-
|
654 |
-
div.uimob960 .um-search .um-search-submit .um-button {
|
655 |
-
display: block !important;
|
656 |
-
width: 48% !important;
|
657 |
-
margin: 0 0 15px 0 !important;
|
658 |
-
box-sizing: border-box;
|
659 |
-
float: left;
|
660 |
-
}
|
661 |
-
|
662 |
-
div.uimob960 .um-search .um-search-submit .um-button.um-alt {float: right}
|
663 |
-
|
664 |
-
div.uimob960 .um-member {width: 48%}
|
665 |
-
div.uimob960 .um-gutter-sizer {width: 4%}
|
666 |
-
|
667 |
div.uimob960 .um-profile-photo {
|
668 |
width: 200px !important;
|
669 |
}
|
152 |
position: absolute;
|
153 |
top: -40px;
|
154 |
left: 0;
|
155 |
+
margin: 0;
|
156 |
}
|
157 |
|
158 |
div.uimob340 .um-header.no-cover .um-profile-photo {
|
215 |
width: 100%;
|
216 |
}
|
217 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
218 |
div.uimob340 .um-account-main {
|
219 |
float: none;
|
220 |
width: 100%;
|
354 |
position: absolute;
|
355 |
top: -40px;
|
356 |
left: 0;
|
357 |
+
margin: 0;
|
358 |
}
|
359 |
|
360 |
div.uimob500 .um-header.no-cover .um-profile-photo {
|
417 |
width: 100%;
|
418 |
}
|
419 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
420 |
div.uimob500 .um-account-main {
|
421 |
float: none;
|
422 |
width: 100%;
|
535 |
height: auto;
|
536 |
}
|
537 |
|
538 |
+
div.uimob800 .um-account-meta img {
|
539 |
+
width: 100%;
|
540 |
+
}
|
541 |
+
|
542 |
div.uimob800 .um-profile-photo {
|
543 |
+
width: 150px !important;
|
544 |
}
|
545 |
|
546 |
div.uimob800 .um-profile-photo a.um-profile-photo-img {
|
562 |
padding: 0;
|
563 |
}
|
564 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
565 |
/********************************************/
|
566 |
|
567 |
/**
|
570 |
|
571 |
/********************************************/
|
572 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
573 |
div.uimob960 .um-profile-photo {
|
574 |
width: 200px !important;
|
575 |
}
|
assets/css/um-styles.css
CHANGED
@@ -60,9 +60,9 @@
|
|
60 |
}
|
61 |
.um.um-in-admin .um-tip {display: none !important}
|
62 |
|
63 |
-
.um input,
|
64 |
-
.um select,
|
65 |
-
.um textarea{
|
66 |
font-size: 15px;
|
67 |
}
|
68 |
|
@@ -175,6 +175,11 @@ p.um-notice {
|
|
175 |
position: relative;
|
176 |
}
|
177 |
|
|
|
|
|
|
|
|
|
|
|
178 |
p.um-notice i {
|
179 |
position: absolute;
|
180 |
right: 14px;
|
@@ -201,6 +206,11 @@ p.um-notice.warning {
|
|
201 |
padding: 8px 15px !important;
|
202 |
}
|
203 |
|
|
|
|
|
|
|
|
|
|
|
204 |
/*
|
205 |
- Errors
|
206 |
*/
|
@@ -227,7 +237,7 @@ p.um-notice.warning {
|
|
227 |
top: -17px;
|
228 |
left: 10px;
|
229 |
position: absolute;
|
230 |
-
z-index:
|
231 |
color: #C74A4A;
|
232 |
font-size: 28px;
|
233 |
line-height: 1em !important;
|
@@ -464,8 +474,8 @@ p.um-notice.warning {
|
|
464 |
position: relative;
|
465 |
}
|
466 |
|
467 |
-
.um-field-checkbox,
|
468 |
-
.um-field-radio {
|
469 |
display: block;
|
470 |
margin: 8px 0;
|
471 |
position: relative;
|
@@ -705,7 +715,13 @@ a.um-link-alt:hover {text-decoration: underline !important;}
|
|
705 |
margin: 0 !important;
|
706 |
}
|
707 |
|
708 |
-
.um-dropdown
|
|
|
|
|
|
|
|
|
|
|
|
|
709 |
display: block;
|
710 |
padding: 8px 12px;
|
711 |
color: #666;
|
@@ -718,7 +734,7 @@ a.um-link-alt:hover {text-decoration: underline !important;}
|
|
718 |
padding: 12px;
|
719 |
}
|
720 |
|
721 |
-
.um-dropdown li
|
722 |
|
723 |
}
|
724 |
|
@@ -728,7 +744,6 @@ a.um-link-alt:hover {text-decoration: underline !important;}
|
|
728 |
|
729 |
.um-dropdown-arr {
|
730 |
position: absolute;
|
731 |
-
color: #fff;
|
732 |
font-size: 24px;
|
733 |
width: 24px;
|
734 |
height: 24px;
|
@@ -845,7 +860,7 @@ small.um-max-filesize span{
|
|
845 |
user-select: none;
|
846 |
background: none !important;
|
847 |
background-color: #fff !important;
|
848 |
-
border:
|
849 |
}
|
850 |
.select2.select2-container .select2-selection .select2-selection__arrow b[role=presentation]{
|
851 |
display:none;
|
@@ -876,7 +891,7 @@ small.um-max-filesize span{
|
|
876 |
border-left: 0 !important;
|
877 |
}
|
878 |
.select2-container.select2-container--open .select2-dropdown{
|
879 |
-
border:
|
880 |
}
|
881 |
.select2-results li{
|
882 |
list-style: none;
|
60 |
}
|
61 |
.um.um-in-admin .um-tip {display: none !important}
|
62 |
|
63 |
+
.um:not(.um-directory) input,
|
64 |
+
.um:not(.um-directory) select,
|
65 |
+
.um:not(.um-directory) textarea{
|
66 |
font-size: 15px;
|
67 |
}
|
68 |
|
175 |
position: relative;
|
176 |
}
|
177 |
|
178 |
+
p.um-notice a {
|
179 |
+
color: #fff;
|
180 |
+
text-decoration: underline;
|
181 |
+
}
|
182 |
+
|
183 |
p.um-notice i {
|
184 |
position: absolute;
|
185 |
right: 14px;
|
206 |
padding: 8px 15px !important;
|
207 |
}
|
208 |
|
209 |
+
p.um-notice.warning a {
|
210 |
+
color: #666;
|
211 |
+
text-decoration: underline;
|
212 |
+
}
|
213 |
+
|
214 |
/*
|
215 |
- Errors
|
216 |
*/
|
237 |
top: -17px;
|
238 |
left: 10px;
|
239 |
position: absolute;
|
240 |
+
z-index: 1;
|
241 |
color: #C74A4A;
|
242 |
font-size: 28px;
|
243 |
line-height: 1em !important;
|
474 |
position: relative;
|
475 |
}
|
476 |
|
477 |
+
.um-field-checkbox:not(.um-field),
|
478 |
+
.um-field-radio:not(.um-field) {
|
479 |
display: block;
|
480 |
margin: 8px 0;
|
481 |
position: relative;
|
715 |
margin: 0 !important;
|
716 |
}
|
717 |
|
718 |
+
.um-dropdown ul {
|
719 |
+
background: #fff;
|
720 |
+
position: relative;
|
721 |
+
z-index: 16;
|
722 |
+
}
|
723 |
+
|
724 |
+
.um-dropdown li a {
|
725 |
display: block;
|
726 |
padding: 8px 12px;
|
727 |
color: #666;
|
734 |
padding: 12px;
|
735 |
}
|
736 |
|
737 |
+
.um-dropdown li a:hover {
|
738 |
|
739 |
}
|
740 |
|
744 |
|
745 |
.um-dropdown-arr {
|
746 |
position: absolute;
|
|
|
747 |
font-size: 24px;
|
748 |
width: 24px;
|
749 |
height: 24px;
|
860 |
user-select: none;
|
861 |
background: none !important;
|
862 |
background-color: #fff !important;
|
863 |
+
border: 1px solid #ddd !important;
|
864 |
}
|
865 |
.select2.select2-container .select2-selection .select2-selection__arrow b[role=presentation]{
|
866 |
display:none;
|
891 |
border-left: 0 !important;
|
892 |
}
|
893 |
.select2-container.select2-container--open .select2-dropdown{
|
894 |
+
border: 1px solid #ddd !important;
|
895 |
}
|
896 |
.select2-results li{
|
897 |
list-style: none;
|
assets/css/um.rtl.css
CHANGED
@@ -5,6 +5,7 @@
|
|
5 |
|
6 |
.um-profile-photo {
|
7 |
float: right;
|
|
|
8 |
}
|
9 |
|
10 |
.um-profile-photo a.um-profile-photo-img {
|
@@ -13,7 +14,7 @@
|
|
13 |
}
|
14 |
|
15 |
.um-cover + .um-header .um-profile-photo a.um-profile-photo-img {
|
16 |
-
right:
|
17 |
}
|
18 |
|
19 |
div.uimob500 .um-profile-photo a.um-profile-photo-img {
|
@@ -22,8 +23,9 @@ div.uimob500 .um-profile-photo a.um-profile-photo-img {
|
|
22 |
|
23 |
.um-profile-edit {
|
24 |
right: auto;
|
25 |
-
left:
|
26 |
-
|
|
|
27 |
}
|
28 |
|
29 |
div.uimob960 .um-header .um-profile-meta,
|
@@ -188,4 +190,6 @@ p.um-notice i {
|
|
188 |
.um-modal-body .um-single-image-preview a.cancel,
|
189 |
.um-modal-body .um-single-file-preview a.cancel {
|
190 |
left: -15px;
|
191 |
-
}
|
|
|
|
5 |
|
6 |
.um-profile-photo {
|
7 |
float: right;
|
8 |
+
margin: 0 30px 0 0;
|
9 |
}
|
10 |
|
11 |
.um-profile-photo a.um-profile-photo-img {
|
14 |
}
|
15 |
|
16 |
.um-cover + .um-header .um-profile-photo a.um-profile-photo-img {
|
17 |
+
right: 0;
|
18 |
}
|
19 |
|
20 |
div.uimob500 .um-profile-photo a.um-profile-photo-img {
|
23 |
|
24 |
.um-profile-edit {
|
25 |
right: auto;
|
26 |
+
left: 0;
|
27 |
+
margin-left: 10px;
|
28 |
+
margin-right: 0;
|
29 |
}
|
30 |
|
31 |
div.uimob960 .um-header .um-profile-meta,
|
190 |
.um-modal-body .um-single-image-preview a.cancel,
|
191 |
.um-modal-body .um-single-file-preview a.cancel {
|
192 |
left: -15px;
|
193 |
+
}
|
194 |
+
|
195 |
+
.um-item-link { padding-right: 0; padding-left: 40px;}
|
assets/dynamic_css/dynamic_profile.php
CHANGED
@@ -1,43 +1,49 @@
|
|
1 |
-
|
2 |
-
<?php
|
3 |
|
4 |
-
|
5 |
-
$photosize_up = ( $photosize / 2 ) + 10;
|
6 |
-
$meta_padding = ( $photosize + 60 ) . 'px';
|
7 |
|
8 |
-
if ( $
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
";
|
14 |
-
}
|
15 |
|
16 |
-
|
17 |
-
|
18 |
-
width: ".$photosize."px;
|
19 |
-
height: ".$photosize."px;
|
20 |
-
}
|
21 |
-
";
|
22 |
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
|
|
|
|
28 |
|
29 |
-
if ( is_rtl() ) {
|
30 |
print "
|
31 |
-
.um-$form_id.um .um-profile-
|
32 |
-
|
|
|
33 |
}
|
34 |
";
|
35 |
-
|
36 |
print "
|
37 |
-
.um-$form_id.um .um-profile-
|
38 |
-
|
39 |
}
|
40 |
";
|
41 |
-
|
42 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
</style>
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) exit; ?>
|
|
|
2 |
|
3 |
+
<style type="text/css">
|
|
|
|
|
4 |
|
5 |
+
<?php if ( ! $photosize || $photosize == 'original' ) {
|
6 |
+
//cannot be more than metadefault value
|
7 |
+
$photosize = um_get_metadefault( 'profile_photosize' );
|
8 |
+
}
|
9 |
+
$photosize = filter_var( $photosize, FILTER_SANITIZE_NUMBER_INT );
|
|
|
|
|
10 |
|
11 |
+
$photosize_up = ( $photosize / 2 ) + 10;
|
12 |
+
$meta_padding = ( $photosize + 60 ) . 'px';
|
|
|
|
|
|
|
|
|
13 |
|
14 |
+
if ( $area_max_width ) {
|
15 |
+
print "
|
16 |
+
.um-$form_id.um .um-profile-body {
|
17 |
+
max-width: $area_max_width;
|
18 |
+
}
|
19 |
+
";
|
20 |
+
}
|
21 |
|
|
|
22 |
print "
|
23 |
+
.um-$form_id.um .um-profile-photo a.um-profile-photo-img {
|
24 |
+
width: ".$photosize."px;
|
25 |
+
height: ".$photosize."px;
|
26 |
}
|
27 |
";
|
28 |
+
|
29 |
print "
|
30 |
+
.um-$form_id.um .um-profile-photo a.um-profile-photo-img {
|
31 |
+
top: -".$photosize_up."px;
|
32 |
}
|
33 |
";
|
34 |
+
|
35 |
+
if ( is_rtl() ) {
|
36 |
+
print "
|
37 |
+
.um-$form_id.um .um-profile-meta {
|
38 |
+
padding-right: $meta_padding;
|
39 |
+
}
|
40 |
+
";
|
41 |
+
} else {
|
42 |
+
print "
|
43 |
+
.um-$form_id.um .um-profile-meta {
|
44 |
+
padding-left: $meta_padding;
|
45 |
+
}
|
46 |
+
";
|
47 |
+
}
|
48 |
+
?>
|
49 |
</style>
|
assets/js/dropdown.js
ADDED
@@ -0,0 +1,85 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
var um_dropdown_triggers = {};
|
2 |
+
|
3 |
+
function um_init_new_dropdown() {
|
4 |
+
jQuery('.um-new-dropdown').each( function() {
|
5 |
+
var menu = jQuery(this);
|
6 |
+
|
7 |
+
var is_inited = menu.data( 'um-dropdown-inited' );
|
8 |
+
if ( is_inited ) {
|
9 |
+
return;
|
10 |
+
}
|
11 |
+
|
12 |
+
var element = menu.data('element');
|
13 |
+
var trigger = menu.data('trigger');
|
14 |
+
|
15 |
+
menu.data( 'um-dropdown-inited', true );
|
16 |
+
|
17 |
+
if ( -1 === jQuery.inArray( element, um_dropdown_triggers[ trigger ] ) ) {
|
18 |
+
jQuery( document.body ).on( trigger, element, function(e) {
|
19 |
+
var obj = jQuery(this);
|
20 |
+
|
21 |
+
if ( obj.data( 'um-new-dropdown-show' ) === true ) {
|
22 |
+
obj.data( 'um-new-dropdown-show', false );
|
23 |
+
obj.find( '.um-new-dropdown' ).hide();
|
24 |
+
} else {
|
25 |
+
jQuery('.um-new-dropdown').hide();
|
26 |
+
jQuery('.um-new-dropdown').parent().data( 'um-new-dropdown-show', false );
|
27 |
+
|
28 |
+
if ( ! obj.find( '.um-new-dropdown' ).length ) {
|
29 |
+
var dropdown_layout = menu.clone();
|
30 |
+
|
31 |
+
// dropdown_layout.css({
|
32 |
+
// top : '20px',
|
33 |
+
// width: '150px',
|
34 |
+
// right: 0
|
35 |
+
// });
|
36 |
+
|
37 |
+
obj.append( dropdown_layout );
|
38 |
+
|
39 |
+
obj.trigger( 'fmwp_dropdown_render', { dropdown_layout:dropdown_layout, trigger:trigger, element:element, obj:obj} );
|
40 |
+
|
41 |
+
dropdown_layout.show();
|
42 |
+
} else {
|
43 |
+
obj.find( '.um-new-dropdown' )./*css({
|
44 |
+
top : '20px',
|
45 |
+
width: '150px',
|
46 |
+
right: 0
|
47 |
+
}).*/show();
|
48 |
+
}
|
49 |
+
|
50 |
+
obj.data( 'um-new-dropdown-show', true );
|
51 |
+
|
52 |
+
jQuery( document.body ).bind( 'click', function( event ) {
|
53 |
+
|
54 |
+
if ( jQuery('.um-new-dropdown').find( '.' + jQuery( event.target ).attr('class').trim().replace( ' ', '.' ) ).length === 0 &&
|
55 |
+
|
56 |
+
|
57 |
+
jQuery( '.' + jQuery(event.target).attr('class').trim() ) !== element ) {
|
58 |
+
//event = ev;
|
59 |
+
jQuery('.um-new-dropdown').hide();
|
60 |
+
jQuery('.um-new-dropdown').parent().data( 'um-new-dropdown-show', false );
|
61 |
+
jQuery( document.body ).unbind( event );
|
62 |
+
|
63 |
+
}
|
64 |
+
});
|
65 |
+
}
|
66 |
+
});
|
67 |
+
|
68 |
+
if ( typeof um_dropdown_triggers[ trigger ] == 'undefined' ) {
|
69 |
+
um_dropdown_triggers[ trigger ] = [];
|
70 |
+
}
|
71 |
+
um_dropdown_triggers[ trigger ].push( element );
|
72 |
+
}
|
73 |
+
});
|
74 |
+
}
|
75 |
+
|
76 |
+
jQuery( document ).ready( function($) {
|
77 |
+
um_init_new_dropdown();
|
78 |
+
|
79 |
+
jQuery( document.body ).on( 'click', '.um-new-dropdown a', function(e) {
|
80 |
+
jQuery(this).parents('.um-new-dropdown').hide();
|
81 |
+
jQuery(this).parents('.um-new-dropdown').parent().data( 'um-new-dropdown-show', false );
|
82 |
+
jQuery('body').trigger('click');
|
83 |
+
e.stopPropagation();
|
84 |
+
});
|
85 |
+
});
|
assets/js/dropdown.min.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
var um_dropdown_triggers={};function um_init_new_dropdown(){jQuery(".um-new-dropdown").each(function(){var r=jQuery(this);if(!r.data("um-dropdown-inited")){var e=r.data("element"),u=r.data("trigger");r.data("um-dropdown-inited",!0),-1===jQuery.inArray(e,um_dropdown_triggers[u])&&(jQuery(document.body).on(u,e,function(d){var n=jQuery(this);if(!0===n.data("um-new-dropdown-show"))n.data("um-new-dropdown-show",!1),n.find(".um-new-dropdown").hide();else{if(jQuery(".um-new-dropdown").hide(),jQuery(".um-new-dropdown").parent().data("um-new-dropdown-show",!1),n.find(".um-new-dropdown").length)n.find(".um-new-dropdown").show();else{var o=r.clone();n.append(o),n.trigger("fmwp_dropdown_render",{dropdown_layout:o,trigger:u,element:e,obj:n}),o.show()}n.data("um-new-dropdown-show",!0),jQuery(document.body).bind("click",function(d){0===jQuery(".um-new-dropdown").find("."+jQuery(d.target).attr("class").trim().replace(" ",".")).length&&jQuery("."+jQuery(d.target).attr("class").trim())!==e&&(jQuery(".um-new-dropdown").hide(),jQuery(".um-new-dropdown").parent().data("um-new-dropdown-show",!1),jQuery(document.body).unbind(d))})}}),void 0===um_dropdown_triggers[u]&&(um_dropdown_triggers[u]=[]),um_dropdown_triggers[u].push(e))}})}jQuery(document).ready(function(d){um_init_new_dropdown(),jQuery(document.body).on("click",".um-new-dropdown a",function(d){jQuery(this).parents(".um-new-dropdown").hide(),jQuery(this).parents(".um-new-dropdown").parent().data("um-new-dropdown-show",!1),jQuery("body").trigger("click"),d.stopPropagation()})});
|
assets/js/um-conditional.js
CHANGED
@@ -204,12 +204,18 @@ function um_in_array(needle, haystack, strict){
|
|
204 |
* @param object $dom
|
205 |
* @param boolean is_single_update
|
206 |
*/
|
207 |
-
function um_apply_conditions($dom, is_single_update) {
|
208 |
var operators = ['empty', 'not empty', 'equals to', 'not equals', 'greater than', 'less than', 'contains'];
|
|
|
|
|
|
|
209 |
var key = $dom.parents('.um-field[data-key]').data('key');
|
210 |
-
var conditions = um_field_conditions[key];
|
|
|
|
|
|
|
211 |
|
212 |
-
var live_field_value = um_get_field_data($dom);
|
213 |
|
214 |
var $owners = {};
|
215 |
var $owners_values = {};
|
204 |
* @param object $dom
|
205 |
* @param boolean is_single_update
|
206 |
*/
|
207 |
+
function um_apply_conditions( $dom, is_single_update ) {
|
208 |
var operators = ['empty', 'not empty', 'equals to', 'not equals', 'greater than', 'less than', 'contains'];
|
209 |
+
if ( ! $dom.parents('.um-field[data-key]').length ) {
|
210 |
+
return;
|
211 |
+
}
|
212 |
var key = $dom.parents('.um-field[data-key]').data('key');
|
213 |
+
var conditions = um_field_conditions[ key ];
|
214 |
+
if ( typeof conditions === 'undefined' ) {
|
215 |
+
return;
|
216 |
+
}
|
217 |
|
218 |
+
var live_field_value = um_get_field_data( $dom );
|
219 |
|
220 |
var $owners = {};
|
221 |
var $owners_values = {};
|
assets/js/um-conditional.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
var arr_all_conditions=[],um_field_conditions={},um_field_default_values={};function um_get_field_default_value(e){var i="",n=um_get_field_type(e);switch(n){case"text":case"number":case"date":case"textarea":case"select":i=e.find("input:text,input[type=number],textarea,select").val();break;case"multiselect":i=e.find("select").val();break;case"radio":1<=e.find("input[type=radio]:checked").length&&(i=e.find("input[type=radio]:checked").val());break;case"checkbox":1<=e.find("input[type=checkbox]:checked").length&&(1<e.find("input[type=checkbox]:checked").length?e.find("input[type=checkbox]:checked").each(function(){i=i+jQuery(this).val()+" "}):i=e.find("input[type=checkbox]:checked").val())}return{type:n,value:i}}function um_get_field_element(e){switch(um_get_field_type(e)){case"text":case"number":case"date":case"textarea":case"select":case"multiselect":case"radio":case"checkbox":return e.find("input,textarea,select")}return""}function um_get_field_type(e){var n="",i=e.attr("class");return jQuery.each(i.split(" "),function(e,i){-1!=i.indexOf("um-field-type")&&(n=i.split("_")[1])}),n}function um_get_field_children(n){var t=[];return jQuery.each(arr_all_conditions,function(e,i){i.field.parent==n&&t.push(i.field.condition)}),t}function um_splitup_array(e,i){for(var n=e.length%i,t=n,a=Math.floor(e.length/i),u=[],o=0;o<e.length;o+=a){var r=a+o,d=!1;0!==n&&t&&(r++,t--,d=!0),u.push(e.slice(o,r)),d&&o++}var c=[];return jQuery.each(u,function(e,i){c.push({action:i[0],if_field:i[1],operator:i[2],value:i[3]})}),c}function um_get_field_data(e){return um_live_field=e.parents(".um-field").data("key"),um_live_value=e.val(),e.is(":checkbox")&&(um_live_value="",1<e.parents(".um-field").find("input:checked").length?e.parents(".um-field").find("input:checked").each(function(){um_live_value=um_live_value+jQuery(this).val()+" "}):1<=e.parents(".um-field").find("input:checked").length&&(um_live_value=e.parents(".um-field").find("input:checked").val())),e.is(":radio")&&(um_live_value=e.parents(".um-field").find("input[type=radio]:checked").val()),um_live_value}function um_in_array(e,i,n){var t,a=!1;n=!!n;for(t in i)if(n&&i[t]===e||!n&&i[t]==e){a=!0;break}return a}function um_apply_conditions(n,e){var i=n.parents(".um-field[data-key]").data("key"),t=um_field_conditions[i]
|
1 |
+
var arr_all_conditions=[],um_field_conditions={},um_field_default_values={};function um_get_field_default_value(e){var i="",n=um_get_field_type(e);switch(n){case"text":case"number":case"date":case"textarea":case"select":i=e.find("input:text,input[type=number],textarea,select").val();break;case"multiselect":i=e.find("select").val();break;case"radio":1<=e.find("input[type=radio]:checked").length&&(i=e.find("input[type=radio]:checked").val());break;case"checkbox":1<=e.find("input[type=checkbox]:checked").length&&(1<e.find("input[type=checkbox]:checked").length?e.find("input[type=checkbox]:checked").each(function(){i=i+jQuery(this).val()+" "}):i=e.find("input[type=checkbox]:checked").val())}return{type:n,value:i}}function um_get_field_element(e){switch(um_get_field_type(e)){case"text":case"number":case"date":case"textarea":case"select":case"multiselect":case"radio":case"checkbox":return e.find("input,textarea,select")}return""}function um_get_field_type(e){var n="",i=e.attr("class");return jQuery.each(i.split(" "),function(e,i){-1!=i.indexOf("um-field-type")&&(n=i.split("_")[1])}),n}function um_get_field_children(n){var t=[];return jQuery.each(arr_all_conditions,function(e,i){i.field.parent==n&&t.push(i.field.condition)}),t}function um_splitup_array(e,i){for(var n=e.length%i,t=n,a=Math.floor(e.length/i),u=[],o=0;o<e.length;o+=a){var r=a+o,d=!1;0!==n&&t&&(r++,t--,d=!0),u.push(e.slice(o,r)),d&&o++}var c=[];return jQuery.each(u,function(e,i){c.push({action:i[0],if_field:i[1],operator:i[2],value:i[3]})}),c}function um_get_field_data(e){return um_live_field=e.parents(".um-field").data("key"),um_live_value=e.val(),e.is(":checkbox")&&(um_live_value="",1<e.parents(".um-field").find("input:checked").length?e.parents(".um-field").find("input:checked").each(function(){um_live_value=um_live_value+jQuery(this).val()+" "}):1<=e.parents(".um-field").find("input:checked").length&&(um_live_value=e.parents(".um-field").find("input:checked").val())),e.is(":radio")&&(um_live_value=e.parents(".um-field").find("input[type=radio]:checked").val()),um_live_value}function um_in_array(e,i,n){var t,a=!1;n=!!n;for(t in i)if(n&&i[t]===e||!n&&i[t]==e){a=!0;break}return a}function um_apply_conditions(n,e){if(n.parents(".um-field[data-key]").length){var i=n.parents(".um-field[data-key]").data("key"),t=um_field_conditions[i];if(void 0!==t){var a=um_get_field_data(n),u={},o={},r={};jQuery.each(t,function(e,i){void 0===o[i.owner]&&(o[i.owner]=[],r[i.owner]={}),o[i.owner].push(i.value),r[i.owner]=i}),jQuery.each(t,function(e,i){void 0===u[i.owner]&&(u[i.owner]={}),"empty"==i.operator&&(!a||""==a&&um_in_array(a,o[i.owner])?u[i.owner][e]=!0:u[i.owner][e]=!1),"not empty"==i.operator&&(a&&""!=a&&!um_in_array(a,o[i.owner])?u[i.owner][e]=!0:u[i.owner][e]=!1),"equals to"==i.operator&&(i.value==a&&um_in_array(a,o[i.owner])?u[i.owner][e]=!0:u[i.owner][e]=!1),"not equals"==i.operator&&(jQuery.isNumeric(i.value)&&parseInt(a)!=parseInt(i.value)&&a&&!um_in_array(a,o[i.owner])?u[i.owner][e]=!0:i.value==a||um_in_array(a,o[i.owner])?u[i.owner][e]=!1:u[i.owner][e]=!0),"greater than"==i.operator&&(jQuery.isNumeric(i.value)&&parseInt(a)>parseInt(i.value)?u[i.owner][e]=!0:u[i.owner][e]=!1),"less than"==i.operator&&(jQuery.isNumeric(i.value)&&parseInt(a)<parseInt(i.value)?u[i.owner][e]=!0:u[i.owner][e]=!1),"contains"==i.operator&&("multiselect"==um_get_field_type(n.parents(".um-field[data-key]"))?a&&0<=a.indexOf(i.value)&&um_in_array(i.value,a)?u[i.owner][e]=!0:u[i.owner][e]=!1:"checkbox"==um_get_field_type(n.parents(".um-field[data-key]"))?a&&0<=a.indexOf(i.value)?u[i.owner][e]=!0:u[i.owner][e]=!1:a&&0<=a.indexOf(i.value)&&um_in_array(a,o[i.owner])?u[i.owner][e]=!0:u[i.owner][e]=!1)}),jQuery.each(u,function(e,i){um_in_array(!0,i)?um_field_apply_action(n,r[e],!0):um_field_apply_action(n,r[e],!1)}),n.trigger("um_fields_change")}}}function um_field_apply_action(e,i,n){var t=jQuery('div.um-field[data-key="'+i.owner+'"]');"show"==i.action&&n&&(t.show(),_show_in_ie(t),um_field_restore_default_value(t)),"show"!=i.action||n||(t.hide(),_hide_in_ie(t)),"hide"==i.action&&n&&(t.hide(),_hide_in_ie(t)),"hide"!=i.action||n||(t.show(),_show_in_ie(t),um_field_restore_default_value(t)),e.removeClass("um-field-has-changed")}function um_field_restore_default_value(t){var e=um_get_field_type(t),i=t.data("key"),n=um_field_default_values[i];switch(e){case"text":case"number":case"date":case"textarea":t.find("input:text,input[type=number],textareas").val(n.value);break;case"select":t.find("select").find("option").prop("selected",!1),t.find("select").val(n.value),t.find("select").trigger("change");break;case"multiselect":t.find("select").find("option").prop("selected",!1),jQuery.each(n.value,function(e,i){t.find("select").find('option[value="'+i+'"]').attr("selected",!0)}),t.find("select").trigger("change");break;case"checkbox":if(1<=t.find("input[type=checkbox]:checked").length)if(t.find("input[type=checkbox]:checked").removeAttr("checked"),t.find("span.um-field-checkbox-state i").removeClass("um-icon-android-checkbox-outline"),t.find("span.um-field-checkbox-state i").addClass("um-icon-android-checkbox-outline-blank"),t.find(".um-field-checkbox.active").removeClass("active"),jQuery.isArray(n.value))jQuery.each(n.value,function(e,i){var n=t.find('input[type=checkbox][value="'+i+'"]');n.attr("checked",!0),n.closest(".um-field-checkbox").find("i").removeClass("um-icon-android-checkbox-outline-blank"),n.closest(".um-field-checkbox").find("i").addClass("um-icon-android-checkbox-outline"),n.closest(".um-field-checkbox").addClass("active")});else{var a=t.find('input[type=checkbox][value="'+n.value+'"]');a.attr("checked",!0),a.closest(".um-field-checkbox").find("i").removeClass("um-icon-android-checkbox-outline-blank"),a.closest(".um-field-checkbox").find("i").addClass("um-icon-android-checkbox-outline"),a.closest(".um-field-checkbox").addClass("active")}break;case"radio":1<=t.find("input[type=radio]:checked").length&&setTimeout(function(){t.find("input[type=radio]:checked").removeAttr("checked"),t.find("span.um-field-radio-state i").removeClass("um-icon-android-radio-button-on"),t.find("span.um-field-radio-state i").addClass("um-icon-android-radio-button-off"),t.find(".um-field-radio.active").removeClass("active");var e=t.find("input[type=radio][value='"+n.value+"']");e.attr("checked",!0),e.closest(".um-field-radio").find("i").removeClass("um-icon-android-radio-button-off"),e.closest(".um-field-radio").find("i").addClass("um-icon-android-radio-button-on"),e.closest(".um-field-radio").addClass("active")},100)}if(!t.hasClass("um-field-has-changed")){var u=um_get_field_element(t);"radio"!=e&&"checkbox"!=e||(u=u.find(":checked")),u&&(u.trigger("change"),t.addClass("um-field-has-changed"))}}function um_field_hide_siblings(){jQuery.each(um_field_conditions,function(e,i){(1<=jQuery('.um-field[data-key="'+e+'"]:hidden').length||"none"==jQuery('.um-field[data-key="'+e+'"]').css("display"))&&jQuery.each(i,function(e,i){jQuery('.um-field[data-key="'+i.owner+'"]').hide()})})}function _hide_in_ie(e){void 0!==jQuery.browser&&jQuery.browser.msie&&e.css({visibility:"hidden"})}function _show_in_ie(e){void 0!==jQuery.browser&&jQuery.browser.msie&&e.css({visibility:"visible"})}function um_init_field_conditions(){var e=[];jQuery(".um-field[data-key]").each(function(){var t=jQuery(this).data("key");e.push(t);var u={};jQuery.each(jQuery(this)[0].attributes,function(e,i){if(-1!=i.name.indexOf("data-cond")){var n=i.name.slice(10),t=n.substring(1,0),a=n.slice(2);void 0===u[t]&&(u[t]={}),u[t][a]=i.value}}),jQuery.each(u,function(e,i){var n={field:{owner:t,action:i.action,parent:i.field,operator:i.operator,value:i.value,condition:{owner:t,action:i.action,operator:i.operator,value:i.value}}};arr_all_conditions.push(n)}),um_field_default_values[jQuery(this).data("key")]=um_get_field_default_value(jQuery(this))}),jQuery.each(e,function(e,i){um_field_conditions[i]=um_get_field_children(i)}),jQuery(".um-field[data-key]:visible").each(function(){var e=um_get_field_element(jQuery(this));void 0!==e.trigger&&e.trigger("change")})}jQuery(document).ready(function(){jQuery(document).on("change",'.um-field select, .um-field input[type="radio"], .um-field input[type="checkbox"]',function(){um_apply_conditions(jQuery(this),!1)}),jQuery(document).on("input change",'.um-field input[type="text"]',function(){um_apply_conditions(jQuery(this),!1)}),jQuery(document).on("input change",'.um-field input[type="number"]',function(){um_apply_conditions(jQuery(this),!1)}),jQuery(document).on("input change",'.um-field input[type="password"]',function(){um_apply_conditions(jQuery(this),!1)}),jQuery(document).on("um_fields_change",function(){um_field_hide_siblings(),um_field_hide_siblings()}),um_init_field_conditions()});
|
assets/js/um-functions.js
CHANGED
@@ -34,6 +34,7 @@ function UM_domenus() {
|
|
34 |
if ( position === 'lc' && jQuery('html').attr('dir') === 'rtl' ){
|
35 |
position = 'rc';
|
36 |
}
|
|
|
37 |
if ( jQuery(window).width() <= 1200 && element === 'div.um-profile-edit' ) {
|
38 |
if ( jQuery('html').attr('dir') === 'rtl' ){
|
39 |
position = 'rc';
|
@@ -53,10 +54,8 @@ function UM_domenus() {
|
|
53 |
|
54 |
if ( top_ ) {
|
55 |
top_p = jQuery(element).find('img').height() + 4 + top_;
|
56 |
-
left_gap = 4;
|
57 |
} else {
|
58 |
top_p = jQuery(element).find('img').height() + 4;
|
59 |
-
left_gap = 0;
|
60 |
}
|
61 |
|
62 |
if ( top_p == 4 && element === 'div.um-cover' ) {
|
@@ -105,16 +104,16 @@ function UM_domenus() {
|
|
105 |
|
106 |
} else if ( position === 'bc' ) {
|
107 |
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
}
|
113 |
|
114 |
menu.css({
|
115 |
-
'top' : top_p,
|
116 |
'width': 200,
|
117 |
-
'left': left_p
|
118 |
'right' : 'auto',
|
119 |
'text-align' : 'center'
|
120 |
});
|
@@ -204,22 +203,9 @@ function um_responsive(){
|
|
204 |
|
205 |
});
|
206 |
|
207 |
-
jQuery('.um-members').each(function(){
|
208 |
-
UM_Member_Grid( jQuery(this) );
|
209 |
-
});
|
210 |
-
|
211 |
UM_domenus();
|
212 |
-
|
213 |
}
|
214 |
|
215 |
-
function UM_Member_Grid( container ) {
|
216 |
-
container.masonry({
|
217 |
-
itemSelector: '.um-member',
|
218 |
-
columnWidth: '.um-member',
|
219 |
-
gutter: '.um-gutter-sizer'
|
220 |
-
});
|
221 |
-
|
222 |
-
}
|
223 |
|
224 |
function initImageUpload_UM( trigger ) {
|
225 |
|
@@ -677,7 +663,7 @@ function um_modal_responsive() {
|
|
677 |
|
678 |
}
|
679 |
|
680 |
-
function um_remove_modal(){
|
681 |
jQuery('img.cropper-hidden').cropper('destroy');
|
682 |
|
683 |
jQuery('body,html,textarea').css("overflow", "auto");
|
34 |
if ( position === 'lc' && jQuery('html').attr('dir') === 'rtl' ){
|
35 |
position = 'rc';
|
36 |
}
|
37 |
+
|
38 |
if ( jQuery(window).width() <= 1200 && element === 'div.um-profile-edit' ) {
|
39 |
if ( jQuery('html').attr('dir') === 'rtl' ){
|
40 |
position = 'rc';
|
54 |
|
55 |
if ( top_ ) {
|
56 |
top_p = jQuery(element).find('img').height() + 4 + top_;
|
|
|
57 |
} else {
|
58 |
top_p = jQuery(element).find('img').height() + 4;
|
|
|
59 |
}
|
60 |
|
61 |
if ( top_p == 4 && element === 'div.um-cover' ) {
|
104 |
|
105 |
} else if ( position === 'bc' ) {
|
106 |
|
107 |
+
var top_o = 0;
|
108 |
+
var top_offset = menu.data('top-offset');
|
109 |
+
if ( typeof top_offset !== 'undefined' ) {
|
110 |
+
top_o = top_offset*1;
|
111 |
}
|
112 |
|
113 |
menu.css({
|
114 |
+
'top' : top_p + top_o,
|
115 |
'width': 200,
|
116 |
+
'left': left_p,
|
117 |
'right' : 'auto',
|
118 |
'text-align' : 'center'
|
119 |
});
|
203 |
|
204 |
});
|
205 |
|
|
|
|
|
|
|
|
|
206 |
UM_domenus();
|
|
|
207 |
}
|
208 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
209 |
|
210 |
function initImageUpload_UM( trigger ) {
|
211 |
|
663 |
|
664 |
}
|
665 |
|
666 |
+
function um_remove_modal() {
|
667 |
jQuery('img.cropper-hidden').cropper('destroy');
|
668 |
|
669 |
jQuery('body,html,textarea').css("overflow", "auto");
|
assets/js/um-functions.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
function UM_check_password_matched(){jQuery(document).on("keyup","input[data-key=user_password],input[data-key=confirm_user_password]",function(e){var t=jQuery("input[data-key=user_password]").val(),a=jQuery("input[data-key=confirm_user_password]").val(),o=jQuery("input[data-key=user_password],input[data-key=confirm_user_password]");t||a?t!==a?o.removeClass("um-validate-matched").addClass("um-validate-not-matched"):o.removeClass("um-validate-not-matched").addClass("um-validate-matched"):o.removeClass("um-validate-matched").removeClass("um-validate-not-matched")})}function UM_hide_menus(){var e=jQuery(".um-dropdown");e.parents("div").find("a").removeClass("active"),e.hide()}function UM_domenus(){jQuery(".um-dropdown").each(function(){var e=jQuery(this),t=jQuery(this).attr("data-element"),a=jQuery(this).attr("data-position");jQuery(t).addClass("um-trigger-menu-on-"+e.attr("data-trigger")),"lc"===a&&"rtl"===jQuery("html").attr("dir")&&(a="rc"),jQuery(window).width()<=1200&&"div.um-profile-edit"===t&&(a="rtl"===jQuery("html").attr("dir")?"rc":"lc"),jQuery(t).find("img").width()<200?left_p=(jQuery(t).width()-jQuery(t).find("img").width())/2+(jQuery(t).find("img").width()-200)/2:left_p=(jQuery(t).width()-jQuery(t).find("img").width())/2,top_=parseInt(jQuery(t).find("a").css("top")),top_?(top_p=jQuery(t).find("img").height()+4+top_,left_gap=4):(top_p=jQuery(t).find("img").height()+4,left_gap=0),4==top_p&&"div.um-cover"===t?top_p=jQuery(t).height()/2+e.height()/2:4==top_p&&(top_p=jQuery(t).height()+20),"lc"===a?(gap_right=jQuery(t).width()+17,e.css({top:0,width:200,left:"auto",right:gap_right+"px","text-align":"center"}),e.find(".um-dropdown-arr").find("i").removeClass().addClass("um-icon-arrow-right-b"),e.find(".um-dropdown-arr").css({top:"4px",left:"auto",right:"-17px"})):"rc"===a?(gap_right=jQuery(t).width()+25,e.css({top:0,width:200,left:gap_right+"px",right:"auto","text-align":"center"}),e.find(".um-dropdown-arr").find("i").removeClass().addClass("um-icon-arrow-left-b"),e.find(".um-dropdown-arr").css({top:"4px",left:"-17px",right:"auto"})):"bc"===a&&("rtl"===jQuery("html").attr("dir")?rtl_gap=10:rtl_gap=0,e.css({top:top_p,width:200,left:left_p+left_gap+rtl_gap,right:"auto","text-align":"center"}),e.find(".um-dropdown-arr").find("i").removeClass().addClass("um-icon-arrow-up-b"),e.find(".um-dropdown-arr").css({top:"-17px",left:e.width()/2-12,right:"auto"}))})}function um_responsive(){jQuery(".um").each(function(){element_width=jQuery(this).width(),element_width<=340?(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960"),jQuery(this).addClass("uimob340")):element_width<=500?(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960"),jQuery(this).addClass("uimob500")):element_width<=800?(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960"),jQuery(this).addClass("uimob800")):element_width<=960?(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960"),jQuery(this).addClass("uimob960")):960<element_width&&(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960")),0<jQuery(".um-account-nav").length&&jQuery(".um-account-side").is(":visible")&&0==jQuery(".um-account-tab:visible").length&&jQuery(".um-account-side li a.current").trigger("click"),jQuery(this).css("opacity",1)}),jQuery(".um-cover, .um-member-cover, .um-cover-e").each(function(){var e=jQuery(this),t=e.data("ratio"),a=e.width(),o=t.split(":");calcHeight=Math.round(a/o[0])+"px",e.height(calcHeight),e.find(".um-cover-add").height(calcHeight)}),jQuery(".um-members").each(function(){UM_Member_Grid(jQuery(this))}),UM_domenus()}function UM_Member_Grid(e){e.masonry({itemSelector:".um-member",columnWidth:".um-member",gutter:".um-gutter-sizer"})}function initImageUpload_UM(r){r.data("upload_help_text")?upload_help_text='<span class="help">'+r.data("upload_help_text")+"</span>":upload_help_text="",r.data("icon")?icon='<span class="icon"><i class="'+r.data("icon")+'"></i></span>':icon="",r.data("upload_text")?upload_text='<span class="str">'+r.data("upload_text")+"</span>":upload_text="";var e=0;jQuery("#um_upload_single:visible").data("user_id")&&(e=jQuery("#um_upload_single:visible").data("user_id")),r.uploadFile({url:wp.ajax.settings.url,method:"POST",multiple:!1,formData:{action:"um_imageupload",key:r.data("key"),set_id:r.data("set_id"),set_mode:r.data("set_mode"),_wpnonce:r.data("nonce"),timestamp:r.data("timestamp"),user_id:e},fileName:r.data("key"),allowedTypes:r.data("allowed_types"),maxFileSize:r.data("max_size"),dragDropStr:icon+upload_text+upload_help_text,sizeErrorStr:r.data("max_size_error"),extErrorStr:r.data("extension_error"),maxFileCountErrorStr:r.data("max_files_error"),maxFileCount:1,showDelete:!1,showAbort:!1,showDone:!1,showFileCounter:!1,showStatusAfterSuccess:!0,returnType:"json",onSubmit:function(e){r.parents(".um-modal-body").find(".um-error-block").remove()},onSuccess:function(e,t,a){r.selectedFiles=0,t.success&&0==t.success||void 0!==t.data.error?(r.parents(".um-modal-body").append('<div class="um-error-block">'+t.data.error+"</div>"),r.parents(".um-modal-body").find(".upload-statusbar").hide(0),um_modal_responsive()):jQuery.each(t.data,function(e,t){var a=r.parents(".um-modal-body").find(".um-single-image-preview img"),o=r.parents(".um-modal-body").find(".um-single-image-preview"),i=new Date;a.attr("src",t.url+"?"+i.getTime()),a.data("file",t.file),a.load(function(){r.parents(".um-modal-body").find(".um-modal-btn.um-finish-upload.disabled").removeClass("disabled"),r.parents(".um-modal-body").find(".ajax-upload-dragdrop,.upload-statusbar").hide(0),o.show(0),um_modal_responsive()})})},onError:function(e){console.log(e)}})}function initFileUpload_UM(o){o.data("upload_help_text")?upload_help_text='<span class="help">'+o.data("upload_help_text")+"</span>":upload_help_text="",o.data("icon")?icon='<span class="icon"><i class="'+o.data("icon")+'"></i></span>':icon="",o.data("upload_text")?upload_text='<span class="str">'+o.data("upload_text")+"</span>":upload_text="",jQuery("#um_upload_single:visible").data("user_id")&&(user_id=jQuery("#um_upload_single:visible").data("user_id")),o.uploadFile({url:wp.ajax.settings.url,method:"POST",multiple:!1,formData:{action:"um_fileupload",key:o.data("key"),set_id:o.data("set_id"),user_id:o.data("user_id"),set_mode:o.data("set_mode"),_wpnonce:o.data("nonce"),timestamp:o.data("timestamp")},fileName:o.data("key"),allowedTypes:o.data("allowed_types"),maxFileSize:o.data("max_size"),dragDropStr:icon+upload_text+upload_help_text,sizeErrorStr:o.data("max_size_error"),extErrorStr:o.data("extension_error"),maxFileCountErrorStr:o.data("max_files_error"),maxFileCount:1,showDelete:!1,showAbort:!1,showDone:!1,showFileCounter:!1,showStatusAfterSuccess:!0,onSubmit:function(e){o.parents(".um-modal-body").find(".um-error-block").remove()},onSuccess:function(e,t,a){o.selectedFiles=0,t.success&&0==t.success||void 0!==t.data.error?(o.parents(".um-modal-body").append('<div class="um-error-block">'+t.data.error+"</div>"),o.parents(".um-modal-body").find(".upload-statusbar").hide(0)):jQuery.each(t.data,function(e,t){o.parents(".um-modal-body").find(".um-modal-btn.um-finish-upload.disabled").removeClass("disabled"),o.parents(".um-modal-body").find(".ajax-upload-dragdrop,.upload-statusbar").hide(0),o.parents(".um-modal-body").find(".um-single-file-preview").show(0),"icon"==e?o.parents(".um-modal-body").find(".um-single-fileinfo i").removeClass().addClass(t):"icon_bg"==e?o.parents(".um-modal-body").find(".um-single-fileinfo span.icon").css({"background-color":t}):"filename"==e?o.parents(".um-modal-body").find(".um-single-fileinfo a").attr("data-file",t):"original_name"==e?(o.parents(".um-modal-body").find(".um-single-fileinfo a").attr("data-orignal-name",t),o.parents(".um-modal-body").find(".um-single-fileinfo span.filename").html(t)):"url"==e&&o.parents(".um-modal-body").find(".um-single-fileinfo a").attr("href",t)}),setTimeout(function(){um_modal_responsive()},1e3)},onError:function(e){console.log(e)}})}function initCrop_UM(){var t=jQuery(".um-modal .um-single-image-preview img").first(),e=jQuery(".um-modal .um-single-image-preview"),a=t.parent().attr("data-crop"),o=t.parent().attr("data-min_width"),i=t.parent().attr("data-min_height"),r=t.parent().attr("data-ratio");if(jQuery(".um-modal").find("#um_upload_single").attr("data-ratio"))r=(r=jQuery(".um-modal").find("#um_upload_single").attr("data-ratio")).split(":")[0];if(t.length&&""!=t.attr("src")){var u=jQuery(window).height()-(jQuery(".um-modal-footer a").height()+20)-50-jQuery(".um-modal-header:visible").height();if(t.css({height:"auto"}),e.css({height:"auto"}),jQuery(window).height()<=400?(e.css({height:u+"px","max-height":u+"px"}),t.css({height:"auto"})):(t.css({height:"auto","max-height":u+"px"}),e.css({height:t.height(),"max-height":u+"px"})),"square"==a)var d={minWidth:o,minHeight:i,dragCrop:!1,aspectRatio:1,zoomable:!1,rotatable:!1,dashed:!1,done:function(e){t.parent().attr("data-coord",Math.round(e.x)+","+Math.round(e.y)+","+Math.round(e.width)+","+Math.round(e.height))}};else if("cover"==a){0<Math.round(o/r)&&(i=Math.round(o/r));d={minWidth:o,minHeight:i,dragCrop:!1,aspectRatio:r,zoomable:!1,rotatable:!1,dashed:!1,done:function(e){t.parent().attr("data-coord",Math.round(e.x)+","+Math.round(e.y)+","+Math.round(e.width)+","+Math.round(e.height))}}}else if("user"==a)d={minWidth:o,minHeight:i,dragCrop:!0,aspectRatio:"auto",zoomable:!1,rotatable:!1,dashed:!1,done:function(e){t.parent().attr("data-coord",Math.round(e.x)+","+Math.round(e.y)+","+Math.round(e.width)+","+Math.round(e.height))}};0!=a&&(t.cropper(d),jQuery(".um-single-image-preview img.cropper-hidden").cropper("destroy"),jQuery(".um-single-image-preview img.lazyloaded").addClass("cropper-hidden"),jQuery(".um-single-image-preview img.lazyloaded").removeClass("lazyloaded"),jQuery(".um-single-image-preview .cropper-container").append('<div class="um-clear"></div>'))}}function um_new_modal(e,t,a,o){if(0==jQuery("body").find(".um-modal-overlay").length)if(jQuery(".tipsy").hide(),UM_hide_menus(),jQuery("body,html,textarea").css("overflow","hidden"),jQuery(document).bind("touchmove",function(e){e.preventDefault()}),jQuery(".um-modal").on("touchmove",function(e){e.stopPropagation()}),a?jQuery("body").append('<div class="um-modal-overlay"></div><div class="um-modal is-photo"></div>'):jQuery("body").append('<div class="um-modal-overlay"></div><div class="um-modal no-photo"></div>'),jQuery("#"+e).prependTo(".um-modal"),a){jQuery(".um-modal").find(".um-modal-photo").html("<img />");var i=jQuery(".um-modal-photo img"),r=jQuery(window).width()-60,u=jQuery(window).height()-.25*jQuery(window).height();i.attr("src",o),i.load(function(){jQuery("#"+e).show(),jQuery(".um-modal").show(),i.css({opacity:0}),i.css({"max-width":r}),i.css({"max-height":u}),jQuery(".um-modal").css({width:i.width(),"margin-left":"-"+i.width()/2+"px"}),i.animate({opacity:1},1e3),um_modal_responsive()})}else jQuery("#"+e).show(),jQuery(".um-modal").show(),um_modal_size(t),initImageUpload_UM(jQuery(".um-modal:visible").find(".um-single-image-upload")),initFileUpload_UM(jQuery(".um-modal:visible").find(".um-single-file-upload")),um_modal_responsive()}function um_modal_responsive(){var e=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,t=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight,a=jQuery(".um-modal:visible");if(jQuery(".um-modal-body.photo:visible").length){a.removeClass("uimob340"),a.removeClass("uimob500");var o=jQuery(".um-modal-photo img"),i=e-60,r=t-.25*t;o.css({opacity:0}),o.css({"max-width":i}),o.css({"max-height":r}),jQuery(".um-modal").css({width:o.width(),"margin-left":"-"+o.width()/2+"px"}),o.animate({opacity:1},1e3);var u=(t-a.innerHeight())/2+"px";a.animate({bottom:u},300)}else if(a.length)if(a.removeClass("uimob340"),a.removeClass("uimob500"),e<=340)a.addClass("uimob340"),initCrop_UM(),a.animate({bottom:0},300);else if(e<=500)a.addClass("uimob500"),initCrop_UM(),a.animate({bottom:0},300);else if(e<=800){initCrop_UM();u=(t-a.innerHeight())/2+"px";a.animate({bottom:u},300)}else if(e<=960){initCrop_UM();u=(t-a.innerHeight())/2+"px";a.animate({bottom:u},300)}else if(960<e){initCrop_UM();u=(t-a.innerHeight())/2+"px";a.animate({bottom:u},300)}}function um_remove_modal(){jQuery("img.cropper-hidden").cropper("destroy"),jQuery("body,html,textarea").css("overflow","auto"),jQuery(document).unbind("touchmove"),jQuery('.um-modal div[id^="um_"]').hide().appendTo("body"),jQuery(".um-modal,.um-modal-overlay").remove()}function um_modal_size(e){jQuery(".um-modal:visible").addClass(e)}function um_modal_add_attr(e,t){jQuery(".um-modal:visible").data(e,t)}function prepare_Modal(){0==jQuery(".um-popup-overlay").length&&(jQuery("body").append('<div class="um-popup-overlay"></div>'),jQuery("body").append('<div class="um-popup"></div>'),jQuery(".um-popup").addClass("loading"),jQuery("body,html").css({overflow:"hidden"}))}function remove_Modal(){jQuery(".um-popup-overlay").length&&(jQuery(document).trigger("um_before_modal_removed"),jQuery(".tipsy").remove(),jQuery(".um-popup").empty().remove(),jQuery(".um-popup-overlay").empty().remove(),jQuery("body,html").css({overflow:"auto"}))}function show_Modal(e){jQuery(".um-popup-overlay").length&&(jQuery(".um-popup").removeClass("loading").html(e),jQuery(".um-tip-n").tipsy({gravity:"n",opacity:1,offset:3}),jQuery(".um-tip-w").tipsy({gravity:"w",opacity:1,offset:3}),jQuery(".um-tip-e").tipsy({gravity:"e",opacity:1,offset:3}),jQuery(".um-tip-s").tipsy({gravity:"s",opacity:1,offset:3}))}function responsive_Modal(){jQuery(".um-popup-overlay").length&&(ag_height=jQuery(window).height()-jQuery(".um-popup .um-popup-header").outerHeight()-jQuery(".um-popup .um-popup-footer").outerHeight()-80,350<ag_height&&(ag_height=350),jQuery(".um-popup-autogrow:visible").length?jQuery(".um-popup-autogrow:visible").css({height:ag_height+"px"}):jQuery(".um-popup-autogrow2:visible").length&&jQuery(".um-popup-autogrow2:visible").css({"max-height":ag_height+"px"}))}function um_reset_field(e){jQuery(e).find("div.um-field-area").find("input,textarea,select").not(":button, :submit, :reset, :hidden").val("").removeAttr("checked").removeAttr("selected")}function um_selected(e,t){if(e==t)return"selected='selected'"}jQuery(function(){jQuery(".um-search form *").keypress(function(e){if(13==e.which)return jQuery(".um-search form").submit(),!1}),2==jQuery("input[data-key=user_password],input[data-key=confirm_user_password]").length&&UM_check_password_matched()});
|
1 |
+
function UM_check_password_matched(){jQuery(document).on("keyup","input[data-key=user_password],input[data-key=confirm_user_password]",function(e){var t=jQuery("input[data-key=user_password]").val(),a=jQuery("input[data-key=confirm_user_password]").val(),o=jQuery("input[data-key=user_password],input[data-key=confirm_user_password]");t||a?t!==a?o.removeClass("um-validate-matched").addClass("um-validate-not-matched"):o.removeClass("um-validate-not-matched").addClass("um-validate-matched"):o.removeClass("um-validate-matched").removeClass("um-validate-not-matched")})}function UM_hide_menus(){var e=jQuery(".um-dropdown");e.parents("div").find("a").removeClass("active"),e.hide()}function UM_domenus(){jQuery(".um-dropdown").each(function(){var e=jQuery(this),t=jQuery(this).attr("data-element"),a=jQuery(this).attr("data-position");if(jQuery(t).addClass("um-trigger-menu-on-"+e.attr("data-trigger")),"lc"===a&&"rtl"===jQuery("html").attr("dir")&&(a="rc"),jQuery(window).width()<=1200&&"div.um-profile-edit"===t&&(a="rtl"===jQuery("html").attr("dir")?"rc":"lc"),jQuery(t).find("img").width()<200?left_p=(jQuery(t).width()-jQuery(t).find("img").width())/2+(jQuery(t).find("img").width()-200)/2:left_p=(jQuery(t).width()-jQuery(t).find("img").width())/2,top_=parseInt(jQuery(t).find("a").css("top")),top_?top_p=jQuery(t).find("img").height()+4+top_:top_p=jQuery(t).find("img").height()+4,4==top_p&&"div.um-cover"===t?top_p=jQuery(t).height()/2+e.height()/2:4==top_p&&(top_p=jQuery(t).height()+20),"lc"===a)gap_right=jQuery(t).width()+17,e.css({top:0,width:200,left:"auto",right:gap_right+"px","text-align":"center"}),e.find(".um-dropdown-arr").find("i").removeClass().addClass("um-icon-arrow-right-b"),e.find(".um-dropdown-arr").css({top:"4px",left:"auto",right:"-17px"});else if("rc"===a)gap_right=jQuery(t).width()+25,e.css({top:0,width:200,left:gap_right+"px",right:"auto","text-align":"center"}),e.find(".um-dropdown-arr").find("i").removeClass().addClass("um-icon-arrow-left-b"),e.find(".um-dropdown-arr").css({top:"4px",left:"-17px",right:"auto"});else if("bc"===a){var o=0,i=e.data("top-offset");void 0!==i&&(o=1*i),e.css({top:top_p+o,width:200,left:left_p,right:"auto","text-align":"center"}),e.find(".um-dropdown-arr").find("i").removeClass().addClass("um-icon-arrow-up-b"),e.find(".um-dropdown-arr").css({top:"-17px",left:e.width()/2-12,right:"auto"})}})}function um_responsive(){jQuery(".um").each(function(){element_width=jQuery(this).width(),element_width<=340?(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960"),jQuery(this).addClass("uimob340")):element_width<=500?(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960"),jQuery(this).addClass("uimob500")):element_width<=800?(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960"),jQuery(this).addClass("uimob800")):element_width<=960?(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960"),jQuery(this).addClass("uimob960")):960<element_width&&(jQuery(this).removeClass("uimob340"),jQuery(this).removeClass("uimob500"),jQuery(this).removeClass("uimob800"),jQuery(this).removeClass("uimob960")),0<jQuery(".um-account-nav").length&&jQuery(".um-account-side").is(":visible")&&0==jQuery(".um-account-tab:visible").length&&jQuery(".um-account-side li a.current").trigger("click"),jQuery(this).css("opacity",1)}),jQuery(".um-cover, .um-member-cover, .um-cover-e").each(function(){var e=jQuery(this),t=e.data("ratio"),a=e.width(),o=t.split(":");calcHeight=Math.round(a/o[0])+"px",e.height(calcHeight),e.find(".um-cover-add").height(calcHeight)}),UM_domenus()}function initImageUpload_UM(r){r.data("upload_help_text")?upload_help_text='<span class="help">'+r.data("upload_help_text")+"</span>":upload_help_text="",r.data("icon")?icon='<span class="icon"><i class="'+r.data("icon")+'"></i></span>':icon="",r.data("upload_text")?upload_text='<span class="str">'+r.data("upload_text")+"</span>":upload_text="";var e=0;jQuery("#um_upload_single:visible").data("user_id")&&(e=jQuery("#um_upload_single:visible").data("user_id")),r.uploadFile({url:wp.ajax.settings.url,method:"POST",multiple:!1,formData:{action:"um_imageupload",key:r.data("key"),set_id:r.data("set_id"),set_mode:r.data("set_mode"),_wpnonce:r.data("nonce"),timestamp:r.data("timestamp"),user_id:e},fileName:r.data("key"),allowedTypes:r.data("allowed_types"),maxFileSize:r.data("max_size"),dragDropStr:icon+upload_text+upload_help_text,sizeErrorStr:r.data("max_size_error"),extErrorStr:r.data("extension_error"),maxFileCountErrorStr:r.data("max_files_error"),maxFileCount:1,showDelete:!1,showAbort:!1,showDone:!1,showFileCounter:!1,showStatusAfterSuccess:!0,returnType:"json",onSubmit:function(e){r.parents(".um-modal-body").find(".um-error-block").remove()},onSuccess:function(e,t,a){r.selectedFiles=0,t.success&&0==t.success||void 0!==t.data.error?(r.parents(".um-modal-body").append('<div class="um-error-block">'+t.data.error+"</div>"),r.parents(".um-modal-body").find(".upload-statusbar").hide(0),um_modal_responsive()):jQuery.each(t.data,function(e,t){var a=r.parents(".um-modal-body").find(".um-single-image-preview img"),o=r.parents(".um-modal-body").find(".um-single-image-preview"),i=new Date;a.attr("src",t.url+"?"+i.getTime()),a.data("file",t.file),a.load(function(){r.parents(".um-modal-body").find(".um-modal-btn.um-finish-upload.disabled").removeClass("disabled"),r.parents(".um-modal-body").find(".ajax-upload-dragdrop,.upload-statusbar").hide(0),o.show(0),um_modal_responsive()})})},onError:function(e){console.log(e)}})}function initFileUpload_UM(o){o.data("upload_help_text")?upload_help_text='<span class="help">'+o.data("upload_help_text")+"</span>":upload_help_text="",o.data("icon")?icon='<span class="icon"><i class="'+o.data("icon")+'"></i></span>':icon="",o.data("upload_text")?upload_text='<span class="str">'+o.data("upload_text")+"</span>":upload_text="",jQuery("#um_upload_single:visible").data("user_id")&&(user_id=jQuery("#um_upload_single:visible").data("user_id")),o.uploadFile({url:wp.ajax.settings.url,method:"POST",multiple:!1,formData:{action:"um_fileupload",key:o.data("key"),set_id:o.data("set_id"),user_id:o.data("user_id"),set_mode:o.data("set_mode"),_wpnonce:o.data("nonce"),timestamp:o.data("timestamp")},fileName:o.data("key"),allowedTypes:o.data("allowed_types"),maxFileSize:o.data("max_size"),dragDropStr:icon+upload_text+upload_help_text,sizeErrorStr:o.data("max_size_error"),extErrorStr:o.data("extension_error"),maxFileCountErrorStr:o.data("max_files_error"),maxFileCount:1,showDelete:!1,showAbort:!1,showDone:!1,showFileCounter:!1,showStatusAfterSuccess:!0,onSubmit:function(e){o.parents(".um-modal-body").find(".um-error-block").remove()},onSuccess:function(e,t,a){o.selectedFiles=0,t.success&&0==t.success||void 0!==t.data.error?(o.parents(".um-modal-body").append('<div class="um-error-block">'+t.data.error+"</div>"),o.parents(".um-modal-body").find(".upload-statusbar").hide(0)):jQuery.each(t.data,function(e,t){o.parents(".um-modal-body").find(".um-modal-btn.um-finish-upload.disabled").removeClass("disabled"),o.parents(".um-modal-body").find(".ajax-upload-dragdrop,.upload-statusbar").hide(0),o.parents(".um-modal-body").find(".um-single-file-preview").show(0),"icon"==e?o.parents(".um-modal-body").find(".um-single-fileinfo i").removeClass().addClass(t):"icon_bg"==e?o.parents(".um-modal-body").find(".um-single-fileinfo span.icon").css({"background-color":t}):"filename"==e?o.parents(".um-modal-body").find(".um-single-fileinfo a").attr("data-file",t):"original_name"==e?(o.parents(".um-modal-body").find(".um-single-fileinfo a").attr("data-orignal-name",t),o.parents(".um-modal-body").find(".um-single-fileinfo span.filename").html(t)):"url"==e&&o.parents(".um-modal-body").find(".um-single-fileinfo a").attr("href",t)}),setTimeout(function(){um_modal_responsive()},1e3)},onError:function(e){console.log(e)}})}function initCrop_UM(){var t=jQuery(".um-modal .um-single-image-preview img").first(),e=jQuery(".um-modal .um-single-image-preview"),a=t.parent().attr("data-crop"),o=t.parent().attr("data-min_width"),i=t.parent().attr("data-min_height"),r=t.parent().attr("data-ratio");if(jQuery(".um-modal").find("#um_upload_single").attr("data-ratio"))r=(r=jQuery(".um-modal").find("#um_upload_single").attr("data-ratio")).split(":")[0];if(t.length&&""!=t.attr("src")){var d=jQuery(window).height()-(jQuery(".um-modal-footer a").height()+20)-50-jQuery(".um-modal-header:visible").height();if(t.css({height:"auto"}),e.css({height:"auto"}),jQuery(window).height()<=400?(e.css({height:d+"px","max-height":d+"px"}),t.css({height:"auto"})):(t.css({height:"auto","max-height":d+"px"}),e.css({height:t.height(),"max-height":d+"px"})),"square"==a)var u={minWidth:o,minHeight:i,dragCrop:!1,aspectRatio:1,zoomable:!1,rotatable:!1,dashed:!1,done:function(e){t.parent().attr("data-coord",Math.round(e.x)+","+Math.round(e.y)+","+Math.round(e.width)+","+Math.round(e.height))}};else if("cover"==a){0<Math.round(o/r)&&(i=Math.round(o/r));u={minWidth:o,minHeight:i,dragCrop:!1,aspectRatio:r,zoomable:!1,rotatable:!1,dashed:!1,done:function(e){t.parent().attr("data-coord",Math.round(e.x)+","+Math.round(e.y)+","+Math.round(e.width)+","+Math.round(e.height))}}}else if("user"==a)u={minWidth:o,minHeight:i,dragCrop:!0,aspectRatio:"auto",zoomable:!1,rotatable:!1,dashed:!1,done:function(e){t.parent().attr("data-coord",Math.round(e.x)+","+Math.round(e.y)+","+Math.round(e.width)+","+Math.round(e.height))}};0!=a&&(t.cropper(u),jQuery(".um-single-image-preview img.cropper-hidden").cropper("destroy"),jQuery(".um-single-image-preview img.lazyloaded").addClass("cropper-hidden"),jQuery(".um-single-image-preview img.lazyloaded").removeClass("lazyloaded"),jQuery(".um-single-image-preview .cropper-container").append('<div class="um-clear"></div>'))}}function um_new_modal(e,t,a,o){if(0==jQuery("body").find(".um-modal-overlay").length)if(jQuery(".tipsy").hide(),UM_hide_menus(),jQuery("body,html,textarea").css("overflow","hidden"),jQuery(document).bind("touchmove",function(e){e.preventDefault()}),jQuery(".um-modal").on("touchmove",function(e){e.stopPropagation()}),a?jQuery("body").append('<div class="um-modal-overlay"></div><div class="um-modal is-photo"></div>'):jQuery("body").append('<div class="um-modal-overlay"></div><div class="um-modal no-photo"></div>'),jQuery("#"+e).prependTo(".um-modal"),a){jQuery(".um-modal").find(".um-modal-photo").html("<img />");var i=jQuery(".um-modal-photo img"),r=jQuery(window).width()-60,d=jQuery(window).height()-.25*jQuery(window).height();i.attr("src",o),i.load(function(){jQuery("#"+e).show(),jQuery(".um-modal").show(),i.css({opacity:0}),i.css({"max-width":r}),i.css({"max-height":d}),jQuery(".um-modal").css({width:i.width(),"margin-left":"-"+i.width()/2+"px"}),i.animate({opacity:1},1e3),um_modal_responsive()})}else jQuery("#"+e).show(),jQuery(".um-modal").show(),um_modal_size(t),initImageUpload_UM(jQuery(".um-modal:visible").find(".um-single-image-upload")),initFileUpload_UM(jQuery(".um-modal:visible").find(".um-single-file-upload")),um_modal_responsive()}function um_modal_responsive(){var e=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth,t=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight,a=jQuery(".um-modal:visible");if(jQuery(".um-modal-body.photo:visible").length){a.removeClass("uimob340"),a.removeClass("uimob500");var o=jQuery(".um-modal-photo img"),i=e-60,r=t-.25*t;o.css({opacity:0}),o.css({"max-width":i}),o.css({"max-height":r}),jQuery(".um-modal").css({width:o.width(),"margin-left":"-"+o.width()/2+"px"}),o.animate({opacity:1},1e3);var d=(t-a.innerHeight())/2+"px";a.animate({bottom:d},300)}else if(a.length)if(a.removeClass("uimob340"),a.removeClass("uimob500"),e<=340)a.addClass("uimob340"),initCrop_UM(),a.animate({bottom:0},300);else if(e<=500)a.addClass("uimob500"),initCrop_UM(),a.animate({bottom:0},300);else if(e<=800){initCrop_UM();d=(t-a.innerHeight())/2+"px";a.animate({bottom:d},300)}else if(e<=960){initCrop_UM();d=(t-a.innerHeight())/2+"px";a.animate({bottom:d},300)}else if(960<e){initCrop_UM();d=(t-a.innerHeight())/2+"px";a.animate({bottom:d},300)}}function um_remove_modal(){jQuery("img.cropper-hidden").cropper("destroy"),jQuery("body,html,textarea").css("overflow","auto"),jQuery(document).unbind("touchmove"),jQuery('.um-modal div[id^="um_"]').hide().appendTo("body"),jQuery(".um-modal,.um-modal-overlay").remove()}function um_modal_size(e){jQuery(".um-modal:visible").addClass(e)}function um_modal_add_attr(e,t){jQuery(".um-modal:visible").data(e,t)}function prepare_Modal(){0==jQuery(".um-popup-overlay").length&&(jQuery("body").append('<div class="um-popup-overlay"></div>'),jQuery("body").append('<div class="um-popup"></div>'),jQuery(".um-popup").addClass("loading"),jQuery("body,html").css({overflow:"hidden"}))}function remove_Modal(){jQuery(".um-popup-overlay").length&&(jQuery(document).trigger("um_before_modal_removed"),jQuery(".tipsy").remove(),jQuery(".um-popup").empty().remove(),jQuery(".um-popup-overlay").empty().remove(),jQuery("body,html").css({overflow:"auto"}))}function show_Modal(e){jQuery(".um-popup-overlay").length&&(jQuery(".um-popup").removeClass("loading").html(e),jQuery(".um-tip-n").tipsy({gravity:"n",opacity:1,offset:3}),jQuery(".um-tip-w").tipsy({gravity:"w",opacity:1,offset:3}),jQuery(".um-tip-e").tipsy({gravity:"e",opacity:1,offset:3}),jQuery(".um-tip-s").tipsy({gravity:"s",opacity:1,offset:3}))}function responsive_Modal(){jQuery(".um-popup-overlay").length&&(ag_height=jQuery(window).height()-jQuery(".um-popup .um-popup-header").outerHeight()-jQuery(".um-popup .um-popup-footer").outerHeight()-80,350<ag_height&&(ag_height=350),jQuery(".um-popup-autogrow:visible").length?jQuery(".um-popup-autogrow:visible").css({height:ag_height+"px"}):jQuery(".um-popup-autogrow2:visible").length&&jQuery(".um-popup-autogrow2:visible").css({"max-height":ag_height+"px"}))}function um_reset_field(e){jQuery(e).find("div.um-field-area").find("input,textarea,select").not(":button, :submit, :reset, :hidden").val("").removeAttr("checked").removeAttr("selected")}function um_selected(e,t){if(e==t)return"selected='selected'"}jQuery(function(){jQuery(".um-search form *").keypress(function(e){if(13==e.which)return jQuery(".um-search form").submit(),!1}),2==jQuery("input[data-key=user_password],input[data-key=confirm_user_password]").length&&UM_check_password_matched()});
|
assets/js/um-members.js
CHANGED
@@ -1,22 +1,760 @@
|
|
1 |
-
|
2 |
|
3 |
-
|
4 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5 |
});
|
|
|
|
|
6 |
|
7 |
-
|
8 |
-
|
9 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
}
|
11 |
});
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
17 |
});
|
18 |
|
19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
e.preventDefault();
|
21 |
|
22 |
var block = jQuery(this).parents('.um-member');
|
@@ -24,13 +762,13 @@ jQuery(document).ready(function() {
|
|
24 |
block.find('.um-member-more').hide();
|
25 |
block.find('.um-member-meta').slideDown( function(){ UM_Member_Grid( container ) } );
|
26 |
block.find('.um-member-less').fadeIn( );
|
27 |
-
|
28 |
setTimeout(function(){ UM_Member_Grid( container ) }, 100);
|
29 |
|
30 |
return false;
|
31 |
});
|
32 |
|
33 |
-
jQuery(document.body).on('click', '.um-member-less a', function(e){
|
34 |
e.preventDefault();
|
35 |
|
36 |
var block = jQuery(this).parents('.um-member');
|
@@ -44,23 +782,643 @@ jQuery(document).ready(function() {
|
|
44 |
return false;
|
45 |
});
|
46 |
|
47 |
-
|
48 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
49 |
|
50 |
-
|
51 |
-
|
52 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
53 |
}
|
54 |
-
}).prop('disabled', true);
|
55 |
|
|
|
|
|
|
|
|
|
|
|
56 |
|
57 |
-
|
58 |
-
|
59 |
-
return true;
|
60 |
}
|
61 |
-
|
62 |
-
|
63 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
});
|
65 |
|
66 |
});
|
1 |
+
var um_members_directory_busy = [];
|
2 |
|
3 |
+
var um_member_directories = [];
|
4 |
+
|
5 |
+
var um_member_directory_last_data = [];
|
6 |
+
|
7 |
+
|
8 |
+
function um_parse_current_url() {
|
9 |
+
var data = {};
|
10 |
+
|
11 |
+
var query = window.location.search.substring(1);
|
12 |
+
var attrs = query.split( '&' );
|
13 |
+
jQuery.each( attrs, function( i ) {
|
14 |
+
var attr = attrs[ i ].split( '=' );
|
15 |
+
data[ attr[0] ] = attr[1];
|
16 |
});
|
17 |
+
return data;
|
18 |
+
}
|
19 |
|
20 |
+
|
21 |
+
function um_get_data_for_directory( directory, search_key ) {
|
22 |
+
var hash = um_members_get_hash( directory );
|
23 |
+
var data = {};
|
24 |
+
|
25 |
+
var url_data = um_parse_current_url();
|
26 |
+
jQuery.each( url_data, function( key ) {
|
27 |
+
if ( key.indexOf( '_' + hash ) !== -1 && url_data[ key ] !== '' ) {
|
28 |
+
data[ key.replace( '_' + hash, '' ) ] = url_data[ key ];
|
29 |
}
|
30 |
});
|
31 |
+
|
32 |
+
if ( ! search_key ) {
|
33 |
+
return data;
|
34 |
+
} else {
|
35 |
+
if ( typeof data[ search_key ] !== 'undefined' ) {
|
36 |
+
try {
|
37 |
+
data[ search_key ] = decodeURI( data[ search_key ] );
|
38 |
+
} catch(e) { // catches a malformed URI
|
39 |
+
console.error(e);
|
40 |
+
}
|
41 |
}
|
42 |
+
|
43 |
+
return data[ search_key ];
|
44 |
+
}
|
45 |
+
}
|
46 |
+
|
47 |
+
|
48 |
+
function um_set_url_from_data( directory, key, value ) {
|
49 |
+
var hash = um_members_get_hash( directory );
|
50 |
+
var data = um_get_data_for_directory( directory );
|
51 |
+
|
52 |
+
var other_directories = um_member_directories;
|
53 |
+
|
54 |
+
var new_data = {};
|
55 |
+
if ( value !== '' ) {
|
56 |
+
new_data[ key + '_' + hash ] = value;
|
57 |
+
}
|
58 |
+
jQuery.each( data, function( data_key ) {
|
59 |
+
if ( key === data_key ) {
|
60 |
+
if ( value !== '' ) {
|
61 |
+
new_data[ data_key + '_' + hash ] = value;
|
62 |
+
}
|
63 |
+
} else {
|
64 |
+
new_data[ data_key + '_' + hash ] = data[ data_key ];
|
65 |
+
}
|
66 |
+
});
|
67 |
+
|
68 |
+
// added data of other directories to the url
|
69 |
+
jQuery.each( um_member_directories, function( k ) {
|
70 |
+
var dir_hash = um_member_directories[ k ];
|
71 |
+
if ( dir_hash !== hash ) {
|
72 |
+
var other_directory = jQuery( '.um-directory[data-hash="' + dir_hash + '"]' );
|
73 |
+
var dir_data = um_get_data_for_directory( other_directory );
|
74 |
+
|
75 |
+
jQuery.each( dir_data, function( data_key ) {
|
76 |
+
new_data[ data_key + '_' + dir_hash ] = dir_data[ data_key ];
|
77 |
+
});
|
78 |
+
}
|
79 |
+
});
|
80 |
+
|
81 |
+
var query_strings = [];
|
82 |
+
jQuery.each( new_data, function( data_key ) {
|
83 |
+
query_strings.push( data_key + '=' + new_data[ data_key ] );
|
84 |
});
|
85 |
|
86 |
+
query_strings = wp.hooks.applyFilters( 'um_member_directory_url_attrs', query_strings );
|
87 |
+
|
88 |
+
var query_string = '?' + query_strings.join( '&' );
|
89 |
+
|
90 |
+
if ( query_string === '?' ) {
|
91 |
+
query_string = '';
|
92 |
+
}
|
93 |
+
|
94 |
+
window.history.pushState("string", "UM Member Directory", window.location.origin + window.location.pathname + query_string );
|
95 |
+
}
|
96 |
+
|
97 |
+
|
98 |
+
function um_members_get_hash( directory ) {
|
99 |
+
return directory.data( 'hash' );
|
100 |
+
}
|
101 |
+
|
102 |
+
function um_is_directory_busy( directory ) {
|
103 |
+
var hash = um_members_get_hash( directory );
|
104 |
+
return typeof um_members_directory_busy[ hash ] != 'undefined' && um_members_directory_busy[ hash ];
|
105 |
+
}
|
106 |
+
|
107 |
+
|
108 |
+
function um_members_show_preloader( directory ) {
|
109 |
+
um_members_directory_busy[ um_members_get_hash( directory ) ] = true;
|
110 |
+
directory.find('.um-members-overlay').show();
|
111 |
+
}
|
112 |
+
|
113 |
+
|
114 |
+
function um_members_hide_preloader( directory ) {
|
115 |
+
um_members_directory_busy[ um_members_get_hash( directory ) ] = false;
|
116 |
+
directory.find('.um-members-overlay').hide();
|
117 |
+
}
|
118 |
+
|
119 |
+
|
120 |
+
function um_set_range_label( slider, ui ) {
|
121 |
+
var placeholder = slider.siblings( '.um-slider-range' ).data( 'placeholder' );
|
122 |
+
|
123 |
+
if( ui ) {
|
124 |
+
placeholder = placeholder.replace( '\{min_range\}', ui.values[ 0 ] )
|
125 |
+
.replace( '\{max_range\}', ui.values[ 1 ] )
|
126 |
+
.replace( '\{field_label\}', slider.siblings( '.um-slider-range' )
|
127 |
+
.data('label') );
|
128 |
+
} else {
|
129 |
+
placeholder = placeholder.replace( '\{min_range\}', slider.slider( "values", 0 ) )
|
130 |
+
.replace( '\{max_range\}', slider.slider( "values", 1 ) )
|
131 |
+
.replace( '\{field_label\}', slider.siblings( '.um-slider-range' )
|
132 |
+
.data('label') );
|
133 |
+
}
|
134 |
+
slider.siblings( '.um-slider-range' ).html( placeholder );
|
135 |
+
|
136 |
+
slider.siblings( ".um_range_min" ).val( slider.slider( "values", 0 ) );
|
137 |
+
slider.siblings( ".um_range_max" ).val( slider.slider( "values", 1 ) );
|
138 |
+
}
|
139 |
+
|
140 |
+
|
141 |
+
function um_get_search( directory ) {
|
142 |
+
if ( directory.find('.um-search-line').length ) {
|
143 |
+
return directory.find( '.um-search-line' ).val();
|
144 |
+
} else {
|
145 |
+
return '';
|
146 |
+
}
|
147 |
+
}
|
148 |
+
|
149 |
+
function um_get_sort( directory ) {
|
150 |
+
return directory.data( 'sorting' );
|
151 |
+
}
|
152 |
+
|
153 |
+
function um_get_current_page( directory ) {
|
154 |
+
var page = directory.data( 'page' );
|
155 |
+
if ( ! page || typeof page == 'undefined' ) {
|
156 |
+
page = 1;
|
157 |
+
}
|
158 |
+
return page;
|
159 |
+
}
|
160 |
+
|
161 |
+
|
162 |
+
function um_ajax_get_members( directory, args ) {
|
163 |
+
|
164 |
+
/**
|
165 |
+
* Operates with the next data:
|
166 |
+
*
|
167 |
+
* 1) Page - getting from directory data 'page'
|
168 |
+
* 2) Sort - getting from 'um-member-directory-sorting-options' field value
|
169 |
+
* 3) Search - getting from 'um-search-line' field value
|
170 |
+
* 4) Filters - getting from URL data by 'um_get_data_for_directory' function
|
171 |
+
*
|
172 |
+
*/
|
173 |
+
|
174 |
+
|
175 |
+
var hash = um_members_get_hash( directory );
|
176 |
+
var page = um_get_current_page( directory );
|
177 |
+
var search = um_get_search( directory );
|
178 |
+
var sorting = um_get_sort( directory );
|
179 |
+
|
180 |
+
var local_date = new Date();
|
181 |
+
var gmt_hours = -local_date.getTimezoneOffset() / 60;
|
182 |
+
|
183 |
+
var request = {
|
184 |
+
directory_id: hash,
|
185 |
+
page: page,
|
186 |
+
search: search,
|
187 |
+
sorting: sorting,
|
188 |
+
gmt_offset: gmt_hours,
|
189 |
+
post_refferer: directory.data('base-post'),
|
190 |
+
nonce: um_scripts.nonce
|
191 |
+
};
|
192 |
+
|
193 |
+
if ( directory.find('.um-search-filter').length ) {
|
194 |
+
directory.find('.um-search-filter').each( function() {
|
195 |
+
var filter = jQuery(this);
|
196 |
+
|
197 |
+
if ( filter.find( '.um-slider' ).length ) {
|
198 |
+
var filter_name = filter.find( '.um-slider' ).data('field_name');
|
199 |
+
|
200 |
+
var value_from = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
201 |
+
var value_to = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
202 |
+
if ( typeof value_from != 'undefined' || typeof value_to != 'undefined' ) {
|
203 |
+
request[ filter_name ] = [ value_from, value_to ];
|
204 |
+
}
|
205 |
+
} else if ( filter.find( '.um-datepicker-filter' ).length ) {
|
206 |
+
var filter_name = filter.find( '.um-datepicker-filter' ).data('filter_name');
|
207 |
+
var value_from = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
208 |
+
var value_to = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
209 |
+
if ( typeof value_from != 'undefined' || typeof value_to != 'undefined') {
|
210 |
+
request[ filter_name ] = [ value_from, value_to ];
|
211 |
+
}
|
212 |
+
} else if ( filter.find( '.um-timepicker-filter' ).length ) {
|
213 |
+
var filter_name = filter.find( '.um-timepicker-filter' ).data('filter_name');
|
214 |
+
var value_from = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
215 |
+
var value_to = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
216 |
+
if ( typeof value_from != 'undefined' || typeof value_to != 'undefined' ) {
|
217 |
+
request[ filter_name ] = [ value_from, value_to ];
|
218 |
+
}
|
219 |
+
} else {
|
220 |
+
var filter_name = filter.find('select').attr('name');
|
221 |
+
var value = um_get_data_for_directory( directory, 'filter_' + filter_name );
|
222 |
+
if ( typeof value != 'undefined' ) {
|
223 |
+
request[ filter_name ] = value.split( '||' );
|
224 |
+
}
|
225 |
+
}
|
226 |
+
});
|
227 |
+
}
|
228 |
+
|
229 |
+
request = wp.hooks.applyFilters( 'um_member_directory_filter_request', request );
|
230 |
+
|
231 |
+
wp.ajax.send( 'um_get_members', {
|
232 |
+
data: request,
|
233 |
+
success: function( answer ) {
|
234 |
+
//set last data hard for using on layouts reloading
|
235 |
+
um_member_directory_last_data[ hash ] = answer;
|
236 |
+
|
237 |
+
um_build_template( directory, answer );
|
238 |
+
|
239 |
+
var pagination_template = wp.template( 'um-members-pagination' );
|
240 |
+
directory.find('.um-members-pagination-box').html( pagination_template( answer ) );
|
241 |
+
|
242 |
+
directory.data( 'total_pages', answer.pagination.total_pages );
|
243 |
+
|
244 |
+
if ( answer.pagination.total_pages ) {
|
245 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', false );
|
246 |
+
directory.find( '.um-member-directory-view-type' ).removeClass( 'um-disabled' );
|
247 |
+
} else {
|
248 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', true );
|
249 |
+
directory.find( '.um-member-directory-view-type' ).addClass( 'um-disabled' );
|
250 |
+
}
|
251 |
+
|
252 |
+
//args.directory = directory;
|
253 |
+
jQuery( document ).trigger('um_members_rendered', args );
|
254 |
+
|
255 |
+
um_init_new_dropdown();
|
256 |
+
|
257 |
+
um_members_hide_preloader( directory );
|
258 |
+
},
|
259 |
+
error: function( data ) {
|
260 |
+
console.log( data );
|
261 |
+
|
262 |
+
um_members_hide_preloader( directory );
|
263 |
+
}
|
264 |
+
});
|
265 |
+
}
|
266 |
+
|
267 |
+
|
268 |
+
function um_build_template( directory, data ) {
|
269 |
+
var layout = directory.data('view_type');
|
270 |
+
var template = wp.template( 'um-member-' + layout );
|
271 |
+
|
272 |
+
directory.find('.um-members-grid, .um-members-list').remove();
|
273 |
+
directory.find('.um-members-wrapper').prepend( template( data.users ) );
|
274 |
+
|
275 |
+
var header_template = wp.template( 'um-members-header' );
|
276 |
+
directory.find('.um-members-intro').remove();
|
277 |
+
directory.find('.um-members-wrapper').prepend( header_template( data ) );
|
278 |
+
|
279 |
+
directory.addClass('um-loaded');
|
280 |
+
|
281 |
+
if ( directory.find('.um-members.um-members-grid').length ) {
|
282 |
+
UM_Member_Grid( directory.find('.um-members.um-members-grid') );
|
283 |
+
}
|
284 |
+
|
285 |
+
jQuery( document ).trigger( 'um_build_template', [ directory, data ] );
|
286 |
+
jQuery( window ).trigger( 'resize' );
|
287 |
+
|
288 |
+
init_tipsy();
|
289 |
+
}
|
290 |
+
|
291 |
+
|
292 |
+
|
293 |
+
function UM_Member_Grid( container ) {
|
294 |
+
if ( container.find( '.um-member' ).length ) {
|
295 |
+
container.imagesLoaded( function() {
|
296 |
+
var $grid = container.masonry({
|
297 |
+
itemSelector: '.um-member',
|
298 |
+
columnWidth: '.um-member',
|
299 |
+
gutter: '.um-gutter-sizer'
|
300 |
+
});
|
301 |
+
|
302 |
+
$grid.on( 'layoutComplete', function( event, laidOutItems ) {
|
303 |
+
jQuery( document ).trigger( "um_grid_initialized", [ event, laidOutItems ] );
|
304 |
+
});
|
305 |
+
});
|
306 |
+
}
|
307 |
+
}
|
308 |
+
|
309 |
+
|
310 |
+
function um_get_filters_data( directory ) {
|
311 |
+
var filters_data = [];
|
312 |
+
|
313 |
+
directory.find('.um-search-filter').each( function() {
|
314 |
+
|
315 |
+
var filter = jQuery(this);
|
316 |
+
var filter_name,
|
317 |
+
filter_title;
|
318 |
+
|
319 |
+
var filter_type;
|
320 |
+
if ( filter.find('input.um-datepicker-filter').length ) {
|
321 |
+
filter_type = 'datepicker';
|
322 |
+
|
323 |
+
filter.find('input.um-datepicker-filter').each( function() {
|
324 |
+
var range = jQuery(this).data('range');
|
325 |
+
if ( range === 'to' ) {
|
326 |
+
return;
|
327 |
+
}
|
328 |
+
|
329 |
+
var filter_name = jQuery(this).data('filter_name');
|
330 |
+
|
331 |
+
var filter_value_from = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
332 |
+
var filter_value_to = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
333 |
+
if ( typeof filter_value_from === 'undefined' && typeof filter_value_to === 'undefined' ) {
|
334 |
+
return;
|
335 |
+
}
|
336 |
+
|
337 |
+
var from_val = jQuery(this).val();
|
338 |
+
var to_val = directory.find('input.um-datepicker-filter[data-range="to"][data-filter_name="' + filter_name + '"]').val();
|
339 |
+
|
340 |
+
var value;
|
341 |
+
if ( from_val === to_val ) {
|
342 |
+
value = to_val;
|
343 |
+
} else if ( from_val !== '' && to_val !== '' ) {
|
344 |
+
value = from_val + ' - ' + to_val;
|
345 |
+
} else if ( from_val === '' ) {
|
346 |
+
value = 'before ' + to_val;
|
347 |
+
} else if ( to_val === '' ) {
|
348 |
+
value = 'since ' + from_val;
|
349 |
+
}
|
350 |
+
|
351 |
+
filters_data.push( {'name':filter_name, 'label':jQuery(this).data('filter-label'), 'value_label': value, 'value':[filter_value_from, filter_value_to], 'type':filter_type} );
|
352 |
+
});
|
353 |
+
|
354 |
+
} else if( filter.find('input.um-timepicker-filter').length ) {
|
355 |
+
filter_type = 'timepicker';
|
356 |
+
|
357 |
+
filter.find('input.um-timepicker-filter').each( function() {
|
358 |
+
var range = jQuery(this).data('range');
|
359 |
+
if ( range === 'to' ) {
|
360 |
+
return;
|
361 |
+
}
|
362 |
+
|
363 |
+
var filter_name = jQuery(this).data('filter_name');
|
364 |
+
|
365 |
+
var filter_value_from = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
366 |
+
var filter_value_to = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
367 |
+
if ( typeof filter_value_from === 'undefined' && typeof filter_value_to === 'undefined' ) {
|
368 |
+
return;
|
369 |
+
}
|
370 |
+
|
371 |
+
var from_val = jQuery(this).val();
|
372 |
+
var to_val = directory.find('input.um-timepicker-filter[data-range="to"][data-filter_name="' + filter_name + '"]').val();
|
373 |
+
|
374 |
+
var value;
|
375 |
+
if ( from_val === to_val ) {
|
376 |
+
value = to_val;
|
377 |
+
} else if ( from_val !== '' && to_val !== '' ) {
|
378 |
+
value = from_val + ' - ' + to_val;
|
379 |
+
} else if ( from_val === '' ) {
|
380 |
+
value = 'before ' + to_val;
|
381 |
+
} else if ( to_val === '' ) {
|
382 |
+
value = 'since ' + from_val;
|
383 |
+
}
|
384 |
+
|
385 |
+
filters_data.push( {'name':filter_name, 'label':jQuery(this).data('filter-label'), 'value_label': value, 'value':[filter_value_from, filter_value_to], 'type':filter_type} );
|
386 |
+
});
|
387 |
+
} else if( filter.find('select').length ) {
|
388 |
+
|
389 |
+
filter_type = 'select';
|
390 |
+
filter_name = filter.find('select').attr('name');
|
391 |
+
filter_title = filter.find('select').data('placeholder');
|
392 |
+
|
393 |
+
var filter_value = um_get_data_for_directory( directory, 'filter_' + filter_name );
|
394 |
+
if ( typeof filter_value == 'undefined' ) {
|
395 |
+
filter_value = [];
|
396 |
+
} else {
|
397 |
+
filter_value = filter_value.split( '||' );
|
398 |
+
}
|
399 |
+
|
400 |
+
jQuery.each( filter_value, function(i) {
|
401 |
+
var filter_value_title = filter.find('select option[value="' + filter_value[ i ] + '"]').data('value_label');
|
402 |
+
filters_data.push( {'name':filter_name, 'label':filter_title, 'value_label':filter_value_title, 'value':filter_value[ i ], 'type':filter_type} );
|
403 |
+
});
|
404 |
+
|
405 |
+
} else if( filter.find('div.ui-slider').length ) {
|
406 |
+
filter_type = 'slider';
|
407 |
+
|
408 |
+
filter_name = filter.find('div.ui-slider').data( 'field_name' );
|
409 |
+
var filter_value_from = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
410 |
+
var filter_value_to = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
411 |
+
|
412 |
+
if ( typeof filter_value_from === 'undefined' && typeof filter_value_to === 'undefined' ) {
|
413 |
+
return;
|
414 |
+
}
|
415 |
+
|
416 |
+
filter_title = filter.find('div.um-slider-range').data('label');
|
417 |
+
|
418 |
+
var filter_value_title = filter.find('div.um-slider-range').data( 'placeholder' ).replace( '\{min_range\}', filter_value_from )
|
419 |
+
.replace( '\{max_range\}', filter_value_to )
|
420 |
+
.replace( '\{field_label\}', filter.find('div.um-slider-range').data('label') );
|
421 |
+
|
422 |
+
filters_data.push( {'name':filter_name, 'label':filter_title, 'value_label':filter_value_title, 'value':[filter_value_from, filter_value_to], 'type':filter_type} );
|
423 |
+
}
|
424 |
+
});
|
425 |
+
|
426 |
+
return filters_data;
|
427 |
+
}
|
428 |
+
|
429 |
+
|
430 |
+
function um_change_tag( directory ) {
|
431 |
+
var filters_data = um_get_filters_data( directory );
|
432 |
+
|
433 |
+
directory.find('.um-members-filter-tag').remove();
|
434 |
+
|
435 |
+
var filtered_line = directory.find('.um-filtered-line');
|
436 |
+
if ( filtered_line.length ){
|
437 |
+
var filters_template = wp.template( 'um-members-filtered-line' );
|
438 |
+
filtered_line.prepend( filters_template( {'filters': filters_data} ) );
|
439 |
+
|
440 |
+
if ( directory.find( '.um-members-filter-remove' ).length === 0 ) {
|
441 |
+
directory.find('.um-clear-filters').hide();
|
442 |
+
directory.find('.um-clear-filters').parents('.um-member-directory-header-row').addClass( 'um-header-row-invisible' );
|
443 |
+
} else {
|
444 |
+
directory.find('.um-clear-filters').show();
|
445 |
+
directory.find('.um-clear-filters').parents('.um-member-directory-header-row').removeClass( 'um-header-row-invisible' );
|
446 |
+
}
|
447 |
+
}
|
448 |
+
|
449 |
+
|
450 |
+
}
|
451 |
+
|
452 |
+
|
453 |
+
|
454 |
+
function um_run_search( directory ) {
|
455 |
+
if ( um_is_directory_busy( directory ) ) {
|
456 |
+
return;
|
457 |
+
}
|
458 |
+
um_members_show_preloader( directory );
|
459 |
+
|
460 |
+
var pre_search = um_get_data_for_directory( directory, 'search' );
|
461 |
+
|
462 |
+
var search = directory.find('.um-search-line').val();
|
463 |
+
if ( search === pre_search || ( search === '' && typeof pre_search == 'undefined' ) ) {
|
464 |
+
um_members_hide_preloader( directory );
|
465 |
+
return;
|
466 |
+
}
|
467 |
+
|
468 |
+
directory.data( 'general_search', search );
|
469 |
+
um_set_url_from_data( directory, 'search', search );
|
470 |
+
|
471 |
+
//set 1st page after search
|
472 |
+
directory.data( 'page', 1 );
|
473 |
+
um_set_url_from_data( directory, 'page', '' );
|
474 |
+
|
475 |
+
var show_after_search = directory.data('must-search');
|
476 |
+
if ( show_after_search === 1 ) {
|
477 |
+
var search = um_get_search( directory );
|
478 |
+
if ( directory.find( '.um-members-filter-remove' ).length === 0 && ! search ) {
|
479 |
+
directory.data( 'searched', 0 );
|
480 |
+
directory.find('.um-members-grid, .um-members-list').remove();
|
481 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', true );
|
482 |
+
directory.find( '.um-member-directory-view-type' ).addClass( 'um-disabled' );
|
483 |
+
um_members_hide_preloader( directory );
|
484 |
+
return;
|
485 |
+
}
|
486 |
+
}
|
487 |
+
|
488 |
+
directory.data( 'searched', 1 );
|
489 |
+
|
490 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', false );
|
491 |
+
directory.find( '.um-member-directory-view-type' ).removeClass( 'um-disabled' );
|
492 |
+
|
493 |
+
um_ajax_get_members( directory );
|
494 |
+
}
|
495 |
+
|
496 |
+
|
497 |
+
jQuery(document.body).ready( function() {
|
498 |
+
|
499 |
+
|
500 |
+
jQuery( '.um-directory .um-search-filter select' ).each( function() {
|
501 |
+
if ( jQuery(this).find('option:not(:disabled)').length === 1 ) {
|
502 |
+
jQuery(this).prop('disabled', true);
|
503 |
+
}
|
504 |
+
jQuery(this).select2('destroy').select2();
|
505 |
+
});
|
506 |
+
|
507 |
+
/**
|
508 |
+
* Change View Type Handlers
|
509 |
+
*/
|
510 |
+
|
511 |
+
|
512 |
+
//UI for change view type button
|
513 |
+
jQuery( document.body ).on( 'mouseover', '.um-directory .um-member-directory-view-type', function() {
|
514 |
+
if ( jQuery(this).hasClass('um-disabled') ) {
|
515 |
+
return;
|
516 |
+
}
|
517 |
+
|
518 |
+
var $obj = jQuery(this).find('.um-member-directory-view-type-a:visible');
|
519 |
+
|
520 |
+
$obj.hide();
|
521 |
+
|
522 |
+
if ( $obj.next().length ) {
|
523 |
+
$obj.next().show().tipsy('show');
|
524 |
+
} else {
|
525 |
+
jQuery(this).find( '.um-member-directory-view-type-a:first' ).show().tipsy('show');
|
526 |
+
}
|
527 |
+
}).on( 'mouseout', '.um-directory .um-member-directory-view-type', function() {
|
528 |
+
if ( jQuery(this).hasClass('um-disabled') ) {
|
529 |
+
return;
|
530 |
+
}
|
531 |
+
|
532 |
+
jQuery(this).find('.um-member-directory-view-type-a').hide().tipsy('hide');
|
533 |
+
jQuery(this).find('.um-member-directory-view-type-a[data-type="' + jQuery(this).parents( '.um-directory' ).data('view_type') + '"]').show();
|
534 |
+
});
|
535 |
+
|
536 |
+
//change layout handler
|
537 |
+
jQuery( document.body ).on( 'click', '.um-directory .um-member-directory-view-type-a', function() {
|
538 |
+
var directory = jQuery(this).parents('.um-directory');
|
539 |
+
if ( um_is_directory_busy( directory ) ) {
|
540 |
+
return false;
|
541 |
+
}
|
542 |
+
|
543 |
+
var $this = jQuery(this);
|
544 |
+
var views = $this.parents('.um-member-directory-view-type');
|
545 |
+
|
546 |
+
if ( views.hasClass('um-disabled') ) {
|
547 |
+
return;
|
548 |
+
}
|
549 |
+
|
550 |
+
um_members_show_preloader( directory );
|
551 |
+
|
552 |
+
var $obj = views.find('.um-member-directory-view-type-a:visible');
|
553 |
+
|
554 |
+
$obj.hide();
|
555 |
+
|
556 |
+
if ( $obj.next().length ) {
|
557 |
+
$obj.next().show().tipsy('show');
|
558 |
+
} else {
|
559 |
+
views.find( '.um-member-directory-view-type-a:first' ).show().tipsy('show');
|
560 |
+
}
|
561 |
+
|
562 |
+
var data = um_member_directory_last_data[ um_members_get_hash( directory ) ];
|
563 |
+
if ( data !== null ) {
|
564 |
+
var layout = $this.data('type');
|
565 |
+
|
566 |
+
um_set_url_from_data( directory, 'view_type', layout );
|
567 |
+
directory.data( 'view_type', layout );
|
568 |
+
|
569 |
+
um_build_template( directory, data );
|
570 |
+
}
|
571 |
+
um_members_hide_preloader( directory );
|
572 |
+
});
|
573 |
+
|
574 |
+
|
575 |
+
/**
|
576 |
+
* END: Change View Type Handlers
|
577 |
+
*/
|
578 |
+
|
579 |
+
|
580 |
+
/**
|
581 |
+
* General Search
|
582 |
+
*/
|
583 |
+
|
584 |
+
|
585 |
+
//searching
|
586 |
+
jQuery( document.body ).on( 'click', '.um-directory .um-do-search', function() {
|
587 |
+
var directory = jQuery(this).parents('.um-directory');
|
588 |
+
um_run_search( directory );
|
589 |
+
});
|
590 |
+
|
591 |
+
|
592 |
+
//make search on Enter click
|
593 |
+
jQuery( document.body ).on( 'keypress', '.um-directory .um-search-line', function(e) {
|
594 |
+
if ( e.which === 13 ) {
|
595 |
+
var directory = jQuery(this).parents('.um-directory');
|
596 |
+
um_run_search( directory );
|
597 |
+
}
|
598 |
+
});
|
599 |
+
|
600 |
+
|
601 |
+
/**
|
602 |
+
* END: General Search
|
603 |
+
*/
|
604 |
+
|
605 |
+
|
606 |
+
|
607 |
+
/**
|
608 |
+
* Sorting
|
609 |
+
*/
|
610 |
+
|
611 |
+
jQuery( document.body ).on( 'click', '.um-directory .um-member-directory-sorting-a .um-new-dropdown li a', function() {
|
612 |
+
var directory = jQuery(this).parents('.um-directory');
|
613 |
+
|
614 |
+
if ( um_is_directory_busy( directory ) ) {
|
615 |
+
return;
|
616 |
+
}
|
617 |
+
|
618 |
+
if ( jQuery( this ).data('selected') === 1 ) {
|
619 |
+
return;
|
620 |
+
}
|
621 |
+
|
622 |
+
um_members_show_preloader( directory );
|
623 |
+
|
624 |
+
var sort = jQuery(this).data('value');
|
625 |
+
|
626 |
+
directory.data( 'sorting', sort );
|
627 |
+
um_set_url_from_data( directory, 'sort', sort );
|
628 |
+
|
629 |
+
um_ajax_get_members( directory );
|
630 |
+
|
631 |
+
jQuery( this ).parents('.um-new-dropdown').find('a').data('selected', 0).prop('data-selected', 0).attr('data-selected', 0);
|
632 |
+
jQuery( this ).data('selected', 1).prop('data-selected', 1).attr('data-selected', 1);
|
633 |
+
jQuery( this ).parents('.um-member-directory-sorting-a').find('> a').html( jQuery( this ).html() );
|
634 |
+
});
|
635 |
+
|
636 |
+
/**
|
637 |
+
* END: Sorting
|
638 |
+
*/
|
639 |
+
|
640 |
+
|
641 |
+
|
642 |
+
/**
|
643 |
+
* Pagination
|
644 |
+
*/
|
645 |
+
|
646 |
+
|
647 |
+
jQuery( document.body ).on( 'click', '.um-directory .pagi:not(.current)', function() {
|
648 |
+
if ( jQuery(this).hasClass('disabled') ) {
|
649 |
+
return;
|
650 |
+
}
|
651 |
+
|
652 |
+
var directory = jQuery(this).parents('.um-directory');
|
653 |
+
if ( um_is_directory_busy( directory ) ) {
|
654 |
+
return;
|
655 |
+
}
|
656 |
+
|
657 |
+
um_members_show_preloader( directory );
|
658 |
+
|
659 |
+
var page;
|
660 |
+
if ( 'first' === jQuery(this).data('page') ) {
|
661 |
+
page = 1;
|
662 |
+
} else if ( 'prev' === jQuery(this).data('page') ) {
|
663 |
+
page = directory.data( 'page' )*1 - 1;
|
664 |
+
} else if ( 'next' === jQuery(this).data('page') ) {
|
665 |
+
page = directory.data( 'page' )*1 + 1;
|
666 |
+
} else if ( 'last' === jQuery(this).data('page') ) {
|
667 |
+
page = parseInt( directory.data( 'total_pages' ) );
|
668 |
+
} else {
|
669 |
+
page = parseInt( jQuery(this).data('page') );
|
670 |
+
}
|
671 |
+
|
672 |
+
if ( page === 1 ) {
|
673 |
+
directory.find('.pagi[data-page="first"], .pagi[data-page="prev"]').addClass('disabled');
|
674 |
+
directory.find('.pagi[data-page="prev"], .pagi[data-page="last"]').removeClass('disabled');
|
675 |
+
} else if ( page === parseInt( directory.data( 'total_pages' ) ) ) {
|
676 |
+
directory.find('.pagi[data-page="prev"], .pagi[data-page="last"]').addClass('disabled');
|
677 |
+
directory.find('.pagi[data-page="first"], .pagi[data-page="prev"]').removeClass('disabled');
|
678 |
+
} else {
|
679 |
+
directory.find('.pagi[data-page="prev"], .pagi[data-page="last"]').removeClass('disabled');
|
680 |
+
directory.find('.pagi[data-page="first"], .pagi[data-page="prev"]').removeClass('disabled');
|
681 |
+
}
|
682 |
+
|
683 |
+
directory.find('.pagi').removeClass('current');
|
684 |
+
directory.find('.pagi[data-page="' + page + '"]').addClass('current');
|
685 |
+
|
686 |
+
directory.data( 'page', page );
|
687 |
+
if ( page === 1 ) {
|
688 |
+
um_set_url_from_data( directory, 'page', '' );
|
689 |
+
} else {
|
690 |
+
um_set_url_from_data( directory, 'page', page );
|
691 |
+
}
|
692 |
+
|
693 |
+
um_ajax_get_members( directory );
|
694 |
+
});
|
695 |
+
|
696 |
+
|
697 |
+
//mobile pagination
|
698 |
+
jQuery( document.body ).on( 'change', '.um-directory .um-members-pagi-dropdown', function() {
|
699 |
+
var directory = jQuery(this).parents('.um-directory');
|
700 |
+
|
701 |
+
if ( um_is_directory_busy( directory ) ) {
|
702 |
+
return;
|
703 |
+
}
|
704 |
+
|
705 |
+
um_members_show_preloader( directory );
|
706 |
+
|
707 |
+
var page = jQuery(this).val();
|
708 |
+
|
709 |
+
directory.find('.pagi').removeClass('current');
|
710 |
+
directory.find('.pagi[data-page="' + page + '"]').addClass('current');
|
711 |
+
|
712 |
+
directory.data( 'page', page );
|
713 |
+
if ( page === 1 ) {
|
714 |
+
um_set_url_from_data( directory, 'page', '' );
|
715 |
+
} else {
|
716 |
+
um_set_url_from_data( directory, 'page', page );
|
717 |
+
}
|
718 |
+
|
719 |
+
um_ajax_get_members( directory );
|
720 |
+
});
|
721 |
+
|
722 |
+
|
723 |
+
/**
|
724 |
+
* END: Pagination
|
725 |
+
*/
|
726 |
+
|
727 |
+
|
728 |
+
/**
|
729 |
+
* Profile Cards actions
|
730 |
+
*/
|
731 |
+
|
732 |
+
jQuery( document.body ).on('click', '.um-directory .um-members.um-members-list .um-member-more a', function(e){
|
733 |
+
e.preventDefault();
|
734 |
+
|
735 |
+
var block = jQuery(this).parents('.um-member');
|
736 |
+
|
737 |
+
block.find('.um-member-more').hide();
|
738 |
+
block.find('.um-member-meta-main').slideDown();
|
739 |
+
block.find('.um-member-less').fadeIn();
|
740 |
+
|
741 |
+
return false;
|
742 |
+
});
|
743 |
+
|
744 |
+
jQuery( document.body ).on('click', '.um-directory .um-members.um-members-list .um-member-less a', function(e){
|
745 |
+
e.preventDefault();
|
746 |
+
|
747 |
+
var block = jQuery(this).parents('.um-member');
|
748 |
+
|
749 |
+
block.find('.um-member-less').hide();
|
750 |
+
block.find('.um-member-meta-main').slideUp();
|
751 |
+
block.find('.um-member-more').fadeIn();
|
752 |
+
|
753 |
+
return false;
|
754 |
+
});
|
755 |
+
|
756 |
+
|
757 |
+
jQuery( document.body ).on('click', '.um-directory .um-members.um-members-grid .um-member-more a', function(e){
|
758 |
e.preventDefault();
|
759 |
|
760 |
var block = jQuery(this).parents('.um-member');
|
762 |
block.find('.um-member-more').hide();
|
763 |
block.find('.um-member-meta').slideDown( function(){ UM_Member_Grid( container ) } );
|
764 |
block.find('.um-member-less').fadeIn( );
|
765 |
+
|
766 |
setTimeout(function(){ UM_Member_Grid( container ) }, 100);
|
767 |
|
768 |
return false;
|
769 |
});
|
770 |
|
771 |
+
jQuery( document.body ).on('click', '.um-directory .um-members.um-members-grid .um-member-less a', function(e){
|
772 |
e.preventDefault();
|
773 |
|
774 |
var block = jQuery(this).parents('.um-member');
|
782 |
return false;
|
783 |
});
|
784 |
|
785 |
+
/**
|
786 |
+
* END: Profile Cards actions
|
787 |
+
*/
|
788 |
+
|
789 |
+
|
790 |
+
//filters controls
|
791 |
+
jQuery('.um-member-directory-filters-a').click( function() {
|
792 |
+
var obj = jQuery(this);
|
793 |
+
var search_bar = obj.parents('.um-directory').find('.um-search');
|
794 |
+
|
795 |
+
if ( search_bar.is( ':visible' ) ) {
|
796 |
+
search_bar.slideUp( 250, function(){
|
797 |
+
obj.toggleClass('um-member-directory-filters-visible');
|
798 |
+
search_bar.parents('.um-member-directory-header-row').toggleClass('um-header-row-invisible');
|
799 |
+
});
|
800 |
+
} else {
|
801 |
+
search_bar.slideDown({
|
802 |
+
start: function() {
|
803 |
+
jQuery(this).css({
|
804 |
+
display: "grid"
|
805 |
+
});
|
806 |
+
obj.toggleClass('um-member-directory-filters-visible');
|
807 |
+
search_bar.parents('.um-member-directory-header-row').toggleClass('um-header-row-invisible');
|
808 |
+
}
|
809 |
+
}, 250 );
|
810 |
+
}
|
811 |
+
});
|
812 |
+
|
813 |
+
|
814 |
+
//filtration process
|
815 |
+
jQuery( document.body ).on( 'change', '.um-directory .um-search-filter select', function() {
|
816 |
+
if ( jQuery(this).val() === '' ) {
|
817 |
+
return;
|
818 |
+
}
|
819 |
+
|
820 |
+
var directory = jQuery(this).parents('.um-directory');
|
821 |
+
|
822 |
+
if ( um_is_directory_busy( directory ) ) {
|
823 |
+
return;
|
824 |
+
}
|
825 |
+
|
826 |
+
um_members_show_preloader( directory );
|
827 |
+
|
828 |
+
var filter_name = jQuery(this).prop('name');
|
829 |
+
|
830 |
+
var current_value = um_get_data_for_directory( directory, 'filter_' + filter_name );
|
831 |
+
if ( typeof current_value == 'undefined' ) {
|
832 |
+
current_value = [];
|
833 |
+
} else {
|
834 |
+
current_value = current_value.split( '||' );
|
835 |
+
}
|
836 |
+
|
837 |
+
if ( -1 === jQuery.inArray( jQuery(this).val(), current_value ) ) {
|
838 |
+
current_value.push( jQuery(this).val() );
|
839 |
+
current_value = current_value.join( '||' );
|
840 |
+
|
841 |
+
um_set_url_from_data( directory, 'filter_' + filter_name, current_value );
|
842 |
|
843 |
+
//set 1st page after filtration
|
844 |
+
directory.data( 'page', 1 );
|
845 |
+
um_set_url_from_data( directory, 'page', '' );
|
846 |
+
}
|
847 |
+
|
848 |
+
//disable options and disable select if all options are disabled
|
849 |
+
jQuery(this).find('option[value="' + jQuery(this).val() + '"]').prop('disabled', true).hide();
|
850 |
+
if ( jQuery(this).find('option:not(:disabled)').length === 1 ) {
|
851 |
+
jQuery(this).prop('disabled', true);
|
852 |
+
}
|
853 |
+
|
854 |
+
jQuery(this).select2('destroy').select2();
|
855 |
+
jQuery(this).val('').trigger( 'change' );
|
856 |
+
|
857 |
+
um_ajax_get_members( directory );
|
858 |
+
|
859 |
+
um_change_tag( directory );
|
860 |
+
|
861 |
+
directory.data( 'searched', 1 );
|
862 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', false );
|
863 |
+
directory.find( '.um-member-directory-view-type' ).removeClass( 'um-disabled' );
|
864 |
+
});
|
865 |
+
|
866 |
+
|
867 |
+
jQuery( document.body ).on( 'click', '.um-directory .um-members-filter-remove', function() {
|
868 |
+
var directory = jQuery(this).parents('.um-directory');
|
869 |
+
|
870 |
+
if ( um_is_directory_busy( directory ) || ! directory ) {
|
871 |
+
return;
|
872 |
+
}
|
873 |
+
|
874 |
+
um_members_show_preloader( directory );
|
875 |
+
|
876 |
+
var removeItem = jQuery(this).data('value');
|
877 |
+
var filter_name = jQuery(this).data('name');
|
878 |
+
|
879 |
+
var type = jQuery(this).data('type');
|
880 |
+
if ( type === 'select' ) {
|
881 |
+
|
882 |
+
var current_value = um_get_data_for_directory( directory, 'filter_' + filter_name );
|
883 |
+
if ( typeof current_value == 'undefined' ) {
|
884 |
+
current_value = [];
|
885 |
+
} else {
|
886 |
+
current_value = current_value.split( '||' );
|
887 |
}
|
|
|
888 |
|
889 |
+
if ( -1 !== jQuery.inArray( removeItem.toString(), current_value ) ) {
|
890 |
+
current_value = jQuery.grep( current_value, function( value ) {
|
891 |
+
return value !== removeItem.toString();
|
892 |
+
});
|
893 |
+
}
|
894 |
|
895 |
+
if ( ! current_value.length ) {
|
896 |
+
current_value = '';
|
|
|
897 |
}
|
898 |
+
|
899 |
+
um_set_url_from_data( directory, 'filter_' + filter_name, current_value );
|
900 |
+
|
901 |
+
|
902 |
+
var select = jQuery( '.um-search-filter select[name="' + filter_name + '"]' );
|
903 |
+
select.find('option[value="' + removeItem + '"]').prop('disabled', false).show();
|
904 |
+
|
905 |
+
//disable options and disable select if all options are disabled
|
906 |
+
if ( select.find('option:not(:disabled)').length > 1 ) {
|
907 |
+
select.prop('disabled', false);
|
908 |
+
}
|
909 |
+
select.select2('destroy').select2();
|
910 |
+
|
911 |
+
} else if ( type === 'slider' ) {
|
912 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from','' );
|
913 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', '' );
|
914 |
+
} else if ( type === 'datepicker' ) {
|
915 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from','' );
|
916 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', '' );
|
917 |
+
} else if ( type === 'timepicker' ) {
|
918 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from','' );
|
919 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', '' );
|
920 |
+
}
|
921 |
+
|
922 |
+
|
923 |
+
//set 1st page after filtration
|
924 |
+
directory.data( 'page', 1 );
|
925 |
+
um_set_url_from_data( directory, 'page', '' );
|
926 |
+
|
927 |
+
jQuery(this).tipsy('hide');
|
928 |
+
jQuery(this).parents('.um-members-filter-tag').remove();
|
929 |
+
|
930 |
+
if ( directory.find( '.um-members-filter-remove' ).length === 0 ) {
|
931 |
+
directory.find('.um-clear-filters').hide();
|
932 |
+
} else {
|
933 |
+
directory.find('.um-clear-filters').show();
|
934 |
+
}
|
935 |
+
|
936 |
+
var show_after_search = directory.data('must-search');
|
937 |
+
if ( show_after_search === 1 ) {
|
938 |
+
var search = um_get_search( directory );
|
939 |
+
if ( directory.find( '.um-members-filter-remove' ).length === 0 && ! search ) {
|
940 |
+
directory.data( 'searched', 0 );
|
941 |
+
directory.find('.um-members-grid, .um-members-list').remove();
|
942 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', true );
|
943 |
+
directory.find( '.um-member-directory-view-type' ).addClass( 'um-disabled' );
|
944 |
+
um_members_hide_preloader( directory );
|
945 |
+
return;
|
946 |
+
}
|
947 |
+
}
|
948 |
+
|
949 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', false );
|
950 |
+
directory.find( '.um-member-directory-view-type' ).removeClass( 'um-disabled' );
|
951 |
+
|
952 |
+
um_ajax_get_members( directory );
|
953 |
+
});
|
954 |
+
|
955 |
+
|
956 |
+
jQuery( document.body ).on( 'click', '.um-directory .um-clear-filters-a', function() {
|
957 |
+
var directory = jQuery(this).parents('.um-directory');
|
958 |
+
if ( um_is_directory_busy( directory ) ) {
|
959 |
+
return;
|
960 |
+
}
|
961 |
+
|
962 |
+
um_members_show_preloader( directory );
|
963 |
+
|
964 |
+
directory.find( '.um-members-filter-remove' ).each( function() {
|
965 |
+
var removeItem = jQuery(this).data('value');
|
966 |
+
var filter_name = jQuery(this).data('name');
|
967 |
+
|
968 |
+
var type = jQuery(this).data('type');
|
969 |
+
if ( type === 'select' ) {
|
970 |
+
|
971 |
+
var current_value = um_get_data_for_directory( directory, 'filter_' + filter_name );
|
972 |
+
if ( typeof current_value == 'undefined' ) {
|
973 |
+
current_value = [];
|
974 |
+
} else {
|
975 |
+
current_value = current_value.split( '||' );
|
976 |
+
}
|
977 |
+
|
978 |
+
if ( -1 !== jQuery.inArray( removeItem.toString(), current_value ) ) {
|
979 |
+
current_value = jQuery.grep( current_value, function( value ) {
|
980 |
+
return value !== removeItem.toString();
|
981 |
+
});
|
982 |
+
}
|
983 |
+
|
984 |
+
if ( ! current_value.length ) {
|
985 |
+
current_value = '';
|
986 |
+
}
|
987 |
+
|
988 |
+
um_set_url_from_data( directory, 'filter_' + filter_name, current_value );
|
989 |
+
|
990 |
+
var select = jQuery( '.um-search-filter select[name="' + filter_name + '"]' );
|
991 |
+
select.find('option[value="' + removeItem + '"]').prop('disabled', false).show();
|
992 |
+
|
993 |
+
//disable options and disable select if all options are disabled
|
994 |
+
if ( select.find('option:not(:disabled)').length > 1 ) {
|
995 |
+
select.prop('disabled', false);
|
996 |
+
}
|
997 |
+
select.select2('destroy').select2();
|
998 |
+
|
999 |
+
} else if ( type === 'slider' ) {
|
1000 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from','' );
|
1001 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', '' );
|
1002 |
+
} else if ( type === 'datepicker' ) {
|
1003 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from','' );
|
1004 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', '' );
|
1005 |
+
} else if ( type === 'timepicker' ) {
|
1006 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from','' );
|
1007 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', '' );
|
1008 |
+
}
|
1009 |
+
});
|
1010 |
+
|
1011 |
+
//set 1st page after filtration
|
1012 |
+
directory.data( 'page', 1 );
|
1013 |
+
um_set_url_from_data( directory, 'page', '' );
|
1014 |
+
directory.find('.um-members-filter-tag').remove();
|
1015 |
+
|
1016 |
+
//jQuery(this).hide();
|
1017 |
+
if ( directory.find( '.um-members-filter-remove' ).length === 0 ) {
|
1018 |
+
directory.find('.um-clear-filters').hide();
|
1019 |
+
directory.find('.um-clear-filters').parents('.um-member-directory-header-row').addClass( 'um-header-row-invisible' );
|
1020 |
+
} else {
|
1021 |
+
directory.find('.um-clear-filters').show();
|
1022 |
+
directory.find('.um-clear-filters').parents('.um-member-directory-header-row').removeClass( 'um-header-row-invisible' );
|
1023 |
+
}
|
1024 |
+
|
1025 |
+
var show_after_search = directory.data('must-search');
|
1026 |
+
if ( show_after_search === 1 ) {
|
1027 |
+
var search = um_get_search( directory );
|
1028 |
+
if ( ! search ) {
|
1029 |
+
directory.data( 'searched', 0 );
|
1030 |
+
directory.find('.um-members-grid, .um-members-list').remove();
|
1031 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', true );
|
1032 |
+
directory.find( '.um-member-directory-view-type' ).addClass( 'um-disabled' );
|
1033 |
+
um_members_hide_preloader( directory );
|
1034 |
+
return;
|
1035 |
+
}
|
1036 |
+
}
|
1037 |
+
|
1038 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', false );
|
1039 |
+
directory.find( '.um-member-directory-view-type' ).removeClass( 'um-disabled' );
|
1040 |
+
|
1041 |
+
um_ajax_get_members( directory );
|
1042 |
+
});
|
1043 |
+
|
1044 |
+
|
1045 |
+
/**
|
1046 |
+
* First Page Loading
|
1047 |
+
*/
|
1048 |
+
|
1049 |
+
|
1050 |
+
//Init Directories
|
1051 |
+
jQuery( '.um-directory' ).each( function() {
|
1052 |
+
var directory = jQuery(this);
|
1053 |
+
var hash = um_members_get_hash( directory );
|
1054 |
+
um_member_directories.push( hash );
|
1055 |
+
|
1056 |
+
var show_after_search = directory.data('must-search');
|
1057 |
+
if ( show_after_search === 1 ) {
|
1058 |
+
var search = um_get_search( directory );
|
1059 |
+
var filters_data = um_get_filters_data( directory );
|
1060 |
+
if ( ! filters_data.length && ! search ) {
|
1061 |
+
return;
|
1062 |
+
}
|
1063 |
+
}
|
1064 |
+
|
1065 |
+
um_members_show_preloader( directory );
|
1066 |
+
um_ajax_get_members( directory, {first_load:true} );
|
1067 |
+
|
1068 |
+
|
1069 |
+
//slider filter
|
1070 |
+
directory.find('.um-slider').each( function() {
|
1071 |
+
var slider = jQuery( this );
|
1072 |
+
var directory = slider.parents('.um-directory');
|
1073 |
+
|
1074 |
+
var filter_name = slider.data('field_name');
|
1075 |
+
|
1076 |
+
var min_default_value = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
1077 |
+
var max_default_value = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
1078 |
+
if ( typeof min_default_value == 'undefined' ) {
|
1079 |
+
min_default_value = parseInt( slider.data('min') );
|
1080 |
+
}
|
1081 |
+
|
1082 |
+
if ( typeof max_default_value == 'undefined' ) {
|
1083 |
+
max_default_value = parseInt( slider.data('max') );
|
1084 |
+
}
|
1085 |
+
|
1086 |
+
var default_value = [ min_default_value, max_default_value ];
|
1087 |
+
|
1088 |
+
slider.slider({
|
1089 |
+
range: true,
|
1090 |
+
min: parseInt( slider.data('min') ),
|
1091 |
+
max: parseInt( slider.data('max') ),
|
1092 |
+
values: default_value,
|
1093 |
+
create: function( event, ui ) {
|
1094 |
+
//console.log( ui );
|
1095 |
+
},
|
1096 |
+
step: 1,
|
1097 |
+
slide: function( event, ui ) {
|
1098 |
+
um_set_range_label( jQuery( this ), ui );
|
1099 |
+
},
|
1100 |
+
stop: function( event, ui ) {
|
1101 |
+
if ( ! um_is_directory_busy( directory ) ) {
|
1102 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from', ui.values[0] );
|
1103 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', ui.values[1] );
|
1104 |
+
|
1105 |
+
//set 1st page after filtration
|
1106 |
+
directory.data( 'page', 1 );
|
1107 |
+
um_set_url_from_data( directory, 'page', '' );
|
1108 |
+
um_ajax_get_members( directory );
|
1109 |
+
|
1110 |
+
um_change_tag( directory );
|
1111 |
+
|
1112 |
+
directory.data( 'searched', 1 );
|
1113 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', false );
|
1114 |
+
directory.find( '.um-member-directory-view-type' ).removeClass( 'um-disabled' );
|
1115 |
+
}
|
1116 |
+
}
|
1117 |
+
});
|
1118 |
+
|
1119 |
+
um_set_range_label( slider );
|
1120 |
+
});
|
1121 |
+
|
1122 |
+
|
1123 |
+
//datepicker filter
|
1124 |
+
directory.find('.um-datepicker-filter').each( function() {
|
1125 |
+
var elem = jQuery(this);
|
1126 |
+
|
1127 |
+
var min = new Date( elem.data('date_min')*1000 );
|
1128 |
+
var max = new Date( elem.data('date_max')*1000 );
|
1129 |
+
|
1130 |
+
var $input = elem.pickadate({
|
1131 |
+
selectYears: true,
|
1132 |
+
min: min,
|
1133 |
+
max: max,
|
1134 |
+
formatSubmit: 'yyyy/mm/dd',
|
1135 |
+
hiddenName: true,
|
1136 |
+
onOpen: function() {
|
1137 |
+
elem.blur();
|
1138 |
+
},
|
1139 |
+
onClose: function() {
|
1140 |
+
elem.blur();
|
1141 |
+
},
|
1142 |
+
onSet: function( context ) {
|
1143 |
+
var directory = elem.parents('.um-directory');
|
1144 |
+
|
1145 |
+
if ( um_is_directory_busy( directory ) ) {
|
1146 |
+
return;
|
1147 |
+
}
|
1148 |
+
|
1149 |
+
um_members_show_preloader( directory );
|
1150 |
+
|
1151 |
+
var filter_name = elem.data( 'filter_name' );
|
1152 |
+
var range = elem.data( 'range' );
|
1153 |
+
|
1154 |
+
var current_value_from = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
1155 |
+
var current_value_to = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
1156 |
+
if ( typeof current_value_from === "undefined" ) {
|
1157 |
+
current_value_from = min / 1000;
|
1158 |
+
}
|
1159 |
+
if ( typeof current_value_to === "undefined" ) {
|
1160 |
+
current_value_to = max / 1000;
|
1161 |
+
}
|
1162 |
+
|
1163 |
+
var select_val = context.select / 1000;
|
1164 |
+
var change_val = elem.val();
|
1165 |
+
|
1166 |
+
if ( range === 'from' ) {
|
1167 |
+
current_value_from = select_val;
|
1168 |
+
} else if ( range === 'to' ) {
|
1169 |
+
current_value_to = select_val;
|
1170 |
+
}
|
1171 |
+
|
1172 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from', current_value_from );
|
1173 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', current_value_to );
|
1174 |
+
|
1175 |
+
//set 1st page after filtration
|
1176 |
+
directory.data( 'page', 1 );
|
1177 |
+
um_set_url_from_data( directory, 'page', '' );
|
1178 |
+
|
1179 |
+
um_ajax_get_members( directory );
|
1180 |
+
|
1181 |
+
um_change_tag( directory );
|
1182 |
+
|
1183 |
+
directory.data( 'searched', 1 );
|
1184 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', false );
|
1185 |
+
directory.find( '.um-member-directory-view-type' ).removeClass( 'um-disabled' );
|
1186 |
+
}
|
1187 |
+
});
|
1188 |
+
|
1189 |
+
var $picker = $input.pickadate('picker');
|
1190 |
+
var $fname = elem.data('filter_name');
|
1191 |
+
var $frange = elem.data('range');
|
1192 |
+
var $directory = elem.parents('.um-directory');
|
1193 |
+
|
1194 |
+
var query_value = um_get_data_for_directory( $directory, 'filter_' + $fname + '_' + $frange );
|
1195 |
+
if ( typeof query_value !== 'undefined' ) {
|
1196 |
+
$picker.set( 'select', query_value*1000 );
|
1197 |
+
}
|
1198 |
+
|
1199 |
+
});
|
1200 |
+
|
1201 |
+
|
1202 |
+
//timepicker filter
|
1203 |
+
directory.find('.um-timepicker-filter').each( function() {
|
1204 |
+
var elem = jQuery(this);
|
1205 |
+
|
1206 |
+
//using arrays formatted as [HOUR,MINUTE]
|
1207 |
+
|
1208 |
+
var min = elem.data('min');
|
1209 |
+
var max = elem.data('max');
|
1210 |
+
var picker_min = min.split(':');
|
1211 |
+
var picker_max = max.split(':');
|
1212 |
+
|
1213 |
+
var $input = elem.pickatime({
|
1214 |
+
format: elem.data('format'),
|
1215 |
+
interval: parseInt( elem.data('intervals') ),
|
1216 |
+
min: [picker_min[0],picker_min[1]],
|
1217 |
+
max: [picker_max[0],picker_max[1]],
|
1218 |
+
formatSubmit: 'HH:i',
|
1219 |
+
hiddenName: true,
|
1220 |
+
onOpen: function() { elem.blur(); },
|
1221 |
+
onClose: function() { elem.blur(); },
|
1222 |
+
onSet: function( context ) {
|
1223 |
+
var directory = elem.parents('.um-directory');
|
1224 |
+
|
1225 |
+
if ( um_is_directory_busy( directory ) ) {
|
1226 |
+
return;
|
1227 |
+
}
|
1228 |
+
|
1229 |
+
um_members_show_preloader( directory );
|
1230 |
+
|
1231 |
+
var filter_name = elem.data( 'filter_name' );
|
1232 |
+
var range = elem.data( 'range' );
|
1233 |
+
|
1234 |
+
var current_value_from = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
1235 |
+
var current_value_to = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
1236 |
+
if ( typeof current_value_from === "undefined" ) {
|
1237 |
+
current_value_from = min;
|
1238 |
+
}
|
1239 |
+
if ( typeof current_value_to === "undefined" ) {
|
1240 |
+
current_value_to = max;
|
1241 |
+
}
|
1242 |
+
|
1243 |
+
if ( typeof context.select !== 'undefined' ) {
|
1244 |
+
var select_val = context.select / 60;
|
1245 |
+
var change_val = elem.val();
|
1246 |
+
|
1247 |
+
if ( range === 'from' ) {
|
1248 |
+
current_value_from = select_val + ':00';
|
1249 |
+
} else if ( range === 'to' ) {
|
1250 |
+
current_value_to = select_val + ':00';
|
1251 |
+
}
|
1252 |
+
} else {
|
1253 |
+
if ( range === 'from' ) {
|
1254 |
+
current_value_from = min;
|
1255 |
+
} else if ( range === 'to' ) {
|
1256 |
+
current_value_to = max;
|
1257 |
+
}
|
1258 |
+
}
|
1259 |
+
|
1260 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_from', current_value_from );
|
1261 |
+
um_set_url_from_data( directory, 'filter_' + filter_name + '_to', current_value_to );
|
1262 |
+
|
1263 |
+
//set 1st page after filtration
|
1264 |
+
directory.data( 'page', 1 );
|
1265 |
+
um_set_url_from_data( directory, 'page', '' );
|
1266 |
+
|
1267 |
+
um_ajax_get_members( directory );
|
1268 |
+
|
1269 |
+
um_change_tag( directory );
|
1270 |
+
|
1271 |
+
directory.data( 'searched', 1 );
|
1272 |
+
directory.find( '.um-member-directory-sorting-options' ).prop( 'disabled', false );
|
1273 |
+
directory.find( '.um-member-directory-view-type' ).removeClass( 'um-disabled' );
|
1274 |
+
}
|
1275 |
+
});
|
1276 |
+
|
1277 |
+
|
1278 |
+
var $picker = $input.pickatime('picker');
|
1279 |
+
var $fname = elem.data('filter_name');
|
1280 |
+
var $frange = elem.data('range');
|
1281 |
+
var $directory = elem.parents('.um-directory');
|
1282 |
+
|
1283 |
+
var query_value = um_get_data_for_directory( $directory, 'filter_' + $fname + '_' + $frange );
|
1284 |
+
if ( typeof query_value !== 'undefined' ) {
|
1285 |
+
var arr = query_value.split(':');
|
1286 |
+
$picker.set( 'select', arr[0]*60 );
|
1287 |
+
}
|
1288 |
+
});
|
1289 |
+
|
1290 |
+
um_change_tag( directory );
|
1291 |
+
});
|
1292 |
+
|
1293 |
+
|
1294 |
+
//history events when back/forward and change window.location.hash
|
1295 |
+
window.addEventListener( "popstate", function(e) {
|
1296 |
+
jQuery( '.um-directory' ).each( function() {
|
1297 |
+
var directory = jQuery(this);
|
1298 |
+
var hash = um_members_get_hash( directory );
|
1299 |
+
um_member_directories.push( hash );
|
1300 |
+
|
1301 |
+
um_members_show_preloader( directory );
|
1302 |
+
|
1303 |
+
// clear layout and header
|
1304 |
+
directory.find('.um-members-grid, .um-members-list, .um-members-intro').remove();
|
1305 |
+
|
1306 |
+
// set search from history
|
1307 |
+
if ( directory.find( '.um-member-directory-search-line' ).length ) {
|
1308 |
+
var search = um_get_data_for_directory( directory, 'search' );
|
1309 |
+
if ( typeof search == 'undefined' ) {
|
1310 |
+
search = '';
|
1311 |
+
}
|
1312 |
+
directory.data( 'general_search', search );
|
1313 |
+
directory.find('.um-search-line').val( search );
|
1314 |
+
}
|
1315 |
+
|
1316 |
+
var page = um_get_data_for_directory( directory, 'page' );
|
1317 |
+
if ( typeof page == 'undefined' ) {
|
1318 |
+
page = 1;
|
1319 |
+
} else if ( page > directory.data( 'total_pages' ) ) {
|
1320 |
+
page = directory.data( 'total_pages' );
|
1321 |
+
}
|
1322 |
+
|
1323 |
+
directory.data( 'page', page ).attr( 'data-page', page );
|
1324 |
+
|
1325 |
+
//sorting from history
|
1326 |
+
if ( directory.find( '.um-member-directory-sorting' ).length ) {
|
1327 |
+
var sort = um_get_data_for_directory( directory, 'sort' );
|
1328 |
+
if ( typeof sort == 'undefined' ) {
|
1329 |
+
sort = directory.find( '.um-new-dropdown[data-element=".um-member-directory-sorting-a"]' ).find('a[data-default="1"]').data('value');
|
1330 |
+
}
|
1331 |
+
directory.data( 'sorting', sort );
|
1332 |
+
|
1333 |
+
var sort_dropdown = directory.find( '.um-new-dropdown[data-element=".um-member-directory-sorting-a"]' );
|
1334 |
+
sort_dropdown.find('a').data('selected', 0).prop('data-selected', 0).attr('data-selected', 0);
|
1335 |
+
sort_dropdown.find('a[data-value="' + sort + '"]').data('selected', 1).prop('data-selected', 1).attr('data-selected', 1);
|
1336 |
+
directory.find('.um-member-directory-sorting-a').find('> a').html( sort_dropdown.find('a[data-value="' + sort + '"]').html() );
|
1337 |
+
}
|
1338 |
+
|
1339 |
+
//view type from history
|
1340 |
+
if ( directory.find( '.um-member-directory-view-type' ).length ) {
|
1341 |
+
var layout = um_get_data_for_directory( directory, 'view_type' );
|
1342 |
+
if ( typeof layout == 'undefined' ) {
|
1343 |
+
layout = directory.find( '.um-member-directory-view-type-a[data-default="1"]' ).data('type');
|
1344 |
+
}
|
1345 |
+
directory.data( 'view_type', layout );
|
1346 |
+
|
1347 |
+
directory.find('.um-member-directory-view-type .um-member-directory-view-type-a').hide();
|
1348 |
+
directory.find('.um-member-directory-view-type .um-member-directory-view-type-a[data-type="' + layout + '"]').show();
|
1349 |
+
}
|
1350 |
+
|
1351 |
+
//datepicker filter
|
1352 |
+
directory.find('.um-datepicker-filter').each( function() {
|
1353 |
+
var elem = jQuery(this);
|
1354 |
+
|
1355 |
+
var $picker = elem.pickadate('picker');
|
1356 |
+
var $fname = elem.data('filter_name');
|
1357 |
+
var $frange = elem.data('range');
|
1358 |
+
|
1359 |
+
var query_value = um_get_data_for_directory( directory, 'filter_' + $fname + '_' + $frange );
|
1360 |
+
if ( typeof query_value !== 'undefined' ) {
|
1361 |
+
$picker.set( 'select', query_value*1000 );
|
1362 |
+
} else {
|
1363 |
+
$picker.clear();
|
1364 |
+
}
|
1365 |
+
});
|
1366 |
+
|
1367 |
+
directory.find('.um-slider').each( function() {
|
1368 |
+
var slider = jQuery( this );
|
1369 |
+
var filter_name = slider.data('field_name');
|
1370 |
+
|
1371 |
+
var min_default_value = um_get_data_for_directory( directory, 'filter_' + filter_name + '_from' );
|
1372 |
+
var max_default_value = um_get_data_for_directory( directory, 'filter_' + filter_name + '_to' );
|
1373 |
+
if ( typeof min_default_value == 'undefined' ) {
|
1374 |
+
min_default_value = slider.data('min');
|
1375 |
+
}
|
1376 |
+
min_default_value = parseInt( min_default_value );
|
1377 |
+
|
1378 |
+
if ( typeof max_default_value == 'undefined' ) {
|
1379 |
+
max_default_value = slider.data('max');
|
1380 |
+
}
|
1381 |
+
max_default_value = parseInt( max_default_value );
|
1382 |
+
|
1383 |
+
slider.slider( 'values', [min_default_value, max_default_value] );
|
1384 |
+
um_set_range_label( slider );
|
1385 |
+
});
|
1386 |
+
|
1387 |
+
//timepicker filter
|
1388 |
+
directory.find('.um-timepicker-filter').each( function() {
|
1389 |
+
var elem = jQuery(this);
|
1390 |
+
|
1391 |
+
var $picker = elem.pickatime('picker');
|
1392 |
+
var $fname = elem.data('filter_name');
|
1393 |
+
var $frange = elem.data('range');
|
1394 |
+
|
1395 |
+
var query_value = um_get_data_for_directory( directory, 'filter_' + $fname + '_' + $frange );
|
1396 |
+
if ( typeof query_value !== 'undefined' ) {
|
1397 |
+
var arr = query_value.split(':');
|
1398 |
+
$picker.set( 'select', arr[0]*60 );
|
1399 |
+
} else {
|
1400 |
+
$picker.clear();
|
1401 |
+
}
|
1402 |
+
});
|
1403 |
+
|
1404 |
+
|
1405 |
+
var show_after_search = directory.data('must-search');
|
1406 |
+
if ( show_after_search === 1 ) {
|
1407 |
+
var search = um_get_search( directory );
|
1408 |
+
var filters_data = um_get_filters_data( directory );
|
1409 |
+
if ( ! filters_data.length && ! search ) {
|
1410 |
+
directory.data( 'searched', 0 );
|
1411 |
+
um_members_hide_preloader( directory );
|
1412 |
+
return;
|
1413 |
+
} else {
|
1414 |
+
directory.data( 'searched', 1 );
|
1415 |
+
}
|
1416 |
+
}
|
1417 |
+
|
1418 |
+
um_ajax_get_members( directory );
|
1419 |
+
|
1420 |
+
um_change_tag( directory );
|
1421 |
+
});
|
1422 |
});
|
1423 |
|
1424 |
});
|
assets/js/um-members.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
jQuery(document).ready(function(){jQuery(".um-members").each(function(){UM_Member_Grid(jQuery(this))}),jQuery(".um-directory .um-member-connect").each(function(){0==jQuery(this).find("a").length&&jQuery(this).remove()}),jQuery(".um-member-meta-main").each(function(){0==jQuery(this).find(".um-member-metaline").length&&0==jQuery(this).find(".um-member-connect").find("a").length&&jQuery(this).remove()}),jQuery(document.body).on("click",".um-member-more a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member"),m=jQuery(this).parents(".um-members");return r.find(".um-member-more").hide(),r.find(".um-member-meta").slideDown(function(){UM_Member_Grid(m)}),r.find(".um-member-less").fadeIn(),setTimeout(function(){UM_Member_Grid(m)},100),!1}),jQuery(document.body).on("click",".um-member-less a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member"),m=jQuery(this).parents(".um-members");return r.find(".um-member-less").hide(),r.find(".um-member-meta").slideUp(function(){r.find(".um-member-more").fadeIn(),UM_Member_Grid(m)}),!1}),jQuery(document.body).on("click",".um-do-search",function(e){return e.preventDefault(),jQuery(this).parents("form").find("input").filter(function(e){if(0===this.value.length)return!0}).prop("disabled",!0),jQuery(this).parents("form").find("select").filter(function(e){if(0===this.value.length)return!0}).prop("disabled",!0),jQuery(this).parents("form").submit(),!1})});
|
1 |
+
var um_members_directory_busy=[],um_member_directories=[],um_member_directory_last_data=[];function um_parse_current_url(){var t={},a=window.location.search.substring(1).split("&");return jQuery.each(a,function(e){var r=a[e].split("=");t[r[0]]=r[1]}),t}function um_get_data_for_directory(e,r){var t=um_members_get_hash(e),a={},i=um_parse_current_url();if(jQuery.each(i,function(e){-1!==e.indexOf("_"+t)&&""!==i[e]&&(a[e.replace("_"+t,"")]=i[e])}),r){if(void 0!==a[r])try{a[r]=decodeURI(a[r])}catch(e){console.error(e)}return a[r]}return a}function um_set_url_from_data(e,r,t){var a=um_members_get_hash(e),i=um_get_data_for_directory(e),m={};""!==t&&(m[r+"_"+a]=t),jQuery.each(i,function(e){r===e?""!==t&&(m[e+"_"+a]=t):m[e+"_"+a]=i[e]}),jQuery.each(um_member_directories,function(e){var r=um_member_directories[e];if(r!==a){var t=um_get_data_for_directory(jQuery('.um-directory[data-hash="'+r+'"]'));jQuery.each(t,function(e){m[e+"_"+r]=t[e]})}});var d=[];jQuery.each(m,function(e){d.push(e+"="+m[e])});var u="?"+(d=wp.hooks.applyFilters("um_member_directory_url_attrs",d)).join("&");"?"===u&&(u=""),window.history.pushState("string","UM Member Directory",window.location.origin+window.location.pathname+u)}function um_members_get_hash(e){return e.data("hash")}function um_is_directory_busy(e){var r=um_members_get_hash(e);return void 0!==um_members_directory_busy[r]&&um_members_directory_busy[r]}function um_members_show_preloader(e){um_members_directory_busy[um_members_get_hash(e)]=!0,e.find(".um-members-overlay").show()}function um_members_hide_preloader(e){um_members_directory_busy[um_members_get_hash(e)]=!1,e.find(".um-members-overlay").hide()}function um_set_range_label(e,r){var t=e.siblings(".um-slider-range").data("placeholder");t=r?t.replace("{min_range}",r.values[0]).replace("{max_range}",r.values[1]).replace("{field_label}",e.siblings(".um-slider-range").data("label")):t.replace("{min_range}",e.slider("values",0)).replace("{max_range}",e.slider("values",1)).replace("{field_label}",e.siblings(".um-slider-range").data("label")),e.siblings(".um-slider-range").html(t),e.siblings(".um_range_min").val(e.slider("values",0)),e.siblings(".um_range_max").val(e.slider("values",1))}function um_get_search(e){return e.find(".um-search-line").length?e.find(".um-search-line").val():""}function um_get_sort(e){return e.data("sorting")}function um_get_current_page(e){var r=e.data("page");return r&&void 0!==r||(r=1),r}function um_ajax_get_members(m,t){var a=um_members_get_hash(m),e=um_get_current_page(m),r=um_get_search(m),i=um_get_sort(m),d=-(new Date).getTimezoneOffset()/60,u={directory_id:a,page:e,search:r,sorting:i,gmt_offset:d,post_refferer:m.data("base-post"),nonce:um_scripts.nonce};m.find(".um-search-filter").length&&m.find(".um-search-filter").each(function(){var e=jQuery(this);if(e.find(".um-slider").length){var r=e.find(".um-slider").data("field_name"),t=um_get_data_for_directory(m,"filter_"+r+"_from"),a=um_get_data_for_directory(m,"filter_"+r+"_to");void 0===t&&void 0===a||(u[r]=[t,a])}else if(e.find(".um-datepicker-filter").length){r=e.find(".um-datepicker-filter").data("filter_name"),t=um_get_data_for_directory(m,"filter_"+r+"_from"),a=um_get_data_for_directory(m,"filter_"+r+"_to");void 0===t&&void 0===a||(u[r]=[t,a])}else if(e.find(".um-timepicker-filter").length){r=e.find(".um-timepicker-filter").data("filter_name"),t=um_get_data_for_directory(m,"filter_"+r+"_from"),a=um_get_data_for_directory(m,"filter_"+r+"_to");void 0===t&&void 0===a||(u[r]=[t,a])}else{r=e.find("select").attr("name");var i=um_get_data_for_directory(m,"filter_"+r);void 0!==i&&(u[r]=i.split("||"))}}),u=wp.hooks.applyFilters("um_member_directory_filter_request",u),wp.ajax.send("um_get_members",{data:u,success:function(e){um_member_directory_last_data[a]=e,um_build_template(m,e);var r=wp.template("um-members-pagination");m.find(".um-members-pagination-box").html(r(e)),m.data("total_pages",e.pagination.total_pages),e.pagination.total_pages?(m.find(".um-member-directory-sorting-options").prop("disabled",!1),m.find(".um-member-directory-view-type").removeClass("um-disabled")):(m.find(".um-member-directory-sorting-options").prop("disabled",!0),m.find(".um-member-directory-view-type").addClass("um-disabled")),jQuery(document).trigger("um_members_rendered",t),um_init_new_dropdown(),um_members_hide_preloader(m)},error:function(e){console.log(e),um_members_hide_preloader(m)}})}function um_build_template(e,r){var t=e.data("view_type"),a=wp.template("um-member-"+t);e.find(".um-members-grid, .um-members-list").remove(),e.find(".um-members-wrapper").prepend(a(r.users));var i=wp.template("um-members-header");e.find(".um-members-intro").remove(),e.find(".um-members-wrapper").prepend(i(r)),e.addClass("um-loaded"),e.find(".um-members.um-members-grid").length&&UM_Member_Grid(e.find(".um-members.um-members-grid")),jQuery(document).trigger("um_build_template",[e,r]),jQuery(window).trigger("resize"),init_tipsy()}function UM_Member_Grid(e){e.find(".um-member").length&&e.imagesLoaded(function(){e.masonry({itemSelector:".um-member",columnWidth:".um-member",gutter:".um-gutter-sizer"}).on("layoutComplete",function(e,r){jQuery(document).trigger("um_grid_initialized",[e,r])})})}function um_get_filters_data(s){var _=[];return s.find(".um-search-filter").each(function(){var t,a,d,i=jQuery(this);if(i.find("input.um-datepicker-filter").length)d="datepicker",i.find("input.um-datepicker-filter").each(function(){if("to"!==jQuery(this).data("range")){var e=jQuery(this).data("filter_name"),r=um_get_data_for_directory(s,"filter_"+e+"_from"),t=um_get_data_for_directory(s,"filter_"+e+"_to");if(void 0!==r||void 0!==t){var a,i=jQuery(this).val(),m=s.find('input.um-datepicker-filter[data-range="to"][data-filter_name="'+e+'"]').val();i===m?a=m:""!==i&&""!==m?a=i+" - "+m:""===i?a="before "+m:""===m&&(a="since "+i),_.push({name:e,label:jQuery(this).data("filter-label"),value_label:a,value:[r,t],type:d})}}});else if(i.find("input.um-timepicker-filter").length)d="timepicker",i.find("input.um-timepicker-filter").each(function(){if("to"!==jQuery(this).data("range")){var e=jQuery(this).data("filter_name"),r=um_get_data_for_directory(s,"filter_"+e+"_from"),t=um_get_data_for_directory(s,"filter_"+e+"_to");if(void 0!==r||void 0!==t){var a,i=jQuery(this).val(),m=s.find('input.um-timepicker-filter[data-range="to"][data-filter_name="'+e+'"]').val();i===m?a=m:""!==i&&""!==m?a=i+" - "+m:""===i?a="before "+m:""===m&&(a="since "+i),_.push({name:e,label:jQuery(this).data("filter-label"),value_label:a,value:[r,t],type:d})}}});else if(i.find("select").length){d="select",t=i.find("select").attr("name"),a=i.find("select").data("placeholder");var m=um_get_data_for_directory(s,"filter_"+t);m=void 0===m?[]:m.split("||"),jQuery.each(m,function(e){var r=i.find('select option[value="'+m[e]+'"]').data("value_label");_.push({name:t,label:a,value_label:r,value:m[e],type:d})})}else if(i.find("div.ui-slider").length){d="slider",t=i.find("div.ui-slider").data("field_name");var e=um_get_data_for_directory(s,"filter_"+t+"_from"),r=um_get_data_for_directory(s,"filter_"+t+"_to");if(void 0===e&&void 0===r)return;a=i.find("div.um-slider-range").data("label");var u=i.find("div.um-slider-range").data("placeholder").replace("{min_range}",e).replace("{max_range}",r).replace("{field_label}",i.find("div.um-slider-range").data("label"));_.push({name:t,label:a,value_label:u,value:[e,r],type:d})}}),_}function um_change_tag(e){var r=um_get_filters_data(e);e.find(".um-members-filter-tag").remove();var t=e.find(".um-filtered-line");if(t.length){var a=wp.template("um-members-filtered-line");t.prepend(a({filters:r})),0===e.find(".um-members-filter-remove").length?(e.find(".um-clear-filters").hide(),e.find(".um-clear-filters").parents(".um-member-directory-header-row").addClass("um-header-row-invisible")):(e.find(".um-clear-filters").show(),e.find(".um-clear-filters").parents(".um-member-directory-header-row").removeClass("um-header-row-invisible"))}}function um_run_search(e){if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=um_get_data_for_directory(e,"search");if((t=e.find(".um-search-line").val())===r||""===t&&void 0===r)um_members_hide_preloader(e);else{if(e.data("general_search",t),um_set_url_from_data(e,"search",t),e.data("page",1),um_set_url_from_data(e,"page",""),1===e.data("must-search")){var t=um_get_search(e);if(0===e.find(".um-members-filter-remove").length&&!t)return e.data("searched",0),e.find(".um-members-grid, .um-members-list").remove(),e.find(".um-member-directory-sorting-options").prop("disabled",!0),e.find(".um-member-directory-view-type").addClass("um-disabled"),void um_members_hide_preloader(e)}e.data("searched",1),e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(e)}}}jQuery(document.body).ready(function(){jQuery(".um-directory .um-search-filter select").each(function(){1===jQuery(this).find("option:not(:disabled)").length&&jQuery(this).prop("disabled",!0),jQuery(this).select2("destroy").select2()}),jQuery(document.body).on("mouseover",".um-directory .um-member-directory-view-type",function(){if(!jQuery(this).hasClass("um-disabled")){var e=jQuery(this).find(".um-member-directory-view-type-a:visible");e.hide(),e.next().length?e.next().show().tipsy("show"):jQuery(this).find(".um-member-directory-view-type-a:first").show().tipsy("show")}}).on("mouseout",".um-directory .um-member-directory-view-type",function(){jQuery(this).hasClass("um-disabled")||(jQuery(this).find(".um-member-directory-view-type-a").hide().tipsy("hide"),jQuery(this).find('.um-member-directory-view-type-a[data-type="'+jQuery(this).parents(".um-directory").data("view_type")+'"]').show())}),jQuery(document.body).on("click",".um-directory .um-member-directory-view-type-a",function(){var e=jQuery(this).parents(".um-directory");if(um_is_directory_busy(e))return!1;var r=jQuery(this),t=r.parents(".um-member-directory-view-type");if(!t.hasClass("um-disabled")){um_members_show_preloader(e);var a=t.find(".um-member-directory-view-type-a:visible");a.hide(),a.next().length?a.next().show().tipsy("show"):t.find(".um-member-directory-view-type-a:first").show().tipsy("show");var i=um_member_directory_last_data[um_members_get_hash(e)];if(null!==i){var m=r.data("type");um_set_url_from_data(e,"view_type",m),e.data("view_type",m),um_build_template(e,i)}um_members_hide_preloader(e)}}),jQuery(document.body).on("click",".um-directory .um-do-search",function(){um_run_search(jQuery(this).parents(".um-directory"))}),jQuery(document.body).on("keypress",".um-directory .um-search-line",function(e){13===e.which&&um_run_search(jQuery(this).parents(".um-directory"))}),jQuery(document.body).on("click",".um-directory .um-member-directory-sorting-a .um-new-dropdown li a",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)&&1!==jQuery(this).data("selected")){um_members_show_preloader(e);var r=jQuery(this).data("value");e.data("sorting",r),um_set_url_from_data(e,"sort",r),um_ajax_get_members(e),jQuery(this).parents(".um-new-dropdown").find("a").data("selected",0).prop("data-selected",0).attr("data-selected",0),jQuery(this).data("selected",1).prop("data-selected",1).attr("data-selected",1),jQuery(this).parents(".um-member-directory-sorting-a").find("> a").html(jQuery(this).html())}}),jQuery(document.body).on("click",".um-directory .pagi:not(.current)",function(){if(!jQuery(this).hasClass("disabled")){var e,r=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(r))um_members_show_preloader(r),1===(e="first"===jQuery(this).data("page")?1:"prev"===jQuery(this).data("page")?1*r.data("page")-1:"next"===jQuery(this).data("page")?1*r.data("page")+1:"last"===jQuery(this).data("page")?parseInt(r.data("total_pages")):parseInt(jQuery(this).data("page")))?(r.find('.pagi[data-page="first"], .pagi[data-page="prev"]').addClass("disabled"),r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').removeClass("disabled")):(e===parseInt(r.data("total_pages"))?r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').addClass("disabled"):r.find('.pagi[data-page="prev"], .pagi[data-page="last"]').removeClass("disabled"),r.find('.pagi[data-page="first"], .pagi[data-page="prev"]').removeClass("disabled")),r.find(".pagi").removeClass("current"),r.find('.pagi[data-page="'+e+'"]').addClass("current"),r.data("page",e),um_set_url_from_data(r,"page",1===e?"":e),um_ajax_get_members(r)}}),jQuery(document.body).on("change",".um-directory .um-members-pagi-dropdown",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=jQuery(this).val();e.find(".pagi").removeClass("current"),e.find('.pagi[data-page="'+r+'"]').addClass("current"),e.data("page",r),um_set_url_from_data(e,"page",1===r?"":r),um_ajax_get_members(e)}}),jQuery(document.body).on("click",".um-directory .um-members.um-members-list .um-member-more a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member");return r.find(".um-member-more").hide(),r.find(".um-member-meta-main").slideDown(),r.find(".um-member-less").fadeIn(),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-list .um-member-less a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member");return r.find(".um-member-less").hide(),r.find(".um-member-meta-main").slideUp(),r.find(".um-member-more").fadeIn(),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-grid .um-member-more a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member"),t=jQuery(this).parents(".um-members");return r.find(".um-member-more").hide(),r.find(".um-member-meta").slideDown(function(){UM_Member_Grid(t)}),r.find(".um-member-less").fadeIn(),setTimeout(function(){UM_Member_Grid(t)},100),!1}),jQuery(document.body).on("click",".um-directory .um-members.um-members-grid .um-member-less a",function(e){e.preventDefault();var r=jQuery(this).parents(".um-member"),t=jQuery(this).parents(".um-members");return r.find(".um-member-less").hide(),r.find(".um-member-meta").slideUp(function(){r.find(".um-member-more").fadeIn(),UM_Member_Grid(t)}),!1}),jQuery(".um-member-directory-filters-a").click(function(){var e=jQuery(this),r=e.parents(".um-directory").find(".um-search");r.is(":visible")?r.slideUp(250,function(){e.toggleClass("um-member-directory-filters-visible"),r.parents(".um-member-directory-header-row").toggleClass("um-header-row-invisible")}):r.slideDown({start:function(){jQuery(this).css({display:"grid"}),e.toggleClass("um-member-directory-filters-visible"),r.parents(".um-member-directory-header-row").toggleClass("um-header-row-invisible")}},250)}),jQuery(document.body).on("change",".um-directory .um-search-filter select",function(){if(""!==jQuery(this).val()){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)){um_members_show_preloader(e);var r=jQuery(this).prop("name"),t=um_get_data_for_directory(e,"filter_"+r);t=void 0===t?[]:t.split("||"),-1===jQuery.inArray(jQuery(this).val(),t)&&(t.push(jQuery(this).val()),um_set_url_from_data(e,"filter_"+r,t=t.join("||")),e.data("page",1),um_set_url_from_data(e,"page","")),jQuery(this).find('option[value="'+jQuery(this).val()+'"]').prop("disabled",!0).hide(),1===jQuery(this).find("option:not(:disabled)").length&&jQuery(this).prop("disabled",!0),jQuery(this).select2("destroy").select2(),jQuery(this).val("").trigger("change"),um_ajax_get_members(e),um_change_tag(e),e.data("searched",1),e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled")}}}),jQuery(document.body).on("click",".um-directory .um-members-filter-remove",function(){var e=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(e)&&e){um_members_show_preloader(e);var r=jQuery(this).data("value"),t=jQuery(this).data("name"),a=jQuery(this).data("type");if("select"===a){var i=um_get_data_for_directory(e,"filter_"+t);i=void 0===i?[]:i.split("||"),-1!==jQuery.inArray(r.toString(),i)&&(i=jQuery.grep(i,function(e){return e!==r.toString()})),i.length||(i=""),um_set_url_from_data(e,"filter_"+t,i);var m=jQuery('.um-search-filter select[name="'+t+'"]');m.find('option[value="'+r+'"]').prop("disabled",!1).show(),1<m.find("option:not(:disabled)").length&&m.prop("disabled",!1),m.select2("destroy").select2()}else"slider"===a?(um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to","")):"datepicker"===a?(um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to","")):"timepicker"===a&&(um_set_url_from_data(e,"filter_"+t+"_from",""),um_set_url_from_data(e,"filter_"+t+"_to",""));if(e.data("page",1),um_set_url_from_data(e,"page",""),jQuery(this).tipsy("hide"),jQuery(this).parents(".um-members-filter-tag").remove(),0===e.find(".um-members-filter-remove").length?e.find(".um-clear-filters").hide():e.find(".um-clear-filters").show(),1===e.data("must-search")){var d=um_get_search(e);if(0===e.find(".um-members-filter-remove").length&&!d)return e.data("searched",0),e.find(".um-members-grid, .um-members-list").remove(),e.find(".um-member-directory-sorting-options").prop("disabled",!0),e.find(".um-member-directory-view-type").addClass("um-disabled"),void um_members_hide_preloader(e)}e.find(".um-member-directory-sorting-options").prop("disabled",!1),e.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(e)}}),jQuery(document.body).on("click",".um-directory .um-clear-filters-a",function(){var m=jQuery(this).parents(".um-directory");if(!um_is_directory_busy(m)){if(um_members_show_preloader(m),m.find(".um-members-filter-remove").each(function(){var r=jQuery(this).data("value"),e=jQuery(this).data("name"),t=jQuery(this).data("type");if("select"===t){var a=um_get_data_for_directory(m,"filter_"+e);a=void 0===a?[]:a.split("||"),-1!==jQuery.inArray(r.toString(),a)&&(a=jQuery.grep(a,function(e){return e!==r.toString()})),a.length||(a=""),um_set_url_from_data(m,"filter_"+e,a);var i=jQuery('.um-search-filter select[name="'+e+'"]');i.find('option[value="'+r+'"]').prop("disabled",!1).show(),1<i.find("option:not(:disabled)").length&&i.prop("disabled",!1),i.select2("destroy").select2()}else"slider"===t?(um_set_url_from_data(m,"filter_"+e+"_from",""),um_set_url_from_data(m,"filter_"+e+"_to","")):"datepicker"===t?(um_set_url_from_data(m,"filter_"+e+"_from",""),um_set_url_from_data(m,"filter_"+e+"_to","")):"timepicker"===t&&(um_set_url_from_data(m,"filter_"+e+"_from",""),um_set_url_from_data(m,"filter_"+e+"_to",""))}),m.data("page",1),um_set_url_from_data(m,"page",""),m.find(".um-members-filter-tag").remove(),0===m.find(".um-members-filter-remove").length?(m.find(".um-clear-filters").hide(),m.find(".um-clear-filters").parents(".um-member-directory-header-row").addClass("um-header-row-invisible")):(m.find(".um-clear-filters").show(),m.find(".um-clear-filters").parents(".um-member-directory-header-row").removeClass("um-header-row-invisible")),1===m.data("must-search"))if(!um_get_search(m))return m.data("searched",0),m.find(".um-members-grid, .um-members-list").remove(),m.find(".um-member-directory-sorting-options").prop("disabled",!0),m.find(".um-member-directory-view-type").addClass("um-disabled"),void um_members_hide_preloader(m);m.find(".um-member-directory-sorting-options").prop("disabled",!1),m.find(".um-member-directory-view-type").removeClass("um-disabled"),um_ajax_get_members(m)}}),jQuery(".um-directory").each(function(){var e=jQuery(this),r=um_members_get_hash(e);if(um_member_directories.push(r),1===e.data("must-search")){var t=um_get_search(e);if(!um_get_filters_data(e).length&&!t)return}um_members_show_preloader(e),um_ajax_get_members(e,{first_load:!0}),e.find(".um-slider").each(function(){var e=jQuery(this),t=e.parents(".um-directory"),a=e.data("field_name"),r=um_get_data_for_directory(t,"filter_"+a+"_from"),i=um_get_data_for_directory(t,"filter_"+a+"_to");void 0===r&&(r=parseInt(e.data("min"))),void 0===i&&(i=parseInt(e.data("max")));var m=[r,i];e.slider({range:!0,min:parseInt(e.data("min")),max:parseInt(e.data("max")),values:m,create:function(e,r){},step:1,slide:function(e,r){um_set_range_label(jQuery(this),r)},stop:function(e,r){um_is_directory_busy(t)||(um_set_url_from_data(t,"filter_"+a+"_from",r.values[0]),um_set_url_from_data(t,"filter_"+a+"_to",r.values[1]),t.data("page",1),um_set_url_from_data(t,"page",""),um_ajax_get_members(t),um_change_tag(t),t.data("searched",1),t.find(".um-member-directory-sorting-options").prop("disabled",!1),t.find(".um-member-directory-view-type").removeClass("um-disabled"))}}),um_set_range_label(e)}),e.find(".um-datepicker-filter").each(function(){var u=jQuery(this),s=new Date(1e3*u.data("date_min")),_=new Date(1e3*u.data("date_max")),e=u.pickadate({selectYears:!0,min:s,max:_,formatSubmit:"yyyy/mm/dd",hiddenName:!0,onOpen:function(){u.blur()},onClose:function(){u.blur()},onSet:function(e){var r=u.parents(".um-directory");if(!um_is_directory_busy(r)){um_members_show_preloader(r);var t=u.data("filter_name"),a=u.data("range"),i=um_get_data_for_directory(r,"filter_"+t+"_from"),m=um_get_data_for_directory(r,"filter_"+t+"_to");void 0===i&&(i=s/1e3),void 0===m&&(m=_/1e3);var d=e.select/1e3;u.val();"from"===a?i=d:"to"===a&&(m=d),um_set_url_from_data(r,"filter_"+t+"_from",i),um_set_url_from_data(r,"filter_"+t+"_to",m),r.data("page",1),um_set_url_from_data(r,"page",""),um_ajax_get_members(r),um_change_tag(r),r.data("searched",1),r.find(".um-member-directory-sorting-options").prop("disabled",!1),r.find(".um-member-directory-view-type").removeClass("um-disabled")}}}).pickadate("picker"),r=u.data("filter_name"),t=u.data("range"),a=um_get_data_for_directory(u.parents(".um-directory"),"filter_"+r+"_"+t);void 0!==a&&e.set("select",1e3*a)}),e.find(".um-timepicker-filter").each(function(){var u=jQuery(this),s=u.data("min"),_=u.data("max"),e=s.split(":"),r=_.split(":"),t=u.pickatime({format:u.data("format"),interval:parseInt(u.data("intervals")),min:[e[0],e[1]],max:[r[0],r[1]],formatSubmit:"HH:i",hiddenName:!0,onOpen:function(){u.blur()},onClose:function(){u.blur()},onSet:function(e){var r=u.parents(".um-directory");if(!um_is_directory_busy(r)){um_members_show_preloader(r);var t=u.data("filter_name"),a=u.data("range"),i=um_get_data_for_directory(r,"filter_"+t+"_from"),m=um_get_data_for_directory(r,"filter_"+t+"_to");if(void 0===i&&(i=s),void 0===m&&(m=_),void 0!==e.select){var d=e.select/60;u.val();"from"===a?i=d+":00":"to"===a&&(m=d+":00")}else"from"===a?i=s:"to"===a&&(m=_);um_set_url_from_data(r,"filter_"+t+"_from",i),um_set_url_from_data(r,"filter_"+t+"_to",m),r.data("page",1),um_set_url_from_data(r,"page",""),um_ajax_get_members(r),um_change_tag(r),r.data("searched",1),r.find(".um-member-directory-sorting-options").prop("disabled",!1),r.find(".um-member-directory-view-type").removeClass("um-disabled")}}}).pickatime("picker"),a=u.data("filter_name"),i=u.data("range"),m=um_get_data_for_directory(u.parents(".um-directory"),"filter_"+a+"_"+i);if(void 0!==m){var d=m.split(":");t.set("select",60*d[0])}}),um_change_tag(e)}),window.addEventListener("popstate",function(e){jQuery(".um-directory").each(function(){var d=jQuery(this),e=um_members_get_hash(d);(um_member_directories.push(e),um_members_show_preloader(d),d.find(".um-members-grid, .um-members-list, .um-members-intro").remove(),d.find(".um-member-directory-search-line").length)&&(void 0===(m=um_get_data_for_directory(d,"search"))&&(m=""),d.data("general_search",m),d.find(".um-search-line").val(m));var r=um_get_data_for_directory(d,"page");if(void 0===r?r=1:r>d.data("total_pages")&&(r=d.data("total_pages")),d.data("page",r).attr("data-page",r),d.find(".um-member-directory-sorting").length){var t=um_get_data_for_directory(d,"sort");void 0===t&&(t=d.find('.um-new-dropdown[data-element=".um-member-directory-sorting-a"]').find('a[data-default="1"]').data("value")),d.data("sorting",t);var a=d.find('.um-new-dropdown[data-element=".um-member-directory-sorting-a"]');a.find("a").data("selected",0).prop("data-selected",0).attr("data-selected",0),a.find('a[data-value="'+t+'"]').data("selected",1).prop("data-selected",1).attr("data-selected",1),d.find(".um-member-directory-sorting-a").find("> a").html(a.find('a[data-value="'+t+'"]').html())}if(d.find(".um-member-directory-view-type").length){var i=um_get_data_for_directory(d,"view_type");void 0===i&&(i=d.find('.um-member-directory-view-type-a[data-default="1"]').data("type")),d.data("view_type",i),d.find(".um-member-directory-view-type .um-member-directory-view-type-a").hide(),d.find('.um-member-directory-view-type .um-member-directory-view-type-a[data-type="'+i+'"]').show()}if(d.find(".um-datepicker-filter").each(function(){var e=jQuery(this),r=e.pickadate("picker"),t=e.data("filter_name"),a=e.data("range"),i=um_get_data_for_directory(d,"filter_"+t+"_"+a);void 0!==i?r.set("select",1e3*i):r.clear()}),d.find(".um-slider").each(function(){var e=jQuery(this),r=e.data("field_name"),t=um_get_data_for_directory(d,"filter_"+r+"_from"),a=um_get_data_for_directory(d,"filter_"+r+"_to");void 0===t&&(t=e.data("min")),t=parseInt(t),void 0===a&&(a=e.data("max")),a=parseInt(a),e.slider("values",[t,a]),um_set_range_label(e)}),d.find(".um-timepicker-filter").each(function(){var e=jQuery(this),r=e.pickatime("picker"),t=e.data("filter_name"),a=e.data("range"),i=um_get_data_for_directory(d,"filter_"+t+"_"+a);if(void 0!==i){var m=i.split(":");r.set("select",60*m[0])}else r.clear()}),1===d.data("must-search")){var m=um_get_search(d);if(!um_get_filters_data(d).length&&!m)return d.data("searched",0),void um_members_hide_preloader(d);d.data("searched",1)}um_ajax_get_members(d),um_change_tag(d)})})});
|
assets/js/um-modal.js
CHANGED
@@ -6,7 +6,6 @@ jQuery(document).ready(function() {
|
|
6 |
});
|
7 |
|
8 |
jQuery(document).on('click', '.um-modal-overlay, a[data-action="um_remove_modal"]', function(){
|
9 |
-
|
10 |
um_remove_modal();
|
11 |
});
|
12 |
|
@@ -44,22 +43,22 @@ jQuery(document).ready(function() {
|
|
44 |
|
45 |
jQuery(document).on('click', '.um-modal .um-single-image-preview a.cancel', function(e){
|
46 |
e.preventDefault();
|
47 |
-
|
48 |
var parent = jQuery(this).parents('.um-modal-body');
|
49 |
var src = jQuery(this).parents('.um-modal-body').find('.um-single-image-preview img').attr('src');
|
50 |
-
|
51 |
jQuery('img.cropper-hidden').cropper('destroy');
|
52 |
-
|
53 |
parent.find('.um-single-image-preview img').attr('src', '');
|
54 |
-
|
55 |
parent.find('.um-single-image-preview').hide();
|
56 |
-
|
57 |
parent.find('.ajax-upload-dragdrop').show();
|
58 |
-
|
59 |
parent.find('.um-modal-btn.um-finish-upload').addClass('disabled');
|
60 |
-
|
61 |
um_modal_responsive();
|
62 |
-
|
63 |
jQuery.ajax({
|
64 |
url: wp.ajax.settings.url,
|
65 |
type: 'post',
|
@@ -120,17 +119,15 @@ jQuery(document).ready(function() {
|
|
120 |
key: key,
|
121 |
nonce: um_scripts.nonce
|
122 |
},
|
123 |
-
success: function( response ){
|
124 |
|
125 |
-
if( response.success
|
126 |
|
127 |
d = new Date();
|
128 |
|
129 |
-
if ( key
|
130 |
jQuery('.um-profile-photo-img img').attr('src', response.data.image.source_url + "?"+d.getTime());
|
131 |
-
}
|
132 |
-
|
133 |
-
if ( key == 'cover_photo') {
|
134 |
jQuery('.um-cover-e').empty().html('<img src="' + response.data.image.source_url + "?"+d.getTime() + '" alt="" />');
|
135 |
if ( jQuery('.um').hasClass('um-editing') ) {
|
136 |
jQuery('.um-cover-overlay').show();
|
@@ -138,13 +135,14 @@ jQuery(document).ready(function() {
|
|
138 |
}
|
139 |
|
140 |
jQuery('.um-single-image-preview[data-key='+key+']').fadeIn().find('img').attr('src', response.data.image.source_url + "?"+d.getTime());
|
141 |
-
|
142 |
um_remove_modal();
|
143 |
-
|
|
|
|
|
144 |
jQuery('.um-single-image-preview[data-key='+key+']').parents('.um-field').find('.um-btn-auto-width').html( elem.attr('data-change') );
|
145 |
|
146 |
jQuery('.um-single-image-preview[data-key='+key+']').parents('.um-field').find('input[type="hidden"]').val( response.data.image.filename );
|
147 |
-
|
148 |
}
|
149 |
|
150 |
}
|
6 |
});
|
7 |
|
8 |
jQuery(document).on('click', '.um-modal-overlay, a[data-action="um_remove_modal"]', function(){
|
|
|
9 |
um_remove_modal();
|
10 |
});
|
11 |
|
43 |
|
44 |
jQuery(document).on('click', '.um-modal .um-single-image-preview a.cancel', function(e){
|
45 |
e.preventDefault();
|
46 |
+
|
47 |
var parent = jQuery(this).parents('.um-modal-body');
|
48 |
var src = jQuery(this).parents('.um-modal-body').find('.um-single-image-preview img').attr('src');
|
49 |
+
|
50 |
jQuery('img.cropper-hidden').cropper('destroy');
|
51 |
+
|
52 |
parent.find('.um-single-image-preview img').attr('src', '');
|
53 |
+
|
54 |
parent.find('.um-single-image-preview').hide();
|
55 |
+
|
56 |
parent.find('.ajax-upload-dragdrop').show();
|
57 |
+
|
58 |
parent.find('.um-modal-btn.um-finish-upload').addClass('disabled');
|
59 |
+
|
60 |
um_modal_responsive();
|
61 |
+
|
62 |
jQuery.ajax({
|
63 |
url: wp.ajax.settings.url,
|
64 |
type: 'post',
|
119 |
key: key,
|
120 |
nonce: um_scripts.nonce
|
121 |
},
|
122 |
+
success: function( response ) {
|
123 |
|
124 |
+
if ( response.success ) {
|
125 |
|
126 |
d = new Date();
|
127 |
|
128 |
+
if ( key === 'profile_photo' ) {
|
129 |
jQuery('.um-profile-photo-img img').attr('src', response.data.image.source_url + "?"+d.getTime());
|
130 |
+
} else if ( key === 'cover_photo' ) {
|
|
|
|
|
131 |
jQuery('.um-cover-e').empty().html('<img src="' + response.data.image.source_url + "?"+d.getTime() + '" alt="" />');
|
132 |
if ( jQuery('.um').hasClass('um-editing') ) {
|
133 |
jQuery('.um-cover-overlay').show();
|
135 |
}
|
136 |
|
137 |
jQuery('.um-single-image-preview[data-key='+key+']').fadeIn().find('img').attr('src', response.data.image.source_url + "?"+d.getTime());
|
138 |
+
|
139 |
um_remove_modal();
|
140 |
+
|
141 |
+
jQuery('img.cropper-invisible').remove();
|
142 |
+
|
143 |
jQuery('.um-single-image-preview[data-key='+key+']').parents('.um-field').find('.um-btn-auto-width').html( elem.attr('data-change') );
|
144 |
|
145 |
jQuery('.um-single-image-preview[data-key='+key+']').parents('.um-field').find('input[type="hidden"]').val( response.data.image.filename );
|
|
|
146 |
}
|
147 |
|
148 |
}
|
assets/js/um-modal.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
jQuery(document).ready(function(){jQuery(document).on("click",".um-popup-overlay",function(){remove_Modal()}),jQuery(document).on("click",'.um-modal-overlay, a[data-action="um_remove_modal"]',function(){um_remove_modal()}),jQuery(document).on("click",'a[data-modal^="um_"], span[data-modal^="um_"], .um-modal a',function(e){return e.preventDefault(),!1}),jQuery(document).on("click",".um-modal .um-single-file-preview a.cancel",function(e){e.preventDefault();var a=jQuery(this).parents(".um-modal-body"),t=jQuery(this).parents(".um-modal-body").find(".um-single-fileinfo a").attr("href");return a.find(".um-single-file-preview").hide(),a.find(".ajax-upload-dragdrop").show(),a.find(".um-modal-btn.um-finish-upload").addClass("disabled"),um_modal_responsive(),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_remove_file",src:t,nonce:um_scripts.nonce}}),!1}),jQuery(document).on("click",".um-modal .um-single-image-preview a.cancel",function(e){e.preventDefault();var a=jQuery(this).parents(".um-modal-body"),t=jQuery(this).parents(".um-modal-body").find(".um-single-image-preview img").attr("src");return jQuery("img.cropper-hidden").cropper("destroy"),a.find(".um-single-image-preview img").attr("src",""),a.find(".um-single-image-preview").hide(),a.find(".ajax-upload-dragdrop").show(),a.find(".um-modal-btn.um-finish-upload").addClass("disabled"),um_modal_responsive(),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_remove_file",src:t,nonce:um_scripts.nonce}}),!1}),jQuery(document).on("click",".um-finish-upload.file:not(.disabled)",function(){var e=jQuery(this).attr("data-key"),a=jQuery(this).parents(".um-modal-body").find(".um-single-file-preview").html();um_remove_modal(),jQuery(".um-single-file-preview[data-key="+e+"]").fadeIn().html(a);var t=jQuery(".um-field[data-key="+e+"]").find(".um-single-fileinfo a").data("file");jQuery(".um-single-file-preview[data-key="+e+"]").parents(".um-field").find(".um-btn-auto-width").html(jQuery(this).attr("data-change")),jQuery(".um-single-file-preview[data-key="+e+"]").parents(".um-field").find('input[type="hidden"]').val(t)}),jQuery(document).on("click",".um-finish-upload.image:not(.disabled)",function(){var a=jQuery(this),t=jQuery(this).attr("data-key"),e=jQuery(this).parents(".um-modal-body").find(".um-single-image-preview"),i=e.find("img").attr("src"),r=e.attr("data-coord"),u=e.find("img").data("file"),n=0;jQuery(this).parents("#um_upload_single").data("user_id")&&(n=jQuery(this).parents("#um_upload_single").data("user_id")),r?(jQuery(this).html(jQuery(this).attr("data-processing")).addClass("disabled"),jQuery.ajax({url:wp.ajax.settings.url,type:"POST",dataType:"json",data:{action:"um_resize_image",src:i,coord:r,user_id:n,key:t,nonce:um_scripts.nonce},success:function(e){
|
1 |
+
jQuery(document).ready(function(){jQuery(document).on("click",".um-popup-overlay",function(){remove_Modal()}),jQuery(document).on("click",'.um-modal-overlay, a[data-action="um_remove_modal"]',function(){um_remove_modal()}),jQuery(document).on("click",'a[data-modal^="um_"], span[data-modal^="um_"], .um-modal a',function(e){return e.preventDefault(),!1}),jQuery(document).on("click",".um-modal .um-single-file-preview a.cancel",function(e){e.preventDefault();var a=jQuery(this).parents(".um-modal-body"),t=jQuery(this).parents(".um-modal-body").find(".um-single-fileinfo a").attr("href");return a.find(".um-single-file-preview").hide(),a.find(".ajax-upload-dragdrop").show(),a.find(".um-modal-btn.um-finish-upload").addClass("disabled"),um_modal_responsive(),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_remove_file",src:t,nonce:um_scripts.nonce}}),!1}),jQuery(document).on("click",".um-modal .um-single-image-preview a.cancel",function(e){e.preventDefault();var a=jQuery(this).parents(".um-modal-body"),t=jQuery(this).parents(".um-modal-body").find(".um-single-image-preview img").attr("src");return jQuery("img.cropper-hidden").cropper("destroy"),a.find(".um-single-image-preview img").attr("src",""),a.find(".um-single-image-preview").hide(),a.find(".ajax-upload-dragdrop").show(),a.find(".um-modal-btn.um-finish-upload").addClass("disabled"),um_modal_responsive(),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_remove_file",src:t,nonce:um_scripts.nonce}}),!1}),jQuery(document).on("click",".um-finish-upload.file:not(.disabled)",function(){var e=jQuery(this).attr("data-key"),a=jQuery(this).parents(".um-modal-body").find(".um-single-file-preview").html();um_remove_modal(),jQuery(".um-single-file-preview[data-key="+e+"]").fadeIn().html(a);var t=jQuery(".um-field[data-key="+e+"]").find(".um-single-fileinfo a").data("file");jQuery(".um-single-file-preview[data-key="+e+"]").parents(".um-field").find(".um-btn-auto-width").html(jQuery(this).attr("data-change")),jQuery(".um-single-file-preview[data-key="+e+"]").parents(".um-field").find('input[type="hidden"]').val(t)}),jQuery(document).on("click",".um-finish-upload.image:not(.disabled)",function(){var a=jQuery(this),t=jQuery(this).attr("data-key"),e=jQuery(this).parents(".um-modal-body").find(".um-single-image-preview"),i=e.find("img").attr("src"),r=e.attr("data-coord"),u=e.find("img").data("file"),n=0;jQuery(this).parents("#um_upload_single").data("user_id")&&(n=jQuery(this).parents("#um_upload_single").data("user_id")),r?(jQuery(this).html(jQuery(this).attr("data-processing")).addClass("disabled"),jQuery.ajax({url:wp.ajax.settings.url,type:"POST",dataType:"json",data:{action:"um_resize_image",src:i,coord:r,user_id:n,key:t,nonce:um_scripts.nonce},success:function(e){e.success&&(d=new Date,"profile_photo"===t?jQuery(".um-profile-photo-img img").attr("src",e.data.image.source_url+"?"+d.getTime()):"cover_photo"===t&&(jQuery(".um-cover-e").empty().html('<img src="'+e.data.image.source_url+"?"+d.getTime()+'" alt="" />'),jQuery(".um").hasClass("um-editing")&&jQuery(".um-cover-overlay").show()),jQuery(".um-single-image-preview[data-key="+t+"]").fadeIn().find("img").attr("src",e.data.image.source_url+"?"+d.getTime()),um_remove_modal(),jQuery("img.cropper-invisible").remove(),jQuery(".um-single-image-preview[data-key="+t+"]").parents(".um-field").find(".um-btn-auto-width").html(a.attr("data-change")),jQuery(".um-single-image-preview[data-key="+t+"]").parents(".um-field").find('input[type="hidden"]').val(e.data.image.filename))}})):(d=new Date,jQuery(".um-single-image-preview[data-key="+t+"]").fadeIn().find("img").attr("src",i+"?"+d.getTime()),um_remove_modal(),jQuery(".um-single-image-preview[data-key="+t+"]").parents(".um-field").find(".um-btn-auto-width").html(a.attr("data-change")),jQuery(".um-single-image-preview[data-key="+t+"]").parents(".um-field").find("input[type=hidden]").val(u))}),jQuery(document.body).on("click",'a[data-modal^="um_"], span[data-modal^="um_"]',function(e){var a=jQuery(this).attr("data-modal"),t="normal";if(jQuery(this).data("modal-size"))t=jQuery(this).data("modal-size");jQuery(this).data("modal-copy")&&(jQuery("#"+a).html(jQuery(this).parents(".um-field").find(".um-modal-hidden-content").html()),jQuery(this).parents(".um-profile-photo").attr("data-user_id")&&jQuery("#"+a).attr("data-user_id",jQuery(this).parents(".um-profile-photo").attr("data-user_id")),jQuery(this).parents(".um-cover").attr("data-ratio")&&jQuery("#"+a).attr("data-ratio",jQuery(this).parents(".um-cover").attr("data-ratio")),jQuery(this).parents(".um-cover").attr("data-user_id")&&jQuery("#"+a).attr("data-user_id",jQuery(this).parents(".um-cover").attr("data-user_id")),0<jQuery("input[type=hidden][name='user_id']").length&&jQuery("#"+a).attr("data-user_id",jQuery("input[type=hidden][name='user_id']").val())),um_new_modal(a,t)})});
|
assets/js/um-profile.js
CHANGED
@@ -124,7 +124,8 @@ jQuery(document).ready(function() {
|
|
124 |
|
125 |
jQuery( '.um-profile-edit a.um_delete-item' ).click( function(e) {
|
126 |
e.preventDefault();
|
127 |
-
|
|
|
128 |
return false;
|
129 |
}
|
130 |
});
|
124 |
|
125 |
jQuery( '.um-profile-edit a.um_delete-item' ).click( function(e) {
|
126 |
e.preventDefault();
|
127 |
+
|
128 |
+
if ( ! confirm( wp.i18n.__( 'Are you sure that you want to delete this user?', 'ultimate-member' ) ) ) {
|
129 |
return false;
|
130 |
}
|
131 |
});
|
assets/js/um-profile.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
jQuery(document).ready(function(){jQuery(".um-profile.um-viewing .um-profile-body .um-row").each(function(){var e=jQuery(this);0==e.find(".um-field").length&&(e.prev(".um-row-heading").remove(),e.remove())}),jQuery(".um-profile.um-viewing .um-profile-body").length&&0==jQuery(".um-profile.um-viewing .um-profile-body").find(".um-field").length&&(jQuery(".um-row-heading,.um-row").remove(),jQuery(".um-profile-note").show()),jQuery(document.body).on("click",".um-profile-save",function(e){return e.preventDefault(),jQuery(this).parents(".um").find("form").submit(),!1}),jQuery(document.body).on("click",".um-profile-edit-a",function(e){jQuery(this).addClass("active")}),jQuery(document.body).on("click",".um-cover a.um-cover-add, .um-photo a",function(e){e.preventDefault()}),jQuery(document.body).on("click",".um-photo-modal",function(e){e.preventDefault();var t=jQuery(this).attr("data-src");return um_new_modal("um_view_photo","fit",!0,t),!1}),jQuery(document.body).on("click",".um-reset-profile-photo",function(e){return jQuery(".um-profile-photo-img img").attr("src",jQuery(this).attr("data-default_src")),user_id=jQuery(this).attr("data-user_id"),metakey="profile_photo",UM_hide_menus(),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_delete_profile_photo",metakey:metakey,user_id:user_id,nonce:um_scripts.nonce}}),jQuery(this).parents("li").hide(),!1}),jQuery(document.body).on("click",".um-reset-cover-photo",function(e){var t=jQuery(this);return jQuery(".um-cover-overlay").hide(),jQuery(".um-cover-e").html('<a href="javascript:void(0);" class="um-cover-add" style="height: 370px;"><span class="um-cover-add-i"><i class="um-icon-plus um-tip-n" original-title="Upload a cover photo"></i></span></a>'),um_responsive(),user_id=jQuery(this).attr("data-user_id"),metakey="cover_photo",jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_delete_cover_photo",metakey:metakey,user_id:user_id,nonce:um_scripts.nonce},success:function(e){t.hide()}}),UM_hide_menus(),!1}),jQuery(document.body).on("change, keyup",'textarea[id="um-meta-bio"]',function(){if(void 0!==jQuery(this).val()){var e=jQuery(this).attr("data-character-limit")-jQuery(this).val().length;jQuery("span.um-meta-bio-character span.um-bio-limit").text(e),e<5?jQuery("span.um-meta-bio-character").css("color","red"):jQuery("span.um-meta-bio-character").css("color","")}}),jQuery('textarea[id="um-meta-bio"]').trigger("change"),jQuery(".um-profile-edit a.um_delete-item").click(function(e){if(e.preventDefault(),!confirm("Are you sure that you want to delete this user?"))return!1}),jQuery(".um-profile-nav a").on("touchend",function(e){e.currentTarget.click()})});
|
1 |
+
jQuery(document).ready(function(){jQuery(".um-profile.um-viewing .um-profile-body .um-row").each(function(){var e=jQuery(this);0==e.find(".um-field").length&&(e.prev(".um-row-heading").remove(),e.remove())}),jQuery(".um-profile.um-viewing .um-profile-body").length&&0==jQuery(".um-profile.um-viewing .um-profile-body").find(".um-field").length&&(jQuery(".um-row-heading,.um-row").remove(),jQuery(".um-profile-note").show()),jQuery(document.body).on("click",".um-profile-save",function(e){return e.preventDefault(),jQuery(this).parents(".um").find("form").submit(),!1}),jQuery(document.body).on("click",".um-profile-edit-a",function(e){jQuery(this).addClass("active")}),jQuery(document.body).on("click",".um-cover a.um-cover-add, .um-photo a",function(e){e.preventDefault()}),jQuery(document.body).on("click",".um-photo-modal",function(e){e.preventDefault();var t=jQuery(this).attr("data-src");return um_new_modal("um_view_photo","fit",!0,t),!1}),jQuery(document.body).on("click",".um-reset-profile-photo",function(e){return jQuery(".um-profile-photo-img img").attr("src",jQuery(this).attr("data-default_src")),user_id=jQuery(this).attr("data-user_id"),metakey="profile_photo",UM_hide_menus(),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_delete_profile_photo",metakey:metakey,user_id:user_id,nonce:um_scripts.nonce}}),jQuery(this).parents("li").hide(),!1}),jQuery(document.body).on("click",".um-reset-cover-photo",function(e){var t=jQuery(this);return jQuery(".um-cover-overlay").hide(),jQuery(".um-cover-e").html('<a href="javascript:void(0);" class="um-cover-add" style="height: 370px;"><span class="um-cover-add-i"><i class="um-icon-plus um-tip-n" original-title="Upload a cover photo"></i></span></a>'),um_responsive(),user_id=jQuery(this).attr("data-user_id"),metakey="cover_photo",jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_delete_cover_photo",metakey:metakey,user_id:user_id,nonce:um_scripts.nonce},success:function(e){t.hide()}}),UM_hide_menus(),!1}),jQuery(document.body).on("change, keyup",'textarea[id="um-meta-bio"]',function(){if(void 0!==jQuery(this).val()){var e=jQuery(this).attr("data-character-limit")-jQuery(this).val().length;jQuery("span.um-meta-bio-character span.um-bio-limit").text(e),e<5?jQuery("span.um-meta-bio-character").css("color","red"):jQuery("span.um-meta-bio-character").css("color","")}}),jQuery('textarea[id="um-meta-bio"]').trigger("change"),jQuery(".um-profile-edit a.um_delete-item").click(function(e){if(e.preventDefault(),!confirm(wp.i18n.__("Are you sure that you want to delete this user?","ultimate-member")))return!1}),jQuery(".um-profile-nav a").on("touchend",function(e){e.currentTarget.click()})});
|
assets/js/um-raty.js
CHANGED
@@ -609,7 +609,7 @@
|
|
609 |
$.fn.um_raty.defaults = {
|
610 |
cancel : false,
|
611 |
cancelClass : 'raty-cancel',
|
612 |
-
cancelHint : 'Cancel this rating!',
|
613 |
cancelOff : 'cancel-off.png',
|
614 |
cancelOn : 'cancel-on.png',
|
615 |
cancelPlace : 'left',
|
@@ -620,7 +620,7 @@
|
|
620 |
iconRange : undefined,
|
621 |
mouseout : undefined,
|
622 |
mouseover : undefined,
|
623 |
-
noRatedMsg : 'Not rated yet!',
|
624 |
number : 5,
|
625 |
numberMax : 20,
|
626 |
path : undefined,
|
609 |
$.fn.um_raty.defaults = {
|
610 |
cancel : false,
|
611 |
cancelClass : 'raty-cancel',
|
612 |
+
cancelHint : wp.i18n.__( 'Cancel this rating!', 'ultimate-member' ),
|
613 |
cancelOff : 'cancel-off.png',
|
614 |
cancelOn : 'cancel-on.png',
|
615 |
cancelPlace : 'left',
|
620 |
iconRange : undefined,
|
621 |
mouseout : undefined,
|
622 |
mouseover : undefined,
|
623 |
+
noRatedMsg : wp.i18n.__( 'Not rated yet!', 'ultimate-member' ),
|
624 |
number : 5,
|
625 |
numberMax : 20,
|
626 |
path : undefined,
|
assets/js/um-raty.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function(l){"use strict";var c={init:function(t){return this.each(function(){this.self=l(this),c.destroy.call(this.self),this.opt=l.extend(!0,{},l.fn.um_raty.defaults,t),c._adjustCallback.call(this),c._adjustNumber.call(this),"img"!==this.opt.starType&&c._adjustStarType.call(this),c._adjustPath.call(this),c._createStars.call(this),this.opt.cancel&&c._createCancel.call(this),this.opt.precision&&c._adjustPrecision.call(this),c._createScore.call(this),c._apply.call(this,this.opt.score),c._target.call(this,this.opt.score),this.opt.readOnly?c._lock.call(this):(this.style.cursor="pointer",c._binds.call(this)),this.self.data("options",this.opt)})},_adjustCallback:function(){for(var t=["number","readOnly","score","scoreName","target"],
|
1 |
+
!function(l){"use strict";var c={init:function(t){return this.each(function(){this.self=l(this),c.destroy.call(this.self),this.opt=l.extend(!0,{},l.fn.um_raty.defaults,t),c._adjustCallback.call(this),c._adjustNumber.call(this),"img"!==this.opt.starType&&c._adjustStarType.call(this),c._adjustPath.call(this),c._createStars.call(this),this.opt.cancel&&c._createCancel.call(this),this.opt.precision&&c._adjustPrecision.call(this),c._createScore.call(this),c._apply.call(this,this.opt.score),c._target.call(this,this.opt.score),this.opt.readOnly?c._lock.call(this):(this.style.cursor="pointer",c._binds.call(this)),this.self.data("options",this.opt)})},_adjustCallback:function(){for(var t=["number","readOnly","score","scoreName","target"],e=0;e<t.length;e++)"function"==typeof this.opt[t[e]]&&(this.opt[t[e]]=this.opt[t[e]].call(this))},_adjustNumber:function(){this.opt.number=c._between(this.opt.number,1,this.opt.numberMax)},_adjustPath:function(){this.opt.path=this.opt.path||"",this.opt.path&&"/"!==this.opt.path.charAt(this.opt.path.length-1)&&(this.opt.path+="/")},_adjustPrecision:function(){this.opt.half=!0,this.opt.targetType="score"},_adjustStarType:function(){this.opt.path="";for(var t=["cancelOff","cancelOn","starHalf","starOff","starOn"],e=0;e<t.length;e++)this.opt[t[e]]=this.opt[t[e]].replace(".","-")},_apply:function(t){c._fill.call(this,t),t&&(0<t&&this.score.val(c._between(t,0,this.opt.number)),c._roundStars.call(this,t))},_between:function(t,e,a){return Math.min(Math.max(parseFloat(t),e),a)},_binds:function(){this.cancel&&(c._bindOverCancel.call(this),c._bindClickCancel.call(this),c._bindOutCancel.call(this)),c._bindOver.call(this),c._bindClick.call(this),c._bindOut.call(this)},_bindClick:function(){var a=this;a.stars.on("click.um_raty",function(t){var e=l(this);a.score.val(a.opt.half||a.opt.precision?a.self.data("score"):this.alt||e.data("alt")),a.opt.click&&a.opt.click.call(a,+a.score.val(),t)})},_bindClickCancel:function(){var e=this;e.cancel.on("click.um_raty",function(t){e.score.removeAttr("value"),e.opt.click&&e.opt.click.call(e,null,t)})},_bindOut:function(){var a=this;a.self.on("mouseleave.um_raty",function(t){var e=+a.score.val()||void 0;c._apply.call(a,e),c._target.call(a,e,t),a.opt.mouseout&&a.opt.mouseout.call(a,e,t)})},_bindOutCancel:function(){var s=this;s.cancel.on("mouseleave.um_raty",function(t){var e=s.opt.cancelOff;if("img"!==s.opt.starType&&(e=s.opt.cancelClass+" "+e),c._setIcon.call(s,this,e),s.opt.mouseout){var a=+s.score.val()||void 0;s.opt.mouseout.call(s,a,t)}})},_bindOver:function(){var a=this,t=a.opt.half?"mousemove.um_raty":"mouseover.um_raty";a.stars.on(t,function(t){var e=c._getScoreByPosition.call(a,t,this);c._fill.call(a,e),a.opt.half&&(c._roundStars.call(a,e),a.self.data("score",e)),c._target.call(a,e,t),a.opt.mouseover&&a.opt.mouseover.call(a,e,t)})},_bindOverCancel:function(){var s=this;s.cancel.on("mouseover.um_raty",function(t){var e=s.opt.path+s.opt.starOff,a=s.opt.cancelOn;"img"===s.opt.starType?s.stars.attr("src",e):(a=s.opt.cancelClass+" "+a,s.stars.attr("class",e)),c._setIcon.call(s,this,a),c._target.call(s,null,t),s.opt.mouseover&&s.opt.mouseover.call(s,null)})},_buildScoreField:function(){return l("<input />",{name:this.opt.scoreName,type:"hidden"}).appendTo(this)},_createCancel:function(){var t=this.opt.path+this.opt.cancelOff,e=l("<"+this.opt.starType+" />",{title:this.opt.cancelHint,class:this.opt.cancelClass});"img"===this.opt.starType?e.attr({src:t,alt:"x"}):e.attr("data-alt","x").addClass(t),"left"===this.opt.cancelPlace?this.self.prepend(" ").prepend(e):this.self.append(" ").append(e),this.cancel=e},_createScore:function(){var t=l(this.opt.targetScore);this.score=t.length?t:c._buildScoreField.call(this)},_createStars:function(){for(var t=1;t<=this.opt.number;t++){var e=c._nameForIndex.call(this,t),a={alt:t,src:this.opt.path+this.opt[e]};"img"!==this.opt.starType&&(a={"data-alt":t,class:a.src}),a.title=c._getHint.call(this,t),l("<"+this.opt.starType+" />",a).appendTo(this),this.opt.space&&this.self.append(t<this.opt.number?" ":"")}this.stars=this.self.children(this.opt.starType)},_error:function(t){l(this).text(t),l.error(t)},_fill:function(t){for(var e=0,a=1;a<=this.stars.length;a++){var s,i=this.stars[a-1],o=c._turnOn.call(this,a,t);if(this.opt.iconRange&&this.opt.iconRange.length>e){var r=this.opt.iconRange[e];s=c._getRangeIcon.call(this,r,o),a<=r.range&&c._setIcon.call(this,i,s),a===r.range&&e++}else s=this.opt[o?"starOn":"starOff"],c._setIcon.call(this,i,s)}},_getRangeIcon:function(t,e){return e?t.on||this.opt.starOn:t.off||this.opt.starOff},_getScoreByPosition:function(t,e){var a=parseInt(e.alt||e.getAttribute("data-alt"),10);if(this.opt.half){var s=c._getSize.call(this),i=parseFloat((t.pageX-l(e).offset().left)/s);a=this.opt.precision?a-1+i:a-1+(.5<i?1:.5)}return a},_getSize:function(){var t;return(t="img"===this.opt.starType?this.stars[0].width:parseFloat(this.stars.eq(0).css("font-size")))||c._error.call(this,"Could not be possible get the icon size!"),t},_turnOn:function(t,e){return this.opt.single?t===e:t<=e},_getHint:function(t){var e=this.opt.hints[t-1];return""===e?"":e||t},_lock:function(){var t=parseInt(this.score.val(),10),e=t?c._getHint.call(this,t):this.opt.noRatedMsg;this.style.cursor="",this.title=e,this.score.prop("readonly",!0),this.stars.prop("title",e),this.cancel&&this.cancel.hide(),this.self.data("readonly",!0)},_nameForIndex:function(t){return this.opt.score&&this.opt.score>=t?"starOn":"starOff"},_roundStars:function(t){var e=(t%1).toFixed(2);if(e>this.opt.round.down){var a="starOn";this.opt.halfShow&&e<this.opt.round.up?a="starHalf":e<this.opt.round.full&&(a="starOff");var s=this.opt[a],i=this.stars[Math.ceil(t)-1];c._setIcon.call(this,i,s)}},_setIcon:function(t,e){t["img"===this.opt.starType?"src":"className"]=this.opt.path+e},_setTarget:function(t,e){e&&(e=this.opt.targetFormat.toString().replace("{score}",e)),t.is(":input")?t.val(e):t.html(e)},_target:function(t,e){if(this.opt.target){var a=l(this.opt.target);a.length||c._error.call(this,"Target selector invalid or missing!");var s=e&&"mouseover"===e.type;if(void 0===t)t=this.opt.targetText;else if(null===t)t=s?this.opt.cancelHint:this.opt.targetText;else{"hint"===this.opt.targetType?t=c._getHint.call(this,Math.ceil(t)):this.opt.precision&&(t=parseFloat(t).toFixed(1));var i=e&&"mousemove"===e.type;s||i||this.opt.targetKeep||(t=this.opt.targetText)}c._setTarget.call(this,a,t)}},_unlock:function(){this.style.cursor="pointer",this.removeAttribute("title"),this.score.removeAttr("readonly"),this.self.data("readonly",!1);for(var t=0;t<this.opt.number;t++)this.stars[t].title=c._getHint.call(this,t+1);this.cancel&&this.cancel.css("display","")},cancel:function(e){return this.each(function(){var t=l(this);!0!==t.data("readonly")&&(c[e?"click":"score"].call(t,null),this.score.removeAttr("value"))})},click:function(t){return this.each(function(){!0!==l(this).data("readonly")&&(c._apply.call(this,t),this.opt.click&&this.opt.click.call(this,t,l.Event("click")),c._target.call(this,t))})},destroy:function(){return this.each(function(){var t=l(this),e=t.data("raw");e?t.off(".um_raty").empty().css({cursor:e.style.cursor}).removeData("readonly"):t.data("raw",t.clone()[0])})},getScore:function(){var t,e=[];return this.each(function(){t=this.score.val(),e.push(t?+t:void 0)}),1<e.length?e:e[0]},move:function(n){return this.each(function(){var t=parseInt(n,10),e=l(this).data("options"),a=(+n).toFixed(1).split(".")[1];t>=e.number&&(t=e.number-1,a=10);var s=c._getSize.call(this)/10,i=l(this.stars[t]),o=i.offset().left+s*parseInt(a,10),r=l.Event("mousemove",{pageX:o});i.trigger(r)})},readOnly:function(e){return this.each(function(){var t=l(this);t.data("readonly")!==e&&(e?(t.off(".um_raty").children("img").off(".um_raty"),c._lock.call(this)):(c._binds.call(this),c._unlock.call(this)),t.data("readonly",e))})},reload:function(){return c.set.call(this,{})},score:function(){var t=l(this);return arguments.length?c.setScore.apply(t,arguments):c.getScore.call(t)},set:function(s){return this.each(function(){var t=l(this),e=t.data("options"),a=l.extend({},e,s);t.um_raty(a)})},setScore:function(t){return this.each(function(){!0!==l(this).data("readonly")&&(c._apply.call(this,t),c._target.call(this,t))})}};l.fn.um_raty=function(t){return c[t]?c[t].apply(this,Array.prototype.slice.call(arguments,1)):"object"!=typeof t&&t?void l.error("Method "+t+" does not exist!"):c.init.apply(this,arguments)},l.fn.um_raty.defaults={cancel:!1,cancelClass:"raty-cancel",cancelHint:wp.i18n.__("Cancel this rating!","ultimate-member"),cancelOff:"cancel-off.png",cancelOn:"cancel-on.png",cancelPlace:"left",click:void 0,half:!1,halfShow:!0,hints:["bad","poor","regular","good","gorgeous"],iconRange:void 0,mouseout:void 0,mouseover:void 0,noRatedMsg:wp.i18n.__("Not rated yet!","ultimate-member"),number:5,numberMax:20,path:void 0,precision:!1,readOnly:!1,round:{down:.25,full:.6,up:.76},score:void 0,scoreName:"score",single:!1,space:!0,starHalf:"star-half.png",starOff:"star-off.png",starOn:"star-on.png",starType:"img",target:void 0,targetFormat:"{score}",targetKeep:!1,targetScore:void 0,targetText:"",targetType:"hint"}}(jQuery);
|
assets/js/um-scripts.js
CHANGED
@@ -77,6 +77,17 @@ function um_init_datetimepicker() {
|
|
77 |
});
|
78 |
}
|
79 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
80 |
jQuery(document).ready(function() {
|
81 |
|
82 |
jQuery( document.body ).on('click', '.um-dropdown a.real_url', function(e){
|
@@ -105,14 +116,14 @@ jQuery(document).ready(function() {
|
|
105 |
|
106 |
jQuery('.um-s1,.um-s2').css({'display':'block'});
|
107 |
|
108 |
-
if( jQuery(".um-s1").length > 0 ){
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
}
|
116 |
|
117 |
if( typeof(jQuery.fn.select2) === "function" ){
|
118 |
jQuery(".um-s1").select2({
|
@@ -123,15 +134,15 @@ jQuery(document).ready(function() {
|
|
123 |
allowClear: false,
|
124 |
minimumResultsForSearch: 10
|
125 |
});
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
jQuery('.um-tip-e').tipsy({gravity: 'e', opacity: 1, live: 'a.live', offset: 3 });
|
132 |
-
jQuery('.um-tip-s').tipsy({gravity: 's', opacity: 1, live: 'a.live', offset: 3 });
|
133 |
}
|
134 |
|
|
|
|
|
135 |
if( typeof(jQuery.fn.um_raty) === "function" ){
|
136 |
jQuery('.um-rating').um_raty({
|
137 |
half: false,
|
@@ -307,6 +318,31 @@ jQuery(document).ready(function() {
|
|
307 |
}
|
308 |
}
|
309 |
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
310 |
} else {
|
311 |
var args = jQuery(this).data('args');
|
312 |
var container = jQuery(this).parents('.um').find('.um-ajax-items');
|
@@ -359,8 +395,61 @@ jQuery(document).ready(function() {
|
|
359 |
return false;
|
360 |
});
|
361 |
|
362 |
-
jQuery(document).on('click', '#um-search-button', function() {
|
363 |
-
jQuery(this).parents('form').
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
364 |
});
|
365 |
|
366 |
jQuery('.um-form input[class="um-button"][type="submit"]').removeAttr('disabled');
|
77 |
});
|
78 |
}
|
79 |
|
80 |
+
|
81 |
+
|
82 |
+
function init_tipsy() {
|
83 |
+
if( typeof(jQuery.fn.tipsy) === "function" ){
|
84 |
+
jQuery('.um-tip-n').tipsy({gravity: 'n', opacity: 1, live: 'a.live', offset: 3 });
|
85 |
+
jQuery('.um-tip-w').tipsy({gravity: 'w', opacity: 1, live: 'a.live', offset: 3 });
|
86 |
+
jQuery('.um-tip-e').tipsy({gravity: 'e', opacity: 1, live: 'a.live', offset: 3 });
|
87 |
+
jQuery('.um-tip-s').tipsy({gravity: 's', opacity: 1, live: 'a.live', offset: 3 });
|
88 |
+
}
|
89 |
+
}
|
90 |
+
|
91 |
jQuery(document).ready(function() {
|
92 |
|
93 |
jQuery( document.body ).on('click', '.um-dropdown a.real_url', function(e){
|
116 |
|
117 |
jQuery('.um-s1,.um-s2').css({'display':'block'});
|
118 |
|
119 |
+
// if( jQuery(".um-s1").length > 0 ){
|
120 |
+
// jQuery(".um-s1").each(function () {
|
121 |
+
// var select = jQuery(this);
|
122 |
+
// if( select.val() === '' && select.attr('data-default') ) {
|
123 |
+
// select.val(select.attr('data-default'));
|
124 |
+
// }
|
125 |
+
// });
|
126 |
+
// }
|
127 |
|
128 |
if( typeof(jQuery.fn.select2) === "function" ){
|
129 |
jQuery(".um-s1").select2({
|
134 |
allowClear: false,
|
135 |
minimumResultsForSearch: 10
|
136 |
});
|
137 |
+
|
138 |
+
jQuery(".um-s3").select2({
|
139 |
+
allowClear: false,
|
140 |
+
minimumResultsForSearch: -1
|
141 |
+
});
|
|
|
|
|
142 |
}
|
143 |
|
144 |
+
init_tipsy();
|
145 |
+
|
146 |
if( typeof(jQuery.fn.um_raty) === "function" ){
|
147 |
jQuery('.um-rating').um_raty({
|
148 |
half: false,
|
318 |
}
|
319 |
}
|
320 |
});
|
321 |
+
} else if ( 'um_load_comments' === hook ) {
|
322 |
+
var pages = jQuery(this).data('pages')*1;
|
323 |
+
var next_page = jQuery(this).data('page')*1 + 1;
|
324 |
+
|
325 |
+
jQuery.ajax({
|
326 |
+
url: wp.ajax.settings.url,
|
327 |
+
type: 'post',
|
328 |
+
data: {
|
329 |
+
action: 'um_ajax_paginate_comments',
|
330 |
+
user_id: jQuery(this).data('user_id'),
|
331 |
+
page: next_page,
|
332 |
+
nonce: um_scripts.nonce
|
333 |
+
},
|
334 |
+
complete: function() {
|
335 |
+
parent.removeClass( 'loading' );
|
336 |
+
},
|
337 |
+
success: function( data ) {
|
338 |
+
parent.before( data );
|
339 |
+
if ( next_page === pages ) {
|
340 |
+
parent.remove();
|
341 |
+
} else {
|
342 |
+
obj.data( 'page', next_page );
|
343 |
+
}
|
344 |
+
}
|
345 |
+
});
|
346 |
} else {
|
347 |
var args = jQuery(this).data('args');
|
348 |
var container = jQuery(this).parents('.um').find('.um-ajax-items');
|
395 |
return false;
|
396 |
});
|
397 |
|
398 |
+
jQuery( document.body ).on('click', '#um-search-button', function() {
|
399 |
+
var action = jQuery(this).parents('.um-search-form').data('members_page');
|
400 |
+
|
401 |
+
var search_keys = [];
|
402 |
+
jQuery(this).parents('.um-search-form').find('input[name="um-search-keys[]"]').each( function() {
|
403 |
+
search_keys.push( jQuery(this).val() );
|
404 |
+
});
|
405 |
+
|
406 |
+
var search = jQuery(this).parents('.um-search-form').find('.um-search-field').val();
|
407 |
+
|
408 |
+
var url;
|
409 |
+
if ( search === '' ) {
|
410 |
+
url = action;
|
411 |
+
} else {
|
412 |
+
var query = '?';
|
413 |
+
for ( var i = 0; i < search_keys.length; i++ ) {
|
414 |
+
query += search_keys[i] + '=' + search;
|
415 |
+
if ( i !== search_keys.length - 1 ) {
|
416 |
+
query += '&';
|
417 |
+
}
|
418 |
+
}
|
419 |
+
|
420 |
+
url = action + query;
|
421 |
+
}
|
422 |
+
window.location = url;
|
423 |
+
});
|
424 |
+
|
425 |
+
//make search on Enter click
|
426 |
+
jQuery( document.body ).on( 'keypress', '.um-search-field', function(e) {
|
427 |
+
if ( e.which === 13 ) {
|
428 |
+
var action = jQuery(this).parents('.um-search-form').data('members_page');
|
429 |
+
|
430 |
+
var search_keys = [];
|
431 |
+
jQuery(this).parents('.um-search-form').find('input[name="um-search-keys[]"]').each( function() {
|
432 |
+
search_keys.push( jQuery(this).val() );
|
433 |
+
});
|
434 |
+
|
435 |
+
var search = jQuery(this).val();
|
436 |
+
|
437 |
+
var url;
|
438 |
+
if ( search === '' ) {
|
439 |
+
url = action;
|
440 |
+
} else {
|
441 |
+
var query = '?';
|
442 |
+
for ( var i = 0; i < search_keys.length; i++ ) {
|
443 |
+
query += search_keys[i] + '=' + search;
|
444 |
+
if ( i !== search_keys.length - 1 ) {
|
445 |
+
query += '&';
|
446 |
+
}
|
447 |
+
}
|
448 |
+
|
449 |
+
url = action + query;
|
450 |
+
}
|
451 |
+
window.location = url;
|
452 |
+
}
|
453 |
});
|
454 |
|
455 |
jQuery('.um-form input[class="um-button"][type="submit"]').removeAttr('disabled');
|
assets/js/um-scripts.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
function um_init_datetimepicker(){jQuery(".um-datepicker:not(.picker__input)").each(function(){if(elem=jQuery(this),void 0!==elem.attr("data-disabled_weekdays")&&""!=elem.attr("data-disabled_weekdays"))var e=JSON.parse(elem.attr("data-disabled_weekdays"));else e=!1;var t=null;void 0!==elem.attr("data-years")&&(t=elem.attr("data-years"));var a=elem.attr("data-date_min"),i=elem.attr("data-date_max"),r=[],n=[];void 0!==a&&(r=a.split(",")),void 0!==i&&(n=i.split(","));var u=r.length?new Date(r):null,o=r.length?new Date(n):null;if(u&&"Invalid Date"==u.toString()&&3==r.length){var s=r[1]+"/"+r[2]+"/"+r[0];u=new Date(Date.parse(s))}if(o&&"Invalid Date"==o.toString()&&3==n.length){var d=n[1]+"/"+n[2]+"/"+n[0];o=new Date(Date.parse(d))}var l={disable:e,format:elem.attr("data-format"),formatSubmit:"yyyy/mm/dd",hiddenName:!0,onOpen:function(){elem.blur()},onClose:function(){elem.blur()}};null!==t&&(l.selectYears=t),null!==u&&(l.min=u),null!==o&&(l.max=o),elem.pickadate(l)}),jQuery(".um-timepicker:not(.picker__input)").each(function(){elem=jQuery(this),elem.pickatime({format:elem.attr("data-format"),interval:parseInt(elem.attr("data-intervals")),formatSubmit:"HH:i",hiddenName:!0,onOpen:function(){elem.blur()},onClose:function(){elem.blur()}})})}jQuery(document).ready(function(){jQuery(document.body).on("click",".um-dropdown a.real_url",function(e){window.location=jQuery(this).attr("href")}),jQuery(document.body).on("click",".um-trigger-menu-on-click",function(e){return jQuery(".um-dropdown").hide(),jQuery(this).find(".um-dropdown").show(),!1}),jQuery(document.body).on("click",".um-dropdown-hide",function(e){return UM_hide_menus(),!1}),jQuery(document.body).on("click","a.um-manual-trigger",function(){var e=jQuery(this).attr("data-child"),t=jQuery(this).attr("data-parent");return jQuery(this).parents(t).find(e).trigger("click"),UM_hide_menus(),!1}),jQuery(".um-s1,.um-s2").css({display:"block"}),0<jQuery(".um-s1").length&&jQuery(".um-s1").each(function(){var e=jQuery(this);""===e.val()&&e.attr("data-default")&&e.val(e.attr("data-default"))}),"function"==typeof jQuery.fn.select2&&(jQuery(".um-s1").select2({allowClear:!0}),jQuery(".um-s2").select2({allowClear:!1,minimumResultsForSearch:10})),"function"==typeof jQuery.fn.tipsy&&(jQuery(".um-tip-n").tipsy({gravity:"n",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-w").tipsy({gravity:"w",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-e").tipsy({gravity:"e",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-s").tipsy({gravity:"s",opacity:1,live:"a.live",offset:3})),"function"==typeof jQuery.fn.um_raty&&(jQuery(".um-rating").um_raty({half:!1,starType:"i",number:function(){return jQuery(this).attr("data-number")},score:function(){return jQuery(this).attr("data-score")},scoreName:function(){return jQuery(this).attr("data-key")},hints:!1,click:function(e,t){live_field=this.id,live_value=e,um_apply_conditions(jQuery(this),!1)}}),jQuery(".um-rating-readonly").um_raty({half:!1,starType:"i",number:function(){return jQuery(this).attr("data-number")},score:function(){return jQuery(this).attr("data-score")},scoreName:function(){return jQuery(this).attr("data-key")},hints:!1,readOnly:!0})),jQuery(document).on("change",'.um-field-area input[type="radio"]',function(){var e=jQuery(this).parents(".um-field-area"),t=jQuery(this).parents("label");e.find(".um-field-radio").removeClass("active"),e.find(".um-field-radio").find("i").removeAttr("class").addClass("um-icon-android-radio-button-off"),t.addClass("active"),t.find("i").removeAttr("class").addClass("um-icon-android-radio-button-on")}),jQuery(document).on("change",'.um-field-area input[type="checkbox"]',function(){jQuery(this).parents(".um-field-area");var e=jQuery(this).parents("label");e.hasClass("active")?(e.removeClass("active"),e.find("i").removeAttr("class").addClass("um-icon-android-checkbox-outline-blank")):(e.addClass("active"),e.find("i").removeAttr("class").addClass("um-icon-android-checkbox-outline"))}),um_init_datetimepicker(),jQuery(document).on("click",".um .um-single-image-preview a.cancel",function(e){e.preventDefault();var t=jQuery(this).parents(".um-field"),a=jQuery(this).parents(".um-field").find(".um-single-image-preview img").attr("src");return t.find(".um-single-image-preview img").attr("src",""),t.find(".um-single-image-preview").hide(),t.find(".um-btn-auto-width").html("Upload"),t.find("input[type=hidden]").val("empty_file"),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_remove_file",src:a,nonce:um_scripts.nonce}}),!1}),jQuery(document).on("click",".um .um-single-file-preview a.cancel",function(e){e.preventDefault();var t=jQuery(this).parents(".um-field"),a=jQuery(this).parents(".um-field").find(".um-single-fileinfo a").attr("href");return t.find(".um-single-file-preview").hide(),t.find(".um-btn-auto-width").html("Upload"),t.find("input[type=hidden]").val("empty_file"),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_remove_file",src:a,nonce:um_scripts.nonce}}),!1}),jQuery(document).on("click",".um-field-group-head:not(.disabled)",function(){var e=jQuery(this).parents(".um-field-group"),t=e.data("max_entries");e.find(".um-field-group-body").is(":hidden")?e.find(".um-field-group-body").show():e.find(".um-field-group-body:first").clone().appendTo(e),increase_id=0,e.find(".um-field-group-body").each(function(){increase_id++,jQuery(this).find("input").each(function(){var e=jQuery(this);e.attr("id",e.data("key")+"-"+increase_id),e.attr("name",e.data("key")+"-"+increase_id),e.parent().parent().find("label").attr("for",e.data("key")+"-"+increase_id)})}),0<t&&e.find(".um-field-group-body").length==t&&jQuery(this).addClass("disabled")}),jQuery(document).on("click",".um-field-group-cancel",function(e){e.preventDefault();var t=jQuery(this).parents(".um-field-group"),a=t.data("max_entries");return 1<t.find(".um-field-group-body").length?jQuery(this).parents(".um-field-group-body").remove():jQuery(this).parents(".um-field-group-body").hide(),0<a&&t.find(".um-field-group-body").length<a&&t.find(".um-field-group-head").removeClass("disabled"),!1}),jQuery(document.body).on("click",".um-ajax-paginate",function(e){e.preventDefault();var t=jQuery(this),a=jQuery(this).parent();a.addClass("loading");var i=jQuery(this).data("hook");if("um_load_posts"===i){var r=1*jQuery(this).data("pages"),n=1*jQuery(this).data("page")+1;jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_ajax_paginate_posts",author:jQuery(this).data("author"),page:n,nonce:um_scripts.nonce},complete:function(){a.removeClass("loading")},success:function(e){a.before(e),n===r?a.remove():t.data("page",n)}})}else{var u=jQuery(this).data("args"),o=jQuery(this).parents(".um").find(".um-ajax-items");jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_ajax_paginate",hook:i,args:u,nonce:um_scripts.nonce},complete:function(){a.removeClass("loading")},success:function(e){a.remove(),o.append(e)}})}}),jQuery(document).on("click",".um-ajax-action",function(e){e.preventDefault();var t=jQuery(this).data("hook"),a=jQuery(this).data("user_id"),arguments=jQuery(this).data("arguments");return jQuery(this).data("js-remove")&&jQuery(this).parents("."+jQuery(this).data("js-remove")).fadeOut("fast"),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_muted_action",hook:t,user_id:a,arguments:arguments,nonce:um_scripts.nonce},success:function(e){}}),!1}),jQuery(document).on("click","#um-search-button",function(){jQuery(this).parents("form").submit()}),jQuery('.um-form input[class="um-button"][type="submit"]').removeAttr("disabled"),jQuery(document).one("click",'.um:not(.um-account) .um-form input[class="um-button"][type="submit"]:not(.um-has-recaptcha)',function(){jQuery(this).attr("disabled","disabled"),jQuery(this).parents("form").submit()});var o={};function s(e,t,a,i){var r=e.data("um-parent");e.attr("name"),jQuery('select[name="'+r+'"]');e.find('option[value!=""]').remove(),e.hasClass("um-child-option-disabled")||e.removeAttr("disabled");i=[];var n="";if("yes"===t.post.members_directory){var u=new URLSearchParams(window.location.search);n=u.get(t.post.child_name)}jQuery.each(t.items,function(e,t){i.push({id:e,text:t,selected:t===n})}),e.select2("destroy"),e.select2({data:i,allowClear:!0,minimumResultsForSearch:10}),"yes"!==t.post.members_directory&&(void 0===t.field.default||e.data("um-original-value")?""!=e.data("um-original-value")&&e.val(e.data("um-original-value")).trigger("change"):e.val(t.field.default).trigger("change"),0==t.field.editable&&(e.addClass("um-child-option-disabled"),e.attr("disabled","disabled"))),o[a]=t}jQuery("select[data-um-parent]").each(function(){var r=jQuery(this),n=r.data("um-parent"),u=(r.data("um-ajax-url"),r.data("um-ajax-source"));r.val();r.attr("data-um-init-field",!0),jQuery(document).on("change",'select[name="'+n+'"]',function(){var t=jQuery(this),e=t.closest("form").find('input[type="hidden"][name="form_id"]').val(),a=t.val();if(""!=t.val()&&"object"!=typeof o[a]&&jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_select_options",parent_option_name:n,parent_option:t.val(),child_callback:u,child_name:r.attr("name"),members_directory:r.attr("data-mebers-directory"),form_id:e,nonce:um_scripts.nonce},success:function(e){"success"==e.status&&""!=t.val()&&s(r,e,a),void 0!==e.debug&&console.log(e)},error:function(e){console.log(e)}}),""!=t.val()&&"object"==typeof o[a]){var i=o[a];s(r,i,a)}""==t.val()&&(r.find('option[value!=""]').remove(),r.val("").trigger("change"))}),jQuery('select[name="'+n+'"]').trigger("change")})});
|
1 |
+
function um_init_datetimepicker(){jQuery(".um-datepicker:not(.picker__input)").each(function(){if(elem=jQuery(this),void 0!==elem.attr("data-disabled_weekdays")&&""!=elem.attr("data-disabled_weekdays"))var e=JSON.parse(elem.attr("data-disabled_weekdays"));else e=!1;var t=null;void 0!==elem.attr("data-years")&&(t=elem.attr("data-years"));var a=elem.attr("data-date_min"),i=elem.attr("data-date_max"),r=[],n=[];void 0!==a&&(r=a.split(",")),void 0!==i&&(n=i.split(","));var u=r.length?new Date(r):null,s=r.length?new Date(n):null;if(u&&"Invalid Date"==u.toString()&&3==r.length){var o=r[1]+"/"+r[2]+"/"+r[0];u=new Date(Date.parse(o))}if(s&&"Invalid Date"==s.toString()&&3==n.length){var d=n[1]+"/"+n[2]+"/"+n[0];s=new Date(Date.parse(d))}var l={disable:e,format:elem.attr("data-format"),formatSubmit:"yyyy/mm/dd",hiddenName:!0,onOpen:function(){elem.blur()},onClose:function(){elem.blur()}};null!==t&&(l.selectYears=t),null!==u&&(l.min=u),null!==s&&(l.max=s),elem.pickadate(l)}),jQuery(".um-timepicker:not(.picker__input)").each(function(){elem=jQuery(this),elem.pickatime({format:elem.attr("data-format"),interval:parseInt(elem.attr("data-intervals")),formatSubmit:"HH:i",hiddenName:!0,onOpen:function(){elem.blur()},onClose:function(){elem.blur()}})})}function init_tipsy(){"function"==typeof jQuery.fn.tipsy&&(jQuery(".um-tip-n").tipsy({gravity:"n",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-w").tipsy({gravity:"w",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-e").tipsy({gravity:"e",opacity:1,live:"a.live",offset:3}),jQuery(".um-tip-s").tipsy({gravity:"s",opacity:1,live:"a.live",offset:3}))}jQuery(document).ready(function(){jQuery(document.body).on("click",".um-dropdown a.real_url",function(e){window.location=jQuery(this).attr("href")}),jQuery(document.body).on("click",".um-trigger-menu-on-click",function(e){return jQuery(".um-dropdown").hide(),jQuery(this).find(".um-dropdown").show(),!1}),jQuery(document.body).on("click",".um-dropdown-hide",function(e){return UM_hide_menus(),!1}),jQuery(document.body).on("click","a.um-manual-trigger",function(){var e=jQuery(this).attr("data-child"),t=jQuery(this).attr("data-parent");return jQuery(this).parents(t).find(e).trigger("click"),UM_hide_menus(),!1}),jQuery(".um-s1,.um-s2").css({display:"block"}),"function"==typeof jQuery.fn.select2&&(jQuery(".um-s1").select2({allowClear:!0}),jQuery(".um-s2").select2({allowClear:!1,minimumResultsForSearch:10}),jQuery(".um-s3").select2({allowClear:!1,minimumResultsForSearch:-1})),init_tipsy(),"function"==typeof jQuery.fn.um_raty&&(jQuery(".um-rating").um_raty({half:!1,starType:"i",number:function(){return jQuery(this).attr("data-number")},score:function(){return jQuery(this).attr("data-score")},scoreName:function(){return jQuery(this).attr("data-key")},hints:!1,click:function(e,t){live_field=this.id,live_value=e,um_apply_conditions(jQuery(this),!1)}}),jQuery(".um-rating-readonly").um_raty({half:!1,starType:"i",number:function(){return jQuery(this).attr("data-number")},score:function(){return jQuery(this).attr("data-score")},scoreName:function(){return jQuery(this).attr("data-key")},hints:!1,readOnly:!0})),jQuery(document).on("change",'.um-field-area input[type="radio"]',function(){var e=jQuery(this).parents(".um-field-area"),t=jQuery(this).parents("label");e.find(".um-field-radio").removeClass("active"),e.find(".um-field-radio").find("i").removeAttr("class").addClass("um-icon-android-radio-button-off"),t.addClass("active"),t.find("i").removeAttr("class").addClass("um-icon-android-radio-button-on")}),jQuery(document).on("change",'.um-field-area input[type="checkbox"]',function(){jQuery(this).parents(".um-field-area");var e=jQuery(this).parents("label");e.hasClass("active")?(e.removeClass("active"),e.find("i").removeAttr("class").addClass("um-icon-android-checkbox-outline-blank")):(e.addClass("active"),e.find("i").removeAttr("class").addClass("um-icon-android-checkbox-outline"))}),um_init_datetimepicker(),jQuery(document).on("click",".um .um-single-image-preview a.cancel",function(e){e.preventDefault();var t=jQuery(this).parents(".um-field"),a=jQuery(this).parents(".um-field").find(".um-single-image-preview img").attr("src");return t.find(".um-single-image-preview img").attr("src",""),t.find(".um-single-image-preview").hide(),t.find(".um-btn-auto-width").html("Upload"),t.find("input[type=hidden]").val("empty_file"),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_remove_file",src:a,nonce:um_scripts.nonce}}),!1}),jQuery(document).on("click",".um .um-single-file-preview a.cancel",function(e){e.preventDefault();var t=jQuery(this).parents(".um-field"),a=jQuery(this).parents(".um-field").find(".um-single-fileinfo a").attr("href");return t.find(".um-single-file-preview").hide(),t.find(".um-btn-auto-width").html("Upload"),t.find("input[type=hidden]").val("empty_file"),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_remove_file",src:a,nonce:um_scripts.nonce}}),!1}),jQuery(document).on("click",".um-field-group-head:not(.disabled)",function(){var e=jQuery(this).parents(".um-field-group"),t=e.data("max_entries");e.find(".um-field-group-body").is(":hidden")?e.find(".um-field-group-body").show():e.find(".um-field-group-body:first").clone().appendTo(e),increase_id=0,e.find(".um-field-group-body").each(function(){increase_id++,jQuery(this).find("input").each(function(){var e=jQuery(this);e.attr("id",e.data("key")+"-"+increase_id),e.attr("name",e.data("key")+"-"+increase_id),e.parent().parent().find("label").attr("for",e.data("key")+"-"+increase_id)})}),0<t&&e.find(".um-field-group-body").length==t&&jQuery(this).addClass("disabled")}),jQuery(document).on("click",".um-field-group-cancel",function(e){e.preventDefault();var t=jQuery(this).parents(".um-field-group"),a=t.data("max_entries");return 1<t.find(".um-field-group-body").length?jQuery(this).parents(".um-field-group-body").remove():jQuery(this).parents(".um-field-group-body").hide(),0<a&&t.find(".um-field-group-body").length<a&&t.find(".um-field-group-head").removeClass("disabled"),!1}),jQuery(document.body).on("click",".um-ajax-paginate",function(e){e.preventDefault();var t=jQuery(this),a=jQuery(this).parent();a.addClass("loading");var i=jQuery(this).data("hook");if("um_load_posts"===i){var r=1*jQuery(this).data("pages"),n=1*jQuery(this).data("page")+1;jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_ajax_paginate_posts",author:jQuery(this).data("author"),page:n,nonce:um_scripts.nonce},complete:function(){a.removeClass("loading")},success:function(e){a.before(e),n===r?a.remove():t.data("page",n)}})}else if("um_load_comments"===i){r=1*jQuery(this).data("pages"),n=1*jQuery(this).data("page")+1;jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_ajax_paginate_comments",user_id:jQuery(this).data("user_id"),page:n,nonce:um_scripts.nonce},complete:function(){a.removeClass("loading")},success:function(e){a.before(e),n===r?a.remove():t.data("page",n)}})}else{var u=jQuery(this).data("args"),s=jQuery(this).parents(".um").find(".um-ajax-items");jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_ajax_paginate",hook:i,args:u,nonce:um_scripts.nonce},complete:function(){a.removeClass("loading")},success:function(e){a.remove(),s.append(e)}})}}),jQuery(document).on("click",".um-ajax-action",function(e){e.preventDefault();var t=jQuery(this).data("hook"),a=jQuery(this).data("user_id"),arguments=jQuery(this).data("arguments");return jQuery(this).data("js-remove")&&jQuery(this).parents("."+jQuery(this).data("js-remove")).fadeOut("fast"),jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_muted_action",hook:t,user_id:a,arguments:arguments,nonce:um_scripts.nonce},success:function(e){}}),!1}),jQuery(document.body).on("click","#um-search-button",function(){var e=jQuery(this).parents(".um-search-form").data("members_page"),t=[];jQuery(this).parents(".um-search-form").find('input[name="um-search-keys[]"]').each(function(){t.push(jQuery(this).val())});var a,i=jQuery(this).parents(".um-search-form").find(".um-search-field").val();if(""===i)a=e;else{for(var r="?",n=0;n<t.length;n++)r+=t[n]+"="+i,n!==t.length-1&&(r+="&");a=e+r}window.location=a}),jQuery(document.body).on("keypress",".um-search-field",function(e){if(13===e.which){var t=jQuery(this).parents(".um-search-form").data("members_page"),a=[];jQuery(this).parents(".um-search-form").find('input[name="um-search-keys[]"]').each(function(){a.push(jQuery(this).val())});var i,r=jQuery(this).val();if(""===r)i=t;else{for(var n="?",u=0;u<a.length;u++)n+=a[u]+"="+r,u!==a.length-1&&(n+="&");i=t+n}window.location=i}}),jQuery('.um-form input[class="um-button"][type="submit"]').removeAttr("disabled"),jQuery(document).one("click",'.um:not(.um-account) .um-form input[class="um-button"][type="submit"]:not(.um-has-recaptcha)',function(){jQuery(this).attr("disabled","disabled"),jQuery(this).parents("form").submit()});var s={};function o(e,t,a,i){var r=e.data("um-parent");e.attr("name"),jQuery('select[name="'+r+'"]');e.find('option[value!=""]').remove(),e.hasClass("um-child-option-disabled")||e.removeAttr("disabled");i=[];var n="";if("yes"===t.post.members_directory){var u=new URLSearchParams(window.location.search);n=u.get(t.post.child_name)}jQuery.each(t.items,function(e,t){i.push({id:e,text:t,selected:t===n})}),e.select2("destroy"),e.select2({data:i,allowClear:!0,minimumResultsForSearch:10}),"yes"!==t.post.members_directory&&(void 0===t.field.default||e.data("um-original-value")?""!=e.data("um-original-value")&&e.val(e.data("um-original-value")).trigger("change"):e.val(t.field.default).trigger("change"),0==t.field.editable&&(e.addClass("um-child-option-disabled"),e.attr("disabled","disabled"))),s[a]=t}jQuery("select[data-um-parent]").each(function(){var r=jQuery(this),n=r.data("um-parent"),u=(r.data("um-ajax-url"),r.data("um-ajax-source"));r.val();r.attr("data-um-init-field",!0),jQuery(document).on("change",'select[name="'+n+'"]',function(){var t=jQuery(this),e=t.closest("form").find('input[type="hidden"][name="form_id"]').val(),a=t.val();if(""!=t.val()&&"object"!=typeof s[a]&&jQuery.ajax({url:wp.ajax.settings.url,type:"post",data:{action:"um_select_options",parent_option_name:n,parent_option:t.val(),child_callback:u,child_name:r.attr("name"),members_directory:r.attr("data-mebers-directory"),form_id:e,nonce:um_scripts.nonce},success:function(e){"success"==e.status&&""!=t.val()&&o(r,e,a),void 0!==e.debug&&console.log(e)},error:function(e){console.log(e)}}),""!=t.val()&&"object"==typeof s[a]){var i=s[a];o(r,i,a)}""==t.val()&&(r.find('option[value!=""]').remove(),r.val("").trigger("change"))}),jQuery('select[name="'+n+'"]').trigger("change")})});
|
includes/admin/assets/css/um-admin-forms.css
CHANGED
@@ -35,19 +35,22 @@ textarea.um-forms-field.um-small-field {
|
|
35 |
|
36 |
|
37 |
.um-multi-text-list,
|
38 |
-
.um-multi-selects-list
|
|
|
39 |
float: left;
|
40 |
width:100%;
|
41 |
margin: 0 0 10px 0;
|
42 |
}
|
43 |
|
44 |
.um-hidden-multi-text,
|
45 |
-
.um-hidden-multi-selects
|
|
|
46 |
display: none !important;
|
47 |
}
|
48 |
|
49 |
.um-multi-text-option-line,
|
50 |
-
.um-multi-selects-option-line
|
|
|
51 |
float:left;
|
52 |
width:100%;
|
53 |
margin: 0;
|
@@ -55,6 +58,12 @@ textarea.um-forms-field.um-small-field {
|
|
55 |
clear:both;
|
56 |
}
|
57 |
|
|
|
|
|
|
|
|
|
|
|
|
|
58 |
.um-multi-text-option-line .um-field-wrapper,
|
59 |
.um-multi-selects-option-line .um-field-wrapper {
|
60 |
float:left;
|
@@ -63,6 +72,47 @@ textarea.um-forms-field.um-small-field {
|
|
63 |
box-sizing: border-box;
|
64 |
}
|
65 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
66 |
.um-multi-text-option-line .um-field-wrapper input,
|
67 |
.um-multi-selects-option-line .um-field-wrapper select {
|
68 |
float:left;
|
@@ -72,7 +122,8 @@ textarea.um-forms-field.um-small-field {
|
|
72 |
|
73 |
|
74 |
.um-multi-text-option-line .um-field-control,
|
75 |
-
.um-multi-selects-option-line .um-field-control
|
|
|
76 |
float:left;
|
77 |
width: 60px;
|
78 |
line-height: 30px;
|
35 |
|
36 |
|
37 |
.um-multi-text-list,
|
38 |
+
.um-multi-selects-list,
|
39 |
+
.um-md-default-filters-list {
|
40 |
float: left;
|
41 |
width:100%;
|
42 |
margin: 0 0 10px 0;
|
43 |
}
|
44 |
|
45 |
.um-hidden-multi-text,
|
46 |
+
.um-hidden-multi-selects,
|
47 |
+
.um-hidden-md-default-filters {
|
48 |
display: none !important;
|
49 |
}
|
50 |
|
51 |
.um-multi-text-option-line,
|
52 |
+
.um-multi-selects-option-line,
|
53 |
+
.um-md-default-filters-option-line {
|
54 |
float:left;
|
55 |
width:100%;
|
56 |
margin: 0;
|
58 |
clear:both;
|
59 |
}
|
60 |
|
61 |
+
.um-md-default-filters-option-line {
|
62 |
+
border-bottom: 1px solid #eee;
|
63 |
+
padding: 0 0 5px 0;
|
64 |
+
margin: 5px 0 0 0;
|
65 |
+
}
|
66 |
+
|
67 |
.um-multi-text-option-line .um-field-wrapper,
|
68 |
.um-multi-selects-option-line .um-field-wrapper {
|
69 |
float:left;
|
72 |
box-sizing: border-box;
|
73 |
}
|
74 |
|
75 |
+
.um-md-default-filters-option-line .um-field-wrapper {
|
76 |
+
float:left;
|
77 |
+
width: calc( 100% - 60px );
|
78 |
+
line-height: 30px;
|
79 |
+
box-sizing: border-box;
|
80 |
+
}
|
81 |
+
|
82 |
+
.um-md-default-filters-option-line .um-field-wrapper2 {
|
83 |
+
float:left;
|
84 |
+
width: calc( 100% - 60px );
|
85 |
+
line-height: 30px;
|
86 |
+
box-sizing: border-box;
|
87 |
+
}
|
88 |
+
|
89 |
+
.um-md-default-filters-option-line .um-field-wrapper2 .ui-slider-range.ui-widget-header {
|
90 |
+
background: #44b0ec;
|
91 |
+
border: 1px solid #44b0ec !important;
|
92 |
+
margin-top: -1px;
|
93 |
+
}
|
94 |
+
|
95 |
+
.um-md-default-filters-option-line .um-field-wrapper2 select {
|
96 |
+
width: 100%;
|
97 |
+
float: left;
|
98 |
+
}
|
99 |
+
|
100 |
+
.um-md-default-filters-option-line .um-field-wrapper2 input {
|
101 |
+
width: calc( 50% - 7px ) !important;
|
102 |
+
float: left;
|
103 |
+
}
|
104 |
+
|
105 |
+
.um-md-default-filters-option-line .um-field-wrapper2 .um-slider {
|
106 |
+
margin: 5px 9px 0 9px;
|
107 |
+
width: calc( 100% - 18px );
|
108 |
+
box-sizing: border-box;
|
109 |
+
display: block;
|
110 |
+
}
|
111 |
+
|
112 |
+
.um-md-default-filters-option-line .um-field-wrapper2 input:first-child {
|
113 |
+
margin-right: 11px;
|
114 |
+
}
|
115 |
+
|
116 |
.um-multi-text-option-line .um-field-wrapper input,
|
117 |
.um-multi-selects-option-line .um-field-wrapper select {
|
118 |
float:left;
|
122 |
|
123 |
|
124 |
.um-multi-text-option-line .um-field-control,
|
125 |
+
.um-multi-selects-option-line .um-field-control,
|
126 |
+
.um-md-default-filters-option-line .um-field-control {
|
127 |
float:left;
|
128 |
width: 60px;
|
129 |
line-height: 30px;
|
includes/admin/assets/css/um-admin-global.css
CHANGED
@@ -166,6 +166,10 @@ a.um-delete{ color: #a00; }
|
|
166 |
text-shadow: none !important;
|
167 |
}
|
168 |
|
|
|
|
|
|
|
|
|
169 |
.um_tooltip.dashicons,
|
170 |
.um_tooltip.dashicons:before {
|
171 |
height:22px;
|
166 |
text-shadow: none !important;
|
167 |
}
|
168 |
|
169 |
+
.ui-tooltip.um_tooltip a {
|
170 |
+
color: #eeeeee !important;
|
171 |
+
}
|
172 |
+
|
173 |
.um_tooltip.dashicons,
|
174 |
.um_tooltip.dashicons:before {
|
175 |
height:22px;
|
includes/admin/assets/css/um-admin-select2.css
CHANGED
@@ -92,7 +92,7 @@ body.um-admin .select2.select2-container .select2-selection{
|
|
92 |
user-select: none;
|
93 |
background: none !important;
|
94 |
background-color: #fff !important;
|
95 |
-
border:
|
96 |
}
|
97 |
body.um-admin .select2.select2-container .select2-selection .select2-selection__arrow b[role=presentation]{
|
98 |
display:none;
|
@@ -123,7 +123,7 @@ body.um-admin .select2.select2-container .select2-selection .select2-selection__
|
|
123 |
border-left: 0 !important;
|
124 |
}
|
125 |
body.um-admin .select2-container.select2-container--open .select2-dropdown{
|
126 |
-
border:
|
127 |
}
|
128 |
body.um-admin .select2-results li{
|
129 |
list-style: none;
|
92 |
user-select: none;
|
93 |
background: none !important;
|
94 |
background-color: #fff !important;
|
95 |
+
border: 1px solid #ddd !important;
|
96 |
}
|
97 |
body.um-admin .select2.select2-container .select2-selection .select2-selection__arrow b[role=presentation]{
|
98 |
display:none;
|
123 |
border-left: 0 !important;
|
124 |
}
|
125 |
body.um-admin .select2-container.select2-container--open .select2-dropdown{
|
126 |
+
border: 1px solid #ddd !important;
|
127 |
}
|
128 |
body.um-admin .select2-results li{
|
129 |
list-style: none;
|
includes/admin/assets/js/um-admin-blocks-shortcode.js
CHANGED
@@ -18,7 +18,7 @@
|
|
18 |
|
19 |
UmRegisterBlockType('um-block/um-forms', {
|
20 |
title: i18n.__( 'UM Form' , 'ultimate-member' ),
|
21 |
-
description: i18n.__( '
|
22 |
icon: 'forms',
|
23 |
category: 'um-blocks',
|
24 |
attributes: {
|
@@ -147,7 +147,7 @@
|
|
147 |
|
148 |
UmRegisterBlockType( 'um-block/um-member-directories', {
|
149 |
title: i18n.__( 'UM Member Directories', 'ultimate-member'),
|
150 |
-
description: i18n.__( '
|
151 |
icon: 'groups',
|
152 |
category: 'um-blocks',
|
153 |
attributes: {
|
18 |
|
19 |
UmRegisterBlockType('um-block/um-forms', {
|
20 |
title: i18n.__( 'UM Form' , 'ultimate-member' ),
|
21 |
+
description: i18n.__( 'Choose display form', 'ultimate-member' ),
|
22 |
icon: 'forms',
|
23 |
category: 'um-blocks',
|
24 |
attributes: {
|
147 |
|
148 |
UmRegisterBlockType( 'um-block/um-member-directories', {
|
149 |
title: i18n.__( 'UM Member Directories', 'ultimate-member'),
|
150 |
+
description: i18n.__( 'Choose display form', 'ultimate-member' ),
|
151 |
icon: 'groups',
|
152 |
category: 'um-blocks',
|
153 |
attributes: {
|
includes/admin/assets/js/um-admin-forms.js
CHANGED
@@ -2,10 +2,16 @@ jQuery(document).ready( function() {
|
|
2 |
/**
|
3 |
* Multi-selects field
|
4 |
*/
|
5 |
-
jQuery( document.body ).on( 'click', '.um-select-delete', function() {
|
6 |
jQuery( this ).parents( 'li.um-multi-selects-option-line' ).remove();
|
7 |
});
|
8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
9 |
|
10 |
jQuery( '.um-multi-selects-add-option' ).click( function() {
|
11 |
var list = jQuery(this).siblings('ul.um-multi-selects-list');
|
@@ -29,6 +35,264 @@ jQuery(document).ready( function() {
|
|
29 |
|
30 |
});
|
31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
|
33 |
/**
|
34 |
* Multi-text field
|
@@ -186,6 +450,11 @@ jQuery(document).ready( function() {
|
|
186 |
}
|
187 |
|
188 |
|
|
|
|
|
|
|
|
|
|
|
189 |
/**
|
190 |
* Conditional logic
|
191 |
*
|
@@ -206,10 +475,12 @@ jQuery(document).ready( function() {
|
|
206 |
var parent_condition = true;
|
207 |
|
208 |
if ( condition === '=' || condition === '!=' ) {
|
209 |
-
|
|
|
210 |
|
211 |
-
|
212 |
-
|
|
|
213 |
}
|
214 |
} else if ( condition === '~' ) {
|
215 |
var selectors = conditional[0].split('|');
|
@@ -220,35 +491,116 @@ jQuery(document).ready( function() {
|
|
220 |
if ( typeof condition_fields[0].parents('.um-forms-line').data('conditional') !== 'undefined' ) {
|
221 |
parent_condition = check_condition( condition_fields[0].parents('.um-forms-line') );
|
222 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
}
|
224 |
|
225 |
var own_condition = false;
|
226 |
if ( condition === '=' ) {
|
227 |
-
|
|
|
|
|
228 |
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
own_condition =
|
233 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
234 |
own_condition = ( condition_field.val() == value );
|
235 |
}
|
236 |
-
|
237 |
-
|
238 |
}
|
|
|
239 |
} else if ( condition === '!=' ) {
|
240 |
-
|
|
|
|
|
241 |
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
own_condition =
|
246 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
247 |
own_condition = ( condition_field.val() != value );
|
248 |
}
|
249 |
-
|
250 |
-
|
251 |
}
|
|
|
252 |
} else if ( condition === '~' ) {
|
253 |
|
254 |
var field_id = form_line.find( form_line.data('field_type') ).data('field_id');
|
@@ -265,6 +617,11 @@ jQuery(document).ready( function() {
|
|
265 |
visible_options.push( condition_field.data( 'fill_' + field_id ) );
|
266 |
}
|
267 |
}
|
|
|
|
|
|
|
|
|
|
|
268 |
}
|
269 |
});
|
270 |
|
@@ -285,9 +642,24 @@ jQuery(document).ready( function() {
|
|
285 |
lines_field.val( null );
|
286 |
lines_field.find( 'option' ).attr( 'selected', false ).prop( 'selected', false );
|
287 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
288 |
}
|
289 |
|
290 |
-
return
|
291 |
}
|
292 |
|
293 |
});
|
2 |
/**
|
3 |
* Multi-selects field
|
4 |
*/
|
5 |
+
jQuery( document.body ).on( 'click', '.um-multi-selects-option-line .um-select-delete', function() {
|
6 |
jQuery( this ).parents( 'li.um-multi-selects-option-line' ).remove();
|
7 |
});
|
8 |
|
9 |
+
/**
|
10 |
+
* Multi-selects field
|
11 |
+
*/
|
12 |
+
jQuery( document.body ).on( 'click', '.um-md-default-filters-option-line .um-select-delete', function() {
|
13 |
+
jQuery( this ).parents( 'li.um-md-default-filters-option-line' ).remove();
|
14 |
+
});
|
15 |
|
16 |
jQuery( '.um-multi-selects-add-option' ).click( function() {
|
17 |
var list = jQuery(this).siblings('ul.um-multi-selects-list');
|
35 |
|
36 |
});
|
37 |
|
38 |
+
var um_local_date = new Date();
|
39 |
+
var um_gmt_hours = -um_local_date.getTimezoneOffset() / 60;
|
40 |
+
jQuery('input[name="um-gmt-offset"]').val( um_gmt_hours );
|
41 |
+
|
42 |
+
//slider filter
|
43 |
+
jQuery('.um-admin-metabox').find('.um-slider').each( function() {
|
44 |
+
var slider = jQuery( this );
|
45 |
+
|
46 |
+
var min_default_value = parseInt( slider.data('min') );
|
47 |
+
var max_default_value = parseInt( slider.data('max') );
|
48 |
+
|
49 |
+
if ( typeof jQuery( '#' + slider.data('field_name') + '_min' ).val() != 'undefined' ) {
|
50 |
+
min_default_value = jQuery( '#' + slider.data('field_name') + '_min' ).val();
|
51 |
+
}
|
52 |
+
if ( typeof jQuery( '#' + slider.data('field_name') + '_max' ).val() != 'undefined' ) {
|
53 |
+
max_default_value = jQuery( '#' + slider.data('field_name') + '_max' ).val();
|
54 |
+
}
|
55 |
+
|
56 |
+
var default_value = [ min_default_value, max_default_value ];
|
57 |
+
|
58 |
+
slider.slider({
|
59 |
+
range: true,
|
60 |
+
min: parseInt( slider.data('min') ),
|
61 |
+
max: parseInt( slider.data('max') ),
|
62 |
+
values: default_value,
|
63 |
+
create: function( event, ui ) {
|
64 |
+
//console.log( ui );
|
65 |
+
},
|
66 |
+
step: 1,
|
67 |
+
slide: function( event, ui ) {
|
68 |
+
um_set_range_label( jQuery( this ), ui );
|
69 |
+
},
|
70 |
+
stop: function( event, ui ) {
|
71 |
+
|
72 |
+
}
|
73 |
+
});
|
74 |
+
|
75 |
+
um_set_range_label( slider );
|
76 |
+
});
|
77 |
+
|
78 |
+
|
79 |
+
//datepicker filter
|
80 |
+
jQuery('.um-admin-metabox').find('.um-datepicker-filter').each( function() {
|
81 |
+
var elem = jQuery(this);
|
82 |
+
|
83 |
+
var min = new Date( elem.data('date_min')*1000 );
|
84 |
+
var max = new Date( elem.data('date_max')*1000 );
|
85 |
+
|
86 |
+
var $input = elem.pickadate({
|
87 |
+
selectYears: true,
|
88 |
+
min: min,
|
89 |
+
max: max,
|
90 |
+
formatSubmit: 'yyyy/mm/dd',
|
91 |
+
hiddenName: true,
|
92 |
+
onOpen: function() {
|
93 |
+
elem.blur();
|
94 |
+
},
|
95 |
+
onClose: function() {
|
96 |
+
elem.blur();
|
97 |
+
},
|
98 |
+
onSet: function( context ) {
|
99 |
+
|
100 |
+
}
|
101 |
+
});
|
102 |
+
|
103 |
+
var $picker = $input.pickadate('picker');
|
104 |
+
$picker.set( 'select', elem.data('value')*1000 );
|
105 |
+
});
|
106 |
+
|
107 |
+
|
108 |
+
//timepicker filter
|
109 |
+
jQuery('.um-admin-metabox').find('.um-timepicker-filter').each( function() {
|
110 |
+
var elem = jQuery(this);
|
111 |
+
|
112 |
+
//using arrays formatted as [HOUR,MINUTE]
|
113 |
+
|
114 |
+
var min = elem.data('min');
|
115 |
+
var max = elem.data('max');
|
116 |
+
var picker_min = min.split(':');
|
117 |
+
var picker_max = max.split(':');
|
118 |
+
|
119 |
+
var $input = elem.pickatime({
|
120 |
+
format: elem.data('format'),
|
121 |
+
interval: parseInt( elem.data('intervals') ),
|
122 |
+
min: [picker_min[0],picker_min[1]],
|
123 |
+
max: [picker_max[0],picker_max[1]],
|
124 |
+
formatSubmit: 'HH:i',
|
125 |
+
hiddenName: true,
|
126 |
+
onOpen: function() { elem.blur(); },
|
127 |
+
onClose: function() { elem.blur(); },
|
128 |
+
onSet: function( context ) {
|
129 |
+
|
130 |
+
}
|
131 |
+
});
|
132 |
+
});
|
133 |
+
|
134 |
+
var um_member_dir_filters_busy = false;
|
135 |
+
|
136 |
+
jQuery( document.body ).on( 'change', '.um-md-default-filters-option-line .um-field-wrapper select', function() {
|
137 |
+
if ( um_member_dir_filters_busy ) {
|
138 |
+
return;
|
139 |
+
}
|
140 |
+
|
141 |
+
var obj = jQuery(this);
|
142 |
+
var filter_key = obj.val();
|
143 |
+
var directory_id = obj.data('member_directory');
|
144 |
+
|
145 |
+
um_member_dir_filters_busy = true;
|
146 |
+
wp.ajax.send( 'um_member_directory_default_filter_settings', {
|
147 |
+
data: {
|
148 |
+
key: filter_key,
|
149 |
+
directory_id: directory_id,
|
150 |
+
nonce: um_admin_scripts.nonce
|
151 |
+
},
|
152 |
+
success: function( data ) {
|
153 |
+
var field_wrapper = obj.parents( '.um-md-default-filters-option-line' ).find('.um-field-wrapper2');
|
154 |
+
field_wrapper.html( data.field_html );
|
155 |
+
|
156 |
+
um_member_dir_filters_busy = false;
|
157 |
+
|
158 |
+
//slider filter
|
159 |
+
field_wrapper.find('.um-slider').each( function() {
|
160 |
+
var slider = jQuery( this );
|
161 |
+
var min_default_value = parseInt( slider.data('min') );
|
162 |
+
var max_default_value = parseInt( slider.data('max') );
|
163 |
+
|
164 |
+
var default_value = [ min_default_value, max_default_value ];
|
165 |
+
|
166 |
+
slider.slider({
|
167 |
+
range: true,
|
168 |
+
min: parseInt( slider.data('min') ),
|
169 |
+
max: parseInt( slider.data('max') ),
|
170 |
+
values: default_value,
|
171 |
+
create: function( event, ui ) {
|
172 |
+
//console.log( ui );
|
173 |
+
},
|
174 |
+
step: 1,
|
175 |
+
slide: function( event, ui ) {
|
176 |
+
um_set_range_label( jQuery( this ), ui );
|
177 |
+
},
|
178 |
+
stop: function( event, ui ) {
|
179 |
+
|
180 |
+
}
|
181 |
+
});
|
182 |
+
|
183 |
+
um_set_range_label( slider );
|
184 |
+
});
|
185 |
+
|
186 |
+
|
187 |
+
//datepicker filter
|
188 |
+
field_wrapper.find('.um-datepicker-filter').each( function() {
|
189 |
+
var elem = jQuery(this);
|
190 |
+
|
191 |
+
var min = new Date( elem.data('date_min')*1000 );
|
192 |
+
var max = new Date( elem.data('date_max')*1000 );
|
193 |
+
|
194 |
+
var $input = elem.pickadate({
|
195 |
+
selectYears: true,
|
196 |
+
min: min,
|
197 |
+
max: max,
|
198 |
+
formatSubmit: 'yyyy/mm/dd',
|
199 |
+
hiddenName: true,
|
200 |
+
onOpen: function() {
|
201 |
+
elem.blur();
|
202 |
+
},
|
203 |
+
onClose: function() {
|
204 |
+
elem.blur();
|
205 |
+
},
|
206 |
+
onSet: function( context ) {
|
207 |
+
|
208 |
+
}
|
209 |
+
});
|
210 |
+
});
|
211 |
+
|
212 |
+
|
213 |
+
//timepicker filter
|
214 |
+
field_wrapper.find('.um-timepicker-filter').each( function() {
|
215 |
+
var elem = jQuery(this);
|
216 |
+
|
217 |
+
//using arrays formatted as [HOUR,MINUTE]
|
218 |
+
|
219 |
+
var min = elem.data('min');
|
220 |
+
var max = elem.data('max');
|
221 |
+
var picker_min = min.split(':');
|
222 |
+
var picker_max = max.split(':');
|
223 |
+
|
224 |
+
var $input = elem.pickatime({
|
225 |
+
format: elem.data('format'),
|
226 |
+
interval: parseInt( elem.data('intervals') ),
|
227 |
+
min: [picker_min[0],picker_min[1]],
|
228 |
+
max: [picker_max[0],picker_max[1]],
|
229 |
+
formatSubmit: 'HH:i',
|
230 |
+
hiddenName: true,
|
231 |
+
onOpen: function() { elem.blur(); },
|
232 |
+
onClose: function() { elem.blur(); },
|
233 |
+
onSet: function( context ) {
|
234 |
+
|
235 |
+
}
|
236 |
+
});
|
237 |
+
});
|
238 |
+
|
239 |
+
|
240 |
+
},
|
241 |
+
error: function( data ) {
|
242 |
+
return false;
|
243 |
+
}
|
244 |
+
});
|
245 |
+
|
246 |
+
});
|
247 |
+
|
248 |
+
function um_set_range_label( slider, ui ) {
|
249 |
+
var placeholder = slider.siblings( '.um-slider-range' ).data( 'placeholder' );
|
250 |
+
|
251 |
+
if( ui ) {
|
252 |
+
placeholder = placeholder.replace( '\{min_range\}', ui.values[ 0 ] )
|
253 |
+
.replace( '\{max_range\}', ui.values[ 1 ] )
|
254 |
+
.replace( '\{field_label\}', slider.siblings( '.um-slider-range' )
|
255 |
+
.data('label') );
|
256 |
+
} else {
|
257 |
+
placeholder = placeholder.replace( '\{min_range\}', slider.slider( "values", 0 ) )
|
258 |
+
.replace( '\{max_range\}', slider.slider( "values", 1 ) )
|
259 |
+
.replace( '\{field_label\}', slider.siblings( '.um-slider-range' )
|
260 |
+
.data('label') );
|
261 |
+
}
|
262 |
+
slider.siblings( '.um-slider-range' ).html( placeholder );
|
263 |
+
|
264 |
+
slider.siblings( ".um_range_min" ).val( slider.slider( "values", 0 ) );
|
265 |
+
slider.siblings( ".um_range_max" ).val( slider.slider( "values", 1 ) );
|
266 |
+
}
|
267 |
+
|
268 |
+
|
269 |
+
jQuery( '.um-md-default-filters-add-option' ).click( function() {
|
270 |
+
if ( um_member_dir_filters_busy ) {
|
271 |
+
return;
|
272 |
+
}
|
273 |
+
|
274 |
+
var list = jQuery(this).siblings('ul.um-md-default-filters-list');
|
275 |
+
|
276 |
+
var field_id = list.data('field_id');
|
277 |
+
var k = 0;
|
278 |
+
if ( list.find( 'li:last select.um-forms-field' ).length > 0 ) {
|
279 |
+
k = list.find( 'li:last select.um-forms-field' ).attr('id').split("-");
|
280 |
+
k = k[1]*1 + 1;
|
281 |
+
}
|
282 |
+
|
283 |
+
var selector_html = jQuery( '<div>' ).append( list.siblings('.um-hidden-md-default-filters').clone() ).html();
|
284 |
+
|
285 |
+
list.append(
|
286 |
+
'<li class="um-md-default-filters-option-line"><span class="um-field-wrapper">' + selector_html +
|
287 |
+
'</span></span><span class="um-field-control"><a href="javascript:void(0);" class="um-select-delete">' + php_data.texts.remove + '</a></span><span class="um-field-wrapper2 um"></li>'
|
288 |
+
);
|
289 |
+
|
290 |
+
list.find('li:last .um-hidden-md-default-filters').attr('name', jQuery(this).data('name') ).
|
291 |
+
addClass('um-forms-field um-long-field').removeClass('um-hidden-md-default-filters').attr('id', list.data('id_attr') + '-' + k);
|
292 |
+
|
293 |
+
list.find('li:last .um-field-wrapper select').trigger('change');
|
294 |
+
});
|
295 |
+
|
296 |
|
297 |
/**
|
298 |
* Multi-text field
|
450 |
}
|
451 |
|
452 |
|
453 |
+
function um_distinct( value, index, self ) {
|
454 |
+
return self.indexOf( value ) === index;
|
455 |
+
}
|
456 |
+
|
457 |
+
|
458 |
/**
|
459 |
* Conditional logic
|
460 |
*
|
475 |
var parent_condition = true;
|
476 |
|
477 |
if ( condition === '=' || condition === '!=' ) {
|
478 |
+
if ( conditional[0].indexOf( '||' ) === -1 ) {
|
479 |
+
var condition_field = jQuery( '#' + prefix + '_' + conditional[0] );
|
480 |
|
481 |
+
if ( typeof condition_field.parents('.um-forms-line').data('conditional') !== 'undefined' ) {
|
482 |
+
parent_condition = check_condition( condition_field.parents('.um-forms-line') );
|
483 |
+
}
|
484 |
}
|
485 |
} else if ( condition === '~' ) {
|
486 |
var selectors = conditional[0].split('|');
|
491 |
if ( typeof condition_fields[0].parents('.um-forms-line').data('conditional') !== 'undefined' ) {
|
492 |
parent_condition = check_condition( condition_fields[0].parents('.um-forms-line') );
|
493 |
}
|
494 |
+
} else if ( condition === '><' ) {
|
495 |
+
var condition_field = jQuery( '#' + prefix + '_' + conditional[0] + '_' + conditional[2] );
|
496 |
+
|
497 |
+
if ( typeof condition_field.parents('.um-forms-line').data('conditional') !== 'undefined' ) {
|
498 |
+
parent_condition = check_condition( condition_field.parents('.um-forms-line') );
|
499 |
+
}
|
500 |
}
|
501 |
|
502 |
var own_condition = false;
|
503 |
if ( condition === '=' ) {
|
504 |
+
if ( conditional[0].indexOf( '||' ) !== -1 ) {
|
505 |
+
var selectors = conditional[0].split('||');
|
506 |
+
var complete_condition = false;
|
507 |
|
508 |
+
jQuery.each( selectors, function(i) {
|
509 |
+
var cond_field = jQuery( '#' + prefix + '_' + selectors[i] );
|
510 |
+
|
511 |
+
own_condition = false;
|
512 |
+
parent_condition = true;
|
513 |
+
|
514 |
+
if ( typeof cond_field.parents('.um-forms-line').data('conditional') !== 'undefined' ) {
|
515 |
+
parent_condition = check_condition( cond_field.parents('.um-forms-line') );
|
516 |
+
}
|
517 |
+
|
518 |
+
var tagName = cond_field.prop("tagName").toLowerCase();
|
519 |
+
|
520 |
+
if ( tagName === 'input' ) {
|
521 |
+
var input_type = cond_field.attr('type');
|
522 |
+
if ( input_type === 'checkbox' ) {
|
523 |
+
own_condition = ( value == '1' ) ? cond_field.is(':checked') : ! cond_field.is(':checked');
|
524 |
+
} else {
|
525 |
+
own_condition = ( cond_field.val() == value );
|
526 |
+
}
|
527 |
+
} else if ( tagName === 'select' ) {
|
528 |
+
own_condition = ( cond_field.val() == value );
|
529 |
+
}
|
530 |
+
|
531 |
+
if ( own_condition && parent_condition ) {
|
532 |
+
complete_condition = true;
|
533 |
+
}
|
534 |
+
});
|
535 |
+
|
536 |
+
return complete_condition;
|
537 |
+
} else {
|
538 |
+
var tagName = condition_field.prop("tagName").toLowerCase();
|
539 |
+
|
540 |
+
if ( tagName == 'input' ) {
|
541 |
+
var input_type = condition_field.attr('type');
|
542 |
+
if ( input_type == 'checkbox' ) {
|
543 |
+
own_condition = ( value == '1' ) ? condition_field.is(':checked') : ! condition_field.is(':checked');
|
544 |
+
} else {
|
545 |
+
own_condition = ( condition_field.val() == value );
|
546 |
+
}
|
547 |
+
} else if ( tagName == 'select' ) {
|
548 |
own_condition = ( condition_field.val() == value );
|
549 |
}
|
550 |
+
|
551 |
+
return ( own_condition && parent_condition );
|
552 |
}
|
553 |
+
|
554 |
} else if ( condition === '!=' ) {
|
555 |
+
if ( conditional[0].indexOf( '||' ) !== -1 ) {
|
556 |
+
var selectors = conditional[0].split('||');
|
557 |
+
var complete_condition = false;
|
558 |
|
559 |
+
jQuery.each( selectors, function(i) {
|
560 |
+
var cond_field = jQuery( '#' + prefix + '_' + selectors[i] );
|
561 |
+
|
562 |
+
own_condition = false;
|
563 |
+
parent_condition = true;
|
564 |
+
if ( typeof cond_field.parents('.um-forms-line').data('conditional') !== 'undefined' ) {
|
565 |
+
parent_condition = check_condition( cond_field.parents('.um-forms-line') );
|
566 |
+
}
|
567 |
+
|
568 |
+
var tagName = cond_field.prop("tagName").toLowerCase();
|
569 |
+
|
570 |
+
if ( tagName === 'input' ) {
|
571 |
+
var input_type = cond_field.attr('type');
|
572 |
+
if ( input_type === 'checkbox' ) {
|
573 |
+
own_condition = ( value == '1' ) ? ! cond_field.is(':checked') : cond_field.is(':checked');
|
574 |
+
} else {
|
575 |
+
own_condition = ( cond_field.val() != value );
|
576 |
+
}
|
577 |
+
} else if ( tagName === 'select' ) {
|
578 |
+
own_condition = ( cond_field.val() != value );
|
579 |
+
}
|
580 |
+
|
581 |
+
if ( own_condition && parent_condition ) {
|
582 |
+
complete_condition = true;
|
583 |
+
}
|
584 |
+
});
|
585 |
+
|
586 |
+
return complete_condition;
|
587 |
+
} else {
|
588 |
+
var tagName = condition_field.prop("tagName").toLowerCase();
|
589 |
+
|
590 |
+
if ( tagName == 'input' ) {
|
591 |
+
var input_type = condition_field.attr('type');
|
592 |
+
if ( input_type == 'checkbox' ) {
|
593 |
+
own_condition = ( value == '1' ) ? ! condition_field.is(':checked') : condition_field.is(':checked');
|
594 |
+
} else {
|
595 |
+
own_condition = ( condition_field.val() != value );
|
596 |
+
}
|
597 |
+
} else if ( tagName == 'select' ) {
|
598 |
own_condition = ( condition_field.val() != value );
|
599 |
}
|
600 |
+
|
601 |
+
return ( own_condition && parent_condition );
|
602 |
}
|
603 |
+
|
604 |
} else if ( condition === '~' ) {
|
605 |
|
606 |
var field_id = form_line.find( form_line.data('field_type') ).data('field_id');
|
617 |
visible_options.push( condition_field.data( 'fill_' + field_id ) );
|
618 |
}
|
619 |
}
|
620 |
+
} else if ( tagName == 'select' ) {
|
621 |
+
if ( ! value && condition_field.val() ) {
|
622 |
+
visible_options = visible_options.concat( condition_field.val() );
|
623 |
+
visible_options = visible_options.filter( um_distinct );
|
624 |
+
}
|
625 |
}
|
626 |
});
|
627 |
|
642 |
lines_field.val( null );
|
643 |
lines_field.find( 'option' ).attr( 'selected', false ).prop( 'selected', false );
|
644 |
}
|
645 |
+
|
646 |
+
return ( own_condition && parent_condition );
|
647 |
+
} else if ( condition === '><' ) {
|
648 |
+
|
649 |
+
var tagName = condition_field.prop("tagName").toLowerCase();
|
650 |
+
|
651 |
+
if ( tagName == 'input' ) {
|
652 |
+
var input_type = condition_field.attr('type');
|
653 |
+
if ( input_type == 'checkbox' ) {
|
654 |
+
own_condition = condition_field.is(':checked');
|
655 |
+
}
|
656 |
+
}
|
657 |
+
|
658 |
+
return ( own_condition && parent_condition );
|
659 |
+
|
660 |
}
|
661 |
|
662 |
+
return false;
|
663 |
}
|
664 |
|
665 |
});
|
includes/admin/assets/js/um-admin-modal.js
CHANGED
@@ -23,7 +23,7 @@ function um_admin_new_modal( id, ajax, size ) {
|
|
23 |
jQuery('#' + id).show();
|
24 |
jQuery('.um-admin-modal').show();
|
25 |
|
26 |
-
jQuery('.um-admin-modal-head').append('<a href="
|
27 |
|
28 |
if ( ajax == true ) {
|
29 |
um_admin_modal_size( size );
|
@@ -97,6 +97,8 @@ function um_admin_modal_ajaxcall( act_id, arg1, arg2, arg3 ) {
|
|
97 |
in_column = jQuery('.um-col-demon-settings').data('in_column');
|
98 |
in_group = jQuery('.um-col-demon-settings').data('in_group');
|
99 |
}
|
|
|
|
|
100 |
|
101 |
jQuery.ajax({
|
102 |
url: wp.ajax.settings.url,
|
@@ -111,7 +113,8 @@ function um_admin_modal_ajaxcall( act_id, arg1, arg2, arg3 ) {
|
|
111 |
in_sub_row: in_sub_row,
|
112 |
in_column: in_column,
|
113 |
in_group: in_group,
|
114 |
-
nonce: um_admin_scripts.nonce
|
|
|
115 |
},
|
116 |
complete: function(){
|
117 |
um_admin_modal_loaded();
|
@@ -126,7 +129,6 @@ function um_admin_modal_ajaxcall( act_id, arg1, arg2, arg3 ) {
|
|
126 |
|
127 |
jQuery( "#_custom_dropdown_options_source" ).trigger('blur');
|
128 |
|
129 |
-
|
130 |
if ( jQuery('.um-admin-editor:visible').length > 0 ) {
|
131 |
|
132 |
if ( act_id == 'um_admin_edit_field_popup' ) {
|
@@ -151,6 +153,19 @@ function um_admin_modal_ajaxcall( act_id, arg1, arg2, arg3 ) {
|
|
151 |
function um_admin_modal_responsive() {
|
152 |
var required_margin = jQuery('.um-admin-modal:visible').innerHeight() / 2 + 'px';
|
153 |
jQuery('.um-admin-modal:visible').css({'margin-top': '-' + required_margin });
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
154 |
}
|
155 |
|
156 |
function um_admin_remove_modal() {
|
23 |
jQuery('#' + id).show();
|
24 |
jQuery('.um-admin-modal').show();
|
25 |
|
26 |
+
jQuery('.um-admin-modal-head').append('<a href="javascript:void(0);" data-action="UM_remove_modal" class="um-admin-modal-close"><i class="um-faicon-times"></i></a>');
|
27 |
|
28 |
if ( ajax == true ) {
|
29 |
um_admin_modal_size( size );
|
97 |
in_column = jQuery('.um-col-demon-settings').data('in_column');
|
98 |
in_group = jQuery('.um-col-demon-settings').data('in_group');
|
99 |
}
|
100 |
+
|
101 |
+
var form_mode = jQuery('input[type=hidden][id=form__um_mode]').val();
|
102 |
|
103 |
jQuery.ajax({
|
104 |
url: wp.ajax.settings.url,
|
113 |
in_sub_row: in_sub_row,
|
114 |
in_column: in_column,
|
115 |
in_group: in_group,
|
116 |
+
nonce: um_admin_scripts.nonce,
|
117 |
+
form_mode: form_mode
|
118 |
},
|
119 |
complete: function(){
|
120 |
um_admin_modal_loaded();
|
129 |
|
130 |
jQuery( "#_custom_dropdown_options_source" ).trigger('blur');
|
131 |
|
|
|
132 |
if ( jQuery('.um-admin-editor:visible').length > 0 ) {
|
133 |
|
134 |
if ( act_id == 'um_admin_edit_field_popup' ) {
|
153 |
function um_admin_modal_responsive() {
|
154 |
var required_margin = jQuery('.um-admin-modal:visible').innerHeight() / 2 + 'px';
|
155 |
jQuery('.um-admin-modal:visible').css({'margin-top': '-' + required_margin });
|
156 |
+
|
157 |
+
if ( jQuery('#UM_preview_form .um-s1').length ) {
|
158 |
+
jQuery("#UM_preview_form .um-s1").select2({
|
159 |
+
allowClear: true
|
160 |
+
});
|
161 |
+
}
|
162 |
+
|
163 |
+
if ( jQuery('#UM_preview_form .um-s2').length ) {
|
164 |
+
jQuery("#UM_preview_form .um-s2").select2({
|
165 |
+
allowClear: false,
|
166 |
+
minimumResultsForSearch: 10
|
167 |
+
});
|
168 |
+
}
|
169 |
}
|
170 |
|
171 |
function um_admin_remove_modal() {
|
includes/admin/class-admin.php
CHANGED
@@ -432,5 +432,18 @@ if ( ! class_exists( 'um\admin\Admin' ) ) {
|
|
432 |
}
|
433 |
return $parent_file;
|
434 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
435 |
}
|
436 |
}
|
432 |
}
|
433 |
return $parent_file;
|
434 |
}
|
435 |
+
|
436 |
+
|
437 |
+
/**
|
438 |
+
* @since 2.0
|
439 |
+
*
|
440 |
+
* @return core\Admin_Notices()
|
441 |
+
*/
|
442 |
+
function notices() {
|
443 |
+
if ( empty( UM()->classes['admin_notices'] ) ) {
|
444 |
+
UM()->classes['admin_notices'] = new core\Admin_Notices();
|
445 |
+
}
|
446 |
+
return UM()->classes['admin_notices'];
|
447 |
+
}
|
448 |
}
|
449 |
}
|
includes/admin/core/class-admin-ajax-hooks.php
CHANGED
@@ -27,6 +27,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Ajax_Hooks' ) ) {
|
|
27 |
add_action( 'wp_ajax_um_dynamic_modal_content', array( UM()->builder(), 'dynamic_modal_content' ) );
|
28 |
add_action( 'wp_ajax_um_populate_dropdown_options', array( UM()->builder(), 'populate_dropdown_options' ) );
|
29 |
add_action( 'wp_ajax_um_rated', array( UM()->admin_menu(), 'ultimatemember_rated' ) );
|
|
|
30 |
}
|
31 |
|
32 |
}
|
27 |
add_action( 'wp_ajax_um_dynamic_modal_content', array( UM()->builder(), 'dynamic_modal_content' ) );
|
28 |
add_action( 'wp_ajax_um_populate_dropdown_options', array( UM()->builder(), 'populate_dropdown_options' ) );
|
29 |
add_action( 'wp_ajax_um_rated', array( UM()->admin_menu(), 'ultimatemember_rated' ) );
|
30 |
+
add_action( 'wp_ajax_um_member_directory_default_filter_settings', array( UM()->member_directory(), 'default_filter_settings' ) );
|
31 |
}
|
32 |
|
33 |
}
|
includes/admin/core/class-admin-builder.php
CHANGED
@@ -54,6 +54,11 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) {
|
|
54 |
$validate = $field_attr['validate'];
|
55 |
foreach ( $validate as $post_input => $arr ) {
|
56 |
|
|
|
|
|
|
|
|
|
|
|
57 |
$mode = $arr['mode'];
|
58 |
|
59 |
switch ( $mode ) {
|
@@ -531,21 +536,21 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) {
|
|
531 |
<i class="um-icon-plus"></i>
|
532 |
<?php } else if ( isset($keyarray['icon']) && !empty( $keyarray['icon'] ) ) { ?>
|
533 |
<i class="<?php echo $keyarray['icon']; ?>"></i>
|
534 |
-
<?php } ?><?php echo $title; ?></div>
|
535 |
<?php $field_name = isset( UM()->builtin()->core_fields[$type]['name'] ) ? UM()->builtin()->core_fields[$type]['name'] : ''; ?>
|
536 |
<div class="um-admin-drag-fld-type um-field-type-<?php echo $type; ?>"><?php echo $field_name; ?></div>
|
537 |
<div class="um-admin-drag-fld-icons um-field-type-<?php echo $type; ?>">
|
538 |
|
539 |
-
<a href="javascript:void(0);" class="um-admin-tipsy-n" title="Edit" data-modal="UM_edit_field" data-modal-size="normal" data-dynamic-content="um_admin_edit_field_popup" data-arg1="<?php echo $type; ?>" data-arg2="<?php echo $this->form_id; ?>" data-arg3="<?php echo $key; ?>"><i class="um-faicon-pencil"></i></a>
|
540 |
|
541 |
-
<a href="javascript:void(0);" class="um-admin-tipsy-n um_admin_duplicate_field" title="Duplicate" data-silent_action="um_admin_duplicate_field" data-arg1="<?php echo $key; ?>" data-arg2="<?php echo $this->form_id; ?>"><i class="um-faicon-files-o"></i></a>
|
542 |
|
543 |
<?php if ( $type == 'group' ) { ?>
|
544 |
|
545 |
-
<a href="javascript:void(0);" class="um-admin-tipsy-n" title="Delete Group" data-remove_element="um-admin-drag-fld.um-field-type-group" data-silent_action="um_admin_remove_field" data-arg1="<?php echo $key; ?>" data-arg2="<?php echo $this->form_id; ?>"><i class="um-faicon-trash-o"></i></a>
|
546 |
<?php } else { ?>
|
547 |
|
548 |
-
<a href="javascript:void(0);" class="um-admin-tipsy-n" title="Delete" data-silent_action="um_admin_remove_field" data-arg1="<?php echo $key; ?>" data-arg2="<?php echo $this->form_id; ?>"><i class="um-faicon-trash-o"></i></a>
|
549 |
|
550 |
<?php } ?>
|
551 |
|
@@ -865,6 +870,13 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) {
|
|
865 |
<?php if ( UM()->builtin()->predefined_fields ) {
|
866 |
foreach ( UM()->builtin()->predefined_fields as $field_key => $array ) {
|
867 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
868 |
if ( ! isset( $array['account_only'] ) && ! isset( $array['private_use'] ) ) { ?>
|
869 |
|
870 |
<a href="javascript:void(0);" class="button" <?php disabled( in_array( $field_key, $form_fields, true ) ) ?> data-silent_action="um_admin_add_field_from_predefined" data-arg1="<?php echo esc_attr( $field_key ); ?>" data-arg2="<?php echo esc_attr( $arg2 ); ?>"><?php echo um_trim_string( stripslashes( $array['title'] ), 20 ); ?></a>
|
@@ -877,14 +889,17 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) {
|
|
877 |
|
878 |
</div>
|
879 |
|
880 |
-
<h4><?php _e('Custom Fields','ultimate-member'); ?></h4>
|
881 |
<div class="um-admin-btns">
|
882 |
|
883 |
<?php
|
884 |
if ( UM()->builtin()->custom_fields ) {
|
885 |
-
foreach ( UM()->builtin()->custom_fields as $field_key => $array ) {
|
|
|
|
|
|
|
886 |
|
887 |
-
<a href="javascript:void(0);" class="button with-icon" <?php disabled( in_array( $field_key, $form_fields, true ) ) ?> data-silent_action="um_admin_add_field_from_list" data-arg1="<?php echo esc_attr( $field_key ); ?>" data-arg2="<?php echo esc_attr( $arg2 ); ?>"><?php echo um_trim_string( stripslashes( $array['title'] ), 20 ); ?> <small>(<?php echo ucfirst( $array['type']); ?>)</small><span class="remove"></span></a>
|
888 |
|
889 |
<?php }
|
890 |
} else {
|
@@ -1038,13 +1053,15 @@ if ( ! class_exists( 'um\admin\core\Admin_Builder' ) ) {
|
|
1038 |
|
1039 |
case 'um_admin_preview_form':
|
1040 |
|
|
|
|
|
1041 |
$mode = UM()->query()->get_attr('mode', $arg1 );
|
1042 |
|
1043 |
if ( $mode == 'profile' ) {
|
1044 |
UM()->fields()->editing = true;
|
1045 |
}
|
1046 |
|
1047 |
-
$output = do_shortcode('[ultimatemember form_id='
|
1048 |
|
1049 |
break;
|
1050 |
|
54 |
$validate = $field_attr['validate'];
|
55 |
foreach ( $validate as $post_input => $arr ) {
|
56 |
|
57 |
+
$skip = apply_filters( 'um_admin_builder_skip_field_validation', false, $post_input, $array );
|
58 |
+
if ( $skip ) {
|
59 |
+
continue;
|
60 |
+
}
|
61 |
+
|
62 |
$mode = $arr['mode'];
|
63 |
|
64 |
switch ( $mode ) {
|
536 |
<i class="um-icon-plus"></i>
|
537 |
<?php } else if ( isset($keyarray['icon']) && !empty( $keyarray['icon'] ) ) { ?>
|
538 |
<i class="<?php echo $keyarray['icon']; ?>"></i>
|
539 |
+
<?php } ?><?php echo ! empty( $keyarray['title'] ) ? $keyarray['title'] : __( '(no title)', 'ultimate-member' ); ?></div>
|
540 |
<?php $field_name = isset( UM()->builtin()->core_fields[$type]['name'] ) ? UM()->builtin()->core_fields[$type]['name'] : ''; ?>
|
541 |
<div class="um-admin-drag-fld-type um-field-type-<?php echo $type; ?>"><?php echo $field_name; ?></div>
|
542 |
<div class="um-admin-drag-fld-icons um-field-type-<?php echo $type; ?>">
|
543 |
|
544 |
+
<a href="javascript:void(0);" class="um-admin-tipsy-n" title="<?php esc_attr_e( 'Edit', 'ultimate-member' ) ?>" data-modal="UM_edit_field" data-modal-size="normal" data-dynamic-content="um_admin_edit_field_popup" data-arg1="<?php echo $type; ?>" data-arg2="<?php echo $this->form_id; ?>" data-arg3="<?php echo $key; ?>"><i class="um-faicon-pencil"></i></a>
|
545 |
|
546 |
+
<a href="javascript:void(0);" class="um-admin-tipsy-n um_admin_duplicate_field" title="<?php esc_attr_e( 'Duplicate', 'ultimate-member' ) ?>" data-silent_action="um_admin_duplicate_field" data-arg1="<?php echo $key; ?>" data-arg2="<?php echo $this->form_id; ?>"><i class="um-faicon-files-o"></i></a>
|
547 |
|
548 |
<?php if ( $type == 'group' ) { ?>
|
549 |
|
550 |
+
<a href="javascript:void(0);" class="um-admin-tipsy-n" title="<?php esc_attr_e( 'Delete Group', 'ultimate-member' ) ?>" data-remove_element="um-admin-drag-fld.um-field-type-group" data-silent_action="um_admin_remove_field" data-arg1="<?php echo $key; ?>" data-arg2="<?php echo $this->form_id; ?>"><i class="um-faicon-trash-o"></i></a>
|
551 |
<?php } else { ?>
|
552 |
|
553 |
+
<a href="javascript:void(0);" class="um-admin-tipsy-n" title="<?php esc_attr_e( 'Delete', 'ultimate-member' ) ?>" data-silent_action="um_admin_remove_field" data-arg1="<?php echo $key; ?>" data-arg2="<?php echo $this->form_id; ?>"><i class="um-faicon-trash-o"></i></a>
|
554 |
|
555 |
<?php } ?>
|
556 |
|
870 |
<?php if ( UM()->builtin()->predefined_fields ) {
|
871 |
foreach ( UM()->builtin()->predefined_fields as $field_key => $array ) {
|
872 |
|
873 |
+
if ( $_POST['form_mode'] == 'profile' ) {
|
874 |
+
$restricted_fields = UM()->fields()->get_restricted_fields_for_edit();
|
875 |
+
if ( is_array( $restricted_fields ) && in_array( $field_key, $restricted_fields ) ) {
|
876 |
+
continue;
|
877 |
+
}
|
878 |
+
}
|
879 |
+
|
880 |
if ( ! isset( $array['account_only'] ) && ! isset( $array['private_use'] ) ) { ?>
|
881 |
|
882 |
<a href="javascript:void(0);" class="button" <?php disabled( in_array( $field_key, $form_fields, true ) ) ?> data-silent_action="um_admin_add_field_from_predefined" data-arg1="<?php echo esc_attr( $field_key ); ?>" data-arg2="<?php echo esc_attr( $arg2 ); ?>"><?php echo um_trim_string( stripslashes( $array['title'] ), 20 ); ?></a>
|
889 |
|
890 |
</div>
|
891 |
|
892 |
+
<h4><?php _e( 'Custom Fields', 'ultimate-member' ); ?></h4>
|
893 |
<div class="um-admin-btns">
|
894 |
|
895 |
<?php
|
896 |
if ( UM()->builtin()->custom_fields ) {
|
897 |
+
foreach ( UM()->builtin()->custom_fields as $field_key => $array ) {
|
898 |
+
if ( empty( $array['title'] ) || empty( $array['type'] ) ) {
|
899 |
+
continue;
|
900 |
+
} ?>
|
901 |
|
902 |
+
<a href="javascript:void(0);" class="button with-icon" <?php disabled( in_array( $field_key, $form_fields, true ) ) ?> data-silent_action="um_admin_add_field_from_list" data-arg1="<?php echo esc_attr( $field_key ); ?>" data-arg2="<?php echo esc_attr( $arg2 ); ?>"><?php echo um_trim_string( stripslashes( $array['title'] ), 20 ); ?> <small>(<?php echo ucfirst( $array['type'] ); ?>)</small><span class="remove"></span></a>
|
903 |
|
904 |
<?php }
|
905 |
} else {
|
1053 |
|
1054 |
case 'um_admin_preview_form':
|
1055 |
|
1056 |
+
UM()->user()->preview = true;
|
1057 |
+
|
1058 |
$mode = UM()->query()->get_attr('mode', $arg1 );
|
1059 |
|
1060 |
if ( $mode == 'profile' ) {
|
1061 |
UM()->fields()->editing = true;
|
1062 |
}
|
1063 |
|
1064 |
+
$output = do_shortcode('[ultimatemember form_id="' . $arg1 . '" /]');
|
1065 |
|
1066 |
break;
|
1067 |
|
includes/admin/core/class-admin-enqueue.php
CHANGED
@@ -128,8 +128,12 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
|
|
128 |
wp_register_script( 'um_datetime_legacy', $this->front_js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
129 |
// load a localized version for date/time
|
130 |
$locale = get_locale();
|
131 |
-
if ( $locale
|
132 |
-
|
|
|
|
|
|
|
|
|
133 |
}
|
134 |
|
135 |
wp_register_script( 'um_scripts', $this->front_js_baseurl . 'um-scripts' . $this->suffix . '.js', array( 'um_functions', 'um_crop', 'um_raty', 'select2', 'um_jquery_form', 'um_fileupload', 'um_datetime', 'um_datetime_date', 'um_datetime_time', 'um_datetime_legacy' ), ultimatemember_version, true );
|
@@ -137,7 +141,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
|
|
137 |
wp_register_script( 'um_modal', $this->front_js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'um_responsive' ), ultimatemember_version, true );
|
138 |
|
139 |
|
140 |
-
|
141 |
wp_register_style( 'um_datetime', $this->front_css_baseurl . 'pickadate/default.css', array(), ultimatemember_version );
|
142 |
wp_register_style( 'um_datetime_date', $this->front_css_baseurl . 'pickadate/default.date.css', array( 'um_datetime' ), ultimatemember_version );
|
143 |
wp_register_style( 'um_datetime_time', $this->front_css_baseurl . 'pickadate/default.time.css', array( 'um_datetime' ), ultimatemember_version );
|
@@ -152,7 +156,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
|
|
152 |
wp_register_style( 'um_profile', $this->front_css_baseurl . 'um-profile.css', array(), ultimatemember_version );
|
153 |
wp_register_style( 'um_account', $this->front_css_baseurl . 'um-account.css', array(), ultimatemember_version );
|
154 |
wp_register_style( 'um_misc', $this->front_css_baseurl . 'um-misc.css', array(), ultimatemember_version );
|
155 |
-
wp_register_style( 'um_default_css', $this->front_css_baseurl . 'um-old-default.css', array( 'um_crop', 'um_tipsy', 'um_raty', 'um_responsive', 'um_modal', 'um_styles', 'um_members', 'um_profile', 'um_account', 'um_misc', 'um_datetime_date', 'um_datetime_time', 'um_scrollbar' ), ultimatemember_version );
|
156 |
|
157 |
wp_enqueue_script( 'um_modal' );
|
158 |
wp_enqueue_style( 'um_default_css' );
|
@@ -219,7 +223,8 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
|
|
219 |
* Load Forms
|
220 |
*/
|
221 |
function load_forms() {
|
222 |
-
wp_register_style( '
|
|
|
223 |
wp_enqueue_style( 'um_admin_forms' );
|
224 |
|
225 |
wp_register_script( 'um_admin_forms', $this->js_url . 'um-admin-forms.js', array( 'jquery' ), ultimatemember_version, true );
|
@@ -389,8 +394,12 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
|
|
389 |
wp_register_script( 'um_datetime_legacy', $this->front_js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
390 |
// load a localized version for date/time
|
391 |
$locale = get_locale();
|
392 |
-
if ( $locale
|
393 |
-
|
|
|
|
|
|
|
|
|
394 |
}
|
395 |
|
396 |
wp_register_style( 'um_datetime', $this->front_css_baseurl . 'pickadate/default.css', array(), ultimatemember_version );
|
@@ -624,7 +633,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Enqueue' ) ) {
|
|
624 |
UM()->enqueue()->load_modal();
|
625 |
UM()->enqueue()->load_responsive();
|
626 |
|
627 |
-
wp_register_script( 'um_raty', um_url . 'assets/js/um-raty' . UM()->enqueue()->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
628 |
wp_register_style( 'um_raty', um_url . 'assets/css/um-raty.css', array(), ultimatemember_version );
|
629 |
|
630 |
wp_register_style( 'um_default_css', um_url . 'assets/css/um-old-default.css', '', ultimatemember_version, 'all' );
|
128 |
wp_register_script( 'um_datetime_legacy', $this->front_js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
129 |
// load a localized version for date/time
|
130 |
$locale = get_locale();
|
131 |
+
if ( $locale ) {
|
132 |
+
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
133 |
+
wp_register_script('um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
134 |
+
} elseif ( file_exists( um_path . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
135 |
+
wp_register_script('um_datetime_locale', um_url . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
136 |
+
}
|
137 |
}
|
138 |
|
139 |
wp_register_script( 'um_scripts', $this->front_js_baseurl . 'um-scripts' . $this->suffix . '.js', array( 'um_functions', 'um_crop', 'um_raty', 'select2', 'um_jquery_form', 'um_fileupload', 'um_datetime', 'um_datetime_date', 'um_datetime_time', 'um_datetime_legacy' ), ultimatemember_version, true );
|
141 |
wp_register_script( 'um_modal', $this->front_js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'um_responsive' ), ultimatemember_version, true );
|
142 |
|
143 |
|
144 |
+
wp_register_style( 'select2', $this->front_css_baseurl . 'select2/select2.min.css', array(), ultimatemember_version );
|
145 |
wp_register_style( 'um_datetime', $this->front_css_baseurl . 'pickadate/default.css', array(), ultimatemember_version );
|
146 |
wp_register_style( 'um_datetime_date', $this->front_css_baseurl . 'pickadate/default.date.css', array( 'um_datetime' ), ultimatemember_version );
|
147 |
wp_register_style( 'um_datetime_time', $this->front_css_baseurl . 'pickadate/default.time.css', array( 'um_datetime' ), ultimatemember_version );
|
156 |
wp_register_style( 'um_profile', $this->front_css_baseurl . 'um-profile.css', array(), ultimatemember_version );
|
157 |
wp_register_style( 'um_account', $this->front_css_baseurl . 'um-account.css', array(), ultimatemember_version );
|
158 |
wp_register_style( 'um_misc', $this->front_css_baseurl . 'um-misc.css', array(), ultimatemember_version );
|
159 |
+
wp_register_style( 'um_default_css', $this->front_css_baseurl . 'um-old-default.css', array( 'um_crop', 'um_tipsy', 'um_raty', 'um_responsive', 'um_modal', 'um_styles', 'um_members', 'um_profile', 'um_account', 'um_misc', 'um_datetime_date', 'um_datetime_time', 'um_scrollbar', 'select2' ), ultimatemember_version );
|
160 |
|
161 |
wp_enqueue_script( 'um_modal' );
|
162 |
wp_enqueue_style( 'um_default_css' );
|
223 |
* Load Forms
|
224 |
*/
|
225 |
function load_forms() {
|
226 |
+
wp_register_style( 'um_ui', $this->front_css_baseurl . 'jquery-ui.css', array(), ultimatemember_version );
|
227 |
+
wp_register_style( 'um_admin_forms', $this->css_url . 'um-admin-forms.css', array( 'wp-color-picker', 'um_ui' ), ultimatemember_version );
|
228 |
wp_enqueue_style( 'um_admin_forms' );
|
229 |
|
230 |
wp_register_script( 'um_admin_forms', $this->js_url . 'um-admin-forms.js', array( 'jquery' ), ultimatemember_version, true );
|
394 |
wp_register_script( 'um_datetime_legacy', $this->front_js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
395 |
// load a localized version for date/time
|
396 |
$locale = get_locale();
|
397 |
+
if ( $locale ) {
|
398 |
+
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
399 |
+
wp_register_script('um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
400 |
+
} elseif ( file_exists( um_path . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
401 |
+
wp_register_script('um_datetime_locale', um_url . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
402 |
+
}
|
403 |
}
|
404 |
|
405 |
wp_register_style( 'um_datetime', $this->front_css_baseurl . 'pickadate/default.css', array(), ultimatemember_version );
|
633 |
UM()->enqueue()->load_modal();
|
634 |
UM()->enqueue()->load_responsive();
|
635 |
|
636 |
+
wp_register_script( 'um_raty', um_url . 'assets/js/um-raty' . UM()->enqueue()->suffix . '.js', array( 'jquery', 'wp-i18n' ), ultimatemember_version, true );
|
637 |
wp_register_style( 'um_raty', um_url . 'assets/css/um-raty.css', array(), ultimatemember_version );
|
638 |
|
639 |
wp_register_style( 'um_default_css', um_url . 'assets/css/um-old-default.css', '', ultimatemember_version, 'all' );
|
includes/admin/core/class-admin-forms.php
CHANGED
@@ -411,6 +411,54 @@ if ( ! class_exists( 'um\admin\core\Admin_Forms' ) ) {
|
|
411 |
}
|
412 |
|
413 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
414 |
/**
|
415 |
* @param $field_data
|
416 |
*
|
@@ -908,8 +956,24 @@ if ( ! class_exists( 'um\admin\core\Admin_Forms' ) ) {
|
|
908 |
$for_attr = ' for="' . esc_attr( $id . '_' . $k ) . '" ';
|
909 |
$name_attr = ' name="' . $name . '[' . $k . ']" ';
|
910 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
911 |
$html .= "<label $for_attr>
|
912 |
-
<input type=\"checkbox\" " . checked( in_array( $k, $values ), true, false ) . "$id_attr $name_attr value=\"1\" $class_attr>
|
913 |
<span>$title</span>
|
914 |
</label>";
|
915 |
}
|
@@ -1154,6 +1218,88 @@ if ( ! class_exists( 'um\admin\core\Admin_Forms' ) ) {
|
|
1154 |
}
|
1155 |
|
1156 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1157 |
/**
|
1158 |
* Get field value
|
1159 |
*
|
411 |
}
|
412 |
|
413 |
|
414 |
+
/**
|
415 |
+
* Render text field
|
416 |
+
*
|
417 |
+
* @param $field_data
|
418 |
+
*
|
419 |
+
* @return bool|string
|
420 |
+
*/
|
421 |
+
function render_number( $field_data ) {
|
422 |
+
|
423 |
+
if ( empty( $field_data['id'] ) ) {
|
424 |
+
return false;
|
425 |
+
}
|
426 |
+
|
427 |
+
$id = ( ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] : '' ) . '_' . $field_data['id'];
|
428 |
+
$id_attr = ' id="' . esc_attr( $id ) . '" ';
|
429 |
+
|
430 |
+
$class = ! empty( $field_data['class'] ) ? $field_data['class'] : '';
|
431 |
+
$class .= ! empty( $field_data['size'] ) ? 'um-' . $field_data['size'] . '-field' : 'um-long-field';
|
432 |
+
$class_attr = ' class="um-forms-field ' . esc_attr( $class ) . '" ';
|
433 |
+
|
434 |
+
$data = array(
|
435 |
+
'field_id' => $field_data['id']
|
436 |
+
);
|
437 |
+
|
438 |
+
if ( ! empty( $field_data['attr'] ) && is_array( $field_data['attr'] ) ){
|
439 |
+
$data = array_merge( $data, $field_data['attr'] );
|
440 |
+
}
|
441 |
+
|
442 |
+
$data_attr = '';
|
443 |
+
foreach ( $data as $key => $value ) {
|
444 |
+
$data_attr .= ' data-' . $key . '="' . esc_attr( $value ) . '" ';
|
445 |
+
}
|
446 |
+
|
447 |
+
$placeholder_attr = ! empty( $field_data['placeholder'] ) ? ' placeholder="' . esc_attr( $field_data['placeholder'] ) . '"' : '';
|
448 |
+
|
449 |
+
$name = $field_data['id'];
|
450 |
+
$name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name;
|
451 |
+
$name_attr = ' name="' . $name . '" ';
|
452 |
+
|
453 |
+
$value = $this->get_field_value( $field_data );
|
454 |
+
$value_attr = ' value="' . esc_attr( $value ) . '" ';
|
455 |
+
|
456 |
+
$html = "<input type=\"number\" $id_attr $class_attr $name_attr $data_attr $value_attr $placeholder_attr />";
|
457 |
+
|
458 |
+
return $html;
|
459 |
+
}
|
460 |
+
|
461 |
+
|
462 |
/**
|
463 |
* @param $field_data
|
464 |
*
|
956 |
$for_attr = ' for="' . esc_attr( $id . '_' . $k ) . '" ';
|
957 |
$name_attr = ' name="' . $name . '[' . $k . ']" ';
|
958 |
|
959 |
+
$data = array(
|
960 |
+
'field_id' => $field_data['id'] . '_' . $k,
|
961 |
+
);
|
962 |
+
|
963 |
+
if ( ! empty( $field_data['data'] ) ) {
|
964 |
+
$data = array_merge( $data, $field_data['data'] );
|
965 |
+
}
|
966 |
+
|
967 |
+
$data_attr = '';
|
968 |
+
foreach ( $data as $key => $value ) {
|
969 |
+
if ( $value == 'checkbox_key' ) {
|
970 |
+
$value = $k;
|
971 |
+
}
|
972 |
+
$data_attr .= ' data-' . $key . '="' . esc_attr( $value ) . '" ';
|
973 |
+
}
|
974 |
+
|
975 |
$html .= "<label $for_attr>
|
976 |
+
<input type=\"checkbox\" " . checked( in_array( $k, $values ), true, false ) . "$id_attr $name_attr $data_attr value=\"1\" $class_attr>
|
977 |
<span>$title</span>
|
978 |
</label>";
|
979 |
}
|
1218 |
}
|
1219 |
|
1220 |
|
1221 |
+
function render_md_default_filters( $field_data ) {
|
1222 |
+
if ( empty( $field_data['id'] ) ) {
|
1223 |
+
return false;
|
1224 |
+
}
|
1225 |
+
global $post;
|
1226 |
+
|
1227 |
+
$id = ( ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] : '' ) . '_' . $field_data['id'];
|
1228 |
+
|
1229 |
+
$class = ! empty( $field_data['class'] ) ? $field_data['class'] : '';
|
1230 |
+
$class .= ! empty( $field_data['size'] ) ? $field_data['size'] : 'um-long-field';
|
1231 |
+
$class_attr = ' class="um-forms-field ' . $class . '" ';
|
1232 |
+
|
1233 |
+
$data = array(
|
1234 |
+
'field_id' => $field_data['id'],
|
1235 |
+
'id_attr' => $id,
|
1236 |
+
'member_directory' => $post->ID
|
1237 |
+
);
|
1238 |
+
|
1239 |
+
$data_attr = '';
|
1240 |
+
foreach ( $data as $key => $value ) {
|
1241 |
+
$data_attr .= ' data-' . $key . '="' . esc_attr( $value ) . '" ';
|
1242 |
+
}
|
1243 |
+
|
1244 |
+
$name = $field_data['id'];
|
1245 |
+
$name = ! empty( $this->form_data['prefix_id'] ) ? $this->form_data['prefix_id'] . '[' . $name . ']' : $name;
|
1246 |
+
$name = "{$name}[]";
|
1247 |
+
$name_attr = ' name="' . $name . '" ';
|
1248 |
+
|
1249 |
+
$values = $this->get_field_value( $field_data );
|
1250 |
+
if ( is_array( $values ) ) {
|
1251 |
+
$filters = array_keys( $values );
|
1252 |
+
}
|
1253 |
+
|
1254 |
+
$options = '';
|
1255 |
+
foreach ( $field_data['options'] as $key => $option ) {
|
1256 |
+
$options .= '<option value="' . $key . '">' . $option . '</option>';
|
1257 |
+
}
|
1258 |
+
|
1259 |
+
$html = "<input type=\"hidden\" name=\"um-gmt-offset\" /><select class=\"um-hidden-md-default-filters\" $data_attr>$options</select>";
|
1260 |
+
$html .= "<ul class=\"um-md-default-filters-list\" $data_attr>";
|
1261 |
+
|
1262 |
+
if ( ! empty( $filters ) && is_array( $filters ) ) {
|
1263 |
+
foreach ( $filters as $k => $value ) {
|
1264 |
+
|
1265 |
+
if ( ! in_array( $value, array_keys( $field_data['options'] ) ) ) {
|
1266 |
+
continue ;
|
1267 |
+
}
|
1268 |
+
|
1269 |
+
$id_attr = ' id="' . esc_attr( $id . '-' . $k ) . '" ';
|
1270 |
+
|
1271 |
+
$options = '';
|
1272 |
+
foreach ( $field_data['options'] as $key => $option ) {
|
1273 |
+
$options .= '<option value="' . $key . '" ' . selected( $key == $value, true, false ) . '>' . $option . '</option>';
|
1274 |
+
}
|
1275 |
+
|
1276 |
+
$html .= "<li class=\"um-md-default-filters-option-line\"><span class=\"um-field-wrapper\">
|
1277 |
+
<select $id_attr $name_attr $class_attr $data_attr>$options</select></span>
|
1278 |
+
<span class=\"um-field-control\"><a href=\"javascript:void(0);\" class=\"um-select-delete\">" . __( 'Remove', 'ultimate-member' ) . "</a></span><span class=\"um-field-wrapper2 um\">" . UM()->member_directory()->show_filter( $value, array( 'form_id' => $post->ID ), $values[ $value ] ) . "</span></li>";
|
1279 |
+
}
|
1280 |
+
} elseif ( ! empty( $field_data['show_default_number'] ) && is_numeric( $field_data['show_default_number'] ) && $field_data['show_default_number'] > 0 ) {
|
1281 |
+
$i = 0;
|
1282 |
+
while ( $i < $field_data['show_default_number'] ) {
|
1283 |
+
$id_attr = ' id="' . $id . '-' . $i . '" ';
|
1284 |
+
|
1285 |
+
$options = '';
|
1286 |
+
foreach ( $field_data['options'] as $key => $option ) {
|
1287 |
+
$options .= '<option value="' . $key . '">' . $option . '</option>';
|
1288 |
+
}
|
1289 |
+
|
1290 |
+
$html .= "<li class=\"um-md-default-filters-option-line\"><span class=\"um-field-wrapper\">
|
1291 |
+
<select $id_attr $name_attr $class_attr $data_attr>$options</select></span>
|
1292 |
+
<span class=\"um-field-control\"><a href=\"javascript:void(0);\" class=\"um-select-delete\">" . __( 'Remove', 'ultimate-member' ) . "</a></span></li>";
|
1293 |
+
|
1294 |
+
$i++;
|
1295 |
+
}
|
1296 |
+
}
|
1297 |
+
|
1298 |
+
$html .= "</ul><a href=\"javascript:void(0);\" class=\"button button-primary um-md-default-filters-add-option\" data-name=\"$name\">{$field_data['add_text']}</a>";
|
1299 |
+
|
1300 |
+
return $html;
|
1301 |
+
}
|
1302 |
+
|
1303 |
/**
|
1304 |
* Get field value
|
1305 |
*
|
includes/admin/core/class-admin-metabox.php
CHANGED
@@ -41,6 +41,8 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) {
|
|
41 |
|
42 |
add_filter( 'um_builtin_validation_types_continue_loop', array( &$this, 'validation_types_continue_loop' ), 1, 4 );
|
43 |
add_filter( 'um_restrict_content_hide_metabox', array( &$this, 'hide_metabox_restrict_content_shop' ), 10, 1 );
|
|
|
|
|
44 |
}
|
45 |
|
46 |
|
@@ -776,6 +778,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) {
|
|
776 |
*/
|
777 |
function add_metabox_directory() {
|
778 |
add_meta_box( 'um-admin-form-general', __( 'General Options', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
|
|
779 |
add_meta_box( 'um-admin-form-profile', __( 'Profile Card', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
780 |
add_meta_box( 'um-admin-form-search', __( 'Search Options', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
781 |
add_meta_box( 'um-admin-form-pagination', __( 'Results & Pagination', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
@@ -1014,26 +1017,31 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) {
|
|
1014 |
*
|
1015 |
* @param $post_id
|
1016 |
* @param $post
|
1017 |
-
*
|
1018 |
-
* @return mixed
|
1019 |
*/
|
1020 |
function save_metabox_directory( $post_id, $post ) {
|
1021 |
global $wpdb;
|
1022 |
|
1023 |
// validate nonce
|
1024 |
-
if ( !isset( $_POST['um_admin_save_metabox_directory_nonce'] ) || !wp_verify_nonce( $_POST['um_admin_save_metabox_directory_nonce'], basename( __FILE__ ) ) )
|
|
|
|
|
1025 |
|
1026 |
// validate post type
|
1027 |
-
if ( $post->post_type != 'um_directory' )
|
|
|
|
|
1028 |
|
1029 |
// validate user
|
1030 |
$post_type = get_post_type_object( $post->post_type );
|
1031 |
-
if ( !current_user_can( $post_type->cap->edit_post, $post_id ) )
|
|
|
|
|
1032 |
|
1033 |
$where = array( 'ID' => $post_id );
|
1034 |
|
1035 |
-
if ( empty( $_POST['post_title'] ) )
|
1036 |
$_POST['post_title'] = 'Directory #'.$post_id;
|
|
|
1037 |
|
1038 |
$wpdb->update( $wpdb->posts, array( 'post_title' => $_POST['post_title'] ), $where );
|
1039 |
|
@@ -1043,32 +1051,50 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) {
|
|
1043 |
delete_post_meta( $post_id, '_um_reveal_fields' );
|
1044 |
delete_post_meta( $post_id, '_um_search_fields' );
|
1045 |
delete_post_meta( $post_id, '_um_roles_can_search' );
|
|
|
1046 |
delete_post_meta( $post_id, '_um_show_these_users' );
|
1047 |
|
|
|
|
|
|
|
1048 |
//save metadata
|
1049 |
foreach ( $_POST['um_metadata'] as $k => $v ) {
|
|
|
1050 |
if ( $k == '_um_show_these_users' && trim( $_POST['um_metadata'][ $k ] ) ) {
|
1051 |
$v = preg_split( '/[\r\n]+/', $v, -1, PREG_SPLIT_NO_EMPTY );
|
1052 |
}
|
|
|
1053 |
if ( strstr( $k, '_um_' ) ) {
|
|
|
1054 |
if ( $k === '_um_is_default' ) {
|
|
|
1055 |
$mode = UM()->query()->get_attr( 'mode', $post_id );
|
|
|
1056 |
if ( ! empty( $mode ) ) {
|
|
|
1057 |
$posts = $wpdb->get_col(
|
1058 |
"SELECT post_id
|
1059 |
FROM {$wpdb->postmeta}
|
1060 |
WHERE meta_key = '_um_mode' AND
|
1061 |
meta_value = 'directory'"
|
1062 |
);
|
|
|
1063 |
foreach ( $posts as $p_id ) {
|
1064 |
delete_post_meta( $p_id, '_um_is_default' );
|
1065 |
}
|
|
|
1066 |
}
|
|
|
1067 |
}
|
1068 |
|
|
|
|
|
1069 |
update_post_meta( $post_id, $k, $v );
|
|
|
1070 |
}
|
1071 |
}
|
|
|
|
|
1072 |
}
|
1073 |
|
1074 |
|
@@ -1712,6 +1738,16 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) {
|
|
1712 |
}
|
1713 |
break;
|
1714 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1715 |
case '_pretty_format':
|
1716 |
?>
|
1717 |
|
@@ -2294,9 +2330,9 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) {
|
|
2294 |
|
2295 |
<?php if ( UM()->builtin()->custom_fields ) {
|
2296 |
foreach ( UM()->builtin()->custom_fields as $field_key => $array ) {
|
2297 |
-
if ( in_array( $array['type'], array( 'select' ) ) && ( ! isset( $field_args['metakey'] ) || $field_args['metakey'] != $array['metakey'] ) ) {
|
2298 |
-
|
2299 |
-
}
|
2300 |
}
|
2301 |
} ?>
|
2302 |
</select>
|
41 |
|
42 |
add_filter( 'um_builtin_validation_types_continue_loop', array( &$this, 'validation_types_continue_loop' ), 1, 4 );
|
43 |
add_filter( 'um_restrict_content_hide_metabox', array( &$this, 'hide_metabox_restrict_content_shop' ), 10, 1 );
|
44 |
+
|
45 |
+
add_filter( 'um_member_directory_meta_value_before_save', array( UM()->member_directory(), 'before_save_data' ), 10, 3 );
|
46 |
}
|
47 |
|
48 |
|
778 |
*/
|
779 |
function add_metabox_directory() {
|
780 |
add_meta_box( 'um-admin-form-general', __( 'General Options', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
781 |
+
add_meta_box( 'um-admin-form-sorting', __( 'Sorting', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
782 |
add_meta_box( 'um-admin-form-profile', __( 'Profile Card', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
783 |
add_meta_box( 'um-admin-form-search', __( 'Search Options', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
784 |
add_meta_box( 'um-admin-form-pagination', __( 'Results & Pagination', 'ultimate-member' ), array( &$this, 'load_metabox_directory' ), 'um_directory', 'normal', 'default' );
|
1017 |
*
|
1018 |
* @param $post_id
|
1019 |
* @param $post
|
|
|
|
|
1020 |
*/
|
1021 |
function save_metabox_directory( $post_id, $post ) {
|
1022 |
global $wpdb;
|
1023 |
|
1024 |
// validate nonce
|
1025 |
+
if ( ! isset( $_POST['um_admin_save_metabox_directory_nonce'] ) || ! wp_verify_nonce( $_POST['um_admin_save_metabox_directory_nonce'], basename( __FILE__ ) ) ) {
|
1026 |
+
return;
|
1027 |
+
}
|
1028 |
|
1029 |
// validate post type
|
1030 |
+
if ( $post->post_type != 'um_directory' ) {
|
1031 |
+
return;
|
1032 |
+
}
|
1033 |
|
1034 |
// validate user
|
1035 |
$post_type = get_post_type_object( $post->post_type );
|
1036 |
+
if ( ! current_user_can( $post_type->cap->edit_post, $post_id ) ) {
|
1037 |
+
return;
|
1038 |
+
}
|
1039 |
|
1040 |
$where = array( 'ID' => $post_id );
|
1041 |
|
1042 |
+
if ( empty( $_POST['post_title'] ) ) {
|
1043 |
$_POST['post_title'] = 'Directory #'.$post_id;
|
1044 |
+
}
|
1045 |
|
1046 |
$wpdb->update( $wpdb->posts, array( 'post_title' => $_POST['post_title'] ), $where );
|
1047 |
|
1051 |
delete_post_meta( $post_id, '_um_reveal_fields' );
|
1052 |
delete_post_meta( $post_id, '_um_search_fields' );
|
1053 |
delete_post_meta( $post_id, '_um_roles_can_search' );
|
1054 |
+
delete_post_meta( $post_id, '_um_roles_can_filter' );
|
1055 |
delete_post_meta( $post_id, '_um_show_these_users' );
|
1056 |
|
1057 |
+
delete_post_meta( $post_id, '_um_search_filters' );
|
1058 |
+
delete_post_meta( $post_id, '_um_search_filters_gmt' );
|
1059 |
+
|
1060 |
//save metadata
|
1061 |
foreach ( $_POST['um_metadata'] as $k => $v ) {
|
1062 |
+
|
1063 |
if ( $k == '_um_show_these_users' && trim( $_POST['um_metadata'][ $k ] ) ) {
|
1064 |
$v = preg_split( '/[\r\n]+/', $v, -1, PREG_SPLIT_NO_EMPTY );
|
1065 |
}
|
1066 |
+
|
1067 |
if ( strstr( $k, '_um_' ) ) {
|
1068 |
+
|
1069 |
if ( $k === '_um_is_default' ) {
|
1070 |
+
|
1071 |
$mode = UM()->query()->get_attr( 'mode', $post_id );
|
1072 |
+
|
1073 |
if ( ! empty( $mode ) ) {
|
1074 |
+
|
1075 |
$posts = $wpdb->get_col(
|
1076 |
"SELECT post_id
|
1077 |
FROM {$wpdb->postmeta}
|
1078 |
WHERE meta_key = '_um_mode' AND
|
1079 |
meta_value = 'directory'"
|
1080 |
);
|
1081 |
+
|
1082 |
foreach ( $posts as $p_id ) {
|
1083 |
delete_post_meta( $p_id, '_um_is_default' );
|
1084 |
}
|
1085 |
+
|
1086 |
}
|
1087 |
+
|
1088 |
}
|
1089 |
|
1090 |
+
$v = apply_filters( 'um_member_directory_meta_value_before_save', $v, $k, $post_id );
|
1091 |
+
|
1092 |
update_post_meta( $post_id, $k, $v );
|
1093 |
+
|
1094 |
}
|
1095 |
}
|
1096 |
+
|
1097 |
+
update_post_meta( $post_id, '_um_search_filters_gmt', intval( $_POST['um-gmt-offset'] ) );
|
1098 |
}
|
1099 |
|
1100 |
|
1738 |
}
|
1739 |
break;
|
1740 |
|
1741 |
+
case '_format_custom':
|
1742 |
+
?>
|
1743 |
+
|
1744 |
+
<p><label for="_format_custom"><?php _e( 'Use custom Date format', 'ultimate-member' ); ?> <?php UM()->tooltip( __( 'This option overrides "Date User-Friendly Format" option. See https://www.php.net/manual/en/function.date.php', 'ultimate-member' ) ); ?></label>
|
1745 |
+
<input type="text" name="_format_custom" id="_format_custom" value="<?php echo htmlspecialchars( $this->edit_mode_value, ENT_QUOTES ); ?>" placeholder="j M Y" />
|
1746 |
+
</p>
|
1747 |
+
|
1748 |
+
<?php
|
1749 |
+
break;
|
1750 |
+
|
1751 |
case '_pretty_format':
|
1752 |
?>
|
1753 |
|
2330 |
|
2331 |
<?php if ( UM()->builtin()->custom_fields ) {
|
2332 |
foreach ( UM()->builtin()->custom_fields as $field_key => $array ) {
|
2333 |
+
if ( in_array( $array['type'], array( 'select' ) ) && ( ! isset( $field_args['metakey'] ) || $field_args['metakey'] != $array['metakey'] ) && isset( $array['title'] ) ) { ?>
|
2334 |
+
<option value="<?php echo esc_attr( $array['metakey'] ) ?>" <?php selected( $array['metakey'], $this->edit_mode_value ) ?>><?php echo $array['title'] ?></option>
|
2335 |
+
<?php }
|
2336 |
}
|
2337 |
} ?>
|
2338 |
</select>
|
includes/admin/core/class-admin-notices.php
CHANGED
@@ -280,7 +280,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Notices' ) ) {
|
|
280 |
|
281 |
$this->add_notice( 'old_extensions', array(
|
282 |
'class' => 'error',
|
283 |
-
'message' => '<p>' . sprintf( __( '<strong>%s %s</strong> requires 2.0 extensions. You have pre 2.0 extensions installed on your site. <br /> Please update %s extensions to latest versions. For more info see this <a href="%s" target="_blank">doc</a>.', 'ultimate-member' ), ultimatemember_plugin_name, ultimatemember_version, ultimatemember_plugin_name, '
|
284 |
), 0 );
|
285 |
}
|
286 |
|
280 |
|
281 |
$this->add_notice( 'old_extensions', array(
|
282 |
'class' => 'error',
|
283 |
+
'message' => '<p>' . sprintf( __( '<strong>%s %s</strong> requires 2.0 extensions. You have pre 2.0 extensions installed on your site. <br /> Please update %s extensions to latest versions. For more info see this <a href="%s" target="_blank">doc</a>.', 'ultimate-member' ), ultimatemember_plugin_name, ultimatemember_version, ultimatemember_plugin_name, 'https://docs.ultimatemember.com/article/201-how-to-update-your-site' ) . '</p>',
|
284 |
), 0 );
|
285 |
}
|
286 |
|
includes/admin/core/class-admin-settings.php
CHANGED
@@ -88,7 +88,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) {
|
|
88 |
array(
|
89 |
'id' => 'pages_settings',
|
90 |
'type' => 'hidden',
|
91 |
-
'
|
92 |
'is_option' => false
|
93 |
)
|
94 |
);
|
@@ -699,193 +699,204 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) {
|
|
699 |
'title' => __( 'Profile', 'ultimate-member' ),
|
700 |
'fields' => array(
|
701 |
array(
|
702 |
-
'id'
|
703 |
-
'type'
|
704 |
-
'label'
|
705 |
-
'tooltip'
|
706 |
-
'default'
|
707 |
-
'options'
|
708 |
-
'size'
|
709 |
-
),
|
710 |
-
array(
|
711 |
-
'id'
|
712 |
-
'type'
|
713 |
-
'label'
|
714 |
-
'default'
|
715 |
-
'tooltip'
|
716 |
-
'size'
|
717 |
-
),
|
718 |
-
|
719 |
-
array(
|
720 |
-
'id'
|
721 |
-
'type'
|
722 |
-
'label'
|
723 |
-
'default'
|
724 |
-
'tooltip'
|
725 |
-
'size'
|
726 |
-
),
|
727 |
-
array(
|
728 |
-
'id'
|
729 |
-
'type'
|
730 |
-
'label'
|
731 |
-
'tooltip'
|
732 |
-
'default'
|
733 |
-
'options'
|
734 |
-
'field'
|
735 |
-
'label'
|
736 |
-
'off'
|
737 |
),
|
738 |
-
'size'
|
739 |
),
|
740 |
array(
|
741 |
-
'id'
|
742 |
-
'type'
|
743 |
-
'label'
|
744 |
-
'default'
|
745 |
-
'tooltip'
|
746 |
-
'size'
|
747 |
),
|
748 |
array(
|
749 |
-
'id'
|
750 |
-
'type'
|
751 |
-
'label'
|
752 |
-
'default'
|
753 |
-
'tooltip'
|
754 |
),
|
755 |
array(
|
756 |
-
'id'
|
757 |
-
'type'
|
758 |
-
'label'
|
759 |
-
'default'
|
760 |
-
'tooltip'
|
761 |
-
'conditional'
|
762 |
'size' => 'medium'
|
763 |
),
|
764 |
array(
|
765 |
-
'id'
|
766 |
-
'type'
|
767 |
-
'label'
|
768 |
-
'tooltip'
|
769 |
-
'upload_frame_title'=> __('Select Default Profile Photo', 'ultimate-member'),
|
770 |
-
'default'
|
771 |
-
'url'
|
772 |
),
|
773 |
),
|
774 |
array(
|
775 |
-
'id'
|
776 |
-
'type'
|
777 |
-
'url'
|
778 |
-
'preview'
|
779 |
-
'label'
|
780 |
-
'tooltip'
|
781 |
-
'upload_frame_title'=> __('Select Default Cover Photo', 'ultimate-member'),
|
782 |
),
|
783 |
array(
|
784 |
'id' => 'disable_profile_photo_upload',
|
785 |
'type' => 'checkbox',
|
786 |
'label' => __( 'Disable Profile Photo Upload', 'ultimate-member' ),
|
787 |
'tooltip' => __( 'Switch on/off the profile photo uploader', 'ultimate-member' ),
|
|
|
788 |
),
|
789 |
array(
|
790 |
-
'id'
|
791 |
-
'type'
|
792 |
-
'label'
|
793 |
-
'default'
|
794 |
-
'
|
795 |
-
'
|
|
|
796 |
),
|
797 |
array(
|
798 |
-
'id'
|
799 |
-
'type'
|
800 |
-
'label'
|
801 |
-
'default'
|
802 |
-
'tooltip'
|
803 |
),
|
804 |
array(
|
805 |
-
'id'
|
806 |
-
'type'
|
807 |
-
'label'
|
808 |
-
'
|
809 |
-
'
|
810 |
-
'
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
815 |
),
|
816 |
-
'conditional'
|
817 |
'size' => 'small'
|
818 |
),
|
819 |
array(
|
820 |
-
'id'
|
821 |
-
'type'
|
822 |
-
'label'
|
823 |
-
'default'
|
824 |
-
'tooltip'
|
825 |
),
|
826 |
array(
|
827 |
-
'id'
|
828 |
-
'type'
|
829 |
-
'label'
|
830 |
-
'default'
|
831 |
-
'tooltip'
|
832 |
),
|
833 |
array(
|
834 |
-
'id'
|
835 |
-
'type'
|
836 |
-
'label'
|
837 |
-
'default'
|
838 |
-
'tooltip'
|
839 |
),
|
840 |
array(
|
841 |
-
'id'
|
842 |
-
'type'
|
843 |
-
'label'
|
844 |
-
'default'
|
845 |
-
'tooltip'
|
846 |
),
|
847 |
array(
|
848 |
-
'id'
|
849 |
-
'type'
|
850 |
-
'label'
|
851 |
-
'
|
852 |
-
'tooltip' => __('Switch on/off to enable/disable support for html tags on user description.','ultimate-member'),
|
853 |
),
|
854 |
array(
|
855 |
-
'id'
|
856 |
-
'type'
|
857 |
-
'label'
|
858 |
-
'default'
|
859 |
-
'tooltip'
|
860 |
-
'conditional'
|
861 |
'size' => 'small'
|
862 |
),
|
863 |
array(
|
864 |
-
'id'
|
865 |
-
'type'
|
866 |
-
'label'
|
867 |
-
'default'
|
868 |
-
'tooltip'
|
869 |
-
'options'
|
870 |
-
'bc'
|
871 |
-
'lc'
|
872 |
),
|
873 |
-
'size'
|
874 |
),
|
875 |
array(
|
876 |
-
'id'
|
877 |
-
'type'
|
878 |
-
'label'
|
879 |
-
'default'
|
880 |
-
'tooltip'
|
881 |
),
|
882 |
array(
|
883 |
-
'id'
|
884 |
-
'type'
|
885 |
-
'label'
|
886 |
-
'default'
|
887 |
-
'tooltip'
|
888 |
-
'conditional'
|
889 |
)
|
890 |
)
|
891 |
),
|
@@ -897,89 +908,89 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) {
|
|
897 |
'title' => __( 'Registration Form', 'ultimate-member' ),
|
898 |
'fields' => array(
|
899 |
array(
|
900 |
-
'id'
|
901 |
-
'type'
|
902 |
-
'label'
|
903 |
-
'tooltip'
|
904 |
-
'default'
|
905 |
-
'options'
|
906 |
-
'size'
|
907 |
-
),
|
908 |
-
array(
|
909 |
-
'id'
|
910 |
-
'type'
|
911 |
-
'label'
|
912 |
-
'default'
|
913 |
-
'tooltip'
|
914 |
-
'size'
|
915 |
-
),
|
916 |
-
array(
|
917 |
-
'id'
|
918 |
-
'type'
|
919 |
-
'label'
|
920 |
-
'tooltip'
|
921 |
-
'default'
|
922 |
-
'options'
|
923 |
-
'center'
|
924 |
-
'left'
|
925 |
-
'right'
|
926 |
),
|
927 |
-
'size'
|
928 |
-
),
|
929 |
-
array(
|
930 |
-
'id'
|
931 |
-
'type'
|
932 |
-
'label'
|
933 |
-
'tooltip'
|
934 |
-
'default'
|
935 |
-
'options'
|
936 |
-
'field'
|
937 |
-
'label'
|
938 |
-
'off'
|
939 |
),
|
940 |
-
'size'
|
941 |
),
|
942 |
array(
|
943 |
-
'id'
|
944 |
-
'type'
|
945 |
-
'label'
|
946 |
-
'default'
|
947 |
-
'tooltip'
|
948 |
-
'size'
|
949 |
),
|
950 |
array(
|
951 |
-
'id'
|
952 |
-
'type'
|
953 |
-
'label'
|
954 |
-
'default'
|
955 |
-
'tooltip'
|
956 |
),
|
957 |
array(
|
958 |
-
'id'
|
959 |
-
'type'
|
960 |
-
'label'
|
961 |
-
'default'
|
962 |
-
'tooltip'
|
963 |
-
'conditional'
|
964 |
'size' => 'medium'
|
965 |
),
|
966 |
array(
|
967 |
-
'id'
|
968 |
-
'type'
|
969 |
-
'label'
|
970 |
-
'default'
|
971 |
-
'tooltip'
|
972 |
-
'conditional'
|
973 |
'size' => 'medium'
|
974 |
),
|
975 |
array(
|
976 |
-
'id'
|
977 |
-
'type'
|
978 |
-
'label'
|
979 |
-
'tooltip'
|
980 |
-
'default'
|
981 |
-
'options'
|
982 |
-
'size'
|
983 |
)
|
984 |
)
|
985 |
),
|
@@ -987,94 +998,94 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) {
|
|
987 |
'title' => __( 'Login Form', 'ultimate-member' ),
|
988 |
'fields' => array(
|
989 |
array(
|
990 |
-
'id'
|
991 |
-
'type'
|
992 |
-
'label'
|
993 |
-
'tooltip'
|
994 |
-
'default'
|
995 |
-
'options'
|
996 |
-
'size'
|
997 |
-
),
|
998 |
-
array(
|
999 |
-
'id'
|
1000 |
-
'type'
|
1001 |
-
'label'
|
1002 |
-
'default'
|
1003 |
-
'tooltip'
|
1004 |
-
'size'
|
1005 |
-
),
|
1006 |
-
array(
|
1007 |
-
'id'
|
1008 |
-
'type'
|
1009 |
-
'label'
|
1010 |
-
'tooltip'
|
1011 |
-
'default'
|
1012 |
-
'options'
|
1013 |
-
'center'
|
1014 |
-
'left'
|
1015 |
-
'right'
|
1016 |
),
|
1017 |
-
'size'
|
1018 |
-
),
|
1019 |
-
array(
|
1020 |
-
'id'
|
1021 |
-
'type'
|
1022 |
-
'label'
|
1023 |
-
'tooltip'
|
1024 |
-
'default'
|
1025 |
-
'options'
|
1026 |
-
'field'
|
1027 |
-
'label'
|
1028 |
-
'off'
|
1029 |
),
|
1030 |
-
'size'
|
1031 |
),
|
1032 |
array(
|
1033 |
-
'id'
|
1034 |
-
'type'
|
1035 |
-
'label'
|
1036 |
-
'default'
|
1037 |
-
'tooltip'
|
1038 |
-
'size'
|
1039 |
),
|
1040 |
array(
|
1041 |
-
'id'
|
1042 |
-
'type'
|
1043 |
-
'label'
|
1044 |
-
'default'
|
1045 |
-
'tooltip'
|
1046 |
),
|
1047 |
array(
|
1048 |
-
'id'
|
1049 |
-
'type'
|
1050 |
-
'label'
|
1051 |
-
'default'
|
1052 |
-
'tooltip'
|
1053 |
-
'conditional'
|
1054 |
'size' => 'medium'
|
1055 |
),
|
1056 |
array(
|
1057 |
-
'id'
|
1058 |
-
'type'
|
1059 |
-
'label'
|
1060 |
-
'default'
|
1061 |
-
'tooltip'
|
1062 |
-
'conditional'
|
1063 |
'size' => 'medium'
|
1064 |
),
|
1065 |
array(
|
1066 |
-
'id'
|
1067 |
-
'type'
|
1068 |
-
'label'
|
1069 |
-
'default'
|
1070 |
-
'tooltip'
|
1071 |
),
|
1072 |
array(
|
1073 |
-
'id'
|
1074 |
-
'type'
|
1075 |
-
'label'
|
1076 |
-
'default'
|
1077 |
-
'tooltip'
|
1078 |
)
|
1079 |
)
|
1080 |
)
|
@@ -1677,6 +1688,10 @@ if ( ! class_exists( 'um\admin\core\Admin_Settings' ) ) {
|
|
1677 |
$slug = str_replace( 'core_', '', $option_slug );
|
1678 |
update_post_meta( $post_id, '_um_core', $slug );
|
1679 |
}
|
|
|
|
|
|
|
|
|
1680 |
} elseif ( ! empty( $_POST['um_options']['permalink_base'] ) ) {
|
1681 |
if ( ! empty( $this->need_change_permalinks ) ) {
|
1682 |
$users = get_users( array(
|
@@ -2301,7 +2316,6 @@ Upgraded From: <?php echo get_option( 'um_last_version_upgrade', 'N
|
|
2301 |
Current URL Method: <?php echo UM()->options()->get( 'current_url_method' ). "\n"; ?>
|
2302 |
Cache User Profile: <?php if( UM()->options()->get( 'um_profile_object_cache_stop' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
2303 |
Generate Slugs on Directories: <?php if( UM()->options()->get( 'um_generate_slug_in_directory' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
2304 |
-
Rewrite Rules: <?php if( UM()->options()->get( 'um_flush_stop' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
2305 |
Force UTF-8 Encoding: <?php if( UM()->options()->get( 'um_force_utf8_strings' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
2306 |
JS/CSS Compression: <?php if ( defined('SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) { echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
2307 |
<?php if( is_multisite() ): ?>
|
88 |
array(
|
89 |
'id' => 'pages_settings',
|
90 |
'type' => 'hidden',
|
91 |
+
'value' => true,
|
92 |
'is_option' => false
|
93 |
)
|
94 |
);
|
699 |
'title' => __( 'Profile', 'ultimate-member' ),
|
700 |
'fields' => array(
|
701 |
array(
|
702 |
+
'id' => 'profile_template',
|
703 |
+
'type' => 'select',
|
704 |
+
'label' => __( 'Profile Default Template', 'ultimate-member' ),
|
705 |
+
'tooltip' => __( 'This will be the default template to output profile', 'ultimate-member' ),
|
706 |
+
'default' => um_get_metadefault( 'profile_template' ),
|
707 |
+
'options' => UM()->shortcodes()->get_templates( 'profile' ),
|
708 |
+
'size' => 'small'
|
709 |
+
),
|
710 |
+
array(
|
711 |
+
'id' => 'profile_max_width',
|
712 |
+
'type' => 'text',
|
713 |
+
'label' => __( 'Profile Maximum Width', 'ultimate-member' ),
|
714 |
+
'default' => um_get_metadefault( 'profile_max_width' ),
|
715 |
+
'tooltip' => __( 'The maximum width this shortcode can take from the page width', 'ultimate-member' ),
|
716 |
+
'size' => 'small'
|
717 |
+
),
|
718 |
+
|
719 |
+
array(
|
720 |
+
'id' => 'profile_area_max_width',
|
721 |
+
'type' => 'text',
|
722 |
+
'label' => __( 'Profile Area Maximum Width', 'ultimate-member' ),
|
723 |
+
'default' => um_get_metadefault( 'profile_area_max_width' ),
|
724 |
+
'tooltip' => __( 'The maximum width of the profile area inside profile (below profile header)', 'ultimate-member' ),
|
725 |
+
'size' => 'small'
|
726 |
+
),
|
727 |
+
array(
|
728 |
+
'id' => 'profile_icons',
|
729 |
+
'type' => 'select',
|
730 |
+
'label' => __( 'Profile Field Icons', 'ultimate-member' ),
|
731 |
+
'tooltip' => __( 'This is applicable for edit mode only', 'ultimate-member' ),
|
732 |
+
'default' => um_get_metadefault( 'profile_icons' ),
|
733 |
+
'options' => array(
|
734 |
+
'field' => __( 'Show inside text field', 'ultimate-member' ),
|
735 |
+
'label' => __( 'Show with label', 'ultimate-member' ),
|
736 |
+
'off' => __( 'Turn off', 'ultimate-member' ),
|
737 |
),
|
738 |
+
'size' => 'small'
|
739 |
),
|
740 |
array(
|
741 |
+
'id' => 'profile_primary_btn_word',
|
742 |
+
'type' => 'text',
|
743 |
+
'label' => __( 'Profile Primary Button Text','ultimate-member' ),
|
744 |
+
'default' => um_get_metadefault( 'profile_primary_btn_word' ),
|
745 |
+
'tooltip' => __( 'The text that is used for updating profile button', 'ultimate-member' ),
|
746 |
+
'size' => 'medium'
|
747 |
),
|
748 |
array(
|
749 |
+
'id' => 'profile_secondary_btn',
|
750 |
+
'type' => 'checkbox',
|
751 |
+
'label' => __( 'Profile Secondary Button', 'ultimate-member' ),
|
752 |
+
'default' => um_get_metadefault( 'profile_secondary_btn' ),
|
753 |
+
'tooltip' => __( 'Switch on/off the secondary button display in the form', 'ultimate-member' ),
|
754 |
),
|
755 |
array(
|
756 |
+
'id' => 'profile_secondary_btn_word',
|
757 |
+
'type' => 'text',
|
758 |
+
'label' => __( 'Profile Secondary Button Text', 'ultimate-member' ),
|
759 |
+
'default' => um_get_metadefault( 'profile_secondary_btn_word' ),
|
760 |
+
'tooltip' => __( 'The text that is used for cancelling update profile button', 'ultimate-member' ),
|
761 |
+
'conditional' => array( 'profile_secondary_btn', '=', 1 ),
|
762 |
'size' => 'medium'
|
763 |
),
|
764 |
array(
|
765 |
+
'id' => 'default_avatar',
|
766 |
+
'type' => 'media',
|
767 |
+
'label' => __( 'Default Profile Photo', 'ultimate-member' ),
|
768 |
+
'tooltip' => __( 'You can change the default profile picture globally here. Please make sure that the photo is 300x300px.', 'ultimate-member' ),
|
769 |
+
'upload_frame_title' => __( 'Select Default Profile Photo', 'ultimate-member' ),
|
770 |
+
'default' => array(
|
771 |
+
'url' => um_url . 'assets/img/default_avatar.jpg',
|
772 |
),
|
773 |
),
|
774 |
array(
|
775 |
+
'id' => 'default_cover',
|
776 |
+
'type' => 'media',
|
777 |
+
'url' => true,
|
778 |
+
'preview' => false,
|
779 |
+
'label' => __( 'Default Cover Photo', 'ultimate-member' ),
|
780 |
+
'tooltip' => __( 'You can change the default cover photo globally here. Please make sure that the default cover is large enough and respects the ratio you are using for cover photos.', 'ultimate-member'),
|
781 |
+
'upload_frame_title' => __( 'Select Default Cover Photo', 'ultimate-member' ),
|
782 |
),
|
783 |
array(
|
784 |
'id' => 'disable_profile_photo_upload',
|
785 |
'type' => 'checkbox',
|
786 |
'label' => __( 'Disable Profile Photo Upload', 'ultimate-member' ),
|
787 |
'tooltip' => __( 'Switch on/off the profile photo uploader', 'ultimate-member' ),
|
788 |
+
'default' => um_get_metadefault( 'disable_profile_photo_upload' ),
|
789 |
),
|
790 |
array(
|
791 |
+
'id' => 'profile_photosize',
|
792 |
+
'type' => 'select',
|
793 |
+
'label' => __( 'Profile Photo Size', 'ultimate-member' ),
|
794 |
+
'default' => um_get_metadefault( 'profile_photosize' ),
|
795 |
+
'options' => UM()->files()->get_profile_photo_size( 'photo_thumb_sizes' ),
|
796 |
+
'tooltip' => __( 'The global default of profile photo size. This can be overridden by individual form settings', 'ultimate-member' ),
|
797 |
+
'size' => 'small'
|
798 |
),
|
799 |
array(
|
800 |
+
'id' => 'profile_cover_enabled',
|
801 |
+
'type' => 'checkbox',
|
802 |
+
'label' => __( 'Profile Cover Photos', 'ultimate-member' ),
|
803 |
+
'default' => um_get_metadefault( 'profile_cover_enabled' ),
|
804 |
+
'tooltip' => __( 'Switch on/off the profile cover photos', 'ultimate-member' ),
|
805 |
),
|
806 |
array(
|
807 |
+
'id' => 'profile_coversize',
|
808 |
+
'type' => 'select',
|
809 |
+
'label' => __( 'Profile Cover Size', 'ultimate-member' ),
|
810 |
+
'default' => um_get_metadefault( 'profile_coversize' ),
|
811 |
+
'options' => UM()->files()->get_profile_photo_size( 'cover_thumb_sizes' ),
|
812 |
+
'tooltip' => __( 'The global default width of cover photo size. This can be overridden by individual form settings', 'ultimate-member' ),
|
813 |
+
'conditional' => array( 'profile_cover_enabled', '=', 1 ),
|
814 |
+
'size' => 'small'
|
815 |
+
),
|
816 |
+
array(
|
817 |
+
'id' => 'profile_cover_ratio',
|
818 |
+
'type' => 'select',
|
819 |
+
'label' => __( 'Profile Cover Ratio', 'ultimate-member' ),
|
820 |
+
'tooltip' => __( 'Choose global ratio for cover photos of profiles', 'ultimate-member' ),
|
821 |
+
'default' => um_get_metadefault( 'profile_cover_ratio' ),
|
822 |
+
'options' => array(
|
823 |
+
'1.6:1' => '1.6:1',
|
824 |
+
'2.7:1' => '2.7:1',
|
825 |
+
'2.2:1' => '2.2:1',
|
826 |
+
'3.2:1' => '3.2:1',
|
827 |
),
|
828 |
+
'conditional' => array( 'profile_cover_enabled', '=', 1 ),
|
829 |
'size' => 'small'
|
830 |
),
|
831 |
array(
|
832 |
+
'id' => 'profile_show_metaicon',
|
833 |
+
'type' => 'checkbox',
|
834 |
+
'label' => __( 'Profile Header Meta Text Icon', 'ultimate-member' ),
|
835 |
+
'default' => 0,
|
836 |
+
'tooltip' => __( 'Display field icons for related user meta fields in header or not', 'ultimate-member' ),
|
837 |
),
|
838 |
array(
|
839 |
+
'id' => 'profile_show_name',
|
840 |
+
'type' => 'checkbox',
|
841 |
+
'label' => __( 'Show display name in profile header', 'ultimate-member' ),
|
842 |
+
'default' => um_get_metadefault( 'profile_show_name' ),
|
843 |
+
'tooltip' => __( 'Switch on/off the user name on profile header', 'ultimate-member' ),
|
844 |
),
|
845 |
array(
|
846 |
+
'id' => 'profile_show_social_links',
|
847 |
+
'type' => 'checkbox',
|
848 |
+
'label' => __( 'Show social links in profile header', 'ultimate-member' ),
|
849 |
+
'default' => um_get_metadefault( 'profile_show_social_links' ),
|
850 |
+
'tooltip' => __( 'Switch on/off the social links on profile header', 'ultimate-member' ),
|
851 |
),
|
852 |
array(
|
853 |
+
'id' => 'profile_show_bio',
|
854 |
+
'type' => 'checkbox',
|
855 |
+
'label' => __( 'Show user description in header', 'ultimate-member' ),
|
856 |
+
'default' => um_get_metadefault( 'profile_show_bio' ),
|
857 |
+
'tooltip' => __( 'Switch on/off the user description on profile header', 'ultimate-member' ),
|
858 |
),
|
859 |
array(
|
860 |
+
'id' => 'profile_show_html_bio',
|
861 |
+
'type' => 'checkbox',
|
862 |
+
'label' => __( 'Enable HTML support for user description', 'ultimate-member' ),
|
863 |
+
'tooltip' => __( 'Switch on/off to enable/disable support for html tags on user description.', 'ultimate-member' ),
|
|
|
864 |
),
|
865 |
array(
|
866 |
+
'id' => 'profile_bio_maxchars',
|
867 |
+
'type' => 'text',
|
868 |
+
'label' => __( 'User description maximum chars', 'ultimate-member' ),
|
869 |
+
'default' => um_get_metadefault( 'profile_bio_maxchars' ),
|
870 |
+
'tooltip' => __( 'Maximum number of characters to allow in user description field in header.', 'ultimate-member' ),
|
871 |
+
'conditional' => array( 'profile_show_bio', '=', 1 ),
|
872 |
'size' => 'small'
|
873 |
),
|
874 |
array(
|
875 |
+
'id' => 'profile_header_menu',
|
876 |
+
'type' => 'select',
|
877 |
+
'label' => __( 'Profile Header Menu Position', 'ultimate-member' ),
|
878 |
+
'default' => um_get_metadefault( 'profile_header_menu' ),
|
879 |
+
'tooltip' => __( 'For incompatible themes, please make the menu open from left instead of bottom by default.', 'ultimate-member' ),
|
880 |
+
'options' => array(
|
881 |
+
'bc' => __( 'Bottom of Icon', 'ultimate-member' ),
|
882 |
+
'lc' => __( 'Left of Icon (right for RTL)', 'ultimate-member' ),
|
883 |
),
|
884 |
+
'size' => 'small'
|
885 |
),
|
886 |
array(
|
887 |
+
'id' => 'profile_empty_text',
|
888 |
+
'type' => 'checkbox',
|
889 |
+
'label' => __( 'Show a custom message if profile is empty', 'ultimate-member' ),
|
890 |
+
'default' => um_get_metadefault( 'profile_empty_text' ),
|
891 |
+
'tooltip' => __( 'Switch on/off the custom message that appears when the profile is empty', 'ultimate-member' ),
|
892 |
),
|
893 |
array(
|
894 |
+
'id' => 'profile_empty_text_emo',
|
895 |
+
'type' => 'checkbox',
|
896 |
+
'label' => __( 'Show the emoticon', 'ultimate-member' ),
|
897 |
+
'default' => um_get_metadefault( 'profile_empty_text_emo' ),
|
898 |
+
'tooltip' => __( 'Switch on/off the emoticon (sad face) that appears above the message', 'ultimate-member' ),
|
899 |
+
'conditional' => array( 'profile_empty_text', '=', 1 ),
|
900 |
)
|
901 |
)
|
902 |
),
|
908 |
'title' => __( 'Registration Form', 'ultimate-member' ),
|
909 |
'fields' => array(
|
910 |
array(
|
911 |
+
'id' => 'register_template',
|
912 |
+
'type' => 'select',
|
913 |
+
'label' => __( 'Registration Default Template', 'ultimate-member' ),
|
914 |
+
'tooltip' => __( 'This will be the default template to output registration', 'ultimate-member' ),
|
915 |
+
'default' => um_get_metadefault('register_template'),
|
916 |
+
'options' => UM()->shortcodes()->get_templates( 'register' ),
|
917 |
+
'size' => 'small',
|
918 |
+
),
|
919 |
+
array(
|
920 |
+
'id' => 'register_max_width',
|
921 |
+
'type' => 'text',
|
922 |
+
'label' => __( 'Registration Maximum Width', 'ultimate-member' ),
|
923 |
+
'default' => um_get_metadefault('register_max_width'),
|
924 |
+
'tooltip' => __( 'The maximum width this shortcode can take from the page width', 'ultimate-member' ),
|
925 |
+
'size' => 'small'
|
926 |
+
),
|
927 |
+
array(
|
928 |
+
'id' => 'register_align',
|
929 |
+
'type' => 'select',
|
930 |
+
'label' => __( 'Registration Shortcode Alignment', 'ultimate-member' ),
|
931 |
+
'tooltip' => __( 'The shortcode is centered by default unless you specify otherwise here', 'ultimate-member' ),
|
932 |
+
'default' => um_get_metadefault( 'register_align' ),
|
933 |
+
'options' => array(
|
934 |
+
'center' => __( 'Centered', 'ultimate-member' ),
|
935 |
+
'left' => __( 'Left aligned', 'ultimate-member' ),
|
936 |
+
'right' => __( 'Right aligned', 'ultimate-member' ),
|
937 |
),
|
938 |
+
'size' => 'small'
|
939 |
+
),
|
940 |
+
array(
|
941 |
+
'id' => 'register_icons',
|
942 |
+
'type' => 'select',
|
943 |
+
'label' => __( 'Registration Field Icons', 'ultimate-member' ),
|
944 |
+
'tooltip' => __( 'This controls the display of field icons in the registration form', 'ultimate-member' ),
|
945 |
+
'default' => um_get_metadefault( 'register_icons' ),
|
946 |
+
'options' => array(
|
947 |
+
'field' => __( 'Show inside text field', 'ultimate-member' ),
|
948 |
+
'label' => __( 'Show with label', 'ultimate-member' ),
|
949 |
+
'off' => __( 'Turn off', 'ultimate-member' ),
|
950 |
),
|
951 |
+
'size' => 'small'
|
952 |
),
|
953 |
array(
|
954 |
+
'id' => 'register_primary_btn_word',
|
955 |
+
'type' => 'text',
|
956 |
+
'label' => __( 'Registration Primary Button Text', 'ultimate-member' ),
|
957 |
+
'default' => um_get_metadefault('register_primary_btn_word'),
|
958 |
+
'tooltip' => __( 'The text that is used for primary button text', 'ultimate-member' ),
|
959 |
+
'size' => 'medium'
|
960 |
),
|
961 |
array(
|
962 |
+
'id' => 'register_secondary_btn',
|
963 |
+
'type' => 'checkbox',
|
964 |
+
'label' => __( 'Registration Secondary Button', 'ultimate-member' ),
|
965 |
+
'default' => 1,
|
966 |
+
'tooltip' => __( 'Switch on/off the secondary button display in the form', 'ultimate-member' ),
|
967 |
),
|
968 |
array(
|
969 |
+
'id' => 'register_secondary_btn_word',
|
970 |
+
'type' => 'text',
|
971 |
+
'label' => __( 'Registration Secondary Button Text', 'ultimate-member' ),
|
972 |
+
'default' => um_get_metadefault( 'register_secondary_btn_word' ),
|
973 |
+
'tooltip' => __( 'The text that is used for the secondary button text', 'ultimate-member' ),
|
974 |
+
'conditional' => array( 'register_secondary_btn', '=', 1 ),
|
975 |
'size' => 'medium'
|
976 |
),
|
977 |
array(
|
978 |
+
'id' => 'register_secondary_btn_url',
|
979 |
+
'type' => 'text',
|
980 |
+
'label' => __( 'Registration Secondary Button URL', 'ultimate-member' ),
|
981 |
+
'default' => um_get_metadefault('register_secondary_btn_url'),
|
982 |
+
'tooltip' => __( 'You can replace default link for this button by entering custom URL', 'ultimate-member' ),
|
983 |
+
'conditional' => array( 'register_secondary_btn', '=', 1 ),
|
984 |
'size' => 'medium'
|
985 |
),
|
986 |
array(
|
987 |
+
'id' => 'register_role',
|
988 |
+
'type' => 'select',
|
989 |
+
'label' => __( 'Registration Default Role', 'ultimate-member' ),
|
990 |
+
'tooltip' => __( 'This will be the default role assigned to users registering thru registration form', 'ultimate-member' ),
|
991 |
+
'default' => um_get_metadefault( 'register_role' ),
|
992 |
+
'options' => UM()->roles()->get_roles( $add_default = 'Default' ),
|
993 |
+
'size' => 'small'
|
994 |
)
|
995 |
)
|
996 |
),
|
998 |
'title' => __( 'Login Form', 'ultimate-member' ),
|
999 |
'fields' => array(
|
1000 |
array(
|
1001 |
+
'id' => 'login_template',
|
1002 |
+
'type' => 'select',
|
1003 |
+
'label' => __( 'Login Default Template', 'ultimate-member' ),
|
1004 |
+
'tooltip' => __( 'This will be the default template to output login', 'ultimate-member' ),
|
1005 |
+
'default' => um_get_metadefault( 'login_template' ),
|
1006 |
+
'options' => UM()->shortcodes()->get_templates( 'login' ),
|
1007 |
+
'size' => 'small'
|
1008 |
+
),
|
1009 |
+
array(
|
1010 |
+
'id' => 'login_max_width',
|
1011 |
+
'type' => 'text',
|
1012 |
+
'label' => __( 'Login Maximum Width', 'ultimate-member' ),
|
1013 |
+
'default' => um_get_metadefault( 'login_max_width' ),
|
1014 |
+
'tooltip' => __( 'The maximum width this shortcode can take from the page width', 'ultimate-member' ),
|
1015 |
+
'size' => 'small'
|
1016 |
+
),
|
1017 |
+
array(
|
1018 |
+
'id' => 'login_align',
|
1019 |
+
'type' => 'select',
|
1020 |
+
'label' => __( 'Login Shortcode Alignment', 'ultimate-member' ),
|
1021 |
+
'tooltip' => __( 'The shortcode is centered by default unless you specify otherwise here', 'ultimate-member' ),
|
1022 |
+
'default' => um_get_metadefault( 'login_align' ),
|
1023 |
+
'options' => array(
|
1024 |
+
'center' => __( 'Centered', 'ultimate-member' ),
|
1025 |
+
'left' => __( 'Left aligned', 'ultimate-member' ),
|
1026 |
+
'right' => __( 'Right aligned', 'ultimate-member' ),
|
1027 |
),
|
1028 |
+
'size' => 'small'
|
1029 |
+
),
|
1030 |
+
array(
|
1031 |
+
'id' => 'login_icons',
|
1032 |
+
'type' => 'select',
|
1033 |
+
'label' => __( 'Login Field Icons', 'ultimate-member' ),
|
1034 |
+
'tooltip' => __( 'This controls the display of field icons in the login form', 'ultimate-member' ),
|
1035 |
+
'default' => um_get_metadefault( 'login_icons' ),
|
1036 |
+
'options' => array(
|
1037 |
+
'field' => __( 'Show inside text field', 'ultimate-member' ),
|
1038 |
+
'label' => __( 'Show with label', 'ultimate-member' ),
|
1039 |
+
'off' => __( 'Turn off', 'ultimate-member' ),
|
1040 |
),
|
1041 |
+
'size' => 'small'
|
1042 |
),
|
1043 |
array(
|
1044 |
+
'id' => 'login_primary_btn_word',
|
1045 |
+
'type' => 'text',
|
1046 |
+
'label' => __( 'Login Primary Button Text','ultimate-member' ),
|
1047 |
+
'default' => um_get_metadefault( 'login_primary_btn_word' ),
|
1048 |
+
'tooltip' => __( 'The text that is used for primary button text', 'ultimate-member' ),
|
1049 |
+
'size' => 'medium'
|
1050 |
),
|
1051 |
array(
|
1052 |
+
'id' => 'login_secondary_btn',
|
1053 |
+
'type' => 'checkbox',
|
1054 |
+
'label' => __( 'Login Secondary Button', 'ultimate-member' ),
|
1055 |
+
'default' => 1,
|
1056 |
+
'tooltip' => __( 'Switch on/off the secondary button display in the form', 'ultimate-member' ),
|
1057 |
),
|
1058 |
array(
|
1059 |
+
'id' => 'login_secondary_btn_word',
|
1060 |
+
'type' => 'text',
|
1061 |
+
'label' => __( 'Login Secondary Button Text', 'ultimate-member' ),
|
1062 |
+
'default' => um_get_metadefault( 'login_secondary_btn_word' ),
|
1063 |
+
'tooltip' => __('The text that is used for the secondary button text', 'ultimate-member' ),
|
1064 |
+
'conditional' => array( 'login_secondary_btn', '=', 1 ),
|
1065 |
'size' => 'medium'
|
1066 |
),
|
1067 |
array(
|
1068 |
+
'id' => 'login_secondary_btn_url',
|
1069 |
+
'type' => 'text',
|
1070 |
+
'label' => __( 'Login Secondary Button URL', 'ultimate-member' ),
|
1071 |
+
'default' => um_get_metadefault( 'login_secondary_btn_url' ),
|
1072 |
+
'tooltip' => __( 'You can replace default link for this button by entering custom URL', 'ultimate-member' ),
|
1073 |
+
'conditional' => array( 'login_secondary_btn', '=', 1 ),
|
1074 |
'size' => 'medium'
|
1075 |
),
|
1076 |
array(
|
1077 |
+
'id' => 'login_forgot_pass_link',
|
1078 |
+
'type' => 'checkbox',
|
1079 |
+
'label' => __( 'Login Forgot Password Link', 'ultimate-member' ),
|
1080 |
+
'default' => 1,
|
1081 |
+
'tooltip' => __( 'Switch on/off the forgot password link in login form', 'ultimate-member' ),
|
1082 |
),
|
1083 |
array(
|
1084 |
+
'id' => 'login_show_rememberme',
|
1085 |
+
'type' => 'checkbox',
|
1086 |
+
'label' => __( 'Show "Remember Me"', 'ultimate-member' ),
|
1087 |
+
'default' => 1,
|
1088 |
+
'tooltip' => __( 'Allow users to choose If they want to stay signed in even after closing the browser. If you do not show this option, the default will be to not remember login session.', 'ultimate-member' ),
|
1089 |
)
|
1090 |
)
|
1091 |
)
|
1688 |
$slug = str_replace( 'core_', '', $option_slug );
|
1689 |
update_post_meta( $post_id, '_um_core', $slug );
|
1690 |
}
|
1691 |
+
|
1692 |
+
// reset rewrite rules after re-save pages
|
1693 |
+
UM()->rewrite()->reset_rules();
|
1694 |
+
|
1695 |
} elseif ( ! empty( $_POST['um_options']['permalink_base'] ) ) {
|
1696 |
if ( ! empty( $this->need_change_permalinks ) ) {
|
1697 |
$users = get_users( array(
|
2316 |
Current URL Method: <?php echo UM()->options()->get( 'current_url_method' ). "\n"; ?>
|
2317 |
Cache User Profile: <?php if( UM()->options()->get( 'um_profile_object_cache_stop' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
2318 |
Generate Slugs on Directories: <?php if( UM()->options()->get( 'um_generate_slug_in_directory' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
|
|
2319 |
Force UTF-8 Encoding: <?php if( UM()->options()->get( 'um_force_utf8_strings' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
2320 |
JS/CSS Compression: <?php if ( defined('SCRIPT_DEBUG' ) && SCRIPT_DEBUG ) { echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
2321 |
<?php if( is_multisite() ): ?>
|
includes/admin/core/class-admin-users.php
CHANGED
@@ -377,7 +377,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Users' ) ) {
|
|
377 |
$rolename = UM()->roles()->get_priority_user_role( get_current_user_id() );
|
378 |
$role = get_role( $rolename );
|
379 |
|
380 |
-
if( !current_user_can( 'edit_users' ) &&
|
381 |
wp_die( __( 'You do not have enough permissions to do that.', 'ultimate-member' ) );
|
382 |
}
|
383 |
|
377 |
$rolename = UM()->roles()->get_priority_user_role( get_current_user_id() );
|
378 |
$role = get_role( $rolename );
|
379 |
|
380 |
+
if ( ! current_user_can( 'edit_users' ) && ! $role->has_cap( 'edit_users' ) ) {
|
381 |
wp_die( __( 'You do not have enough permissions to do that.', 'ultimate-member' ) );
|
382 |
}
|
383 |
|
includes/admin/core/packages/2.1.0-beta1/functions.php
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
2 |
+
|
3 |
+
|
4 |
+
function um_upgrade_metadata210beta1() {
|
5 |
+
UM()->admin()->check_ajax_nonce();
|
6 |
+
|
7 |
+
um_maybe_unset_time_limit();
|
8 |
+
|
9 |
+
include 'metadata.php';
|
10 |
+
|
11 |
+
wp_send_json_success( array( 'message' => __( 'Usermeta was upgraded successfully', 'ultimate-member' ) ) );
|
12 |
+
}
|
13 |
+
|
14 |
+
|
15 |
+
function um_upgrade_memberdir210beta1() {
|
16 |
+
UM()->admin()->check_ajax_nonce();
|
17 |
+
|
18 |
+
um_maybe_unset_time_limit();
|
19 |
+
|
20 |
+
include 'member-directory.php';
|
21 |
+
|
22 |
+
update_option( 'um_last_version_upgrade', '2.1.0-beta1' );
|
23 |
+
|
24 |
+
wp_send_json_success( array( 'message' => __( 'Member directories were upgraded successfully', 'ultimate-member' ) ) );
|
25 |
+
}
|
includes/admin/core/packages/2.1.0-beta1/hooks.php
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
2 |
+
|
3 |
+
return array(
|
4 |
+
'metadata210beta1' => 'metadata210beta1',
|
5 |
+
'memberdir210beta1' => 'memberdir210beta1',
|
6 |
+
);
|
includes/admin/core/packages/2.1.0-beta1/init.php
ADDED
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) exit; ?>
|
2 |
+
|
3 |
+
|
4 |
+
<script type="text/javascript">
|
5 |
+
jQuery( document ).ready( function() {
|
6 |
+
//upgrade styles
|
7 |
+
um_add_upgrade_log( '<?php echo esc_js( __( 'Upgrade user metadata...', 'ultimate-member' ) ) ?>' );
|
8 |
+
|
9 |
+
jQuery.ajax({
|
10 |
+
url: wp.ajax.settings.url,
|
11 |
+
type: 'POST',
|
12 |
+
dataType: 'json',
|
13 |
+
data: {
|
14 |
+
action: 'um_metadata210beta1',
|
15 |
+
nonce: um_admin_scripts.nonce
|
16 |
+
},
|
17 |
+
success: function( response ) {
|
18 |
+
if ( typeof response.data != 'undefined' ) {
|
19 |
+
um_add_upgrade_log( response.data.message );
|
20 |
+
um_memberdir210beta1();
|
21 |
+
} else {
|
22 |
+
um_wrong_ajax();
|
23 |
+
}
|
24 |
+
},
|
25 |
+
error: function() {
|
26 |
+
um_something_wrong();
|
27 |
+
}
|
28 |
+
});
|
29 |
+
|
30 |
+
|
31 |
+
//clear users cache
|
32 |
+
function um_memberdir210beta1() {
|
33 |
+
um_add_upgrade_log( '<?php echo esc_js( __( 'Upgrade Member Directories...', 'ultimate-member' ) ) ?>' );
|
34 |
+
jQuery.ajax({
|
35 |
+
url: wp.ajax.settings.url,
|
36 |
+
type: 'POST',
|
37 |
+
dataType: 'json',
|
38 |
+
data: {
|
39 |
+
action: 'um_memberdir210beta1',
|
40 |
+
nonce: um_admin_scripts.nonce
|
41 |
+
},
|
42 |
+
success: function( response ) {
|
43 |
+
if ( typeof response.data != 'undefined' ) {
|
44 |
+
um_add_upgrade_log( response.data.message );
|
45 |
+
//switch to the next package
|
46 |
+
um_run_upgrade();
|
47 |
+
} else {
|
48 |
+
um_wrong_ajax();
|
49 |
+
}
|
50 |
+
},
|
51 |
+
error: function() {
|
52 |
+
um_something_wrong();
|
53 |
+
}
|
54 |
+
});
|
55 |
+
}
|
56 |
+
});
|
57 |
+
</script>
|
includes/admin/core/packages/2.1.0-beta1/member-directory.php
ADDED
@@ -0,0 +1,181 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
2 |
+
|
3 |
+
global $wpdb;
|
4 |
+
|
5 |
+
//update show messages button setting to hide messages button
|
6 |
+
$postmeta = $wpdb->get_results( "SELECT * FROM {$wpdb->postmeta} WHERE meta_key='_um_show_pm_button'", ARRAY_A );
|
7 |
+
if ( ! empty( $postmeta ) ) {
|
8 |
+
foreach ( $postmeta as $row ) {
|
9 |
+
$value = ( $row['meta_value'] == 0 ) ? 1 : 0;
|
10 |
+
update_post_meta( $row['post_id'], '_um_hide_pm_button', $value );
|
11 |
+
}
|
12 |
+
|
13 |
+
$wpdb->delete( "{$wpdb->postmeta}",
|
14 |
+
array(
|
15 |
+
'meta_value' => '_um_show_pm_button',
|
16 |
+
),
|
17 |
+
array(
|
18 |
+
'%s'
|
19 |
+
)
|
20 |
+
);
|
21 |
+
}
|
22 |
+
|
23 |
+
// Update role_select and role_radio filters to role
|
24 |
+
$postmeta = $wpdb->get_results( "SELECT * FROM {$wpdb->postmeta} WHERE meta_key='_um_search_fields'", ARRAY_A );
|
25 |
+
if ( ! empty( $postmeta ) ) {
|
26 |
+
foreach ( $postmeta as $row ) {
|
27 |
+
$meta_value = maybe_unserialize( $row['meta_value'] );
|
28 |
+
|
29 |
+
if ( is_array( $meta_value ) ) {
|
30 |
+
$update = false;
|
31 |
+
|
32 |
+
if ( false !== ( $index = array_search( 'role_select', $meta_value ) ) ) {
|
33 |
+
unset( $meta_value[ array_search( 'role_select', $meta_value ) ] );
|
34 |
+
$meta_value[] = 'role';
|
35 |
+
$update = true;
|
36 |
+
}
|
37 |
+
|
38 |
+
if ( false !== ( $index = array_search( 'role_radio', $meta_value ) ) ) {
|
39 |
+
unset( $meta_value[ array_search( 'role_radio', $meta_value ) ] );
|
40 |
+
$meta_value[] = 'role';
|
41 |
+
$update = true;
|
42 |
+
}
|
43 |
+
|
44 |
+
if ( $update ) {
|
45 |
+
update_post_meta( $row['post_id'], '_um_search_fields', array_unique( $meta_value ) );
|
46 |
+
}
|
47 |
+
}
|
48 |
+
}
|
49 |
+
}
|
50 |
+
|
51 |
+
// update member directories settings
|
52 |
+
$forms_query = new WP_Query;
|
53 |
+
$member_directories = $forms_query->query( array(
|
54 |
+
'post_type' => 'um_directory',
|
55 |
+
'posts_per_page' => -1,
|
56 |
+
'fields' => 'ids',
|
57 |
+
) );
|
58 |
+
|
59 |
+
if ( ! empty( $member_directories ) && ! is_wp_error( $member_directories ) ) {
|
60 |
+
foreach ( $member_directories as $id ) {
|
61 |
+
update_post_meta( $id, '_um_view_types', array( 'grid' ) );
|
62 |
+
update_post_meta( $id, '_um_default_view', 'grid' );
|
63 |
+
|
64 |
+
$search_enabled = get_post_meta( $id, '_um_search', true );
|
65 |
+
if ( $search_enabled ) {
|
66 |
+
$search_fields = $search_fields_old = get_post_meta( $id, '_um_search_fields', true );
|
67 |
+
if ( ! empty( $search_fields ) ) {
|
68 |
+
$can_search_roles = get_post_meta( $id, '_um_roles_can_search', true );
|
69 |
+
|
70 |
+
if ( false !== ( $last_login_key = array_search( '_um_last_login', $search_fields ) ) ) {
|
71 |
+
unset( $search_fields[ $last_login_key ] );
|
72 |
+
$search_fields[] = 'last_login';
|
73 |
+
}
|
74 |
+
|
75 |
+
if ( false !== ( $user_rating_key = array_search( 'user_rating', $search_fields ) ) ) {
|
76 |
+
unset( $search_fields[ $user_rating_key ] );
|
77 |
+
$search_fields[] = 'filter_rating';
|
78 |
+
}
|
79 |
+
|
80 |
+
$filter_fields = array_intersect( $search_fields, array_keys( UM()->member_directory()->filter_fields ) );
|
81 |
+
|
82 |
+
$general_search_fields = array_diff( $search_fields, array_keys( UM()->member_directory()->filter_fields ) );
|
83 |
+
$search_active = count( $general_search_fields ) > 0 ? 1 : 0;
|
84 |
+
update_post_meta( $id, '_um_search', $search_active );
|
85 |
+
|
86 |
+
update_post_meta( $id, '_um_filters', 1 );
|
87 |
+
update_post_meta( $id, '_um_roles_can_filter', $can_search_roles );
|
88 |
+
update_post_meta( $id, '_um_search_fields', $filter_fields );
|
89 |
+
update_post_meta( $id, '_um_search_fields_old', $search_fields_old );
|
90 |
+
} else {
|
91 |
+
update_post_meta( $id, '_um_search', 0 );
|
92 |
+
update_post_meta( $id, '_um_filters', 0 );
|
93 |
+
}
|
94 |
+
}
|
95 |
+
|
96 |
+
$default_filters = get_post_meta( $id, '_um_search_filters', true );
|
97 |
+
$default_filters_new = array();
|
98 |
+
if ( ! empty( $default_filters ) ) {
|
99 |
+
$default_filters_queries = explode( '&', $default_filters );
|
100 |
+
foreach ( $default_filters_queries as $filter_query_part ) {
|
101 |
+
$filter_query_parts = explode( '=', $filter_query_part );
|
102 |
+
|
103 |
+
$filter_key = $filter_query_parts[0];
|
104 |
+
$filter_value = $filter_query_parts[1];
|
105 |
+
|
106 |
+
$default_filters_new[ $filter_key ] = $filter_value;
|
107 |
+
}
|
108 |
+
}
|
109 |
+
|
110 |
+
update_post_meta( $id, '_um_search_filters', $default_filters_new );
|
111 |
+
update_post_meta( $id, '_um_search_filters_old', $default_filters );
|
112 |
+
|
113 |
+
update_post_meta( $id, '_um_search_old', $search_enabled );
|
114 |
+
}
|
115 |
+
}
|
116 |
+
|
117 |
+
|
118 |
+
// for user tags settings
|
119 |
+
if ( UM()->options()->get( 'members_page' ) ) {
|
120 |
+
$member_directory_id = false;
|
121 |
+
|
122 |
+
$page_id = UM()->config()->permalinks['members'];
|
123 |
+
if ( ! empty( $page_id ) ) {
|
124 |
+
$members_page = get_post( $page_id );
|
125 |
+
if ( ! empty( $members_page ) && ! is_wp_error( $members_page ) ) {
|
126 |
+
if ( ! empty( $members_page->post_content ) ) {
|
127 |
+
preg_match( '/\[ultimatemember[^\]]*?form_id\=[\'"]*?(\d+)[\'"]*?/i', $members_page->post_content, $matches );
|
128 |
+
if ( ! empty( $matches[1] ) && is_numeric( $matches[1] ) ) {
|
129 |
+
$member_directory_id = $matches[1];
|
130 |
+
}
|
131 |
+
}
|
132 |
+
}
|
133 |
+
}
|
134 |
+
|
135 |
+
if ( $member_directory_id ) {
|
136 |
+
UM()->options()->update( 'user_tags_base_directory' , $member_directory_id );
|
137 |
+
}
|
138 |
+
}
|
139 |
+
|
140 |
+
|
141 |
+
// update groups settings
|
142 |
+
$groups_query = new WP_Query;
|
143 |
+
$groups = $groups_query->query( array(
|
144 |
+
'post_type' => 'um_groups',
|
145 |
+
'posts_per_page' => -1,
|
146 |
+
'fields' => 'ids',
|
147 |
+
) );
|
148 |
+
|
149 |
+
if ( ! empty( $groups ) && ! is_wp_error( $groups ) ) {
|
150 |
+
foreach ( $groups as $id ) {
|
151 |
+
$filters_enabled = get_post_meta( $id, '_um_groups_invites_search_fields', true );
|
152 |
+
if ( ! empty( $filters_enabled ) ) {
|
153 |
+
$filters = $filters_old = get_post_meta( $id, '_um_groups_invites_fields', true );
|
154 |
+
if ( ! empty( $filters ) ) {
|
155 |
+
if ( false !== ( $last_login_key = array_search( '_um_last_login', $filters ) ) ) {
|
156 |
+
unset( $filters[ $last_login_key ] );
|
157 |
+
$filters[] = 'last_login';
|
158 |
+
}
|
159 |
+
|
160 |
+
if ( false !== ( $user_rating_key = array_search( 'user_rating', $filters ) ) ) {
|
161 |
+
unset( $filters[ $user_rating_key ] );
|
162 |
+
$filters[] = 'filter_rating';
|
163 |
+
}
|
164 |
+
|
165 |
+
$filter_fields = array_intersect( $filters, array_keys( UM()->member_directory()->filter_fields ) );
|
166 |
+
|
167 |
+
$general_search_fields = array_diff( $filters, array_keys( UM()->member_directory()->filter_fields ) );
|
168 |
+
$search_active = count( $general_search_fields ) > 0 ? 1 : 0;
|
169 |
+
|
170 |
+
update_post_meta( $id, '_um_groups_invites_fields', $filter_fields );
|
171 |
+
update_post_meta( $id, '_um_groups_invites_fields_old', $filters_old );
|
172 |
+
|
173 |
+
$search_enabled = get_post_meta( $id, '_um_groups_invites_search', true );
|
174 |
+
if ( empty( $search_enabled ) && $search_active ) {
|
175 |
+
update_post_meta( $id, '_um_groups_invites_search', true );
|
176 |
+
update_post_meta( $id, '_um_groups_invites_search_old', $search_enabled );
|
177 |
+
}
|
178 |
+
}
|
179 |
+
}
|
180 |
+
}
|
181 |
+
}
|
includes/admin/core/packages/2.1.0-beta1/metadata.php
ADDED
@@ -0,0 +1,18 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
2 |
+
|
3 |
+
global $wpdb;
|
4 |
+
|
5 |
+
$wpdb->update( "{$wpdb->usermeta}",
|
6 |
+
array(
|
7 |
+
'meta_value' => serialize( array() ),
|
8 |
+
),
|
9 |
+
array(
|
10 |
+
'meta_key' => 'um_account_secure_fields',
|
11 |
+
),
|
12 |
+
array(
|
13 |
+
'%s'
|
14 |
+
),
|
15 |
+
array(
|
16 |
+
'%s'
|
17 |
+
)
|
18 |
+
);
|
includes/admin/templates/directory/general.php
CHANGED
@@ -1,110 +1,82 @@
|
|
1 |
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
2 |
|
|
|
3 |
|
4 |
-
$
|
5 |
-
|
6 |
-
if ( strstr( $k, '_um_' ) && !is_array( $v[0] ) ) {
|
7 |
-
//print "'$k' => '" . $v[0] . "',<br />";
|
8 |
-
}
|
9 |
-
}
|
10 |
-
|
11 |
-
$roles_array = array();
|
12 |
-
|
13 |
-
foreach ( UM()->roles()->get_roles() as $key => $value ) {
|
14 |
-
$_um_roles = UM()->query()->get_meta_value( '_um_roles', $key );
|
15 |
-
if ( ! empty( $_um_roles ) )
|
16 |
-
$roles_array[] = $_um_roles;
|
17 |
-
}
|
18 |
|
19 |
$show_these_users = get_post_meta( get_the_ID(), '_um_show_these_users', true );
|
20 |
if ( $show_these_users ) {
|
21 |
$show_these_users = implode( "\n", str_replace( "\r", "", $show_these_users ) );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
} ?>
|
23 |
|
24 |
<div class="um-admin-metabox">
|
25 |
|
26 |
-
<?php
|
27 |
-
/**
|
28 |
-
* UM hook
|
29 |
-
*
|
30 |
-
* @type filter
|
31 |
-
* @title um_admin_directory_sort_users_select
|
32 |
-
* @description Extend Sort Types for Member Directory
|
33 |
-
* @input_vars
|
34 |
-
* [{"var":"$sort_types","type":"array","desc":"Sort Types"}]
|
35 |
-
* @change_log
|
36 |
-
* ["Since: 2.0"]
|
37 |
-
* @usage add_filter( 'um_admin_directory_sort_users_select', 'function_name', 10, 1 );
|
38 |
-
* @example
|
39 |
-
* <?php
|
40 |
-
* add_filter( 'um_admin_directory_sort_users_select', 'my_directory_sort_users_select', 10, 1 );
|
41 |
-
* function my_directory_sort_users_select( $sort_types ) {
|
42 |
-
* // your code here
|
43 |
-
* return $sort_types;
|
44 |
-
* }
|
45 |
-
* ?>
|
46 |
-
*/
|
47 |
-
$sort_options = apply_filters( 'um_admin_directory_sort_users_select', array(
|
48 |
-
'user_registered_desc' => __( 'New users first', 'ultimate-member' ),
|
49 |
-
'user_registered_asc' => __( 'Old users first', 'ultimate-member' ),
|
50 |
-
'last_login' => __( 'Last login', 'ultimate-member' ),
|
51 |
-
'display_name' => __( 'Display Name', 'ultimate-member' ),
|
52 |
-
'first_name' => __( 'First Name', 'ultimate-member' ),
|
53 |
-
'last_name' => __( 'Last Name', 'ultimate-member' ),
|
54 |
-
'random' => __( 'Random', 'ultimate-member' ),
|
55 |
-
'other' => __( 'Other (custom field)', 'ultimate-member' ),
|
56 |
-
) );
|
57 |
-
|
58 |
-
$fields = array(
|
59 |
array(
|
60 |
-
'id'
|
61 |
-
'type'
|
62 |
-
'value'
|
63 |
),
|
64 |
array(
|
65 |
-
'id'
|
66 |
-
'type'
|
67 |
-
'label'
|
68 |
-
'tooltip'
|
69 |
-
'options'
|
70 |
-
'
|
71 |
-
'value'
|
|
|
72 |
),
|
73 |
array(
|
74 |
-
'id'
|
75 |
-
'type'
|
76 |
-
'label'
|
77 |
-
'tooltip'
|
78 |
-
'
|
|
|
|
|
79 |
),
|
80 |
array(
|
81 |
-
'id'
|
82 |
-
'type'
|
83 |
-
'label'
|
84 |
-
'
|
|
|
|
|
|
|
85 |
),
|
86 |
array(
|
87 |
-
'id'
|
88 |
-
'type'
|
89 |
-
'label'
|
90 |
-
'tooltip'
|
91 |
-
'
|
92 |
-
'value' => UM()->query()->get_meta_value( '_um_sortby' ),
|
93 |
),
|
94 |
array(
|
95 |
-
'id'
|
96 |
-
'type'
|
97 |
-
'label'
|
98 |
-
'
|
99 |
-
'value' => UM()->query()->get_meta_value( '_um_sortby_custom', null, 'na' ),
|
100 |
-
'conditional' => array( '_um_sortby', '=', 'other' )
|
101 |
),
|
102 |
array(
|
103 |
-
'id'
|
104 |
-
'type'
|
105 |
-
'label'
|
106 |
-
'value'
|
107 |
-
)
|
108 |
);
|
109 |
|
110 |
/**
|
@@ -130,9 +102,9 @@ if ( $show_these_users ) {
|
|
130 |
$fields = apply_filters( 'um_admin_extend_directory_options_general', $fields );
|
131 |
|
132 |
UM()->admin_forms( array(
|
133 |
-
'class'
|
134 |
-
'prefix_id'
|
135 |
-
'fields'
|
136 |
) )->render_form(); ?>
|
137 |
|
138 |
<div class="um-admin-clear"></div>
|
1 |
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
2 |
|
3 |
+
global $post_id;
|
4 |
|
5 |
+
$_um_roles_value = get_post_meta( $post_id, '_um_roles', true );
|
6 |
+
$_um_roles_value = empty( $_um_roles_value ) ? array() : $_um_roles_value;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
|
8 |
$show_these_users = get_post_meta( get_the_ID(), '_um_show_these_users', true );
|
9 |
if ( $show_these_users ) {
|
10 |
$show_these_users = implode( "\n", str_replace( "\r", "", $show_these_users ) );
|
11 |
+
}
|
12 |
+
|
13 |
+
$_um_view_types_value = get_post_meta( $post_id, '_um_view_types', true );
|
14 |
+
$_um_view_types_value = empty( $_um_view_types_value ) ? array( 'grid', 'list' ) : $_um_view_types_value;
|
15 |
+
|
16 |
+
$view_types_options = array_map( function( $item ) {
|
17 |
+
return $item['title'];
|
18 |
+
}, UM()->member_directory()->view_types );
|
19 |
+
|
20 |
+
$conditional = array();
|
21 |
+
foreach ( $view_types_options as $key => $value ) {
|
22 |
+
$conditional[] = '_um_view_types_' . $key;
|
23 |
} ?>
|
24 |
|
25 |
<div class="um-admin-metabox">
|
26 |
|
27 |
+
<?php $fields = array(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
28 |
array(
|
29 |
+
'id' => '_um_mode',
|
30 |
+
'type' => 'hidden',
|
31 |
+
'value' => 'directory',
|
32 |
),
|
33 |
array(
|
34 |
+
'id' => '_um_view_types',
|
35 |
+
'type' => 'multi_checkbox',
|
36 |
+
'label' => __( 'View type(s)', 'ultimate-member' ),
|
37 |
+
'tooltip' => __( 'View type a specific parameter in the directory', 'ultimate-member' ),
|
38 |
+
'options' => $view_types_options,
|
39 |
+
'columns' => 3,
|
40 |
+
'value' => $_um_view_types_value,
|
41 |
+
'data' => array( 'fill__um_default_view' => 'checkbox_key' ),
|
42 |
),
|
43 |
array(
|
44 |
+
'id' => '_um_default_view',
|
45 |
+
'type' => 'select',
|
46 |
+
'label' => __( 'Default view type', 'ultimate-member' ),
|
47 |
+
'tooltip' => __( 'Default directory view type', 'ultimate-member' ),
|
48 |
+
'options' => $view_types_options,
|
49 |
+
'value' => UM()->query()->get_meta_value( '_um_default_view', null, 'grid' ),
|
50 |
+
'conditional' => array( implode( '|', $conditional ), '~', 1 )
|
51 |
),
|
52 |
array(
|
53 |
+
'id' => '_um_roles',
|
54 |
+
'type' => 'multi_checkbox',
|
55 |
+
'label' => __( 'User Roles to Display', 'ultimate-member' ),
|
56 |
+
'tooltip' => __( 'If you do not want to show all members, select only user roles to appear in this directory', 'ultimate-member' ),
|
57 |
+
'options' => UM()->roles()->get_roles(),
|
58 |
+
'columns' => 3,
|
59 |
+
'value' => $_um_roles_value,
|
60 |
),
|
61 |
array(
|
62 |
+
'id' => '_um_has_profile_photo',
|
63 |
+
'type' => 'checkbox',
|
64 |
+
'label' => __( 'Only show members who have uploaded a profile photo', 'ultimate-member' ),
|
65 |
+
'tooltip' => __( 'If \'Use Gravatars\' as profile photo is enabled, this option is ignored', 'ultimate-member' ),
|
66 |
+
'value' => UM()->query()->get_meta_value( '_um_has_profile_photo' ),
|
|
|
67 |
),
|
68 |
array(
|
69 |
+
'id' => '_um_has_cover_photo',
|
70 |
+
'type' => 'checkbox',
|
71 |
+
'label' => __( 'Only show members who have uploaded a cover photo', 'ultimate-member' ),
|
72 |
+
'value' => UM()->query()->get_meta_value( '_um_has_cover_photo' ),
|
|
|
|
|
73 |
),
|
74 |
array(
|
75 |
+
'id' => '_um_show_these_users',
|
76 |
+
'type' => 'textarea',
|
77 |
+
'label' => __( 'Only show specific users (Enter one username per line)', 'ultimate-member' ),
|
78 |
+
'value' => $show_these_users,
|
79 |
+
),
|
80 |
);
|
81 |
|
82 |
/**
|
102 |
$fields = apply_filters( 'um_admin_extend_directory_options_general', $fields );
|
103 |
|
104 |
UM()->admin_forms( array(
|
105 |
+
'class' => 'um-member-directory-general um-half-column',
|
106 |
+
'prefix_id' => 'um_metadata',
|
107 |
+
'fields' => $fields
|
108 |
) )->render_form(); ?>
|
109 |
|
110 |
<div class="um-admin-clear"></div>
|
includes/admin/templates/directory/pagination.php
CHANGED
@@ -3,33 +3,62 @@
|
|
3 |
|
4 |
<div class="um-admin-metabox">
|
5 |
<?php UM()->admin_forms( array(
|
6 |
-
'class'
|
7 |
-
'prefix_id'
|
8 |
-
'fields'
|
9 |
array(
|
10 |
-
'id'
|
11 |
-
'type'
|
12 |
-
'label'
|
13 |
-
'tooltip'
|
14 |
-
'value'
|
15 |
-
'
|
16 |
),
|
17 |
array(
|
18 |
-
'id'
|
19 |
-
'type'
|
20 |
-
'label'
|
21 |
-
'tooltip'
|
22 |
-
'value'
|
23 |
-
'size'
|
24 |
),
|
25 |
array(
|
26 |
-
'id'
|
27 |
-
'type'
|
28 |
-
'label'
|
29 |
-
'tooltip'
|
30 |
-
'value'
|
31 |
-
'size'
|
32 |
-
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
33 |
)
|
34 |
) )->render_form(); ?>
|
35 |
|
3 |
|
4 |
<div class="um-admin-metabox">
|
5 |
<?php UM()->admin_forms( array(
|
6 |
+
'class' => 'um-member-directory-pagination um-half-column',
|
7 |
+
'prefix_id' => 'um_metadata',
|
8 |
+
'fields' => array(
|
9 |
array(
|
10 |
+
'id' => '_um_must_search',
|
11 |
+
'type' => 'checkbox',
|
12 |
+
'label' => __( 'Show results only after search/filtration', 'ultimate-member' ),
|
13 |
+
'tooltip' => __( 'If turned on, member results will only appear after search/filter is performed', 'ultimate-member' ),
|
14 |
+
'value' => UM()->query()->get_meta_value( '_um_must_search' ),
|
15 |
+
'conditional' => array( '_um_search||_um_filters', '=', 1 ),
|
16 |
),
|
17 |
array(
|
18 |
+
'id' => '_um_max_users',
|
19 |
+
'type' => 'number',
|
20 |
+
'label' => __( 'Maximum number of profiles', 'ultimate-member' ),
|
21 |
+
'tooltip' => __( 'Use this setting to control the maximum number of profiles to appear in this directory. Leave blank to disable this limit', 'ultimate-member' ),
|
22 |
+
'value' => UM()->query()->get_meta_value( '_um_max_users', null, 'na' ),
|
23 |
+
'size' => 'small'
|
24 |
),
|
25 |
array(
|
26 |
+
'id' => '_um_profiles_per_page',
|
27 |
+
'type' => 'number',
|
28 |
+
'label' => __( 'Number of profiles per page', 'ultimate-member' ),
|
29 |
+
'tooltip' => __( 'Number of profiles to appear on page for standard users', 'ultimate-member' ),
|
30 |
+
'value' => UM()->query()->get_meta_value( '_um_profiles_per_page', null, 12 ),
|
31 |
+
'size' => 'small'
|
32 |
+
),
|
33 |
+
array(
|
34 |
+
'id' => '_um_profiles_per_page_mobile',
|
35 |
+
'type' => 'number',
|
36 |
+
'label' => __( 'Number of profiles per page (for Mobiles & Tablets)', 'ultimate-member' ),
|
37 |
+
'tooltip' => __( 'Number of profiles to appear on page for mobile users', 'ultimate-member' ),
|
38 |
+
'value' => UM()->query()->get_meta_value( '_um_profiles_per_page_mobile', null, 8 ),
|
39 |
+
'size' => 'small'
|
40 |
+
),
|
41 |
+
array(
|
42 |
+
'id' => '_um_directory_header',
|
43 |
+
'type' => 'text',
|
44 |
+
'label' => __( 'Results Text', 'ultimate-member' ),
|
45 |
+
'tooltip' => __( 'Customize the search result text . e.g. Found 3,000 Members. Leave this blank to not show result text', 'ultimate-member' ),
|
46 |
+
'value' => UM()->query()->get_meta_value('_um_directory_header', null, __( '{total_users} Members', 'ultimate-member' ) ),
|
47 |
+
),
|
48 |
+
array(
|
49 |
+
'id' => '_um_directory_header_single',
|
50 |
+
'type' => 'text',
|
51 |
+
'label' => __( 'Single Result Text', 'ultimate-member' ),
|
52 |
+
'tooltip' => __( 'Same as above but in case of 1 user found only', 'ultimate-member' ),
|
53 |
+
'value' => UM()->query()->get_meta_value('_um_directory_header_single', null, __( '{total_users} Member', 'ultimate-member' ) ),
|
54 |
+
),
|
55 |
+
array(
|
56 |
+
'id' => '_um_directory_no_users',
|
57 |
+
'type' => 'text',
|
58 |
+
'label' => __( 'Custom text if no users were found', 'ultimate-member' ),
|
59 |
+
'tooltip' => __( 'This is the text that is displayed if no users are found during a search', 'ultimate-member' ),
|
60 |
+
'value' => UM()->query()->get_meta_value('_um_directory_no_users', null, __( 'We are sorry. We cannot find any users who match your search criteria.', 'ultimate-member' ) ),
|
61 |
+
),
|
62 |
)
|
63 |
) )->render_form(); ?>
|
64 |
|
includes/admin/templates/directory/profile.php
CHANGED
@@ -12,77 +12,103 @@
|
|
12 |
$_um_tagline_fields = get_post_meta( $post_id, '_um_tagline_fields', true );
|
13 |
$_um_reveal_fields = get_post_meta( $post_id, '_um_reveal_fields', true );
|
14 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
UM()->admin_forms( array(
|
16 |
-
'class'
|
17 |
-
'prefix_id'
|
18 |
-
'fields'
|
19 |
-
array(
|
20 |
-
'id' => '_um_profile_photo',
|
21 |
-
'type' => 'checkbox',
|
22 |
-
'label' => __( 'Enable Profile Photo', 'ultimate-member' ),
|
23 |
-
'value' => UM()->query()->get_meta_value( '_um_profile_photo', null, 1 ),
|
24 |
-
),
|
25 |
-
array(
|
26 |
-
'id' => '_um_cover_photos',
|
27 |
-
'type' => 'checkbox',
|
28 |
-
'label' => __( 'Enable Cover Photo', 'ultimate-member' ),
|
29 |
-
'tooltip' => __( 'If turned on, the users cover photo will appear in the directory', 'ultimate-member' ),
|
30 |
-
'value' => UM()->query()->get_meta_value( '_um_cover_photos', null, 1 ),
|
31 |
-
),
|
32 |
-
array(
|
33 |
-
'id' => '_um_show_name',
|
34 |
-
'type' => 'checkbox',
|
35 |
-
'label' => __( 'Show display name', 'ultimate-member' ),
|
36 |
-
'value' => UM()->query()->get_meta_value( '_um_show_name', null, 1 ),
|
37 |
-
),
|
38 |
-
array(
|
39 |
-
'id' => '_um_show_tagline',
|
40 |
-
'type' => 'checkbox',
|
41 |
-
'label' => __( 'Show tagline below profile name', 'ultimate-member' ),
|
42 |
-
'value' => UM()->query()->get_meta_value( '_um_show_tagline' ),
|
43 |
-
),
|
44 |
-
array(
|
45 |
-
'id' => '_um_tagline_fields',
|
46 |
-
'type' => 'multi_selects',
|
47 |
-
'label' => __( 'Choose field(s) to display in tagline', 'ultimate-member' ),
|
48 |
-
'value' => $_um_tagline_fields,
|
49 |
-
'conditional' => array( '_um_show_tagline', '=', 1 ),
|
50 |
-
'add_text' => __( 'Add New Custom Field','ultimate-member' ),
|
51 |
-
'options' => $user_fields,
|
52 |
-
'show_default_number' => 1,
|
53 |
-
),
|
54 |
-
array(
|
55 |
-
'id' => '_um_show_userinfo',
|
56 |
-
'type' => 'checkbox',
|
57 |
-
'label' => __( 'Show extra user information below tagline?', 'ultimate-member' ),
|
58 |
-
'value' => UM()->query()->get_meta_value( '_um_show_userinfo' ),
|
59 |
-
),
|
60 |
-
array(
|
61 |
-
'id' => '_um_userinfo_animate',
|
62 |
-
'type' => 'checkbox',
|
63 |
-
'label' => __( 'Enable reveal section transition by default', 'ultimate-member' ),
|
64 |
-
'value' => UM()->query()->get_meta_value( '_um_userinfo_animate' ),
|
65 |
-
'conditional' => array( '_um_show_userinfo', '=', 1 )
|
66 |
-
),
|
67 |
-
array(
|
68 |
-
'id' => '_um_reveal_fields',
|
69 |
-
'type' => 'multi_selects',
|
70 |
-
'label' => __( 'Choose field(s) to display in reveal section', 'ultimate-member' ),
|
71 |
-
'value' => $_um_reveal_fields,
|
72 |
-
'add_text' => __( 'Add New Custom Field', 'ultimate-member' ),
|
73 |
-
'conditional' => array( '_um_show_userinfo', '=', 1 ),
|
74 |
-
'options' => $user_fields,
|
75 |
-
'show_default_number' => 1,
|
76 |
-
),
|
77 |
-
array(
|
78 |
-
'id' => '_um_show_social',
|
79 |
-
'type' => 'checkbox',
|
80 |
-
'label' => __( 'Show social connect icons', 'ultimate-member' ),
|
81 |
-
'value' => UM()->query()->get_meta_value( '_um_show_social' ),
|
82 |
-
'conditional' => array( '_um_show_userinfo', '=', 1 )
|
83 |
-
)
|
84 |
-
)
|
85 |
) )->render_form(); ?>
|
86 |
-
|
87 |
<div class="um-admin-clear"></div>
|
88 |
</div>
|
12 |
$_um_tagline_fields = get_post_meta( $post_id, '_um_tagline_fields', true );
|
13 |
$_um_reveal_fields = get_post_meta( $post_id, '_um_reveal_fields', true );
|
14 |
|
15 |
+
|
16 |
+
$fields = array(
|
17 |
+
array(
|
18 |
+
'id' => '_um_profile_photo',
|
19 |
+
'type' => 'checkbox',
|
20 |
+
'label' => __( 'Enable Profile Photo', 'ultimate-member' ),
|
21 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_photo', null, 1 ),
|
22 |
+
),
|
23 |
+
array(
|
24 |
+
'id' => '_um_cover_photos',
|
25 |
+
'type' => 'checkbox',
|
26 |
+
'label' => __( 'Enable Cover Photo', 'ultimate-member' ),
|
27 |
+
'tooltip' => __( 'If turned on, the users cover photo will appear in the directory', 'ultimate-member' ),
|
28 |
+
'value' => UM()->query()->get_meta_value( '_um_cover_photos', null, 1 ),
|
29 |
+
),
|
30 |
+
array(
|
31 |
+
'id' => '_um_show_name',
|
32 |
+
'type' => 'checkbox',
|
33 |
+
'label' => __( 'Show display name', 'ultimate-member' ),
|
34 |
+
'value' => UM()->query()->get_meta_value( '_um_show_name', null, 1 ),
|
35 |
+
),
|
36 |
+
array(
|
37 |
+
'id' => '_um_show_tagline',
|
38 |
+
'type' => 'checkbox',
|
39 |
+
'label' => __( 'Show tagline below profile name', 'ultimate-member' ),
|
40 |
+
'value' => UM()->query()->get_meta_value( '_um_show_tagline' ),
|
41 |
+
),
|
42 |
+
array(
|
43 |
+
'id' => '_um_tagline_fields',
|
44 |
+
'type' => 'multi_selects',
|
45 |
+
'label' => __( 'Choose field(s) to display in tagline', 'ultimate-member' ),
|
46 |
+
'value' => $_um_tagline_fields,
|
47 |
+
'conditional' => array( '_um_show_tagline', '=', 1 ),
|
48 |
+
'add_text' => __( 'Add New Custom Field', 'ultimate-member' ),
|
49 |
+
'options' => $user_fields,
|
50 |
+
'show_default_number' => 1,
|
51 |
+
),
|
52 |
+
array(
|
53 |
+
'id' => '_um_show_userinfo',
|
54 |
+
'type' => 'checkbox',
|
55 |
+
'label' => __( 'Show extra user information below tagline?', 'ultimate-member' ),
|
56 |
+
'value' => UM()->query()->get_meta_value( '_um_show_userinfo' ),
|
57 |
+
),
|
58 |
+
array(
|
59 |
+
'id' => '_um_reveal_fields',
|
60 |
+
'type' => 'multi_selects',
|
61 |
+
'label' => __( 'Choose field(s) to display in reveal section', 'ultimate-member' ),
|
62 |
+
'value' => $_um_reveal_fields,
|
63 |
+
'add_text' => __( 'Add New Custom Field', 'ultimate-member' ),
|
64 |
+
'conditional' => array( '_um_show_userinfo', '=', 1 ),
|
65 |
+
'options' => $user_fields,
|
66 |
+
'show_default_number' => 1,
|
67 |
+
),
|
68 |
+
array(
|
69 |
+
'id' => '_um_show_social',
|
70 |
+
'type' => 'checkbox',
|
71 |
+
'label' => __( 'Show social connect icons', 'ultimate-member' ),
|
72 |
+
'value' => UM()->query()->get_meta_value( '_um_show_social' ),
|
73 |
+
'conditional' => array( '_um_show_userinfo', '=', 1 )
|
74 |
+
),
|
75 |
+
array(
|
76 |
+
'id' => '_um_userinfo_animate',
|
77 |
+
'type' => 'checkbox',
|
78 |
+
'label' => __( 'Enable reveal section transition by default', 'ultimate-member' ),
|
79 |
+
'value' => UM()->query()->get_meta_value( '_um_userinfo_animate' ),
|
80 |
+
'conditional' => array( '_um_show_userinfo', '=', 1 )
|
81 |
+
),
|
82 |
+
);
|
83 |
+
|
84 |
+
|
85 |
+
/**
|
86 |
+
* UM hook
|
87 |
+
*
|
88 |
+
* @type filter
|
89 |
+
* @title um_admin_extend_directory_options_general
|
90 |
+
* @description Extend Directory options fields
|
91 |
+
* @input_vars
|
92 |
+
* [{"var":"$fields","type":"array","desc":"Directory options fields"}]
|
93 |
+
* @change_log
|
94 |
+
* ["Since: 2.0"]
|
95 |
+
* @usage add_filter( 'um_admin_directory_sort_users_select', 'function_name', 10, 1 );
|
96 |
+
* @example
|
97 |
+
* <?php
|
98 |
+
* add_filter( 'um_admin_directory_sort_users_select', 'my_directory_sort_users_select', 10, 1 );
|
99 |
+
* function my_directory_sort_users_select( $sort_types ) {
|
100 |
+
* // your code here
|
101 |
+
* return $sort_types;
|
102 |
+
* }
|
103 |
+
* ?>
|
104 |
+
*/
|
105 |
+
$fields = apply_filters( 'um_admin_extend_directory_options_profile', $fields );
|
106 |
+
|
107 |
UM()->admin_forms( array(
|
108 |
+
'class' => 'um-member-directory-profile um-half-column',
|
109 |
+
'prefix_id' => 'um_metadata',
|
110 |
+
'fields' => $fields,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
111 |
) )->render_form(); ?>
|
112 |
+
|
113 |
<div class="um-admin-clear"></div>
|
114 |
</div>
|
includes/admin/templates/directory/search.php
CHANGED
@@ -1,14 +1,16 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
|
|
|
|
2 |
|
3 |
|
4 |
<div class="um-admin-metabox">
|
5 |
<?php
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
|
13 |
/**
|
14 |
* UM hook
|
@@ -32,88 +34,83 @@
|
|
32 |
* ?>
|
33 |
*/
|
34 |
$custom_search = apply_filters( 'um_admin_custom_search_filters', array() );
|
35 |
-
$searchable_fields = UM()->builtin()->all_user_fields('date,time,url');
|
36 |
$searchable_fields = $searchable_fields + $custom_search;
|
37 |
$user_fields = array();
|
38 |
foreach ( $searchable_fields as $key => $arr ) {
|
39 |
-
$user_fields[$key] = isset( $arr['title'] ) ? $arr['title'] : '';
|
40 |
}
|
41 |
|
42 |
-
|
43 |
-
|
|
|
44 |
|
45 |
UM()->admin_forms( array(
|
46 |
-
'class'
|
47 |
-
'prefix_id'
|
48 |
-
'fields'
|
49 |
array(
|
50 |
-
'id'
|
51 |
-
'type'
|
52 |
-
'label'
|
53 |
-
'tooltip'
|
54 |
-
'value'
|
55 |
),
|
56 |
array(
|
57 |
-
'id'
|
58 |
-
'type'
|
59 |
-
'label'
|
60 |
-
'tooltip'
|
61 |
-
'value'
|
|
|
|
|
62 |
'conditional' => array( '_um_search', '=', 1 )
|
63 |
),
|
64 |
array(
|
65 |
-
'id'
|
66 |
-
'type'
|
67 |
-
'
|
68 |
-
'
|
69 |
-
'
|
70 |
-
'value' => $can_search_array,
|
71 |
-
'options' => UM()->roles()->get_roles(),
|
72 |
-
'conditional' => array( '_um_search', '=', 1 )
|
73 |
),
|
74 |
array(
|
75 |
-
'id'
|
76 |
-
'type'
|
77 |
-
'label'
|
78 |
-
'
|
79 |
-
'
|
80 |
-
'options'
|
81 |
-
'
|
82 |
-
'
|
83 |
),
|
84 |
array(
|
85 |
-
'id'
|
86 |
-
'type'
|
87 |
-
'label'
|
88 |
-
'
|
89 |
-
'
|
90 |
-
'
|
91 |
-
'
|
|
|
92 |
),
|
93 |
array(
|
94 |
-
'id'
|
95 |
-
'type'
|
96 |
-
'label'
|
97 |
-
'tooltip'
|
98 |
-
'value'
|
99 |
-
'conditional' => array( '
|
100 |
),
|
101 |
array(
|
102 |
-
'id'
|
103 |
-
'type'
|
104 |
-
'label'
|
105 |
-
'tooltip'
|
106 |
-
'value'
|
107 |
-
'
|
|
|
|
|
108 |
),
|
109 |
-
array(
|
110 |
-
'id' => '_um_directory_no_users',
|
111 |
-
'type' => 'text',
|
112 |
-
'label' => __( 'Custom text if no users were found', 'ultimate-member' ),
|
113 |
-
'tooltip' => __( 'This is the text that is displayed if no users are found during a search', 'ultimate-member' ),
|
114 |
-
'value' => UM()->query()->get_meta_value('_um_directory_no_users', null, __('We are sorry. We cannot find any users who match your search criteria.','ultimate-member') ),
|
115 |
-
'conditional' => array( '_um_search', '=', 1 )
|
116 |
-
)
|
117 |
)
|
118 |
) )->render_form(); ?>
|
119 |
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
2 |
+
|
3 |
+
global $post_id; ?>
|
4 |
|
5 |
|
6 |
<div class="um-admin-metabox">
|
7 |
<?php
|
8 |
+
|
9 |
+
$_um_roles_search_value = get_post_meta( $post_id, '_um_roles_can_search', true );
|
10 |
+
$_um_roles_search_value = empty( $_um_roles_search_value ) ? array() : $_um_roles_search_value;
|
11 |
+
|
12 |
+
$_um_roles_filter_value = get_post_meta( $post_id, '_um_roles_can_filter', true );
|
13 |
+
$_um_roles_filter_value = empty( $_um_roles_filter_value ) ? array() : $_um_roles_filter_value;
|
14 |
|
15 |
/**
|
16 |
* UM hook
|
34 |
* ?>
|
35 |
*/
|
36 |
$custom_search = apply_filters( 'um_admin_custom_search_filters', array() );
|
37 |
+
$searchable_fields = UM()->builtin()->all_user_fields( 'date,time,url' );
|
38 |
$searchable_fields = $searchable_fields + $custom_search;
|
39 |
$user_fields = array();
|
40 |
foreach ( $searchable_fields as $key => $arr ) {
|
41 |
+
$user_fields[ $key ] = isset( $arr['title'] ) ? $arr['title'] : '';
|
42 |
}
|
43 |
|
44 |
+
//$post_id = get_the_ID();
|
45 |
+
$_um_search_fields = get_post_meta( $post_id, '_um_search_fields', true );
|
46 |
+
$_um_search_filters = get_post_meta( $post_id, '_um_search_filters', true );
|
47 |
|
48 |
UM()->admin_forms( array(
|
49 |
+
'class' => 'um-member-directory-search um-half-column',
|
50 |
+
'prefix_id' => 'um_metadata',
|
51 |
+
'fields' => array(
|
52 |
array(
|
53 |
+
'id' => '_um_search',
|
54 |
+
'type' => 'checkbox',
|
55 |
+
'label' => __( 'Enable Search feature', 'ultimate-member' ),
|
56 |
+
'tooltip' => __( 'If turned on, users will be able to search members in this directory', 'ultimate-member' ),
|
57 |
+
'value' => UM()->query()->get_meta_value( '_um_search' ),
|
58 |
),
|
59 |
array(
|
60 |
+
'id' => '_um_roles_can_search',
|
61 |
+
'type' => 'multi_checkbox',
|
62 |
+
'label' => __( 'User Roles that can use search', 'ultimate-member' ),
|
63 |
+
'tooltip' => __( 'If you want to allow specific user roles to be able to search only', 'ultimate-member' ),
|
64 |
+
'value' => $_um_roles_search_value,
|
65 |
+
'options' => UM()->roles()->get_roles(),
|
66 |
+
'columns' => 3,
|
67 |
'conditional' => array( '_um_search', '=', 1 )
|
68 |
),
|
69 |
array(
|
70 |
+
'id' => '_um_filters',
|
71 |
+
'type' => 'checkbox',
|
72 |
+
'label' => __( 'Enable Filters feature', 'ultimate-member' ),
|
73 |
+
'tooltip' => __( 'If turned on, users will be able to filter members in this directory', 'ultimate-member' ),
|
74 |
+
'value' => UM()->query()->get_meta_value( '_um_filters' ),
|
|
|
|
|
|
|
75 |
),
|
76 |
array(
|
77 |
+
'id' => '_um_roles_can_filter',
|
78 |
+
'type' => 'multi_checkbox',
|
79 |
+
'label' => __( 'User Roles that can use filters', 'ultimate-member' ),
|
80 |
+
'tooltip' => __( 'If you want to allow specific user roles to be able to filter only', 'ultimate-member' ),
|
81 |
+
'value' => $_um_roles_filter_value,
|
82 |
+
'options' => UM()->roles()->get_roles(),
|
83 |
+
'columns' => 3,
|
84 |
+
'conditional' => array( '_um_filters', '=', 1 )
|
85 |
),
|
86 |
array(
|
87 |
+
'id' => '_um_search_fields',
|
88 |
+
'type' => 'multi_selects',
|
89 |
+
'label' => __( 'Choose filter(s) meta to enable', 'ultimate-member' ),
|
90 |
+
'value' => $_um_search_fields,
|
91 |
+
'conditional' => array( '_um_filters', '=', 1 ),
|
92 |
+
'options' => UM()->member_directory()->filter_fields,
|
93 |
+
'add_text' => __( 'Add New Custom Field', 'ultimate-member' ),
|
94 |
+
'show_default_number' => 1,
|
95 |
),
|
96 |
array(
|
97 |
+
'id' => '_um_filters_expanded',
|
98 |
+
'type' => 'checkbox',
|
99 |
+
'label' => __( 'Expand the filter bar by default', 'ultimate-member' ),
|
100 |
+
'tooltip' => __( 'If turned on, filters bar will be visible after a page loading and can be collapsed', 'ultimate-member' ),
|
101 |
+
'value' => UM()->query()->get_meta_value( '_um_filters_expanded' ),
|
102 |
+
'conditional' => array( '_um_filters', '=', 1 )
|
103 |
),
|
104 |
array(
|
105 |
+
'id' => '_um_search_filters',
|
106 |
+
'type' => 'md_default_filters',
|
107 |
+
'label' => __( 'Admin filtering', 'ultimate-member' ),
|
108 |
+
'tooltip' => __( 'Limit which users appear in the member directory e.g only display users from USA', 'ultimate-member' ),
|
109 |
+
'value' => $_um_search_filters,
|
110 |
+
'options' => UM()->member_directory()->filter_fields,
|
111 |
+
'add_text' => __( 'Add New Filter', 'ultimate-member' ),
|
112 |
+
'show_default_number' => 0,
|
113 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
114 |
)
|
115 |
) )->render_form(); ?>
|
116 |
|
includes/admin/templates/directory/sorting.php
ADDED
@@ -0,0 +1,54 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php if ( ! defined( 'ABSPATH' ) ) exit;
|
2 |
+
|
3 |
+
global $post_id;
|
4 |
+
|
5 |
+
|
6 |
+
$_um_sorting_fields = get_post_meta( $post_id, '_um_sorting_fields', true );
|
7 |
+
$_um_sorting_fields = empty( $_um_sorting_fields ) ? array() : $_um_sorting_fields; ?>
|
8 |
+
|
9 |
+
<div class="um-admin-metabox">
|
10 |
+
|
11 |
+
<?php $fields = array(
|
12 |
+
array(
|
13 |
+
'id' => '_um_sortby',
|
14 |
+
'type' => 'select',
|
15 |
+
'label' => __( 'Default sort users by', 'ultimate-member' ),
|
16 |
+
'tooltip' => __( 'Default sorting users by a specific parameter in the directory', 'ultimate-member' ),
|
17 |
+
'options' => UM()->member_directory()->default_sorting,
|
18 |
+
'value' => UM()->query()->get_meta_value( '_um_sortby' ),
|
19 |
+
),
|
20 |
+
array(
|
21 |
+
'id' => '_um_sortby_custom',
|
22 |
+
'type' => 'text',
|
23 |
+
'label' => __( 'Meta key', 'ultimate-member' ),
|
24 |
+
'tooltip' => __( 'To sort by a custom field, enter the meta key of field here', 'ultimate-member' ),
|
25 |
+
'value' => UM()->query()->get_meta_value( '_um_sortby_custom', null, 'na' ),
|
26 |
+
'conditional' => array( '_um_sortby', '=', 'other' )
|
27 |
+
),
|
28 |
+
array(
|
29 |
+
'id' => '_um_enable_sorting',
|
30 |
+
'type' => 'checkbox',
|
31 |
+
'label' => __( 'Enable custom sorting', 'ultimate-member' ),
|
32 |
+
'tooltip' => __( 'Whether to provide an ability to change the sorting on the directory page', 'ultimate-member' ),
|
33 |
+
'value' => UM()->query()->get_meta_value( '_um_enable_sorting' ),
|
34 |
+
),
|
35 |
+
array(
|
36 |
+
'id' => '_um_sorting_fields',
|
37 |
+
'type' => 'multi_selects',
|
38 |
+
'label' => __( 'Choose field(s) to enable in sorting', 'ultimate-member' ),
|
39 |
+
'value' => $_um_sorting_fields,
|
40 |
+
'options' => UM()->member_directory()->sort_fields,
|
41 |
+
'add_text' => __( 'Add New Field', 'ultimate-member' ),
|
42 |
+
'show_default_number' => 1,
|
43 |
+
'conditional' => array( '_um_enable_sorting', '=', 1 )
|
44 |
+
)
|
45 |
+
);
|
46 |
+
|
47 |
+
UM()->admin_forms( array(
|
48 |
+
'class' => 'um-member-directory-sorting um-half-column',
|
49 |
+
'prefix_id' => 'um_metadata',
|
50 |
+
'fields' => $fields
|
51 |
+
) )->render_form(); ?>
|
52 |
+
|
53 |
+
<div class="um-admin-clear"></div>
|
54 |
+
</div>
|
includes/admin/templates/form/profile_customize.php
CHANGED
@@ -16,14 +16,14 @@
|
|
16 |
'prefix_id' => 'form',
|
17 |
'fields' => array(
|
18 |
array(
|
19 |
-
'id'
|
20 |
-
'type'
|
21 |
-
'label'
|
22 |
-
'tooltip'
|
23 |
-
'value'
|
24 |
-
'options'
|
25 |
-
0
|
26 |
-
1
|
27 |
),
|
28 |
),
|
29 |
array(
|
@@ -37,93 +37,102 @@
|
|
37 |
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
38 |
),
|
39 |
array(
|
40 |
-
'id'
|
41 |
-
'type'
|
42 |
-
'label'
|
43 |
-
'value'
|
44 |
-
'options'
|
45 |
-
'conditional'
|
46 |
),
|
47 |
array(
|
48 |
-
'id'
|
49 |
-
'type'
|
50 |
-
'label'
|
51 |
-
'tooltip'
|
52 |
-
'value'
|
53 |
-
'conditional'
|
54 |
),
|
55 |
array(
|
56 |
-
'id'
|
57 |
-
'type'
|
58 |
-
'label'
|
59 |
-
'tooltip'
|
60 |
-
'value'
|
61 |
-
'conditional'
|
62 |
),
|
63 |
array(
|
64 |
-
'id'
|
65 |
-
'type'
|
66 |
-
'label'
|
67 |
-
'tooltip'
|
68 |
-
'value'
|
69 |
-
'options'
|
70 |
'field' => __( 'Show inside text field', 'ultimate-member' ),
|
71 |
'label' => __( 'Show with label', 'ultimate-member' ),
|
72 |
-
'off'
|
73 |
),
|
74 |
-
'conditional'
|
75 |
),
|
76 |
array(
|
77 |
-
'id'
|
78 |
-
'type'
|
79 |
-
'label'
|
80 |
-
'tooltip'
|
81 |
-
'value'
|
82 |
-
'conditional'
|
83 |
),
|
84 |
array(
|
85 |
-
'id'
|
86 |
-
'type'
|
87 |
-
'label'
|
88 |
-
'value'
|
89 |
-
'conditional'
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
),
|
95 |
-
|
96 |
-
'id'
|
97 |
-
'type'
|
98 |
-
'label'
|
99 |
-
'tooltip'
|
100 |
-
'value'
|
101 |
-
'conditional'
|
102 |
),
|
103 |
array(
|
104 |
-
'id'
|
105 |
-
'type'
|
106 |
-
'label'
|
107 |
-
'value'
|
108 |
-
'conditional'
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
),
|
114 |
array(
|
115 |
-
'id'
|
116 |
-
'type'
|
117 |
-
'label'
|
118 |
-
'tooltip'
|
119 |
-
'value'
|
120 |
-
'options'
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
125 |
),
|
126 |
-
'conditional'
|
127 |
),
|
128 |
array(
|
129 |
'id' => '_um_profile_disable_photo_upload',
|
@@ -139,10 +148,11 @@
|
|
139 |
),
|
140 |
array(
|
141 |
'id' => '_um_profile_photosize',
|
142 |
-
'type' => '
|
143 |
'label' => __( 'Profile Photo Size', 'ultimate-member' ),
|
144 |
'tooltip' => __( 'Set the profile photo size in pixels here', 'ultimate-member' ),
|
145 |
'value' => UM()->query()->get_meta_value( '_um_profile_photosize', null, UM()->options()->get( 'profile_photosize' ) ),
|
|
|
146 |
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
147 |
),
|
148 |
array(
|
16 |
'prefix_id' => 'form',
|
17 |
'fields' => array(
|
18 |
array(
|
19 |
+
'id' => '_um_profile_use_custom_settings',
|
20 |
+
'type' => 'select',
|
21 |
+
'label' => __( 'Apply custom settings to this form', 'ultimate-member' ),
|
22 |
+
'tooltip' => __( 'Switch to yes if you want to customize this form settings, styling & appearance', 'ultimate-member' ),
|
23 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_use_custom_settings', null, 0 ),
|
24 |
+
'options' => array(
|
25 |
+
0 => __( 'No', 'ultimate-member' ),
|
26 |
+
1 => __( 'Yes', 'ultimate-member' ),
|
27 |
),
|
28 |
),
|
29 |
array(
|
37 |
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
38 |
),
|
39 |
array(
|
40 |
+
'id' => '_um_profile_template',
|
41 |
+
'type' => 'select',
|
42 |
+
'label' => __( 'Template', 'ultimate-member' ),
|
43 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_template', null, UM()->options()->get( 'profile_template' ) ),
|
44 |
+
'options' => UM()->shortcodes()->get_templates( 'profile' ),
|
45 |
+
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
46 |
),
|
47 |
array(
|
48 |
+
'id' => '_um_profile_max_width',
|
49 |
+
'type' => 'text',
|
50 |
+
'label' => __( 'Max. Width (px)', 'ultimate-member' ),
|
51 |
+
'tooltip' => __( 'The maximum width of shortcode in pixels e.g. 600px', 'ultimate-member' ),
|
52 |
+
'value' => UM()->query()->get_meta_value('_um_profile_max_width', null, UM()->options()->get( 'profile_max_width' ) ),
|
53 |
+
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
54 |
),
|
55 |
array(
|
56 |
+
'id' => '_um_profile_area_max_width',
|
57 |
+
'type' => 'text',
|
58 |
+
'label' => __( 'Profile Area Max. Width (px)', 'ultimate-member' ),
|
59 |
+
'tooltip' => __( 'The maximum width of the profile area inside profile (below profile header)', 'ultimate-member' ),
|
60 |
+
'value' => UM()->query()->get_meta_value('_um_profile_area_max_width', null, UM()->options()->get( 'profile_area_max_width' ) ),
|
61 |
+
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
62 |
),
|
63 |
array(
|
64 |
+
'id' => '_um_profile_icons',
|
65 |
+
'type' => 'select',
|
66 |
+
'label' => __( 'Field Icons', 'ultimate-member' ),
|
67 |
+
'tooltip' => __( 'Whether to show field icons and where to show them relative to the field', 'ultimate-member' ),
|
68 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_icons', null, UM()->options()->get( 'profile_icons' ) ) ,
|
69 |
+
'options' => array(
|
70 |
'field' => __( 'Show inside text field', 'ultimate-member' ),
|
71 |
'label' => __( 'Show with label', 'ultimate-member' ),
|
72 |
+
'off' => __( 'Turn off', 'ultimate-member' )
|
73 |
),
|
74 |
+
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
75 |
),
|
76 |
array(
|
77 |
+
'id' => '_um_profile_primary_btn_word',
|
78 |
+
'type' => 'text',
|
79 |
+
'label' => __( 'Primary Button Text', 'ultimate-member' ),
|
80 |
+
'tooltip' => __( 'Customize the button text', 'ultimate-member' ),
|
81 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_primary_btn_word', null, UM()->options()->get( 'profile_primary_btn_word' ) ),
|
82 |
+
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
83 |
),
|
84 |
array(
|
85 |
+
'id' => '_um_profile_secondary_btn',
|
86 |
+
'type' => 'select',
|
87 |
+
'label' => __( 'Show Secondary Button', 'ultimate-member' ),
|
88 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_secondary_btn', null, UM()->options()->get( 'profile_secondary_btn' ) ),
|
89 |
+
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 ),
|
90 |
+
'options' => array(
|
91 |
+
0 => __( 'No', 'ultimate-member' ),
|
92 |
+
1 => __( 'Yes', 'ultimate-member' ),
|
93 |
+
),
|
94 |
),
|
95 |
+
array(
|
96 |
+
'id' => '_um_profile_secondary_btn_word',
|
97 |
+
'type' => 'text',
|
98 |
+
'label' => __( 'Secondary Button Text', 'ultimate-member' ),
|
99 |
+
'tooltip' => __( 'Customize the button text', 'ultimate-member' ),
|
100 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_secondary_btn_word', null, UM()->options()->get( 'profile_secondary_btn_word' ) ),
|
101 |
+
'conditional' => array( '_um_profile_secondary_btn', '=', 1 )
|
102 |
),
|
103 |
array(
|
104 |
+
'id' => '_um_profile_cover_enabled',
|
105 |
+
'type' => 'select',
|
106 |
+
'label' => __( 'Enable Cover Photos', 'ultimate-member' ),
|
107 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_cover_enabled', null, 1 ),
|
108 |
+
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 ),
|
109 |
+
'options' => array(
|
110 |
+
0 => __( 'No', 'ultimate-member' ),
|
111 |
+
1 => __( 'Yes', 'ultimate-member' ),
|
112 |
+
),
|
113 |
),
|
114 |
array(
|
115 |
+
'id' => '_um_profile_coversize',
|
116 |
+
'type' => 'select',
|
117 |
+
'label' => __( 'Cover Photo Size', 'ultimate-member' ),
|
118 |
+
'tooltip' => __( 'Set the profile photo size in pixels here', 'ultimate-member' ),
|
119 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_coversize', null, UM()->options()->get( 'profile_coversize' ) ),
|
120 |
+
'options' => UM()->files()->get_profile_photo_size( 'cover_thumb_sizes' ),
|
121 |
+
'conditional' => array( '_um_profile_cover_enabled', '=', 1 )
|
122 |
+
),
|
123 |
+
array(
|
124 |
+
'id' => '_um_profile_cover_ratio',
|
125 |
+
'type' => 'select',
|
126 |
+
'label' => __( 'Cover photo ratio', 'ultimate-member' ),
|
127 |
+
'tooltip' => __( 'The shortcode is centered by default unless you specify otherwise here', 'ultimate-member' ),
|
128 |
+
'value' => UM()->query()->get_meta_value( '_um_profile_cover_ratio', null, UM()->options()->get( 'profile_cover_ratio' ) ),
|
129 |
+
'options' => array(
|
130 |
+
'1.6:1' => '1.6:1',
|
131 |
+
'2.7:1' => '2.7:1',
|
132 |
+
'2.2:1' => '2.2:1',
|
133 |
+
'3.2:1' => '3.2:1'
|
134 |
),
|
135 |
+
'conditional' => array( '_um_profile_cover_enabled', '=', 1 )
|
136 |
),
|
137 |
array(
|
138 |
'id' => '_um_profile_disable_photo_upload',
|
148 |
),
|
149 |
array(
|
150 |
'id' => '_um_profile_photosize',
|
151 |
+
'type' => 'select',
|
152 |
'label' => __( 'Profile Photo Size', 'ultimate-member' ),
|
153 |
'tooltip' => __( 'Set the profile photo size in pixels here', 'ultimate-member' ),
|
154 |
'value' => UM()->query()->get_meta_value( '_um_profile_photosize', null, UM()->options()->get( 'profile_photosize' ) ),
|
155 |
+
'options' => UM()->files()->get_profile_photo_size( 'photo_thumb_sizes' ),
|
156 |
'conditional' => array( '_um_profile_use_custom_settings', '=', 1 )
|
157 |
),
|
158 |
array(
|
includes/class-config.php
CHANGED
@@ -138,26 +138,46 @@ if ( ! class_exists( 'um\Config' ) ) {
|
|
138 |
) );
|
139 |
|
140 |
$this->core_directory_meta['members'] = array(
|
141 |
-
'
|
142 |
-
'
|
143 |
-
'
|
144 |
-
'
|
145 |
-
'
|
146 |
-
'
|
147 |
-
'
|
148 |
-
'
|
149 |
-
'
|
150 |
-
|
151 |
-
'
|
152 |
-
'
|
153 |
-
'
|
154 |
-
'
|
155 |
-
|
156 |
-
'
|
157 |
-
'
|
158 |
-
'
|
159 |
-
'
|
160 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
161 |
);
|
162 |
|
163 |
$this->core_global_meta_all = array(
|
@@ -205,51 +225,58 @@ if ( ! class_exists( 'um\Config' ) ) {
|
|
205 |
* ?>
|
206 |
*/
|
207 |
$this->core_form_meta_all = apply_filters( 'um_core_form_meta_all', array(
|
208 |
-
|
209 |
-
'
|
210 |
-
'
|
211 |
-
'
|
212 |
-
'_um_profile_bio_maxchars'
|
213 |
-
'_um_profile_header_menu'
|
214 |
-
'_um_profile_empty_text'
|
215 |
-
'_um_profile_empty_text_emo'
|
216 |
-
'_um_profile_role'
|
217 |
-
'_um_profile_template'
|
218 |
-
'_um_profile_max_width'
|
219 |
-
'_um_profile_area_max_width'
|
220 |
-
'_um_profile_align'
|
221 |
-
'_um_profile_icons'
|
222 |
-
'
|
223 |
-
'
|
224 |
-
'
|
225 |
-
'
|
226 |
-
'
|
227 |
-
'
|
228 |
-
'
|
229 |
-
'
|
230 |
-
'
|
231 |
-
'
|
232 |
-
|
233 |
-
|
234 |
-
'
|
235 |
-
'
|
236 |
-
'
|
237 |
-
'
|
238 |
-
'
|
239 |
-
'
|
240 |
-
'
|
241 |
-
'
|
242 |
-
'
|
243 |
-
|
244 |
-
|
245 |
-
'
|
246 |
-
'
|
247 |
-
'
|
248 |
-
'
|
249 |
-
'
|
250 |
-
'
|
251 |
-
'
|
252 |
-
'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
253 |
) );
|
254 |
|
255 |
$this->core_form_meta['register'] = array(
|
@@ -540,7 +567,8 @@ if ( ! class_exists( 'um\Config' ) ) {
|
|
540 |
'cover_photo_max_size' => 999999999,
|
541 |
'custom_roles_increment' => 1,
|
542 |
'um_profile_object_cache_stop' => 0,
|
543 |
-
'rest_api_version' => '2.0'
|
|
|
544 |
);
|
545 |
|
546 |
add_filter( 'um_get_tabs_from_config', '__return_true' );
|
138 |
) );
|
139 |
|
140 |
$this->core_directory_meta['members'] = array(
|
141 |
+
'_um_core' => 'members',
|
142 |
+
'_um_template' => 'members',
|
143 |
+
'_um_mode' => 'directory',
|
144 |
+
'_um_view_types' => array( 'grid' ),
|
145 |
+
'_um_default_view' => 'grid',
|
146 |
+
'_um_roles' => array(),
|
147 |
+
'_um_has_profile_photo' => 0,
|
148 |
+
'_um_has_cover_photo' => 0,
|
149 |
+
'_um_show_these_users' => '',
|
150 |
+
|
151 |
+
'_um_sortby' => 'user_registered_desc',
|
152 |
+
'_um_sortby_custom' => '',
|
153 |
+
'_um_enable_sorting' => 0,
|
154 |
+
'_um_sorting_fields' => array(),
|
155 |
+
|
156 |
+
'_um_profile_photo' => '1',
|
157 |
+
'_um_cover_photos' => '1',
|
158 |
+
'_um_show_name' => '1',
|
159 |
+
'_um_show_tagline' => 0,
|
160 |
+
'_um_tagline_fields' => array(),
|
161 |
+
'_um_show_userinfo' => 0,
|
162 |
+
'_um_reveal_fields' => array(),
|
163 |
+
'_um_show_social' => 0,
|
164 |
+
'_um_userinfo_animate' => '1',
|
165 |
+
|
166 |
+
'_um_search' => 0,
|
167 |
+
'_um_roles_can_search' => array(),
|
168 |
+
'_um_filters' => 0,
|
169 |
+
'_um_roles_can_filter' => array(),
|
170 |
+
'_um_search_fields' => array(),
|
171 |
+
'_um_filters_expanded' => 0,
|
172 |
+
'_um_search_filters' => array(),
|
173 |
+
|
174 |
+
'_um_must_search' => 0,
|
175 |
+
'_um_max_users' => '',
|
176 |
+
'_um_profiles_per_page' => 12,
|
177 |
+
'_um_profiles_per_page_mobile' => 6,
|
178 |
+
'_um_directory_header' => __( '{total_users} Members', 'ultimate-member' ),
|
179 |
+
'_um_directory_header_single' => __( '{total_users} Member', 'ultimate-member' ),
|
180 |
+
'_um_directory_no_users' => __( 'We are sorry. We cannot find any users who match your search criteria.', 'ultimate-member' ),
|
181 |
);
|
182 |
|
183 |
$this->core_global_meta_all = array(
|
225 |
* ?>
|
226 |
*/
|
227 |
$this->core_form_meta_all = apply_filters( 'um_core_form_meta_all', array(
|
228 |
+
/*Profile Form*/
|
229 |
+
'_um_profile_show_name' => 1,
|
230 |
+
'_um_profile_show_social_links' => 0,
|
231 |
+
'_um_profile_show_bio' => 1,
|
232 |
+
'_um_profile_bio_maxchars' => 180,
|
233 |
+
'_um_profile_header_menu' => 'bc',
|
234 |
+
'_um_profile_empty_text' => 1,
|
235 |
+
'_um_profile_empty_text_emo' => 1,
|
236 |
+
'_um_profile_role' => array(),
|
237 |
+
'_um_profile_template' => 'profile',
|
238 |
+
'_um_profile_max_width' => '1000px',
|
239 |
+
'_um_profile_area_max_width' => '600px',
|
240 |
+
'_um_profile_align' => 'center',
|
241 |
+
'_um_profile_icons' => 'label',
|
242 |
+
'_um_profile_disable_photo_upload' => 0,
|
243 |
+
'_um_profile_photosize' => '190',
|
244 |
+
'_um_profile_cover_enabled' => 1,
|
245 |
+
'_um_profile_coversize' => 'original',
|
246 |
+
'_um_profile_cover_ratio' => '2.7:1',
|
247 |
+
'_um_profile_photocorner' => '1',
|
248 |
+
'_um_profile_header_bg' => '',
|
249 |
+
'_um_profile_primary_btn_word' => __( 'Update Profile', 'ultimate-member' ),
|
250 |
+
'_um_profile_secondary_btn' => '1',
|
251 |
+
'_um_profile_secondary_btn_word' => __( 'Cancel', 'ultimate-member' ),
|
252 |
+
|
253 |
+
/*Registration Form*/
|
254 |
+
'_um_register_role' => '0',
|
255 |
+
'_um_register_template' => 'register',
|
256 |
+
'_um_register_max_width' => '450px',
|
257 |
+
'_um_register_align' => 'center',
|
258 |
+
'_um_register_icons' => 'label',
|
259 |
+
'_um_register_primary_btn_word' => __( 'Register', 'ultimate-member' ),
|
260 |
+
'_um_register_secondary_btn' => 1,
|
261 |
+
'_um_register_secondary_btn_word' => __( 'Login', 'ultimate-member' ),
|
262 |
+
'_um_register_secondary_btn_url' => '',
|
263 |
+
|
264 |
+
/*Login Form*/
|
265 |
+
'_um_login_template' => 'login',
|
266 |
+
'_um_login_max_width' => '450px',
|
267 |
+
'_um_login_align' => 'center',
|
268 |
+
'_um_login_icons' => 'label',
|
269 |
+
'_um_login_primary_btn_word' => __( 'Login', 'ultimate-member' ),
|
270 |
+
'_um_login_forgot_pass_link' => 1,
|
271 |
+
'_um_login_show_rememberme' => 1,
|
272 |
+
'_um_login_secondary_btn' => 1,
|
273 |
+
'_um_login_secondary_btn_word' => __( 'Register', 'ultimate-member' ),
|
274 |
+
'_um_login_secondary_btn_url' => '',
|
275 |
+
|
276 |
+
/*Member Directory*/
|
277 |
+
'_um_directory_template' => 'members',
|
278 |
+
'_um_directory_header' => __( '{total_users} Members', 'ultimate-member' ),
|
279 |
+
'_um_directory_header_single' => __( '{total_users} Member', 'ultimate-member' ),
|
280 |
) );
|
281 |
|
282 |
$this->core_form_meta['register'] = array(
|
567 |
'cover_photo_max_size' => 999999999,
|
568 |
'custom_roles_increment' => 1,
|
569 |
'um_profile_object_cache_stop' => 0,
|
570 |
+
'rest_api_version' => '2.0',
|
571 |
+
'profile_show_html_bio' => 0,
|
572 |
);
|
573 |
|
574 |
add_filter( 'um_get_tabs_from_config', '__return_true' );
|
includes/class-dependencies.php
CHANGED
@@ -1,9 +1,10 @@
|
|
1 |
<?php
|
2 |
namespace um;
|
3 |
|
4 |
-
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
|
|
7 |
/**
|
8 |
* Ultimate Member Dependency Checker
|
9 |
*
|
@@ -32,40 +33,49 @@ if ( ! class_exists( 'um\Dependencies' ) ) {
|
|
32 |
* @var array
|
33 |
*/
|
34 |
public $ext_required_version = array(
|
35 |
-
'bbpress' => '2.0.
|
36 |
-
'followers' => '2.
|
37 |
-
'
|
38 |
-
'
|
39 |
-
'
|
40 |
-
'
|
41 |
-
'
|
42 |
-
'
|
43 |
-
'
|
44 |
-
'
|
45 |
-
'
|
46 |
-
'
|
47 |
-
'
|
48 |
-
'
|
49 |
-
'
|
50 |
-
'
|
51 |
-
'
|
52 |
-
'social-
|
53 |
-
'
|
54 |
-
'
|
55 |
-
'user-
|
56 |
-
'user-
|
57 |
-
'
|
58 |
-
'
|
|
|
|
|
|
|
59 |
'restrict-content' => '2.0',
|
60 |
-
|
61 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
62 |
'user-exporter' => '1.0.0',
|
63 |
-
|
|
|
|
|
64 |
'filesharing' => '1.0.0',
|
65 |
-
'
|
66 |
-
'user-
|
67 |
-
'unsplash' => '2.0',
|
68 |
-
'forumwp' => '2.0.1',
|
69 |
);
|
70 |
|
71 |
|
1 |
<?php
|
2 |
namespace um;
|
3 |
|
4 |
+
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
7 |
+
|
8 |
/**
|
9 |
* Ultimate Member Dependency Checker
|
10 |
*
|
33 |
* @var array
|
34 |
*/
|
35 |
public $ext_required_version = array(
|
36 |
+
'bbpress' => '2.0.7',
|
37 |
+
'followers' => '2.1.6',
|
38 |
+
'forumwp' => '2.0.4',
|
39 |
+
'friends' => '2.1.4',
|
40 |
+
'groups' => '2.1.7',
|
41 |
+
'instagram' => '2.0.5',
|
42 |
+
'mailchimp' => '2.2.0',
|
43 |
+
'messaging' => '2.2.5',
|
44 |
+
'mycred' => '2.1.6',
|
45 |
+
'notices' => '2.0.5',
|
46 |
+
'notifications' => '2.1.3',
|
47 |
+
'online' => '2.1.1',
|
48 |
+
'private-content' => '2.0.5',
|
49 |
+
'profile-completeness' => '2.1.2',
|
50 |
+
'recaptcha' => '2.1.2',
|
51 |
+
'reviews' => '2.1.5',
|
52 |
+
'social-activity' => '2.2.0',
|
53 |
+
'social-login' => '2.2.0',
|
54 |
+
'terms-conditions' => '2.1.1',
|
55 |
+
'unsplash' => '2.0.2',
|
56 |
+
'user-bookmarks' => '2.0.2',
|
57 |
+
'user-photos' => '2.0.4',
|
58 |
+
'user-tags' => '2.1.0',
|
59 |
+
'verified-users' => '2.0.5',
|
60 |
+
'woocommerce' => '2.1.9',
|
61 |
+
|
62 |
+
/*????*/
|
63 |
'restrict-content' => '2.0',
|
64 |
+
|
65 |
+
/*rc*/
|
66 |
+
'user-notes' => '2.0',
|
67 |
+
'profile-tabs' => '1.6',
|
68 |
+
|
69 |
+
/*beta*/
|
70 |
+
'frontend-posting' => '1.0',
|
71 |
+
/*alpha*/
|
72 |
'user-exporter' => '1.0.0',
|
73 |
+
|
74 |
+
/*in development*/
|
75 |
+
'user-location' => '1.0',
|
76 |
'filesharing' => '1.0.0',
|
77 |
+
'beaver-builder' => '2.0',
|
78 |
+
'user-events' => '1.0.0',
|
|
|
|
|
79 |
);
|
80 |
|
81 |
|
includes/class-extensions.php
CHANGED
@@ -57,13 +57,13 @@ if ( ! class_exists( 'um\Extensions' ) ) {
|
|
57 |
$compare_version_result = UM()->dependencies()->compare_versions( $extension['min_core_version'], $extension['version'], $slug, $extension['title'] );
|
58 |
|
59 |
if ( true !== $compare_version_result ) {
|
60 |
-
UM()->notices()->add_notice( "{$slug}_dependencies", array(
|
61 |
'class' => 'error',
|
62 |
'message' => '<p>' . $compare_version_result . '</p>',
|
63 |
), 1 );
|
64 |
}
|
65 |
} elseif ( ! $run && ! empty( $message ) ) {
|
66 |
-
UM()->notices()->add_notice( "{$slug}_dependencies", array(
|
67 |
'class' => 'error',
|
68 |
'message' => $message,
|
69 |
), 1 );
|
57 |
$compare_version_result = UM()->dependencies()->compare_versions( $extension['min_core_version'], $extension['version'], $slug, $extension['title'] );
|
58 |
|
59 |
if ( true !== $compare_version_result ) {
|
60 |
+
UM()->admin()->notices()->add_notice( "{$slug}_dependencies", array(
|
61 |
'class' => 'error',
|
62 |
'message' => '<p>' . $compare_version_result . '</p>',
|
63 |
), 1 );
|
64 |
}
|
65 |
} elseif ( ! $run && ! empty( $message ) ) {
|
66 |
+
UM()->admin()->notices()->add_notice( "{$slug}_dependencies", array(
|
67 |
'class' => 'error',
|
68 |
'message' => $message,
|
69 |
), 1 );
|
includes/class-functions.php
CHANGED
@@ -32,6 +32,16 @@ if ( ! class_exists( 'UM_Functions' ) ) {
|
|
32 |
}
|
33 |
|
34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
/**
|
36 |
* Check frontend nonce
|
37 |
*
|
@@ -168,7 +178,8 @@ if ( ! class_exists( 'UM_Functions' ) ) {
|
|
168 |
|
169 |
$path = '';
|
170 |
if ( $basename ) {
|
171 |
-
|
|
|
172 |
$path = $array[0];
|
173 |
}
|
174 |
|
@@ -276,7 +287,7 @@ if ( ! class_exists( 'UM_Functions' ) ) {
|
|
276 |
function locate_template( $template_name, $path = '' ) {
|
277 |
// check if there is template at theme folder
|
278 |
$template = locate_template( array(
|
279 |
-
trailingslashit( 'ultimate-member
|
280 |
) );
|
281 |
|
282 |
if ( ! $template ) {
|
@@ -285,7 +296,7 @@ if ( ! class_exists( 'UM_Functions' ) ) {
|
|
285 |
} else {
|
286 |
$template = trailingslashit( um_path );
|
287 |
}
|
288 |
-
$template .= 'templates
|
289 |
}
|
290 |
|
291 |
|
@@ -364,5 +375,21 @@ if ( ! class_exists( 'UM_Functions' ) ) {
|
|
364 |
|
365 |
return $array;
|
366 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
367 |
}
|
368 |
}
|
32 |
}
|
33 |
|
34 |
|
35 |
+
/**
|
36 |
+
* Check if AJAX now
|
37 |
+
*
|
38 |
+
* @return bool
|
39 |
+
*/
|
40 |
+
function is_ajax() {
|
41 |
+
return function_exists( 'wp_doing_ajax' ) ? wp_doing_ajax() : defined( 'DOING_AJAX' );
|
42 |
+
}
|
43 |
+
|
44 |
+
|
45 |
/**
|
46 |
* Check frontend nonce
|
47 |
*
|
178 |
|
179 |
$path = '';
|
180 |
if ( $basename ) {
|
181 |
+
// use '/' instead of "DIRECTORY_SEPARATOR", because wp_normalize_path makes the correct replace
|
182 |
+
$array = explode( '/', wp_normalize_path( trim( $basename ) ) );
|
183 |
$path = $array[0];
|
184 |
}
|
185 |
|
287 |
function locate_template( $template_name, $path = '' ) {
|
288 |
// check if there is template at theme folder
|
289 |
$template = locate_template( array(
|
290 |
+
trailingslashit( 'ultimate-member' . DIRECTORY_SEPARATOR . $path ) . $template_name
|
291 |
) );
|
292 |
|
293 |
if ( ! $template ) {
|
296 |
} else {
|
297 |
$template = trailingslashit( um_path );
|
298 |
}
|
299 |
+
$template .= 'templates' . DIRECTORY_SEPARATOR . $template_name;
|
300 |
}
|
301 |
|
302 |
|
375 |
|
376 |
return $array;
|
377 |
}
|
378 |
+
|
379 |
+
|
380 |
+
/**
|
381 |
+
* @since 2.1.0
|
382 |
+
*
|
383 |
+
* @param $var
|
384 |
+
* @return array|string
|
385 |
+
*/
|
386 |
+
function clean_array( $var ) {
|
387 |
+
if ( is_array( $var ) ) {
|
388 |
+
return array_map( array( $this, 'clean_array' ), $var );
|
389 |
+
} else {
|
390 |
+
return is_scalar( $var ) ? sanitize_text_field( $var ) : $var;
|
391 |
+
}
|
392 |
+
}
|
393 |
+
|
394 |
}
|
395 |
}
|
includes/class-init.php
CHANGED
@@ -13,23 +13,23 @@ if ( ! class_exists( 'UM' ) ) {
|
|
13 |
* @method UM_Followers_API Followers_API()
|
14 |
* @method UM_Friends_API Friends_API()
|
15 |
* @method UM_Instagram_API Instagram_API()
|
16 |
-
* @method
|
17 |
* @method UM_Messaging_API Messaging_API()
|
18 |
-
* @method
|
19 |
-
* @method
|
20 |
* @method UM_Notifications_API Notifications_API()
|
21 |
* @method UM_Online Online()
|
22 |
* @method UM_Profile_Completeness_API Profile_Completeness_API()
|
23 |
* @method UM_reCAPTCHA reCAPTCHA()
|
24 |
-
* @method
|
25 |
* @method UM_Activity_API Activity_API()
|
26 |
* @method UM_Social_Login_API Social_Login_API()
|
27 |
-
* @method
|
28 |
* @method UM_Verified_Users_API Verified_Users_API()
|
29 |
* @method UM_WooCommerce_API WooCommerce_API()
|
30 |
* @method UM_Terms_Conditions Terms_Conditions()
|
31 |
-
* @method
|
32 |
-
* @method
|
33 |
* @method UM_Photos_API Photos_API()
|
34 |
* @method UM_Groups Groups()
|
35 |
* @method UM_Frontend_Posting Frontend_Posting()
|
@@ -517,9 +517,10 @@ if ( ! class_exists( 'UM' ) ) {
|
|
517 |
$this->admin_upgrade()->init_packages_ajax_handlers();
|
518 |
$this->admin_gdpr();
|
519 |
$this->columns();
|
520 |
-
$this->notices();
|
521 |
$this->admin_navmenu();
|
522 |
$this->theme_updater();
|
|
|
523 |
} elseif ( $this->is_request( 'admin' ) ) {
|
524 |
$this->admin();
|
525 |
$this->admin_menu();
|
@@ -528,7 +529,7 @@ if ( ! class_exists( 'UM' ) ) {
|
|
528 |
$this->columns();
|
529 |
$this->admin_enqueue();
|
530 |
$this->metabox();
|
531 |
-
$this->notices();
|
532 |
$this->users();
|
533 |
$this->dragdrop();
|
534 |
$this->plugin_updater();
|
@@ -543,7 +544,6 @@ if ( ! class_exists( 'UM' ) ) {
|
|
543 |
$this->register();
|
544 |
$this->user_posts();
|
545 |
$this->access();
|
546 |
-
$this->members();
|
547 |
$this->logout();
|
548 |
}
|
549 |
|
@@ -563,6 +563,7 @@ if ( ! class_exists( 'UM' ) ) {
|
|
563 |
$this->mobile();
|
564 |
$this->external_integrations();
|
565 |
$this->gdpr();
|
|
|
566 |
|
567 |
//if multisite networks active
|
568 |
if ( is_multisite() ) {
|
@@ -572,6 +573,19 @@ if ( ! class_exists( 'UM' ) ) {
|
|
572 |
}
|
573 |
|
574 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
575 |
/**
|
576 |
* Get extension API
|
577 |
*
|
@@ -841,19 +855,6 @@ if ( ! class_exists( 'UM' ) ) {
|
|
841 |
}
|
842 |
|
843 |
|
844 |
-
/**
|
845 |
-
* @since 2.0
|
846 |
-
*
|
847 |
-
* @return um\admin\core\Admin_Notices()
|
848 |
-
*/
|
849 |
-
function notices() {
|
850 |
-
if ( empty( $this->classes['admin_notices'] ) ) {
|
851 |
-
$this->classes['admin_notices'] = new um\admin\core\Admin_Notices();
|
852 |
-
}
|
853 |
-
return $this->classes['admin_notices'];
|
854 |
-
}
|
855 |
-
|
856 |
-
|
857 |
/**
|
858 |
* @since 2.0
|
859 |
*
|
@@ -1322,11 +1323,15 @@ if ( ! class_exists( 'UM' ) ) {
|
|
1322 |
|
1323 |
|
1324 |
/**
|
|
|
|
|
1325 |
* @since 2.0
|
1326 |
*
|
1327 |
* @return um\core\Members
|
1328 |
*/
|
1329 |
function members() {
|
|
|
|
|
1330 |
if ( empty( $this->classes['members'] ) ) {
|
1331 |
$this->classes['members'] = new um\core\Members();
|
1332 |
}
|
@@ -1438,7 +1443,6 @@ if ( ! class_exists( 'UM' ) ) {
|
|
1438 |
require_once 'core/um-actions-register.php';
|
1439 |
require_once 'core/um-actions-profile.php';
|
1440 |
require_once 'core/um-actions-account.php';
|
1441 |
-
require_once 'core/um-actions-members.php';
|
1442 |
require_once 'core/um-actions-global.php';
|
1443 |
require_once 'core/um-actions-user.php';
|
1444 |
require_once 'core/um-actions-save-profile.php';
|
@@ -1450,7 +1454,9 @@ if ( ! class_exists( 'UM' ) ) {
|
|
1450 |
require_once 'core/um-filters-navmenu.php';
|
1451 |
require_once 'core/um-filters-avatars.php';
|
1452 |
require_once 'core/um-filters-user.php';
|
1453 |
-
|
|
|
|
|
1454 |
require_once 'core/um-filters-profile.php';
|
1455 |
require_once 'core/um-filters-account.php';
|
1456 |
require_once 'core/um-filters-misc.php';
|
13 |
* @method UM_Followers_API Followers_API()
|
14 |
* @method UM_Friends_API Friends_API()
|
15 |
* @method UM_Instagram_API Instagram_API()
|
16 |
+
* @method UM_Mailchimp Mailchimp()
|
17 |
* @method UM_Messaging_API Messaging_API()
|
18 |
+
* @method UM_myCRED myCRED()
|
19 |
+
* @method UM_Notices Notices()
|
20 |
* @method UM_Notifications_API Notifications_API()
|
21 |
* @method UM_Online Online()
|
22 |
* @method UM_Profile_Completeness_API Profile_Completeness_API()
|
23 |
* @method UM_reCAPTCHA reCAPTCHA()
|
24 |
+
* @method UM_Reviews Reviews()
|
25 |
* @method UM_Activity_API Activity_API()
|
26 |
* @method UM_Social_Login_API Social_Login_API()
|
27 |
+
* @method UM_User_Tags User_Tags()
|
28 |
* @method UM_Verified_Users_API Verified_Users_API()
|
29 |
* @method UM_WooCommerce_API WooCommerce_API()
|
30 |
* @method UM_Terms_Conditions Terms_Conditions()
|
31 |
+
* @method UM_Private_Content Private_Content()
|
32 |
+
* @method UM_User_Location User_Location()
|
33 |
* @method UM_Photos_API Photos_API()
|
34 |
* @method UM_Groups Groups()
|
35 |
* @method UM_Frontend_Posting Frontend_Posting()
|
517 |
$this->admin_upgrade()->init_packages_ajax_handlers();
|
518 |
$this->admin_gdpr();
|
519 |
$this->columns();
|
520 |
+
$this->admin()->notices();
|
521 |
$this->admin_navmenu();
|
522 |
$this->theme_updater();
|
523 |
+
$this->access();
|
524 |
} elseif ( $this->is_request( 'admin' ) ) {
|
525 |
$this->admin();
|
526 |
$this->admin_menu();
|
529 |
$this->columns();
|
530 |
$this->admin_enqueue();
|
531 |
$this->metabox();
|
532 |
+
$this->admin()->notices();
|
533 |
$this->users();
|
534 |
$this->dragdrop();
|
535 |
$this->plugin_updater();
|
544 |
$this->register();
|
545 |
$this->user_posts();
|
546 |
$this->access();
|
|
|
547 |
$this->logout();
|
548 |
}
|
549 |
|
563 |
$this->mobile();
|
564 |
$this->external_integrations();
|
565 |
$this->gdpr();
|
566 |
+
$this->member_directory();
|
567 |
|
568 |
//if multisite networks active
|
569 |
if ( is_multisite() ) {
|
573 |
}
|
574 |
|
575 |
|
576 |
+
/**
|
577 |
+
* @since 2.1.0
|
578 |
+
*
|
579 |
+
* @return um\core\Member_Directory()
|
580 |
+
*/
|
581 |
+
function member_directory() {
|
582 |
+
if ( empty( $this->classes['member_directory'] ) ) {
|
583 |
+
$this->classes['member_directory'] = new um\core\Member_Directory();
|
584 |
+
}
|
585 |
+
return $this->classes['member_directory'];
|
586 |
+
}
|
587 |
+
|
588 |
+
|
589 |
/**
|
590 |
* Get extension API
|
591 |
*
|
855 |
}
|
856 |
|
857 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
858 |
/**
|
859 |
* @since 2.0
|
860 |
*
|
1323 |
|
1324 |
|
1325 |
/**
|
1326 |
+
* @deprecated 2.1.0
|
1327 |
+
*
|
1328 |
* @since 2.0
|
1329 |
*
|
1330 |
* @return um\core\Members
|
1331 |
*/
|
1332 |
function members() {
|
1333 |
+
um_deprecated_function( 'UM()->members()', '2.1.0', 'UM()->member_directory()' );
|
1334 |
+
|
1335 |
if ( empty( $this->classes['members'] ) ) {
|
1336 |
$this->classes['members'] = new um\core\Members();
|
1337 |
}
|
1443 |
require_once 'core/um-actions-register.php';
|
1444 |
require_once 'core/um-actions-profile.php';
|
1445 |
require_once 'core/um-actions-account.php';
|
|
|
1446 |
require_once 'core/um-actions-global.php';
|
1447 |
require_once 'core/um-actions-user.php';
|
1448 |
require_once 'core/um-actions-save-profile.php';
|
1454 |
require_once 'core/um-filters-navmenu.php';
|
1455 |
require_once 'core/um-filters-avatars.php';
|
1456 |
require_once 'core/um-filters-user.php';
|
1457 |
+
|
1458 |
+
//require_once 'core/um-filters-members.php';
|
1459 |
+
|
1460 |
require_once 'core/um-filters-profile.php';
|
1461 |
require_once 'core/um-filters-account.php';
|
1462 |
require_once 'core/um-filters-misc.php';
|
includes/core/class-access.php
CHANGED
@@ -180,11 +180,6 @@ if ( ! class_exists( 'um\core\Access' ) ) {
|
|
180 |
add_filter( 'archive_template', array( &$this, 'taxonomy_message' ), 10, 3 );
|
181 |
add_filter( 'category_template', array( &$this, 'taxonomy_message' ), 10, 3 );
|
182 |
add_filter( 'taxonomy_template', array( &$this, 'taxonomy_message' ), 10, 3 );
|
183 |
-
|
184 |
-
/*global $wp_query;
|
185 |
-
$wp_query->set_404();
|
186 |
-
status_header( 404 );
|
187 |
-
nocache_headers();*/
|
188 |
}
|
189 |
} else {
|
190 |
$user_can = $this->user_can( get_current_user_id(), $restriction['_um_access_roles'] );
|
@@ -602,15 +597,29 @@ if ( ! class_exists( 'um\core\Access' ) ) {
|
|
602 |
return false;
|
603 |
} else {
|
604 |
|
605 |
-
//set default redirect if Profile page is restricted for not-logged in users
|
606 |
-
|
|
|
|
|
607 |
if ( isset( $restriction['_um_access_roles'] ) ) {
|
608 |
-
$restriction = array(
|
|
|
|
|
|
|
|
|
|
|
|
|
609 |
} else {
|
610 |
-
$restriction = array(
|
|
|
|
|
|
|
|
|
|
|
611 |
}
|
612 |
}
|
613 |
|
|
|
614 |
return $restriction;
|
615 |
}
|
616 |
}
|
180 |
add_filter( 'archive_template', array( &$this, 'taxonomy_message' ), 10, 3 );
|
181 |
add_filter( 'category_template', array( &$this, 'taxonomy_message' ), 10, 3 );
|
182 |
add_filter( 'taxonomy_template', array( &$this, 'taxonomy_message' ), 10, 3 );
|
|
|
|
|
|
|
|
|
|
|
183 |
}
|
184 |
} else {
|
185 |
$user_can = $this->user_can( get_current_user_id(), $restriction['_um_access_roles'] );
|
597 |
return false;
|
598 |
} else {
|
599 |
|
600 |
+
// set default redirect if Profile page is restricted for not-logged in users and showing message instead of redirect
|
601 |
+
// this snippet was added to make the same action for {site_url}/user and {site_url}/user/{user_slug} URLs
|
602 |
+
// by default {site_url}/user is redirected to Homepage in rewrite rules because hasn't found username in query when user is not logged in
|
603 |
+
if ( ! is_user_logged_in() && um_is_core_post( $post, 'user' ) && $restriction['_um_accessible'] == '2' && $restriction['_um_noaccess_action'] == '0' ) {
|
604 |
if ( isset( $restriction['_um_access_roles'] ) ) {
|
605 |
+
$restriction = array(
|
606 |
+
'_um_accessible' => '2',
|
607 |
+
'_um_access_roles' => $restriction['_um_access_roles'],
|
608 |
+
'_um_noaccess_action' => '1',
|
609 |
+
'_um_access_redirect' => '1',
|
610 |
+
'_um_access_redirect_url' => get_home_url( get_current_blog_id() )
|
611 |
+
);
|
612 |
} else {
|
613 |
+
$restriction = array(
|
614 |
+
'_um_accessible' => '2',
|
615 |
+
'_um_noaccess_action' => '1',
|
616 |
+
'_um_access_redirect' => '1',
|
617 |
+
'_um_access_redirect_url' => get_home_url( get_current_blog_id() )
|
618 |
+
);
|
619 |
}
|
620 |
}
|
621 |
|
622 |
+
$restriction = apply_filters( 'um_post_content_restriction_settings', $restriction, $post );
|
623 |
return $restriction;
|
624 |
}
|
625 |
}
|
includes/core/class-account.php
CHANGED
@@ -30,7 +30,7 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
30 |
/**
|
31 |
* @var array
|
32 |
*/
|
33 |
-
var $
|
34 |
|
35 |
|
36 |
/**
|
@@ -54,6 +54,8 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
54 |
* Init AllTabs for user account
|
55 |
*
|
56 |
* @param $args
|
|
|
|
|
57 |
*/
|
58 |
function init_tabs( $args ) {
|
59 |
|
@@ -84,7 +86,9 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
84 |
|
85 |
|
86 |
/**
|
87 |
-
*
|
|
|
|
|
88 |
*/
|
89 |
function get_tabs() {
|
90 |
$tabs = array();
|
@@ -151,7 +155,9 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
151 |
* Account Shortcode
|
152 |
*
|
153 |
* @param array $args
|
154 |
-
*
|
|
|
|
|
155 |
*/
|
156 |
function ultimatemember_account( $args = array() ) {
|
157 |
um_fetch_user( get_current_user_id() );
|
@@ -198,32 +204,34 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
198 |
$this->current_tab = $args['tab'];
|
199 |
|
200 |
if ( ! empty( $this->tabs[ $args['tab'] ] ) ) { ?>
|
201 |
-
<div class="um-
|
202 |
-
<
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
|
|
|
|
227 |
</div>
|
228 |
<?php }
|
229 |
|
@@ -304,10 +312,20 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
304 |
|
305 |
$output = ob_get_clean();
|
306 |
|
|
|
|
|
307 |
return $output;
|
308 |
}
|
309 |
|
310 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
311 |
/**
|
312 |
* Restrict access to Account page
|
313 |
*/
|
@@ -478,35 +496,70 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
478 |
|
479 |
|
480 |
/**
|
481 |
-
*
|
482 |
-
* @param $id
|
483 |
*
|
484 |
-
* @
|
|
|
485 |
*/
|
486 |
-
function
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
487 |
/**
|
488 |
* UM hook
|
489 |
*
|
490 |
* @type filter
|
491 |
-
* @title
|
492 |
-
* @description
|
493 |
* @input_vars
|
494 |
-
* [{"var":"$
|
495 |
-
* {"var":"$id","type":"int","desc":"User ID"}]
|
496 |
* @change_log
|
497 |
* ["Since: 2.0"]
|
498 |
-
* @usage
|
|
|
499 |
* @example
|
500 |
* <?php
|
501 |
-
* add_filter( '
|
502 |
-
* function my_account_secure_fields( $
|
503 |
* // your code here
|
504 |
-
* return $
|
505 |
* }
|
506 |
* ?>
|
507 |
*/
|
508 |
-
$
|
509 |
-
|
|
|
510 |
}
|
511 |
|
512 |
|
@@ -525,8 +578,8 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
525 |
UM()->fields()->set_mode = 'account';
|
526 |
UM()->fields()->editing = true;
|
527 |
|
528 |
-
if ( ! empty( $this->tab_output[$id]['content'] ) && ! empty( $this->tab_output[$id]['hash'] ) &&
|
529 |
-
$this->tab_output[$id]['hash'] == md5( json_encode( $shortcode_args ) ) ) {
|
530 |
return $this->tab_output[ $id ]['content'];
|
531 |
}
|
532 |
|
@@ -559,9 +612,10 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
559 |
$args = apply_filters( 'um_account_tab_privacy_fields', $args, $shortcode_args );
|
560 |
|
561 |
$fields = UM()->builtin()->get_specific_fields( $args );
|
562 |
-
$fields = $this->account_secure_fields( $fields, $id );
|
563 |
$fields = $this->filter_fields_by_attrs( $fields, $shortcode_args );
|
564 |
|
|
|
|
|
565 |
foreach ( $fields as $key => $data ) {
|
566 |
$output .= UM()->fields()->edit_field( $key, $data );
|
567 |
}
|
@@ -595,9 +649,10 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
595 |
$args = apply_filters( 'um_account_tab_delete_fields', $args, $shortcode_args );
|
596 |
|
597 |
$fields = UM()->builtin()->get_specific_fields( $args );
|
598 |
-
$fields = $this->account_secure_fields( $fields, $id );
|
599 |
$fields = $this->filter_fields_by_attrs( $fields, $shortcode_args );
|
600 |
|
|
|
|
|
601 |
foreach ( $fields as $key => $data ) {
|
602 |
$output .= UM()->fields()->edit_field( $key, $data );
|
603 |
}
|
@@ -644,9 +699,10 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
644 |
$args = apply_filters( 'um_account_tab_general_fields', $args, $shortcode_args );
|
645 |
|
646 |
$fields = UM()->builtin()->get_specific_fields( $args );
|
647 |
-
$fields = $this->account_secure_fields( $fields, $id );
|
648 |
$fields = $this->filter_fields_by_attrs( $fields, $shortcode_args );
|
649 |
|
|
|
|
|
650 |
foreach ( $fields as $key => $data ) {
|
651 |
$output .= UM()->fields()->edit_field( $key, $data );
|
652 |
}
|
@@ -681,9 +737,10 @@ if ( ! class_exists( 'um\core\Account' ) ) {
|
|
681 |
$args = apply_filters( 'um_account_tab_password_fields', $args, $shortcode_args );
|
682 |
|
683 |
$fields = UM()->builtin()->get_specific_fields( $args );
|
684 |
-
$fields = $this->account_secure_fields( $fields, $id );
|
685 |
$fields = $this->filter_fields_by_attrs( $fields, $shortcode_args );
|
686 |
|
|
|
|
|
687 |
foreach ( $fields as $key => $data ) {
|
688 |
$output .= UM()->fields()->edit_field( $key, $data );
|
689 |
}
|
30 |
/**
|
31 |
* @var array
|
32 |
*/
|
33 |
+
var $displayed_fields = array();
|
34 |
|
35 |
|
36 |
/**
|
54 |
* Init AllTabs for user account
|
55 |
*
|
56 |
* @param $args
|
57 |
+
*
|
58 |
+
* @throws \Exception
|
59 |
*/
|
60 |
function init_tabs( $args ) {
|
61 |
|
86 |
|
87 |
|
88 |
/**
|
89 |
+
* Get all Account tabs
|
90 |
+
*
|
91 |
+
* @return array
|
92 |
*/
|
93 |
function get_tabs() {
|
94 |
$tabs = array();
|
155 |
* Account Shortcode
|
156 |
*
|
157 |
* @param array $args
|
158 |
+
*
|
159 |
+
* @return false|string
|
160 |
+
* @throws \Exception
|
161 |
*/
|
162 |
function ultimatemember_account( $args = array() ) {
|
163 |
um_fetch_user( get_current_user_id() );
|
204 |
$this->current_tab = $args['tab'];
|
205 |
|
206 |
if ( ! empty( $this->tabs[ $args['tab'] ] ) ) { ?>
|
207 |
+
<div class="um um-custom-shortcode-tab">
|
208 |
+
<div class="um-form">
|
209 |
+
<form method="post" action="">
|
210 |
+
<?php
|
211 |
+
/**
|
212 |
+
* UM hook
|
213 |
+
*
|
214 |
+
* @type action
|
215 |
+
* @title um_account_page_hidden_fields
|
216 |
+
* @description Make some action before account tab loading
|
217 |
+
* @input_vars
|
218 |
+
* [{"var":"$args","type":"array","desc":"Account Page Arguments"}]
|
219 |
+
* @change_log
|
220 |
+
* ["Since: 2.0"]
|
221 |
+
* @usage add_action( 'um_before_template_part', 'function_name', 10, 1 );
|
222 |
+
* @example
|
223 |
+
* <?php
|
224 |
+
* add_action( 'um_account_page_hidden_fields', 'my_account_page_hidden_fields', 10, 1 );
|
225 |
+
* function my_account_page_hidden_fields( $args ) {
|
226 |
+
* // your code here
|
227 |
+
* }
|
228 |
+
* ?>
|
229 |
+
*/
|
230 |
+
do_action( 'um_account_page_hidden_fields', $args );
|
231 |
+
|
232 |
+
$this->render_account_tab( $args['tab'], $this->tabs[ $args['tab'] ], $args ); ?>
|
233 |
+
</form>
|
234 |
+
</div>
|
235 |
</div>
|
236 |
<?php }
|
237 |
|
312 |
|
313 |
$output = ob_get_clean();
|
314 |
|
315 |
+
$this->account_fields_hash();
|
316 |
+
|
317 |
return $output;
|
318 |
}
|
319 |
|
320 |
|
321 |
+
/**
|
322 |
+
* Update account fields to secure the account submission
|
323 |
+
*/
|
324 |
+
function account_fields_hash() {
|
325 |
+
update_user_meta( um_user( 'ID' ), 'um_account_secure_fields', UM()->account()->displayed_fields );
|
326 |
+
}
|
327 |
+
|
328 |
+
|
329 |
/**
|
330 |
* Restrict access to Account page
|
331 |
*/
|
496 |
|
497 |
|
498 |
/**
|
499 |
+
* Init displayed fields for security check
|
|
|
500 |
*
|
501 |
+
* @param $fields
|
502 |
+
* @param $tab_key
|
503 |
*/
|
504 |
+
function init_displayed_fields( $fields, $tab_key ) {
|
505 |
+
if ( ! $this->is_secure_enabled() ) {
|
506 |
+
return;
|
507 |
+
}
|
508 |
+
|
509 |
+
if ( ! isset( $this->displayed_fields[ $tab_key ] ) ) {
|
510 |
+
$this->displayed_fields[ $tab_key ] = array_keys( $fields );
|
511 |
+
} else {
|
512 |
+
$this->displayed_fields[ $tab_key ] = array_merge( $this->displayed_fields[ $tab_key ], array_keys( $fields ) );
|
513 |
+
$this->displayed_fields[ $tab_key ] = array_unique( $this->displayed_fields[ $tab_key ] );
|
514 |
+
}
|
515 |
+
}
|
516 |
+
|
517 |
+
|
518 |
+
/**
|
519 |
+
* @param $field_key
|
520 |
+
* @param $tab_key
|
521 |
+
*/
|
522 |
+
function add_displayed_field( $field_key, $tab_key ) {
|
523 |
+
if ( ! $this->is_secure_enabled() ) {
|
524 |
+
return;
|
525 |
+
}
|
526 |
+
|
527 |
+
if ( ! isset( $this->displayed_fields[ $tab_key ] ) ) {
|
528 |
+
$this->displayed_fields[ $tab_key ] = array( $field_key );
|
529 |
+
} else {
|
530 |
+
$this->displayed_fields[ $tab_key ][] = $field_key;
|
531 |
+
}
|
532 |
+
}
|
533 |
+
|
534 |
+
|
535 |
+
/**
|
536 |
+
* @return bool
|
537 |
+
*/
|
538 |
+
function is_secure_enabled() {
|
539 |
/**
|
540 |
* UM hook
|
541 |
*
|
542 |
* @type filter
|
543 |
+
* @title um_account_secure_fields__enabled
|
544 |
+
* @description Active account secure fields
|
545 |
* @input_vars
|
546 |
+
* [{"var":"$enabled","type":"string","desc":"Enable secure account fields"}]
|
|
|
547 |
* @change_log
|
548 |
* ["Since: 2.0"]
|
549 |
+
* @usage
|
550 |
+
* <?php add_filter( 'um_account_secure_fields__enabled', 'function_name', 10, 1 ); ?>
|
551 |
* @example
|
552 |
* <?php
|
553 |
+
* add_filter( 'um_account_secure_fields__enabled', 'my_account_secure_fields', 10, 1 );
|
554 |
+
* function my_account_secure_fields( $enabled ) {
|
555 |
* // your code here
|
556 |
+
* return $enabled;
|
557 |
* }
|
558 |
* ?>
|
559 |
*/
|
560 |
+
$secure = apply_filters( 'um_account_secure_fields__enabled', true );
|
561 |
+
|
562 |
+
return $secure;
|
563 |
}
|
564 |
|
565 |
|
578 |
UM()->fields()->set_mode = 'account';
|
579 |
UM()->fields()->editing = true;
|
580 |
|
581 |
+
if ( ! empty( $this->tab_output[ $id ]['content'] ) && ! empty( $this->tab_output[ $id ]['hash'] ) &&
|
582 |
+
$this->tab_output[ $id ]['hash'] == md5( json_encode( $shortcode_args ) ) ) {
|
583 |
return $this->tab_output[ $id ]['content'];
|
584 |
}
|
585 |
|
612 |
$args = apply_filters( 'um_account_tab_privacy_fields', $args, $shortcode_args );
|
613 |
|
614 |
$fields = UM()->builtin()->get_specific_fields( $args );
|
|
|
615 |
$fields = $this->filter_fields_by_attrs( $fields, $shortcode_args );
|
616 |
|
617 |
+
$this->init_displayed_fields( $fields, $id );
|
618 |
+
|
619 |
foreach ( $fields as $key => $data ) {
|
620 |
$output .= UM()->fields()->edit_field( $key, $data );
|
621 |
}
|
649 |
$args = apply_filters( 'um_account_tab_delete_fields', $args, $shortcode_args );
|
650 |
|
651 |
$fields = UM()->builtin()->get_specific_fields( $args );
|
|
|
652 |
$fields = $this->filter_fields_by_attrs( $fields, $shortcode_args );
|
653 |
|
654 |
+
$this->init_displayed_fields( $fields, $id );
|
655 |
+
|
656 |
foreach ( $fields as $key => $data ) {
|
657 |
$output .= UM()->fields()->edit_field( $key, $data );
|
658 |
}
|
699 |
$args = apply_filters( 'um_account_tab_general_fields', $args, $shortcode_args );
|
700 |
|
701 |
$fields = UM()->builtin()->get_specific_fields( $args );
|
|
|
702 |
$fields = $this->filter_fields_by_attrs( $fields, $shortcode_args );
|
703 |
|
704 |
+
$this->init_displayed_fields( $fields, $id );
|
705 |
+
|
706 |
foreach ( $fields as $key => $data ) {
|
707 |
$output .= UM()->fields()->edit_field( $key, $data );
|
708 |
}
|
737 |
$args = apply_filters( 'um_account_tab_password_fields', $args, $shortcode_args );
|
738 |
|
739 |
$fields = UM()->builtin()->get_specific_fields( $args );
|
|
|
740 |
$fields = $this->filter_fields_by_attrs( $fields, $shortcode_args );
|
741 |
|
742 |
+
$this->init_displayed_fields( $fields, $id );
|
743 |
+
|
744 |
foreach ( $fields as $key => $data ) {
|
745 |
$output .= UM()->fields()->edit_field( $key, $data );
|
746 |
}
|
includes/core/class-ajax-common.php
CHANGED
@@ -26,8 +26,9 @@ if ( ! class_exists( 'um\core\AJAX_Common' ) ) {
|
|
26 |
|
27 |
add_action( 'wp_ajax_um_' . $action, array( $this, $action ) );
|
28 |
|
29 |
-
if ( $nopriv )
|
30 |
add_action( 'wp_ajax_nopriv_um_' . $action, array( $this, $action ) );
|
|
|
31 |
|
32 |
}
|
33 |
|
@@ -39,7 +40,9 @@ if ( ! class_exists( 'um\core\AJAX_Common' ) ) {
|
|
39 |
|
40 |
add_action( 'wp_ajax_um_ajax_paginate', array( UM()->query(), 'ajax_paginate' ) );
|
41 |
add_action( 'wp_ajax_um_ajax_paginate_posts', array( UM()->user_posts(), 'load_posts' ) );
|
|
|
42 |
add_action( 'wp_ajax_nopriv_um_ajax_paginate_posts', array( UM()->user_posts(), 'load_posts' ) );
|
|
|
43 |
|
44 |
add_action( 'wp_ajax_um_muted_action', array( UM()->form(), 'ajax_muted_action' ) );
|
45 |
|
@@ -54,6 +57,9 @@ if ( ! class_exists( 'um\core\AJAX_Common' ) ) {
|
|
54 |
|
55 |
add_action( 'wp_ajax_nopriv_um_resize_image', array( UM()->files(), 'ajax_resize_image' ) );
|
56 |
add_action( 'wp_ajax_um_resize_image', array( UM()->files(), 'ajax_resize_image' ) );
|
|
|
|
|
|
|
57 |
}
|
58 |
}
|
59 |
}
|
26 |
|
27 |
add_action( 'wp_ajax_um_' . $action, array( $this, $action ) );
|
28 |
|
29 |
+
if ( $nopriv ){
|
30 |
add_action( 'wp_ajax_nopriv_um_' . $action, array( $this, $action ) );
|
31 |
+
}
|
32 |
|
33 |
}
|
34 |
|
40 |
|
41 |
add_action( 'wp_ajax_um_ajax_paginate', array( UM()->query(), 'ajax_paginate' ) );
|
42 |
add_action( 'wp_ajax_um_ajax_paginate_posts', array( UM()->user_posts(), 'load_posts' ) );
|
43 |
+
add_action( 'wp_ajax_um_ajax_paginate_comments', array( UM()->user_posts(), 'load_comments' ) );
|
44 |
add_action( 'wp_ajax_nopriv_um_ajax_paginate_posts', array( UM()->user_posts(), 'load_posts' ) );
|
45 |
+
add_action( 'wp_ajax_nopriv_um_ajax_paginate_comments', array( UM()->user_posts(), 'load_comments' ) );
|
46 |
|
47 |
add_action( 'wp_ajax_um_muted_action', array( UM()->form(), 'ajax_muted_action' ) );
|
48 |
|
57 |
|
58 |
add_action( 'wp_ajax_nopriv_um_resize_image', array( UM()->files(), 'ajax_resize_image' ) );
|
59 |
add_action( 'wp_ajax_um_resize_image', array( UM()->files(), 'ajax_resize_image' ) );
|
60 |
+
|
61 |
+
add_action( 'wp_ajax_nopriv_um_get_members', array( UM()->member_directory(), 'ajax_get_members' ) );
|
62 |
+
add_action( 'wp_ajax_um_get_members', array( UM()->member_directory(), 'ajax_get_members' ) );
|
63 |
}
|
64 |
}
|
65 |
}
|
includes/core/class-builtin.php
CHANGED
@@ -398,27 +398,27 @@ if ( ! class_exists( 'um\core\Builtin' ) ) {
|
|
398 |
),
|
399 |
|
400 |
'date' => array(
|
401 |
-
'name'
|
402 |
-
'col1'
|
403 |
-
'col2'
|
404 |
-
'col3'
|
405 |
-
'validate'
|
406 |
-
'_title'
|
407 |
-
'mode'
|
408 |
'error' => __( 'You must provide a title', 'ultimate-member' )
|
409 |
),
|
410 |
-
'_metakey'
|
411 |
-
'mode'
|
412 |
),
|
413 |
-
'_years'
|
414 |
-
'mode'
|
415 |
'error' => __( 'Number of years is not valid', 'ultimate-member' )
|
416 |
),
|
417 |
-
'_range_start'
|
418 |
-
'mode'
|
419 |
),
|
420 |
-
'_range_end'
|
421 |
-
'mode'
|
422 |
),
|
423 |
)
|
424 |
),
|
@@ -1218,6 +1218,8 @@ if ( ! class_exists( 'um\core\Builtin' ) ) {
|
|
1218 |
/**
|
1219 |
* Get all fields without metakeys
|
1220 |
*
|
|
|
|
|
1221 |
* @return array
|
1222 |
*/
|
1223 |
function get_fields_without_metakey() {
|
398 |
),
|
399 |
|
400 |
'date' => array(
|
401 |
+
'name' => 'Date Picker',
|
402 |
+
'col1' => array( '_title', '_metakey', '_help', '_default', '_range', '_years', '_years_x', '_range_start', '_range_end', '_visibility' ),
|
403 |
+
'col2' => array( '_label', '_placeholder', '_public', '_roles', '_format', '_format_custom', '_pretty_format', '_disabled_weekdays' ),
|
404 |
+
'col3' => array( '_required', '_editable', '_icon' ),
|
405 |
+
'validate' => array(
|
406 |
+
'_title' => array(
|
407 |
+
'mode' => 'required',
|
408 |
'error' => __( 'You must provide a title', 'ultimate-member' )
|
409 |
),
|
410 |
+
'_metakey' => array(
|
411 |
+
'mode' => 'unique',
|
412 |
),
|
413 |
+
'_years' => array(
|
414 |
+
'mode' => 'numeric',
|
415 |
'error' => __( 'Number of years is not valid', 'ultimate-member' )
|
416 |
),
|
417 |
+
'_range_start' => array(
|
418 |
+
'mode' => 'range-start',
|
419 |
),
|
420 |
+
'_range_end' => array(
|
421 |
+
'mode' => 'range-end',
|
422 |
),
|
423 |
)
|
424 |
),
|
1218 |
/**
|
1219 |
* Get all fields without metakeys
|
1220 |
*
|
1221 |
+
* @since 2.0.56
|
1222 |
+
*
|
1223 |
* @return array
|
1224 |
*/
|
1225 |
function get_fields_without_metakey() {
|
includes/core/class-common.php
CHANGED
@@ -1,17 +1,21 @@
|
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
-
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
|
|
7 |
if ( ! class_exists( 'um\core\Common' ) ) {
|
8 |
|
9 |
|
10 |
/**
|
11 |
* Class Common
|
|
|
12 |
* @package um\core
|
13 |
*/
|
14 |
class Common {
|
|
|
|
|
15 |
/**
|
16 |
* Common constructor.
|
17 |
*/
|
@@ -33,7 +37,7 @@ if ( ! class_exists( 'um\core\Common' ) ) {
|
|
33 |
|
34 |
if ( is_user_logged_in() ) {
|
35 |
if ( um_user( 'can_not_see_adminbar' ) ) {
|
36 |
-
$search = array_search(
|
37 |
if ( ! empty( $search ) ) {
|
38 |
unset( $classes[ $search ] );
|
39 |
}
|
@@ -50,17 +54,17 @@ if ( ! class_exists( 'um\core\Common' ) ) {
|
|
50 |
function create_post_types() {
|
51 |
|
52 |
register_post_type( 'um_form', array(
|
53 |
-
'labels'
|
54 |
-
'name'
|
55 |
-
'singular_name'
|
56 |
-
'add_new'
|
57 |
-
'add_new_item'
|
58 |
-
'edit_item'
|
59 |
-
'not_found'
|
60 |
-
'not_found_in_trash'
|
61 |
-
'search_items'
|
62 |
),
|
63 |
-
'capabilities'
|
64 |
'edit_post' => 'manage_options',
|
65 |
'read_post' => 'manage_options',
|
66 |
'delete_post' => 'manage_options',
|
@@ -68,29 +72,29 @@ if ( ! class_exists( 'um\core\Common' ) ) {
|
|
68 |
'edit_others_posts' => 'manage_options',
|
69 |
'delete_posts' => 'manage_options',
|
70 |
'publish_posts' => 'manage_options',
|
71 |
-
'read_private_posts' => 'manage_options'
|
72 |
),
|
73 |
-
'show_ui'
|
74 |
-
'show_in_menu'
|
75 |
-
'public'
|
76 |
-
'show_in_rest'
|
77 |
-
'supports'
|
78 |
) );
|
79 |
|
80 |
if ( UM()->options()->get( 'members_page' ) || ! get_option( 'um_options' ) ) {
|
81 |
|
82 |
register_post_type( 'um_directory', array(
|
83 |
-
'labels'
|
84 |
-
'name'
|
85 |
-
'singular_name'
|
86 |
-
'add_new'
|
87 |
-
'add_new_item'
|
88 |
-
'edit_item'
|
89 |
-
'not_found'
|
90 |
-
'not_found_in_trash'
|
91 |
-
'search_items'
|
92 |
),
|
93 |
-
'capabilities'
|
94 |
'edit_post' => 'manage_options',
|
95 |
'read_post' => 'manage_options',
|
96 |
'delete_post' => 'manage_options',
|
@@ -98,13 +102,13 @@ if ( ! class_exists( 'um\core\Common' ) ) {
|
|
98 |
'edit_others_posts' => 'manage_options',
|
99 |
'delete_posts' => 'manage_options',
|
100 |
'publish_posts' => 'manage_options',
|
101 |
-
'read_private_posts' => 'manage_options'
|
102 |
),
|
103 |
-
'show_ui'
|
104 |
-
'show_in_menu'
|
105 |
-
'public'
|
106 |
-
'show_in_rest'
|
107 |
-
'supports'
|
108 |
) );
|
109 |
|
110 |
}
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
+
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
7 |
+
|
8 |
if ( ! class_exists( 'um\core\Common' ) ) {
|
9 |
|
10 |
|
11 |
/**
|
12 |
* Class Common
|
13 |
+
*
|
14 |
* @package um\core
|
15 |
*/
|
16 |
class Common {
|
17 |
+
|
18 |
+
|
19 |
/**
|
20 |
* Common constructor.
|
21 |
*/
|
37 |
|
38 |
if ( is_user_logged_in() ) {
|
39 |
if ( um_user( 'can_not_see_adminbar' ) ) {
|
40 |
+
$search = array_search( 'admin-bar', $classes );
|
41 |
if ( ! empty( $search ) ) {
|
42 |
unset( $classes[ $search ] );
|
43 |
}
|
54 |
function create_post_types() {
|
55 |
|
56 |
register_post_type( 'um_form', array(
|
57 |
+
'labels' => array(
|
58 |
+
'name' => __( 'Forms', 'ultimate-member' ),
|
59 |
+
'singular_name' => __( 'Form', 'ultimate-member' ),
|
60 |
+
'add_new' => __( 'Add New', 'ultimate-member' ),
|
61 |
+
'add_new_item' => __( 'Add New Form', 'ultimate-member' ),
|
62 |
+
'edit_item' => __( 'Edit Form', 'ultimate-member' ),
|
63 |
+
'not_found' => __( 'You did not create any forms yet', 'ultimate-member' ),
|
64 |
+
'not_found_in_trash' => __( 'Nothing found in Trash', 'ultimate-member' ),
|
65 |
+
'search_items' => __( 'Search Forms', 'ultimate-member' ),
|
66 |
),
|
67 |
+
'capabilities' => array(
|
68 |
'edit_post' => 'manage_options',
|
69 |
'read_post' => 'manage_options',
|
70 |
'delete_post' => 'manage_options',
|
72 |
'edit_others_posts' => 'manage_options',
|
73 |
'delete_posts' => 'manage_options',
|
74 |
'publish_posts' => 'manage_options',
|
75 |
+
'read_private_posts' => 'manage_options',
|
76 |
),
|
77 |
+
'show_ui' => true,
|
78 |
+
'show_in_menu' => false,
|
79 |
+
'public' => false,
|
80 |
+
'show_in_rest' => true,
|
81 |
+
'supports' => array( 'title' ),
|
82 |
) );
|
83 |
|
84 |
if ( UM()->options()->get( 'members_page' ) || ! get_option( 'um_options' ) ) {
|
85 |
|
86 |
register_post_type( 'um_directory', array(
|
87 |
+
'labels' => array(
|
88 |
+
'name' => __( 'Member Directories', 'ultimate-member' ),
|
89 |
+
'singular_name' => __( 'Member Directory', 'ultimate-member' ),
|
90 |
+
'add_new' => __( 'Add New', 'ultimate-member' ),
|
91 |
+
'add_new_item' => __( 'Add New Member Directory', 'ultimate-member' ),
|
92 |
+
'edit_item' => __( 'Edit Member Directory', 'ultimate-member' ),
|
93 |
+
'not_found' => __( 'You did not create any member directories yet', 'ultimate-member' ),
|
94 |
+
'not_found_in_trash' => __( 'Nothing found in Trash', 'ultimate-member' ),
|
95 |
+
'search_items' => __( 'Search Member Directories', 'ultimate-member' ),
|
96 |
),
|
97 |
+
'capabilities' => array(
|
98 |
'edit_post' => 'manage_options',
|
99 |
'read_post' => 'manage_options',
|
100 |
'delete_post' => 'manage_options',
|
102 |
'edit_others_posts' => 'manage_options',
|
103 |
'delete_posts' => 'manage_options',
|
104 |
'publish_posts' => 'manage_options',
|
105 |
+
'read_private_posts' => 'manage_options',
|
106 |
),
|
107 |
+
'show_ui' => true,
|
108 |
+
'show_in_menu' => false,
|
109 |
+
'public' => false,
|
110 |
+
'show_in_rest' => true,
|
111 |
+
'supports' => array( 'title' ),
|
112 |
) );
|
113 |
|
114 |
}
|
includes/core/class-enqueue.php
CHANGED
@@ -94,12 +94,16 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) {
|
|
94 |
wp_register_script( 'um_datetime_legacy', $this->js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
95 |
// load a localized version for date/time
|
96 |
$locale = get_locale();
|
97 |
-
if ( $locale
|
98 |
-
|
|
|
|
|
|
|
|
|
99 |
}
|
100 |
|
101 |
wp_register_script( 'um_tipsy', $this->js_baseurl . 'um-tipsy' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
102 |
-
wp_register_script( 'um_raty', $this->js_baseurl . 'um-raty' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
103 |
wp_register_script( 'um_crop', $this->js_baseurl . 'um-crop' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
104 |
|
105 |
wp_register_script( 'um_modal', $this->js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_crop' ), ultimatemember_version, true );
|
@@ -135,8 +139,10 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) {
|
|
135 |
) );
|
136 |
wp_localize_script( 'um_scripts', 'um_scripts', $localize_data );
|
137 |
|
138 |
-
wp_register_script('
|
139 |
-
|
|
|
|
|
140 |
wp_register_script('um_account', $this->js_baseurl . 'um-account' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
141 |
|
142 |
wp_register_script( 'um_gchart', 'https://www.google.com/jsapi', array(), ultimatemember_version, true );
|
@@ -144,9 +150,10 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) {
|
|
144 |
|
145 |
|
146 |
/**
|
147 |
-
*
|
148 |
*/
|
149 |
function register_styles() {
|
|
|
150 |
//FontAwesome and FontIcons styles
|
151 |
wp_register_style( 'um_fonticons_ii', $this->css_baseurl . 'um-fonticons-ii.css', array(), ultimatemember_version );
|
152 |
wp_register_style( 'um_fonticons_fa', $this->css_baseurl . 'um-fonticons-fa.css', array(), ultimatemember_version );
|
@@ -166,10 +173,18 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) {
|
|
166 |
wp_register_style( 'um_responsive', $this->css_baseurl . 'um-responsive.css', array( 'um_profile', 'um_crop' ), ultimatemember_version );
|
167 |
|
168 |
wp_register_style( 'um_styles', $this->css_baseurl . 'um-styles.css', array(), ultimatemember_version );
|
169 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
170 |
wp_register_style( 'um_profile', $this->css_baseurl . 'um-profile.css', array(), ultimatemember_version );
|
171 |
wp_register_style( 'um_account', $this->css_baseurl . 'um-account.css', array(), ultimatemember_version );
|
172 |
wp_register_style( 'um_misc', $this->css_baseurl . 'um-misc.css', array(), ultimatemember_version );
|
|
|
173 |
}
|
174 |
|
175 |
|
@@ -265,7 +280,12 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) {
|
|
265 |
*/
|
266 |
function load_css() {
|
267 |
wp_enqueue_style( 'um_styles' );
|
268 |
-
|
|
|
|
|
|
|
|
|
|
|
269 |
wp_enqueue_style( 'um_profile' );
|
270 |
wp_enqueue_style( 'um_account' );
|
271 |
wp_enqueue_style( 'um_misc' );
|
@@ -324,20 +344,20 @@ if ( ! class_exists( 'um\core\Enqueue' ) ) {
|
|
324 |
* Load date & time picker
|
325 |
*/
|
326 |
function load_datetimepicker() {
|
327 |
-
wp_enqueue_script('um_datetime');
|
328 |
-
wp_enqueue_script('um_datetime_date');
|
329 |
-
wp_enqueue_script('um_datetime_time');
|
330 |
-
wp_enqueue_script('um_datetime_legacy');
|
331 |
|
332 |
// load a localized version for date/time
|
333 |
$locale = get_locale();
|
334 |
-
if ( $locale && file_exists( um_path . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
335 |
wp_enqueue_script('um_datetime_locale' );
|
336 |
}
|
337 |
|
338 |
-
wp_enqueue_style('um_datetime');
|
339 |
-
wp_enqueue_style('um_datetime_date');
|
340 |
-
wp_enqueue_style('um_datetime_time');
|
341 |
}
|
342 |
|
343 |
|
94 |
wp_register_script( 'um_datetime_legacy', $this->js_baseurl . 'pickadate/legacy.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
95 |
// load a localized version for date/time
|
96 |
$locale = get_locale();
|
97 |
+
if ( $locale ) {
|
98 |
+
if ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) ) {
|
99 |
+
wp_register_script('um_datetime_locale', content_url() . '/languages/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
100 |
+
} elseif ( file_exists( um_path . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) {
|
101 |
+
wp_register_script('um_datetime_locale', um_url . 'assets/js/pickadate/translations/' . $locale . '.js', array( 'jquery', 'um_datetime' ), ultimatemember_version, true );
|
102 |
+
}
|
103 |
}
|
104 |
|
105 |
wp_register_script( 'um_tipsy', $this->js_baseurl . 'um-tipsy' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
106 |
+
wp_register_script( 'um_raty', $this->js_baseurl . 'um-raty' . $this->suffix . '.js', array( 'jquery', 'wp-i18n' ), ultimatemember_version, true );
|
107 |
wp_register_script( 'um_crop', $this->js_baseurl . 'um-crop' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
108 |
|
109 |
wp_register_script( 'um_modal', $this->js_baseurl . 'um-modal' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'um_crop' ), ultimatemember_version, true );
|
139 |
) );
|
140 |
wp_localize_script( 'um_scripts', 'um_scripts', $localize_data );
|
141 |
|
142 |
+
wp_register_script('um_dropdown', $this->js_baseurl . 'dropdown' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
143 |
+
|
144 |
+
wp_register_script('um_members', $this->js_baseurl . 'um-members' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'jquery-ui-slider', 'um_dropdown', 'wp-hooks' ), ultimatemember_version, true );
|
145 |
+
wp_register_script('um_profile', $this->js_baseurl . 'um-profile' . $this->suffix . '.js', array( 'jquery', 'wp-util', 'wp-i18n' ), ultimatemember_version, true );
|
146 |
wp_register_script('um_account', $this->js_baseurl . 'um-account' . $this->suffix . '.js', array( 'jquery' ), ultimatemember_version, true );
|
147 |
|
148 |
wp_register_script( 'um_gchart', 'https://www.google.com/jsapi', array(), ultimatemember_version, true );
|
150 |
|
151 |
|
152 |
/**
|
153 |
+
* Register styles
|
154 |
*/
|
155 |
function register_styles() {
|
156 |
+
|
157 |
//FontAwesome and FontIcons styles
|
158 |
wp_register_style( 'um_fonticons_ii', $this->css_baseurl . 'um-fonticons-ii.css', array(), ultimatemember_version );
|
159 |
wp_register_style( 'um_fonticons_fa', $this->css_baseurl . 'um-fonticons-fa.css', array(), ultimatemember_version );
|
173 |
wp_register_style( 'um_responsive', $this->css_baseurl . 'um-responsive.css', array( 'um_profile', 'um_crop' ), ultimatemember_version );
|
174 |
|
175 |
wp_register_style( 'um_styles', $this->css_baseurl . 'um-styles.css', array(), ultimatemember_version );
|
176 |
+
|
177 |
+
wp_register_style( 'um_ui', $this->css_baseurl . 'jquery-ui.css', array(), ultimatemember_version );
|
178 |
+
|
179 |
+
wp_register_style( 'um_members', $this->css_baseurl . 'um-members.css', array( 'um_ui' ), ultimatemember_version );
|
180 |
+
if ( is_rtl() ) {
|
181 |
+
wp_register_style( 'um_members_rtl', $this->css_baseurl . 'um-members-rtl.css', array( 'um_members' ), ultimatemember_version );
|
182 |
+
}
|
183 |
+
|
184 |
wp_register_style( 'um_profile', $this->css_baseurl . 'um-profile.css', array(), ultimatemember_version );
|
185 |
wp_register_style( 'um_account', $this->css_baseurl . 'um-account.css', array(), ultimatemember_version );
|
186 |
wp_register_style( 'um_misc', $this->css_baseurl . 'um-misc.css', array(), ultimatemember_version );
|
187 |
+
|
188 |
}
|
189 |
|
190 |
|
280 |
*/
|
281 |
function load_css() {
|
282 |
wp_enqueue_style( 'um_styles' );
|
283 |
+
if ( is_rtl() ) {
|
284 |
+
wp_enqueue_style( 'um_members_rtl' );
|
285 |
+
} else {
|
286 |
+
wp_enqueue_style( 'um_members' );
|
287 |
+
}
|
288 |
+
|
289 |
wp_enqueue_style( 'um_profile' );
|
290 |
wp_enqueue_style( 'um_account' );
|
291 |
wp_enqueue_style( 'um_misc' );
|
344 |
* Load date & time picker
|
345 |
*/
|
346 |
function load_datetimepicker() {
|
347 |
+
wp_enqueue_script( 'um_datetime' );
|
348 |
+
wp_enqueue_script( 'um_datetime_date' );
|
349 |
+
wp_enqueue_script( 'um_datetime_time' );
|
350 |
+
wp_enqueue_script( 'um_datetime_legacy' );
|
351 |
|
352 |
// load a localized version for date/time
|
353 |
$locale = get_locale();
|
354 |
+
if ( $locale && ( file_exists( WP_LANG_DIR . '/plugins/ultimate-member/assets/js/pickadate/' . $locale . '.js' ) || file_exists( um_path . 'assets/js/pickadate/translations/' . $locale . '.js' ) ) ) {
|
355 |
wp_enqueue_script('um_datetime_locale' );
|
356 |
}
|
357 |
|
358 |
+
wp_enqueue_style( 'um_datetime' );
|
359 |
+
wp_enqueue_style( 'um_datetime_date' );
|
360 |
+
wp_enqueue_style( 'um_datetime_time' );
|
361 |
}
|
362 |
|
363 |
|
includes/core/class-fields.php
CHANGED
@@ -39,7 +39,18 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
39 |
* @param bool $checked
|
40 |
*/
|
41 |
function checkbox( $id, $title, $checked = true ) {
|
42 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
|
44 |
<div class="um-field um-field-c">
|
45 |
<div class="um-field-area">
|
@@ -409,7 +420,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
409 |
$output .= '<div class="um-field-label">';
|
410 |
|
411 |
if ( isset( $data['icon'] ) && $data['icon'] != '' && isset( $this->field_icons ) && $this->field_icons != 'off' && ( $this->field_icons == 'label' || $this->viewing == true ) ) {
|
412 |
-
$output .= '<div class="um-field-label-icon"><i class="' . esc_attr( $data['icon'] ) . '"></i></div>';
|
413 |
}
|
414 |
|
415 |
if ( $this->viewing == true ) {
|
@@ -815,6 +826,8 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
815 |
/**
|
816 |
* Checks if an option is selected
|
817 |
*
|
|
|
|
|
818 |
* @param string $key
|
819 |
* @param string $value
|
820 |
* @param array $data
|
@@ -822,6 +835,8 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
822 |
* @return boolean
|
823 |
*/
|
824 |
function is_selected( $key, $value, $data ) {
|
|
|
|
|
825 |
/**
|
826 |
* UM hook
|
827 |
*
|
@@ -844,132 +859,149 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
844 |
*/
|
845 |
$key = apply_filters( 'um_is_selected_filter_key', $key );
|
846 |
|
847 |
-
if ( isset( UM()->form()->post_form[ $key ] )
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
848 |
|
849 |
-
if ( in_array( $value, UM()->form()->post_form[ $key ] ) ) {
|
850 |
-
return true;
|
851 |
}
|
852 |
|
853 |
-
|
854 |
-
|
855 |
-
|
|
|
|
|
856 |
}
|
857 |
|
858 |
-
if (
|
859 |
-
|
860 |
}
|
861 |
|
862 |
-
|
863 |
|
864 |
-
|
865 |
|
866 |
-
|
867 |
-
|
868 |
-
|
|
|
869 |
}
|
|
|
870 |
|
871 |
-
if( $field_value == 0 && $value == '0' ){
|
872 |
-
$value = (int)$value;
|
873 |
-
}
|
874 |
|
875 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
876 |
|
877 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
878 |
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
|
|
883 |
}
|
884 |
-
}
|
885 |
|
|
|
|
|
|
|
886 |
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
|
892 |
-
* @description Change is selected filter value
|
893 |
-
* @input_vars
|
894 |
-
* [{"var":"$value","type":"string","desc":"Selected filter value"},
|
895 |
-
* {"var":"$key","type":"string","desc":"Selected filter key"},
|
896 |
-
* {"var":"$value","type":"string","desc":"Selected filter value"}]
|
897 |
-
* @change_log
|
898 |
-
* ["Since: 2.0"]
|
899 |
-
* @usage add_filter( 'um_is_selected_filter_value', 'function_name', 10, 2 );
|
900 |
-
* @example
|
901 |
-
* <?php
|
902 |
-
* add_filter( 'um_is_selected_filter_value', 'my_selected_filter_value', 10, 2 );
|
903 |
-
* function my_selected_filter_value( $value, $key ) {
|
904 |
-
* // your code here
|
905 |
-
* return $field_value;
|
906 |
-
* }
|
907 |
-
* ?>
|
908 |
-
*/
|
909 |
-
$field_value = apply_filters( 'um_is_selected_filter_value', $field_value, $key, $value );
|
910 |
-
|
911 |
-
/**
|
912 |
-
* UM hook
|
913 |
-
*
|
914 |
-
* @type filter
|
915 |
-
* @title um_is_selected_filter_data
|
916 |
-
* @description Change is selected filter data
|
917 |
-
* @input_vars
|
918 |
-
* [{"var":"$data","type":"array","desc":"Selected filter value"},
|
919 |
-
* {"var":"$key","type":"string","desc":"Selected filter key"},
|
920 |
-
* {"var":"$value","type":"string","desc":"Selected filter value"}]
|
921 |
-
* @change_log
|
922 |
-
* ["Since: 2.0"]
|
923 |
-
* @usage add_filter( 'um_is_selected_filter_data', 'function_name', 10, 3 );
|
924 |
-
* @example
|
925 |
-
* <?php
|
926 |
-
* add_filter( 'um_is_selected_filter_data', 'my_selected_filter_data', 10, 3 );
|
927 |
-
* function my_selected_filter_data( $data, $key, $value ) {
|
928 |
-
* // your code here
|
929 |
-
* return $data;
|
930 |
-
* }
|
931 |
-
* ?>
|
932 |
-
*/
|
933 |
-
$data = apply_filters( 'um_is_selected_filter_data', $data, $key, $field_value );
|
934 |
|
935 |
-
if ( $field_value &&
|
936 |
return true;
|
937 |
}
|
938 |
|
939 |
-
if ( $field_value == 0 &&
|
940 |
return true;
|
941 |
}
|
942 |
|
943 |
-
if ( $field_value &&
|
944 |
return true;
|
945 |
}
|
946 |
|
947 |
-
if ( $field_value &&
|
948 |
return true;
|
949 |
}
|
950 |
|
951 |
-
if
|
952 |
-
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
if ( ! is_array( $data['default'] ) && $data['default'] === $value ) {
|
958 |
-
return true;
|
959 |
-
}
|
960 |
-
|
961 |
-
if ( is_array( $data['default'] ) && in_array( $value, $data['default'] ) ) {
|
962 |
-
return true;
|
963 |
-
}
|
964 |
}
|
965 |
-
}
|
966 |
|
967 |
-
|
|
|
|
|
968 |
|
969 |
-
|
970 |
-
|
|
|
971 |
}
|
972 |
-
|
973 |
}
|
974 |
|
975 |
}
|
@@ -988,6 +1020,8 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
988 |
* @return boolean
|
989 |
*/
|
990 |
function is_radio_checked( $key, $value, $data ) {
|
|
|
|
|
991 |
if ( isset( UM()->form()->post_form[ $key ] ) ) {
|
992 |
if ( is_array( UM()->form()->post_form[ $key ] ) && in_array( $value, UM()->form()->post_form[ $key ] ) ) {
|
993 |
return true;
|
@@ -995,45 +1029,56 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
995 |
return true;
|
996 |
}
|
997 |
} else {
|
998 |
-
if ( um_user( $key ) && $this->editing == true ) {
|
999 |
|
1000 |
-
|
1001 |
-
|
1002 |
-
}
|
1003 |
|
1004 |
-
|
|
|
|
|
|
|
|
|
1005 |
|
1006 |
-
|
1007 |
-
|
1008 |
|
1009 |
-
|
1010 |
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
|
|
1014 |
}
|
1015 |
}
|
1016 |
-
}
|
1017 |
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
|
1022 |
-
|
1023 |
-
|
1024 |
-
|
1025 |
|
1026 |
-
|
1027 |
-
|
1028 |
-
|
1029 |
-
|
|
|
1030 |
}
|
1031 |
}
|
1032 |
-
}
|
1033 |
|
|
|
|
|
|
|
|
|
|
|
1034 |
|
1035 |
-
|
1036 |
-
|
|
|
|
|
|
|
1037 |
}
|
1038 |
}
|
1039 |
|
@@ -1131,6 +1176,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
1131 |
* @return array $arr_options
|
1132 |
*/
|
1133 |
function get_options_from_callback( $data, $type ) {
|
|
|
1134 |
|
1135 |
if ( in_array( $type, array( 'select', 'multiselect' ) ) && ! empty( $data['custom_dropdown_options_source'] ) ) {
|
1136 |
|
@@ -1723,6 +1769,22 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
1723 |
}
|
1724 |
|
1725 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1726 |
/**
|
1727 |
* Gets a field in 'input mode'
|
1728 |
*
|
@@ -1853,9 +1915,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
1853 |
um_fetch_user( $_um_profile_id );
|
1854 |
|
1855 |
// fields that need to be disabled in edit mode (profile)
|
1856 |
-
$arr_restricted_fields =
|
1857 |
-
$arr_restricted_fields = apply_filters( 'um_user_profile_restricted_edit_fields', $arr_restricted_fields, $key, $data, $_um_profile_id );
|
1858 |
-
|
1859 |
if ( in_array( $key, $arr_restricted_fields ) && $this->editing == true && $this->set_mode == 'profile' ) {
|
1860 |
return;
|
1861 |
}
|
@@ -2467,7 +2527,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2467 |
$set_mode = '';
|
2468 |
}
|
2469 |
$nonce = wp_create_nonce( 'um_upload_nonce-' . $this->timestamp );
|
2470 |
-
$output .= '<div class="um-single-image-preview ' . $crop_class . '" data-crop="' . $crop_data . '" data-ratio="' . $ratio . '" data-min_width="' . $min_width . '" data-min_height="' . $min_height . '" data-coord=""><a href="
|
2471 |
$output .= '<div class="um-single-image-upload" data-user_id="' . esc_attr( $_um_profile_id ) . '" data-nonce="' . $nonce . '" data-timestamp="' . esc_attr( $this->timestamp ) . '" data-icon="' . esc_attr( $icon ) . '" data-set_id="' . esc_attr( $set_id ) . '" data-set_mode="' . esc_attr( $set_mode ) . '" data-type="' . esc_attr( $type ) . '" data-key="' . esc_attr( $key ) . '" data-max_size="' . esc_attr( $max_size ) . '" data-max_size_error="' . esc_attr( $max_size_error ) . '" data-min_size_error="' . esc_attr( $min_size_error ) . '" data-extension_error="' . esc_attr( $extension_error ) . '" data-allowed_types="' . esc_attr( $allowed_types ) . '" data-upload_text="' . esc_attr( $upload_text ) . '" data-max_files_error="' . esc_attr( $max_files_error ) . '" data-upload_help_text="' . esc_attr( $upload_help_text ) . '">' . $button_text . '</div>';
|
2472 |
$output .= '<div class="um-modal-footer">
|
2473 |
<div class="um-modal-right">
|
@@ -2556,7 +2616,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2556 |
$set_mode = '';
|
2557 |
}
|
2558 |
$output .= '<div class="um-single-file-preview">
|
2559 |
-
<a href="
|
2560 |
<div class="um-single-fileinfo">
|
2561 |
<a href="" target="_blank">
|
2562 |
<span class="icon"><i></i></span>
|
@@ -2603,11 +2663,16 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2603 |
$output .= '<div class="um-field-icon"><i class="' . esc_attr( $icon ) . '"></i></div>';
|
2604 |
}
|
2605 |
|
|
|
2606 |
$has_parent_option = false;
|
2607 |
$disabled_by_parent_option = '';
|
2608 |
$atts_ajax = '';
|
2609 |
$select_original_option_value = '';
|
2610 |
|
|
|
|
|
|
|
|
|
2611 |
if ( ! empty( $data['parent_dropdown_relationship'] ) && ! UM()->user()->preview ) {
|
2612 |
|
2613 |
$disabled_by_parent_option = 'disabled = disabled';
|
@@ -2642,12 +2707,26 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2642 |
um_user( $data['parent_dropdown_relationship'] )
|
2643 |
) {
|
2644 |
$options = call_user_func( $data['custom_dropdown_options_source'], $data['parent_dropdown_relationship'] );
|
|
|
2645 |
$disabled_by_parent_option = '';
|
2646 |
if ( um_user( $form_key ) ) {
|
2647 |
$select_original_option_value = " data-um-original-value='" . um_user( $form_key ) . "' ";
|
2648 |
}
|
2649 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2650 |
|
|
|
|
|
|
|
|
|
2651 |
}
|
2652 |
|
2653 |
if ( ! empty( $data['custom_dropdown_options_source'] ) ) {
|
@@ -2702,12 +2781,6 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2702 |
|
2703 |
}
|
2704 |
|
2705 |
-
if ( ! empty( $placeholder ) && is_string( $placeholder ) ) {
|
2706 |
-
$placeholder = strip_tags( $placeholder );
|
2707 |
-
}
|
2708 |
-
|
2709 |
-
$output .= '<select data-default="' . $data['default'] . '" ' . $disabled . ' ' . $select_original_option_value . ' ' . $disabled_by_parent_option . ' name="' . esc_attr( $form_key ) . '" id="' . esc_attr( $field_id ) . '" data-validate="' . esc_attr( $validate ) . '" data-key="' . esc_attr( $key ) . '" class="' . $this->get_class( $key, $data, $class ) . '" style="width: 100%" data-placeholder="' . esc_attr( $placeholder ) . '" ' . $atts_ajax . '>';
|
2710 |
-
|
2711 |
/**
|
2712 |
* UM hook
|
2713 |
*
|
@@ -2735,10 +2808,15 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2735 |
$options = UM()->builtin()->get ( $filter );
|
2736 |
}
|
2737 |
|
2738 |
-
|
|
|
2739 |
$options = UM()->builtin()->get( 'countries' );
|
|
|
|
|
2740 |
}
|
2741 |
|
|
|
|
|
2742 |
if ( isset( $options ) ) {
|
2743 |
/**
|
2744 |
* UM hook
|
@@ -2786,9 +2864,9 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2786 |
}
|
2787 |
}
|
2788 |
|
2789 |
-
$
|
2790 |
-
|
2791 |
-
|
2792 |
|
2793 |
/**
|
2794 |
* UM hook
|
@@ -2800,14 +2878,22 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2800 |
* [{"var":"$options_pair","type":"null","desc":"Enable pairs"},
|
2801 |
* {"var":"$data","type":"array","desc":"Field Data"}]
|
2802 |
*/
|
2803 |
-
$options_pair = apply_filters(
|
2804 |
|
2805 |
// switch options pair for custom options from a callback function
|
2806 |
if ( ! empty( $data['custom_dropdown_options_source'] ) ) {
|
2807 |
$options_pair = true;
|
2808 |
}
|
2809 |
|
2810 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2811 |
|
2812 |
// add options
|
2813 |
if ( ! empty( $options ) ) {
|
@@ -2855,7 +2941,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
2855 |
$output .= '</div>';
|
2856 |
|
2857 |
|
2858 |
-
if ($this->is_error( $form_key )) {
|
2859 |
$output .= $this->field_error( $this->show_error( $form_key ) );
|
2860 |
}
|
2861 |
|
@@ -3309,7 +3395,7 @@ if ( ! class_exists( 'um\core\Fields' ) ) {
|
|
3309 |
* ?>
|
3310 |
*/
|
3311 |
$um_field_checkbox_item_title = apply_filters( 'um_field_checkbox_item_title', $um_field_checkbox_item_title, $key, $v, $data );
|
3312 |
-
$output .= '<span class="um-field-checkbox-option">' .
|
3313 |
$output .= '</label>';
|
3314 |
|
3315 |
if ( $i % 2 == 0 ) {
|
39 |
* @param bool $checked
|
40 |
*/
|
41 |
function checkbox( $id, $title, $checked = true ) {
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Set value on form submission
|
45 |
+
*/
|
46 |
+
if( isset( $_REQUEST[ $id ] ) ){
|
47 |
+
$checked = $_REQUEST[ $id ];
|
48 |
+
}
|
49 |
+
|
50 |
+
$class = $checked ? 'um-icon-android-checkbox-outline' : 'um-icon-android-checkbox-outline-blank';
|
51 |
+
|
52 |
+
?>
|
53 |
+
|
54 |
|
55 |
<div class="um-field um-field-c">
|
56 |
<div class="um-field-area">
|
420 |
$output .= '<div class="um-field-label">';
|
421 |
|
422 |
if ( isset( $data['icon'] ) && $data['icon'] != '' && isset( $this->field_icons ) && $this->field_icons != 'off' && ( $this->field_icons == 'label' || $this->viewing == true ) ) {
|
423 |
+
$output .= '<div class="um-field-label-icon"><i class="' . esc_attr( $data['icon'] ) . '" aria-label="' . esc_attr( $label ) . '"></i></div>';
|
424 |
}
|
425 |
|
426 |
if ( $this->viewing == true ) {
|
826 |
/**
|
827 |
* Checks if an option is selected
|
828 |
*
|
829 |
+
* is used by Select, Multiselect and Checkbox fields
|
830 |
+
*
|
831 |
* @param string $key
|
832 |
* @param string $value
|
833 |
* @param array $data
|
835 |
* @return boolean
|
836 |
*/
|
837 |
function is_selected( $key, $value, $data ) {
|
838 |
+
global $wpdb;
|
839 |
+
|
840 |
/**
|
841 |
* UM hook
|
842 |
*
|
859 |
*/
|
860 |
$key = apply_filters( 'um_is_selected_filter_key', $key );
|
861 |
|
862 |
+
if ( isset( UM()->form()->post_form[ $key ] ) ) {
|
863 |
+
|
864 |
+
if ( is_array( UM()->form()->post_form[ $key ] ) ) {
|
865 |
+
|
866 |
+
if ( in_array( $value, UM()->form()->post_form[ $key ] ) ) {
|
867 |
+
return true;
|
868 |
+
}
|
869 |
+
|
870 |
+
$stripslashed = array_map( 'stripslashes', UM()->form()->post_form[ $key ] );
|
871 |
+
if ( in_array( $value, $stripslashed ) ) {
|
872 |
+
return true;
|
873 |
+
}
|
874 |
+
|
875 |
+
if ( in_array( html_entity_decode( $value ), UM()->form()->post_form[ $key ] ) ) {
|
876 |
+
return true;
|
877 |
+
}
|
878 |
+
} else {
|
879 |
+
|
880 |
+
if ( $value == UM()->form()->post_form[ $key ] ) {
|
881 |
+
return true;
|
882 |
+
}
|
883 |
|
|
|
|
|
884 |
}
|
885 |
|
886 |
+
} else {
|
887 |
+
|
888 |
+
$field_value = um_user( $key );
|
889 |
+
if ( ! $field_value ) {
|
890 |
+
$field_value = 0;
|
891 |
}
|
892 |
|
893 |
+
if ( $field_value == 0 && $value == '0' ) {
|
894 |
+
$value = (int) $value;
|
895 |
}
|
896 |
|
897 |
+
if ( $key == 'role' ) {
|
898 |
|
899 |
+
$role_keys = get_option( 'um_roles' );
|
900 |
|
901 |
+
if ( ! empty( $role_keys ) ) {
|
902 |
+
if ( in_array( $field_value, $role_keys ) ) {
|
903 |
+
$field_value = 'um_' . $field_value;
|
904 |
+
}
|
905 |
}
|
906 |
+
}
|
907 |
|
|
|
|
|
|
|
908 |
|
909 |
+
/**
|
910 |
+
* UM hook
|
911 |
+
*
|
912 |
+
* @type filter
|
913 |
+
* @title um_is_selected_filter_value
|
914 |
+
* @description Change is selected filter value
|
915 |
+
* @input_vars
|
916 |
+
* [{"var":"$value","type":"string","desc":"Selected filter value"},
|
917 |
+
* {"var":"$key","type":"string","desc":"Selected filter key"},
|
918 |
+
* {"var":"$value","type":"string","desc":"Selected filter value"}]
|
919 |
+
* @change_log
|
920 |
+
* ["Since: 2.0"]
|
921 |
+
* @usage add_filter( 'um_is_selected_filter_value', 'function_name', 10, 2 );
|
922 |
+
* @example
|
923 |
+
* <?php
|
924 |
+
* add_filter( 'um_is_selected_filter_value', 'my_selected_filter_value', 10, 2 );
|
925 |
+
* function my_selected_filter_value( $value, $key ) {
|
926 |
+
* // your code here
|
927 |
+
* return $field_value;
|
928 |
+
* }
|
929 |
+
* ?>
|
930 |
+
*/
|
931 |
+
$field_value = apply_filters( 'um_is_selected_filter_value', $field_value, $key, $value );
|
932 |
|
933 |
+
/**
|
934 |
+
* UM hook
|
935 |
+
*
|
936 |
+
* @type filter
|
937 |
+
* @title um_is_selected_filter_data
|
938 |
+
* @description Change is selected filter data
|
939 |
+
* @input_vars
|
940 |
+
* [{"var":"$data","type":"array","desc":"Selected filter value"},
|
941 |
+
* {"var":"$key","type":"string","desc":"Selected filter key"},
|
942 |
+
* {"var":"$value","type":"string","desc":"Selected filter value"}]
|
943 |
+
* @change_log
|
944 |
+
* ["Since: 2.0"]
|
945 |
+
* @usage add_filter( 'um_is_selected_filter_data', 'function_name', 10, 3 );
|
946 |
+
* @example
|
947 |
+
* <?php
|
948 |
+
* add_filter( 'um_is_selected_filter_data', 'my_selected_filter_data', 10, 3 );
|
949 |
+
* function my_selected_filter_data( $data, $key, $value ) {
|
950 |
+
* // your code here
|
951 |
+
* return $data;
|
952 |
+
* }
|
953 |
+
* ?>
|
954 |
+
*/
|
955 |
+
$data = apply_filters( 'um_is_selected_filter_data', $data, $key, $field_value );
|
956 |
|
957 |
+
if ( ! $this->editing ) {
|
958 |
+
// show default on register screen if there is default
|
959 |
+
if ( isset( $data['default'] ) ) {
|
960 |
+
if ( strstr( $data['default'], ', ' ) ) {
|
961 |
+
$data['default'] = explode( ', ', $data['default'] );
|
962 |
}
|
|
|
963 |
|
964 |
+
if ( ! is_array( $data['default'] ) && $data['default'] === $value ) {
|
965 |
+
return true;
|
966 |
+
}
|
967 |
|
968 |
+
if ( is_array( $data['default'] ) && in_array( $value, $data['default'] ) ) {
|
969 |
+
return true;
|
970 |
+
}
|
971 |
+
}
|
972 |
+
} else {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
973 |
|
974 |
+
if ( $field_value && is_array( $field_value ) && ( in_array( $value, $field_value ) || in_array( html_entity_decode( $value ), $field_value ) ) ) {
|
975 |
return true;
|
976 |
}
|
977 |
|
978 |
+
if ( $field_value == 0 && ! is_array( $field_value ) && $field_value === $value ) {
|
979 |
return true;
|
980 |
}
|
981 |
|
982 |
+
if ( $field_value && ! is_array( $field_value ) && $field_value == $value ) {
|
983 |
return true;
|
984 |
}
|
985 |
|
986 |
+
if ( $field_value && ! is_array( $field_value ) && html_entity_decode( $field_value ) == html_entity_decode( $value ) ) {
|
987 |
return true;
|
988 |
}
|
989 |
|
990 |
+
// show default on edit screen if there isn't meta row in usermeta table
|
991 |
+
$direct_db_value = $wpdb->get_var( $wpdb->prepare( "SELECT ISNULL( meta_value ) FROM {$wpdb->usermeta} WHERE user_id = %d AND meta_key = %s", um_user( 'ID' ), $key ) );
|
992 |
+
if ( ! isset( $direct_db_value ) && isset( $data['default'] ) ) {
|
993 |
+
if ( strstr( $data['default'], ', ' ) ) {
|
994 |
+
$data['default'] = explode( ', ', $data['default'] );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
995 |
}
|
|
|
996 |
|
997 |
+
if ( ! is_array( $data['default'] ) && $data['default'] === $value ) {
|
998 |
+
return true;
|
999 |
+
}
|
1000 |
|
1001 |
+
if ( is_array( $data['default'] ) && in_array( $value, $data['default'] ) ) {
|
1002 |
+
return true;
|
1003 |
+
}
|
1004 |
}
|
|
|
1005 |
}
|
1006 |
|
1007 |
}
|
1020 |
* @return boolean
|
1021 |
*/
|
1022 |
function is_radio_checked( $key, $value, $data ) {
|
1023 |
+
global $wpdb;
|
1024 |
+
|
1025 |
if ( isset( UM()->form()->post_form[ $key ] ) ) {
|
1026 |
if ( is_array( UM()->form()->post_form[ $key ] ) && in_array( $value, UM()->form()->post_form[ $key ] ) ) {
|
1027 |
return true;
|
1029 |
return true;
|
1030 |
}
|
1031 |
} else {
|
|
|
1032 |
|
1033 |
+
if ( $this->editing ) {
|
1034 |
+
if ( um_user( $key ) ) {
|
|
|
1035 |
|
1036 |
+
if ( strstr( $key, 'role_' ) ) {
|
1037 |
+
$key = 'role';
|
1038 |
+
}
|
1039 |
+
|
1040 |
+
$um_user_value = um_user( $key );
|
1041 |
|
1042 |
+
if ( $key == 'role' ) {
|
1043 |
+
$um_user_value = strtolower( $um_user_value );
|
1044 |
|
1045 |
+
$role_keys = get_option( 'um_roles' );
|
1046 |
|
1047 |
+
if ( ! empty( $role_keys ) ) {
|
1048 |
+
if ( in_array( $um_user_value, $role_keys ) ) {
|
1049 |
+
$um_user_value = 'um_' . $um_user_value;
|
1050 |
+
}
|
1051 |
}
|
1052 |
}
|
|
|
1053 |
|
1054 |
+
if ( $um_user_value == $value ) {
|
1055 |
+
return true;
|
1056 |
+
}
|
1057 |
|
1058 |
+
if ( is_array( $um_user_value ) && in_array( $value, $um_user_value ) ) {
|
1059 |
+
return true;
|
1060 |
+
}
|
1061 |
|
1062 |
+
if ( is_array( $um_user_value ) ) {
|
1063 |
+
foreach ( $um_user_value as $u ) {
|
1064 |
+
if ( $u == html_entity_decode( $value ) ) {
|
1065 |
+
return true;
|
1066 |
+
}
|
1067 |
}
|
1068 |
}
|
1069 |
+
} else {
|
1070 |
|
1071 |
+
// show default on edit screen if there isn't meta row in usermeta table
|
1072 |
+
$direct_db_value = $wpdb->get_var( $wpdb->prepare( "SELECT ISNULL( meta_value ) FROM {$wpdb->usermeta} WHERE user_id = %d AND meta_key = %s", um_user( 'ID' ), $key ) );
|
1073 |
+
if ( ! isset( $direct_db_value ) && isset( $data['default'] ) && $data['default'] == $value ) {
|
1074 |
+
return true;
|
1075 |
+
}
|
1076 |
|
1077 |
+
}
|
1078 |
+
} else {
|
1079 |
+
if ( isset( $data['default'] ) && $data['default'] == $value ) {
|
1080 |
+
return true;
|
1081 |
+
}
|
1082 |
}
|
1083 |
}
|
1084 |
|
1176 |
* @return array $arr_options
|
1177 |
*/
|
1178 |
function get_options_from_callback( $data, $type ) {
|
1179 |
+
$arr_options = array();
|
1180 |
|
1181 |
if ( in_array( $type, array( 'select', 'multiselect' ) ) && ! empty( $data['custom_dropdown_options_source'] ) ) {
|
1182 |
|
1769 |
}
|
1770 |
|
1771 |
|
1772 |
+
/**
|
1773 |
+
* Getting the fields that need to be disabled in edit mode (profile)
|
1774 |
+
*
|
1775 |
+
* @param bool $_um_profile_id
|
1776 |
+
*
|
1777 |
+
* @return array
|
1778 |
+
*/
|
1779 |
+
function get_restricted_fields_for_edit( $_um_profile_id = false ) {
|
1780 |
+
// fields that need to be disabled in edit mode (profile)
|
1781 |
+
$arr_restricted_fields = array( 'user_email', 'username', 'user_login', 'user_password' );
|
1782 |
+
$arr_restricted_fields = apply_filters( 'um_user_profile_restricted_edit_fields', $arr_restricted_fields, $_um_profile_id );
|
1783 |
+
|
1784 |
+
return $arr_restricted_fields;
|
1785 |
+
}
|
1786 |
+
|
1787 |
+
|
1788 |
/**
|
1789 |
* Gets a field in 'input mode'
|
1790 |
*
|
1915 |
um_fetch_user( $_um_profile_id );
|
1916 |
|
1917 |
// fields that need to be disabled in edit mode (profile)
|
1918 |
+
$arr_restricted_fields = $this->get_restricted_fields_for_edit( $_um_profile_id );
|
|
|
|
|
1919 |
if ( in_array( $key, $arr_restricted_fields ) && $this->editing == true && $this->set_mode == 'profile' ) {
|
1920 |
return;
|
1921 |
}
|
2527 |
$set_mode = '';
|
2528 |
}
|
2529 |
$nonce = wp_create_nonce( 'um_upload_nonce-' . $this->timestamp );
|
2530 |
+
$output .= '<div class="um-single-image-preview ' . $crop_class . '" data-crop="' . $crop_data . '" data-ratio="' . $ratio . '" data-min_width="' . $min_width . '" data-min_height="' . $min_height . '" data-coord=""><a href="javascript:void(0);" class="cancel"><i class="um-icon-close"></i></a><img src="" alt="" /><div class="um-clear"></div></div><div class="um-clear"></div>';
|
2531 |
$output .= '<div class="um-single-image-upload" data-user_id="' . esc_attr( $_um_profile_id ) . '" data-nonce="' . $nonce . '" data-timestamp="' . esc_attr( $this->timestamp ) . '" data-icon="' . esc_attr( $icon ) . '" data-set_id="' . esc_attr( $set_id ) . '" data-set_mode="' . esc_attr( $set_mode ) . '" data-type="' . esc_attr( $type ) . '" data-key="' . esc_attr( $key ) . '" data-max_size="' . esc_attr( $max_size ) . '" data-max_size_error="' . esc_attr( $max_size_error ) . '" data-min_size_error="' . esc_attr( $min_size_error ) . '" data-extension_error="' . esc_attr( $extension_error ) . '" data-allowed_types="' . esc_attr( $allowed_types ) . '" data-upload_text="' . esc_attr( $upload_text ) . '" data-max_files_error="' . esc_attr( $max_files_error ) . '" data-upload_help_text="' . esc_attr( $upload_help_text ) . '">' . $button_text . '</div>';
|
2532 |
$output .= '<div class="um-modal-footer">
|
2533 |
<div class="um-modal-right">
|
2616 |
$set_mode = '';
|
2617 |
}
|
2618 |
$output .= '<div class="um-single-file-preview">
|
2619 |
+
<a href="javascript:void(0);" class="cancel"><i class="um-icon-close"></i></a>
|
2620 |
<div class="um-single-fileinfo">
|
2621 |
<a href="" target="_blank">
|
2622 |
<span class="icon"><i></i></span>
|
2663 |
$output .= '<div class="um-field-icon"><i class="' . esc_attr( $icon ) . '"></i></div>';
|
2664 |
}
|
2665 |
|
2666 |
+
$options = array();
|
2667 |
$has_parent_option = false;
|
2668 |
$disabled_by_parent_option = '';
|
2669 |
$atts_ajax = '';
|
2670 |
$select_original_option_value = '';
|
2671 |
|
2672 |
+
if ( isset( $data[ 'options' ] ) && is_array( $data[ 'options' ] ) ) {
|
2673 |
+
$options = $data[ 'options' ];
|
2674 |
+
}
|
2675 |
+
|
2676 |
if ( ! empty( $data['parent_dropdown_relationship'] ) && ! UM()->user()->preview ) {
|
2677 |
|
2678 |
$disabled_by_parent_option = 'disabled = disabled';
|
2707 |
um_user( $data['parent_dropdown_relationship'] )
|
2708 |
) {
|
2709 |
$options = call_user_func( $data['custom_dropdown_options_source'], $data['parent_dropdown_relationship'] );
|
2710 |
+
|
2711 |
$disabled_by_parent_option = '';
|
2712 |
if ( um_user( $form_key ) ) {
|
2713 |
$select_original_option_value = " data-um-original-value='" . um_user( $form_key ) . "' ";
|
2714 |
}
|
2715 |
}
|
2716 |
+
}
|
2717 |
+
|
2718 |
+
// Child dropdown option selected
|
2719 |
+
if ( isset( UM()->form()->post_form[ $form_key ] ) ) {
|
2720 |
+
$select_original_option_value = " data-um-original-value='" . esc_attr( UM()->form()->post_form[ $form_key ] ) . "' ";
|
2721 |
+
}
|
2722 |
+
|
2723 |
+
// Child dropdown
|
2724 |
+
if ( $has_parent_option ) {
|
2725 |
|
2726 |
+
if ( ! empty( $data['custom_dropdown_options_source'] ) && $has_parent_option &&
|
2727 |
+
function_exists( $data['custom_dropdown_options_source'] ) && isset( UM()->form()->post_form[ $form_key ] ) ) {
|
2728 |
+
$options = call_user_func( $data['custom_dropdown_options_source'], $data['parent_dropdown_relationship'] );
|
2729 |
+
}
|
2730 |
}
|
2731 |
|
2732 |
if ( ! empty( $data['custom_dropdown_options_source'] ) ) {
|
2781 |
|
2782 |
}
|
2783 |
|
|
|
|
|
|
|
|
|
|
|
|
|
2784 |
/**
|
2785 |
* UM hook
|
2786 |
*
|
2808 |
$options = UM()->builtin()->get ( $filter );
|
2809 |
}
|
2810 |
|
2811 |
+
// 'country'
|
2812 |
+
if ( $key === 'country' && empty( $options ) ) {
|
2813 |
$options = UM()->builtin()->get( 'countries' );
|
2814 |
+
} else if ( empty( $options ) && isset( $data['options'] ) ) {
|
2815 |
+
$options = $data['options'];
|
2816 |
}
|
2817 |
|
2818 |
+
$options = apply_filters( 'um_selectbox_options', $options, $key );
|
2819 |
+
|
2820 |
if ( isset( $options ) ) {
|
2821 |
/**
|
2822 |
* UM hook
|
2864 |
}
|
2865 |
}
|
2866 |
|
2867 |
+
if ( $form_key === 'role' ) {
|
2868 |
+
$options = $this->get_available_roles( $form_key, $options );
|
2869 |
+
}
|
2870 |
|
2871 |
/**
|
2872 |
* UM hook
|
2878 |
* [{"var":"$options_pair","type":"null","desc":"Enable pairs"},
|
2879 |
* {"var":"$data","type":"array","desc":"Field Data"}]
|
2880 |
*/
|
2881 |
+
$options_pair = apply_filters( 'um_select_options_pair', null, $data );
|
2882 |
|
2883 |
// switch options pair for custom options from a callback function
|
2884 |
if ( ! empty( $data['custom_dropdown_options_source'] ) ) {
|
2885 |
$options_pair = true;
|
2886 |
}
|
2887 |
|
2888 |
+
$field_value = '';
|
2889 |
+
|
2890 |
+
if ( ! empty( $placeholder ) && is_string( $placeholder ) ) {
|
2891 |
+
$placeholder = strip_tags( $placeholder );
|
2892 |
+
}
|
2893 |
+
|
2894 |
+
$output .= '<select data-default="' . $data['default'] . '" ' . $disabled . ' ' . $select_original_option_value . ' ' . $disabled_by_parent_option . ' name="' . esc_attr( $form_key ) . '" id="' . esc_attr( $field_id ) . '" data-validate="' . esc_attr( $validate ) . '" data-key="' . esc_attr( $key ) . '" class="' . $this->get_class( $key, $data, $class ) . '" style="width: 100%" data-placeholder="' . esc_attr( $placeholder ) . '" ' . $atts_ajax . '>';
|
2895 |
+
|
2896 |
+
$output .= '<option value=""></option>';
|
2897 |
|
2898 |
// add options
|
2899 |
if ( ! empty( $options ) ) {
|
2941 |
$output .= '</div>';
|
2942 |
|
2943 |
|
2944 |
+
if ( $this->is_error( $form_key ) ) {
|
2945 |
$output .= $this->field_error( $this->show_error( $form_key ) );
|
2946 |
}
|
2947 |
|
3395 |
* ?>
|
3396 |
*/
|
3397 |
$um_field_checkbox_item_title = apply_filters( 'um_field_checkbox_item_title', $um_field_checkbox_item_title, $key, $v, $data );
|
3398 |
+
$output .= '<span class="um-field-checkbox-option">' . __( $um_field_checkbox_item_title, 'ultimate-member' ) . '</span>';
|
3399 |
$output .= '</label>';
|
3400 |
|
3401 |
if ( $i % 2 == 0 ) {
|
includes/core/class-files.php
CHANGED
@@ -286,6 +286,7 @@ if ( ! class_exists( 'um\core\Files' ) ) {
|
|
286 |
wp_send_json_error( esc_js( __( 'Invalid coordinates', 'ultimate-member' ) ) );
|
287 |
}
|
288 |
|
|
|
289 |
$image_path = um_is_file_owner( $src, $user_id, true );
|
290 |
if ( ! $image_path ) {
|
291 |
wp_send_json_error( esc_js( __( 'Invalid file ownership', 'ultimate-member' ) ) );
|
@@ -301,9 +302,10 @@ if ( ! class_exists( 'um\core\Files' ) ) {
|
|
301 |
}
|
302 |
|
303 |
|
304 |
-
|
305 |
/**
|
306 |
* Image upload by AJAX
|
|
|
|
|
307 |
*/
|
308 |
function ajax_image_upload() {
|
309 |
$ret['error'] = null;
|
@@ -312,7 +314,7 @@ if ( ! class_exists( 'um\core\Files' ) ) {
|
|
312 |
$id = $_POST['key'];
|
313 |
$timestamp = $_POST['timestamp'];
|
314 |
$nonce = $_POST['_wpnonce'];
|
315 |
-
$user_id = $_POST['user_id'];
|
316 |
|
317 |
UM()->fields()->set_id = $_POST['set_id'];
|
318 |
UM()->fields()->set_mode = $_POST['set_mode'];
|
@@ -338,7 +340,7 @@ if ( ! class_exists( 'um\core\Files' ) ) {
|
|
338 |
* }
|
339 |
* ?>
|
340 |
*/
|
341 |
-
$um_image_upload_nonce = apply_filters(
|
342 |
|
343 |
if ( $um_image_upload_nonce ) {
|
344 |
if ( ! wp_verify_nonce( $nonce, "um_upload_nonce-{$timestamp}" ) && is_user_logged_in() ) {
|
@@ -355,11 +357,10 @@ if ( ! class_exists( 'um\core\Files' ) ) {
|
|
355 |
UM()->uploader()->replace_upload_dir = true;
|
356 |
$uploaded = UM()->uploader()->upload_image( $_FILES[ $id ], $user_id, $id );
|
357 |
UM()->uploader()->replace_upload_dir = false;
|
358 |
-
if ( isset( $uploaded['error'] ) ){
|
359 |
$ret['error'] = $uploaded['error'];
|
360 |
} else {
|
361 |
-
$
|
362 |
-
$ret[ ] = $uploaded['handle_upload'];
|
363 |
}
|
364 |
|
365 |
}
|
@@ -1117,250 +1118,13 @@ if ( ! class_exists( 'um\core\Files' ) ) {
|
|
1117 |
* @param $source
|
1118 |
* @param $key
|
1119 |
*
|
|
|
|
|
1120 |
* @return string
|
1121 |
*/
|
1122 |
function new_user_upload( $user_id, $source, $key ) {
|
1123 |
-
|
1124 |
-
|
1125 |
-
wp_die( __("Invalid user ID: ".json_encode( $user_id )." ",'ultimate-member') );
|
1126 |
-
}
|
1127 |
-
|
1128 |
-
$user_id = trim( $user_id );
|
1129 |
-
|
1130 |
-
// if he does not have uploads dir yet
|
1131 |
-
$this->new_user( $user_id );
|
1132 |
-
|
1133 |
-
if ( is_user_logged_in() && ( get_current_user_id() != $user_id ) && ! UM()->roles()->um_user_can( 'can_edit_everyone' ) ) {
|
1134 |
-
wp_die( __( 'Unauthorized to do this attempt.', 'ultimate-member' ) );
|
1135 |
-
}
|
1136 |
-
|
1137 |
-
/**
|
1138 |
-
* UM hook
|
1139 |
-
*
|
1140 |
-
* @type filter
|
1141 |
-
* @title um_allow_frontend_image_uploads
|
1142 |
-
* @description Allow Fronend Image uploads
|
1143 |
-
* @input_vars
|
1144 |
-
* [{"var":"$allow","type":"bool","desc":"Allow"},
|
1145 |
-
* {"var":"$user_id","type":"int","desc":"User ID"},
|
1146 |
-
* {"var":"$key","type":"string","desc":"Field Key"}]
|
1147 |
-
* @change_log
|
1148 |
-
* ["Since: 2.0"]
|
1149 |
-
* @usage add_filter( 'um_allow_frontend_image_uploads', 'function_name', 10, 3 );
|
1150 |
-
* @example
|
1151 |
-
* <?php
|
1152 |
-
* add_filter( 'um_allow_frontend_image_uploads', 'my_allow_frontend_image_uploads', 10, 3 );
|
1153 |
-
* function my_allow_frontend_image_uploads( $data ) {
|
1154 |
-
* // your code here
|
1155 |
-
* return $data;
|
1156 |
-
* }
|
1157 |
-
* ?>
|
1158 |
-
*/
|
1159 |
-
$allow_frontend_image_uploads = apply_filters( 'um_allow_frontend_image_uploads', false, $user_id, $key );
|
1160 |
-
|
1161 |
-
if ( $allow_frontend_image_uploads == false && ! is_user_logged_in() && ( $key == 'profile_photo' || $key == 'cover_photo' ) ) {
|
1162 |
-
wp_die( __('Unauthorized to do this attempt.','ultimate-member') );
|
1163 |
-
}
|
1164 |
-
|
1165 |
-
$ext = '.' . pathinfo($source, PATHINFO_EXTENSION);
|
1166 |
-
|
1167 |
-
// copy & overwrite file
|
1168 |
-
|
1169 |
-
if( in_array( $key , array('profile_photo','cover_photo') ) ){
|
1170 |
-
$filename = $key . $ext;
|
1171 |
-
$name = $key;
|
1172 |
-
}else{
|
1173 |
-
$filename = basename( $source );
|
1174 |
-
}
|
1175 |
-
|
1176 |
-
|
1177 |
-
|
1178 |
-
if ( file_exists( $this->upload_basedir . $user_id . '/' . $filename ) ) {
|
1179 |
-
unlink( $this->upload_basedir . $user_id . '/' . $filename );
|
1180 |
-
}
|
1181 |
-
copy( $source, $this->upload_basedir . $user_id . '/' . $filename );
|
1182 |
-
|
1183 |
-
$info = @getimagesize( $source );
|
1184 |
-
|
1185 |
-
// thumbs
|
1186 |
-
if ( $key == 'profile_photo' ) {
|
1187 |
-
|
1188 |
-
list($w, $h) = @getimagesize( $source );
|
1189 |
-
|
1190 |
-
|
1191 |
-
$sizes = UM()->options()->get( 'photo_thumb_sizes' );
|
1192 |
-
foreach( $sizes as $size ) {
|
1193 |
-
|
1194 |
-
$ratio = round( $w / $h, 2 );
|
1195 |
-
$height = round( $size / $ratio, 2 );
|
1196 |
-
|
1197 |
-
if ( file_exists( $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext ) ) {
|
1198 |
-
unlink( $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext );
|
1199 |
-
}
|
1200 |
-
|
1201 |
-
if ( $size < $w ) {
|
1202 |
-
|
1203 |
-
if ( $info['mime'] == 'image/jpeg' ){
|
1204 |
-
$thumb_s = imagecreatefromjpeg( $source );
|
1205 |
-
$thumb = imagecreatetruecolor( $size, $size );
|
1206 |
-
imagecopyresampled( $thumb, $thumb_s, 0, 0, 0, 0, $size, $size, $w, $h );
|
1207 |
-
imagejpeg( $thumb, $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext, 100);
|
1208 |
-
imagejpeg( $thumb, $this->upload_basedir . $user_id . '/' . $name . $ext, 100);
|
1209 |
-
}else if ( $info['mime'] == 'image/png' ){
|
1210 |
-
$thumb_s = imagecreatefrompng( $source );
|
1211 |
-
$thumb = imagecreatetruecolor( $size, $size );
|
1212 |
-
imagealphablending( $thumb, false);
|
1213 |
-
imagesavealpha( $thumb, true);
|
1214 |
-
imagecopyresampled( $thumb, $thumb_s, 0, 0, 0, 0, $size, $size, $w, $h );
|
1215 |
-
imagepng( $thumb, $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext );
|
1216 |
-
}else if ( $info['mime'] == 'image/gif' ){
|
1217 |
-
$thumb_s = imagecreatefromgif( $source );
|
1218 |
-
$thumb = imagecreatetruecolor( $size, $size );
|
1219 |
-
imagecopyresampled( $thumb, $thumb_s, 0, 0, 0, 0, $size, $size, $w, $h );
|
1220 |
-
imagegif( $thumb, $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext);
|
1221 |
-
imagegif( $thumb, $this->upload_basedir . $user_id . '/' . $name . $ext);
|
1222 |
-
}
|
1223 |
-
}
|
1224 |
-
|
1225 |
-
}
|
1226 |
-
|
1227 |
-
// removes a synced profile photo
|
1228 |
-
delete_user_meta( $user_id, 'synced_profile_photo' );
|
1229 |
-
|
1230 |
-
} else if ( $key == 'cover_photo' ) {
|
1231 |
-
|
1232 |
-
list($w, $h) = @getimagesize( $source );
|
1233 |
-
|
1234 |
-
$sizes = UM()->options()->get( 'cover_thumb_sizes' );
|
1235 |
-
foreach ( $sizes as $size ) {
|
1236 |
-
|
1237 |
-
$ratio = round( $w / $h, 2 );
|
1238 |
-
$height = round( $size / $ratio, 2 );
|
1239 |
-
|
1240 |
-
if ( file_exists( $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext ) ) {
|
1241 |
-
unlink( $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext );
|
1242 |
-
}
|
1243 |
-
|
1244 |
-
if ( $size < $w ) {
|
1245 |
-
|
1246 |
-
if ( $info['mime'] == 'image/jpeg' ){
|
1247 |
-
$thumb = imagecreatetruecolor( $size, $height );
|
1248 |
-
$thumb_s = imagecreatefromjpeg( $source );
|
1249 |
-
imagecopyresampled( $thumb, $thumb_s, 0, 0, 0, 0, $size, $height, $w, $h );
|
1250 |
-
imagejpeg( $thumb, $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext, 100);
|
1251 |
-
}else if ( $info['mime'] == 'image/png' ){
|
1252 |
-
$thumb_s = imagecreatefrompng( $source );
|
1253 |
-
$thumb = imagecreatetruecolor( $size, $height );
|
1254 |
-
imagealphablending( $thumb, false);
|
1255 |
-
imagesavealpha( $thumb, true);
|
1256 |
-
imagecopyresampled( $thumb, $thumb_s, 0, 0, 0, 0, $size, $height, $w, $h );
|
1257 |
-
imagepng( $thumb, $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext );
|
1258 |
-
}else if ( $info['mime'] == 'image/gif' ){
|
1259 |
-
$thumb = imagecreatetruecolor( $size, $height );
|
1260 |
-
$thumb_s = imagecreatefromgif( $source );
|
1261 |
-
imagecopyresampled( $thumb, $thumb_s, 0, 0, 0, 0, $size, $height, $w, $h );
|
1262 |
-
imagegif( $thumb, $this->upload_basedir . $user_id . '/' . $name . '-' . $size . $ext);
|
1263 |
-
}
|
1264 |
-
}
|
1265 |
-
|
1266 |
-
}
|
1267 |
-
|
1268 |
-
}
|
1269 |
-
|
1270 |
-
// clean up temp
|
1271 |
-
$dir = dirname( $source );
|
1272 |
-
unlink( $source );
|
1273 |
-
rmdir( $dir );
|
1274 |
-
|
1275 |
-
/**
|
1276 |
-
* UM hook
|
1277 |
-
*
|
1278 |
-
* @type action
|
1279 |
-
* @title um_before_upload_db_meta
|
1280 |
-
* @description Update user's meta before upload
|
1281 |
-
* @input_vars
|
1282 |
-
* [{"var":"$user_id","type":"int","desc":"User ID"},
|
1283 |
-
* {"var":"$key","type":"string","desc":"Meta key"}]
|
1284 |
-
* @change_log
|
1285 |
-
* ["Since: 2.0"]
|
1286 |
-
* @usage add_action( 'um_before_upload_db_meta', 'function_name', 10, 2 );
|
1287 |
-
* @example
|
1288 |
-
* <?php
|
1289 |
-
* add_action( 'um_before_upload_db_meta', 'my_before_upload_db_meta', 10, 2 );
|
1290 |
-
* function my_before_upload_db_meta( $user_id, $key ) {
|
1291 |
-
* // your code here
|
1292 |
-
* }
|
1293 |
-
* ?>
|
1294 |
-
*/
|
1295 |
-
do_action( 'um_before_upload_db_meta', $user_id, $key );
|
1296 |
-
/**
|
1297 |
-
* UM hook
|
1298 |
-
*
|
1299 |
-
* @type action
|
1300 |
-
* @title um_before_upload_db_meta_{$key}
|
1301 |
-
* @description Update user's meta before upload
|
1302 |
-
* @input_vars
|
1303 |
-
* [{"var":"$user_id","type":"int","desc":"User ID"}]
|
1304 |
-
* @change_log
|
1305 |
-
* ["Since: 2.0"]
|
1306 |
-
* @usage add_action( 'um_before_upload_db_meta_{$key}', 'function_name', 10, 1 );
|
1307 |
-
* @example
|
1308 |
-
* <?php
|
1309 |
-
* add_action( 'um_before_upload_db_meta_{$key}', 'my_before_upload_db_meta', 10, 1 );
|
1310 |
-
* function my_before_upload_db_meta( $user_id ) {
|
1311 |
-
* // your code here
|
1312 |
-
* }
|
1313 |
-
* ?>
|
1314 |
-
*/
|
1315 |
-
do_action( "um_before_upload_db_meta_{$key}", $user_id );
|
1316 |
-
|
1317 |
-
update_user_meta( $user_id, $key, $filename );
|
1318 |
-
|
1319 |
-
/**
|
1320 |
-
* UM hook
|
1321 |
-
*
|
1322 |
-
* @type action
|
1323 |
-
* @title um_after_upload_db_meta
|
1324 |
-
* @description Update user's meta before upload
|
1325 |
-
* @input_vars
|
1326 |
-
* [{"var":"$user_id","type":"int","desc":"User ID"},
|
1327 |
-
* {"var":"$key","type":"string","desc":"Meta key"}]
|
1328 |
-
* @change_log
|
1329 |
-
* ["Since: 2.0"]
|
1330 |
-
* @usage add_action( 'um_after_upload_db_meta', 'function_name', 10, 2 );
|
1331 |
-
* @example
|
1332 |
-
* <?php
|
1333 |
-
* add_action( 'um_after_upload_db_meta', 'my_after_upload_db_meta', 10, 2 );
|
1334 |
-
* function my_after_upload_db_meta( $user_id, $key ) {
|
1335 |
-
* // your code here
|
1336 |
-
* }
|
1337 |
-
* ?>
|
1338 |
-
*/
|
1339 |
-
do_action( 'um_after_upload_db_meta', $user_id, $key );
|
1340 |
-
/**
|
1341 |
-
* UM hook
|
1342 |
-
*
|
1343 |
-
* @type action
|
1344 |
-
* @title um_after_upload_db_meta_{$key}
|
1345 |
-
* @description Update user's meta after upload
|
1346 |
-
* @input_vars
|
1347 |
-
* [{"var":"$user_id","type":"int","desc":"User ID"}]
|
1348 |
-
* @change_log
|
1349 |
-
* ["Since: 2.0"]
|
1350 |
-
* @usage add_action( 'um_after_upload_db_meta_{$key}', 'function_name', 10, 1 );
|
1351 |
-
* @example
|
1352 |
-
* <?php
|
1353 |
-
* add_action( 'um_after_upload_db_meta_{$key}', 'my_after_upload_db_meta', 10, 1 );
|
1354 |
-
* function my_after_upload_db_meta( $user_id ) {
|
1355 |
-
* // your code here
|
1356 |
-
* }
|
1357 |
-
* ?>
|
1358 |
-
*/
|
1359 |
-
do_action( "um_after_upload_db_meta_{$key}", $user_id );
|
1360 |
-
|
1361 |
-
// the url of upload
|
1362 |
-
return $this->upload_baseurl . $user_id . '/' . $filename;
|
1363 |
-
|
1364 |
}
|
1365 |
|
1366 |
|
@@ -1427,7 +1191,7 @@ if ( ! class_exists( 'um\core\Files' ) ) {
|
|
1427 |
*
|
1428 |
* @return string
|
1429 |
*/
|
1430 |
-
function format_bytes( $size
|
1431 |
if ( is_numeric( $size ) ) {
|
1432 |
$base = log( $size, 1024 );
|
1433 |
$suffixes = array( '', 'kb', 'MB', 'GB', 'TB' );
|
@@ -1441,5 +1205,32 @@ if ( ! class_exists( 'um\core\Files' ) ) {
|
|
1441 |
}
|
1442 |
|
1443 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1444 |
}
|
1445 |
}
|
286 |
wp_send_json_error( esc_js( __( 'Invalid coordinates', 'ultimate-member' ) ) );
|
287 |
}
|
288 |
|
289 |
+
$user_id = empty( $_REQUEST['user_id'] ) ? get_current_user_id() : $_REQUEST['user_id'];
|
290 |
$image_path = um_is_file_owner( $src, $user_id, true );
|
291 |
if ( ! $image_path ) {
|
292 |
wp_send_json_error( esc_js( __( 'Invalid file ownership', 'ultimate-member' ) ) );
|
302 |
}
|
303 |
|
304 |
|
|
|
305 |
/**
|
306 |
* Image upload by AJAX
|
307 |
+
*
|
308 |
+
* @throws \Exception
|
309 |
*/
|
310 |
function ajax_image_upload() {
|
311 |
$ret['error'] = null;
|
314 |
$id = $_POST['key'];
|
315 |
$timestamp = $_POST['timestamp'];
|
316 |
$nonce = $_POST['_wpnonce'];
|
317 |
+
$user_id = empty( $_POST['user_id'] ) ? get_current_user_id() : $_POST['user_id'];
|
318 |
|
319 |
UM()->fields()->set_id = $_POST['set_id'];
|
320 |
UM()->fields()->set_mode = $_POST['set_mode'];
|
340 |
* }
|
341 |
* ?>
|
342 |
*/
|
343 |
+
$um_image_upload_nonce = apply_filters( 'um_image_upload_nonce', true );
|
344 |
|
345 |
if ( $um_image_upload_nonce ) {
|
346 |
if ( ! wp_verify_nonce( $nonce, "um_upload_nonce-{$timestamp}" ) && is_user_logged_in() ) {
|
357 |
UM()->uploader()->replace_upload_dir = true;
|
358 |
$uploaded = UM()->uploader()->upload_image( $_FILES[ $id ], $user_id, $id );
|
359 |
UM()->uploader()->replace_upload_dir = false;
|
360 |
+
if ( isset( $uploaded['error'] ) ) {
|
361 |
$ret['error'] = $uploaded['error'];
|
362 |
} else {
|
363 |
+
$ret[] = $uploaded['handle_upload'];
|
|
|
364 |
}
|
365 |
|
366 |
}
|
1118 |
* @param $source
|
1119 |
* @param $key
|
1120 |
*
|
1121 |
+
* @deprecated 2.1.0
|
1122 |
+
*
|
1123 |
* @return string
|
1124 |
*/
|
1125 |
function new_user_upload( $user_id, $source, $key ) {
|
1126 |
+
um_deprecated_function( 'new_user_upload', '2.1.0', '' );
|
1127 |
+
return '';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1128 |
}
|
1129 |
|
1130 |
|
1191 |
*
|
1192 |
* @return string
|
1193 |
*/
|
1194 |
+
function format_bytes( $size, $precision = 1 ) {
|
1195 |
if ( is_numeric( $size ) ) {
|
1196 |
$base = log( $size, 1024 );
|
1197 |
$suffixes = array( '', 'kb', 'MB', 'GB', 'TB' );
|
1205 |
}
|
1206 |
|
1207 |
|
1208 |
+
/**
|
1209 |
+
* Get the list of profile/cover sizes
|
1210 |
+
*
|
1211 |
+
* @param string $type
|
1212 |
+
*
|
1213 |
+
* @return array
|
1214 |
+
*/
|
1215 |
+
function get_profile_photo_size( $type ) {
|
1216 |
+
$sizes = UM()->options()->get( $type );
|
1217 |
+
|
1218 |
+
$sizes = array_combine( $sizes, $sizes );
|
1219 |
+
|
1220 |
+
if ( $type == 'cover_thumb_sizes' ) {
|
1221 |
+
foreach ( $sizes as $key => $value ) {
|
1222 |
+
$sizes[ $key ] = $value . 'px';
|
1223 |
+
}
|
1224 |
+
} elseif ( $type == 'photo_thumb_sizes' ) {
|
1225 |
+
foreach ( $sizes as $key => $value ) {
|
1226 |
+
$sizes[ $key ] = $value . 'x' . $value . 'px';
|
1227 |
+
}
|
1228 |
+
}
|
1229 |
+
|
1230 |
+
$sizes['original'] = __( 'Original size', 'ultimate-member' );
|
1231 |
+
return $sizes;
|
1232 |
+
}
|
1233 |
+
|
1234 |
+
|
1235 |
}
|
1236 |
}
|
includes/core/class-form.php
CHANGED
@@ -26,22 +26,26 @@ if ( ! class_exists( 'um\core\Form' ) ) {
|
|
26 |
var $form_id;
|
27 |
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
/**
|
30 |
* Form constructor.
|
31 |
*/
|
32 |
function __construct() {
|
33 |
|
34 |
-
$this->post_form = null;
|
35 |
-
|
36 |
$this->form_suffix = null;
|
37 |
|
38 |
$this->errors = null;
|
39 |
|
40 |
$this->processing = null;
|
41 |
|
42 |
-
add_action('template_redirect', array(&$this, 'form_init'), 2);
|
43 |
|
44 |
-
add_action('init', array(&$this, 'field_declare'), 10);
|
45 |
|
46 |
}
|
47 |
|
@@ -218,8 +222,9 @@ if ( ! class_exists( 'um\core\Form' ) ) {
|
|
218 |
* @return boolean
|
219 |
*/
|
220 |
function has_error( $key ) {
|
221 |
-
if ( isset( $this->errors[$key] ) )
|
222 |
return true;
|
|
|
223 |
return false;
|
224 |
}
|
225 |
|
@@ -227,7 +232,7 @@ if ( ! class_exists( 'um\core\Form' ) ) {
|
|
227 |
/**
|
228 |
* Declare all fields
|
229 |
*/
|
230 |
-
function field_declare(){
|
231 |
if ( isset( UM()->builtin()->custom_fields ) ) {
|
232 |
$this->all_fields = UM()->builtin()->custom_fields;
|
233 |
} else {
|
@@ -237,11 +242,11 @@ if ( ! class_exists( 'um\core\Form' ) ) {
|
|
237 |
|
238 |
|
239 |
/**
|
240 |
-
* Validate form
|
241 |
*/
|
242 |
function form_init() {
|
243 |
if ( isset( $_SERVER['REQUEST_METHOD'] ) ) {
|
244 |
-
$http_post = ('POST' == $_SERVER['REQUEST_METHOD']);
|
245 |
} else {
|
246 |
$http_post = 'POST';
|
247 |
}
|
26 |
var $form_id;
|
27 |
|
28 |
|
29 |
+
/**
|
30 |
+
* @var null
|
31 |
+
*/
|
32 |
+
var $post_form = null;
|
33 |
+
|
34 |
+
|
35 |
/**
|
36 |
* Form constructor.
|
37 |
*/
|
38 |
function __construct() {
|
39 |
|
|
|
|
|
40 |
$this->form_suffix = null;
|
41 |
|
42 |
$this->errors = null;
|
43 |
|
44 |
$this->processing = null;
|
45 |
|
46 |
+
add_action( 'template_redirect', array( &$this, 'form_init' ), 2 );
|
47 |
|
48 |
+
add_action( 'init', array( &$this, 'field_declare' ), 10 );
|
49 |
|
50 |
}
|
51 |
|
222 |
* @return boolean
|
223 |
*/
|
224 |
function has_error( $key ) {
|
225 |
+
if ( isset( $this->errors[ $key ] ) ) {
|
226 |
return true;
|
227 |
+
}
|
228 |
return false;
|
229 |
}
|
230 |
|
232 |
/**
|
233 |
* Declare all fields
|
234 |
*/
|
235 |
+
function field_declare() {
|
236 |
if ( isset( UM()->builtin()->custom_fields ) ) {
|
237 |
$this->all_fields = UM()->builtin()->custom_fields;
|
238 |
} else {
|
242 |
|
243 |
|
244 |
/**
|
245 |
+
* Validate form on submit
|
246 |
*/
|
247 |
function form_init() {
|
248 |
if ( isset( $_SERVER['REQUEST_METHOD'] ) ) {
|
249 |
+
$http_post = ( 'POST' == $_SERVER['REQUEST_METHOD'] );
|
250 |
} else {
|
251 |
$http_post = 'POST';
|
252 |
}
|
includes/core/class-gdpr.php
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
-
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
7 |
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
+
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
7 |
|
includes/core/class-mail.php
CHANGED
@@ -435,7 +435,10 @@ if ( ! class_exists( 'um\core\Mail' ) ) {
|
|
435 |
add_filter( 'um_template_tags_replaces_hook', array( UM()->mail(), 'add_replace_placeholder' ), 10, 1 );
|
436 |
|
437 |
$subject = apply_filters( 'um_email_send_subject', UM()->options()->get( $template . '_sub' ), $template );
|
438 |
-
|
|
|
|
|
|
|
439 |
|
440 |
$this->message = $this->prepare_template( $template, $args );
|
441 |
|
435 |
add_filter( 'um_template_tags_replaces_hook', array( UM()->mail(), 'add_replace_placeholder' ), 10, 1 );
|
436 |
|
437 |
$subject = apply_filters( 'um_email_send_subject', UM()->options()->get( $template . '_sub' ), $template );
|
438 |
+
|
439 |
+
$subject = wp_unslash( um_convert_tags( $subject , $args ) );
|
440 |
+
|
441 |
+
$this->subject = html_entity_decode( $subject, ENT_QUOTES, 'UTF-8' );
|
442 |
|
443 |
$this->message = $this->prepare_template( $template, $args );
|
444 |
|
includes/core/class-member-directory.php
ADDED
@@ -0,0 +1,2198 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace um\core;
|
3 |
+
|
4 |
+
|
5 |
+
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
+
|
7 |
+
|
8 |
+
if ( ! class_exists( 'um\core\Member_Directory' ) ) {
|
9 |
+
|
10 |
+
|
11 |
+
/**
|
12 |
+
* Class Member_Directory
|
13 |
+
* @package um\core
|
14 |
+
*/
|
15 |
+
class Member_Directory {
|
16 |
+
|
17 |
+
|
18 |
+
/**
|
19 |
+
* Member Directory Views
|
20 |
+
*
|
21 |
+
* @var array
|
22 |
+
*/
|
23 |
+
var $view_types = array();
|
24 |
+
|
25 |
+
|
26 |
+
/**
|
27 |
+
* @var array
|
28 |
+
*/
|
29 |
+
var $sort_fields = array();
|
30 |
+
|
31 |
+
|
32 |
+
/**
|
33 |
+
* @var array
|
34 |
+
*/
|
35 |
+
var $default_sorting = array();
|
36 |
+
|
37 |
+
|
38 |
+
/**
|
39 |
+
* @var array
|
40 |
+
*/
|
41 |
+
var $filter_fields = array();
|
42 |
+
|
43 |
+
|
44 |
+
/**
|
45 |
+
* @var array
|
46 |
+
*/
|
47 |
+
var $custom_filters_in_query = array();
|
48 |
+
|
49 |
+
|
50 |
+
|
51 |
+
var $filter_supported_fields = array();
|
52 |
+
|
53 |
+
|
54 |
+
var $filter_types = array(
|
55 |
+
// 'select',
|
56 |
+
// 'slider',
|
57 |
+
// 'datepicker',
|
58 |
+
// 'timepicker',
|
59 |
+
);
|
60 |
+
|
61 |
+
|
62 |
+
var $core_search_fields = array(
|
63 |
+
'user_login',
|
64 |
+
'user_url',
|
65 |
+
'display_name',
|
66 |
+
'user_email',
|
67 |
+
'user_nicename',
|
68 |
+
);
|
69 |
+
|
70 |
+
|
71 |
+
/**
|
72 |
+
* @var
|
73 |
+
*/
|
74 |
+
var $query_args;
|
75 |
+
|
76 |
+
|
77 |
+
/**
|
78 |
+
* @var User Card cover size
|
79 |
+
*/
|
80 |
+
var $cover_size;
|
81 |
+
|
82 |
+
|
83 |
+
/**
|
84 |
+
* @var User Avatar size
|
85 |
+
*/
|
86 |
+
var $avatar_size;
|
87 |
+
|
88 |
+
|
89 |
+
/**
|
90 |
+
* Member_Directory constructor.
|
91 |
+
*/
|
92 |
+
function __construct() {
|
93 |
+
add_filter( 'plugins_loaded', array( &$this, 'init_variables' ), 99999 );
|
94 |
+
add_filter( 'init', array( &$this, 'init_filter_types' ), 2 );
|
95 |
+
|
96 |
+
add_action( 'template_redirect', array( &$this, 'access_members' ), 555 );
|
97 |
+
}
|
98 |
+
|
99 |
+
|
100 |
+
/**
|
101 |
+
* Getting member directory post ID via hash
|
102 |
+
* Hash is unique attr, which we use visible at frontend
|
103 |
+
*
|
104 |
+
* @param string $hash
|
105 |
+
*
|
106 |
+
* @return bool|int
|
107 |
+
*/
|
108 |
+
function get_directory_by_hash( $hash ) {
|
109 |
+
global $wpdb;
|
110 |
+
|
111 |
+
$directory_id = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE SUBSTRING( MD5( ID ), 11, 5 ) = %s", $hash ) );
|
112 |
+
|
113 |
+
if ( empty( $directory_id ) ) {
|
114 |
+
return false;
|
115 |
+
}
|
116 |
+
|
117 |
+
return (int) $directory_id;
|
118 |
+
}
|
119 |
+
|
120 |
+
|
121 |
+
/**
|
122 |
+
* @param $id
|
123 |
+
*
|
124 |
+
* @return bool|string
|
125 |
+
*/
|
126 |
+
function get_directory_hash( $id ) {
|
127 |
+
$hash = substr( md5( $id ), 10, 5 );
|
128 |
+
return $hash;
|
129 |
+
}
|
130 |
+
|
131 |
+
|
132 |
+
/**
|
133 |
+
* Get view Type template
|
134 |
+
* @param string $type
|
135 |
+
*
|
136 |
+
* @return string
|
137 |
+
*/
|
138 |
+
function get_type_basename( $type ) {
|
139 |
+
return apply_filters( "um_member_directory_{$type}_type_template_basename", '' );
|
140 |
+
}
|
141 |
+
|
142 |
+
|
143 |
+
/**
|
144 |
+
* Tag conversion for member directory
|
145 |
+
*
|
146 |
+
* @param string $string
|
147 |
+
* @param array $array
|
148 |
+
*
|
149 |
+
* @return string
|
150 |
+
*/
|
151 |
+
function convert_tags( $string, $array ) {
|
152 |
+
|
153 |
+
$search = array(
|
154 |
+
'{total_users}',
|
155 |
+
);
|
156 |
+
|
157 |
+
$replace = array(
|
158 |
+
$array['total_users'],
|
159 |
+
);
|
160 |
+
|
161 |
+
$string = str_replace( $search, $replace, $string );
|
162 |
+
return $string;
|
163 |
+
}
|
164 |
+
|
165 |
+
|
166 |
+
/**
|
167 |
+
* Members page allowed?
|
168 |
+
*
|
169 |
+
* can be disabled by "Enable Members Directory" option
|
170 |
+
*
|
171 |
+
*/
|
172 |
+
function access_members() {
|
173 |
+
if ( UM()->options()->get( 'members_page' ) == 0 && um_is_core_page( 'members' ) ) {
|
174 |
+
um_redirect_home();
|
175 |
+
}
|
176 |
+
}
|
177 |
+
|
178 |
+
|
179 |
+
/**
|
180 |
+
* @param $value
|
181 |
+
* @param $key
|
182 |
+
* @param $post_id
|
183 |
+
*
|
184 |
+
* @return array
|
185 |
+
*/
|
186 |
+
function before_save_data( $value, $key, $post_id ) {
|
187 |
+
|
188 |
+
$post = get_post( $post_id );
|
189 |
+
|
190 |
+
if ( $post->post_type == 'um_directory' ) {
|
191 |
+
|
192 |
+
if ( ! empty( $value ) && in_array( $key, array( '_um_view_types', '_um_roles', '_um_roles_can_search', '_um_roles_can_filter' ) ) ) {
|
193 |
+
$value = array_keys( $value );
|
194 |
+
} elseif ( $key == '_um_search_filters' ) {
|
195 |
+
|
196 |
+
$temp_value = array();
|
197 |
+
|
198 |
+
if ( ! empty( $value ) ) {
|
199 |
+
foreach ( $value as $k ) {
|
200 |
+
$filter_type = $this->filter_types[ $k ];
|
201 |
+
if ( ! empty( $filter_type ) ) {
|
202 |
+
if ( $filter_type == 'select' ) {
|
203 |
+
if ( ! empty( $_POST[ $k ] ) ) {
|
204 |
+
$temp_value[ $k ] = trim( $_POST[ $k ] );
|
205 |
+
}
|
206 |
+
} elseif ( $filter_type == 'slider' ) {
|
207 |
+
if ( ! empty( $_POST[ $k ] ) ) {
|
208 |
+
$temp_value[ $k ] = $_POST[ $k ];
|
209 |
+
}
|
210 |
+
} elseif ( $filter_type == 'timepicker' || $filter_type == 'datepicker' ) {
|
211 |
+
if ( ! empty( $_POST[ $k . '_from' ] ) && ! empty( $_POST[ $k . '_to' ] ) ) {
|
212 |
+
$temp_value[ $k ] = array( $_POST[ $k . '_from' ], $_POST[ $k . '_to' ] );
|
213 |
+
}
|
214 |
+
}
|
215 |
+
}
|
216 |
+
}
|
217 |
+
}
|
218 |
+
|
219 |
+
$value = $temp_value;
|
220 |
+
}
|
221 |
+
}
|
222 |
+
|
223 |
+
return $value;
|
224 |
+
}
|
225 |
+
|
226 |
+
|
227 |
+
/**
|
228 |
+
*
|
229 |
+
*/
|
230 |
+
function init_variables() {
|
231 |
+
|
232 |
+
// Types
|
233 |
+
$this->view_types = apply_filters( 'um_member_directory_views', array(
|
234 |
+
'grid' => array( 'title' => __( 'Grid', 'ultimate-member' ), 'icon' => 'um-faicon-th' ),
|
235 |
+
'list' => array( 'title' => __( 'List', 'ultimate-member' ), 'icon' => 'um-faicon-list' ),
|
236 |
+
) );
|
237 |
+
|
238 |
+
// Sort
|
239 |
+
$this->sort_fields = apply_filters( 'um_members_directory_sort_fields', array(
|
240 |
+
'user_registered_desc' => __( 'New users first', 'ultimate-member' ),
|
241 |
+
'user_registered_asc' => __( 'Old users first', 'ultimate-member' ),
|
242 |
+
'username' => __( 'Username', 'ultimate-member' ),
|
243 |
+
'first_name' => __( 'First name', 'ultimate-member' ),
|
244 |
+
'last_name' => __( 'Last name', 'ultimate-member' ),
|
245 |
+
'display_name' => __( 'Display name', 'ultimate-member' ),
|
246 |
+
'last_login' => __( 'Last login', 'ultimate-member' ),
|
247 |
+
) );
|
248 |
+
|
249 |
+
asort( $this->sort_fields );
|
250 |
+
|
251 |
+
$this->default_sorting = apply_filters( 'um_members_directory_default_sort', array_merge( $this->sort_fields, array(
|
252 |
+
'random' => __( 'Random', 'ultimate-member' ),
|
253 |
+
'other' => __( 'Other (Custom Field)', 'ultimate-member' ),
|
254 |
+
) ) );
|
255 |
+
|
256 |
+
asort( $this->default_sorting );
|
257 |
+
|
258 |
+
// Filters
|
259 |
+
$this->filter_fields = array(
|
260 |
+
'country' => __( 'Country', 'ultimate-member' ),
|
261 |
+
'gender' => __( 'Gender', 'ultimate-member' ),
|
262 |
+
'languages' => __( 'Languages', 'ultimate-member' ),
|
263 |
+
'role' => __( 'Roles', 'ultimate-member' ),
|
264 |
+
'birth_date' => __( 'Age', 'ultimate-member' ),
|
265 |
+
'last_login' => __( 'Last Login', 'ultimate-member' ),
|
266 |
+
'user_registered' => __( 'User Registered', 'ultimate-member' ),
|
267 |
+
);
|
268 |
+
|
269 |
+
$this->filter_supported_fields = apply_filters( 'um_members_directory_custom_field_types_supported_filter', array( 'date', 'time', 'select', 'multiselect', 'radio', 'checkbox', 'rating' ) );
|
270 |
+
|
271 |
+
if ( ! empty( UM()->builtin()->saved_fields ) ) {
|
272 |
+
foreach ( UM()->builtin()->saved_fields as $key => $data ) {
|
273 |
+
if ( isset( $data['type'] ) && in_array( $data['type'], $this->filter_supported_fields ) ) {
|
274 |
+
if ( isset( $data['title'] ) && array_search( $data['title'], $this->filter_fields ) !== false ) {
|
275 |
+
$data['title'] = $data['title'] . ' (' . $key . ')';
|
276 |
+
}
|
277 |
+
|
278 |
+
$title = isset( $data['title'] ) ? $data['title'] : ( isset( $data['label'] ) ? $data['label'] : '' );
|
279 |
+
if ( empty( $title ) ) {
|
280 |
+
continue;
|
281 |
+
}
|
282 |
+
|
283 |
+
$this->filter_fields[ $key ] = $title;
|
284 |
+
}
|
285 |
+
}
|
286 |
+
}
|
287 |
+
|
288 |
+
$this->filter_fields = apply_filters( 'um_members_directory_filter_fields', $this->filter_fields );
|
289 |
+
|
290 |
+
ksort( $this->filter_fields );
|
291 |
+
}
|
292 |
+
|
293 |
+
|
294 |
+
/**
|
295 |
+
*
|
296 |
+
*/
|
297 |
+
function init_filter_types() {
|
298 |
+
$this->filter_types = apply_filters( 'um_members_directory_filter_types', array(
|
299 |
+
'country' => 'select',
|
300 |
+
'gender' => 'select',
|
301 |
+
'languages' => 'select',
|
302 |
+
'role' => 'select',
|
303 |
+
'birth_date' => 'slider',
|
304 |
+
'last_login' => 'datepicker',
|
305 |
+
'user_registered' => 'datepicker',
|
306 |
+
) );
|
307 |
+
|
308 |
+
$fields = UM()->builtin()->all_user_fields;
|
309 |
+
|
310 |
+
$custom_fields_types = array_flip( array_keys( $this->filter_fields ) );
|
311 |
+
foreach ( $custom_fields_types as $key => &$value ) {
|
312 |
+
if ( ! isset( $fields[ $key ] ) ) {
|
313 |
+
unset( $custom_fields_types[ $key ] );
|
314 |
+
} else {
|
315 |
+
switch ( $fields[ $key ]['type'] ) {
|
316 |
+
default:
|
317 |
+
$value = apply_filters( 'um_custom_field_filter_type', 'select', $fields[ $key ] );
|
318 |
+
break;
|
319 |
+
case 'date':
|
320 |
+
$value = 'datepicker';
|
321 |
+
break;
|
322 |
+
case 'time':
|
323 |
+
$value = 'timepicker';
|
324 |
+
break;
|
325 |
+
case 'select':
|
326 |
+
case 'multiselect':
|
327 |
+
case 'radio':
|
328 |
+
case 'checkbox':
|
329 |
+
$value = 'select';
|
330 |
+
break;
|
331 |
+
case 'rating':
|
332 |
+
$value = 'slider';
|
333 |
+
break;
|
334 |
+
}
|
335 |
+
}
|
336 |
+
}
|
337 |
+
|
338 |
+
$this->filter_types = array_merge( $custom_fields_types, $this->filter_types );
|
339 |
+
}
|
340 |
+
|
341 |
+
|
342 |
+
/**
|
343 |
+
* Render member's directory
|
344 |
+
* filters selectboxes
|
345 |
+
*
|
346 |
+
* @param string $filter
|
347 |
+
* @param array $directory_data
|
348 |
+
* @param mixed $default_value
|
349 |
+
*
|
350 |
+
* @return string $filter
|
351 |
+
*/
|
352 |
+
function show_filter( $filter, $directory_data, $default_value = false ) {
|
353 |
+
|
354 |
+
if ( empty( $this->filter_types[ $filter ] ) ) {
|
355 |
+
return '';
|
356 |
+
}
|
357 |
+
|
358 |
+
$field_key = $filter;
|
359 |
+
if ( $filter == 'last_login' ) {
|
360 |
+
$field_key = '_um_last_login';
|
361 |
+
}
|
362 |
+
if ( $filter == 'role' ) {
|
363 |
+
$field_key = 'role_select';
|
364 |
+
}
|
365 |
+
|
366 |
+
$fields = UM()->builtin()->all_user_fields;
|
367 |
+
|
368 |
+
if ( isset( $fields[ $field_key ] ) ) {
|
369 |
+
$attrs = $fields[ $field_key ];
|
370 |
+
} else {
|
371 |
+
/**
|
372 |
+
* UM hook
|
373 |
+
*
|
374 |
+
* @type filter
|
375 |
+
* @title um_custom_search_field_{$filter}
|
376 |
+
* @description Custom search settings by $filter
|
377 |
+
* @input_vars
|
378 |
+
* [{"var":"$settings","type":"array","desc":"Search Settings"}]
|
379 |
+
* @change_log
|
380 |
+
* ["Since: 2.0"]
|
381 |
+
* @usage
|
382 |
+
* <?php add_filter( 'um_custom_search_field_{$filter}', 'function_name', 10, 1 ); ?>
|
383 |
+
* @example
|
384 |
+
* <?php
|
385 |
+
* add_filter( 'um_custom_search_field_{$filter}', 'my_custom_search_field', 10, 1 );
|
386 |
+
* function my_change_email_template_file( $settings ) {
|
387 |
+
* // your code here
|
388 |
+
* return $settings;
|
389 |
+
* }
|
390 |
+
* ?>
|
391 |
+
*/
|
392 |
+
$attrs = apply_filters( "um_custom_search_field_{$filter}", array(), $field_key );
|
393 |
+
}
|
394 |
+
|
395 |
+
/**
|
396 |
+
* UM hook
|
397 |
+
*
|
398 |
+
* @type filter
|
399 |
+
* @title um_search_fields
|
400 |
+
* @description Filter all search fields
|
401 |
+
* @input_vars
|
402 |
+
* [{"var":"$settings","type":"array","desc":"Search Fields"}]
|
403 |
+
* @change_log
|
404 |
+
* ["Since: 2.0"]
|
405 |
+
* @usage
|
406 |
+
* <?php add_filter( 'um_search_fields', 'function_name', 10, 1 ); ?>
|
407 |
+
* @example
|
408 |
+
* <?php
|
409 |
+
* add_filter( 'um_search_fields', 'my_search_fields', 10, 1 );
|
410 |
+
* function my_search_fields( $settings ) {
|
411 |
+
* // your code here
|
412 |
+
* return $settings;
|
413 |
+
* }
|
414 |
+
* ?>
|
415 |
+
*/
|
416 |
+
$attrs = apply_filters( 'um_search_fields', $attrs, $field_key );
|
417 |
+
|
418 |
+
$unique_hash = substr( md5( $directory_data['form_id'] ), 10, 5 );
|
419 |
+
|
420 |
+
ob_start();
|
421 |
+
|
422 |
+
switch ( $this->filter_types[ $filter ] ) {
|
423 |
+
default: {
|
424 |
+
|
425 |
+
do_action( "um_member_directory_filter_type_{$this->filter_types[ $filter ]}", $filter, $this->filter_types );
|
426 |
+
|
427 |
+
break;
|
428 |
+
}
|
429 |
+
case 'select': {
|
430 |
+
|
431 |
+
// getting value from GET line
|
432 |
+
$filter_from_url = ! empty( $_GET[ 'filter_' . $filter . '_' . $unique_hash ] ) ? explode( '||', sanitize_text_field( $_GET[ 'filter_' . $filter . '_' . $unique_hash ] ) ) : array();
|
433 |
+
|
434 |
+
if ( isset( $attrs['metakey'] ) && strstr( $attrs['metakey'], 'role_' ) ) {
|
435 |
+
$shortcode_roles = get_post_meta( $directory_data['form_id'], '_um_roles', true );
|
436 |
+
$um_roles = UM()->roles()->get_roles( false );
|
437 |
+
|
438 |
+
if ( ! empty( $shortcode_roles ) && is_array( $shortcode_roles ) ) {
|
439 |
+
$attrs['options'] = array();
|
440 |
+
|
441 |
+
foreach ( $um_roles as $key => $value ) {
|
442 |
+
if ( in_array( $key, $shortcode_roles ) ) {
|
443 |
+
$attrs['options'][ $key ] = $value;
|
444 |
+
}
|
445 |
+
}
|
446 |
+
}
|
447 |
+
}
|
448 |
+
|
449 |
+
if ( ! empty( $attrs['custom_dropdown_options_source'] ) ) {
|
450 |
+
$attrs['custom'] = true;
|
451 |
+
$attrs['options'] = UM()->fields()->get_options_from_callback( $attrs, $attrs['type'] );
|
452 |
+
}
|
453 |
+
|
454 |
+
if ( isset( $attrs['label'] ) ) {
|
455 |
+
$attrs['label'] = strip_tags( $attrs['label'] );
|
456 |
+
}
|
457 |
+
|
458 |
+
if ( isset( $attrs['options'] ) && is_array( $attrs['options'] ) ) {
|
459 |
+
asort( $attrs['options'] );
|
460 |
+
}
|
461 |
+
|
462 |
+
$custom_dropdown = ! empty( $attrs['custom_dropdown_options_source'] ) ? ' data-um-ajax-source="' . $attrs['custom_dropdown_options_source'] . '"' : '';
|
463 |
+
|
464 |
+
if ( ! empty( $attrs['options'] ) || ! empty( $custom_dropdown ) ) { ?>
|
465 |
+
|
466 |
+
<select class="um-s1" id="<?php echo $filter; ?>" name="<?php echo $filter; ?>"
|
467 |
+
data-placeholder="<?php esc_attr_e( stripslashes( $attrs['label'] ), 'ultimate-member' ); ?>"
|
468 |
+
<?php echo $custom_dropdown; ?>>
|
469 |
+
|
470 |
+
<option></option>
|
471 |
+
|
472 |
+
<?php if ( ! empty( $attrs['options'] ) ) {
|
473 |
+
foreach ( $attrs['options'] as $k => $v ) {
|
474 |
+
|
475 |
+
$v = stripslashes( $v );
|
476 |
+
|
477 |
+
$opt = $v;
|
478 |
+
|
479 |
+
if ( strstr( $filter, 'role_' ) ) {
|
480 |
+
$opt = $k;
|
481 |
+
}
|
482 |
+
|
483 |
+
if ( isset( $attrs['custom'] ) ) {
|
484 |
+
$opt = $k;
|
485 |
+
} ?>
|
486 |
+
|
487 |
+
<option value="<?php echo esc_attr( $opt ); ?>" data-value_label="<?php esc_attr_e( $v, 'ultimate-member' ); ?>"
|
488 |
+
<?php disabled( ! empty( $filter_from_url ) && in_array( $opt, $filter_from_url ) ) ?>
|
489 |
+
<?php selected( $opt == $default_value ) ?>>
|
490 |
+
<?php _e( $v, 'ultimate-member' ); ?>
|
491 |
+
</option>
|
492 |
+
|
493 |
+
<?php }
|
494 |
+
} ?>
|
495 |
+
|
496 |
+
</select>
|
497 |
+
|
498 |
+
<?php }
|
499 |
+
|
500 |
+
break;
|
501 |
+
}
|
502 |
+
case 'slider': {
|
503 |
+
$range = $this->slider_filters_range( $filter, $directory_data );
|
504 |
+
$placeholder = $this->slider_range_placeholder( $filter, $attrs );
|
505 |
+
|
506 |
+
if ( $range ) { ?>
|
507 |
+
<input type="hidden" id="<?php echo $filter; ?>_min" name="<?php echo $filter; ?>[]" class="um_range_min" value="<?php echo ! empty( $default_value ) ? esc_attr( min( $default_value ) ) : '' ?>" />
|
508 |
+
<input type="hidden" id="<?php echo $filter; ?>_max" name="<?php echo $filter; ?>[]" class="um_range_max" value="<?php echo ! empty( $default_value ) ? esc_attr( max( $default_value ) ) : '' ?>" />
|
509 |
+
<div class="um-slider" data-field_name="<?php echo $filter; ?>" data-min="<?php echo $range[0] ?>" data-max="<?php echo $range[1] ?>"></div>
|
510 |
+
<div class="um-slider-range" data-placeholder="<?php echo esc_attr( $placeholder ); ?>" data-label="<?php echo ( ! empty( $attrs['label'] ) ) ? esc_attr__( stripslashes( $attrs['label'] ), 'ultimate-member' ) : ''; ?>"></div>
|
511 |
+
<?php }
|
512 |
+
|
513 |
+
break;
|
514 |
+
}
|
515 |
+
case 'datepicker': {
|
516 |
+
|
517 |
+
$range = $this->datepicker_filters_range( $filter );
|
518 |
+
|
519 |
+
$label = ! empty( $attrs['label'] ) ? $attrs['label'] : $attrs['title'];
|
520 |
+
|
521 |
+
if ( $range ) { ?>
|
522 |
+
|
523 |
+
<input type="text" id="<?php echo $filter; ?>_from" name="<?php echo $filter; ?>_from" class="um-datepicker-filter"
|
524 |
+
placeholder="<?php esc_attr_e( sprintf( '%s From', stripslashes( $label ) ), 'ultimate-member' ); ?>"
|
525 |
+
data-filter-label="<?php echo esc_attr( stripslashes( $label ) ); ?>"
|
526 |
+
data-date_min="<?php echo $range[0] ?>" data-date_max="<?php echo $range[1] ?>"
|
527 |
+
data-filter_name="<?php echo $filter; ?>" data-range="from" data-value="<?php echo ! empty( $default_value ) ? esc_attr( strtotime( min( $default_value ) ) ) : '' ?>" />
|
528 |
+
<input type="text" id="<?php echo $filter; ?>_to" name="<?php echo $filter; ?>_to" class="um-datepicker-filter"
|
529 |
+
placeholder="<?php esc_attr_e( sprintf( '%s To', stripslashes( $label ) ), 'ultimate-member' ); ?>"
|
530 |
+
data-filter-label="<?php echo esc_attr( stripslashes( $label ) ); ?>"
|
531 |
+
data-date_min="<?php echo $range[0] ?>" data-date_max="<?php echo $range[1] ?>"
|
532 |
+
data-filter_name="<?php echo $filter; ?>" data-range="to" data-value="<?php echo ! empty( $default_value ) ? esc_attr( strtotime( max( $default_value ) ) ) : '' ?>" />
|
533 |
+
|
534 |
+
<?php }
|
535 |
+
|
536 |
+
break;
|
537 |
+
}
|
538 |
+
case 'timepicker': {
|
539 |
+
|
540 |
+
$range = $this->timepicker_filters_range( $filter );
|
541 |
+
|
542 |
+
$label = ! empty( $attrs['label'] ) ? $attrs['label'] : $attrs['title'];
|
543 |
+
|
544 |
+
switch ( $attrs['format'] ) {
|
545 |
+
case 'g:i a':
|
546 |
+
$js_format = 'h:i a';
|
547 |
+
break;
|
548 |
+
case 'g:i A':
|
549 |
+
$js_format = 'h:i A';
|
550 |
+
break;
|
551 |
+
case 'H:i':
|
552 |
+
$js_format = 'HH:i';
|
553 |
+
break;
|
554 |
+
}
|
555 |
+
|
556 |
+
if ( $range ) { ?>
|
557 |
+
|
558 |
+
<input type="text" id="<?php echo $filter; ?>_from" name="<?php echo $filter; ?>_from" class="um-timepicker-filter"
|
559 |
+
placeholder="<?php esc_attr_e( sprintf( '%s From', stripslashes( $label ) ), 'ultimate-member' ); ?>"
|
560 |
+
data-filter-label="<?php echo esc_attr( stripslashes( $label ) ); ?>"
|
561 |
+
data-min="<?php echo $range[0] ?>" data-max="<?php echo $range[1] ?>"
|
562 |
+
data-format="<?php echo esc_attr( $js_format ) ?>" data-intervals="<?php echo esc_attr( $attrs['intervals'] ) ?>"
|
563 |
+
data-filter_name="<?php echo $filter; ?>" data-range="from" />
|
564 |
+
<input type="text" id="<?php echo $filter; ?>_to" name="<?php echo $filter; ?>_to" class="um-timepicker-filter"
|
565 |
+
placeholder="<?php esc_attr_e( sprintf( '%s To', stripslashes( $label ) ), 'ultimate-member' ); ?>"
|
566 |
+
data-filter-label="<?php echo esc_attr( stripslashes( $label ) ); ?>"
|
567 |
+
data-min="<?php echo $range[0] ?>" data-max="<?php echo $range[1] ?>"
|
568 |
+
data-format="<?php echo esc_attr( $js_format ) ?>" data-intervals="<?php echo esc_attr( $attrs['intervals'] ) ?>"
|
569 |
+
data-filter_name="<?php echo $filter; ?>" data-range="to" />
|
570 |
+
|
571 |
+
<?php }
|
572 |
+
|
573 |
+
break;
|
574 |
+
}
|
575 |
+
}
|
576 |
+
|
577 |
+
$filter = ob_get_clean();
|
578 |
+
return $filter;
|
579 |
+
}
|
580 |
+
|
581 |
+
|
582 |
+
/**
|
583 |
+
* @param string $filter
|
584 |
+
* @param array $directory_data
|
585 |
+
*
|
586 |
+
* @return mixed
|
587 |
+
*/
|
588 |
+
function slider_filters_range( $filter, $directory_data ) {
|
589 |
+
|
590 |
+
switch ( $filter ) {
|
591 |
+
|
592 |
+
default: {
|
593 |
+
|
594 |
+
global $wpdb;
|
595 |
+
$meta = $wpdb->get_col( $wpdb->prepare( "SELECT DISTINCT meta_value
|
596 |
+
FROM {$wpdb->usermeta}
|
597 |
+
WHERE meta_key = %s
|
598 |
+
ORDER BY meta_value DESC", $filter ) );
|
599 |
+
|
600 |
+
if ( empty( $meta ) || count( $meta ) === 1 ) {
|
601 |
+
$range = false;
|
602 |
+
} elseif ( ! empty( $meta ) ) {
|
603 |
+
$range = array( min( $meta ), max( $meta ) );
|
604 |
+
}
|
605 |
+
|
606 |
+
$range = apply_filters( "um_member_directory_filter_{$filter}_slider", $range, $directory_data );
|
607 |
+
|
608 |
+
break;
|
609 |
+
}
|
610 |
+
case 'birth_date': {
|
611 |
+
global $wpdb;
|
612 |
+
$meta = $wpdb->get_col( "SELECT DISTINCT meta_value FROM {$wpdb->usermeta} WHERE meta_key='birth_date' ORDER BY meta_value DESC" );
|
613 |
+
|
614 |
+
if ( empty( $meta ) || count( $meta ) === 1 ) {
|
615 |
+
$range = false;
|
616 |
+
} elseif ( ! empty( $meta ) ) {
|
617 |
+
$range = array( $this->borndate( strtotime( $meta[0] ) ), $this->borndate( strtotime( $meta[ count( $meta ) - 1 ] ) ) );
|
618 |
+
}
|
619 |
+
|
620 |
+
break;
|
621 |
+
}
|
622 |
+
|
623 |
+
}
|
624 |
+
|
625 |
+
return $range;
|
626 |
+
}
|
627 |
+
|
628 |
+
|
629 |
+
/**
|
630 |
+
* @param $filter
|
631 |
+
*
|
632 |
+
* @return mixed
|
633 |
+
*/
|
634 |
+
function slider_range_placeholder( $filter, $attrs ) {
|
635 |
+
switch ( $filter ) {
|
636 |
+
default: {
|
637 |
+
$label = ucwords( str_replace( array( 'um_', '_' ), array( '', ' ' ), $filter ) );
|
638 |
+
$placeholder = apply_filters( 'um_member_directory_filter_slider_range_placeholder', false, $filter );
|
639 |
+
|
640 |
+
if ( ! $placeholder ) {
|
641 |
+
switch ( $attrs['type'] ) {
|
642 |
+
default:
|
643 |
+
$placeholder = "<strong>$label:</strong> {min_range} - {max_range}";
|
644 |
+
break;
|
645 |
+
case 'rating':
|
646 |
+
$placeholder = "<strong>$label:</strong> {min_range} - {max_range}" . __( ' stars', 'ultimate-member' );
|
647 |
+
break;
|
648 |
+
}
|
649 |
+
}
|
650 |
+
|
651 |
+
break;
|
652 |
+
}
|
653 |
+
case 'birth_date': {
|
654 |
+
$placeholder = __( '<strong>Age:</strong> {min_range} - {max_range} years old', 'ultimate-member' );
|
655 |
+
break;
|
656 |
+
}
|
657 |
+
}
|
658 |
+
|
659 |
+
return $placeholder;
|
660 |
+
}
|
661 |
+
|
662 |
+
|
663 |
+
/**
|
664 |
+
* @param $filter
|
665 |
+
*
|
666 |
+
* @return mixed
|
667 |
+
*/
|
668 |
+
function datepicker_filters_range( $filter ) {
|
669 |
+
global $wpdb;
|
670 |
+
|
671 |
+
switch ( $filter ) {
|
672 |
+
|
673 |
+
default: {
|
674 |
+
|
675 |
+
global $wpdb;
|
676 |
+
$meta = $wpdb->get_col( $wpdb->prepare( "SELECT DISTINCT meta_value
|
677 |
+
FROM {$wpdb->usermeta}
|
678 |
+
WHERE meta_key = %s
|
679 |
+
ORDER BY meta_value DESC", $filter ) );
|
680 |
+
|
681 |
+
if ( empty( $meta ) || count( $meta ) === 1 ) {
|
682 |
+
$range = false;
|
683 |
+
} elseif ( ! empty( $meta ) ) {
|
684 |
+
$range = array( strtotime( min( $meta ) ), strtotime( max( $meta ) ) );
|
685 |
+
}
|
686 |
+
|
687 |
+
$range = apply_filters( "um_member_directory_filter_{$filter}_datepicker", $range );
|
688 |
+
|
689 |
+
break;
|
690 |
+
}
|
691 |
+
case 'last_login': {
|
692 |
+
$meta = $wpdb->get_col( "SELECT DISTINCT meta_value
|
693 |
+
FROM {$wpdb->usermeta}
|
694 |
+
WHERE meta_key='_um_last_login'
|
695 |
+
ORDER BY meta_value DESC" );
|
696 |
+
|
697 |
+
if ( empty( $meta ) || count( $meta ) === 1 ) {
|
698 |
+
$range = false;
|
699 |
+
} elseif ( ! empty( $meta ) ) {
|
700 |
+
$range = array( min( $meta ), max( $meta ) );
|
701 |
+
}
|
702 |
+
|
703 |
+
break;
|
704 |
+
}
|
705 |
+
case 'user_registered': {
|
706 |
+
$meta = $wpdb->get_col(
|
707 |
+
"SELECT DISTINCT user_registered
|
708 |
+
FROM {$wpdb->users}
|
709 |
+
ORDER BY user_registered DESC"
|
710 |
+
);
|
711 |
+
|
712 |
+
if ( empty( $meta ) || count( $meta ) === 1 ) {
|
713 |
+
$range = false;
|
714 |
+
} elseif ( ! empty( $meta ) ) {
|
715 |
+
$range = array( strtotime( min( $meta ) ), strtotime( max( $meta ) ) );
|
716 |
+
}
|
717 |
+
|
718 |
+
break;
|
719 |
+
}
|
720 |
+
|
721 |
+
}
|
722 |
+
|
723 |
+
return $range;
|
724 |
+
}
|
725 |
+
|
726 |
+
|
727 |
+
/**
|
728 |
+
* @param $filter
|
729 |
+
*
|
730 |
+
* @return mixed
|
731 |
+
*/
|
732 |
+
function timepicker_filters_range( $filter ) {
|
733 |
+
|
734 |
+
switch ( $filter ) {
|
735 |
+
|
736 |
+
default: {
|
737 |
+
|
738 |
+
global $wpdb;
|
739 |
+
$meta = $wpdb->get_col( $wpdb->prepare( "SELECT DISTINCT meta_value
|
740 |
+
FROM {$wpdb->usermeta}
|
741 |
+
WHERE meta_key = %s
|
742 |
+
ORDER BY meta_value DESC", $filter ) );
|
743 |
+
|
744 |
+
$meta = array_filter( $meta );
|
745 |
+
|
746 |
+
if ( empty( $meta ) || count( $meta ) === 1 ) {
|
747 |
+
$range = false;
|
748 |
+
} elseif ( ! empty( $meta ) ) {
|
749 |
+
$range = array( min( $meta ), max( $meta ) );
|
750 |
+
}
|
751 |
+
|
752 |
+
|
753 |
+
$range = apply_filters( "um_member_directory_filter_{$filter}_timepicker", $range );
|
754 |
+
|
755 |
+
break;
|
756 |
+
}
|
757 |
+
|
758 |
+
}
|
759 |
+
|
760 |
+
return $range;
|
761 |
+
}
|
762 |
+
|
763 |
+
|
764 |
+
/**
|
765 |
+
* @param $borndate
|
766 |
+
*
|
767 |
+
* @return false|string
|
768 |
+
*/
|
769 |
+
function borndate( $borndate ) {
|
770 |
+
if ( date('m', $borndate) > date('m') || date('m', $borndate) == date('m') && date('d', $borndate ) > date('d')) {
|
771 |
+
return (date('Y') - date('Y', $borndate ) - 1);
|
772 |
+
}
|
773 |
+
return (date('Y') - date('Y', $borndate));
|
774 |
+
}
|
775 |
+
|
776 |
+
|
777 |
+
/**
|
778 |
+
* Handle members can view restrictions
|
779 |
+
*/
|
780 |
+
function restriction_options() {
|
781 |
+
$this->hide_not_approved();
|
782 |
+
$this->hide_by_role();
|
783 |
+
$this->hide_by_account_settings();
|
784 |
+
|
785 |
+
do_action( 'um_member_directory_restrictions_handle_extend' );
|
786 |
+
}
|
787 |
+
|
788 |
+
|
789 |
+
/**
|
790 |
+
*
|
791 |
+
*/
|
792 |
+
function hide_not_approved() {
|
793 |
+
if ( UM()->roles()->um_user_can( 'can_edit_everyone' ) ) {
|
794 |
+
return;
|
795 |
+
}
|
796 |
+
|
797 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( array(
|
798 |
+
'key' => 'account_status',
|
799 |
+
'value' => 'approved',
|
800 |
+
'compare' => '='
|
801 |
+
) ) );
|
802 |
+
}
|
803 |
+
|
804 |
+
|
805 |
+
/**
|
806 |
+
*
|
807 |
+
*/
|
808 |
+
function hide_by_role() {
|
809 |
+
$roles = um_user( 'can_view_roles' );
|
810 |
+
$roles = maybe_unserialize( $roles );
|
811 |
+
|
812 |
+
if ( empty( $roles ) || ! UM()->roles()->um_user_can( 'can_view_all' ) ) {
|
813 |
+
return;
|
814 |
+
}
|
815 |
+
|
816 |
+
if ( ! empty( $this->query_args['role__in'] ) ) {
|
817 |
+
$this->query_args['role__in'] = is_array( $this->query_args['role__in'] ) ? $this->query_args['role__in'] : array( $this->query_args['role__in'] );
|
818 |
+
$this->query_args['role__in'] = array_intersect( $this->query_args['role__in'], $roles );
|
819 |
+
} else {
|
820 |
+
$this->query_args['role__in'] = $roles;
|
821 |
+
}
|
822 |
+
}
|
823 |
+
|
824 |
+
|
825 |
+
/**
|
826 |
+
*
|
827 |
+
*/
|
828 |
+
function hide_by_account_settings() {
|
829 |
+
if ( ! UM()->options()->get( 'account_hide_in_directory' ) ) {
|
830 |
+
return;
|
831 |
+
}
|
832 |
+
|
833 |
+
if ( UM()->roles()->um_user_can( 'can_edit_everyone' ) ) {
|
834 |
+
return;
|
835 |
+
}
|
836 |
+
|
837 |
+
$meta_query = array(
|
838 |
+
"relation" => "OR",
|
839 |
+
array(
|
840 |
+
'key' => 'hide_in_members',
|
841 |
+
'value' => '',
|
842 |
+
'compare' => 'NOT EXISTS'
|
843 |
+
),
|
844 |
+
array(
|
845 |
+
"relation" => "AND",
|
846 |
+
array(
|
847 |
+
'key' => 'hide_in_members',
|
848 |
+
'value' => __( 'Yes', 'ultimate-member' ),
|
849 |
+
'compare' => 'NOT LIKE'
|
850 |
+
),
|
851 |
+
array(
|
852 |
+
'key' => 'hide_in_members',
|
853 |
+
'value' => 'Yes',
|
854 |
+
'compare' => 'NOT LIKE'
|
855 |
+
),
|
856 |
+
),
|
857 |
+
);
|
858 |
+
|
859 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $meta_query ) );
|
860 |
+
}
|
861 |
+
|
862 |
+
|
863 |
+
/**
|
864 |
+
* Handle "General Options" metabox settings
|
865 |
+
*
|
866 |
+
* @param array $directory_data
|
867 |
+
*/
|
868 |
+
function general_options( $directory_data ) {
|
869 |
+
$this->show_selected_roles( $directory_data );
|
870 |
+
$this->show_only_with_avatar( $directory_data );
|
871 |
+
$this->show_only_with_cover( $directory_data );
|
872 |
+
$this->show_only_these_users( $directory_data );
|
873 |
+
|
874 |
+
do_action( 'um_member_directory_general_options_handle_extend', $directory_data );
|
875 |
+
}
|
876 |
+
|
877 |
+
|
878 |
+
/**
|
879 |
+
* Handle "User Roles to Display" option
|
880 |
+
*
|
881 |
+
* @param array $directory_data
|
882 |
+
*/
|
883 |
+
function show_selected_roles( $directory_data ) {
|
884 |
+
// add roles to appear in directory
|
885 |
+
if ( ! empty( $directory_data['roles'] ) ) {
|
886 |
+
//since WP4.4 use 'role__in' argument
|
887 |
+
$this->query_args['role__in'] = maybe_unserialize( $directory_data['roles'] );
|
888 |
+
}
|
889 |
+
}
|
890 |
+
|
891 |
+
|
892 |
+
/**
|
893 |
+
* Handle "Only show members who have uploaded a profile photo" option
|
894 |
+
*
|
895 |
+
* @param array $directory_data
|
896 |
+
*/
|
897 |
+
function show_only_with_avatar( $directory_data ) {
|
898 |
+
if ( $directory_data['has_profile_photo'] == 1 ) {
|
899 |
+
$meta_query = array(
|
900 |
+
'relation' => 'OR',
|
901 |
+
array(
|
902 |
+
'key' => 'synced_profile_photo', // addons
|
903 |
+
'value' => '',
|
904 |
+
'compare' => '!='
|
905 |
+
),
|
906 |
+
array(
|
907 |
+
'key' => 'profile_photo', // from upload form
|
908 |
+
'value' => '',
|
909 |
+
'compare' => '!='
|
910 |
+
)
|
911 |
+
);
|
912 |
+
|
913 |
+
if ( UM()->options()->get( 'use_gravatars' ) ) {
|
914 |
+
$meta_query[] = array(
|
915 |
+
'key' => 'synced_gravatar_hashed_id', // gravatar
|
916 |
+
'value' => '',
|
917 |
+
'compare' => '!='
|
918 |
+
);
|
919 |
+
}
|
920 |
+
|
921 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $meta_query ) );
|
922 |
+
}
|
923 |
+
}
|
924 |
+
|
925 |
+
|
926 |
+
/**
|
927 |
+
* Handle "Only show members who have uploaded a cover photo" option
|
928 |
+
*
|
929 |
+
* @param array $directory_data
|
930 |
+
*/
|
931 |
+
function show_only_with_cover( $directory_data ) {
|
932 |
+
if ( $directory_data['has_cover_photo'] == 1 ) {
|
933 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( array(
|
934 |
+
'key' => 'cover_photo',
|
935 |
+
'value' => '',
|
936 |
+
'compare' => '!='
|
937 |
+
) ) );
|
938 |
+
}
|
939 |
+
}
|
940 |
+
|
941 |
+
|
942 |
+
/**
|
943 |
+
* Handle "Only show specific users (Enter one username per line)" option
|
944 |
+
*
|
945 |
+
* @param array $directory_data
|
946 |
+
*/
|
947 |
+
function show_only_these_users( $directory_data ) {
|
948 |
+
if ( ! empty( $directory_data['show_these_users'] ) ) {
|
949 |
+
$show_these_users = maybe_unserialize( $directory_data['show_these_users'] );
|
950 |
+
|
951 |
+
if ( is_array( $show_these_users ) && ! empty( $show_these_users ) ) {
|
952 |
+
|
953 |
+
$users_array = array();
|
954 |
+
|
955 |
+
foreach ( $show_these_users as $username ) {
|
956 |
+
if ( false !== ( $exists_id = username_exists( $username ) ) ) {
|
957 |
+
$users_array[] = $exists_id;
|
958 |
+
}
|
959 |
+
}
|
960 |
+
|
961 |
+
if ( ! empty( $users_array ) ) {
|
962 |
+
$this->query_args['include'] = $users_array;
|
963 |
+
}
|
964 |
+
|
965 |
+
}
|
966 |
+
}
|
967 |
+
}
|
968 |
+
|
969 |
+
|
970 |
+
/**
|
971 |
+
* Handle "Pagination Options" metabox settings
|
972 |
+
*
|
973 |
+
* @param array $directory_data
|
974 |
+
*/
|
975 |
+
function pagination_options( $directory_data ) {
|
976 |
+
// number of profiles for mobile
|
977 |
+
$profiles_per_page = $directory_data['profiles_per_page'];
|
978 |
+
if ( UM()->mobile()->isMobile() && isset( $directory_data['profiles_per_page_mobile'] ) ) {
|
979 |
+
$profiles_per_page = $directory_data['profiles_per_page_mobile'];
|
980 |
+
}
|
981 |
+
|
982 |
+
$this->query_args['number'] = ( ! empty( $directory_data['max_users'] ) && $directory_data['max_users'] <= $profiles_per_page ) ? $directory_data['max_users'] : $profiles_per_page;
|
983 |
+
$this->query_args['paged'] = ! empty( $_POST['page'] ) ? $_POST['page'] : 1;
|
984 |
+
}
|
985 |
+
|
986 |
+
|
987 |
+
/**
|
988 |
+
* Add sorting attributes for \WP_Users_Query
|
989 |
+
*
|
990 |
+
* @param array $directory_data Member Directory options
|
991 |
+
*/
|
992 |
+
function sorting_query( $directory_data ) {
|
993 |
+
// sort members by
|
994 |
+
$this->query_args['order'] = 'ASC';
|
995 |
+
$sortby = ! empty( $_POST['sorting'] ) ? $_POST['sorting'] : $directory_data['sortby'];
|
996 |
+
|
997 |
+
if ( $sortby == 'other' && $directory_data['sortby_custom'] ) {
|
998 |
+
|
999 |
+
$this->query_args['meta_key'] = $directory_data['sortby_custom'];
|
1000 |
+
$this->query_args['orderby'] = 'meta_value, display_name';
|
1001 |
+
|
1002 |
+
} elseif ( 'display_name' == $sortby ) {
|
1003 |
+
|
1004 |
+
$display_name = UM()->options()->get( 'display_name' );
|
1005 |
+
if ( $display_name == 'username' ) {
|
1006 |
+
$this->query_args['orderby'] = 'user_login';
|
1007 |
+
$this->query_args['order'] = 'ASC';
|
1008 |
+
} else {
|
1009 |
+
$this->query_args['meta_query'][] = array(
|
1010 |
+
'relation' => 'OR',
|
1011 |
+
'full_name' => array(
|
1012 |
+
'key' => 'full_name',
|
1013 |
+
'compare' => 'EXISTS'
|
1014 |
+
),
|
1015 |
+
array(
|
1016 |
+
'key' => 'full_name',
|
1017 |
+
'compare' => 'NOT EXISTS'
|
1018 |
+
)
|
1019 |
+
);
|
1020 |
+
|
1021 |
+
$this->query_args['orderby'] = 'full_name, display_name';
|
1022 |
+
$this->query_args['order'] = 'ASC';
|
1023 |
+
}
|
1024 |
+
|
1025 |
+
} elseif ( in_array( $sortby, array( 'last_name', 'first_name' ) ) ) {
|
1026 |
+
|
1027 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $sortby . '_c' => array(
|
1028 |
+
'key' => $sortby,
|
1029 |
+
'compare' => 'EXISTS',
|
1030 |
+
), ) );
|
1031 |
+
|
1032 |
+
$this->query_args['orderby'] = array( $sortby . '_c' => 'ASC' );
|
1033 |
+
unset( $this->query_args['order'] );
|
1034 |
+
|
1035 |
+
} elseif ( $sortby == 'last_login' ) {
|
1036 |
+
|
1037 |
+
$this->query_args['orderby'] = array( 'um_last_login' => 'DESC' );
|
1038 |
+
$this->query_args['meta_query'][] = array(
|
1039 |
+
'relation' => 'OR',
|
1040 |
+
array(
|
1041 |
+
'key' => '_um_last_login',
|
1042 |
+
'compare' => 'EXISTS',
|
1043 |
+
),
|
1044 |
+
'um_last_login' => array(
|
1045 |
+
'key' => '_um_last_login',
|
1046 |
+
'compare' => 'NOT EXISTS',
|
1047 |
+
),
|
1048 |
+
);
|
1049 |
+
unset( $this->query_args['order'] );
|
1050 |
+
|
1051 |
+
} else {
|
1052 |
+
|
1053 |
+
if ( strstr( $sortby, '_desc' ) ) {
|
1054 |
+
$sortby = str_replace( '_desc', '', $sortby );
|
1055 |
+
$order = 'DESC';
|
1056 |
+
}
|
1057 |
+
|
1058 |
+
if ( strstr( $sortby, '_asc' ) ) {
|
1059 |
+
$sortby = str_replace( '_asc', '', $sortby );
|
1060 |
+
$order = 'ASC';
|
1061 |
+
}
|
1062 |
+
|
1063 |
+
$this->query_args['orderby'] = $sortby;
|
1064 |
+
if ( isset( $order ) ) {
|
1065 |
+
$this->query_args['order'] = $order;
|
1066 |
+
}
|
1067 |
+
|
1068 |
+
add_filter( 'pre_user_query', array( &$this, 'sortby_randomly' ), 10, 1 );
|
1069 |
+
}
|
1070 |
+
|
1071 |
+
|
1072 |
+
/**
|
1073 |
+
* UM hook
|
1074 |
+
*
|
1075 |
+
* @type filter
|
1076 |
+
* @title um_modify_sortby_parameter
|
1077 |
+
* @description Change query sort by attributes for search at Members Directory
|
1078 |
+
* @input_vars
|
1079 |
+
* [{"var":"$query_args","type":"array","desc":"Query Arguments"},
|
1080 |
+
* {"var":"$sortby","type":"string","desc":"Sort by"}]
|
1081 |
+
* @change_log
|
1082 |
+
* ["Since: 2.0"]
|
1083 |
+
* @usage
|
1084 |
+
* <?php add_filter( 'um_modify_sortby_parameter', 'function_name', 10, 2 ); ?>
|
1085 |
+
* @example
|
1086 |
+
* <?php
|
1087 |
+
* add_filter( 'um_modify_sortby_parameter', 'my_modify_sortby_parameter', 10, 2 );
|
1088 |
+
* function my_modify_sortby_parameter( $query_args, $sortby ) {
|
1089 |
+
* // your code here
|
1090 |
+
* return $query_args;
|
1091 |
+
* }
|
1092 |
+
* ?>
|
1093 |
+
*/
|
1094 |
+
$this->query_args = apply_filters( 'um_modify_sortby_parameter', $this->query_args, $sortby );
|
1095 |
+
}
|
1096 |
+
|
1097 |
+
|
1098 |
+
/**
|
1099 |
+
* Sorting random
|
1100 |
+
*
|
1101 |
+
* @param object $query
|
1102 |
+
*
|
1103 |
+
* @return mixed
|
1104 |
+
*/
|
1105 |
+
function sortby_randomly( $query ) {
|
1106 |
+
if ( 'random' == $query->query_vars['orderby'] ) {
|
1107 |
+
|
1108 |
+
if ( um_is_session_started() === false ) {
|
1109 |
+
@session_start();
|
1110 |
+
}
|
1111 |
+
|
1112 |
+
// Reset seed on load of initial
|
1113 |
+
if ( ! isset( $_REQUEST['members_page'] ) || $_REQUEST['members_page'] == 0 || $_REQUEST['members_page'] == 1 ) {
|
1114 |
+
if ( isset( $_SESSION['seed'] ) ) {
|
1115 |
+
unset( $_SESSION['seed'] );
|
1116 |
+
}
|
1117 |
+
}
|
1118 |
+
|
1119 |
+
// Get seed from session variable if it exists
|
1120 |
+
$seed = false;
|
1121 |
+
if ( isset( $_SESSION['seed'] ) ) {
|
1122 |
+
$seed = $_SESSION['seed'];
|
1123 |
+
}
|
1124 |
+
|
1125 |
+
// Set new seed if none exists
|
1126 |
+
if ( ! $seed ) {
|
1127 |
+
$seed = rand();
|
1128 |
+
$_SESSION['seed'] = $seed;
|
1129 |
+
}
|
1130 |
+
|
1131 |
+
|
1132 |
+
$query->query_orderby = 'ORDER by RAND(' . $seed . ')';
|
1133 |
+
}
|
1134 |
+
|
1135 |
+
return $query;
|
1136 |
+
}
|
1137 |
+
|
1138 |
+
|
1139 |
+
|
1140 |
+
/**
|
1141 |
+
* Handle general search line request
|
1142 |
+
*/
|
1143 |
+
function general_search() {
|
1144 |
+
//general search
|
1145 |
+
if ( ! empty( $_POST['search'] ) ) {
|
1146 |
+
// complex using with change_meta_sql function
|
1147 |
+
|
1148 |
+
$meta_query = array(
|
1149 |
+
'relation' => 'OR',
|
1150 |
+
array(
|
1151 |
+
'value' => trim( $_POST['search'] ),
|
1152 |
+
'compare' => '=',
|
1153 |
+
),
|
1154 |
+
array(
|
1155 |
+
'value' => trim( $_POST['search'] ),
|
1156 |
+
'compare' => 'LIKE',
|
1157 |
+
),
|
1158 |
+
array(
|
1159 |
+
'value' => trim( serialize( strval( $_POST['search'] ) ) ),
|
1160 |
+
'compare' => 'LIKE',
|
1161 |
+
),
|
1162 |
+
);
|
1163 |
+
|
1164 |
+
$meta_query = apply_filters( 'um_member_directory_general_search_meta_query', $meta_query, $_POST['search'] );
|
1165 |
+
|
1166 |
+
$this->query_args['meta_query'][] = $meta_query;
|
1167 |
+
}
|
1168 |
+
}
|
1169 |
+
|
1170 |
+
|
1171 |
+
/**
|
1172 |
+
* Change mySQL meta query join attribute
|
1173 |
+
* for search only by UM user meta fields and WP core fields in WP Users table
|
1174 |
+
*
|
1175 |
+
* @param array $sql Array containing the query's JOIN and WHERE clauses.
|
1176 |
+
* @param $queries
|
1177 |
+
* @param $type
|
1178 |
+
* @param $primary_table
|
1179 |
+
* @param $primary_id_column
|
1180 |
+
* @param \WP_User_Query $context
|
1181 |
+
*
|
1182 |
+
* @return mixed
|
1183 |
+
*/
|
1184 |
+
function change_meta_sql( $sql, $queries, $type, $primary_table, $primary_id_column, $context ) {
|
1185 |
+
if ( ! empty( $_POST['search'] ) ) {
|
1186 |
+
global $wpdb;
|
1187 |
+
$search = trim( $_POST['search'] );
|
1188 |
+
if ( ! empty( $search ) ) {
|
1189 |
+
|
1190 |
+
$meta_value = '%' . $wpdb->esc_like( $search ) . '%';
|
1191 |
+
$search_meta = $wpdb->prepare( '%s', $meta_value );
|
1192 |
+
|
1193 |
+
preg_match(
|
1194 |
+
'/^(.*).meta_value LIKE ' . addslashes( $search_meta ) . '[^\)]/im',
|
1195 |
+
$sql['where'],
|
1196 |
+
$join_matches
|
1197 |
+
);
|
1198 |
+
|
1199 |
+
if ( isset( $join_matches[1] ) ) {
|
1200 |
+
$meta_join_for_search = trim( $join_matches[1] );
|
1201 |
+
|
1202 |
+
$sql['join'] = preg_replace(
|
1203 |
+
'/(' . $meta_join_for_search . ' ON \( ' . $wpdb->users . '\.ID = ' . $meta_join_for_search . '\.user_id )(\))/im',
|
1204 |
+
"$1 AND " . $meta_join_for_search . ".meta_key IN( '" . implode( "','", array_keys( UM()->builtin()->all_user_fields ) ) . "' ) $2",
|
1205 |
+
$sql['join']
|
1206 |
+
);
|
1207 |
+
}
|
1208 |
+
|
1209 |
+
// Add OR instead AND to search in WP core fields user_email, user_login, user_display_name
|
1210 |
+
$search_where = $context->get_search_sql( $search, $this->core_search_fields, 'both' );
|
1211 |
+
|
1212 |
+
$search_where = preg_replace( '/ AND \((.*?)\)/im', "$1 OR", $search_where );
|
1213 |
+
|
1214 |
+
$sql['where'] = preg_replace(
|
1215 |
+
'/(' . $meta_join_for_search . '.meta_value = \'' . esc_attr( $search ) . '\')/im',
|
1216 |
+
trim( $search_where ) . " $1",
|
1217 |
+
$sql['where'],
|
1218 |
+
1
|
1219 |
+
);
|
1220 |
+
}
|
1221 |
+
}
|
1222 |
+
|
1223 |
+
return $sql;
|
1224 |
+
}
|
1225 |
+
|
1226 |
+
|
1227 |
+
/**
|
1228 |
+
* Handle filters request
|
1229 |
+
*/
|
1230 |
+
function filters( $directory_data ) {
|
1231 |
+
//filters
|
1232 |
+
$filter_query = array();
|
1233 |
+
if ( ! empty( $directory_data['search_fields'] ) ) {
|
1234 |
+
$search_filters = maybe_unserialize( $directory_data['search_fields'] );
|
1235 |
+
if ( ! empty( $search_filters ) && is_array( $search_filters ) ) {
|
1236 |
+
$filter_query = array_intersect_key( $_POST, array_flip( $search_filters ) );
|
1237 |
+
}
|
1238 |
+
}
|
1239 |
+
|
1240 |
+
// added for user tags extension integration on individual tag page
|
1241 |
+
$ignore_empty_filters = apply_filters( 'um_member_directory_ignore_empty_filters', false );
|
1242 |
+
|
1243 |
+
if ( empty( $filter_query ) && ! $ignore_empty_filters ) {
|
1244 |
+
return;
|
1245 |
+
}
|
1246 |
+
|
1247 |
+
foreach ( $filter_query as $field => $value ) {
|
1248 |
+
|
1249 |
+
switch ( $field ) {
|
1250 |
+
default:
|
1251 |
+
|
1252 |
+
$filter_type = $this->filter_types[ $field ];
|
1253 |
+
|
1254 |
+
/**
|
1255 |
+
* UM hook
|
1256 |
+
*
|
1257 |
+
* @type filter
|
1258 |
+
* @title um_query_args_{$field}__filter
|
1259 |
+
* @description Change field's query for search at Members Directory
|
1260 |
+
* @input_vars
|
1261 |
+
* [{"var":"$field_query","type":"array","desc":"Field query"}]
|
1262 |
+
* @change_log
|
1263 |
+
* ["Since: 2.0"]
|
1264 |
+
* @usage
|
1265 |
+
* <?php add_filter( 'um_query_args_{$field}__filter', 'function_name', 10, 1 ); ?>
|
1266 |
+
* @example
|
1267 |
+
* <?php
|
1268 |
+
* add_filter( 'um_query_args_{$field}__filter', 'my_query_args_filter', 10, 1 );
|
1269 |
+
* function my_query_args_filter( $field_query ) {
|
1270 |
+
* // your code here
|
1271 |
+
* return $field_query;
|
1272 |
+
* }
|
1273 |
+
* ?>
|
1274 |
+
*/
|
1275 |
+
$field_query = apply_filters( "um_query_args_{$field}__filter", false, $field, $value, $filter_type );
|
1276 |
+
|
1277 |
+
if ( ! $field_query ) {
|
1278 |
+
|
1279 |
+
switch ( $filter_type ) {
|
1280 |
+
default:
|
1281 |
+
|
1282 |
+
$field_query = apply_filters( "um_query_args_{$field}_{$filter_type}__filter", false, $field, $value, $filter_type );
|
1283 |
+
|
1284 |
+
break;
|
1285 |
+
case 'select':
|
1286 |
+
if ( is_array( $value ) ) {
|
1287 |
+
$field_query = array( 'relation' => 'OR' );
|
1288 |
+
|
1289 |
+
foreach ( $value as $single_val ) {
|
1290 |
+
$arr_meta_query = array(
|
1291 |
+
array(
|
1292 |
+
'key' => $field,
|
1293 |
+
'value' => trim( $single_val ),
|
1294 |
+
'compare' => '=',
|
1295 |
+
),
|
1296 |
+
array(
|
1297 |
+
'key' => $field,
|
1298 |
+
'value' => serialize( strval( trim( $single_val ) ) ),
|
1299 |
+
'compare' => 'LIKE',
|
1300 |
+
),
|
1301 |
+
array(
|
1302 |
+
'key' => $field,
|
1303 |
+
'value' => '"' . trim( $single_val ) . '"',
|
1304 |
+
'compare' => 'LIKE',
|
1305 |
+
)
|
1306 |
+
);
|
1307 |
+
|
1308 |
+
if ( is_numeric( $single_val ) ) {
|
1309 |
+
|
1310 |
+
$arr_meta_query[] = array(
|
1311 |
+
'key' => $field,
|
1312 |
+
'value' => serialize( intval( trim( $single_val ) ) ),
|
1313 |
+
'compare' => 'LIKE',
|
1314 |
+
);
|
1315 |
+
|
1316 |
+
}
|
1317 |
+
|
1318 |
+
$field_query = array_merge( $field_query, $arr_meta_query );
|
1319 |
+
}
|
1320 |
+
}
|
1321 |
+
|
1322 |
+
$this->custom_filters_in_query[ $field ] = $value;
|
1323 |
+
|
1324 |
+
break;
|
1325 |
+
case 'slider':
|
1326 |
+
|
1327 |
+
$this->custom_filters_in_query[ $field ] = $value;
|
1328 |
+
|
1329 |
+
$field_query = array(
|
1330 |
+
'key' => $field,
|
1331 |
+
'value' => $value,
|
1332 |
+
'compare' => 'BETWEEN',
|
1333 |
+
'inclusive' => true,
|
1334 |
+
);
|
1335 |
+
|
1336 |
+
break;
|
1337 |
+
case 'datepicker':
|
1338 |
+
|
1339 |
+
$offset = 0;
|
1340 |
+
if ( isset( $_POST['gmt_offset'] ) && is_numeric( $_POST['gmt_offset'] ) ) {
|
1341 |
+
$offset = (int) $_POST['gmt_offset'];
|
1342 |
+
}
|
1343 |
+
|
1344 |
+
$from_date = (int) min( $value ) + ( $offset * HOUR_IN_SECONDS ); // client time zone offset
|
1345 |
+
$to_date = (int) max( $value ) + ( $offset * HOUR_IN_SECONDS ) + DAY_IN_SECONDS - 1; // time 23:59
|
1346 |
+
$field_query = array(
|
1347 |
+
'key' => $field,
|
1348 |
+
'value' => array( $from_date, $to_date ),
|
1349 |
+
'compare' => 'BETWEEN',
|
1350 |
+
'inclusive' => true,
|
1351 |
+
);
|
1352 |
+
|
1353 |
+
$this->custom_filters_in_query[ $field ] = array( $from_date, $to_date );
|
1354 |
+
|
1355 |
+
break;
|
1356 |
+
case 'timepicker':
|
1357 |
+
|
1358 |
+
if ( $value[0] == $value[1] ) {
|
1359 |
+
$field_query = array(
|
1360 |
+
'key' => $field,
|
1361 |
+
'value' => $value[0],
|
1362 |
+
);
|
1363 |
+
} else {
|
1364 |
+
$field_query = array(
|
1365 |
+
'key' => $field,
|
1366 |
+
'value' => $value,
|
1367 |
+
'compare' => 'BETWEEN',
|
1368 |
+
'type' => 'TIME',
|
1369 |
+
'inclusive' => true,
|
1370 |
+
);
|
1371 |
+
}
|
1372 |
+
|
1373 |
+
$this->custom_filters_in_query[ $field ] = $value;
|
1374 |
+
|
1375 |
+
break;
|
1376 |
+
}
|
1377 |
+
|
1378 |
+
}
|
1379 |
+
|
1380 |
+
if ( ! empty( $field_query ) && $field_query !== true ) {
|
1381 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $field_query ) );
|
1382 |
+
}
|
1383 |
+
|
1384 |
+
break;
|
1385 |
+
case 'role':
|
1386 |
+
$value = array_map( 'strtolower', $value );
|
1387 |
+
|
1388 |
+
if ( ! empty( $this->query_args['role__in'] ) ) {
|
1389 |
+
$this->query_args['role__in'] = is_array( $this->query_args['role__in'] ) ? $this->query_args['role__in'] : array( $this->query_args['role__in'] );
|
1390 |
+
$default_role = array_intersect( $this->query_args['role__in'], $value );
|
1391 |
+
$um_role = array_diff( $value, $default_role );
|
1392 |
+
|
1393 |
+
foreach ( $um_role as $key => &$val ) {
|
1394 |
+
$val = 'um_' . str_replace( ' ', '-', $val );
|
1395 |
+
}
|
1396 |
+
$this->query_args['role__in'] = array_merge( $default_role, $um_role );
|
1397 |
+
} else {
|
1398 |
+
$this->query_args['role__in'] = $value;
|
1399 |
+
};
|
1400 |
+
|
1401 |
+
$this->custom_filters_in_query[ $field ] = $this->query_args['role__in'];
|
1402 |
+
|
1403 |
+
break;
|
1404 |
+
case 'birth_date':
|
1405 |
+
|
1406 |
+
$from_date = date( 'Y/m/d', mktime( 0,0,0, date( 'm', time() ), date( 'd', time() ), date( 'Y', time() - min( $value ) * YEAR_IN_SECONDS ) ) );
|
1407 |
+
$to_date = date( 'Y/m/d', mktime( 0,0,0, date( 'm', time() ), date( 'd', time() ) + 1, date( 'Y', time() - ( max( $value ) + 1 ) * YEAR_IN_SECONDS ) ) );
|
1408 |
+
|
1409 |
+
$meta_query = array(
|
1410 |
+
array(
|
1411 |
+
'key' => 'birth_date',
|
1412 |
+
'value' => array( $to_date, $from_date ),
|
1413 |
+
'compare' => 'BETWEEN',
|
1414 |
+
'type' => 'DATE',
|
1415 |
+
'inclusive' => true,
|
1416 |
+
)
|
1417 |
+
);
|
1418 |
+
|
1419 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $meta_query ) );
|
1420 |
+
|
1421 |
+
$this->custom_filters_in_query[ $field ] = array( $to_date, $from_date );
|
1422 |
+
|
1423 |
+
break;
|
1424 |
+
case 'user_registered':
|
1425 |
+
|
1426 |
+
$offset = 0;
|
1427 |
+
if ( isset( $_POST['gmt_offset'] ) && is_numeric( $_POST['gmt_offset'] ) ) {
|
1428 |
+
$offset = (int) $_POST['gmt_offset'];
|
1429 |
+
}
|
1430 |
+
|
1431 |
+
$from_date = date( 'Y-m-d H:s:i', strtotime( date( 'Y-m-d H:s:i', min( $value ) ) . "+$offset hours" ) );
|
1432 |
+
$to_date = date( 'Y-m-d H:s:i', strtotime( date( 'Y-m-d H:s:i', max( $value ) ) . "+$offset hours" ) );
|
1433 |
+
|
1434 |
+
$date_query = array(
|
1435 |
+
array(
|
1436 |
+
'column' => 'user_registered',
|
1437 |
+
'before' => $to_date,
|
1438 |
+
'after' => $from_date,
|
1439 |
+
'inclusive' => true,
|
1440 |
+
),
|
1441 |
+
);
|
1442 |
+
|
1443 |
+
if ( empty( $this->query_args['date_query'] ) ) {
|
1444 |
+
$this->query_args['date_query'] = $date_query;
|
1445 |
+
} else {
|
1446 |
+
$this->query_args['date_query'] = array_merge( $this->query_args['date_query'], array( $date_query ) );
|
1447 |
+
}
|
1448 |
+
|
1449 |
+
$this->custom_filters_in_query[ $field ] = $value;
|
1450 |
+
|
1451 |
+
break;
|
1452 |
+
case 'last_login':
|
1453 |
+
|
1454 |
+
$offset = 0;
|
1455 |
+
if ( isset( $_POST['gmt_offset'] ) && is_numeric( $_POST['gmt_offset'] ) ) {
|
1456 |
+
$offset = (int) $_POST['gmt_offset'];
|
1457 |
+
}
|
1458 |
+
|
1459 |
+
$from_date = (int) min( $value ) + ( $offset * HOUR_IN_SECONDS ); // client time zone offset
|
1460 |
+
$to_date = (int) max( $value ) + ( $offset * HOUR_IN_SECONDS ) + DAY_IN_SECONDS - 1; // time 23:59
|
1461 |
+
$meta_query = array(
|
1462 |
+
array(
|
1463 |
+
'key' => '_um_last_login',
|
1464 |
+
'value' => array( $from_date, $to_date ),
|
1465 |
+
'compare' => 'BETWEEN',
|
1466 |
+
'inclusive' => true,
|
1467 |
+
)
|
1468 |
+
);
|
1469 |
+
|
1470 |
+
$this->custom_filters_in_query[ $field ] = $value;
|
1471 |
+
|
1472 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $meta_query ) );
|
1473 |
+
break;
|
1474 |
+
}
|
1475 |
+
|
1476 |
+
}
|
1477 |
+
}
|
1478 |
+
|
1479 |
+
|
1480 |
+
/**
|
1481 |
+
* Set default filters
|
1482 |
+
*
|
1483 |
+
* @param $directory_data
|
1484 |
+
*/
|
1485 |
+
function default_filters( $directory_data ) {
|
1486 |
+
//unable default filter in case if we select other filters in frontend filters
|
1487 |
+
if ( ! empty( $this->custom_filters_in_query ) ) {
|
1488 |
+
return;
|
1489 |
+
}
|
1490 |
+
|
1491 |
+
$default_filters = array();
|
1492 |
+
if ( ! empty( $directory_data['search_filters'] ) ) {
|
1493 |
+
$default_filters = maybe_unserialize( $directory_data['search_filters'] );
|
1494 |
+
}
|
1495 |
+
|
1496 |
+
$gmt_offset = get_post_meta( $directory_data['form_id'], '_um_search_filters_gmt', true );
|
1497 |
+
|
1498 |
+
if ( empty( $default_filters ) ) {
|
1499 |
+
return;
|
1500 |
+
}
|
1501 |
+
|
1502 |
+
foreach ( $default_filters as $field => $value ) {
|
1503 |
+
//unable default filter in case if we select other value in frontend filters
|
1504 |
+
// if ( in_array( $field, array_keys( $this->custom_filters_in_query ) ) ) {
|
1505 |
+
// continue;
|
1506 |
+
// }
|
1507 |
+
|
1508 |
+
switch ( $field ) {
|
1509 |
+
default:
|
1510 |
+
|
1511 |
+
$filter_type = $this->filter_types[ $field ];
|
1512 |
+
|
1513 |
+
/**
|
1514 |
+
* UM hook
|
1515 |
+
*
|
1516 |
+
* @type filter
|
1517 |
+
* @title um_query_args_{$field}__filter
|
1518 |
+
* @description Change field's query for search at Members Directory
|
1519 |
+
* @input_vars
|
1520 |
+
* [{"var":"$field_query","type":"array","desc":"Field query"}]
|
1521 |
+
* @change_log
|
1522 |
+
* ["Since: 2.0"]
|
1523 |
+
* @usage
|
1524 |
+
* <?php add_filter( 'um_query_args_{$field}__filter', 'function_name', 10, 1 ); ?>
|
1525 |
+
* @example
|
1526 |
+
* <?php
|
1527 |
+
* add_filter( 'um_query_args_{$field}__filter', 'my_query_args_filter', 10, 1 );
|
1528 |
+
* function my_query_args_filter( $field_query ) {
|
1529 |
+
* // your code here
|
1530 |
+
* return $field_query;
|
1531 |
+
* }
|
1532 |
+
* ?>
|
1533 |
+
*/
|
1534 |
+
$field_query = apply_filters( "um_query_args_{$field}__filter", false, $field, $value, $filter_type );
|
1535 |
+
|
1536 |
+
if ( ! $field_query ) {
|
1537 |
+
|
1538 |
+
switch ( $filter_type ) {
|
1539 |
+
default:
|
1540 |
+
|
1541 |
+
$field_query = apply_filters( "um_query_args_{$field}_{$filter_type}__filter", false, $field, $value, $filter_type );
|
1542 |
+
|
1543 |
+
break;
|
1544 |
+
case 'select':
|
1545 |
+
if ( ! is_array( $value ) ) {
|
1546 |
+
$value = array( $value );
|
1547 |
+
}
|
1548 |
+
|
1549 |
+
$field_query = array( 'relation' => 'OR' );
|
1550 |
+
|
1551 |
+
foreach ( $value as $single_val ) {
|
1552 |
+
$arr_meta_query = array(
|
1553 |
+
array(
|
1554 |
+
'key' => $field,
|
1555 |
+
'value' => trim( $single_val ),
|
1556 |
+
'compare' => '=',
|
1557 |
+
),
|
1558 |
+
array(
|
1559 |
+
'key' => $field,
|
1560 |
+
'value' => serialize( strval( trim( $single_val ) ) ),
|
1561 |
+
'compare' => 'LIKE',
|
1562 |
+
),
|
1563 |
+
array(
|
1564 |
+
'key' => $field,
|
1565 |
+
'value' => '"' . trim( $single_val ) . '"',
|
1566 |
+
'compare' => 'LIKE',
|
1567 |
+
)
|
1568 |
+
);
|
1569 |
+
|
1570 |
+
if ( is_numeric( $single_val ) ) {
|
1571 |
+
|
1572 |
+
$arr_meta_query[] = array(
|
1573 |
+
'key' => $field,
|
1574 |
+
'value' => serialize( intval( trim( $single_val ) ) ),
|
1575 |
+
'compare' => 'LIKE',
|
1576 |
+
);
|
1577 |
+
|
1578 |
+
}
|
1579 |
+
|
1580 |
+
$field_query = array_merge( $field_query, $arr_meta_query );
|
1581 |
+
}
|
1582 |
+
|
1583 |
+
break;
|
1584 |
+
case 'slider':
|
1585 |
+
|
1586 |
+
$field_query = array(
|
1587 |
+
'key' => $field,
|
1588 |
+
'value' => $value,
|
1589 |
+
'compare' => 'BETWEEN',
|
1590 |
+
'inclusive' => true,
|
1591 |
+
);
|
1592 |
+
|
1593 |
+
break;
|
1594 |
+
case 'datepicker':
|
1595 |
+
|
1596 |
+
$offset = 0;
|
1597 |
+
if ( is_numeric( $gmt_offset ) ) {
|
1598 |
+
$offset = $gmt_offset;
|
1599 |
+
}
|
1600 |
+
|
1601 |
+
$from_date = (int) min( $value ) + ( $offset * HOUR_IN_SECONDS ); // client time zone offset
|
1602 |
+
$to_date = (int) max( $value ) + ( $offset * HOUR_IN_SECONDS ) + DAY_IN_SECONDS - 1; // time 23:59
|
1603 |
+
$field_query = array(
|
1604 |
+
'key' => $field,
|
1605 |
+
'value' => array( $from_date, $to_date ),
|
1606 |
+
'compare' => 'BETWEEN',
|
1607 |
+
'inclusive' => true,
|
1608 |
+
);
|
1609 |
+
|
1610 |
+
break;
|
1611 |
+
case 'timepicker':
|
1612 |
+
|
1613 |
+
if ( $value[0] == $value[1] ) {
|
1614 |
+
$field_query = array(
|
1615 |
+
'key' => $field,
|
1616 |
+
'value' => $value[0],
|
1617 |
+
);
|
1618 |
+
} else {
|
1619 |
+
$field_query = array(
|
1620 |
+
'key' => $field,
|
1621 |
+
'value' => $value,
|
1622 |
+
'compare' => 'BETWEEN',
|
1623 |
+
'type' => 'TIME',
|
1624 |
+
'inclusive' => true,
|
1625 |
+
);
|
1626 |
+
}
|
1627 |
+
|
1628 |
+
break;
|
1629 |
+
}
|
1630 |
+
|
1631 |
+
}
|
1632 |
+
|
1633 |
+
if ( ! empty( $field_query ) && $field_query !== true ) {
|
1634 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $field_query ) );
|
1635 |
+
}
|
1636 |
+
|
1637 |
+
break;
|
1638 |
+
case 'role':
|
1639 |
+
$value = explode( '||', $value );
|
1640 |
+
$value = array_map( 'strtolower', $value );
|
1641 |
+
|
1642 |
+
if ( ! empty( $this->query_args['role__in'] ) ) {
|
1643 |
+
$this->query_args['role__in'] = is_array( $this->query_args['role__in'] ) ? $this->query_args['role__in'] : array( $this->query_args['role__in'] );
|
1644 |
+
$default_role = array_intersect( $this->query_args['role__in'], $value );
|
1645 |
+
$um_role = array_diff( $value, $default_role );
|
1646 |
+
|
1647 |
+
foreach ( $um_role as $key => &$val ) {
|
1648 |
+
$val = 'um_' . str_replace( ' ', '-', $val );
|
1649 |
+
}
|
1650 |
+
$this->query_args['role__in'] = array_merge( $default_role, $um_role );
|
1651 |
+
} else {
|
1652 |
+
$this->query_args['role__in'] = $value;
|
1653 |
+
};
|
1654 |
+
|
1655 |
+
break;
|
1656 |
+
case 'birth_date':
|
1657 |
+
$from_date = date( 'Y/m/d', mktime( 0,0,0, date( 'm', time() ), date( 'd', time() ), date( 'Y', time() - min( $value ) * YEAR_IN_SECONDS ) ) );
|
1658 |
+
$to_date = date( 'Y/m/d', mktime( 0,0,0, date( 'm', time() ), date( 'd', time() ) + 1, date( 'Y', time() - ( max( $value ) + 1 ) * YEAR_IN_SECONDS ) ) );
|
1659 |
+
|
1660 |
+
$meta_query = array(
|
1661 |
+
array(
|
1662 |
+
'key' => 'birth_date',
|
1663 |
+
'value' => array( $to_date, $from_date ),
|
1664 |
+
'compare' => 'BETWEEN',
|
1665 |
+
'type' => 'DATE',
|
1666 |
+
'inclusive' => true,
|
1667 |
+
)
|
1668 |
+
);
|
1669 |
+
|
1670 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $meta_query ) );
|
1671 |
+
|
1672 |
+
break;
|
1673 |
+
case 'user_registered':
|
1674 |
+
$offset = 0;
|
1675 |
+
if ( is_numeric( $gmt_offset ) ) {
|
1676 |
+
$offset = $gmt_offset;
|
1677 |
+
}
|
1678 |
+
|
1679 |
+
$from_date = date( 'Y-m-d H:s:i', strtotime( date( 'Y-m-d H:s:i', min( $value ) ) . "+$offset hours" ) );
|
1680 |
+
$to_date = date( 'Y-m-d H:s:i', strtotime( date( 'Y-m-d H:s:i', max( $value ) ) . "+$offset hours" ) );
|
1681 |
+
|
1682 |
+
$date_query = array(
|
1683 |
+
array(
|
1684 |
+
'column' => 'user_registered',
|
1685 |
+
'before' => $to_date,
|
1686 |
+
'after' => $from_date,
|
1687 |
+
'inclusive' => true,
|
1688 |
+
),
|
1689 |
+
);
|
1690 |
+
|
1691 |
+
if ( empty( $this->query_args['date_query'] ) ) {
|
1692 |
+
$this->query_args['date_query'] = $date_query;
|
1693 |
+
} else {
|
1694 |
+
$this->query_args['date_query'] = array_merge( $this->query_args['date_query'], array( $date_query ) );
|
1695 |
+
}
|
1696 |
+
|
1697 |
+
break;
|
1698 |
+
case 'last_login':
|
1699 |
+
$offset = 0;
|
1700 |
+
if ( is_numeric( $gmt_offset ) ) {
|
1701 |
+
$offset = $gmt_offset;
|
1702 |
+
}
|
1703 |
+
|
1704 |
+
$from_date = (int) min( $value ) + ( $offset * HOUR_IN_SECONDS ); // client time zone offset
|
1705 |
+
$to_date = (int) max( $value ) + ( $offset * HOUR_IN_SECONDS ) + DAY_IN_SECONDS - 1; // time 23:59
|
1706 |
+
$meta_query = array(
|
1707 |
+
array(
|
1708 |
+
'key' => '_um_last_login',
|
1709 |
+
'value' => array( $from_date, $to_date ),
|
1710 |
+
'compare' => 'BETWEEN',
|
1711 |
+
'inclusive' => true,
|
1712 |
+
)
|
1713 |
+
);
|
1714 |
+
|
1715 |
+
$this->query_args['meta_query'] = array_merge( $this->query_args['meta_query'], array( $meta_query ) );
|
1716 |
+
break;
|
1717 |
+
}
|
1718 |
+
}
|
1719 |
+
}
|
1720 |
+
|
1721 |
+
|
1722 |
+
/**
|
1723 |
+
* Get data array for pagination
|
1724 |
+
*
|
1725 |
+
*
|
1726 |
+
* @param array $directory_data
|
1727 |
+
* @param \WP_User_Query $result
|
1728 |
+
*
|
1729 |
+
* @return array
|
1730 |
+
*/
|
1731 |
+
function calculate_pagination( $directory_data, $result ) {
|
1732 |
+
|
1733 |
+
$current_page = ! empty( $_POST['page'] ) ? $_POST['page'] : 1;
|
1734 |
+
|
1735 |
+
$total_users = ( ! empty( $directory_data['max_users'] ) && $directory_data['max_users'] <= $result->total_users ) ? $directory_data['max_users'] : $result->total_users;
|
1736 |
+
$total_pages = ceil( $total_users / $directory_data['profiles_per_page'] );
|
1737 |
+
|
1738 |
+
if ( ! empty( $total_pages ) ) {
|
1739 |
+
$index1 = 0 - ( $current_page - 2 ) + 1;
|
1740 |
+
$to = $current_page + 2;
|
1741 |
+
if ( $index1 > 0 ) {
|
1742 |
+
$to += $index1;
|
1743 |
+
}
|
1744 |
+
|
1745 |
+
$index2 = $total_pages - ( $current_page + 2 );
|
1746 |
+
$from = $current_page - 2;
|
1747 |
+
if ( $index2 < 0 ) {
|
1748 |
+
$from += $index2;
|
1749 |
+
}
|
1750 |
+
|
1751 |
+
$pages_to_show = range(
|
1752 |
+
( $from > 0 ) ? $from : 1,
|
1753 |
+
( $to <= $total_pages ) ? $to : $total_pages
|
1754 |
+
);
|
1755 |
+
}
|
1756 |
+
|
1757 |
+
|
1758 |
+
$pagination_data = array(
|
1759 |
+
'pages_to_show' => ( ! empty( $pages_to_show ) && count( $pages_to_show ) > 1 ) ? array_values( $pages_to_show ) : array(),
|
1760 |
+
'current_page' => $current_page,
|
1761 |
+
'total_pages' => $total_pages,
|
1762 |
+
'total_users' => $total_users,
|
1763 |
+
);
|
1764 |
+
|
1765 |
+
$pagination_data['header'] = $this->convert_tags( $directory_data['header'], $pagination_data );
|
1766 |
+
$pagination_data['header_single'] = $this->convert_tags( $directory_data['header_single'], $pagination_data );
|
1767 |
+
|
1768 |
+
return $pagination_data;
|
1769 |
+
}
|
1770 |
+
|
1771 |
+
|
1772 |
+
/**
|
1773 |
+
* @param int $user_id
|
1774 |
+
*
|
1775 |
+
* @return array
|
1776 |
+
*/
|
1777 |
+
function build_user_actions_list( $user_id ) {
|
1778 |
+
|
1779 |
+
$actions = array();
|
1780 |
+
if ( ! is_user_logged_in() ) {
|
1781 |
+
return $actions;
|
1782 |
+
}
|
1783 |
+
|
1784 |
+
if ( get_current_user_id() != $user_id ) {
|
1785 |
+
|
1786 |
+
if ( UM()->roles()->um_current_user_can( 'edit', $user_id ) ) {
|
1787 |
+
$actions['um-editprofile'] = array(
|
1788 |
+
'title' => __( 'Edit Profile', 'ultimate-member' ),
|
1789 |
+
'url' => um_edit_profile_url(),
|
1790 |
+
);
|
1791 |
+
}
|
1792 |
+
|
1793 |
+
/**
|
1794 |
+
* UM hook
|
1795 |
+
*
|
1796 |
+
* @type filter
|
1797 |
+
* @title um_admin_user_actions_hook
|
1798 |
+
* @description Extend admin actions for each user
|
1799 |
+
* @input_vars
|
1800 |
+
* [{"var":"$actions","type":"array","desc":"Actions for user"}]
|
1801 |
+
* @change_log
|
1802 |
+
* ["Since: 2.0"]
|
1803 |
+
* @usage
|
1804 |
+
* <?php add_filter( 'um_admin_user_actions_hook', 'function_name', 10, 1 ); ?>
|
1805 |
+
* @example
|
1806 |
+
* <?php
|
1807 |
+
* add_filter( 'um_admin_user_actions_hook', 'my_admin_user_actions', 10, 1 );
|
1808 |
+
* function my_admin_user_actions( $actions ) {
|
1809 |
+
* // your code here
|
1810 |
+
* return $actions;
|
1811 |
+
* }
|
1812 |
+
* ?>
|
1813 |
+
*/
|
1814 |
+
$admin_actions = apply_filters( 'um_admin_user_actions_hook', null, $user_id );
|
1815 |
+
if ( ! empty( $admin_actions ) ) {
|
1816 |
+
foreach ( $admin_actions as $id => $arr ) {
|
1817 |
+
$url = add_query_arg( array( 'um_action' => $id, 'uid' => $user_id ), um_get_core_page( 'user' ) );
|
1818 |
+
|
1819 |
+
$actions[ $id ] = array(
|
1820 |
+
'title' => $arr['label'],
|
1821 |
+
'url' => $url,
|
1822 |
+
);
|
1823 |
+
}
|
1824 |
+
}
|
1825 |
+
|
1826 |
+
$actions = apply_filters( 'um_member_directory_users_card_actions', $actions, $user_id );
|
1827 |
+
|
1828 |
+
} else {
|
1829 |
+
|
1830 |
+
if ( empty( UM()->user()->cannot_edit ) ) {
|
1831 |
+
$actions['um-editprofile'] = array(
|
1832 |
+
'title' => __( 'Edit Profile', 'ultimate-member' ),
|
1833 |
+
'url' => um_edit_profile_url(),
|
1834 |
+
);
|
1835 |
+
}
|
1836 |
+
|
1837 |
+
$actions['um-myaccount'] = array(
|
1838 |
+
'title' => __( 'My Account', 'ultimate-member' ),
|
1839 |
+
'url' => um_get_core_page( 'account' ),
|
1840 |
+
);
|
1841 |
+
|
1842 |
+
$actions['um-logout'] = array(
|
1843 |
+
'title' => __( 'Logout', 'ultimate-member' ),
|
1844 |
+
'url' => um_get_core_page( 'logout' ),
|
1845 |
+
);
|
1846 |
+
|
1847 |
+
$actions = apply_filters( 'um_member_directory_my_user_card_actions', $actions, $user_id );
|
1848 |
+
}
|
1849 |
+
|
1850 |
+
|
1851 |
+
return $actions;
|
1852 |
+
}
|
1853 |
+
|
1854 |
+
|
1855 |
+
/**
|
1856 |
+
* @param int $user_id
|
1857 |
+
* @param array $directory_data
|
1858 |
+
*
|
1859 |
+
* @return array
|
1860 |
+
*/
|
1861 |
+
function build_user_card_data( $user_id, $directory_data ) {
|
1862 |
+
um_fetch_user( $user_id );
|
1863 |
+
|
1864 |
+
$dropdown_actions = $this->build_user_actions_list( $user_id );
|
1865 |
+
|
1866 |
+
$actions = array();
|
1867 |
+
$can_edit = UM()->roles()->um_current_user_can( 'edit', $user_id ) || UM()->roles()->um_user_can( 'can_edit_everyone' );
|
1868 |
+
|
1869 |
+
// Replace hook 'um_members_just_after_name'
|
1870 |
+
ob_start();
|
1871 |
+
do_action( 'um_members_just_after_name', $user_id, $directory_data );
|
1872 |
+
$hook_just_after_name = ob_get_clean();
|
1873 |
+
|
1874 |
+
// Replace hook 'um_members_after_user_name'
|
1875 |
+
ob_start();
|
1876 |
+
do_action( 'um_members_after_user_name', $user_id, $directory_data );
|
1877 |
+
$hook_after_user_name = ob_get_clean();
|
1878 |
+
|
1879 |
+
$data_array = array(
|
1880 |
+
'id' => $user_id,
|
1881 |
+
'role' => um_user( 'role' ),
|
1882 |
+
'account_status' => um_user( 'account_status' ),
|
1883 |
+
'account_status_name' => um_user( 'account_status_name' ),
|
1884 |
+
'cover_photo' => um_user( 'cover_photo', $this->cover_size ),
|
1885 |
+
'display_name' => um_user( 'display_name' ),
|
1886 |
+
'profile_url' => um_user_profile_url(),
|
1887 |
+
'can_edit' => $can_edit,
|
1888 |
+
'edit_profile_url' => um_edit_profile_url(),
|
1889 |
+
'avatar' => get_avatar( $user_id, $this->avatar_size ),
|
1890 |
+
'display_name_html' => um_user( 'display_name', 'html' ),
|
1891 |
+
'dropdown_actions' => $dropdown_actions,
|
1892 |
+
'hook_just_after_name' => preg_replace( '/^\s+/im', '', $hook_just_after_name ),
|
1893 |
+
'hook_after_user_name' => preg_replace( '/^\s+/im', '', $hook_after_user_name ),
|
1894 |
+
);
|
1895 |
+
|
1896 |
+
$directory_data['tagline_fields'] = maybe_unserialize( $directory_data['tagline_fields'] );
|
1897 |
+
|
1898 |
+
if ( $directory_data['show_tagline'] && is_array( $directory_data['tagline_fields'] ) ) {
|
1899 |
+
foreach ( $directory_data['tagline_fields'] as $key ) {
|
1900 |
+
if ( ! $key ) {
|
1901 |
+
continue;
|
1902 |
+
}
|
1903 |
+
|
1904 |
+
$value = um_filtered_value( $key );
|
1905 |
+
|
1906 |
+
if ( ! $value ) {
|
1907 |
+
continue;
|
1908 |
+
}
|
1909 |
+
|
1910 |
+
$data_array[ $key ] = $value;
|
1911 |
+
}
|
1912 |
+
}
|
1913 |
+
|
1914 |
+
if ( $directory_data['show_userinfo'] ) {
|
1915 |
+
$directory_data['reveal_fields'] = maybe_unserialize( $directory_data['reveal_fields'] );
|
1916 |
+
|
1917 |
+
if ( is_array( $directory_data['reveal_fields'] ) ) {
|
1918 |
+
foreach ( $directory_data['reveal_fields'] as $key ) {
|
1919 |
+
if ( ! $key ) {
|
1920 |
+
continue;
|
1921 |
+
}
|
1922 |
+
|
1923 |
+
$value = um_filtered_value( $key );
|
1924 |
+
if ( ! $value ) {
|
1925 |
+
continue;
|
1926 |
+
}
|
1927 |
+
|
1928 |
+
$label = UM()->fields()->get_label( $key );
|
1929 |
+
if ( $key == 'role_select' || $key == 'role_radio' ) {
|
1930 |
+
$label = strtr( $label, array(
|
1931 |
+
' (Dropdown)' => '',
|
1932 |
+
' (Radio)' => ''
|
1933 |
+
) );
|
1934 |
+
}
|
1935 |
+
|
1936 |
+
$data_array[ "label_{$key}" ] = $label;
|
1937 |
+
$data_array[ $key ] = $value;
|
1938 |
+
}
|
1939 |
+
}
|
1940 |
+
|
1941 |
+
if ( ! empty( $directory_data['show_social'] ) ) {
|
1942 |
+
ob_start();
|
1943 |
+
UM()->fields()->show_social_urls();
|
1944 |
+
$social_urls = ob_get_clean();
|
1945 |
+
|
1946 |
+
$data_array['social_urls'] = $social_urls;
|
1947 |
+
}
|
1948 |
+
}
|
1949 |
+
|
1950 |
+
$data_array = apply_filters( 'um_ajax_get_members_data', $data_array, $user_id, $directory_data );
|
1951 |
+
um_reset_user_clean();
|
1952 |
+
|
1953 |
+
return $data_array;
|
1954 |
+
}
|
1955 |
+
|
1956 |
+
|
1957 |
+
/**
|
1958 |
+
* Main Query function for getting members via AJAX
|
1959 |
+
*/
|
1960 |
+
function ajax_get_members() {
|
1961 |
+
UM()->check_ajax_nonce();
|
1962 |
+
|
1963 |
+
global $wpdb;
|
1964 |
+
|
1965 |
+
$directory_id = $this->get_directory_by_hash( $_POST['directory_id'] );
|
1966 |
+
$directory_data = UM()->query()->post_data( $directory_id );
|
1967 |
+
|
1968 |
+
//predefined result for user without capabilities to see other members
|
1969 |
+
if ( is_user_logged_in() && ! UM()->roles()->um_user_can( 'can_view_all' ) ) {
|
1970 |
+
$pagination_data = array(
|
1971 |
+
'pages_to_show' => array(),
|
1972 |
+
'current_page' => 1,
|
1973 |
+
'total_pages' => 0,
|
1974 |
+
'total_users' => 0,
|
1975 |
+
);
|
1976 |
+
|
1977 |
+
$pagination_data['header'] = $this->convert_tags( $directory_data['header'], $pagination_data );
|
1978 |
+
$pagination_data['header_single'] = $this->convert_tags( $directory_data['header_single'], $pagination_data );
|
1979 |
+
|
1980 |
+
wp_send_json_success( array( 'users' => array(), 'pagination' => $pagination_data ) );
|
1981 |
+
}
|
1982 |
+
|
1983 |
+
do_action( 'um_member_directory_before_query' );
|
1984 |
+
|
1985 |
+
// Prepare for BIG SELECT query
|
1986 |
+
$wpdb->query( 'SET SQL_BIG_SELECTS=1' );
|
1987 |
+
|
1988 |
+
// Prepare default user query values
|
1989 |
+
$this->query_args = array(
|
1990 |
+
'fields' => 'ids',
|
1991 |
+
'number' => 0,
|
1992 |
+
'meta_query' => array(
|
1993 |
+
'relation' => 'AND'
|
1994 |
+
),
|
1995 |
+
);
|
1996 |
+
|
1997 |
+
|
1998 |
+
// handle different restrictions
|
1999 |
+
$this->restriction_options();
|
2000 |
+
|
2001 |
+
// handle general options
|
2002 |
+
$this->general_options( $directory_data );
|
2003 |
+
|
2004 |
+
// handle pagination options
|
2005 |
+
$this->pagination_options( $directory_data );
|
2006 |
+
|
2007 |
+
// handle sorting options
|
2008 |
+
$this->sorting_query( $directory_data );
|
2009 |
+
|
2010 |
+
// handle general search line
|
2011 |
+
$this->general_search();
|
2012 |
+
|
2013 |
+
// handle filters
|
2014 |
+
$this->filters( $directory_data );
|
2015 |
+
|
2016 |
+
$this->default_filters( $directory_data );
|
2017 |
+
|
2018 |
+
/**
|
2019 |
+
* UM hook
|
2020 |
+
*
|
2021 |
+
* @type filter
|
2022 |
+
* @title um_prepare_user_query_args
|
2023 |
+
* @description Extend member directory query arguments
|
2024 |
+
* @input_vars
|
2025 |
+
* [{"var":"$query_args","type":"array","desc":"Members Query Arguments"},
|
2026 |
+
* {"var":"$directory_settings","type":"array","desc":"Member Directory Settings"}]
|
2027 |
+
* @change_log
|
2028 |
+
* ["Since: 2.0"]
|
2029 |
+
* @usage
|
2030 |
+
* <?php add_filter( 'um_prepare_user_query_args', 'function_name', 10, 2 ); ?>
|
2031 |
+
* @example
|
2032 |
+
* <?php
|
2033 |
+
* add_filter( 'um_prepare_user_query_args', 'my_prepare_user_query_args', 10, 2 );
|
2034 |
+
* function my_prepare_user_query_args( $query_args, $directory_settings ) {
|
2035 |
+
* // your code here
|
2036 |
+
* return $query_args;
|
2037 |
+
* }
|
2038 |
+
* ?>
|
2039 |
+
*/
|
2040 |
+
$this->query_args = apply_filters( 'um_prepare_user_query_args', $this->query_args, $directory_data );
|
2041 |
+
|
2042 |
+
//unset empty meta_query attribute
|
2043 |
+
if ( isset( $this->query_args['meta_query']['relation'] ) && count( $this->query_args['meta_query'] ) == 1 ) {
|
2044 |
+
unset( $this->query_args['meta_query'] );
|
2045 |
+
}
|
2046 |
+
|
2047 |
+
/**
|
2048 |
+
* UM hook
|
2049 |
+
*
|
2050 |
+
* @type action
|
2051 |
+
* @title um_user_before_query
|
2052 |
+
* @description Action before users query on member directory
|
2053 |
+
* @input_vars
|
2054 |
+
* [{"var":"$query_args","type":"array","desc":"Query arguments"}]
|
2055 |
+
* @change_log
|
2056 |
+
* ["Since: 2.0"]
|
2057 |
+
* @usage add_action( 'um_user_before_query', 'function_name', 10, 1 );
|
2058 |
+
* @example
|
2059 |
+
* <?php
|
2060 |
+
* add_action( 'um_user_before_query', 'my_user_before_query', 10, 1 );
|
2061 |
+
* function my_user_before_query( $query_args ) {
|
2062 |
+
* // your code here
|
2063 |
+
* }
|
2064 |
+
* ?>
|
2065 |
+
*/
|
2066 |
+
do_action( 'um_user_before_query', $this->query_args );
|
2067 |
+
|
2068 |
+
add_filter( 'get_meta_sql', array( &$this, 'change_meta_sql' ), 10, 6 );
|
2069 |
+
|
2070 |
+
$user_query = new \WP_User_Query( $this->query_args );
|
2071 |
+
|
2072 |
+
remove_filter( 'get_meta_sql', array( &$this, 'change_meta_sql' ), 10 );
|
2073 |
+
|
2074 |
+
/**
|
2075 |
+
* UM hook
|
2076 |
+
*
|
2077 |
+
* @type action
|
2078 |
+
* @title um_user_after_query
|
2079 |
+
* @description Action before users query on member directory
|
2080 |
+
* @input_vars
|
2081 |
+
* [{"var":"$query_args","type":"array","desc":"Query arguments"},
|
2082 |
+
* {"var":"$user_query","type":"array","desc":"User Query"}]
|
2083 |
+
* @change_log
|
2084 |
+
* ["Since: 2.0"]
|
2085 |
+
* @usage add_action( 'um_user_after_query', 'function_name', 10, 2 );
|
2086 |
+
* @example
|
2087 |
+
* <?php
|
2088 |
+
* add_action( 'um_user_after_query', 'my_user_after_query', 10, 2 );
|
2089 |
+
* function my_user_after_query( $query_args, $user_query ) {
|
2090 |
+
* // your code here
|
2091 |
+
* }
|
2092 |
+
* ?>
|
2093 |
+
*/
|
2094 |
+
do_action( 'um_user_after_query', $this->query_args, $user_query );
|
2095 |
+
|
2096 |
+
$pagination_data = $this->calculate_pagination( $directory_data, $user_query );
|
2097 |
+
|
2098 |
+
$user_ids = ! empty( $user_query->results ) ? array_unique( $user_query->results ) : array();
|
2099 |
+
|
2100 |
+
/**
|
2101 |
+
* UM hook
|
2102 |
+
*
|
2103 |
+
* @type filter
|
2104 |
+
* @title um_prepare_user_results_array
|
2105 |
+
* @description Extend member directory query result
|
2106 |
+
* @input_vars
|
2107 |
+
* [{"var":"$result","type":"array","desc":"Members Query Result"}]
|
2108 |
+
* @change_log
|
2109 |
+
* ["Since: 2.0"]
|
2110 |
+
* @usage
|
2111 |
+
* <?php add_filter( 'um_prepare_user_results_array', 'function_name', 10, 1 ); ?>
|
2112 |
+
* @example
|
2113 |
+
* <?php
|
2114 |
+
* add_filter( 'um_prepare_user_results_array', 'my_prepare_user_results', 10, 1 );
|
2115 |
+
* function my_prepare_user_results( $user_ids ) {
|
2116 |
+
* // your code here
|
2117 |
+
* return $user_ids;
|
2118 |
+
* }
|
2119 |
+
* ?>
|
2120 |
+
*/
|
2121 |
+
$user_ids = apply_filters( 'um_prepare_user_results_array', $user_ids );
|
2122 |
+
|
2123 |
+
|
2124 |
+
$sizes = UM()->options()->get( 'cover_thumb_sizes' );
|
2125 |
+
$this->cover_size = UM()->mobile()->isTablet() ? $sizes[1] : $sizes[0];
|
2126 |
+
|
2127 |
+
$avatar_size = UM()->options()->get( 'profile_photosize' );
|
2128 |
+
$this->avatar_size = str_replace( 'px', '', $avatar_size );
|
2129 |
+
|
2130 |
+
$users = array();
|
2131 |
+
foreach ( $user_ids as $user_id ) {
|
2132 |
+
$users[] = $this->build_user_card_data( $user_id, $directory_data );
|
2133 |
+
}
|
2134 |
+
|
2135 |
+
um_reset_user();
|
2136 |
+
// end of user card
|
2137 |
+
|
2138 |
+
wp_send_json_success( array( 'pagination' => $pagination_data, 'users' => $users ) );
|
2139 |
+
}
|
2140 |
+
|
2141 |
+
|
2142 |
+
/**
|
2143 |
+
* New menu
|
2144 |
+
*
|
2145 |
+
* @param string $element
|
2146 |
+
* @param string $trigger
|
2147 |
+
* @param array $items
|
2148 |
+
*/
|
2149 |
+
function dropdown_menu( $element, $trigger, $items = array() ) {
|
2150 |
+
?>
|
2151 |
+
|
2152 |
+
<div class="um-new-dropdown" data-element="<?php echo $element; ?>" data-trigger="<?php echo $trigger; ?>">
|
2153 |
+
<ul>
|
2154 |
+
<?php foreach ( $items as $k => $v ) { ?>
|
2155 |
+
<li><?php echo $v; ?></li>
|
2156 |
+
<?php } ?>
|
2157 |
+
</ul>
|
2158 |
+
</div>
|
2159 |
+
|
2160 |
+
<?php
|
2161 |
+
}
|
2162 |
+
|
2163 |
+
|
2164 |
+
/**
|
2165 |
+
* New menu JS
|
2166 |
+
*
|
2167 |
+
* @param string $element
|
2168 |
+
* @param string $trigger
|
2169 |
+
* @param string $item
|
2170 |
+
*/
|
2171 |
+
function dropdown_menu_js( $element, $trigger, $item ) {
|
2172 |
+
?>
|
2173 |
+
|
2174 |
+
<div class="um-new-dropdown" data-element="<?php echo $element; ?>" data-trigger="<?php echo $trigger; ?>">
|
2175 |
+
<ul>
|
2176 |
+
<# _.each( <?php echo $item; ?>.dropdown_actions, function( action, key, list ) { #>
|
2177 |
+
<li><a href="<# if ( typeof action.url != 'undefined' ) { #>{{{action.url}}}<# } else { #>javascript:void(0);<# }#>" class="{{{key}}}">{{{action.title}}}</a></li>
|
2178 |
+
<# }); #>
|
2179 |
+
</ul>
|
2180 |
+
</div>
|
2181 |
+
|
2182 |
+
<?php
|
2183 |
+
}
|
2184 |
+
|
2185 |
+
|
2186 |
+
|
2187 |
+
function default_filter_settings() {
|
2188 |
+
UM()->admin()->check_ajax_nonce();
|
2189 |
+
|
2190 |
+
$filter_key = sanitize_key( $_REQUEST['key'] );
|
2191 |
+
$directory_id = absint( $_REQUEST['directory_id'] );
|
2192 |
+
|
2193 |
+
$html = $this->show_filter( $filter_key, array( 'form_id' => $directory_id ) );
|
2194 |
+
|
2195 |
+
wp_send_json_success( array( 'field_html' => $html ) );
|
2196 |
+
}
|
2197 |
+
}
|
2198 |
+
}
|
includes/core/class-members.php
DELETED
@@ -1,620 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
namespace um\core;
|
3 |
-
|
4 |
-
// Exit if accessed directly
|
5 |
-
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
-
|
7 |
-
|
8 |
-
if ( ! class_exists( 'um\core\Members' ) ) {
|
9 |
-
|
10 |
-
|
11 |
-
/**
|
12 |
-
* Class Members
|
13 |
-
* @package um\core
|
14 |
-
*/
|
15 |
-
class Members {
|
16 |
-
|
17 |
-
|
18 |
-
/**
|
19 |
-
* @var
|
20 |
-
*/
|
21 |
-
var $results;
|
22 |
-
|
23 |
-
|
24 |
-
/**
|
25 |
-
* Members constructor.
|
26 |
-
*/
|
27 |
-
function __construct() {
|
28 |
-
|
29 |
-
add_filter( 'user_search_columns', array( &$this, 'user_search_columns' ), 99 );
|
30 |
-
add_action( 'template_redirect', array( &$this, 'access_members' ), 555 );
|
31 |
-
|
32 |
-
$this->core_search_fields = array(
|
33 |
-
'user_login',
|
34 |
-
'username',
|
35 |
-
'display_name',
|
36 |
-
'user_email',
|
37 |
-
);
|
38 |
-
|
39 |
-
add_filter( 'um_search_select_fields', array( &$this, 'um_search_select_fields' ), 10, 1 );
|
40 |
-
|
41 |
-
}
|
42 |
-
|
43 |
-
|
44 |
-
/**
|
45 |
-
* User_search_columns
|
46 |
-
*
|
47 |
-
* @param $search_columns
|
48 |
-
*
|
49 |
-
* @return array
|
50 |
-
*/
|
51 |
-
function user_search_columns( $search_columns ) {
|
52 |
-
if ( is_admin() ) {
|
53 |
-
$search_columns[] = 'display_name';
|
54 |
-
}
|
55 |
-
return $search_columns;
|
56 |
-
}
|
57 |
-
|
58 |
-
|
59 |
-
/**
|
60 |
-
* Members page allowed?
|
61 |
-
*/
|
62 |
-
function access_members() {
|
63 |
-
if ( UM()->options()->get( 'members_page' ) == 0 && um_is_core_page( 'members' ) ) {
|
64 |
-
um_redirect_home();
|
65 |
-
}
|
66 |
-
}
|
67 |
-
|
68 |
-
|
69 |
-
/**
|
70 |
-
* Tag conversion for member directory
|
71 |
-
*
|
72 |
-
* @param $string
|
73 |
-
* @param $array
|
74 |
-
*
|
75 |
-
* @return mixed
|
76 |
-
*/
|
77 |
-
function convert_tags( $string, $array ) {
|
78 |
-
|
79 |
-
$search = array(
|
80 |
-
'{total_users}',
|
81 |
-
);
|
82 |
-
|
83 |
-
$replace = array(
|
84 |
-
$array['total_users'],
|
85 |
-
);
|
86 |
-
|
87 |
-
$string = str_replace( $search, $replace, $string );
|
88 |
-
return $string;
|
89 |
-
}
|
90 |
-
|
91 |
-
/**
|
92 |
-
* Prepare filter data
|
93 |
-
*
|
94 |
-
* @param $filter
|
95 |
-
* @return array
|
96 |
-
*/
|
97 |
-
function prepare_filter( $filter ) {
|
98 |
-
$fields = UM()->builtin()->all_user_fields;
|
99 |
-
|
100 |
-
if ( isset( $fields[ $filter ] ) ) {
|
101 |
-
$attrs = $fields[ $filter ];
|
102 |
-
} else {
|
103 |
-
/**
|
104 |
-
* UM hook
|
105 |
-
*
|
106 |
-
* @type filter
|
107 |
-
* @title um_custom_search_field_{$filter}
|
108 |
-
* @description Custom search settings by $filter
|
109 |
-
* @input_vars
|
110 |
-
* [{"var":"$settings","type":"array","desc":"Search Settings"}]
|
111 |
-
* @change_log
|
112 |
-
* ["Since: 2.0"]
|
113 |
-
* @usage
|
114 |
-
* <?php add_filter( 'um_custom_search_field_{$filter}', 'function_name', 10, 1 ); ?>
|
115 |
-
* @example
|
116 |
-
* <?php
|
117 |
-
* add_filter( 'um_custom_search_field_{$filter}', 'my_custom_search_field', 10, 1 );
|
118 |
-
* function my_change_email_template_file( $settings ) {
|
119 |
-
* // your code here
|
120 |
-
* return $settings;
|
121 |
-
* }
|
122 |
-
* ?>
|
123 |
-
*/
|
124 |
-
$attrs = apply_filters( "um_custom_search_field_{$filter}", array() );
|
125 |
-
}
|
126 |
-
|
127 |
-
// additional filter for search field attributes
|
128 |
-
/**
|
129 |
-
* UM hook
|
130 |
-
*
|
131 |
-
* @type filter
|
132 |
-
* @title um_search_field_{$filter}
|
133 |
-
* @description Extend search settings by $filter
|
134 |
-
* @input_vars
|
135 |
-
* [{"var":"$settings","type":"array","desc":"Search Settings"}]
|
136 |
-
* @change_log
|
137 |
-
* ["Since: 2.0"]
|
138 |
-
* @usage
|
139 |
-
* <?php add_filter( 'um_search_field_{$filter}', 'function_name', 10, 1 ); ?>
|
140 |
-
* @example
|
141 |
-
* <?php
|
142 |
-
* add_filter( 'um_search_field_{$filter}', 'my_search_field', 10, 1 );
|
143 |
-
* function my_change_email_template_file( $settings ) {
|
144 |
-
* // your code here
|
145 |
-
* return $settings;
|
146 |
-
* }
|
147 |
-
* ?>
|
148 |
-
*/
|
149 |
-
$attrs = apply_filters( "um_search_field_{$filter}", $attrs );
|
150 |
-
|
151 |
-
$type = UM()->builtin()->is_dropdown_field( $filter, $attrs ) ? 'select' : 'text';
|
152 |
-
|
153 |
-
/**
|
154 |
-
* UM hook
|
155 |
-
*
|
156 |
-
* @type filter
|
157 |
-
* @title um_search_field_type
|
158 |
-
* @description Change search field type
|
159 |
-
* @input_vars
|
160 |
-
* [{"var":"$type","type":"string","desc":"Search field type"},
|
161 |
-
* {"var":"$settings","type":"array","desc":"Search Settings"}]
|
162 |
-
* @change_log
|
163 |
-
* ["Since: 2.0"]
|
164 |
-
* @usage
|
165 |
-
* <?php add_filter( 'um_search_field_type', 'function_name', 10, 2 ); ?>
|
166 |
-
* @example
|
167 |
-
* <?php
|
168 |
-
* add_filter( 'um_search_field_type', 'my_search_field_type', 10, 2 );
|
169 |
-
* function my_search_field_type( $type, $settings ) {
|
170 |
-
* // your code here
|
171 |
-
* return $type;
|
172 |
-
* }
|
173 |
-
* ?>
|
174 |
-
*/
|
175 |
-
$type = apply_filters( 'um_search_field_type', $type, $attrs );
|
176 |
-
|
177 |
-
/**
|
178 |
-
* UM hook
|
179 |
-
*
|
180 |
-
* @type filter
|
181 |
-
* @title um_search_fields
|
182 |
-
* @description Filter all search fields
|
183 |
-
* @input_vars
|
184 |
-
* [{"var":"$settings","type":"array","desc":"Search Fields"}]
|
185 |
-
* @change_log
|
186 |
-
* ["Since: 2.0"]
|
187 |
-
* @usage
|
188 |
-
* <?php add_filter( 'um_search_fields', 'function_name', 10, 1 ); ?>
|
189 |
-
* @example
|
190 |
-
* <?php
|
191 |
-
* add_filter( 'um_search_fields', 'my_search_fields', 10, 1 );
|
192 |
-
* function my_search_fields( $settings ) {
|
193 |
-
* // your code here
|
194 |
-
* return $settings;
|
195 |
-
* }
|
196 |
-
* ?>
|
197 |
-
*/
|
198 |
-
$attrs = apply_filters( 'um_search_fields', $attrs );
|
199 |
-
|
200 |
-
if ( $type == 'select' ) {
|
201 |
-
if ( isset( $attrs ) && is_array( $attrs['options'] ) ) {
|
202 |
-
asort( $attrs['options'] );
|
203 |
-
}
|
204 |
-
/**
|
205 |
-
* UM hook
|
206 |
-
*
|
207 |
-
* @type filter
|
208 |
-
* @title um_search_select_fields
|
209 |
-
* @description Filter all search fields for select field type
|
210 |
-
* @input_vars
|
211 |
-
* [{"var":"$settings","type":"array","desc":"Search Fields"}]
|
212 |
-
* @change_log
|
213 |
-
* ["Since: 2.0"]
|
214 |
-
* @usage
|
215 |
-
* <?php add_filter( 'um_search_select_fields', 'function_name', 10, 1 ); ?>
|
216 |
-
* @example
|
217 |
-
* <?php
|
218 |
-
* add_filter( 'um_search_select_fields', 'my_search_select_fields', 10, 1 );
|
219 |
-
* function my_search_select_fields( $settings ) {
|
220 |
-
* // your code here
|
221 |
-
* return $settings;
|
222 |
-
* }
|
223 |
-
* ?>
|
224 |
-
*/
|
225 |
-
$attrs = apply_filters( 'um_search_select_fields', $attrs );
|
226 |
-
}
|
227 |
-
|
228 |
-
return compact( 'type', 'attrs' );
|
229 |
-
}
|
230 |
-
|
231 |
-
|
232 |
-
/**
|
233 |
-
* Show filter
|
234 |
-
*
|
235 |
-
* @param $filter
|
236 |
-
*/
|
237 |
-
function show_filter( $filter ) {
|
238 |
-
/**
|
239 |
-
* @var $type
|
240 |
-
* @var $attrs
|
241 |
-
*/
|
242 |
-
extract( $this->prepare_filter( $filter ) );
|
243 |
-
|
244 |
-
switch ( $type ) {
|
245 |
-
|
246 |
-
case 'select':
|
247 |
-
/*if( isset($attrs) && is_array( $attrs['options'] ) ){
|
248 |
-
asort( $attrs['options'] );
|
249 |
-
}*/
|
250 |
-
if ( isset( $attrs['label'] ) ) {
|
251 |
-
$label = $attrs['label'];
|
252 |
-
} else {
|
253 |
-
$label = isset( $attrs['title'] ) ? $attrs['title'] : '';
|
254 |
-
} ?>
|
255 |
-
|
256 |
-
<select name="<?php echo esc_attr( $filter ); ?>" id="<?php echo esc_attr( $filter ); ?>" class="um-s1"
|
257 |
-
style="width: 100%" data-placeholder="<?php esc_attr_e( stripslashes( $label ), 'ultimate-member' ); ?>" <?php if ( ! empty( $attrs['custom_dropdown_options_source'] ) ) { ?> data-um-parent="<?php echo esc_attr( $attrs['parent_dropdown_relationship'] ); ?>" data-mebers-directory="yes" data-um-ajax-source="<?php echo esc_attr( $attrs['custom_dropdown_options_source'] ) ?>"<?php } ?>>
|
258 |
-
|
259 |
-
<option></option>
|
260 |
-
|
261 |
-
<?php foreach ( $attrs['options'] as $k => $v ) {
|
262 |
-
|
263 |
-
$v = stripslashes( $v );
|
264 |
-
|
265 |
-
$opt = $v;
|
266 |
-
|
267 |
-
if ( strstr( $filter, 'role_' ) ) {
|
268 |
-
$opt = $k;
|
269 |
-
}
|
270 |
-
|
271 |
-
if ( isset( $attrs['custom'] ) ) {
|
272 |
-
$opt = $k;
|
273 |
-
} ?>
|
274 |
-
|
275 |
-
<option value="<?php echo esc_attr( $opt ); ?>" <?php um_select_if_in_query_params( $filter, $opt ); ?> <?php selected( isset( $_GET[ $filter ] ) && $_GET[ $filter ] == $v ) ?>><?php esc_html_e( $v, 'ultimate-member'); ?></option>
|
276 |
-
|
277 |
-
<?php } ?>
|
278 |
-
|
279 |
-
</select>
|
280 |
-
|
281 |
-
<?php
|
282 |
-
|
283 |
-
break;
|
284 |
-
|
285 |
-
case 'text':
|
286 |
-
?>
|
287 |
-
|
288 |
-
<input type="text" autocomplete="off" name="<?php echo esc_attr( $filter ); ?>" id="<?php echo esc_attr( $filter ); ?>"
|
289 |
-
placeholder="<?php echo isset( $attrs['label'] ) ? esc_attr__( $attrs['label'], 'ultimate-member' ) : ''; ?>"
|
290 |
-
value="<?php echo esc_attr( um_queried_search_value( $filter, false ) ); ?>" />
|
291 |
-
|
292 |
-
<?php
|
293 |
-
break;
|
294 |
-
|
295 |
-
}
|
296 |
-
|
297 |
-
}
|
298 |
-
|
299 |
-
|
300 |
-
/**
|
301 |
-
* Display assigned roles in search filter 'role' field
|
302 |
-
* @param array $attrs
|
303 |
-
* @return array
|
304 |
-
* @uses add_filter 'um_search_select_fields'
|
305 |
-
* @since 1.3.83
|
306 |
-
*/
|
307 |
-
function um_search_select_fields( $attrs ) {
|
308 |
-
|
309 |
-
if ( ! empty( $attrs['metakey'] ) && strstr( $attrs['metakey'], 'role_' ) ) {
|
310 |
-
|
311 |
-
$shortcode_roles = get_post_meta( UM()->shortcodes()->form_id, '_um_roles', true );
|
312 |
-
$um_roles = UM()->roles()->get_roles( false );
|
313 |
-
|
314 |
-
if ( ! empty( $shortcode_roles ) && is_array( $shortcode_roles ) ) {
|
315 |
-
|
316 |
-
$attrs['options'] = array();
|
317 |
-
|
318 |
-
foreach ( $um_roles as $key => $value ) {
|
319 |
-
if ( in_array( $key, $shortcode_roles ) ) {
|
320 |
-
$attrs['options'][ $key ] = $value;
|
321 |
-
}
|
322 |
-
}
|
323 |
-
|
324 |
-
}
|
325 |
-
|
326 |
-
}
|
327 |
-
|
328 |
-
return $attrs;
|
329 |
-
}
|
330 |
-
|
331 |
-
|
332 |
-
/**
|
333 |
-
* Generate a loop of results
|
334 |
-
*
|
335 |
-
* @param $args
|
336 |
-
*
|
337 |
-
* @return mixed|void
|
338 |
-
*/
|
339 |
-
function get_members( $args ) {
|
340 |
-
|
341 |
-
global $wpdb, $post;
|
342 |
-
|
343 |
-
/**
|
344 |
-
* @var $profiles_per_page
|
345 |
-
* @var $profiles_per_page_mobile
|
346 |
-
*/
|
347 |
-
extract( $args );
|
348 |
-
|
349 |
-
/**
|
350 |
-
* UM hook
|
351 |
-
*
|
352 |
-
* @type filter
|
353 |
-
* @title um_prepare_user_query_args
|
354 |
-
* @description Extend member directory query arguments
|
355 |
-
* @input_vars
|
356 |
-
* [{"var":"$query_args","type":"array","desc":"Members Query Arguments"},
|
357 |
-
* {"var":"$directory_settings","type":"array","desc":"Member Directory Settings"}]
|
358 |
-
* @change_log
|
359 |
-
* ["Since: 2.0"]
|
360 |
-
* @usage
|
361 |
-
* <?php add_filter( 'um_prepare_user_query_args', 'function_name', 10, 2 ); ?>
|
362 |
-
* @example
|
363 |
-
* <?php
|
364 |
-
* add_filter( 'um_prepare_user_query_args', 'my_prepare_user_query_args', 10, 2 );
|
365 |
-
* function my_prepare_user_query_args( $query_args, $directory_settings ) {
|
366 |
-
* // your code here
|
367 |
-
* return $query_args;
|
368 |
-
* }
|
369 |
-
* ?>
|
370 |
-
*/
|
371 |
-
$query_args = apply_filters( 'um_prepare_user_query_args', array(), $args );
|
372 |
-
|
373 |
-
// Prepare for BIG SELECT query
|
374 |
-
$wpdb->query( 'SET SQL_BIG_SELECTS=1' );
|
375 |
-
|
376 |
-
// number of profiles for mobile
|
377 |
-
if ( UM()->mobile()->isMobile() && isset( $profiles_per_page_mobile ) ) {
|
378 |
-
$profiles_per_page = $profiles_per_page_mobile;
|
379 |
-
}
|
380 |
-
|
381 |
-
$query_args['number'] = $profiles_per_page;
|
382 |
-
|
383 |
-
if ( isset( $args['number'] ) ) {
|
384 |
-
$query_args['number'] = $args['number'];
|
385 |
-
}
|
386 |
-
|
387 |
-
if ( isset( $args['page'] ) ) {
|
388 |
-
$members_page = $args['page'];
|
389 |
-
} else {
|
390 |
-
$members_page = isset( $_REQUEST['members_page'] ) ? $_REQUEST['members_page'] : 1;
|
391 |
-
}
|
392 |
-
|
393 |
-
$query_args['paged'] = $members_page;
|
394 |
-
|
395 |
-
if ( ! UM()->roles()->um_user_can( 'can_view_all' ) && is_user_logged_in() ) {
|
396 |
-
//unset( $query_args );
|
397 |
-
$query_args = array();
|
398 |
-
}
|
399 |
-
|
400 |
-
/**
|
401 |
-
* UM hook
|
402 |
-
*
|
403 |
-
* @type action
|
404 |
-
* @title um_user_before_query
|
405 |
-
* @description Action before users query on member directory
|
406 |
-
* @input_vars
|
407 |
-
* [{"var":"$query_args","type":"array","desc":"Query arguments"}]
|
408 |
-
* @change_log
|
409 |
-
* ["Since: 2.0"]
|
410 |
-
* @usage add_action( 'um_user_before_query', 'function_name', 10, 1 );
|
411 |
-
* @example
|
412 |
-
* <?php
|
413 |
-
* add_action( 'um_user_before_query', 'my_user_before_query', 10, 1 );
|
414 |
-
* function my_user_before_query( $query_args ) {
|
415 |
-
* // your code here
|
416 |
-
* }
|
417 |
-
* ?>
|
418 |
-
*/
|
419 |
-
do_action( 'um_user_before_query', $query_args );
|
420 |
-
|
421 |
-
$users = new \WP_User_Query( $query_args );
|
422 |
-
/**
|
423 |
-
* UM hook
|
424 |
-
*
|
425 |
-
* @type action
|
426 |
-
* @title um_user_after_query
|
427 |
-
* @description Action before users query on member directory
|
428 |
-
* @input_vars
|
429 |
-
* [{"var":"$query_args","type":"array","desc":"Query arguments"},
|
430 |
-
* {"var":"$users","type":"array","desc":"Users"}]
|
431 |
-
* @change_log
|
432 |
-
* ["Since: 2.0"]
|
433 |
-
* @usage add_action( 'um_user_after_query', 'function_name', 10, 2 );
|
434 |
-
* @example
|
435 |
-
* <?php
|
436 |
-
* add_action( 'um_user_after_query', 'my_user_after_query', 10, 2 );
|
437 |
-
* function my_user_after_query( $query_args, $users ) {
|
438 |
-
* // your code here
|
439 |
-
* }
|
440 |
-
* ?>
|
441 |
-
*/
|
442 |
-
do_action( 'um_user_after_query', $query_args, $users );
|
443 |
-
|
444 |
-
|
445 |
-
$array['users'] = ! empty( $users->results ) ? $users->results : array();
|
446 |
-
|
447 |
-
$array['total_users'] = ( isset( $max_users ) && $max_users && $max_users <= $users->total_users ) ? $max_users : $users->total_users;
|
448 |
-
|
449 |
-
$array['page'] = $members_page;
|
450 |
-
|
451 |
-
if ( isset( $profiles_per_page ) && $profiles_per_page > 0 ) {
|
452 |
-
$array['total_pages'] = ceil( $array['total_users'] / $profiles_per_page );
|
453 |
-
} else {
|
454 |
-
$array['total_pages'] = 1;
|
455 |
-
}
|
456 |
-
|
457 |
-
$array['header'] = $this->convert_tags( $header, $array );
|
458 |
-
$array['header_single'] = $this->convert_tags( $header_single, $array );
|
459 |
-
|
460 |
-
$array['users_per_page'] = $array['users'];
|
461 |
-
|
462 |
-
for ( $i = $array['page']; $i <= $array['page'] + 2; $i++ ) {
|
463 |
-
if ( $i <= $array['total_pages'] ) {
|
464 |
-
$pages_to_show[] = $i;
|
465 |
-
}
|
466 |
-
}
|
467 |
-
|
468 |
-
if ( isset( $pages_to_show ) && count( $pages_to_show ) < 5 ) {
|
469 |
-
$pages_needed = 5 - count( $pages_to_show );
|
470 |
-
|
471 |
-
for ( $c = $array['page']; $c >= $array['page'] - 2; $c-- ) {
|
472 |
-
if ( ! in_array( $c, $pages_to_show ) && $c > 0 ) {
|
473 |
-
$pages_to_add[] = $c;
|
474 |
-
}
|
475 |
-
}
|
476 |
-
}
|
477 |
-
|
478 |
-
if ( isset( $pages_to_add ) ) {
|
479 |
-
|
480 |
-
asort( $pages_to_add );
|
481 |
-
$pages_to_show = array_merge( (array) $pages_to_add, $pages_to_show );
|
482 |
-
|
483 |
-
if ( count( $pages_to_show ) < 5 ) {
|
484 |
-
if ( max( $pages_to_show ) - $array['page'] >= 2 ) {
|
485 |
-
$pages_to_show[] = max( $pages_to_show ) + 1;
|
486 |
-
if ( count( $pages_to_show ) < 5 ) {
|
487 |
-
$pages_to_show[] = max( $pages_to_show ) + 1;
|
488 |
-
}
|
489 |
-
} else if ( $array['page'] - min( $pages_to_show ) >= 2 ) {
|
490 |
-
$pages_to_show[] = min( $pages_to_show ) - 1;
|
491 |
-
if ( count( $pages_to_show ) < 5 ) {
|
492 |
-
$pages_to_show[] = min( $pages_to_show ) - 1;
|
493 |
-
}
|
494 |
-
}
|
495 |
-
}
|
496 |
-
|
497 |
-
asort( $pages_to_show );
|
498 |
-
|
499 |
-
$array['pages_to_show'] = $pages_to_show;
|
500 |
-
|
501 |
-
} else {
|
502 |
-
|
503 |
-
if ( isset( $pages_to_show ) && count( $pages_to_show ) < 5 ) {
|
504 |
-
if ( max( $pages_to_show ) - $array['page'] >= 2 ) {
|
505 |
-
$pages_to_show[] = max( $pages_to_show ) + 1;
|
506 |
-
if ( count( $pages_to_show ) < 5 ) {
|
507 |
-
$pages_to_show[] = max( $pages_to_show ) + 1;
|
508 |
-
}
|
509 |
-
} elseif ( $array['page'] - min( $pages_to_show ) >= 2 ) {
|
510 |
-
$pages_to_show[] = min( $pages_to_show ) - 1;
|
511 |
-
if ( count( $pages_to_show ) < 5 ) {
|
512 |
-
$pages_to_show[] = min( $pages_to_show ) - 1;
|
513 |
-
}
|
514 |
-
}
|
515 |
-
}
|
516 |
-
|
517 |
-
if ( isset( $pages_to_show ) && is_array( $pages_to_show ) ) {
|
518 |
-
|
519 |
-
asort( $pages_to_show );
|
520 |
-
|
521 |
-
$array['pages_to_show'] = $pages_to_show;
|
522 |
-
|
523 |
-
}
|
524 |
-
|
525 |
-
}
|
526 |
-
|
527 |
-
if ( isset( $array['pages_to_show'] ) ) {
|
528 |
-
|
529 |
-
if ( $array['total_pages'] < count( $array['pages_to_show'] ) ) {
|
530 |
-
foreach ( $array['pages_to_show'] as $k => $v ) {
|
531 |
-
if ( $v > $array['total_pages'] ) unset( $array['pages_to_show'][ $k ] );
|
532 |
-
}
|
533 |
-
}
|
534 |
-
|
535 |
-
foreach ( $array['pages_to_show'] as $k => $v ) {
|
536 |
-
if ( (int) $v <= 0 ) {
|
537 |
-
unset( $array['pages_to_show'][ $k ] );
|
538 |
-
}
|
539 |
-
}
|
540 |
-
|
541 |
-
}
|
542 |
-
|
543 |
-
/**
|
544 |
-
* UM hook
|
545 |
-
*
|
546 |
-
* @type filter
|
547 |
-
* @title um_prepare_user_results_array
|
548 |
-
* @description Extend member directory query result
|
549 |
-
* @input_vars
|
550 |
-
* [{"var":"$result","type":"array","desc":"Members Query Result"}]
|
551 |
-
* @change_log
|
552 |
-
* ["Since: 2.0"]
|
553 |
-
* @usage
|
554 |
-
* <?php add_filter( 'um_prepare_user_results_array', 'function_name', 10, 1 ); ?>
|
555 |
-
* @example
|
556 |
-
* <?php
|
557 |
-
* add_filter( 'um_prepare_user_results_array', 'my_prepare_user_results', 10, 1 );
|
558 |
-
* function my_prepare_user_results( $result ) {
|
559 |
-
* // your code here
|
560 |
-
* return $result;
|
561 |
-
* }
|
562 |
-
* ?>
|
563 |
-
*/
|
564 |
-
return apply_filters( 'um_prepare_user_results_array', $array );
|
565 |
-
}
|
566 |
-
|
567 |
-
|
568 |
-
/**
|
569 |
-
* Optimizes Member directory with multiple LEFT JOINs
|
570 |
-
* @param object $vars
|
571 |
-
* @return object $var
|
572 |
-
*/
|
573 |
-
public function um_optimize_member_query( $vars ) {
|
574 |
-
|
575 |
-
global $wpdb;
|
576 |
-
|
577 |
-
$arr_where = explode("\n", $vars->query_where );
|
578 |
-
$arr_left_join = explode("LEFT JOIN", $vars->query_from );
|
579 |
-
$arr_user_photo_key = array( 'synced_profile_photo', 'profile_photo', 'synced_gravatar_hashed_id' );
|
580 |
-
|
581 |
-
foreach ( $arr_where as $where ) {
|
582 |
-
|
583 |
-
foreach ( $arr_user_photo_key as $key ) {
|
584 |
-
|
585 |
-
if ( strpos( $where, "'" . $key . "'" ) > -1 ) {
|
586 |
-
|
587 |
-
// find usermeta key
|
588 |
-
preg_match("#mt[0-9]+.#", $where, $meta_key );
|
589 |
-
|
590 |
-
// remove period from found meta_key
|
591 |
-
$meta_key = str_replace(".","", current( $meta_key ) );
|
592 |
-
|
593 |
-
// remove matched LEFT JOIN clause
|
594 |
-
$vars->query_from = str_replace('LEFT JOIN wp_usermeta AS '.$meta_key.' ON ( wp_users.ID = '.$meta_key.'.user_id )', '', $vars->query_from );
|
595 |
-
|
596 |
-
// prepare EXISTS replacement for LEFT JOIN clauses
|
597 |
-
$where_exists = 'um_exist EXISTS( SELECT '.$wpdb->usermeta.'.umeta_id FROM '.$wpdb->usermeta.' WHERE '.$wpdb->usermeta.'.user_id = '.$wpdb->users.'.ID AND '.$wpdb->usermeta.'.meta_key IN("'.implode('","', $arr_user_photo_key ).'") AND '.$wpdb->usermeta.'.meta_value != "" )';
|
598 |
-
|
599 |
-
// Replace LEFT JOIN clauses with EXISTS and remove duplicates
|
600 |
-
if ( strpos( $vars->query_where, 'um_exist' ) === FALSE ) {
|
601 |
-
$vars->query_where = str_replace( $where , $where_exists, $vars->query_where );
|
602 |
-
} else {
|
603 |
-
$vars->query_where = str_replace( $where , '1=0', $vars->query_where );
|
604 |
-
}
|
605 |
-
}
|
606 |
-
|
607 |
-
}
|
608 |
-
|
609 |
-
}
|
610 |
-
|
611 |
-
$vars->query_where = str_replace( "\n", "", $vars->query_where );
|
612 |
-
$vars->query_where = str_replace( "um_exist", "", $vars->query_where );
|
613 |
-
|
614 |
-
return $vars;
|
615 |
-
|
616 |
-
}
|
617 |
-
|
618 |
-
|
619 |
-
}
|
620 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/core/class-plugin-updater.php
CHANGED
@@ -1,9 +1,10 @@
|
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
-
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
|
|
7 |
if ( ! class_exists( 'um\core\Plugin_Updater' ) ) {
|
8 |
|
9 |
|
@@ -139,6 +140,10 @@ if ( ! class_exists( 'um\core\Plugin_Updater' ) ) {
|
|
139 |
'key' => 'filesharing',
|
140 |
'title' => 'File Sharing',
|
141 |
),
|
|
|
|
|
|
|
|
|
142 |
);
|
143 |
|
144 |
$active_um_plugins = array();
|
@@ -153,6 +158,9 @@ if ( ! class_exists( 'um\core\Plugin_Updater' ) ) {
|
|
153 |
switch_to_blog( $site->blog_id );
|
154 |
|
155 |
$the_plugs = get_option( 'active_plugins' );
|
|
|
|
|
|
|
156 |
$the_plugs = array_merge( $the_plugs, $sitewide_plugins );
|
157 |
|
158 |
foreach ( $the_plugs as $key => $value ) {
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
+
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
7 |
+
|
8 |
if ( ! class_exists( 'um\core\Plugin_Updater' ) ) {
|
9 |
|
10 |
|
140 |
'key' => 'filesharing',
|
141 |
'title' => 'File Sharing',
|
142 |
),
|
143 |
+
'um-user-location/um-user-location.php' => array(
|
144 |
+
'key' => 'user-location',
|
145 |
+
'title' => 'User Location',
|
146 |
+
),
|
147 |
);
|
148 |
|
149 |
$active_um_plugins = array();
|
158 |
switch_to_blog( $site->blog_id );
|
159 |
|
160 |
$the_plugs = get_option( 'active_plugins' );
|
161 |
+
if ( ! $the_plugs ) {
|
162 |
+
$the_plugs = array();
|
163 |
+
}
|
164 |
$the_plugs = array_merge( $the_plugs, $sitewide_plugins );
|
165 |
|
166 |
foreach ( $the_plugs as $key => $value ) {
|
includes/core/class-profile.php
CHANGED
@@ -394,7 +394,7 @@ if ( ! class_exists( 'um\core\Profile' ) ) {
|
|
394 |
$icon = ! empty( $data['icon'] ) ? '<i class="' . $data['icon'] . '"></i>' : '';
|
395 |
}
|
396 |
|
397 |
-
$items[] = '<span>' . $icon . $value . '</span>';
|
398 |
$items[] = '<span class="b">•</span>';
|
399 |
}
|
400 |
}
|
@@ -418,11 +418,16 @@ if ( ! class_exists( 'um\core\Profile' ) ) {
|
|
418 |
* @param string $element
|
419 |
* @param string $trigger
|
420 |
* @param array $items
|
|
|
421 |
*/
|
422 |
-
function new_ui( $position, $element, $trigger, $items ) {
|
423 |
-
?>
|
424 |
|
425 |
-
|
|
|
|
|
|
|
|
|
|
|
426 |
<div class="um-dropdown-b">
|
427 |
<div class="um-dropdown-arr"><i class=""></i></div>
|
428 |
<ul>
|
394 |
$icon = ! empty( $data['icon'] ) ? '<i class="' . $data['icon'] . '"></i>' : '';
|
395 |
}
|
396 |
|
397 |
+
$items[] = apply_filters( 'um_show_meta_item_html', '<span>' . $icon . $value . '</span>', $key );
|
398 |
$items[] = '<span class="b">•</span>';
|
399 |
}
|
400 |
}
|
418 |
* @param string $element
|
419 |
* @param string $trigger
|
420 |
* @param array $items
|
421 |
+
* @param array $args
|
422 |
*/
|
423 |
+
function new_ui( $position, $element, $trigger, $items, $args = array() ) {
|
|
|
424 |
|
425 |
+
$additional_data = '';
|
426 |
+
foreach ( $args as $key => $value ) {
|
427 |
+
$additional_data .= " data-{$key}=\"{$value}\"";
|
428 |
+
} ?>
|
429 |
+
|
430 |
+
<div class="um-dropdown" data-element="<?php echo esc_attr( $element ); ?>" data-position="<?php echo esc_attr( $position ); ?>" data-trigger="<?php echo esc_attr( $trigger ); ?>"<?php echo $additional_data ?>>
|
431 |
<div class="um-dropdown-b">
|
432 |
<div class="um-dropdown-arr"><i class=""></i></div>
|
433 |
<ul>
|
includes/core/class-register.php
CHANGED
@@ -1,9 +1,10 @@
|
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
-
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
|
|
7 |
if ( ! class_exists( 'um\core\Register' ) ) {
|
8 |
|
9 |
|
@@ -18,8 +19,8 @@ if ( ! class_exists( 'um\core\Register' ) ) {
|
|
18 |
* Register constructor.
|
19 |
*/
|
20 |
function __construct() {
|
21 |
-
add_action(
|
22 |
-
add_action(
|
23 |
}
|
24 |
|
25 |
|
@@ -60,14 +61,14 @@ if ( ! class_exists( 'um\core\Register' ) ) {
|
|
60 |
* }
|
61 |
* ?>
|
62 |
*/
|
63 |
-
$allow_nonce_verification = apply_filters(
|
64 |
|
65 |
-
if( ! $allow_nonce_verification ){
|
66 |
return $args;
|
67 |
}
|
68 |
|
69 |
if ( ! wp_verify_nonce( $args['_wpnonce'], 'um_register_form' ) || empty( $args['_wpnonce'] ) || ! isset( $args['_wpnonce'] ) ) {
|
70 |
-
wp_die('Invalid Nonce.');
|
71 |
}
|
72 |
|
73 |
return $args;
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
+
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
7 |
+
|
8 |
if ( ! class_exists( 'um\core\Register' ) ) {
|
9 |
|
10 |
|
19 |
* Register constructor.
|
20 |
*/
|
21 |
function __construct() {
|
22 |
+
add_action( 'um_after_register_fields', array( $this, 'add_nonce' ) );
|
23 |
+
add_action( 'um_submit_form_register', array( $this, 'verify_nonce' ), 1, 1 );
|
24 |
}
|
25 |
|
26 |
|
61 |
* }
|
62 |
* ?>
|
63 |
*/
|
64 |
+
$allow_nonce_verification = apply_filters( 'um_register_allow_nonce_verification', true );
|
65 |
|
66 |
+
if ( ! $allow_nonce_verification ) {
|
67 |
return $args;
|
68 |
}
|
69 |
|
70 |
if ( ! wp_verify_nonce( $args['_wpnonce'], 'um_register_form' ) || empty( $args['_wpnonce'] ) || ! isset( $args['_wpnonce'] ) ) {
|
71 |
+
wp_die( __( 'Invalid Nonce.', 'ultimate-member' ) );
|
72 |
}
|
73 |
|
74 |
return $args;
|
includes/core/class-rewrite.php
CHANGED
@@ -18,14 +18,37 @@ if ( ! class_exists( 'um\core\Rewrite' ) ) {
|
|
18 |
* Rewrite constructor.
|
19 |
*/
|
20 |
function __construct() {
|
|
|
|
|
|
|
|
|
21 |
//add rewrite rules
|
22 |
-
add_filter( 'query_vars', array(&$this, 'query_vars'), 10, 1 );
|
23 |
add_filter( 'rewrite_rules_array', array( &$this, '_add_rewrite_rules' ), 10, 1 );
|
24 |
-
|
|
|
|
|
|
|
25 |
|
26 |
|
27 |
-
|
28 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
}
|
30 |
|
31 |
|
@@ -144,43 +167,6 @@ if ( ! class_exists( 'um\core\Rewrite' ) ) {
|
|
144 |
}
|
145 |
|
146 |
|
147 |
-
/**
|
148 |
-
* Setup rewrite rules
|
149 |
-
*/
|
150 |
-
function rewrite_rules() {
|
151 |
-
|
152 |
-
if ( isset( UM()->config()->permalinks['user'] ) && isset( UM()->config()->permalinks['account'] ) ) {
|
153 |
-
|
154 |
-
/**
|
155 |
-
* UM hook
|
156 |
-
*
|
157 |
-
* @type filter
|
158 |
-
* @title um_rewrite_flush_rewrite_rules
|
159 |
-
* @description Enable flushing rewrite rules
|
160 |
-
* @input_vars
|
161 |
-
* [{"var":"$stop_flush","type":"bool","desc":"Stop flushing rewrite rules"}]
|
162 |
-
* @change_log
|
163 |
-
* ["Since: 2.0"]
|
164 |
-
* @usage
|
165 |
-
* <?php add_filter( 'um_rewrite_flush_rewrite_rules', 'function_name', 10, 1 ); ?>
|
166 |
-
* @example
|
167 |
-
* <?php
|
168 |
-
* add_filter( 'um_rewrite_flush_rewrite_rules', 'my_rewrite_flush_rewrite_rules', 10, 1 );
|
169 |
-
* function my_rewrite_flush_rewrite_rules( $stop_flush ) {
|
170 |
-
* // your code here
|
171 |
-
* return $stop_flush;
|
172 |
-
* }
|
173 |
-
* ?>
|
174 |
-
*/
|
175 |
-
if ( ! apply_filters( 'um_rewrite_flush_rewrite_rules', UM()->options()->get( 'um_flush_stop' ) ) ) {
|
176 |
-
flush_rewrite_rules( true );
|
177 |
-
}
|
178 |
-
|
179 |
-
}
|
180 |
-
|
181 |
-
}
|
182 |
-
|
183 |
-
|
184 |
/**
|
185 |
* Author page to user profile redirect
|
186 |
*/
|
18 |
* Rewrite constructor.
|
19 |
*/
|
20 |
function __construct() {
|
21 |
+
if ( ! defined( 'DOING_AJAX' ) ) {
|
22 |
+
add_filter( 'wp_loaded', array( $this, 'maybe_flush_rewrite_rules' ) );
|
23 |
+
}
|
24 |
+
|
25 |
//add rewrite rules
|
26 |
+
add_filter( 'query_vars', array( &$this, 'query_vars' ), 10, 1 );
|
27 |
add_filter( 'rewrite_rules_array', array( &$this, '_add_rewrite_rules' ), 10, 1 );
|
28 |
+
|
29 |
+
add_action( 'template_redirect', array( &$this, 'redirect_author_page' ), 9999 );
|
30 |
+
add_action( 'template_redirect', array( &$this, 'locate_user_profile' ), 9999 );
|
31 |
+
}
|
32 |
|
33 |
|
34 |
+
/**
|
35 |
+
* Update "flush" option for reset rules on wp_loaded hook
|
36 |
+
*/
|
37 |
+
function reset_rules() {
|
38 |
+
update_option( 'um_flush_rewrite_rules', 1 );
|
39 |
+
}
|
40 |
+
|
41 |
+
|
42 |
+
/**
|
43 |
+
* Reset Rewrite rules if need it.
|
44 |
+
*
|
45 |
+
* @return void
|
46 |
+
*/
|
47 |
+
function maybe_flush_rewrite_rules() {
|
48 |
+
if ( get_option( 'um_flush_rewrite_rules' ) ) {
|
49 |
+
flush_rewrite_rules( false );
|
50 |
+
delete_option( 'um_flush_rewrite_rules' );
|
51 |
+
}
|
52 |
}
|
53 |
|
54 |
|
167 |
}
|
168 |
|
169 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
170 |
/**
|
171 |
* Author page to user profile redirect
|
172 |
*/
|
includes/core/class-setup.php
CHANGED
@@ -1,14 +1,16 @@
|
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
-
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
|
|
7 |
if ( ! class_exists( 'um\core\Setup' ) ) {
|
8 |
|
9 |
|
10 |
/**
|
11 |
* Class Setup
|
|
|
12 |
* @package um\core
|
13 |
*/
|
14 |
class Setup {
|
@@ -18,7 +20,6 @@ if ( ! class_exists( 'um\core\Setup' ) ) {
|
|
18 |
* Setup constructor.
|
19 |
*/
|
20 |
function __construct() {
|
21 |
-
//add_action('init', array(&$this, 'install_basics'), 9);
|
22 |
}
|
23 |
|
24 |
|
@@ -28,7 +29,6 @@ if ( ! class_exists( 'um\core\Setup' ) ) {
|
|
28 |
function run_setup() {
|
29 |
$this->install_basics();
|
30 |
$this->install_default_forms();
|
31 |
-
//$this->install_default_pages();
|
32 |
$this->set_default_settings();
|
33 |
$this->set_default_role_meta();
|
34 |
}
|
@@ -184,6 +184,8 @@ if ( ! class_exists( 'um\core\Setup' ) ) {
|
|
184 |
$content = '[ultimatemember form_id="' . $setup_shortcodes[ $slug ] . '"]';
|
185 |
}
|
186 |
|
|
|
|
|
187 |
$user_page = array(
|
188 |
'post_title' => $array['title'],
|
189 |
'post_content' => $content,
|
@@ -208,6 +210,9 @@ if ( ! class_exists( 'um\core\Setup' ) ) {
|
|
208 |
}
|
209 |
|
210 |
update_option( 'um_options', $options );
|
|
|
|
|
|
|
211 |
}
|
212 |
|
213 |
|
@@ -215,13 +220,13 @@ if ( ! class_exists( 'um\core\Setup' ) ) {
|
|
215 |
* Set default UM settings
|
216 |
*/
|
217 |
function set_default_settings() {
|
218 |
-
$options = get_option( 'um_options' );
|
219 |
-
$options = empty( $options ) ? array() : $options;
|
220 |
|
221 |
foreach ( UM()->config()->settings_defaults as $key => $value ) {
|
222 |
//set new options to default
|
223 |
-
if ( ! isset( $options[ $key ] ) )
|
224 |
$options[ $key ] = $value;
|
|
|
225 |
}
|
226 |
|
227 |
update_option( 'um_options', $options );
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
+
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
7 |
+
|
8 |
if ( ! class_exists( 'um\core\Setup' ) ) {
|
9 |
|
10 |
|
11 |
/**
|
12 |
* Class Setup
|
13 |
+
*
|
14 |
* @package um\core
|
15 |
*/
|
16 |
class Setup {
|
20 |
* Setup constructor.
|
21 |
*/
|
22 |
function __construct() {
|
|
|
23 |
}
|
24 |
|
25 |
|
29 |
function run_setup() {
|
30 |
$this->install_basics();
|
31 |
$this->install_default_forms();
|
|
|
32 |
$this->set_default_settings();
|
33 |
$this->set_default_role_meta();
|
34 |
}
|
184 |
$content = '[ultimatemember form_id="' . $setup_shortcodes[ $slug ] . '"]';
|
185 |
}
|
186 |
|
187 |
+
$content = apply_filters( 'um_setup_predefined_page_content', $content, $slug );
|
188 |
+
|
189 |
$user_page = array(
|
190 |
'post_title' => $array['title'],
|
191 |
'post_content' => $content,
|
210 |
}
|
211 |
|
212 |
update_option( 'um_options', $options );
|
213 |
+
|
214 |
+
// reset rewrite rules after first install of core pages
|
215 |
+
UM()->rewrite()->reset_rules();
|
216 |
}
|
217 |
|
218 |
|
220 |
* Set default UM settings
|
221 |
*/
|
222 |
function set_default_settings() {
|
223 |
+
$options = get_option( 'um_options', array() );
|
|
|
224 |
|
225 |
foreach ( UM()->config()->settings_defaults as $key => $value ) {
|
226 |
//set new options to default
|
227 |
+
if ( ! isset( $options[ $key ] ) ) {
|
228 |
$options[ $key ] = $value;
|
229 |
+
}
|
230 |
}
|
231 |
|
232 |
update_option( 'um_options', $options );
|
includes/core/class-shortcodes.php
CHANGED
@@ -361,15 +361,12 @@ if ( ! class_exists( 'um\core\Shortcodes' ) ) {
|
|
361 |
|
362 |
$args = wp_parse_args( $args, $defaults );
|
363 |
|
364 |
-
|
365 |
-
|
366 |
if ( ! is_user_logged_in() ) {
|
367 |
if ( $args['show_lock'] == 'no' ) {
|
368 |
echo '';
|
369 |
} else {
|
370 |
$args['lock_text'] = $this->convert_locker_tags( $args['lock_text'] );
|
371 |
-
|
372 |
-
$this->load_template( 'login-to-view' );
|
373 |
}
|
374 |
} else {
|
375 |
echo do_shortcode( $this->convert_locker_tags( wpautop( $content ) ) );
|
@@ -388,7 +385,7 @@ if ( ! class_exists( 'um\core\Shortcodes' ) ) {
|
|
388 |
*
|
389 |
* @return string
|
390 |
*/
|
391 |
-
function um_loggedout($args = array(), $content =
|
392 |
ob_start();
|
393 |
|
394 |
// Hide for logged in users
|
@@ -542,21 +539,22 @@ if ( ! class_exists( 'um\core\Shortcodes' ) ) {
|
|
542 |
*/
|
543 |
function load( $args ) {
|
544 |
$defaults = array();
|
545 |
-
$args = wp_parse_args($args, $defaults);
|
546 |
|
547 |
// when to not continue
|
548 |
-
$this->form_id =
|
549 |
-
if (
|
550 |
return;
|
551 |
}
|
552 |
|
553 |
-
$this->form_status = get_post_status($this->form_id);
|
554 |
-
if ($this->form_status != 'publish') {
|
555 |
return;
|
556 |
}
|
557 |
|
558 |
// get data into one global array
|
559 |
$post_data = UM()->query()->post_data( $this->form_id );
|
|
|
560 |
|
561 |
ob_start();
|
562 |
|
@@ -581,7 +579,7 @@ if ( ! class_exists( 'um\core\Shortcodes' ) ) {
|
|
581 |
* }
|
582 |
* ?>
|
583 |
*/
|
584 |
-
$args = apply_filters( 'um_pre_args_setup', $
|
585 |
|
586 |
if ( ! isset( $args['template'] ) ) {
|
587 |
$args['template'] = '';
|
@@ -1160,14 +1158,56 @@ if ( ! class_exists( 'um\core\Shortcodes' ) ) {
|
|
1160 |
* @return string
|
1161 |
*/
|
1162 |
public function ultimatemember_searchform( $args = array(), $content = "" ) {
|
1163 |
-
|
1164 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1165 |
|
1166 |
-
|
1167 |
-
$this->load_template( 'searchform' );
|
1168 |
|
1169 |
-
|
1170 |
-
$template = ob_get_clean();
|
1171 |
|
1172 |
return $template;
|
1173 |
}
|
361 |
|
362 |
$args = wp_parse_args( $args, $defaults );
|
363 |
|
|
|
|
|
364 |
if ( ! is_user_logged_in() ) {
|
365 |
if ( $args['show_lock'] == 'no' ) {
|
366 |
echo '';
|
367 |
} else {
|
368 |
$args['lock_text'] = $this->convert_locker_tags( $args['lock_text'] );
|
369 |
+
UM()->get_template( 'login-to-view.php', '', $args, true );
|
|
|
370 |
}
|
371 |
} else {
|
372 |
echo do_shortcode( $this->convert_locker_tags( wpautop( $content ) ) );
|
385 |
*
|
386 |
* @return string
|
387 |
*/
|
388 |
+
function um_loggedout( $args = array(), $content = '' ) {
|
389 |
ob_start();
|
390 |
|
391 |
// Hide for logged in users
|
539 |
*/
|
540 |
function load( $args ) {
|
541 |
$defaults = array();
|
542 |
+
$args = wp_parse_args( $args, $defaults );
|
543 |
|
544 |
// when to not continue
|
545 |
+
$this->form_id = isset( $args['form_id'] ) ? $args['form_id'] : null;
|
546 |
+
if ( ! $this->form_id ) {
|
547 |
return;
|
548 |
}
|
549 |
|
550 |
+
$this->form_status = get_post_status( $this->form_id );
|
551 |
+
if ( $this->form_status != 'publish' ) {
|
552 |
return;
|
553 |
}
|
554 |
|
555 |
// get data into one global array
|
556 |
$post_data = UM()->query()->post_data( $this->form_id );
|
557 |
+
$args = array_merge( $args, $post_data );
|
558 |
|
559 |
ob_start();
|
560 |
|
579 |
* }
|
580 |
* ?>
|
581 |
*/
|
582 |
+
$args = apply_filters( 'um_pre_args_setup', $args );
|
583 |
|
584 |
if ( ! isset( $args['template'] ) ) {
|
585 |
$args['template'] = '';
|
1158 |
* @return string
|
1159 |
*/
|
1160 |
public function ultimatemember_searchform( $args = array(), $content = "" ) {
|
1161 |
+
if ( ! UM()->options()->get( 'members_page' ) ) {
|
1162 |
+
return '';
|
1163 |
+
}
|
1164 |
+
|
1165 |
+
$member_directory_ids = array();
|
1166 |
+
|
1167 |
+
$page_id = UM()->config()->permalinks['members'];
|
1168 |
+
if ( ! empty( $page_id ) ) {
|
1169 |
+
$members_page = get_post( $page_id );
|
1170 |
+
if ( ! empty( $members_page ) && ! is_wp_error( $members_page ) ) {
|
1171 |
+
if ( ! empty( $members_page->post_content ) ) {
|
1172 |
+
preg_match_all( '/\[ultimatemember[^\]]*?form_id\=[\'"]*?(\d+)[\'"]*?/i', $members_page->post_content, $matches );
|
1173 |
+
if ( ! empty( $matches[1] ) && is_array( $matches[1] ) ) {
|
1174 |
+
$member_directory_ids = array_map( 'absint', $matches[1] );
|
1175 |
+
}
|
1176 |
+
}
|
1177 |
+
}
|
1178 |
+
}
|
1179 |
+
|
1180 |
+
if ( empty( $member_directory_ids ) ) {
|
1181 |
+
return '';
|
1182 |
+
}
|
1183 |
+
|
1184 |
+
//current user priority role
|
1185 |
+
$priority_user_role = false;
|
1186 |
+
if ( is_user_logged_in() ) {
|
1187 |
+
$priority_user_role = UM()->roles()->get_priority_user_role( get_current_user_id() );
|
1188 |
+
}
|
1189 |
+
|
1190 |
+
$query = array();
|
1191 |
+
foreach ( $member_directory_ids as $directory_id ) {
|
1192 |
+
$directory_data = UM()->query()->post_data( $directory_id );
|
1193 |
+
|
1194 |
+
$show_search = empty( $directory_data['roles_can_search'] ) || ( ! empty( $priority_user_role ) && in_array( $priority_user_role, $directory_data['roles_can_search'] ) );
|
1195 |
+
if ( empty( $directory_data['search'] ) || ! $show_search ) {
|
1196 |
+
continue;
|
1197 |
+
}
|
1198 |
+
|
1199 |
+
$hash = UM()->member_directory()->get_directory_hash( $directory_id );
|
1200 |
+
|
1201 |
+
$query[ 'search_' . $hash ] = ! empty( $_GET[ 'search_' . $hash ] ) ? $_GET[ 'search_' . $hash ] : '';
|
1202 |
+
}
|
1203 |
+
|
1204 |
+
if ( empty( $query ) ) {
|
1205 |
+
return '';
|
1206 |
+
}
|
1207 |
|
1208 |
+
$search_value = array_values( $query );
|
|
|
1209 |
|
1210 |
+
$template = UM()->get_template( 'searchform.php', '', array( 'query' => $query, 'search_value' => $search_value[0], 'members_page' => um_get_core_page( 'members' ) ) );
|
|
|
1211 |
|
1212 |
return $template;
|
1213 |
}
|
includes/core/class-uploader.php
CHANGED
@@ -98,20 +98,20 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
98 |
* Uploader constructor.
|
99 |
*/
|
100 |
function __construct() {
|
101 |
-
$this->core_upload_dir = DIRECTORY_SEPARATOR .
|
102 |
-
$this->core_upload_url =
|
103 |
$this->upload_image_type = 'stream_photo';
|
104 |
$this->wp_upload_dir = wp_upload_dir();
|
105 |
-
$this->temp_upload_dir =
|
106 |
|
107 |
-
add_filter(
|
108 |
-
add_filter(
|
109 |
-
add_filter( "um_upload_image_process__profile_photo", array( $this, "profile_photo" ), 10, 6 );
|
110 |
-
add_filter( "um_upload_image_process__cover_photo", array( $this, "cover_photo" ), 10, 6 );
|
111 |
-
add_filter( "um_upload_stream_image_process", array( $this, "stream_photo" ), 10, 6 );
|
112 |
-
add_filter( "um_custom_image_handle_wall_img_upload", array( $this, "stream_photo_data"), 10, 1 );
|
113 |
|
114 |
-
|
|
|
|
|
|
|
|
|
115 |
}
|
116 |
|
117 |
|
@@ -286,7 +286,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
286 |
|
287 |
|
288 |
/**
|
289 |
-
*
|
290 |
*
|
291 |
* @param array $uploadedfile
|
292 |
* @param int|null $user_id
|
@@ -296,6 +296,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
296 |
* @since 2.0.22
|
297 |
*
|
298 |
* @return array
|
|
|
299 |
*/
|
300 |
public function upload_image( $uploadedfile, $user_id = null, $field_key = '', $upload_type = 'stream_photo' ) {
|
301 |
$response = array();
|
@@ -305,7 +306,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
305 |
}
|
306 |
|
307 |
if ( empty( $field_key ) ) {
|
308 |
-
$field_key =
|
309 |
}
|
310 |
|
311 |
$this->field_key = $field_key;
|
@@ -318,16 +319,16 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
318 |
$this->user_id = $user_id;
|
319 |
}
|
320 |
|
321 |
-
if ( in_array( $field_key, array( 'profile_photo','cover_photo' ) ) ) {
|
322 |
$this->upload_image_type = $field_key;
|
323 |
}
|
324 |
|
325 |
$field_data = UM()->fields()->get_field( $field_key );
|
326 |
|
327 |
-
if (
|
328 |
-
$field_allowed_file_types = explode(
|
329 |
} else {
|
330 |
-
$field_allowed_file_types = apply_filters(
|
331 |
}
|
332 |
|
333 |
$allowed_image_mimes = array();
|
@@ -337,12 +338,10 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
337 |
$allowed_image_mimes[ $atype['ext'] ] = $atype['type'];
|
338 |
}
|
339 |
|
340 |
-
$image_compression = UM()->options()->get( 'image_compression' );
|
341 |
-
|
342 |
$upload_overrides = array(
|
343 |
-
'test_form'
|
344 |
-
'mimes'
|
345 |
-
'unique_filename_callback'
|
346 |
);
|
347 |
|
348 |
$upload_overrides = apply_filters( "um_image_upload_handler_overrides__{$field_key}", $upload_overrides );
|
@@ -456,10 +455,6 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
456 |
*/
|
457 |
do_action( "um_after_upload_db_meta_{$field_key}", $this->user_id );
|
458 |
|
459 |
-
if ( 'stream_photo' !== $this->upload_image_type ) {
|
460 |
-
update_user_meta( $this->user_id, $field_key, wp_basename( $movefile['url'] ) );
|
461 |
-
}
|
462 |
-
|
463 |
$filename = wp_basename( $movefile['url'] );
|
464 |
|
465 |
$transient = set_transient( "um_{$filename}", $movefile['file_info'], 2 * HOUR_IN_SECONDS );
|
@@ -515,9 +510,9 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
515 |
}
|
516 |
|
517 |
$upload_overrides = array(
|
518 |
-
'test_form'
|
519 |
-
'mimes'
|
520 |
-
'unique_filename_callback'
|
521 |
);
|
522 |
|
523 |
$upload_overrides = apply_filters( "um_file_upload_handler_overrides__{$field_key}", $upload_overrides );
|
@@ -874,6 +869,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
874 |
|
875 |
/**
|
876 |
* Make unique filename
|
|
|
877 |
* @param string $dir
|
878 |
* @param string $filename
|
879 |
* @param string $ext
|
@@ -886,8 +882,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
886 |
if ( empty( $ext ) ) {
|
887 |
$image_type = wp_check_filetype( $filename );
|
888 |
$ext = strtolower( trim( $image_type['ext'], ' \/.' ) );
|
889 |
-
}
|
890 |
-
else {
|
891 |
$ext = strtolower( trim( $ext, ' \/.' ) );
|
892 |
}
|
893 |
|
@@ -896,25 +891,23 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
896 |
switch ( $this->upload_image_type ) {
|
897 |
|
898 |
case 'stream_photo':
|
899 |
-
$hashed = hash('ripemd160', time(). mt_rand(10,1000) );
|
900 |
$filename = "stream_photo_{$hashed}.{$ext}";
|
901 |
-
|
902 |
|
903 |
case 'profile_photo':
|
904 |
-
$filename = "profile_photo.{$ext}";
|
905 |
-
break;
|
906 |
-
|
907 |
case 'cover_photo':
|
908 |
-
$filename = "
|
909 |
-
|
910 |
|
911 |
}
|
|
|
912 |
} elseif ( 'file' == $this->upload_type ) {
|
913 |
-
$hashed = hash('ripemd160', time(). mt_rand(10,1000) );
|
914 |
$filename = "file_{$hashed}.{$ext}";
|
915 |
}
|
916 |
|
917 |
-
$this->delete_existing_file( $filename, $ext, $dir
|
918 |
|
919 |
return $filename;
|
920 |
}
|
@@ -929,28 +922,38 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
929 |
* @since 2.0.22
|
930 |
*/
|
931 |
public function delete_existing_file( $filename, $ext = '', $dir = '' ) {
|
932 |
-
if( file_exists( $this->upload_user_basedir . DIRECTORY_SEPARATOR . $filename ) && ! empty( $filename ) ) {
|
933 |
-
unlink( $this->upload_user_basedir . DIRECTORY_SEPARATOR . $filename
|
934 |
}
|
935 |
}
|
936 |
|
937 |
|
938 |
/**
|
939 |
* Profile photo image process
|
|
|
|
|
|
|
940 |
* @param string $src
|
|
|
941 |
* @param integer $user_id
|
942 |
* @param string $coord
|
943 |
* @param array $crop
|
944 |
*
|
945 |
* @since 2.0.22
|
|
|
|
|
946 |
*/
|
947 |
-
public function profile_photo( $image_path, $src, $key, $user_id, $coord, $crop ) {
|
948 |
$sizes = UM()->options()->get( 'photo_thumb_sizes' );
|
949 |
|
950 |
$quality = UM()->options()->get( 'image_compression' );
|
951 |
|
952 |
$image = wp_get_image_editor( $image_path ); // Return an implementation that extends WP_Image_Editor
|
953 |
|
|
|
|
|
|
|
|
|
954 |
if ( ! is_wp_error( $image ) ) {
|
955 |
$src_x = $crop[0];
|
956 |
$src_y = $crop[1];
|
@@ -959,7 +962,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
959 |
|
960 |
$image->crop( $src_x, $src_y, $src_w, $src_h );
|
961 |
|
962 |
-
$max_w = UM()->options()->get('image_max_width');
|
963 |
if ( $src_w > $max_w ) {
|
964 |
$image->resize( $max_w, $src_h );
|
965 |
}
|
@@ -970,30 +973,46 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
970 |
|
971 |
$sizes_array = array();
|
972 |
|
973 |
-
foreach( $sizes as $size ){
|
974 |
-
$sizes_array[
|
975 |
}
|
976 |
|
977 |
$image->multi_resize( $sizes_array );
|
978 |
|
979 |
delete_user_meta( $user_id, 'synced_profile_photo' );
|
980 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
981 |
} else {
|
982 |
wp_send_json_error( esc_js( __( "Unable to crop image file: {$src}", 'ultimate-member' ) ) );
|
983 |
}
|
|
|
|
|
984 |
}
|
985 |
|
986 |
|
987 |
/**
|
988 |
* Cover photo image process
|
|
|
989 |
* @param string $src
|
990 |
* @param integer $user_id
|
991 |
* @param string $coord
|
992 |
* @param array $crop
|
|
|
993 |
*
|
994 |
* @since 2.0.22
|
|
|
|
|
995 |
*/
|
996 |
-
public function cover_photo( $image_path, $src, $key, $user_id, $coord, $crop ){
|
997 |
|
998 |
$sizes = UM()->options()->get( 'cover_thumb_sizes' );
|
999 |
|
@@ -1001,6 +1020,11 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
1001 |
|
1002 |
$image = wp_get_image_editor( $image_path ); // Return an implementation that extends WP_Image_Editor
|
1003 |
|
|
|
|
|
|
|
|
|
|
|
1004 |
if ( ! is_wp_error( $image ) ) {
|
1005 |
|
1006 |
$src_x = $crop[0];
|
@@ -1010,7 +1034,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
1010 |
|
1011 |
$image->crop( $src_x, $src_y, $src_w, $src_h );
|
1012 |
|
1013 |
-
$max_w = UM()->options()->get('image_max_width');
|
1014 |
if ( $src_w > $max_w ) {
|
1015 |
$image->resize( $max_w, $src_h );
|
1016 |
}
|
@@ -1021,36 +1045,53 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
1021 |
|
1022 |
$sizes_array = array();
|
1023 |
|
1024 |
-
foreach( $sizes as $size ){
|
1025 |
-
$sizes_array[
|
1026 |
}
|
1027 |
|
1028 |
$resize = $image->multi_resize( $sizes_array );
|
1029 |
|
1030 |
// change filenames of resized images
|
1031 |
-
foreach( $resize as $row ){
|
1032 |
-
$new_filename = str_replace( "x{$row['height']}" ,
|
1033 |
-
$old_filename = $row[
|
1034 |
|
1035 |
rename( dirname( $image_path ) . DIRECTORY_SEPARATOR . $old_filename, dirname( $image_path ) . DIRECTORY_SEPARATOR . $new_filename );
|
1036 |
}
|
1037 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1038 |
} else {
|
1039 |
wp_send_json_error( esc_js( __( "Unable to crop image file: {$src}", 'ultimate-member' ) ) );
|
1040 |
}
|
|
|
|
|
1041 |
}
|
1042 |
|
1043 |
|
1044 |
/**
|
1045 |
* Stream photo image process
|
|
|
|
|
|
|
1046 |
* @param string $src
|
1047 |
* @param integer $user_id
|
1048 |
* @param string $coord
|
1049 |
* @param array $crop
|
1050 |
*
|
1051 |
* @since 2.0.22
|
|
|
|
|
1052 |
*/
|
1053 |
-
public function stream_photo( $image_path, $src, $key, $user_id, $coord, $crop ){
|
1054 |
|
1055 |
$image = wp_get_image_editor( $image_path ); // Return an implementation that extends WP_Image_Editor
|
1056 |
|
@@ -1059,8 +1100,8 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
1059 |
if ( ! is_wp_error( $image ) ) {
|
1060 |
if ( ! empty( $crop ) ) {
|
1061 |
|
1062 |
-
if( ! is_array( $crop ) ) {
|
1063 |
-
$crop = explode(",", $crop );
|
1064 |
}
|
1065 |
|
1066 |
$src_x = $crop[0];
|
@@ -1070,7 +1111,7 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
1070 |
|
1071 |
$image->crop( $src_x, $src_y, $src_w, $src_h );
|
1072 |
|
1073 |
-
$max_w = UM()->options()->get('image_max_width');
|
1074 |
if ( $src_w > $max_w ) {
|
1075 |
$image->resize( $max_w, $src_h );
|
1076 |
}
|
@@ -1083,26 +1124,14 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
1083 |
} else {
|
1084 |
wp_send_json_error( esc_js( __( "Unable to crop stream image file: {$image_path}", 'ultimate-member' ) ) );
|
1085 |
}
|
1086 |
-
}
|
1087 |
|
1088 |
-
|
1089 |
-
/**
|
1090 |
-
* Set stream photo default settings
|
1091 |
-
* @param array $args
|
1092 |
-
* @return array
|
1093 |
-
*
|
1094 |
-
* @since 2.0.22
|
1095 |
-
*/
|
1096 |
-
public function stream_photo_data( $args ) {
|
1097 |
-
$args['max_file_size'] = apply_filters( "um_upload_images_stream_maximum_file_size", 9999999 );
|
1098 |
-
$args['max_file_size_error'] = sprintf( __( "Maximum file size allowed: %s", 'ultimate-member' ), size_format( $args['max_file_size'] ) );
|
1099 |
-
|
1100 |
-
return $args;
|
1101 |
}
|
1102 |
|
1103 |
|
1104 |
/**
|
1105 |
* Resize Image
|
|
|
1106 |
* @param string $image_path
|
1107 |
* @param string $src
|
1108 |
* @param string $key
|
@@ -1117,24 +1146,30 @@ if ( ! class_exists( 'um\core\Uploader' ) ) {
|
|
1117 |
$crop = explode( ',', $coord );
|
1118 |
$crop = array_map( 'intval', $crop );
|
1119 |
|
1120 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
1121 |
|
1122 |
-
|
1123 |
-
do_action( "um_upload_stream_image_process", $image_path, $src, $key, $user_id, $coord, $crop );
|
1124 |
-
}
|
1125 |
|
1126 |
-
$
|
1127 |
-
|
1128 |
-
|
1129 |
-
$ret['image']['filename'] = wp_basename( $image_path );
|
1130 |
|
1131 |
-
return $
|
1132 |
}
|
1133 |
|
1134 |
|
1135 |
/**
|
1136 |
* Move temporary files
|
1137 |
*
|
|
|
|
|
|
|
1138 |
* @param $user_id
|
1139 |
* @param $files
|
1140 |
* @param bool $move_only
|
98 |
* Uploader constructor.
|
99 |
*/
|
100 |
function __construct() {
|
101 |
+
$this->core_upload_dir = DIRECTORY_SEPARATOR . 'ultimatemember' . DIRECTORY_SEPARATOR;
|
102 |
+
$this->core_upload_url = '/ultimatemember/';
|
103 |
$this->upload_image_type = 'stream_photo';
|
104 |
$this->wp_upload_dir = wp_upload_dir();
|
105 |
+
$this->temp_upload_dir = 'temp';
|
106 |
|
107 |
+
add_filter( 'upload_dir', array( $this, 'set_upload_directory' ), 10, 1 );
|
108 |
+
add_filter( 'wp_handle_upload_prefilter', array( $this, 'validate_upload' ) );
|
|
|
|
|
|
|
|
|
109 |
|
110 |
+
add_filter( 'um_upload_image_process__profile_photo', array( $this, 'profile_photo' ), 10, 7 );
|
111 |
+
add_filter( 'um_upload_image_process__cover_photo', array( $this, 'cover_photo' ), 10, 7 );
|
112 |
+
add_action( 'um_upload_stream_image_process', array( $this, 'stream_photo' ), 10, 7 );
|
113 |
+
|
114 |
+
add_action( 'init', array( $this, 'init' ) );
|
115 |
}
|
116 |
|
117 |
|
286 |
|
287 |
|
288 |
/**
|
289 |
+
* Upload Image files
|
290 |
*
|
291 |
* @param array $uploadedfile
|
292 |
* @param int|null $user_id
|
296 |
* @since 2.0.22
|
297 |
*
|
298 |
* @return array
|
299 |
+
* @throws \Exception
|
300 |
*/
|
301 |
public function upload_image( $uploadedfile, $user_id = null, $field_key = '', $upload_type = 'stream_photo' ) {
|
302 |
$response = array();
|
306 |
}
|
307 |
|
308 |
if ( empty( $field_key ) ) {
|
309 |
+
$field_key = 'custom_field';
|
310 |
}
|
311 |
|
312 |
$this->field_key = $field_key;
|
319 |
$this->user_id = $user_id;
|
320 |
}
|
321 |
|
322 |
+
if ( in_array( $field_key, array( 'profile_photo', 'cover_photo' ) ) ) {
|
323 |
$this->upload_image_type = $field_key;
|
324 |
}
|
325 |
|
326 |
$field_data = UM()->fields()->get_field( $field_key );
|
327 |
|
328 |
+
if ( ! empty( $field_data['allowed_types'] ) ) {
|
329 |
+
$field_allowed_file_types = explode( ',', $field_data['allowed_types'] );
|
330 |
} else {
|
331 |
+
$field_allowed_file_types = apply_filters( 'um_uploader_image_default_filetypes', array( 'JPG', 'JPEG', 'PNG', 'GIF' ) );
|
332 |
}
|
333 |
|
334 |
$allowed_image_mimes = array();
|
338 |
$allowed_image_mimes[ $atype['ext'] ] = $atype['type'];
|
339 |
}
|
340 |
|
|
|
|
|
341 |
$upload_overrides = array(
|
342 |
+
'test_form' => false,
|
343 |
+
'mimes' => apply_filters( 'um_uploader_allowed_image_mimes', $allowed_image_mimes ),
|
344 |
+
'unique_filename_callback' => array( $this, 'unique_filename' ),
|
345 |
);
|
346 |
|
347 |
$upload_overrides = apply_filters( "um_image_upload_handler_overrides__{$field_key}", $upload_overrides );
|
455 |
*/
|
456 |
do_action( "um_after_upload_db_meta_{$field_key}", $this->user_id );
|
457 |
|
|
|
|
|
|
|
|
|
458 |
$filename = wp_basename( $movefile['url'] );
|
459 |
|
460 |
$transient = set_transient( "um_{$filename}", $movefile['file_info'], 2 * HOUR_IN_SECONDS );
|
510 |
}
|
511 |
|
512 |
$upload_overrides = array(
|
513 |
+
'test_form' => false,
|
514 |
+
'mimes' => apply_filters( 'um_uploader_allowed_file_mimes', $allowed_file_mimes ),
|
515 |
+
'unique_filename_callback' => array( $this, 'unique_filename' ),
|
516 |
);
|
517 |
|
518 |
$upload_overrides = apply_filters( "um_file_upload_handler_overrides__{$field_key}", $upload_overrides );
|
869 |
|
870 |
/**
|
871 |
* Make unique filename
|
872 |
+
*
|
873 |
* @param string $dir
|
874 |
* @param string $filename
|
875 |
* @param string $ext
|
882 |
if ( empty( $ext ) ) {
|
883 |
$image_type = wp_check_filetype( $filename );
|
884 |
$ext = strtolower( trim( $image_type['ext'], ' \/.' ) );
|
885 |
+
} else {
|
|
|
886 |
$ext = strtolower( trim( $ext, ' \/.' ) );
|
887 |
}
|
888 |
|
891 |
switch ( $this->upload_image_type ) {
|
892 |
|
893 |
case 'stream_photo':
|
894 |
+
$hashed = hash('ripemd160', time() . mt_rand( 10, 1000 ) );
|
895 |
$filename = "stream_photo_{$hashed}.{$ext}";
|
896 |
+
break;
|
897 |
|
898 |
case 'profile_photo':
|
|
|
|
|
|
|
899 |
case 'cover_photo':
|
900 |
+
$filename = "{$this->upload_image_type}_temp.{$ext}";
|
901 |
+
break;
|
902 |
|
903 |
}
|
904 |
+
|
905 |
} elseif ( 'file' == $this->upload_type ) {
|
906 |
+
$hashed = hash('ripemd160', time() . mt_rand( 10, 1000 ) );
|
907 |
$filename = "file_{$hashed}.{$ext}";
|
908 |
}
|
909 |
|
910 |
+
$this->delete_existing_file( $filename, $ext, $dir );
|
911 |
|
912 |
return $filename;
|
913 |
}
|
922 |
* @since 2.0.22
|
923 |
*/
|
924 |
public function delete_existing_file( $filename, $ext = '', $dir = '' ) {
|
925 |
+
if ( file_exists( $this->upload_user_basedir . DIRECTORY_SEPARATOR . $filename ) && ! empty( $filename ) ) {
|
926 |
+
unlink( $this->upload_user_basedir . DIRECTORY_SEPARATOR . $filename );
|
927 |
}
|
928 |
}
|
929 |
|
930 |
|
931 |
/**
|
932 |
* Profile photo image process
|
933 |
+
*
|
934 |
+
* @param array $response
|
935 |
+
* @param string $image_path
|
936 |
* @param string $src
|
937 |
+
* @param string $key
|
938 |
* @param integer $user_id
|
939 |
* @param string $coord
|
940 |
* @param array $crop
|
941 |
*
|
942 |
* @since 2.0.22
|
943 |
+
*
|
944 |
+
* @return array
|
945 |
*/
|
946 |
+
public function profile_photo( $response, $image_path, $src, $key, $user_id, $coord, $crop ) {
|
947 |
$sizes = UM()->options()->get( 'photo_thumb_sizes' );
|
948 |
|
949 |
$quality = UM()->options()->get( 'image_compression' );
|
950 |
|
951 |
$image = wp_get_image_editor( $image_path ); // Return an implementation that extends WP_Image_Editor
|
952 |
|
953 |
+
$temp_image_path = $image_path;
|
954 |
+
//refresh image_path to make temporary image permanently after upload
|
955 |
+
$image_path = pathinfo( $image_path, PATHINFO_DIRNAME ) . DIRECTORY_SEPARATOR . $key . '.' . pathinfo( $image_path, PATHINFO_EXTENSION );
|
956 |
+
|
957 |
if ( ! is_wp_error( $image ) ) {
|
958 |
$src_x = $crop[0];
|
959 |
$src_y = $crop[1];
|
962 |
|
963 |
$image->crop( $src_x, $src_y, $src_w, $src_h );
|
964 |
|
965 |
+
$max_w = UM()->options()->get( 'image_max_width' );
|
966 |
if ( $src_w > $max_w ) {
|
967 |
$image->resize( $max_w, $src_h );
|
968 |
}
|
973 |
|
974 |
$sizes_array = array();
|
975 |
|
976 |
+
foreach ( $sizes as $size ) {
|
977 |
+
$sizes_array[] = array( 'width' => $size );
|
978 |
}
|
979 |
|
980 |
$image->multi_resize( $sizes_array );
|
981 |
|
982 |
delete_user_meta( $user_id, 'synced_profile_photo' );
|
983 |
|
984 |
+
unlink( $temp_image_path );
|
985 |
+
|
986 |
+
$src = str_replace( '/' . $key . '_temp.', '/' . $key . '.', $src );
|
987 |
+
|
988 |
+
$response['image']['source_url'] = $src;
|
989 |
+
$response['image']['source_path'] = $image_path;
|
990 |
+
$response['image']['filename'] = wp_basename( $image_path );
|
991 |
+
|
992 |
+
update_user_meta( $this->user_id, $key, wp_basename( wp_basename( $image_path ) ) );
|
993 |
+
delete_user_meta( $this->user_id, "{$key}_metadata_temp" );
|
994 |
} else {
|
995 |
wp_send_json_error( esc_js( __( "Unable to crop image file: {$src}", 'ultimate-member' ) ) );
|
996 |
}
|
997 |
+
|
998 |
+
return $response;
|
999 |
}
|
1000 |
|
1001 |
|
1002 |
/**
|
1003 |
* Cover photo image process
|
1004 |
+
*
|
1005 |
* @param string $src
|
1006 |
* @param integer $user_id
|
1007 |
* @param string $coord
|
1008 |
* @param array $crop
|
1009 |
+
* @param array $response
|
1010 |
*
|
1011 |
* @since 2.0.22
|
1012 |
+
*
|
1013 |
+
* @return array
|
1014 |
*/
|
1015 |
+
public function cover_photo( $response, $image_path, $src, $key, $user_id, $coord, $crop ) {
|
1016 |
|
1017 |
$sizes = UM()->options()->get( 'cover_thumb_sizes' );
|
1018 |
|
1020 |
|
1021 |
$image = wp_get_image_editor( $image_path ); // Return an implementation that extends WP_Image_Editor
|
1022 |
|
1023 |
+
$temp_image_path = $image_path;
|
1024 |
+
|
1025 |
+
//refresh image_path to make temporary image permanently after upload
|
1026 |
+
$image_path = pathinfo( $image_path, PATHINFO_DIRNAME ) . DIRECTORY_SEPARATOR . $key . '.' . pathinfo( $image_path, PATHINFO_EXTENSION );
|
1027 |
+
|
1028 |
if ( ! is_wp_error( $image ) ) {
|
1029 |
|
1030 |
$src_x = $crop[0];
|
1034 |
|
1035 |
$image->crop( $src_x, $src_y, $src_w, $src_h );
|
1036 |
|
1037 |
+
$max_w = UM()->options()->get( 'image_max_width' );
|
1038 |
if ( $src_w > $max_w ) {
|
1039 |
$image->resize( $max_w, $src_h );
|
1040 |
}
|
1045 |
|
1046 |
$sizes_array = array();
|
1047 |
|
1048 |
+
foreach ( $sizes as $size ) {
|
1049 |
+
$sizes_array[] = array( 'width' => $size );
|
1050 |
}
|
1051 |
|
1052 |
$resize = $image->multi_resize( $sizes_array );
|
1053 |
|
1054 |
// change filenames of resized images
|
1055 |
+
foreach ( $resize as $row ) {
|
1056 |
+
$new_filename = str_replace( "x{$row['height']}" , '', $row['file'] );
|
1057 |
+
$old_filename = $row['file'];
|
1058 |
|
1059 |
rename( dirname( $image_path ) . DIRECTORY_SEPARATOR . $old_filename, dirname( $image_path ) . DIRECTORY_SEPARATOR . $new_filename );
|
1060 |
}
|
1061 |
|
1062 |
+
unlink( $temp_image_path );
|
1063 |
+
|
1064 |
+
$src = str_replace( '/' . $key . '_temp.', '/' . $key . '.', $src );
|
1065 |
+
|
1066 |
+
$response['image']['source_url'] = $src;
|
1067 |
+
$response['image']['source_path'] = $image_path;
|
1068 |
+
$response['image']['filename'] = wp_basename( $image_path );
|
1069 |
+
|
1070 |
+
update_user_meta( $this->user_id, $key, wp_basename( wp_basename( $image_path ) ) );
|
1071 |
+
delete_user_meta( $this->user_id, "{$key}_metadata_temp" );
|
1072 |
} else {
|
1073 |
wp_send_json_error( esc_js( __( "Unable to crop image file: {$src}", 'ultimate-member' ) ) );
|
1074 |
}
|
1075 |
+
|
1076 |
+
return $response;
|
1077 |
}
|
1078 |
|
1079 |
|
1080 |
/**
|
1081 |
* Stream photo image process
|
1082 |
+
*
|
1083 |
+
* @param array $response
|
1084 |
+
* @param string $image_path
|
1085 |
* @param string $src
|
1086 |
* @param integer $user_id
|
1087 |
* @param string $coord
|
1088 |
* @param array $crop
|
1089 |
*
|
1090 |
* @since 2.0.22
|
1091 |
+
*
|
1092 |
+
* @return array
|
1093 |
*/
|
1094 |
+
public function stream_photo( $response, $image_path, $src, $key, $user_id, $coord, $crop ) {
|
1095 |
|
1096 |
$image = wp_get_image_editor( $image_path ); // Return an implementation that extends WP_Image_Editor
|
1097 |
|
1100 |
if ( ! is_wp_error( $image ) ) {
|
1101 |
if ( ! empty( $crop ) ) {
|
1102 |
|
1103 |
+
if ( ! is_array( $crop ) ) {
|
1104 |
+
$crop = explode( ",", $crop );
|
1105 |
}
|
1106 |
|
1107 |
$src_x = $crop[0];
|
1111 |
|
1112 |
$image->crop( $src_x, $src_y, $src_w, $src_h );
|
1113 |
|
1114 |
+
$max_w = UM()->options()->get( 'image_max_width' );
|
1115 |
if ( $src_w > $max_w ) {
|
1116 |
$image->resize( $max_w, $src_h );
|
1117 |
}
|
1124 |
} else {
|
1125 |
wp_send_json_error( esc_js( __( "Unable to crop stream image file: {$image_path}", 'ultimate-member' ) ) );
|
1126 |
}
|
|
|
1127 |
|
1128 |
+
return $response;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1129 |
}
|
1130 |
|
1131 |
|
1132 |
/**
|
1133 |
* Resize Image
|
1134 |
+
*
|
1135 |
* @param string $image_path
|
1136 |
* @param string $src
|
1137 |
* @param string $key
|
1146 |
$crop = explode( ',', $coord );
|
1147 |
$crop = array_map( 'intval', $crop );
|
1148 |
|
1149 |
+
$response = array(
|
1150 |
+
'image' => array(
|
1151 |
+
'source_url' => $src,
|
1152 |
+
'source_path' => $image_path,
|
1153 |
+
'filename' => wp_basename( $image_path ),
|
1154 |
+
),
|
1155 |
+
);
|
1156 |
|
1157 |
+
$response = apply_filters( "um_upload_image_process__{$key}", $response, $image_path, $src, $key, $user_id, $coord, $crop );
|
|
|
|
|
1158 |
|
1159 |
+
if ( ! in_array( $key, array( 'profile_photo', 'cover_photo' ) ) ) {
|
1160 |
+
$response = apply_filters( 'um_upload_stream_image_process', $response, $image_path, $src, $key, $user_id, $coord, $crop );
|
1161 |
+
}
|
|
|
1162 |
|
1163 |
+
return $response;
|
1164 |
}
|
1165 |
|
1166 |
|
1167 |
/**
|
1168 |
* Move temporary files
|
1169 |
*
|
1170 |
+
* run when uploaded files are from custom fields
|
1171 |
+
* move them to the users' folder after form submitted
|
1172 |
+
*
|
1173 |
* @param $user_id
|
1174 |
* @param $files
|
1175 |
* @param bool $move_only
|
includes/core/class-user-posts.php
CHANGED
@@ -1,9 +1,10 @@
|
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
-
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
|
|
7 |
if ( ! class_exists( 'um\core\User_posts' ) ) {
|
8 |
|
9 |
|
@@ -13,14 +14,13 @@ if ( ! class_exists( 'um\core\User_posts' ) ) {
|
|
13 |
*/
|
14 |
class User_posts {
|
15 |
|
|
|
16 |
/**
|
17 |
* User_posts constructor.
|
18 |
*/
|
19 |
function __construct() {
|
20 |
add_action( 'um_profile_content_posts', array( &$this, 'add_posts' ) );
|
21 |
add_action( 'um_profile_content_comments', array( &$this, 'add_comments' ) );
|
22 |
-
|
23 |
-
add_action( 'um_ajax_load_posts__um_load_comments', array( &$this, 'load_comments' ), 10, 1 );
|
24 |
}
|
25 |
|
26 |
|
@@ -28,7 +28,6 @@ if ( ! class_exists( 'um\core\User_posts' ) ) {
|
|
28 |
* Add posts
|
29 |
*/
|
30 |
function add_posts() {
|
31 |
-
|
32 |
$args = array(
|
33 |
'post_type' => 'post',
|
34 |
'posts_per_page' => 10,
|
@@ -63,8 +62,7 @@ if ( ! class_exists( 'um\core\User_posts' ) ) {
|
|
63 |
|
64 |
$count_posts = (int) count_user_posts( um_get_requested_user(), 'post', true );
|
65 |
|
66 |
-
UM()->
|
67 |
-
UM()->shortcodes()->load_template( 'profile/posts' );
|
68 |
}
|
69 |
|
70 |
|
@@ -72,7 +70,23 @@ if ( ! class_exists( 'um\core\User_posts' ) ) {
|
|
72 |
* Add comments
|
73 |
*/
|
74 |
function add_comments() {
|
75 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
}
|
77 |
|
78 |
|
@@ -118,31 +132,30 @@ if ( ! class_exists( 'um\core\User_posts' ) ) {
|
|
118 |
$args = apply_filters( 'um_profile_query_make_posts', $args );
|
119 |
$posts = get_posts( $args );
|
120 |
|
121 |
-
UM()->
|
122 |
-
UM()->shortcodes()->load_template( 'profile/posts' );
|
123 |
wp_die();
|
124 |
}
|
125 |
|
126 |
|
127 |
/**
|
128 |
* Dynamic load of comments
|
129 |
-
*
|
130 |
-
* @param $args
|
131 |
*/
|
132 |
-
function load_comments(
|
133 |
-
|
134 |
-
$post_type = $array[0];
|
135 |
-
$posts_per_page = $array[1];
|
136 |
-
$offset = $array[2];
|
137 |
-
$author = $array[3];
|
138 |
-
|
139 |
-
$offset_n = $posts_per_page + $offset;
|
140 |
|
141 |
-
|
|
|
142 |
|
143 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
144 |
|
145 |
-
UM()->
|
|
|
146 |
}
|
147 |
|
148 |
|
@@ -154,12 +167,15 @@ if ( ! class_exists( 'um\core\User_posts' ) ) {
|
|
154 |
*
|
155 |
* @return int|string
|
156 |
*/
|
157 |
-
function count_user_posts_by_type( $user_id= '', $post_type = 'post' ) {
|
158 |
global $wpdb;
|
159 |
-
if (
|
160 |
$user_id = um_user( 'ID' );
|
|
|
161 |
|
162 |
-
if (
|
|
|
|
|
163 |
|
164 |
$where = get_posts_by_author_sql( $post_type, true, $user_id );
|
165 |
$count = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->posts $where" );
|
@@ -177,10 +193,13 @@ if ( ! class_exists( 'um\core\User_posts' ) ) {
|
|
177 |
*/
|
178 |
function count_user_comments( $user_id = null ) {
|
179 |
global $wpdb;
|
180 |
-
if (
|
181 |
-
$user_id = um_user('ID');
|
|
|
182 |
|
183 |
-
if (
|
|
|
|
|
184 |
|
185 |
$count = $wpdb->get_var("SELECT COUNT(comment_ID) FROM " . $wpdb->comments. " WHERE user_id = " . $user_id . " AND comment_approved = '1'");
|
186 |
|
1 |
<?php
|
2 |
namespace um\core;
|
3 |
|
4 |
+
|
5 |
if ( ! defined( 'ABSPATH' ) ) exit;
|
6 |
|
7 |
+
|
8 |
if ( ! class_exists( 'um\core\User_posts' ) ) {
|
9 |
|
10 |
|
14 |
*/
|
15 |
class User_posts {
|
16 |
|
17 |
+
|
18 |
/**
|
19 |
* User_posts constructor.
|
20 |
*/
|
21 |
function __construct() {
|
22 |
add_action( 'um_profile_content_posts', array( &$this, 'add_posts' ) );
|
23 |
add_action( 'um_profile_content_comments', array( &$this, 'add_comments' ) );
|
|
|
|
|
24 |
}
|
25 |
|
26 |
|
28 |
* Add posts
|
29 |
*/
|
30 |
function add_posts() {
|
|
|
31 |
$args = array(
|
32 |
'post_type' => 'post',
|
33 |
'posts_per_page' => 10,
|
62 |
|
63 |
$count_posts = (int) count_user_posts( um_get_requested_user(), 'post', true );
|
64 |
|
65 |
+
UM()->get_template( 'profile/posts.php', '', array( 'posts' => $posts, 'count_posts' => $count_posts ), true );
|
|
|
66 |
}
|
67 |
|
68 |
|
70 |
* Add comments
|
71 |
*/
|
72 |
function add_comments() {
|
73 |
+
$comments = get_comments( array(
|
74 |
+
'number' => 10,
|
75 |
+
'offset' => 0,
|
76 |
+
'user_id' => um_user( 'ID' ),
|
77 |
+
'post_status' => array( 'publish' ),
|
78 |
+
'type__not_in' => apply_filters( 'um_excluded_comment_types', array('') ),
|
79 |
+
) );
|
80 |
+
|
81 |
+
|
82 |
+
$comments_count = get_comments( array(
|
83 |
+
'user_id' => um_user( 'ID' ),
|
84 |
+
'post_status' => array( 'publish' ),
|
85 |
+
'type__not_in' => apply_filters( 'um_excluded_comment_types', array('') ),
|
86 |
+
'count' => 1,
|
87 |
+
) );
|
88 |
+
|
89 |
+
UM()->get_template( 'profile/comments.php', '', array( 'comments' => $comments, 'count_comments' => $comments_count ), true );
|
90 |
}
|
91 |
|
92 |
|
132 |
$args = apply_filters( 'um_profile_query_make_posts', $args );
|
133 |
$posts = get_posts( $args );
|
134 |
|
135 |
+
UM()->get_template( 'profile/posts.php', '', array( 'posts' => $posts ), true );
|
|
|
136 |
wp_die();
|
137 |
}
|
138 |
|
139 |
|
140 |
/**
|
141 |
* Dynamic load of comments
|
|
|
|
|
142 |
*/
|
143 |
+
function load_comments() {
|
144 |
+
UM()->check_ajax_nonce();
|
|
|
|
|
|
|
|
|
|
|
|
|
145 |
|
146 |
+
$user_id = ! empty( $_POST['user_id'] ) ? absint( $_POST['user_id'] ) : get_current_user_id();
|
147 |
+
$page = ! empty( $_POST['page'] ) ? absint( $_POST['page'] ) : 0;
|
148 |
|
149 |
+
$comments = get_comments( array(
|
150 |
+
'number' => 10,
|
151 |
+
'offset' => ( $page - 1 ) * 10,
|
152 |
+
'user_id' => $user_id,
|
153 |
+
'post_status' => array('publish'),
|
154 |
+
'type__not_in' => apply_filters( 'um_excluded_comment_types', array('') ),
|
155 |
+
) );
|
156 |
|
157 |
+
UM()->get_template( 'profile/comments.php', '', array( 'comments' => $comments ), true );
|
158 |
+
wp_die();
|
159 |
}
|
160 |
|
161 |
|
167 |
*
|
168 |
* @return int|string
|
169 |
*/
|
170 |
+
function count_user_posts_by_type( $user_id = '', $post_type = 'post' ) {
|
171 |
global $wpdb;
|
172 |
+
if ( ! $user_id ) {
|
173 |
$user_id = um_user( 'ID' );
|
174 |
+
}
|
175 |
|
176 |
+
if ( ! $user_id ) {
|
177 |
+
return 0;
|
178 |
+
}
|
179 |
|
180 |
$where = get_posts_by_author_sql( $post_type, true, $user_id );
|
181 |
$count = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->posts $where" );
|
193 |
*/
|
194 |
function count_user_comments( $user_id = null ) {
|
195 |
global $wpdb;
|
196 |
+
if ( ! $user_id ) {
|
197 |
+
$user_id = um_user( 'ID' );
|
198 |
+
}
|
199 |
|
200 |
+
if ( ! $user_id ) {
|
201 |
+
return 0;
|
202 |
+
}
|
203 |
|
204 |
$count = $wpdb->get_var("SELECT COUNT(comment_ID) FROM " . $wpdb->comments. " WHERE user_id = " . $user_id . " AND comment_approved = '1'");
|
205 |
|
includes/core/class-user.php
CHANGED
@@ -1494,7 +1494,6 @@ if ( ! class_exists( 'um\core\User' ) ) {
|
|
1494 |
*/
|
1495 |
function get_admin_actions() {
|
1496 |
$items = array();
|
1497 |
-
$actions = array();
|
1498 |
|
1499 |
/**
|
1500 |
* UM hook
|
@@ -1517,7 +1516,7 @@ if ( ! class_exists( 'um\core\User' ) ) {
|
|
1517 |
* }
|
1518 |
* ?>
|
1519 |
*/
|
1520 |
-
$actions = apply_filters( 'um_admin_user_actions_hook',
|
1521 |
if ( ! isset( $actions ) || empty( $actions ) ) {
|
1522 |
return false;
|
1523 |
}
|
@@ -1641,14 +1640,11 @@ if ( ! class_exists( 'um\core\User' ) ) {
|
|
1641 |
* Update files
|
1642 |
*
|
1643 |
* @param $changes
|
|
|
|
|
1644 |
*/
|
1645 |
function update_files( $changes ) {
|
1646 |
-
|
1647 |
-
foreach ( $changes as $key => $uri ) {
|
1648 |
-
$src = um_is_temp_upload( $uri );
|
1649 |
-
UM()->files()->new_user_upload( $this->id, $src, $key );
|
1650 |
-
}
|
1651 |
-
|
1652 |
}
|
1653 |
|
1654 |
|
1494 |
*/
|
1495 |
function get_admin_actions() {
|
1496 |
$items = array();
|
|
|
1497 |
|
1498 |
/**
|
1499 |
* UM hook
|
1516 |
* }
|
1517 |
* ?>
|
1518 |
*/
|
1519 |
+
$actions = apply_filters( 'um_admin_user_actions_hook', null, um_profile_id() );
|
1520 |
if ( ! isset( $actions ) || empty( $actions ) ) {
|
1521 |
return false;
|
1522 |
}
|
1640 |
* Update files
|
1641 |
*
|
1642 |
* @param $changes
|
1643 |
+
*
|
1644 |
+
* @deprecated 2.1.0
|
1645 |
*/
|
1646 |
function update_files( $changes ) {
|
1647 |
+
um_deprecated_function( 'update_files', '2.1.0', '' );
|
|
|
|
|
|
|
|
|
|
|
1648 |
}
|
1649 |
|
1650 |
|
includes/core/um-actions-account.php
CHANGED
@@ -177,7 +177,7 @@ function um_submit_account_details( $args ) {
|
|
177 |
$user->destroy_all();
|
178 |
|
179 |
wp_set_password( $changes['user_pass'], um_user( 'ID' ) );
|
180 |
-
|
181 |
wp_signon( array( 'user_login' => um_user( 'user_login' ), 'user_password' => $changes['user_pass'] ) );
|
182 |
}
|
183 |
|
@@ -185,7 +185,8 @@ function um_submit_account_details( $args ) {
|
|
185 |
// delete account
|
186 |
$user = get_user_by( 'login', um_user( 'user_login' ) );
|
187 |
|
188 |
-
if ( 'delete' == $current_tab && isset( $_POST['single_user_password'] ) &&
|
|
|
189 |
if ( current_user_can( 'delete_users' ) || um_user( 'can_delete_profile' ) ) {
|
190 |
UM()->user()->delete();
|
191 |
|
@@ -222,45 +223,42 @@ function um_submit_account_details( $args ) {
|
|
222 |
}
|
223 |
}
|
224 |
|
225 |
-
|
226 |
$arr_fields = array();
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
$arr_fields[ ] = $key;
|
257 |
-
}
|
258 |
}
|
259 |
}
|
260 |
|
261 |
$changes = array();
|
262 |
foreach ( $_POST as $k => $v ) {
|
263 |
-
if (
|
264 |
continue;
|
265 |
}
|
266 |
|
@@ -319,6 +317,11 @@ function um_submit_account_details( $args ) {
|
|
319 |
|
320 |
UM()->user()->update_profile( $changes );
|
321 |
|
|
|
|
|
|
|
|
|
|
|
322 |
/**
|
323 |
* UM hook
|
324 |
*
|
@@ -410,6 +413,8 @@ add_action( 'um_before_account_delete', 'um_before_account_delete' );
|
|
410 |
* Before notifications account tab content
|
411 |
*
|
412 |
* @param array $args
|
|
|
|
|
413 |
*/
|
414 |
function um_before_account_notifications( $args = array() ) {
|
415 |
$output = UM()->account()->get_tab_fields( 'notifications', $args );
|
@@ -427,16 +432,6 @@ function um_before_account_notifications( $args = array() ) {
|
|
427 |
add_action( 'um_before_account_notifications', 'um_before_account_notifications' );
|
428 |
|
429 |
|
430 |
-
/**
|
431 |
-
* Update account fields to secure the account submission
|
432 |
-
*/
|
433 |
-
function um_account_secure_registered_fields(){
|
434 |
-
$secure_fields = UM()->account()->register_fields;
|
435 |
-
update_user_meta( um_user( 'ID' ), 'um_account_secure_fields', $secure_fields );
|
436 |
-
}
|
437 |
-
add_action( 'wp_footer', 'um_account_secure_registered_fields' );
|
438 |
-
|
439 |
-
|
440 |
/**
|
441 |
* Update Profile URL
|
442 |
*
|
177 |
$user->destroy_all();
|
178 |
|
179 |
wp_set_password( $changes['user_pass'], um_user( 'ID' ) );
|
180 |
+
|
181 |
wp_signon( array( 'user_login' => um_user( 'user_login' ), 'user_password' => $changes['user_pass'] ) );
|
182 |
}
|
183 |
|
185 |
// delete account
|
186 |
$user = get_user_by( 'login', um_user( 'user_login' ) );
|
187 |
|
188 |
+
if ( 'delete' == $current_tab && isset( $_POST['single_user_password'] ) &&
|
189 |
+
wp_check_password( $_POST['single_user_password'], $user->data->user_pass, $user->data->ID ) ) {
|
190 |
if ( current_user_can( 'delete_users' ) || um_user( 'can_delete_profile' ) ) {
|
191 |
UM()->user()->delete();
|
192 |
|
223 |
}
|
224 |
}
|
225 |
|
|
|
226 |
$arr_fields = array();
|
227 |
+
if ( UM()->account()->is_secure_enabled() ) {
|
228 |
+
$account_fields = get_user_meta( um_user( 'ID' ), 'um_account_secure_fields', true );
|
229 |
+
|
230 |
+
/**
|
231 |
+
* UM hook
|
232 |
+
*
|
233 |
+
* @type filter
|
234 |
+
* @title um_secure_account_fields
|
235 |
+
* @description Change secure account fields
|
236 |
+
* @input_vars
|
237 |
+
* [{"var":"$fields","type":"array","desc":"Secure account fields"},
|
238 |
+
* {"var":"$user_id","type":"int","desc":"User ID"}]
|
239 |
+
* @change_log
|
240 |
+
* ["Since: 2.0"]
|
241 |
+
* @usage
|
242 |
+
* <?php add_filter( 'um_secure_account_fields', 'function_name', 10, 2 ); ?>
|
243 |
+
* @example
|
244 |
+
* <?php
|
245 |
+
* add_filter( 'um_secure_account_fields', 'my_secure_account_fields', 10, 2 );
|
246 |
+
* function my_secure_account_fields( $fields, $user_id ) {
|
247 |
+
* // your code here
|
248 |
+
* return $fields;
|
249 |
+
* }
|
250 |
+
* ?>
|
251 |
+
*/
|
252 |
+
$secure_fields = apply_filters( 'um_secure_account_fields', $account_fields, um_user( 'ID' ) );
|
253 |
+
|
254 |
+
if ( isset( $secure_fields[ $current_tab ] ) && is_array( $secure_fields[ $current_tab ] ) ) {
|
255 |
+
$arr_fields = array_merge( $arr_fields, $secure_fields[ $current_tab ] );
|
|
|
|
|
256 |
}
|
257 |
}
|
258 |
|
259 |
$changes = array();
|
260 |
foreach ( $_POST as $k => $v ) {
|
261 |
+
if ( ! in_array( $k, $arr_fields ) ) {
|
262 |
continue;
|
263 |
}
|
264 |
|
317 |
|
318 |
UM()->user()->update_profile( $changes );
|
319 |
|
320 |
+
|
321 |
+
if ( UM()->account()->is_secure_enabled() ) {
|
322 |
+
update_user_meta( um_user( 'ID' ), 'um_account_secure_fields', array() );
|
323 |
+
}
|
324 |
+
|
325 |
/**
|
326 |
* UM hook
|
327 |
*
|
413 |
* Before notifications account tab content
|
414 |
*
|
415 |
* @param array $args
|
416 |
+
*
|
417 |
+
* @throws Exception
|
418 |
*/
|
419 |
function um_before_account_notifications( $args = array() ) {
|
420 |
$output = UM()->account()->get_tab_fields( 'notifications', $args );
|
432 |
add_action( 'um_before_account_notifications', 'um_before_account_notifications' );
|
433 |
|
434 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
435 |
/**
|
436 |
* Update Profile URL
|
437 |
*
|
includes/core/um-actions-form.php
CHANGED
@@ -366,12 +366,19 @@ function um_submit_form_errors_hook_( $args ) {
|
|
366 |
$um_profile_photo = um_profile('profile_photo');
|
367 |
|
368 |
if ( get_post_meta( $form_id, '_um_profile_photo_required', true ) && ( empty( $args['profile_photo'] ) && empty( $um_profile_photo ) ) ) {
|
369 |
-
UM()->form()->add_error('profile_photo',
|
370 |
}
|
371 |
|
372 |
if ( ! empty( $fields ) ) {
|
373 |
foreach ( $fields as $key => $array ) {
|
374 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
375 |
if ( isset( $array['public'] ) && -2 == $array['public'] && ! empty( $array['roles'] ) && is_user_logged_in() ) {
|
376 |
$current_user_roles = um_user( 'roles' );
|
377 |
if ( empty( $current_user_roles ) || count( array_intersect( $current_user_roles, $array['roles'] ) ) <= 0 ) {
|
@@ -413,7 +420,7 @@ function um_submit_form_errors_hook_( $args ) {
|
|
413 |
}
|
414 |
|
415 |
if ( isset( $array['type'] ) && $array['type'] == 'checkbox' && isset( $array['required'] ) && $array['required'] == 1 && !isset( $args[$key] ) ) {
|
416 |
-
UM()->form()->add_error($key, sprintf(__('%s is required.','ultimate-member'), $array['title'] ) );
|
417 |
}
|
418 |
|
419 |
if ( isset( $array['type'] ) && $array['type'] == 'radio' && isset( $array['required'] ) && $array['required'] == 1 && !isset( $args[$key] ) && !in_array($key, array('role_radio','role_select') ) ) {
|
@@ -453,17 +460,17 @@ function um_submit_form_errors_hook_( $args ) {
|
|
453 |
*/
|
454 |
do_action( 'um_add_error_on_form_submit_validation', $array, $key, $args );
|
455 |
|
456 |
-
if (
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
} else {
|
463 |
-
UM()->form()->add_error($key, sprintf( __('%s is required','ultimate-member'), $array['label'] ) );
|
464 |
-
}
|
465 |
}
|
466 |
}
|
|
|
|
|
|
|
467 |
|
468 |
if ( isset( $array['max_words'] ) && $array['max_words'] > 0 ) {
|
469 |
if ( str_word_count( $args[$key], 0, "éèàôù" ) > $array['max_words'] ) {
|
@@ -482,10 +489,10 @@ function um_submit_form_errors_hook_( $args ) {
|
|
482 |
UM()->form()->add_error($key, sprintf(__('Your %s must contain less than %s characters','ultimate-member'), $array['label'], $array['max_chars']) );
|
483 |
}
|
484 |
}
|
485 |
-
|
486 |
-
$profile_show_html_bio = UM()->options()->get('profile_show_html_bio');
|
487 |
-
|
488 |
-
if ( $profile_show_html_bio == 1 && $key !==
|
489 |
if ( isset( $array['html'] ) && $array['html'] == 0 ) {
|
490 |
if ( wp_strip_all_tags( $args[$key] ) != trim( $args[ $key ] ) ) {
|
491 |
UM()->form()->add_error( $key, __( 'You can not use HTML tags here', 'ultimate-member' ) );
|
@@ -732,10 +739,12 @@ function um_submit_form_errors_hook_( $args ) {
|
|
732 |
|
733 |
if ( $args[ $key ] != '' ) {
|
734 |
|
735 |
-
if( !
|
736 |
-
UM()->form()->add_error( $key
|
737 |
}
|
|
|
738 |
}
|
|
|
739 |
break;
|
740 |
|
741 |
case 'lowercase':
|
366 |
$um_profile_photo = um_profile('profile_photo');
|
367 |
|
368 |
if ( get_post_meta( $form_id, '_um_profile_photo_required', true ) && ( empty( $args['profile_photo'] ) && empty( $um_profile_photo ) ) ) {
|
369 |
+
UM()->form()->add_error('profile_photo', __( 'Profile Photo is required.', 'ultimate-member' ) );
|
370 |
}
|
371 |
|
372 |
if ( ! empty( $fields ) ) {
|
373 |
foreach ( $fields as $key => $array ) {
|
374 |
|
375 |
+
if ( $mode == 'profile' ) {
|
376 |
+
$restricted_fields = UM()->fields()->get_restricted_fields_for_edit();
|
377 |
+
if ( is_array( $restricted_fields ) && in_array( $key, $restricted_fields ) ) {
|
378 |
+
continue;
|
379 |
+
}
|
380 |
+
}
|
381 |
+
|
382 |
if ( isset( $array['public'] ) && -2 == $array['public'] && ! empty( $array['roles'] ) && is_user_logged_in() ) {
|
383 |
$current_user_roles = um_user( 'roles' );
|
384 |
if ( empty( $current_user_roles ) || count( array_intersect( $current_user_roles, $array['roles'] ) ) <= 0 ) {
|
420 |
}
|
421 |
|
422 |
if ( isset( $array['type'] ) && $array['type'] == 'checkbox' && isset( $array['required'] ) && $array['required'] == 1 && !isset( $args[$key] ) ) {
|
423 |
+
UM()->form()->add_error($key, sprintf( __( '%s is required.', 'ultimate-member' ), $array['title'] ) );
|
424 |
}
|
425 |
|
426 |
if ( isset( $array['type'] ) && $array['type'] == 'radio' && isset( $array['required'] ) && $array['required'] == 1 && !isset( $args[$key] ) && !in_array($key, array('role_radio','role_select') ) ) {
|
460 |
*/
|
461 |
do_action( 'um_add_error_on_form_submit_validation', $array, $key, $args );
|
462 |
|
463 |
+
if ( ! empty( $array['required'] ) ) {
|
464 |
+
if ( ! isset( $args[ $key ] ) || $args[ $key ] == '' || $args[ $key ] == 'empty_file' ) {
|
465 |
+
if ( empty( $array['label'] ) ) {
|
466 |
+
UM()->form()->add_error( $key, __( 'This field is required', 'ultimate-member' ) );
|
467 |
+
} else {
|
468 |
+
UM()->form()->add_error( $key, sprintf( __( '%s is required', 'ultimate-member' ), $array['label'] ) );
|
|
|
|
|
|
|
469 |
}
|
470 |
}
|
471 |
+
}
|
472 |
+
|
473 |
+
if ( isset( $args[ $key ] ) ) {
|
474 |
|
475 |
if ( isset( $array['max_words'] ) && $array['max_words'] > 0 ) {
|
476 |
if ( str_word_count( $args[$key], 0, "éèàôù" ) > $array['max_words'] ) {
|
489 |
UM()->form()->add_error($key, sprintf(__('Your %s must contain less than %s characters','ultimate-member'), $array['label'], $array['max_chars']) );
|
490 |
}
|
491 |
}
|
492 |
+
|
493 |
+
$profile_show_html_bio = UM()->options()->get( 'profile_show_html_bio' );
|
494 |
+
|
495 |
+
if ( $profile_show_html_bio == 1 && $key !== 'description' ) {
|
496 |
if ( isset( $array['html'] ) && $array['html'] == 0 ) {
|
497 |
if ( wp_strip_all_tags( $args[$key] ) != trim( $args[ $key ] ) ) {
|
498 |
UM()->form()->add_error( $key, __( 'You can not use HTML tags here', 'ultimate-member' ) );
|
739 |
|
740 |
if ( $args[ $key ] != '' ) {
|
741 |
|
742 |
+
if ( ! preg_match( '/^\p{L}+$/u', str_replace( ' ', '', $args[ $key ] ) ) ) {
|
743 |
+
UM()->form()->add_error( $key, __( 'You must provide alphabetic letters', 'ultimate-member' ) );
|
744 |
}
|
745 |
+
|
746 |
}
|
747 |
+
|
748 |
break;
|
749 |
|
750 |
case 'lowercase':
|
includes/core/um-actions-members.php
DELETED
@@ -1,255 +0,0 @@
|
|
1 |
-
<?php if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
2 |
-
|
3 |
-
|
4 |
-
/**
|
5 |
-
* Member Directory Search
|
6 |
-
*
|
7 |
-
* @param $args
|
8 |
-
*/
|
9 |
-
function um_members_directory_search( $args ) {
|
10 |
-
$search_filters = array();
|
11 |
-
|
12 |
-
if ( isset( $args['search_fields'] ) ) {
|
13 |
-
foreach ( $args['search_fields'] as $k => $testfilter ) {
|
14 |
-
if ( $testfilter && ! in_array( $testfilter, (array) $search_filters ) ) {
|
15 |
-
$search_filters[] = $testfilter;
|
16 |
-
}
|
17 |
-
}
|
18 |
-
}
|
19 |
-
|
20 |
-
/**
|
21 |
-
* UM hook
|
22 |
-
*
|
23 |
-
* @type filter
|
24 |
-
* @title um_frontend_member_search_filters
|
25 |
-
* @description Extend Member Directory Search filter
|
26 |
-
* @input_vars
|
27 |
-
* [{"var":"$search_filters","type":"array","desc":"Search Filters"}]
|
28 |
-
* @change_log
|
29 |
-
* ["Since: 2.0"]
|
30 |
-
* @usage
|
31 |
-
* <?php add_filter( 'um_frontend_member_search_filters', 'function_name', 10, 1 ); ?>
|
32 |
-
* @example
|
33 |
-
* <?php
|
34 |
-
* add_filter( 'um_frontend_member_search_filters', 'my_frontend_member_search_filters', 10, 1 );
|
35 |
-
* function my_frontend_member_search_filters( $search_filters ) {
|
36 |
-
* // your code here
|
37 |
-
* return $search_filters;
|
38 |
-
* }
|
39 |
-
* ?>
|
40 |
-
*/
|
41 |
-
$search_filters = apply_filters( 'um_frontend_member_search_filters', $search_filters );
|
42 |
-
|
43 |
-
if ( $args['search'] == 1 && is_array( $search_filters ) ) { // search on
|
44 |
-
|
45 |
-
$current_user_roles = um_user( 'roles' );
|
46 |
-
if ( ! empty( $args['roles_can_search'] ) && ( empty( $current_user_roles ) || count( array_intersect( $current_user_roles, $args['roles_can_search'] ) ) <= 0 ) ) {
|
47 |
-
return;
|
48 |
-
}
|
49 |
-
|
50 |
-
$count = count( $search_filters ); ?>
|
51 |
-
|
52 |
-
<div class="um-search um-search-<?php echo esc_attr( $count ); ?>">
|
53 |
-
|
54 |
-
<form method="get" action="">
|
55 |
-
|
56 |
-
<?php if ( isset( $_REQUEST['page_id'] ) && get_option( 'permalink_structure' ) == 0 ) { ?>
|
57 |
-
|
58 |
-
<input type="hidden" name="page_id" id="page_id" value="<?php echo esc_attr( $_REQUEST['page_id'] ); ?>" />
|
59 |
-
|
60 |
-
<?php }
|
61 |
-
|
62 |
-
$i = 0;
|
63 |
-
foreach ( $search_filters as $filter ) {
|
64 |
-
$i++;
|
65 |
-
|
66 |
-
if ( $i % 2 == 0 ) {
|
67 |
-
$add_class = 'um-search-filter-2';
|
68 |
-
} else {
|
69 |
-
$add_class = '';
|
70 |
-
} ?>
|
71 |
-
|
72 |
-
<div class="um-search-filter <?php echo esc_attr( $add_class ) ?>">
|
73 |
-
<?php UM()->members()->show_filter( $filter ); ?>
|
74 |
-
</div>
|
75 |
-
<?php } ?>
|
76 |
-
|
77 |
-
<div class="um-clear"></div>
|
78 |
-
|
79 |
-
<div class="um-search-submit">
|
80 |
-
|
81 |
-
<input type="hidden" name="um_search" id="um_search" value="1" />
|
82 |
-
|
83 |
-
<a href="javascript:void(0);" class="um-button um-do-search"><?php _e('Search','ultimate-member' ); ?></a>
|
84 |
-
<a href="<?php echo esc_url( UM()->permalinks()->get_current_url( true ) ); ?>" class="um-button um-alt"><?php _e( 'Reset', 'ultimate-member' ); ?></a>
|
85 |
-
|
86 |
-
</div>
|
87 |
-
<div class="um-clear"></div>
|
88 |
-
|
89 |
-
</form>
|
90 |
-
|
91 |
-
</div>
|
92 |
-
|
93 |
-
<?php
|
94 |
-
|
95 |
-
}
|
96 |
-
}
|
97 |
-
add_action( 'um_members_directory_search', 'um_members_directory_search' );
|
98 |
-
|
99 |
-
|
100 |
-
/**
|
101 |
-
* Pre-display Member Directory
|
102 |
-
*
|
103 |
-
* @param $args
|
104 |
-
*/
|
105 |
-
function um_pre_directory_shortcode( $args ) {
|
106 |
-
extract( $args );
|
107 |
-
UM()->members()->results = UM()->members()->get_members( $args );
|
108 |
-
}
|
109 |
-
add_action( 'um_pre_directory_shortcode', 'um_pre_directory_shortcode' );
|
110 |
-
|
111 |
-
|
112 |
-
/**
|
113 |
-
* Member Directory Header
|
114 |
-
*
|
115 |
-
* @param $args
|
116 |
-
*/
|
117 |
-
function um_members_directory_head( $args ) {
|
118 |
-
extract( $args );
|
119 |
-
|
120 |
-
if ( isset( $_REQUEST['um_search'] ) ) {
|
121 |
-
$is_filtering = 1;
|
122 |
-
} elseif ( UM()->is_filtering == 1 ) {
|
123 |
-
$is_filtering = 1;
|
124 |
-
} else {
|
125 |
-
$is_filtering = 0;
|
126 |
-
}
|
127 |
-
|
128 |
-
if ( um_members( 'header' ) && $is_filtering && um_members( 'users_per_page' ) ) { ?>
|
129 |
-
|
130 |
-
<div class="um-members-intro">
|
131 |
-
|
132 |
-
<div class="um-members-total"><?php echo ( um_members( 'total_users' ) > 1 ) ? um_members( 'header' ) : um_members( 'header_single' ); ?></div>
|
133 |
-
|
134 |
-
</div>
|
135 |
-
|
136 |
-
<?php }
|
137 |
-
}
|
138 |
-
add_action( 'um_members_directory_head', 'um_members_directory_head' );
|
139 |
-
|
140 |
-
|
141 |
-
/**
|
142 |
-
* Member Directory Pagination
|
143 |
-
*
|
144 |
-
* @param $args
|
145 |
-
*/
|
146 |
-
function um_members_directory_pagination( $args ) {
|
147 |
-
extract( $args );
|
148 |
-
|
149 |
-
|
150 |
-
if ( isset( $args['search'] ) && $args['search'] == 1 && isset( $args['must_search'] ) && $args['must_search'] == 1 && ! isset( $_REQUEST['um_search'] ) ) {
|
151 |
-
return;
|
152 |
-
}
|
153 |
-
|
154 |
-
if ( um_members('total_pages') > 1 ) { // needs pagination
|
155 |
-
|
156 |
-
?>
|
157 |
-
|
158 |
-
<div class="um-members-pagidrop uimob340-show uimob500-show">
|
159 |
-
|
160 |
-
<?php _e( 'Jump to page:', 'ultimate-member' ); ?>
|
161 |
-
|
162 |
-
<?php if ( um_members( 'pages_to_show' ) && is_array( um_members( 'pages_to_show' ) ) ) { ?>
|
163 |
-
<select onChange="window.location.href=this.value" class="um-s2" style="width: 100px">
|
164 |
-
<?php foreach( um_members( 'pages_to_show' ) as $i ) { ?>
|
165 |
-
<option value="<?php echo esc_url( UM()->permalinks()->add_query( 'members_page', $i ) ); ?>" <?php selected( $i, um_members( 'page' ) ); ?>><?php printf( __( '%s of %d', 'ultimate-member' ), $i, um_members( 'total_pages' ) ); ?></option>
|
166 |
-
<?php } ?>
|
167 |
-
</select>
|
168 |
-
<?php } ?>
|
169 |
-
|
170 |
-
</div>
|
171 |
-
|
172 |
-
<div class="um-members-pagi uimob340-hide uimob500-hide">
|
173 |
-
|
174 |
-
<?php if ( um_members( 'page' ) != 1 ) { ?>
|
175 |
-
<a href="<?php echo esc_url( UM()->permalinks()->add_query( 'members_page', 1 ) ); ?>" class="pagi pagi-arrow um-tip-n" title="<?php esc_attr_e( 'First Page', 'ultimate-member' ); ?>"><i class="um-faicon-angle-double-left"></i></a>
|
176 |
-
<?php } else { ?>
|
177 |
-
<span class="pagi pagi-arrow disabled"><i class="um-faicon-angle-double-left"></i></span>
|
178 |
-
<?php }
|
179 |
-
|
180 |
-
if ( um_members( 'page' ) > 1 ) { ?>
|
181 |
-
<a href="<?php echo UM()->permalinks()->add_query( 'members_page', um_members( 'page' ) - 1 ); ?>" class="pagi pagi-arrow um-tip-n" title="<?php esc_attr_e( 'Previous', 'ultimate-member'); ?>"><i class="um-faicon-angle-left"></i></a>
|
182 |
-
<?php } else { ?>
|
183 |
-
<span class="pagi pagi-arrow disabled"><i class="um-faicon-angle-left"></i></span>
|
184 |
-
<?php }
|
185 |
-
|
186 |
-
if ( um_members('pages_to_show') && is_array( um_members( 'pages_to_show' ) ) ) {
|
187 |
-
foreach ( um_members( 'pages_to_show' ) as $i ) {
|
188 |
-
|
189 |
-
if ( um_members('page') == $i ) { ?>
|
190 |
-
|
191 |
-
<span class="pagi current"><?php echo $i; ?></span>
|
192 |
-
|
193 |
-
<?php } else { ?>
|
194 |
-
|
195 |
-
<a href="<?php echo esc_url( UM()->permalinks()->add_query( 'members_page', $i ) ); ?>" class="pagi"><?php echo $i; ?></a>
|
196 |
-
|
197 |
-
<?php }
|
198 |
-
}
|
199 |
-
}
|
200 |
-
|
201 |
-
if ( um_members('page') != um_members( 'total_pages' ) ) { ?>
|
202 |
-
<a href="<?php echo esc_url( UM()->permalinks()->add_query( 'members_page', um_members( 'page' ) + 1 ) ); ?>" class="pagi pagi-arrow um-tip-n" title="<?php esc_attr_e('Next','ultimate-member'); ?>"><i class="um-faicon-angle-right"></i></a>
|
203 |
-
<?php } else { ?>
|
204 |
-
<span class="pagi pagi-arrow disabled"><i class="um-faicon-angle-right"></i></span>
|
205 |
-
<?php }
|
206 |
-
|
207 |
-
if ( um_members( 'page' ) != um_members( 'total_pages' ) ) { ?>
|
208 |
-
<a href="<?php echo esc_url( UM()->permalinks()->add_query( 'members_page', um_members( 'total_pages' ) ) ); ?>" class="pagi pagi-arrow um-tip-n" title="<?php esc_attr_e('Last Page','ultimate-member'); ?>"><i class="um-faicon-angle-double-right"></i></a>
|
209 |
-
<?php } else { ?>
|
210 |
-
<span class="pagi pagi-arrow disabled"><i class="um-faicon-angle-double-right"></i></span>
|
211 |
-
<?php } ?>
|
212 |
-
|
213 |
-
</div>
|
214 |
-
|
215 |
-
<?php
|
216 |
-
|
217 |
-
}
|
218 |
-
|
219 |
-
}
|
220 |
-
add_action( 'um_members_directory_footer', 'um_members_directory_pagination' );
|
221 |
-
|
222 |
-
|
223 |
-
/**
|
224 |
-
* Member Directory Display
|
225 |
-
*
|
226 |
-
* @param $args
|
227 |
-
*/
|
228 |
-
function um_members_directory_display( $args ) {
|
229 |
-
extract( $args );
|
230 |
-
|
231 |
-
if ( isset( $args['search'] ) && $args['search'] == 1 && isset( $args['must_search'] ) && $args['must_search'] == 1 && ! isset( $_REQUEST['um_search'] ) ) {
|
232 |
-
return;
|
233 |
-
}
|
234 |
-
|
235 |
-
if ( um_members( 'no_users' ) ) { ?>
|
236 |
-
|
237 |
-
<div class="um-members-none">
|
238 |
-
<p><?php echo esc_html( $args['no_users'] ); ?></p>
|
239 |
-
</div>
|
240 |
-
|
241 |
-
<?php
|
242 |
-
|
243 |
-
}
|
244 |
-
|
245 |
-
$file = um_path . 'templates/members-grid.php';
|
246 |
-
$theme_file = get_stylesheet_directory() . '/ultimate-member/templates/members-grid.php';
|
247 |
-
|
248 |
-
if ( file_exists( $theme_file ) ) {
|
249 |
-
$file = $theme_file;
|
250 |
-
}
|
251 |
-
|
252 |
-
include $file;
|
253 |
-
|
254 |
-
}
|
255 |
-
add_action( 'um_members_directory_display', 'um_members_directory_display' );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/core/um-actions-profile.php
CHANGED
@@ -284,22 +284,30 @@ function um_user_edit_profile( $args ) {
|
|
284 |
if ( isset( $args['submitted'][ $key ] ) && is_string( $args['submitted'][ $key ] ) ) {
|
285 |
$stripslashes = stripslashes( $args['submitted'][ $key ] );
|
286 |
}
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
291 |
}
|
292 |
|
293 |
//validation of correct values from options in wp-admin
|
294 |
//the user cannot set invalid value in the hidden input at the page
|
295 |
-
if ( in_array( $array['type'], array( 'multiselect', 'checkbox', 'radio' ) )
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
|
301 |
-
|
302 |
-
|
|
|
|
|
303 |
}
|
304 |
|
305 |
if ( isset( $args['submitted'][ $key ] ) ) {
|
@@ -458,19 +466,20 @@ function um_user_edit_profile( $args ) {
|
|
458 |
* @title um_user_after_updating_profile
|
459 |
* @description After upgrade user's profile
|
460 |
* @input_vars
|
461 |
-
* [{"var":"$submitted","type":"array","desc":"Form data"}
|
|
|
462 |
* @change_log
|
463 |
* ["Since: 2.0"]
|
464 |
* @usage add_action( 'um_user_after_updating_profile', 'function_name', 10, 1 );
|
465 |
* @example
|
466 |
* <?php
|
467 |
-
* add_action( 'um_user_after_updating_profile', 'my_user_after_updating_profile'', 10,
|
468 |
-
* function my_user_after_updating_profile( $submitted ) {
|
469 |
* // your code here
|
470 |
* }
|
471 |
* ?>
|
472 |
*/
|
473 |
-
do_action( 'um_user_after_updating_profile', $to_update );
|
474 |
|
475 |
/**
|
476 |
* UM hook
|
@@ -666,16 +675,47 @@ function um_profile_header_cover_area( $args ) {
|
|
666 |
|
667 |
<?php if ( um_user( 'cover_photo' ) ) {
|
668 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
669 |
if ( UM()->mobile()->isMobile() ) {
|
670 |
-
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
}
|
675 |
-
|
676 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
677 |
}
|
678 |
|
|
|
|
|
679 |
} elseif ( $default_cover && $default_cover['url'] ) {
|
680 |
|
681 |
$default_cover = $default_cover['url'];
|
@@ -781,8 +821,22 @@ function um_profile_header( $args ) {
|
|
781 |
|
782 |
<div class="um-profile-photo" data-user_id="<?php echo esc_attr( um_profile_id() ); ?>">
|
783 |
|
784 |
-
<a href="<?php echo esc_url( um_user_profile_url() ); ?>" class="um-profile-photo-img"
|
785 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
786 |
|
787 |
<?php if ( empty( $disable_photo_uploader ) && empty( UM()->user()->cannot_edit ) ) {
|
788 |
|
284 |
if ( isset( $args['submitted'][ $key ] ) && is_string( $args['submitted'][ $key ] ) ) {
|
285 |
$stripslashes = stripslashes( $args['submitted'][ $key ] );
|
286 |
}
|
287 |
+
|
288 |
+
if ( in_array( $array['type'], array( 'select' ) ) ) {
|
289 |
+
if ( ! empty( $array['options'] ) && ! empty( $stripslashes ) && ! in_array( $stripslashes, array_map( 'trim', $array['options'] ) ) && ! $has_custom_source ) {
|
290 |
+
continue;
|
291 |
+
}
|
292 |
+
|
293 |
+
//update empty user meta
|
294 |
+
if ( ! isset( $args['submitted'][ $key ] ) || $args['submitted'][ $key ] == '' ) {
|
295 |
+
update_user_meta( um_user( 'ID' ), $key, '' );
|
296 |
+
}
|
297 |
}
|
298 |
|
299 |
//validation of correct values from options in wp-admin
|
300 |
//the user cannot set invalid value in the hidden input at the page
|
301 |
+
if ( in_array( $array['type'], array( 'multiselect', 'checkbox', 'radio' ) ) ) {
|
302 |
+
if ( ! empty( $args['submitted'][ $key ] ) && ! empty( $array['options'] ) ) {
|
303 |
+
$args['submitted'][ $key ] = array_map( 'stripslashes', array_map( 'trim', $args['submitted'][ $key ] ) );
|
304 |
+
$args['submitted'][ $key ] = array_intersect( $args['submitted'][ $key ], array_map( 'trim', $array['options'] ) );
|
305 |
+
}
|
306 |
|
307 |
+
// update empty user meta
|
308 |
+
if ( ! isset( $args['submitted'][ $key ] ) || $args['submitted'][ $key ] == '' ) {
|
309 |
+
update_user_meta( um_user( 'ID' ), $key, array() );
|
310 |
+
}
|
311 |
}
|
312 |
|
313 |
if ( isset( $args['submitted'][ $key ] ) ) {
|
466 |
* @title um_user_after_updating_profile
|
467 |
* @description After upgrade user's profile
|
468 |
* @input_vars
|
469 |
+
* [{"var":"$submitted","type":"array","desc":"Form data"},
|
470 |
+
* {"var":"$user_id","type":"int","desc":"User Id"}]
|
471 |
* @change_log
|
472 |
* ["Since: 2.0"]
|
473 |
* @usage add_action( 'um_user_after_updating_profile', 'function_name', 10, 1 );
|
474 |
* @example
|
475 |
* <?php
|
476 |
+
* add_action( 'um_user_after_updating_profile', 'my_user_after_updating_profile'', 10, 2 );
|
477 |
+
* function my_user_after_updating_profile( $submitted, $user_id ) {
|
478 |
* // your code here
|
479 |
* }
|
480 |
* ?>
|
481 |
*/
|
482 |
+
do_action( 'um_user_after_updating_profile', $to_update, $user_id );
|
483 |
|
484 |
/**
|
485 |
* UM hook
|
675 |
|
676 |
<?php if ( um_user( 'cover_photo' ) ) {
|
677 |
|
678 |
+
$get_cover_size = $args['coversize'];
|
679 |
+
|
680 |
+
if ( ! $get_cover_size || $get_cover_size == 'original' ) {
|
681 |
+
$size = null;
|
682 |
+
} else {
|
683 |
+
$size = $get_cover_size;
|
684 |
+
}
|
685 |
+
|
686 |
if ( UM()->mobile()->isMobile() ) {
|
687 |
+
|
688 |
+
// set for mobile width = 300 by default but can be changed via filter
|
689 |
+
if ( ! UM()->mobile()->isTablet() ) {
|
690 |
+
$size = 300;
|
691 |
}
|
692 |
+
|
693 |
+
/**
|
694 |
+
* UM hook
|
695 |
+
*
|
696 |
+
* @type filter
|
697 |
+
* @title um_mobile_cover_photo
|
698 |
+
* @description Add size for mobile device
|
699 |
+
* @input_vars
|
700 |
+
* [{"var":"$size","type":"int","desc":"Form's agrument - Cover Photo size"}]
|
701 |
+
* @change_log
|
702 |
+
* ["Since: 2.0"]
|
703 |
+
* @usage
|
704 |
+
* <?php add_filter( 'um_mobile_cover_photo', 'change_size', 10, 1 ); ?>
|
705 |
+
* @example
|
706 |
+
* <?php
|
707 |
+
* add_filter( 'um_mobile_cover_photo', 'um_change_cover_mobile_size', 10, 1 );
|
708 |
+
* function um_change_cover_mobile_size( $size ) {
|
709 |
+
* // your code here
|
710 |
+
* return $size;
|
711 |
+
* }
|
712 |
+
* ?>
|
713 |
+
*/
|
714 |
+
$size = apply_filters( 'um_mobile_cover_photo', $size );
|
715 |
}
|
716 |
|
717 |
+
echo um_user( 'cover_photo', $size );
|
718 |
+
|
719 |
} elseif ( $default_cover && $default_cover['url'] ) {
|
720 |
|
721 |
$default_cover = $default_cover['url'];
|
821 |
|
822 |
<div class="um-profile-photo" data-user_id="<?php echo esc_attr( um_profile_id() ); ?>">
|
823 |
|
824 |
+
<a href="<?php echo esc_url( um_user_profile_url() ); ?>" class="um-profile-photo-img" title="<?php echo esc_attr( um_user( 'display_name' ) ); ?>">
|
825 |
+
<?php if ( ! $default_size || $default_size == 'original' ) {
|
826 |
+
$profile_photo = UM()->uploader()->get_upload_base_url() . um_user( 'ID' ) . "/" . um_profile( 'profile_photo' );
|
827 |
+
|
828 |
+
$data = um_get_user_avatar_data( um_user( 'ID' ) );
|
829 |
+
echo $overlay . sprintf( '<img src="%s" class="%s" alt="%s" data-default="%s" onerror="%s" />',
|
830 |
+
esc_url( $profile_photo ),
|
831 |
+
esc_attr( $data['class'] ),
|
832 |
+
esc_attr( $data['alt'] ),
|
833 |
+
esc_attr( $data['default'] ),
|
834 |
+
'if ( ! this.getAttribute(\'data-load-error\') ){ this.setAttribute(\'data-load-error\', \'1\');this.setAttribute(\'src\', this.getAttribute(\'data-default\'));}'
|
835 |
+
);
|
836 |
+
} else {
|
837 |
+
echo $overlay . get_avatar( um_user( 'ID' ), $default_size );
|
838 |
+
} ?>
|
839 |
+
</a>
|
840 |
|
841 |
<?php if ( empty( $disable_photo_uploader ) && empty( UM()->user()->cannot_edit ) ) {
|
842 |
|
includes/core/um-actions-register.php
CHANGED
@@ -263,8 +263,9 @@ add_action( 'um_registration_complete', 'um_check_user_status', 100, 2 );
|
|
263 |
* @return bool|int|WP_Error
|
264 |
*/
|
265 |
function um_submit_form_register( $args ) {
|
266 |
-
if ( isset( UM()->form()->errors ) )
|
267 |
return false;
|
|
|
268 |
|
269 |
/**
|
270 |
* UM hook
|
@@ -291,11 +292,11 @@ function um_submit_form_register( $args ) {
|
|
291 |
|
292 |
extract( $args );
|
293 |
|
294 |
-
if (
|
295 |
$user_login = $username;
|
296 |
}
|
297 |
|
298 |
-
if ( ! empty( $first_name ) && ! empty( $last_name ) &&
|
299 |
|
300 |
if ( UM()->options()->get( 'permalink_base' ) == 'name' ) {
|
301 |
$user_login = rawurlencode( strtolower( str_replace( " ", ".", $first_name . " " . $last_name ) ) );
|
@@ -319,13 +320,13 @@ function um_submit_form_register( $args ) {
|
|
319 |
}
|
320 |
}
|
321 |
|
322 |
-
if (
|
323 |
$user_login = $user_email;
|
324 |
}
|
325 |
|
326 |
$unique_userID = UM()->query()->count_users() + 1;
|
327 |
|
328 |
-
if (
|
329 |
$user_login = 'user' . $unique_userID;
|
330 |
}
|
331 |
|
@@ -337,7 +338,7 @@ function um_submit_form_register( $args ) {
|
|
337 |
$user_password = UM()->validation()->generate( 8 );
|
338 |
}
|
339 |
|
340 |
-
if (
|
341 |
$site_url = @$_SERVER['SERVER_NAME'];
|
342 |
$user_email = 'nobody' . $unique_userID . '@' . $site_url;
|
343 |
/**
|
@@ -365,9 +366,9 @@ function um_submit_form_register( $args ) {
|
|
365 |
}
|
366 |
|
367 |
$credentials = array(
|
368 |
-
'user_login'
|
369 |
-
'user_password'
|
370 |
-
'user_email'
|
371 |
);
|
372 |
|
373 |
$args['submitted'] = array_merge( $args['submitted'], $credentials );
|
@@ -422,11 +423,12 @@ function um_submit_form_register( $args ) {
|
|
422 |
$user_role = apply_filters( 'um_registration_user_role', $user_role, $args );
|
423 |
|
424 |
$userdata = array(
|
425 |
-
'user_login'
|
426 |
-
'user_pass'
|
427 |
-
'user_email'
|
428 |
-
'role'
|
429 |
);
|
|
|
430 |
$user_id = wp_insert_user( $userdata );
|
431 |
|
432 |
/**
|
263 |
* @return bool|int|WP_Error
|
264 |
*/
|
265 |
function um_submit_form_register( $args ) {
|
266 |
+
if ( isset( UM()->form()->errors ) ) {
|
267 |
return false;
|
268 |
+
}
|
269 |
|
270 |
/**
|
271 |
* UM hook
|
292 |
|
293 |
extract( $args );
|
294 |
|
295 |
+
if ( ! empty( $username ) && empty( $user_login ) ) {
|
296 |
$user_login = $username;
|
297 |
}
|
298 |
|
299 |
+
if ( ! empty( $first_name ) && ! empty( $last_name ) && empty( $user_login ) ) {
|
300 |
|
301 |
if ( UM()->options()->get( 'permalink_base' ) == 'name' ) {
|
302 |
$user_login = rawurlencode( strtolower( str_replace( " ", ".", $first_name . " " . $last_name ) ) );
|
320 |
}
|
321 |
}
|
322 |
|
323 |
+
if ( empty( $user_login ) && ! empty( $user_email ) ) {
|
324 |
$user_login = $user_email;
|
325 |
}
|
326 |
|
327 |
$unique_userID = UM()->query()->count_users() + 1;
|
328 |
|
329 |
+
if ( empty( $user_login ) || strlen( $user_login ) > 30 && ! is_email( $user_login ) ) {
|
330 |
$user_login = 'user' . $unique_userID;
|
331 |
}
|
332 |
|
338 |
$user_password = UM()->validation()->generate( 8 );
|
339 |
}
|
340 |
|
341 |
+
if ( empty( $user_email ) ) {
|
342 |
$site_url = @$_SERVER['SERVER_NAME'];
|
343 |
$user_email = 'nobody' . $unique_userID . '@' . $site_url;
|
344 |
/**
|
366 |
}
|
367 |
|
368 |
$credentials = array(
|
369 |
+
'user_login' => $user_login,
|
370 |
+
'user_password' => $user_password,
|
371 |
+
'user_email' => trim( $user_email ),
|
372 |
);
|
373 |
|
374 |
$args['submitted'] = array_merge( $args['submitted'], $credentials );
|
423 |
$user_role = apply_filters( 'um_registration_user_role', $user_role, $args );
|
424 |
|
425 |
$userdata = array(
|
426 |
+
'user_login' => $user_login,
|
427 |
+
'user_pass' => $user_password,
|
428 |
+
'user_email' => $user_email,
|
429 |
+
'role' => $user_role,
|
430 |
);
|
431 |
+
|
432 |
$user_id = wp_insert_user( $userdata );
|
433 |
|
434 |
/**
|
includes/core/um-actions-wpadmin.php
CHANGED
@@ -7,8 +7,18 @@ if ( ! defined( 'ABSPATH' ) ) exit;
|
|
7 |
* Checks if user can access the backend
|
8 |
*/
|
9 |
function um_block_wpadmin_by_user_role() {
|
10 |
-
if ( is_admin() && ! defined( 'DOING_AJAX' )
|
11 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
}
|
13 |
}
|
14 |
add_action( 'init', 'um_block_wpadmin_by_user_role', 99 );
|
7 |
* Checks if user can access the backend
|
8 |
*/
|
9 |
function um_block_wpadmin_by_user_role() {
|
10 |
+
if ( is_admin() && ! defined( 'DOING_AJAX' ) ) {
|
11 |
+
$action = empty( $_REQUEST['action'] ) ? '' : $_REQUEST['action'];
|
12 |
+
|
13 |
+
// filter that it's not admin_post or admin_post_nopriv request
|
14 |
+
$url_attr = parse_url( UM()->permalinks()->get_current_url() );
|
15 |
+
if ( is_user_logged_in() && ! empty( $action ) && $url_attr['path'] == '/wp-admin/admin-post.php' ) {
|
16 |
+
return;
|
17 |
+
}
|
18 |
+
|
19 |
+
if ( um_user( 'ID' ) && ! um_user( 'can_access_wpadmin' ) && ! is_super_admin( um_user( 'ID' ) ) ) {
|
20 |
+
um_redirect_home();
|
21 |
+
}
|
22 |
}
|
23 |
}
|
24 |
add_action( 'init', 'um_block_wpadmin_by_user_role', 99 );
|
includes/core/um-filters-account.php
CHANGED
@@ -1,48 +1,6 @@
|
|
1 |
<?php if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
2 |
|
3 |
|
4 |
-
/**
|
5 |
-
* Account secure fields
|
6 |
-
* @param array $fields
|
7 |
-
* @param string $tab_key
|
8 |
-
* @return array
|
9 |
-
* @uses um_account_secure_fields
|
10 |
-
*/
|
11 |
-
function um_account_secure_fields( $fields, $tab_key ) {
|
12 |
-
/**
|
13 |
-
* UM hook
|
14 |
-
*
|
15 |
-
* @type filter
|
16 |
-
* @title um_account_secure_fields__enabled
|
17 |
-
* @description Active account secure fields
|
18 |
-
* @input_vars
|
19 |
-
* [{"var":"$enabled","type":"string","desc":"Enable secure account fields"}]
|
20 |
-
* @change_log
|
21 |
-
* ["Since: 2.0"]
|
22 |
-
* @usage
|
23 |
-
* <?php add_filter( 'um_account_secure_fields__enabled', 'function_name', 10, 1 ); ?>
|
24 |
-
* @example
|
25 |
-
* <?php
|
26 |
-
* add_filter( 'um_account_secure_fields__enabled', 'my_account_secure_fields', 10, 1 );
|
27 |
-
* function my_account_secure_fields( $enabled ) {
|
28 |
-
* // your code here
|
29 |
-
* return $enabled;
|
30 |
-
* }
|
31 |
-
* ?>
|
32 |
-
*/
|
33 |
-
$secure = apply_filters( 'um_account_secure_fields__enabled', true );
|
34 |
-
|
35 |
-
if( ! $secure ) return $fields;
|
36 |
-
|
37 |
-
if( isset( UM()->account()->register_fields ) && ! isset( UM()->account()->register_fields[ $tab_key ] ) ){
|
38 |
-
UM()->account()->register_fields[ $tab_key ] = $fields;
|
39 |
-
}
|
40 |
-
|
41 |
-
return $fields;
|
42 |
-
}
|
43 |
-
add_filter( 'um_account_secure_fields', 'um_account_secure_fields', 10, 2 );
|
44 |
-
|
45 |
-
|
46 |
/**
|
47 |
* Disables first and last name fields in account page
|
48 |
* @param array $fields
|
@@ -50,16 +8,18 @@ add_filter( 'um_account_secure_fields', 'um_account_secure_fields', 10, 2 );
|
|
50 |
* @uses um_get_field__first_name, um_get_field__last_name
|
51 |
*/
|
52 |
function um_account_disable_name_fields( $fields ){
|
53 |
-
if( ! UM()->options()->get(
|
|
|
|
|
54 |
|
55 |
-
if ( um_is_core_page(
|
56 |
$fields['disabled'] = 'disabled="disabled"';
|
57 |
}
|
58 |
|
59 |
return $fields;
|
60 |
}
|
61 |
-
add_filter(
|
62 |
-
add_filter(
|
63 |
|
64 |
|
65 |
/**
|
1 |
<?php if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
2 |
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
/**
|
5 |
* Disables first and last name fields in account page
|
6 |
* @param array $fields
|
8 |
* @uses um_get_field__first_name, um_get_field__last_name
|
9 |
*/
|
10 |
function um_account_disable_name_fields( $fields ){
|
11 |
+
if ( ! UM()->options()->get( 'account_name_disable' ) ) {
|
12 |
+
return $fields;
|
13 |
+
}
|
14 |
|
15 |
+
if ( um_is_core_page( 'account' ) ) {
|
16 |
$fields['disabled'] = 'disabled="disabled"';
|
17 |
}
|
18 |
|
19 |
return $fields;
|
20 |
}
|
21 |
+
add_filter( 'um_get_field__first_name', 'um_account_disable_name_fields', 10 ,1 );
|
22 |
+
add_filter( 'um_get_field__last_name', 'um_account_disable_name_fields', 10 ,1 );
|
23 |
|
24 |
|
25 |
/**
|
includes/core/um-filters-fields.php
CHANGED
@@ -96,6 +96,9 @@ add_filter( 'um_profile_field_filter_hook__vimeo_video', 'um_profile_field_filte
|
|
96 |
* @return string
|
97 |
*/
|
98 |
function um_profile_field_filter_hook__googlemap( $value, $data ) {
|
|
|
|
|
|
|
99 |
$value = '<div class="um-googlemap">
|
100 |
<iframe width="600" height="450" frameborder="0" style="border:0" src="https://maps.google.it/maps?q=' . urlencode( $value ) . '&output=embed"></iframe>
|
101 |
</div>';
|
@@ -114,6 +117,9 @@ add_filter( 'um_profile_field_filter_hook__googlemap', 'um_profile_field_filter_
|
|
114 |
*/
|
115 |
|
116 |
function um_profile_field_filter_hook__user_registered( $value, $data ) {
|
|
|
|
|
|
|
117 |
$value = strtotime($value);
|
118 |
$value = sprintf(__('Joined %s','ultimate-member'), date_i18n('F d, Y', $value) );
|
119 |
return $value;
|
@@ -130,6 +136,9 @@ add_filter( 'um_profile_field_filter_hook__user_registered', 'um_profile_field_f
|
|
130 |
* @return string
|
131 |
*/
|
132 |
function um_profile_field_filter_hook__last_login( $value, $data ) {
|
|
|
|
|
|
|
133 |
//$value = sprintf( __('Last login: %s','ultimate-member'), um_user_last_login( um_user('ID') ) );
|
134 |
$value = um_user_last_login( um_user( 'ID' ) );
|
135 |
return $value;
|
@@ -147,6 +156,9 @@ add_filter( 'um_profile_field_filter_hook___um_last_login', 'um_profile_field_fi
|
|
147 |
* @return mixed|string|void
|
148 |
*/
|
149 |
function um_profile_field_filter_hook__textarea( $value, $data ) {
|
|
|
|
|
|
|
150 |
if ( isset( $data['html'] ) && $data['html'] == 1 ) {
|
151 |
return $value;
|
152 |
}
|
@@ -187,10 +199,14 @@ add_filter( 'um_profile_field_filter_hook__textarea', 'um_profile_field_filter_h
|
|
187 |
* @return mixed|string
|
188 |
*/
|
189 |
function um_profile_field_filter_hook__time( $value, $data ) {
|
|
|
|
|
|
|
190 |
$value = UM()->datetime()->format( $value, $data['format'] );
|
191 |
|
192 |
-
$value = str_replace('am', 'a.m.', $value );
|
193 |
-
$value = str_replace('pm', 'p.m.', $value );
|
|
|
194 |
return $value;
|
195 |
}
|
196 |
add_filter( 'um_profile_field_filter_hook__time', 'um_profile_field_filter_hook__time', 99, 2 );
|
@@ -205,10 +221,14 @@ add_filter( 'um_profile_field_filter_hook__time', 'um_profile_field_filter_hook_
|
|
205 |
* @return string
|
206 |
*/
|
207 |
function um_profile_field_filter_hook__date( $value, $data ) {
|
|
|
|
|
|
|
208 |
if ( isset( $data['pretty_format'] ) && $data['pretty_format'] == 1 ) {
|
209 |
$value = UM()->datetime()->get_age( $value );
|
210 |
} else {
|
211 |
-
$
|
|
|
212 |
}
|
213 |
|
214 |
return $value;
|
@@ -224,6 +244,9 @@ add_filter( 'um_profile_field_filter_hook__date', 'um_profile_field_filter_hook_
|
|
224 |
* @return string
|
225 |
*/
|
226 |
function um_profile_field_filter_hook__file( $value, $data ) {
|
|
|
|
|
|
|
227 |
$file_type = wp_check_filetype( $value );
|
228 |
$uri = UM()->files()->get_download_link( UM()->fields()->set_id, $data['metakey'], um_user( 'ID' ) );
|
229 |
|
@@ -271,6 +294,9 @@ add_filter( 'um_profile_field_filter_hook__file', 'um_profile_field_filter_hook_
|
|
271 |
* @return string
|
272 |
*/
|
273 |
function um_profile_field_filter_hook__image( $value, $data ) {
|
|
|
|
|
|
|
274 |
$uri = UM()->files()->get_download_link( UM()->fields()->set_id, $data['metakey'], um_user( 'ID' ) );
|
275 |
$title = ( isset( $data['title'] ) ) ? $data['title'] : __( 'Untitled photo', 'ultimate-member' );
|
276 |
|
96 |
* @return string
|
97 |
*/
|
98 |
function um_profile_field_filter_hook__googlemap( $value, $data ) {
|
99 |
+
if ( ! $value ) {
|
100 |
+
return '';
|
101 |
+
}
|
102 |
$value = '<div class="um-googlemap">
|
103 |
<iframe width="600" height="450" frameborder="0" style="border:0" src="https://maps.google.it/maps?q=' . urlencode( $value ) . '&output=embed"></iframe>
|
104 |
</div>';
|
117 |
*/
|
118 |
|
119 |
function um_profile_field_filter_hook__user_registered( $value, $data ) {
|
120 |
+
if ( ! $value ) {
|
121 |
+
return '';
|
122 |
+
}
|
123 |
$value = strtotime($value);
|
124 |
$value = sprintf(__('Joined %s','ultimate-member'), date_i18n('F d, Y', $value) );
|
125 |
return $value;
|
136 |
* @return string
|
137 |
*/
|
138 |
function um_profile_field_filter_hook__last_login( $value, $data ) {
|
139 |
+
if ( ! $value ) {
|
140 |
+
return '';
|
141 |
+
}
|
142 |
//$value = sprintf( __('Last login: %s','ultimate-member'), um_user_last_login( um_user('ID') ) );
|
143 |
$value = um_user_last_login( um_user( 'ID' ) );
|
144 |
return $value;
|
156 |
* @return mixed|string|void
|
157 |
*/
|
158 |
function um_profile_field_filter_hook__textarea( $value, $data ) {
|
159 |
+
if ( ! $value ) {
|
160 |
+
return '';
|
161 |
+
}
|
162 |
if ( isset( $data['html'] ) && $data['html'] == 1 ) {
|
163 |
return $value;
|
164 |
}
|
199 |
* @return mixed|string
|
200 |
*/
|
201 |
function um_profile_field_filter_hook__time( $value, $data ) {
|
202 |
+
if ( ! $value ) {
|
203 |
+
return '';
|
204 |
+
}
|
205 |
$value = UM()->datetime()->format( $value, $data['format'] );
|
206 |
|
207 |
+
$value = str_replace( 'am', 'a.m.', $value );
|
208 |
+
$value = str_replace( 'pm', 'p.m.', $value );
|
209 |
+
|
210 |
return $value;
|
211 |
}
|
212 |
add_filter( 'um_profile_field_filter_hook__time', 'um_profile_field_filter_hook__time', 99, 2 );
|
221 |
* @return string
|
222 |
*/
|
223 |
function um_profile_field_filter_hook__date( $value, $data ) {
|
224 |
+
if ( ! $value ) {
|
225 |
+
return '';
|
226 |
+
}
|
227 |
if ( isset( $data['pretty_format'] ) && $data['pretty_format'] == 1 ) {
|
228 |
$value = UM()->datetime()->get_age( $value );
|
229 |
} else {
|
230 |
+
$format = empty( $data['format_custom'] ) ? $data['format'] : $data['format_custom'];
|
231 |
+
$value = date_i18n( $format, strtotime( $value ) );
|
232 |
}
|
233 |
|
234 |
return $value;
|
244 |
* @return string
|
245 |
*/
|
246 |
function um_profile_field_filter_hook__file( $value, $data ) {
|
247 |
+
if ( ! $value ) {
|
248 |
+
return '';
|
249 |
+
}
|
250 |
$file_type = wp_check_filetype( $value );
|
251 |
$uri = UM()->files()->get_download_link( UM()->fields()->set_id, $data['metakey'], um_user( 'ID' ) );
|
252 |
|
294 |
* @return string
|
295 |
*/
|
296 |
function um_profile_field_filter_hook__image( $value, $data ) {
|
297 |
+
if ( ! $value ) {
|
298 |
+
return '';
|
299 |
+
}
|
300 |
$uri = UM()->files()->get_download_link( UM()->fields()->set_id, $data['metakey'], um_user( 'ID' ) );
|
301 |
$title = ( isset( $data['title'] ) ) ? $data['title'] : __( 'Untitled photo', 'ultimate-member' );
|
302 |
|
includes/core/um-filters-members.php
CHANGED
@@ -1,35 +1,6 @@
|
|
1 |
<?php if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
2 |
|
3 |
|
4 |
-
/**
|
5 |
-
* WP API user search
|
6 |
-
*
|
7 |
-
* @param $query_args
|
8 |
-
* @param $args
|
9 |
-
*
|
10 |
-
* @return mixed
|
11 |
-
*/
|
12 |
-
function um_search_usernames_emails( $query_args, $args ) {
|
13 |
-
extract( $args );
|
14 |
-
|
15 |
-
$query = UM()->permalinks()->get_query_array();
|
16 |
-
$arr_columns = array();
|
17 |
-
|
18 |
-
foreach ( UM()->members()->core_search_fields as $key ) {
|
19 |
-
if ( ! empty( $query[ $key ] ) ) {
|
20 |
-
$arr_columns[] = $key;
|
21 |
-
$query_args['search'] = '*' . $query[ $key ] .'*';
|
22 |
-
}
|
23 |
-
}
|
24 |
-
|
25 |
-
if ( ! empty( $arr_columns ) )
|
26 |
-
$query_args['search_columns'] = $arr_columns;
|
27 |
-
|
28 |
-
return $query_args;
|
29 |
-
}
|
30 |
-
add_filter( 'um_prepare_user_query_args', 'um_search_usernames_emails', 51, 2 );
|
31 |
-
|
32 |
-
|
33 |
/**
|
34 |
* Remove users we do not need to show in directory
|
35 |
*
|
@@ -99,469 +70,4 @@ function um_remove_special_users_from_list( $query_args, $args ) {
|
|
99 |
|
100 |
return $query_args;
|
101 |
}
|
102 |
-
add_filter( 'um_prepare_user_query_args', 'um_remove_special_users_from_list', 99, 2 );
|
103 |
-
|
104 |
-
|
105 |
-
/**
|
106 |
-
* Adds search parameters
|
107 |
-
*
|
108 |
-
* @hooked 'um_prepare_user_query_args'
|
109 |
-
*
|
110 |
-
* @param $query_args
|
111 |
-
* @param $args
|
112 |
-
*
|
113 |
-
* @return mixed|void
|
114 |
-
*/
|
115 |
-
function um_add_search_to_query( $query_args, $args ) {
|
116 |
-
extract( $args );
|
117 |
-
|
118 |
-
if ( ! empty( $args['search_filters'] ) ) {
|
119 |
-
$_REQUEST['um_search'] = 1;
|
120 |
-
}
|
121 |
-
|
122 |
-
if ( isset( $_REQUEST['um_search'] ) ) {
|
123 |
-
|
124 |
-
$query = UM()->permalinks()->get_query_array();
|
125 |
-
|
126 |
-
if ( ! empty( $args['search_filters'] ) ) {
|
127 |
-
parse_str( $args['search_filters'], $search_filters );
|
128 |
-
if ( $search_filters && is_array( $search_filters ) ) {
|
129 |
-
$query = array_merge( $search_filters, $query );
|
130 |
-
}
|
131 |
-
}
|
132 |
-
|
133 |
-
// if searching
|
134 |
-
if ( isset( $query['search'] ) ) {
|
135 |
-
$query_args['search'] = '*' . um_filter_search( $query['search'] ) . '*';
|
136 |
-
unset( $query['search'] );
|
137 |
-
}
|
138 |
-
|
139 |
-
if ( $query && is_array( $query ) ) {
|
140 |
-
foreach ( $query as $field => $value ) {
|
141 |
-
|
142 |
-
if ( in_array( $field, array( 'members_page' ) ) ) continue;
|
143 |
-
|
144 |
-
$serialize_value = serialize( strval( $value ) );
|
145 |
-
|
146 |
-
if ( $value && $field != 'um_search' && $field != 'page_id' ) {
|
147 |
-
|
148 |
-
if ( strstr( $field, 'role_' ) )
|
149 |
-
$field = 'role';
|
150 |
-
|
151 |
-
if ( ! in_array( $field, UM()->members()->core_search_fields ) ) {
|
152 |
-
|
153 |
-
if ( 'role' == $field ) {
|
154 |
-
$query_args['role__in'] = trim( $value );
|
155 |
-
} else {
|
156 |
-
$filter_data = UM()->members()->prepare_filter( $field );
|
157 |
-
if ( $filter_data['type'] == 'select' ) {
|
158 |
-
$field_query = array(
|
159 |
-
array(
|
160 |
-
'key' => $field,
|
161 |
-
'value' => trim( $value ),
|
162 |
-
'compare' => '=',
|
163 |
-
),
|
164 |
-
'relation' => 'OR',
|
165 |
-
);
|
166 |
-
|
167 |
-
|
168 |
-
$types = apply_filters( 'um_search_field_types', array(
|
169 |
-
'multiselect',
|
170 |
-
'radio',
|
171 |
-
'checkbox'
|
172 |
-
) );
|
173 |
-
|
174 |
-
if ( in_array( $filter_data['attrs']['type'], $types ) ) {
|
175 |
-
|
176 |
-
$arr_meta_query = array(
|
177 |
-
array(
|
178 |
-
'key' => $field,
|
179 |
-
'value' => serialize( strval( trim( $value ) ) ),
|
180 |
-
'compare' => 'LIKE',
|
181 |
-
),
|
182 |
-
array(
|
183 |
-
'key' => $field,
|
184 |
-
'value' => '"' . trim( $value ) . '"',
|
185 |
-
'compare' => 'LIKE',
|
186 |
-
)
|
187 |
-
);
|
188 |
-
|
189 |
-
if( is_numeric( $value ) ){
|
190 |
-
|
191 |
-
$arr_meta_query[ ] = array(
|
192 |
-
'key' => $field,
|
193 |
-
'value' => serialize( intval( trim( $value ) ) ),
|
194 |
-
'compare' => 'LIKE',
|
195 |
-
);
|
196 |
-
|
197 |
-
}
|
198 |
-
|
199 |
-
$field_query = array_merge( $field_query, $arr_meta_query );
|
200 |
-
}
|
201 |
-
|
202 |
-
} else {
|
203 |
-
$field_query = array(
|
204 |
-
array(
|
205 |
-
'key' => $field,
|
206 |
-
'value' => trim( $value ),
|
207 |
-
'compare' => '=',
|
208 |
-
),
|
209 |
-
array(
|
210 |
-
'key' => $field,
|
211 |
-
'value' => trim( $value ),
|
212 |
-
'compare' => 'LIKE',
|
213 |
-
),
|
214 |
-
array(
|
215 |
-
'key' => $field,
|
216 |
-
'value' => trim( $serialize_value ),
|
217 |
-
'compare' => 'LIKE',
|
218 |
-
),
|
219 |
-
'relation' => 'OR',
|
220 |
-
);
|
221 |
-
}
|
222 |
-
|
223 |
-
/**
|
224 |
-
* UM hook
|
225 |
-
*
|
226 |
-
* @type filter
|
227 |
-
* @title um_query_args_{$field}__filter
|
228 |
-
* @description Change field's query for search at Members Directory
|
229 |
-
* @input_vars
|
230 |
-
* [{"var":"$field_query","type":"array","desc":"Field query"}]
|
231 |
-
* @change_log
|
232 |
-
* ["Since: 2.0"]
|
233 |
-
* @usage
|
234 |
-
* <?php add_filter( 'um_query_args_{$field}__filter', 'function_name', 10, 1 ); ?>
|
235 |
-
* @example
|
236 |
-
* <?php
|
237 |
-
* add_filter( 'um_query_args_{$field}__filter', 'my_query_args_filter', 10, 1 );
|
238 |
-
* function my_query_args_filter( $field_query ) {
|
239 |
-
* // your code here
|
240 |
-
* return $field_query;
|
241 |
-
* }
|
242 |
-
* ?>
|
243 |
-
*/
|
244 |
-
$field_query = apply_filters( "um_query_args_{$field}__filter", $field_query );
|
245 |
-
$query_args['meta_query'][] = $field_query;
|
246 |
-
}
|
247 |
-
|
248 |
-
}
|
249 |
-
|
250 |
-
}
|
251 |
-
|
252 |
-
}
|
253 |
-
}
|
254 |
-
|
255 |
-
}
|
256 |
-
|
257 |
-
/**
|
258 |
-
* UM hook
|
259 |
-
*
|
260 |
-
* @type filter
|
261 |
-
* @title um_query_args_filter
|
262 |
-
* @description Change query for search at Members Directory
|
263 |
-
* @input_vars
|
264 |
-
* [{"var":"$query_args","type":"array","desc":"Query Arguments"}]
|
265 |
-
* @change_log
|
266 |
-
* ["Since: 2.0"]
|
267 |
-
* @usage
|
268 |
-
* <?php add_filter( 'um_query_args_filter', 'function_name', 10, 1 ); ?>
|
269 |
-
* @example
|
270 |
-
* <?php
|
271 |
-
* add_filter( 'um_query_args_filter', 'my_query_args_filter', 10, 1 );
|
272 |
-
* function my_query_args_filter( $query_args ) {
|
273 |
-
* // your code here
|
274 |
-
* return $query_args;
|
275 |
-
* }
|
276 |
-
* ?>
|
277 |
-
*/
|
278 |
-
$query_args = apply_filters( 'um_query_args_filter', $query_args );
|
279 |
-
|
280 |
-
if ( isset( $query_args['meta_query'] ) && count( $query_args['meta_query'] ) == 1 )
|
281 |
-
unset( $query_args['meta_query'] );
|
282 |
-
|
283 |
-
return $query_args;
|
284 |
-
|
285 |
-
}
|
286 |
-
add_filter( 'um_prepare_user_query_args', 'um_add_search_to_query', 50, 2 );
|
287 |
-
|
288 |
-
|
289 |
-
/**
|
290 |
-
* Adds main parameters
|
291 |
-
*
|
292 |
-
* @param $query_args
|
293 |
-
* @param $args
|
294 |
-
*
|
295 |
-
* @return mixed
|
296 |
-
*/
|
297 |
-
function um_prepare_user_query_args( $query_args, $args ) {
|
298 |
-
extract( $args );
|
299 |
-
|
300 |
-
$query_args['fields'] = 'ID';
|
301 |
-
|
302 |
-
$query_args['number'] = 0;
|
303 |
-
|
304 |
-
$query_args['meta_query']['relation'] = 'AND';
|
305 |
-
|
306 |
-
// must have a profile photo
|
307 |
-
if ( $has_profile_photo == 1 ) {
|
308 |
-
if ( UM()->options()->get( 'use_gravatars' ) ) {
|
309 |
-
$query_args['meta_query'][] = array(
|
310 |
-
'relation' => 'OR',
|
311 |
-
array(
|
312 |
-
'key' => 'synced_profile_photo', // addons
|
313 |
-
'value' => '',
|
314 |
-
'compare' => '!='
|
315 |
-
),
|
316 |
-
array(
|
317 |
-
'key' => 'profile_photo', // from upload form
|
318 |
-
'value' => '',
|
319 |
-
'compare' => '!='
|
320 |
-
),
|
321 |
-
array(
|
322 |
-
'key' => 'synced_gravatar_hashed_id', // gravatar
|
323 |
-
'value' => '',
|
324 |
-
'compare' => '!='
|
325 |
-
)
|
326 |
-
|
327 |
-
);
|
328 |
-
} else {
|
329 |
-
$query_args['meta_query'][] = array(
|
330 |
-
'relation' => 'OR',
|
331 |
-
array(
|
332 |
-
'key' => 'synced_profile_photo', // addons
|
333 |
-
'value' => '',
|
334 |
-
'compare' => '!='
|
335 |
-
),
|
336 |
-
array(
|
337 |
-
'key' => 'profile_photo', // from upload form
|
338 |
-
'value' => '',
|
339 |
-
'compare' => '!='
|
340 |
-
)
|
341 |
-
);
|
342 |
-
}
|
343 |
-
}
|
344 |
-
|
345 |
-
// must have a cover photo
|
346 |
-
if ( $has_cover_photo == 1 ) {
|
347 |
-
$query_args['meta_query'][] = array(
|
348 |
-
'key' => 'cover_photo',
|
349 |
-
'value' => '',
|
350 |
-
'compare' => '!='
|
351 |
-
);
|
352 |
-
}
|
353 |
-
|
354 |
-
|
355 |
-
// show specific usernames
|
356 |
-
if ( isset( $show_these_users ) && $show_these_users && is_array( $show_these_users ) ) {
|
357 |
-
foreach ( $show_these_users as $username ) {
|
358 |
-
$users_array[] = username_exists( $username );
|
359 |
-
}
|
360 |
-
$query_args['include'] = $users_array;
|
361 |
-
}
|
362 |
-
|
363 |
-
// add roles to appear in directory
|
364 |
-
if ( ! empty( $roles ) ) {
|
365 |
-
//since WP4.4 use 'role__in' argument
|
366 |
-
$query_args['role__in'] = $roles;
|
367 |
-
}
|
368 |
-
|
369 |
-
// sort members by
|
370 |
-
$query_args['order'] = 'ASC';
|
371 |
-
|
372 |
-
if ( isset( $sortby ) ) {
|
373 |
-
|
374 |
-
if ( $sortby == 'other' && $sortby_custom ) {
|
375 |
-
|
376 |
-
$query_args['meta_key'] = $sortby_custom;
|
377 |
-
$query_args['orderby'] = 'meta_value, display_name';
|
378 |
-
|
379 |
-
} elseif ( 'display_name' == $sortby ) {
|
380 |
-
|
381 |
-
$display_name = UM()->options()->get( 'display_name' );
|
382 |
-
if ( $display_name == 'username' ) {
|
383 |
-
$query_args['orderby'] = 'user_login';
|
384 |
-
$order = 'ASC';
|
385 |
-
} else {
|
386 |
-
$query_args['meta_query'][] = array(
|
387 |
-
'relation' => 'OR',
|
388 |
-
'full_name' => array(
|
389 |
-
'key' => 'full_name',
|
390 |
-
'compare' => 'EXISTS'
|
391 |
-
),
|
392 |
-
array(
|
393 |
-
'key' => 'full_name',
|
394 |
-
'compare' => 'NOT EXISTS'
|
395 |
-
)
|
396 |
-
);
|
397 |
-
|
398 |
-
$query_args['orderby'] = 'full_name, display_name';
|
399 |
-
$order = 'ASC';
|
400 |
-
}
|
401 |
-
|
402 |
-
} elseif ( in_array( $sortby, array( 'last_name', 'first_name' ) ) ) {
|
403 |
-
|
404 |
-
$query_args['meta_key'] = $sortby;
|
405 |
-
$query_args['orderby'] = 'meta_value';
|
406 |
-
|
407 |
-
} else {
|
408 |
-
|
409 |
-
if ( strstr( $sortby, '_desc' ) ) {
|
410 |
-
$sortby = str_replace( '_desc', '', $sortby );
|
411 |
-
$order = 'DESC';
|
412 |
-
}
|
413 |
-
|
414 |
-
if ( strstr( $sortby, '_asc' ) ) {
|
415 |
-
$sortby = str_replace('_asc','',$sortby);
|
416 |
-
$order = 'ASC';
|
417 |
-
}
|
418 |
-
|
419 |
-
$query_args['orderby'] = $sortby;
|
420 |
-
|
421 |
-
}
|
422 |
-
|
423 |
-
if ( isset( $order ) ) {
|
424 |
-
$query_args['order'] = $order;
|
425 |
-
}
|
426 |
-
|
427 |
-
/**
|
428 |
-
* UM hook
|
429 |
-
*
|
430 |
-
* @type filter
|
431 |
-
* @title um_modify_sortby_parameter
|
432 |
-
* @description Change query sort by attributes for search at Members Directory
|
433 |
-
* @input_vars
|
434 |
-
* [{"var":"$query_args","type":"array","desc":"Query Arguments"},
|
435 |
-
* {"var":"$sortby","type":"string","desc":"Sort by"}]
|
436 |
-
* @change_log
|
437 |
-
* ["Since: 2.0"]
|
438 |
-
* @usage
|
439 |
-
* <?php add_filter( 'um_modify_sortby_parameter', 'function_name', 10, 2 ); ?>
|
440 |
-
* @example
|
441 |
-
* <?php
|
442 |
-
* add_filter( 'um_modify_sortby_parameter', 'my_modify_sortby_parameter', 10, 2 );
|
443 |
-
* function my_modify_sortby_parameter( $query_args, $sortby ) {
|
444 |
-
* // your code here
|
445 |
-
* return $query_args;
|
446 |
-
* }
|
447 |
-
* ?>
|
448 |
-
*/
|
449 |
-
$query_args = apply_filters( 'um_modify_sortby_parameter', $query_args, $sortby );
|
450 |
-
|
451 |
-
}
|
452 |
-
|
453 |
-
return $query_args;
|
454 |
-
}
|
455 |
-
add_filter( 'um_prepare_user_query_args', 'um_prepare_user_query_args', 10, 2 );
|
456 |
-
|
457 |
-
|
458 |
-
/**
|
459 |
-
* Sorting by last login date
|
460 |
-
*
|
461 |
-
* @param $query_args
|
462 |
-
* @param $sortby
|
463 |
-
*
|
464 |
-
* @return mixed
|
465 |
-
*/
|
466 |
-
function um_sortby_last_login( $query_args, $sortby ) {
|
467 |
-
if ( $sortby == 'last_login' ) {
|
468 |
-
$query_args['orderby'] = array( 'um_last_login' => 'DESC' );
|
469 |
-
$query_args['meta_query'][] = array(
|
470 |
-
'relation' => 'OR',
|
471 |
-
array(
|
472 |
-
'key' => '_um_last_login',
|
473 |
-
'compare' => 'EXISTS',
|
474 |
-
),
|
475 |
-
'um_last_login' => array(
|
476 |
-
'key' => '_um_last_login',
|
477 |
-
'compare' => 'NOT EXISTS',
|
478 |
-
),
|
479 |
-
);
|
480 |
-
}
|
481 |
-
return $query_args;
|
482 |
-
}
|
483 |
-
add_filter( 'um_modify_sortby_parameter', 'um_sortby_last_login', 100, 2 );
|
484 |
-
|
485 |
-
|
486 |
-
/**
|
487 |
-
* Sorting random
|
488 |
-
*
|
489 |
-
* @param $query
|
490 |
-
*
|
491 |
-
* @return mixed
|
492 |
-
*/
|
493 |
-
function um_modify_sortby_randomly( $query ) {
|
494 |
-
|
495 |
-
if( 'random' == $query->query_vars["orderby"] ) {
|
496 |
-
|
497 |
-
if( um_is_session_started() === false ){
|
498 |
-
@session_start();
|
499 |
-
}
|
500 |
-
|
501 |
-
// Reset seed on load of initial
|
502 |
-
if( ! isset( $_REQUEST['members_page'] ) || $_REQUEST['members_page'] == 0 || $_REQUEST['members_page'] == 1 ) {
|
503 |
-
if( isset( $_SESSION['seed'] ) ) {
|
504 |
-
unset( $_SESSION['seed'] );
|
505 |
-
}
|
506 |
-
}
|
507 |
-
|
508 |
-
// Get seed from session variable if it exists
|
509 |
-
$seed = false;
|
510 |
-
if( isset( $_SESSION['seed'] ) ) {
|
511 |
-
$seed = $_SESSION['seed'];
|
512 |
-
}
|
513 |
-
|
514 |
-
// Set new seed if none exists
|
515 |
-
if ( ! $seed ) {
|
516 |
-
$seed = rand();
|
517 |
-
$_SESSION['seed'] = $seed;
|
518 |
-
}
|
519 |
-
|
520 |
-
|
521 |
-
$query->query_orderby = 'ORDER by RAND('. $seed.')';
|
522 |
-
}
|
523 |
-
|
524 |
-
return $query;
|
525 |
-
}
|
526 |
-
add_filter( 'pre_user_query','um_modify_sortby_randomly' );
|
527 |
-
|
528 |
-
|
529 |
-
/**
|
530 |
-
* Hook in the member results array
|
531 |
-
*
|
532 |
-
* @param $result
|
533 |
-
*
|
534 |
-
* @return mixed
|
535 |
-
*/
|
536 |
-
function um_prepare_user_results_array( $result ) {
|
537 |
-
if ( empty( $result['users_per_page'] ) ) {
|
538 |
-
$result['no_users'] = 1;
|
539 |
-
} else {
|
540 |
-
$result['no_users'] = 0;
|
541 |
-
}
|
542 |
-
|
543 |
-
return $result;
|
544 |
-
}
|
545 |
-
add_filter( 'um_prepare_user_results_array', 'um_prepare_user_results_array', 50, 2 );
|
546 |
-
|
547 |
-
|
548 |
-
/**
|
549 |
-
* Retrieves search filter options from a callback
|
550 |
-
*
|
551 |
-
* @param $atts array
|
552 |
-
* @return array
|
553 |
-
*/
|
554 |
-
function um_search_select_fields( $atts ) {
|
555 |
-
|
556 |
-
if( isset( $atts['custom_dropdown_options_source'] ) && ! empty( $atts['custom_dropdown_options_source'] ) ){
|
557 |
-
$atts['custom'] = true;
|
558 |
-
$atts['options'] = UM()->fields()->get_options_from_callback( $atts, $atts['type'] );
|
559 |
-
}
|
560 |
-
|
561 |
-
if( isset( $atts['label'] ) ){
|
562 |
-
$atts['label'] = strip_tags( $atts['label'] );
|
563 |
-
}
|
564 |
-
|
565 |
-
return $atts;
|
566 |
-
}
|
567 |
-
add_filter( 'um_search_select_fields', 'um_search_select_fields' );
|
1 |
<?php if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
2 |
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
/**
|
5 |
* Remove users we do not need to show in directory
|
6 |
*
|
70 |
|
71 |
return $query_args;
|
72 |
}
|
73 |
+
//add_filter( 'um_prepare_user_query_args', 'um_remove_special_users_from_list', 99, 2 );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
includes/core/um-filters-profile.php
CHANGED
@@ -28,9 +28,9 @@ function um_dynamic_user_profile_pagetitle( $title, $sep = '' ) {
|
|
28 |
|
29 |
return $title;
|
30 |
}
|
31 |
-
add_filter('the_seo_framework_pro_add_title', 'um_dynamic_user_profile_pagetitle', 100000, 2 );
|
32 |
-
add_filter('wp_title', 'um_dynamic_user_profile_pagetitle', 100000, 2 );
|
33 |
-
add_filter('pre_get_document_title', 'um_dynamic_user_profile_pagetitle', 100000, 2 );
|
34 |
|
35 |
|
36 |
/**
|
@@ -46,7 +46,7 @@ function um_dynamic_user_profile_title( $title, $id = '' ) {
|
|
46 |
return $title;
|
47 |
}
|
48 |
|
49 |
-
if ( um_is_core_page('user') ) {
|
50 |
if ( $id == UM()->config()->permalinks['user'] && in_the_loop() ) {
|
51 |
if ( um_get_requested_user() ) {
|
52 |
$title = um_get_display_name( um_get_requested_user() );
|
@@ -68,38 +68,40 @@ add_filter( 'the_title', 'um_dynamic_user_profile_title', 100000, 2 );
|
|
68 |
/**
|
69 |
* Add cover photo label of file size limit
|
70 |
*
|
71 |
-
* @param $
|
72 |
*
|
73 |
-
* @return
|
74 |
*/
|
75 |
-
function um_change_profile_cover_photo_label( $
|
76 |
-
$max_size =
|
77 |
-
|
|
|
78 |
|
79 |
-
|
80 |
-
|
81 |
-
}else{
|
82 |
-
$args['cover_photo']['upload_text'] .= '<small class=\'um-max-filesize\'>( '.__('max','ultimate-member').': <span>'.$file_size.$unit.'</span> )</small>';
|
83 |
}
|
84 |
-
return $args;
|
85 |
}
|
|
|
|
|
86 |
add_filter( 'um_predefined_fields_hook', 'um_change_profile_cover_photo_label', 10, 1 );
|
87 |
|
88 |
|
89 |
/**
|
90 |
* Add profile photo label of file size limit
|
91 |
*
|
92 |
-
* @param $
|
93 |
*
|
94 |
-
* @return
|
95 |
*/
|
96 |
-
function um_change_profile_photo_label( $
|
97 |
-
$max_size =
|
98 |
-
|
|
|
99 |
|
100 |
-
|
101 |
-
|
|
|
102 |
}
|
103 |
-
return $
|
104 |
}
|
105 |
add_filter( 'um_predefined_fields_hook', 'um_change_profile_photo_label', 10, 1 );
|
28 |
|
29 |
return $title;
|
30 |
}
|
31 |
+
add_filter( 'the_seo_framework_pro_add_title', 'um_dynamic_user_profile_pagetitle', 100000, 2 );
|
32 |
+
add_filter( 'wp_title', 'um_dynamic_user_profile_pagetitle', 100000, 2 );
|
33 |
+
add_filter( 'pre_get_document_title', 'um_dynamic_user_profile_pagetitle', 100000, 2 );
|
34 |
|
35 |
|
36 |
/**
|
46 |
return $title;
|
47 |
}
|
48 |
|
49 |
+
if ( um_is_core_page( 'user' ) ) {
|
50 |
if ( $id == UM()->config()->permalinks['user'] && in_the_loop() ) {
|
51 |
if ( um_get_requested_user() ) {
|
52 |
$title = um_get_display_name( um_get_requested_user() );
|
68 |
/**
|
69 |
* Add cover photo label of file size limit
|
70 |
*
|
71 |
+
* @param array $fields Predefined fields
|
72 |
*
|
73 |
+
* @return array
|
74 |
*/
|
75 |
+
function um_change_profile_cover_photo_label( $fields ) {
|
76 |
+
$max_size = UM()->files()->format_bytes( $fields['cover_photo']['max_size'] );
|
77 |
+
if ( ! empty( $max_size ) ) {
|
78 |
+
list( $file_size, $unit ) = explode( ' ', $max_size );
|
79 |
|
80 |
+
if ( $file_size < 999999999 ) {
|
81 |
+
$fields['cover_photo']['upload_text'] .= '<small class="um-max-filesize">( ' . __( 'max', 'ultimate-member' ) . ': <span>' . $file_size . $unit . '</span> )</small>';
|
|
|
|
|
82 |
}
|
|
|
83 |
}
|
84 |
+
return $fields;
|
85 |
+
}
|
86 |
add_filter( 'um_predefined_fields_hook', 'um_change_profile_cover_photo_label', 10, 1 );
|
87 |
|
88 |
|
89 |
/**
|
90 |
* Add profile photo label of file size limit
|
91 |
*
|
92 |
+
* @param array $fields Predefined fields
|
93 |
*
|
94 |
+
* @return array
|
95 |
*/
|
96 |
+
function um_change_profile_photo_label( $fields ) {
|
97 |
+
$max_size = UM()->files()->format_bytes( $fields['profile_photo']['max_size'] );
|
98 |
+
if ( ! empty( $max_size ) ) {
|
99 |
+
list( $file_size, $unit ) = explode( ' ', $max_size );
|
100 |
|
101 |
+
if ( $file_size < 999999999 ) {
|
102 |
+
$fields['profile_photo']['upload_text'] .= '<small class="um-max-filesize">( ' . __( 'max', 'ultimate-member' ) . ': <span>' . $file_size . $unit . '</span> )</small>';
|
103 |
+
}
|
104 |
}
|
105 |
+
return $fields;
|
106 |
}
|
107 |
add_filter( 'um_predefined_fields_hook', 'um_change_profile_photo_label', 10, 1 );
|
includes/core/um-filters-user.php
CHANGED
@@ -4,16 +4,17 @@
|
|
4 |
/**
|
5 |
* Main admin user actions
|
6 |
*
|
7 |
-
* @param $actions
|
|
|
8 |
*
|
9 |
* @return null
|
10 |
*/
|
11 |
-
function um_admin_user_actions_hook( $actions ) {
|
12 |
$actions = null;
|
13 |
|
14 |
-
um_fetch_user(
|
15 |
|
16 |
-
//if ( UM()->roles()->um_current_user_can( 'edit',
|
17 |
if ( current_user_can( 'manage_options' ) ) {
|
18 |
|
19 |
if ( um_user( 'account_status' ) == 'awaiting_admin_review' ) {
|
@@ -43,7 +44,7 @@ function um_admin_user_actions_hook( $actions ) {
|
|
43 |
|
44 |
}
|
45 |
|
46 |
-
if ( UM()->roles()->um_current_user_can( 'delete',
|
47 |
$actions['um_delete'] = array( 'label' => __( 'Delete this user', 'ultimate-member' ) );
|
48 |
}
|
49 |
|
@@ -53,7 +54,7 @@ function um_admin_user_actions_hook( $actions ) {
|
|
53 |
|
54 |
return $actions;
|
55 |
}
|
56 |
-
add_filter( 'um_admin_user_actions_hook', 'um_admin_user_actions_hook',
|
57 |
|
58 |
|
59 |
/**
|
4 |
/**
|
5 |
* Main admin user actions
|
6 |
*
|
7 |
+
* @param array $actions
|
8 |
+
* @param int $user_id
|
9 |
*
|
10 |
* @return null
|
11 |
*/
|
12 |
+
function um_admin_user_actions_hook( $actions, $user_id ) {
|
13 |
$actions = null;
|
14 |
|
15 |
+
um_fetch_user( $user_id );
|
16 |
|
17 |
+
//if ( UM()->roles()->um_current_user_can( 'edit', $user_id ) ) {
|
18 |
if ( current_user_can( 'manage_options' ) ) {
|
19 |
|
20 |
if ( um_user( 'account_status' ) == 'awaiting_admin_review' ) {
|
44 |
|
45 |
}
|
46 |
|
47 |
+
if ( UM()->roles()->um_current_user_can( 'delete', $user_id ) ) {
|
48 |
$actions['um_delete'] = array( 'label' => __( 'Delete this user', 'ultimate-member' ) );
|
49 |
}
|
50 |
|
54 |
|
55 |
return $actions;
|
56 |
}
|
57 |
+
add_filter( 'um_admin_user_actions_hook', 'um_admin_user_actions_hook', 10, 2 );
|
58 |
|
59 |
|
60 |
/**
|
includes/um-deprecated-functions.php
CHANGED
@@ -21,7 +21,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
21 |
* @param string $replacement
|
22 |
*/
|
23 |
function um_deprecated_function( $function, $version, $replacement = null ) {
|
24 |
-
if ( is_ajax() ) {
|
25 |
do_action( 'deprecated_function_run', $function, $replacement, $version );
|
26 |
$log_string = "The {$function} function is deprecated since version {$version}.";
|
27 |
$log_string .= $replacement ? " Replace with {$replacement}." : '';
|
@@ -417,4 +417,159 @@ function um_time_diff( $time1, $time2 ) {
|
|
417 |
//um_deprecated_function( 'um_time_diff', '2.0.30', 'UM()->datetime()->time_diff' );
|
418 |
|
419 |
return UM()->datetime()->time_diff( $time1, $time2 );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
420 |
}
|
21 |
* @param string $replacement
|
22 |
*/
|
23 |
function um_deprecated_function( $function, $version, $replacement = null ) {
|
24 |
+
if ( UM()->is_ajax() ) {
|
25 |
do_action( 'deprecated_function_run', $function, $replacement, $version );
|
26 |
$log_string = "The {$function} function is deprecated since version {$version}.";
|
27 |
$log_string .= $replacement ? " Replace with {$replacement}." : '';
|
417 |
//um_deprecated_function( 'um_time_diff', '2.0.30', 'UM()->datetime()->time_diff' );
|
418 |
|
419 |
return UM()->datetime()->time_diff( $time1, $time2 );
|
420 |
+
}
|
421 |
+
|
422 |
+
|
423 |
+
/**
|
424 |
+
* Get members to show in directory
|
425 |
+
*
|
426 |
+
* @deprecated 2.1.0
|
427 |
+
*
|
428 |
+
*
|
429 |
+
* @param $argument
|
430 |
+
*
|
431 |
+
* @return mixed
|
432 |
+
*/
|
433 |
+
function um_members( $argument ) {
|
434 |
+
//um_deprecated_function( 'um_members', '2.1.0', 'UM()->member_directory()' );
|
435 |
+
|
436 |
+
$result = null;
|
437 |
+
if ( isset( UM()->members()->results[ $argument ] ) ) {
|
438 |
+
$result = UM()->members()->results[ $argument ];
|
439 |
+
}
|
440 |
+
return $result;
|
441 |
+
}
|
442 |
+
|
443 |
+
|
444 |
+
/**
|
445 |
+
* Returns the ultimate member search form
|
446 |
+
*
|
447 |
+
* @deprecated 2.1.0
|
448 |
+
*
|
449 |
+
* @return string
|
450 |
+
*/
|
451 |
+
function um_get_search_form() {
|
452 |
+
//um_deprecated_function( 'um_get_search_form', '2.1.0', 'do_shortcode( \'[ultimatemember_searchform]\' )' );
|
453 |
+
|
454 |
+
return do_shortcode( '[ultimatemember_searchform]' );
|
455 |
+
}
|
456 |
+
|
457 |
+
|
458 |
+
/**
|
459 |
+
* Display the search form.
|
460 |
+
*
|
461 |
+
* @deprecated 2.1.0
|
462 |
+
*/
|
463 |
+
function um_search_form() {
|
464 |
+
//um_deprecated_function( 'um_search_form', '2.1.0', 'echo do_shortcode( \'[ultimatemember_searchform]\' )' );
|
465 |
+
|
466 |
+
echo um_get_search_form();
|
467 |
+
}
|
468 |
+
|
469 |
+
|
470 |
+
/**
|
471 |
+
* Filters the search query.
|
472 |
+
*
|
473 |
+
* @deprecated 2.1.0
|
474 |
+
*
|
475 |
+
* @param string $search
|
476 |
+
*
|
477 |
+
* @return string
|
478 |
+
*/
|
479 |
+
function um_filter_search( $search ) {
|
480 |
+
$search = trim( strip_tags( $search ) );
|
481 |
+
$search = preg_replace( '/[^a-z \.\@\_\-]+/i', '', $search );
|
482 |
+
|
483 |
+
return $search;
|
484 |
+
}
|
485 |
+
|
486 |
+
|
487 |
+
/**
|
488 |
+
* Returns the user search query
|
489 |
+
*
|
490 |
+
* @deprecated 2.1.0
|
491 |
+
*
|
492 |
+
* @return string
|
493 |
+
*/
|
494 |
+
function um_get_search_query() {
|
495 |
+
$query = UM()->permalinks()->get_query_array();
|
496 |
+
$search = isset( $query['search'] ) ? $query['search'] : '';
|
497 |
+
|
498 |
+
return um_filter_search( $search );
|
499 |
+
}
|
500 |
+
|
501 |
+
|
502 |
+
/**
|
503 |
+
* Check value of queried search in text input
|
504 |
+
*
|
505 |
+
* @deprecated 2.1.0
|
506 |
+
*
|
507 |
+
* @param $filter
|
508 |
+
* @param bool $echo
|
509 |
+
*
|
510 |
+
* @return mixed|string
|
511 |
+
*/
|
512 |
+
function um_queried_search_value( $filter, $echo = true ) {
|
513 |
+
$value = '';
|
514 |
+
if (isset( $_REQUEST['um_search'] )) {
|
515 |
+
$query = UM()->permalinks()->get_query_array();
|
516 |
+
if (isset( $query[$filter] ) && $query[$filter] != '') {
|
517 |
+
$value = stripslashes_deep( $query[$filter] );
|
518 |
+
}
|
519 |
+
}
|
520 |
+
|
521 |
+
if ($echo) {
|
522 |
+
echo $value;
|
523 |
+
|
524 |
+
return '';
|
525 |
+
} else {
|
526 |
+
return $value;
|
527 |
+
}
|
528 |
+
|
529 |
+
}
|
530 |
+
|
531 |
+
|
532 |
+
/**
|
533 |
+
* Check whether item in dropdown is selected in query-url
|
534 |
+
*
|
535 |
+
* @deprecated 2.1.0
|
536 |
+
*
|
537 |
+
* @param $filter
|
538 |
+
* @param $val
|
539 |
+
*/
|
540 |
+
function um_select_if_in_query_params( $filter, $val ) {
|
541 |
+
$selected = false;
|
542 |
+
|
543 |
+
if (isset( $_REQUEST['um_search'] )) {
|
544 |
+
$query = UM()->permalinks()->get_query_array();
|
545 |
+
|
546 |
+
if (isset( $query[$filter] ) && $val == $query[$filter])
|
547 |
+
$selected = true;
|
548 |
+
|
549 |
+
/**
|
550 |
+
* UM hook
|
551 |
+
*
|
552 |
+
* @type filter
|
553 |
+
* @title um_selected_if_in_query_params
|
554 |
+
* @description Make selected or unselected from query attribute
|
555 |
+
* @input_vars
|
556 |
+
* [{"var":"$selected","type":"bool","desc":"Selected or not"},
|
557 |
+
* {"var":"$filter","type":"string","desc":"Check by this filter in query"},
|
558 |
+
* {"var":"$val","type":"string","desc":"Field Value"}]
|
559 |
+
* @change_log
|
560 |
+
* ["Since: 2.0"]
|
561 |
+
* @usage add_filter( 'um_selected_if_in_query_params', 'function_name', 10, 3 );
|
562 |
+
* @example
|
563 |
+
* <?php
|
564 |
+
* add_filter( 'um_selected_if_in_query_params', 'my_selected_if_in_query_params', 10, 3 );
|
565 |
+
* function my_selected_if_in_query_params( $selected, $filter, $val ) {
|
566 |
+
* // your code here
|
567 |
+
* return $selected;
|
568 |
+
* }
|
569 |
+
* ?>
|
570 |
+
*/
|
571 |
+
$selected = apply_filters( 'um_selected_if_in_query_params', $selected, $filter, $val );
|
572 |
+
}
|
573 |
+
|
574 |
+
echo $selected ? 'selected="selected"' : '';
|
575 |
}
|
includes/um-short-functions.php
CHANGED
@@ -1141,78 +1141,6 @@ function um_is_core_post( $post, $core_page ) {
|
|
1141 |
}
|
1142 |
|
1143 |
|
1144 |
-
/**
|
1145 |
-
* Check value of queried search in text input
|
1146 |
-
*
|
1147 |
-
* @param $filter
|
1148 |
-
* @param bool $echo
|
1149 |
-
*
|
1150 |
-
* @return mixed|string
|
1151 |
-
*/
|
1152 |
-
function um_queried_search_value( $filter, $echo = true ) {
|
1153 |
-
$value = '';
|
1154 |
-
if (isset( $_REQUEST['um_search'] )) {
|
1155 |
-
$query = UM()->permalinks()->get_query_array();
|
1156 |
-
if (isset( $query[$filter] ) && $query[$filter] != '') {
|
1157 |
-
$value = stripslashes_deep( $query[$filter] );
|
1158 |
-
}
|
1159 |
-
}
|
1160 |
-
|
1161 |
-
if ($echo) {
|
1162 |
-
echo $value;
|
1163 |
-
|
1164 |
-
return '';
|
1165 |
-
} else {
|
1166 |
-
return $value;
|
1167 |
-
}
|
1168 |
-
|
1169 |
-
}
|
1170 |
-
|
1171 |
-
|
1172 |
-
/**
|
1173 |
-
* Check whether item in dropdown is selected in query-url
|
1174 |
-
*
|
1175 |
-
* @param $filter
|
1176 |
-
* @param $val
|
1177 |
-
*/
|
1178 |
-
function um_select_if_in_query_params( $filter, $val ) {
|
1179 |
-
$selected = false;
|
1180 |
-
|
1181 |
-
if (isset( $_REQUEST['um_search'] )) {
|
1182 |
-
$query = UM()->permalinks()->get_query_array();
|
1183 |
-
|
1184 |
-
if (isset( $query[$filter] ) && $val == $query[$filter])
|
1185 |
-
$selected = true;
|
1186 |
-
|
1187 |
-
/**
|
1188 |
-
* UM hook
|
1189 |
-
*
|
1190 |
-
* @type filter
|
1191 |
-
* @title um_selected_if_in_query_params
|
1192 |
-
* @description Make selected or unselected from query attribute
|
1193 |
-
* @input_vars
|
1194 |
-
* [{"var":"$selected","type":"bool","desc":"Selected or not"},
|
1195 |
-
* {"var":"$filter","type":"string","desc":"Check by this filter in query"},
|
1196 |
-
* {"var":"$val","type":"string","desc":"Field Value"}]
|
1197 |
-
* @change_log
|
1198 |
-
* ["Since: 2.0"]
|
1199 |
-
* @usage add_filter( 'um_selected_if_in_query_params', 'function_name', 10, 3 );
|
1200 |
-
* @example
|
1201 |
-
* <?php
|
1202 |
-
* add_filter( 'um_selected_if_in_query_params', 'my_selected_if_in_query_params', 10, 3 );
|
1203 |
-
* function my_selected_if_in_query_params( $selected, $filter, $val ) {
|
1204 |
-
* // your code here
|
1205 |
-
* return $selected;
|
1206 |
-
* }
|
1207 |
-
* ?>
|
1208 |
-
*/
|
1209 |
-
$selected = apply_filters( 'um_selected_if_in_query_params', $selected, $filter, $val );
|
1210 |
-
}
|
1211 |
-
|
1212 |
-
echo $selected ? 'selected="selected"' : '';
|
1213 |
-
}
|
1214 |
-
|
1215 |
-
|
1216 |
/**
|
1217 |
* Get styling defaults
|
1218 |
*
|
@@ -1252,7 +1180,7 @@ function um_styling_defaults( $mode ) {
|
|
1252 |
function um_get_metadefault( $id ) {
|
1253 |
$core_form_meta_all = UM()->config()->core_form_meta_all;
|
1254 |
|
1255 |
-
return isset( $core_form_meta_all['_um_' . $id] ) ? $core_form_meta_all['_um_' . $id] : '';
|
1256 |
}
|
1257 |
|
1258 |
|
@@ -1285,22 +1213,6 @@ function um_get_display_name( $user_id ) {
|
|
1285 |
}
|
1286 |
|
1287 |
|
1288 |
-
/**
|
1289 |
-
* Get members to show in directory
|
1290 |
-
*
|
1291 |
-
* @param $argument
|
1292 |
-
*
|
1293 |
-
* @return mixed
|
1294 |
-
*/
|
1295 |
-
function um_members( $argument ) {
|
1296 |
-
$result = null;
|
1297 |
-
if ( isset( UM()->members()->results[ $argument ] ) ) {
|
1298 |
-
$result = UM()->members()->results[ $argument ];
|
1299 |
-
}
|
1300 |
-
return $result;
|
1301 |
-
}
|
1302 |
-
|
1303 |
-
|
1304 |
/**
|
1305 |
* Clears the user data. You need to fetch a user manually after using this function.
|
1306 |
*
|
@@ -2014,10 +1926,10 @@ function um_get_user_avatar_data( $user_id = '', $size = '96' ) {
|
|
2014 |
}
|
2015 |
|
2016 |
$data = array(
|
2017 |
-
'user_id'
|
2018 |
-
'default'
|
2019 |
-
'class'
|
2020 |
-
'size'
|
2021 |
);
|
2022 |
|
2023 |
if ( $profile_photo = um_profile( 'profile_photo' ) ) {
|
@@ -2472,15 +2384,18 @@ function um_user( $data, $attrs = null ) {
|
|
2472 |
|
2473 |
$alt = um_profile( 'nickname' );
|
2474 |
|
2475 |
-
|
2476 |
-
break;
|
2477 |
|
|
|
|
|
2478 |
|
2479 |
-
|
2480 |
|
2481 |
-
|
2482 |
|
2483 |
-
|
|
|
|
|
2484 |
|
2485 |
break;
|
2486 |
|
@@ -2560,53 +2475,6 @@ function um_force_utf8_string( $value ) {
|
|
2560 |
}
|
2561 |
|
2562 |
|
2563 |
-
/**
|
2564 |
-
* Filters the search query.
|
2565 |
-
*
|
2566 |
-
* @param string $search
|
2567 |
-
*
|
2568 |
-
* @return string
|
2569 |
-
*/
|
2570 |
-
function um_filter_search( $search ) {
|
2571 |
-
$search = trim( strip_tags( $search ) );
|
2572 |
-
$search = preg_replace( '/[^a-z \.\@\_\-]+/i', '', $search );
|
2573 |
-
|
2574 |
-
return $search;
|
2575 |
-
}
|
2576 |
-
|
2577 |
-
|
2578 |
-
/**
|
2579 |
-
* Returns the user search query
|
2580 |
-
*
|
2581 |
-
* @return string
|
2582 |
-
*/
|
2583 |
-
function um_get_search_query() {
|
2584 |
-
$query = UM()->permalinks()->get_query_array();
|
2585 |
-
$search = isset( $query['search'] ) ? $query['search'] : '';
|
2586 |
-
|
2587 |
-
return um_filter_search( $search );
|
2588 |
-
}
|
2589 |
-
|
2590 |
-
|
2591 |
-
/**
|
2592 |
-
* Returns the ultimate member search form
|
2593 |
-
*
|
2594 |
-
* @return string
|
2595 |
-
*/
|
2596 |
-
function um_get_search_form() {
|
2597 |
-
return do_shortcode( '[ultimatemember_searchform]' );
|
2598 |
-
}
|
2599 |
-
|
2600 |
-
|
2601 |
-
/**
|
2602 |
-
* Display the search form.
|
2603 |
-
*
|
2604 |
-
*/
|
2605 |
-
function um_search_form() {
|
2606 |
-
echo um_get_search_form();
|
2607 |
-
}
|
2608 |
-
|
2609 |
-
|
2610 |
/**
|
2611 |
* Get user host
|
2612 |
*
|
1141 |
}
|
1142 |
|
1143 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1144 |
/**
|
1145 |
* Get styling defaults
|
1146 |
*
|
1180 |
function um_get_metadefault( $id ) {
|
1181 |
$core_form_meta_all = UM()->config()->core_form_meta_all;
|
1182 |
|
1183 |
+
return isset( $core_form_meta_all[ '_um_' . $id ] ) ? $core_form_meta_all[ '_um_' . $id ] : '';
|
1184 |
}
|
1185 |
|
1186 |
|
1213 |
}
|
1214 |
|
1215 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1216 |
/**
|
1217 |
* Clears the user data. You need to fetch a user manually after using this function.
|
1218 |
*
|
1926 |
}
|
1927 |
|
1928 |
$data = array(
|
1929 |
+
'user_id' => $user_id,
|
1930 |
+
'default' => um_get_default_avatar_uri(),
|
1931 |
+
'class' => 'gravatar avatar avatar-' . $size . ' um-avatar',
|
1932 |
+
'size' => $size
|
1933 |
);
|
1934 |
|
1935 |
if ( $profile_photo = um_profile( 'profile_photo' ) ) {
|
2384 |
|
2385 |
$alt = um_profile( 'nickname' );
|
2386 |
|
2387 |
+
$cover_html = $cover_uri ? '<img src="' . esc_attr( $cover_uri ) . '" alt="' . esc_attr( $alt ) . '" />' : '';
|
|
|
2388 |
|
2389 |
+
$cover_html = apply_filters( 'um_user_cover_photo_html__filter', $cover_html, $cover_uri, $alt, $is_default, $attrs );
|
2390 |
+
return $cover_html;
|
2391 |
|
2392 |
+
break;
|
2393 |
|
2394 |
+
case 'user_url':
|
2395 |
|
2396 |
+
$value = um_profile( $data );
|
2397 |
+
|
2398 |
+
return $value;
|
2399 |
|
2400 |
break;
|
2401 |
|
2475 |
}
|
2476 |
|
2477 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2478 |
/**
|
2479 |
* Get user host
|
2480 |
*
|
includes/widgets/class-um-search-widget.php
CHANGED
@@ -50,7 +50,7 @@ class UM_Search_Widget extends \WP_Widget {
|
|
50 |
}
|
51 |
|
52 |
// display the search form
|
53 |
-
|
54 |
|
55 |
echo $args['after_widget'];
|
56 |
}
|
50 |
}
|
51 |
|
52 |
// display the search form
|
53 |
+
echo do_shortcode( '[ultimatemember_searchform /]' );
|
54 |
|
55 |
echo $args['after_widget'];
|
56 |
}
|
languages/ultimate-member-en_US.mo
CHANGED
Binary file
|
languages/ultimate-member-en_US.po
CHANGED
@@ -1,7693 +1,7868 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: Ultimate Member\n"
|
4 |
-
"POT-Creation-Date: 2019-
|
5 |
-
"PO-Revision-Date: 2019-
|
6 |
-
"Last-Translator: \n"
|
7 |
-
"Language-Team: \n"
|
8 |
-
"Language: en_US\n"
|
9 |
-
"MIME-Version: 1.0\n"
|
10 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
-
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"X-Generator: Poedit 2.0.6\n"
|
13 |
-
"X-Poedit-Basepath: ..\n"
|
14 |
-
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
-
"X-Poedit-Flags-xgettext: --add-comments=translators:\n"
|
16 |
-
"X-Poedit-WPHeader: ultimate-member.php\n"
|
17 |
-
"X-Poedit-SourceCharset: UTF-8\n"
|
18 |
-
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
19 |
-
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
20 |
-
"_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
|
21 |
-
"X-Poedit-SearchPath-0: .\n"
|
22 |
-
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
23 |
-
|
24 |
-
#: includes/admin/class-admin-functions.php:35 includes/class-functions.php:
|
25 |
-
msgid "Wrong Nonce"
|
26 |
-
msgstr ""
|
27 |
-
|
28 |
-
#: includes/admin/class-admin.php:193
|
29 |
-
#, php-format
|
30 |
-
msgid "Duplicate of %s"
|
31 |
-
msgstr ""
|
32 |
-
|
33 |
-
#: includes/admin/class-admin.php:307
|
34 |
-
msgid "Docs"
|
35 |
-
msgstr ""
|
36 |
-
|
37 |
-
#: includes/admin/class-admin.php:308
|
38 |
-
#: includes/admin/core/class-admin-settings.php:
|
39 |
-
msgid "Settings"
|
40 |
-
msgstr ""
|
41 |
-
|
42 |
-
#: includes/admin/class-admin.php:379 includes/admin/class-admin.php:382
|
43 |
-
msgid "Form updated."
|
44 |
-
msgstr ""
|
45 |
-
|
46 |
-
#: includes/admin/class-admin.php:380
|
47 |
-
msgid "Custom field updated."
|
48 |
-
msgstr ""
|
49 |
-
|
50 |
-
#: includes/admin/class-admin.php:381
|
51 |
-
msgid "Custom field deleted."
|
52 |
-
msgstr ""
|
53 |
-
|
54 |
-
#: includes/admin/class-admin.php:383
|
55 |
-
msgid "Form restored to revision."
|
56 |
-
msgstr ""
|
57 |
-
|
58 |
-
#: includes/admin/class-admin.php:384
|
59 |
-
msgid "Form created."
|
60 |
-
msgstr ""
|
61 |
-
|
62 |
-
#: includes/admin/class-admin.php:385
|
63 |
-
msgid "Form saved."
|
64 |
-
msgstr ""
|
65 |
-
|
66 |
-
#: includes/admin/class-admin.php:386
|
67 |
-
msgid "Form submitted."
|
68 |
-
msgstr ""
|
69 |
-
|
70 |
-
#: includes/admin/class-admin.php:387
|
71 |
-
msgid "Form scheduled."
|
72 |
-
msgstr ""
|
73 |
-
|
74 |
-
#: includes/admin/class-admin.php:388
|
75 |
-
msgid "Form draft updated."
|
76 |
-
msgstr ""
|
77 |
-
|
78 |
-
#: includes/admin/core/class-admin-builder.php:
|
79 |
-
msgid "Manage conditional fields support"
|
80 |
-
msgstr ""
|
81 |
-
|
82 |
-
#: includes/admin/core/class-admin-builder.php:
|
83 |
-
#: includes/admin/core/class-admin-builder.php:
|
84 |
-
msgid ""
|
85 |
-
"Here you can setup conditional logic to show/hide this field based on "
|
86 |
-
"specific fields value or conditions"
|
87 |
-
msgstr ""
|
88 |
-
|
89 |
-
#: includes/admin/core/class-admin-builder.php:
|
90 |
-
msgid "Add conditional fields support"
|
91 |
-
msgstr ""
|
92 |
-
|
93 |
-
#: includes/admin/core/class-admin-builder.php:
|
94 |
-
msgid "Add new rule"
|
95 |
-
msgstr ""
|
96 |
-
|
97 |
-
#: includes/admin/core/class-admin-builder.php:
|
98 |
-
msgid "Reset all rules"
|
99 |
-
msgstr ""
|
100 |
-
|
101 |
-
#: includes/admin/core/class-admin-builder.php:
|
102 |
-
#: includes/admin/core/class-admin-builder.php:
|
103 |
-
#: includes/admin/core/class-admin-builder.php:
|
104 |
-
#: includes/admin/core/class-admin-dragdrop.php:33
|
105 |
-
#: includes/admin/core/class-admin-menu.php:106
|
106 |
-
#: includes/core/class-fields.php:
|
107 |
-
msgid "Please login as administrator"
|
108 |
-
msgstr ""
|
109 |
-
|
110 |
-
#: includes/admin/core/class-admin-builder.php:
|
111 |
-
#: includes/admin/core/class-admin-builder.php:
|
112 |
-
#: includes/admin/core/class-admin-dragdrop.php:165
|
113 |
-
msgid "Add Row"
|
114 |
-
msgstr ""
|
115 |
-
|
116 |
-
#: includes/admin/core/class-admin-builder.php:
|
117 |
-
#: includes/admin/core/class-admin-builder.php:
|
118 |
-
#: includes/admin/core/class-admin-dragdrop.php:166
|
119 |
-
msgid "Edit Row"
|
120 |
-
msgstr ""
|
121 |
-
|
122 |
-
#: includes/admin/core/class-admin-builder.php:
|
123 |
-
#: includes/admin/core/class-admin-dragdrop.php:168
|
124 |
-
#: includes/admin/core/class-admin-dragdrop.php:183
|
125 |
-
#: includes/admin/core/class-admin-dragdrop.php:208
|
126 |
-
msgid "Delete Row"
|
127 |
-
msgstr ""
|
128 |
-
|
129 |
-
#: includes/admin/core/class-admin-builder.php:
|
130 |
-
msgid "
|
131 |
-
msgstr ""
|
132 |
-
|
133 |
-
#: includes/admin/core/class-admin-builder.php:
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
#: includes/admin/core/
|
151 |
-
msgid "
|
152 |
-
msgstr ""
|
153 |
-
|
154 |
-
#: includes/admin/core/class-admin-builder.php:
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
#: includes/admin/core/class-admin-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
#: includes/
|
187 |
-
msgid "
|
188 |
-
msgstr ""
|
189 |
-
|
190 |
-
#: includes/admin/core/class-admin-columns.php:
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
#: includes/admin/
|
195 |
-
#: includes/admin/
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
#: includes/admin/core/class-admin-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
#: includes/admin/core/class-admin-columns.php:
|
208 |
-
msgid "
|
209 |
-
msgstr ""
|
210 |
-
|
211 |
-
#: includes/admin/core/class-admin-columns.php:
|
212 |
-
#: includes/admin/core/class-admin-columns.php:
|
213 |
-
#: includes/admin/core/
|
214 |
-
#: includes/admin/
|
215 |
-
#: includes/admin/templates/form/
|
216 |
-
#: includes/admin/templates/form/
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
#: includes/admin/
|
221 |
-
#: includes/admin/
|
222 |
-
#: includes/admin/
|
223 |
-
#: includes/admin/
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
#: includes/admin/
|
228 |
-
#: includes/admin/
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
#: includes/core/
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
#: includes/admin/
|
237 |
-
#: includes/admin/
|
238 |
-
#: includes/admin/
|
239 |
-
#: includes/admin/
|
240 |
-
#: includes/admin/templates/form/
|
241 |
-
#: includes/admin/templates/form/
|
242 |
-
#: includes/admin/templates/form/
|
243 |
-
#: includes/admin/templates/form/
|
244 |
-
#: includes/admin/templates/form/profile_customize.php:
|
245 |
-
#: includes/admin/templates/form/profile_customize.php:
|
246 |
-
#: includes/admin/templates/form/profile_customize.php:
|
247 |
-
#: includes/admin/templates/form/profile_customize.php:
|
248 |
-
#: includes/admin/templates/form/
|
249 |
-
#: includes/admin/templates/form/
|
250 |
-
#: includes/admin/templates/form/
|
251 |
-
#: includes/
|
252 |
-
#: includes/
|
253 |
-
#: includes/
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
#: includes/admin/core/
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
#: includes/admin/
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
#: includes/admin/
|
269 |
-
#: includes/admin/
|
270 |
-
#: includes/admin/
|
271 |
-
#: includes/admin/
|
272 |
-
#: includes/admin/
|
273 |
-
#: includes/admin/
|
274 |
-
#: includes/admin/
|
275 |
-
#: includes/
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
#: includes/
|
291 |
-
#: includes/
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
#: includes/admin/core/class-admin-
|
296 |
-
#: includes/admin/core/class-admin-
|
297 |
-
#: includes/core/class-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
#: includes/
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
#: includes/admin/core/class-admin-
|
342 |
-
msgid "
|
343 |
-
msgstr ""
|
344 |
-
|
345 |
-
#: includes/admin/core/class-admin-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
msgid ""
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
#: includes/admin/core/
|
480 |
-
msgid "
|
481 |
-
msgstr ""
|
482 |
-
|
483 |
-
#: includes/admin/core/class-admin-menu.php:
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
#: includes/admin/
|
502 |
-
msgid "
|
503 |
-
msgstr ""
|
504 |
-
|
505 |
-
#: includes/admin/core/class-admin-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
#: includes/admin/core/class-admin-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
#: includes/admin/
|
514 |
-
msgid "
|
515 |
-
msgstr ""
|
516 |
-
|
517 |
-
#: includes/admin/core/class-admin-metabox.php:
|
518 |
-
#: includes/admin/core/class-admin-metabox.php:
|
519 |
-
#: includes/admin/templates/access/restrict_content.php:
|
520 |
-
msgid "
|
521 |
-
msgstr ""
|
522 |
-
|
523 |
-
#: includes/admin/core/class-admin-metabox.php:
|
524 |
-
#: includes/admin/core/class-admin-metabox.php:
|
525 |
-
#: includes/admin/core/class-admin-metabox.php:
|
526 |
-
#: includes/admin/core/class-admin-
|
527 |
-
#: includes/admin/
|
528 |
-
#: includes/core/class-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
#: includes/admin/core/class-admin-
|
545 |
-
#: includes/admin/
|
546 |
-
#: includes/
|
547 |
-
msgid "
|
548 |
-
msgstr ""
|
549 |
-
|
550 |
-
#: includes/admin/core/class-admin-metabox.php:
|
551 |
-
#: includes/admin/core/class-admin-metabox.php:
|
552 |
-
#: includes/admin/templates/access/restrict_content.php:
|
553 |
-
msgid "
|
554 |
-
msgstr ""
|
555 |
-
|
556 |
-
#: includes/admin/core/class-admin-metabox.php:
|
557 |
-
#: includes/admin/core/class-admin-metabox.php:
|
558 |
-
#: includes/admin/
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
#: includes/admin/core/class-admin-metabox.php:
|
578 |
-
#: includes/admin/
|
579 |
-
#: includes/admin/templates/access/restrict_content.php:
|
580 |
-
msgid ""
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
#: includes/admin/
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
#: includes/admin/
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
#: includes/admin/
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
msgstr ""
|
602 |
-
|
603 |
-
#: includes/admin/core/class-admin-metabox.php:
|
604 |
-
#: includes/admin/core/class-admin-metabox.php:
|
605 |
-
#: includes/admin/
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
#: includes/admin/core/class-admin-metabox.php:
|
625 |
-
#: includes/admin/
|
626 |
-
#: includes/admin/templates/access/restrict_content.php:
|
627 |
-
msgid "
|
628 |
-
msgstr ""
|
629 |
-
|
630 |
-
#: includes/admin/core/class-admin-metabox.php:
|
631 |
-
#: includes/admin/core/class-admin-metabox.php:
|
632 |
-
#: includes/admin/templates/access/restrict_content.php:
|
633 |
-
msgid "
|
634 |
-
msgstr ""
|
635 |
-
|
636 |
-
#: includes/admin/core/class-admin-metabox.php:
|
637 |
-
#: includes/admin/core/class-admin-metabox.php:
|
638 |
-
#: includes/admin/templates/access/restrict_content.php:
|
639 |
-
msgid "
|
640 |
-
msgstr ""
|
641 |
-
|
642 |
-
#: includes/admin/core/class-admin-metabox.php:
|
643 |
-
#: includes/admin/core/class-admin-metabox.php:
|
644 |
-
#: includes/admin/templates/access/restrict_content.php:
|
645 |
-
msgid "
|
646 |
-
msgstr ""
|
647 |
-
|
648 |
-
#: includes/admin/core/class-admin-metabox.php:
|
649 |
-
#: includes/admin/core/class-admin-metabox.php:
|
650 |
-
#: includes/admin/templates/access/restrict_content.php:
|
651 |
-
msgid ""
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
#: includes/admin/
|
657 |
-
msgid "
|
658 |
-
msgstr ""
|
659 |
-
|
660 |
-
#: includes/admin/core/class-admin-metabox.php:
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
#: includes/admin/
|
669 |
-
msgid "
|
670 |
-
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
#: includes/admin/core/class-admin-metabox.php:
|
727 |
-
msgid "
|
728 |
-
msgstr ""
|
729 |
-
|
730 |
-
#: includes/admin/core/class-admin-metabox.php:
|
731 |
-
msgid "
|
732 |
-
msgstr ""
|
733 |
-
|
734 |
-
#: includes/admin/core/class-admin-metabox.php:
|
735 |
-
msgid "
|
736 |
-
msgstr ""
|
737 |
-
|
738 |
-
#: includes/admin/core/class-admin-metabox.php:
|
739 |
-
msgid "
|
740 |
-
msgstr ""
|
741 |
-
|
742 |
-
#: includes/admin/core/class-admin-metabox.php:
|
743 |
-
msgid ""
|
744 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
msgstr ""
|
790 |
-
|
791 |
-
#: includes/admin/core/class-admin-metabox.php:
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
"
|
801 |
-
msgstr ""
|
802 |
-
|
803 |
-
#: includes/admin/core/class-admin-metabox.php:
|
804 |
-
msgid "
|
805 |
-
msgstr ""
|
806 |
-
|
807 |
-
#: includes/admin/core/class-admin-metabox.php:
|
808 |
-
msgid "
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
-
#: includes/admin/core/class-admin-metabox.php:
|
820 |
-
msgid "
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
#: includes/admin/core/class-admin-metabox.php:
|
862 |
-
msgid "
|
863 |
-
msgstr ""
|
864 |
-
|
865 |
-
#: includes/admin/core/class-admin-metabox.php:
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
|
884 |
-
|
885 |
-
|
886 |
-
|
887 |
-
|
888 |
-
#: includes/admin/core/class-admin-metabox.php:
|
889 |
-
msgid "
|
890 |
-
msgstr ""
|
891 |
-
|
892 |
-
#: includes/admin/core/class-admin-metabox.php:
|
893 |
-
|
894 |
-
|
895 |
-
|
896 |
-
|
897 |
-
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
"
|
952 |
-
msgstr ""
|
953 |
-
|
954 |
-
#: includes/admin/core/class-admin-metabox.php:
|
955 |
-
msgid "
|
956 |
-
msgstr ""
|
957 |
-
|
958 |
-
#: includes/admin/core/class-admin-metabox.php:
|
959 |
-
msgid "
|
960 |
-
msgstr ""
|
961 |
-
|
962 |
-
#: includes/admin/core/class-admin-metabox.php:
|
963 |
-
msgid "
|
964 |
-
msgstr ""
|
965 |
-
|
966 |
-
#: includes/admin/core/class-admin-metabox.php:
|
967 |
-
msgid "
|
968 |
-
msgstr ""
|
969 |
-
|
970 |
-
#: includes/admin/core/class-admin-metabox.php:
|
971 |
-
msgid "
|
972 |
-
|
973 |
-
|
974 |
-
|
975 |
-
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
|
1007 |
-
|
1008 |
-
|
1009 |
-
"
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
-
|
1022 |
-
|
1023 |
-
|
1024 |
-
|
1025 |
-
|
1026 |
-
|
1027 |
-
|
1028 |
-
|
1029 |
-
|
1030 |
-
|
1031 |
-
|
1032 |
-
|
1033 |
-
msgstr ""
|
1034 |
-
|
1035 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1036 |
-
msgid "
|
1037 |
-
msgstr ""
|
1038 |
-
|
1039 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1040 |
-
msgid "
|
1041 |
-
|
1042 |
-
|
1043 |
-
|
1044 |
-
|
1045 |
-
|
1046 |
-
|
1047 |
-
|
1048 |
-
|
1049 |
-
|
1050 |
-
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
|
1056 |
-
|
1057 |
-
|
1058 |
-
|
1059 |
-
|
1060 |
-
|
1061 |
-
|
1062 |
-
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
1070 |
-
"
|
1071 |
-
"
|
1072 |
-
|
1073 |
-
|
1074 |
-
|
1075 |
-
|
1076 |
-
|
1077 |
-
|
1078 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1079 |
-
msgid "
|
1080 |
-
msgstr ""
|
1081 |
-
|
1082 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1083 |
-
msgid "
|
1084 |
-
msgstr ""
|
1085 |
-
|
1086 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1087 |
-
msgid ""
|
1088 |
-
|
1089 |
-
|
1090 |
-
|
1091 |
-
|
1092 |
-
|
1093 |
-
|
1094 |
-
msgstr ""
|
1095 |
-
|
1096 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1097 |
-
msgid "
|
1098 |
-
msgstr ""
|
1099 |
-
|
1100 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1101 |
-
msgid "
|
1102 |
-
|
1103 |
-
|
1104 |
-
|
1105 |
-
|
1106 |
-
|
1107 |
-
|
1108 |
-
|
1109 |
-
|
1110 |
-
|
1111 |
-
|
1112 |
-
|
1113 |
-
|
1114 |
-
|
1115 |
-
|
1116 |
-
|
1117 |
-
|
1118 |
-
|
1119 |
-
|
1120 |
-
|
1121 |
-
|
1122 |
-
msgstr ""
|
1123 |
-
|
1124 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1125 |
-
msgid ""
|
1126 |
-
|
1127 |
-
|
1128 |
-
|
1129 |
-
|
1130 |
-
|
1131 |
-
|
1132 |
-
|
1133 |
-
|
1134 |
-
|
1135 |
-
|
1136 |
-
|
1137 |
-
|
1138 |
-
|
1139 |
-
|
1140 |
-
|
1141 |
-
|
1142 |
-
|
1143 |
-
|
1144 |
-
|
1145 |
-
|
1146 |
-
|
1147 |
-
|
1148 |
-
|
1149 |
-
|
1150 |
-
|
1151 |
-
|
1152 |
-
|
1153 |
-
|
1154 |
-
|
1155 |
-
|
1156 |
-
|
1157 |
-
|
1158 |
-
|
1159 |
-
|
1160 |
-
|
1161 |
-
|
1162 |
-
|
1163 |
-
|
1164 |
-
|
1165 |
-
|
1166 |
-
|
1167 |
-
|
1168 |
-
|
1169 |
-
|
1170 |
-
|
1171 |
-
|
1172 |
-
|
1173 |
-
|
1174 |
-
|
1175 |
-
|
1176 |
-
|
1177 |
-
|
1178 |
-
|
1179 |
-
|
1180 |
-
|
1181 |
-
|
1182 |
-
|
1183 |
-
|
1184 |
-
|
1185 |
-
|
1186 |
-
|
1187 |
-
|
1188 |
-
|
1189 |
-
|
1190 |
-
|
1191 |
-
|
1192 |
-
|
1193 |
-
|
1194 |
-
|
1195 |
-
"
|
1196 |
-
msgstr ""
|
1197 |
-
|
1198 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1199 |
-
msgid "
|
1200 |
-
msgstr ""
|
1201 |
-
|
1202 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1203 |
-
msgid "
|
1204 |
-
msgstr ""
|
1205 |
-
|
1206 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1207 |
-
msgid "
|
1208 |
-
|
1209 |
-
|
1210 |
-
|
1211 |
-
|
1212 |
-
|
1213 |
-
|
1214 |
-
|
1215 |
-
|
1216 |
-
|
1217 |
-
|
1218 |
-
|
1219 |
-
|
1220 |
-
|
1221 |
-
|
1222 |
-
|
1223 |
-
|
1224 |
-
|
1225 |
-
|
1226 |
-
|
1227 |
-
|
1228 |
-
msgstr ""
|
1229 |
-
|
1230 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1231 |
-
msgid "
|
1232 |
-
msgstr ""
|
1233 |
-
|
1234 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1235 |
-
|
1236 |
-
|
1237 |
-
|
1238 |
-
|
1239 |
-
|
1240 |
-
|
1241 |
-
|
1242 |
-
|
1243 |
-
|
1244 |
-
|
1245 |
-
|
1246 |
-
|
1247 |
-
|
1248 |
-
|
1249 |
-
|
1250 |
-
|
1251 |
-
|
1252 |
-
|
1253 |
-
|
1254 |
-
|
1255 |
-
|
1256 |
-
|
1257 |
-
|
1258 |
-
|
1259 |
-
|
1260 |
-
|
1261 |
-
|
1262 |
-
|
1263 |
-
|
1264 |
-
|
1265 |
-
|
1266 |
-
|
1267 |
-
|
1268 |
-
|
1269 |
-
|
1270 |
-
|
1271 |
-
|
1272 |
-
|
1273 |
-
|
1274 |
-
|
1275 |
-
|
1276 |
-
#: includes/
|
1277 |
-
msgid "
|
1278 |
-
msgstr ""
|
1279 |
-
|
1280 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1281 |
-
msgid "
|
1282 |
-
msgstr ""
|
1283 |
-
|
1284 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1285 |
-
|
1286 |
-
"
|
1287 |
-
|
1288 |
-
|
1289 |
-
|
1290 |
-
|
1291 |
-
|
1292 |
-
|
1293 |
-
|
1294 |
-
|
1295 |
-
|
1296 |
-
|
1297 |
-
|
1298 |
-
|
1299 |
-
|
1300 |
-
|
1301 |
-
|
1302 |
-
|
1303 |
-
|
1304 |
-
|
1305 |
-
|
1306 |
-
|
1307 |
-
|
1308 |
-
|
1309 |
-
|
1310 |
-
|
1311 |
-
|
1312 |
-
|
1313 |
-
|
1314 |
-
|
1315 |
-
|
1316 |
-
|
1317 |
-
|
1318 |
-
|
1319 |
-
|
1320 |
-
|
1321 |
-
|
1322 |
-
|
1323 |
-
|
1324 |
-
|
1325 |
-
|
1326 |
-
|
1327 |
-
|
1328 |
-
|
1329 |
-
|
1330 |
-
|
1331 |
-
"
|
1332 |
-
msgstr ""
|
1333 |
-
|
1334 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1335 |
-
msgid "
|
1336 |
-
msgstr ""
|
1337 |
-
|
1338 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1339 |
-
msgid "
|
1340 |
-
msgstr ""
|
1341 |
-
|
1342 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1343 |
-
msgid "
|
1344 |
-
msgstr ""
|
1345 |
-
|
1346 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1347 |
-
msgid ""
|
1348 |
-
|
1349 |
-
|
1350 |
-
|
1351 |
-
|
1352 |
-
|
1353 |
-
|
1354 |
-
msgstr ""
|
1355 |
-
|
1356 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1357 |
-
msgid "Minimum number
|
1358 |
-
msgstr ""
|
1359 |
-
|
1360 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1361 |
-
msgid "
|
1362 |
-
|
1363 |
-
|
1364 |
-
|
1365 |
-
|
1366 |
-
|
1367 |
-
|
1368 |
-
|
1369 |
-
|
1370 |
-
|
1371 |
-
|
1372 |
-
|
1373 |
-
|
1374 |
-
|
1375 |
-
"
|
1376 |
-
msgstr ""
|
1377 |
-
|
1378 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1379 |
-
msgid "
|
1380 |
-
|
1381 |
-
|
1382 |
-
|
1383 |
-
|
1384 |
-
|
1385 |
-
"
|
1386 |
-
msgstr ""
|
1387 |
-
|
1388 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1389 |
-
msgid "
|
1390 |
-
msgstr ""
|
1391 |
-
|
1392 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1393 |
-
msgid "
|
1394 |
-
msgstr ""
|
1395 |
-
|
1396 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1397 |
-
msgid "
|
1398 |
-
msgstr ""
|
1399 |
-
|
1400 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1401 |
-
msgid ""
|
1402 |
-
|
1403 |
-
|
1404 |
-
|
1405 |
-
|
1406 |
-
|
1407 |
-
|
1408 |
-
|
1409 |
-
|
1410 |
-
|
1411 |
-
|
1412 |
-
|
1413 |
-
|
1414 |
-
|
1415 |
-
|
1416 |
-
|
1417 |
-
|
1418 |
-
|
1419 |
-
|
1420 |
-
|
1421 |
-
|
1422 |
-
|
1423 |
-
|
1424 |
-
|
1425 |
-
"
|
1426 |
-
msgstr ""
|
1427 |
-
|
1428 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1429 |
-
msgid ""
|
1430 |
-
|
1431 |
-
|
1432 |
-
|
1433 |
-
"
|
1434 |
-
|
1435 |
-
|
1436 |
-
|
1437 |
-
|
1438 |
-
|
1439 |
-
|
1440 |
-
|
1441 |
-
|
1442 |
-
|
1443 |
-
|
1444 |
-
|
1445 |
-
"
|
1446 |
-
msgstr ""
|
1447 |
-
|
1448 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1449 |
-
|
1450 |
-
|
1451 |
-
|
1452 |
-
|
1453 |
-
|
1454 |
-
|
1455 |
-
|
1456 |
-
|
1457 |
-
|
1458 |
-
msgstr ""
|
1459 |
-
|
1460 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1461 |
-
|
1462 |
-
|
1463 |
-
"
|
1464 |
-
"
|
1465 |
-
|
1466 |
-
|
1467 |
-
|
1468 |
-
|
1469 |
-
|
1470 |
-
|
1471 |
-
|
1472 |
-
|
1473 |
-
|
1474 |
-
|
1475 |
-
|
1476 |
-
|
1477 |
-
"
|
1478 |
-
|
1479 |
-
|
1480 |
-
|
1481 |
-
|
1482 |
-
|
1483 |
-
|
1484 |
-
|
1485 |
-
|
1486 |
-
|
1487 |
-
|
1488 |
-
|
1489 |
-
|
1490 |
-
|
1491 |
-
|
1492 |
-
|
1493 |
-
|
1494 |
-
|
1495 |
-
|
1496 |
-
|
1497 |
-
|
1498 |
-
|
1499 |
-
|
1500 |
-
|
1501 |
-
|
1502 |
-
|
1503 |
-
|
1504 |
-
|
1505 |
-
|
1506 |
-
|
1507 |
-
|
1508 |
-
|
1509 |
-
|
1510 |
-
|
1511 |
-
|
1512 |
-
|
1513 |
-
|
1514 |
-
"
|
1515 |
-
msgstr ""
|
1516 |
-
|
1517 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1518 |
-
|
1519 |
-
|
1520 |
-
|
1521 |
-
|
1522 |
-
|
1523 |
-
|
1524 |
-
|
1525 |
-
|
1526 |
-
|
1527 |
-
|
1528 |
-
|
1529 |
-
|
1530 |
-
|
1531 |
-
|
1532 |
-
|
1533 |
-
|
1534 |
-
|
1535 |
-
|
1536 |
-
|
1537 |
-
|
1538 |
-
|
1539 |
-
|
1540 |
-
|
1541 |
-
|
1542 |
-
|
1543 |
-
|
1544 |
-
|
1545 |
-
|
1546 |
-
|
1547 |
-
|
1548 |
-
|
1549 |
-
|
1550 |
-
|
1551 |
-
|
1552 |
-
|
1553 |
-
|
1554 |
-
|
1555 |
-
|
1556 |
-
|
1557 |
-
|
1558 |
-
|
1559 |
-
"
|
1560 |
-
msgstr ""
|
1561 |
-
|
1562 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1563 |
-
msgid "
|
1564 |
-
msgstr ""
|
1565 |
-
|
1566 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1567 |
-
msgid "
|
1568 |
-
msgstr ""
|
1569 |
-
|
1570 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1571 |
-
msgid "
|
1572 |
-
msgstr ""
|
1573 |
-
|
1574 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1575 |
-
msgid "
|
1576 |
-
msgstr ""
|
1577 |
-
|
1578 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1579 |
-
msgid "
|
1580 |
-
|
1581 |
-
|
1582 |
-
|
1583 |
-
|
1584 |
-
|
1585 |
-
|
1586 |
-
|
1587 |
-
|
1588 |
-
|
1589 |
-
|
1590 |
-
|
1591 |
-
|
1592 |
-
msgstr ""
|
1593 |
-
|
1594 |
-
#: includes/admin/core/class-admin-metabox.php:
|
1595 |
-
msgid "
|
1596 |
-
msgstr ""
|
1597 |
-
|
1598 |
-
#: includes/admin/core/class-admin-
|
1599 |
-
msgid "
|
1600 |
-
msgstr ""
|
1601 |
-
|
1602 |
-
#: includes/admin/core/class-admin-
|
1603 |
-
msgid "
|
1604 |
-
msgstr ""
|
1605 |
-
|
1606 |
-
#: includes/admin/core/class-admin-
|
1607 |
-
msgid "
|
1608 |
-
msgstr ""
|
1609 |
-
|
1610 |
-
#: includes/admin/core/class-admin-
|
1611 |
-
msgid "
|
1612 |
-
msgstr ""
|
1613 |
-
|
1614 |
-
#: includes/admin/core/class-admin-
|
1615 |
-
msgid "
|
1616 |
-
msgstr ""
|
1617 |
-
|
1618 |
-
#: includes/admin/core/class-admin-
|
1619 |
-
msgid "
|
1620 |
-
msgstr ""
|
1621 |
-
|
1622 |
-
#: includes/admin/core/class-admin-
|
1623 |
-
msgid "
|
1624 |
-
msgstr ""
|
1625 |
-
|
1626 |
-
#: includes/admin/core/class-admin-
|
1627 |
-
|
1628 |
-
|
1629 |
-
|
1630 |
-
|
1631 |
-
|
1632 |
-
msgstr ""
|
1633 |
-
|
1634 |
-
#: includes/admin/core/class-admin-
|
1635 |
-
|
1636 |
-
|
1637 |
-
|
1638 |
-
|
1639 |
-
|
1640 |
-
|
1641 |
-
|
1642 |
-
|
1643 |
-
|
1644 |
-
|
1645 |
-
|
1646 |
-
#: includes/admin/core/class-admin-
|
1647 |
-
msgid "
|
1648 |
-
msgstr ""
|
1649 |
-
|
1650 |
-
#: includes/admin/core/class-admin-
|
1651 |
-
msgid "
|
1652 |
-
msgstr ""
|
1653 |
-
|
1654 |
-
#: includes/admin/core/class-admin-
|
1655 |
-
msgid "
|
1656 |
-
msgstr ""
|
1657 |
-
|
1658 |
-
#: includes/admin/core/class-admin-notices.php:
|
1659 |
-
#, php-format
|
1660 |
-
msgid ""
|
1661 |
-
"
|
1662 |
-
"
|
1663 |
-
"
|
1664 |
-
msgstr ""
|
1665 |
-
|
1666 |
-
#: includes/admin/core/class-admin-notices.php:
|
1667 |
-
#, php-format
|
1668 |
-
msgid ""
|
1669 |
-
"
|
1670 |
-
"
|
1671 |
-
msgstr ""
|
1672 |
-
|
1673 |
-
#: includes/admin/core/class-admin-notices.php:
|
1674 |
-
msgid "
|
1675 |
-
msgstr ""
|
1676 |
-
|
1677 |
-
#: includes/admin/core/class-admin-notices.php:
|
1678 |
-
|
1679 |
-
|
1680 |
-
|
1681 |
-
|
1682 |
-
|
1683 |
-
|
1684 |
-
|
1685 |
-
|
1686 |
-
|
1687 |
-
|
1688 |
-
|
1689 |
-
|
1690 |
-
|
1691 |
-
|
1692 |
-
|
1693 |
-
|
1694 |
-
|
1695 |
-
|
1696 |
-
|
1697 |
-
|
1698 |
-
|
1699 |
-
|
1700 |
-
|
1701 |
-
|
1702 |
-
|
1703 |
-
msgstr ""
|
1704 |
-
|
1705 |
-
#: includes/admin/core/class-admin-notices.php:
|
1706 |
-
msgid "
|
1707 |
-
msgstr ""
|
1708 |
-
|
1709 |
-
#: includes/admin/core/class-admin-notices.php:
|
1710 |
-
msgid "
|
1711 |
-
msgstr ""
|
1712 |
-
|
1713 |
-
#: includes/admin/core/class-admin-notices.php:
|
1714 |
-
msgid "
|
1715 |
-
msgstr ""
|
1716 |
-
|
1717 |
-
#: includes/admin/core/class-admin-notices.php:
|
1718 |
-
msgid "
|
1719 |
-
msgstr ""
|
1720 |
-
|
1721 |
-
#: includes/admin/core/class-admin-notices.php:
|
1722 |
-
|
1723 |
-
|
1724 |
-
|
1725 |
-
|
1726 |
-
|
1727 |
-
|
1728 |
-
|
1729 |
-
|
1730 |
-
msgid ""
|
1731 |
-
|
1732 |
-
|
1733 |
-
|
1734 |
-
"
|
1735 |
-
"
|
1736 |
-
|
1737 |
-
|
1738 |
-
|
1739 |
-
|
1740 |
-
|
1741 |
-
|
1742 |
-
|
1743 |
-
|
1744 |
-
|
1745 |
-
|
1746 |
-
"
|
1747 |
-
|
1748 |
-
|
1749 |
-
|
1750 |
-
|
1751 |
-
|
1752 |
-
|
1753 |
-
|
1754 |
-
|
1755 |
-
"
|
1756 |
-
|
1757 |
-
|
1758 |
-
|
1759 |
-
|
1760 |
-
|
1761 |
-
|
1762 |
-
|
1763 |
-
"
|
1764 |
-
"
|
1765 |
-
|
1766 |
-
|
1767 |
-
|
1768 |
-
|
1769 |
-
|
1770 |
-
|
1771 |
-
|
1772 |
-
|
1773 |
-
|
1774 |
-
|
1775 |
-
|
1776 |
-
|
1777 |
-
|
1778 |
-
|
1779 |
-
"
|
1780 |
-
"
|
1781 |
-
msgstr ""
|
1782 |
-
|
1783 |
-
#: includes/admin/core/class-admin-notices.php:
|
1784 |
-
|
1785 |
-
|
1786 |
-
|
1787 |
-
|
1788 |
-
|
1789 |
-
|
1790 |
-
|
1791 |
-
|
1792 |
-
msgid "
|
1793 |
-
|
1794 |
-
|
1795 |
-
|
1796 |
-
|
1797 |
-
|
1798 |
-
|
1799 |
-
|
1800 |
-
"
|
1801 |
-
|
1802 |
-
|
1803 |
-
|
1804 |
-
|
1805 |
-
msgid "
|
1806 |
-
msgstr ""
|
1807 |
-
|
1808 |
-
#: includes/admin/core/class-admin-notices.php:
|
1809 |
-
|
1810 |
-
|
1811 |
-
"
|
1812 |
-
|
1813 |
-
|
1814 |
-
|
1815 |
-
#: includes/admin/core/class-admin-notices.php:
|
1816 |
-
msgid "
|
1817 |
-
msgstr ""
|
1818 |
-
|
1819 |
-
#: includes/admin/core/class-admin-notices.php:
|
1820 |
-
|
1821 |
-
|
1822 |
-
|
1823 |
-
|
1824 |
-
"
|
1825 |
-
|
1826 |
-
|
1827 |
-
|
1828 |
-
|
1829 |
-
|
1830 |
-
|
1831 |
-
|
1832 |
-
"
|
1833 |
-
"
|
1834 |
-
msgstr ""
|
1835 |
-
|
1836 |
-
#: includes/admin/core/class-admin-notices.php:
|
1837 |
-
msgid "
|
1838 |
-
msgstr ""
|
1839 |
-
|
1840 |
-
#: includes/admin/core/class-admin-
|
1841 |
-
|
1842 |
-
|
1843 |
-
|
1844 |
-
msgstr ""
|
1845 |
-
|
1846 |
-
#: includes/admin/core/class-admin-
|
1847 |
-
|
1848 |
-
|
1849 |
-
|
1850 |
-
|
1851 |
-
|
1852 |
-
|
1853 |
-
|
1854 |
-
|
1855 |
-
|
1856 |
-
|
1857 |
-
|
1858 |
-
|
1859 |
-
|
1860 |
-
|
1861 |
-
|
1862 |
-
|
1863 |
-
|
1864 |
-
|
1865 |
-
|
1866 |
-
|
1867 |
-
|
1868 |
-
|
1869 |
-
|
1870 |
-
|
1871 |
-
|
1872 |
-
|
1873 |
-
#: includes/admin/core/class-admin-settings.php:
|
1874 |
-
|
1875 |
-
|
1876 |
-
|
1877 |
-
|
1878 |
-
|
1879 |
-
|
1880 |
-
|
1881 |
-
|
1882 |
-
|
1883 |
-
|
1884 |
-
|
1885 |
-
|
1886 |
-
|
1887 |
-
|
1888 |
-
|
1889 |
-
|
1890 |
-
|
1891 |
-
|
1892 |
-
|
1893 |
-
|
1894 |
-
|
1895 |
-
|
1896 |
-
|
1897 |
-
|
1898 |
-
msgid "
|
1899 |
-
msgstr ""
|
1900 |
-
|
1901 |
-
#: includes/admin/core/class-admin-settings.php:
|
1902 |
-
msgid ""
|
1903 |
-
|
1904 |
-
|
1905 |
-
|
1906 |
-
|
1907 |
-
|
1908 |
-
|
1909 |
-
|
1910 |
-
|
1911 |
-
|
1912 |
-
|
1913 |
-
|
1914 |
-
|
1915 |
-
|
1916 |
-
|
1917 |
-
|
1918 |
-
|
1919 |
-
|
1920 |
-
|
1921 |
-
|
1922 |
-
"
|
1923 |
-
msgstr ""
|
1924 |
-
|
1925 |
-
#: includes/admin/core/class-admin-settings.php:
|
1926 |
-
msgid "
|
1927 |
-
msgstr ""
|
1928 |
-
|
1929 |
-
#: includes/admin/core/class-admin-settings.php:
|
1930 |
-
msgid ""
|
1931 |
-
|
1932 |
-
|
1933 |
-
|
1934 |
-
|
1935 |
-
|
1936 |
-
|
1937 |
-
msgstr ""
|
1938 |
-
|
1939 |
-
#: includes/admin/core/class-admin-settings.php:
|
1940 |
-
msgid "
|
1941 |
-
msgstr ""
|
1942 |
-
|
1943 |
-
#: includes/admin/core/class-admin-settings.php:
|
1944 |
-
msgid "
|
1945 |
-
msgstr ""
|
1946 |
-
|
1947 |
-
#: includes/admin/core/class-admin-settings.php:
|
1948 |
-
msgid "
|
1949 |
-
msgstr ""
|
1950 |
-
|
1951 |
-
#: includes/admin/core/class-admin-settings.php:
|
1952 |
-
msgid ""
|
1953 |
-
"
|
1954 |
-
"
|
1955 |
-
msgstr ""
|
1956 |
-
|
1957 |
-
#: includes/admin/core/class-admin-settings.php:
|
1958 |
-
msgid "
|
1959 |
-
msgstr ""
|
1960 |
-
|
1961 |
-
#: includes/admin/core/class-admin-settings.php:
|
1962 |
-
msgid "
|
1963 |
-
|
1964 |
-
|
1965 |
-
|
1966 |
-
|
1967 |
-
|
1968 |
-
"
|
1969 |
-
msgstr ""
|
1970 |
-
|
1971 |
-
#: includes/admin/core/class-admin-settings.php:
|
1972 |
-
msgid "
|
1973 |
-
msgstr ""
|
1974 |
-
|
1975 |
-
#: includes/admin/core/class-admin-settings.php:
|
1976 |
-
msgid "
|
1977 |
-
msgstr ""
|
1978 |
-
|
1979 |
-
#: includes/admin/core/class-admin-settings.php:
|
1980 |
-
msgid "Restricted Access
|
1981 |
-
msgstr ""
|
1982 |
-
|
1983 |
-
#: includes/admin/core/class-admin-settings.php:
|
1984 |
-
msgid "
|
1985 |
-
|
1986 |
-
|
1987 |
-
|
1988 |
-
|
1989 |
-
|
1990 |
-
|
1991 |
-
|
1992 |
-
|
1993 |
-
|
1994 |
-
|
1995 |
-
|
1996 |
-
|
1997 |
-
|
1998 |
-
|
1999 |
-
|
2000 |
-
|
2001 |
-
|
2002 |
-
|
2003 |
-
|
2004 |
-
|
2005 |
-
|
2006 |
-
|
2007 |
-
|
2008 |
-
|
2009 |
-
|
2010 |
-
|
2011 |
-
#: includes/admin/core/class-admin-settings.php:
|
2012 |
-
|
2013 |
-
|
2014 |
-
|
2015 |
-
|
2016 |
-
|
2017 |
-
|
2018 |
-
|
2019 |
-
|
2020 |
-
|
2021 |
-
|
2022 |
-
|
2023 |
-
|
2024 |
-
|
2025 |
-
|
2026 |
-
|
2027 |
-
|
2028 |
-
#: includes/admin/
|
2029 |
-
msgid "
|
2030 |
-
msgstr ""
|
2031 |
-
|
2032 |
-
#: includes/admin/core/class-admin-settings.php:
|
2033 |
-
|
2034 |
-
|
2035 |
-
|
2036 |
-
|
2037 |
-
|
2038 |
-
|
2039 |
-
|
2040 |
-
|
2041 |
-
|
2042 |
-
|
2043 |
-
|
2044 |
-
|
2045 |
-
|
2046 |
-
|
2047 |
-
|
2048 |
-
|
2049 |
-
|
2050 |
-
|
2051 |
-
|
2052 |
-
|
2053 |
-
|
2054 |
-
|
2055 |
-
|
2056 |
-
|
2057 |
-
|
2058 |
-
|
2059 |
-
|
2060 |
-
|
2061 |
-
|
2062 |
-
|
2063 |
-
|
2064 |
-
|
2065 |
-
|
2066 |
-
|
2067 |
-
|
2068 |
-
|
2069 |
-
|
2070 |
-
|
2071 |
-
|
2072 |
-
|
2073 |
-
|
2074 |
-
|
2075 |
-
|
2076 |
-
|
2077 |
-
|
2078 |
-
msgstr ""
|
2079 |
-
|
2080 |
-
#: includes/admin/core/class-admin-settings.php:
|
2081 |
-
msgid "Display Name
|
2082 |
-
msgstr ""
|
2083 |
-
|
2084 |
-
#: includes/admin/core/class-admin-settings.php:
|
2085 |
-
|
2086 |
-
|
2087 |
-
|
2088 |
-
|
2089 |
-
|
2090 |
-
|
2091 |
-
|
2092 |
-
|
2093 |
-
|
2094 |
-
|
2095 |
-
|
2096 |
-
|
2097 |
-
|
2098 |
-
|
2099 |
-
|
2100 |
-
|
2101 |
-
|
2102 |
-
|
2103 |
-
|
2104 |
-
|
2105 |
-
|
2106 |
-
|
2107 |
-
|
2108 |
-
|
2109 |
-
|
2110 |
-
|
2111 |
-
|
2112 |
-
|
2113 |
-
|
2114 |
-
"
|
2115 |
-
|
2116 |
-
|
2117 |
-
|
2118 |
-
|
2119 |
-
|
2120 |
-
|
2121 |
-
|
2122 |
-
|
2123 |
-
|
2124 |
-
"
|
2125 |
-
msgstr ""
|
2126 |
-
|
2127 |
-
#: includes/admin/core/class-admin-settings.php:
|
2128 |
-
msgid "
|
2129 |
-
|
2130 |
-
|
2131 |
-
|
2132 |
-
|
2133 |
-
|
2134 |
-
|
2135 |
-
|
2136 |
-
|
2137 |
-
|
2138 |
-
|
2139 |
-
|
2140 |
-
|
2141 |
-
|
2142 |
-
|
2143 |
-
|
2144 |
-
|
2145 |
-
|
2146 |
-
|
2147 |
-
|
2148 |
-
|
2149 |
-
msgstr ""
|
2150 |
-
|
2151 |
-
#: includes/admin/core/class-admin-settings.php:
|
2152 |
-
msgid "
|
2153 |
-
msgstr ""
|
2154 |
-
|
2155 |
-
#: includes/admin/core/class-admin-settings.php:
|
2156 |
-
msgid "
|
2157 |
-
|
2158 |
-
|
2159 |
-
|
2160 |
-
|
2161 |
-
"
|
2162 |
-
|
2163 |
-
|
2164 |
-
|
2165 |
-
|
2166 |
-
|
2167 |
-
|
2168 |
-
|
2169 |
-
|
2170 |
-
|
2171 |
-
|
2172 |
-
|
2173 |
-
|
2174 |
-
|
2175 |
-
|
2176 |
-
#: includes/
|
2177 |
-
|
2178 |
-
|
2179 |
-
|
2180 |
-
|
2181 |
-
|
2182 |
-
|
2183 |
-
|
2184 |
-
|
2185 |
-
|
2186 |
-
|
2187 |
-
|
2188 |
-
|
2189 |
-
|
2190 |
-
|
2191 |
-
|
2192 |
-
|
2193 |
-
|
2194 |
-
|
2195 |
-
|
2196 |
-
|
2197 |
-
|
2198 |
-
|
2199 |
-
|
2200 |
-
|
2201 |
-
|
2202 |
-
|
2203 |
-
|
2204 |
-
|
2205 |
-
|
2206 |
-
|
2207 |
-
|
2208 |
-
|
2209 |
-
#: includes/
|
2210 |
-
|
2211 |
-
|
2212 |
-
|
2213 |
-
|
2214 |
-
|
2215 |
-
"
|
2216 |
-
|
2217 |
-
|
2218 |
-
|
2219 |
-
|
2220 |
-
|
2221 |
-
|
2222 |
-
|
2223 |
-
|
2224 |
-
|
2225 |
-
|
2226 |
-
|
2227 |
-
|
2228 |
-
|
2229 |
-
|
2230 |
-
|
2231 |
-
|
2232 |
-
|
2233 |
-
|
2234 |
-
|
2235 |
-
"
|
2236 |
-
msgstr ""
|
2237 |
-
|
2238 |
-
#: includes/admin/core/class-admin-settings.php:
|
2239 |
-
msgid "
|
2240 |
-
msgstr ""
|
2241 |
-
|
2242 |
-
#: includes/admin/core/class-admin-settings.php:
|
2243 |
-
msgid "
|
2244 |
-
msgstr ""
|
2245 |
-
|
2246 |
-
#: includes/admin/core/class-admin-settings.php:
|
2247 |
-
msgid "
|
2248 |
-
|
2249 |
-
|
2250 |
-
|
2251 |
-
|
2252 |
-
|
2253 |
-
|
2254 |
-
|
2255 |
-
|
2256 |
-
|
2257 |
-
|
2258 |
-
|
2259 |
-
|
2260 |
-
msgstr ""
|
2261 |
-
|
2262 |
-
#: includes/admin/core/class-admin-settings.php:
|
2263 |
-
msgid "
|
2264 |
-
msgstr ""
|
2265 |
-
|
2266 |
-
#: includes/admin/core/class-admin-settings.php:
|
2267 |
-
msgid ""
|
2268 |
-
"Whether to allow users changing their
|
2269 |
-
|
2270 |
-
|
2271 |
-
|
2272 |
-
|
2273 |
-
|
2274 |
-
|
2275 |
-
|
2276 |
-
|
2277 |
-
|
2278 |
-
|
2279 |
-
|
2280 |
-
|
2281 |
-
|
2282 |
-
|
2283 |
-
|
2284 |
-
|
2285 |
-
|
2286 |
-
|
2287 |
-
|
2288 |
-
|
2289 |
-
|
2290 |
-
|
2291 |
-
|
2292 |
-
|
2293 |
-
|
2294 |
-
|
2295 |
-
|
2296 |
-
|
2297 |
-
|
2298 |
-
|
2299 |
-
|
2300 |
-
|
2301 |
-
|
2302 |
-
|
2303 |
-
|
2304 |
-
|
2305 |
-
|
2306 |
-
|
2307 |
-
|
2308 |
-
|
2309 |
-
|
2310 |
-
|
2311 |
-
|
2312 |
-
|
2313 |
-
|
2314 |
-
|
2315 |
-
|
2316 |
-
|
2317 |
-
|
2318 |
-
|
2319 |
-
|
2320 |
-
|
2321 |
-
|
2322 |
-
|
2323 |
-
|
2324 |
-
"photo
|
2325 |
-
msgstr ""
|
2326 |
-
|
2327 |
-
#: includes/admin/core/class-admin-settings.php:
|
2328 |
-
msgid "
|
2329 |
-
msgstr ""
|
2330 |
-
|
2331 |
-
#: includes/admin/core/class-admin-settings.php:
|
2332 |
-
msgid ""
|
2333 |
-
|
2334 |
-
|
2335 |
-
|
2336 |
-
|
2337 |
-
|
2338 |
-
|
2339 |
-
|
2340 |
-
|
2341 |
-
|
2342 |
-
|
2343 |
-
|
2344 |
-
|
2345 |
-
|
2346 |
-
|
2347 |
-
|
2348 |
-
|
2349 |
-
|
2350 |
-
|
2351 |
-
|
2352 |
-
|
2353 |
-
|
2354 |
-
|
2355 |
-
|
2356 |
-
|
2357 |
-
|
2358 |
-
msgstr ""
|
2359 |
-
|
2360 |
-
#: includes/admin/core/class-admin-settings.php:
|
2361 |
-
msgid "
|
2362 |
-
msgstr ""
|
2363 |
-
|
2364 |
-
#: includes/admin/core/class-admin-settings.php:
|
2365 |
-
msgid "
|
2366 |
-
|
2367 |
-
|
2368 |
-
|
2369 |
-
|
2370 |
-
|
2371 |
-
|
2372 |
-
|
2373 |
-
|
2374 |
-
|
2375 |
-
|
2376 |
-
|
2377 |
-
|
2378 |
-
"
|
2379 |
-
|
2380 |
-
|
2381 |
-
|
2382 |
-
|
2383 |
-
|
2384 |
-
|
2385 |
-
|
2386 |
-
|
2387 |
-
|
2388 |
-
|
2389 |
-
|
2390 |
-
"
|
2391 |
-
msgstr ""
|
2392 |
-
|
2393 |
-
#: includes/admin/core/class-admin-settings.php:
|
2394 |
-
msgid "
|
2395 |
-
msgstr ""
|
2396 |
-
|
2397 |
-
#: includes/admin/core/class-admin-settings.php:
|
2398 |
-
msgid ""
|
2399 |
-
|
2400 |
-
|
2401 |
-
|
2402 |
-
|
2403 |
-
|
2404 |
-
|
2405 |
-
|
2406 |
-
|
2407 |
-
|
2408 |
-
|
2409 |
-
|
2410 |
-
|
2411 |
-
|
2412 |
-
|
2413 |
-
|
2414 |
-
|
2415 |
-
|
2416 |
-
|
2417 |
-
|
2418 |
-
|
2419 |
-
|
2420 |
-
|
2421 |
-
|
2422 |
-
|
2423 |
-
|
2424 |
-
|
2425 |
-
|
2426 |
-
|
2427 |
-
|
2428 |
-
|
2429 |
-
|
2430 |
-
|
2431 |
-
|
2432 |
-
|
2433 |
-
|
2434 |
-
|
2435 |
-
|
2436 |
-
|
2437 |
-
|
2438 |
-
|
2439 |
-
|
2440 |
-
|
2441 |
-
|
2442 |
-
|
2443 |
-
|
2444 |
-
|
2445 |
-
|
2446 |
-
|
2447 |
-
|
2448 |
-
|
2449 |
-
|
2450 |
-
|
2451 |
-
|
2452 |
-
|
2453 |
-
|
2454 |
-
|
2455 |
-
|
2456 |
-
|
2457 |
-
|
2458 |
-
|
2459 |
-
|
2460 |
-
|
2461 |
-
|
2462 |
-
|
2463 |
-
|
2464 |
-
|
2465 |
-
|
2466 |
-
|
2467 |
-
|
2468 |
-
|
2469 |
-
|
2470 |
-
|
2471 |
-
|
2472 |
-
|
2473 |
-
|
2474 |
-
|
2475 |
-
|
2476 |
-
|
2477 |
-
|
2478 |
-
|
2479 |
-
|
2480 |
-
#: includes/admin/
|
2481 |
-
|
2482 |
-
|
2483 |
-
|
2484 |
-
|
2485 |
-
|
2486 |
-
|
2487 |
-
|
2488 |
-
#: includes/admin/core/class-admin-settings.php:
|
2489 |
-
|
2490 |
-
|
2491 |
-
|
2492 |
-
|
2493 |
-
|
2494 |
-
|
2495 |
-
|
2496 |
-
|
2497 |
-
|
2498 |
-
#: includes/admin/
|
2499 |
-
|
2500 |
-
|
2501 |
-
|
2502 |
-
|
2503 |
-
|
2504 |
-
|
2505 |
-
|
2506 |
-
msgstr ""
|
2507 |
-
|
2508 |
-
#: includes/admin/core/class-admin-settings.php:
|
2509 |
-
msgid "
|
2510 |
-
msgstr ""
|
2511 |
-
|
2512 |
-
#: includes/admin/core/class-admin-settings.php:
|
2513 |
-
msgid "
|
2514 |
-
msgstr ""
|
2515 |
-
|
2516 |
-
#: includes/admin/core/class-admin-settings.php:
|
2517 |
-
#: includes/admin/core/class-admin-settings.php:
|
2518 |
-
#: includes/admin/core/class-admin-settings.php:
|
2519 |
-
|
2520 |
-
|
2521 |
-
|
2522 |
-
|
2523 |
-
|
2524 |
-
|
2525 |
-
|
2526 |
-
#: includes/admin/core/class-admin-settings.php:
|
2527 |
-
|
2528 |
-
|
2529 |
-
|
2530 |
-
#: includes/admin/
|
2531 |
-
msgid "
|
2532 |
-
msgstr ""
|
2533 |
-
|
2534 |
-
#: includes/admin/core/class-admin-settings.php:
|
2535 |
-
|
2536 |
-
|
2537 |
-
|
2538 |
-
|
2539 |
-
|
2540 |
-
|
2541 |
-
|
2542 |
-
|
2543 |
-
|
2544 |
-
|
2545 |
-
|
2546 |
-
|
2547 |
-
|
2548 |
-
|
2549 |
-
|
2550 |
-
|
2551 |
-
|
2552 |
-
"
|
2553 |
-
msgstr ""
|
2554 |
-
|
2555 |
-
#: includes/admin/core/class-admin-settings.php:
|
2556 |
-
|
2557 |
-
|
2558 |
-
|
2559 |
-
|
2560 |
-
|
2561 |
-
|
2562 |
-
|
2563 |
-
|
2564 |
-
|
2565 |
-
#: includes/admin/
|
2566 |
-
msgid "
|
2567 |
-
msgstr ""
|
2568 |
-
|
2569 |
-
#: includes/admin/core/class-admin-settings.php:
|
2570 |
-
|
2571 |
-
|
2572 |
-
|
2573 |
-
|
2574 |
-
|
2575 |
-
|
2576 |
-
"
|
2577 |
-
|
2578 |
-
|
2579 |
-
|
2580 |
-
|
2581 |
-
|
2582 |
-
|
2583 |
-
|
2584 |
-
|
2585 |
-
|
2586 |
-
|
2587 |
-
|
2588 |
-
|
2589 |
-
|
2590 |
-
|
2591 |
-
|
2592 |
-
|
2593 |
-
|
2594 |
-
|
2595 |
-
|
2596 |
-
|
2597 |
-
|
2598 |
-
|
2599 |
-
|
2600 |
-
|
2601 |
-
|
2602 |
-
|
2603 |
-
|
2604 |
-
#: includes/admin/
|
2605 |
-
msgid "
|
2606 |
-
msgstr ""
|
2607 |
-
|
2608 |
-
#: includes/admin/core/class-admin-settings.php:
|
2609 |
-
|
2610 |
-
|
2611 |
-
|
2612 |
-
|
2613 |
-
|
2614 |
-
|
2615 |
-
|
2616 |
-
|
2617 |
-
|
2618 |
-
|
2619 |
-
|
2620 |
-
|
2621 |
-
|
2622 |
-
|
2623 |
-
|
2624 |
-
|
2625 |
-
|
2626 |
-
|
2627 |
-
|
2628 |
-
|
2629 |
-
|
2630 |
-
|
2631 |
-
|
2632 |
-
|
2633 |
-
|
2634 |
-
"
|
2635 |
-
msgstr ""
|
2636 |
-
|
2637 |
-
#: includes/admin/core/class-admin-settings.php:
|
2638 |
-
msgid "
|
2639 |
-
msgstr ""
|
2640 |
-
|
2641 |
-
#: includes/admin/core/class-admin-settings.php:
|
2642 |
-
msgid ""
|
2643 |
-
|
2644 |
-
|
2645 |
-
|
2646 |
-
|
2647 |
-
|
2648 |
-
|
2649 |
-
|
2650 |
-
|
2651 |
-
|
2652 |
-
|
2653 |
-
|
2654 |
-
|
2655 |
-
|
2656 |
-
|
2657 |
-
|
2658 |
-
|
2659 |
-
|
2660 |
-
|
2661 |
-
|
2662 |
-
|
2663 |
-
|
2664 |
-
|
2665 |
-
|
2666 |
-
|
2667 |
-
|
2668 |
-
|
2669 |
-
|
2670 |
-
|
2671 |
-
|
2672 |
-
|
2673 |
-
|
2674 |
-
|
2675 |
-
|
2676 |
-
|
2677 |
-
|
2678 |
-
|
2679 |
-
|
2680 |
-
|
2681 |
-
|
2682 |
-
|
2683 |
-
|
2684 |
-
|
2685 |
-
|
2686 |
-
|
2687 |
-
|
2688 |
-
|
2689 |
-
|
2690 |
-
|
2691 |
-
|
2692 |
-
|
2693 |
-
|
2694 |
-
|
2695 |
-
|
2696 |
-
|
2697 |
-
|
2698 |
-
|
2699 |
-
|
2700 |
-
|
2701 |
-
|
2702 |
-
|
2703 |
-
|
2704 |
-
|
2705 |
-
|
2706 |
-
|
2707 |
-
|
2708 |
-
|
2709 |
-
|
2710 |
-
|
2711 |
-
|
2712 |
-
|
2713 |
-
|
2714 |
-
|
2715 |
-
|
2716 |
-
|
2717 |
-
#: includes/admin/core/class-admin-settings.php:
|
2718 |
-
msgid "
|
2719 |
-
msgstr ""
|
2720 |
-
|
2721 |
-
#: includes/admin/core/class-admin-settings.php:
|
2722 |
-
|
2723 |
-
|
2724 |
-
|
2725 |
-
|
2726 |
-
|
2727 |
-
|
2728 |
-
|
2729 |
-
|
2730 |
-
|
2731 |
-
|
2732 |
-
|
2733 |
-
|
2734 |
-
|
2735 |
-
|
2736 |
-
|
2737 |
-
|
2738 |
-
|
2739 |
-
|
2740 |
-
|
2741 |
-
|
2742 |
-
|
2743 |
-
|
2744 |
-
|
2745 |
-
|
2746 |
-
|
2747 |
-
|
2748 |
-
|
2749 |
-
|
2750 |
-
|
2751 |
-
|
2752 |
-
|
2753 |
-
|
2754 |
-
|
2755 |
-
|
2756 |
-
#: includes/admin/
|
2757 |
-
|
2758 |
-
|
2759 |
-
|
2760 |
-
|
2761 |
-
#: includes/admin/core/class-admin-settings.php:
|
2762 |
-
msgid "
|
2763 |
-
msgstr ""
|
2764 |
-
|
2765 |
-
#: includes/admin/core/class-admin-settings.php:
|
2766 |
-
#: includes/admin/core/class-admin-settings.php:
|
2767 |
-
msgid "
|
2768 |
-
msgstr ""
|
2769 |
-
|
2770 |
-
#: includes/admin/core/class-admin-settings.php:
|
2771 |
-
|
2772 |
-
|
2773 |
-
|
2774 |
-
|
2775 |
-
|
2776 |
-
"
|
2777 |
-
|
2778 |
-
|
2779 |
-
|
2780 |
-
|
2781 |
-
|
2782 |
-
|
2783 |
-
|
2784 |
-
|
2785 |
-
|
2786 |
-
|
2787 |
-
|
2788 |
-
|
2789 |
-
|
2790 |
-
|
2791 |
-
|
2792 |
-
|
2793 |
-
|
2794 |
-
|
2795 |
-
|
2796 |
-
|
2797 |
-
|
2798 |
-
|
2799 |
-
|
2800 |
-
|
2801 |
-
#: includes/admin/core/class-admin-settings.php:
|
2802 |
-
msgid "
|
2803 |
-
msgstr ""
|
2804 |
-
|
2805 |
-
#: includes/admin/core/class-admin-settings.php:
|
2806 |
-
msgid "
|
2807 |
-
msgstr ""
|
2808 |
-
|
2809 |
-
#: includes/admin/core/class-admin-settings.php:
|
2810 |
-
|
2811 |
-
|
2812 |
-
|
2813 |
-
|
2814 |
-
|
2815 |
-
|
2816 |
-
|
2817 |
-
|
2818 |
-
|
2819 |
-
|
2820 |
-
|
2821 |
-
|
2822 |
-
|
2823 |
-
|
2824 |
-
|
2825 |
-
#: includes/admin/
|
2826 |
-
msgid "Login
|
2827 |
-
msgstr ""
|
2828 |
-
|
2829 |
-
#: includes/admin/core/class-admin-settings.php:
|
2830 |
-
msgid "
|
2831 |
-
msgstr ""
|
2832 |
-
|
2833 |
-
#: includes/admin/core/class-admin-settings.php:
|
2834 |
-
msgid "
|
2835 |
-
msgstr ""
|
2836 |
-
|
2837 |
-
#: includes/admin/core/class-admin-settings.php:
|
2838 |
-
msgid ""
|
2839 |
-
|
2840 |
-
|
2841 |
-
|
2842 |
-
|
2843 |
-
|
2844 |
-
|
2845 |
-
|
2846 |
-
|
2847 |
-
|
2848 |
-
|
2849 |
-
|
2850 |
-
|
2851 |
-
|
2852 |
-
|
2853 |
-
|
2854 |
-
|
2855 |
-
|
2856 |
-
|
2857 |
-
|
2858 |
-
|
2859 |
-
|
2860 |
-
|
2861 |
-
|
2862 |
-
|
2863 |
-
|
2864 |
-
|
2865 |
-
|
2866 |
-
|
2867 |
-
|
2868 |
-
|
2869 |
-
|
2870 |
-
"
|
2871 |
-
"
|
2872 |
-
|
2873 |
-
|
2874 |
-
|
2875 |
-
|
2876 |
-
|
2877 |
-
|
2878 |
-
|
2879 |
-
|
2880 |
-
|
2881 |
-
|
2882 |
-
|
2883 |
-
|
2884 |
-
|
2885 |
-
|
2886 |
-
|
2887 |
-
|
2888 |
-
|
2889 |
-
|
2890 |
-
|
2891 |
-
|
2892 |
-
|
2893 |
-
|
2894 |
-
|
2895 |
-
|
2896 |
-
|
2897 |
-
|
2898 |
-
|
2899 |
-
|
2900 |
-
|
2901 |
-
|
2902 |
-
|
2903 |
-
|
2904 |
-
|
2905 |
-
|
2906 |
-
|
2907 |
-
|
2908 |
-
|
2909 |
-
|
2910 |
-
|
2911 |
-
|
2912 |
-
|
2913 |
-
|
2914 |
-
|
2915 |
-
|
2916 |
-
|
2917 |
-
|
2918 |
-
|
2919 |
-
|
2920 |
-
|
2921 |
-
|
2922 |
-
|
2923 |
-
|
2924 |
-
|
2925 |
-
|
2926 |
-
|
2927 |
-
|
2928 |
-
|
2929 |
-
|
2930 |
-
|
2931 |
-
|
2932 |
-
|
2933 |
-
|
2934 |
-
|
2935 |
-
|
2936 |
-
|
2937 |
-
|
2938 |
-
|
2939 |
-
|
2940 |
-
|
2941 |
-
|
2942 |
-
|
2943 |
-
|
2944 |
-
|
2945 |
-
|
2946 |
-
|
2947 |
-
|
2948 |
-
|
2949 |
-
|
2950 |
-
|
2951 |
-
msgid ""
|
2952 |
-
|
2953 |
-
|
2954 |
-
|
2955 |
-
|
2956 |
-
|
2957 |
-
|
2958 |
-
|
2959 |
-
msgid ""
|
2960 |
-
"
|
2961 |
-
"
|
2962 |
-
msgstr ""
|
2963 |
-
|
2964 |
-
#: includes/admin/core/class-admin-settings.php:
|
2965 |
-
|
2966 |
-
|
2967 |
-
|
2968 |
-
|
2969 |
-
"
|
2970 |
-
msgstr ""
|
2971 |
-
|
2972 |
-
#: includes/admin/core/class-admin-settings.php:
|
2973 |
-
|
2974 |
-
|
2975 |
-
|
2976 |
-
|
2977 |
-
"
|
2978 |
-
msgstr ""
|
2979 |
-
|
2980 |
-
#: includes/admin/core/class-admin-settings.php:
|
2981 |
-
|
2982 |
-
|
2983 |
-
|
2984 |
-
|
2985 |
-
|
2986 |
-
|
2987 |
-
|
2988 |
-
|
2989 |
-
msgid ""
|
2990 |
-
|
2991 |
-
|
2992 |
-
|
2993 |
-
|
2994 |
-
|
2995 |
-
|
2996 |
-
|
2997 |
-
"
|
2998 |
-
|
2999 |
-
|
3000 |
-
|
3001 |
-
#: includes/admin/core/class-admin-settings.php:
|
3002 |
-
|
3003 |
-
|
3004 |
-
|
3005 |
-
|
3006 |
-
|
3007 |
-
|
3008 |
-
#: includes/admin/core/class-admin-settings.php:
|
3009 |
-
|
3010 |
-
|
3011 |
-
|
3012 |
-
"
|
3013 |
-
|
3014 |
-
|
3015 |
-
|
3016 |
-
|
3017 |
-
|
3018 |
-
|
3019 |
-
"
|
3020 |
-
|
3021 |
-
|
3022 |
-
|
3023 |
-
|
3024 |
-
|
3025 |
-
|
3026 |
-
|
3027 |
-
|
3028 |
-
|
3029 |
-
|
3030 |
-
|
3031 |
-
|
3032 |
-
|
3033 |
-
|
3034 |
-
|
3035 |
-
|
3036 |
-
msgstr ""
|
3037 |
-
|
3038 |
-
#: includes/admin/core/class-admin-settings.php:
|
3039 |
-
|
3040 |
-
msgid "
|
3041 |
-
|
3042 |
-
|
3043 |
-
|
3044 |
-
|
3045 |
-
|
3046 |
-
|
3047 |
-
#: includes/admin/core/class-admin-settings.php:
|
3048 |
-
msgid "
|
3049 |
-
msgstr ""
|
3050 |
-
|
3051 |
-
#: includes/admin/core/class-admin-settings.php:
|
3052 |
-
|
3053 |
-
|
3054 |
-
|
3055 |
-
|
3056 |
-
|
3057 |
-
|
3058 |
-
|
3059 |
-
|
3060 |
-
|
3061 |
-
|
3062 |
-
|
3063 |
-
|
3064 |
-
|
3065 |
-
|
3066 |
-
|
3067 |
-
|
3068 |
-
|
3069 |
-
|
3070 |
-
|
3071 |
-
|
3072 |
-
|
3073 |
-
|
3074 |
-
|
3075 |
-
|
3076 |
-
|
3077 |
-
|
3078 |
-
|
3079 |
-
|
3080 |
-
|
3081 |
-
|
3082 |
-
|
3083 |
-
|
3084 |
-
"
|
3085 |
-
|
3086 |
-
|
3087 |
-
|
3088 |
-
|
3089 |
-
|
3090 |
-
|
3091 |
-
|
3092 |
-
|
3093 |
-
|
3094 |
-
|
3095 |
-
|
3096 |
-
|
3097 |
-
|
3098 |
-
|
3099 |
-
|
3100 |
-
|
3101 |
-
|
3102 |
-
"
|
3103 |
-
|
3104 |
-
|
3105 |
-
|
3106 |
-
|
3107 |
-
msgid ""
|
3108 |
-
"
|
3109 |
-
"
|
3110 |
-
msgstr ""
|
3111 |
-
|
3112 |
-
#: includes/admin/core/class-admin-upgrade.php:
|
3113 |
-
msgid "Upgrade
|
3114 |
-
msgstr ""
|
3115 |
-
|
3116 |
-
#: includes/admin/core/class-admin-upgrade.php:
|
3117 |
-
msgid "
|
3118 |
-
msgstr ""
|
3119 |
-
|
3120 |
-
#: includes/admin/core/class-admin-
|
3121 |
-
|
3122 |
-
msgid "
|
3123 |
-
msgstr ""
|
3124 |
-
|
3125 |
-
#: includes/admin/core/class-admin-
|
3126 |
-
|
3127 |
-
msgid "
|
3128 |
-
|
3129 |
-
|
3130 |
-
|
3131 |
-
|
3132 |
-
|
3133 |
-
|
3134 |
-
|
3135 |
-
|
3136 |
-
#: includes/core/
|
3137 |
-
msgid "
|
3138 |
-
msgstr ""
|
3139 |
-
|
3140 |
-
#: includes/admin/core/class-admin-
|
3141 |
-
|
3142 |
-
|
3143 |
-
|
3144 |
-
|
3145 |
-
|
3146 |
-
|
3147 |
-
|
3148 |
-
msgstr ""
|
3149 |
-
|
3150 |
-
#: includes/admin/core/class-admin-
|
3151 |
-
msgid "
|
3152 |
-
|
3153 |
-
|
3154 |
-
|
3155 |
-
|
3156 |
-
|
3157 |
-
|
3158 |
-
|
3159 |
-
|
3160 |
-
|
3161 |
-
|
3162 |
-
|
3163 |
-
|
3164 |
-
|
3165 |
-
|
3166 |
-
|
3167 |
-
|
3168 |
-
|
3169 |
-
#: includes/core/class-
|
3170 |
-
|
3171 |
-
|
3172 |
-
|
3173 |
-
|
3174 |
-
|
3175 |
-
|
3176 |
-
|
3177 |
-
|
3178 |
-
|
3179 |
-
|
3180 |
-
|
3181 |
-
|
3182 |
-
|
3183 |
-
|
3184 |
-
|
3185 |
-
|
3186 |
-
|
3187 |
-
|
3188 |
-
|
3189 |
-
|
3190 |
-
|
3191 |
-
|
3192 |
-
|
3193 |
-
|
3194 |
-
|
3195 |
-
|
3196 |
-
|
3197 |
-
|
3198 |
-
|
3199 |
-
|
3200 |
-
|
3201 |
-
|
3202 |
-
|
3203 |
-
|
3204 |
-
|
3205 |
-
|
3206 |
-
|
3207 |
-
|
3208 |
-
|
3209 |
-
|
3210 |
-
|
3211 |
-
|
3212 |
-
|
3213 |
-
|
3214 |
-
|
3215 |
-
|
3216 |
-
|
3217 |
-
|
3218 |
-
|
3219 |
-
|
3220 |
-
|
3221 |
-
|
3222 |
-
|
3223 |
-
|
3224 |
-
|
3225 |
-
|
3226 |
-
#: includes/admin/
|
3227 |
-
|
3228 |
-
|
3229 |
-
|
3230 |
-
|
3231 |
-
|
3232 |
-
|
3233 |
-
|
3234 |
-
|
3235 |
-
#: includes/admin/core/
|
3236 |
-
msgid "
|
3237 |
-
msgstr ""
|
3238 |
-
|
3239 |
-
#: includes/admin/core/list-tables/
|
3240 |
-
|
3241 |
-
|
3242 |
-
|
3243 |
-
|
3244 |
-
|
3245 |
-
|
3246 |
-
|
3247 |
-
|
3248 |
-
|
3249 |
-
|
3250 |
-
|
3251 |
-
|
3252 |
-
|
3253 |
-
|
3254 |
-
|
3255 |
-
|
3256 |
-
|
3257 |
-
|
3258 |
-
|
3259 |
-
|
3260 |
-
|
3261 |
-
|
3262 |
-
|
3263 |
-
|
3264 |
-
|
3265 |
-
|
3266 |
-
|
3267 |
-
|
3268 |
-
|
3269 |
-
|
3270 |
-
|
3271 |
-
|
3272 |
-
msgid "
|
3273 |
-
|
3274 |
-
|
3275 |
-
|
3276 |
-
|
3277 |
-
|
3278 |
-
|
3279 |
-
#: includes/admin/core/list-tables/roles-list-table.php:
|
3280 |
-
|
3281 |
-
|
3282 |
-
|
3283 |
-
|
3284 |
-
#: includes/admin/core/
|
3285 |
-
|
3286 |
-
|
3287 |
-
|
3288 |
-
|
3289 |
-
|
3290 |
-
|
3291 |
-
|
3292 |
-
|
3293 |
-
|
3294 |
-
|
3295 |
-
|
3296 |
-
|
3297 |
-
|
3298 |
-
|
3299 |
-
|
3300 |
-
|
3301 |
-
|
3302 |
-
|
3303 |
-
|
3304 |
-
|
3305 |
-
msgid "
|
3306 |
-
msgstr ""
|
3307 |
-
|
3308 |
-
#: includes/admin/core/
|
3309 |
-
msgid "
|
3310 |
-
msgstr ""
|
3311 |
-
|
3312 |
-
#: includes/admin/core/
|
3313 |
-
msgid "
|
3314 |
-
msgstr ""
|
3315 |
-
|
3316 |
-
#: includes/admin/core/
|
3317 |
-
msgid "
|
3318 |
-
msgstr ""
|
3319 |
-
|
3320 |
-
#: includes/admin/core/
|
3321 |
-
msgid "
|
3322 |
-
msgstr ""
|
3323 |
-
|
3324 |
-
#: includes/admin/core/
|
3325 |
-
|
3326 |
-
|
3327 |
-
|
3328 |
-
|
3329 |
-
|
3330 |
-
|
3331 |
-
|
3332 |
-
|
3333 |
-
|
3334 |
-
|
3335 |
-
|
3336 |
-
|
3337 |
-
|
3338 |
-
|
3339 |
-
|
3340 |
-
|
3341 |
-
|
3342 |
-
|
3343 |
-
|
3344 |
-
|
3345 |
-
|
3346 |
-
|
3347 |
-
|
3348 |
-
|
3349 |
-
|
3350 |
-
|
3351 |
-
|
3352 |
-
|
3353 |
-
|
3354 |
-
|
3355 |
-
|
3356 |
-
|
3357 |
-
|
3358 |
-
|
3359 |
-
|
3360 |
-
|
3361 |
-
|
3362 |
-
|
3363 |
-
|
3364 |
-
|
3365 |
-
|
3366 |
-
|
3367 |
-
|
3368 |
-
|
3369 |
-
|
3370 |
-
|
3371 |
-
|
3372 |
-
|
3373 |
-
|
3374 |
-
|
3375 |
-
|
3376 |
-
|
3377 |
-
|
3378 |
-
|
3379 |
-
|
3380 |
-
|
3381 |
-
|
3382 |
-
|
3383 |
-
|
3384 |
-
|
3385 |
-
|
3386 |
-
|
3387 |
-
|
3388 |
-
|
3389 |
-
|
3390 |
-
|
3391 |
-
|
3392 |
-
#: includes/admin/core/packages/2.0
|
3393 |
-
msgid "Upgrade
|
3394 |
-
msgstr ""
|
3395 |
-
|
3396 |
-
#: includes/admin/core/packages/2.0-beta1/init.php:
|
3397 |
-
msgid "Upgrade
|
3398 |
-
msgstr ""
|
3399 |
-
|
3400 |
-
#: includes/admin/core/packages/2.0-beta1/init.php:
|
3401 |
-
msgid "Upgrade
|
3402 |
-
msgstr ""
|
3403 |
-
|
3404 |
-
#: includes/admin/core/packages/2.0-beta1/init.php:
|
3405 |
-
msgid "
|
3406 |
-
msgstr ""
|
3407 |
-
|
3408 |
-
#: includes/admin/core/packages/2.0-beta1/init.php:
|
3409 |
-
|
3410 |
-
|
3411 |
-
|
3412 |
-
|
3413 |
-
|
3414 |
-
|
3415 |
-
|
3416 |
-
|
3417 |
-
|
3418 |
-
|
3419 |
-
|
3420 |
-
|
3421 |
-
|
3422 |
-
|
3423 |
-
|
3424 |
-
|
3425 |
-
|
3426 |
-
|
3427 |
-
|
3428 |
-
|
3429 |
-
|
3430 |
-
|
3431 |
-
|
3432 |
-
|
3433 |
-
|
3434 |
-
|
3435 |
-
|
3436 |
-
|
3437 |
-
|
3438 |
-
|
3439 |
-
|
3440 |
-
|
3441 |
-
#: includes/core/
|
3442 |
-
msgid "
|
3443 |
-
msgstr ""
|
3444 |
-
|
3445 |
-
#: includes/admin/core/packages/2.0-beta1/
|
3446 |
-
msgid "
|
3447 |
-
msgstr ""
|
3448 |
-
|
3449 |
-
#: includes/admin/core/packages/2.0
|
3450 |
-
msgid "
|
3451 |
-
msgstr ""
|
3452 |
-
|
3453 |
-
#: includes/admin/core/packages/2.0
|
3454 |
-
msgid "
|
3455 |
-
msgstr ""
|
3456 |
-
|
3457 |
-
#: includes/admin/core/packages/2.0
|
3458 |
-
msgid "
|
3459 |
-
msgstr ""
|
3460 |
-
|
3461 |
-
#: includes/admin/core/packages/2.0
|
3462 |
-
msgid "
|
3463 |
-
msgstr ""
|
3464 |
-
|
3465 |
-
#: includes/admin/core/packages/2.0
|
3466 |
-
msgid "
|
3467 |
-
msgstr ""
|
3468 |
-
|
3469 |
-
#: includes/admin/core/packages/2.0
|
3470 |
-
msgid "
|
3471 |
-
msgstr ""
|
3472 |
-
|
3473 |
-
#: includes/admin/core/packages/2.0
|
3474 |
-
msgid "
|
3475 |
-
msgstr ""
|
3476 |
-
|
3477 |
-
#: includes/admin/core/packages/2.0
|
3478 |
-
msgid "
|
3479 |
-
msgstr ""
|
3480 |
-
|
3481 |
-
#: includes/admin/
|
3482 |
-
|
3483 |
-
|
3484 |
-
|
3485 |
-
|
3486 |
-
|
3487 |
-
msgid "
|
3488 |
-
msgstr ""
|
3489 |
-
|
3490 |
-
#: includes/admin/
|
3491 |
-
msgid "
|
3492 |
-
msgstr ""
|
3493 |
-
|
3494 |
-
#: includes/admin/
|
3495 |
-
|
3496 |
-
|
3497 |
-
|
3498 |
-
|
3499 |
-
|
3500 |
-
|
3501 |
-
|
3502 |
-
|
3503 |
-
|
3504 |
-
|
3505 |
-
|
3506 |
-
|
3507 |
-
|
3508 |
-
|
3509 |
-
|
3510 |
-
|
3511 |
-
|
3512 |
-
|
3513 |
-
|
3514 |
-
|
3515 |
-
|
3516 |
-
|
3517 |
-
|
3518 |
-
|
3519 |
-
|
3520 |
-
|
3521 |
-
|
3522 |
-
#: includes/core/
|
3523 |
-
msgid "
|
3524 |
-
msgstr ""
|
3525 |
-
|
3526 |
-
#: includes/admin/
|
3527 |
-
|
3528 |
-
|
3529 |
-
|
3530 |
-
|
3531 |
-
|
3532 |
-
|
3533 |
-
|
3534 |
-
#: includes/admin/
|
3535 |
-
msgid "
|
3536 |
-
msgstr ""
|
3537 |
-
|
3538 |
-
#: includes/admin/templates/
|
3539 |
-
msgid "
|
3540 |
-
msgstr ""
|
3541 |
-
|
3542 |
-
#: includes/admin/templates/
|
3543 |
-
|
3544 |
-
|
3545 |
-
|
3546 |
-
|
3547 |
-
|
3548 |
-
|
3549 |
-
|
3550 |
-
|
3551 |
-
|
3552 |
-
|
3553 |
-
|
3554 |
-
|
3555 |
-
|
3556 |
-
|
3557 |
-
|
3558 |
-
|
3559 |
-
|
3560 |
-
|
3561 |
-
|
3562 |
-
|
3563 |
-
|
3564 |
-
|
3565 |
-
|
3566 |
-
msgstr ""
|
3567 |
-
|
3568 |
-
#: includes/admin/templates/
|
3569 |
-
msgid "
|
3570 |
-
|
3571 |
-
|
3572 |
-
|
3573 |
-
|
3574 |
-
|
3575 |
-
|
3576 |
-
|
3577 |
-
|
3578 |
-
|
3579 |
-
|
3580 |
-
|
3581 |
-
|
3582 |
-
|
3583 |
-
|
3584 |
-
|
3585 |
-
|
3586 |
-
|
3587 |
-
|
3588 |
-
|
3589 |
-
|
3590 |
-
#: includes/admin/templates/
|
3591 |
-
|
3592 |
-
|
3593 |
-
|
3594 |
-
|
3595 |
-
|
3596 |
-
|
3597 |
-
|
3598 |
-
|
3599 |
-
|
3600 |
-
|
3601 |
-
|
3602 |
-
|
3603 |
-
|
3604 |
-
|
3605 |
-
|
3606 |
-
|
3607 |
-
|
3608 |
-
|
3609 |
-
|
3610 |
-
|
3611 |
-
|
3612 |
-
|
3613 |
-
|
3614 |
-
|
3615 |
-
|
3616 |
-
|
3617 |
-
|
3618 |
-
|
3619 |
-
|
3620 |
-
|
3621 |
-
|
3622 |
-
|
3623 |
-
|
3624 |
-
|
3625 |
-
|
3626 |
-
|
3627 |
-
|
3628 |
-
|
3629 |
-
|
3630 |
-
|
3631 |
-
|
3632 |
-
|
3633 |
-
|
3634 |
-
|
3635 |
-
|
3636 |
-
|
3637 |
-
|
3638 |
-
|
3639 |
-
|
3640 |
-
|
3641 |
-
|
3642 |
-
|
3643 |
-
|
3644 |
-
|
3645 |
-
|
3646 |
-
|
3647 |
-
|
3648 |
-
|
3649 |
-
|
3650 |
-
|
3651 |
-
|
3652 |
-
|
3653 |
-
|
3654 |
-
|
3655 |
-
|
3656 |
-
|
3657 |
-
|
3658 |
-
|
3659 |
-
|
3660 |
-
|
3661 |
-
|
3662 |
-
|
3663 |
-
|
3664 |
-
|
3665 |
-
#: includes/admin/templates/directory/
|
3666 |
-
|
3667 |
-
|
3668 |
-
|
3669 |
-
|
3670 |
-
|
3671 |
-
|
3672 |
-
|
3673 |
-
|
3674 |
-
|
3675 |
-
|
3676 |
-
|
3677 |
-
|
3678 |
-
|
3679 |
-
|
3680 |
-
|
3681 |
-
|
3682 |
-
|
3683 |
-
|
3684 |
-
|
3685 |
-
|
3686 |
-
|
3687 |
-
|
3688 |
-
|
3689 |
-
|
3690 |
-
|
3691 |
-
|
3692 |
-
|
3693 |
-
|
3694 |
-
|
3695 |
-
|
3696 |
-
|
3697 |
-
|
3698 |
-
|
3699 |
-
|
3700 |
-
|
3701 |
-
|
3702 |
-
|
3703 |
-
|
3704 |
-
|
3705 |
-
|
3706 |
-
|
3707 |
-
|
3708 |
-
msgstr ""
|
3709 |
-
|
3710 |
-
#: includes/admin/templates/directory/
|
3711 |
-
|
3712 |
-
|
3713 |
-
|
3714 |
-
|
3715 |
-
|
3716 |
-
|
3717 |
-
|
3718 |
-
|
3719 |
-
|
3720 |
-
|
3721 |
-
|
3722 |
-
|
3723 |
-
|
3724 |
-
|
3725 |
-
|
3726 |
-
|
3727 |
-
|
3728 |
-
"
|
3729 |
-
|
3730 |
-
|
3731 |
-
|
3732 |
-
|
3733 |
-
|
3734 |
-
|
3735 |
-
|
3736 |
-
|
3737 |
-
|
3738 |
-
|
3739 |
-
|
3740 |
-
|
3741 |
-
#: includes/admin/templates/directory/search.php:
|
3742 |
-
msgid "
|
3743 |
-
msgstr ""
|
3744 |
-
|
3745 |
-
#: includes/admin/templates/directory/
|
3746 |
-
|
3747 |
-
|
3748 |
-
|
3749 |
-
|
3750 |
-
|
3751 |
-
|
3752 |
-
|
3753 |
-
|
3754 |
-
|
3755 |
-
|
3756 |
-
|
3757 |
-
|
3758 |
-
|
3759 |
-
|
3760 |
-
|
3761 |
-
|
3762 |
-
|
3763 |
-
|
3764 |
-
|
3765 |
-
|
3766 |
-
"
|
3767 |
-
|
3768 |
-
|
3769 |
-
|
3770 |
-
|
3771 |
-
|
3772 |
-
|
3773 |
-
|
3774 |
-
|
3775 |
-
|
3776 |
-
|
3777 |
-
|
3778 |
-
|
3779 |
-
|
3780 |
-
|
3781 |
-
|
3782 |
-
|
3783 |
-
|
3784 |
-
|
3785 |
-
|
3786 |
-
|
3787 |
-
|
3788 |
-
|
3789 |
-
|
3790 |
-
|
3791 |
-
|
3792 |
-
|
3793 |
-
|
3794 |
-
|
3795 |
-
|
3796 |
-
|
3797 |
-
|
3798 |
-
|
3799 |
-
|
3800 |
-
|
3801 |
-
#: includes/admin/templates/
|
3802 |
-
|
3803 |
-
|
3804 |
-
|
3805 |
-
|
3806 |
-
|
3807 |
-
#: includes/admin/templates/
|
3808 |
-
|
3809 |
-
|
3810 |
-
|
3811 |
-
|
3812 |
-
|
3813 |
-
|
3814 |
-
|
3815 |
-
|
3816 |
-
|
3817 |
-
|
3818 |
-
|
3819 |
-
|
3820 |
-
|
3821 |
-
#: includes/admin/templates/
|
3822 |
-
|
3823 |
-
|
3824 |
-
|
3825 |
-
|
3826 |
-
|
3827 |
-
|
3828 |
-
|
3829 |
-
|
3830 |
-
|
3831 |
-
|
3832 |
-
|
3833 |
-
#: includes/admin/templates/
|
3834 |
-
|
3835 |
-
|
3836 |
-
|
3837 |
-
|
3838 |
-
|
3839 |
-
|
3840 |
-
|
3841 |
-
#: includes/admin/templates/
|
3842 |
-
msgid "
|
3843 |
-
|
3844 |
-
|
3845 |
-
|
3846 |
-
#: includes/admin/templates/
|
3847 |
-
|
3848 |
-
|
3849 |
-
|
3850 |
-
#: includes/admin/templates/
|
3851 |
-
|
3852 |
-
|
3853 |
-
|
3854 |
-
|
3855 |
-
#: includes/admin/templates/
|
3856 |
-
|
3857 |
-
|
3858 |
-
|
3859 |
-
|
3860 |
-
|
3861 |
-
#: includes/admin/templates/
|
3862 |
-
|
3863 |
-
|
3864 |
-
|
3865 |
-
|
3866 |
-
|
3867 |
-
|
3868 |
-
|
3869 |
-
|
3870 |
-
|
3871 |
-
|
3872 |
-
|
3873 |
-
|
3874 |
-
#: includes/admin/templates/
|
3875 |
-
msgid "
|
3876 |
-
msgstr ""
|
3877 |
-
|
3878 |
-
#: includes/admin/templates/
|
3879 |
-
|
3880 |
-
"
|
3881 |
-
"
|
3882 |
-
|
3883 |
-
|
3884 |
-
|
3885 |
-
|
3886 |
-
|
3887 |
-
|
3888 |
-
|
3889 |
-
|
3890 |
-
|
3891 |
-
#: includes/admin/templates/
|
3892 |
-
#: includes/admin/templates/
|
3893 |
-
#: includes/admin/templates/
|
3894 |
-
|
3895 |
-
|
3896 |
-
|
3897 |
-
|
3898 |
-
#: includes/admin/templates/form/
|
3899 |
-
#: includes/admin/templates/
|
3900 |
-
msgid "
|
3901 |
-
|
3902 |
-
|
3903 |
-
|
3904 |
-
|
3905 |
-
|
3906 |
-
|
3907 |
-
|
3908 |
-
|
3909 |
-
|
3910 |
-
|
3911 |
-
#: includes/admin/templates/
|
3912 |
-
#: includes/admin/templates/
|
3913 |
-
#: includes/admin/templates/
|
3914 |
-
|
3915 |
-
|
3916 |
-
|
3917 |
-
|
3918 |
-
#: includes/admin/templates/form/
|
3919 |
-
|
3920 |
-
"
|
3921 |
-
msgstr ""
|
3922 |
-
|
3923 |
-
#: includes/admin/templates/form/
|
3924 |
-
|
3925 |
-
|
3926 |
-
|
3927 |
-
|
3928 |
-
|
3929 |
-
|
3930 |
-
|
3931 |
-
#: includes/admin/templates/form/profile_customize.php:
|
3932 |
-
|
3933 |
-
"
|
3934 |
-
|
3935 |
-
|
3936 |
-
|
3937 |
-
#: includes/admin/templates/form/
|
3938 |
-
|
3939 |
-
|
3940 |
-
|
3941 |
-
#: includes/admin/templates/form/
|
3942 |
-
msgid "
|
3943 |
-
msgstr ""
|
3944 |
-
|
3945 |
-
#: includes/admin/templates/form/
|
3946 |
-
|
3947 |
-
|
3948 |
-
|
3949 |
-
|
3950 |
-
|
3951 |
-
|
3952 |
-
|
3953 |
-
#: includes/admin/templates/form/
|
3954 |
-
msgid "
|
3955 |
-
msgstr ""
|
3956 |
-
|
3957 |
-
#: includes/admin/templates/form/
|
3958 |
-
msgid "
|
3959 |
-
msgstr ""
|
3960 |
-
|
3961 |
-
#: includes/admin/templates/form/
|
3962 |
-
msgid "Show
|
3963 |
-
msgstr ""
|
3964 |
-
|
3965 |
-
#: includes/admin/templates/form/
|
3966 |
-
msgid "
|
3967 |
-
msgstr ""
|
3968 |
-
|
3969 |
-
#: includes/admin/templates/form/
|
3970 |
-
msgid "
|
3971 |
-
|
3972 |
-
|
3973 |
-
|
3974 |
-
|
3975 |
-
|
3976 |
-
|
3977 |
-
#: includes/admin/templates/
|
3978 |
-
msgid ""
|
3979 |
-
|
3980 |
-
|
3981 |
-
|
3982 |
-
|
3983 |
-
#: includes/admin/templates/
|
3984 |
-
|
3985 |
-
|
3986 |
-
|
3987 |
-
|
3988 |
-
|
3989 |
-
|
3990 |
-
|
3991 |
-
|
3992 |
-
|
3993 |
-
|
3994 |
-
|
3995 |
-
#: includes/admin/templates/
|
3996 |
-
msgid "
|
3997 |
-
msgstr ""
|
3998 |
-
|
3999 |
-
#: includes/admin/templates/form/
|
4000 |
-
|
4001 |
-
|
4002 |
-
|
4003 |
-
#: includes/admin/templates/
|
4004 |
-
|
4005 |
-
|
4006 |
-
|
4007 |
-
|
4008 |
-
|
4009 |
-
#:
|
4010 |
-
msgid "
|
4011 |
-
|
4012 |
-
|
4013 |
-
|
4014 |
-
|
4015 |
-
|
4016 |
-
|
4017 |
-
|
4018 |
-
#: includes/admin/templates/form/
|
4019 |
-
|
4020 |
-
|
4021 |
-
|
4022 |
-
|
4023 |
-
|
4024 |
-
|
4025 |
-
|
4026 |
-
|
4027 |
-
|
4028 |
-
#: includes/admin/templates/form/
|
4029 |
-
|
4030 |
-
|
4031 |
-
|
4032 |
-
|
4033 |
-
|
4034 |
-
|
4035 |
-
|
4036 |
-
|
4037 |
-
|
4038 |
-
|
4039 |
-
|
4040 |
-
|
4041 |
-
|
4042 |
-
|
4043 |
-
|
4044 |
-
|
4045 |
-
|
4046 |
-
|
4047 |
-
|
4048 |
-
|
4049 |
-
|
4050 |
-
|
4051 |
-
|
4052 |
-
|
4053 |
-
|
4054 |
-
|
4055 |
-
|
4056 |
-
|
4057 |
-
|
4058 |
-
"
|
4059 |
-
|
4060 |
-
|
4061 |
-
|
4062 |
-
|
4063 |
-
|
4064 |
-
|
4065 |
-
|
4066 |
-
|
4067 |
-
|
4068 |
-
|
4069 |
-
|
4070 |
-
"
|
4071 |
-
msgstr ""
|
4072 |
-
|
4073 |
-
#: includes/admin/templates/
|
4074 |
-
msgid ""
|
4075 |
-
"
|
4076 |
-
"
|
4077 |
-
msgstr ""
|
4078 |
-
|
4079 |
-
#: includes/admin/templates/
|
4080 |
-
msgid ""
|
4081 |
-
|
4082 |
-
|
4083 |
-
|
4084 |
-
|
4085 |
-
|
4086 |
-
|
4087 |
-
|
4088 |
-
|
4089 |
-
|
4090 |
-
|
4091 |
-
|
4092 |
-
|
4093 |
-
|
4094 |
-
|
4095 |
-
|
4096 |
-
"
|
4097 |
-
|
4098 |
-
|
4099 |
-
|
4100 |
-
|
4101 |
-
|
4102 |
-
|
4103 |
-
|
4104 |
-
|
4105 |
-
|
4106 |
-
|
4107 |
-
|
4108 |
-
|
4109 |
-
|
4110 |
-
|
4111 |
-
#:
|
4112 |
-
|
4113 |
-
|
4114 |
-
|
4115 |
-
#: includes/admin/templates/
|
4116 |
-
|
4117 |
-
|
4118 |
-
|
4119 |
-
#: includes/
|
4120 |
-
#: includes/
|
4121 |
-
#:
|
4122 |
-
|
4123 |
-
|
4124 |
-
|
4125 |
-
|
4126 |
-
|
4127 |
-
|
4128 |
-
|
4129 |
-
|
4130 |
-
|
4131 |
-
|
4132 |
-
|
4133 |
-
|
4134 |
-
|
4135 |
-
|
4136 |
-
|
4137 |
-
|
4138 |
-
|
4139 |
-
|
4140 |
-
|
4141 |
-
msgid "
|
4142 |
-
msgstr ""
|
4143 |
-
|
4144 |
-
#: includes/admin/templates/
|
4145 |
-
|
4146 |
-
|
4147 |
-
|
4148 |
-
|
4149 |
-
|
4150 |
-
|
4151 |
-
|
4152 |
-
|
4153 |
-
|
4154 |
-
|
4155 |
-
|
4156 |
-
|
4157 |
-
|
4158 |
-
|
4159 |
-
|
4160 |
-
|
4161 |
-
|
4162 |
-
|
4163 |
-
|
4164 |
-
|
4165 |
-
|
4166 |
-
|
4167 |
-
|
4168 |
-
|
4169 |
-
msgstr ""
|
4170 |
-
|
4171 |
-
#: includes/admin/templates/
|
4172 |
-
msgid "
|
4173 |
-
|
4174 |
-
|
4175 |
-
|
4176 |
-
|
4177 |
-
|
4178 |
-
|
4179 |
-
|
4180 |
-
|
4181 |
-
|
4182 |
-
|
4183 |
-
|
4184 |
-
|
4185 |
-
|
4186 |
-
|
4187 |
-
|
4188 |
-
|
4189 |
-
|
4190 |
-
|
4191 |
-
|
4192 |
-
|
4193 |
-
|
4194 |
-
|
4195 |
-
|
4196 |
-
|
4197 |
-
|
4198 |
-
|
4199 |
-
|
4200 |
-
|
4201 |
-
|
4202 |
-
|
4203 |
-
|
4204 |
-
|
4205 |
-
#: includes/admin/templates/
|
4206 |
-
#: includes/admin/templates/
|
4207 |
-
|
4208 |
-
|
4209 |
-
|
4210 |
-
|
4211 |
-
|
4212 |
-
#: includes/
|
4213 |
-
|
4214 |
-
|
4215 |
-
|
4216 |
-
#: includes/
|
4217 |
-
msgid "
|
4218 |
-
msgstr ""
|
4219 |
-
|
4220 |
-
#: includes/admin/templates/
|
4221 |
-
msgid "
|
4222 |
-
msgstr ""
|
4223 |
-
|
4224 |
-
#: includes/admin/templates/
|
4225 |
-
msgid ""
|
4226 |
-
|
4227 |
-
|
4228 |
-
|
4229 |
-
|
4230 |
-
|
4231 |
-
|
4232 |
-
|
4233 |
-
|
4234 |
-
|
4235 |
-
|
4236 |
-
|
4237 |
-
|
4238 |
-
|
4239 |
-
|
4240 |
-
|
4241 |
-
|
4242 |
-
|
4243 |
-
|
4244 |
-
|
4245 |
-
|
4246 |
-
|
4247 |
-
#: includes/admin/templates/role/general.php:15
|
4248 |
-
msgid "Can this role edit his own profile?"
|
4249 |
-
msgstr ""
|
4250 |
-
|
4251 |
-
#: includes/admin/templates/role/general.php:21
|
4252 |
-
msgid "Can delete their account?"
|
4253 |
-
msgstr ""
|
4254 |
-
|
4255 |
-
#: includes/admin/templates/role/general.php:22
|
4256 |
-
msgid ""
|
4257 |
-
"Allow this role to delete their account and end their membership on your site"
|
4258 |
-
msgstr ""
|
4259 |
-
|
4260 |
-
#: includes/admin/templates/role/home.php:15
|
4261 |
-
msgid "Can view default homepage?"
|
4262 |
-
msgstr ""
|
4263 |
-
|
4264 |
-
#: includes/admin/templates/role/home.php:16
|
4265 |
-
msgid "Allow this user role to view your site's homepage"
|
4266 |
-
msgstr ""
|
4267 |
-
|
4268 |
-
#: includes/admin/templates/role/home.php:22
|
4269 |
-
msgid "Custom Homepage Redirect"
|
4270 |
-
msgstr ""
|
4271 |
-
|
4272 |
-
#: includes/admin/templates/role/home.php:23
|
4273 |
-
msgid ""
|
4274 |
-
"Set a url to redirect this user role to if they try to view your site's "
|
4275 |
-
"homepage"
|
4276 |
-
msgstr ""
|
4277 |
-
|
4278 |
-
#: includes/admin/templates/role/login.php:15
|
4279 |
-
msgid "Action to be taken after login"
|
4280 |
-
msgstr ""
|
4281 |
-
|
4282 |
-
#: includes/admin/templates/role/login.php:16
|
4283 |
-
msgid "Select what happens when a user with this role logins to your site"
|
4284 |
-
msgstr ""
|
4285 |
-
|
4286 |
-
#: includes/admin/templates/role/login.php:29
|
4287 |
-
msgid ""
|
4288 |
-
"Set a url to redirect this user role to after they login with their account"
|
4289 |
-
msgstr ""
|
4290 |
-
|
4291 |
-
#: includes/admin/templates/role/logout.php:15
|
4292 |
-
msgid "Action to be taken after logout"
|
4293 |
-
msgstr ""
|
4294 |
-
|
4295 |
-
#: includes/admin/templates/role/logout.php:16
|
4296 |
-
msgid "Select what happens when a user with this role logouts of your site"
|
4297 |
-
msgstr ""
|
4298 |
-
|
4299 |
-
#: includes/admin/templates/role/logout.php:27
|
4300 |
-
msgid "Set a url to redirect this user role to after they logout from site"
|
4301 |
-
msgstr ""
|
4302 |
-
|
4303 |
-
#: includes/admin/templates/role/profile.php:14
|
4304 |
-
msgid "Can view other member profiles?"
|
4305 |
-
msgstr ""
|
4306 |
-
|
4307 |
-
#: includes/admin/templates/role/profile.php:15
|
4308 |
-
msgid "Can this role view all member profiles?"
|
4309 |
-
msgstr ""
|
4310 |
-
|
4311 |
-
#: includes/admin/templates/role/profile.php:21
|
4312 |
-
msgid "Can view these user roles only"
|
4313 |
-
msgstr ""
|
4314 |
-
|
4315 |
-
#: includes/admin/templates/role/profile.php:22
|
4316 |
-
msgid ""
|
4317 |
-
"Which roles that role can view, choose none to allow role to view all member "
|
4318 |
-
"roles"
|
4319 |
-
msgstr ""
|
4320 |
-
|
4321 |
-
#: includes/admin/templates/role/profile.php:32
|
4322 |
-
msgid "Can make their profile private?"
|
4323 |
-
msgstr ""
|
4324 |
-
|
4325 |
-
#: includes/admin/templates/role/profile.php:33
|
4326 |
-
msgid "Can this role make their profile private?"
|
4327 |
-
msgstr ""
|
4328 |
-
|
4329 |
-
#: includes/admin/templates/role/profile.php:40
|
4330 |
-
msgid "Can view/access private profiles?"
|
4331 |
-
msgstr ""
|
4332 |
-
|
4333 |
-
#: includes/admin/templates/role/profile.php:41
|
4334 |
-
msgid "Can this role view private profiles?"
|
4335 |
-
msgstr ""
|
4336 |
-
|
4337 |
-
#: includes/admin/templates/role/publish.php:13
|
4338 |
-
msgid "Role Priority"
|
4339 |
-
msgstr ""
|
4340 |
-
|
4341 |
-
#: includes/admin/templates/role/publish.php:14
|
4342 |
-
msgid "The higher the number, the higher the priority"
|
4343 |
-
msgstr ""
|
4344 |
-
|
4345 |
-
#: includes/admin/templates/role/publish.php:23
|
4346 |
-
msgid "Update Role"
|
4347 |
-
msgstr ""
|
4348 |
-
|
4349 |
-
#: includes/admin/templates/role/publish.php:23
|
4350 |
-
msgid "Create Role"
|
4351 |
-
msgstr ""
|
4352 |
-
|
4353 |
-
#: includes/admin/templates/role/register.php:14
|
4354 |
-
msgid "Registration Status"
|
4355 |
-
msgstr ""
|
4356 |
-
|
4357 |
-
#: includes/admin/templates/role/register.php:15
|
4358 |
-
msgid ""
|
4359 |
-
"Select the status you would like this user role to have after they register "
|
4360 |
-
"on your site"
|
4361 |
-
msgstr ""
|
4362 |
-
|
4363 |
-
#: includes/admin/templates/role/register.php:18
|
4364 |
-
msgid "Auto Approve"
|
4365 |
-
msgstr ""
|
4366 |
-
|
4367 |
-
#: includes/admin/templates/role/register.php:19
|
4368 |
-
msgid "Require Email Activation"
|
4369 |
-
msgstr ""
|
4370 |
-
|
4371 |
-
#: includes/admin/templates/role/register.php:20
|
4372 |
-
msgid "Require Admin Review"
|
4373 |
-
msgstr ""
|
4374 |
-
|
4375 |
-
#: includes/admin/templates/role/register.php:26
|
4376 |
-
#: includes/admin/templates/role/register.php:53
|
4377 |
-
#: includes/admin/templates/role/register.php:87
|
4378 |
-
msgid "Action to be taken after registration"
|
4379 |
-
msgstr ""
|
4380 |
-
|
4381 |
-
#: includes/admin/templates/role/register.php:27
|
4382 |
-
#: includes/admin/templates/role/register.php:54
|
4383 |
-
#: includes/admin/templates/role/register.php:88
|
4384 |
-
msgid ""
|
4385 |
-
"Select what action is taken after a person registers on your site. Depending "
|
4386 |
-
"on the status you can redirect them to their profile, a custom url or show a "
|
4387 |
-
"custom message"
|
4388 |
-
msgstr ""
|
4389 |
-
|
4390 |
-
#: includes/admin/templates/role/register.php:45
|
4391 |
-
msgid "Login user after validating the activation link?"
|
4392 |
-
msgstr ""
|
4393 |
-
|
4394 |
-
#: includes/admin/templates/role/register.php:46
|
4395 |
-
msgid "Login the user after validating the activation link"
|
4396 |
-
msgstr ""
|
4397 |
-
|
4398 |
-
#: includes/admin/templates/role/register.php:57
|
4399 |
-
#: includes/admin/templates/role/register.php:91
|
4400 |
-
msgid "Show custom message"
|
4401 |
-
msgstr ""
|
4402 |
-
|
4403 |
-
#: includes/admin/templates/role/register.php:65
|
4404 |
-
#: includes/admin/templates/role/register.php:99
|
4405 |
-
msgid "Personalize the custom message"
|
4406 |
-
msgstr ""
|
4407 |
-
|
4408 |
-
#: includes/admin/templates/role/register.php:66
|
4409 |
-
msgid ""
|
4410 |
-
"Thank you for registering. Before you can login we need you to activate your "
|
4411 |
-
"account by clicking the activation link in the email we just sent you."
|
4412 |
-
msgstr ""
|
4413 |
-
|
4414 |
-
#: includes/admin/templates/role/register.php:79
|
4415 |
-
msgid "URL redirect after e-mail activation"
|
4416 |
-
msgstr ""
|
4417 |
-
|
4418 |
-
#: includes/admin/templates/role/register.php:80
|
4419 |
-
msgid ""
|
4420 |
-
"If you want users to go to a specific page other than login page after e-"
|
4421 |
-
"mail activation, enter the URL here."
|
4422 |
-
msgstr ""
|
4423 |
-
|
4424 |
-
#: includes/admin/templates/role/register.php:100
|
4425 |
-
msgid ""
|
4426 |
-
"Thank you for applying for membership to our site. We will review your "
|
4427 |
-
"details and send you an email letting you know whether your application has "
|
4428 |
-
"been successful or not."
|
4429 |
-
msgstr ""
|
4430 |
-
|
4431 |
-
#: includes/admin/templates/role/role-edit.php:66
|
4432 |
-
#: includes/admin/templates/role/role-edit.php:70
|
4433 |
-
msgid "Security Issue"
|
4434 |
-
msgstr ""
|
4435 |
-
|
4436 |
-
#: includes/admin/templates/role/role-edit.php:83
|
4437 |
-
msgid "Title is empty!"
|
4438 |
-
msgstr ""
|
4439 |
-
|
4440 |
-
#: includes/admin/templates/role/role-edit.php:110
|
4441 |
-
msgid "Role already exists!"
|
4442 |
-
msgstr ""
|
4443 |
-
|
4444 |
-
#: includes/admin/templates/role/role-edit.php:151
|
4445 |
-
msgid "Add New Role"
|
4446 |
-
msgstr ""
|
4447 |
-
|
4448 |
-
#: includes/admin/templates/role/role-edit.php:151
|
4449 |
-
msgid "Edit Role"
|
4450 |
-
msgstr ""
|
4451 |
-
|
4452 |
-
#: includes/admin/templates/role/role-edit.php:160
|
4453 |
-
msgid "User Role <strong>Added</strong> Successfully."
|
4454 |
-
msgstr ""
|
4455 |
-
|
4456 |
-
#: includes/admin/templates/role/role-edit.php:163
|
4457 |
-
msgid "User Role <strong>Updated</strong> Successfully."
|
4458 |
-
msgstr ""
|
4459 |
-
|
4460 |
-
#: includes/admin/templates/role/role-edit.php:191
|
4461 |
-
msgid "Enter Title Here"
|
4462 |
-
msgstr ""
|
4463 |
-
|
4464 |
-
#: includes/admin/templates/role/wp-capabilities.php:39
|
4465 |
-
msgid "Uncheck All"
|
4466 |
-
msgstr ""
|
4467 |
-
|
4468 |
-
#: includes/admin/templates/role/wp-capabilities.php:41
|
4469 |
-
#: includes/admin/templates/role/wp-capabilities.php:49
|
4470 |
-
msgid "Check All"
|
4471 |
-
msgstr ""
|
4472 |
-
|
4473 |
-
#: includes/class-config.php:131 includes/class-config.php:756
|
4474 |
-
msgid "User"
|
4475 |
-
msgstr ""
|
4476 |
-
|
4477 |
-
#: includes/class-config.php:132 includes/class-config.php:238
|
4478 |
-
#: includes/class-config.php:244 includes/class-config.php:757
|
4479 |
-
msgid "Login"
|
4480 |
-
msgstr ""
|
4481 |
-
|
4482 |
-
#: includes/class-config.php:133 includes/class-config.php:236
|
4483 |
-
#: includes/class-config.php:248 includes/class-config.php:758
|
4484 |
-
msgid "Register"
|
4485 |
-
msgstr ""
|
4486 |
-
|
4487 |
-
#: includes/class-config.php:135 includes/class-config.php:760
|
4488 |
-
#: includes/core/um-actions-profile.php:1179
|
4489 |
-
#: includes/core/um-actions-user.php:19
|
4490 |
-
msgid "Logout"
|
4491 |
-
msgstr ""
|
4492 |
-
|
4493 |
-
#: includes/class-config.php:137 includes/class-config.php:762
|
4494 |
-
msgid "Password Reset"
|
4495 |
-
msgstr ""
|
4496 |
-
|
4497 |
-
#: includes/class-config.php:311
|
4498 |
-
msgid "Account Welcome Email"
|
4499 |
-
msgstr ""
|
4500 |
-
|
4501 |
-
#: includes/class-config.php:322
|
4502 |
-
msgid ""
|
4503 |
-
"Whether to send the user an email when his account is automatically approved"
|
4504 |
-
msgstr ""
|
4505 |
-
|
4506 |
-
#: includes/class-config.php:328
|
4507 |
-
msgid "Account Activation Email"
|
4508 |
-
msgstr ""
|
4509 |
-
|
4510 |
-
#: includes/class-config.php:336
|
4511 |
-
msgid ""
|
4512 |
-
"Whether to send the user an email when his account needs e-mail activation"
|
4513 |
-
msgstr ""
|
4514 |
-
|
4515 |
-
#: includes/class-config.php:341
|
4516 |
-
msgid "Your account is pending review"
|
4517 |
-
msgstr ""
|
4518 |
-
|
4519 |
-
#: includes/class-config.php:349
|
4520 |
-
msgid "Whether to send the user an email when his account needs admin review"
|
4521 |
-
msgstr ""
|
4522 |
-
|
4523 |
-
#: includes/class-config.php:354
|
4524 |
-
msgid "Account Approved Email"
|
4525 |
-
msgstr ""
|
4526 |
-
|
4527 |
-
#: includes/class-config.php:366
|
4528 |
-
msgid "Whether to send the user an email when his account is approved"
|
4529 |
-
msgstr ""
|
4530 |
-
|
4531 |
-
#: includes/class-config.php:371
|
4532 |
-
msgid "Account Rejected Email"
|
4533 |
-
msgstr ""
|
4534 |
-
|
4535 |
-
#: includes/class-config.php:378
|
4536 |
-
msgid "Whether to send the user an email when his account is rejected"
|
4537 |
-
msgstr ""
|
4538 |
-
|
4539 |
-
#: includes/class-config.php:383
|
4540 |
-
msgid "Account Deactivated Email"
|
4541 |
-
msgstr ""
|
4542 |
-
|
4543 |
-
#: includes/class-config.php:390
|
4544 |
-
msgid "Whether to send the user an email when his account is deactivated"
|
4545 |
-
msgstr ""
|
4546 |
-
|
4547 |
-
#: includes/class-config.php:396
|
4548 |
-
msgid "Account Deleted Email"
|
4549 |
-
msgstr ""
|
4550 |
-
|
4551 |
-
#: includes/class-config.php:403
|
4552 |
-
msgid "Whether to send the user an email when his account is deleted"
|
4553 |
-
msgstr ""
|
4554 |
-
|
4555 |
-
#: includes/class-config.php:409
|
4556 |
-
msgid "Password Reset Email"
|
4557 |
-
msgstr ""
|
4558 |
-
|
4559 |
-
#: includes/class-config.php:417
|
4560 |
-
msgid ""
|
4561 |
-
"Whether to send an email when users changed their password (Recommended, "
|
4562 |
-
"please keep on)"
|
4563 |
-
msgstr ""
|
4564 |
-
|
4565 |
-
#: includes/class-config.php:423
|
4566 |
-
msgid "Password Changed Email"
|
4567 |
-
msgstr ""
|
4568 |
-
|
4569 |
-
#: includes/class-config.php:430
|
4570 |
-
msgid ""
|
4571 |
-
"Whether to send the user an email when he request to reset password "
|
4572 |
-
"(Recommended, please keep on)"
|
4573 |
-
msgstr ""
|
4574 |
-
|
4575 |
-
#: includes/class-config.php:436
|
4576 |
-
msgid "Account Updated Email"
|
4577 |
-
msgstr ""
|
4578 |
-
|
4579 |
-
#: includes/class-config.php:443
|
4580 |
-
msgid "Whether to send the user an email when he updated their account"
|
4581 |
-
msgstr ""
|
4582 |
-
|
4583 |
-
#: includes/class-config.php:449
|
4584 |
-
msgid "New User Notification"
|
4585 |
-
msgstr ""
|
4586 |
-
|
4587 |
-
#: includes/class-config.php:455
|
4588 |
-
msgid "Whether to receive notification when a new user account is approved"
|
4589 |
-
msgstr ""
|
4590 |
-
|
4591 |
-
#: includes/class-config.php:461
|
4592 |
-
msgid "Account Needs Review Notification"
|
4593 |
-
msgstr ""
|
4594 |
-
|
4595 |
-
#: includes/class-config.php:468
|
4596 |
-
msgid "Whether to receive notification when an account needs admin review"
|
4597 |
-
msgstr ""
|
4598 |
-
|
4599 |
-
#: includes/class-config.php:473
|
4600 |
-
msgid "Account Deletion Notification"
|
4601 |
-
msgstr ""
|
4602 |
-
|
4603 |
-
#: includes/class-config.php:476
|
4604 |
-
msgid "Whether to receive notification when an account is deleted"
|
4605 |
-
msgstr ""
|
4606 |
-
|
4607 |
-
#: includes/class-config.php:499
|
4608 |
-
msgid ""
|
4609 |
-
"Are you sure you want to delete your account? This will erase all of your "
|
4610 |
-
"account data from the site. To delete your account enter your password below"
|
4611 |
-
msgstr ""
|
4612 |
-
|
4613 |
-
#: includes/class-dependencies.php:181
|
4614 |
-
#, php-format
|
4615 |
-
msgid ""
|
4616 |
-
"This version of <strong>\"%s\"</strong> requires the core <strong>%s</"
|
4617 |
-
"strong> plugin to be <strong>%s</strong> or higher."
|
4618 |
-
msgstr ""
|
4619 |
-
|
4620 |
-
#: includes/class-dependencies.php:183
|
4621 |
-
#, php-format
|
4622 |
-
msgid "Please update <strong>%s</strong> to the latest version."
|
4623 |
-
msgstr ""
|
4624 |
-
|
4625 |
-
#: includes/class-dependencies.php:185
|
4626 |
-
#, php-format
|
4627 |
-
msgid ""
|
4628 |
-
"Sorry, but this version of <strong>%s</strong> does not work with extension "
|
4629 |
-
"<strong>\"%s\" %s</strong> version."
|
4630 |
-
msgstr ""
|
4631 |
-
|
4632 |
-
#: includes/class-dependencies.php:187
|
4633 |
-
#, php-format
|
4634 |
-
msgid "Please update extension <strong>\"%s\"</strong> to the latest version."
|
4635 |
-
msgstr ""
|
4636 |
-
|
4637 |
-
#: includes/class-dependencies.php:196
|
4638 |
-
#, php-format
|
4639 |
-
msgid "Please check <strong>\"%s\" %s</strong> extension's folder name."
|
4640 |
-
msgstr ""
|
4641 |
-
|
4642 |
-
#: includes/class-dependencies.php:198
|
4643 |
-
#, php-format
|
4644 |
-
msgid "Correct folder name is <strong>\"%s\"</strong>"
|
4645 |
-
msgstr ""
|
4646 |
-
|
4647 |
-
#: includes/class-extensions.php:101
|
4648 |
-
#, php-format
|
4649 |
-
msgid "%s License Key"
|
4650 |
-
msgstr ""
|
4651 |
-
|
4652 |
-
#: includes/class-init.php:156 includes/class-init.php:165
|
4653 |
-
msgid "Cheatin’ huh?"
|
4654 |
-
msgstr ""
|
4655 |
-
|
4656 |
-
#: includes/core/class-account.php:94
|
4657 |
-
msgid "Update Account"
|
4658 |
-
msgstr ""
|
4659 |
-
|
4660 |
-
#: includes/core/class-account.php:99
|
4661 |
-
msgid "Change Password"
|
4662 |
-
msgstr ""
|
4663 |
-
|
4664 |
-
#: includes/core/class-account.php:100
|
4665 |
-
msgid "Update Password"
|
4666 |
-
msgstr ""
|
4667 |
-
|
4668 |
-
#: includes/core/class-account.php:106
|
4669 |
-
msgid "Update Privacy"
|
4670 |
-
msgstr ""
|
4671 |
-
|
4672 |
-
#: includes/core/class-account.php:112
|
4673 |
-
msgid "Update Notifications"
|
4674 |
-
msgstr ""
|
4675 |
-
|
4676 |
-
#: includes/core/class-account.php:120 includes/core/class-account.php:121
|
4677 |
-
#: includes/core/class-builtin.php:1141 includes/core/class-builtin.php:1144
|
4678 |
-
msgid "Delete Account"
|
4679 |
-
msgstr ""
|
4680 |
-
|
4681 |
-
#: includes/core/class-builtin.php:132
|
4682 |
-
msgid "Please provide a meta key"
|
4683 |
-
msgstr ""
|
4684 |
-
|
4685 |
-
#: includes/core/class-builtin.php:133
|
4686 |
-
msgid "Your meta key is a reserved core field and cannot be used"
|
4687 |
-
msgstr ""
|
4688 |
-
|
4689 |
-
#: includes/core/class-builtin.php:134
|
4690 |
-
msgid "Your meta key is a predefined reserved key and cannot be used"
|
4691 |
-
msgstr ""
|
4692 |
-
|
4693 |
-
#: includes/core/class-builtin.php:135
|
4694 |
-
msgid "Your meta key already exists in your fields list"
|
4695 |
-
msgstr ""
|
4696 |
-
|
4697 |
-
#: includes/core/class-builtin.php:136
|
4698 |
-
msgid "Your meta key contains illegal characters. Please correct it."
|
4699 |
-
msgstr ""
|
4700 |
-
|
4701 |
-
#: includes/core/class-builtin.php:149
|
4702 |
-
msgid "Please provide a date range beginning"
|
4703 |
-
msgstr ""
|
4704 |
-
|
4705 |
-
#: includes/core/class-builtin.php:150
|
4706 |
-
msgid "Please enter a valid start date in the date range"
|
4707 |
-
msgstr ""
|
4708 |
-
|
4709 |
-
#: includes/core/class-builtin.php:164
|
4710 |
-
msgid "Please provide a date range end"
|
4711 |
-
msgstr ""
|
4712 |
-
|
4713 |
-
#: includes/core/class-builtin.php:165
|
4714 |
-
msgid "Please enter a valid end date in the date range"
|
4715 |
-
msgstr ""
|
4716 |
-
|
4717 |
-
#: includes/core/class-builtin.php:166
|
4718 |
-
msgid "The end of date range must be greater than the start of date range"
|
4719 |
-
msgstr ""
|
4720 |
-
|
4721 |
-
#: includes/core/class-builtin.php:208 includes/core/class-builtin.php:224
|
4722 |
-
#: includes/core/class-builtin.php:240 includes/core/class-builtin.php:256
|
4723 |
-
#: includes/core/class-builtin.php:276 includes/core/class-builtin.php:296
|
4724 |
-
#: includes/core/class-builtin.php:316 includes/core/class-builtin.php:336
|
4725 |
-
#: includes/core/class-builtin.php:352 includes/core/class-builtin.php:368
|
4726 |
-
#: includes/core/class-builtin.php:388 includes/core/class-builtin.php:408
|
4727 |
-
#: includes/core/class-builtin.php:434 includes/core/class-builtin.php:450
|
4728 |
-
#: includes/core/class-builtin.php:467 includes/core/class-builtin.php:480
|
4729 |
-
#: includes/core/class-builtin.php:497 includes/core/class-builtin.php:510
|
4730 |
-
#: includes/core/class-builtin.php:523 includes/core/class-builtin.php:539
|
4731 |
-
#: includes/core/class-builtin.php:555 includes/core/class-builtin.php:571
|
4732 |
-
msgid "You must provide a title"
|
4733 |
-
msgstr ""
|
4734 |
-
|
4735 |
-
#: includes/core/class-builtin.php:217
|
4736 |
-
msgid "Number"
|
4737 |
-
msgstr ""
|
4738 |
-
|
4739 |
-
#: includes/core/class-builtin.php:263 includes/core/class-builtin.php:283
|
4740 |
-
#: includes/core/class-builtin.php:303 includes/core/class-builtin.php:323
|
4741 |
-
msgid "You have not added any choices yet."
|
4742 |
-
msgstr ""
|
4743 |
-
|
4744 |
-
#: includes/core/class-builtin.php:375 includes/core/class-builtin.php:395
|
4745 |
-
msgid "Please enter a valid size"
|
4746 |
-
msgstr ""
|
4747 |
-
|
4748 |
-
#: includes/core/class-builtin.php:415
|
4749 |
-
msgid "Number of years is not valid"
|
4750 |
-
msgstr ""
|
4751 |
-
|
4752 |
-
#: includes/core/class-builtin.php:484
|
4753 |
-
msgid "You must add a shortcode to the content area"
|
4754 |
-
msgstr ""
|
4755 |
-
|
4756 |
-
#: includes/core/class-builtin.php:663 includes/core/class-user.php:1559
|
4757 |
-
msgid "Only me"
|
4758 |
-
msgstr ""
|
4759 |
-
|
4760 |
-
#: includes/core/class-builtin.php:687 includes/core/class-builtin.php:690
|
4761 |
-
#: includes/core/class-builtin.php:1097
|
4762 |
-
msgid "Username or E-mail"
|
4763 |
-
msgstr ""
|
4764 |
-
|
4765 |
-
#: includes/core/class-builtin.php:742 includes/core/class-builtin.php:745
|
4766 |
-
#: includes/core/class-builtin.php:1347
|
4767 |
-
msgid "Website URL"
|
4768 |
-
msgstr ""
|
4769 |
-
|
4770 |
-
#: includes/core/class-builtin.php:753 includes/core/class-builtin.php:756
|
4771 |
-
msgid "Registration Date"
|
4772 |
-
msgstr ""
|
4773 |
-
|
4774 |
-
#: includes/core/class-builtin.php:764 includes/core/class-builtin.php:767
|
4775 |
-
msgid "Last Login"
|
4776 |
-
msgstr ""
|
4777 |
-
|
4778 |
-
#: includes/core/class-builtin.php:775 includes/core/class-builtin.php:778
|
4779 |
-
msgid "E-mail Address"
|
4780 |
-
msgstr ""
|
4781 |
-
|
4782 |
-
#: includes/core/class-builtin.php:786 includes/core/class-builtin.php:789
|
4783 |
-
msgid "Secondary E-mail Address"
|
4784 |
-
msgstr ""
|
4785 |
-
|
4786 |
-
#: includes/core/class-builtin.php:798 includes/core/class-builtin.php:801
|
4787 |
-
msgid "Biography"
|
4788 |
-
msgstr ""
|
4789 |
-
|
4790 |
-
#: includes/core/class-builtin.php:807
|
4791 |
-
msgid "Enter a bit about yourself..."
|
4792 |
-
msgstr ""
|
4793 |
-
|
4794 |
-
#: includes/core/class-builtin.php:811 includes/core/class-builtin.php:814
|
4795 |
-
msgid "Birth Date"
|
4796 |
-
msgstr ""
|
4797 |
-
|
4798 |
-
#: includes/core/class-builtin.php:825 includes/core/class-builtin.php:828
|
4799 |
-
msgid "Gender"
|
4800 |
-
msgstr ""
|
4801 |
-
|
4802 |
-
#: includes/core/class-builtin.php:832
|
4803 |
-
msgid "Male"
|
4804 |
-
msgstr ""
|
4805 |
-
|
4806 |
-
#: includes/core/class-builtin.php:832
|
4807 |
-
msgid "Female"
|
4808 |
-
msgstr ""
|
4809 |
-
|
4810 |
-
#: includes/core/class-builtin.php:836 includes/core/class-builtin.php:839
|
4811 |
-
msgid "Country"
|
4812 |
-
msgstr ""
|
4813 |
-
|
4814 |
-
#: includes/core/class-builtin.php:840
|
4815 |
-
msgid "Choose a Country"
|
4816 |
-
msgstr ""
|
4817 |
-
|
4818 |
-
#: includes/core/class-builtin.php:848 includes/core/class-builtin.php:851
|
4819 |
-
msgid "Facebook"
|
4820 |
-
msgstr ""
|
4821 |
-
|
4822 |
-
#: includes/core/class-builtin.php:866 includes/core/class-builtin.php:869
|
4823 |
-
msgid "Twitter"
|
4824 |
-
msgstr ""
|
4825 |
-
|
4826 |
-
#: includes/core/class-builtin.php:884 includes/core/class-builtin.php:887
|
4827 |
-
msgid "LinkedIn"
|
4828 |
-
msgstr ""
|
4829 |
-
|
4830 |
-
#: includes/core/class-builtin.php:902 includes/core/class-builtin.php:905
|
4831 |
-
msgid "Google+"
|
4832 |
-
msgstr ""
|
4833 |
-
|
4834 |
-
#: includes/core/class-builtin.php:920 includes/core/class-builtin.php:923
|
4835 |
-
msgid "Instagram"
|
4836 |
-
msgstr ""
|
4837 |
-
|
4838 |
-
#: includes/core/class-builtin.php:938 includes/core/class-builtin.php:941
|
4839 |
-
#: includes/core/class-builtin.php:1340
|
4840 |
-
msgid "Skype ID"
|
4841 |
-
msgstr ""
|
4842 |
-
|
4843 |
-
#: includes/core/class-builtin.php:953 includes/core/class-builtin.php:956
|
4844 |
-
msgid "YouTube"
|
4845 |
-
msgstr ""
|
4846 |
-
|
4847 |
-
#: includes/core/class-builtin.php:971 includes/core/class-builtin.php:974
|
4848 |
-
msgid "SoundCloud"
|
4849 |
-
msgstr ""
|
4850 |
-
|
4851 |
-
#: includes/core/class-builtin.php:989 includes/core/class-builtin.php:992
|
4852 |
-
msgid "VKontakte"
|
4853 |
-
msgstr ""
|
4854 |
-
|
4855 |
-
#: includes/core/class-builtin.php:1007
|
4856 |
-
msgid "Roles (Dropdown)"
|
4857 |
-
msgstr ""
|
4858 |
-
|
4859 |
-
#: includes/core/class-builtin.php:1010 includes/core/class-builtin.php:1022
|
4860 |
-
msgid "Account Type"
|
4861 |
-
msgstr ""
|
4862 |
-
|
4863 |
-
#: includes/core/class-builtin.php:1019
|
4864 |
-
msgid "Roles (Radio)"
|
4865 |
-
msgstr ""
|
4866 |
-
|
4867 |
-
#: includes/core/class-builtin.php:1030
|
4868 |
-
msgid "Languages"
|
4869 |
-
msgstr ""
|
4870 |
-
|
4871 |
-
#: includes/core/class-builtin.php:1033
|
4872 |
-
msgid "Languages Spoken"
|
4873 |
-
msgstr ""
|
4874 |
-
|
4875 |
-
#: includes/core/class-builtin.php:1034
|
4876 |
-
msgid "Select languages"
|
4877 |
-
msgstr ""
|
4878 |
-
|
4879 |
-
#: includes/core/class-builtin.php:1042 includes/core/class-builtin.php:1045
|
4880 |
-
#: includes/core/class-builtin.php:1339
|
4881 |
-
msgid "Phone Number"
|
4882 |
-
msgstr ""
|
4883 |
-
|
4884 |
-
#: includes/core/class-builtin.php:1054 includes/core/class-builtin.php:1057
|
4885 |
-
msgid "Mobile Number"
|
4886 |
-
msgstr ""
|
4887 |
-
|
4888 |
-
#: includes/core/class-builtin.php:1068
|
4889 |
-
msgid "Profile Photo"
|
4890 |
-
msgstr ""
|
4891 |
-
|
4892 |
-
#: includes/core/class-builtin.php:1071
|
4893 |
-
msgid "Change your profile photo"
|
4894 |
-
msgstr ""
|
4895 |
-
|
4896 |
-
#: includes/core/class-builtin.php:1072
|
4897 |
-
msgid "Upload your photo here"
|
4898 |
-
msgstr ""
|
4899 |
-
|
4900 |
-
#: includes/core/class-builtin.php:1082
|
4901 |
-
msgid "Cover Photo"
|
4902 |
-
msgstr ""
|
4903 |
-
|
4904 |
-
#: includes/core/class-builtin.php:1085
|
4905 |
-
#: includes/core/um-actions-profile.php:600
|
4906 |
-
msgid "Change your cover photo"
|
4907 |
-
msgstr ""
|
4908 |
-
|
4909 |
-
#: includes/core/class-builtin.php:1086
|
4910 |
-
msgid "Upload profile cover here"
|
4911 |
-
msgstr ""
|
4912 |
-
|
4913 |
-
#: includes/core/class-builtin.php:1100
|
4914 |
-
msgid "Enter your username or email"
|
4915 |
-
msgstr ""
|
4916 |
-
|
4917 |
-
#: includes/core/class-builtin.php:1110 includes/core/class-builtin.php:1113
|
4918 |
-
msgid "Profile Privacy"
|
4919 |
-
msgstr ""
|
4920 |
-
|
4921 |
-
#: includes/core/class-builtin.php:1114
|
4922 |
-
msgid "Who can see your public profile?"
|
4923 |
-
msgstr ""
|
4924 |
-
|
4925 |
-
#: includes/core/class-builtin.php:1126 includes/core/class-builtin.php:1129
|
4926 |
-
msgid "Hide my profile from directory"
|
4927 |
-
msgstr ""
|
4928 |
-
|
4929 |
-
#: includes/core/class-builtin.php:1130
|
4930 |
-
msgid "Here you can hide yourself from appearing in public directory"
|
4931 |
-
msgstr ""
|
4932 |
-
|
4933 |
-
#: includes/core/class-builtin.php:1145
|
4934 |
-
msgid ""
|
4935 |
-
"If you confirm, everything related to your profile will be deleted "
|
4936 |
-
"permanently from the site"
|
4937 |
-
msgstr ""
|
4938 |
-
|
4939 |
-
#: includes/core/class-builtin.php:1329
|
4940 |
-
msgid "Alphabetic value only"
|
4941 |
-
msgstr ""
|
4942 |
-
|
4943 |
-
#: includes/core/class-builtin.php:1330
|
4944 |
-
msgid "Alpha-numeric value"
|
4945 |
-
msgstr ""
|
4946 |
-
|
4947 |
-
#: includes/core/class-builtin.php:1331
|
4948 |
-
msgid "English letters only"
|
4949 |
-
msgstr ""
|
4950 |
-
|
4951 |
-
#: includes/core/class-builtin.php:1332
|
4952 |
-
msgid "Facebook URL"
|
4953 |
-
msgstr ""
|
4954 |
-
|
4955 |
-
#: includes/core/class-builtin.php:1333
|
4956 |
-
msgid "Google+ URL"
|
4957 |
-
msgstr ""
|
4958 |
-
|
4959 |
-
#: includes/core/class-builtin.php:1334
|
4960 |
-
msgid "Instagram URL"
|
4961 |
-
msgstr ""
|
4962 |
-
|
4963 |
-
#: includes/core/class-builtin.php:1335
|
4964 |
-
msgid "LinkedIn URL"
|
4965 |
-
msgstr ""
|
4966 |
-
|
4967 |
-
#: includes/core/class-builtin.php:1336
|
4968 |
-
msgid "VKontakte URL"
|
4969 |
-
msgstr ""
|
4970 |
-
|
4971 |
-
#: includes/core/class-builtin.php:1337
|
4972 |
-
msgid "Lowercase only"
|
4973 |
-
msgstr ""
|
4974 |
-
|
4975 |
-
#: includes/core/class-builtin.php:1338
|
4976 |
-
msgid "Numeric value only"
|
4977 |
-
msgstr ""
|
4978 |
-
|
4979 |
-
#: includes/core/class-builtin.php:1341
|
4980 |
-
msgid "SoundCloud Profile"
|
4981 |
-
msgstr ""
|
4982 |
-
|
4983 |
-
#: includes/core/class-builtin.php:1342
|
4984 |
-
msgid "Twitter URL"
|
4985 |
-
msgstr ""
|
4986 |
-
|
4987 |
-
#: includes/core/class-builtin.php:1343
|
4988 |
-
msgid "Unique E-mail"
|
4989 |
-
msgstr ""
|
4990 |
-
|
4991 |
-
#: includes/core/class-builtin.php:1344
|
4992 |
-
msgid "Unique Metakey value"
|
4993 |
-
msgstr ""
|
4994 |
-
|
4995 |
-
#: includes/core/class-builtin.php:1345
|
4996 |
-
msgid "Unique Username"
|
4997 |
-
msgstr ""
|
4998 |
-
|
4999 |
-
#: includes/core/class-builtin.php:1346
|
5000 |
-
msgid "Unique Username/E-mail"
|
5001 |
-
msgstr ""
|
5002 |
-
|
5003 |
-
#: includes/core/class-builtin.php:1348
|
5004 |
-
msgid "YouTube Profile"
|
5005 |
-
msgstr ""
|
5006 |
-
|
5007 |
-
#: includes/core/class-builtin.php:1349
|
5008 |
-
msgid "Custom Validation"
|
5009 |
-
msgstr ""
|
5010 |
-
|
5011 |
-
#: includes/core/class-builtin.php:1388
|
5012 |
-
msgid "Afar"
|
5013 |
-
msgstr ""
|
5014 |
-
|
5015 |
-
#: includes/core/class-builtin.php:1389
|
5016 |
-
msgid "Abkhazian"
|
5017 |
-
msgstr ""
|
5018 |
-
|
5019 |
-
#: includes/core/class-builtin.php:1390
|
5020 |
-
msgid "Avestan"
|
5021 |
-
msgstr ""
|
5022 |
-
|
5023 |
-
#: includes/core/class-builtin.php:1391
|
5024 |
-
msgid "Afrikaans"
|
5025 |
-
msgstr ""
|
5026 |
-
|
5027 |
-
#: includes/core/class-builtin.php:1392
|
5028 |
-
msgid "Akan"
|
5029 |
-
msgstr ""
|
5030 |
-
|
5031 |
-
#: includes/core/class-builtin.php:1393
|
5032 |
-
msgid "Amharic"
|
5033 |
-
msgstr ""
|
5034 |
-
|
5035 |
-
#: includes/core/class-builtin.php:1394
|
5036 |
-
msgid "Aragonese"
|
5037 |
-
msgstr ""
|
5038 |
-
|
5039 |
-
#: includes/core/class-builtin.php:1395
|
5040 |
-
msgid "Arabic"
|
5041 |
-
msgstr ""
|
5042 |
-
|
5043 |
-
#: includes/core/class-builtin.php:1396
|
5044 |
-
msgid "Assamese"
|
5045 |
-
msgstr ""
|
5046 |
-
|
5047 |
-
#: includes/core/class-builtin.php:1397
|
5048 |
-
msgid "Avaric"
|
5049 |
-
msgstr ""
|
5050 |
-
|
5051 |
-
#: includes/core/class-builtin.php:1398
|
5052 |
-
msgid "Aymara"
|
5053 |
-
msgstr ""
|
5054 |
-
|
5055 |
-
#: includes/core/class-builtin.php:1399
|
5056 |
-
msgid "Azerbaijani"
|
5057 |
-
msgstr ""
|
5058 |
-
|
5059 |
-
#: includes/core/class-builtin.php:1400
|
5060 |
-
msgid "Bashkir"
|
5061 |
-
msgstr ""
|
5062 |
-
|
5063 |
-
#: includes/core/class-builtin.php:1401
|
5064 |
-
msgid "Belarusian"
|
5065 |
-
msgstr ""
|
5066 |
-
|
5067 |
-
#: includes/core/class-builtin.php:1402
|
5068 |
-
msgid "Bulgarian"
|
5069 |
-
msgstr ""
|
5070 |
-
|
5071 |
-
#: includes/core/class-builtin.php:1403
|
5072 |
-
msgid "Bihari"
|
5073 |
-
msgstr ""
|
5074 |
-
|
5075 |
-
#: includes/core/class-builtin.php:1404
|
5076 |
-
msgid "Bislama"
|
5077 |
-
msgstr ""
|
5078 |
-
|
5079 |
-
#: includes/core/class-builtin.php:1405
|
5080 |
-
msgid "Bambara"
|
5081 |
-
msgstr ""
|
5082 |
-
|
5083 |
-
#: includes/core/class-builtin.php:1406
|
5084 |
-
msgid "Bengali"
|
5085 |
-
msgstr ""
|
5086 |
-
|
5087 |
-
#: includes/core/class-builtin.php:1407
|
5088 |
-
msgid "Tibetan"
|
5089 |
-
msgstr ""
|
5090 |
-
|
5091 |
-
#: includes/core/class-builtin.php:1408
|
5092 |
-
msgid "Breton"
|
5093 |
-
msgstr ""
|
5094 |
-
|
5095 |
-
#: includes/core/class-builtin.php:1409
|
5096 |
-
msgid "Bosnian"
|
5097 |
-
msgstr ""
|
5098 |
-
|
5099 |
-
#: includes/core/class-builtin.php:1410
|
5100 |
-
msgid "Catalan"
|
5101 |
-
msgstr ""
|
5102 |
-
|
5103 |
-
#: includes/core/class-builtin.php:1411
|
5104 |
-
msgid "Chechen"
|
5105 |
-
msgstr ""
|
5106 |
-
|
5107 |
-
#: includes/core/class-builtin.php:1412
|
5108 |
-
msgid "Chamorro"
|
5109 |
-
msgstr ""
|
5110 |
-
|
5111 |
-
#: includes/core/class-builtin.php:1413
|
5112 |
-
msgid "Corsican"
|
5113 |
-
msgstr ""
|
5114 |
-
|
5115 |
-
#: includes/core/class-builtin.php:1414
|
5116 |
-
msgid "Cree"
|
5117 |
-
msgstr ""
|
5118 |
-
|
5119 |
-
#: includes/core/class-builtin.php:1415
|
5120 |
-
msgid "Czech"
|
5121 |
-
msgstr ""
|
5122 |
-
|
5123 |
-
#: includes/core/class-builtin.php:1416
|
5124 |
-
msgid "Church Slavic"
|
5125 |
-
msgstr ""
|
5126 |
-
|
5127 |
-
#: includes/core/class-builtin.php:1417
|
5128 |
-
msgid "Chuvash"
|
5129 |
-
msgstr ""
|
5130 |
-
|
5131 |
-
#: includes/core/class-builtin.php:1418
|
5132 |
-
msgid "Welsh"
|
5133 |
-
msgstr ""
|
5134 |
-
|
5135 |
-
#: includes/core/class-builtin.php:1419
|
5136 |
-
msgid "Danish"
|
5137 |
-
msgstr ""
|
5138 |
-
|
5139 |
-
#: includes/core/class-builtin.php:1420
|
5140 |
-
msgid "German"
|
5141 |
-
msgstr ""
|
5142 |
-
|
5143 |
-
#: includes/core/class-builtin.php:1421
|
5144 |
-
msgid "Divehi"
|
5145 |
-
msgstr ""
|
5146 |
-
|
5147 |
-
#: includes/core/class-builtin.php:1422
|
5148 |
-
msgid "Dzongkha"
|
5149 |
-
msgstr ""
|
5150 |
-
|
5151 |
-
#: includes/core/class-builtin.php:1423
|
5152 |
-
msgid "Ewe"
|
5153 |
-
msgstr ""
|
5154 |
-
|
5155 |
-
#: includes/core/class-builtin.php:1424
|
5156 |
-
msgid "Greek"
|
5157 |
-
msgstr ""
|
5158 |
-
|
5159 |
-
#: includes/core/class-builtin.php:1425
|
5160 |
-
msgid "English"
|
5161 |
-
msgstr ""
|
5162 |
-
|
5163 |
-
#: includes/core/class-builtin.php:1426
|
5164 |
-
msgid "Esperanto"
|
5165 |
-
msgstr ""
|
5166 |
-
|
5167 |
-
#: includes/core/class-builtin.php:1427
|
5168 |
-
msgid "Spanish"
|
5169 |
-
msgstr ""
|
5170 |
-
|
5171 |
-
#: includes/core/class-builtin.php:1428
|
5172 |
-
msgid "Estonian"
|
5173 |
-
msgstr ""
|
5174 |
-
|
5175 |
-
#: includes/core/class-builtin.php:1429
|
5176 |
-
msgid "Basque"
|
5177 |
-
msgstr ""
|
5178 |
-
|
5179 |
-
#: includes/core/class-builtin.php:1430
|
5180 |
-
msgid "Persian"
|
5181 |
-
msgstr ""
|
5182 |
-
|
5183 |
-
#: includes/core/class-builtin.php:1431
|
5184 |
-
msgid "Fulah"
|
5185 |
-
msgstr ""
|
5186 |
-
|
5187 |
-
#: includes/core/class-builtin.php:1432
|
5188 |
-
msgid "Finnish"
|
5189 |
-
msgstr ""
|
5190 |
-
|
5191 |
-
#: includes/core/class-builtin.php:1433
|
5192 |
-
msgid "Fijian"
|
5193 |
-
msgstr ""
|
5194 |
-
|
5195 |
-
#: includes/core/class-builtin.php:1434
|
5196 |
-
msgid "Faroese"
|
5197 |
-
msgstr ""
|
5198 |
-
|
5199 |
-
#: includes/core/class-builtin.php:1435
|
5200 |
-
msgid "French"
|
5201 |
-
msgstr ""
|
5202 |
-
|
5203 |
-
#: includes/core/class-builtin.php:1436
|
5204 |
-
msgid "Western Frisian"
|
5205 |
-
msgstr ""
|
5206 |
-
|
5207 |
-
#: includes/core/class-builtin.php:1437
|
5208 |
-
msgid "Irish"
|
5209 |
-
msgstr ""
|
5210 |
-
|
5211 |
-
#: includes/core/class-builtin.php:1438
|
5212 |
-
msgid "Scottish Gaelic"
|
5213 |
-
msgstr ""
|
5214 |
-
|
5215 |
-
#: includes/core/class-builtin.php:1439
|
5216 |
-
msgid "Galician"
|
5217 |
-
msgstr ""
|
5218 |
-
|
5219 |
-
#: includes/core/class-builtin.php:1440
|
5220 |
-
msgid "Guarani"
|
5221 |
-
msgstr ""
|
5222 |
-
|
5223 |
-
#: includes/core/class-builtin.php:1441
|
5224 |
-
msgid "Gujarati"
|
5225 |
-
msgstr ""
|
5226 |
-
|
5227 |
-
#: includes/core/class-builtin.php:1442
|
5228 |
-
msgid "Manx"
|
5229 |
-
msgstr ""
|
5230 |
-
|
5231 |
-
#: includes/core/class-builtin.php:1443
|
5232 |
-
msgid "Hausa"
|
5233 |
-
msgstr ""
|
5234 |
-
|
5235 |
-
#: includes/core/class-builtin.php:1444
|
5236 |
-
msgid "Hebrew"
|
5237 |
-
msgstr ""
|
5238 |
-
|
5239 |
-
#: includes/core/class-builtin.php:1445
|
5240 |
-
msgid "Hindi"
|
5241 |
-
msgstr ""
|
5242 |
-
|
5243 |
-
#: includes/core/class-builtin.php:1446
|
5244 |
-
msgid "Hiri Motu"
|
5245 |
-
msgstr ""
|
5246 |
-
|
5247 |
-
#: includes/core/class-builtin.php:1447
|
5248 |
-
msgid "Croatian"
|
5249 |
-
msgstr ""
|
5250 |
-
|
5251 |
-
#: includes/core/class-builtin.php:1448
|
5252 |
-
msgid "Haitian"
|
5253 |
-
msgstr ""
|
5254 |
-
|
5255 |
-
#: includes/core/class-builtin.php:1449
|
5256 |
-
msgid "Hungarian"
|
5257 |
-
msgstr ""
|
5258 |
-
|
5259 |
-
#: includes/core/class-builtin.php:1450
|
5260 |
-
msgid "Armenian"
|
5261 |
-
msgstr ""
|
5262 |
-
|
5263 |
-
#: includes/core/class-builtin.php:1451
|
5264 |
-
msgid "Herero"
|
5265 |
-
msgstr ""
|
5266 |
-
|
5267 |
-
#: includes/core/class-builtin.php:1452
|
5268 |
-
msgid "Interlingua (International Auxiliary Language Association)"
|
5269 |
-
msgstr ""
|
5270 |
-
|
5271 |
-
#: includes/core/class-builtin.php:1453
|
5272 |
-
msgid "Indonesian"
|
5273 |
-
msgstr ""
|
5274 |
-
|
5275 |
-
#: includes/core/class-builtin.php:1454
|
5276 |
-
msgid "Interlingue"
|
5277 |
-
msgstr ""
|
5278 |
-
|
5279 |
-
#: includes/core/class-builtin.php:1455
|
5280 |
-
msgid "Igbo"
|
5281 |
-
msgstr ""
|
5282 |
-
|
5283 |
-
#: includes/core/class-builtin.php:1456
|
5284 |
-
msgid "Sichuan Yi"
|
5285 |
-
msgstr ""
|
5286 |
-
|
5287 |
-
#: includes/core/class-builtin.php:1457
|
5288 |
-
msgid "Inupiaq"
|
5289 |
-
msgstr ""
|
5290 |
-
|
5291 |
-
#: includes/core/class-builtin.php:1458
|
5292 |
-
msgid "Ido"
|
5293 |
-
msgstr ""
|
5294 |
-
|
5295 |
-
#: includes/core/class-builtin.php:1459
|
5296 |
-
msgid "Icelandic"
|
5297 |
-
msgstr ""
|
5298 |
-
|
5299 |
-
#: includes/core/class-builtin.php:1460
|
5300 |
-
msgid "Italian"
|
5301 |
-
msgstr ""
|
5302 |
-
|
5303 |
-
#: includes/core/class-builtin.php:1461
|
5304 |
-
msgid "Inuktitut"
|
5305 |
-
msgstr ""
|
5306 |
-
|
5307 |
-
#: includes/core/class-builtin.php:1462
|
5308 |
-
msgid "Japanese"
|
5309 |
-
msgstr ""
|
5310 |
-
|
5311 |
-
#: includes/core/class-builtin.php:1463
|
5312 |
-
msgid "Javanese"
|
5313 |
-
msgstr ""
|
5314 |
-
|
5315 |
-
#: includes/core/class-builtin.php:1464
|
5316 |
-
msgid "Georgian"
|
5317 |
-
msgstr ""
|
5318 |
-
|
5319 |
-
#: includes/core/class-builtin.php:1465
|
5320 |
-
msgid "Kongo"
|
5321 |
-
msgstr ""
|
5322 |
-
|
5323 |
-
#: includes/core/class-builtin.php:1466
|
5324 |
-
msgid "Kikuyu"
|
5325 |
-
msgstr ""
|
5326 |
-
|
5327 |
-
#: includes/core/class-builtin.php:1467
|
5328 |
-
msgid "Kwanyama"
|
5329 |
-
msgstr ""
|
5330 |
-
|
5331 |
-
#: includes/core/class-builtin.php:1468
|
5332 |
-
msgid "Kazakh"
|
5333 |
-
msgstr ""
|
5334 |
-
|
5335 |
-
#: includes/core/class-builtin.php:1469
|
5336 |
-
msgid "Kalaallisut"
|
5337 |
-
msgstr ""
|
5338 |
-
|
5339 |
-
#: includes/core/class-builtin.php:1470
|
5340 |
-
msgid "Khmer"
|
5341 |
-
msgstr ""
|
5342 |
-
|
5343 |
-
#: includes/core/class-builtin.php:1471
|
5344 |
-
msgid "Kannada"
|
5345 |
-
msgstr ""
|
5346 |
-
|
5347 |
-
#: includes/core/class-builtin.php:1472
|
5348 |
-
msgid "Korean"
|
5349 |
-
msgstr ""
|
5350 |
-
|
5351 |
-
#: includes/core/class-builtin.php:1473
|
5352 |
-
msgid "Kanuri"
|
5353 |
-
msgstr ""
|
5354 |
-
|
5355 |
-
#: includes/core/class-builtin.php:1474
|
5356 |
-
msgid "Kashmiri"
|
5357 |
-
msgstr ""
|
5358 |
-
|
5359 |
-
#: includes/core/class-builtin.php:1475
|
5360 |
-
msgid "Kurdish"
|
5361 |
-
msgstr ""
|
5362 |
-
|
5363 |
-
#: includes/core/class-builtin.php:1476
|
5364 |
-
msgid "Komi"
|
5365 |
-
msgstr ""
|
5366 |
-
|
5367 |
-
#: includes/core/class-builtin.php:1477
|
5368 |
-
msgid "Cornish"
|
5369 |
-
msgstr ""
|
5370 |
-
|
5371 |
-
#: includes/core/class-builtin.php:1478
|
5372 |
-
msgid "Kirghiz"
|
5373 |
-
msgstr ""
|
5374 |
-
|
5375 |
-
#: includes/core/class-builtin.php:1479
|
5376 |
-
msgid "Latin"
|
5377 |
-
msgstr ""
|
5378 |
-
|
5379 |
-
#: includes/core/class-builtin.php:1480
|
5380 |
-
msgid "Luxembourgish"
|
5381 |
-
msgstr ""
|
5382 |
-
|
5383 |
-
#: includes/core/class-builtin.php:1481
|
5384 |
-
msgid "Ganda"
|
5385 |
-
msgstr ""
|
5386 |
-
|
5387 |
-
#: includes/core/class-builtin.php:1482
|
5388 |
-
msgid "Limburgish"
|
5389 |
-
msgstr ""
|
5390 |
-
|
5391 |
-
#: includes/core/class-builtin.php:1483
|
5392 |
-
msgid "Lingala"
|
5393 |
-
msgstr ""
|
5394 |
-
|
5395 |
-
#: includes/core/class-builtin.php:1484
|
5396 |
-
msgid "Lao"
|
5397 |
-
msgstr ""
|
5398 |
-
|
5399 |
-
#: includes/core/class-builtin.php:1485
|
5400 |
-
msgid "Lithuanian"
|
5401 |
-
msgstr ""
|
5402 |
-
|
5403 |
-
#: includes/core/class-builtin.php:1486
|
5404 |
-
msgid "Luba-Katanga"
|
5405 |
-
msgstr ""
|
5406 |
-
|
5407 |
-
#: includes/core/class-builtin.php:1487
|
5408 |
-
msgid "Latvian"
|
5409 |
-
msgstr ""
|
5410 |
-
|
5411 |
-
#: includes/core/class-builtin.php:1488
|
5412 |
-
msgid "Malagasy"
|
5413 |
-
msgstr ""
|
5414 |
-
|
5415 |
-
#: includes/core/class-builtin.php:1489
|
5416 |
-
msgid "Marshallese"
|
5417 |
-
msgstr ""
|
5418 |
-
|
5419 |
-
#: includes/core/class-builtin.php:1490
|
5420 |
-
msgid "Maori"
|
5421 |
-
msgstr ""
|
5422 |
-
|
5423 |
-
#: includes/core/class-builtin.php:1491
|
5424 |
-
msgid "Macedonian"
|
5425 |
-
msgstr ""
|
5426 |
-
|
5427 |
-
#: includes/core/class-builtin.php:1492
|
5428 |
-
msgid "Malayalam"
|
5429 |
-
msgstr ""
|
5430 |
-
|
5431 |
-
#: includes/core/class-builtin.php:1493
|
5432 |
-
msgid "Mongolian"
|
5433 |
-
msgstr ""
|
5434 |
-
|
5435 |
-
#: includes/core/class-builtin.php:1494
|
5436 |
-
msgid "Marathi"
|
5437 |
-
msgstr ""
|
5438 |
-
|
5439 |
-
#: includes/core/class-builtin.php:1495
|
5440 |
-
msgid "Malay"
|
5441 |
-
msgstr ""
|
5442 |
-
|
5443 |
-
#: includes/core/class-builtin.php:1496
|
5444 |
-
msgid "Maltese"
|
5445 |
-
msgstr ""
|
5446 |
-
|
5447 |
-
#: includes/core/class-builtin.php:1497
|
5448 |
-
msgid "Burmese"
|
5449 |
-
msgstr ""
|
5450 |
-
|
5451 |
-
#: includes/core/class-builtin.php:1498 includes/core/class-builtin.php:1729
|
5452 |
-
msgid "Nauru"
|
5453 |
-
msgstr ""
|
5454 |
-
|
5455 |
-
#: includes/core/class-builtin.php:1499
|
5456 |
-
msgid "Norwegian Bokmal"
|
5457 |
-
msgstr ""
|
5458 |
-
|
5459 |
-
#: includes/core/class-builtin.php:1500
|
5460 |
-
msgid "North Ndebele"
|
5461 |
-
msgstr ""
|
5462 |
-
|
5463 |
-
#: includes/core/class-builtin.php:1501
|
5464 |
-
msgid "Nepali"
|
5465 |
-
msgstr ""
|
5466 |
-
|
5467 |
-
#: includes/core/class-builtin.php:1502
|
5468 |
-
msgid "Ndonga"
|
5469 |
-
msgstr ""
|
5470 |
-
|
5471 |
-
#: includes/core/class-builtin.php:1503
|
5472 |
-
msgid "Dutch"
|
5473 |
-
msgstr ""
|
5474 |
-
|
5475 |
-
#: includes/core/class-builtin.php:1504
|
5476 |
-
msgid "Norwegian Nynorsk"
|
5477 |
-
msgstr ""
|
5478 |
-
|
5479 |
-
#: includes/core/class-builtin.php:1505
|
5480 |
-
msgid "Norwegian"
|
5481 |
-
msgstr ""
|
5482 |
-
|
5483 |
-
#: includes/core/class-builtin.php:1506
|
5484 |
-
msgid "South Ndebele"
|
5485 |
-
msgstr ""
|
5486 |
-
|
5487 |
-
#: includes/core/class-builtin.php:1507
|
5488 |
-
msgid "Navajo"
|
5489 |
-
msgstr ""
|
5490 |
-
|
5491 |
-
#: includes/core/class-builtin.php:1508
|
5492 |
-
msgid "Chichewa"
|
5493 |
-
msgstr ""
|
5494 |
-
|
5495 |
-
#: includes/core/class-builtin.php:1509
|
5496 |
-
msgid "Occitan"
|
5497 |
-
msgstr ""
|
5498 |
-
|
5499 |
-
#: includes/core/class-builtin.php:1510
|
5500 |
-
msgid "Ojibwa"
|
5501 |
-
msgstr ""
|
5502 |
-
|
5503 |
-
#: includes/core/class-builtin.php:1511
|
5504 |
-
msgid "Oromo"
|
5505 |
-
msgstr ""
|
5506 |
-
|
5507 |
-
#: includes/core/class-builtin.php:1512
|
5508 |
-
msgid "Oriya"
|
5509 |
-
msgstr ""
|
5510 |
-
|
5511 |
-
#: includes/core/class-builtin.php:1513
|
5512 |
-
msgid "Ossetian"
|
5513 |
-
msgstr ""
|
5514 |
-
|
5515 |
-
#: includes/core/class-builtin.php:1514
|
5516 |
-
msgid "Panjabi"
|
5517 |
-
msgstr ""
|
5518 |
-
|
5519 |
-
#: includes/core/class-builtin.php:1515
|
5520 |
-
msgid "Pali"
|
5521 |
-
msgstr ""
|
5522 |
-
|
5523 |
-
#: includes/core/class-builtin.php:1516
|
5524 |
-
msgid "Polish"
|
5525 |
-
msgstr ""
|
5526 |
-
|
5527 |
-
#: includes/core/class-builtin.php:1517
|
5528 |
-
msgid "Pashto"
|
5529 |
-
msgstr ""
|
5530 |
-
|
5531 |
-
#: includes/core/class-builtin.php:1518
|
5532 |
-
msgid "Portuguese"
|
5533 |
-
msgstr ""
|
5534 |
-
|
5535 |
-
#: includes/core/class-builtin.php:1519
|
5536 |
-
msgid "Quechua"
|
5537 |
-
msgstr ""
|
5538 |
-
|
5539 |
-
#: includes/core/class-builtin.php:1520
|
5540 |
-
msgid "Raeto-Romance"
|
5541 |
-
msgstr ""
|
5542 |
-
|
5543 |
-
#: includes/core/class-builtin.php:1521
|
5544 |
-
msgid "Kirundi"
|
5545 |
-
msgstr ""
|
5546 |
-
|
5547 |
-
#: includes/core/class-builtin.php:1522
|
5548 |
-
msgid "Romanian"
|
5549 |
-
msgstr ""
|
5550 |
-
|
5551 |
-
#: includes/core/class-builtin.php:1523
|
5552 |
-
msgid "Russian"
|
5553 |
-
msgstr ""
|
5554 |
-
|
5555 |
-
#: includes/core/class-builtin.php:1524
|
5556 |
-
msgid "Kinyarwanda"
|
5557 |
-
msgstr ""
|
5558 |
-
|
5559 |
-
#: includes/core/class-builtin.php:1525
|
5560 |
-
msgid "Sanskrit"
|
5561 |
-
msgstr ""
|
5562 |
-
|
5563 |
-
#: includes/core/class-builtin.php:1526
|
5564 |
-
msgid "Sardinian"
|
5565 |
-
msgstr ""
|
5566 |
-
|
5567 |
-
#: includes/core/class-builtin.php:1527
|
5568 |
-
msgid "Sindhi"
|
5569 |
-
msgstr ""
|
5570 |
-
|
5571 |
-
#: includes/core/class-builtin.php:1528
|
5572 |
-
msgid "Northern Sami"
|
5573 |
-
msgstr ""
|
5574 |
-
|
5575 |
-
#: includes/core/class-builtin.php:1529
|
5576 |
-
msgid "Sango"
|
5577 |
-
msgstr ""
|
5578 |
-
|
5579 |
-
#: includes/core/class-builtin.php:1530
|
5580 |
-
msgid "Sinhala"
|
5581 |
-
msgstr ""
|
5582 |
-
|
5583 |
-
#: includes/core/class-builtin.php:1531
|
5584 |
-
msgid "Slovak"
|
5585 |
-
msgstr ""
|
5586 |
-
|
5587 |
-
#: includes/core/class-builtin.php:1532
|
5588 |
-
msgid "Slovenian"
|
5589 |
-
msgstr ""
|
5590 |
-
|
5591 |
-
#: includes/core/class-builtin.php:1533
|
5592 |
-
msgid "Samoan"
|
5593 |
-
msgstr ""
|
5594 |
-
|
5595 |
-
#: includes/core/class-builtin.php:1534
|
5596 |
-
msgid "Shona"
|
5597 |
-
msgstr ""
|
5598 |
-
|
5599 |
-
#: includes/core/class-builtin.php:1535
|
5600 |
-
msgid "Somali"
|
5601 |
-
msgstr ""
|
5602 |
-
|
5603 |
-
#: includes/core/class-builtin.php:1536
|
5604 |
-
msgid "Albanian"
|
5605 |
-
msgstr ""
|
5606 |
-
|
5607 |
-
#: includes/core/class-builtin.php:1537
|
5608 |
-
msgid "Serbian"
|
5609 |
-
msgstr ""
|
5610 |
-
|
5611 |
-
#: includes/core/class-builtin.php:1538
|
5612 |
-
msgid "Swati"
|
5613 |
-
msgstr ""
|
5614 |
-
|
5615 |
-
#: includes/core/class-builtin.php:1539
|
5616 |
-
msgid "Southern Sotho"
|
5617 |
-
msgstr ""
|
5618 |
-
|
5619 |
-
#: includes/core/class-builtin.php:1540
|
5620 |
-
msgid "Sundanese"
|
5621 |
-
msgstr ""
|
5622 |
-
|
5623 |
-
#: includes/core/class-builtin.php:1541
|
5624 |
-
msgid "Swedish"
|
5625 |
-
msgstr ""
|
5626 |
-
|
5627 |
-
#: includes/core/class-builtin.php:1542
|
5628 |
-
msgid "Swahili"
|
5629 |
-
msgstr ""
|
5630 |
-
|
5631 |
-
#: includes/core/class-builtin.php:1543
|
5632 |
-
msgid "Tamil"
|
5633 |
-
msgstr ""
|
5634 |
-
|
5635 |
-
#: includes/core/class-builtin.php:1544
|
5636 |
-
msgid "Telugu"
|
5637 |
-
msgstr ""
|
5638 |
-
|
5639 |
-
#: includes/core/class-builtin.php:1545
|
5640 |
-
msgid "Tajik"
|
5641 |
-
msgstr ""
|
5642 |
-
|
5643 |
-
#: includes/core/class-builtin.php:1546
|
5644 |
-
msgid "Thai"
|
5645 |
-
msgstr ""
|
5646 |
-
|
5647 |
-
#: includes/core/class-builtin.php:1547
|
5648 |
-
msgid "Tigrinya"
|
5649 |
-
msgstr ""
|
5650 |
-
|
5651 |
-
#: includes/core/class-builtin.php:1548
|
5652 |
-
msgid "Turkmen"
|
5653 |
-
msgstr ""
|
5654 |
-
|
5655 |
-
#: includes/core/class-builtin.php:1549
|
5656 |
-
msgid "Tagalog"
|
5657 |
-
msgstr ""
|
5658 |
-
|
5659 |
-
#: includes/core/class-builtin.php:1550
|
5660 |
-
msgid "Tswana"
|
5661 |
-
msgstr ""
|
5662 |
-
|
5663 |
-
#: includes/core/class-builtin.php:1551 includes/core/class-builtin.php:1799
|
5664 |
-
msgid "Tonga"
|
5665 |
-
msgstr ""
|
5666 |
-
|
5667 |
-
#: includes/core/class-builtin.php:1552
|
5668 |
-
msgid "Turkish"
|
5669 |
-
msgstr ""
|
5670 |
-
|
5671 |
-
#: includes/core/class-builtin.php:1553
|
5672 |
-
msgid "Tsonga"
|
5673 |
-
msgstr ""
|
5674 |
-
|
5675 |
-
#: includes/core/class-builtin.php:1554
|
5676 |
-
msgid "Tatar"
|
5677 |
-
msgstr ""
|
5678 |
-
|
5679 |
-
#: includes/core/class-builtin.php:1555
|
5680 |
-
msgid "Twi"
|
5681 |
-
msgstr ""
|
5682 |
-
|
5683 |
-
#: includes/core/class-builtin.php:1556
|
5684 |
-
msgid "Tahitian"
|
5685 |
-
msgstr ""
|
5686 |
-
|
5687 |
-
#: includes/core/class-builtin.php:1557
|
5688 |
-
msgid "Uighur"
|
5689 |
-
msgstr ""
|
5690 |
-
|
5691 |
-
#: includes/core/class-builtin.php:1558
|
5692 |
-
msgid "Ukrainian"
|
5693 |
-
msgstr ""
|
5694 |
-
|
5695 |
-
#: includes/core/class-builtin.php:1559
|
5696 |
-
msgid "Urdu"
|
5697 |
-
msgstr ""
|
5698 |
-
|
5699 |
-
#: includes/core/class-builtin.php:1560
|
5700 |
-
msgid "Uzbek"
|
5701 |
-
msgstr ""
|
5702 |
-
|
5703 |
-
#: includes/core/class-builtin.php:1561
|
5704 |
-
msgid "Venda"
|
5705 |
-
msgstr ""
|
5706 |
-
|
5707 |
-
#: includes/core/class-builtin.php:1562
|
5708 |
-
msgid "Vietnamese"
|
5709 |
-
msgstr ""
|
5710 |
-
|
5711 |
-
#: includes/core/class-builtin.php:1563
|
5712 |
-
msgid "Volapuk"
|
5713 |
-
msgstr ""
|
5714 |
-
|
5715 |
-
#: includes/core/class-builtin.php:1564
|
5716 |
-
msgid "Walloon"
|
5717 |
-
msgstr ""
|
5718 |
-
|
5719 |
-
#: includes/core/class-builtin.php:1565
|
5720 |
-
msgid "Wolof"
|
5721 |
-
msgstr ""
|
5722 |
-
|
5723 |
-
#: includes/core/class-builtin.php:1566
|
5724 |
-
msgid "Xhosa"
|
5725 |
-
msgstr ""
|
5726 |
-
|
5727 |
-
#: includes/core/class-builtin.php:1567
|
5728 |
-
msgid "Yiddish"
|
5729 |
-
msgstr ""
|
5730 |
-
|
5731 |
-
#: includes/core/class-builtin.php:1568
|
5732 |
-
msgid "Yoruba"
|
5733 |
-
msgstr ""
|
5734 |
-
|
5735 |
-
#: includes/core/class-builtin.php:1569
|
5736 |
-
msgid "Zhuang"
|
5737 |
-
msgstr ""
|
5738 |
-
|
5739 |
-
#: includes/core/class-builtin.php:1570
|
5740 |
-
msgid "Chinese"
|
5741 |
-
msgstr ""
|
5742 |
-
|
5743 |
-
#: includes/core/class-builtin.php:1571
|
5744 |
-
msgid "Zulu"
|
5745 |
-
msgstr ""
|
5746 |
-
|
5747 |
-
#: includes/core/class-builtin.php:1577
|
5748 |
-
msgid "Afghanistan"
|
5749 |
-
msgstr ""
|
5750 |
-
|
5751 |
-
#: includes/core/class-builtin.php:1578
|
5752 |
-
msgid "Åland Islands"
|
5753 |
-
msgstr ""
|
5754 |
-
|
5755 |
-
#: includes/core/class-builtin.php:1579
|
5756 |
-
msgid "Albania"
|
5757 |
-
msgstr ""
|
5758 |
-
|
5759 |
-
#: includes/core/class-builtin.php:1580
|
5760 |
-
msgid "Algeria"
|
5761 |
-
msgstr ""
|
5762 |
-
|
5763 |
-
#: includes/core/class-builtin.php:1581
|
5764 |
-
msgid "American Samoa"
|
5765 |
-
msgstr ""
|
5766 |
-
|
5767 |
-
#: includes/core/class-builtin.php:1582
|
5768 |
-
msgid "Andorra"
|
5769 |
-
msgstr ""
|
5770 |
-
|
5771 |
-
#: includes/core/class-builtin.php:1583
|
5772 |
-
msgid "Angola"
|
5773 |
-
msgstr ""
|
5774 |
-
|
5775 |
-
#: includes/core/class-builtin.php:1584
|
5776 |
-
msgid "Anguilla"
|
5777 |
-
msgstr ""
|
5778 |
-
|
5779 |
-
#: includes/core/class-builtin.php:1585
|
5780 |
-
msgid "Antarctica"
|
5781 |
-
msgstr ""
|
5782 |
-
|
5783 |
-
#: includes/core/class-builtin.php:1586
|
5784 |
-
msgid "Antigua and Barbuda"
|
5785 |
-
msgstr ""
|
5786 |
-
|
5787 |
-
#: includes/core/class-builtin.php:1587
|
5788 |
-
msgid "Argentina"
|
5789 |
-
msgstr ""
|
5790 |
-
|
5791 |
-
#: includes/core/class-builtin.php:1588
|
5792 |
-
msgid "Armenia"
|
5793 |
-
msgstr ""
|
5794 |
-
|
5795 |
-
#: includes/core/class-builtin.php:1589
|
5796 |
-
msgid "Aruba"
|
5797 |
-
msgstr ""
|
5798 |
-
|
5799 |
-
#: includes/core/class-builtin.php:1590
|
5800 |
-
msgid "Australia"
|
5801 |
-
msgstr ""
|
5802 |
-
|
5803 |
-
#: includes/core/class-builtin.php:1591
|
5804 |
-
msgid "Austria"
|
5805 |
-
msgstr ""
|
5806 |
-
|
5807 |
-
#: includes/core/class-builtin.php:1592
|
5808 |
-
msgid "Azerbaijan"
|
5809 |
-
msgstr ""
|
5810 |
-
|
5811 |
-
#: includes/core/class-builtin.php:1593
|
5812 |
-
msgid "Bahamas"
|
5813 |
-
msgstr ""
|
5814 |
-
|
5815 |
-
#: includes/core/class-builtin.php:1594
|
5816 |
-
msgid "Bahrain"
|
5817 |
-
msgstr ""
|
5818 |
-
|
5819 |
-
#: includes/core/class-builtin.php:1595
|
5820 |
-
msgid "Bangladesh"
|
5821 |
-
msgstr ""
|
5822 |
-
|
5823 |
-
#: includes/core/class-builtin.php:1596
|
5824 |
-
msgid "Barbados"
|
5825 |
-
msgstr ""
|
5826 |
-
|
5827 |
-
#: includes/core/class-builtin.php:1597
|
5828 |
-
msgid "Belarus"
|
5829 |
-
msgstr ""
|
5830 |
-
|
5831 |
-
#: includes/core/class-builtin.php:1598
|
5832 |
-
msgid "Belgium"
|
5833 |
-
msgstr ""
|
5834 |
-
|
5835 |
-
#: includes/core/class-builtin.php:1599
|
5836 |
-
msgid "Belize"
|
5837 |
-
msgstr ""
|
5838 |
-
|
5839 |
-
#: includes/core/class-builtin.php:1600
|
5840 |
-
msgid "Benin"
|
5841 |
-
msgstr ""
|
5842 |
-
|
5843 |
-
#: includes/core/class-builtin.php:1601
|
5844 |
-
msgid "Bermuda"
|
5845 |
-
msgstr ""
|
5846 |
-
|
5847 |
-
#: includes/core/class-builtin.php:1602
|
5848 |
-
msgid "Bhutan"
|
5849 |
-
msgstr ""
|
5850 |
-
|
5851 |
-
#: includes/core/class-builtin.php:1603
|
5852 |
-
msgid "Bolivia, Plurinational State of"
|
5853 |
-
msgstr ""
|
5854 |
-
|
5855 |
-
#: includes/core/class-builtin.php:1604
|
5856 |
-
msgid "Bosnia and Herzegovina"
|
5857 |
-
msgstr ""
|
5858 |
-
|
5859 |
-
#: includes/core/class-builtin.php:1605
|
5860 |
-
msgid "Botswana"
|
5861 |
-
msgstr ""
|
5862 |
-
|
5863 |
-
#: includes/core/class-builtin.php:1606
|
5864 |
-
msgid "Bouvet Island"
|
5865 |
-
msgstr ""
|
5866 |
-
|
5867 |
-
#: includes/core/class-builtin.php:1607
|
5868 |
-
msgid "Brazil"
|
5869 |
-
msgstr ""
|
5870 |
-
|
5871 |
-
#: includes/core/class-builtin.php:1608
|
5872 |
-
msgid "British Indian Ocean Territory"
|
5873 |
-
msgstr ""
|
5874 |
-
|
5875 |
-
#: includes/core/class-builtin.php:1609
|
5876 |
-
msgid "Brunei Darussalam"
|
5877 |
-
msgstr ""
|
5878 |
-
|
5879 |
-
#: includes/core/class-builtin.php:1610
|
5880 |
-
msgid "Bulgaria"
|
5881 |
-
msgstr ""
|
5882 |
-
|
5883 |
-
#: includes/core/class-builtin.php:1611
|
5884 |
-
msgid "Burkina Faso"
|
5885 |
-
msgstr ""
|
5886 |
-
|
5887 |
-
#: includes/core/class-builtin.php:1612
|
5888 |
-
msgid "Burundi"
|
5889 |
-
msgstr ""
|
5890 |
-
|
5891 |
-
#: includes/core/class-builtin.php:1613
|
5892 |
-
msgid "Cambodia"
|
5893 |
-
msgstr ""
|
5894 |
-
|
5895 |
-
#: includes/core/class-builtin.php:1614
|
5896 |
-
msgid "Cameroon"
|
5897 |
-
msgstr ""
|
5898 |
-
|
5899 |
-
#: includes/core/class-builtin.php:1615
|
5900 |
-
msgid "Canada"
|
5901 |
-
msgstr ""
|
5902 |
-
|
5903 |
-
#: includes/core/class-builtin.php:1616
|
5904 |
-
msgid "Cape Verde"
|
5905 |
-
msgstr ""
|
5906 |
-
|
5907 |
-
#: includes/core/class-builtin.php:1617
|
5908 |
-
msgid "Cayman Islands"
|
5909 |
-
msgstr ""
|
5910 |
-
|
5911 |
-
#: includes/core/class-builtin.php:1618
|
5912 |
-
msgid "Central African Republic"
|
5913 |
-
msgstr ""
|
5914 |
-
|
5915 |
-
#: includes/core/class-builtin.php:1619
|
5916 |
-
msgid "Chad"
|
5917 |
-
msgstr ""
|
5918 |
-
|
5919 |
-
#: includes/core/class-builtin.php:1620
|
5920 |
-
msgid "Chile"
|
5921 |
-
msgstr ""
|
5922 |
-
|
5923 |
-
#: includes/core/class-builtin.php:1621
|
5924 |
-
msgid "China"
|
5925 |
-
msgstr ""
|
5926 |
-
|
5927 |
-
#: includes/core/class-builtin.php:1622
|
5928 |
-
msgid "Christmas Island"
|
5929 |
-
msgstr ""
|
5930 |
-
|
5931 |
-
#: includes/core/class-builtin.php:1623
|
5932 |
-
msgid "Cocos (Keeling) Islands"
|
5933 |
-
msgstr ""
|
5934 |
-
|
5935 |
-
#: includes/core/class-builtin.php:1624
|
5936 |
-
msgid "Colombia"
|
5937 |
-
msgstr ""
|
5938 |
-
|
5939 |
-
#: includes/core/class-builtin.php:1625
|
5940 |
-
msgid "Comoros"
|
5941 |
-
msgstr ""
|
5942 |
-
|
5943 |
-
#: includes/core/class-builtin.php:1626
|
5944 |
-
msgid "Congo"
|
5945 |
-
msgstr ""
|
5946 |
-
|
5947 |
-
#: includes/core/class-builtin.php:1627
|
5948 |
-
msgid "Congo, the Democratic Republic of the"
|
5949 |
-
msgstr ""
|
5950 |
-
|
5951 |
-
#: includes/core/class-builtin.php:1628
|
5952 |
-
msgid "Cook Islands"
|
5953 |
-
msgstr ""
|
5954 |
-
|
5955 |
-
#: includes/core/class-builtin.php:1629
|
5956 |
-
msgid "Costa Rica"
|
5957 |
-
msgstr ""
|
5958 |
-
|
5959 |
-
#: includes/core/class-builtin.php:1630
|
5960 |
-
msgid "Côte d'Ivoire"
|
5961 |
-
msgstr ""
|
5962 |
-
|
5963 |
-
#: includes/core/class-builtin.php:1631
|
5964 |
-
msgid "Croatia"
|
5965 |
-
msgstr ""
|
5966 |
-
|
5967 |
-
#: includes/core/class-builtin.php:1632
|
5968 |
-
msgid "Cuba"
|
5969 |
-
msgstr ""
|
5970 |
-
|
5971 |
-
#: includes/core/class-builtin.php:1633
|
5972 |
-
msgid "Cyprus"
|
5973 |
-
msgstr ""
|
5974 |
-
|
5975 |
-
#: includes/core/class-builtin.php:1634
|
5976 |
-
msgid "Czech Republic"
|
5977 |
-
msgstr ""
|
5978 |
-
|
5979 |
-
#: includes/core/class-builtin.php:1635
|
5980 |
-
msgid "Denmark"
|
5981 |
-
msgstr ""
|
5982 |
-
|
5983 |
-
#: includes/core/class-builtin.php:1636
|
5984 |
-
msgid "Djibouti"
|
5985 |
-
msgstr ""
|
5986 |
-
|
5987 |
-
#: includes/core/class-builtin.php:1637
|
5988 |
-
msgid "Dominica"
|
5989 |
-
msgstr ""
|
5990 |
-
|
5991 |
-
#: includes/core/class-builtin.php:1638
|
5992 |
-
msgid "Dominican Republic"
|
5993 |
-
msgstr ""
|
5994 |
-
|
5995 |
-
#: includes/core/class-builtin.php:1639
|
5996 |
-
msgid "Ecuador"
|
5997 |
-
msgstr ""
|
5998 |
-
|
5999 |
-
#: includes/core/class-builtin.php:1640
|
6000 |
-
msgid "Egypt"
|
6001 |
-
msgstr ""
|
6002 |
-
|
6003 |
-
#: includes/core/class-builtin.php:1641
|
6004 |
-
msgid "El Salvador"
|
6005 |
-
msgstr ""
|
6006 |
-
|
6007 |
-
#: includes/core/class-builtin.php:1642
|
6008 |
-
msgid "Equatorial Guinea"
|
6009 |
-
msgstr ""
|
6010 |
-
|
6011 |
-
#: includes/core/class-builtin.php:1643
|
6012 |
-
msgid "Eritrea"
|
6013 |
-
msgstr ""
|
6014 |
-
|
6015 |
-
#: includes/core/class-builtin.php:1644
|
6016 |
-
msgid "Estonia"
|
6017 |
-
msgstr ""
|
6018 |
-
|
6019 |
-
#: includes/core/class-builtin.php:1645
|
6020 |
-
msgid "Ethiopia"
|
6021 |
-
msgstr ""
|
6022 |
-
|
6023 |
-
#: includes/core/class-builtin.php:1646
|
6024 |
-
msgid "Falkland Islands (Malvinas)"
|
6025 |
-
msgstr ""
|
6026 |
-
|
6027 |
-
#: includes/core/class-builtin.php:1647
|
6028 |
-
msgid "Faroe Islands"
|
6029 |
-
msgstr ""
|
6030 |
-
|
6031 |
-
#: includes/core/class-builtin.php:1648
|
6032 |
-
msgid "Fiji"
|
6033 |
-
msgstr ""
|
6034 |
-
|
6035 |
-
#: includes/core/class-builtin.php:1649
|
6036 |
-
msgid "Finland"
|
6037 |
-
msgstr ""
|
6038 |
-
|
6039 |
-
#: includes/core/class-builtin.php:1650
|
6040 |
-
msgid "France"
|
6041 |
-
msgstr ""
|
6042 |
-
|
6043 |
-
#: includes/core/class-builtin.php:1651
|
6044 |
-
msgid "French Guiana"
|
6045 |
-
msgstr ""
|
6046 |
-
|
6047 |
-
#: includes/core/class-builtin.php:1652
|
6048 |
-
msgid "French Polynesia"
|
6049 |
-
msgstr ""
|
6050 |
-
|
6051 |
-
#: includes/core/class-builtin.php:1653
|
6052 |
-
msgid "French Southern Territories"
|
6053 |
-
msgstr ""
|
6054 |
-
|
6055 |
-
#: includes/core/class-builtin.php:1654
|
6056 |
-
msgid "Gabon"
|
6057 |
-
msgstr ""
|
6058 |
-
|
6059 |
-
#: includes/core/class-builtin.php:1655
|
6060 |
-
msgid "Gambia"
|
6061 |
-
msgstr ""
|
6062 |
-
|
6063 |
-
#: includes/core/class-builtin.php:1656
|
6064 |
-
msgid "Georgia"
|
6065 |
-
msgstr ""
|
6066 |
-
|
6067 |
-
#: includes/core/class-builtin.php:1657
|
6068 |
-
msgid "Germany"
|
6069 |
-
msgstr ""
|
6070 |
-
|
6071 |
-
#: includes/core/class-builtin.php:1658
|
6072 |
-
msgid "Ghana"
|
6073 |
-
msgstr ""
|
6074 |
-
|
6075 |
-
#: includes/core/class-builtin.php:1659
|
6076 |
-
msgid "Gibraltar"
|
6077 |
-
msgstr ""
|
6078 |
-
|
6079 |
-
#: includes/core/class-builtin.php:1660
|
6080 |
-
msgid "Greece"
|
6081 |
-
msgstr ""
|
6082 |
-
|
6083 |
-
#: includes/core/class-builtin.php:1661
|
6084 |
-
msgid "Greenland"
|
6085 |
-
msgstr ""
|
6086 |
-
|
6087 |
-
#: includes/core/class-builtin.php:1662
|
6088 |
-
msgid "Grenada"
|
6089 |
-
msgstr ""
|
6090 |
-
|
6091 |
-
#: includes/core/class-builtin.php:1663
|
6092 |
-
msgid "Guadeloupe"
|
6093 |
-
msgstr ""
|
6094 |
-
|
6095 |
-
#: includes/core/class-builtin.php:1664
|
6096 |
-
msgid "Guam"
|
6097 |
-
msgstr ""
|
6098 |
-
|
6099 |
-
#: includes/core/class-builtin.php:1665
|
6100 |
-
msgid "Guatemala"
|
6101 |
-
msgstr ""
|
6102 |
-
|
6103 |
-
#: includes/core/class-builtin.php:1666
|
6104 |
-
msgid "Guernsey"
|
6105 |
-
msgstr ""
|
6106 |
-
|
6107 |
-
#: includes/core/class-builtin.php:1667
|
6108 |
-
msgid "Guinea"
|
6109 |
-
msgstr ""
|
6110 |
-
|
6111 |
-
#: includes/core/class-builtin.php:1668
|
6112 |
-
msgid "Guinea-Bissau"
|
6113 |
-
msgstr ""
|
6114 |
-
|
6115 |
-
#: includes/core/class-builtin.php:1669
|
6116 |
-
msgid "Guyana"
|
6117 |
-
msgstr ""
|
6118 |
-
|
6119 |
-
#: includes/core/class-builtin.php:1670
|
6120 |
-
msgid "Haiti"
|
6121 |
-
msgstr ""
|
6122 |
-
|
6123 |
-
#: includes/core/class-builtin.php:1671
|
6124 |
-
msgid "Heard Island and McDonald Islands"
|
6125 |
-
msgstr ""
|
6126 |
-
|
6127 |
-
#: includes/core/class-builtin.php:1672
|
6128 |
-
msgid "Holy See (Vatican City State)"
|
6129 |
-
msgstr ""
|
6130 |
-
|
6131 |
-
#: includes/core/class-builtin.php:1673
|
6132 |
-
msgid "Honduras"
|
6133 |
-
msgstr ""
|
6134 |
-
|
6135 |
-
#: includes/core/class-builtin.php:1674
|
6136 |
-
msgid "Hong Kong"
|
6137 |
-
msgstr ""
|
6138 |
-
|
6139 |
-
#: includes/core/class-builtin.php:1675
|
6140 |
-
msgid "Hungary"
|
6141 |
-
msgstr ""
|
6142 |
-
|
6143 |
-
#: includes/core/class-builtin.php:1676
|
6144 |
-
msgid "Iceland"
|
6145 |
-
msgstr ""
|
6146 |
-
|
6147 |
-
#: includes/core/class-builtin.php:1677
|
6148 |
-
msgid "India"
|
6149 |
-
msgstr ""
|
6150 |
-
|
6151 |
-
#: includes/core/class-builtin.php:1678
|
6152 |
-
msgid "Indonesia"
|
6153 |
-
msgstr ""
|
6154 |
-
|
6155 |
-
#: includes/core/class-builtin.php:1679
|
6156 |
-
msgid "Iran, Islamic Republic of"
|
6157 |
-
msgstr ""
|
6158 |
-
|
6159 |
-
#: includes/core/class-builtin.php:1680
|
6160 |
-
msgid "Iraq"
|
6161 |
-
msgstr ""
|
6162 |
-
|
6163 |
-
#: includes/core/class-builtin.php:1681
|
6164 |
-
msgid "Ireland"
|
6165 |
-
msgstr ""
|
6166 |
-
|
6167 |
-
#: includes/core/class-builtin.php:1682
|
6168 |
-
msgid "Isle of Man"
|
6169 |
-
msgstr ""
|
6170 |
-
|
6171 |
-
#: includes/core/class-builtin.php:1683
|
6172 |
-
msgid "Israel"
|
6173 |
-
msgstr ""
|
6174 |
-
|
6175 |
-
#: includes/core/class-builtin.php:1684
|
6176 |
-
msgid "Italy"
|
6177 |
-
msgstr ""
|
6178 |
-
|
6179 |
-
#: includes/core/class-builtin.php:1685
|
6180 |
-
msgid "Jamaica"
|
6181 |
-
msgstr ""
|
6182 |
-
|
6183 |
-
#: includes/core/class-builtin.php:1686
|
6184 |
-
msgid "Japan"
|
6185 |
-
msgstr ""
|
6186 |
-
|
6187 |
-
#: includes/core/class-builtin.php:1687
|
6188 |
-
msgid "Jersey"
|
6189 |
-
msgstr ""
|
6190 |
-
|
6191 |
-
#: includes/core/class-builtin.php:1688
|
6192 |
-
msgid "Jordan"
|
6193 |
-
msgstr ""
|
6194 |
-
|
6195 |
-
#: includes/core/class-builtin.php:1689
|
6196 |
-
msgid "Kazakhstan"
|
6197 |
-
msgstr ""
|
6198 |
-
|
6199 |
-
#: includes/core/class-builtin.php:1690
|
6200 |
-
msgid "Kenya"
|
6201 |
-
msgstr ""
|
6202 |
-
|
6203 |
-
#: includes/core/class-builtin.php:1691
|
6204 |
-
msgid "Kiribati"
|
6205 |
-
msgstr ""
|
6206 |
-
|
6207 |
-
#: includes/core/class-builtin.php:1692
|
6208 |
-
msgid "Korea, Democratic People's Republic of"
|
6209 |
-
msgstr ""
|
6210 |
-
|
6211 |
-
#: includes/core/class-builtin.php:1693
|
6212 |
-
msgid "Korea, Republic of"
|
6213 |
-
msgstr ""
|
6214 |
-
|
6215 |
-
#: includes/core/class-builtin.php:1694
|
6216 |
-
msgid "Kuwait"
|
6217 |
-
msgstr ""
|
6218 |
-
|
6219 |
-
#: includes/core/class-builtin.php:1695
|
6220 |
-
msgid "Kyrgyzstan"
|
6221 |
-
msgstr ""
|
6222 |
-
|
6223 |
-
#: includes/core/class-builtin.php:1696
|
6224 |
-
msgid "Lao People's Democratic Republic"
|
6225 |
-
msgstr ""
|
6226 |
-
|
6227 |
-
#: includes/core/class-builtin.php:1697
|
6228 |
-
msgid "Latvia"
|
6229 |
-
msgstr ""
|
6230 |
-
|
6231 |
-
#: includes/core/class-builtin.php:1698
|
6232 |
-
msgid "Lebanon"
|
6233 |
-
msgstr ""
|
6234 |
-
|
6235 |
-
#: includes/core/class-builtin.php:1699
|
6236 |
-
msgid "Lesotho"
|
6237 |
-
msgstr ""
|
6238 |
-
|
6239 |
-
#: includes/core/class-builtin.php:1700
|
6240 |
-
msgid "Liberia"
|
6241 |
-
msgstr ""
|
6242 |
-
|
6243 |
-
#: includes/core/class-builtin.php:1701
|
6244 |
-
msgid "Libyan Arab Jamahiriya"
|
6245 |
-
msgstr ""
|
6246 |
-
|
6247 |
-
#: includes/core/class-builtin.php:1702
|
6248 |
-
msgid "Liechtenstein"
|
6249 |
-
msgstr ""
|
6250 |
-
|
6251 |
-
#: includes/core/class-builtin.php:1703
|
6252 |
-
msgid "Lithuania"
|
6253 |
-
msgstr ""
|
6254 |
-
|
6255 |
-
#: includes/core/class-builtin.php:1704
|
6256 |
-
msgid "Luxembourg"
|
6257 |
-
msgstr ""
|
6258 |
-
|
6259 |
-
#: includes/core/class-builtin.php:1705
|
6260 |
-
msgid "Macao"
|
6261 |
-
msgstr ""
|
6262 |
-
|
6263 |
-
#: includes/core/class-builtin.php:1706
|
6264 |
-
msgid "Macedonia, the former Yugoslav Republic of"
|
6265 |
-
msgstr ""
|
6266 |
-
|
6267 |
-
#: includes/core/class-builtin.php:1707
|
6268 |
-
msgid "Madagascar"
|
6269 |
-
msgstr ""
|
6270 |
-
|
6271 |
-
#: includes/core/class-builtin.php:1708
|
6272 |
-
msgid "Malawi"
|
6273 |
-
msgstr ""
|
6274 |
-
|
6275 |
-
#: includes/core/class-builtin.php:1709
|
6276 |
-
msgid "Malaysia"
|
6277 |
-
msgstr ""
|
6278 |
-
|
6279 |
-
#: includes/core/class-builtin.php:1710
|
6280 |
-
msgid "Maldives"
|
6281 |
-
msgstr ""
|
6282 |
-
|
6283 |
-
#: includes/core/class-builtin.php:1711
|
6284 |
-
msgid "Mali"
|
6285 |
-
msgstr ""
|
6286 |
-
|
6287 |
-
#: includes/core/class-builtin.php:1712
|
6288 |
-
msgid "Malta"
|
6289 |
-
msgstr ""
|
6290 |
-
|
6291 |
-
#: includes/core/class-builtin.php:1713
|
6292 |
-
msgid "Marshall Islands"
|
6293 |
-
msgstr ""
|
6294 |
-
|
6295 |
-
#: includes/core/class-builtin.php:1714
|
6296 |
-
msgid "Martinique"
|
6297 |
-
msgstr ""
|
6298 |
-
|
6299 |
-
#: includes/core/class-builtin.php:1715
|
6300 |
-
msgid "Mauritania"
|
6301 |
-
msgstr ""
|
6302 |
-
|
6303 |
-
#: includes/core/class-builtin.php:1716
|
6304 |
-
msgid "Mauritius"
|
6305 |
-
msgstr ""
|
6306 |
-
|
6307 |
-
#: includes/core/class-builtin.php:1717
|
6308 |
-
msgid "Mayotte"
|
6309 |
-
msgstr ""
|
6310 |
-
|
6311 |
-
#: includes/core/class-builtin.php:1718
|
6312 |
-
msgid "Mexico"
|
6313 |
-
msgstr ""
|
6314 |
-
|
6315 |
-
#: includes/core/class-builtin.php:1719
|
6316 |
-
msgid "Micronesia, Federated States of"
|
6317 |
-
msgstr ""
|
6318 |
-
|
6319 |
-
#: includes/core/class-builtin.php:1720
|
6320 |
-
msgid "Moldova, Republic of"
|
6321 |
-
msgstr ""
|
6322 |
-
|
6323 |
-
#: includes/core/class-builtin.php:1721
|
6324 |
-
msgid "Monaco"
|
6325 |
-
msgstr ""
|
6326 |
-
|
6327 |
-
#: includes/core/class-builtin.php:1722
|
6328 |
-
msgid "Mongolia"
|
6329 |
-
msgstr ""
|
6330 |
-
|
6331 |
-
#: includes/core/class-builtin.php:1723
|
6332 |
-
msgid "Montenegro"
|
6333 |
-
msgstr ""
|
6334 |
-
|
6335 |
-
#: includes/core/class-builtin.php:1724
|
6336 |
-
msgid "Montserrat"
|
6337 |
-
msgstr ""
|
6338 |
-
|
6339 |
-
#: includes/core/class-builtin.php:1725
|
6340 |
-
msgid "Morocco"
|
6341 |
-
msgstr ""
|
6342 |
-
|
6343 |
-
#: includes/core/class-builtin.php:1726
|
6344 |
-
msgid "Mozambique"
|
6345 |
-
msgstr ""
|
6346 |
-
|
6347 |
-
#: includes/core/class-builtin.php:1727
|
6348 |
-
msgid "Myanmar"
|
6349 |
-
msgstr ""
|
6350 |
-
|
6351 |
-
#: includes/core/class-builtin.php:1728
|
6352 |
-
msgid "Namibia"
|
6353 |
-
msgstr ""
|
6354 |
-
|
6355 |
-
#: includes/core/class-builtin.php:1730
|
6356 |
-
msgid "Nepal"
|
6357 |
-
msgstr ""
|
6358 |
-
|
6359 |
-
#: includes/core/class-builtin.php:1731
|
6360 |
-
msgid "Netherlands"
|
6361 |
-
msgstr ""
|
6362 |
-
|
6363 |
-
#: includes/core/class-builtin.php:1732
|
6364 |
-
msgid "Netherlands Antilles"
|
6365 |
-
msgstr ""
|
6366 |
-
|
6367 |
-
#: includes/core/class-builtin.php:1733
|
6368 |
-
msgid "New Caledonia"
|
6369 |
-
msgstr ""
|
6370 |
-
|
6371 |
-
#: includes/core/class-builtin.php:1734
|
6372 |
-
msgid "New Zealand"
|
6373 |
-
msgstr ""
|
6374 |
-
|
6375 |
-
#: includes/core/class-builtin.php:1735
|
6376 |
-
msgid "Nicaragua"
|
6377 |
-
msgstr ""
|
6378 |
-
|
6379 |
-
#: includes/core/class-builtin.php:1736
|
6380 |
-
msgid "Niger"
|
6381 |
-
msgstr ""
|
6382 |
-
|
6383 |
-
#: includes/core/class-builtin.php:1737
|
6384 |
-
msgid "Nigeria"
|
6385 |
-
msgstr ""
|
6386 |
-
|
6387 |
-
#: includes/core/class-builtin.php:1738
|
6388 |
-
msgid "Niue"
|
6389 |
-
msgstr ""
|
6390 |
-
|
6391 |
-
#: includes/core/class-builtin.php:1739
|
6392 |
-
msgid "Norfolk Island"
|
6393 |
-
msgstr ""
|
6394 |
-
|
6395 |
-
#: includes/core/class-builtin.php:1740
|
6396 |
-
msgid "Northern Mariana Islands"
|
6397 |
-
msgstr ""
|
6398 |
-
|
6399 |
-
#: includes/core/class-builtin.php:1741
|
6400 |
-
msgid "Norway"
|
6401 |
-
msgstr ""
|
6402 |
-
|
6403 |
-
#: includes/core/class-builtin.php:1742
|
6404 |
-
msgid "Oman"
|
6405 |
-
msgstr ""
|
6406 |
-
|
6407 |
-
#: includes/core/class-builtin.php:1743
|
6408 |
-
msgid "Pakistan"
|
6409 |
-
msgstr ""
|
6410 |
-
|
6411 |
-
#: includes/core/class-builtin.php:1744
|
6412 |
-
msgid "Palau"
|
6413 |
-
msgstr ""
|
6414 |
-
|
6415 |
-
#: includes/core/class-builtin.php:1745
|
6416 |
-
msgid "Palestine"
|
6417 |
-
msgstr ""
|
6418 |
-
|
6419 |
-
#: includes/core/class-builtin.php:1746
|
6420 |
-
msgid "Panama"
|
6421 |
-
msgstr ""
|
6422 |
-
|
6423 |
-
#: includes/core/class-builtin.php:1747
|
6424 |
-
msgid "Papua New Guinea"
|
6425 |
-
msgstr ""
|
6426 |
-
|
6427 |
-
#: includes/core/class-builtin.php:1748
|
6428 |
-
msgid "Paraguay"
|
6429 |
-
msgstr ""
|
6430 |
-
|
6431 |
-
#: includes/core/class-builtin.php:1749
|
6432 |
-
msgid "Peru"
|
6433 |
-
msgstr ""
|
6434 |
-
|
6435 |
-
#: includes/core/class-builtin.php:1750
|
6436 |
-
msgid "Philippines"
|
6437 |
-
msgstr ""
|
6438 |
-
|
6439 |
-
#: includes/core/class-builtin.php:1751
|
6440 |
-
msgid "Pitcairn"
|
6441 |
-
msgstr ""
|
6442 |
-
|
6443 |
-
#: includes/core/class-builtin.php:1752
|
6444 |
-
msgid "Poland"
|
6445 |
-
msgstr ""
|
6446 |
-
|
6447 |
-
#: includes/core/class-builtin.php:1753
|
6448 |
-
msgid "Portugal"
|
6449 |
-
msgstr ""
|
6450 |
-
|
6451 |
-
#: includes/core/class-builtin.php:1754
|
6452 |
-
msgid "Puerto Rico"
|
6453 |
-
msgstr ""
|
6454 |
-
|
6455 |
-
#: includes/core/class-builtin.php:1755
|
6456 |
-
msgid "Qatar"
|
6457 |
-
msgstr ""
|
6458 |
-
|
6459 |
-
#: includes/core/class-builtin.php:1756
|
6460 |
-
msgid "Réunion"
|
6461 |
-
msgstr ""
|
6462 |
-
|
6463 |
-
#: includes/core/class-builtin.php:1757
|
6464 |
-
msgid "Romania"
|
6465 |
-
msgstr ""
|
6466 |
-
|
6467 |
-
#: includes/core/class-builtin.php:1758
|
6468 |
-
msgid "Russian Federation"
|
6469 |
-
msgstr ""
|
6470 |
-
|
6471 |
-
#: includes/core/class-builtin.php:1759
|
6472 |
-
msgid "Rwanda"
|
6473 |
-
msgstr ""
|
6474 |
-
|
6475 |
-
#: includes/core/class-builtin.php:1760
|
6476 |
-
msgid "Saint Barthélemy"
|
6477 |
-
msgstr ""
|
6478 |
-
|
6479 |
-
#: includes/core/class-builtin.php:1761
|
6480 |
-
msgid "Saint Helena"
|
6481 |
-
msgstr ""
|
6482 |
-
|
6483 |
-
#: includes/core/class-builtin.php:1762
|
6484 |
-
msgid "Saint Kitts and Nevis"
|
6485 |
-
msgstr ""
|
6486 |
-
|
6487 |
-
#: includes/core/class-builtin.php:1763
|
6488 |
-
msgid "Saint Lucia"
|
6489 |
-
msgstr ""
|
6490 |
-
|
6491 |
-
#: includes/core/class-builtin.php:1764
|
6492 |
-
msgid "Saint Martin (French part)"
|
6493 |
-
msgstr ""
|
6494 |
-
|
6495 |
-
#: includes/core/class-builtin.php:1765
|
6496 |
-
msgid "Saint Pierre and Miquelon"
|
6497 |
-
msgstr ""
|
6498 |
-
|
6499 |
-
#: includes/core/class-builtin.php:1766
|
6500 |
-
msgid "Saint Vincent and the Grenadines"
|
6501 |
-
msgstr ""
|
6502 |
-
|
6503 |
-
#: includes/core/class-builtin.php:1767
|
6504 |
-
msgid "Samoa"
|
6505 |
-
msgstr ""
|
6506 |
-
|
6507 |
-
#: includes/core/class-builtin.php:1768
|
6508 |
-
msgid "San Marino"
|
6509 |
-
msgstr ""
|
6510 |
-
|
6511 |
-
#: includes/core/class-builtin.php:1769
|
6512 |
-
msgid "Sao Tome and Principe"
|
6513 |
-
msgstr ""
|
6514 |
-
|
6515 |
-
#: includes/core/class-builtin.php:1770
|
6516 |
-
msgid "Saudi Arabia"
|
6517 |
-
msgstr ""
|
6518 |
-
|
6519 |
-
#: includes/core/class-builtin.php:1771
|
6520 |
-
msgid "Senegal"
|
6521 |
-
msgstr ""
|
6522 |
-
|
6523 |
-
#: includes/core/class-builtin.php:1772
|
6524 |
-
msgid "Serbia"
|
6525 |
-
msgstr ""
|
6526 |
-
|
6527 |
-
#: includes/core/class-builtin.php:1773
|
6528 |
-
msgid "Seychelles"
|
6529 |
-
msgstr ""
|
6530 |
-
|
6531 |
-
#: includes/core/class-builtin.php:1774
|
6532 |
-
msgid "Sierra Leone"
|
6533 |
-
msgstr ""
|
6534 |
-
|
6535 |
-
#: includes/core/class-builtin.php:1775
|
6536 |
-
msgid "Singapore"
|
6537 |
-
msgstr ""
|
6538 |
-
|
6539 |
-
#: includes/core/class-builtin.php:1776
|
6540 |
-
msgid "Slovakia"
|
6541 |
-
msgstr ""
|
6542 |
-
|
6543 |
-
#: includes/core/class-builtin.php:1777
|
6544 |
-
msgid "Slovenia"
|
6545 |
-
msgstr ""
|
6546 |
-
|
6547 |
-
#: includes/core/class-builtin.php:1778
|
6548 |
-
msgid "Solomon Islands"
|
6549 |
-
msgstr ""
|
6550 |
-
|
6551 |
-
#: includes/core/class-builtin.php:1779
|
6552 |
-
msgid "Somalia"
|
6553 |
-
msgstr ""
|
6554 |
-
|
6555 |
-
#: includes/core/class-builtin.php:1780
|
6556 |
-
msgid "South Africa"
|
6557 |
-
msgstr ""
|
6558 |
-
|
6559 |
-
#: includes/core/class-builtin.php:1781
|
6560 |
-
msgid "South Georgia and the South Sandwich Islands"
|
6561 |
-
msgstr ""
|
6562 |
-
|
6563 |
-
#: includes/core/class-builtin.php:1782
|
6564 |
-
msgid "South Sudan"
|
6565 |
-
msgstr ""
|
6566 |
-
|
6567 |
-
#: includes/core/class-builtin.php:1783
|
6568 |
-
msgid "Spain"
|
6569 |
-
msgstr ""
|
6570 |
-
|
6571 |
-
#: includes/core/class-builtin.php:1784
|
6572 |
-
msgid "Sri Lanka"
|
6573 |
-
msgstr ""
|
6574 |
-
|
6575 |
-
#: includes/core/class-builtin.php:1785
|
6576 |
-
msgid "Sudan"
|
6577 |
-
msgstr ""
|
6578 |
-
|
6579 |
-
#: includes/core/class-builtin.php:1786
|
6580 |
-
msgid "Suriname"
|
6581 |
-
msgstr ""
|
6582 |
-
|
6583 |
-
#: includes/core/class-builtin.php:1787
|
6584 |
-
msgid "Svalbard and Jan Mayen"
|
6585 |
-
msgstr ""
|
6586 |
-
|
6587 |
-
#: includes/core/class-builtin.php:1788
|
6588 |
-
msgid "Swaziland"
|
6589 |
-
msgstr ""
|
6590 |
-
|
6591 |
-
#: includes/core/class-builtin.php:1789
|
6592 |
-
msgid "Sweden"
|
6593 |
-
msgstr ""
|
6594 |
-
|
6595 |
-
#: includes/core/class-builtin.php:1790
|
6596 |
-
msgid "Switzerland"
|
6597 |
-
msgstr ""
|
6598 |
-
|
6599 |
-
#: includes/core/class-builtin.php:1791
|
6600 |
-
msgid "Syrian Arab Republic"
|
6601 |
-
msgstr ""
|
6602 |
-
|
6603 |
-
#: includes/core/class-builtin.php:1792
|
6604 |
-
msgid "Taiwan, Province of China"
|
6605 |
-
msgstr ""
|
6606 |
-
|
6607 |
-
#: includes/core/class-builtin.php:1793
|
6608 |
-
msgid "Tajikistan"
|
6609 |
-
msgstr ""
|
6610 |
-
|
6611 |
-
#: includes/core/class-builtin.php:1794
|
6612 |
-
msgid "Tanzania, United Republic of"
|
6613 |
-
msgstr ""
|
6614 |
-
|
6615 |
-
#: includes/core/class-builtin.php:1795
|
6616 |
-
msgid "Thailand"
|
6617 |
-
msgstr ""
|
6618 |
-
|
6619 |
-
#: includes/core/class-builtin.php:1796
|
6620 |
-
msgid "Timor-Leste"
|
6621 |
-
msgstr ""
|
6622 |
-
|
6623 |
-
#: includes/core/class-builtin.php:1797
|
6624 |
-
msgid "Togo"
|
6625 |
-
msgstr ""
|
6626 |
-
|
6627 |
-
#: includes/core/class-builtin.php:1798
|
6628 |
-
msgid "Tokelau"
|
6629 |
-
msgstr ""
|
6630 |
-
|
6631 |
-
#: includes/core/class-builtin.php:1800
|
6632 |
-
msgid "Trinidad and Tobago"
|
6633 |
-
msgstr ""
|
6634 |
-
|
6635 |
-
#: includes/core/class-builtin.php:1801
|
6636 |
-
msgid "Tunisia"
|
6637 |
-
msgstr ""
|
6638 |
-
|
6639 |
-
#: includes/core/class-builtin.php:1802
|
6640 |
-
msgid "Turkey"
|
6641 |
-
msgstr ""
|
6642 |
-
|
6643 |
-
#: includes/core/class-builtin.php:1803
|
6644 |
-
msgid "Turkmenistan"
|
6645 |
-
msgstr ""
|
6646 |
-
|
6647 |
-
#: includes/core/class-builtin.php:1804
|
6648 |
-
msgid "Turks and Caicos Islands"
|
6649 |
-
msgstr ""
|
6650 |
-
|
6651 |
-
#: includes/core/class-builtin.php:1805
|
6652 |
-
msgid "Tuvalu"
|
6653 |
-
msgstr ""
|
6654 |
-
|
6655 |
-
#: includes/core/class-builtin.php:1806
|
6656 |
-
msgid "Uganda"
|
6657 |
-
msgstr ""
|
6658 |
-
|
6659 |
-
#: includes/core/class-builtin.php:1807
|
6660 |
-
msgid "Ukraine"
|
6661 |
-
msgstr ""
|
6662 |
-
|
6663 |
-
#: includes/core/class-builtin.php:1808
|
6664 |
-
msgid "United Arab Emirates"
|
6665 |
-
msgstr ""
|
6666 |
-
|
6667 |
-
#: includes/core/class-builtin.php:1809
|
6668 |
-
msgid "United Kingdom"
|
6669 |
-
msgstr ""
|
6670 |
-
|
6671 |
-
#: includes/core/class-builtin.php:1810
|
6672 |
-
msgid "United States"
|
6673 |
-
msgstr ""
|
6674 |
-
|
6675 |
-
#: includes/core/class-builtin.php:1811
|
6676 |
-
msgid "United States Minor Outlying Islands"
|
6677 |
-
msgstr ""
|
6678 |
-
|
6679 |
-
#: includes/core/class-builtin.php:1812
|
6680 |
-
msgid "Uruguay"
|
6681 |
-
msgstr ""
|
6682 |
-
|
6683 |
-
#: includes/core/class-builtin.php:1813
|
6684 |
-
msgid "Uzbekistan"
|
6685 |
-
msgstr ""
|
6686 |
-
|
6687 |
-
#: includes/core/class-builtin.php:1814
|
6688 |
-
msgid "Vanuatu"
|
6689 |
-
msgstr ""
|
6690 |
-
|
6691 |
-
#: includes/core/class-builtin.php:1815
|
6692 |
-
msgid "Venezuela, Bolivarian Republic of"
|
6693 |
-
msgstr ""
|
6694 |
-
|
6695 |
-
#: includes/core/class-builtin.php:1816
|
6696 |
-
msgid "Viet Nam"
|
6697 |
-
msgstr ""
|
6698 |
-
|
6699 |
-
#: includes/core/class-builtin.php:1817
|
6700 |
-
msgid "Virgin Islands, British"
|
6701 |
-
msgstr ""
|
6702 |
-
|
6703 |
-
#: includes/core/class-builtin.php:1818
|
6704 |
-
msgid "Virgin Islands, U.S."
|
6705 |
-
msgstr ""
|
6706 |
-
|
6707 |
-
#: includes/core/class-builtin.php:1819
|
6708 |
-
msgid "Wallis and Futuna"
|
6709 |
-
msgstr ""
|
6710 |
-
|
6711 |
-
#: includes/core/class-builtin.php:1820
|
6712 |
-
msgid "Western Sahara"
|
6713 |
-
msgstr ""
|
6714 |
-
|
6715 |
-
#: includes/core/class-builtin.php:1821
|
6716 |
-
msgid "Yemen"
|
6717 |
-
msgstr ""
|
6718 |
-
|
6719 |
-
#: includes/core/class-builtin.php:1822
|
6720 |
-
msgid "Zambia"
|
6721 |
-
msgstr ""
|
6722 |
-
|
6723 |
-
#: includes/core/class-builtin.php:1823
|
6724 |
-
msgid "Zimbabwe"
|
6725 |
-
msgstr ""
|
6726 |
-
|
6727 |
-
#: includes/core/class-common.php:55
|
6728 |
-
msgid "Form"
|
6729 |
-
msgstr ""
|
6730 |
-
|
6731 |
-
#: includes/core/class-common.php:57
|
6732 |
-
msgid "Add New Form"
|
6733 |
-
msgstr ""
|
6734 |
-
|
6735 |
-
#: includes/core/class-common.php:58
|
6736 |
-
msgid "Edit Form"
|
6737 |
-
msgstr ""
|
6738 |
-
|
6739 |
-
#: includes/core/class-common.php:59
|
6740 |
-
msgid "You did not create any forms yet"
|
6741 |
-
msgstr ""
|
6742 |
-
|
6743 |
-
#: includes/core/class-common.php:61
|
6744 |
-
msgid "Search Forms"
|
6745 |
-
msgstr ""
|
6746 |
-
|
6747 |
-
#: includes/core/class-common.php:85
|
6748 |
-
msgid "Member Directory"
|
6749 |
-
msgstr ""
|
6750 |
-
|
6751 |
-
#: includes/core/class-common.php:87
|
6752 |
-
msgid "Add New Member Directory"
|
6753 |
-
msgstr ""
|
6754 |
-
|
6755 |
-
#: includes/core/class-common.php:88
|
6756 |
-
msgid "Edit Member Directory"
|
6757 |
-
msgstr ""
|
6758 |
-
|
6759 |
-
#: includes/core/class-common.php:89
|
6760 |
-
msgid "You did not create any member directories yet"
|
6761 |
-
msgstr ""
|
6762 |
-
|
6763 |
-
#: includes/core/class-common.php:91
|
6764 |
-
msgid "Search Member Directories"
|
6765 |
-
msgstr ""
|
6766 |
-
|
6767 |
-
#: includes/core/class-cron.php:62
|
6768 |
-
msgid "Once Weekly"
|
6769 |
-
msgstr ""
|
6770 |
-
|
6771 |
-
#: includes/core/class-date-time.php:54
|
6772 |
-
msgid "just now"
|
6773 |
-
msgstr ""
|
6774 |
-
|
6775 |
-
#: includes/core/class-date-time.php:63
|
6776 |
-
#, php-format
|
6777 |
-
msgid "%s min"
|
6778 |
-
msgid_plural "%s mins"
|
6779 |
-
msgstr[0] ""
|
6780 |
-
msgstr[1] ""
|
6781 |
-
|
6782 |
-
#: includes/core/class-date-time.php:72
|
6783 |
-
#, php-format
|
6784 |
-
msgid "%s hr"
|
6785 |
-
msgid_plural "%s hrs"
|
6786 |
-
msgstr[0] ""
|
6787 |
-
msgstr[1] ""
|
6788 |
-
|
6789 |
-
#: includes/core/class-date-time.php:82
|
6790 |
-
#, php-format
|
6791 |
-
msgid "Yesterday at %s"
|
6792 |
-
msgstr ""
|
6793 |
-
|
6794 |
-
#: includes/core/class-date-time.php:84 includes/core/class-date-time.php:89
|
6795 |
-
#: includes/core/class-date-time.php:93 includes/core/class-date-time.php:97
|
6796 |
-
#, php-format
|
6797 |
-
msgid "%s at %s"
|
6798 |
-
msgstr ""
|
6799 |
-
|
6800 |
-
#: includes/core/class-date-time.php:146
|
6801 |
-
#, php-format
|
6802 |
-
msgid "%s year old"
|
6803 |
-
msgstr ""
|
6804 |
-
|
6805 |
-
#: includes/core/class-date-time.php:149
|
6806 |
-
#, php-format
|
6807 |
-
msgid "%s years old"
|
6808 |
-
msgstr ""
|
6809 |
-
|
6810 |
-
#: includes/core/class-date-time.php:152
|
6811 |
-
msgid "Less than 1 year old"
|
6812 |
-
msgstr ""
|
6813 |
-
|
6814 |
-
#: includes/core/class-external-integrations.php:498
|
6815 |
-
#, php-format
|
6816 |
-
msgid "Edit the %s translation"
|
6817 |
-
msgstr ""
|
6818 |
-
|
6819 |
-
#: includes/core/class-external-integrations.php:505
|
6820 |
-
#, php-format
|
6821 |
-
msgid "Add translation to %s"
|
6822 |
-
msgstr ""
|
6823 |
-
|
6824 |
-
#: includes/core/class-fields.php:595
|
6825 |
-
msgid "Undefined"
|
6826 |
-
msgstr ""
|
6827 |
-
|
6828 |
-
#: includes/core/class-fields.php:1206 templates/message.php:6
|
6829 |
-
#, php-format
|
6830 |
-
msgid "%s"
|
6831 |
-
msgstr ""
|
6832 |
-
|
6833 |
-
#: includes/core/class-fields.php:1227
|
6834 |
-
msgid "Custom Field"
|
6835 |
-
msgstr ""
|
6836 |
-
|
6837 |
-
#: includes/core/class-fields.php:1570
|
6838 |
-
msgid "Please upload a valid image!"
|
6839 |
-
msgstr ""
|
6840 |
-
|
6841 |
-
#: includes/core/class-fields.php:1584
|
6842 |
-
msgid "Sorry this is not a valid image."
|
6843 |
-
msgstr ""
|
6844 |
-
|
6845 |
-
#: includes/core/class-fields.php:1587
|
6846 |
-
msgid "This image is too large!"
|
6847 |
-
msgstr ""
|
6848 |
-
|
6849 |
-
#: includes/core/class-fields.php:1590
|
6850 |
-
msgid "This image is too small!"
|
6851 |
-
msgstr ""
|
6852 |
-
|
6853 |
-
#: includes/core/class-fields.php:1593
|
6854 |
-
msgid "You can only upload one image"
|
6855 |
-
msgstr ""
|
6856 |
-
|
6857 |
-
#: includes/core/class-fields.php:1625
|
6858 |
-
msgid "Sorry this is not a valid file."
|
6859 |
-
msgstr ""
|
6860 |
-
|
6861 |
-
#: includes/core/class-fields.php:1628
|
6862 |
-
msgid "This file is too large!"
|
6863 |
-
msgstr ""
|
6864 |
-
|
6865 |
-
#: includes/core/class-fields.php:1631
|
6866 |
-
msgid "This file is too small!"
|
6867 |
-
msgstr ""
|
6868 |
-
|
6869 |
-
#: includes/core/class-fields.php:1634
|
6870 |
-
msgid "You can only upload one file"
|
6871 |
-
msgstr ""
|
6872 |
-
|
6873 |
-
#: includes/core/class-fields.php:2134
|
6874 |
-
msgid "Current Password"
|
6875 |
-
msgstr ""
|
6876 |
-
|
6877 |
-
#: includes/core/class-fields.php:2163
|
6878 |
-
msgid "New Password"
|
6879 |
-
msgstr ""
|
6880 |
-
|
6881 |
-
#: includes/core/class-fields.php:2195
|
6882 |
-
#, php-format
|
6883 |
-
msgid "Confirm %s"
|
6884 |
-
msgstr ""
|
6885 |
-
|
6886 |
-
#: includes/core/class-fields.php:2429
|
6887 |
-
msgid "Upload Photo"
|
6888 |
-
msgstr ""
|
6889 |
-
|
6890 |
-
#: includes/core/class-fields.php:2450 includes/core/class-fields.php:2474
|
6891 |
-
#: includes/core/um-actions-profile.php:826
|
6892 |
-
msgid "Change photo"
|
6893 |
-
msgstr ""
|
6894 |
-
|
6895 |
-
#: includes/core/class-fields.php:2474 includes/core/class-fields.php:2571
|
6896 |
-
msgid "Processing..."
|
6897 |
-
msgstr ""
|
6898 |
-
|
6899 |
-
#: includes/core/class-fields.php:2496
|
6900 |
-
msgid "Upload File"
|
6901 |
-
msgstr ""
|
6902 |
-
|
6903 |
-
#: includes/core/class-fields.php:2538 includes/core/um-filters-fields.php:244
|
6904 |
-
msgid "This file has been removed."
|
6905 |
-
msgstr ""
|
6906 |
-
|
6907 |
-
#: includes/core/class-fields.php:2541 includes/core/class-fields.php:2571
|
6908 |
-
msgid "Change file"
|
6909 |
-
msgstr ""
|
6910 |
-
|
6911 |
-
#: includes/core/class-fields.php:2571
|
6912 |
-
msgid "Save"
|
6913 |
-
msgstr ""
|
6914 |
-
|
6915 |
-
#: includes/core/class-fields.php:4016
|
6916 |
-
#, php-format
|
6917 |
-
msgid ""
|
6918 |
-
"Your profile is looking a little empty. Why not <a href=\"%s\">add</a> some "
|
6919 |
-
"information!"
|
6920 |
-
msgstr ""
|
6921 |
-
|
6922 |
-
#: includes/core/class-fields.php:4018
|
6923 |
-
msgid "This user has not added any information to their profile yet."
|
6924 |
-
msgstr ""
|
6925 |
-
|
6926 |
-
#: includes/core/class-files.php:281
|
6927 |
-
msgid "Invalid parameters"
|
6928 |
-
msgstr ""
|
6929 |
-
|
6930 |
-
#: includes/core/class-files.php:286
|
6931 |
-
msgid "Invalid coordinates"
|
6932 |
-
msgstr ""
|
6933 |
-
|
6934 |
-
#: includes/core/class-files.php:291
|
6935 |
-
msgid "Invalid file ownership"
|
6936 |
-
msgstr ""
|
6937 |
-
|
6938 |
-
#: includes/core/class-files.php:346
|
6939 |
-
msgid "Invalid nonce"
|
6940 |
-
msgstr ""
|
6941 |
-
|
6942 |
-
#: includes/core/class-files.php:368 includes/core/class-files.php:454
|
6943 |
-
msgid "A theme or plugin compatibility issue"
|
6944 |
-
msgstr ""
|
6945 |
-
|
6946 |
-
#: includes/core/class-files.php:997
|
6947 |
-
msgid "Ultimate Member: Not a valid temp file"
|
6948 |
-
msgstr ""
|
6949 |
-
|
6950 |
-
#: includes/core/class-files.php:1125
|
6951 |
-
msgid "Invalid user ID: "
|
6952 |
-
msgstr ""
|
6953 |
-
|
6954 |
-
#: includes/core/class-files.php:1134 includes/core/class-files.php:1162
|
6955 |
-
msgid "Unauthorized to do this attempt."
|
6956 |
-
msgstr ""
|
6957 |
-
|
6958 |
-
#: includes/core/class-form.php:58 includes/core/class-profile.php:56
|
6959 |
-
#: includes/core/class-profile.php:75
|
6960 |
-
msgid "You can not edit this user"
|
6961 |
-
msgstr ""
|
6962 |
-
|
6963 |
-
#: includes/core/class-mail.php:612 includes/core/class-password.php:701
|
6964 |
-
#: includes/core/class-profile.php:465
|
6965 |
-
msgid "Your set password"
|
6966 |
-
msgstr ""
|
6967 |
-
|
6968 |
-
#: includes/core/class-password.php:458
|
6969 |
-
msgid "Please provide your username or email"
|
6970 |
-
msgstr ""
|
6971 |
-
|
6972 |
-
#: includes/core/class-password.php:462
|
6973 |
-
msgid "We can't find an account registered with that address or username"
|
6974 |
-
msgstr ""
|
6975 |
-
|
6976 |
-
#: includes/core/class-password.php:481
|
6977 |
-
msgid ""
|
6978 |
-
"You have reached the limit for requesting password change for this user "
|
6979 |
-
"already. Contact support if you cannot open the email"
|
6980 |
-
msgstr ""
|
6981 |
-
|
6982 |
-
#: includes/core/class-password.php:537
|
6983 |
-
msgid "You must enter a new password"
|
6984 |
-
msgstr ""
|
6985 |
-
|
6986 |
-
#: includes/core/class-password.php:543 includes/core/um-actions-account.php:58
|
6987 |
-
msgid "Your password must contain at least 8 characters"
|
6988 |
-
msgstr ""
|
6989 |
-
|
6990 |
-
#: includes/core/class-password.php:547 includes/core/um-actions-account.php:62
|
6991 |
-
msgid "Your password must contain less than 30 characters"
|
6992 |
-
msgstr ""
|
6993 |
-
|
6994 |
-
#: includes/core/class-password.php:551 includes/core/um-actions-account.php:66
|
6995 |
-
#: includes/core/um-actions-form.php:498
|
6996 |
-
msgid ""
|
6997 |
-
"Your password must contain at least one lowercase letter, one capital letter "
|
6998 |
-
"and one number"
|
6999 |
-
msgstr ""
|
7000 |
-
|
7001 |
-
#: includes/core/class-password.php:557
|
7002 |
-
msgid "You must confirm your new password"
|
7003 |
-
msgstr ""
|
7004 |
-
|
7005 |
-
#: includes/core/class-password.php:561 includes/core/um-actions-form.php:507
|
7006 |
-
msgid "Your passwords do not match"
|
7007 |
-
msgstr ""
|
7008 |
-
|
7009 |
-
#: includes/core/class-permalinks.php:186
|
7010 |
-
msgid "This activation link is expired or have already been used."
|
7011 |
-
msgstr ""
|
7012 |
-
|
7013 |
-
#. translators: %s: support forums URL
|
7014 |
-
#: includes/core/class-plugin-updater.php:275
|
7015 |
-
#, php-format
|
7016 |
-
msgid ""
|
7017 |
-
"An unexpected error occurred. Something may be wrong with %s or this "
|
7018 |
-
"server’s configuration. If you continue to have problems, please try "
|
7019 |
-
"the <a href=\"%s\">support forums</a>."
|
7020 |
-
msgstr ""
|
7021 |
-
|
7022 |
-
#: includes/core/class-plugin-updater.php:277
|
7023 |
-
msgid "https://wordpress.org/support/"
|
7024 |
-
msgstr ""
|
7025 |
-
|
7026 |
-
#: includes/core/class-profile.php:89
|
7027 |
-
msgid "Anyone"
|
7028 |
-
msgstr ""
|
7029 |
-
|
7030 |
-
#: includes/core/class-profile.php:90
|
7031 |
-
msgid "Guests only"
|
7032 |
-
msgstr ""
|
7033 |
-
|
7034 |
-
#: includes/core/class-profile.php:91
|
7035 |
-
msgid "Members only"
|
7036 |
-
msgstr ""
|
7037 |
-
|
7038 |
-
#: includes/core/class-profile.php:92
|
7039 |
-
msgid "Only the owner"
|
7040 |
-
msgstr ""
|
7041 |
-
|
7042 |
-
#: includes/core/class-profile.php:93
|
7043 |
-
msgid "Specific roles"
|
7044 |
-
msgstr ""
|
7045 |
-
|
7046 |
-
#: includes/core/class-profile.php:130
|
7047 |
-
msgid "About"
|
7048 |
-
msgstr ""
|
7049 |
-
|
7050 |
-
#: includes/core/class-profile.php:134
|
7051 |
-
msgid "Posts"
|
7052 |
-
msgstr ""
|
7053 |
-
|
7054 |
-
#: includes/core/class-profile.php:138
|
7055 |
-
msgid "Comments"
|
7056 |
-
msgstr ""
|
7057 |
-
|
7058 |
-
#: includes/core/class-shortcodes.php:358
|
7059 |
-
msgid ""
|
7060 |
-
"This content has been restricted to logged in users only. Please <a href="
|
7061 |
-
"\"{login_referrer}\">login</a> to view this content."
|
7062 |
-
msgstr ""
|
7063 |
-
|
7064 |
-
#: includes/core/class-shortcodes.php:645
|
7065 |
-
msgid "You are already registered"
|
7066 |
-
msgstr ""
|
7067 |
-
|
7068 |
-
#: includes/core/class-shortcodes.php:892
|
7069 |
-
msgid "Default Template"
|
7070 |
-
msgstr ""
|
7071 |
-
|
7072 |
-
#: includes/core/class-uploader.php:668
|
7073 |
-
msgid "Your image is invalid!"
|
7074 |
-
msgstr ""
|
7075 |
-
|
7076 |
-
#: includes/core/class-uploader.php:710
|
7077 |
-
msgid "This media type is not recognized."
|
7078 |
-
msgstr ""
|
7079 |
-
|
7080 |
-
#: includes/core/class-uploader.php:758
|
7081 |
-
msgid "Your image is invalid or too large!"
|
7082 |
-
msgstr ""
|
7083 |
-
|
7084 |
-
#: includes/core/class-uploader.php:764 includes/core/class-uploader.php:766
|
7085 |
-
#, php-format
|
7086 |
-
msgid "Your photo is too small. It must be at least %spx wide."
|
7087 |
-
msgstr ""
|
7088 |
-
|
7089 |
-
#: includes/core/class-uploader.php:819
|
7090 |
-
msgid "This file type is not recognized."
|
7091 |
-
msgstr ""
|
7092 |
-
|
7093 |
-
#: includes/core/class-uploader.php:1098
|
7094 |
-
#, php-format
|
7095 |
-
msgid "Maximum file size allowed: %s"
|
7096 |
-
msgstr ""
|
7097 |
-
|
7098 |
-
#: includes/core/class-user.php:623
|
7099 |
-
msgid "Ultimate Member Role"
|
7100 |
-
msgstr ""
|
7101 |
-
|
7102 |
-
#: includes/core/class-user.php:626
|
7103 |
-
msgid "— No role for Ultimate Member —"
|
7104 |
-
msgstr ""
|
7105 |
-
|
7106 |
-
#: includes/core/class-user.php:843
|
7107 |
-
msgid "Membership Rejected"
|
7108 |
-
msgstr ""
|
7109 |
-
|
7110 |
-
#: includes/core/class-user.php:847
|
7111 |
-
msgid "Membership Inactive"
|
7112 |
-
msgstr ""
|
7113 |
-
|
7114 |
-
#: includes/core/rest/class-api-v1.php:256
|
7115 |
-
#: includes/core/rest/class-api-v1.php:328
|
7116 |
-
#: includes/core/rest/class-api-v1.php:365
|
7117 |
-
#: includes/core/rest/class-api-v2.php:256
|
7118 |
-
#: includes/core/rest/class-api-v2.php:328
|
7119 |
-
#: includes/core/rest/class-api-v2.php:365
|
7120 |
-
msgid "You must provide a user ID"
|
7121 |
-
msgstr ""
|
7122 |
-
|
7123 |
-
#: includes/core/rest/class-api-v1.php:261
|
7124 |
-
#: includes/core/rest/class-api-v2.php:261
|
7125 |
-
msgid "You need to provide data to update"
|
7126 |
-
msgstr ""
|
7127 |
-
|
7128 |
-
#: includes/core/rest/class-api-v1.php:270
|
7129 |
-
#: includes/core/rest/class-api-v2.php:270
|
7130 |
-
msgid "User status has been changed."
|
7131 |
-
msgstr ""
|
7132 |
-
|
7133 |
-
#: includes/core/rest/class-api-v1.php:299
|
7134 |
-
#: includes/core/rest/class-api-v2.php:299
|
7135 |
-
msgid "User role has been changed."
|
7136 |
-
msgstr ""
|
7137 |
-
|
7138 |
-
#: includes/core/rest/class-api-v1.php:303
|
7139 |
-
#: includes/core/rest/class-api-v2.php:303
|
7140 |
-
msgid "User meta has been changed."
|
7141 |
-
msgstr ""
|
7142 |
-
|
7143 |
-
#: includes/core/rest/class-api-v1.php:334
|
7144 |
-
#: includes/core/rest/class-api-v1.php:371
|
7145 |
-
#: includes/core/rest/class-api-v2.php:334
|
7146 |
-
#: includes/core/rest/class-api-v2.php:371
|
7147 |
-
msgid "Invalid user specified"
|
7148 |
-
msgstr ""
|
7149 |
-
|
7150 |
-
#: includes/core/rest/class-api-v1.php:341
|
7151 |
-
#: includes/core/rest/class-api-v2.php:341
|
7152 |
-
msgid "User has been successfully deleted."
|
7153 |
-
msgstr ""
|
7154 |
-
|
7155 |
-
#: includes/core/rest/class-api.php:253
|
7156 |
-
msgid "You must specify both a token and API key!"
|
7157 |
-
msgstr ""
|
7158 |
-
|
7159 |
-
#: includes/core/rest/class-api.php:265
|
7160 |
-
msgid "Your request could not be authenticated"
|
7161 |
-
msgstr ""
|
7162 |
-
|
7163 |
-
#: includes/core/rest/class-api.php:277
|
7164 |
-
msgid "Invalid API key"
|
7165 |
-
msgstr ""
|
7166 |
-
|
7167 |
-
#: includes/core/rest/class-api.php:434
|
7168 |
-
msgid "Invalid query!"
|
7169 |
-
msgstr ""
|
7170 |
-
|
7171 |
-
#: includes/core/um-actions-account.php:16
|
7172 |
-
msgid "Are you hacking? Please try again!"
|
7173 |
-
msgstr ""
|
7174 |
-
|
7175 |
-
#: includes/core/um-actions-account.php:26
|
7176 |
-
#: includes/core/um-actions-account.php:114
|
7177 |
-
msgid "You must enter your password"
|
7178 |
-
msgstr ""
|
7179 |
-
|
7180 |
-
#: includes/core/um-actions-account.php:29
|
7181 |
-
#: includes/core/um-actions-account.php:46
|
7182 |
-
#: includes/core/um-actions-account.php:117
|
7183 |
-
msgid "This is not your password"
|
7184 |
-
msgstr ""
|
7185 |
-
|
7186 |
-
#: includes/core/um-actions-account.php:51
|
7187 |
-
msgid "Your new password does not match"
|
7188 |
-
msgstr ""
|
7189 |
-
|
7190 |
-
#: includes/core/um-actions-account.php:84
|
7191 |
-
msgid "Your username is invalid"
|
7192 |
-
msgstr ""
|
7193 |
-
|
7194 |
-
#: includes/core/um-actions-account.php:89
|
7195 |
-
msgid "You must provide your first name"
|
7196 |
-
msgstr ""
|
7197 |
-
|
7198 |
-
#: includes/core/um-actions-account.php:93
|
7199 |
-
msgid "You must provide your last name"
|
7200 |
-
msgstr ""
|
7201 |
-
|
7202 |
-
#: includes/core/um-actions-account.php:99
|
7203 |
-
msgid "You must provide your e-mail"
|
7204 |
-
msgstr ""
|
7205 |
-
|
7206 |
-
#: includes/core/um-actions-account.php:103
|
7207 |
-
msgid "Please provide a valid e-mail"
|
7208 |
-
msgstr ""
|
7209 |
-
|
7210 |
-
#: includes/core/um-actions-account.php:107
|
7211 |
-
msgid "Email already linked to another account"
|
7212 |
-
msgstr ""
|
7213 |
-
|
7214 |
-
#: includes/core/um-actions-account.php:420
|
7215 |
-
msgid "Email me when"
|
7216 |
-
msgstr ""
|
7217 |
-
|
7218 |
-
#: includes/core/um-actions-core.php:27
|
7219 |
-
msgid "Super administrators can not be modified."
|
7220 |
-
msgstr ""
|
7221 |
-
|
7222 |
-
#: includes/core/um-actions-core.php:89 includes/core/um-actions-core.php:100
|
7223 |
-
#: includes/core/um-actions-core.php:113 includes/core/um-actions-core.php:123
|
7224 |
-
#: includes/core/um-actions-core.php:136
|
7225 |
-
msgid "You do not have permission to make this action."
|
7226 |
-
msgstr ""
|
7227 |
-
|
7228 |
-
#: includes/core/um-actions-core.php:146
|
7229 |
-
msgid "You do not have permission to delete this user."
|
7230 |
-
msgstr ""
|
7231 |
-
|
7232 |
-
#: includes/core/um-actions-form.php:86
|
7233 |
-
msgid "You are not allowed to use this word as your username."
|
7234 |
-
msgstr ""
|
7235 |
-
|
7236 |
-
#: includes/core/um-actions-form.php:369 includes/core/um-actions-form.php:416
|
7237 |
-
#: includes/core/um-actions-form.php:420 includes/core/um-actions-form.php:424
|
7238 |
-
#, php-format
|
7239 |
-
msgid "%s is required."
|
7240 |
-
msgstr ""
|
7241 |
-
|
7242 |
-
#: includes/core/um-actions-form.php:429
|
7243 |
-
msgid "Please specify account type."
|
7244 |
-
msgstr ""
|
7245 |
-
|
7246 |
-
#: includes/core/um-actions-form.php:461
|
7247 |
-
msgid "This field is required"
|
7248 |
-
msgstr ""
|
7249 |
-
|
7250 |
-
#: includes/core/um-actions-form.php:463
|
7251 |
-
#, php-format
|
7252 |
-
msgid "%s is required"
|
7253 |
-
msgstr ""
|
7254 |
-
|
7255 |
-
#: includes/core/um-actions-form.php:470
|
7256 |
-
#, php-format
|
7257 |
-
msgid "You are only allowed to enter a maximum of %s words"
|
7258 |
-
msgstr ""
|
7259 |
-
|
7260 |
-
#: includes/core/um-actions-form.php:476
|
7261 |
-
#, php-format
|
7262 |
-
msgid "Your %s must contain at least %s characters"
|
7263 |
-
msgstr ""
|
7264 |
-
|
7265 |
-
#: includes/core/um-actions-form.php:482
|
7266 |
-
#, php-format
|
7267 |
-
msgid "Your %s must contain less than %s characters"
|
7268 |
-
msgstr ""
|
7269 |
-
|
7270 |
-
#: includes/core/um-actions-form.php:491
|
7271 |
-
msgid "You can not use HTML tags here"
|
7272 |
-
msgstr ""
|
7273 |
-
|
7274 |
-
#: includes/core/um-actions-form.php:504
|
7275 |
-
msgid "Please confirm your password"
|
7276 |
-
msgstr ""
|
7277 |
-
|
7278 |
-
#: includes/core/um-actions-form.php:513
|
7279 |
-
#, php-format
|
7280 |
-
msgid "Please select at least %s choices"
|
7281 |
-
msgstr ""
|
7282 |
-
|
7283 |
-
#: includes/core/um-actions-form.php:519
|
7284 |
-
#, php-format
|
7285 |
-
msgid "You can only select up to %s choices"
|
7286 |
-
msgstr ""
|
7287 |
-
|
7288 |
-
#: includes/core/um-actions-form.php:525
|
7289 |
-
#, php-format
|
7290 |
-
msgid "Minimum number limit is %s"
|
7291 |
-
msgstr ""
|
7292 |
-
|
7293 |
-
#: includes/core/um-actions-form.php:531
|
7294 |
-
#, php-format
|
7295 |
-
msgid "Maximum number limit is %s"
|
7296 |
-
msgstr ""
|
7297 |
-
|
7298 |
-
#: includes/core/um-actions-form.php:567
|
7299 |
-
msgid "Please enter numbers only in this field"
|
7300 |
-
msgstr ""
|
7301 |
-
|
7302 |
-
#: includes/core/um-actions-form.php:573
|
7303 |
-
msgid "Please enter a valid phone number"
|
7304 |
-
msgstr ""
|
7305 |
-
|
7306 |
-
#: includes/core/um-actions-form.php:579 includes/core/um-actions-form.php:585
|
7307 |
-
#: includes/core/um-actions-form.php:591 includes/core/um-actions-form.php:597
|
7308 |
-
#: includes/core/um-actions-form.php:603 includes/core/um-actions-form.php:609
|
7309 |
-
#: includes/core/um-actions-form.php:615 includes/core/um-actions-form.php:621
|
7310 |
-
#: includes/core/um-actions-form.php:633
|
7311 |
-
#, php-format
|
7312 |
-
msgid "Please enter a valid %s username or profile URL"
|
7313 |
-
msgstr ""
|
7314 |
-
|
7315 |
-
#: includes/core/um-actions-form.php:627
|
7316 |
-
msgid "Please enter a valid URL"
|
7317 |
-
msgstr ""
|
7318 |
-
|
7319 |
-
#: includes/core/um-actions-form.php:640 includes/core/um-actions-form.php:654
|
7320 |
-
msgid "You must provide a username"
|
7321 |
-
msgstr ""
|
7322 |
-
|
7323 |
-
#: includes/core/um-actions-form.php:642 includes/core/um-actions-form.php:656
|
7324 |
-
msgid "Your username is already taken"
|
7325 |
-
msgstr ""
|
7326 |
-
|
7327 |
-
#: includes/core/um-actions-form.php:644
|
7328 |
-
msgid "Username cannot be an email"
|
7329 |
-
msgstr ""
|
7330 |
-
|
7331 |
-
#: includes/core/um-actions-form.php:646 includes/core/um-actions-form.php:660
|
7332 |
-
msgid "Your username contains invalid characters"
|
7333 |
-
msgstr ""
|
7334 |
-
|
7335 |
-
#: includes/core/um-actions-form.php:658 includes/core/um-actions-form.php:680
|
7336 |
-
#: includes/core/um-actions-form.php:682 includes/core/um-actions-form.php:694
|
7337 |
-
#: includes/core/um-actions-form.php:701
|
7338 |
-
msgid "This email is already linked to an existing account"
|
7339 |
-
msgstr ""
|
7340 |
-
|
7341 |
-
#: includes/core/um-actions-form.php:678
|
7342 |
-
msgid "You must provide your email"
|
7343 |
-
msgstr ""
|
7344 |
-
|
7345 |
-
#: includes/core/um-actions-form.php:684 includes/core/um-actions-form.php:692
|
7346 |
-
msgid "This is not a valid email"
|
7347 |
-
msgstr ""
|
7348 |
-
|
7349 |
-
#: includes/core/um-actions-form.php:686
|
7350 |
-
msgid "Your email contains invalid characters"
|
7351 |
-
msgstr ""
|
7352 |
-
|
7353 |
-
#: includes/core/um-actions-form.php:726
|
7354 |
-
msgid "You must provide a unique value"
|
7355 |
-
msgstr ""
|
7356 |
-
|
7357 |
-
#: includes/core/um-actions-form.php:736
|
7358 |
-
msgid "You must provide alphabetic letters"
|
7359 |
-
msgstr ""
|
7360 |
-
|
7361 |
-
#: includes/core/um-actions-form.php:746
|
7362 |
-
msgid "You must provide lowercase letters."
|
7363 |
-
msgstr ""
|
7364 |
-
|
7365 |
-
#: includes/core/um-actions-form.php:764
|
7366 |
-
#, php-format
|
7367 |
-
msgid "Your user description must contain less than %s characters"
|
7368 |
-
msgstr ""
|
7369 |
-
|
7370 |
-
#: includes/core/um-actions-global.php:30
|
7371 |
-
msgid "Only fill in if you are not human"
|
7372 |
-
msgstr ""
|
7373 |
-
|
7374 |
-
#: includes/core/um-actions-login.php:18
|
7375 |
-
msgid "Please enter your username or email"
|
7376 |
-
msgstr ""
|
7377 |
-
|
7378 |
-
#: includes/core/um-actions-login.php:22
|
7379 |
-
msgid "Please enter your username"
|
7380 |
-
msgstr ""
|
7381 |
-
|
7382 |
-
#: includes/core/um-actions-login.php:26
|
7383 |
-
msgid "Please enter your email"
|
7384 |
-
msgstr ""
|
7385 |
-
|
7386 |
-
#: includes/core/um-actions-login.php:49
|
7387 |
-
msgid "Please enter your password"
|
7388 |
-
msgstr ""
|
7389 |
-
|
7390 |
-
#: includes/core/um-actions-login.php:56
|
7391 |
-
msgid "Password is incorrect. Please try again."
|
7392 |
-
msgstr ""
|
7393 |
-
|
7394 |
-
#: includes/core/um-actions-login.php:183
|
7395 |
-
msgid "This action has been prevented for security measures."
|
7396 |
-
msgstr ""
|
7397 |
-
|
7398 |
-
#: includes/core/um-actions-login.php:416
|
7399 |
-
msgid "Keep me signed in"
|
7400 |
-
msgstr ""
|
7401 |
-
|
7402 |
-
#: includes/core/um-actions-login.php:460
|
7403 |
-
msgid "Forgot your password?"
|
7404 |
-
msgstr ""
|
7405 |
-
|
7406 |
-
#: includes/core/um-actions-members.php:83
|
7407 |
-
msgid "Search"
|
7408 |
-
msgstr ""
|
7409 |
-
|
7410 |
-
#: includes/core/um-actions-members.php:84
|
7411 |
-
msgid "Reset"
|
7412 |
-
msgstr ""
|
7413 |
-
|
7414 |
-
#: includes/core/um-actions-members.php:160
|
7415 |
-
msgid "Jump to page:"
|
7416 |
-
msgstr ""
|
7417 |
-
|
7418 |
-
#: includes/core/um-actions-members.php:165
|
7419 |
-
#, php-format
|
7420 |
-
msgid "%s of %d"
|
7421 |
-
msgstr ""
|
7422 |
-
|
7423 |
-
#: includes/core/um-actions-members.php:175
|
7424 |
-
msgid "First Page"
|
7425 |
-
msgstr ""
|
7426 |
-
|
7427 |
-
#: includes/core/um-actions-members.php:181
|
7428 |
-
msgid "Previous"
|
7429 |
-
msgstr ""
|
7430 |
-
|
7431 |
-
#: includes/core/um-actions-members.php:202
|
7432 |
-
msgid "Next"
|
7433 |
-
msgstr ""
|
7434 |
-
|
7435 |
-
#: includes/core/um-actions-members.php:208
|
7436 |
-
msgid "Last Page"
|
7437 |
-
msgstr ""
|
7438 |
-
|
7439 |
-
#: includes/core/um-actions-misc.php:111
|
7440 |
-
msgid "Your account was updated successfully."
|
7441 |
-
msgstr ""
|
7442 |
-
|
7443 |
-
#: includes/core/um-actions-misc.php:115
|
7444 |
-
msgid "You have successfully changed your password."
|
7445 |
-
msgstr ""
|
7446 |
-
|
7447 |
-
#: includes/core/um-actions-misc.php:119
|
7448 |
-
msgid "Your account is now active! You can login."
|
7449 |
-
msgstr ""
|
7450 |
-
|
7451 |
-
#: includes/core/um-actions-misc.php:153
|
7452 |
-
msgid "An error has been encountered"
|
7453 |
-
msgstr ""
|
7454 |
-
|
7455 |
-
#: includes/core/um-actions-misc.php:157
|
7456 |
-
msgid "Registration is currently disabled"
|
7457 |
-
msgstr ""
|
7458 |
-
|
7459 |
-
#: includes/core/um-actions-misc.php:161 includes/core/um-filters-login.php:40
|
7460 |
-
msgid "This email address has been blocked."
|
7461 |
-
msgstr ""
|
7462 |
-
|
7463 |
-
#: includes/core/um-actions-misc.php:165
|
7464 |
-
msgid "We do not accept registrations from that domain."
|
7465 |
-
msgstr ""
|
7466 |
-
|
7467 |
-
#: includes/core/um-actions-misc.php:169 includes/core/um-filters-login.php:43
|
7468 |
-
msgid "Your IP address has been blocked."
|
7469 |
-
msgstr ""
|
7470 |
-
|
7471 |
-
#: includes/core/um-actions-misc.php:173 includes/core/um-filters-login.php:136
|
7472 |
-
msgid "Your account has been disabled."
|
7473 |
-
msgstr ""
|
7474 |
-
|
7475 |
-
#: includes/core/um-actions-misc.php:177 includes/core/um-filters-login.php:139
|
7476 |
-
msgid "Your account has not been approved yet."
|
7477 |
-
msgstr ""
|
7478 |
-
|
7479 |
-
#: includes/core/um-actions-misc.php:181 includes/core/um-filters-login.php:142
|
7480 |
-
msgid "Your account is awaiting e-mail verification."
|
7481 |
-
msgstr ""
|
7482 |
-
|
7483 |
-
#: includes/core/um-actions-misc.php:185 includes/core/um-filters-login.php:145
|
7484 |
-
msgid "Your membership request has been rejected."
|
7485 |
-
msgstr ""
|
7486 |
-
|
7487 |
-
#: includes/core/um-actions-profile.php:204
|
7488 |
-
msgid "You are not allowed to edit this user."
|
7489 |
-
msgstr ""
|
7490 |
-
|
7491 |
-
#: includes/core/um-actions-profile.php:320
|
7492 |
-
#, php-format
|
7493 |
-
msgid "Your choosed %s"
|
7494 |
-
msgstr ""
|
7495 |
-
|
7496 |
-
#: includes/core/um-actions-profile.php:635
|
7497 |
-
#: includes/core/um-actions-profile.php:651
|
7498 |
-
#: includes/core/um-actions-profile.php:691
|
7499 |
-
msgid "Upload a cover photo"
|
7500 |
-
msgstr ""
|
7501 |
-
|
7502 |
-
#: includes/core/um-actions-profile.php:635
|
7503 |
-
msgid "Change cover photo"
|
7504 |
-
msgstr ""
|
7505 |
-
|
7506 |
-
#: includes/core/um-actions-profile.php:794
|
7507 |
-
msgid "Upload photo"
|
7508 |
-
msgstr ""
|
7509 |
-
|
7510 |
-
#: includes/core/um-actions-profile.php:827
|
7511 |
-
msgid "Remove photo"
|
7512 |
-
msgstr ""
|
7513 |
-
|
7514 |
-
#: includes/core/um-actions-profile.php:988
|
7515 |
-
msgid "Tell us a bit about yourself..."
|
7516 |
-
msgstr ""
|
7517 |
-
|
7518 |
-
#: includes/core/um-actions-profile.php:1003
|
7519 |
-
#, php-format
|
7520 |
-
msgid "This user account status is %s"
|
7521 |
-
msgstr ""
|
7522 |
-
|
7523 |
-
#: includes/core/um-actions-profile.php:1146
|
7524 |
-
#: includes/core/um-actions-profile.php:1177
|
7525 |
-
msgid "Edit Profile"
|
7526 |
-
msgstr ""
|
7527 |
-
|
7528 |
-
#: includes/core/um-actions-profile.php:1178
|
7529 |
-
msgid "My Account"
|
7530 |
-
msgstr ""
|
7531 |
-
|
7532 |
-
#: includes/core/um-actions-user.php:14
|
7533 |
-
msgid "Your account"
|
7534 |
-
msgstr ""
|
7535 |
-
|
7536 |
-
#: includes/core/um-filters-fields.php:34
|
7537 |
-
msgid "Invalid soundcloud track ID"
|
7538 |
-
msgstr ""
|
7539 |
-
|
7540 |
-
#: includes/core/um-filters-fields.php:118
|
7541 |
-
#, php-format
|
7542 |
-
msgid "Joined %s"
|
7543 |
-
msgstr ""
|
7544 |
-
|
7545 |
-
#: includes/core/um-filters-fields.php:275
|
7546 |
-
msgid "Untitled photo"
|
7547 |
-
msgstr ""
|
7548 |
-
|
7549 |
-
#: includes/core/um-filters-profile.php:82
|
7550 |
-
#: includes/core/um-filters-profile.php:101
|
7551 |
-
msgid "max"
|
7552 |
-
msgstr ""
|
7553 |
-
|
7554 |
-
#: includes/core/um-filters-user.php:37
|
7555 |
-
msgid "Deactivate this account"
|
7556 |
-
msgstr ""
|
7557 |
-
|
7558 |
-
#: includes/core/um-filters-user.php:41
|
7559 |
-
msgid "Reactivate this account"
|
7560 |
-
msgstr ""
|
7561 |
-
|
7562 |
-
#: includes/core/um-filters-user.php:47
|
7563 |
-
msgid "Delete this user"
|
7564 |
-
msgstr ""
|
7565 |
-
|
7566 |
-
#: includes/core/um-filters-user.php:51
|
7567 |
-
msgid "Login as this user"
|
7568 |
-
msgstr ""
|
7569 |
-
|
7570 |
-
#: includes/um-short-functions.php:746
|
7571 |
-
msgid "date submitted"
|
7572 |
-
msgstr ""
|
7573 |
-
|
7574 |
-
#: includes/um-short-functions.php:752
|
7575 |
-
msgid "(empty)"
|
7576 |
-
msgstr ""
|
7577 |
-
|
7578 |
-
#: includes/widgets/class-um-search-widget.php:27
|
7579 |
-
msgid "Ultimate Member - Search"
|
7580 |
-
msgstr ""
|
7581 |
-
|
7582 |
-
#: includes/widgets/class-um-search-widget.php:30
|
7583 |
-
msgid "Shows the search member form."
|
7584 |
-
msgstr ""
|
7585 |
-
|
7586 |
-
#: includes/widgets/class-um-search-widget.php:68
|
7587 |
-
msgid "Search Users"
|
7588 |
-
msgstr ""
|
7589 |
-
|
7590 |
-
#: templates/members-grid.php:83
|
7591 |
-
msgid "Edit profile"
|
7592 |
-
msgstr ""
|
7593 |
-
|
7594 |
-
#: templates/password-change.php:45
|
7595 |
-
msgid "Change my password"
|
7596 |
-
msgstr ""
|
7597 |
-
|
7598 |
-
#: templates/password-reset.php:10
|
7599 |
-
msgid ""
|
7600 |
-
"We have sent you a password reset link to your e-mail. Please check your "
|
7601 |
-
"inbox."
|
7602 |
-
msgstr ""
|
7603 |
-
|
7604 |
-
#: templates/password-reset.php:45
|
7605 |
-
msgid "Your password reset link has expired. Please request a new link below."
|
7606 |
-
msgstr ""
|
7607 |
-
|
7608 |
-
#: templates/password-reset.php:47
|
7609 |
-
msgid ""
|
7610 |
-
"Your password reset link appears to be invalid. Please request a new link "
|
7611 |
-
"below."
|
7612 |
-
msgstr ""
|
7613 |
-
|
7614 |
-
#: templates/password-reset.php:56
|
7615 |
-
msgid ""
|
7616 |
-
"To reset your password, please enter your email address or username below"
|
7617 |
-
msgstr ""
|
7618 |
-
|
7619 |
-
#: templates/password-reset.php:94
|
7620 |
-
msgid "Reset my password"
|
7621 |
-
msgstr ""
|
7622 |
-
|
7623 |
-
#: templates/profile/comments-single.php:24
|
7624 |
-
#, php-format
|
7625 |
-
msgid "On <a href=\"%1$s\">%2$s</a>"
|
7626 |
-
msgstr ""
|
7627 |
-
|
7628 |
-
#: templates/profile/comments-single.php:35 templates/profile/comments.php:18
|
7629 |
-
msgid "load more comments"
|
7630 |
-
msgstr ""
|
7631 |
-
|
7632 |
-
#: templates/profile/comments.php:31
|
7633 |
-
msgid "You have not made any comments."
|
7634 |
-
msgstr ""
|
7635 |
-
|
7636 |
-
#: templates/profile/comments.php:33
|
7637 |
-
msgid "This user has not made any comments."
|
7638 |
-
msgstr ""
|
7639 |
-
|
7640 |
-
#: templates/profile/posts-single.php:23
|
7641 |
-
#, php-format
|
7642 |
-
msgid "%s ago"
|
7643 |
-
msgstr ""
|
7644 |
-
|
7645 |
-
#: templates/profile/posts-single.php:26
|
7646 |
-
msgid "in"
|
7647 |
-
msgstr ""
|
7648 |
-
|
7649 |
-
#: templates/profile/posts-single.php:32
|
7650 |
-
msgid "no comments"
|
7651 |
-
msgstr ""
|
7652 |
-
|
7653 |
-
#: templates/profile/posts-single.php:34
|
7654 |
-
#, php-format
|
7655 |
-
msgid "%s comments"
|
7656 |
-
msgstr ""
|
7657 |
-
|
7658 |
-
#: templates/profile/posts-single.php:36
|
7659 |
-
msgid "1 comment"
|
7660 |
-
msgstr ""
|
7661 |
-
|
7662 |
-
#: templates/profile/posts.php:25
|
7663 |
-
msgid "load more posts"
|
7664 |
-
msgstr ""
|
7665 |
-
|
7666 |
-
#: templates/profile/posts.php:37
|
7667 |
-
msgid "You have not created any posts."
|
7668 |
-
msgstr ""
|
7669 |
-
|
7670 |
-
#: templates/profile/posts.php:39
|
7671 |
-
msgid "This user has not created any posts."
|
7672 |
-
msgstr ""
|
7673 |
-
|
7674 |
-
#: templates/searchform.php:6 templates/searchform.php:7
|
7675 |
-
msgctxt "label"
|
7676 |
-
msgid "Search for:"
|
7677 |
-
msgstr ""
|
7678 |
-
|
7679 |
-
#: templates/searchform.php:7
|
7680 |
-
msgctxt "placeholder"
|
7681 |
-
msgid "Search …"
|
7682 |
-
msgstr ""
|
7683 |
-
|
7684 |
-
#. Plugin URI of the plugin/theme
|
7685 |
-
#. Author URI of the plugin/theme
|
7686 |
-
msgid "http://ultimatemember.com/"
|
7687 |
-
msgstr ""
|
7688 |
-
|
7689 |
-
#. Description of the plugin/theme
|
7690 |
-
msgid ""
|
7691 |
-
"The easiest way to create powerful online communities and beautiful user "
|
7692 |
-
"profiles with WordPress"
|
7693 |
-
msgstr ""
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: Ultimate Member\n"
|
4 |
+
"POT-Creation-Date: 2019-11-10 20:59+0200\n"
|
5 |
+
"PO-Revision-Date: 2019-11-10 20:59+0200\n"
|
6 |
+
"Last-Translator: \n"
|
7 |
+
"Language-Team: \n"
|
8 |
+
"Language: en_US\n"
|
9 |
+
"MIME-Version: 1.0\n"
|
10 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
+
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"X-Generator: Poedit 2.0.6\n"
|
13 |
+
"X-Poedit-Basepath: ..\n"
|
14 |
+
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
15 |
+
"X-Poedit-Flags-xgettext: --add-comments=translators:\n"
|
16 |
+
"X-Poedit-WPHeader: ultimate-member.php\n"
|
17 |
+
"X-Poedit-SourceCharset: UTF-8\n"
|
18 |
+
"X-Poedit-KeywordsList: __;_e;_n:1,2;_x:1,2c;_ex:1,2c;_nx:4c,1,2;esc_attr__;"
|
19 |
+
"esc_attr_e;esc_attr_x:1,2c;esc_html__;esc_html_e;esc_html_x:1,2c;_n_noop:1,2;"
|
20 |
+
"_nx_noop:3c,1,2;__ngettext_noop:1,2\n"
|
21 |
+
"X-Poedit-SearchPath-0: .\n"
|
22 |
+
"X-Poedit-SearchPathExcluded-0: *.js\n"
|
23 |
+
|
24 |
+
#: includes/admin/class-admin-functions.php:35 includes/class-functions.php:55
|
25 |
+
msgid "Wrong Nonce"
|
26 |
+
msgstr ""
|
27 |
+
|
28 |
+
#: includes/admin/class-admin.php:193
|
29 |
+
#, php-format
|
30 |
+
msgid "Duplicate of %s"
|
31 |
+
msgstr ""
|
32 |
+
|
33 |
+
#: includes/admin/class-admin.php:307
|
34 |
+
msgid "Docs"
|
35 |
+
msgstr ""
|
36 |
+
|
37 |
+
#: includes/admin/class-admin.php:308
|
38 |
+
#: includes/admin/core/class-admin-settings.php:1238
|
39 |
+
msgid "Settings"
|
40 |
+
msgstr ""
|
41 |
+
|
42 |
+
#: includes/admin/class-admin.php:379 includes/admin/class-admin.php:382
|
43 |
+
msgid "Form updated."
|
44 |
+
msgstr ""
|
45 |
+
|
46 |
+
#: includes/admin/class-admin.php:380
|
47 |
+
msgid "Custom field updated."
|
48 |
+
msgstr ""
|
49 |
+
|
50 |
+
#: includes/admin/class-admin.php:381
|
51 |
+
msgid "Custom field deleted."
|
52 |
+
msgstr ""
|
53 |
+
|
54 |
+
#: includes/admin/class-admin.php:383
|
55 |
+
msgid "Form restored to revision."
|
56 |
+
msgstr ""
|
57 |
+
|
58 |
+
#: includes/admin/class-admin.php:384
|
59 |
+
msgid "Form created."
|
60 |
+
msgstr ""
|
61 |
+
|
62 |
+
#: includes/admin/class-admin.php:385
|
63 |
+
msgid "Form saved."
|
64 |
+
msgstr ""
|
65 |
+
|
66 |
+
#: includes/admin/class-admin.php:386
|
67 |
+
msgid "Form submitted."
|
68 |
+
msgstr ""
|
69 |
+
|
70 |
+
#: includes/admin/class-admin.php:387
|
71 |
+
msgid "Form scheduled."
|
72 |
+
msgstr ""
|
73 |
+
|
74 |
+
#: includes/admin/class-admin.php:388
|
75 |
+
msgid "Form draft updated."
|
76 |
+
msgstr ""
|
77 |
+
|
78 |
+
#: includes/admin/core/class-admin-builder.php:212
|
79 |
+
msgid "Manage conditional fields support"
|
80 |
+
msgstr ""
|
81 |
+
|
82 |
+
#: includes/admin/core/class-admin-builder.php:212
|
83 |
+
#: includes/admin/core/class-admin-builder.php:214
|
84 |
+
msgid ""
|
85 |
+
"Here you can setup conditional logic to show/hide this field based on "
|
86 |
+
"specific fields value or conditions"
|
87 |
+
msgstr ""
|
88 |
+
|
89 |
+
#: includes/admin/core/class-admin-builder.php:214
|
90 |
+
msgid "Add conditional fields support"
|
91 |
+
msgstr ""
|
92 |
+
|
93 |
+
#: includes/admin/core/class-admin-builder.php:229
|
94 |
+
msgid "Add new rule"
|
95 |
+
msgstr ""
|
96 |
+
|
97 |
+
#: includes/admin/core/class-admin-builder.php:230
|
98 |
+
msgid "Reset all rules"
|
99 |
+
msgstr ""
|
100 |
+
|
101 |
+
#: includes/admin/core/class-admin-builder.php:283
|
102 |
+
#: includes/admin/core/class-admin-builder.php:605
|
103 |
+
#: includes/admin/core/class-admin-builder.php:764
|
104 |
+
#: includes/admin/core/class-admin-dragdrop.php:33
|
105 |
+
#: includes/admin/core/class-admin-menu.php:106
|
106 |
+
#: includes/core/class-fields.php:4369
|
107 |
+
msgid "Please login as administrator"
|
108 |
+
msgstr ""
|
109 |
+
|
110 |
+
#: includes/admin/core/class-admin-builder.php:392
|
111 |
+
#: includes/admin/core/class-admin-builder.php:462
|
112 |
+
#: includes/admin/core/class-admin-dragdrop.php:165
|
113 |
+
msgid "Add Row"
|
114 |
+
msgstr ""
|
115 |
+
|
116 |
+
#: includes/admin/core/class-admin-builder.php:393
|
117 |
+
#: includes/admin/core/class-admin-builder.php:463
|
118 |
+
#: includes/admin/core/class-admin-dragdrop.php:166
|
119 |
+
msgid "Edit Row"
|
120 |
+
msgstr ""
|
121 |
+
|
122 |
+
#: includes/admin/core/class-admin-builder.php:466
|
123 |
+
#: includes/admin/core/class-admin-dragdrop.php:168
|
124 |
+
#: includes/admin/core/class-admin-dragdrop.php:183
|
125 |
+
#: includes/admin/core/class-admin-dragdrop.php:208
|
126 |
+
msgid "Delete Row"
|
127 |
+
msgstr ""
|
128 |
+
|
129 |
+
#: includes/admin/core/class-admin-builder.php:539
|
130 |
+
msgid "(no title)"
|
131 |
+
msgstr ""
|
132 |
+
|
133 |
+
#: includes/admin/core/class-admin-builder.php:544
|
134 |
+
#: includes/admin/core/list-tables/roles-list-table.php:339
|
135 |
+
msgid "Edit"
|
136 |
+
msgstr ""
|
137 |
+
|
138 |
+
#: includes/admin/core/class-admin-builder.php:546
|
139 |
+
#: includes/admin/core/class-admin-columns.php:102
|
140 |
+
msgid "Duplicate"
|
141 |
+
msgstr ""
|
142 |
+
|
143 |
+
#: includes/admin/core/class-admin-builder.php:550
|
144 |
+
msgid "Delete Group"
|
145 |
+
msgstr ""
|
146 |
+
|
147 |
+
#: includes/admin/core/class-admin-builder.php:553
|
148 |
+
#: includes/admin/core/class-admin-enqueue.php:506
|
149 |
+
#: includes/admin/core/list-tables/roles-list-table.php:342
|
150 |
+
#: includes/admin/core/list-tables/roles-list-table.php:410
|
151 |
+
msgid "Delete"
|
152 |
+
msgstr ""
|
153 |
+
|
154 |
+
#: includes/admin/core/class-admin-builder.php:830
|
155 |
+
msgid "Search Icons..."
|
156 |
+
msgstr ""
|
157 |
+
|
158 |
+
#: includes/admin/core/class-admin-builder.php:850
|
159 |
+
msgid "Setup New Field"
|
160 |
+
msgstr ""
|
161 |
+
|
162 |
+
#: includes/admin/core/class-admin-builder.php:867
|
163 |
+
msgid "Predefined Fields"
|
164 |
+
msgstr ""
|
165 |
+
|
166 |
+
#: includes/admin/core/class-admin-builder.php:887
|
167 |
+
#: includes/core/class-builtin.php:1330
|
168 |
+
msgid "None"
|
169 |
+
msgstr ""
|
170 |
+
|
171 |
+
#: includes/admin/core/class-admin-builder.php:892
|
172 |
+
msgid "Custom Fields"
|
173 |
+
msgstr ""
|
174 |
+
|
175 |
+
#: includes/admin/core/class-admin-builder.php:906
|
176 |
+
msgid "You did not create any custom fields"
|
177 |
+
msgstr ""
|
178 |
+
|
179 |
+
#: includes/admin/core/class-admin-builder.php:938
|
180 |
+
#: includes/admin/core/class-admin-builder.php:1010
|
181 |
+
msgid "This field type is not setup correcty."
|
182 |
+
msgstr ""
|
183 |
+
|
184 |
+
#: includes/admin/core/class-admin-builder.php:1157
|
185 |
+
#: includes/core/class-form.php:159 includes/core/class-form.php:333
|
186 |
+
#: includes/core/class-password.php:533
|
187 |
+
msgid "This is not possible for security reasons."
|
188 |
+
msgstr ""
|
189 |
+
|
190 |
+
#: includes/admin/core/class-admin-columns.php:50
|
191 |
+
msgid "Status"
|
192 |
+
msgstr ""
|
193 |
+
|
194 |
+
#: includes/admin/core/class-admin-columns.php:131
|
195 |
+
#: includes/admin/core/class-admin-columns.php:151
|
196 |
+
#: includes/admin/core/class-admin-metabox.php:2115
|
197 |
+
#: includes/admin/templates/role/role-edit.php:190
|
198 |
+
#: includes/widgets/class-um-search-widget.php:81
|
199 |
+
msgid "Title"
|
200 |
+
msgstr ""
|
201 |
+
|
202 |
+
#: includes/admin/core/class-admin-columns.php:132
|
203 |
+
#: includes/admin/core/class-admin-columns.php:152
|
204 |
+
msgid "ID"
|
205 |
+
msgstr ""
|
206 |
+
|
207 |
+
#: includes/admin/core/class-admin-columns.php:133
|
208 |
+
msgid "Type"
|
209 |
+
msgstr ""
|
210 |
+
|
211 |
+
#: includes/admin/core/class-admin-columns.php:134
|
212 |
+
#: includes/admin/core/class-admin-columns.php:153
|
213 |
+
#: includes/admin/core/class-admin-settings.php:451
|
214 |
+
#: includes/admin/templates/form/login_settings.php:16
|
215 |
+
#: includes/admin/templates/form/register_customize.php:6
|
216 |
+
#: includes/admin/templates/form/register_customize.php:32
|
217 |
+
msgid "Default"
|
218 |
+
msgstr ""
|
219 |
+
|
220 |
+
#: includes/admin/core/class-admin-columns.php:135
|
221 |
+
#: includes/admin/core/class-admin-columns.php:154
|
222 |
+
#: includes/admin/core/class-admin-metabox.php:785
|
223 |
+
#: includes/admin/core/class-admin-metabox.php:946
|
224 |
+
msgid "Shortcode"
|
225 |
+
msgstr ""
|
226 |
+
|
227 |
+
#: includes/admin/core/class-admin-columns.php:136
|
228 |
+
#: includes/admin/core/class-admin-columns.php:155
|
229 |
+
msgid "Date"
|
230 |
+
msgstr ""
|
231 |
+
|
232 |
+
#: includes/admin/core/class-admin-columns.php:186
|
233 |
+
#: includes/admin/core/class-admin-columns.php:219
|
234 |
+
#: includes/admin/core/list-tables/roles-list-table.php:371
|
235 |
+
#: includes/admin/core/list-tables/roles-list-table.php:379
|
236 |
+
#: includes/admin/templates/form/login_customize.php:16
|
237 |
+
#: includes/admin/templates/form/login_customize.php:64
|
238 |
+
#: includes/admin/templates/form/login_customize.php:83
|
239 |
+
#: includes/admin/templates/form/login_customize.php:94
|
240 |
+
#: includes/admin/templates/form/profile_customize.php:25
|
241 |
+
#: includes/admin/templates/form/profile_customize.php:91
|
242 |
+
#: includes/admin/templates/form/profile_customize.php:110
|
243 |
+
#: includes/admin/templates/form/profile_customize.php:145
|
244 |
+
#: includes/admin/templates/form/profile_customize.php:166
|
245 |
+
#: includes/admin/templates/form/profile_customize.php:177
|
246 |
+
#: includes/admin/templates/form/profile_customize.php:188
|
247 |
+
#: includes/admin/templates/form/profile_customize.php:199
|
248 |
+
#: includes/admin/templates/form/register_customize.php:23
|
249 |
+
#: includes/admin/templates/form/register_customize.php:79
|
250 |
+
#: includes/admin/templates/form/register_gdpr.php:26
|
251 |
+
#: includes/core/class-builtin.php:1135 includes/core/class-builtin.php:1149
|
252 |
+
#: includes/core/class-builtin.php:1150
|
253 |
+
#: includes/core/um-actions-account.php:268
|
254 |
+
msgid "No"
|
255 |
+
msgstr ""
|
256 |
+
|
257 |
+
#: includes/admin/core/class-admin-columns.php:186
|
258 |
+
#: includes/admin/core/class-admin-columns.php:219
|
259 |
+
#: includes/admin/core/list-tables/roles-list-table.php:371
|
260 |
+
#: includes/admin/core/list-tables/roles-list-table.php:379
|
261 |
+
#: includes/admin/templates/form/login_customize.php:17
|
262 |
+
#: includes/admin/templates/form/login_customize.php:65
|
263 |
+
#: includes/admin/templates/form/login_customize.php:84
|
264 |
+
#: includes/admin/templates/form/login_customize.php:95
|
265 |
+
#: includes/admin/templates/form/profile_customize.php:26
|
266 |
+
#: includes/admin/templates/form/profile_customize.php:92
|
267 |
+
#: includes/admin/templates/form/profile_customize.php:111
|
268 |
+
#: includes/admin/templates/form/profile_customize.php:146
|
269 |
+
#: includes/admin/templates/form/profile_customize.php:167
|
270 |
+
#: includes/admin/templates/form/profile_customize.php:178
|
271 |
+
#: includes/admin/templates/form/profile_customize.php:189
|
272 |
+
#: includes/admin/templates/form/profile_customize.php:200
|
273 |
+
#: includes/admin/templates/form/register_customize.php:24
|
274 |
+
#: includes/admin/templates/form/register_customize.php:80
|
275 |
+
#: includes/admin/templates/form/register_gdpr.php:27
|
276 |
+
#: includes/core/class-builtin.php:1135 includes/core/class-builtin.php:1150
|
277 |
+
#: includes/core/class-member-directory.php:848
|
278 |
+
#: includes/core/um-filters-members.php:40
|
279 |
+
msgid "Yes"
|
280 |
+
msgstr ""
|
281 |
+
|
282 |
+
#: includes/admin/core/class-admin-enqueue.php:187
|
283 |
+
msgid "e.g. Member Directory"
|
284 |
+
msgstr ""
|
285 |
+
|
286 |
+
#: includes/admin/core/class-admin-enqueue.php:189
|
287 |
+
msgid "e.g. New Registration Form"
|
288 |
+
msgstr ""
|
289 |
+
|
290 |
+
#: includes/admin/core/class-admin-enqueue.php:235
|
291 |
+
#: includes/admin/core/class-admin-enqueue.php:266
|
292 |
+
#: includes/admin/core/class-admin-forms.php:897
|
293 |
+
#: includes/admin/core/class-admin-forms.php:911
|
294 |
+
#: includes/admin/core/class-admin-forms.php:1034
|
295 |
+
#: includes/admin/core/class-admin-forms.php:1043
|
296 |
+
#: includes/admin/core/class-admin-forms.php:1278
|
297 |
+
#: includes/admin/core/class-admin-forms.php:1292
|
298 |
+
#: includes/admin/core/class-admin-notices.php:394
|
299 |
+
#: includes/core/um-actions-profile.php:648
|
300 |
+
msgid "Remove"
|
301 |
+
msgstr ""
|
302 |
+
|
303 |
+
#: includes/admin/core/class-admin-enqueue.php:236
|
304 |
+
#: includes/admin/core/class-admin-enqueue.php:267
|
305 |
+
#: includes/admin/core/class-admin-forms.php:1113
|
306 |
+
msgid "Select"
|
307 |
+
msgstr ""
|
308 |
+
|
309 |
+
#: includes/admin/core/class-admin-enqueue.php:264
|
310 |
+
msgid "Are sure, maybe some settings not saved"
|
311 |
+
msgstr ""
|
312 |
+
|
313 |
+
#: includes/admin/core/class-admin-enqueue.php:494
|
314 |
+
#: includes/core/class-builtin.php:698 includes/core/class-builtin.php:701
|
315 |
+
#: includes/core/class-builtin.php:1155 includes/core/class-builtin.php:1158
|
316 |
+
msgid "Password"
|
317 |
+
msgstr ""
|
318 |
+
|
319 |
+
#: includes/admin/core/class-admin-enqueue.php:498
|
320 |
+
#: includes/admin/core/class-admin-metabox.php:2227
|
321 |
+
#: includes/core/class-account.php:109
|
322 |
+
msgid "Privacy"
|
323 |
+
msgstr ""
|
324 |
+
|
325 |
+
#: includes/admin/core/class-admin-enqueue.php:502
|
326 |
+
#: includes/core/class-account.php:115
|
327 |
+
msgid "Notifications"
|
328 |
+
msgstr ""
|
329 |
+
|
330 |
+
#: includes/admin/core/class-admin-enqueue.php:556
|
331 |
+
msgid "Ultimate Member Blocks"
|
332 |
+
msgstr ""
|
333 |
+
|
334 |
+
#: includes/admin/core/class-admin-forms.php:318
|
335 |
+
#: includes/core/um-filters-fields.php:15
|
336 |
+
msgid "Required"
|
337 |
+
msgstr ""
|
338 |
+
|
339 |
+
#: includes/admin/core/class-admin-forms.php:526
|
340 |
+
#: includes/admin/core/class-admin-metabox.php:1405
|
341 |
+
#: includes/admin/core/class-admin-metabox.php:1433
|
342 |
+
msgid "Choose Icon"
|
343 |
+
msgstr ""
|
344 |
+
|
345 |
+
#: includes/admin/core/class-admin-forms.php:532
|
346 |
+
#: includes/admin/core/class-admin-metabox.php:1407
|
347 |
+
#: includes/admin/core/class-admin-metabox.php:1435
|
348 |
+
msgid "No Icon"
|
349 |
+
msgstr ""
|
350 |
+
|
351 |
+
#: includes/admin/core/class-admin-forms.php:1090
|
352 |
+
msgid "Select media"
|
353 |
+
msgstr ""
|
354 |
+
|
355 |
+
#: includes/admin/core/class-admin-forms.php:1114
|
356 |
+
msgid "Clear"
|
357 |
+
msgstr ""
|
358 |
+
|
359 |
+
#: includes/admin/core/class-admin-gdpr.php:42
|
360 |
+
msgid "Privacy Policy"
|
361 |
+
msgstr ""
|
362 |
+
|
363 |
+
#: includes/admin/core/class-admin-gdpr.php:57
|
364 |
+
msgid "Account Status"
|
365 |
+
msgstr ""
|
366 |
+
|
367 |
+
#: includes/admin/core/class-admin-gdpr.php:58
|
368 |
+
msgid "Submitted data on Registration"
|
369 |
+
msgstr ""
|
370 |
+
|
371 |
+
#: includes/admin/core/class-admin-gdpr.php:59
|
372 |
+
msgid "Registration Form ID"
|
373 |
+
msgstr ""
|
374 |
+
|
375 |
+
#: includes/admin/core/class-admin-gdpr.php:60
|
376 |
+
msgid "Registration Timestamp"
|
377 |
+
msgstr ""
|
378 |
+
|
379 |
+
#: includes/admin/core/class-admin-gdpr.php:61
|
380 |
+
msgid "Registration Request"
|
381 |
+
msgstr ""
|
382 |
+
|
383 |
+
#: includes/admin/core/class-admin-gdpr.php:62
|
384 |
+
msgid "Registration Nonce"
|
385 |
+
msgstr ""
|
386 |
+
|
387 |
+
#: includes/admin/core/class-admin-gdpr.php:63
|
388 |
+
msgid "Registration HTTP referer"
|
389 |
+
msgstr ""
|
390 |
+
|
391 |
+
#: includes/admin/core/class-admin-gdpr.php:64
|
392 |
+
msgid "Community Role"
|
393 |
+
msgstr ""
|
394 |
+
|
395 |
+
#: includes/admin/core/class-admin-gdpr.php:65
|
396 |
+
msgid "Profile Slug \"Username\""
|
397 |
+
msgstr ""
|
398 |
+
|
399 |
+
#: includes/admin/core/class-admin-gdpr.php:66
|
400 |
+
msgid "Profile Slug \"First and Last Name with '.'\""
|
401 |
+
msgstr ""
|
402 |
+
|
403 |
+
#: includes/admin/core/class-admin-gdpr.php:67
|
404 |
+
msgid "Profile Slug \"First and Last Name with '-'\""
|
405 |
+
msgstr ""
|
406 |
+
|
407 |
+
#: includes/admin/core/class-admin-gdpr.php:68
|
408 |
+
msgid "Profile Slug \"First and Last Name with '+'\""
|
409 |
+
msgstr ""
|
410 |
+
|
411 |
+
#: includes/admin/core/class-admin-gdpr.php:69
|
412 |
+
msgid "Profile Slug \"User ID\""
|
413 |
+
msgstr ""
|
414 |
+
|
415 |
+
#: includes/admin/core/class-admin-gdpr.php:70
|
416 |
+
msgid "Last Login Timestamp"
|
417 |
+
msgstr ""
|
418 |
+
|
419 |
+
#: includes/admin/core/class-admin-gdpr.php:73
|
420 |
+
msgid "Private Content Post ID"
|
421 |
+
msgstr ""
|
422 |
+
|
423 |
+
#: includes/admin/core/class-admin-gdpr.php:76
|
424 |
+
msgid "Verified Account"
|
425 |
+
msgstr ""
|
426 |
+
|
427 |
+
#: includes/admin/core/class-admin-gdpr.php:79
|
428 |
+
msgid "Terms&Conditions Agreement"
|
429 |
+
msgstr ""
|
430 |
+
|
431 |
+
#: includes/admin/core/class-admin-gdpr.php:82
|
432 |
+
msgid "Privacy Policy Agreement"
|
433 |
+
msgstr ""
|
434 |
+
|
435 |
+
#: includes/admin/core/class-admin-gdpr.php:298
|
436 |
+
#, php-format
|
437 |
+
msgid "Your %s was unable to be removed at this time."
|
438 |
+
msgstr ""
|
439 |
+
|
440 |
+
#: includes/admin/core/class-admin-menu.php:65
|
441 |
+
msgid "Thanks :)"
|
442 |
+
msgstr ""
|
443 |
+
|
444 |
+
#: includes/admin/core/class-admin-menu.php:72
|
445 |
+
#, php-format
|
446 |
+
msgid ""
|
447 |
+
"If you like Ultimate Member please consider leaving a %s review. It will "
|
448 |
+
"help us to grow the plugin and make it more popular. Thank you."
|
449 |
+
msgstr ""
|
450 |
+
|
451 |
+
#: includes/admin/core/class-admin-menu.php:127
|
452 |
+
msgctxt "Admin menu name"
|
453 |
+
msgid "Users"
|
454 |
+
msgstr ""
|
455 |
+
|
456 |
+
#: includes/admin/core/class-admin-menu.php:135
|
457 |
+
msgctxt "Admin menu name"
|
458 |
+
msgid "All Users"
|
459 |
+
msgstr ""
|
460 |
+
|
461 |
+
#. Plugin Name of the plugin/theme
|
462 |
+
#. Author of the plugin/theme
|
463 |
+
#: includes/admin/core/class-admin-menu.php:147
|
464 |
+
#: includes/core/class-user.php:562
|
465 |
+
msgid "Ultimate Member"
|
466 |
+
msgstr ""
|
467 |
+
|
468 |
+
#: includes/admin/core/class-admin-menu.php:151
|
469 |
+
msgid "Dashboard"
|
470 |
+
msgstr ""
|
471 |
+
|
472 |
+
#: includes/admin/core/class-admin-menu.php:159
|
473 |
+
#: includes/admin/templates/gdpr.php:7 includes/core/class-common.php:58
|
474 |
+
msgid "Forms"
|
475 |
+
msgstr ""
|
476 |
+
|
477 |
+
#: includes/admin/core/class-admin-menu.php:161
|
478 |
+
#: includes/admin/core/list-tables/roles-list-table.php:483
|
479 |
+
#: includes/admin/core/packages/2.0-beta1/user_roles.php:12
|
480 |
+
msgid "User Roles"
|
481 |
+
msgstr ""
|
482 |
+
|
483 |
+
#: includes/admin/core/class-admin-menu.php:164
|
484 |
+
#: includes/core/class-common.php:88
|
485 |
+
msgid "Member Directories"
|
486 |
+
msgstr ""
|
487 |
+
|
488 |
+
#: includes/admin/core/class-admin-menu.php:206
|
489 |
+
#: includes/admin/core/class-admin-settings.php:1095
|
490 |
+
msgid "Extensions"
|
491 |
+
msgstr ""
|
492 |
+
|
493 |
+
#: includes/admin/core/class-admin-menu.php:219
|
494 |
+
msgid "Users Overview"
|
495 |
+
msgstr ""
|
496 |
+
|
497 |
+
#: includes/admin/core/class-admin-menu.php:221
|
498 |
+
msgid "Latest from our blog"
|
499 |
+
msgstr ""
|
500 |
+
|
501 |
+
#: includes/admin/core/class-admin-menu.php:223
|
502 |
+
msgid "Purge Temp Files"
|
503 |
+
msgstr ""
|
504 |
+
|
505 |
+
#: includes/admin/core/class-admin-menu.php:225
|
506 |
+
msgid "User Cache"
|
507 |
+
msgstr ""
|
508 |
+
|
509 |
+
#: includes/admin/core/class-admin-menu.php:230
|
510 |
+
msgid "Upgrade's Manual Request"
|
511 |
+
msgstr ""
|
512 |
+
|
513 |
+
#: includes/admin/core/class-admin-metabox.php:222
|
514 |
+
msgid "UM Content Restriction"
|
515 |
+
msgstr ""
|
516 |
+
|
517 |
+
#: includes/admin/core/class-admin-metabox.php:378
|
518 |
+
#: includes/admin/core/class-admin-metabox.php:529
|
519 |
+
#: includes/admin/templates/access/restrict_content.php:53
|
520 |
+
msgid "Restrict access to this content?"
|
521 |
+
msgstr ""
|
522 |
+
|
523 |
+
#: includes/admin/core/class-admin-metabox.php:379
|
524 |
+
#: includes/admin/core/class-admin-metabox.php:386
|
525 |
+
#: includes/admin/core/class-admin-metabox.php:399
|
526 |
+
#: includes/admin/core/class-admin-metabox.php:530
|
527 |
+
#: includes/admin/core/class-admin-metabox.php:538
|
528 |
+
#: includes/admin/core/class-admin-metabox.php:552
|
529 |
+
#: includes/admin/templates/access/restrict_content.php:54
|
530 |
+
#: includes/admin/templates/access/restrict_content.php:61
|
531 |
+
#: includes/admin/templates/access/restrict_content.php:74
|
532 |
+
msgid "Activate content restriction for this post"
|
533 |
+
msgstr ""
|
534 |
+
|
535 |
+
#: includes/admin/core/class-admin-metabox.php:385
|
536 |
+
#: includes/admin/core/class-admin-metabox.php:537
|
537 |
+
#: includes/admin/templates/access/restrict_content.php:60
|
538 |
+
msgid "Who can access this content?"
|
539 |
+
msgstr ""
|
540 |
+
|
541 |
+
#: includes/admin/core/class-admin-metabox.php:389
|
542 |
+
#: includes/admin/core/class-admin-metabox.php:541
|
543 |
+
#: includes/admin/core/class-admin-metabox.php:2229
|
544 |
+
#: includes/admin/core/class-admin-navmenu.php:141
|
545 |
+
#: includes/admin/templates/access/restrict_content.php:64
|
546 |
+
#: includes/core/class-builtin.php:662
|
547 |
+
msgid "Everyone"
|
548 |
+
msgstr ""
|
549 |
+
|
550 |
+
#: includes/admin/core/class-admin-metabox.php:390
|
551 |
+
#: includes/admin/core/class-admin-metabox.php:542
|
552 |
+
#: includes/admin/templates/access/restrict_content.php:65
|
553 |
+
msgid "Logged out users"
|
554 |
+
msgstr ""
|
555 |
+
|
556 |
+
#: includes/admin/core/class-admin-metabox.php:391
|
557 |
+
#: includes/admin/core/class-admin-metabox.php:543
|
558 |
+
#: includes/admin/templates/access/restrict_content.php:66
|
559 |
+
msgid "Logged in users"
|
560 |
+
msgstr ""
|
561 |
+
|
562 |
+
#: includes/admin/core/class-admin-metabox.php:398
|
563 |
+
#: includes/admin/core/class-admin-metabox.php:551
|
564 |
+
#: includes/admin/templates/access/restrict_content.php:73
|
565 |
+
msgid "Select which roles can access this content"
|
566 |
+
msgstr ""
|
567 |
+
|
568 |
+
#: includes/admin/core/class-admin-metabox.php:407
|
569 |
+
#: includes/admin/core/class-admin-metabox.php:562
|
570 |
+
#: includes/admin/templates/access/restrict_content.php:83
|
571 |
+
msgid "What happens when users without access tries to view the content?"
|
572 |
+
msgstr ""
|
573 |
+
|
574 |
+
#: includes/admin/core/class-admin-metabox.php:408
|
575 |
+
#: includes/admin/core/class-admin-metabox.php:420
|
576 |
+
#: includes/admin/core/class-admin-metabox.php:563
|
577 |
+
#: includes/admin/core/class-admin-metabox.php:576
|
578 |
+
#: includes/admin/templates/access/restrict_content.php:84
|
579 |
+
#: includes/admin/templates/access/restrict_content.php:96
|
580 |
+
msgid "Action when users without access tries to view the content"
|
581 |
+
msgstr ""
|
582 |
+
|
583 |
+
#: includes/admin/core/class-admin-metabox.php:411
|
584 |
+
#: includes/admin/core/class-admin-metabox.php:566
|
585 |
+
#: includes/admin/templates/access/restrict_content.php:87
|
586 |
+
msgid "Show access restricted message"
|
587 |
+
msgstr ""
|
588 |
+
|
589 |
+
#: includes/admin/core/class-admin-metabox.php:412
|
590 |
+
#: includes/admin/core/class-admin-metabox.php:567
|
591 |
+
#: includes/admin/templates/access/restrict_content.php:88
|
592 |
+
msgid "Redirect user"
|
593 |
+
msgstr ""
|
594 |
+
|
595 |
+
#: includes/admin/core/class-admin-metabox.php:419
|
596 |
+
#: includes/admin/core/class-admin-metabox.php:575
|
597 |
+
#: includes/admin/templates/access/restrict_content.php:95
|
598 |
+
msgid ""
|
599 |
+
"Would you like to use the global default message or apply a custom message "
|
600 |
+
"to this content?"
|
601 |
+
msgstr ""
|
602 |
+
|
603 |
+
#: includes/admin/core/class-admin-metabox.php:423
|
604 |
+
#: includes/admin/core/class-admin-metabox.php:579
|
605 |
+
#: includes/admin/templates/access/restrict_content.php:99
|
606 |
+
msgid "Global default message (default)"
|
607 |
+
msgstr ""
|
608 |
+
|
609 |
+
#: includes/admin/core/class-admin-metabox.php:424
|
610 |
+
#: includes/admin/core/class-admin-metabox.php:580
|
611 |
+
#: includes/admin/templates/access/restrict_content.php:100
|
612 |
+
msgid "Custom message"
|
613 |
+
msgstr ""
|
614 |
+
|
615 |
+
#: includes/admin/core/class-admin-metabox.php:431
|
616 |
+
#: includes/admin/core/class-admin-metabox.php:588
|
617 |
+
#: includes/admin/templates/access/restrict_content.php:107
|
618 |
+
msgid "Custom Restrict Content message"
|
619 |
+
msgstr ""
|
620 |
+
|
621 |
+
#: includes/admin/core/class-admin-metabox.php:432
|
622 |
+
#: includes/admin/core/class-admin-metabox.php:452
|
623 |
+
#: includes/admin/core/class-admin-metabox.php:589
|
624 |
+
#: includes/admin/core/class-admin-metabox.php:611
|
625 |
+
#: includes/admin/templates/access/restrict_content.php:108
|
626 |
+
#: includes/admin/templates/access/restrict_content.php:128
|
627 |
+
msgid "Changed global restrict message"
|
628 |
+
msgstr ""
|
629 |
+
|
630 |
+
#: includes/admin/core/class-admin-metabox.php:439
|
631 |
+
#: includes/admin/core/class-admin-metabox.php:597
|
632 |
+
#: includes/admin/templates/access/restrict_content.php:115
|
633 |
+
msgid "Where should users be redirected to?"
|
634 |
+
msgstr ""
|
635 |
+
|
636 |
+
#: includes/admin/core/class-admin-metabox.php:440
|
637 |
+
#: includes/admin/core/class-admin-metabox.php:598
|
638 |
+
#: includes/admin/templates/access/restrict_content.php:116
|
639 |
+
msgid "Select redirect to page when user hasn't access to content"
|
640 |
+
msgstr ""
|
641 |
+
|
642 |
+
#: includes/admin/core/class-admin-metabox.php:444
|
643 |
+
#: includes/admin/core/class-admin-metabox.php:602
|
644 |
+
#: includes/admin/templates/access/restrict_content.php:120
|
645 |
+
msgid "Login page"
|
646 |
+
msgstr ""
|
647 |
+
|
648 |
+
#: includes/admin/core/class-admin-metabox.php:445
|
649 |
+
#: includes/admin/core/class-admin-metabox.php:603
|
650 |
+
#: includes/admin/templates/access/restrict_content.php:121
|
651 |
+
msgid "Custom URL"
|
652 |
+
msgstr ""
|
653 |
+
|
654 |
+
#: includes/admin/core/class-admin-metabox.php:451
|
655 |
+
#: includes/admin/core/class-admin-metabox.php:610
|
656 |
+
#: includes/admin/templates/access/restrict_content.php:127
|
657 |
+
msgid "Redirect URL"
|
658 |
+
msgstr ""
|
659 |
+
|
660 |
+
#: includes/admin/core/class-admin-metabox.php:459
|
661 |
+
#: includes/admin/core/class-admin-metabox.php:619
|
662 |
+
#: includes/admin/templates/access/restrict_content.php:135
|
663 |
+
msgid "Hide from queries"
|
664 |
+
msgstr ""
|
665 |
+
|
666 |
+
#: includes/admin/core/class-admin-metabox.php:460
|
667 |
+
#: includes/admin/core/class-admin-metabox.php:620
|
668 |
+
#: includes/admin/templates/access/restrict_content.php:136
|
669 |
+
msgid ""
|
670 |
+
"Hide this content from archives, RSS feeds etc for users who do not have "
|
671 |
+
"permission to view this content"
|
672 |
+
msgstr ""
|
673 |
+
|
674 |
+
#: includes/admin/core/class-admin-metabox.php:780
|
675 |
+
msgid "General Options"
|
676 |
+
msgstr ""
|
677 |
+
|
678 |
+
#: includes/admin/core/class-admin-metabox.php:781
|
679 |
+
msgid "Sorting"
|
680 |
+
msgstr ""
|
681 |
+
|
682 |
+
#: includes/admin/core/class-admin-metabox.php:782
|
683 |
+
msgid "Profile Card"
|
684 |
+
msgstr ""
|
685 |
+
|
686 |
+
#: includes/admin/core/class-admin-metabox.php:783
|
687 |
+
msgid "Search Options"
|
688 |
+
msgstr ""
|
689 |
+
|
690 |
+
#: includes/admin/core/class-admin-metabox.php:784
|
691 |
+
msgid "Results & Pagination"
|
692 |
+
msgstr ""
|
693 |
+
|
694 |
+
#: includes/admin/core/class-admin-metabox.php:786
|
695 |
+
msgid "Styling: General"
|
696 |
+
msgstr ""
|
697 |
+
|
698 |
+
#: includes/admin/core/class-admin-metabox.php:799
|
699 |
+
msgid "Administrative Permissions"
|
700 |
+
msgstr ""
|
701 |
+
|
702 |
+
#: includes/admin/core/class-admin-metabox.php:807
|
703 |
+
msgid "General Permissions"
|
704 |
+
msgstr ""
|
705 |
+
|
706 |
+
#: includes/admin/core/class-admin-metabox.php:815
|
707 |
+
msgid "Profile Access"
|
708 |
+
msgstr ""
|
709 |
+
|
710 |
+
#: includes/admin/core/class-admin-metabox.php:826
|
711 |
+
msgid "Homepage Options"
|
712 |
+
msgstr ""
|
713 |
+
|
714 |
+
#: includes/admin/core/class-admin-metabox.php:837
|
715 |
+
msgid "Registration Options"
|
716 |
+
msgstr ""
|
717 |
+
|
718 |
+
#: includes/admin/core/class-admin-metabox.php:845
|
719 |
+
msgid "Login Options"
|
720 |
+
msgstr ""
|
721 |
+
|
722 |
+
#: includes/admin/core/class-admin-metabox.php:853
|
723 |
+
msgid "Logout Options"
|
724 |
+
msgstr ""
|
725 |
+
|
726 |
+
#: includes/admin/core/class-admin-metabox.php:861
|
727 |
+
msgid "Delete Options"
|
728 |
+
msgstr ""
|
729 |
+
|
730 |
+
#: includes/admin/core/class-admin-metabox.php:869
|
731 |
+
msgid "Publish"
|
732 |
+
msgstr ""
|
733 |
+
|
734 |
+
#: includes/admin/core/class-admin-metabox.php:917
|
735 |
+
msgid "WP Capabilities"
|
736 |
+
msgstr ""
|
737 |
+
|
738 |
+
#: includes/admin/core/class-admin-metabox.php:944
|
739 |
+
msgid "Select Form Type"
|
740 |
+
msgstr ""
|
741 |
+
|
742 |
+
#: includes/admin/core/class-admin-metabox.php:945
|
743 |
+
msgid "Form Builder"
|
744 |
+
msgstr ""
|
745 |
+
|
746 |
+
#: includes/admin/core/class-admin-metabox.php:948
|
747 |
+
#: includes/admin/core/class-admin-metabox.php:969
|
748 |
+
#: includes/admin/core/class-admin-metabox.php:991
|
749 |
+
msgid "Customize this form"
|
750 |
+
msgstr ""
|
751 |
+
|
752 |
+
#: includes/admin/core/class-admin-metabox.php:970
|
753 |
+
msgid "User Meta"
|
754 |
+
msgstr ""
|
755 |
+
|
756 |
+
#: includes/admin/core/class-admin-metabox.php:992
|
757 |
+
msgid "Options"
|
758 |
+
msgstr ""
|
759 |
+
|
760 |
+
#: includes/admin/core/class-admin-metabox.php:1226
|
761 |
+
msgid "Visibility"
|
762 |
+
msgstr ""
|
763 |
+
|
764 |
+
#: includes/admin/core/class-admin-metabox.php:1226
|
765 |
+
msgid ""
|
766 |
+
"Select where this field should appear. This option should only be changed on "
|
767 |
+
"the profile form and allows you to show a field in one mode only (edit or "
|
768 |
+
"view) or in both modes."
|
769 |
+
msgstr ""
|
770 |
+
|
771 |
+
#: includes/admin/core/class-admin-metabox.php:1228
|
772 |
+
msgid "View everywhere"
|
773 |
+
msgstr ""
|
774 |
+
|
775 |
+
#: includes/admin/core/class-admin-metabox.php:1229
|
776 |
+
msgid "Edit mode only"
|
777 |
+
msgstr ""
|
778 |
+
|
779 |
+
#: includes/admin/core/class-admin-metabox.php:1230
|
780 |
+
msgid "View mode only"
|
781 |
+
msgstr ""
|
782 |
+
|
783 |
+
#: includes/admin/core/class-admin-metabox.php:1258
|
784 |
+
msgid "If"
|
785 |
+
msgstr ""
|
786 |
+
|
787 |
+
#: includes/admin/core/class-admin-metabox.php:1335
|
788 |
+
msgid "Value"
|
789 |
+
msgstr ""
|
790 |
+
|
791 |
+
#: includes/admin/core/class-admin-metabox.php:1344
|
792 |
+
msgid "Validate"
|
793 |
+
msgstr ""
|
794 |
+
|
795 |
+
#: includes/admin/core/class-admin-metabox.php:1344
|
796 |
+
msgid "Does this field require a special validation"
|
797 |
+
msgstr ""
|
798 |
+
|
799 |
+
#: includes/admin/core/class-admin-metabox.php:1345
|
800 |
+
msgid "Select a validation type..."
|
801 |
+
msgstr ""
|
802 |
+
|
803 |
+
#: includes/admin/core/class-admin-metabox.php:1389
|
804 |
+
msgid "Custom Action"
|
805 |
+
msgstr ""
|
806 |
+
|
807 |
+
#: includes/admin/core/class-admin-metabox.php:1389
|
808 |
+
msgid ""
|
809 |
+
"If you want to apply your custom validation, you can use action hooks to add "
|
810 |
+
"custom validation. Please refer to documentation for further details."
|
811 |
+
msgstr ""
|
812 |
+
|
813 |
+
#: includes/admin/core/class-admin-metabox.php:1403
|
814 |
+
#: includes/admin/core/class-admin-metabox.php:1431
|
815 |
+
msgid "Icon"
|
816 |
+
msgstr ""
|
817 |
+
|
818 |
+
#: includes/admin/core/class-admin-metabox.php:1403
|
819 |
+
#: includes/admin/core/class-admin-metabox.php:1431
|
820 |
+
msgid ""
|
821 |
+
"Select an icon to appear in the field. Leave blank if you do not want an "
|
822 |
+
"icon to show in the field."
|
823 |
+
msgstr ""
|
824 |
+
|
825 |
+
#: includes/admin/core/class-admin-metabox.php:1458
|
826 |
+
msgid "CSS Class"
|
827 |
+
msgstr ""
|
828 |
+
|
829 |
+
#: includes/admin/core/class-admin-metabox.php:1458
|
830 |
+
msgid "Specify a custom CSS class to be applied to this element"
|
831 |
+
msgstr ""
|
832 |
+
|
833 |
+
#: includes/admin/core/class-admin-metabox.php:1468
|
834 |
+
msgid "Thickness (in pixels)"
|
835 |
+
msgstr ""
|
836 |
+
|
837 |
+
#: includes/admin/core/class-admin-metabox.php:1468
|
838 |
+
msgid "This is the width in pixels, e.g. 4 or 2, etc"
|
839 |
+
msgstr ""
|
840 |
+
|
841 |
+
#: includes/admin/core/class-admin-metabox.php:1478
|
842 |
+
msgid "Optional Text"
|
843 |
+
msgstr ""
|
844 |
+
|
845 |
+
#: includes/admin/core/class-admin-metabox.php:1478
|
846 |
+
msgid "Optional text to include with the divider"
|
847 |
+
msgstr ""
|
848 |
+
|
849 |
+
#: includes/admin/core/class-admin-metabox.php:1488
|
850 |
+
msgid "Padding"
|
851 |
+
msgstr ""
|
852 |
+
|
853 |
+
#: includes/admin/core/class-admin-metabox.php:1488
|
854 |
+
msgid "Set padding for this section"
|
855 |
+
msgstr ""
|
856 |
+
|
857 |
+
#: includes/admin/core/class-admin-metabox.php:1498
|
858 |
+
msgid "Margin"
|
859 |
+
msgstr ""
|
860 |
+
|
861 |
+
#: includes/admin/core/class-admin-metabox.php:1498
|
862 |
+
msgid "Set margin for this section"
|
863 |
+
msgstr ""
|
864 |
+
|
865 |
+
#: includes/admin/core/class-admin-metabox.php:1508
|
866 |
+
msgid "Border"
|
867 |
+
msgstr ""
|
868 |
+
|
869 |
+
#: includes/admin/core/class-admin-metabox.php:1508
|
870 |
+
msgid "Set border for this section"
|
871 |
+
msgstr ""
|
872 |
+
|
873 |
+
#: includes/admin/core/class-admin-metabox.php:1518
|
874 |
+
#: includes/admin/core/class-admin-metabox.php:1689
|
875 |
+
msgid "Style"
|
876 |
+
msgstr ""
|
877 |
+
|
878 |
+
#: includes/admin/core/class-admin-metabox.php:1518
|
879 |
+
msgid "Choose the border style"
|
880 |
+
msgstr ""
|
881 |
+
|
882 |
+
#: includes/admin/core/class-admin-metabox.php:1520
|
883 |
+
#: includes/admin/core/class-admin-metabox.php:1691
|
884 |
+
msgid "Solid"
|
885 |
+
msgstr ""
|
886 |
+
|
887 |
+
#: includes/admin/core/class-admin-metabox.php:1521
|
888 |
+
#: includes/admin/core/class-admin-metabox.php:1692
|
889 |
+
msgid "Dotted"
|
890 |
+
msgstr ""
|
891 |
+
|
892 |
+
#: includes/admin/core/class-admin-metabox.php:1522
|
893 |
+
#: includes/admin/core/class-admin-metabox.php:1693
|
894 |
+
msgid "Dashed"
|
895 |
+
msgstr ""
|
896 |
+
|
897 |
+
#: includes/admin/core/class-admin-metabox.php:1523
|
898 |
+
#: includes/admin/core/class-admin-metabox.php:1694
|
899 |
+
msgid "Double"
|
900 |
+
msgstr ""
|
901 |
+
|
902 |
+
#: includes/admin/core/class-admin-metabox.php:1533
|
903 |
+
msgid "Border Radius"
|
904 |
+
msgstr ""
|
905 |
+
|
906 |
+
#: includes/admin/core/class-admin-metabox.php:1533
|
907 |
+
msgid "Rounded corners can be applied by setting a pixels value here. e.g. 5px"
|
908 |
+
msgstr ""
|
909 |
+
|
910 |
+
#: includes/admin/core/class-admin-metabox.php:1543
|
911 |
+
msgid "Border Color"
|
912 |
+
msgstr ""
|
913 |
+
|
914 |
+
#: includes/admin/core/class-admin-metabox.php:1543
|
915 |
+
msgid "Give a color to this border"
|
916 |
+
msgstr ""
|
917 |
+
|
918 |
+
#: includes/admin/core/class-admin-metabox.php:1553
|
919 |
+
msgid "Enable Row Heading"
|
920 |
+
msgstr ""
|
921 |
+
|
922 |
+
#: includes/admin/core/class-admin-metabox.php:1553
|
923 |
+
msgid "Whether to enable a heading for this row"
|
924 |
+
msgstr ""
|
925 |
+
|
926 |
+
#: includes/admin/core/class-admin-metabox.php:1563
|
927 |
+
msgid "Heading Text"
|
928 |
+
msgstr ""
|
929 |
+
|
930 |
+
#: includes/admin/core/class-admin-metabox.php:1563
|
931 |
+
msgid "Enter the row heading text here"
|
932 |
+
msgstr ""
|
933 |
+
|
934 |
+
#: includes/admin/core/class-admin-metabox.php:1573
|
935 |
+
msgid "Background Color"
|
936 |
+
msgstr ""
|
937 |
+
|
938 |
+
#: includes/admin/core/class-admin-metabox.php:1573
|
939 |
+
msgid "This will be the background of entire section"
|
940 |
+
msgstr ""
|
941 |
+
|
942 |
+
#: includes/admin/core/class-admin-metabox.php:1583
|
943 |
+
msgid "Heading Background Color"
|
944 |
+
msgstr ""
|
945 |
+
|
946 |
+
#: includes/admin/core/class-admin-metabox.php:1583
|
947 |
+
msgid "This will be the background of the heading section"
|
948 |
+
msgstr ""
|
949 |
+
|
950 |
+
#: includes/admin/core/class-admin-metabox.php:1593
|
951 |
+
msgid "Heading Text Color"
|
952 |
+
msgstr ""
|
953 |
+
|
954 |
+
#: includes/admin/core/class-admin-metabox.php:1593
|
955 |
+
msgid "This will be the text color of heading part only"
|
956 |
+
msgstr ""
|
957 |
+
|
958 |
+
#: includes/admin/core/class-admin-metabox.php:1603
|
959 |
+
msgid "Text Color"
|
960 |
+
msgstr ""
|
961 |
+
|
962 |
+
#: includes/admin/core/class-admin-metabox.php:1603
|
963 |
+
msgid "This will be the text color of entire section"
|
964 |
+
msgstr ""
|
965 |
+
|
966 |
+
#: includes/admin/core/class-admin-metabox.php:1613
|
967 |
+
msgid "Icon Color"
|
968 |
+
msgstr ""
|
969 |
+
|
970 |
+
#: includes/admin/core/class-admin-metabox.php:1613
|
971 |
+
msgid ""
|
972 |
+
"This will be the color of selected icon. By default It will be the same "
|
973 |
+
"color as heading text color"
|
974 |
+
msgstr ""
|
975 |
+
|
976 |
+
#: includes/admin/core/class-admin-metabox.php:1623
|
977 |
+
msgid "Color"
|
978 |
+
msgstr ""
|
979 |
+
|
980 |
+
#: includes/admin/core/class-admin-metabox.php:1623
|
981 |
+
msgid "Select a color for this divider"
|
982 |
+
msgstr ""
|
983 |
+
|
984 |
+
#: includes/admin/core/class-admin-metabox.php:1633
|
985 |
+
msgid "URL Alt Text"
|
986 |
+
msgstr ""
|
987 |
+
|
988 |
+
#: includes/admin/core/class-admin-metabox.php:1633
|
989 |
+
msgid "Entering custom text here will replace the url with a text link"
|
990 |
+
msgstr ""
|
991 |
+
|
992 |
+
#: includes/admin/core/class-admin-metabox.php:1643
|
993 |
+
msgid "Link Target"
|
994 |
+
msgstr ""
|
995 |
+
|
996 |
+
#: includes/admin/core/class-admin-metabox.php:1643
|
997 |
+
msgid "Choose whether to open this link in same window or in a new window"
|
998 |
+
msgstr ""
|
999 |
+
|
1000 |
+
#: includes/admin/core/class-admin-metabox.php:1645
|
1001 |
+
msgid "Open in new window"
|
1002 |
+
msgstr ""
|
1003 |
+
|
1004 |
+
#: includes/admin/core/class-admin-metabox.php:1646
|
1005 |
+
msgid "Same window"
|
1006 |
+
msgstr ""
|
1007 |
+
|
1008 |
+
#: includes/admin/core/class-admin-metabox.php:1656
|
1009 |
+
msgid "SEO Follow"
|
1010 |
+
msgstr ""
|
1011 |
+
|
1012 |
+
#: includes/admin/core/class-admin-metabox.php:1656
|
1013 |
+
msgid "Whether to follow or nofollow this link by search engines"
|
1014 |
+
msgstr ""
|
1015 |
+
|
1016 |
+
#: includes/admin/core/class-admin-metabox.php:1658
|
1017 |
+
msgid "Follow"
|
1018 |
+
msgstr ""
|
1019 |
+
|
1020 |
+
#: includes/admin/core/class-admin-metabox.php:1659
|
1021 |
+
msgid "No-Follow"
|
1022 |
+
msgstr ""
|
1023 |
+
|
1024 |
+
#: includes/admin/core/class-admin-metabox.php:1669
|
1025 |
+
msgid "Force strong password?"
|
1026 |
+
msgstr ""
|
1027 |
+
|
1028 |
+
#: includes/admin/core/class-admin-metabox.php:1669
|
1029 |
+
msgid ""
|
1030 |
+
"Turn on to force users to create a strong password (A combination of one "
|
1031 |
+
"lowercase letter, one uppercase letter, and one number). If turned on this "
|
1032 |
+
"option is only applied to register forms and not to login forms."
|
1033 |
+
msgstr ""
|
1034 |
+
|
1035 |
+
#: includes/admin/core/class-admin-metabox.php:1679
|
1036 |
+
msgid "Automatically add a confirm password field?"
|
1037 |
+
msgstr ""
|
1038 |
+
|
1039 |
+
#: includes/admin/core/class-admin-metabox.php:1679
|
1040 |
+
msgid ""
|
1041 |
+
"Turn on to add a confirm password field. If turned on the confirm password "
|
1042 |
+
"field will only show on register forms and not on login forms."
|
1043 |
+
msgstr ""
|
1044 |
+
|
1045 |
+
#: includes/admin/core/class-admin-metabox.php:1689
|
1046 |
+
msgid "This is the line-style of divider"
|
1047 |
+
msgstr ""
|
1048 |
+
|
1049 |
+
#: includes/admin/core/class-admin-metabox.php:1705
|
1050 |
+
msgid "Time Intervals (in minutes)"
|
1051 |
+
msgstr ""
|
1052 |
+
|
1053 |
+
#: includes/admin/core/class-admin-metabox.php:1705
|
1054 |
+
msgid "Choose the minutes interval between each time in the time picker."
|
1055 |
+
msgstr ""
|
1056 |
+
|
1057 |
+
#: includes/admin/core/class-admin-metabox.php:1706
|
1058 |
+
msgid "e.g. 30, 60, 120"
|
1059 |
+
msgstr ""
|
1060 |
+
|
1061 |
+
#: includes/admin/core/class-admin-metabox.php:1718
|
1062 |
+
msgid "Date User-Friendly Format"
|
1063 |
+
msgstr ""
|
1064 |
+
|
1065 |
+
#: includes/admin/core/class-admin-metabox.php:1718
|
1066 |
+
msgid "The display format of the date which is visible to user."
|
1067 |
+
msgstr ""
|
1068 |
+
|
1069 |
+
#: includes/admin/core/class-admin-metabox.php:1729
|
1070 |
+
msgid "Time Format"
|
1071 |
+
msgstr ""
|
1072 |
+
|
1073 |
+
#: includes/admin/core/class-admin-metabox.php:1729
|
1074 |
+
msgid "Choose the displayed time-format for this field"
|
1075 |
+
msgstr ""
|
1076 |
+
|
1077 |
+
#: includes/admin/core/class-admin-metabox.php:1731
|
1078 |
+
#: includes/admin/core/class-admin-metabox.php:1732
|
1079 |
+
msgid "( 12-hr format )"
|
1080 |
+
msgstr ""
|
1081 |
+
|
1082 |
+
#: includes/admin/core/class-admin-metabox.php:1733
|
1083 |
+
msgid "( 24-hr format )"
|
1084 |
+
msgstr ""
|
1085 |
+
|
1086 |
+
#: includes/admin/core/class-admin-metabox.php:1744
|
1087 |
+
msgid "Use custom Date format"
|
1088 |
+
msgstr ""
|
1089 |
+
|
1090 |
+
#: includes/admin/core/class-admin-metabox.php:1744
|
1091 |
+
msgid ""
|
1092 |
+
"This option overrides \"Date User-Friendly Format\" option. See https://www."
|
1093 |
+
"php.net/manual/en/function.date.php"
|
1094 |
+
msgstr ""
|
1095 |
+
|
1096 |
+
#: includes/admin/core/class-admin-metabox.php:1754
|
1097 |
+
msgid "Displayed Date Format"
|
1098 |
+
msgstr ""
|
1099 |
+
|
1100 |
+
#: includes/admin/core/class-admin-metabox.php:1754
|
1101 |
+
msgid ""
|
1102 |
+
"Whether you wish to show the date in full or only show the years e.g. 25 "
|
1103 |
+
"Years"
|
1104 |
+
msgstr ""
|
1105 |
+
|
1106 |
+
#: includes/admin/core/class-admin-metabox.php:1756
|
1107 |
+
msgid "Show full date"
|
1108 |
+
msgstr ""
|
1109 |
+
|
1110 |
+
#: includes/admin/core/class-admin-metabox.php:1757
|
1111 |
+
msgid "Show years only"
|
1112 |
+
msgstr ""
|
1113 |
+
|
1114 |
+
#: includes/admin/core/class-admin-metabox.php:1773
|
1115 |
+
msgid "Disable specific weekdays"
|
1116 |
+
msgstr ""
|
1117 |
+
|
1118 |
+
#: includes/admin/core/class-admin-metabox.php:1773
|
1119 |
+
msgid ""
|
1120 |
+
"Disable specific week days from being available for selection in this date "
|
1121 |
+
"picker"
|
1122 |
+
msgstr ""
|
1123 |
+
|
1124 |
+
#: includes/admin/core/class-admin-metabox.php:1775
|
1125 |
+
msgid "Sunday"
|
1126 |
+
msgstr ""
|
1127 |
+
|
1128 |
+
#: includes/admin/core/class-admin-metabox.php:1776
|
1129 |
+
msgid "Monday"
|
1130 |
+
msgstr ""
|
1131 |
+
|
1132 |
+
#: includes/admin/core/class-admin-metabox.php:1777
|
1133 |
+
msgid "Tuesday"
|
1134 |
+
msgstr ""
|
1135 |
+
|
1136 |
+
#: includes/admin/core/class-admin-metabox.php:1778
|
1137 |
+
msgid "Wednesday"
|
1138 |
+
msgstr ""
|
1139 |
+
|
1140 |
+
#: includes/admin/core/class-admin-metabox.php:1779
|
1141 |
+
msgid "Thursday"
|
1142 |
+
msgstr ""
|
1143 |
+
|
1144 |
+
#: includes/admin/core/class-admin-metabox.php:1780
|
1145 |
+
msgid "Friday"
|
1146 |
+
msgstr ""
|
1147 |
+
|
1148 |
+
#: includes/admin/core/class-admin-metabox.php:1781
|
1149 |
+
msgid "Saturday"
|
1150 |
+
msgstr ""
|
1151 |
+
|
1152 |
+
#: includes/admin/core/class-admin-metabox.php:1791
|
1153 |
+
msgid "Number of Years to pick from"
|
1154 |
+
msgstr ""
|
1155 |
+
|
1156 |
+
#: includes/admin/core/class-admin-metabox.php:1791
|
1157 |
+
msgid ""
|
1158 |
+
"Number of years available for the date selection. Default to last 50 years"
|
1159 |
+
msgstr ""
|
1160 |
+
|
1161 |
+
#: includes/admin/core/class-admin-metabox.php:1801
|
1162 |
+
msgid "Years Selection"
|
1163 |
+
msgstr ""
|
1164 |
+
|
1165 |
+
#: includes/admin/core/class-admin-metabox.php:1801
|
1166 |
+
msgid "This decides which years should be shown relative to today date"
|
1167 |
+
msgstr ""
|
1168 |
+
|
1169 |
+
#: includes/admin/core/class-admin-metabox.php:1803
|
1170 |
+
msgid "Equal years before / after today"
|
1171 |
+
msgstr ""
|
1172 |
+
|
1173 |
+
#: includes/admin/core/class-admin-metabox.php:1804
|
1174 |
+
msgid "Past years only"
|
1175 |
+
msgstr ""
|
1176 |
+
|
1177 |
+
#: includes/admin/core/class-admin-metabox.php:1805
|
1178 |
+
msgid "Future years only"
|
1179 |
+
msgstr ""
|
1180 |
+
|
1181 |
+
#: includes/admin/core/class-admin-metabox.php:1815
|
1182 |
+
msgid "Date Range Start"
|
1183 |
+
msgstr ""
|
1184 |
+
|
1185 |
+
#: includes/admin/core/class-admin-metabox.php:1815
|
1186 |
+
msgid "Set the minimum date/day in range in the format YYYY/MM/DD"
|
1187 |
+
msgstr ""
|
1188 |
+
|
1189 |
+
#: includes/admin/core/class-admin-metabox.php:1816
|
1190 |
+
#: includes/admin/core/class-admin-metabox.php:1826
|
1191 |
+
msgid "YYYY/MM/DD"
|
1192 |
+
msgstr ""
|
1193 |
+
|
1194 |
+
#: includes/admin/core/class-admin-metabox.php:1825
|
1195 |
+
msgid "Date Range End"
|
1196 |
+
msgstr ""
|
1197 |
+
|
1198 |
+
#: includes/admin/core/class-admin-metabox.php:1825
|
1199 |
+
msgid "Set the maximum date/day in range in the format YYYY/MM/DD"
|
1200 |
+
msgstr ""
|
1201 |
+
|
1202 |
+
#: includes/admin/core/class-admin-metabox.php:1835
|
1203 |
+
msgid "Set Date Range"
|
1204 |
+
msgstr ""
|
1205 |
+
|
1206 |
+
#: includes/admin/core/class-admin-metabox.php:1835
|
1207 |
+
msgid ""
|
1208 |
+
"Whether to show a specific number of years or specify a date range to be "
|
1209 |
+
"available for the date picker."
|
1210 |
+
msgstr ""
|
1211 |
+
|
1212 |
+
#: includes/admin/core/class-admin-metabox.php:1837
|
1213 |
+
msgid "Fixed Number of Years"
|
1214 |
+
msgstr ""
|
1215 |
+
|
1216 |
+
#: includes/admin/core/class-admin-metabox.php:1838
|
1217 |
+
msgid "Specific Date Range"
|
1218 |
+
msgstr ""
|
1219 |
+
|
1220 |
+
#: includes/admin/core/class-admin-metabox.php:1851
|
1221 |
+
msgid "Enter Shortcode"
|
1222 |
+
msgstr ""
|
1223 |
+
|
1224 |
+
#: includes/admin/core/class-admin-metabox.php:1851
|
1225 |
+
msgid ""
|
1226 |
+
"Enter the shortcode in the following textarea and it will be displayed on "
|
1227 |
+
"the fields"
|
1228 |
+
msgstr ""
|
1229 |
+
|
1230 |
+
#: includes/admin/core/class-admin-metabox.php:1852
|
1231 |
+
msgid "e.g. [my_custom_shortcode]"
|
1232 |
+
msgstr ""
|
1233 |
+
|
1234 |
+
#: includes/admin/core/class-admin-metabox.php:1861
|
1235 |
+
msgid "Content Editor"
|
1236 |
+
msgstr ""
|
1237 |
+
|
1238 |
+
#: includes/admin/core/class-admin-metabox.php:1861
|
1239 |
+
msgid "Edit the content of this field here"
|
1240 |
+
msgstr ""
|
1241 |
+
|
1242 |
+
#: includes/admin/core/class-admin-metabox.php:1874
|
1243 |
+
msgid "Crop Feature"
|
1244 |
+
msgstr ""
|
1245 |
+
|
1246 |
+
#: includes/admin/core/class-admin-metabox.php:1874
|
1247 |
+
msgid "Enable/disable crop feature for this image upload and define ratio"
|
1248 |
+
msgstr ""
|
1249 |
+
|
1250 |
+
#: includes/admin/core/class-admin-metabox.php:1876
|
1251 |
+
msgid "Turn Off (Default)"
|
1252 |
+
msgstr ""
|
1253 |
+
|
1254 |
+
#: includes/admin/core/class-admin-metabox.php:1877
|
1255 |
+
msgid "Crop and force 1:1 ratio"
|
1256 |
+
msgstr ""
|
1257 |
+
|
1258 |
+
#: includes/admin/core/class-admin-metabox.php:1878
|
1259 |
+
msgid "Crop and force user-defined ratio"
|
1260 |
+
msgstr ""
|
1261 |
+
|
1262 |
+
#: includes/admin/core/class-admin-metabox.php:1895
|
1263 |
+
msgid "Allowed Image Types"
|
1264 |
+
msgstr ""
|
1265 |
+
|
1266 |
+
#: includes/admin/core/class-admin-metabox.php:1895
|
1267 |
+
#: includes/admin/core/class-admin-metabox.php:1913
|
1268 |
+
msgid ""
|
1269 |
+
"Select the image types that you want to allow to be uploaded via this field."
|
1270 |
+
msgstr ""
|
1271 |
+
|
1272 |
+
#: includes/admin/core/class-admin-metabox.php:1913
|
1273 |
+
msgid "Allowed File Types"
|
1274 |
+
msgstr ""
|
1275 |
+
|
1276 |
+
#: includes/admin/core/class-admin-metabox.php:1930
|
1277 |
+
msgid "Drag & Drop Photo"
|
1278 |
+
msgstr ""
|
1279 |
+
|
1280 |
+
#: includes/admin/core/class-admin-metabox.php:1933
|
1281 |
+
msgid "Drag & Drop File"
|
1282 |
+
msgstr ""
|
1283 |
+
|
1284 |
+
#: includes/admin/core/class-admin-metabox.php:1938
|
1285 |
+
#: includes/admin/core/class-admin-metabox.php:1958
|
1286 |
+
msgid "Upload Box Text"
|
1287 |
+
msgstr ""
|
1288 |
+
|
1289 |
+
#: includes/admin/core/class-admin-metabox.php:1938
|
1290 |
+
msgid "This is the headline that appears in the upload box for this field"
|
1291 |
+
msgstr ""
|
1292 |
+
|
1293 |
+
#: includes/admin/core/class-admin-metabox.php:1948
|
1294 |
+
msgid "Additional Instructions Text"
|
1295 |
+
msgstr ""
|
1296 |
+
|
1297 |
+
#: includes/admin/core/class-admin-metabox.php:1948
|
1298 |
+
msgid ""
|
1299 |
+
"If you need to add information or secondary line below the headline of "
|
1300 |
+
"upload box, enter it here"
|
1301 |
+
msgstr ""
|
1302 |
+
|
1303 |
+
#: includes/admin/core/class-admin-metabox.php:1958
|
1304 |
+
msgid "The text that appears on the button. e.g. Upload"
|
1305 |
+
msgstr ""
|
1306 |
+
|
1307 |
+
#: includes/admin/core/class-admin-metabox.php:1959
|
1308 |
+
#: includes/core/class-fields.php:1627 includes/core/class-fields.php:1668
|
1309 |
+
msgid "Upload"
|
1310 |
+
msgstr ""
|
1311 |
+
|
1312 |
+
#: includes/admin/core/class-admin-metabox.php:1968
|
1313 |
+
msgid "Maximum Size in bytes"
|
1314 |
+
msgstr ""
|
1315 |
+
|
1316 |
+
#: includes/admin/core/class-admin-metabox.php:1968
|
1317 |
+
msgid ""
|
1318 |
+
"The maximum size for image that can be uploaded through this field. Leave "
|
1319 |
+
"empty for unlimited size."
|
1320 |
+
msgstr ""
|
1321 |
+
|
1322 |
+
#: includes/admin/core/class-admin-metabox.php:1978
|
1323 |
+
msgid "Textarea Height"
|
1324 |
+
msgstr ""
|
1325 |
+
|
1326 |
+
#: includes/admin/core/class-admin-metabox.php:1978
|
1327 |
+
msgid "The height of textarea in pixels. Default is 100 pixels"
|
1328 |
+
msgstr ""
|
1329 |
+
|
1330 |
+
#: includes/admin/core/class-admin-metabox.php:1988
|
1331 |
+
msgid "Spacing"
|
1332 |
+
msgstr ""
|
1333 |
+
|
1334 |
+
#: includes/admin/core/class-admin-metabox.php:1988
|
1335 |
+
msgid "This is the required spacing in pixels. e.g. 20px"
|
1336 |
+
msgstr ""
|
1337 |
+
|
1338 |
+
#: includes/admin/core/class-admin-metabox.php:1998
|
1339 |
+
msgid "Allow multiple selections"
|
1340 |
+
msgstr ""
|
1341 |
+
|
1342 |
+
#: includes/admin/core/class-admin-metabox.php:1998
|
1343 |
+
msgid "Enable/disable multiple selections for this field"
|
1344 |
+
msgstr ""
|
1345 |
+
|
1346 |
+
#: includes/admin/core/class-admin-metabox.php:2008
|
1347 |
+
msgid "Maximum number of selections"
|
1348 |
+
msgstr ""
|
1349 |
+
|
1350 |
+
#: includes/admin/core/class-admin-metabox.php:2008
|
1351 |
+
msgid ""
|
1352 |
+
"Enter a number here to force a maximum number of selections by user for this "
|
1353 |
+
"field"
|
1354 |
+
msgstr ""
|
1355 |
+
|
1356 |
+
#: includes/admin/core/class-admin-metabox.php:2018
|
1357 |
+
msgid "Minimum number of selections"
|
1358 |
+
msgstr ""
|
1359 |
+
|
1360 |
+
#: includes/admin/core/class-admin-metabox.php:2018
|
1361 |
+
msgid ""
|
1362 |
+
"Enter a number here to force a minimum number of selections by user for this "
|
1363 |
+
"field"
|
1364 |
+
msgstr ""
|
1365 |
+
|
1366 |
+
#: includes/admin/core/class-admin-metabox.php:2028
|
1367 |
+
msgid "Maximum number of entries"
|
1368 |
+
msgstr ""
|
1369 |
+
|
1370 |
+
#: includes/admin/core/class-admin-metabox.php:2028
|
1371 |
+
msgid "This is the max number of entries the user can add via field group."
|
1372 |
+
msgstr ""
|
1373 |
+
|
1374 |
+
#: includes/admin/core/class-admin-metabox.php:2038
|
1375 |
+
msgid "Maximum allowed words"
|
1376 |
+
msgstr ""
|
1377 |
+
|
1378 |
+
#: includes/admin/core/class-admin-metabox.php:2038
|
1379 |
+
msgid ""
|
1380 |
+
"If you want to enable a maximum number of words to be input in this "
|
1381 |
+
"textarea. Leave empty to disable this setting"
|
1382 |
+
msgstr ""
|
1383 |
+
|
1384 |
+
#: includes/admin/core/class-admin-metabox.php:2048
|
1385 |
+
msgid "Minimum Number"
|
1386 |
+
msgstr ""
|
1387 |
+
|
1388 |
+
#: includes/admin/core/class-admin-metabox.php:2048
|
1389 |
+
msgid "Minimum number that can be entered in this field"
|
1390 |
+
msgstr ""
|
1391 |
+
|
1392 |
+
#: includes/admin/core/class-admin-metabox.php:2058
|
1393 |
+
msgid "Maximum Number"
|
1394 |
+
msgstr ""
|
1395 |
+
|
1396 |
+
#: includes/admin/core/class-admin-metabox.php:2058
|
1397 |
+
msgid "Maximum number that can be entered in this field"
|
1398 |
+
msgstr ""
|
1399 |
+
|
1400 |
+
#: includes/admin/core/class-admin-metabox.php:2068
|
1401 |
+
msgid "Minimum length"
|
1402 |
+
msgstr ""
|
1403 |
+
|
1404 |
+
#: includes/admin/core/class-admin-metabox.php:2068
|
1405 |
+
msgid ""
|
1406 |
+
"If you want to enable a minimum number of characters to be input in this "
|
1407 |
+
"field. Leave empty to disable this setting"
|
1408 |
+
msgstr ""
|
1409 |
+
|
1410 |
+
#: includes/admin/core/class-admin-metabox.php:2078
|
1411 |
+
msgid "Maximum length"
|
1412 |
+
msgstr ""
|
1413 |
+
|
1414 |
+
#: includes/admin/core/class-admin-metabox.php:2078
|
1415 |
+
msgid ""
|
1416 |
+
"If you want to enable a maximum number of characters to be input in this "
|
1417 |
+
"field. Leave empty to disable this setting"
|
1418 |
+
msgstr ""
|
1419 |
+
|
1420 |
+
#: includes/admin/core/class-admin-metabox.php:2088
|
1421 |
+
msgid "Does this textarea accept HTML?"
|
1422 |
+
msgstr ""
|
1423 |
+
|
1424 |
+
#: includes/admin/core/class-admin-metabox.php:2088
|
1425 |
+
msgid "Turn on/off HTML tags for this textarea"
|
1426 |
+
msgstr ""
|
1427 |
+
|
1428 |
+
#: includes/admin/core/class-admin-metabox.php:2105
|
1429 |
+
msgid "Edit Choices"
|
1430 |
+
msgstr ""
|
1431 |
+
|
1432 |
+
#: includes/admin/core/class-admin-metabox.php:2105
|
1433 |
+
msgid ""
|
1434 |
+
"Enter one choice per line. This will represent the available choices or "
|
1435 |
+
"selections available for user."
|
1436 |
+
msgstr ""
|
1437 |
+
|
1438 |
+
#: includes/admin/core/class-admin-metabox.php:2115
|
1439 |
+
msgid ""
|
1440 |
+
"This is the title of the field for your reference in the backend. The title "
|
1441 |
+
"will not appear on the front-end of your website."
|
1442 |
+
msgstr ""
|
1443 |
+
|
1444 |
+
#: includes/admin/core/class-admin-metabox.php:2126
|
1445 |
+
msgid "Unique ID"
|
1446 |
+
msgstr ""
|
1447 |
+
|
1448 |
+
#: includes/admin/core/class-admin-metabox.php:2140
|
1449 |
+
#: includes/admin/core/class-admin-metabox.php:2146
|
1450 |
+
msgid "Meta Key"
|
1451 |
+
msgstr ""
|
1452 |
+
|
1453 |
+
#: includes/admin/core/class-admin-metabox.php:2140
|
1454 |
+
msgid ""
|
1455 |
+
"The meta key cannot be changed for duplicated fields or when editing an "
|
1456 |
+
"existing field. If you require a different meta key please create a new "
|
1457 |
+
"field."
|
1458 |
+
msgstr ""
|
1459 |
+
|
1460 |
+
#: includes/admin/core/class-admin-metabox.php:2146
|
1461 |
+
msgid ""
|
1462 |
+
"A meta key is required to store the entered info in this field in the "
|
1463 |
+
"database. The meta key should be unique to this field and be written in "
|
1464 |
+
"lowercase with an underscore ( _ ) separating words e.g country_list or "
|
1465 |
+
"job_title"
|
1466 |
+
msgstr ""
|
1467 |
+
|
1468 |
+
#: includes/admin/core/class-admin-metabox.php:2159
|
1469 |
+
msgid "Help Text"
|
1470 |
+
msgstr ""
|
1471 |
+
|
1472 |
+
#: includes/admin/core/class-admin-metabox.php:2159
|
1473 |
+
msgid ""
|
1474 |
+
"This is the text that appears in a tooltip when a user hovers over the info "
|
1475 |
+
"icon. Help text is useful for providing users with more information about "
|
1476 |
+
"what they should enter in the field. Leave blank if no help text is needed "
|
1477 |
+
"for field."
|
1478 |
+
msgstr ""
|
1479 |
+
|
1480 |
+
#: includes/admin/core/class-admin-metabox.php:2171
|
1481 |
+
msgid "Default Text"
|
1482 |
+
msgstr ""
|
1483 |
+
|
1484 |
+
#: includes/admin/core/class-admin-metabox.php:2171
|
1485 |
+
msgid "Text to display by default in this field"
|
1486 |
+
msgstr ""
|
1487 |
+
|
1488 |
+
#: includes/admin/core/class-admin-metabox.php:2177
|
1489 |
+
msgid "Default Date"
|
1490 |
+
msgstr ""
|
1491 |
+
|
1492 |
+
#: includes/admin/core/class-admin-metabox.php:2177
|
1493 |
+
#: includes/admin/core/class-admin-metabox.php:2183
|
1494 |
+
msgid ""
|
1495 |
+
"You may use all PHP compatible date formats such as: 2020-02-02, 02/02/2020, "
|
1496 |
+
"yesterday, today, tomorrow, next monday, first day of next month, +3 day"
|
1497 |
+
msgstr ""
|
1498 |
+
|
1499 |
+
#: includes/admin/core/class-admin-metabox.php:2183
|
1500 |
+
msgid "Default Time"
|
1501 |
+
msgstr ""
|
1502 |
+
|
1503 |
+
#: includes/admin/core/class-admin-metabox.php:2189
|
1504 |
+
msgid "Default Rating"
|
1505 |
+
msgstr ""
|
1506 |
+
|
1507 |
+
#: includes/admin/core/class-admin-metabox.php:2189
|
1508 |
+
msgid ""
|
1509 |
+
"If you wish the rating field to be prefilled with a number of stars, enter "
|
1510 |
+
"it here."
|
1511 |
+
msgstr ""
|
1512 |
+
|
1513 |
+
#: includes/admin/core/class-admin-metabox.php:2195
|
1514 |
+
msgid "Default Value"
|
1515 |
+
msgstr ""
|
1516 |
+
|
1517 |
+
#: includes/admin/core/class-admin-metabox.php:2195
|
1518 |
+
msgid ""
|
1519 |
+
"This option allows you to pre-fill the field with a default value prior to "
|
1520 |
+
"the user entering a value in the field. Leave blank to have no default value"
|
1521 |
+
msgstr ""
|
1522 |
+
|
1523 |
+
#: includes/admin/core/class-admin-metabox.php:2207
|
1524 |
+
msgid "Label"
|
1525 |
+
msgstr ""
|
1526 |
+
|
1527 |
+
#: includes/admin/core/class-admin-metabox.php:2207
|
1528 |
+
msgid ""
|
1529 |
+
"The field label is the text that appears above the field on your front-end "
|
1530 |
+
"form. Leave blank to not show a label above field."
|
1531 |
+
msgstr ""
|
1532 |
+
|
1533 |
+
#: includes/admin/core/class-admin-metabox.php:2217
|
1534 |
+
msgid "Placeholder"
|
1535 |
+
msgstr ""
|
1536 |
+
|
1537 |
+
#: includes/admin/core/class-admin-metabox.php:2217
|
1538 |
+
msgid ""
|
1539 |
+
"This is the text that appears within the field e.g please enter your email "
|
1540 |
+
"address. Leave blank to not show any placeholder text."
|
1541 |
+
msgstr ""
|
1542 |
+
|
1543 |
+
#: includes/admin/core/class-admin-metabox.php:2227
|
1544 |
+
msgid ""
|
1545 |
+
"Field privacy allows you to select who can view this field on the front-end. "
|
1546 |
+
"The site admin can view all fields regardless of the option set here."
|
1547 |
+
msgstr ""
|
1548 |
+
|
1549 |
+
#: includes/admin/core/class-admin-metabox.php:2230
|
1550 |
+
#: includes/class-config.php:134 includes/class-config.php:787
|
1551 |
+
msgid "Members"
|
1552 |
+
msgstr ""
|
1553 |
+
|
1554 |
+
#: includes/admin/core/class-admin-metabox.php:2231
|
1555 |
+
msgid "Only visible to profile owner and admins"
|
1556 |
+
msgstr ""
|
1557 |
+
|
1558 |
+
#: includes/admin/core/class-admin-metabox.php:2232
|
1559 |
+
msgid "Only visible to profile owner and specific roles"
|
1560 |
+
msgstr ""
|
1561 |
+
|
1562 |
+
#: includes/admin/core/class-admin-metabox.php:2233
|
1563 |
+
msgid "Only specific member roles"
|
1564 |
+
msgstr ""
|
1565 |
+
|
1566 |
+
#: includes/admin/core/class-admin-metabox.php:2250
|
1567 |
+
msgid "Select member roles"
|
1568 |
+
msgstr ""
|
1569 |
+
|
1570 |
+
#: includes/admin/core/class-admin-metabox.php:2250
|
1571 |
+
msgid "Select the member roles that can view this field on the front-end."
|
1572 |
+
msgstr ""
|
1573 |
+
|
1574 |
+
#: includes/admin/core/class-admin-metabox.php:2276
|
1575 |
+
msgid "Is this field required?"
|
1576 |
+
msgstr ""
|
1577 |
+
|
1578 |
+
#: includes/admin/core/class-admin-metabox.php:2276
|
1579 |
+
msgid ""
|
1580 |
+
"This option allows you to set whether the field must be filled in before the "
|
1581 |
+
"form can be processed."
|
1582 |
+
msgstr ""
|
1583 |
+
|
1584 |
+
#: includes/admin/core/class-admin-metabox.php:2290
|
1585 |
+
msgid "Can user edit this field?"
|
1586 |
+
msgstr ""
|
1587 |
+
|
1588 |
+
#: includes/admin/core/class-admin-metabox.php:2290
|
1589 |
+
msgid ""
|
1590 |
+
"This option allows you to set whether or not the user can edit the "
|
1591 |
+
"information in this field."
|
1592 |
+
msgstr ""
|
1593 |
+
|
1594 |
+
#: includes/admin/core/class-admin-metabox.php:2303
|
1595 |
+
msgid "Rating System"
|
1596 |
+
msgstr ""
|
1597 |
+
|
1598 |
+
#: includes/admin/core/class-admin-metabox.php:2303
|
1599 |
+
msgid "Choose whether you want a 5-stars or 10-stars ratings based here."
|
1600 |
+
msgstr ""
|
1601 |
+
|
1602 |
+
#: includes/admin/core/class-admin-metabox.php:2305
|
1603 |
+
msgid "5 stars rating system"
|
1604 |
+
msgstr ""
|
1605 |
+
|
1606 |
+
#: includes/admin/core/class-admin-metabox.php:2306
|
1607 |
+
msgid "10 stars rating system"
|
1608 |
+
msgstr ""
|
1609 |
+
|
1610 |
+
#: includes/admin/core/class-admin-metabox.php:2316
|
1611 |
+
msgid "Choices Callback"
|
1612 |
+
msgstr ""
|
1613 |
+
|
1614 |
+
#: includes/admin/core/class-admin-metabox.php:2316
|
1615 |
+
msgid "Add a callback source to retrieve choices."
|
1616 |
+
msgstr ""
|
1617 |
+
|
1618 |
+
#: includes/admin/core/class-admin-metabox.php:2327
|
1619 |
+
msgid "Parent Option"
|
1620 |
+
msgstr ""
|
1621 |
+
|
1622 |
+
#: includes/admin/core/class-admin-metabox.php:2327
|
1623 |
+
msgid "Dynamically populates the option based from selected parent option."
|
1624 |
+
msgstr ""
|
1625 |
+
|
1626 |
+
#: includes/admin/core/class-admin-metabox.php:2329
|
1627 |
+
msgid "No Selected"
|
1628 |
+
msgstr ""
|
1629 |
+
|
1630 |
+
#: includes/admin/core/class-admin-navmenu.php:23
|
1631 |
+
msgid "Display Mode"
|
1632 |
+
msgstr ""
|
1633 |
+
|
1634 |
+
#: includes/admin/core/class-admin-navmenu.php:24
|
1635 |
+
msgid "By Role"
|
1636 |
+
msgstr ""
|
1637 |
+
|
1638 |
+
#: includes/admin/core/class-admin-navmenu.php:133
|
1639 |
+
msgid "Ultimate Member Menu Settings"
|
1640 |
+
msgstr ""
|
1641 |
+
|
1642 |
+
#: includes/admin/core/class-admin-navmenu.php:137
|
1643 |
+
msgid "Who can see this menu link?"
|
1644 |
+
msgstr ""
|
1645 |
+
|
1646 |
+
#: includes/admin/core/class-admin-navmenu.php:144
|
1647 |
+
msgid "Logged Out Users"
|
1648 |
+
msgstr ""
|
1649 |
+
|
1650 |
+
#: includes/admin/core/class-admin-navmenu.php:147
|
1651 |
+
msgid "Logged In Users"
|
1652 |
+
msgstr ""
|
1653 |
+
|
1654 |
+
#: includes/admin/core/class-admin-navmenu.php:153
|
1655 |
+
msgid "Select the member roles that can see this link"
|
1656 |
+
msgstr ""
|
1657 |
+
|
1658 |
+
#: includes/admin/core/class-admin-notices.php:283
|
1659 |
+
#, php-format
|
1660 |
+
msgid ""
|
1661 |
+
"<strong>%s %s</strong> requires 2.0 extensions. You have pre 2.0 extensions "
|
1662 |
+
"installed on your site. <br /> Please update %s extensions to latest "
|
1663 |
+
"versions. For more info see this <a href=\"%s\" target=\"_blank\">doc</a>."
|
1664 |
+
msgstr ""
|
1665 |
+
|
1666 |
+
#: includes/admin/core/class-admin-notices.php:304
|
1667 |
+
#, php-format
|
1668 |
+
msgid ""
|
1669 |
+
"%s needs to create several pages (User Profiles, Account, Registration, "
|
1670 |
+
"Login, Password Reset, Logout, Member Directory) to function correctly."
|
1671 |
+
msgstr ""
|
1672 |
+
|
1673 |
+
#: includes/admin/core/class-admin-notices.php:308
|
1674 |
+
msgid "Create Pages"
|
1675 |
+
msgstr ""
|
1676 |
+
|
1677 |
+
#: includes/admin/core/class-admin-notices.php:310
|
1678 |
+
#: includes/admin/core/class-admin-notices.php:504
|
1679 |
+
msgid "No thanks"
|
1680 |
+
msgstr ""
|
1681 |
+
|
1682 |
+
#: includes/admin/core/class-admin-notices.php:330
|
1683 |
+
msgid "Ultimate Member Setup Error: User page can not be a child page."
|
1684 |
+
msgstr ""
|
1685 |
+
|
1686 |
+
#: includes/admin/core/class-admin-notices.php:340
|
1687 |
+
msgid "Ultimate Member Setup Error: Account page can not be a child page."
|
1688 |
+
msgstr ""
|
1689 |
+
|
1690 |
+
#: includes/admin/core/class-admin-notices.php:358
|
1691 |
+
#, php-format
|
1692 |
+
msgid ""
|
1693 |
+
"Exif is not enabled on your server. Mobile photo uploads will not be rotated "
|
1694 |
+
"correctly until you enable the exif extension. <a href=\"%s\">Hide this "
|
1695 |
+
"notice</a>"
|
1696 |
+
msgstr ""
|
1697 |
+
|
1698 |
+
#: includes/admin/core/class-admin-notices.php:393
|
1699 |
+
#, php-format
|
1700 |
+
msgid ""
|
1701 |
+
"Are you sure you want to delete the selected user(s)? The following users "
|
1702 |
+
"will be deleted: <p>%s</p> <strong>This cannot be undone!</strong>"
|
1703 |
+
msgstr ""
|
1704 |
+
|
1705 |
+
#: includes/admin/core/class-admin-notices.php:394
|
1706 |
+
msgid "Undo"
|
1707 |
+
msgstr ""
|
1708 |
+
|
1709 |
+
#: includes/admin/core/class-admin-notices.php:399
|
1710 |
+
msgid "Your translation files have been updated successfully."
|
1711 |
+
msgstr ""
|
1712 |
+
|
1713 |
+
#: includes/admin/core/class-admin-notices.php:403
|
1714 |
+
msgid "Your temp uploads directory is now clean."
|
1715 |
+
msgstr ""
|
1716 |
+
|
1717 |
+
#: includes/admin/core/class-admin-notices.php:407
|
1718 |
+
msgid "Your user cache is now removed."
|
1719 |
+
msgstr ""
|
1720 |
+
|
1721 |
+
#: includes/admin/core/class-admin-notices.php:411
|
1722 |
+
msgid "You have the latest updates."
|
1723 |
+
msgstr ""
|
1724 |
+
|
1725 |
+
#: includes/admin/core/class-admin-notices.php:415
|
1726 |
+
msgid "Try again later. You can run this action once daily."
|
1727 |
+
msgstr ""
|
1728 |
+
|
1729 |
+
#: includes/admin/core/class-admin-notices.php:419
|
1730 |
+
msgid "The form has been duplicated successfully."
|
1731 |
+
msgstr ""
|
1732 |
+
|
1733 |
+
#: includes/admin/core/class-admin-notices.php:423
|
1734 |
+
msgid "User has been updated."
|
1735 |
+
msgstr ""
|
1736 |
+
|
1737 |
+
#: includes/admin/core/class-admin-notices.php:427
|
1738 |
+
msgid "Users have been updated."
|
1739 |
+
msgstr ""
|
1740 |
+
|
1741 |
+
#: includes/admin/core/class-admin-notices.php:431
|
1742 |
+
msgid "Changed roles."
|
1743 |
+
msgstr ""
|
1744 |
+
|
1745 |
+
#: includes/admin/core/class-admin-notices.php:435
|
1746 |
+
msgid "Super administrators cannot be modified."
|
1747 |
+
msgstr ""
|
1748 |
+
|
1749 |
+
#: includes/admin/core/class-admin-notices.php:436
|
1750 |
+
msgid "Other users have been updated."
|
1751 |
+
msgstr ""
|
1752 |
+
|
1753 |
+
#: includes/admin/core/class-admin-notices.php:473
|
1754 |
+
#, php-format
|
1755 |
+
msgid ""
|
1756 |
+
"You have installed <strong>%s</strong> with wrong folder name. Correct "
|
1757 |
+
"folder name is <strong>\"ultimate-member\"</strong>."
|
1758 |
+
msgstr ""
|
1759 |
+
|
1760 |
+
#: includes/admin/core/class-admin-notices.php:498
|
1761 |
+
#, php-format
|
1762 |
+
msgid ""
|
1763 |
+
"Thanks for installing <strong>%s</strong>! We hope you like the plugin. To "
|
1764 |
+
"fund full-time development and support of the plugin we also sell "
|
1765 |
+
"extensions. If you subscribe to our mailing list we will send you a 20%% "
|
1766 |
+
"discount code for one of our <a href=\"%s\" target=\"_blank\">access passes</"
|
1767 |
+
"a>."
|
1768 |
+
msgstr ""
|
1769 |
+
|
1770 |
+
#: includes/admin/core/class-admin-notices.php:502
|
1771 |
+
#, php-format
|
1772 |
+
msgid "Claim 20% discount code"
|
1773 |
+
msgstr ""
|
1774 |
+
|
1775 |
+
#: includes/admin/core/class-admin-notices.php:541
|
1776 |
+
#, php-format
|
1777 |
+
msgid ""
|
1778 |
+
"There are %d inactive %s license keys for this site. This site is not "
|
1779 |
+
"authorized to get plugin updates. You can active this site on <a href=\"%s"
|
1780 |
+
"\">www.ultimatemember.com</a>."
|
1781 |
+
msgstr ""
|
1782 |
+
|
1783 |
+
#: includes/admin/core/class-admin-notices.php:548
|
1784 |
+
#, php-format
|
1785 |
+
msgid ""
|
1786 |
+
"You have %d invalid or expired license keys for %s. Please go to the <a href="
|
1787 |
+
"\"%s\">Licenses page</a> to correct this issue."
|
1788 |
+
msgstr ""
|
1789 |
+
|
1790 |
+
#: includes/admin/core/class-admin-notices.php:562
|
1791 |
+
#, php-format
|
1792 |
+
msgid ""
|
1793 |
+
"<strong>%s version %s</strong> needs to be updated to work correctly.<br /"
|
1794 |
+
">It is necessary to update the structure of the database and options that "
|
1795 |
+
"are associated with <strong>%s %s</strong>.<br />Please visit <a href=\"%s\">"
|
1796 |
+
"\"Upgrade\"</a> page and run the upgrade process."
|
1797 |
+
msgstr ""
|
1798 |
+
|
1799 |
+
#: includes/admin/core/class-admin-notices.php:566
|
1800 |
+
msgid "Upgrade Now"
|
1801 |
+
msgstr ""
|
1802 |
+
|
1803 |
+
#: includes/admin/core/class-admin-notices.php:580
|
1804 |
+
#, php-format
|
1805 |
+
msgid "<strong>%s %s</strong> Successfully Upgraded"
|
1806 |
+
msgstr ""
|
1807 |
+
|
1808 |
+
#: includes/admin/core/class-admin-notices.php:606
|
1809 |
+
#, php-format
|
1810 |
+
msgid ""
|
1811 |
+
"Hey there! It's been one month since you installed %s. How have you found "
|
1812 |
+
"the plugin so far?"
|
1813 |
+
msgstr ""
|
1814 |
+
|
1815 |
+
#: includes/admin/core/class-admin-notices.php:609
|
1816 |
+
msgid "I love it!"
|
1817 |
+
msgstr ""
|
1818 |
+
|
1819 |
+
#: includes/admin/core/class-admin-notices.php:610
|
1820 |
+
msgid "It's good but could be better"
|
1821 |
+
msgstr ""
|
1822 |
+
|
1823 |
+
#: includes/admin/core/class-admin-notices.php:611
|
1824 |
+
msgid "I don't like the plugin"
|
1825 |
+
msgstr ""
|
1826 |
+
|
1827 |
+
#: includes/admin/core/class-admin-notices.php:616
|
1828 |
+
#, php-format
|
1829 |
+
msgid ""
|
1830 |
+
"Great! We're happy to hear that you love the plugin. It would be amazing if "
|
1831 |
+
"you could let others know why you like %s by leaving a review of the plugin. "
|
1832 |
+
"This will help %s to grow and become more popular and would be massively "
|
1833 |
+
"appreciated by us!"
|
1834 |
+
msgstr ""
|
1835 |
+
|
1836 |
+
#: includes/admin/core/class-admin-notices.php:620
|
1837 |
+
msgid "Leave Review"
|
1838 |
+
msgstr ""
|
1839 |
+
|
1840 |
+
#: includes/admin/core/class-admin-notices.php:625
|
1841 |
+
msgid ""
|
1842 |
+
"We're glad to hear that you like the plugin but we would love to get your "
|
1843 |
+
"feedback so we can make the plugin better."
|
1844 |
+
msgstr ""
|
1845 |
+
|
1846 |
+
#: includes/admin/core/class-admin-notices.php:629
|
1847 |
+
#: includes/admin/core/class-admin-notices.php:638
|
1848 |
+
msgid "Provide Feedback"
|
1849 |
+
msgstr ""
|
1850 |
+
|
1851 |
+
#: includes/admin/core/class-admin-notices.php:634
|
1852 |
+
#, php-format
|
1853 |
+
msgid ""
|
1854 |
+
"We're sorry to hear that. If you're having the issue with the plugin you can "
|
1855 |
+
"create a topic on our <a href=\"%s\" target=\"_blank\">support forum</a> and "
|
1856 |
+
"we will try and help you out with the issue. Alternatively if you have an "
|
1857 |
+
"idea on how we can make the plugin better or want to tell us what you don't "
|
1858 |
+
"like about the plugin you can tell us know by giving us feedback."
|
1859 |
+
msgstr ""
|
1860 |
+
|
1861 |
+
#: includes/admin/core/class-admin-notices.php:660
|
1862 |
+
#, php-format
|
1863 |
+
msgid ""
|
1864 |
+
"<strong>%s</strong> future plans! Detailed future list is <a href=\"%s\" "
|
1865 |
+
"target=\"_blank\">here</a>"
|
1866 |
+
msgstr ""
|
1867 |
+
|
1868 |
+
#: includes/admin/core/class-admin-notices.php:676
|
1869 |
+
msgid "Wrong Data"
|
1870 |
+
msgstr ""
|
1871 |
+
|
1872 |
+
#: includes/admin/core/class-admin-settings.php:108
|
1873 |
+
#: includes/admin/core/class-admin-settings.php:117
|
1874 |
+
#, php-format
|
1875 |
+
msgid "%s page"
|
1876 |
+
msgstr ""
|
1877 |
+
|
1878 |
+
#: includes/admin/core/class-admin-settings.php:109
|
1879 |
+
msgid "Add page ID"
|
1880 |
+
msgstr ""
|
1881 |
+
|
1882 |
+
#: includes/admin/core/class-admin-settings.php:119
|
1883 |
+
msgid "Choose a page..."
|
1884 |
+
msgstr ""
|
1885 |
+
|
1886 |
+
#: includes/admin/core/class-admin-settings.php:131
|
1887 |
+
msgid "Enable profile menu"
|
1888 |
+
msgstr ""
|
1889 |
+
|
1890 |
+
#: includes/admin/core/class-admin-settings.php:155
|
1891 |
+
#: includes/admin/core/class-admin-settings.php:166
|
1892 |
+
#, php-format
|
1893 |
+
msgid "%s Tab"
|
1894 |
+
msgstr ""
|
1895 |
+
|
1896 |
+
#: includes/admin/core/class-admin-settings.php:173
|
1897 |
+
#, php-format
|
1898 |
+
msgid "Who can see %s Tab?"
|
1899 |
+
msgstr ""
|
1900 |
+
|
1901 |
+
#: includes/admin/core/class-admin-settings.php:174
|
1902 |
+
msgid "Select which users can view this tab."
|
1903 |
+
msgstr ""
|
1904 |
+
|
1905 |
+
#: includes/admin/core/class-admin-settings.php:183
|
1906 |
+
msgid "Allowed roles"
|
1907 |
+
msgstr ""
|
1908 |
+
|
1909 |
+
#: includes/admin/core/class-admin-settings.php:184
|
1910 |
+
msgid "Select the the user roles allowed to view this tab."
|
1911 |
+
msgstr ""
|
1912 |
+
|
1913 |
+
#: includes/admin/core/class-admin-settings.php:186
|
1914 |
+
msgid "Choose user roles..."
|
1915 |
+
msgstr ""
|
1916 |
+
|
1917 |
+
#: includes/admin/core/class-admin-settings.php:199
|
1918 |
+
msgid "Profile menu default tab"
|
1919 |
+
msgstr ""
|
1920 |
+
|
1921 |
+
#: includes/admin/core/class-admin-settings.php:200
|
1922 |
+
msgid "This will be the default tab on user profile page"
|
1923 |
+
msgstr ""
|
1924 |
+
|
1925 |
+
#: includes/admin/core/class-admin-settings.php:210
|
1926 |
+
msgid "Enable menu icons in desktop view"
|
1927 |
+
msgstr ""
|
1928 |
+
|
1929 |
+
#: includes/admin/core/class-admin-settings.php:263
|
1930 |
+
msgid "Global Site Access"
|
1931 |
+
msgstr ""
|
1932 |
+
|
1933 |
+
#: includes/admin/core/class-admin-settings.php:264
|
1934 |
+
msgid ""
|
1935 |
+
"Globally control the access of your site, you can have seperate restrict "
|
1936 |
+
"options per post/page by editing the desired item."
|
1937 |
+
msgstr ""
|
1938 |
+
|
1939 |
+
#: includes/admin/core/class-admin-settings.php:266
|
1940 |
+
msgid "Site accessible to Everyone"
|
1941 |
+
msgstr ""
|
1942 |
+
|
1943 |
+
#: includes/admin/core/class-admin-settings.php:267
|
1944 |
+
msgid "Site accessible to Logged In Users"
|
1945 |
+
msgstr ""
|
1946 |
+
|
1947 |
+
#: includes/admin/core/class-admin-settings.php:274
|
1948 |
+
msgid "Custom Redirect URL"
|
1949 |
+
msgstr ""
|
1950 |
+
|
1951 |
+
#: includes/admin/core/class-admin-settings.php:275
|
1952 |
+
msgid ""
|
1953 |
+
"A logged out user will be redirected to this url If he is not permitted to "
|
1954 |
+
"access the site"
|
1955 |
+
msgstr ""
|
1956 |
+
|
1957 |
+
#: includes/admin/core/class-admin-settings.php:281
|
1958 |
+
msgid "Exclude the following URLs"
|
1959 |
+
msgstr ""
|
1960 |
+
|
1961 |
+
#: includes/admin/core/class-admin-settings.php:282
|
1962 |
+
msgid ""
|
1963 |
+
"Here you can exclude URLs beside the redirect URI to be accessible to "
|
1964 |
+
"everyone"
|
1965 |
+
msgstr ""
|
1966 |
+
|
1967 |
+
#: includes/admin/core/class-admin-settings.php:283
|
1968 |
+
msgid "Add New URL"
|
1969 |
+
msgstr ""
|
1970 |
+
|
1971 |
+
#: includes/admin/core/class-admin-settings.php:290
|
1972 |
+
msgid "Allow Homepage to be accessible"
|
1973 |
+
msgstr ""
|
1974 |
+
|
1975 |
+
#: includes/admin/core/class-admin-settings.php:296
|
1976 |
+
msgid "Allow Category pages to be accessible"
|
1977 |
+
msgstr ""
|
1978 |
+
|
1979 |
+
#: includes/admin/core/class-admin-settings.php:302
|
1980 |
+
msgid "Restricted Access Message"
|
1981 |
+
msgstr ""
|
1982 |
+
|
1983 |
+
#: includes/admin/core/class-admin-settings.php:303
|
1984 |
+
msgid ""
|
1985 |
+
"This is the message shown to users that do not have permission to view the "
|
1986 |
+
"content"
|
1987 |
+
msgstr ""
|
1988 |
+
|
1989 |
+
#: includes/admin/core/class-admin-settings.php:312
|
1990 |
+
msgid "Allow Gutenberg Blocks restriction options"
|
1991 |
+
msgstr ""
|
1992 |
+
|
1993 |
+
#: includes/admin/core/class-admin-settings.php:317
|
1994 |
+
msgid "Restricted Block Message"
|
1995 |
+
msgstr ""
|
1996 |
+
|
1997 |
+
#: includes/admin/core/class-admin-settings.php:318
|
1998 |
+
msgid ""
|
1999 |
+
"This is the message shown to users that do not have permission to view the "
|
2000 |
+
"block's content"
|
2001 |
+
msgstr ""
|
2002 |
+
|
2003 |
+
#: includes/admin/core/class-admin-settings.php:336
|
2004 |
+
msgid "Restricted Access to Posts"
|
2005 |
+
msgstr ""
|
2006 |
+
|
2007 |
+
#: includes/admin/core/class-admin-settings.php:337
|
2008 |
+
msgid "Restriction content of the current Posts"
|
2009 |
+
msgstr ""
|
2010 |
+
|
2011 |
+
#: includes/admin/core/class-admin-settings.php:346
|
2012 |
+
msgid "Restricted Access to Taxonomies"
|
2013 |
+
msgstr ""
|
2014 |
+
|
2015 |
+
#: includes/admin/core/class-admin-settings.php:347
|
2016 |
+
msgid "Restriction content of the current Taxonomies"
|
2017 |
+
msgstr ""
|
2018 |
+
|
2019 |
+
#: includes/admin/core/class-admin-settings.php:377
|
2020 |
+
msgid "General"
|
2021 |
+
msgstr ""
|
2022 |
+
|
2023 |
+
#: includes/admin/core/class-admin-settings.php:380
|
2024 |
+
msgid "Pages"
|
2025 |
+
msgstr ""
|
2026 |
+
|
2027 |
+
#: includes/admin/core/class-admin-settings.php:384
|
2028 |
+
#: includes/admin/templates/dashboard/users.php:15
|
2029 |
+
msgid "Users"
|
2030 |
+
msgstr ""
|
2031 |
+
|
2032 |
+
#: includes/admin/core/class-admin-settings.php:390
|
2033 |
+
msgid "Profile Permalink Base"
|
2034 |
+
msgstr ""
|
2035 |
+
|
2036 |
+
#: includes/admin/core/class-admin-settings.php:391
|
2037 |
+
msgid ""
|
2038 |
+
"Here you can control the permalink structure of the user profile URL "
|
2039 |
+
"globally e.g. "
|
2040 |
+
msgstr ""
|
2041 |
+
|
2042 |
+
#: includes/admin/core/class-admin-settings.php:393
|
2043 |
+
#: includes/admin/core/class-admin-settings.php:410
|
2044 |
+
#: includes/core/class-builtin.php:674 includes/core/class-builtin.php:677
|
2045 |
+
#: includes/core/class-member-directory.php:242
|
2046 |
+
msgid "Username"
|
2047 |
+
msgstr ""
|
2048 |
+
|
2049 |
+
#: includes/admin/core/class-admin-settings.php:394
|
2050 |
+
msgid "First and Last Name with '.'"
|
2051 |
+
msgstr ""
|
2052 |
+
|
2053 |
+
#: includes/admin/core/class-admin-settings.php:395
|
2054 |
+
msgid "First and Last Name with '-'"
|
2055 |
+
msgstr ""
|
2056 |
+
|
2057 |
+
#: includes/admin/core/class-admin-settings.php:396
|
2058 |
+
msgid "First and Last Name with '+'"
|
2059 |
+
msgstr ""
|
2060 |
+
|
2061 |
+
#: includes/admin/core/class-admin-settings.php:397
|
2062 |
+
msgid "User ID"
|
2063 |
+
msgstr ""
|
2064 |
+
|
2065 |
+
#: includes/admin/core/class-admin-settings.php:399
|
2066 |
+
#: includes/admin/core/class-admin-settings.php:418
|
2067 |
+
msgid "Select..."
|
2068 |
+
msgstr ""
|
2069 |
+
|
2070 |
+
#: includes/admin/core/class-admin-settings.php:405
|
2071 |
+
msgid "User Display Name"
|
2072 |
+
msgstr ""
|
2073 |
+
|
2074 |
+
#: includes/admin/core/class-admin-settings.php:406
|
2075 |
+
msgid ""
|
2076 |
+
"This is the name that will be displayed for users on the front end of your "
|
2077 |
+
"site. Default setting uses first/last name as display name if it exists"
|
2078 |
+
msgstr ""
|
2079 |
+
|
2080 |
+
#: includes/admin/core/class-admin-settings.php:408
|
2081 |
+
msgid "Default WP Display Name"
|
2082 |
+
msgstr ""
|
2083 |
+
|
2084 |
+
#: includes/admin/core/class-admin-settings.php:409
|
2085 |
+
#: includes/core/class-builtin.php:732 includes/core/class-builtin.php:735
|
2086 |
+
msgid "Nickname"
|
2087 |
+
msgstr ""
|
2088 |
+
|
2089 |
+
#: includes/admin/core/class-admin-settings.php:411
|
2090 |
+
msgid "First name & last name"
|
2091 |
+
msgstr ""
|
2092 |
+
|
2093 |
+
#: includes/admin/core/class-admin-settings.php:412
|
2094 |
+
msgid "Last name & first name"
|
2095 |
+
msgstr ""
|
2096 |
+
|
2097 |
+
#: includes/admin/core/class-admin-settings.php:413
|
2098 |
+
msgid "First name & first initial of last name"
|
2099 |
+
msgstr ""
|
2100 |
+
|
2101 |
+
#: includes/admin/core/class-admin-settings.php:414
|
2102 |
+
msgid "First initial of first name & last name"
|
2103 |
+
msgstr ""
|
2104 |
+
|
2105 |
+
#: includes/admin/core/class-admin-settings.php:415
|
2106 |
+
msgid "First name only"
|
2107 |
+
msgstr ""
|
2108 |
+
|
2109 |
+
#: includes/admin/core/class-admin-settings.php:416
|
2110 |
+
msgid "Custom field(s)"
|
2111 |
+
msgstr ""
|
2112 |
+
|
2113 |
+
#: includes/admin/core/class-admin-settings.php:423
|
2114 |
+
msgid "Display Name Custom Field(s)"
|
2115 |
+
msgstr ""
|
2116 |
+
|
2117 |
+
#: includes/admin/core/class-admin-settings.php:424
|
2118 |
+
msgid ""
|
2119 |
+
"Specify the custom field meta key or custom fields seperated by comma that "
|
2120 |
+
"you want to use to display users name on the frontend of your site"
|
2121 |
+
msgstr ""
|
2122 |
+
|
2123 |
+
#: includes/admin/core/class-admin-settings.php:430
|
2124 |
+
msgid "Automatically redirect author page to their profile?"
|
2125 |
+
msgstr ""
|
2126 |
+
|
2127 |
+
#: includes/admin/core/class-admin-settings.php:431
|
2128 |
+
msgid ""
|
2129 |
+
"If enabled, author pages will automatically redirect to the user's profile "
|
2130 |
+
"page"
|
2131 |
+
msgstr ""
|
2132 |
+
|
2133 |
+
#: includes/admin/core/class-admin-settings.php:436
|
2134 |
+
msgid "Enable Members Directory"
|
2135 |
+
msgstr ""
|
2136 |
+
|
2137 |
+
#: includes/admin/core/class-admin-settings.php:437
|
2138 |
+
msgid "Control whether to enable or disable member directories on this site"
|
2139 |
+
msgstr ""
|
2140 |
+
|
2141 |
+
#: includes/admin/core/class-admin-settings.php:442
|
2142 |
+
msgid "Use Gravatars?"
|
2143 |
+
msgstr ""
|
2144 |
+
|
2145 |
+
#: includes/admin/core/class-admin-settings.php:443
|
2146 |
+
msgid ""
|
2147 |
+
"Do you want to use gravatars instead of the default plugin profile photo (If "
|
2148 |
+
"the user did not upload a custom profile photo / avatar)"
|
2149 |
+
msgstr ""
|
2150 |
+
|
2151 |
+
#: includes/admin/core/class-admin-settings.php:448
|
2152 |
+
msgid "Use Gravatar builtin image"
|
2153 |
+
msgstr ""
|
2154 |
+
|
2155 |
+
#: includes/admin/core/class-admin-settings.php:449
|
2156 |
+
msgid ""
|
2157 |
+
"Gravatar has a number of built in options which you can also use as defaults"
|
2158 |
+
msgstr ""
|
2159 |
+
|
2160 |
+
#: includes/admin/core/class-admin-settings.php:452
|
2161 |
+
msgid "404 ( File Not Found response )"
|
2162 |
+
msgstr ""
|
2163 |
+
|
2164 |
+
#: includes/admin/core/class-admin-settings.php:453
|
2165 |
+
msgid "Mystery Man"
|
2166 |
+
msgstr ""
|
2167 |
+
|
2168 |
+
#: includes/admin/core/class-admin-settings.php:454
|
2169 |
+
msgid "Identicon"
|
2170 |
+
msgstr ""
|
2171 |
+
|
2172 |
+
#: includes/admin/core/class-admin-settings.php:455
|
2173 |
+
msgid "Monsterid"
|
2174 |
+
msgstr ""
|
2175 |
+
|
2176 |
+
#: includes/admin/core/class-admin-settings.php:456
|
2177 |
+
msgid "Wavatar"
|
2178 |
+
msgstr ""
|
2179 |
+
|
2180 |
+
#: includes/admin/core/class-admin-settings.php:457
|
2181 |
+
msgid "Retro"
|
2182 |
+
msgstr ""
|
2183 |
+
|
2184 |
+
#: includes/admin/core/class-admin-settings.php:458
|
2185 |
+
msgid "Blank ( a transparent PNG image )"
|
2186 |
+
msgstr ""
|
2187 |
+
|
2188 |
+
#: includes/admin/core/class-admin-settings.php:466
|
2189 |
+
msgid "Use Default plugin avatar as Gravatar's Default avatar"
|
2190 |
+
msgstr ""
|
2191 |
+
|
2192 |
+
#: includes/admin/core/class-admin-settings.php:467
|
2193 |
+
msgid ""
|
2194 |
+
"Do you want to use the plugin default avatar instead of the gravatar default "
|
2195 |
+
"photo (If the user did not upload a custom profile photo / avatar)"
|
2196 |
+
msgstr ""
|
2197 |
+
|
2198 |
+
#: includes/admin/core/class-admin-settings.php:473
|
2199 |
+
msgid "Require a strong password? (when user resets password only)"
|
2200 |
+
msgstr ""
|
2201 |
+
|
2202 |
+
#: includes/admin/core/class-admin-settings.php:474
|
2203 |
+
msgid ""
|
2204 |
+
"Enable or disable a strong password rules on password reset and change "
|
2205 |
+
"procedure"
|
2206 |
+
msgstr ""
|
2207 |
+
|
2208 |
+
#: includes/admin/core/class-admin-settings.php:479
|
2209 |
+
#: includes/class-config.php:136 includes/class-config.php:789
|
2210 |
+
#: includes/core/class-account.php:97
|
2211 |
+
msgid "Account"
|
2212 |
+
msgstr ""
|
2213 |
+
|
2214 |
+
#: includes/admin/core/class-admin-settings.php:484
|
2215 |
+
msgid "Password Account Tab"
|
2216 |
+
msgstr ""
|
2217 |
+
|
2218 |
+
#: includes/admin/core/class-admin-settings.php:490
|
2219 |
+
msgid "Privacy Account Tab"
|
2220 |
+
msgstr ""
|
2221 |
+
|
2222 |
+
#: includes/admin/core/class-admin-settings.php:491
|
2223 |
+
msgid "Enable/disable the Privacy account tab in account page"
|
2224 |
+
msgstr ""
|
2225 |
+
|
2226 |
+
#: includes/admin/core/class-admin-settings.php:496
|
2227 |
+
msgid "Notifications Account Tab"
|
2228 |
+
msgstr ""
|
2229 |
+
|
2230 |
+
#: includes/admin/core/class-admin-settings.php:497
|
2231 |
+
msgid "Enable/disable the Notifications account tab in account page"
|
2232 |
+
msgstr ""
|
2233 |
+
|
2234 |
+
#: includes/admin/core/class-admin-settings.php:502
|
2235 |
+
msgid "Delete Account Tab"
|
2236 |
+
msgstr ""
|
2237 |
+
|
2238 |
+
#: includes/admin/core/class-admin-settings.php:503
|
2239 |
+
msgid "Enable/disable the Delete account tab in account page"
|
2240 |
+
msgstr ""
|
2241 |
+
|
2242 |
+
#: includes/admin/core/class-admin-settings.php:508
|
2243 |
+
msgid "Account Deletion Custom Text"
|
2244 |
+
msgstr ""
|
2245 |
+
|
2246 |
+
#: includes/admin/core/class-admin-settings.php:509
|
2247 |
+
msgid ""
|
2248 |
+
"This is custom text that will be displayed to users before they delete their "
|
2249 |
+
"accounts from your site"
|
2250 |
+
msgstr ""
|
2251 |
+
|
2252 |
+
#: includes/admin/core/class-admin-settings.php:517
|
2253 |
+
msgid "Add a First & Last Name fields"
|
2254 |
+
msgstr ""
|
2255 |
+
|
2256 |
+
#: includes/admin/core/class-admin-settings.php:518
|
2257 |
+
msgid ""
|
2258 |
+
"Whether to enable these fields on the user account page by default or hide "
|
2259 |
+
"them."
|
2260 |
+
msgstr ""
|
2261 |
+
|
2262 |
+
#: includes/admin/core/class-admin-settings.php:523
|
2263 |
+
msgid "Disable First & Last Name fields"
|
2264 |
+
msgstr ""
|
2265 |
+
|
2266 |
+
#: includes/admin/core/class-admin-settings.php:524
|
2267 |
+
msgid ""
|
2268 |
+
"Whether to allow users changing their first and last name in account page."
|
2269 |
+
msgstr ""
|
2270 |
+
|
2271 |
+
#: includes/admin/core/class-admin-settings.php:530
|
2272 |
+
msgid "Require First & Last Name"
|
2273 |
+
msgstr ""
|
2274 |
+
|
2275 |
+
#: includes/admin/core/class-admin-settings.php:531
|
2276 |
+
msgid "Require first and last name?"
|
2277 |
+
msgstr ""
|
2278 |
+
|
2279 |
+
#: includes/admin/core/class-admin-settings.php:537
|
2280 |
+
msgid "Allow users to change e-mail"
|
2281 |
+
msgstr ""
|
2282 |
+
|
2283 |
+
#: includes/admin/core/class-admin-settings.php:538
|
2284 |
+
msgid "Whether to allow users changing their email in account page."
|
2285 |
+
msgstr ""
|
2286 |
+
|
2287 |
+
#: includes/admin/core/class-admin-settings.php:543
|
2288 |
+
msgid "Password is required?"
|
2289 |
+
msgstr ""
|
2290 |
+
|
2291 |
+
#: includes/admin/core/class-admin-settings.php:544
|
2292 |
+
msgid "Password is required to save account data."
|
2293 |
+
msgstr ""
|
2294 |
+
|
2295 |
+
#: includes/admin/core/class-admin-settings.php:549
|
2296 |
+
msgid "Allow users to hide their profiles from directory"
|
2297 |
+
msgstr ""
|
2298 |
+
|
2299 |
+
#: includes/admin/core/class-admin-settings.php:550
|
2300 |
+
msgid ""
|
2301 |
+
"Whether to allow users changing their profile visibility from member "
|
2302 |
+
"directory in account page."
|
2303 |
+
msgstr ""
|
2304 |
+
|
2305 |
+
#: includes/admin/core/class-admin-settings.php:555
|
2306 |
+
msgid "Require a strong password?"
|
2307 |
+
msgstr ""
|
2308 |
+
|
2309 |
+
#: includes/admin/core/class-admin-settings.php:556
|
2310 |
+
msgid ""
|
2311 |
+
"Enable or disable a strong password rules on account page / change password "
|
2312 |
+
"tab"
|
2313 |
+
msgstr ""
|
2314 |
+
|
2315 |
+
#: includes/admin/core/class-admin-settings.php:561
|
2316 |
+
msgid "Uploads"
|
2317 |
+
msgstr ""
|
2318 |
+
|
2319 |
+
#: includes/admin/core/class-admin-settings.php:567
|
2320 |
+
msgid "Profile Photo Maximum File Size (bytes)"
|
2321 |
+
msgstr ""
|
2322 |
+
|
2323 |
+
#: includes/admin/core/class-admin-settings.php:568
|
2324 |
+
msgid "Sets a maximum size for the uploaded photo"
|
2325 |
+
msgstr ""
|
2326 |
+
|
2327 |
+
#: includes/admin/core/class-admin-settings.php:575
|
2328 |
+
msgid "Cover Photo Maximum File Size (bytes)"
|
2329 |
+
msgstr ""
|
2330 |
+
|
2331 |
+
#: includes/admin/core/class-admin-settings.php:576
|
2332 |
+
msgid "Sets a maximum size for the uploaded cover"
|
2333 |
+
msgstr ""
|
2334 |
+
|
2335 |
+
#: includes/admin/core/class-admin-settings.php:582
|
2336 |
+
msgid "Profile Photo Thumbnail Sizes (px)"
|
2337 |
+
msgstr ""
|
2338 |
+
|
2339 |
+
#: includes/admin/core/class-admin-settings.php:583
|
2340 |
+
msgid ""
|
2341 |
+
"Here you can define which thumbnail sizes will be created for each profile "
|
2342 |
+
"photo upload."
|
2343 |
+
msgstr ""
|
2344 |
+
|
2345 |
+
#: includes/admin/core/class-admin-settings.php:585
|
2346 |
+
#: includes/admin/core/class-admin-settings.php:595
|
2347 |
+
msgid "Add New Size"
|
2348 |
+
msgstr ""
|
2349 |
+
|
2350 |
+
#: includes/admin/core/class-admin-settings.php:592
|
2351 |
+
msgid "Cover Photo Thumbnail Sizes (px)"
|
2352 |
+
msgstr ""
|
2353 |
+
|
2354 |
+
#: includes/admin/core/class-admin-settings.php:593
|
2355 |
+
msgid ""
|
2356 |
+
"Here you can define which thumbnail sizes will be created for each cover "
|
2357 |
+
"photo upload."
|
2358 |
+
msgstr ""
|
2359 |
+
|
2360 |
+
#: includes/admin/core/class-admin-settings.php:603
|
2361 |
+
msgid "Image Quality"
|
2362 |
+
msgstr ""
|
2363 |
+
|
2364 |
+
#: includes/admin/core/class-admin-settings.php:604
|
2365 |
+
msgid ""
|
2366 |
+
"Quality is used to determine quality of image uploads, and ranges from 0 "
|
2367 |
+
"(worst quality, smaller file) to 100 (best quality, biggest file). The "
|
2368 |
+
"default range is 60."
|
2369 |
+
msgstr ""
|
2370 |
+
|
2371 |
+
#: includes/admin/core/class-admin-settings.php:611
|
2372 |
+
msgid "Image Upload Maximum Width (px)"
|
2373 |
+
msgstr ""
|
2374 |
+
|
2375 |
+
#: includes/admin/core/class-admin-settings.php:612
|
2376 |
+
msgid ""
|
2377 |
+
"Any image upload above this width will be resized to this limit "
|
2378 |
+
"automatically."
|
2379 |
+
msgstr ""
|
2380 |
+
|
2381 |
+
#: includes/admin/core/class-admin-settings.php:619
|
2382 |
+
msgid "Cover Photo Minimum Width (px)"
|
2383 |
+
msgstr ""
|
2384 |
+
|
2385 |
+
#: includes/admin/core/class-admin-settings.php:620
|
2386 |
+
msgid "This will be the minimum width for cover photo uploads"
|
2387 |
+
msgstr ""
|
2388 |
+
|
2389 |
+
#: includes/admin/core/class-admin-settings.php:627
|
2390 |
+
msgid "Access"
|
2391 |
+
msgstr ""
|
2392 |
+
|
2393 |
+
#: includes/admin/core/class-admin-settings.php:630
|
2394 |
+
msgid "Restriction Content"
|
2395 |
+
msgstr ""
|
2396 |
+
|
2397 |
+
#: includes/admin/core/class-admin-settings.php:634
|
2398 |
+
msgid "Other"
|
2399 |
+
msgstr ""
|
2400 |
+
|
2401 |
+
#: includes/admin/core/class-admin-settings.php:639
|
2402 |
+
msgid "Enable the Reset Password Limit?"
|
2403 |
+
msgstr ""
|
2404 |
+
|
2405 |
+
#: includes/admin/core/class-admin-settings.php:644
|
2406 |
+
msgid "Reset Password Limit"
|
2407 |
+
msgstr ""
|
2408 |
+
|
2409 |
+
#: includes/admin/core/class-admin-settings.php:645
|
2410 |
+
msgid ""
|
2411 |
+
"Set the maximum reset password limit. If reached the maximum limit, user "
|
2412 |
+
"will be locked from using this."
|
2413 |
+
msgstr ""
|
2414 |
+
|
2415 |
+
#: includes/admin/core/class-admin-settings.php:653
|
2416 |
+
msgid "Blocked Email Addresses"
|
2417 |
+
msgstr ""
|
2418 |
+
|
2419 |
+
#: includes/admin/core/class-admin-settings.php:654
|
2420 |
+
msgid ""
|
2421 |
+
"This will block the specified e-mail addresses from being able to sign up or "
|
2422 |
+
"sign in to your site. To block an entire domain, use something like *@domain."
|
2423 |
+
"com"
|
2424 |
+
msgstr ""
|
2425 |
+
|
2426 |
+
#: includes/admin/core/class-admin-settings.php:659
|
2427 |
+
msgid "Blacklist Words"
|
2428 |
+
msgstr ""
|
2429 |
+
|
2430 |
+
#: includes/admin/core/class-admin-settings.php:660
|
2431 |
+
msgid ""
|
2432 |
+
"This option lets you specify blacklist of words to prevent anyone from "
|
2433 |
+
"signing up with such a word as their username"
|
2434 |
+
msgstr ""
|
2435 |
+
|
2436 |
+
#: includes/admin/core/class-admin-settings.php:667
|
2437 |
+
#: includes/admin/core/list-tables/emails-list-table.php:300
|
2438 |
+
msgid "Email"
|
2439 |
+
msgstr ""
|
2440 |
+
|
2441 |
+
#: includes/admin/core/class-admin-settings.php:672
|
2442 |
+
msgid "Admin E-mail Address"
|
2443 |
+
msgstr ""
|
2444 |
+
|
2445 |
+
#: includes/admin/core/class-admin-settings.php:673
|
2446 |
+
#: includes/admin/core/class-admin-settings.php:685
|
2447 |
+
msgid "e.g. admin@companyname.com"
|
2448 |
+
msgstr ""
|
2449 |
+
|
2450 |
+
#: includes/admin/core/class-admin-settings.php:678
|
2451 |
+
msgid "Mail appears from"
|
2452 |
+
msgstr ""
|
2453 |
+
|
2454 |
+
#: includes/admin/core/class-admin-settings.php:679
|
2455 |
+
msgid "e.g. Site Name"
|
2456 |
+
msgstr ""
|
2457 |
+
|
2458 |
+
#: includes/admin/core/class-admin-settings.php:684
|
2459 |
+
msgid "Mail appears from address"
|
2460 |
+
msgstr ""
|
2461 |
+
|
2462 |
+
#: includes/admin/core/class-admin-settings.php:690
|
2463 |
+
msgid "Use HTML for E-mails?"
|
2464 |
+
msgstr ""
|
2465 |
+
|
2466 |
+
#: includes/admin/core/class-admin-settings.php:691
|
2467 |
+
msgid ""
|
2468 |
+
"If you plan use e-mails with HTML, please make sure that this option is "
|
2469 |
+
"enabled. Otherwise, HTML will be displayed as plain text."
|
2470 |
+
msgstr ""
|
2471 |
+
|
2472 |
+
#: includes/admin/core/class-admin-settings.php:696
|
2473 |
+
msgid "Appearance"
|
2474 |
+
msgstr ""
|
2475 |
+
|
2476 |
+
#: includes/admin/core/class-admin-settings.php:699
|
2477 |
+
msgid "Profile"
|
2478 |
+
msgstr ""
|
2479 |
+
|
2480 |
+
#: includes/admin/core/class-admin-settings.php:704
|
2481 |
+
msgid "Profile Default Template"
|
2482 |
+
msgstr ""
|
2483 |
+
|
2484 |
+
#: includes/admin/core/class-admin-settings.php:705
|
2485 |
+
msgid "This will be the default template to output profile"
|
2486 |
+
msgstr ""
|
2487 |
+
|
2488 |
+
#: includes/admin/core/class-admin-settings.php:713
|
2489 |
+
msgid "Profile Maximum Width"
|
2490 |
+
msgstr ""
|
2491 |
+
|
2492 |
+
#: includes/admin/core/class-admin-settings.php:715
|
2493 |
+
#: includes/admin/core/class-admin-settings.php:924
|
2494 |
+
#: includes/admin/core/class-admin-settings.php:1014
|
2495 |
+
msgid "The maximum width this shortcode can take from the page width"
|
2496 |
+
msgstr ""
|
2497 |
+
|
2498 |
+
#: includes/admin/core/class-admin-settings.php:722
|
2499 |
+
msgid "Profile Area Maximum Width"
|
2500 |
+
msgstr ""
|
2501 |
+
|
2502 |
+
#: includes/admin/core/class-admin-settings.php:724
|
2503 |
+
#: includes/admin/templates/form/profile_customize.php:59
|
2504 |
+
msgid ""
|
2505 |
+
"The maximum width of the profile area inside profile (below profile header)"
|
2506 |
+
msgstr ""
|
2507 |
+
|
2508 |
+
#: includes/admin/core/class-admin-settings.php:730
|
2509 |
+
msgid "Profile Field Icons"
|
2510 |
+
msgstr ""
|
2511 |
+
|
2512 |
+
#: includes/admin/core/class-admin-settings.php:731
|
2513 |
+
msgid "This is applicable for edit mode only"
|
2514 |
+
msgstr ""
|
2515 |
+
|
2516 |
+
#: includes/admin/core/class-admin-settings.php:734
|
2517 |
+
#: includes/admin/core/class-admin-settings.php:947
|
2518 |
+
#: includes/admin/core/class-admin-settings.php:1037
|
2519 |
+
#: includes/admin/templates/form/login_customize.php:43
|
2520 |
+
#: includes/admin/templates/form/profile_customize.php:70
|
2521 |
+
#: includes/admin/templates/form/register_customize.php:58
|
2522 |
+
msgid "Show inside text field"
|
2523 |
+
msgstr ""
|
2524 |
+
|
2525 |
+
#: includes/admin/core/class-admin-settings.php:735
|
2526 |
+
#: includes/admin/core/class-admin-settings.php:948
|
2527 |
+
#: includes/admin/core/class-admin-settings.php:1038
|
2528 |
+
#: includes/admin/templates/form/login_customize.php:44
|
2529 |
+
#: includes/admin/templates/form/profile_customize.php:71
|
2530 |
+
#: includes/admin/templates/form/register_customize.php:59
|
2531 |
+
msgid "Show with label"
|
2532 |
+
msgstr ""
|
2533 |
+
|
2534 |
+
#: includes/admin/core/class-admin-settings.php:736
|
2535 |
+
#: includes/admin/core/class-admin-settings.php:949
|
2536 |
+
#: includes/admin/core/class-admin-settings.php:1039
|
2537 |
+
#: includes/admin/templates/form/login_customize.php:45
|
2538 |
+
#: includes/admin/templates/form/profile_customize.php:72
|
2539 |
+
#: includes/admin/templates/form/register_customize.php:60
|
2540 |
+
msgid "Turn off"
|
2541 |
+
msgstr ""
|
2542 |
+
|
2543 |
+
#: includes/admin/core/class-admin-settings.php:743
|
2544 |
+
msgid "Profile Primary Button Text"
|
2545 |
+
msgstr ""
|
2546 |
+
|
2547 |
+
#: includes/admin/core/class-admin-settings.php:745
|
2548 |
+
msgid "The text that is used for updating profile button"
|
2549 |
+
msgstr ""
|
2550 |
+
|
2551 |
+
#: includes/admin/core/class-admin-settings.php:751
|
2552 |
+
msgid "Profile Secondary Button"
|
2553 |
+
msgstr ""
|
2554 |
+
|
2555 |
+
#: includes/admin/core/class-admin-settings.php:753
|
2556 |
+
#: includes/admin/core/class-admin-settings.php:966
|
2557 |
+
#: includes/admin/core/class-admin-settings.php:1056
|
2558 |
+
msgid "Switch on/off the secondary button display in the form"
|
2559 |
+
msgstr ""
|
2560 |
+
|
2561 |
+
#: includes/admin/core/class-admin-settings.php:758
|
2562 |
+
msgid "Profile Secondary Button Text"
|
2563 |
+
msgstr ""
|
2564 |
+
|
2565 |
+
#: includes/admin/core/class-admin-settings.php:760
|
2566 |
+
msgid "The text that is used for cancelling update profile button"
|
2567 |
+
msgstr ""
|
2568 |
+
|
2569 |
+
#: includes/admin/core/class-admin-settings.php:767
|
2570 |
+
msgid "Default Profile Photo"
|
2571 |
+
msgstr ""
|
2572 |
+
|
2573 |
+
#: includes/admin/core/class-admin-settings.php:768
|
2574 |
+
msgid ""
|
2575 |
+
"You can change the default profile picture globally here. Please make sure "
|
2576 |
+
"that the photo is 300x300px."
|
2577 |
+
msgstr ""
|
2578 |
+
|
2579 |
+
#: includes/admin/core/class-admin-settings.php:769
|
2580 |
+
msgid "Select Default Profile Photo"
|
2581 |
+
msgstr ""
|
2582 |
+
|
2583 |
+
#: includes/admin/core/class-admin-settings.php:779
|
2584 |
+
msgid "Default Cover Photo"
|
2585 |
+
msgstr ""
|
2586 |
+
|
2587 |
+
#: includes/admin/core/class-admin-settings.php:780
|
2588 |
+
msgid ""
|
2589 |
+
"You can change the default cover photo globally here. Please make sure that "
|
2590 |
+
"the default cover is large enough and respects the ratio you are using for "
|
2591 |
+
"cover photos."
|
2592 |
+
msgstr ""
|
2593 |
+
|
2594 |
+
#: includes/admin/core/class-admin-settings.php:781
|
2595 |
+
msgid "Select Default Cover Photo"
|
2596 |
+
msgstr ""
|
2597 |
+
|
2598 |
+
#: includes/admin/core/class-admin-settings.php:786
|
2599 |
+
#: includes/admin/templates/form/profile_customize.php:140
|
2600 |
+
msgid "Disable Profile Photo Upload"
|
2601 |
+
msgstr ""
|
2602 |
+
|
2603 |
+
#: includes/admin/core/class-admin-settings.php:787
|
2604 |
+
#: includes/admin/templates/form/profile_customize.php:141
|
2605 |
+
msgid "Switch on/off the profile photo uploader"
|
2606 |
+
msgstr ""
|
2607 |
+
|
2608 |
+
#: includes/admin/core/class-admin-settings.php:793
|
2609 |
+
#: includes/admin/templates/form/profile_customize.php:152
|
2610 |
+
msgid "Profile Photo Size"
|
2611 |
+
msgstr ""
|
2612 |
+
|
2613 |
+
#: includes/admin/core/class-admin-settings.php:796
|
2614 |
+
msgid ""
|
2615 |
+
"The global default of profile photo size. This can be overridden by "
|
2616 |
+
"individual form settings"
|
2617 |
+
msgstr ""
|
2618 |
+
|
2619 |
+
#: includes/admin/core/class-admin-settings.php:802
|
2620 |
+
msgid "Profile Cover Photos"
|
2621 |
+
msgstr ""
|
2622 |
+
|
2623 |
+
#: includes/admin/core/class-admin-settings.php:804
|
2624 |
+
msgid "Switch on/off the profile cover photos"
|
2625 |
+
msgstr ""
|
2626 |
+
|
2627 |
+
#: includes/admin/core/class-admin-settings.php:809
|
2628 |
+
msgid "Profile Cover Size"
|
2629 |
+
msgstr ""
|
2630 |
+
|
2631 |
+
#: includes/admin/core/class-admin-settings.php:812
|
2632 |
+
msgid ""
|
2633 |
+
"The global default width of cover photo size. This can be overridden by "
|
2634 |
+
"individual form settings"
|
2635 |
+
msgstr ""
|
2636 |
+
|
2637 |
+
#: includes/admin/core/class-admin-settings.php:819
|
2638 |
+
msgid "Profile Cover Ratio"
|
2639 |
+
msgstr ""
|
2640 |
+
|
2641 |
+
#: includes/admin/core/class-admin-settings.php:820
|
2642 |
+
msgid "Choose global ratio for cover photos of profiles"
|
2643 |
+
msgstr ""
|
2644 |
+
|
2645 |
+
#: includes/admin/core/class-admin-settings.php:834
|
2646 |
+
msgid "Profile Header Meta Text Icon"
|
2647 |
+
msgstr ""
|
2648 |
+
|
2649 |
+
#: includes/admin/core/class-admin-settings.php:836
|
2650 |
+
msgid "Display field icons for related user meta fields in header or not"
|
2651 |
+
msgstr ""
|
2652 |
+
|
2653 |
+
#: includes/admin/core/class-admin-settings.php:841
|
2654 |
+
msgid "Show display name in profile header"
|
2655 |
+
msgstr ""
|
2656 |
+
|
2657 |
+
#: includes/admin/core/class-admin-settings.php:843
|
2658 |
+
msgid "Switch on/off the user name on profile header"
|
2659 |
+
msgstr ""
|
2660 |
+
|
2661 |
+
#: includes/admin/core/class-admin-settings.php:848
|
2662 |
+
msgid "Show social links in profile header"
|
2663 |
+
msgstr ""
|
2664 |
+
|
2665 |
+
#: includes/admin/core/class-admin-settings.php:850
|
2666 |
+
msgid "Switch on/off the social links on profile header"
|
2667 |
+
msgstr ""
|
2668 |
+
|
2669 |
+
#: includes/admin/core/class-admin-settings.php:855
|
2670 |
+
msgid "Show user description in header"
|
2671 |
+
msgstr ""
|
2672 |
+
|
2673 |
+
#: includes/admin/core/class-admin-settings.php:857
|
2674 |
+
msgid "Switch on/off the user description on profile header"
|
2675 |
+
msgstr ""
|
2676 |
+
|
2677 |
+
#: includes/admin/core/class-admin-settings.php:862
|
2678 |
+
msgid "Enable HTML support for user description"
|
2679 |
+
msgstr ""
|
2680 |
+
|
2681 |
+
#: includes/admin/core/class-admin-settings.php:863
|
2682 |
+
msgid ""
|
2683 |
+
"Switch on/off to enable/disable support for html tags on user description."
|
2684 |
+
msgstr ""
|
2685 |
+
|
2686 |
+
#: includes/admin/core/class-admin-settings.php:868
|
2687 |
+
msgid "User description maximum chars"
|
2688 |
+
msgstr ""
|
2689 |
+
|
2690 |
+
#: includes/admin/core/class-admin-settings.php:870
|
2691 |
+
msgid ""
|
2692 |
+
"Maximum number of characters to allow in user description field in header."
|
2693 |
+
msgstr ""
|
2694 |
+
|
2695 |
+
#: includes/admin/core/class-admin-settings.php:877
|
2696 |
+
msgid "Profile Header Menu Position"
|
2697 |
+
msgstr ""
|
2698 |
+
|
2699 |
+
#: includes/admin/core/class-admin-settings.php:879
|
2700 |
+
msgid ""
|
2701 |
+
"For incompatible themes, please make the menu open from left instead of "
|
2702 |
+
"bottom by default."
|
2703 |
+
msgstr ""
|
2704 |
+
|
2705 |
+
#: includes/admin/core/class-admin-settings.php:881
|
2706 |
+
msgid "Bottom of Icon"
|
2707 |
+
msgstr ""
|
2708 |
+
|
2709 |
+
#: includes/admin/core/class-admin-settings.php:882
|
2710 |
+
msgid "Left of Icon (right for RTL)"
|
2711 |
+
msgstr ""
|
2712 |
+
|
2713 |
+
#: includes/admin/core/class-admin-settings.php:889
|
2714 |
+
msgid "Show a custom message if profile is empty"
|
2715 |
+
msgstr ""
|
2716 |
+
|
2717 |
+
#: includes/admin/core/class-admin-settings.php:891
|
2718 |
+
msgid "Switch on/off the custom message that appears when the profile is empty"
|
2719 |
+
msgstr ""
|
2720 |
+
|
2721 |
+
#: includes/admin/core/class-admin-settings.php:896
|
2722 |
+
msgid "Show the emoticon"
|
2723 |
+
msgstr ""
|
2724 |
+
|
2725 |
+
#: includes/admin/core/class-admin-settings.php:898
|
2726 |
+
msgid "Switch on/off the emoticon (sad face) that appears above the message"
|
2727 |
+
msgstr ""
|
2728 |
+
|
2729 |
+
#: includes/admin/core/class-admin-settings.php:904
|
2730 |
+
msgid "Profile Menu"
|
2731 |
+
msgstr ""
|
2732 |
+
|
2733 |
+
#: includes/admin/core/class-admin-settings.php:908
|
2734 |
+
#: includes/admin/templates/form/mode.php:12
|
2735 |
+
msgid "Registration Form"
|
2736 |
+
msgstr ""
|
2737 |
+
|
2738 |
+
#: includes/admin/core/class-admin-settings.php:913
|
2739 |
+
msgid "Registration Default Template"
|
2740 |
+
msgstr ""
|
2741 |
+
|
2742 |
+
#: includes/admin/core/class-admin-settings.php:914
|
2743 |
+
msgid "This will be the default template to output registration"
|
2744 |
+
msgstr ""
|
2745 |
+
|
2746 |
+
#: includes/admin/core/class-admin-settings.php:922
|
2747 |
+
msgid "Registration Maximum Width"
|
2748 |
+
msgstr ""
|
2749 |
+
|
2750 |
+
#: includes/admin/core/class-admin-settings.php:930
|
2751 |
+
msgid "Registration Shortcode Alignment"
|
2752 |
+
msgstr ""
|
2753 |
+
|
2754 |
+
#: includes/admin/core/class-admin-settings.php:931
|
2755 |
+
#: includes/admin/core/class-admin-settings.php:1021
|
2756 |
+
#: includes/admin/templates/form/profile_customize.php:127
|
2757 |
+
msgid "The shortcode is centered by default unless you specify otherwise here"
|
2758 |
+
msgstr ""
|
2759 |
+
|
2760 |
+
#: includes/admin/core/class-admin-settings.php:934
|
2761 |
+
#: includes/admin/core/class-admin-settings.php:1024
|
2762 |
+
msgid "Centered"
|
2763 |
+
msgstr ""
|
2764 |
+
|
2765 |
+
#: includes/admin/core/class-admin-settings.php:935
|
2766 |
+
#: includes/admin/core/class-admin-settings.php:1025
|
2767 |
+
msgid "Left aligned"
|
2768 |
+
msgstr ""
|
2769 |
+
|
2770 |
+
#: includes/admin/core/class-admin-settings.php:936
|
2771 |
+
#: includes/admin/core/class-admin-settings.php:1026
|
2772 |
+
msgid "Right aligned"
|
2773 |
+
msgstr ""
|
2774 |
+
|
2775 |
+
#: includes/admin/core/class-admin-settings.php:943
|
2776 |
+
msgid "Registration Field Icons"
|
2777 |
+
msgstr ""
|
2778 |
+
|
2779 |
+
#: includes/admin/core/class-admin-settings.php:944
|
2780 |
+
msgid "This controls the display of field icons in the registration form"
|
2781 |
+
msgstr ""
|
2782 |
+
|
2783 |
+
#: includes/admin/core/class-admin-settings.php:956
|
2784 |
+
msgid "Registration Primary Button Text"
|
2785 |
+
msgstr ""
|
2786 |
+
|
2787 |
+
#: includes/admin/core/class-admin-settings.php:958
|
2788 |
+
#: includes/admin/core/class-admin-settings.php:1048
|
2789 |
+
msgid "The text that is used for primary button text"
|
2790 |
+
msgstr ""
|
2791 |
+
|
2792 |
+
#: includes/admin/core/class-admin-settings.php:964
|
2793 |
+
msgid "Registration Secondary Button"
|
2794 |
+
msgstr ""
|
2795 |
+
|
2796 |
+
#: includes/admin/core/class-admin-settings.php:971
|
2797 |
+
msgid "Registration Secondary Button Text"
|
2798 |
+
msgstr ""
|
2799 |
+
|
2800 |
+
#: includes/admin/core/class-admin-settings.php:973
|
2801 |
+
#: includes/admin/core/class-admin-settings.php:1063
|
2802 |
+
msgid "The text that is used for the secondary button text"
|
2803 |
+
msgstr ""
|
2804 |
+
|
2805 |
+
#: includes/admin/core/class-admin-settings.php:980
|
2806 |
+
msgid "Registration Secondary Button URL"
|
2807 |
+
msgstr ""
|
2808 |
+
|
2809 |
+
#: includes/admin/core/class-admin-settings.php:982
|
2810 |
+
#: includes/admin/core/class-admin-settings.php:1072
|
2811 |
+
msgid "You can replace default link for this button by entering custom URL"
|
2812 |
+
msgstr ""
|
2813 |
+
|
2814 |
+
#: includes/admin/core/class-admin-settings.php:989
|
2815 |
+
msgid "Registration Default Role"
|
2816 |
+
msgstr ""
|
2817 |
+
|
2818 |
+
#: includes/admin/core/class-admin-settings.php:990
|
2819 |
+
msgid ""
|
2820 |
+
"This will be the default role assigned to users registering thru "
|
2821 |
+
"registration form"
|
2822 |
+
msgstr ""
|
2823 |
+
|
2824 |
+
#: includes/admin/core/class-admin-settings.php:998
|
2825 |
+
#: includes/admin/templates/form/mode.php:16
|
2826 |
+
msgid "Login Form"
|
2827 |
+
msgstr ""
|
2828 |
+
|
2829 |
+
#: includes/admin/core/class-admin-settings.php:1003
|
2830 |
+
msgid "Login Default Template"
|
2831 |
+
msgstr ""
|
2832 |
+
|
2833 |
+
#: includes/admin/core/class-admin-settings.php:1004
|
2834 |
+
msgid "This will be the default template to output login"
|
2835 |
+
msgstr ""
|
2836 |
+
|
2837 |
+
#: includes/admin/core/class-admin-settings.php:1012
|
2838 |
+
msgid "Login Maximum Width"
|
2839 |
+
msgstr ""
|
2840 |
+
|
2841 |
+
#: includes/admin/core/class-admin-settings.php:1020
|
2842 |
+
msgid "Login Shortcode Alignment"
|
2843 |
+
msgstr ""
|
2844 |
+
|
2845 |
+
#: includes/admin/core/class-admin-settings.php:1033
|
2846 |
+
msgid "Login Field Icons"
|
2847 |
+
msgstr ""
|
2848 |
+
|
2849 |
+
#: includes/admin/core/class-admin-settings.php:1034
|
2850 |
+
msgid "This controls the display of field icons in the login form"
|
2851 |
+
msgstr ""
|
2852 |
+
|
2853 |
+
#: includes/admin/core/class-admin-settings.php:1046
|
2854 |
+
msgid "Login Primary Button Text"
|
2855 |
+
msgstr ""
|
2856 |
+
|
2857 |
+
#: includes/admin/core/class-admin-settings.php:1054
|
2858 |
+
msgid "Login Secondary Button"
|
2859 |
+
msgstr ""
|
2860 |
+
|
2861 |
+
#: includes/admin/core/class-admin-settings.php:1061
|
2862 |
+
msgid "Login Secondary Button Text"
|
2863 |
+
msgstr ""
|
2864 |
+
|
2865 |
+
#: includes/admin/core/class-admin-settings.php:1070
|
2866 |
+
msgid "Login Secondary Button URL"
|
2867 |
+
msgstr ""
|
2868 |
+
|
2869 |
+
#: includes/admin/core/class-admin-settings.php:1079
|
2870 |
+
msgid "Login Forgot Password Link"
|
2871 |
+
msgstr ""
|
2872 |
+
|
2873 |
+
#: includes/admin/core/class-admin-settings.php:1081
|
2874 |
+
msgid "Switch on/off the forgot password link in login form"
|
2875 |
+
msgstr ""
|
2876 |
+
|
2877 |
+
#: includes/admin/core/class-admin-settings.php:1086
|
2878 |
+
msgid "Show \"Remember Me\""
|
2879 |
+
msgstr ""
|
2880 |
+
|
2881 |
+
#: includes/admin/core/class-admin-settings.php:1088
|
2882 |
+
msgid ""
|
2883 |
+
"Allow users to choose If they want to stay signed in even after closing the "
|
2884 |
+
"browser. If you do not show this option, the default will be to not remember "
|
2885 |
+
"login session."
|
2886 |
+
msgstr ""
|
2887 |
+
|
2888 |
+
#: includes/admin/core/class-admin-settings.php:1098
|
2889 |
+
msgid "Licenses"
|
2890 |
+
msgstr ""
|
2891 |
+
|
2892 |
+
#: includes/admin/core/class-admin-settings.php:1101
|
2893 |
+
msgid "Misc"
|
2894 |
+
msgstr ""
|
2895 |
+
|
2896 |
+
#: includes/admin/core/class-admin-settings.php:1106
|
2897 |
+
msgid "Show an asterisk for required fields"
|
2898 |
+
msgstr ""
|
2899 |
+
|
2900 |
+
#: includes/admin/core/class-admin-settings.php:1111
|
2901 |
+
msgid "User Profile Title"
|
2902 |
+
msgstr ""
|
2903 |
+
|
2904 |
+
#: includes/admin/core/class-admin-settings.php:1112
|
2905 |
+
msgid "This is the title that is displayed on a specific user profile"
|
2906 |
+
msgstr ""
|
2907 |
+
|
2908 |
+
#: includes/admin/core/class-admin-settings.php:1118
|
2909 |
+
msgid "User Profile Dynamic Meta Description"
|
2910 |
+
msgstr ""
|
2911 |
+
|
2912 |
+
#: includes/admin/core/class-admin-settings.php:1119
|
2913 |
+
msgid ""
|
2914 |
+
"This will be used in the meta description that is available for search-"
|
2915 |
+
"engines."
|
2916 |
+
msgstr ""
|
2917 |
+
|
2918 |
+
#: includes/admin/core/class-admin-settings.php:1127
|
2919 |
+
msgid "Disable Cache User Profile"
|
2920 |
+
msgstr ""
|
2921 |
+
|
2922 |
+
#: includes/admin/core/class-admin-settings.php:1128
|
2923 |
+
msgid ""
|
2924 |
+
"Check this box if you would like to disable Ultimate Member user's cache."
|
2925 |
+
msgstr ""
|
2926 |
+
|
2927 |
+
#: includes/admin/core/class-admin-settings.php:1133
|
2928 |
+
msgid "Enable Gutenberg Blocks"
|
2929 |
+
msgstr ""
|
2930 |
+
|
2931 |
+
#: includes/admin/core/class-admin-settings.php:1134
|
2932 |
+
msgid ""
|
2933 |
+
"Check this box if you would like to use Ultimate Member blocks in Gutenberg "
|
2934 |
+
"editor. Important some themes have the conflicts with Gutenberg editor."
|
2935 |
+
msgstr ""
|
2936 |
+
|
2937 |
+
#: includes/admin/core/class-admin-settings.php:1139
|
2938 |
+
msgid "REST API version"
|
2939 |
+
msgstr ""
|
2940 |
+
|
2941 |
+
#: includes/admin/core/class-admin-settings.php:1140
|
2942 |
+
msgid ""
|
2943 |
+
"This controls the REST API version, we recommend to use the last version"
|
2944 |
+
msgstr ""
|
2945 |
+
|
2946 |
+
#: includes/admin/core/class-admin-settings.php:1142
|
2947 |
+
msgid "1.0 version"
|
2948 |
+
msgstr ""
|
2949 |
+
|
2950 |
+
#: includes/admin/core/class-admin-settings.php:1143
|
2951 |
+
msgid "2.0 version"
|
2952 |
+
msgstr ""
|
2953 |
+
|
2954 |
+
#: includes/admin/core/class-admin-settings.php:1149
|
2955 |
+
msgid "Remove Data on Uninstall?"
|
2956 |
+
msgstr ""
|
2957 |
+
|
2958 |
+
#: includes/admin/core/class-admin-settings.php:1150
|
2959 |
+
msgid ""
|
2960 |
+
"Check this box if you would like Ultimate Member to completely remove all of "
|
2961 |
+
"its data when the plugin/extensions are deleted."
|
2962 |
+
msgstr ""
|
2963 |
+
|
2964 |
+
#: includes/admin/core/class-admin-settings.php:1155
|
2965 |
+
msgid "Install Info"
|
2966 |
+
msgstr ""
|
2967 |
+
|
2968 |
+
#: includes/admin/core/class-admin-settings.php:1272
|
2969 |
+
msgid "Ultimate Member - Settings"
|
2970 |
+
msgstr ""
|
2971 |
+
|
2972 |
+
#: includes/admin/core/class-admin-settings.php:1402
|
2973 |
+
msgid "Save Changes"
|
2974 |
+
msgstr ""
|
2975 |
+
|
2976 |
+
#: includes/admin/core/class-admin-settings.php:1860
|
2977 |
+
msgid "Subject Line"
|
2978 |
+
msgstr ""
|
2979 |
+
|
2980 |
+
#: includes/admin/core/class-admin-settings.php:1862
|
2981 |
+
msgid "This is the subject line of the e-mail"
|
2982 |
+
msgstr ""
|
2983 |
+
|
2984 |
+
#: includes/admin/core/class-admin-settings.php:1867
|
2985 |
+
msgid "Message Body"
|
2986 |
+
msgstr ""
|
2987 |
+
|
2988 |
+
#: includes/admin/core/class-admin-settings.php:1869
|
2989 |
+
msgid "This is the content of the e-mail"
|
2990 |
+
msgstr ""
|
2991 |
+
|
2992 |
+
#: includes/admin/core/class-admin-settings.php:1919
|
2993 |
+
#: includes/admin/core/class-admin-settings.php:2029
|
2994 |
+
#, php-format
|
2995 |
+
msgid ""
|
2996 |
+
"Your license key expired on %s. Please <a href=\"%s\" target=\"_blank"
|
2997 |
+
"\">renew your license key</a>."
|
2998 |
+
msgstr ""
|
2999 |
+
|
3000 |
+
#: includes/admin/core/class-admin-settings.php:1932
|
3001 |
+
#: includes/admin/core/class-admin-settings.php:2042
|
3002 |
+
#, php-format
|
3003 |
+
msgid ""
|
3004 |
+
"Your license key has been disabled. Please <a href=\"%s\" target=\"_blank"
|
3005 |
+
"\">contact support</a> for more information."
|
3006 |
+
msgstr ""
|
3007 |
+
|
3008 |
+
#: includes/admin/core/class-admin-settings.php:1944
|
3009 |
+
#: includes/admin/core/class-admin-settings.php:2054
|
3010 |
+
#, php-format
|
3011 |
+
msgid ""
|
3012 |
+
"Invalid license. Please <a href=\"%s\" target=\"_blank\">visit your account "
|
3013 |
+
"page</a> and verify it."
|
3014 |
+
msgstr ""
|
3015 |
+
|
3016 |
+
#: includes/admin/core/class-admin-settings.php:1957
|
3017 |
+
#: includes/admin/core/class-admin-settings.php:2067
|
3018 |
+
#, php-format
|
3019 |
+
msgid ""
|
3020 |
+
"Your %s is not active for this URL. Please <a href=\"%s\" target=\"_blank"
|
3021 |
+
"\">visit your account page</a> to manage your license key URLs."
|
3022 |
+
msgstr ""
|
3023 |
+
|
3024 |
+
#: includes/admin/core/class-admin-settings.php:1969
|
3025 |
+
#: includes/admin/core/class-admin-settings.php:2079
|
3026 |
+
#, php-format
|
3027 |
+
msgid "This appears to be an invalid license key for %s."
|
3028 |
+
msgstr ""
|
3029 |
+
|
3030 |
+
#: includes/admin/core/class-admin-settings.php:1978
|
3031 |
+
#: includes/admin/core/class-admin-settings.php:2088
|
3032 |
+
#, php-format
|
3033 |
+
msgid ""
|
3034 |
+
"Your license key has reached its activation limit. <a href=\"%s\">View "
|
3035 |
+
"possible upgrades</a> now."
|
3036 |
+
msgstr ""
|
3037 |
+
|
3038 |
+
#: includes/admin/core/class-admin-settings.php:1987
|
3039 |
+
#: includes/admin/core/class-admin-settings.php:2097
|
3040 |
+
msgid ""
|
3041 |
+
"The key you entered belongs to a bundle, please use the product specific "
|
3042 |
+
"license key."
|
3043 |
+
msgstr ""
|
3044 |
+
|
3045 |
+
#: includes/admin/core/class-admin-settings.php:1995
|
3046 |
+
#: includes/admin/core/class-admin-settings.php:2003
|
3047 |
+
#: includes/admin/core/class-admin-settings.php:2015
|
3048 |
+
msgid "unknown_error"
|
3049 |
+
msgstr ""
|
3050 |
+
|
3051 |
+
#: includes/admin/core/class-admin-settings.php:1996
|
3052 |
+
#: includes/admin/core/class-admin-settings.php:2004
|
3053 |
+
#, php-format
|
3054 |
+
msgid ""
|
3055 |
+
"There was an error with this license key: %s. Please <a href=\"%s\">contact "
|
3056 |
+
"our support team</a>."
|
3057 |
+
msgstr ""
|
3058 |
+
|
3059 |
+
#: includes/admin/core/class-admin-settings.php:2017
|
3060 |
+
#, php-format
|
3061 |
+
msgid ""
|
3062 |
+
"There was an error with this license key: %s%s. Please <a href=\"%s"
|
3063 |
+
"\">contact our support team</a>."
|
3064 |
+
msgstr ""
|
3065 |
+
|
3066 |
+
#: includes/admin/core/class-admin-settings.php:2112
|
3067 |
+
msgid "License key never expires."
|
3068 |
+
msgstr ""
|
3069 |
+
|
3070 |
+
#: includes/admin/core/class-admin-settings.php:2119
|
3071 |
+
#, php-format
|
3072 |
+
msgid ""
|
3073 |
+
"Your license key expires soon! It expires on %s. <a href=\"%s\" target="
|
3074 |
+
"\"_blank\">Renew your license key</a>."
|
3075 |
+
msgstr ""
|
3076 |
+
|
3077 |
+
#: includes/admin/core/class-admin-settings.php:2129
|
3078 |
+
#, php-format
|
3079 |
+
msgid "Your license key expires on %s."
|
3080 |
+
msgstr ""
|
3081 |
+
|
3082 |
+
#: includes/admin/core/class-admin-settings.php:2147
|
3083 |
+
#, php-format
|
3084 |
+
msgid "To receive updates, please enter your valid %s license key."
|
3085 |
+
msgstr ""
|
3086 |
+
|
3087 |
+
#: includes/admin/core/class-admin-settings.php:2169
|
3088 |
+
msgid "Clear License"
|
3089 |
+
msgstr ""
|
3090 |
+
|
3091 |
+
#: includes/admin/core/class-admin-settings.php:2171
|
3092 |
+
msgid "Activate"
|
3093 |
+
msgstr ""
|
3094 |
+
|
3095 |
+
#: includes/admin/core/class-admin-settings.php:2173
|
3096 |
+
msgid "Re-Activate"
|
3097 |
+
msgstr ""
|
3098 |
+
|
3099 |
+
#: includes/admin/core/class-admin-settings.php:2225
|
3100 |
+
msgid ""
|
3101 |
+
"To copy the Install info, click below then press Ctrl + C (PC) or Cmd + C "
|
3102 |
+
"(Mac)."
|
3103 |
+
msgstr ""
|
3104 |
+
|
3105 |
+
#: includes/admin/core/class-admin-upgrade.php:131
|
3106 |
+
#, php-format
|
3107 |
+
msgid ""
|
3108 |
+
"%s is a major update, and we highly recommend creating a full backup of your "
|
3109 |
+
"site before updating."
|
3110 |
+
msgstr ""
|
3111 |
+
|
3112 |
+
#: includes/admin/core/class-admin-upgrade.php:237
|
3113 |
+
msgid "Upgrade"
|
3114 |
+
msgstr ""
|
3115 |
+
|
3116 |
+
#: includes/admin/core/class-admin-upgrade.php:245
|
3117 |
+
msgid "empty"
|
3118 |
+
msgstr ""
|
3119 |
+
|
3120 |
+
#: includes/admin/core/class-admin-upgrade.php:248
|
3121 |
+
#, php-format
|
3122 |
+
msgid "%s - Upgrade Process"
|
3123 |
+
msgstr ""
|
3124 |
+
|
3125 |
+
#: includes/admin/core/class-admin-upgrade.php:249
|
3126 |
+
#, php-format
|
3127 |
+
msgid ""
|
3128 |
+
"You have installed %s version. Your latest DB version is %s. Before the "
|
3129 |
+
"click to \"Run\" button make sure that did the following:"
|
3130 |
+
msgstr ""
|
3131 |
+
|
3132 |
+
#: includes/admin/core/class-admin-upgrade.php:251
|
3133 |
+
msgid "Create full site's backup."
|
3134 |
+
msgstr ""
|
3135 |
+
|
3136 |
+
#: includes/admin/core/class-admin-upgrade.php:252
|
3137 |
+
msgid "Set maintenance mode (if you need)"
|
3138 |
+
msgstr ""
|
3139 |
+
|
3140 |
+
#: includes/admin/core/class-admin-upgrade.php:253
|
3141 |
+
msgid "You have nice Internet connection"
|
3142 |
+
msgstr ""
|
3143 |
+
|
3144 |
+
#: includes/admin/core/class-admin-upgrade.php:255
|
3145 |
+
msgid ""
|
3146 |
+
"After the click to \"Run\" button, the update process will be started. All "
|
3147 |
+
"information will be displayed in \"Upgrade Log\" field."
|
3148 |
+
msgstr ""
|
3149 |
+
|
3150 |
+
#: includes/admin/core/class-admin-upgrade.php:256
|
3151 |
+
msgid ""
|
3152 |
+
"If the update was successful, you will see a corresponding message. "
|
3153 |
+
"Otherwise, contact technical support if the update failed."
|
3154 |
+
msgstr ""
|
3155 |
+
|
3156 |
+
#: includes/admin/core/class-admin-upgrade.php:257
|
3157 |
+
msgid "Upgrade Log"
|
3158 |
+
msgstr ""
|
3159 |
+
|
3160 |
+
#: includes/admin/core/class-admin-upgrade.php:260
|
3161 |
+
msgid "Run"
|
3162 |
+
msgstr ""
|
3163 |
+
|
3164 |
+
#: includes/admin/core/class-admin-users.php:117
|
3165 |
+
#: includes/admin/core/class-admin-users.php:120
|
3166 |
+
msgid "UM Action"
|
3167 |
+
msgstr ""
|
3168 |
+
|
3169 |
+
#: includes/admin/core/class-admin-users.php:124
|
3170 |
+
#: includes/core/class-fields.php:2534
|
3171 |
+
msgid "Apply"
|
3172 |
+
msgstr ""
|
3173 |
+
|
3174 |
+
#: includes/admin/core/class-admin-users.php:166
|
3175 |
+
#: includes/core/um-filters-user.php:21 includes/core/um-filters-user.php:26
|
3176 |
+
msgid "Approve Membership"
|
3177 |
+
msgstr ""
|
3178 |
+
|
3179 |
+
#: includes/admin/core/class-admin-users.php:169
|
3180 |
+
#: includes/core/um-filters-user.php:22
|
3181 |
+
msgid "Reject Membership"
|
3182 |
+
msgstr ""
|
3183 |
+
|
3184 |
+
#: includes/admin/core/class-admin-users.php:172
|
3185 |
+
#: includes/core/um-filters-user.php:30
|
3186 |
+
msgid "Put as Pending Review"
|
3187 |
+
msgstr ""
|
3188 |
+
|
3189 |
+
#: includes/admin/core/class-admin-users.php:175
|
3190 |
+
#: includes/core/um-filters-user.php:34
|
3191 |
+
msgid "Resend Activation E-mail"
|
3192 |
+
msgstr ""
|
3193 |
+
|
3194 |
+
#: includes/admin/core/class-admin-users.php:178
|
3195 |
+
msgid "Deactivate"
|
3196 |
+
msgstr ""
|
3197 |
+
|
3198 |
+
#: includes/admin/core/class-admin-users.php:181
|
3199 |
+
msgid "Reactivate"
|
3200 |
+
msgstr ""
|
3201 |
+
|
3202 |
+
#: includes/admin/core/class-admin-users.php:204 templates/account.php:43
|
3203 |
+
#: templates/account.php:84
|
3204 |
+
msgid "View profile"
|
3205 |
+
msgstr ""
|
3206 |
+
|
3207 |
+
#: includes/admin/core/class-admin-users.php:209
|
3208 |
+
msgid "Info"
|
3209 |
+
msgstr ""
|
3210 |
+
|
3211 |
+
#: includes/admin/core/class-admin-users.php:314
|
3212 |
+
#: includes/admin/templates/dashboard/users.php:28
|
3213 |
+
#: includes/core/class-user.php:831
|
3214 |
+
msgid "Approved"
|
3215 |
+
msgstr ""
|
3216 |
+
|
3217 |
+
#: includes/admin/core/class-admin-users.php:315
|
3218 |
+
msgid "Pending review"
|
3219 |
+
msgstr ""
|
3220 |
+
|
3221 |
+
#: includes/admin/core/class-admin-users.php:316
|
3222 |
+
msgid "Waiting e-mail confirmation"
|
3223 |
+
msgstr ""
|
3224 |
+
|
3225 |
+
#: includes/admin/core/class-admin-users.php:317
|
3226 |
+
#: includes/admin/templates/dashboard/users.php:86
|
3227 |
+
msgid "Inactive"
|
3228 |
+
msgstr ""
|
3229 |
+
|
3230 |
+
#: includes/admin/core/class-admin-users.php:318
|
3231 |
+
#: includes/admin/templates/dashboard/users.php:41
|
3232 |
+
msgid "Rejected"
|
3233 |
+
msgstr ""
|
3234 |
+
|
3235 |
+
#: includes/admin/core/class-admin-users.php:381
|
3236 |
+
msgid "You do not have enough permissions to do that."
|
3237 |
+
msgstr ""
|
3238 |
+
|
3239 |
+
#: includes/admin/core/list-tables/emails-list-table.php:70
|
3240 |
+
#: includes/admin/core/list-tables/roles-list-table.php:176
|
3241 |
+
msgid "item"
|
3242 |
+
msgstr ""
|
3243 |
+
|
3244 |
+
#: includes/admin/core/list-tables/emails-list-table.php:71
|
3245 |
+
#: includes/admin/core/list-tables/roles-list-table.php:177
|
3246 |
+
msgid "items"
|
3247 |
+
msgstr ""
|
3248 |
+
|
3249 |
+
#: includes/admin/core/list-tables/emails-list-table.php:75
|
3250 |
+
#: includes/admin/core/list-tables/roles-list-table.php:181
|
3251 |
+
msgid "not found."
|
3252 |
+
msgstr ""
|
3253 |
+
|
3254 |
+
#: includes/admin/core/list-tables/emails-list-table.php:237
|
3255 |
+
msgid "Member"
|
3256 |
+
msgstr ""
|
3257 |
+
|
3258 |
+
#: includes/admin/core/list-tables/emails-list-table.php:270
|
3259 |
+
msgid "Email Notification"
|
3260 |
+
msgstr ""
|
3261 |
+
|
3262 |
+
#: includes/admin/core/list-tables/emails-list-table.php:271
|
3263 |
+
msgid "Email Notifications"
|
3264 |
+
msgstr ""
|
3265 |
+
|
3266 |
+
#: includes/admin/core/list-tables/emails-list-table.php:301
|
3267 |
+
msgid "Recipient(s)"
|
3268 |
+
msgstr ""
|
3269 |
+
|
3270 |
+
#: includes/admin/core/list-tables/emails-list-table.php:314
|
3271 |
+
#, php-format
|
3272 |
+
msgid ""
|
3273 |
+
"You may get more details about email notifications customization <a href=\"%s"
|
3274 |
+
"\">here</a>"
|
3275 |
+
msgstr ""
|
3276 |
+
|
3277 |
+
#: includes/admin/core/list-tables/roles-list-table.php:22
|
3278 |
+
#: includes/admin/core/list-tables/roles-list-table.php:89
|
3279 |
+
#: includes/admin/core/list-tables/roles-list-table.php:402
|
3280 |
+
#: includes/core/class-member-directory.php:263
|
3281 |
+
msgid "Roles"
|
3282 |
+
msgstr ""
|
3283 |
+
|
3284 |
+
#: includes/admin/core/list-tables/roles-list-table.php:342
|
3285 |
+
msgid "Are you sure you want to delete this role?"
|
3286 |
+
msgstr ""
|
3287 |
+
|
3288 |
+
#: includes/admin/core/list-tables/roles-list-table.php:347
|
3289 |
+
msgid "Are you sure you want to reset UM role meta?"
|
3290 |
+
msgstr ""
|
3291 |
+
|
3292 |
+
#: includes/admin/core/list-tables/roles-list-table.php:347
|
3293 |
+
msgid "Reset UM Role meta"
|
3294 |
+
msgstr ""
|
3295 |
+
|
3296 |
+
#: includes/admin/core/list-tables/roles-list-table.php:401
|
3297 |
+
msgid "Role"
|
3298 |
+
msgstr ""
|
3299 |
+
|
3300 |
+
#: includes/admin/core/list-tables/roles-list-table.php:414
|
3301 |
+
msgid "Role Title"
|
3302 |
+
msgstr ""
|
3303 |
+
|
3304 |
+
#: includes/admin/core/list-tables/roles-list-table.php:415
|
3305 |
+
msgid "Role ID"
|
3306 |
+
msgstr ""
|
3307 |
+
|
3308 |
+
#: includes/admin/core/list-tables/roles-list-table.php:416
|
3309 |
+
msgid "No.of Members"
|
3310 |
+
msgstr ""
|
3311 |
+
|
3312 |
+
#: includes/admin/core/list-tables/roles-list-table.php:417
|
3313 |
+
msgid "UM Custom Role"
|
3314 |
+
msgstr ""
|
3315 |
+
|
3316 |
+
#: includes/admin/core/list-tables/roles-list-table.php:418
|
3317 |
+
msgid "WP-Admin Access"
|
3318 |
+
msgstr ""
|
3319 |
+
|
3320 |
+
#: includes/admin/core/list-tables/roles-list-table.php:419
|
3321 |
+
msgid "Priority"
|
3322 |
+
msgstr ""
|
3323 |
+
|
3324 |
+
#: includes/admin/core/list-tables/roles-list-table.php:485
|
3325 |
+
#: includes/admin/core/packages/2.0-beta1/user_roles.php:14
|
3326 |
+
#: includes/admin/templates/role/role-edit.php:153
|
3327 |
+
#: includes/core/class-common.php:60 includes/core/class-common.php:90
|
3328 |
+
msgid "Add New"
|
3329 |
+
msgstr ""
|
3330 |
+
|
3331 |
+
#: includes/admin/core/list-tables/roles-list-table.php:492
|
3332 |
+
msgid "User Role <strong>Deleted</strong> Successfully."
|
3333 |
+
msgstr ""
|
3334 |
+
|
3335 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:8
|
3336 |
+
#: includes/admin/core/packages/2.0.10/functions.php:8
|
3337 |
+
msgid "Styles was upgraded successfully"
|
3338 |
+
msgstr ""
|
3339 |
+
|
3340 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:21
|
3341 |
+
msgid "User Roles was upgraded successfully"
|
3342 |
+
msgstr ""
|
3343 |
+
|
3344 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:89
|
3345 |
+
#, php-format
|
3346 |
+
msgid "Users from %s to %s was upgraded successfully..."
|
3347 |
+
msgstr ""
|
3348 |
+
|
3349 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:113
|
3350 |
+
msgid "Settings was upgraded successfully"
|
3351 |
+
msgstr ""
|
3352 |
+
|
3353 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:123
|
3354 |
+
msgid "Menus settings was upgraded successfully"
|
3355 |
+
msgstr ""
|
3356 |
+
|
3357 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:133
|
3358 |
+
msgid "Mailchimp Lists was upgraded successfully"
|
3359 |
+
msgstr ""
|
3360 |
+
|
3361 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:143
|
3362 |
+
msgid "Social login forms was upgraded successfully"
|
3363 |
+
msgstr ""
|
3364 |
+
|
3365 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:153
|
3366 |
+
msgid "UM Custom Posts was upgraded successfully"
|
3367 |
+
msgstr ""
|
3368 |
+
|
3369 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:170
|
3370 |
+
msgid "Forums are ready for upgrade"
|
3371 |
+
msgstr ""
|
3372 |
+
|
3373 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:225
|
3374 |
+
#, php-format
|
3375 |
+
msgid "Forums from %s to %s was upgraded successfully..."
|
3376 |
+
msgstr ""
|
3377 |
+
|
3378 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:243
|
3379 |
+
msgid "Woocommerce Products are ready for upgrade"
|
3380 |
+
msgstr ""
|
3381 |
+
|
3382 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:319
|
3383 |
+
#, php-format
|
3384 |
+
msgid "Woocommerce Products from %s to %s was upgraded successfully..."
|
3385 |
+
msgstr ""
|
3386 |
+
|
3387 |
+
#: includes/admin/core/packages/2.0-beta1/functions.php:337
|
3388 |
+
msgid "Email Templates was upgraded successfully"
|
3389 |
+
msgstr ""
|
3390 |
+
|
3391 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:13
|
3392 |
+
#: includes/admin/core/packages/2.0.10/init.php:6
|
3393 |
+
msgid "Upgrade Styles..."
|
3394 |
+
msgstr ""
|
3395 |
+
|
3396 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:38
|
3397 |
+
msgid "Upgrade Roles..."
|
3398 |
+
msgstr ""
|
3399 |
+
|
3400 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:52
|
3401 |
+
msgid "Upgrade Users..."
|
3402 |
+
msgstr ""
|
3403 |
+
|
3404 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:73
|
3405 |
+
msgid "Getting "
|
3406 |
+
msgstr ""
|
3407 |
+
|
3408 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:73
|
3409 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:85
|
3410 |
+
msgid " users..."
|
3411 |
+
msgstr ""
|
3412 |
+
|
3413 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:85
|
3414 |
+
msgid "There are "
|
3415 |
+
msgstr ""
|
3416 |
+
|
3417 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:86
|
3418 |
+
msgid "Start users upgrading..."
|
3419 |
+
msgstr ""
|
3420 |
+
|
3421 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:139
|
3422 |
+
msgid "Upgrade Content Restriction Settings..."
|
3423 |
+
msgstr ""
|
3424 |
+
|
3425 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:165
|
3426 |
+
msgid "Upgrade Settings..."
|
3427 |
+
msgstr ""
|
3428 |
+
|
3429 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:191
|
3430 |
+
msgid "Upgrade Menu Items..."
|
3431 |
+
msgstr ""
|
3432 |
+
|
3433 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:217
|
3434 |
+
msgid "Upgrade Mailchimp Lists..."
|
3435 |
+
msgstr ""
|
3436 |
+
|
3437 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:243
|
3438 |
+
msgid "Upgrade Social Login Forms..."
|
3439 |
+
msgstr ""
|
3440 |
+
|
3441 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:269
|
3442 |
+
msgid "Upgrade UM Custom Post Types..."
|
3443 |
+
msgstr ""
|
3444 |
+
|
3445 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:295
|
3446 |
+
msgid "Upgrade bbPress Forums..."
|
3447 |
+
msgstr ""
|
3448 |
+
|
3449 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:296
|
3450 |
+
msgid "Get bbPress Forums count..."
|
3451 |
+
msgstr ""
|
3452 |
+
|
3453 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:355
|
3454 |
+
msgid "Upgrade Woocommerce Products..."
|
3455 |
+
msgstr ""
|
3456 |
+
|
3457 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:356
|
3458 |
+
msgid "Get all Products..."
|
3459 |
+
msgstr ""
|
3460 |
+
|
3461 |
+
#: includes/admin/core/packages/2.0-beta1/init.php:417
|
3462 |
+
msgid "Upgrade Email Templates..."
|
3463 |
+
msgstr ""
|
3464 |
+
|
3465 |
+
#: includes/admin/core/packages/2.0-beta1/user_roles.php:13
|
3466 |
+
msgid "User Role"
|
3467 |
+
msgstr ""
|
3468 |
+
|
3469 |
+
#: includes/admin/core/packages/2.0-beta1/user_roles.php:15
|
3470 |
+
msgid "Add New User Role"
|
3471 |
+
msgstr ""
|
3472 |
+
|
3473 |
+
#: includes/admin/core/packages/2.0-beta1/user_roles.php:16
|
3474 |
+
msgid "Edit User Role"
|
3475 |
+
msgstr ""
|
3476 |
+
|
3477 |
+
#: includes/admin/core/packages/2.0-beta1/user_roles.php:17
|
3478 |
+
msgid "You did not create any user roles yet"
|
3479 |
+
msgstr ""
|
3480 |
+
|
3481 |
+
#: includes/admin/core/packages/2.0-beta1/user_roles.php:18
|
3482 |
+
#: includes/core/class-common.php:64 includes/core/class-common.php:94
|
3483 |
+
msgid "Nothing found in Trash"
|
3484 |
+
msgstr ""
|
3485 |
+
|
3486 |
+
#: includes/admin/core/packages/2.0-beta1/user_roles.php:19
|
3487 |
+
msgid "Search User Roles"
|
3488 |
+
msgstr ""
|
3489 |
+
|
3490 |
+
#: includes/admin/core/packages/2.0.10/functions.php:21
|
3491 |
+
msgid "Users cache was cleared successfully"
|
3492 |
+
msgstr ""
|
3493 |
+
|
3494 |
+
#: includes/admin/core/packages/2.0.10/init.php:32
|
3495 |
+
msgid "Clear Users Cache..."
|
3496 |
+
msgstr ""
|
3497 |
+
|
3498 |
+
#: includes/admin/core/packages/2.0.24/functions.php:11
|
3499 |
+
msgid "Temporary dir was purged successfully"
|
3500 |
+
msgstr ""
|
3501 |
+
|
3502 |
+
#: includes/admin/core/packages/2.0.24/init.php:6
|
3503 |
+
msgid "Purge temp files dir..."
|
3504 |
+
msgstr ""
|
3505 |
+
|
3506 |
+
#: includes/admin/core/packages/2.0.44/functions.php:13
|
3507 |
+
msgid "Field was upgraded successfully"
|
3508 |
+
msgstr ""
|
3509 |
+
|
3510 |
+
#: includes/admin/core/packages/2.0.44/init.php:7
|
3511 |
+
msgid "Upgrade predefined metafields..."
|
3512 |
+
msgstr ""
|
3513 |
+
|
3514 |
+
#: includes/admin/core/packages/2.0.54/functions.php:13
|
3515 |
+
msgid "Roles was upgraded successfully"
|
3516 |
+
msgstr ""
|
3517 |
+
|
3518 |
+
#: includes/admin/core/packages/2.0.54/init.php:7
|
3519 |
+
msgid "Upgrade user roles..."
|
3520 |
+
msgstr ""
|
3521 |
+
|
3522 |
+
#: includes/admin/core/packages/2.1.0-beta1/functions.php:11
|
3523 |
+
msgid "Usermeta was upgraded successfully"
|
3524 |
+
msgstr ""
|
3525 |
+
|
3526 |
+
#: includes/admin/core/packages/2.1.0-beta1/functions.php:24
|
3527 |
+
msgid "Member directories were upgraded successfully"
|
3528 |
+
msgstr ""
|
3529 |
+
|
3530 |
+
#: includes/admin/core/packages/2.1.0-beta1/init.php:7
|
3531 |
+
msgid "Upgrade user metadata..."
|
3532 |
+
msgstr ""
|
3533 |
+
|
3534 |
+
#: includes/admin/core/packages/2.1.0-beta1/init.php:33
|
3535 |
+
msgid "Upgrade Member Directories..."
|
3536 |
+
msgstr ""
|
3537 |
+
|
3538 |
+
#: includes/admin/templates/dashboard/cache.php:12
|
3539 |
+
msgid "Run this task from time to time to keep your DB clean."
|
3540 |
+
msgstr ""
|
3541 |
+
|
3542 |
+
#: includes/admin/templates/dashboard/cache.php:15
|
3543 |
+
#, php-format
|
3544 |
+
msgid "Clear cache of %s users"
|
3545 |
+
msgstr ""
|
3546 |
+
|
3547 |
+
#: includes/admin/templates/dashboard/feed.php:7
|
3548 |
+
msgid "Latest From Ultimate Member"
|
3549 |
+
msgstr ""
|
3550 |
+
|
3551 |
+
#: includes/admin/templates/dashboard/purge.php:7
|
3552 |
+
#, php-format
|
3553 |
+
msgid ""
|
3554 |
+
"You can free up <span class=\"red\">%s MB</span> by purging your temp upload "
|
3555 |
+
"directory."
|
3556 |
+
msgstr ""
|
3557 |
+
|
3558 |
+
#: includes/admin/templates/dashboard/purge.php:12
|
3559 |
+
msgid "Purge Temp"
|
3560 |
+
msgstr ""
|
3561 |
+
|
3562 |
+
#: includes/admin/templates/dashboard/purge.php:19
|
3563 |
+
msgid ""
|
3564 |
+
"Your temp uploads directory is <span class=\"ok\">clean</span>. There is "
|
3565 |
+
"nothing to purge."
|
3566 |
+
msgstr ""
|
3567 |
+
|
3568 |
+
#: includes/admin/templates/dashboard/upgrade-request.php:4
|
3569 |
+
msgid ""
|
3570 |
+
"Run this task from time to time if you have issues with WP Cron and need to "
|
3571 |
+
"get UM extension updates."
|
3572 |
+
msgstr ""
|
3573 |
+
|
3574 |
+
#: includes/admin/templates/dashboard/upgrade-request.php:7
|
3575 |
+
msgid "Get latest versions"
|
3576 |
+
msgstr ""
|
3577 |
+
|
3578 |
+
#: includes/admin/templates/dashboard/users.php:60
|
3579 |
+
#: includes/core/class-user.php:839
|
3580 |
+
msgid "Pending Review"
|
3581 |
+
msgstr ""
|
3582 |
+
|
3583 |
+
#: includes/admin/templates/dashboard/users.php:73
|
3584 |
+
#: includes/core/class-user.php:835
|
3585 |
+
msgid "Awaiting E-mail Confirmation"
|
3586 |
+
msgstr ""
|
3587 |
+
|
3588 |
+
#: includes/admin/templates/directory/appearance.php:12
|
3589 |
+
#: includes/admin/templates/form/login_customize.php:23
|
3590 |
+
#: includes/admin/templates/form/profile_customize.php:42
|
3591 |
+
#: includes/admin/templates/form/register_customize.php:38
|
3592 |
+
msgid "Template"
|
3593 |
+
msgstr ""
|
3594 |
+
|
3595 |
+
#: includes/admin/templates/directory/general.php:36
|
3596 |
+
msgid "View type(s)"
|
3597 |
+
msgstr ""
|
3598 |
+
|
3599 |
+
#: includes/admin/templates/directory/general.php:37
|
3600 |
+
msgid "View type a specific parameter in the directory"
|
3601 |
+
msgstr ""
|
3602 |
+
|
3603 |
+
#: includes/admin/templates/directory/general.php:46
|
3604 |
+
msgid "Default view type"
|
3605 |
+
msgstr ""
|
3606 |
+
|
3607 |
+
#: includes/admin/templates/directory/general.php:47
|
3608 |
+
msgid "Default directory view type"
|
3609 |
+
msgstr ""
|
3610 |
+
|
3611 |
+
#: includes/admin/templates/directory/general.php:55
|
3612 |
+
msgid "User Roles to Display"
|
3613 |
+
msgstr ""
|
3614 |
+
|
3615 |
+
#: includes/admin/templates/directory/general.php:56
|
3616 |
+
msgid ""
|
3617 |
+
"If you do not want to show all members, select only user roles to appear in "
|
3618 |
+
"this directory"
|
3619 |
+
msgstr ""
|
3620 |
+
|
3621 |
+
#: includes/admin/templates/directory/general.php:64
|
3622 |
+
msgid "Only show members who have uploaded a profile photo"
|
3623 |
+
msgstr ""
|
3624 |
+
|
3625 |
+
#: includes/admin/templates/directory/general.php:65
|
3626 |
+
msgid "If 'Use Gravatars' as profile photo is enabled, this option is ignored"
|
3627 |
+
msgstr ""
|
3628 |
+
|
3629 |
+
#: includes/admin/templates/directory/general.php:71
|
3630 |
+
msgid "Only show members who have uploaded a cover photo"
|
3631 |
+
msgstr ""
|
3632 |
+
|
3633 |
+
#: includes/admin/templates/directory/general.php:77
|
3634 |
+
msgid "Only show specific users (Enter one username per line)"
|
3635 |
+
msgstr ""
|
3636 |
+
|
3637 |
+
#: includes/admin/templates/directory/pagination.php:12
|
3638 |
+
msgid "Show results only after search/filtration"
|
3639 |
+
msgstr ""
|
3640 |
+
|
3641 |
+
#: includes/admin/templates/directory/pagination.php:13
|
3642 |
+
msgid ""
|
3643 |
+
"If turned on, member results will only appear after search/filter is "
|
3644 |
+
"performed"
|
3645 |
+
msgstr ""
|
3646 |
+
|
3647 |
+
#: includes/admin/templates/directory/pagination.php:20
|
3648 |
+
msgid "Maximum number of profiles"
|
3649 |
+
msgstr ""
|
3650 |
+
|
3651 |
+
#: includes/admin/templates/directory/pagination.php:21
|
3652 |
+
msgid ""
|
3653 |
+
"Use this setting to control the maximum number of profiles to appear in this "
|
3654 |
+
"directory. Leave blank to disable this limit"
|
3655 |
+
msgstr ""
|
3656 |
+
|
3657 |
+
#: includes/admin/templates/directory/pagination.php:28
|
3658 |
+
msgid "Number of profiles per page"
|
3659 |
+
msgstr ""
|
3660 |
+
|
3661 |
+
#: includes/admin/templates/directory/pagination.php:29
|
3662 |
+
msgid "Number of profiles to appear on page for standard users"
|
3663 |
+
msgstr ""
|
3664 |
+
|
3665 |
+
#: includes/admin/templates/directory/pagination.php:36
|
3666 |
+
msgid "Number of profiles per page (for Mobiles & Tablets)"
|
3667 |
+
msgstr ""
|
3668 |
+
|
3669 |
+
#: includes/admin/templates/directory/pagination.php:37
|
3670 |
+
msgid "Number of profiles to appear on page for mobile users"
|
3671 |
+
msgstr ""
|
3672 |
+
|
3673 |
+
#: includes/admin/templates/directory/pagination.php:44
|
3674 |
+
msgid "Results Text"
|
3675 |
+
msgstr ""
|
3676 |
+
|
3677 |
+
#: includes/admin/templates/directory/pagination.php:45
|
3678 |
+
msgid ""
|
3679 |
+
"Customize the search result text . e.g. Found 3,000 Members. Leave this "
|
3680 |
+
"blank to not show result text"
|
3681 |
+
msgstr ""
|
3682 |
+
|
3683 |
+
#: includes/admin/templates/directory/pagination.php:46
|
3684 |
+
#: includes/class-config.php:178 includes/class-config.php:278
|
3685 |
+
msgid "{total_users} Members"
|
3686 |
+
msgstr ""
|
3687 |
+
|
3688 |
+
#: includes/admin/templates/directory/pagination.php:51
|
3689 |
+
msgid "Single Result Text"
|
3690 |
+
msgstr ""
|
3691 |
+
|
3692 |
+
#: includes/admin/templates/directory/pagination.php:52
|
3693 |
+
msgid "Same as above but in case of 1 user found only"
|
3694 |
+
msgstr ""
|
3695 |
+
|
3696 |
+
#: includes/admin/templates/directory/pagination.php:53
|
3697 |
+
#: includes/class-config.php:179 includes/class-config.php:279
|
3698 |
+
msgid "{total_users} Member"
|
3699 |
+
msgstr ""
|
3700 |
+
|
3701 |
+
#: includes/admin/templates/directory/pagination.php:58
|
3702 |
+
msgid "Custom text if no users were found"
|
3703 |
+
msgstr ""
|
3704 |
+
|
3705 |
+
#: includes/admin/templates/directory/pagination.php:59
|
3706 |
+
msgid ""
|
3707 |
+
"This is the text that is displayed if no users are found during a search"
|
3708 |
+
msgstr ""
|
3709 |
+
|
3710 |
+
#: includes/admin/templates/directory/pagination.php:60
|
3711 |
+
#: includes/class-config.php:180
|
3712 |
+
msgid "We are sorry. We cannot find any users who match your search criteria."
|
3713 |
+
msgstr ""
|
3714 |
+
|
3715 |
+
#: includes/admin/templates/directory/profile.php:20
|
3716 |
+
msgid "Enable Profile Photo"
|
3717 |
+
msgstr ""
|
3718 |
+
|
3719 |
+
#: includes/admin/templates/directory/profile.php:26
|
3720 |
+
msgid "Enable Cover Photo"
|
3721 |
+
msgstr ""
|
3722 |
+
|
3723 |
+
#: includes/admin/templates/directory/profile.php:27
|
3724 |
+
msgid "If turned on, the users cover photo will appear in the directory"
|
3725 |
+
msgstr ""
|
3726 |
+
|
3727 |
+
#: includes/admin/templates/directory/profile.php:33
|
3728 |
+
msgid "Show display name"
|
3729 |
+
msgstr ""
|
3730 |
+
|
3731 |
+
#: includes/admin/templates/directory/profile.php:39
|
3732 |
+
msgid "Show tagline below profile name"
|
3733 |
+
msgstr ""
|
3734 |
+
|
3735 |
+
#: includes/admin/templates/directory/profile.php:45
|
3736 |
+
msgid "Choose field(s) to display in tagline"
|
3737 |
+
msgstr ""
|
3738 |
+
|
3739 |
+
#: includes/admin/templates/directory/profile.php:48
|
3740 |
+
#: includes/admin/templates/directory/profile.php:63
|
3741 |
+
#: includes/admin/templates/directory/search.php:93
|
3742 |
+
msgid "Add New Custom Field"
|
3743 |
+
msgstr ""
|
3744 |
+
|
3745 |
+
#: includes/admin/templates/directory/profile.php:55
|
3746 |
+
msgid "Show extra user information below tagline?"
|
3747 |
+
msgstr ""
|
3748 |
+
|
3749 |
+
#: includes/admin/templates/directory/profile.php:61
|
3750 |
+
msgid "Choose field(s) to display in reveal section"
|
3751 |
+
msgstr ""
|
3752 |
+
|
3753 |
+
#: includes/admin/templates/directory/profile.php:71
|
3754 |
+
msgid "Show social connect icons"
|
3755 |
+
msgstr ""
|
3756 |
+
|
3757 |
+
#: includes/admin/templates/directory/profile.php:78
|
3758 |
+
msgid "Enable reveal section transition by default"
|
3759 |
+
msgstr ""
|
3760 |
+
|
3761 |
+
#: includes/admin/templates/directory/search.php:55
|
3762 |
+
msgid "Enable Search feature"
|
3763 |
+
msgstr ""
|
3764 |
+
|
3765 |
+
#: includes/admin/templates/directory/search.php:56
|
3766 |
+
msgid "If turned on, users will be able to search members in this directory"
|
3767 |
+
msgstr ""
|
3768 |
+
|
3769 |
+
#: includes/admin/templates/directory/search.php:62
|
3770 |
+
msgid "User Roles that can use search"
|
3771 |
+
msgstr ""
|
3772 |
+
|
3773 |
+
#: includes/admin/templates/directory/search.php:63
|
3774 |
+
msgid "If you want to allow specific user roles to be able to search only"
|
3775 |
+
msgstr ""
|
3776 |
+
|
3777 |
+
#: includes/admin/templates/directory/search.php:72
|
3778 |
+
msgid "Enable Filters feature"
|
3779 |
+
msgstr ""
|
3780 |
+
|
3781 |
+
#: includes/admin/templates/directory/search.php:73
|
3782 |
+
msgid "If turned on, users will be able to filter members in this directory"
|
3783 |
+
msgstr ""
|
3784 |
+
|
3785 |
+
#: includes/admin/templates/directory/search.php:79
|
3786 |
+
msgid "User Roles that can use filters"
|
3787 |
+
msgstr ""
|
3788 |
+
|
3789 |
+
#: includes/admin/templates/directory/search.php:80
|
3790 |
+
msgid "If you want to allow specific user roles to be able to filter only"
|
3791 |
+
msgstr ""
|
3792 |
+
|
3793 |
+
#: includes/admin/templates/directory/search.php:89
|
3794 |
+
msgid "Choose filter(s) meta to enable"
|
3795 |
+
msgstr ""
|
3796 |
+
|
3797 |
+
#: includes/admin/templates/directory/search.php:99
|
3798 |
+
msgid "Expand the filter bar by default"
|
3799 |
+
msgstr ""
|
3800 |
+
|
3801 |
+
#: includes/admin/templates/directory/search.php:100
|
3802 |
+
msgid ""
|
3803 |
+
"If turned on, filters bar will be visible after a page loading and can be "
|
3804 |
+
"collapsed"
|
3805 |
+
msgstr ""
|
3806 |
+
|
3807 |
+
#: includes/admin/templates/directory/search.php:107
|
3808 |
+
msgid "Admin filtering"
|
3809 |
+
msgstr ""
|
3810 |
+
|
3811 |
+
#: includes/admin/templates/directory/search.php:108
|
3812 |
+
msgid ""
|
3813 |
+
"Limit which users appear in the member directory e.g only display users from "
|
3814 |
+
"USA"
|
3815 |
+
msgstr ""
|
3816 |
+
|
3817 |
+
#: includes/admin/templates/directory/search.php:111
|
3818 |
+
msgid "Add New Filter"
|
3819 |
+
msgstr ""
|
3820 |
+
|
3821 |
+
#: includes/admin/templates/directory/sorting.php:15
|
3822 |
+
msgid "Default sort users by"
|
3823 |
+
msgstr ""
|
3824 |
+
|
3825 |
+
#: includes/admin/templates/directory/sorting.php:16
|
3826 |
+
msgid "Default sorting users by a specific parameter in the directory"
|
3827 |
+
msgstr ""
|
3828 |
+
|
3829 |
+
#: includes/admin/templates/directory/sorting.php:23
|
3830 |
+
msgid "Meta key"
|
3831 |
+
msgstr ""
|
3832 |
+
|
3833 |
+
#: includes/admin/templates/directory/sorting.php:24
|
3834 |
+
msgid "To sort by a custom field, enter the meta key of field here"
|
3835 |
+
msgstr ""
|
3836 |
+
|
3837 |
+
#: includes/admin/templates/directory/sorting.php:31
|
3838 |
+
msgid "Enable custom sorting"
|
3839 |
+
msgstr ""
|
3840 |
+
|
3841 |
+
#: includes/admin/templates/directory/sorting.php:32
|
3842 |
+
msgid ""
|
3843 |
+
"Whether to provide an ability to change the sorting on the directory page"
|
3844 |
+
msgstr ""
|
3845 |
+
|
3846 |
+
#: includes/admin/templates/directory/sorting.php:38
|
3847 |
+
msgid "Choose field(s) to enable in sorting"
|
3848 |
+
msgstr ""
|
3849 |
+
|
3850 |
+
#: includes/admin/templates/directory/sorting.php:41
|
3851 |
+
#: includes/admin/templates/form/profile_settings.php:25
|
3852 |
+
msgid "Add New Field"
|
3853 |
+
msgstr ""
|
3854 |
+
|
3855 |
+
#: includes/admin/templates/extensions.php:161
|
3856 |
+
msgid ""
|
3857 |
+
"<strong>All Access Pass</strong> – Get access to all Ultimate Member "
|
3858 |
+
"extensions at a significant discount with our All Access Pass."
|
3859 |
+
msgstr ""
|
3860 |
+
|
3861 |
+
#: includes/admin/templates/extensions.php:165
|
3862 |
+
msgid "View Pricing"
|
3863 |
+
msgstr ""
|
3864 |
+
|
3865 |
+
#: includes/admin/templates/extensions.php:174
|
3866 |
+
msgid "Premium"
|
3867 |
+
msgstr ""
|
3868 |
+
|
3869 |
+
#: includes/admin/templates/extensions.php:179
|
3870 |
+
msgid "Free"
|
3871 |
+
msgstr ""
|
3872 |
+
|
3873 |
+
#: includes/admin/templates/extensions.php:205
|
3874 |
+
#: includes/admin/templates/extensions.php:239
|
3875 |
+
msgid "Get this Add on"
|
3876 |
+
msgstr ""
|
3877 |
+
|
3878 |
+
#: includes/admin/templates/extensions.php:210
|
3879 |
+
#: includes/admin/templates/extensions.php:244
|
3880 |
+
msgid "More Details"
|
3881 |
+
msgstr ""
|
3882 |
+
|
3883 |
+
#: includes/admin/templates/form/builder.php:13
|
3884 |
+
msgid "Live Preview"
|
3885 |
+
msgstr ""
|
3886 |
+
|
3887 |
+
#: includes/admin/templates/form/builder.php:27
|
3888 |
+
msgid "Add Master Row"
|
3889 |
+
msgstr ""
|
3890 |
+
|
3891 |
+
#: includes/admin/templates/form/login_customize.php:12
|
3892 |
+
#: includes/admin/templates/form/profile_customize.php:21
|
3893 |
+
#: includes/admin/templates/form/register_customize.php:19
|
3894 |
+
msgid "Apply custom settings to this form"
|
3895 |
+
msgstr ""
|
3896 |
+
|
3897 |
+
#: includes/admin/templates/form/login_customize.php:13
|
3898 |
+
#: includes/admin/templates/form/profile_customize.php:22
|
3899 |
+
#: includes/admin/templates/form/register_customize.php:20
|
3900 |
+
msgid ""
|
3901 |
+
"Switch to yes if you want to customize this form settings, styling & "
|
3902 |
+
"appearance"
|
3903 |
+
msgstr ""
|
3904 |
+
|
3905 |
+
#: includes/admin/templates/form/login_customize.php:31
|
3906 |
+
#: includes/admin/templates/form/profile_customize.php:50
|
3907 |
+
#: includes/admin/templates/form/register_customize.php:46
|
3908 |
+
msgid "Max. Width (px)"
|
3909 |
+
msgstr ""
|
3910 |
+
|
3911 |
+
#: includes/admin/templates/form/login_customize.php:32
|
3912 |
+
#: includes/admin/templates/form/profile_customize.php:51
|
3913 |
+
#: includes/admin/templates/form/register_customize.php:47
|
3914 |
+
msgid "The maximum width of shortcode in pixels e.g. 600px"
|
3915 |
+
msgstr ""
|
3916 |
+
|
3917 |
+
#: includes/admin/templates/form/login_customize.php:39
|
3918 |
+
#: includes/admin/templates/form/profile_customize.php:66
|
3919 |
+
#: includes/admin/templates/form/register_customize.php:54
|
3920 |
+
msgid "Field Icons"
|
3921 |
+
msgstr ""
|
3922 |
+
|
3923 |
+
#: includes/admin/templates/form/login_customize.php:40
|
3924 |
+
#: includes/admin/templates/form/profile_customize.php:67
|
3925 |
+
#: includes/admin/templates/form/register_customize.php:55
|
3926 |
+
msgid ""
|
3927 |
+
"Whether to show field icons and where to show them relative to the field"
|
3928 |
+
msgstr ""
|
3929 |
+
|
3930 |
+
#: includes/admin/templates/form/login_customize.php:52
|
3931 |
+
#: includes/admin/templates/form/profile_customize.php:79
|
3932 |
+
#: includes/admin/templates/form/register_customize.php:67
|
3933 |
+
msgid "Primary Button Text"
|
3934 |
+
msgstr ""
|
3935 |
+
|
3936 |
+
#: includes/admin/templates/form/login_customize.php:53
|
3937 |
+
#: includes/admin/templates/form/login_customize.php:72
|
3938 |
+
#: includes/admin/templates/form/profile_customize.php:80
|
3939 |
+
#: includes/admin/templates/form/profile_customize.php:99
|
3940 |
+
#: includes/admin/templates/form/register_customize.php:68
|
3941 |
+
#: includes/admin/templates/form/register_customize.php:87
|
3942 |
+
msgid "Customize the button text"
|
3943 |
+
msgstr ""
|
3944 |
+
|
3945 |
+
#: includes/admin/templates/form/login_customize.php:60
|
3946 |
+
#: includes/admin/templates/form/profile_customize.php:87
|
3947 |
+
#: includes/admin/templates/form/register_customize.php:75
|
3948 |
+
msgid "Show Secondary Button"
|
3949 |
+
msgstr ""
|
3950 |
+
|
3951 |
+
#: includes/admin/templates/form/login_customize.php:71
|
3952 |
+
#: includes/admin/templates/form/profile_customize.php:98
|
3953 |
+
#: includes/admin/templates/form/register_customize.php:86
|
3954 |
+
msgid "Secondary Button Text"
|
3955 |
+
msgstr ""
|
3956 |
+
|
3957 |
+
#: includes/admin/templates/form/login_customize.php:79
|
3958 |
+
msgid "Show Forgot Password Link?"
|
3959 |
+
msgstr ""
|
3960 |
+
|
3961 |
+
#: includes/admin/templates/form/login_customize.php:90
|
3962 |
+
msgid "Show \"Remember Me\"?"
|
3963 |
+
msgstr ""
|
3964 |
+
|
3965 |
+
#: includes/admin/templates/form/login_settings.php:12
|
3966 |
+
msgid "Redirection after Login"
|
3967 |
+
msgstr ""
|
3968 |
+
|
3969 |
+
#: includes/admin/templates/form/login_settings.php:13
|
3970 |
+
msgid ""
|
3971 |
+
"Change this If you want to override role redirection settings after login "
|
3972 |
+
"only."
|
3973 |
+
msgstr ""
|
3974 |
+
|
3975 |
+
#: includes/admin/templates/form/login_settings.php:17
|
3976 |
+
#: includes/admin/templates/role/login.php:19
|
3977 |
+
#: includes/admin/templates/role/register.php:30
|
3978 |
+
msgid "Redirect to profile"
|
3979 |
+
msgstr ""
|
3980 |
+
|
3981 |
+
#: includes/admin/templates/form/login_settings.php:18
|
3982 |
+
#: includes/admin/templates/role/login.php:20
|
3983 |
+
#: includes/admin/templates/role/register.php:31
|
3984 |
+
#: includes/admin/templates/role/register.php:58
|
3985 |
+
#: includes/admin/templates/role/register.php:92
|
3986 |
+
msgid "Redirect to URL"
|
3987 |
+
msgstr ""
|
3988 |
+
|
3989 |
+
#: includes/admin/templates/form/login_settings.php:19
|
3990 |
+
#: includes/admin/templates/role/login.php:21
|
3991 |
+
msgid "Refresh active page"
|
3992 |
+
msgstr ""
|
3993 |
+
|
3994 |
+
#: includes/admin/templates/form/login_settings.php:20
|
3995 |
+
#: includes/admin/templates/role/login.php:22
|
3996 |
+
msgid "Redirect to WordPress Admin"
|
3997 |
+
msgstr ""
|
3998 |
+
|
3999 |
+
#: includes/admin/templates/form/login_settings.php:26
|
4000 |
+
#: includes/admin/templates/role/delete.php:26
|
4001 |
+
#: includes/admin/templates/role/login.php:28
|
4002 |
+
#: includes/admin/templates/role/logout.php:26
|
4003 |
+
#: includes/admin/templates/role/register.php:38
|
4004 |
+
#: includes/admin/templates/role/register.php:72
|
4005 |
+
#: includes/admin/templates/role/register.php:106
|
4006 |
+
msgid "Set Custom Redirect URL"
|
4007 |
+
msgstr ""
|
4008 |
+
|
4009 |
+
#: includes/admin/templates/form/mode.php:9
|
4010 |
+
msgid ""
|
4011 |
+
"<strong>Note:</strong> Form type cannot be changed for the default forms."
|
4012 |
+
msgstr ""
|
4013 |
+
|
4014 |
+
#: includes/admin/templates/form/mode.php:14
|
4015 |
+
msgid "Profile Form"
|
4016 |
+
msgstr ""
|
4017 |
+
|
4018 |
+
#: includes/admin/templates/form/profile_customize.php:33
|
4019 |
+
msgid "Make this profile form role-specific"
|
4020 |
+
msgstr ""
|
4021 |
+
|
4022 |
+
#: includes/admin/templates/form/profile_customize.php:34
|
4023 |
+
msgid ""
|
4024 |
+
"Please note if you make a profile form specific to a role then you must make "
|
4025 |
+
"sure that every other role is assigned a profile form"
|
4026 |
+
msgstr ""
|
4027 |
+
|
4028 |
+
#: includes/admin/templates/form/profile_customize.php:58
|
4029 |
+
msgid "Profile Area Max. Width (px)"
|
4030 |
+
msgstr ""
|
4031 |
+
|
4032 |
+
#: includes/admin/templates/form/profile_customize.php:106
|
4033 |
+
msgid "Enable Cover Photos"
|
4034 |
+
msgstr ""
|
4035 |
+
|
4036 |
+
#: includes/admin/templates/form/profile_customize.php:117
|
4037 |
+
msgid "Cover Photo Size"
|
4038 |
+
msgstr ""
|
4039 |
+
|
4040 |
+
#: includes/admin/templates/form/profile_customize.php:118
|
4041 |
+
#: includes/admin/templates/form/profile_customize.php:153
|
4042 |
+
msgid "Set the profile photo size in pixels here"
|
4043 |
+
msgstr ""
|
4044 |
+
|
4045 |
+
#: includes/admin/templates/form/profile_customize.php:126
|
4046 |
+
msgid "Cover photo ratio"
|
4047 |
+
msgstr ""
|
4048 |
+
|
4049 |
+
#: includes/admin/templates/form/profile_customize.php:161
|
4050 |
+
msgid "Make Profile Photo Required"
|
4051 |
+
msgstr ""
|
4052 |
+
|
4053 |
+
#: includes/admin/templates/form/profile_customize.php:162
|
4054 |
+
msgid "Require user to update a profile photo when updating their profile"
|
4055 |
+
msgstr ""
|
4056 |
+
|
4057 |
+
#: includes/admin/templates/form/profile_customize.php:173
|
4058 |
+
msgid "Show display name in profile header?"
|
4059 |
+
msgstr ""
|
4060 |
+
|
4061 |
+
#: includes/admin/templates/form/profile_customize.php:184
|
4062 |
+
msgid "Show social links in profile header?"
|
4063 |
+
msgstr ""
|
4064 |
+
|
4065 |
+
#: includes/admin/templates/form/profile_customize.php:195
|
4066 |
+
msgid "Show user description in profile header?"
|
4067 |
+
msgstr ""
|
4068 |
+
|
4069 |
+
#: includes/admin/templates/form/profile_settings.php:21
|
4070 |
+
msgid "Field(s) to show in user meta"
|
4071 |
+
msgstr ""
|
4072 |
+
|
4073 |
+
#: includes/admin/templates/form/profile_settings.php:22
|
4074 |
+
msgid ""
|
4075 |
+
"Fields selected here will appear in the profile header area below the user's "
|
4076 |
+
"display name"
|
4077 |
+
msgstr ""
|
4078 |
+
|
4079 |
+
#: includes/admin/templates/form/register_customize.php:30
|
4080 |
+
msgid "Assign role to form"
|
4081 |
+
msgstr ""
|
4082 |
+
|
4083 |
+
#: includes/admin/templates/form/register_gdpr.php:8
|
4084 |
+
msgid "Select page"
|
4085 |
+
msgstr ""
|
4086 |
+
|
4087 |
+
#: includes/admin/templates/form/register_gdpr.php:23
|
4088 |
+
msgid "Enable on this form"
|
4089 |
+
msgstr ""
|
4090 |
+
|
4091 |
+
#: includes/admin/templates/form/register_gdpr.php:33
|
4092 |
+
msgid "Content"
|
4093 |
+
msgstr ""
|
4094 |
+
|
4095 |
+
#: includes/admin/templates/form/register_gdpr.php:41
|
4096 |
+
msgid "Toggle Show text"
|
4097 |
+
msgstr ""
|
4098 |
+
|
4099 |
+
#: includes/admin/templates/form/register_gdpr.php:42
|
4100 |
+
#: includes/admin/templates/form/register_gdpr.php:43
|
4101 |
+
#: templates/gdpr-register.php:15 templates/gdpr-register.php:17
|
4102 |
+
msgid "Show privacy policy"
|
4103 |
+
msgstr ""
|
4104 |
+
|
4105 |
+
#: includes/admin/templates/form/register_gdpr.php:49
|
4106 |
+
msgid "Toggle Hide text"
|
4107 |
+
msgstr ""
|
4108 |
+
|
4109 |
+
#: includes/admin/templates/form/register_gdpr.php:50
|
4110 |
+
#: includes/admin/templates/form/register_gdpr.php:51
|
4111 |
+
#: templates/gdpr-register.php:16
|
4112 |
+
msgid "Hide privacy policy"
|
4113 |
+
msgstr ""
|
4114 |
+
|
4115 |
+
#: includes/admin/templates/form/register_gdpr.php:57
|
4116 |
+
msgid "Checkbox agreement description"
|
4117 |
+
msgstr ""
|
4118 |
+
|
4119 |
+
#: includes/admin/templates/form/register_gdpr.php:58
|
4120 |
+
#: includes/admin/templates/form/register_gdpr.php:59
|
4121 |
+
#: templates/gdpr-register.php:27
|
4122 |
+
msgid "Please confirm that you agree to our privacy policy"
|
4123 |
+
msgstr ""
|
4124 |
+
|
4125 |
+
#: includes/admin/templates/form/register_gdpr.php:65
|
4126 |
+
msgid "Error Text"
|
4127 |
+
msgstr ""
|
4128 |
+
|
4129 |
+
#: includes/admin/templates/form/register_gdpr.php:66
|
4130 |
+
#: includes/admin/templates/form/register_gdpr.php:67
|
4131 |
+
#: templates/gdpr-register.php:40
|
4132 |
+
msgid "Please confirm your acceptance of our privacy policy"
|
4133 |
+
msgstr ""
|
4134 |
+
|
4135 |
+
#: includes/admin/templates/gdpr.php:4
|
4136 |
+
msgid "What personal data we collect and why we collect it"
|
4137 |
+
msgstr ""
|
4138 |
+
|
4139 |
+
#: includes/admin/templates/gdpr.php:10
|
4140 |
+
#, php-format
|
4141 |
+
msgid "%s provides you with forms for user registration, login and profiles."
|
4142 |
+
msgstr ""
|
4143 |
+
|
4144 |
+
#: includes/admin/templates/gdpr.php:13
|
4145 |
+
msgid "Via these forms you are collecting personal data from your users."
|
4146 |
+
msgstr ""
|
4147 |
+
|
4148 |
+
#: includes/admin/templates/gdpr.php:16
|
4149 |
+
msgid ""
|
4150 |
+
"You should include in your privacy policy what personal data is captured "
|
4151 |
+
"when someone submits/fills in one of the forms, why you collect it and what "
|
4152 |
+
"you do with this data and how long you keep it."
|
4153 |
+
msgstr ""
|
4154 |
+
|
4155 |
+
#: includes/admin/templates/gdpr.php:20
|
4156 |
+
msgid "How long we retain your data"
|
4157 |
+
msgstr ""
|
4158 |
+
|
4159 |
+
#: includes/admin/templates/gdpr.php:23
|
4160 |
+
msgid ""
|
4161 |
+
"Registered user information is retained in your website’s database "
|
4162 |
+
"indefinitely."
|
4163 |
+
msgstr ""
|
4164 |
+
|
4165 |
+
#: includes/admin/templates/gdpr.php:26
|
4166 |
+
msgid ""
|
4167 |
+
"Data can be exported or removed upon users request via the existing "
|
4168 |
+
"WordPress data exporter or eraser."
|
4169 |
+
msgstr ""
|
4170 |
+
|
4171 |
+
#: includes/admin/templates/gdpr.php:29
|
4172 |
+
msgid ""
|
4173 |
+
"If syncing data to a 3rd party service (e.g Mailchimp via our MailChimp "
|
4174 |
+
"extension), data is retained there until unsubscribed or deleted."
|
4175 |
+
msgstr ""
|
4176 |
+
|
4177 |
+
#: includes/admin/templates/gdpr.php:33
|
4178 |
+
msgid "Where we send your data"
|
4179 |
+
msgstr ""
|
4180 |
+
|
4181 |
+
#: includes/admin/templates/gdpr.php:36
|
4182 |
+
#, php-format
|
4183 |
+
msgid "%s does not send any user data outside of your site by default."
|
4184 |
+
msgstr ""
|
4185 |
+
|
4186 |
+
#: includes/admin/templates/gdpr.php:39
|
4187 |
+
msgid ""
|
4188 |
+
"If you have extended the functionality of the plugin (e.g sending registered "
|
4189 |
+
"user data to MailChimp via our MailChimp extension, this user info may be "
|
4190 |
+
"passed to these external services. These services may be located abroad and "
|
4191 |
+
"outwith the EU."
|
4192 |
+
msgstr ""
|
4193 |
+
|
4194 |
+
#: includes/admin/templates/modal/dynamic_edit_field.php:9
|
4195 |
+
msgid "Edit Field"
|
4196 |
+
msgstr ""
|
4197 |
+
|
4198 |
+
#: includes/admin/templates/modal/dynamic_edit_field.php:15
|
4199 |
+
#: includes/admin/templates/modal/dynamic_edit_row.php:15
|
4200 |
+
msgid "Update"
|
4201 |
+
msgstr ""
|
4202 |
+
|
4203 |
+
#: includes/admin/templates/modal/dynamic_edit_field.php:18
|
4204 |
+
#: includes/admin/templates/modal/dynamic_edit_row.php:18
|
4205 |
+
#: includes/admin/templates/modal/dynamic_new_divider.php:18
|
4206 |
+
#: includes/admin/templates/modal/dynamic_new_field.php:18
|
4207 |
+
#: includes/admin/templates/modal/dynamic_new_group.php:18
|
4208 |
+
#: includes/admin/templates/modal/fonticons.php:14
|
4209 |
+
#: includes/admin/templates/role/publish.php:24 includes/class-config.php:251
|
4210 |
+
#: includes/core/class-fields.php:2535 includes/core/class-fields.php:2632
|
4211 |
+
#: includes/core/um-actions-profile.php:649
|
4212 |
+
#: includes/core/um-actions-profile.php:661
|
4213 |
+
#: includes/core/um-actions-profile.php:849
|
4214 |
+
#: includes/core/um-actions-profile.php:882
|
4215 |
+
#: includes/core/um-actions-profile.php:1227
|
4216 |
+
#: includes/core/um-actions-profile.php:1234
|
4217 |
+
msgid "Cancel"
|
4218 |
+
msgstr ""
|
4219 |
+
|
4220 |
+
#: includes/admin/templates/modal/dynamic_edit_row.php:9
|
4221 |
+
msgid "Edit Row Settings"
|
4222 |
+
msgstr ""
|
4223 |
+
|
4224 |
+
#: includes/admin/templates/modal/dynamic_form_preview.php:7
|
4225 |
+
msgid "Live Form Preview"
|
4226 |
+
msgstr ""
|
4227 |
+
|
4228 |
+
#: includes/admin/templates/modal/dynamic_form_preview.php:13
|
4229 |
+
msgid "Continue editing"
|
4230 |
+
msgstr ""
|
4231 |
+
|
4232 |
+
#: includes/admin/templates/modal/dynamic_new_divider.php:9
|
4233 |
+
msgid "Add a New Divider"
|
4234 |
+
msgstr ""
|
4235 |
+
|
4236 |
+
#: includes/admin/templates/modal/dynamic_new_divider.php:15
|
4237 |
+
#: includes/admin/templates/modal/dynamic_new_field.php:15
|
4238 |
+
#: includes/admin/templates/modal/dynamic_new_group.php:15
|
4239 |
+
msgid "Add"
|
4240 |
+
msgstr ""
|
4241 |
+
|
4242 |
+
#: includes/admin/templates/modal/dynamic_new_field.php:9
|
4243 |
+
msgid "Add a New Field"
|
4244 |
+
msgstr ""
|
4245 |
+
|
4246 |
+
#: includes/admin/templates/modal/dynamic_new_group
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|