Version Description
Download this release
Release Info
Developer | champsupertramp |
Plugin | ![]() |
Version | 1.3.73 |
Comparing to | |
See all releases |
Code changes from version 1.3.72 to 1.3.73
- addons/bp_avatar_transfer.php +98 -98
- addons/generate_random_users.php +260 -260
- addons/gravatar_transfer.php +82 -82
- addons/system_info.php +410 -410
- admin/assets/css/um-admin-builder.css +301 -301
- admin/assets/css/um-admin-columns.css +66 -66
- admin/assets/css/um-admin-dashboard.css +127 -127
- admin/assets/css/um-admin-form.css +60 -60
- admin/assets/css/um-admin-global.css +89 -89
- admin/assets/css/um-admin-menu.css +2 -2
- admin/assets/css/um-admin-misc.css +259 -259
- admin/assets/css/um-admin-modal.css +297 -297
- admin/assets/css/um-admin-redux.css +226 -226
- admin/assets/css/um-admin-rtl.css +73 -73
- admin/assets/css/um-admin-select2.css +192 -192
- admin/assets/js/um-admin-ajax.js +52 -52
- admin/assets/js/um-admin-builder.js +41 -41
- admin/assets/js/um-admin-dashboard.js +2 -2
- admin/assets/js/um-admin-dragdrop.js +409 -409
- admin/assets/js/um-admin-field.js +88 -88
- admin/assets/js/um-admin-form.js +37 -37
- admin/assets/js/um-admin-modal.js +364 -331
- admin/assets/js/um-admin-scripts.js +194 -194
- admin/assets/js/um-admin-users.js +30 -30
- admin/core/lib/ReduxFramework/.jshintrc +0 -19
- admin/core/lib/ReduxFramework/CHANGELOG.md +0 -1857
- admin/core/lib/ReduxFramework/CONTRIBUTING.md +0 -27
- admin/core/lib/ReduxFramework/Gruntfile.js +0 -439
- admin/core/lib/ReduxFramework/ReduxCore/assets/css/select2.css +0 -704
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/ace.min.js +0 -11
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/README.md +0 -114
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/release.sh +0 -79
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2-bootstrap.css +0 -87
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2-spinner.gif +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2.css +0 -704
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2.jquery.json +0 -36
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2.js +0 -3541
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2.min.js +0 -23
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2.png +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ar.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_az.js +0 -20
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_bg.js +0 -20
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ca.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_cs.js +0 -51
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_da.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_de.js +0 -18
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_el.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_en.js.template +0 -20
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_es.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_et.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_eu.js +0 -45
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_fa.js +0 -21
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_fi.js +0 -30
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_fr.js +0 -18
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_gl.js +0 -45
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_he.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_hr.js +0 -24
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_hu.js +0 -17
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_id.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_is.js +0 -17
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_it.js +0 -17
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ja.js +0 -17
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ka.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ko.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_lt.js +0 -26
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_lv.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_mk.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ms.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_nb.js +0 -22
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_nl.js +0 -17
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_pl.js +0 -54
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_pt-BR.js +0 -18
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_pt-PT.js +0 -17
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ro.js +0 -17
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_rs.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ru.js +0 -23
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_sk.js +0 -50
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_sv.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_th.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_tr.js +0 -19
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_ug-CN.js +0 -16
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_uk.js +0 -25
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_vi.js +0 -20
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_zh-CN.js +0 -16
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2_locale_zh-TW.js +0 -16
- admin/core/lib/ReduxFramework/ReduxCore/assets/js/vendor/select2/select2x2.png +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/inc/class.redux_themecheck.php +0 -123
- admin/core/lib/ReduxFramework/ReduxCore/inc/debug.php +0 -84
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/ace.js +0 -11
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/ext-emmet.js +0 -5
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/ext-searchbox.js +0 -5
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-css.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-html.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-javascript.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-json.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-less.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-markdown.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-mysql.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-php.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-plain_text.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-sass.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-scss.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-text.js +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/mode-xml.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/css.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/html.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/javascript.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/json.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/less.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/markdown.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/mysql.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/php.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/plain_text.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/sass.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/scss.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/text.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/snippets/xml.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/theme-chrome.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/theme-monokai.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/worker-css.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/worker-html.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/worker-javascript.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/worker-json.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/ace_editor/vendor/worker-php.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/sorter/field_sorter-works.js +0 -40
- admin/core/lib/ReduxFramework/ReduxCore/inc/fields/sorter/field_sorter-works.min.js +0 -1
- admin/core/lib/ReduxFramework/ReduxCore/inc/scssphp/scss.inc.php +0 -4582
- admin/core/lib/ReduxFramework/ReduxCore/inc/sysinfo.php +0 -280
- admin/core/lib/ReduxFramework/ReduxCore/inc/welcome/js/zeroclipboard/ZeroClipboard.swf +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/inc/welcome/js/zeroclipboard/jquery.zeroclipboard.js +0 -1881
- admin/core/lib/ReduxFramework/ReduxCore/inc/welcome/js/zeroclipboard/jquery.zeroclipboard.min.js +0 -17
- admin/core/lib/ReduxFramework/ReduxCore/languages/ar.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/bg_BG.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/bn_BD.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/cs_CZ.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/da_DK.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/de_DE.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/el.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/es_ES.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/es_MX.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/fa_IR.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/fi.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/fr_FR.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/he_IL.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/hi_IN.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/hr.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/hu_HU.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/id_ID.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/it_IT.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/ja.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/km.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/lt_LT.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/nb_NO.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/ne_NP.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/nl_NL.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/pl_PL.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/pt_BR.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/pt_PT.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-ar.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-bg_BG.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-bn_BD.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-cs_CZ.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-da_DK.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-de_DE.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-el.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-es_ES.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-es_MX.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-fa_IR.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-fi.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-fr_FR.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-he_IL.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-hi_IN.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-hr.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-hu_HU.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-id_ID.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-it_IT.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-ja.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-km.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-lt_LT.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-nb_NO.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-ne_NP.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-nl_NL.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-pl_PL.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-pt_BR.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-pt_PT.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-ro_RO.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-ru_RU.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-sk_SK.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-sl_SI.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-sv_SE.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-th.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-tr_TR.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/redux-framework-zh_CN.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/ro_RO.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/ru_RU.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/sk_SK.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/sl_SI.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/sv_SE.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/th.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/tr_TR.mo +0 -0
- admin/core/lib/ReduxFramework/ReduxCore/languages/zh_CN.mo +0 -0
- admin/core/lib/ReduxFramework/codestyles/.editorconfig +0 -24
- admin/core/lib/ReduxFramework/codestyles/PHPStorm.xml +0 -91
- admin/core/lib/ReduxFramework/codestyles/README.md +0 -1
- admin/core/lib/ReduxFramework/composer.json +0 -21
- admin/core/lib/ReduxFramework/package.json +0 -50
- admin/core/lib/ReduxFramework/sample/barebones-config-legacy.php +0 -275
- admin/core/lib/ReduxFramework/sample/barebones-config.php +0 -302
- admin/core/lib/ReduxFramework/sample/info-html.html +0 -67
- admin/core/lib/ReduxFramework/sample/patterns/tree_bark.png +0 -0
- admin/core/lib/ReduxFramework/sample/patterns/triangular.png +0 -0
- admin/core/lib/ReduxFramework/sample/patterns/triangular_@2X.png +0 -0
- admin/core/lib/ReduxFramework/sample/patterns/wild_flowers.png +0 -0
- admin/core/lib/ReduxFramework/sample/presets/preset1.png +0 -0
- admin/core/lib/ReduxFramework/sample/presets/preset2.png +0 -0
- admin/core/lib/ReduxFramework/sample/sample-config-legacy.php +0 -1905
- admin/core/lib/ReduxFramework/sample/sample-config.php +0 -2385
- admin/core/packages/1.3.39.php +26 -26
- admin/core/um-admin-access.php +145 -145
- admin/core/um-admin-actions-ajax.php +78 -51
- admin/core/um-admin-actions-fields.php +66 -66
- admin/core/um-admin-actions-modal.php +368 -368
- admin/core/um-admin-actions-user.php +44 -44
- admin/core/um-admin-actions.php +445 -445
- admin/core/um-admin-builder.php +289 -289
- admin/core/um-admin-columns.php +118 -118
- admin/core/um-admin-dashboard.php +345 -345
- admin/core/um-admin-dragdrop.php +216 -216
- admin/core/um-admin-enqueue.php +294 -294
- admin/core/um-admin-filters-fields.php +132 -132
- admin/core/um-admin-functions.php +111 -111
- admin/core/um-admin-metabox.php +1547 -1512
- admin/core/um-admin-notices.php +225 -225
- admin/core/um-admin-redux.php +126 -126
- admin/core/um-admin-roles.php +85 -85
- admin/core/um-admin-upgrade.php +31 -31
- admin/core/um-admin-users.php +410 -410
- admin/index.php +4 -4
- admin/templates/access/settings.php +72 -72
- admin/templates/dashboard/cache.php +16 -16
- admin/templates/dashboard/feed.php +17 -17
- admin/templates/dashboard/language-contrib.php +2 -2
- admin/templates/dashboard/language-download.php +2 -2
- admin/templates/dashboard/language-update.php +2 -2
- admin/templates/dashboard/purge.php +10 -10
- admin/templates/dashboard/users.php +44 -44
- admin/templates/directory/appearance.php +14 -14
- admin/templates/directory/general.php +97 -97
- admin/templates/directory/pagination.php +35 -35
- admin/templates/directory/profile.php +167 -167
- admin/templates/directory/profile_card.php +22 -22
- admin/templates/directory/search.php +118 -118
- admin/templates/directory/shortcode.php +4 -4
- admin/templates/extensions.php +193 -193
- admin/templates/form/builder.php +31 -31
- admin/templates/form/login_css.php +7 -7
- admin/templates/form/login_customize.php +110 -110
- admin/templates/form/login_settings.php +19 -19
- admin/templates/form/mode.php +16 -16
- admin/templates/form/profile_css.php +7 -7
- admin/templates/form/profile_customize.php +203 -203
- admin/templates/form/profile_settings.php +50 -50
- admin/templates/form/register_css.php +7 -7
- admin/templates/form/register_customize.php +104 -104
- admin/templates/form/shortcode.php +4 -4
- admin/templates/modal/dynamic_edit_field.php +19 -19
- admin/templates/modal/dynamic_edit_row.php +19 -19
- admin/templates/modal/dynamic_form_preview.php +14 -14
- admin/templates/modal/dynamic_new_divider.php +19 -19
- admin/templates/modal/dynamic_new_field.php +19 -19
- admin/templates/modal/dynamic_new_group.php +19 -19
- admin/templates/modal/dynamic_registration_preview.php +14 -14
- admin/templates/modal/fields.php +10 -10
- admin/templates/modal/fonticons.php +15 -15
- admin/templates/role/admin.php +64 -64
- admin/templates/role/delete.php +29 -29
- admin/templates/role/general.php +18 -18
- admin/templates/role/home.php +26 -26
- admin/templates/role/login.php +31 -31
- admin/templates/role/logout.php +29 -29
- admin/templates/role/profile.php +36 -36
- admin/templates/role/register.php +148 -148
- admin/templates/role/sync.php +33 -33
- admin/templates/welcome/about.php +69 -69
- admin/templates/welcome/about_footer.php +13 -13
- admin/templates/welcome/about_header.php +42 -42
- admin/templates/welcome/start.php +61 -61
- admin/um-admin-init.php +76 -76
- assets/css/pickadate/default.css +167 -167
- assets/css/pickadate/default.date.css +244 -244
- assets/css/pickadate/default.time.css +108 -108
- assets/css/pickadate/rtl.css +29 -29
- assets/css/um-account.css +207 -207
- assets/css/um-crop.css +271 -271
- assets/css/um-fileupload.css +199 -199
- assets/css/um-fonticons-fa.css +1578 -1578
- assets/css/um-fonticons-ii.css +1490 -1490
- assets/css/um-members.css +339 -339
- assets/css/um-misc.css +107 -107
- assets/css/um-modal.css +199 -199
- assets/css/um-profile.css +543 -543
- assets/css/um-raty.css +39 -39
- assets/css/um-responsive.css +731 -731
- assets/css/um-scrollbar.css +1067 -1067
- assets/css/um-select.css +619 -619
- assets/css/um-styles.css +903 -903
- assets/css/um-tipsy.css +30 -30
- assets/css/um.min.css +3 -3
- assets/css/um.rtl.css +94 -94
- assets/dynamic_css/dynamic_directory.php +44 -44
- assets/dynamic_css/dynamic_global.php +306 -306
- assets/dynamic_css/dynamic_profile.php +116 -116
- assets/font/fontawesome-webfont.svg +519 -519
- assets/font/ionicons.svg +2232 -2232
- assets/font/raty.svg +14 -14
- assets/js/pickadate/legacy.js +133 -133
- assets/js/pickadate/picker.date.js +1354 -1354
- assets/js/pickadate/picker.js +1163 -1163
- assets/js/pickadate/picker.time.js +1013 -1013
- assets/js/um-account.js +55 -55
- assets/js/um-conditional.js +37 -37
- assets/js/um-crop.js +1570 -1570
- assets/js/um-fileupload.js +7 -7
- assets/js/um-functions.js +997 -997
- assets/js/um-jquery-form.js +1277 -1277
- assets/js/um-members.js +52 -52
- assets/js/um-modal.js +186 -187
- assets/js/um-profile.js +99 -99
- assets/js/um-raty.js +646 -646
- assets/js/um-responsive.js +15 -15
- assets/js/um-scripts.js +411 -294
- assets/js/um-scrollbar.js +4 -4
- assets/js/um-scrollto.js +210 -210
- assets/js/um-select.js +21 -21
- assets/js/um-tipsy.js +266 -266
- assets/js/um.min.js +8 -8
- core/lib/array2xml.php +136 -136
- core/lib/mobiledetect/Mobile_Detect.php +1319 -1319
- core/lib/upload/um-file-upload.php +59 -59
- core/lib/upload/um-image-upload.php +57 -57
- core/um-access.php +84 -84
- core/um-account.php +343 -343
- core/um-actions-access.php +765 -765
- core/um-actions-account.php +474 -474
- core/um-actions-ajax.php +222 -160
- core/um-actions-core.php +87 -87
- core/um-actions-form.php +488 -484
- core/um-actions-global.php +56 -56
- core/um-actions-login.php +301 -301
- core/um-actions-members.php +227 -227
- core/um-actions-misc.php +142 -142
- core/um-actions-modal.php +24 -24
- core/um-actions-password.php +287 -287
- core/um-actions-profile.php +707 -707
- core/um-actions-register.php +350 -339
- core/um-actions-save-profile.php +65 -65
- core/um-actions-user.php +83 -83
- core/um-actions-wpadmin.php +134 -134
- core/um-api.php +865 -865
- core/um-builtin.php +1623 -1623
- core/um-chart.php +129 -129
- core/um-cron.php +51 -51
- core/um-datetime.php +118 -118
- core/um-enqueue.php +396 -396
- core/um-fields.php +2862 -2601
- core/um-files.php +698 -698
- core/um-filters-account.php +49 -49
- core/um-filters-addons.php +66 -66
- core/um-filters-arguments.php +49 -49
- core/um-filters-avatars.php +69 -69
- core/um-filters-commenting.php +25 -25
- core/um-filters-fields.php +434 -386
- core/um-filters-files.php +20 -20
- core/um-filters-language.php +35 -35
- core/um-filters-login.php +94 -94
- core/um-filters-members.php +355 -337
- core/um-filters-misc.php +9 -9
- core/um-filters-navmenu.php +81 -81
- core/um-filters-profile.php +98 -98
- core/um-filters-user.php +207 -207
- core/um-fonticons.php +36 -36
- core/um-form.php +279 -284
- core/um-login.php +4 -4
- core/um-logout.php +41 -41
- core/um-mail.php +123 -123
- core/um-members.php +326 -322
- core/um-menu.php +32 -32
- core/um-modal.php +24 -24
- core/um-navmenu-walker-edit.php +142 -142
- core/um-navmenu-walker.php +24 -24
- core/um-navmenu.php +24 -24
- core/um-password.php +233 -233
- core/um-permalinks.php +498 -491
- core/um-profile.php +207 -200
- core/um-query.php +428 -428
- core/um-register.php +30 -30
- core/um-rewrite.php +190 -189
- core/um-setup.php +491 -491
- core/um-short-functions.php +1894 -1889
- core/um-shortcodes.php +605 -605
- core/um-taxonomies.php +75 -75
- core/um-tracking.php +155 -155
- core/um-uninstall.php +48 -48
- core/um-user-posts.php +126 -126
- core/um-user.php +1074 -1072
- core/um-validation.php +202 -202
- core/widgets/um-search-widget.php +71 -71
- index.php +63 -63
- languages/ultimatemember-en_US.mo +0 -0
- languages/ultimatemember-en_US.po +61 -61
- license.txt +281 -281
- readme.txt +1617 -1586
- templates/account.php +63 -63
- templates/email/approved_email.html +39 -39
- templates/email/changedpw_email.html +31 -31
- templates/email/checkmail_email.html +31 -31
- templates/email/deletion_email.html +29 -29
- templates/email/inactive_email.html +29 -29
- templates/email/pending_email.html +29 -29
- templates/email/rejected_email.html +29 -29
- templates/email/resetpw_email.html +31 -31
- templates/email/welcome_email.html +32 -32
- templates/login-to-view.php +4 -4
- templates/login.php +26 -26
- templates/logout.php +24 -24
- templates/members-grid.php +112 -112
- templates/members.php +14 -14
- templates/message.php +8 -8
- templates/modal/um_upload_single.php +2 -2
- templates/modal/um_view_photo.php +12 -12
- templates/password-change.php +24 -24
- templates/password-reset.php +32 -32
- templates/profile.php +33 -33
- templates/profile/comments-single.php +17 -17
- templates/profile/comments.php +24 -24
- templates/profile/posts-single.php +29 -29
- templates/profile/posts.php +26 -26
- templates/register.php +26 -26
- templates/searchform.php +8 -8
- um-config.php +2160 -2160
- um-init.php +235 -226
addons/bp_avatar_transfer.php
CHANGED
@@ -1,99 +1,99 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class UM_ADDON_bp_avatar_transfer {
|
4 |
-
|
5 |
-
function __construct() {
|
6 |
-
|
7 |
-
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
8 |
-
|
9 |
-
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
10 |
-
|
11 |
-
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
12 |
-
|
13 |
-
}
|
14 |
-
|
15 |
-
function admin_menu() {
|
16 |
-
|
17 |
-
global $ultimatemember;
|
18 |
-
$this->addon = $ultimatemember->addons['bp_avatar_transfer'];
|
19 |
-
add_submenu_page('ultimatemember', $this->addon[0], $this->addon[0], 'manage_options', 'bp_avatar_transfer', array(&$this, 'content') );
|
20 |
-
|
21 |
-
}
|
22 |
-
|
23 |
-
function um_admin_addon_hook( $hook ) {
|
24 |
-
global $ultimatemember;
|
25 |
-
switch( $hook ) {
|
26 |
-
case 'bp_avatar_transfer':
|
27 |
-
if ( class_exists('BuddyPress') ) {
|
28 |
-
|
29 |
-
$path = bp_core_avatar_upload_path() . '/avatars';
|
30 |
-
|
31 |
-
$files = glob( $path . '/*');
|
32 |
-
$i = 0;
|
33 |
-
foreach( $files as $key ) {
|
34 |
-
$q = (count(glob("$key/*")) === 0) ? 0 : 1;
|
35 |
-
if ( $q == 1 ) {
|
36 |
-
$photo = glob( $key . '/*');
|
37 |
-
foreach( $photo as $file ) {
|
38 |
-
if ( strstr( $file, 'bpfull' ) ) {
|
39 |
-
$get_user_id = explode('/', $file);
|
40 |
-
array_pop($get_user_id);
|
41 |
-
$user_id = end($get_user_id);
|
42 |
-
if ( !file_exists( $ultimatemember->files->upload_basedir . $user_id . '/profile_photo.jpg' ) ) {
|
43 |
-
$ultimatemember->files->new_user( $user_id );
|
44 |
-
copy( $file, $ultimatemember->files->upload_basedir . $user_id . '/profile_photo.jpg' );
|
45 |
-
update_user_meta($user_id, 'profile_photo', 'profile_photo.jpg');
|
46 |
-
$i++;
|
47 |
-
}
|
48 |
-
}
|
49 |
-
}
|
50 |
-
}
|
51 |
-
}
|
52 |
-
|
53 |
-
$this->content = '<p><strong>Done. Process completed!</p>';
|
54 |
-
$this->content .= $i . ' user(s) changed.</strong></p>';
|
55 |
-
|
56 |
-
}
|
57 |
-
break;
|
58 |
-
}
|
59 |
-
}
|
60 |
-
|
61 |
-
function admin_init() {
|
62 |
-
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
63 |
-
$hook = $_REQUEST['um-addon-hook'];
|
64 |
-
do_action("um_admin_addon_hook", $hook);
|
65 |
-
}
|
66 |
-
}
|
67 |
-
|
68 |
-
function content() {
|
69 |
-
|
70 |
-
$this->process_link = add_query_arg('um-addon-hook','bp_avatar_transfer');
|
71 |
-
|
72 |
-
?>
|
73 |
-
|
74 |
-
<div class="wrap">
|
75 |
-
|
76 |
-
<h2>Ultimate Member <sup style="font-size:15px"><?php echo ultimatemember_version; ?></sup></h2>
|
77 |
-
|
78 |
-
<h3><?php echo $this->addon[0]; ?></h3>
|
79 |
-
|
80 |
-
<?php if ( isset( $this->content ) ) {
|
81 |
-
echo $this->content;
|
82 |
-
} else { ?>
|
83 |
-
|
84 |
-
<p>This tool allows you to move all custom user photos/avatars from BuddyPress to Ultimate Member platform. This can help you If you are switching from BuddyPress.</p>
|
85 |
-
<p>Depending on your users database, this could take a few moments. To start the process, click the following button.</p>
|
86 |
-
|
87 |
-
<p><a href="<?php echo $this->process_link; ?>" class="button button-primary">Start transferring avatars</a></p>
|
88 |
-
|
89 |
-
<?php } ?>
|
90 |
-
|
91 |
-
</div><div class="clear"></div>
|
92 |
-
|
93 |
-
<?php
|
94 |
-
|
95 |
-
}
|
96 |
-
|
97 |
-
}
|
98 |
-
|
99 |
$UM_ADDON_bp_avatar_transfer = new UM_ADDON_bp_avatar_transfer();
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class UM_ADDON_bp_avatar_transfer {
|
4 |
+
|
5 |
+
function __construct() {
|
6 |
+
|
7 |
+
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
8 |
+
|
9 |
+
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
10 |
+
|
11 |
+
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
12 |
+
|
13 |
+
}
|
14 |
+
|
15 |
+
function admin_menu() {
|
16 |
+
|
17 |
+
global $ultimatemember;
|
18 |
+
$this->addon = $ultimatemember->addons['bp_avatar_transfer'];
|
19 |
+
add_submenu_page('ultimatemember', $this->addon[0], $this->addon[0], 'manage_options', 'bp_avatar_transfer', array(&$this, 'content') );
|
20 |
+
|
21 |
+
}
|
22 |
+
|
23 |
+
function um_admin_addon_hook( $hook ) {
|
24 |
+
global $ultimatemember;
|
25 |
+
switch( $hook ) {
|
26 |
+
case 'bp_avatar_transfer':
|
27 |
+
if ( class_exists('BuddyPress') ) {
|
28 |
+
|
29 |
+
$path = bp_core_avatar_upload_path() . '/avatars';
|
30 |
+
|
31 |
+
$files = glob( $path . '/*');
|
32 |
+
$i = 0;
|
33 |
+
foreach( $files as $key ) {
|
34 |
+
$q = (count(glob("$key/*")) === 0) ? 0 : 1;
|
35 |
+
if ( $q == 1 ) {
|
36 |
+
$photo = glob( $key . '/*');
|
37 |
+
foreach( $photo as $file ) {
|
38 |
+
if ( strstr( $file, 'bpfull' ) ) {
|
39 |
+
$get_user_id = explode('/', $file);
|
40 |
+
array_pop($get_user_id);
|
41 |
+
$user_id = end($get_user_id);
|
42 |
+
if ( !file_exists( $ultimatemember->files->upload_basedir . $user_id . '/profile_photo.jpg' ) ) {
|
43 |
+
$ultimatemember->files->new_user( $user_id );
|
44 |
+
copy( $file, $ultimatemember->files->upload_basedir . $user_id . '/profile_photo.jpg' );
|
45 |
+
update_user_meta($user_id, 'profile_photo', 'profile_photo.jpg');
|
46 |
+
$i++;
|
47 |
+
}
|
48 |
+
}
|
49 |
+
}
|
50 |
+
}
|
51 |
+
}
|
52 |
+
|
53 |
+
$this->content = '<p><strong>Done. Process completed!</p>';
|
54 |
+
$this->content .= $i . ' user(s) changed.</strong></p>';
|
55 |
+
|
56 |
+
}
|
57 |
+
break;
|
58 |
+
}
|
59 |
+
}
|
60 |
+
|
61 |
+
function admin_init() {
|
62 |
+
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
63 |
+
$hook = $_REQUEST['um-addon-hook'];
|
64 |
+
do_action("um_admin_addon_hook", $hook);
|
65 |
+
}
|
66 |
+
}
|
67 |
+
|
68 |
+
function content() {
|
69 |
+
|
70 |
+
$this->process_link = add_query_arg('um-addon-hook','bp_avatar_transfer');
|
71 |
+
|
72 |
+
?>
|
73 |
+
|
74 |
+
<div class="wrap">
|
75 |
+
|
76 |
+
<h2>Ultimate Member <sup style="font-size:15px"><?php echo ultimatemember_version; ?></sup></h2>
|
77 |
+
|
78 |
+
<h3><?php echo $this->addon[0]; ?></h3>
|
79 |
+
|
80 |
+
<?php if ( isset( $this->content ) ) {
|
81 |
+
echo $this->content;
|
82 |
+
} else { ?>
|
83 |
+
|
84 |
+
<p>This tool allows you to move all custom user photos/avatars from BuddyPress to Ultimate Member platform. This can help you If you are switching from BuddyPress.</p>
|
85 |
+
<p>Depending on your users database, this could take a few moments. To start the process, click the following button.</p>
|
86 |
+
|
87 |
+
<p><a href="<?php echo $this->process_link; ?>" class="button button-primary">Start transferring avatars</a></p>
|
88 |
+
|
89 |
+
<?php } ?>
|
90 |
+
|
91 |
+
</div><div class="clear"></div>
|
92 |
+
|
93 |
+
<?php
|
94 |
+
|
95 |
+
}
|
96 |
+
|
97 |
+
}
|
98 |
+
|
99 |
$UM_ADDON_bp_avatar_transfer = new UM_ADDON_bp_avatar_transfer();
|
addons/generate_random_users.php
CHANGED
@@ -1,261 +1,261 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class UM_ADDON_generate_random_users {
|
4 |
-
|
5 |
-
function __construct() {
|
6 |
-
|
7 |
-
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
8 |
-
|
9 |
-
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
10 |
-
|
11 |
-
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
12 |
-
|
13 |
-
}
|
14 |
-
|
15 |
-
|
16 |
-
function admin_menu() {
|
17 |
-
|
18 |
-
global $ultimatemember;
|
19 |
-
$this->addon = $ultimatemember->addons['generate_random_users'];
|
20 |
-
add_submenu_page('ultimatemember', $this->addon[0], $this->addon[0], 'manage_options', 'generate_random_users', array(&$this, 'content') );
|
21 |
-
|
22 |
-
}
|
23 |
-
|
24 |
-
function um_admin_addon_hook( $hook ) {
|
25 |
-
global $ultimatemember;
|
26 |
-
|
27 |
-
switch ( $hook ) {
|
28 |
-
case 'generate_random_users':
|
29 |
-
$json_url = "https://randomuser.me/api/";
|
30 |
-
|
31 |
-
$arr_post_header = array( );
|
32 |
-
|
33 |
-
if( isset( $_GET['gender'] ) ){
|
34 |
-
$gender = $_GET['gender'];
|
35 |
-
if( $gender != 'both' ){
|
36 |
-
$json_url = add_query_arg('gender', $gender, $json_url );
|
37 |
-
$arr_post_header['gender'] = $gender;
|
38 |
-
}
|
39 |
-
}
|
40 |
-
|
41 |
-
if( isset( $_GET['nationality'] ) ){
|
42 |
-
$nationality = implode(",", $_GET['nationality']);
|
43 |
-
if( ! empty( $nationality ) ){
|
44 |
-
$json_url = add_query_arg('nat', $nationality, $json_url );
|
45 |
-
}
|
46 |
-
$arr_post_header['nat'] = $nationality;
|
47 |
-
}
|
48 |
-
|
49 |
-
if( isset( $_GET['total_users'] ) ){
|
50 |
-
$total_users = intval( $_GET['total_users'] );
|
51 |
-
$json_url = add_query_arg('results', $total_users, $json_url );
|
52 |
-
$arr_post_header['results'] = $total_users;
|
53 |
-
}
|
54 |
-
|
55 |
-
|
56 |
-
$response = wp_remote_get( $json_url, array('timeout' => 120 ) );
|
57 |
-
$json = '';
|
58 |
-
|
59 |
-
if( is_array($response) ) {
|
60 |
-
if( isset( $response['body'] ) && ! empty( $response['body'] ) ){
|
61 |
-
$json = json_decode( $response['body'] );
|
62 |
-
}
|
63 |
-
}
|
64 |
-
|
65 |
-
if( is_wp_error( $response ) ){
|
66 |
-
wp_die( $response->get_error_message() );
|
67 |
-
}
|
68 |
-
|
69 |
-
if( ! empty( $json ) ){
|
70 |
-
|
71 |
-
remove_action('um_after_new_user_register', 'um_after_new_user_register', 10, 2);
|
72 |
-
|
73 |
-
$failed_dummies = 0;
|
74 |
-
$default_role = um_get_option("default_role");
|
75 |
-
|
76 |
-
foreach( $json->results as $dummy ){
|
77 |
-
|
78 |
-
if( isset( $_GET['password'] ) && ! empty( $_GET['password'] ) ){
|
79 |
-
$password = $_GET['password'];
|
80 |
-
}else{
|
81 |
-
$password = wp_generate_password( 8, false );
|
82 |
-
}
|
83 |
-
|
84 |
-
$site_url = @$_SERVER['SERVER_NAME'];
|
85 |
-
$random_generate = wp_generate_password( 4, false );
|
86 |
-
|
87 |
-
if( username_exists( $dummy->login->username ) ){
|
88 |
-
$dummy->login->username = $dummy->login->username.'_'. $random_generate;
|
89 |
-
}
|
90 |
-
|
91 |
-
$dummy->login->email = $dummy->login->username."_dummy@{$site_url}";
|
92 |
-
|
93 |
-
if( email_exists( $dummy->login->email ) ){
|
94 |
-
$dummy->login->email = $dummy->login->username."_dummy_{$random_generate}@{$site_url}";
|
95 |
-
}
|
96 |
-
|
97 |
-
$userdata = array(
|
98 |
-
'display_name' => ucfirst( $dummy->name->first )." ".ucfirst( $dummy->name->last ),
|
99 |
-
'first_name' => ucfirst( $dummy->name->first ),
|
100 |
-
'last_name' => ucfirst( $dummy->name->last ),
|
101 |
-
'user_email' => $dummy->login->email,
|
102 |
-
'user_login' => $dummy->login->username,
|
103 |
-
'user_pass' => $password,
|
104 |
-
);
|
105 |
-
|
106 |
-
$user_id = wp_insert_user( $userdata );
|
107 |
-
|
108 |
-
if( is_wp_error( $user_id ) ){
|
109 |
-
$failed_dummies++;
|
110 |
-
}
|
111 |
-
|
112 |
-
$usermeta = array(
|
113 |
-
'synced_profile_photo' => $dummy->picture->large,
|
114 |
-
'gender' => ucfirst($dummy->gender),
|
115 |
-
'birth_date' => date("Y/m/d", strtotime( $dummy->dob) ),
|
116 |
-
'_um_last_login' => date("Y/m/d", strtotime( $dummy->registered ) ),
|
117 |
-
'mobile_number' => $dummy->cell,
|
118 |
-
'phone_number' => $dummy->phone,
|
119 |
-
'synced_gravatar_hashed_id' => md5( strtolower( trim( $dummy->email ) ) ),
|
120 |
-
'account_status' => 'approved',
|
121 |
-
'_um_profile_dummy' => true,
|
122 |
-
'role' => isset( $default_role ) ? $default_role: 'member'
|
123 |
-
);
|
124 |
-
|
125 |
-
if( isset( $_GET['add_cover_photo'] ) && $_GET['add_cover_photo'] == 1 ){
|
126 |
-
|
127 |
-
$rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
|
128 |
-
$color = $rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)];
|
129 |
-
|
130 |
-
$usermeta['synced_cover_photo'] = 'http://placehold.it/650x350/'.$color.'/'.$color;
|
131 |
-
|
132 |
-
}
|
133 |
-
|
134 |
-
foreach ( $usermeta as $key => $value ) {
|
135 |
-
update_user_meta( $user_id, $key, $value );
|
136 |
-
}
|
137 |
-
|
138 |
-
|
139 |
-
}
|
140 |
-
wp_redirect( admin_url("admin.php?page=generate_random_users") ); exit;
|
141 |
-
}
|
142 |
-
|
143 |
-
break;
|
144 |
-
|
145 |
-
case 'remove_random_users':
|
146 |
-
|
147 |
-
$dummies = new WP_User_Query(
|
148 |
-
array(
|
149 |
-
'fields' => array('ID'),
|
150 |
-
'meta_key' => '_um_profile_dummy',
|
151 |
-
'meta_value' => true,
|
152 |
-
'meta_compare' => '='
|
153 |
-
)
|
154 |
-
);
|
155 |
-
|
156 |
-
if( $dummies->total_users > 0 ){
|
157 |
-
foreach ( $dummies->get_results() as $dummy ) {
|
158 |
-
|
159 |
-
if( isset( $dummy->ID ) ){
|
160 |
-
wp_delete_user( $dummy->ID );
|
161 |
-
}
|
162 |
-
|
163 |
-
}
|
164 |
-
}
|
165 |
-
|
166 |
-
delete_option('um_generated_dumies');
|
167 |
-
wp_redirect( admin_url("admin.php?page=generate_random_users") );
|
168 |
-
exit;
|
169 |
-
|
170 |
-
break;
|
171 |
-
|
172 |
-
default:
|
173 |
-
|
174 |
-
break;
|
175 |
-
}
|
176 |
-
|
177 |
-
}
|
178 |
-
|
179 |
-
function admin_init() {
|
180 |
-
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
181 |
-
$hook = $_REQUEST['um-addon-hook'];
|
182 |
-
do_action("um_admin_addon_hook", $hook );
|
183 |
-
}
|
184 |
-
}
|
185 |
-
|
186 |
-
function content() {
|
187 |
-
|
188 |
-
?>
|
189 |
-
|
190 |
-
<div class="wrap">
|
191 |
-
|
192 |
-
<h2>Ultimate Member <sup style="font-size:15px"><?php echo ultimatemember_version; ?></sup></h2>
|
193 |
-
|
194 |
-
<h3><?php echo $this->addon[0]; ?></h3>
|
195 |
-
|
196 |
-
<?php if ( isset( $this->content ) ) {
|
197 |
-
echo $this->content;
|
198 |
-
} else { ?>
|
199 |
-
|
200 |
-
<p>This tool allows you to add dummies as Ultimate Member users. </p>
|
201 |
-
<?php
|
202 |
-
$dummies = new WP_User_Query(
|
203 |
-
array(
|
204 |
-
'fields' => array('ID'),
|
205 |
-
'meta_key' => '_um_profile_dummy',
|
206 |
-
'meta_value' => true,
|
207 |
-
'meta_compare' => '='
|
208 |
-
)
|
209 |
-
);
|
210 |
-
?>
|
211 |
-
<?php if( $dummies->total_users > 0 ): ?>
|
212 |
-
<form method="get">
|
213 |
-
<p>
|
214 |
-
<input type="submit" class="button button-secondary" value="Remove Generated Dummies (<?php echo $dummies->total_users;?>)"/>
|
215 |
-
<input type="hidden" name="um-addon-hook" value="remove_random_users"/>
|
216 |
-
<input type="hidden" name="page" value="generate_random_users"/>
|
217 |
-
</form>
|
218 |
-
<br/>
|
219 |
-
<?php endif; ?>
|
220 |
-
<form method="get">
|
221 |
-
<label for="total_users">How many dummies? <br/><input type="text" name="total_users" value="30" /> <br/><br/>
|
222 |
-
<label for="gender">Gender:</label> <br/>
|
223 |
-
<label><input type='radio' name="gender" value="male"/> Male</label> <br/>
|
224 |
-
<label><input type='radio' name="gender" value="female"/> Female</label> <br/>
|
225 |
-
<label><input type='radio' checked="checked" name="gender" value="both"/> Both</label>
|
226 |
-
<br/><br/>
|
227 |
-
<label for="nationality">Available Nationalities:</label><br/>
|
228 |
-
<select style="width:150px" name="nationality[]" multiple>
|
229 |
-
<?php
|
230 |
-
$nationality = array( 'AU', 'BR', 'CA', 'CH', 'DE', 'DK', 'ES', 'FI', 'FR', 'GB', 'IE', 'IR', 'NL', 'NZ', 'TR', 'US' );
|
231 |
-
foreach ($nationality as $code ) {
|
232 |
-
$value = strtolower($code);
|
233 |
-
echo "<option value='".$value."'/> ".$code."</option>";
|
234 |
-
}
|
235 |
-
?>
|
236 |
-
</select>
|
237 |
-
<br/><br/>
|
238 |
-
<label for="add_cover_photo"><input type="checkbox" name="add_cover_photo" value="1" />
|
239 |
-
Add cover photos?</label>
|
240 |
-
<br/><small>Generates random colored cover photos</small>
|
241 |
-
<br/><br/>
|
242 |
-
<label for="password">
|
243 |
-
Account Passwords:
|
244 |
-
<input type="password" name="password" />
|
245 |
-
<br/><small>if you leave this blank, it will generate random strings password</small>
|
246 |
-
</label>
|
247 |
-
<br/>
|
248 |
-
<input type="submit" class="button button-primary" value="Start Generating Dummies"/>
|
249 |
-
<input type="hidden" name="um-addon-hook" value="generate_random_users"/>
|
250 |
-
|
251 |
-
<?php } ?>
|
252 |
-
</form>
|
253 |
-
|
254 |
-
</div><div class="clear"></div>
|
255 |
-
|
256 |
-
<?php
|
257 |
-
|
258 |
-
}
|
259 |
-
}
|
260 |
-
|
261 |
$UM_ADDON_generate_random_users = new UM_ADDON_generate_random_users ();
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class UM_ADDON_generate_random_users {
|
4 |
+
|
5 |
+
function __construct() {
|
6 |
+
|
7 |
+
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
8 |
+
|
9 |
+
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
10 |
+
|
11 |
+
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
12 |
+
|
13 |
+
}
|
14 |
+
|
15 |
+
|
16 |
+
function admin_menu() {
|
17 |
+
|
18 |
+
global $ultimatemember;
|
19 |
+
$this->addon = $ultimatemember->addons['generate_random_users'];
|
20 |
+
add_submenu_page('ultimatemember', $this->addon[0], $this->addon[0], 'manage_options', 'generate_random_users', array(&$this, 'content') );
|
21 |
+
|
22 |
+
}
|
23 |
+
|
24 |
+
function um_admin_addon_hook( $hook ) {
|
25 |
+
global $ultimatemember;
|
26 |
+
|
27 |
+
switch ( $hook ) {
|
28 |
+
case 'generate_random_users':
|
29 |
+
$json_url = "https://randomuser.me/api/";
|
30 |
+
|
31 |
+
$arr_post_header = array( );
|
32 |
+
|
33 |
+
if( isset( $_GET['gender'] ) ){
|
34 |
+
$gender = $_GET['gender'];
|
35 |
+
if( $gender != 'both' ){
|
36 |
+
$json_url = add_query_arg('gender', $gender, $json_url );
|
37 |
+
$arr_post_header['gender'] = $gender;
|
38 |
+
}
|
39 |
+
}
|
40 |
+
|
41 |
+
if( isset( $_GET['nationality'] ) ){
|
42 |
+
$nationality = implode(",", $_GET['nationality']);
|
43 |
+
if( ! empty( $nationality ) ){
|
44 |
+
$json_url = add_query_arg('nat', $nationality, $json_url );
|
45 |
+
}
|
46 |
+
$arr_post_header['nat'] = $nationality;
|
47 |
+
}
|
48 |
+
|
49 |
+
if( isset( $_GET['total_users'] ) ){
|
50 |
+
$total_users = intval( $_GET['total_users'] );
|
51 |
+
$json_url = add_query_arg('results', $total_users, $json_url );
|
52 |
+
$arr_post_header['results'] = $total_users;
|
53 |
+
}
|
54 |
+
|
55 |
+
|
56 |
+
$response = wp_remote_get( $json_url, array('timeout' => 120 ) );
|
57 |
+
$json = '';
|
58 |
+
|
59 |
+
if( is_array($response) ) {
|
60 |
+
if( isset( $response['body'] ) && ! empty( $response['body'] ) ){
|
61 |
+
$json = json_decode( $response['body'] );
|
62 |
+
}
|
63 |
+
}
|
64 |
+
|
65 |
+
if( is_wp_error( $response ) ){
|
66 |
+
wp_die( $response->get_error_message() );
|
67 |
+
}
|
68 |
+
|
69 |
+
if( ! empty( $json ) ){
|
70 |
+
|
71 |
+
remove_action('um_after_new_user_register', 'um_after_new_user_register', 10, 2);
|
72 |
+
|
73 |
+
$failed_dummies = 0;
|
74 |
+
$default_role = um_get_option("default_role");
|
75 |
+
|
76 |
+
foreach( $json->results as $dummy ){
|
77 |
+
|
78 |
+
if( isset( $_GET['password'] ) && ! empty( $_GET['password'] ) ){
|
79 |
+
$password = $_GET['password'];
|
80 |
+
}else{
|
81 |
+
$password = wp_generate_password( 8, false );
|
82 |
+
}
|
83 |
+
|
84 |
+
$site_url = @$_SERVER['SERVER_NAME'];
|
85 |
+
$random_generate = wp_generate_password( 4, false );
|
86 |
+
|
87 |
+
if( username_exists( $dummy->login->username ) ){
|
88 |
+
$dummy->login->username = $dummy->login->username.'_'. $random_generate;
|
89 |
+
}
|
90 |
+
|
91 |
+
$dummy->login->email = $dummy->login->username."_dummy@{$site_url}";
|
92 |
+
|
93 |
+
if( email_exists( $dummy->login->email ) ){
|
94 |
+
$dummy->login->email = $dummy->login->username."_dummy_{$random_generate}@{$site_url}";
|
95 |
+
}
|
96 |
+
|
97 |
+
$userdata = array(
|
98 |
+
'display_name' => ucfirst( $dummy->name->first )." ".ucfirst( $dummy->name->last ),
|
99 |
+
'first_name' => ucfirst( $dummy->name->first ),
|
100 |
+
'last_name' => ucfirst( $dummy->name->last ),
|
101 |
+
'user_email' => $dummy->login->email,
|
102 |
+
'user_login' => $dummy->login->username,
|
103 |
+
'user_pass' => $password,
|
104 |
+
);
|
105 |
+
|
106 |
+
$user_id = wp_insert_user( $userdata );
|
107 |
+
|
108 |
+
if( is_wp_error( $user_id ) ){
|
109 |
+
$failed_dummies++;
|
110 |
+
}
|
111 |
+
|
112 |
+
$usermeta = array(
|
113 |
+
'synced_profile_photo' => $dummy->picture->large,
|
114 |
+
'gender' => ucfirst($dummy->gender),
|
115 |
+
'birth_date' => date("Y/m/d", strtotime( $dummy->dob) ),
|
116 |
+
'_um_last_login' => date("Y/m/d", strtotime( $dummy->registered ) ),
|
117 |
+
'mobile_number' => $dummy->cell,
|
118 |
+
'phone_number' => $dummy->phone,
|
119 |
+
'synced_gravatar_hashed_id' => md5( strtolower( trim( $dummy->email ) ) ),
|
120 |
+
'account_status' => 'approved',
|
121 |
+
'_um_profile_dummy' => true,
|
122 |
+
'role' => isset( $default_role ) ? $default_role: 'member'
|
123 |
+
);
|
124 |
+
|
125 |
+
if( isset( $_GET['add_cover_photo'] ) && $_GET['add_cover_photo'] == 1 ){
|
126 |
+
|
127 |
+
$rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
|
128 |
+
$color = $rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)];
|
129 |
+
|
130 |
+
$usermeta['synced_cover_photo'] = 'http://placehold.it/650x350/'.$color.'/'.$color;
|
131 |
+
|
132 |
+
}
|
133 |
+
|
134 |
+
foreach ( $usermeta as $key => $value ) {
|
135 |
+
update_user_meta( $user_id, $key, $value );
|
136 |
+
}
|
137 |
+
|
138 |
+
|
139 |
+
}
|
140 |
+
wp_redirect( admin_url("admin.php?page=generate_random_users") ); exit;
|
141 |
+
}
|
142 |
+
|
143 |
+
break;
|
144 |
+
|
145 |
+
case 'remove_random_users':
|
146 |
+
|
147 |
+
$dummies = new WP_User_Query(
|
148 |
+
array(
|
149 |
+
'fields' => array('ID'),
|
150 |
+
'meta_key' => '_um_profile_dummy',
|
151 |
+
'meta_value' => true,
|
152 |
+
'meta_compare' => '='
|
153 |
+
)
|
154 |
+
);
|
155 |
+
|
156 |
+
if( $dummies->total_users > 0 ){
|
157 |
+
foreach ( $dummies->get_results() as $dummy ) {
|
158 |
+
|
159 |
+
if( isset( $dummy->ID ) ){
|
160 |
+
wp_delete_user( $dummy->ID );
|
161 |
+
}
|
162 |
+
|
163 |
+
}
|
164 |
+
}
|
165 |
+
|
166 |
+
delete_option('um_generated_dumies');
|
167 |
+
wp_redirect( admin_url("admin.php?page=generate_random_users") );
|
168 |
+
exit;
|
169 |
+
|
170 |
+
break;
|
171 |
+
|
172 |
+
default:
|
173 |
+
|
174 |
+
break;
|
175 |
+
}
|
176 |
+
|
177 |
+
}
|
178 |
+
|
179 |
+
function admin_init() {
|
180 |
+
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
181 |
+
$hook = $_REQUEST['um-addon-hook'];
|
182 |
+
do_action("um_admin_addon_hook", $hook );
|
183 |
+
}
|
184 |
+
}
|
185 |
+
|
186 |
+
function content() {
|
187 |
+
|
188 |
+
?>
|
189 |
+
|
190 |
+
<div class="wrap">
|
191 |
+
|
192 |
+
<h2>Ultimate Member <sup style="font-size:15px"><?php echo ultimatemember_version; ?></sup></h2>
|
193 |
+
|
194 |
+
<h3><?php echo $this->addon[0]; ?></h3>
|
195 |
+
|
196 |
+
<?php if ( isset( $this->content ) ) {
|
197 |
+
echo $this->content;
|
198 |
+
} else { ?>
|
199 |
+
|
200 |
+
<p>This tool allows you to add dummies as Ultimate Member users. </p>
|
201 |
+
<?php
|
202 |
+
$dummies = new WP_User_Query(
|
203 |
+
array(
|
204 |
+
'fields' => array('ID'),
|
205 |
+
'meta_key' => '_um_profile_dummy',
|
206 |
+
'meta_value' => true,
|
207 |
+
'meta_compare' => '='
|
208 |
+
)
|
209 |
+
);
|
210 |
+
?>
|
211 |
+
<?php if( $dummies->total_users > 0 ): ?>
|
212 |
+
<form method="get">
|
213 |
+
<p>
|
214 |
+
<input type="submit" class="button button-secondary" value="Remove Generated Dummies (<?php echo $dummies->total_users;?>)"/>
|
215 |
+
<input type="hidden" name="um-addon-hook" value="remove_random_users"/>
|
216 |
+
<input type="hidden" name="page" value="generate_random_users"/>
|
217 |
+
</form>
|
218 |
+
<br/>
|
219 |
+
<?php endif; ?>
|
220 |
+
<form method="get">
|
221 |
+
<label for="total_users">How many dummies? <br/><input type="text" name="total_users" value="30" /> <br/><br/>
|
222 |
+
<label for="gender">Gender:</label> <br/>
|
223 |
+
<label><input type='radio' name="gender" value="male"/> Male</label> <br/>
|
224 |
+
<label><input type='radio' name="gender" value="female"/> Female</label> <br/>
|
225 |
+
<label><input type='radio' checked="checked" name="gender" value="both"/> Both</label>
|
226 |
+
<br/><br/>
|
227 |
+
<label for="nationality">Available Nationalities:</label><br/>
|
228 |
+
<select style="width:150px" name="nationality[]" multiple>
|
229 |
+
<?php
|
230 |
+
$nationality = array( 'AU', 'BR', 'CA', 'CH', 'DE', 'DK', 'ES', 'FI', 'FR', 'GB', 'IE', 'IR', 'NL', 'NZ', 'TR', 'US' );
|
231 |
+
foreach ($nationality as $code ) {
|
232 |
+
$value = strtolower($code);
|
233 |
+
echo "<option value='".$value."'/> ".$code."</option>";
|
234 |
+
}
|
235 |
+
?>
|
236 |
+
</select>
|
237 |
+
<br/><br/>
|
238 |
+
<label for="add_cover_photo"><input type="checkbox" name="add_cover_photo" value="1" />
|
239 |
+
Add cover photos?</label>
|
240 |
+
<br/><small>Generates random colored cover photos</small>
|
241 |
+
<br/><br/>
|
242 |
+
<label for="password">
|
243 |
+
Account Passwords:
|
244 |
+
<input type="password" name="password" />
|
245 |
+
<br/><small>if you leave this blank, it will generate random strings password</small>
|
246 |
+
</label>
|
247 |
+
<br/>
|
248 |
+
<input type="submit" class="button button-primary" value="Start Generating Dummies"/>
|
249 |
+
<input type="hidden" name="um-addon-hook" value="generate_random_users"/>
|
250 |
+
|
251 |
+
<?php } ?>
|
252 |
+
</form>
|
253 |
+
|
254 |
+
</div><div class="clear"></div>
|
255 |
+
|
256 |
+
<?php
|
257 |
+
|
258 |
+
}
|
259 |
+
}
|
260 |
+
|
261 |
$UM_ADDON_generate_random_users = new UM_ADDON_generate_random_users ();
|
addons/gravatar_transfer.php
CHANGED
@@ -1,83 +1,83 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class UM_ADDON_gravatar_transfer {
|
4 |
-
|
5 |
-
function __construct() {
|
6 |
-
|
7 |
-
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
8 |
-
|
9 |
-
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
10 |
-
|
11 |
-
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
12 |
-
|
13 |
-
}
|
14 |
-
|
15 |
-
function gravatar_hash(){
|
16 |
-
global $wpdb;
|
17 |
-
$wpdb->query('DELETE FROM '.$wpdb->usermeta.' WHERE meta_key = "synced_gravatar_hashed_id" ');
|
18 |
-
|
19 |
-
$wpdb->query('INSERT INTO '.$wpdb->usermeta.'(user_id, meta_key, meta_value)
|
20 |
-
SELECT ID, "synced_gravatar_hashed_id", MD5( LOWER( TRIM(user_email) ) ) FROM '.$wpdb->users.' ');
|
21 |
-
|
22 |
-
return true;
|
23 |
-
}
|
24 |
-
|
25 |
-
function admin_menu() {
|
26 |
-
|
27 |
-
global $ultimatemember;
|
28 |
-
$this->addon = $ultimatemember->addons['gravatar_transfer'];
|
29 |
-
add_submenu_page('ultimatemember', $this->addon[0], $this->addon[0], 'manage_options', 'gravatar_transfer', array(&$this, 'content') );
|
30 |
-
|
31 |
-
}
|
32 |
-
|
33 |
-
function um_admin_addon_hook( $hook ) {
|
34 |
-
global $ultimatemember;
|
35 |
-
switch( $hook ) {
|
36 |
-
case 'gravatar_transfer':
|
37 |
-
if( $this->gravatar_hash() ){
|
38 |
-
$this->content = '<p><strong>Done. Process completed!</p>';
|
39 |
-
$result = count_users();
|
40 |
-
$this->content .= $result['total_users'] . ' user(s) changed.</strong></p>';
|
41 |
-
}
|
42 |
-
break;
|
43 |
-
}
|
44 |
-
}
|
45 |
-
|
46 |
-
function admin_init() {
|
47 |
-
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
48 |
-
$hook = $_REQUEST['um-addon-hook'];
|
49 |
-
do_action("um_admin_addon_hook", $hook);
|
50 |
-
}
|
51 |
-
}
|
52 |
-
|
53 |
-
function content() {
|
54 |
-
|
55 |
-
$this->process_link = add_query_arg('um-addon-hook','gravatar_transfer');
|
56 |
-
|
57 |
-
?>
|
58 |
-
|
59 |
-
<div class="wrap">
|
60 |
-
|
61 |
-
<h2>Ultimate Member <sup style="font-size:15px"><?php echo ultimatemember_version; ?></sup></h2>
|
62 |
-
|
63 |
-
<h3><?php echo $this->addon[0]; ?></h3>
|
64 |
-
|
65 |
-
<?php if ( isset( $this->content ) ) {
|
66 |
-
echo $this->content;
|
67 |
-
} else { ?>
|
68 |
-
|
69 |
-
<p>This tool allows you to add gravatars to Ultimate Member users. This can help you to link gravatar photos to user accounts with their email address.</p>
|
70 |
-
<p>Depending on your users database, this could take a few moments. To start the process, click the following button.</p>
|
71 |
-
|
72 |
-
<p><a href="<?php echo $this->process_link; ?>" class="button button-primary">Start adding gravatars</a></p>
|
73 |
-
|
74 |
-
<?php } ?>
|
75 |
-
|
76 |
-
</div><div class="clear"></div>
|
77 |
-
|
78 |
-
<?php
|
79 |
-
|
80 |
-
}
|
81 |
-
}
|
82 |
-
|
83 |
$UM_ADDON_gravatar_transfer = new UM_ADDON_gravatar_transfer();
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class UM_ADDON_gravatar_transfer {
|
4 |
+
|
5 |
+
function __construct() {
|
6 |
+
|
7 |
+
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
8 |
+
|
9 |
+
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
10 |
+
|
11 |
+
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
12 |
+
|
13 |
+
}
|
14 |
+
|
15 |
+
function gravatar_hash(){
|
16 |
+
global $wpdb;
|
17 |
+
$wpdb->query('DELETE FROM '.$wpdb->usermeta.' WHERE meta_key = "synced_gravatar_hashed_id" ');
|
18 |
+
|
19 |
+
$wpdb->query('INSERT INTO '.$wpdb->usermeta.'(user_id, meta_key, meta_value)
|
20 |
+
SELECT ID, "synced_gravatar_hashed_id", MD5( LOWER( TRIM(user_email) ) ) FROM '.$wpdb->users.' ');
|
21 |
+
|
22 |
+
return true;
|
23 |
+
}
|
24 |
+
|
25 |
+
function admin_menu() {
|
26 |
+
|
27 |
+
global $ultimatemember;
|
28 |
+
$this->addon = $ultimatemember->addons['gravatar_transfer'];
|
29 |
+
add_submenu_page('ultimatemember', $this->addon[0], $this->addon[0], 'manage_options', 'gravatar_transfer', array(&$this, 'content') );
|
30 |
+
|
31 |
+
}
|
32 |
+
|
33 |
+
function um_admin_addon_hook( $hook ) {
|
34 |
+
global $ultimatemember;
|
35 |
+
switch( $hook ) {
|
36 |
+
case 'gravatar_transfer':
|
37 |
+
if( $this->gravatar_hash() ){
|
38 |
+
$this->content = '<p><strong>Done. Process completed!</p>';
|
39 |
+
$result = count_users();
|
40 |
+
$this->content .= $result['total_users'] . ' user(s) changed.</strong></p>';
|
41 |
+
}
|
42 |
+
break;
|
43 |
+
}
|
44 |
+
}
|
45 |
+
|
46 |
+
function admin_init() {
|
47 |
+
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
48 |
+
$hook = $_REQUEST['um-addon-hook'];
|
49 |
+
do_action("um_admin_addon_hook", $hook);
|
50 |
+
}
|
51 |
+
}
|
52 |
+
|
53 |
+
function content() {
|
54 |
+
|
55 |
+
$this->process_link = add_query_arg('um-addon-hook','gravatar_transfer');
|
56 |
+
|
57 |
+
?>
|
58 |
+
|
59 |
+
<div class="wrap">
|
60 |
+
|
61 |
+
<h2>Ultimate Member <sup style="font-size:15px"><?php echo ultimatemember_version; ?></sup></h2>
|
62 |
+
|
63 |
+
<h3><?php echo $this->addon[0]; ?></h3>
|
64 |
+
|
65 |
+
<?php if ( isset( $this->content ) ) {
|
66 |
+
echo $this->content;
|
67 |
+
} else { ?>
|
68 |
+
|
69 |
+
<p>This tool allows you to add gravatars to Ultimate Member users. This can help you to link gravatar photos to user accounts with their email address.</p>
|
70 |
+
<p>Depending on your users database, this could take a few moments. To start the process, click the following button.</p>
|
71 |
+
|
72 |
+
<p><a href="<?php echo $this->process_link; ?>" class="button button-primary">Start adding gravatars</a></p>
|
73 |
+
|
74 |
+
<?php } ?>
|
75 |
+
|
76 |
+
</div><div class="clear"></div>
|
77 |
+
|
78 |
+
<?php
|
79 |
+
|
80 |
+
}
|
81 |
+
}
|
82 |
+
|
83 |
$UM_ADDON_gravatar_transfer = new UM_ADDON_gravatar_transfer();
|
addons/system_info.php
CHANGED
@@ -1,411 +1,411 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
class UM_ADDON_system_info {
|
4 |
-
|
5 |
-
function __construct() {
|
6 |
-
|
7 |
-
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
8 |
-
|
9 |
-
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
10 |
-
|
11 |
-
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
12 |
-
|
13 |
-
}
|
14 |
-
|
15 |
-
|
16 |
-
function admin_menu() {
|
17 |
-
|
18 |
-
global $ultimatemember;
|
19 |
-
$this->addon = $ultimatemember->addons['system_info'];
|
20 |
-
add_submenu_page('ultimatemember', "System Info","System Info", 'manage_options', 'um_system_info', array(&$this, 'content') );
|
21 |
-
|
22 |
-
}
|
23 |
-
|
24 |
-
function um_admin_addon_hook( $hook ) {
|
25 |
-
global $ultimatemember;
|
26 |
-
|
27 |
-
switch ( $hook ) {
|
28 |
-
|
29 |
-
case 'download_system_info':
|
30 |
-
|
31 |
-
nocache_headers();
|
32 |
-
|
33 |
-
header( "Content-type: text/plain" );
|
34 |
-
header( 'Content-Disposition: attachment; filename="ultimatemember-system-info.txt"' );
|
35 |
-
|
36 |
-
echo wp_strip_all_tags( $_POST['um-sysinfo'] );
|
37 |
-
exit;
|
38 |
-
|
39 |
-
break;
|
40 |
-
|
41 |
-
default:
|
42 |
-
|
43 |
-
break;
|
44 |
-
}
|
45 |
-
|
46 |
-
}
|
47 |
-
|
48 |
-
function admin_init() {
|
49 |
-
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
50 |
-
$hook = $_REQUEST['um-addon-hook'];
|
51 |
-
do_action("um_admin_addon_hook", $hook );
|
52 |
-
}
|
53 |
-
}
|
54 |
-
|
55 |
-
function content() {
|
56 |
-
global $wpdb, $ultimatemember;
|
57 |
-
|
58 |
-
if( !class_exists( 'Browser' ) )
|
59 |
-
require_once um_path . 'core/lib/browser.php';
|
60 |
-
|
61 |
-
// Detect browser
|
62 |
-
$browser = new Browser();
|
63 |
-
|
64 |
-
// Get theme info
|
65 |
-
$theme_data = wp_get_theme();
|
66 |
-
$theme = $theme_data->Name . ' ' . $theme_data->Version;
|
67 |
-
|
68 |
-
// Identify Hosting Provider
|
69 |
-
$host = um_get_host();
|
70 |
-
|
71 |
-
?>
|
72 |
-
|
73 |
-
<div class="wrap">
|
74 |
-
|
75 |
-
<h2>Ultimate Member</h2>
|
76 |
-
|
77 |
-
<h3><?php echo $this->addon[0]; ?></h3>
|
78 |
-
|
79 |
-
<?php if ( isset( $this->content ) ) {
|
80 |
-
echo $this->content;
|
81 |
-
} else { ?>
|
82 |
-
|
83 |
-
<form action="<?php echo esc_url( admin_url( 'admin.php?page=um_system_info' ) ); ?>" method="post" dir="ltr">
|
84 |
-
<textarea style="width:100%; height:400px;" readonly="readonly" onclick="this.focus();this.select()" id="system-info-textarea" name="um-sysinfo" title="<?php _e( 'To copy the system info, click below then press Ctrl + C (PC) or Cmd + C (Mac).', 'edd' ); ?>">
|
85 |
-
### Begin System Info ###
|
86 |
-
|
87 |
-
## Please include this information when posting support requests ##
|
88 |
-
|
89 |
-
<?php do_action( 'um_system_info_before' ); ?>
|
90 |
-
|
91 |
-
--- Site Info ---
|
92 |
-
|
93 |
-
Site URL: <?php echo site_url() . "\n"; ?>
|
94 |
-
Home URL: <?php echo home_url() . "\n"; ?>
|
95 |
-
Multisite: <?php echo is_multisite() ? 'Yes' . "\n" : 'No' . "\n" ?>
|
96 |
-
|
97 |
-
--- Hosting Provider ---
|
98 |
-
|
99 |
-
<?php if( $host ) : ?>
|
100 |
-
Host: <?php echo $host . "\n"; ?>
|
101 |
-
<?php endif; ?>
|
102 |
-
|
103 |
-
--- User Browser ---
|
104 |
-
|
105 |
-
<?php echo $browser ; ?>
|
106 |
-
|
107 |
-
--- WordPress Configurations ---
|
108 |
-
|
109 |
-
Version: <?php echo get_bloginfo( 'version' ) . "\n"; ?>
|
110 |
-
Language: <?php echo get_locale()."\n"; ?>
|
111 |
-
Permalink Structure: <?php echo get_option( 'permalink_structure' ) . "\n"; ?>
|
112 |
-
Active Theme: <?php echo $theme . "\n"; ?>
|
113 |
-
<?php $show_on_front = get_option( 'show_on_front' ); ?>
|
114 |
-
<?php if( $show_on_front == "posts" ): ?>
|
115 |
-
Show On Front: <?php echo get_option( 'show_on_front' ) . "/static\n" ?>
|
116 |
-
<?php elseif( $show_on_front == "page" ): ?>
|
117 |
-
Page On Front: <?php $id = get_option( 'page_on_front' ); echo get_the_title( $id ) . ' (#' . $id . ')' . "\n" ?>
|
118 |
-
Page For Posts: <?php $id = get_option( 'page_for_posts' ); echo get_the_title( $id ) . ' (#' . $id . ')' . "\n" ?>
|
119 |
-
<?php endif; ?>
|
120 |
-
ABSPATH: <?php echo ABSPATH."\n"; ?>
|
121 |
-
<?php $wp_count_posts = wp_count_posts(); ?>
|
122 |
-
All Posts/Pages: <?php echo array_sum((array)$wp_count_posts)."\n";?>
|
123 |
-
<?php
|
124 |
-
$request['cmd'] = '_notify-validate';
|
125 |
-
|
126 |
-
$params = array(
|
127 |
-
'sslverify' => false,
|
128 |
-
'timeout' => 60,
|
129 |
-
'user-agent' => 'UltimateMember/' . ultimatemember_version,
|
130 |
-
'body' => $request
|
131 |
-
);
|
132 |
-
|
133 |
-
$response = wp_remote_post( 'https://www.paypal.com/cgi-bin/webscr', $params );
|
134 |
-
|
135 |
-
if ( ! is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 ) {
|
136 |
-
$WP_REMOTE_POST = 'wp_remote_post() works' . "\n";
|
137 |
-
} else {
|
138 |
-
$WP_REMOTE_POST = 'wp_remote_post() does not work' . "\n";
|
139 |
-
}
|
140 |
-
?>
|
141 |
-
WP Remote Post: <?php echo $WP_REMOTE_POST; ?>
|
142 |
-
WP_DEBUG: <?php echo defined( 'WP_DEBUG' ) ? WP_DEBUG ? 'Enabled' . "\n" : 'Disabled' . "\n" : 'Not set' . "\n" ?>
|
143 |
-
WP Table Prefix: <?php echo "Length: ". strlen( $wpdb->prefix ); echo ", Status:"; if ( strlen( $wpdb->prefix )>16 ) {echo " ERROR: Too Long";} else {echo " Acceptable";} echo "\n"; ?>
|
144 |
-
Memory Limit: <?php echo ( um_let_to_num( WP_MEMORY_LIMIT )/( 1024 ) )."MB"; ?><?php echo "\n"; ?>
|
145 |
-
|
146 |
-
--- UM Configurations ---
|
147 |
-
|
148 |
-
Version: <?php echo ultimatemember_version . "\n"; ?>
|
149 |
-
Upgraded From: <?php echo get_option( 'um_version_upgraded_from', 'None' ) . "\n"; ?>
|
150 |
-
Current URL Method: <?php echo um_get_option( 'current_url_method' ). "\n"; ?>
|
151 |
-
Cache User Profile: <?php if( um_get_option( 'um_profile_object_cache_stop' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
152 |
-
Generate Slugs on Directories: <?php if( um_get_option( 'um_generate_slug_in_directory' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
153 |
-
Rewrite Rules: <?php if( um_get_option( 'um_flush_stop' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
154 |
-
Force UTF-8 Encoding: <?php if( um_get_option( 'um_force_utf8_strings' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
155 |
-
Time Check Security: <?php if( um_get_option( 'enable_timebot' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
156 |
-
JS/CSS Compression: <?php if( um_get_option( 'disable_minify' ) == 0 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
157 |
-
<?php if( is_multisite() ): ?>
|
158 |
-
Network Structure: <?php echo um_get_option( 'network_permalink_structure' ). "\n"; ?>
|
159 |
-
<?php endif; ?>
|
160 |
-
Nav Menu Settings: <?php if( um_get_option( 'disable_menu' ) == 0 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
161 |
-
Port Forwarding in URL: <?php if( um_get_option( 'um_port_forwarding_url' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
162 |
-
Exclude CSS/JS on Home: <?php if( um_get_option( 'js_css_exlcude_home' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
163 |
-
|
164 |
-
--- UM Pages Configuration ---
|
165 |
-
|
166 |
-
<?php do_action("um_system_info_before_page_config") ?>
|
167 |
-
User: <?php echo get_permalink( um_get_option('core_user') ) . "\n"; ?>
|
168 |
-
Account: <?php echo get_permalink( um_get_option('core_account') ) . "\n"; ?>
|
169 |
-
Members: <?php echo get_permalink( um_get_option('core_members') ) . "\n"; ?>
|
170 |
-
Register: <?php echo get_permalink( um_get_option('core_register') ) . "\n"; ?>
|
171 |
-
Login: <?php echo get_permalink( um_get_option('core_login') ) . "\n"; ?>
|
172 |
-
Logout: <?php echo get_permalink( um_get_option('core_logout') ) . "\n"; ?>
|
173 |
-
Password Reset: <?php echo get_permalink( um_get_option('core_password-reset') ) . "\n"; ?>
|
174 |
-
<?php do_action("um_system_info_after_page_config") ?>
|
175 |
-
|
176 |
-
-- UM Users Configuration ---
|
177 |
-
|
178 |
-
Default New User Role: <?php echo um_get_option('default_role') . "\n"; ?>
|
179 |
-
Profile Permalink Base: <?php echo um_get_option('permalink_base') . "\n"; ?>
|
180 |
-
User Display Name: <?php echo um_get_option('display_name') . "\n"; ?>
|
181 |
-
Force Name to Uppercase: <?php echo $this->value( um_get_option('force_display_name_capitlized'), 'yesno', true ); ?>
|
182 |
-
Redirect author to profile: <?php echo $this->value( um_get_option('author_redirect'), 'yesno', true ); ?>
|
183 |
-
Enable Members Directory: <?php echo $this->value( um_get_option('members_page'), 'yesno', true ); ?>
|
184 |
-
Use Gravatars: <?php echo $this->value( um_get_option('use_gravatars'), 'yesno', true ); ?>
|
185 |
-
<?php if( um_get_option('use_gravatars') ): ?>Gravatar builtin image: <?php echo um_get_option('use_um_gravatar_default_builtin_image') . "\n"; ?>
|
186 |
-
UM Avatar as blank Gravatar: <?php echo $this->value( um_get_option('use_um_gravatar_default_image'), 'yesno', true ); ?><?php endif; ?>
|
187 |
-
Require a strong password: <?php echo $this->value( um_get_option('reset_require_strongpass'), 'onoff', true ); ?>
|
188 |
-
Editable primary email field in profile view: <?php echo $this->value( um_get_option('editable_primary_email_in_profile'), 'onoff', true ); ?>
|
189 |
-
|
190 |
-
-- UM Access Configuration ---
|
191 |
-
|
192 |
-
Panic Key: <?php echo um_get_option('panic_key') . "\n"; ?>
|
193 |
-
Global Site Access: <?php $arr = array('Site accessible to Everyone','','Site accessible to Logged In Users'); echo $arr[ intval( um_get_option('accessible') ) ] . "\n"; ?>
|
194 |
-
<?php if( um_get_option('accessible') == 2 ):?>
|
195 |
-
Custom Redirect URL: <?php echo um_get_option('access_redirect')."\n";?>
|
196 |
-
Exclude the following URLs:<?php echo "\t\t\t\t".implode("\t\n\t\t\t\t\t\t\t\t\t\t",um_get_option('access_exclude_uris') )."\n";?><?php endif;?>
|
197 |
-
Backend Login Screen for Guests: <?php echo $this->value( um_get_option('wpadmin_login'), 'yesno', true ); ?>
|
198 |
-
<?php if( ! um_get_option('wpadmin_login') ):?>Redirect to alternative login page: <?php if( um_get_option('wpadmin_login_redirect') == 'um_login_page' ){ echo um_get_core_page('login')."\n"; }else{ echo um_get_option('wpadmin_login_redirect_url')."\n"; }?><?php endif; ?>
|
199 |
-
Backend Register Screen for Guests: <?php echo $this->value( um_get_option('wpadmin_register'), 'yesno', true ); ?>
|
200 |
-
<?php if( ! um_get_option('wpadmin_register') ):?>Redirect to alternative register page: <?php if( um_get_option('wpadmin_register_redirect') == 'um_register_page' ){ echo um_get_core_page('register')."\n"; }else{ echo um_get_option('wpadmin_register_redirect_url')."\n"; }?><?php endif; ?>
|
201 |
-
Access Control widget for Admins only: <?php echo $this->value( um_get_option('access_widget_admin_only'), 'yesno', true ); ?>
|
202 |
-
Enable the Reset Password Limit: <?php echo $this->value( um_get_option('enable_reset_password_limit'), 'yesno', true ); ?>
|
203 |
-
<?php if( um_get_option('enable_reset_password_limit') ) {
|
204 |
-
echo "Reset Password Limit:\t\t\t\t\t\t".um_get_option('reset_password_limit_number')."\n";
|
205 |
-
echo "Disable Reset Password Limit for Admins:\t".$this->value( um_get_option('disable_admin_reset_password_limit'), 'yesno', true );
|
206 |
-
} ?>
|
207 |
-
<?php $wpadmin_allow_ips = um_get_option('wpadmin_allow_ips'); if( ! empty( $wpadmin_allow_ips ) ){ ?>
|
208 |
-
Whitelisted Backend IPs: <?php echo count( explode("\n",trim(um_get_option('wpadmin_allow_ips') ) ) )."\n"; ?>
|
209 |
-
<?php }?>
|
210 |
-
<?php $blocked_ips = um_get_option('blocked_ips'); if( ! empty( $blocked_ips ) ){ ?>
|
211 |
-
Blocked IP Addresses: <?php echo count( explode("\n",um_get_option('blocked_ips') ) )."\n"; ?>
|
212 |
-
<?php }?>
|
213 |
-
<?php $blocked_emails = um_get_option('blocked_emails'); if( ! empty( $blocked_emails ) ){ ?>
|
214 |
-
Blocked Email Addresses: <?php echo count( explode("\n",um_get_option('blocked_emails') ) )."\n"; ?>
|
215 |
-
<?php }?>
|
216 |
-
<?php $blocked_words = um_get_option('blocked_words'); if( ! empty( $blocked_words ) ){ ?>
|
217 |
-
Blacklist Words: <?php echo count( explode("\n",um_get_option('blocked_words') ) )."\n"; ?>
|
218 |
-
<?php }?>
|
219 |
-
|
220 |
-
|
221 |
-
--- UM Email Configurations --
|
222 |
-
|
223 |
-
Mail appears from: <?php $mail_from = um_get_option('mail_from'); if( ! empty( $mail_from ) ){echo um_get_option('mail_from');}else{echo "-";}; echo "\n";?>
|
224 |
-
Mail appears from address: <?php $mail_from_addr = um_get_option('mail_from_addr'); if( ! empty( $mail_from_addr ) ){echo um_get_option('mail_from_addr');}else{echo "-";}; echo "\n";?>
|
225 |
-
Use HTML for E-mails: <?php echo $this->value( um_get_option('email_html'), 'yesno', true ); ?>
|
226 |
-
Account Welcome Email: <?php echo $this->value( um_get_option('welcome_email_on'), 'yesno', true ); ?>
|
227 |
-
Account Activation Email: <?php echo $this->value( um_get_option('checkmail_email_on'), 'yesno', true ); ?>
|
228 |
-
Pending Review Email: <?php echo $this->value( um_get_option('pending_email_on'), 'yesno', true ); ?>
|
229 |
-
Account Approved Email: <?php echo $this->value( um_get_option('approved_email_on'), 'yesno', true ); ?>
|
230 |
-
Account Rejected Email: <?php echo $this->value( um_get_option('rejected_email_on'), 'yesno', true ); ?>
|
231 |
-
Account Deactivated Email: <?php echo $this->value( um_get_option('inactive_email_on'), 'yesno', true ); ?>
|
232 |
-
Account Deleted Email: <?php echo $this->value( um_get_option('deletion_email_on'), 'yesno', true ); ?>
|
233 |
-
Password Reset Email: <?php echo $this->value( um_get_option('resetpw_email_on'), 'yesno', true ); ?>
|
234 |
-
Password Changed Email: <?php echo $this->value( um_get_option('changedpw_email_on'), 'yesno', true ); ?>
|
235 |
-
|
236 |
-
|
237 |
-
--- UM Total Users ---
|
238 |
-
|
239 |
-
<?php
|
240 |
-
|
241 |
-
$result = count_users();
|
242 |
-
echo 'All Users('.$result['total_users'].")\n";
|
243 |
-
foreach($result['avail_roles'] as $role => $count){
|
244 |
-
echo $role."(".$count.")\n";
|
245 |
-
}
|
246 |
-
?>
|
247 |
-
|
248 |
-
|
249 |
-
--- UM Roles ---
|
250 |
-
|
251 |
-
<?php
|
252 |
-
|
253 |
-
foreach( $ultimatemember->query->get_roles() as $role_id => $role ) {
|
254 |
-
echo $role." ({$role_id})\n";
|
255 |
-
}
|
256 |
-
|
257 |
-
?>
|
258 |
-
|
259 |
-
|
260 |
-
--- UM Custom Templates ---
|
261 |
-
|
262 |
-
<?php
|
263 |
-
// Show templates that have been copied to the theme's edd_templates dir
|
264 |
-
|
265 |
-
$dir = get_stylesheet_directory() . '/ultimate-member/templates/*.php';
|
266 |
-
if ( ! empty( $dir ) ){
|
267 |
-
$found = glob( $dir );
|
268 |
-
if( ! empty( $found ) ){
|
269 |
-
foreach ( glob( $dir ) as $file ) {
|
270 |
-
echo "File: " . $file . "\n";
|
271 |
-
}
|
272 |
-
}else {
|
273 |
-
echo 'N/A'."\n";
|
274 |
-
}
|
275 |
-
}
|
276 |
-
echo "\n\n";
|
277 |
-
|
278 |
-
$dir = get_stylesheet_directory() . '/ultimate-member/templates/emails/*.html';
|
279 |
-
echo "-- UM Email HTML Templates -- \n\n";
|
280 |
-
|
281 |
-
if ( ! empty( $dir ) ){
|
282 |
-
$found = glob( $dir );
|
283 |
-
if( ! empty( $found ) ){
|
284 |
-
foreach ( glob( $dir ) as $file ) {
|
285 |
-
echo "File: ". $file . "\n";
|
286 |
-
}
|
287 |
-
}else {
|
288 |
-
echo 'N/A'."\n";
|
289 |
-
}
|
290 |
-
}
|
291 |
-
|
292 |
-
?>
|
293 |
-
|
294 |
-
--- Web Server Configurations ---
|
295 |
-
|
296 |
-
PHP Version: <?php echo PHP_VERSION . "\n"; ?>
|
297 |
-
MySQL Version: <?php echo $wpdb->db_version() . "\n"; ?>
|
298 |
-
Web Server Info: <?php echo $_SERVER['SERVER_SOFTWARE'] . "\n"; ?>
|
299 |
-
|
300 |
-
--- PHP Configurations --
|
301 |
-
|
302 |
-
PHP Safe Mode: <?php echo $this->value( ini_get( 'safe_mode' ), 'yesno', true ); ?>
|
303 |
-
PHP Memory Limit: <?php echo ini_get( 'memory_limit' ) . "\n"; ?>
|
304 |
-
PHP Upload Max Size: <?php echo ini_get( 'upload_max_filesize' ) . "\n"; ?>
|
305 |
-
PHP Post Max Size: <?php echo ini_get( 'post_max_size' ) . "\n"; ?>
|
306 |
-
PHP Upload Max Filesize: <?php echo ini_get( 'upload_max_filesize' ) . "\n"; ?>
|
307 |
-
PHP Time Limit: <?php echo ini_get( 'max_execution_time' ) . "\n"; ?>
|
308 |
-
PHP Max Input Vars: <?php echo ini_get( 'max_input_vars' ) . "\n"; ?>
|
309 |
-
PHP Arg Separator: <?php echo ini_get( 'arg_separator.output' ) . "\n"; ?>
|
310 |
-
PHP Allow URL File Open: <?php echo ini_get( 'allow_url_fopen' ) ? "Yes\n" : "No\n"; ?>
|
311 |
-
|
312 |
-
|
313 |
-
--- Web Server Extensions/Modules ---
|
314 |
-
|
315 |
-
DISPLAY ERRORS: <?php echo ( ini_get( 'display_errors' ) ) ? 'On (' . ini_get( 'display_errors' ) . ')' : 'N/A'; ?><?php echo "\n"; ?>
|
316 |
-
FSOCKOPEN: <?php echo ( function_exists( 'fsockopen' ) ) ? 'Your server supports fsockopen.' : 'Your server does not support fsockopen.'; ?><?php echo "\n"; ?>
|
317 |
-
cURL: <?php echo ( function_exists( 'curl_init' ) ) ? 'Your server supports cURL.' : 'Your server does not support cURL.'; ?><?php echo "\n"; ?>
|
318 |
-
SOAP Client: <?php echo ( class_exists( 'SoapClient' ) ) ? 'Your server has the SOAP Client enabled.' : 'Your server does not have the SOAP Client enabled.'; ?><?php echo "\n"; ?>
|
319 |
-
SUHOSIN: <?php echo ( extension_loaded( 'suhosin' ) ) ? 'Your server has SUHOSIN installed.' : 'Your server does not have SUHOSIN installed.'; ?><?php echo "\n"; ?>
|
320 |
-
|
321 |
-
|
322 |
-
--- Session Configurations ---
|
323 |
-
|
324 |
-
Session: <?php echo isset( $_SESSION ) ? 'Enabled' : 'Disabled'; ?><?php echo "\n"; ?>
|
325 |
-
Session Name: <?php echo esc_html( ini_get( 'session.name' ) ); ?><?php echo "\n"; ?>
|
326 |
-
Cookie Path: <?php echo esc_html( ini_get( 'session.cookie_path' ) ); ?><?php echo "\n"; ?>
|
327 |
-
Save Path: <?php echo esc_html( ini_get( 'session.save_path' ) ); ?><?php echo "\n"; ?>
|
328 |
-
Use Cookies: <?php echo ini_get( 'session.use_cookies' ) ? 'On' : 'Off'; ?><?php echo "\n"; ?>
|
329 |
-
Use Only Cookies: <?php echo ini_get( 'session.use_only_cookies' ) ? 'On' : 'Off'; ?><?php echo "\n"; ?>
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
--- WordPress Active Plugins ---
|
334 |
-
|
335 |
-
<?php
|
336 |
-
$plugins = get_plugins();
|
337 |
-
$active_plugins = get_option( 'active_plugins', array() );
|
338 |
-
|
339 |
-
foreach ( $plugins as $plugin_path => $plugin ) {
|
340 |
-
// If the plugin isn't active, don't show it.
|
341 |
-
if ( ! in_array( $plugin_path, $active_plugins ) )
|
342 |
-
continue;
|
343 |
-
|
344 |
-
echo $plugin['Name'] . ': ' . $plugin['Version'] ."\n";
|
345 |
-
}
|
346 |
-
|
347 |
-
if ( is_multisite() ) :
|
348 |
-
?>
|
349 |
-
|
350 |
-
--- WordPress Network Active Plugins ---
|
351 |
-
|
352 |
-
<?php
|
353 |
-
$plugins = wp_get_active_network_plugins();
|
354 |
-
$active_plugins = get_site_option( 'active_sitewide_plugins', array() );
|
355 |
-
|
356 |
-
foreach ( $plugins as $plugin_path ) {
|
357 |
-
$plugin_base = plugin_basename( $plugin_path );
|
358 |
-
|
359 |
-
// If the plugin isn't active, don't show it.
|
360 |
-
if ( ! array_key_exists( $plugin_base, $active_plugins ) )
|
361 |
-
continue;
|
362 |
-
|
363 |
-
$plugin = get_plugin_data( $plugin_path );
|
364 |
-
|
365 |
-
echo $plugin['Name'] . ' :' . $plugin['Version'] ."\n";
|
366 |
-
}
|
367 |
-
|
368 |
-
endif;
|
369 |
-
?>
|
370 |
-
<?php
|
371 |
-
do_action( 'um_system_info_after' );
|
372 |
-
?>
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
### End System Info ###</textarea>
|
378 |
-
<p class="submit">
|
379 |
-
<input type="hidden" name="um-addon-hook" value="download_system_info" />
|
380 |
-
<?php submit_button( 'Download System Info File', 'primary', 'download_system_info', false ); ?>
|
381 |
-
</p>
|
382 |
-
</form>
|
383 |
-
|
384 |
-
<?php } ?>
|
385 |
-
|
386 |
-
<?php
|
387 |
-
|
388 |
-
}
|
389 |
-
|
390 |
-
function value( $raw_value = '', $type = 'yesno', $default = '', $default_negate = '' ){
|
391 |
-
|
392 |
-
if( $type == 'yesno' ){
|
393 |
-
if( $default == $raw_value ){
|
394 |
-
$raw_value = "Yes";
|
395 |
-
}else{
|
396 |
-
$raw_value = "No";
|
397 |
-
}
|
398 |
-
}else if( $type == 'onoff' ){
|
399 |
-
if( $default == $raw_value ){
|
400 |
-
$raw_value = "On";
|
401 |
-
}else{
|
402 |
-
$raw_value = "Off";
|
403 |
-
}
|
404 |
-
}
|
405 |
-
|
406 |
-
return $raw_value."\n";
|
407 |
-
}
|
408 |
-
|
409 |
-
}
|
410 |
-
|
411 |
$UM_ADDON_system_info = new UM_ADDON_system_info();
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class UM_ADDON_system_info {
|
4 |
+
|
5 |
+
function __construct() {
|
6 |
+
|
7 |
+
add_action('admin_menu', array(&$this, 'admin_menu'), 1001);
|
8 |
+
|
9 |
+
add_action('admin_init', array(&$this, 'admin_init'), 1);
|
10 |
+
|
11 |
+
add_action('um_admin_addon_hook', array(&$this, 'um_admin_addon_hook') );
|
12 |
+
|
13 |
+
}
|
14 |
+
|
15 |
+
|
16 |
+
function admin_menu() {
|
17 |
+
|
18 |
+
global $ultimatemember;
|
19 |
+
$this->addon = $ultimatemember->addons['system_info'];
|
20 |
+
add_submenu_page('ultimatemember', "System Info","System Info", 'manage_options', 'um_system_info', array(&$this, 'content') );
|
21 |
+
|
22 |
+
}
|
23 |
+
|
24 |
+
function um_admin_addon_hook( $hook ) {
|
25 |
+
global $ultimatemember;
|
26 |
+
|
27 |
+
switch ( $hook ) {
|
28 |
+
|
29 |
+
case 'download_system_info':
|
30 |
+
|
31 |
+
nocache_headers();
|
32 |
+
|
33 |
+
header( "Content-type: text/plain" );
|
34 |
+
header( 'Content-Disposition: attachment; filename="ultimatemember-system-info.txt"' );
|
35 |
+
|
36 |
+
echo wp_strip_all_tags( $_POST['um-sysinfo'] );
|
37 |
+
exit;
|
38 |
+
|
39 |
+
break;
|
40 |
+
|
41 |
+
default:
|
42 |
+
|
43 |
+
break;
|
44 |
+
}
|
45 |
+
|
46 |
+
}
|
47 |
+
|
48 |
+
function admin_init() {
|
49 |
+
if ( isset( $_REQUEST['um-addon-hook'] ) ) {
|
50 |
+
$hook = $_REQUEST['um-addon-hook'];
|
51 |
+
do_action("um_admin_addon_hook", $hook );
|
52 |
+
}
|
53 |
+
}
|
54 |
+
|
55 |
+
function content() {
|
56 |
+
global $wpdb, $ultimatemember;
|
57 |
+
|
58 |
+
if( !class_exists( 'Browser' ) )
|
59 |
+
require_once um_path . 'core/lib/browser.php';
|
60 |
+
|
61 |
+
// Detect browser
|
62 |
+
$browser = new Browser();
|
63 |
+
|
64 |
+
// Get theme info
|
65 |
+
$theme_data = wp_get_theme();
|
66 |
+
$theme = $theme_data->Name . ' ' . $theme_data->Version;
|
67 |
+
|
68 |
+
// Identify Hosting Provider
|
69 |
+
$host = um_get_host();
|
70 |
+
|
71 |
+
?>
|
72 |
+
|
73 |
+
<div class="wrap">
|
74 |
+
|
75 |
+
<h2>Ultimate Member</h2>
|
76 |
+
|
77 |
+
<h3><?php echo $this->addon[0]; ?></h3>
|
78 |
+
|
79 |
+
<?php if ( isset( $this->content ) ) {
|
80 |
+
echo $this->content;
|
81 |
+
} else { ?>
|
82 |
+
|
83 |
+
<form action="<?php echo esc_url( admin_url( 'admin.php?page=um_system_info' ) ); ?>" method="post" dir="ltr">
|
84 |
+
<textarea style="width:100%; height:400px;" readonly="readonly" onclick="this.focus();this.select()" id="system-info-textarea" name="um-sysinfo" title="<?php _e( 'To copy the system info, click below then press Ctrl + C (PC) or Cmd + C (Mac).', 'edd' ); ?>">
|
85 |
+
### Begin System Info ###
|
86 |
+
|
87 |
+
## Please include this information when posting support requests ##
|
88 |
+
|
89 |
+
<?php do_action( 'um_system_info_before' ); ?>
|
90 |
+
|
91 |
+
--- Site Info ---
|
92 |
+
|
93 |
+
Site URL: <?php echo site_url() . "\n"; ?>
|
94 |
+
Home URL: <?php echo home_url() . "\n"; ?>
|
95 |
+
Multisite: <?php echo is_multisite() ? 'Yes' . "\n" : 'No' . "\n" ?>
|
96 |
+
|
97 |
+
--- Hosting Provider ---
|
98 |
+
|
99 |
+
<?php if( $host ) : ?>
|
100 |
+
Host: <?php echo $host . "\n"; ?>
|
101 |
+
<?php endif; ?>
|
102 |
+
|
103 |
+
--- User Browser ---
|
104 |
+
|
105 |
+
<?php echo $browser ; ?>
|
106 |
+
|
107 |
+
--- WordPress Configurations ---
|
108 |
+
|
109 |
+
Version: <?php echo get_bloginfo( 'version' ) . "\n"; ?>
|
110 |
+
Language: <?php echo get_locale()."\n"; ?>
|
111 |
+
Permalink Structure: <?php echo get_option( 'permalink_structure' ) . "\n"; ?>
|
112 |
+
Active Theme: <?php echo $theme . "\n"; ?>
|
113 |
+
<?php $show_on_front = get_option( 'show_on_front' ); ?>
|
114 |
+
<?php if( $show_on_front == "posts" ): ?>
|
115 |
+
Show On Front: <?php echo get_option( 'show_on_front' ) . "/static\n" ?>
|
116 |
+
<?php elseif( $show_on_front == "page" ): ?>
|
117 |
+
Page On Front: <?php $id = get_option( 'page_on_front' ); echo get_the_title( $id ) . ' (#' . $id . ')' . "\n" ?>
|
118 |
+
Page For Posts: <?php $id = get_option( 'page_for_posts' ); echo get_the_title( $id ) . ' (#' . $id . ')' . "\n" ?>
|
119 |
+
<?php endif; ?>
|
120 |
+
ABSPATH: <?php echo ABSPATH."\n"; ?>
|
121 |
+
<?php $wp_count_posts = wp_count_posts(); ?>
|
122 |
+
All Posts/Pages: <?php echo array_sum((array)$wp_count_posts)."\n";?>
|
123 |
+
<?php
|
124 |
+
$request['cmd'] = '_notify-validate';
|
125 |
+
|
126 |
+
$params = array(
|
127 |
+
'sslverify' => false,
|
128 |
+
'timeout' => 60,
|
129 |
+
'user-agent' => 'UltimateMember/' . ultimatemember_version,
|
130 |
+
'body' => $request
|
131 |
+
);
|
132 |
+
|
133 |
+
$response = wp_remote_post( 'https://www.paypal.com/cgi-bin/webscr', $params );
|
134 |
+
|
135 |
+
if ( ! is_wp_error( $response ) && $response['response']['code'] >= 200 && $response['response']['code'] < 300 ) {
|
136 |
+
$WP_REMOTE_POST = 'wp_remote_post() works' . "\n";
|
137 |
+
} else {
|
138 |
+
$WP_REMOTE_POST = 'wp_remote_post() does not work' . "\n";
|
139 |
+
}
|
140 |
+
?>
|
141 |
+
WP Remote Post: <?php echo $WP_REMOTE_POST; ?>
|
142 |
+
WP_DEBUG: <?php echo defined( 'WP_DEBUG' ) ? WP_DEBUG ? 'Enabled' . "\n" : 'Disabled' . "\n" : 'Not set' . "\n" ?>
|
143 |
+
WP Table Prefix: <?php echo "Length: ". strlen( $wpdb->prefix ); echo ", Status:"; if ( strlen( $wpdb->prefix )>16 ) {echo " ERROR: Too Long";} else {echo " Acceptable";} echo "\n"; ?>
|
144 |
+
Memory Limit: <?php echo ( um_let_to_num( WP_MEMORY_LIMIT )/( 1024 ) )."MB"; ?><?php echo "\n"; ?>
|
145 |
+
|
146 |
+
--- UM Configurations ---
|
147 |
+
|
148 |
+
Version: <?php echo ultimatemember_version . "\n"; ?>
|
149 |
+
Upgraded From: <?php echo get_option( 'um_version_upgraded_from', 'None' ) . "\n"; ?>
|
150 |
+
Current URL Method: <?php echo um_get_option( 'current_url_method' ). "\n"; ?>
|
151 |
+
Cache User Profile: <?php if( um_get_option( 'um_profile_object_cache_stop' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
152 |
+
Generate Slugs on Directories: <?php if( um_get_option( 'um_generate_slug_in_directory' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
153 |
+
Rewrite Rules: <?php if( um_get_option( 'um_flush_stop' ) == 1 ){ echo "No"; }else{ echo "Yes"; } echo "\n"; ?>
|
154 |
+
Force UTF-8 Encoding: <?php if( um_get_option( 'um_force_utf8_strings' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
155 |
+
Time Check Security: <?php if( um_get_option( 'enable_timebot' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
156 |
+
JS/CSS Compression: <?php if( um_get_option( 'disable_minify' ) == 0 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
157 |
+
<?php if( is_multisite() ): ?>
|
158 |
+
Network Structure: <?php echo um_get_option( 'network_permalink_structure' ). "\n"; ?>
|
159 |
+
<?php endif; ?>
|
160 |
+
Nav Menu Settings: <?php if( um_get_option( 'disable_menu' ) == 0 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
161 |
+
Port Forwarding in URL: <?php if( um_get_option( 'um_port_forwarding_url' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
162 |
+
Exclude CSS/JS on Home: <?php if( um_get_option( 'js_css_exlcude_home' ) == 1 ){ echo "Yes"; }else{ echo "No"; } echo "\n"; ?>
|
163 |
+
|
164 |
+
--- UM Pages Configuration ---
|
165 |
+
|
166 |
+
<?php do_action("um_system_info_before_page_config") ?>
|
167 |
+
User: <?php echo get_permalink( um_get_option('core_user') ) . "\n"; ?>
|
168 |
+
Account: <?php echo get_permalink( um_get_option('core_account') ) . "\n"; ?>
|
169 |
+
Members: <?php echo get_permalink( um_get_option('core_members') ) . "\n"; ?>
|
170 |
+
Register: <?php echo get_permalink( um_get_option('core_register') ) . "\n"; ?>
|
171 |
+
Login: <?php echo get_permalink( um_get_option('core_login') ) . "\n"; ?>
|
172 |
+
Logout: <?php echo get_permalink( um_get_option('core_logout') ) . "\n"; ?>
|
173 |
+
Password Reset: <?php echo get_permalink( um_get_option('core_password-reset') ) . "\n"; ?>
|
174 |
+
<?php do_action("um_system_info_after_page_config") ?>
|
175 |
+
|
176 |
+
-- UM Users Configuration ---
|
177 |
+
|
178 |
+
Default New User Role: <?php echo um_get_option('default_role') . "\n"; ?>
|
179 |
+
Profile Permalink Base: <?php echo um_get_option('permalink_base') . "\n"; ?>
|
180 |
+
User Display Name: <?php echo um_get_option('display_name') . "\n"; ?>
|
181 |
+
Force Name to Uppercase: <?php echo $this->value( um_get_option('force_display_name_capitlized'), 'yesno', true ); ?>
|
182 |
+
Redirect author to profile: <?php echo $this->value( um_get_option('author_redirect'), 'yesno', true ); ?>
|
183 |
+
Enable Members Directory: <?php echo $this->value( um_get_option('members_page'), 'yesno', true ); ?>
|
184 |
+
Use Gravatars: <?php echo $this->value( um_get_option('use_gravatars'), 'yesno', true ); ?>
|
185 |
+
<?php if( um_get_option('use_gravatars') ): ?>Gravatar builtin image: <?php echo um_get_option('use_um_gravatar_default_builtin_image') . "\n"; ?>
|
186 |
+
UM Avatar as blank Gravatar: <?php echo $this->value( um_get_option('use_um_gravatar_default_image'), 'yesno', true ); ?><?php endif; ?>
|
187 |
+
Require a strong password: <?php echo $this->value( um_get_option('reset_require_strongpass'), 'onoff', true ); ?>
|
188 |
+
Editable primary email field in profile view: <?php echo $this->value( um_get_option('editable_primary_email_in_profile'), 'onoff', true ); ?>
|
189 |
+
|
190 |
+
-- UM Access Configuration ---
|
191 |
+
|
192 |
+
Panic Key: <?php echo um_get_option('panic_key') . "\n"; ?>
|
193 |
+
Global Site Access: <?php $arr = array('Site accessible to Everyone','','Site accessible to Logged In Users'); echo $arr[ intval( um_get_option('accessible') ) ] . "\n"; ?>
|
194 |
+
<?php if( um_get_option('accessible') == 2 ):?>
|
195 |
+
Custom Redirect URL: <?php echo um_get_option('access_redirect')."\n";?>
|
196 |
+
Exclude the following URLs:<?php echo "\t\t\t\t".implode("\t\n\t\t\t\t\t\t\t\t\t\t",um_get_option('access_exclude_uris') )."\n";?><?php endif;?>
|
197 |
+
Backend Login Screen for Guests: <?php echo $this->value( um_get_option('wpadmin_login'), 'yesno', true ); ?>
|
198 |
+
<?php if( ! um_get_option('wpadmin_login') ):?>Redirect to alternative login page: <?php if( um_get_option('wpadmin_login_redirect') == 'um_login_page' ){ echo um_get_core_page('login')."\n"; }else{ echo um_get_option('wpadmin_login_redirect_url')."\n"; }?><?php endif; ?>
|
199 |
+
Backend Register Screen for Guests: <?php echo $this->value( um_get_option('wpadmin_register'), 'yesno', true ); ?>
|
200 |
+
<?php if( ! um_get_option('wpadmin_register') ):?>Redirect to alternative register page: <?php if( um_get_option('wpadmin_register_redirect') == 'um_register_page' ){ echo um_get_core_page('register')."\n"; }else{ echo um_get_option('wpadmin_register_redirect_url')."\n"; }?><?php endif; ?>
|
201 |
+
Access Control widget for Admins only: <?php echo $this->value( um_get_option('access_widget_admin_only'), 'yesno', true ); ?>
|
202 |
+
Enable the Reset Password Limit: <?php echo $this->value( um_get_option('enable_reset_password_limit'), 'yesno', true ); ?>
|
203 |
+
<?php if( um_get_option('enable_reset_password_limit') ) {
|
204 |
+
echo "Reset Password Limit:\t\t\t\t\t\t".um_get_option('reset_password_limit_number')."\n";
|
205 |
+
echo "Disable Reset Password Limit for Admins:\t".$this->value( um_get_option('disable_admin_reset_password_limit'), 'yesno', true );
|
206 |
+
} ?>
|
207 |
+
<?php $wpadmin_allow_ips = um_get_option('wpadmin_allow_ips'); if( ! empty( $wpadmin_allow_ips ) ){ ?>
|
208 |
+
Whitelisted Backend IPs: <?php echo count( explode("\n",trim(um_get_option('wpadmin_allow_ips') ) ) )."\n"; ?>
|
209 |
+
<?php }?>
|
210 |
+
<?php $blocked_ips = um_get_option('blocked_ips'); if( ! empty( $blocked_ips ) ){ ?>
|
211 |
+
Blocked IP Addresses: <?php echo count( explode("\n",um_get_option('blocked_ips') ) )."\n"; ?>
|
212 |
+
<?php }?>
|
213 |
+
<?php $blocked_emails = um_get_option('blocked_emails'); if( ! empty( $blocked_emails ) ){ ?>
|
214 |
+
Blocked Email Addresses: <?php echo count( explode("\n",um_get_option('blocked_emails') ) )."\n"; ?>
|
215 |
+
<?php }?>
|
216 |
+
<?php $blocked_words = um_get_option('blocked_words'); if( ! empty( $blocked_words ) ){ ?>
|
217 |
+
Blacklist Words: <?php echo count( explode("\n",um_get_option('blocked_words') ) )."\n"; ?>
|
218 |
+
<?php }?>
|
219 |
+
|
220 |
+
|
221 |
+
--- UM Email Configurations --
|
222 |
+
|
223 |
+
Mail appears from: <?php $mail_from = um_get_option('mail_from'); if( ! empty( $mail_from ) ){echo um_get_option('mail_from');}else{echo "-";}; echo "\n";?>
|
224 |
+
Mail appears from address: <?php $mail_from_addr = um_get_option('mail_from_addr'); if( ! empty( $mail_from_addr ) ){echo um_get_option('mail_from_addr');}else{echo "-";}; echo "\n";?>
|
225 |
+
Use HTML for E-mails: <?php echo $this->value( um_get_option('email_html'), 'yesno', true ); ?>
|
226 |
+
Account Welcome Email: <?php echo $this->value( um_get_option('welcome_email_on'), 'yesno', true ); ?>
|
227 |
+
Account Activation Email: <?php echo $this->value( um_get_option('checkmail_email_on'), 'yesno', true ); ?>
|
228 |
+
Pending Review Email: <?php echo $this->value( um_get_option('pending_email_on'), 'yesno', true ); ?>
|
229 |
+
Account Approved Email: <?php echo $this->value( um_get_option('approved_email_on'), 'yesno', true ); ?>
|
230 |
+
Account Rejected Email: <?php echo $this->value( um_get_option('rejected_email_on'), 'yesno', true ); ?>
|
231 |
+
Account Deactivated Email: <?php echo $this->value( um_get_option('inactive_email_on'), 'yesno', true ); ?>
|
232 |
+
Account Deleted Email: <?php echo $this->value( um_get_option('deletion_email_on'), 'yesno', true ); ?>
|
233 |
+
Password Reset Email: <?php echo $this->value( um_get_option('resetpw_email_on'), 'yesno', true ); ?>
|
234 |
+
Password Changed Email: <?php echo $this->value( um_get_option('changedpw_email_on'), 'yesno', true ); ?>
|
235 |
+
|
236 |
+
|
237 |
+
--- UM Total Users ---
|
238 |
+
|
239 |
+
<?php
|
240 |
+
|
241 |
+
$result = count_users();
|
242 |
+
echo 'All Users('.$result['total_users'].")\n";
|
243 |
+
foreach($result['avail_roles'] as $role => $count){
|
244 |
+
echo $role."(".$count.")\n";
|
245 |
+
}
|
246 |
+
?>
|
247 |
+
|
248 |
+
|
249 |
+
--- UM Roles ---
|
250 |
+
|
251 |
+
<?php
|
252 |
+
|
253 |
+
foreach( $ultimatemember->query->get_roles() as $role_id => $role ) {
|
254 |
+
echo $role." ({$role_id})\n";
|
255 |
+
}
|
256 |
+
|
257 |
+
?>
|
258 |
+
|
259 |
+
|
260 |
+
--- UM Custom Templates ---
|
261 |
+
|
262 |
+
<?php
|
263 |
+
// Show templates that have been copied to the theme's edd_templates dir
|
264 |
+
|
265 |
+
$dir = get_stylesheet_directory() . '/ultimate-member/templates/*.php';
|
266 |
+
if ( ! empty( $dir ) ){
|
267 |
+
$found = glob( $dir );
|
268 |
+
if( ! empty( $found ) ){
|
269 |
+
foreach ( glob( $dir ) as $file ) {
|
270 |
+
echo "File: " . $file . "\n";
|
271 |
+
}
|
272 |
+
}else {
|
273 |
+
echo 'N/A'."\n";
|
274 |
+
}
|
275 |
+
}
|
276 |
+
echo "\n\n";
|
277 |
+
|
278 |
+
$dir = get_stylesheet_directory() . '/ultimate-member/templates/emails/*.html';
|
279 |
+
echo "-- UM Email HTML Templates -- \n\n";
|
280 |
+
|
281 |
+
if ( ! empty( $dir ) ){
|
282 |
+
$found = glob( $dir );
|
283 |
+
if( ! empty( $found ) ){
|
284 |
+
foreach ( glob( $dir ) as $file ) {
|
285 |
+
echo "File: ". $file . "\n";
|
286 |
+
}
|
287 |
+
}else {
|
288 |
+
echo 'N/A'."\n";
|
289 |
+
}
|
290 |
+
}
|
291 |
+
|
292 |
+
?>
|
293 |
+
|
294 |
+
--- Web Server Configurations ---
|
295 |
+
|
296 |
+
PHP Version: <?php echo PHP_VERSION . "\n"; ?>
|
297 |
+
MySQL Version: <?php echo $wpdb->db_version() . "\n"; ?>
|
298 |
+
Web Server Info: <?php echo $_SERVER['SERVER_SOFTWARE'] . "\n"; ?>
|
299 |
+
|
300 |
+
--- PHP Configurations --
|
301 |
+
|
302 |
+
PHP Safe Mode: <?php echo $this->value( ini_get( 'safe_mode' ), 'yesno', true ); ?>
|
303 |
+
PHP Memory Limit: <?php echo ini_get( 'memory_limit' ) . "\n"; ?>
|
304 |
+
PHP Upload Max Size: <?php echo ini_get( 'upload_max_filesize' ) . "\n"; ?>
|
305 |
+
PHP Post Max Size: <?php echo ini_get( 'post_max_size' ) . "\n"; ?>
|
306 |
+
PHP Upload Max Filesize: <?php echo ini_get( 'upload_max_filesize' ) . "\n"; ?>
|
307 |
+
PHP Time Limit: <?php echo ini_get( 'max_execution_time' ) . "\n"; ?>
|
308 |
+
PHP Max Input Vars: <?php echo ini_get( 'max_input_vars' ) . "\n"; ?>
|
309 |
+
PHP Arg Separator: <?php echo ini_get( 'arg_separator.output' ) . "\n"; ?>
|
310 |
+
PHP Allow URL File Open: <?php echo ini_get( 'allow_url_fopen' ) ? "Yes\n" : "No\n"; ?>
|
311 |
+
|
312 |
+
|
313 |
+
--- Web Server Extensions/Modules ---
|
314 |
+
|
315 |
+
DISPLAY ERRORS: <?php echo ( ini_get( 'display_errors' ) ) ? 'On (' . ini_get( 'display_errors' ) . ')' : 'N/A'; ?><?php echo "\n"; ?>
|
316 |
+
FSOCKOPEN: <?php echo ( function_exists( 'fsockopen' ) ) ? 'Your server supports fsockopen.' : 'Your server does not support fsockopen.'; ?><?php echo "\n"; ?>
|
317 |
+
cURL: <?php echo ( function_exists( 'curl_init' ) ) ? 'Your server supports cURL.' : 'Your server does not support cURL.'; ?><?php echo "\n"; ?>
|
318 |
+
SOAP Client: <?php echo ( class_exists( 'SoapClient' ) ) ? 'Your server has the SOAP Client enabled.' : 'Your server does not have the SOAP Client enabled.'; ?><?php echo "\n"; ?>
|
319 |
+
SUHOSIN: <?php echo ( extension_loaded( 'suhosin' ) ) ? 'Your server has SUHOSIN installed.' : 'Your server does not have SUHOSIN installed.'; ?><?php echo "\n"; ?>
|
320 |
+
|
321 |
+
|
322 |
+
--- Session Configurations ---
|
323 |
+
|
324 |
+
Session: <?php echo isset( $_SESSION ) ? 'Enabled' : 'Disabled'; ?><?php echo "\n"; ?>
|
325 |
+
Session Name: <?php echo esc_html( ini_get( 'session.name' ) ); ?><?php echo "\n"; ?>
|
326 |
+
Cookie Path: <?php echo esc_html( ini_get( 'session.cookie_path' ) ); ?><?php echo "\n"; ?>
|
327 |
+
Save Path: <?php echo esc_html( ini_get( 'session.save_path' ) ); ?><?php echo "\n"; ?>
|
328 |
+
Use Cookies: <?php echo ini_get( 'session.use_cookies' ) ? 'On' : 'Off'; ?><?php echo "\n"; ?>
|
329 |
+
Use Only Cookies: <?php echo ini_get( 'session.use_only_cookies' ) ? 'On' : 'Off'; ?><?php echo "\n"; ?>
|
330 |
+
|
331 |
+
|
332 |
+
|
333 |
+
--- WordPress Active Plugins ---
|
334 |
+
|
335 |
+
<?php
|
336 |
+
$plugins = get_plugins();
|
337 |
+
$active_plugins = get_option( 'active_plugins', array() );
|
338 |
+
|
339 |
+
foreach ( $plugins as $plugin_path => $plugin ) {
|
340 |
+
// If the plugin isn't active, don't show it.
|
341 |
+
if ( ! in_array( $plugin_path, $active_plugins ) )
|
342 |
+
continue;
|
343 |
+
|
344 |
+
echo $plugin['Name'] . ': ' . $plugin['Version'] ."\n";
|
345 |
+
}
|
346 |
+
|
347 |
+
if ( is_multisite() ) :
|
348 |
+
?>
|
349 |
+
|
350 |
+
--- WordPress Network Active Plugins ---
|
351 |
+
|
352 |
+
<?php
|
353 |
+
$plugins = wp_get_active_network_plugins();
|
354 |
+
$active_plugins = get_site_option( 'active_sitewide_plugins', array() );
|
355 |
+
|
356 |
+
foreach ( $plugins as $plugin_path ) {
|
357 |
+
$plugin_base = plugin_basename( $plugin_path );
|
358 |
+
|
359 |
+
// If the plugin isn't active, don't show it.
|
360 |
+
if ( ! array_key_exists( $plugin_base, $active_plugins ) )
|
361 |
+
continue;
|
362 |
+
|
363 |
+
$plugin = get_plugin_data( $plugin_path );
|
364 |
+
|
365 |
+
echo $plugin['Name'] . ' :' . $plugin['Version'] ."\n";
|
366 |
+
}
|
367 |
+
|
368 |
+
endif;
|
369 |
+
?>
|
370 |
+
<?php
|
371 |
+
do_action( 'um_system_info_after' );
|
372 |
+
?>
|
373 |
+
|
374 |
+
|
375 |
+
|
376 |
+
|
377 |
+
### End System Info ###</textarea>
|
378 |
+
<p class="submit">
|
379 |
+
<input type="hidden" name="um-addon-hook" value="download_system_info" />
|
380 |
+
<?php submit_button( 'Download System Info File', 'primary', 'download_system_info', false ); ?>
|
381 |
+
</p>
|
382 |
+
</form>
|
383 |
+
|
384 |
+
<?php } ?>
|
385 |
+
|
386 |
+
<?php
|
387 |
+
|
388 |
+
}
|
389 |
+
|
390 |
+
function value( $raw_value = '', $type = 'yesno', $default = '', $default_negate = '' ){
|
391 |
+
|
392 |
+
if( $type == 'yesno' ){
|
393 |
+
if( $default == $raw_value ){
|
394 |
+
$raw_value = "Yes";
|
395 |
+
}else{
|
396 |
+
$raw_value = "No";
|
397 |
+
}
|
398 |
+
}else if( $type == 'onoff' ){
|
399 |
+
if( $default == $raw_value ){
|
400 |
+
$raw_value = "On";
|
401 |
+
}else{
|
402 |
+
$raw_value = "Off";
|
403 |
+
}
|
404 |
+
}
|
405 |
+
|
406 |
+
return $raw_value."\n";
|
407 |
+
}
|
408 |
+
|
409 |
+
}
|
410 |
+
|
411 |
$UM_ADDON_system_info = new UM_ADDON_system_info();
|
admin/assets/css/um-admin-builder.css
CHANGED
@@ -1,302 +1,302 @@
|
|
1 |
-
/*
|
2 |
-
- General
|
3 |
-
*/
|
4 |
-
|
5 |
-
.um-admin-builder * {
|
6 |
-
-webkit-font-smoothing: antialiased !important;
|
7 |
-
-moz-osx-font-smoothing: grayscale;
|
8 |
-
}
|
9 |
-
|
10 |
-
.um-admin-builder i {
|
11 |
-
font-size: 15px !important;
|
12 |
-
height: 100% !important;
|
13 |
-
line-height: 100% !important;
|
14 |
-
margin: 0 5px 0 0 !important;
|
15 |
-
}
|
16 |
-
|
17 |
-
.um-admin-builder .um-admin-drag {margin-top: 40px}
|
18 |
-
|
19 |
-
/*
|
20 |
-
- Add field
|
21 |
-
*/
|
22 |
-
.um-admin-drag-add-field {
|
23 |
-
display: block;
|
24 |
-
width: 100%;
|
25 |
-
height: 30px;
|
26 |
-
line-height: 30px;
|
27 |
-
text-align: center;
|
28 |
-
color: #aaa;
|
29 |
-
text-decoration: none;
|
30 |
-
}
|
31 |
-
|
32 |
-
.um-admin-drag-add-field:hover {color: #3ba1da}
|
33 |
-
|
34 |
-
.um-admin-drag-add-field i {
|
35 |
-
font-size: 23px !important;
|
36 |
-
margin: 0 !important;
|
37 |
-
}
|
38 |
-
|
39 |
-
/*
|
40 |
-
- Drag controls
|
41 |
-
*/
|
42 |
-
|
43 |
-
.um-admin-drag-ctrls-demo.um-admin-drag-ctrls {
|
44 |
-
position: absolute;
|
45 |
-
right: 7px;
|
46 |
-
top: -30px;
|
47 |
-
left: auto;
|
48 |
-
}
|
49 |
-
|
50 |
-
.um-admin-drag-ctrls {
|
51 |
-
position: absolute;
|
52 |
-
top: -30px;
|
53 |
-
left: 0;
|
54 |
-
}
|
55 |
-
|
56 |
-
.um-admin-drag-ctrls a {
|
57 |
-
float: left;
|
58 |
-
margin: 0 5px 0 0;
|
59 |
-
height: 30px;
|
60 |
-
line-height: 30px;
|
61 |
-
background: #eee;
|
62 |
-
color: #888;
|
63 |
-
padding: 0 8px;
|
64 |
-
text-decoration: none;
|
65 |
-
border-radius: 2px 2px 0 0;
|
66 |
-
}
|
67 |
-
|
68 |
-
.um-admin-drag-ctrls a:hover {background-color: #e5e5e5}
|
69 |
-
|
70 |
-
.um-admin-drag-ctrls a.active,
|
71 |
-
.um-admin-drag-ctrls a.active:hover {
|
72 |
-
background-color: #3ba1da;
|
73 |
-
color: #fff;
|
74 |
-
}
|
75 |
-
|
76 |
-
.um-admin-drag-ctrls.columns a {width: 30px !important;background-image: url(../img/1-column.gif); background-repeat: no-repeat; background-position: center;}
|
77 |
-
.um-admin-drag-ctrls.columns a:nth-child(2) {background-image: url(../img/2-columns.gif);}
|
78 |
-
.um-admin-drag-ctrls.columns a:last-child {background-image: url(../img/3-columns.gif);}
|
79 |
-
|
80 |
-
.um-admin-drag-ctrls.columns a.active {background-image: url(../img/1-column-active.gif)}
|
81 |
-
.um-admin-drag-ctrls.columns a.active:nth-child(2) {background-image: url(../img/2-columns-active.gif);}
|
82 |
-
.um-admin-drag-ctrls.columns a.active:last-child {background-image: url(../img/3-columns-active.gif);}
|
83 |
-
|
84 |
-
/*
|
85 |
-
- Drag Area
|
86 |
-
*/
|
87 |
-
|
88 |
-
.um-admin-drag {
|
89 |
-
width: 100%;
|
90 |
-
background: #f1f1f1;
|
91 |
-
box-sizing: border-box;
|
92 |
-
position: relative;
|
93 |
-
padding: 60px 20px 20px 20px;
|
94 |
-
}
|
95 |
-
|
96 |
-
.um-admin-drag-row {
|
97 |
-
width: 100%;
|
98 |
-
background: #fefefe;
|
99 |
-
box-sizing: border-box;
|
100 |
-
position: relative;
|
101 |
-
padding: 60px 20px 20px 20px;
|
102 |
-
margin: 0 0 60px 0;
|
103 |
-
}
|
104 |
-
.um-admin-drag-row:last-child {margin-bottom: 0}
|
105 |
-
|
106 |
-
.um-admin-drag-row-icons {
|
107 |
-
position: absolute;
|
108 |
-
right: 0;
|
109 |
-
top: -30px;
|
110 |
-
height: 30px;
|
111 |
-
}
|
112 |
-
|
113 |
-
.um-admin-drag-rowsub {
|
114 |
-
position: relative;
|
115 |
-
box-sizing: border-box;
|
116 |
-
background: #f1f1f1;
|
117 |
-
padding: 20px;
|
118 |
-
margin: 0 0 60px 0;
|
119 |
-
}
|
120 |
-
.um-admin-drag-rowsub:last-child {margin-bottom: 0}
|
121 |
-
|
122 |
-
.um-admin-drag-rowsub-icons {
|
123 |
-
position: absolute;
|
124 |
-
right: 0;
|
125 |
-
top: -30px;
|
126 |
-
height: 30px;
|
127 |
-
}
|
128 |
-
|
129 |
-
.um-admin-drag-col {
|
130 |
-
float: left;
|
131 |
-
width: 100%;
|
132 |
-
background: #fff;
|
133 |
-
border: 1px dashed #bbb;
|
134 |
-
box-sizing: border-box;
|
135 |
-
padding: 20px;
|
136 |
-
}
|
137 |
-
|
138 |
-
.um-admin-drag-col.cols-3 {width: 32%;}
|
139 |
-
.um-admin-drag-col.cols-3.cols-last {width: 32%;}
|
140 |
-
.um-admin-drag-col.cols-3.cols-middle {width: 32%;margin: 0 2%;}
|
141 |
-
|
142 |
-
.um-admin-drag-col.cols-1 {width: 100%;}
|
143 |
-
.um-admin-drag-col.cols-1.cols-last {width: 100%;}
|
144 |
-
.um-admin-drag-col.cols-1.cols-middle {}
|
145 |
-
|
146 |
-
.um-admin-drag-col.cols-2 {width: 49%;margin: 0 1% 0 0}
|
147 |
-
.um-admin-drag-col.cols-2.cols-last {width: 49%;margin: 0 0 0 1%;}
|
148 |
-
.um-admin-drag-col.cols-2.cols-middle {}
|
149 |
-
|
150 |
-
.um-admin-drag-addrow {
|
151 |
-
text-align: center;
|
152 |
-
font-size: 14px;
|
153 |
-
color: #888;
|
154 |
-
cursor: pointer;
|
155 |
-
border: 1px dashed #bbb;
|
156 |
-
padding: 10px 0;
|
157 |
-
margin: 20px 0 0 0;
|
158 |
-
}
|
159 |
-
.um-admin-drag-addrow i {
|
160 |
-
font-size: 23px !important;
|
161 |
-
margin: 0 !important;
|
162 |
-
}
|
163 |
-
.um-admin-drag-addrow:hover {color: #3ba1da}
|
164 |
-
|
165 |
-
/*
|
166 |
-
- Fields
|
167 |
-
*/
|
168 |
-
|
169 |
-
.um-admin-drag-fld {
|
170 |
-
display: block;
|
171 |
-
position: relative;
|
172 |
-
border: 1px solid #dddddd;
|
173 |
-
margin: 0 0 15px 0;
|
174 |
-
background: #F5F5F5;
|
175 |
-
cursor: move !important;
|
176 |
-
}
|
177 |
-
|
178 |
-
.um-admin-drag-fld-title i {
|
179 |
-
width: 24px;
|
180 |
-
display: inline-block;
|
181 |
-
text-align: center;
|
182 |
-
}
|
183 |
-
|
184 |
-
.um-admin-drag-fld.um-field-type-group {background: #555;border: 0}
|
185 |
-
.um-admin-drag-fld-title.um-field-type-group,.um-admin-drag-fld-type.um-field-type-group {color: #fff}
|
186 |
-
.um-admin-drag-group {background: #FCFCFC;cursor: default;padding: 20px;border: 1px dashed #bbb;}
|
187 |
-
.um-admin-drag-col.cols-3 .um-admin-drag-fld-icons.um-field-type-group{float: left;position: relative;bottom: auto;right: auto;height: 30px;display: block;}
|
188 |
-
.um-admin-drag-fld-icons.um-field-type-group a.um_admin_duplicate_field {display: none !important}
|
189 |
-
|
190 |
-
.um-admin-drag-fld-title,
|
191 |
-
.um-admin-drag-fld-type {
|
192 |
-
float: left;
|
193 |
-
font-weight: bold;
|
194 |
-
font-size: 13px;
|
195 |
-
color: #666;
|
196 |
-
height: 30px;
|
197 |
-
line-height: 30px;
|
198 |
-
margin: 0 0 0 20px;
|
199 |
-
}
|
200 |
-
|
201 |
-
.um-admin-drag-fld-type {
|
202 |
-
font-weight: 400;
|
203 |
-
color: #999;
|
204 |
-
}
|
205 |
-
|
206 |
-
.um-admin-drag-fld-icons {
|
207 |
-
float: right;
|
208 |
-
}
|
209 |
-
|
210 |
-
/*
|
211 |
-
- Responsive cols appearance
|
212 |
-
*/
|
213 |
-
|
214 |
-
.um-admin-drag-col.cols-3 .um-admin-drag-fld-title,
|
215 |
-
.um-admin-drag-col.cols-3 .um-admin-drag-fld-type {
|
216 |
-
height: auto;
|
217 |
-
line-height: 18px;
|
218 |
-
margin: 10px;
|
219 |
-
margin-bottom: 0;
|
220 |
-
}
|
221 |
-
|
222 |
-
.um-admin-drag-col.cols-3 .um-admin-drag-fld-type {
|
223 |
-
margin: 10px;
|
224 |
-
}
|
225 |
-
|
226 |
-
.um-admin-drag-col.cols-3 .um-admin-drag-fld-icons {
|
227 |
-
float: none;
|
228 |
-
position: absolute;
|
229 |
-
bottom: 0;
|
230 |
-
right: 0;
|
231 |
-
height: 30px;
|
232 |
-
display: none;
|
233 |
-
}
|
234 |
-
|
235 |
-
.um-admin-drag-col.cols-3 .um-admin-drag-fld:hover .um-admin-drag-fld-icons{display: block;}
|
236 |
-
|
237 |
-
/*
|
238 |
-
- Icons
|
239 |
-
*/
|
240 |
-
|
241 |
-
.um-admin-drag-row-icons a,
|
242 |
-
.um-admin-drag-row-icons span,
|
243 |
-
.um-admin-drag-rowsub-icons a,
|
244 |
-
.um-admin-drag-rowsub-icons span,
|
245 |
-
.um-admin-drag-fld-icons a{
|
246 |
-
text-decoration: none;
|
247 |
-
color: #fff;
|
248 |
-
width: 40px;
|
249 |
-
height: 30px;
|
250 |
-
line-height: 30px;
|
251 |
-
text-align: center;
|
252 |
-
display: block !important;
|
253 |
-
float: left;
|
254 |
-
background: #44b0ec;
|
255 |
-
padding: 0 4px;
|
256 |
-
transition: all .2s linear;
|
257 |
-
border-left: 1px solid #379dd5;
|
258 |
-
}
|
259 |
-
|
260 |
-
.um-admin-drag-row-icons span,
|
261 |
-
.um-admin-drag-rowsub-icons span
|
262 |
-
{cursor: move!important}
|
263 |
-
|
264 |
-
.um-admin-drag-row-icons a:hover,
|
265 |
-
.um-admin-drag-row-icons span:hover,
|
266 |
-
.um-admin-drag-rowsub-icons a:hover,
|
267 |
-
.um-admin-drag-rowsub-icons span:hover,
|
268 |
-
.um-admin-drag-fld-icons a:hover {background: #3396cd;}
|
269 |
-
|
270 |
-
.um-admin-drag-row-icons i,
|
271 |
-
.um-admin-drag-rowsub-icons i,
|
272 |
-
.um-admin-drag-fld-icons i{
|
273 |
-
font-size: 18px !important;
|
274 |
-
margin: 0 !important;
|
275 |
-
top: 2px;
|
276 |
-
position: relative;
|
277 |
-
}
|
278 |
-
|
279 |
-
/*
|
280 |
-
- UI Placeholders
|
281 |
-
*/
|
282 |
-
|
283 |
-
.um-row-placeholder {
|
284 |
-
width: 100%;
|
285 |
-
border: 2px dashed #aaa;
|
286 |
-
box-sizing: border-box;
|
287 |
-
}
|
288 |
-
|
289 |
-
.um-rowsub-placeholder {
|
290 |
-
width: 100%;
|
291 |
-
border: 2px dashed #ccc;
|
292 |
-
box-sizing: border-box;
|
293 |
-
display: block;
|
294 |
-
}
|
295 |
-
|
296 |
-
.um-fld-placeholder {
|
297 |
-
display: block;
|
298 |
-
border: 1px dashed #dddddd;
|
299 |
-
background: #fff;
|
300 |
-
box-sizing: border-box;
|
301 |
-
width: 100%;
|
302 |
}
|
1 |
+
/*
|
2 |
+
- General
|
3 |
+
*/
|
4 |
+
|
5 |
+
.um-admin-builder * {
|
6 |
+
-webkit-font-smoothing: antialiased !important;
|
7 |
+
-moz-osx-font-smoothing: grayscale;
|
8 |
+
}
|
9 |
+
|
10 |
+
.um-admin-builder i {
|
11 |
+
font-size: 15px !important;
|
12 |
+
height: 100% !important;
|
13 |
+
line-height: 100% !important;
|
14 |
+
margin: 0 5px 0 0 !important;
|
15 |
+
}
|
16 |
+
|
17 |
+
.um-admin-builder .um-admin-drag {margin-top: 40px}
|
18 |
+
|
19 |
+
/*
|
20 |
+
- Add field
|
21 |
+
*/
|
22 |
+
.um-admin-drag-add-field {
|
23 |
+
display: block;
|
24 |
+
width: 100%;
|
25 |
+
height: 30px;
|
26 |
+
line-height: 30px;
|
27 |
+
text-align: center;
|
28 |
+
color: #aaa;
|
29 |
+
text-decoration: none;
|
30 |
+
}
|
31 |
+
|
32 |
+
.um-admin-drag-add-field:hover {color: #3ba1da}
|
33 |
+
|
34 |
+
.um-admin-drag-add-field i {
|
35 |
+
font-size: 23px !important;
|
36 |
+
margin: 0 !important;
|
37 |
+
}
|
38 |
+
|
39 |
+
/*
|
40 |
+
- Drag controls
|
41 |
+
*/
|
42 |
+
|
43 |
+
.um-admin-drag-ctrls-demo.um-admin-drag-ctrls {
|
44 |
+
position: absolute;
|
45 |
+
right: 7px;
|
46 |
+
top: -30px;
|
47 |
+
left: auto;
|
48 |
+
}
|
49 |
+
|
50 |
+
.um-admin-drag-ctrls {
|
51 |
+
position: absolute;
|
52 |
+
top: -30px;
|
53 |
+
left: 0;
|
54 |
+
}
|
55 |
+
|
56 |
+
.um-admin-drag-ctrls a {
|
57 |
+
float: left;
|
58 |
+
margin: 0 5px 0 0;
|
59 |
+
height: 30px;
|
60 |
+
line-height: 30px;
|
61 |
+
background: #eee;
|
62 |
+
color: #888;
|
63 |
+
padding: 0 8px;
|
64 |
+
text-decoration: none;
|
65 |
+
border-radius: 2px 2px 0 0;
|
66 |
+
}
|
67 |
+
|
68 |
+
.um-admin-drag-ctrls a:hover {background-color: #e5e5e5}
|
69 |
+
|
70 |
+
.um-admin-drag-ctrls a.active,
|
71 |
+
.um-admin-drag-ctrls a.active:hover {
|
72 |
+
background-color: #3ba1da;
|
73 |
+
color: #fff;
|
74 |
+
}
|
75 |
+
|
76 |
+
.um-admin-drag-ctrls.columns a {width: 30px !important;background-image: url(../img/1-column.gif); background-repeat: no-repeat; background-position: center;}
|
77 |
+
.um-admin-drag-ctrls.columns a:nth-child(2) {background-image: url(../img/2-columns.gif);}
|
78 |
+
.um-admin-drag-ctrls.columns a:last-child {background-image: url(../img/3-columns.gif);}
|
79 |
+
|
80 |
+
.um-admin-drag-ctrls.columns a.active {background-image: url(../img/1-column-active.gif)}
|
81 |
+
.um-admin-drag-ctrls.columns a.active:nth-child(2) {background-image: url(../img/2-columns-active.gif);}
|
82 |
+
.um-admin-drag-ctrls.columns a.active:last-child {background-image: url(../img/3-columns-active.gif);}
|
83 |
+
|
84 |
+
/*
|
85 |
+
- Drag Area
|
86 |
+
*/
|
87 |
+
|
88 |
+
.um-admin-drag {
|
89 |
+
width: 100%;
|
90 |
+
background: #f1f1f1;
|
91 |
+
box-sizing: border-box;
|
92 |
+
position: relative;
|
93 |
+
padding: 60px 20px 20px 20px;
|
94 |
+
}
|
95 |
+
|
96 |
+
.um-admin-drag-row {
|
97 |
+
width: 100%;
|
98 |
+
background: #fefefe;
|
99 |
+
box-sizing: border-box;
|
100 |
+
position: relative;
|
101 |
+
padding: 60px 20px 20px 20px;
|
102 |
+
margin: 0 0 60px 0;
|
103 |
+
}
|
104 |
+
.um-admin-drag-row:last-child {margin-bottom: 0}
|
105 |
+
|
106 |
+
.um-admin-drag-row-icons {
|
107 |
+
position: absolute;
|
108 |
+
right: 0;
|
109 |
+
top: -30px;
|
110 |
+
height: 30px;
|
111 |
+
}
|
112 |
+
|
113 |
+
.um-admin-drag-rowsub {
|
114 |
+
position: relative;
|
115 |
+
box-sizing: border-box;
|
116 |
+
background: #f1f1f1;
|
117 |
+
padding: 20px;
|
118 |
+
margin: 0 0 60px 0;
|
119 |
+
}
|
120 |
+
.um-admin-drag-rowsub:last-child {margin-bottom: 0}
|
121 |
+
|
122 |
+
.um-admin-drag-rowsub-icons {
|
123 |
+
position: absolute;
|
124 |
+
right: 0;
|
125 |
+
top: -30px;
|
126 |
+
height: 30px;
|
127 |
+
}
|
128 |
+
|
129 |
+
.um-admin-drag-col {
|
130 |
+
float: left;
|
131 |
+
width: 100%;
|
132 |
+
background: #fff;
|
133 |
+
border: 1px dashed #bbb;
|
134 |
+
box-sizing: border-box;
|
135 |
+
padding: 20px;
|
136 |
+
}
|
137 |
+
|
138 |
+
.um-admin-drag-col.cols-3 {width: 32%;}
|
139 |
+
.um-admin-drag-col.cols-3.cols-last {width: 32%;}
|
140 |
+
.um-admin-drag-col.cols-3.cols-middle {width: 32%;margin: 0 2%;}
|
141 |
+
|
142 |
+
.um-admin-drag-col.cols-1 {width: 100%;}
|
143 |
+
.um-admin-drag-col.cols-1.cols-last {width: 100%;}
|
144 |
+
.um-admin-drag-col.cols-1.cols-middle {}
|
145 |
+
|
146 |
+
.um-admin-drag-col.cols-2 {width: 49%;margin: 0 1% 0 0}
|
147 |
+
.um-admin-drag-col.cols-2.cols-last {width: 49%;margin: 0 0 0 1%;}
|