'
. '
diff --git a/wp/wp-content/plugins/user-role-editor/includes/classes/woocommerce-capabilities.php b/wp/wp-content/plugins/user-role-editor/includes/classes/woocommerce-capabilities.php
index 832057d2..c8d4eaf4 100644
--- a/wp/wp-content/plugins/user-role-editor/includes/classes/woocommerce-capabilities.php
+++ b/wp/wp-content/plugins/user-role-editor/includes/classes/woocommerce-capabilities.php
@@ -54,7 +54,7 @@ class URE_Woocommerce_Capabilities {
/**
* Returns full list of WooCommerce plugin user capabilities
*/
- public static function get() {
+ public static function get_caps_groups() {
$caps = array(
'manage_woocommerce'=>array('custom', 'woocommerce', 'woocommerce_core'),
diff --git a/wp/wp-content/plugins/user-role-editor/includes/loader.php b/wp/wp-content/plugins/user-role-editor/includes/loader.php
index f40828c2..9e6ffb40 100644
--- a/wp/wp-content/plugins/user-role-editor/includes/loader.php
+++ b/wp/wp-content/plugins/user-role-editor/includes/loader.php
@@ -11,6 +11,7 @@
require_once(URE_PLUGIN_DIR .'includes/define-constants.php');
require_once(URE_PLUGIN_DIR .'includes/misc-support-stuff.php');
require_once(URE_PLUGIN_DIR .'includes/classes/task-queue.php');
+require_once(URE_PLUGIN_DIR .'includes/classes/ure-own-capabilities.php');
require_once(URE_PLUGIN_DIR .'includes/classes/bbpress.php');
require_once(URE_PLUGIN_DIR .'includes/classes/assign-role.php');
require_once(URE_PLUGIN_DIR .'includes/classes/user-other-roles.php');
diff --git a/wp/wp-content/plugins/user-role-editor/includes/misc-support-stuff.php b/wp/wp-content/plugins/user-role-editor/includes/misc-support-stuff.php
index 980390b0..3a034122 100644
--- a/wp/wp-content/plugins/user-role-editor/includes/misc-support-stuff.php
+++ b/wp/wp-content/plugins/user-role-editor/includes/misc-support-stuff.php
@@ -51,4 +51,4 @@ if (!function_exists('ure_hide_admin_bar')) {
}
// end of hide_admin_bar()
-}
\ No newline at end of file
+}
diff --git a/wp/wp-content/plugins/user-role-editor/js/ure-js.js b/wp/wp-content/plugins/user-role-editor/js/ure-js.js
index 0ab8307f..12ffcf76 100644
--- a/wp/wp-content/plugins/user-role-editor/js/ure-js.js
+++ b/wp/wp-content/plugins/user-role-editor/js/ure-js.js
@@ -1,5 +1,3 @@
-var ure_obj = {selected_group: 'all', caps_counter: null};
-
// get/post via jQuery
(function ($) {
$.extend({
@@ -22,6 +20,97 @@ var ure_obj = {selected_group: 'all', caps_counter: null};
});
})(jQuery);
+var ure_ajax_get_caps_to_remove = null;
+
+jQuery(document).ready(function() {
+
+// Get from the server a list of capabilities we can delete and show dialog to select what to delete
+ ure_ajax_get_caps_to_remove = {
+ url: ajaxurl,
+ type: 'POST',
+ dataType: 'html',
+ data: {
+ action: 'ure_ajax',
+ sub_action: 'get_caps_to_remove',
+ current_role: jQuery('#user_role').val(),
+ network_admin: ure_data.network_admin,
+ wp_nonce: ure_data.wp_nonce
+ },
+ success: function (response) {
+ var data = jQuery.parseJSON(response);
+ if (typeof data.result !== 'undefined') {
+ if (data.result === 'success') {
+ jQuery('#ure_delete_capability_dialog .ure-input').html(data.html);
+ ure_main.show_delete_capability_dialog();
+ } else if (data.result === 'failure') {
+ alert(data.message);
+ } else {
+ alert('Wrong response: ' + response)
+ }
+ } else {
+ alert('Wrong response: ' + response)
+ }
+ },
+ error: function (XMLHttpRequest, textStatus, exception) {
+ alert("Ajax failure\n" + XMLHttpRequest.statusText);
+ },
+ async: true
+ };
+
+});
+
+// Main User Role Editor object
+var ure_main = {
+ selected_group: 'all',
+ caps_counter: null,
+ class_prefix: 'ure-',
+
+ show_delete_capability_dialog: function () {
+ jQuery('#ure_delete_capability_dialog').dialog({
+ dialogClass: 'wp-dialog',
+ modal: true,
+ autoOpen: true,
+ closeOnEscape: true,
+ width: 350,
+ height: 400,
+ resizable: false,
+ title: ure_data.delete_capability,
+ buttons: {
+ 'Delete Capability': function () {
+ if (!confirm(ure_data.delete_capability + ' - ' + ure_data.delete_capability_warning)) {
+ return;
+ }
+ jQuery('#ure_remove_caps_form').submit();
+ jQuery(this).dialog('close');
+ },
+ Cancel: function () {
+ jQuery(this).dialog('close');
+ }
+ }
+ });
+ // translate buttons caption
+ jQuery('.ui-dialog-buttonpane button:contains("Delete Capability")').attr('id', 'dialog-delete-capability-button');
+ jQuery('#dialog-delete-capability-button').html(ure_ui_button_text(ure_data.delete_capability));
+ jQuery('.ui-dialog-buttonpane button:contains("Cancel")').attr('id', 'delete-capability-dialog-cancel-button');
+ jQuery('#delete-capability-dialog-cancel-button').html(ure_ui_button_text(ure_data.cancel));
+ jQuery('#ure_remove_caps_select_all').click(this.remove_caps_auto_select);
+ },
+
+ remove_caps_auto_select: function (event) {
+ if (event.shiftKey) {
+ jQuery('.ure-cb-column').each(function () { // reverse selection
+ jQuery(this).prop('checked', !jQuery(this).prop('checked'));
+ });
+ } else { // switch On/Off all checkboxes
+ jQuery('.ure-cb-column').prop('checked', jQuery('#ure_remove_caps_select_all').prop('checked'));
+
+ }
+ }
+
+}; // end of ure_main declaration
+//-------------------------------
+
+
function ure_ui_button_text(caption) {
var wrapper = '
' + caption + '';
@@ -45,6 +134,7 @@ jQuery(function ($) {
ure_count_caps_in_groups();
ure_sizes_update();
$('#ure_select_all_caps').click(ure_auto_select_caps);
+ $('#granted_only').click(ure_show_granted_caps_only);
$('#ure_caps_groups_list').selectable({
selected: function( event, ui ) {
// do not allow multiple selection
@@ -54,22 +144,6 @@ jQuery(function ($) {
});
ure_select_selectable_element($('#ure_caps_groups_list'), $('#ure_caps_group_all'));
- if (typeof ure_current_role === 'undefined' || 'administrator' !== ure_current_role) {
- $('#ure_unselect_all').button({
- label: ure_data.unselect_all
- }).click(function (event) {
- event.preventDefault();
- ure_select_all(0);
- });
-
- $('#ure_reverse_selection').button({
- label: ure_data.reverse
- }).click(function (event) {
- event.preventDefault();
- ure_select_all(-1);
- });
- }
-
$('#ure_update_role').button({
label: ure_data.update
}).click(function () {
@@ -184,7 +258,7 @@ jQuery(function ($) {
ure_show_rename_role_dialog();
});
-
+
function ure_show_delete_role_dialog() {
$('#ure_delete_role_dialog').dialog({
dialogClass: 'wp-dialog',
@@ -222,7 +296,7 @@ jQuery(function ($) {
label: ure_data.delete_role
}).click(function (event) {
event.preventDefault();
- ure_show_delete_role_dialog();
+ ure_show_delete_role_dialog();
});
@@ -271,50 +345,16 @@ jQuery(function ($) {
event.preventDefault();
ure_show_add_capability_dialog();
});
-
-
- function ure_show_delete_capability_dialog() {
- $('#ure_delete_capability_dialog').dialog({
- dialogClass: 'wp-dialog',
- modal: true,
- autoOpen: true,
- closeOnEscape: true,
- width: 320,
- height: 190,
- resizable: false,
- title: ure_data.delete_capability,
- buttons: {
- 'Delete Capability': function () {
- if (!confirm(ure_data.delete_capability + ' - ' + ure_data.delete_capability_warning)) {
- return;
- }
- $(this).dialog('close');
- var user_capability_id = $('#remove_user_capability').val();
- $.ure_postGo(ure_data.page_url,
- {action: 'delete-user-capability', user_capability_id: user_capability_id, ure_nonce: ure_data.wp_nonce});
- },
- Cancel: function () {
- $(this).dialog('close');
- }
- }
- });
- // translate buttons caption
- $('.ui-dialog-buttonpane button:contains("Delete Capability")').attr('id', 'dialog-delete-capability-button');
- $('#dialog-delete-capability-button').html(ure_ui_button_text(ure_data.delete_capability));
- $('.ui-dialog-buttonpane button:contains("Cancel")').attr('id', 'delete-capability-dialog-cancel-button');
- $('#delete-capability-dialog-cancel-button').html(ure_ui_button_text(ure_data.cancel));
- }
-
if ($('#ure_delete_capability').length > 0) {
$('#ure_delete_capability').button({
label: ure_data.delete_capability
}).click(function (event) {
event.preventDefault();
- ure_show_delete_capability_dialog()
+ $.ajax(ure_ajax_get_caps_to_remove);
});
- }
+ }
function ure_show_default_role_dialog() {
@@ -407,7 +447,7 @@ jQuery(function ($) {
// change color of apply to all check box - for multi-site setup only
-function ure_applyToAllOnClick(cb) {
+function ure_apply_to_all_on_click(cb) {
el = document.getElementById('ure_apply_to_all_div');
if (cb.checked) {
el.style.color = '#FF0000';
@@ -415,7 +455,7 @@ function ure_applyToAllOnClick(cb) {
el.style.color = '#000000';
}
}
-// end of ure_applyToAllOnClick()
+// end of ure_apply_to_all_on_click()
// turn on checkbox back if clicked to turn off
@@ -427,46 +467,12 @@ function ure_turn_it_back(control) {
// end of ure_turn_it_back()
-/**
- * Manipulate mass capability checkboxes selection
- * @param {bool} selected
- * @returns {none}
- */
-function ure_select_all(selected) {
-
- var qfilter = jQuery('#quick_filter').val();
- var form = document.getElementById('ure_form');
- for (i = 0; i < form.elements.length; i++) {
- el = form.elements[i];
- if (el.type !== 'checkbox') {
- continue;
- }
- if (el.name === 'ure_caps_readable' || el.name === 'ure_show_deprecated_caps' ||
- el.name === 'ure_apply_to_all' || el.disabled ||
- el.name.substr(0, 8) === 'wp_role_') {
- continue;
- }
- if (qfilter !== '' && !form.elements[i].parentNode.ure_tag) {
- continue;
- }
- if (selected >= 0) {
- form.elements[i].checked = selected;
- } else {
- form.elements[i].checked = !form.elements[i].checked;
- }
-
- }
-
-}
-// end of ure_select_all()
-
-
function ure_apply_selection(cb_id) {
var qfilter = jQuery('#quick_filter').val();
var parent_div = jQuery('#ure_cap_div_'+ cb_id);
var disabled = jQuery('#'+ cb_id).attr('disabled');
var result = false;
- if (parent_div.hasClass(ure_obj.selected_group) && // make selection inside currently selected group of capabilities only
+ if (parent_div.hasClass(ure_main.class_prefix + ure_main.selected_group) && // make selection inside currently selected group of capabilities only
!parent_div.hasClass('hidden') && disabled!=='disabled') { // select not hidden and not disabled checkboxes (capabilities) only
// if quick filter is not empty, then apply selection to the tagged element only
if (qfilter==='' || parent_div.hasClass('ure_tag')) {
@@ -479,31 +485,31 @@ function ure_apply_selection(cb_id) {
function ure_auto_select_caps(event) {
- jQuery(function($) {
- if (event.shiftKey) {
- $('.ure-cap-cb').each(function () { // reverse selection
- if (ure_apply_selection(this.id)) {
- $(this).prop('checked', !$(this).prop('checked'));
- }
- });
- } else {
- $('.ure-cap-cb').each(function () { // switch On/Off all checkboxes
- if (ure_apply_selection(this.id)) {
- $(this).prop('checked', $('#ure_select_all_caps').prop('checked'));
- }
- });
- }
- });
+
+ if (event.shiftKey) {
+ jQuery('.ure-cap-cb').each(function () { // reverse selection
+ if (ure_apply_selection(this.id)) {
+ jQuery(this).prop('checked', !jQuery(this).prop('checked'));
+ }
+ });
+ } else {
+ jQuery('.ure-cap-cb').each(function () { // switch On/Off all checkboxes
+ if (ure_apply_selection(this.id)) {
+ jQuery(this).prop('checked', jQuery('#ure_select_all_caps').prop('checked'));
+ }
+ });
+ }
+
}
function ure_turn_caps_readable(user_id) {
- var ure_object = 'user';
+ var ure_obj = 'user';
if (user_id === 0) {
- ure_object = 'role';
+ ure_obj = 'role';
}
- jQuery.ure_postGo(ure_data.page_url, {action: 'caps-readable', object: ure_object, user_id: user_id, ure_nonce: ure_data.wp_nonce});
+ jQuery.ure_postGo(ure_data.page_url, {action: 'caps-readable', object: ure_obj, user_id: user_id, ure_nonce: ure_data.wp_nonce});
}
// end of ure_turn_caps_readable()
@@ -511,13 +517,11 @@ function ure_turn_caps_readable(user_id) {
function ure_turn_deprecated_caps(user_id) {
- var ure_object = '';
+ var ure_obj = 'user';
if (user_id === 0) {
- ure_object = 'role';
- } else {
- ure_object = 'user';
+ ure_obj = 'role';
}
- jQuery.ure_postGo(ure_data.page_url, {action: 'show-deprecated-caps', object: ure_object, user_id: user_id, ure_nonce: ure_data.wp_nonce});
+ jQuery.ure_postGo(ure_data.page_url, {action: 'show-deprecated-caps', object: ure_obj, user_id: user_id, ure_nonce: ure_data.wp_nonce});
}
// ure_turn_deprecated_caps()
@@ -558,9 +562,11 @@ function ure_hide_pro_banner() {
function ure_caps_refresh_all() {
jQuery('.ure-cap-div').each(function () {
- if (jQuery(this).hasClass('hidden') && !jQuery(this).hasClass('deprecated')) {
- jQuery(this).removeClass('hidden');
- }
+ if (jQuery(this).hasClass('hidden')) {
+ if (!jQuery(this).hasClass(ure_main.class_prefix + 'deprecated')) {
+ jQuery(this).removeClass('hidden');
+ }
+ }
});
}
@@ -569,18 +575,24 @@ function ure_caps_refresh_for_group(group_id) {
var show_deprecated = jQuery('#ure_show_deprecated_caps').attr('checked');
jQuery('.ure-cap-div').each(function () {
var el = jQuery(this);
- if (el.hasClass(group_id)) {
+ if (el.hasClass(ure_main.class_prefix + group_id)) {
if (el.hasClass('hidden')) {
if (el.hasClass('blocked')) {
return;
}
- if (el.hasClass('deprecated')) {
+ if (el.hasClass(ure_main.class_prefix + 'deprecated')) {
if (group_id==='deprecated' || show_deprecated) {
el.removeClass('hidden');
}
} else {
el.removeClass('hidden');
}
+ } else {
+ if (el.hasClass(ure_main.class_prefix + 'deprecated')) {
+ if (!show_deprecated) {
+ el.addClass('hidden');
+ }
+ }
}
} else {
if (!el.hasClass('hidden')) {
@@ -594,25 +606,26 @@ function ure_caps_refresh_for_group(group_id) {
function ure_caps_refresh(group) {
var group_id = group.substr(15);
- ure_obj.selected_group = group_id;
+ ure_main.selected_group = group_id;
if (group_id === 'all') {
ure_caps_refresh_all();
} else {
ure_caps_refresh_for_group(group_id);
}
ure_change_caps_columns_quant();
+ jQuery('#granted_only').attr('checked', false);
}
function ure_validate_columns(columns) {
- if (columns==1 || ure_obj.selected_group=='all') {
+ if (columns==1 || ure_main.selected_group=='all') {
return columns;
}
// Do not split list on columns in case it contains less then < 25 capabilities
- for (i=0; i
\n"
"Language-Team: https://www.role-editor.com \n"
@@ -21,54 +21,101 @@ msgstr ""
msgid "Custom Post Types"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:73
-msgid "All"
+#: ../includes/classes/capabilities-groups-manager.php:75
+#: ../includes/classes/ure-lib.php:230
+#: ../includes/classes/user-role-editor.php:525
+#: ../includes/classes/user-role-editor.php:556
+msgid "User Role Editor"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:74
+#: ../includes/classes/capabilities-groups-manager.php:90
+msgid "WooCommerce"
+msgstr ""
+
+#: ../includes/classes/capabilities-groups-manager.php:91
+#: ../includes/classes/capabilities-groups-manager.php:111
msgid "Core"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:75
-#: ../includes/classes/user-role-editor.php:482
+#: ../includes/classes/capabilities-groups-manager.php:110
+msgid "All"
+msgstr ""
+
+#: ../includes/classes/capabilities-groups-manager.php:112
+#: ../includes/classes/user-role-editor.php:497
#: ../includes/settings-template.php:21
msgid "General"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:76
+#: ../includes/classes/capabilities-groups-manager.php:113
msgid "Themes"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:77
+#: ../includes/classes/capabilities-groups-manager.php:114
msgid "Posts"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:78
+#: ../includes/classes/capabilities-groups-manager.php:115
msgid "Pages"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:79
+#: ../includes/classes/capabilities-groups-manager.php:116
msgid "Plugins"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:80
+#: ../includes/classes/capabilities-groups-manager.php:117
msgid "Users"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:84
-#: ../includes/classes/user-role-editor.php:500
+#: ../includes/classes/capabilities-groups-manager.php:121
+#: ../includes/classes/user-role-editor.php:515
#: ../includes/settings-template.php:34
msgid "Multisite"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:86
+#: ../includes/classes/capabilities-groups-manager.php:123
msgid "Deprecated"
msgstr ""
-#: ../includes/classes/capabilities-groups-manager.php:91
+#: ../includes/classes/capabilities-groups-manager.php:126
msgid "Custom capabilities"
msgstr ""
+#: ../includes/classes/capability.php:56 ../includes/classes/capability.php:164
+#: ../includes/classes/ure-lib.php:1223 ../includes/classes/ure-lib.php:1498
+#: ../includes/classes/ure-lib.php:1614 ../includes/classes/ure-lib.php:1662
+#: ../includes/classes/user-role-editor.php:766
+msgid "Insufficient permissions to work with User Role Editor"
+msgstr ""
+
+#: ../includes/classes/capability.php:66
+msgid "Error: Capability name must contain latin characters and digits only!"
+msgstr ""
+
+#: ../includes/classes/capability.php:78
+#, php-format
+msgid "Capability %s is added successfully"
+msgstr ""
+
+#: ../includes/classes/capability.php:80
+#, php-format
+msgid "Capability %s exists already"
+msgstr ""
+
+#: ../includes/classes/capability.php:171
+#: ../includes/classes/capability.php:176
+msgid "There are no capabilities available for deletion!"
+msgstr ""
+
+#: ../includes/classes/capability.php:182
+#, php-format
+msgid "Capability %s was removed successfully"
+msgstr ""
+
+#: ../includes/classes/capability.php:185
+msgid "capabilities were removed successfully"
+msgstr ""
+
#: ../includes/classes/role-additional-options.php:69
msgid "Hide admin bar"
msgstr ""
@@ -85,48 +132,44 @@ msgstr ""
msgid "Delete All Unused Roles"
msgstr ""
-#: ../includes/classes/role-view.php:168 ../includes/classes/role-view.php:179
+#: ../includes/classes/role-view.php:208 ../includes/classes/role-view.php:219
msgid "Role name (ID): "
msgstr ""
-#: ../includes/classes/role-view.php:170 ../includes/classes/role-view.php:181
+#: ../includes/classes/role-view.php:210 ../includes/classes/role-view.php:221
msgid "Display Role Name: "
msgstr ""
-#: ../includes/classes/role-view.php:172
+#: ../includes/classes/role-view.php:212
msgid "Make copy of: "
msgstr ""
-#: ../includes/classes/role-view.php:188
+#: ../includes/classes/role-view.php:228
msgid "Select Role:"
msgstr ""
-#: ../includes/classes/role-view.php:207
-msgid "Delete:"
-msgstr ""
-
-#: ../includes/classes/role-view.php:214
+#: ../includes/classes/role-view.php:253
msgid "Capability name (ID): "
msgstr ""
-#: ../includes/classes/role-view.php:332 ../includes/classes/user-view.php:154
+#: ../includes/classes/role-view.php:372 ../includes/classes/user-view.php:154
msgid "Show capabilities in human readable form"
msgstr ""
-#: ../includes/classes/role-view.php:342 ../includes/classes/screen-help.php:21
+#: ../includes/classes/role-view.php:382 ../includes/classes/screen-help.php:21
#: ../includes/classes/user-view.php:164 ../includes/settings-template.php:69
msgid "Show deprecated capabilities"
msgstr ""
-#: ../includes/classes/role-view.php:346
+#: ../includes/classes/role-view.php:386
msgid "If checked, then apply action to ALL sites of this Network"
msgstr ""
-#: ../includes/classes/role-view.php:359
+#: ../includes/classes/role-view.php:399
msgid "Apply to All Sites"
msgstr ""
-#: ../includes/classes/role-view.php:376
+#: ../includes/classes/role-view.php:416
msgid "Select Role and change its capabilities:"
msgstr ""
@@ -212,463 +255,414 @@ msgid ""
"limitation."
msgstr ""
-#: ../includes/classes/ure-lib.php:292
+#: ../includes/classes/ure-lib.php:207
msgid "Error: wrong request"
msgstr ""
-#: ../includes/classes/ure-lib.php:327
-#: ../includes/classes/user-role-editor.php:510
-#: ../includes/classes/user-role-editor.php:541
-msgid "User Role Editor"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:388
+#: ../includes/classes/ure-lib.php:291
msgid "Error: "
msgstr ""
-#: ../includes/classes/ure-lib.php:388
+#: ../includes/classes/ure-lib.php:291
msgid "Role"
msgstr ""
-#: ../includes/classes/ure-lib.php:389
+#: ../includes/classes/ure-lib.php:292
msgid "does not exist"
msgstr ""
-#: ../includes/classes/ure-lib.php:432
+#: ../includes/classes/ure-lib.php:335
msgid "Role is updated successfully"
msgstr ""
-#: ../includes/classes/ure-lib.php:434
+#: ../includes/classes/ure-lib.php:337
msgid "Roles are updated for all network"
msgstr ""
-#: ../includes/classes/ure-lib.php:440
+#: ../includes/classes/ure-lib.php:343
msgid "Error occured during role(s) update"
msgstr ""
-#: ../includes/classes/ure-lib.php:447
+#: ../includes/classes/ure-lib.php:350
msgid "User capabilities are updated successfully"
msgstr ""
-#: ../includes/classes/ure-lib.php:452
+#: ../includes/classes/ure-lib.php:355
msgid "Error occured during user update"
msgstr ""
-#: ../includes/classes/ure-lib.php:510
+#: ../includes/classes/ure-lib.php:413
msgid "User Roles are restored to WordPress default values. "
msgstr ""
-#: ../includes/classes/ure-lib.php:1047
-msgid "read about"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:1048
-msgid "user capability"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:1049
-msgid "Help"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:1381 ../includes/classes/ure-lib.php:1657
-#: ../includes/classes/ure-lib.php:1773 ../includes/classes/ure-lib.php:1821
-#: ../includes/classes/ure-lib.php:2100 ../includes/classes/ure-lib.php:2143
-#: ../includes/classes/user-role-editor.php:751
-msgid "Insufficient permissions to work with User Role Editor"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:1620
+#: ../includes/classes/ure-lib.php:1461
msgid "Error is occur. Please check the log file."
msgstr ""
-#: ../includes/classes/ure-lib.php:1666 ../includes/classes/ure-lib.php:1733
+#: ../includes/classes/ure-lib.php:1507 ../includes/classes/ure-lib.php:1574
msgid ""
"Error: Role ID must contain latin characters, digits, hyphens or underscore "
"only!"
msgstr ""
-#: ../includes/classes/ure-lib.php:1670 ../includes/classes/ure-lib.php:1737
+#: ../includes/classes/ure-lib.php:1511 ../includes/classes/ure-lib.php:1578
msgid ""
"Error: WordPress does not support numeric Role name (ID). Add latin "
"characters to it."
msgstr ""
-#: ../includes/classes/ure-lib.php:1685
+#: ../includes/classes/ure-lib.php:1526
#, php-format
msgid "Role %s exists already"
msgstr ""
-#: ../includes/classes/ure-lib.php:1700
+#: ../includes/classes/ure-lib.php:1541
msgid "Error is encountered during new role create operation"
msgstr ""
-#: ../includes/classes/ure-lib.php:1702
+#: ../includes/classes/ure-lib.php:1543
#, php-format
msgid "Role %s is created successfully"
msgstr ""
-#: ../includes/classes/ure-lib.php:1726
+#: ../includes/classes/ure-lib.php:1567
msgid "Error: Role ID is empty!"
msgstr ""
-#: ../includes/classes/ure-lib.php:1744
+#: ../includes/classes/ure-lib.php:1585
msgid "Error: Empty role display name is not allowed."
msgstr ""
-#: ../includes/classes/ure-lib.php:1751
+#: ../includes/classes/ure-lib.php:1592
#, php-format
msgid "Role %s does not exists"
msgstr ""
-#: ../includes/classes/ure-lib.php:1759
+#: ../includes/classes/ure-lib.php:1600
#, php-format
msgid "Role %s is renamed to %s successfully"
msgstr ""
-#: ../includes/classes/ure-lib.php:1832
+#: ../includes/classes/ure-lib.php:1673
msgid "Error encountered during role delete operation"
msgstr ""
-#: ../includes/classes/ure-lib.php:1834
+#: ../includes/classes/ure-lib.php:1675
msgid "Unused roles are deleted successfully"
msgstr ""
-#: ../includes/classes/ure-lib.php:1836
+#: ../includes/classes/ure-lib.php:1677
#, php-format
msgid "Role %s is deleted successfully"
msgstr ""
-#: ../includes/classes/ure-lib.php:1867
+#: ../includes/classes/ure-lib.php:1708
msgid "Error encountered during default role change operation"
msgstr ""
-#: ../includes/classes/ure-lib.php:1870
+#: ../includes/classes/ure-lib.php:1711
#, php-format
msgid "Default role for new users is set to %s successfully"
msgstr ""
-#: ../includes/classes/ure-lib.php:1873
+#: ../includes/classes/ure-lib.php:1714
msgid "Can not set Administrator role as a default one"
msgstr ""
-#: ../includes/classes/ure-lib.php:1875
+#: ../includes/classes/ure-lib.php:1716
msgid "This role does not exist - "
msgstr ""
-#: ../includes/classes/ure-lib.php:1891
+#: ../includes/classes/ure-lib.php:1732
msgid "Editor"
msgstr ""
-#: ../includes/classes/ure-lib.php:1892
+#: ../includes/classes/ure-lib.php:1733
msgid "Author"
msgstr ""
-#: ../includes/classes/ure-lib.php:1893
+#: ../includes/classes/ure-lib.php:1734
msgid "Contributor"
msgstr ""
-#: ../includes/classes/ure-lib.php:1894
+#: ../includes/classes/ure-lib.php:1735
msgid "Subscriber"
msgstr ""
-#: ../includes/classes/ure-lib.php:1896
+#: ../includes/classes/ure-lib.php:1737
msgid "Switch themes"
msgstr ""
-#: ../includes/classes/ure-lib.php:1897
+#: ../includes/classes/ure-lib.php:1738
msgid "Edit themes"
msgstr ""
-#: ../includes/classes/ure-lib.php:1898
+#: ../includes/classes/ure-lib.php:1739
msgid "Activate plugins"
msgstr ""
-#: ../includes/classes/ure-lib.php:1899
+#: ../includes/classes/ure-lib.php:1740
msgid "Edit plugins"
msgstr ""
-#: ../includes/classes/ure-lib.php:1900
+#: ../includes/classes/ure-lib.php:1741
msgid "Edit users"
msgstr ""
-#: ../includes/classes/ure-lib.php:1901
+#: ../includes/classes/ure-lib.php:1742
msgid "Edit files"
msgstr ""
-#: ../includes/classes/ure-lib.php:1902
+#: ../includes/classes/ure-lib.php:1743
msgid "Manage options"
msgstr ""
-#: ../includes/classes/ure-lib.php:1903
+#: ../includes/classes/ure-lib.php:1744
msgid "Moderate comments"
msgstr ""
-#: ../includes/classes/ure-lib.php:1904
+#: ../includes/classes/ure-lib.php:1745
msgid "Manage categories"
msgstr ""
-#: ../includes/classes/ure-lib.php:1905
+#: ../includes/classes/ure-lib.php:1746
msgid "Manage links"
msgstr ""
-#: ../includes/classes/ure-lib.php:1906
+#: ../includes/classes/ure-lib.php:1747
msgid "Upload files"
msgstr ""
-#: ../includes/classes/ure-lib.php:1907
+#: ../includes/classes/ure-lib.php:1748
msgid "Import"
msgstr ""
-#: ../includes/classes/ure-lib.php:1908
+#: ../includes/classes/ure-lib.php:1749
msgid "Unfiltered html"
msgstr ""
-#: ../includes/classes/ure-lib.php:1909
+#: ../includes/classes/ure-lib.php:1750
msgid "Edit posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1910
+#: ../includes/classes/ure-lib.php:1751
msgid "Edit others posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1911
+#: ../includes/classes/ure-lib.php:1752
msgid "Edit published posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1912
+#: ../includes/classes/ure-lib.php:1753
msgid "Publish posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1913
+#: ../includes/classes/ure-lib.php:1754
msgid "Edit pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1914
+#: ../includes/classes/ure-lib.php:1755
msgid "Read"
msgstr ""
-#: ../includes/classes/ure-lib.php:1915
+#: ../includes/classes/ure-lib.php:1756
msgid "Level 10"
msgstr ""
-#: ../includes/classes/ure-lib.php:1916
+#: ../includes/classes/ure-lib.php:1757
msgid "Level 9"
msgstr ""
-#: ../includes/classes/ure-lib.php:1917
+#: ../includes/classes/ure-lib.php:1758
msgid "Level 8"
msgstr ""
-#: ../includes/classes/ure-lib.php:1918
+#: ../includes/classes/ure-lib.php:1759
msgid "Level 7"
msgstr ""
-#: ../includes/classes/ure-lib.php:1919
+#: ../includes/classes/ure-lib.php:1760
msgid "Level 6"
msgstr ""
-#: ../includes/classes/ure-lib.php:1920
+#: ../includes/classes/ure-lib.php:1761
msgid "Level 5"
msgstr ""
-#: ../includes/classes/ure-lib.php:1921
+#: ../includes/classes/ure-lib.php:1762
msgid "Level 4"
msgstr ""
-#: ../includes/classes/ure-lib.php:1922
+#: ../includes/classes/ure-lib.php:1763
msgid "Level 3"
msgstr ""
-#: ../includes/classes/ure-lib.php:1923
+#: ../includes/classes/ure-lib.php:1764
msgid "Level 2"
msgstr ""
-#: ../includes/classes/ure-lib.php:1924
+#: ../includes/classes/ure-lib.php:1765
msgid "Level 1"
msgstr ""
-#: ../includes/classes/ure-lib.php:1925
+#: ../includes/classes/ure-lib.php:1766
msgid "Level 0"
msgstr ""
-#: ../includes/classes/ure-lib.php:1926
+#: ../includes/classes/ure-lib.php:1767
msgid "Edit others pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1927
+#: ../includes/classes/ure-lib.php:1768
msgid "Edit published pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1928
+#: ../includes/classes/ure-lib.php:1769
msgid "Publish pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1929
+#: ../includes/classes/ure-lib.php:1770
msgid "Delete pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1930
+#: ../includes/classes/ure-lib.php:1771
msgid "Delete others pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1931
+#: ../includes/classes/ure-lib.php:1772
msgid "Delete published pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1932
+#: ../includes/classes/ure-lib.php:1773
msgid "Delete posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1933
+#: ../includes/classes/ure-lib.php:1774
msgid "Delete others posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1934
+#: ../includes/classes/ure-lib.php:1775
msgid "Delete published posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1935
+#: ../includes/classes/ure-lib.php:1776
msgid "Delete private posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1936
+#: ../includes/classes/ure-lib.php:1777
msgid "Edit private posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1937
+#: ../includes/classes/ure-lib.php:1778
msgid "Read private posts"
msgstr ""
-#: ../includes/classes/ure-lib.php:1938
+#: ../includes/classes/ure-lib.php:1779
msgid "Delete private pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1939
+#: ../includes/classes/ure-lib.php:1780
msgid "Edit private pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1940
+#: ../includes/classes/ure-lib.php:1781
msgid "Read private pages"
msgstr ""
-#: ../includes/classes/ure-lib.php:1941
+#: ../includes/classes/ure-lib.php:1782
msgid "Delete users"
msgstr ""
-#: ../includes/classes/ure-lib.php:1942
+#: ../includes/classes/ure-lib.php:1783
msgid "Create users"
msgstr ""
-#: ../includes/classes/ure-lib.php:1943
+#: ../includes/classes/ure-lib.php:1784
msgid "Unfiltered upload"
msgstr ""
-#: ../includes/classes/ure-lib.php:1944
+#: ../includes/classes/ure-lib.php:1785
msgid "Edit dashboard"
msgstr ""
-#: ../includes/classes/ure-lib.php:1945
+#: ../includes/classes/ure-lib.php:1786
msgid "Update plugins"
msgstr ""
-#: ../includes/classes/ure-lib.php:1946
+#: ../includes/classes/ure-lib.php:1787
msgid "Delete plugins"
msgstr ""
-#: ../includes/classes/ure-lib.php:1947
+#: ../includes/classes/ure-lib.php:1788
msgid "Install plugins"
msgstr ""
-#: ../includes/classes/ure-lib.php:1948
+#: ../includes/classes/ure-lib.php:1789
msgid "Update themes"
msgstr ""
-#: ../includes/classes/ure-lib.php:1949
+#: ../includes/classes/ure-lib.php:1790
msgid "Install themes"
msgstr ""
-#: ../includes/classes/ure-lib.php:1950
+#: ../includes/classes/ure-lib.php:1791
msgid "Update core"
msgstr ""
-#: ../includes/classes/ure-lib.php:1951
+#: ../includes/classes/ure-lib.php:1792
msgid "List users"
msgstr ""
-#: ../includes/classes/ure-lib.php:1952
+#: ../includes/classes/ure-lib.php:1793
msgid "Remove users"
msgstr ""
-#: ../includes/classes/ure-lib.php:1953
+#: ../includes/classes/ure-lib.php:1794
msgid "Add users"
msgstr ""
-#: ../includes/classes/ure-lib.php:1954
+#: ../includes/classes/ure-lib.php:1795
msgid "Promote users"
msgstr ""
-#: ../includes/classes/ure-lib.php:1955
+#: ../includes/classes/ure-lib.php:1796
msgid "Edit theme options"
msgstr ""
-#: ../includes/classes/ure-lib.php:1956
+#: ../includes/classes/ure-lib.php:1797
msgid "Delete themes"
msgstr ""
-#: ../includes/classes/ure-lib.php:1957
+#: ../includes/classes/ure-lib.php:1798
msgid "Export"
msgstr ""
-#: ../includes/classes/ure-lib.php:2111
-msgid "Error: Capability name must contain latin characters and digits only!"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:2121
-#, php-format
-msgid "Capability %s is added successfully"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:2123
-#, php-format
-msgid "Capability %s exists already"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:2150
-#, php-format
-msgid "Error! You do not have permission to delete this capability: %s!"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:2169
-#, php-format
-msgid "Capability %s was removed successfully"
-msgstr ""
-
-#: ../includes/classes/ure-lib.php:2209
+#: ../includes/classes/ure-lib.php:1963
msgid "Version:"
msgstr ""
-#: ../includes/classes/ure-lib.php:2210
+#: ../includes/classes/ure-lib.php:1964
msgid "Author's website"
msgstr ""
-#: ../includes/classes/ure-lib.php:2211
+#: ../includes/classes/ure-lib.php:1965
msgid "Plugin webpage"
msgstr ""
-#: ../includes/classes/ure-lib.php:2212
+#: ../includes/classes/ure-lib.php:1966
msgid "Plugin download"
msgstr ""
-#: ../includes/classes/ure-lib.php:2213
-#: ../includes/classes/user-role-editor.php:459
+#: ../includes/classes/ure-lib.php:1967
+#: ../includes/classes/user-role-editor.php:474
msgid "Changelog"
msgstr ""
-#: ../includes/classes/ure-lib.php:2214
+#: ../includes/classes/ure-lib.php:1968
msgid "FAQ"
msgstr ""
-#: ../includes/classes/ure-lib.php:2359
+#: ../includes/classes/ure-lib.php:2150
#, php-format
msgid "Denied: %s"
msgstr ""
@@ -683,7 +677,7 @@ msgid "Select additional roles for this user"
msgstr ""
#: ../includes/classes/user-other-roles.php:161
-#: ../includes/classes/user-role-editor.php:355
+#: ../includes/classes/user-role-editor.php:356
msgid "Capabilities"
msgstr ""
@@ -695,178 +689,179 @@ msgstr ""
msgid "Additional Capabilities"
msgstr ""
-#: ../includes/classes/user-role-editor.php:254
+#: ../includes/classes/user-role-editor.php:255
msgid "Change role for users without role"
msgstr ""
-#: ../includes/classes/user-role-editor.php:255
+#: ../includes/classes/user-role-editor.php:256
msgid "To:"
msgstr ""
-#: ../includes/classes/user-role-editor.php:256
+#: ../includes/classes/user-role-editor.php:257
msgid "No rights"
msgstr ""
-#: ../includes/classes/user-role-editor.php:257
+#: ../includes/classes/user-role-editor.php:258
msgid "Provide new role"
msgstr ""
-#: ../includes/classes/user-role-editor.php:329
-#: ../includes/classes/user-role-editor.php:331
+#: ../includes/classes/user-role-editor.php:330
+#: ../includes/classes/user-role-editor.php:332
msgid "You do not have permission to edit this user."
msgstr ""
#: ../includes/classes/user-role-editor.php:448
+#: ../includes/classes/user-role-editor.php:461
msgid "Settings"
msgstr ""
-#: ../includes/classes/user-role-editor.php:488
+#: ../includes/classes/user-role-editor.php:503
#: ../includes/settings-template.php:26
msgid "Additional Modules"
msgstr ""
-#: ../includes/classes/user-role-editor.php:494
+#: ../includes/classes/user-role-editor.php:509
#: ../includes/settings-template.php:30
msgid "Default Roles"
msgstr ""
-#: ../includes/classes/user-role-editor.php:604
-#: ../includes/classes/user-role-editor.php:622
-#: ../includes/classes/user-role-editor.php:667
+#: ../includes/classes/user-role-editor.php:619
+#: ../includes/classes/user-role-editor.php:637
+#: ../includes/classes/user-role-editor.php:682
msgid "User Role Editor options are updated"
msgstr ""
-#: ../includes/classes/user-role-editor.php:650
+#: ../includes/classes/user-role-editor.php:665
msgid "Default Roles are updated"
msgstr ""
-#: ../includes/classes/user-role-editor.php:676
+#: ../includes/classes/user-role-editor.php:691
msgid ""
"You do not have sufficient permissions to manage options for User Role "
"Editor."
msgstr ""
-#: ../includes/classes/user-role-editor.php:788
+#: ../includes/classes/user-role-editor.php:804
msgid "Confirm"
msgstr ""
-#: ../includes/classes/user-role-editor.php:789
+#: ../includes/classes/user-role-editor.php:805
msgid "Yes"
msgstr ""
-#: ../includes/classes/user-role-editor.php:790
+#: ../includes/classes/user-role-editor.php:806
msgid "No"
msgstr ""
-#: ../includes/classes/user-role-editor.php:791
+#: ../includes/classes/user-role-editor.php:807
msgid "Select All"
msgstr ""
-#: ../includes/classes/user-role-editor.php:792
+#: ../includes/classes/user-role-editor.php:808
msgid "Unselect All"
msgstr ""
-#: ../includes/classes/user-role-editor.php:793
+#: ../includes/classes/user-role-editor.php:809
msgid "Reverse"
msgstr ""
-#: ../includes/classes/user-role-editor.php:794
+#: ../includes/classes/user-role-editor.php:810
msgid "Update"
msgstr ""
-#: ../includes/classes/user-role-editor.php:795
+#: ../includes/classes/user-role-editor.php:811
msgid "Please confirm permissions update"
msgstr ""
-#: ../includes/classes/user-role-editor.php:796
+#: ../includes/classes/user-role-editor.php:812
msgid "Add New Role"
msgstr ""
-#: ../includes/classes/user-role-editor.php:797
-#: ../includes/classes/user-role-editor.php:802
+#: ../includes/classes/user-role-editor.php:813
+#: ../includes/classes/user-role-editor.php:818
msgid "Rename Role"
msgstr ""
-#: ../includes/classes/user-role-editor.php:798
+#: ../includes/classes/user-role-editor.php:814
msgid " Role name (ID) can not be empty!"
msgstr ""
-#: ../includes/classes/user-role-editor.php:799
+#: ../includes/classes/user-role-editor.php:815
msgid ""
" Role name (ID) must contain latin characters, digits, hyphens or underscore "
"only!"
msgstr ""
-#: ../includes/classes/user-role-editor.php:800
+#: ../includes/classes/user-role-editor.php:816
msgid ""
" WordPress does not support numeric Role name (ID). Add latin characters to "
"it."
msgstr ""
-#: ../includes/classes/user-role-editor.php:801
+#: ../includes/classes/user-role-editor.php:817
msgid "Add Role"
msgstr ""
-#: ../includes/classes/user-role-editor.php:803
+#: ../includes/classes/user-role-editor.php:819
msgid "Delete Role"
msgstr ""
-#: ../includes/classes/user-role-editor.php:804
+#: ../includes/classes/user-role-editor.php:820
msgid "Cancel"
msgstr ""
-#: ../includes/classes/user-role-editor.php:805
+#: ../includes/classes/user-role-editor.php:821
msgid "Add Capability"
msgstr ""
-#: ../includes/classes/user-role-editor.php:806
-#: ../includes/classes/user-role-editor.php:815
+#: ../includes/classes/user-role-editor.php:822
+#: ../includes/classes/user-role-editor.php:831
msgid "Delete Capability"
msgstr ""
-#: ../includes/classes/user-role-editor.php:807
+#: ../includes/classes/user-role-editor.php:823
msgid "Reset"
msgstr ""
-#: ../includes/classes/user-role-editor.php:808
+#: ../includes/classes/user-role-editor.php:824
msgid "DANGER! Resetting will restore default settings from WordPress Core."
msgstr ""
-#: ../includes/classes/user-role-editor.php:809
+#: ../includes/classes/user-role-editor.php:825
msgid ""
"If any plugins have changed capabilities in any way upon installation (such "
"as S2Member, WooCommerce, and many more), those capabilities will be DELETED!"
msgstr ""
-#: ../includes/classes/user-role-editor.php:810
+#: ../includes/classes/user-role-editor.php:826
msgid ""
"For more information on how to undo changes and restore plugin capabilities "
"go to"
msgstr ""
-#: ../includes/classes/user-role-editor.php:812
+#: ../includes/classes/user-role-editor.php:828
msgid "Continue?"
msgstr ""
-#: ../includes/classes/user-role-editor.php:813
+#: ../includes/classes/user-role-editor.php:829
msgid "Default Role"
msgstr ""
-#: ../includes/classes/user-role-editor.php:814
+#: ../includes/classes/user-role-editor.php:830
msgid "Set New Default Role"
msgstr ""
-#: ../includes/classes/user-role-editor.php:816
+#: ../includes/classes/user-role-editor.php:832
msgid ""
"Warning! Be careful - removing critical capability could crash some plugin "
"or other custom code"
msgstr ""
-#: ../includes/classes/user-role-editor.php:817
+#: ../includes/classes/user-role-editor.php:833
msgid " Capability name (ID) can not be empty!"
msgstr ""
-#: ../includes/classes/user-role-editor.php:818
+#: ../includes/classes/user-role-editor.php:834
msgid ""
" Capability name (ID) must contain latin characters, digits, hyphens or "
"underscore only!"
@@ -916,7 +911,11 @@ msgstr ""
msgid "Quick filter:"
msgstr ""
-#: ../includes/classes/view.php:271
+#: ../includes/classes/view.php:270
+msgid "Granted Only"
+msgstr ""
+
+#: ../includes/classes/view.php:273
msgid "Columns:"
msgstr ""
diff --git a/wp/wp-content/plugins/user-role-editor/license.txt b/wp/wp-content/plugins/user-role-editor/license.txt
index 89b5db67..f75c095f 100644
--- a/wp/wp-content/plugins/user-role-editor/license.txt
+++ b/wp/wp-content/plugins/user-role-editor/license.txt
@@ -1,6 +1,6 @@
User Role Editor WordPress plugin
-Copyright 2009-2013 by Vladimir Garagulya - vladimir@shinephp.com
+Copyright 2009-2016 by Vladimir Garagulya - vladimir@shinephp.com
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
diff --git a/wp/wp-content/plugins/user-role-editor/readme.txt b/wp/wp-content/plugins/user-role-editor/readme.txt
index f6415e1a..83e22bbb 100644
--- a/wp/wp-content/plugins/user-role-editor/readme.txt
+++ b/wp/wp-content/plugins/user-role-editor/readme.txt
@@ -3,8 +3,8 @@ Contributors: shinephp
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=vladimir%40shinephp%2ecom&lc=RU&item_name=ShinePHP%2ecom&item_number=User%20Role%20Editor%20WordPress%20plugin¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHosted
Tags: user, role, editor, security, access, permission, capability
Requires at least: 4.0
-Tested up to: 4.6.1
-Stable tag: 4.28
+Tested up to: 4.7
+Stable tag: 4.31
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
@@ -29,6 +29,7 @@ Do you need more functionality with quality support in the real time? Do you wis
[User Role Editor Pro](https://www.role-editor.com) includes extra modules:
';
+
+ return $output;
+ }
+}
diff --git a/wp/wp-content/plugins/wordpress-seo/admin/banner/class-admin-banner-spot.php b/wp/wp-content/plugins/wordpress-seo/admin/banner/class-admin-banner-spot.php
new file mode 100644
index 00000000..f7af8259
--- /dev/null
+++ b/wp/wp-content/plugins/wordpress-seo/admin/banner/class-admin-banner-spot.php
@@ -0,0 +1,97 @@
+title = $title;
+ $this->banner_renderer = ( is_null( $banner_renderer ) ? new WPSEO_Admin_Banner_Renderer() : $banner_renderer );
+ }
+
+ /**
+ * Returns the title.
+ *
+ * @return string
+ */
+ public function get_title() {
+ return $this->title;
+ }
+
+ /**
+ * Returns the description.
+ *
+ * @return string
+ */
+ public function get_description() {
+ return $this->description;
+ }
+
+ /**
+ * Sets the description
+ *
+ * @param string $description The description.
+ */
+ public function set_description( $description ) {
+ $this->description = $description;
+ }
+
+ /**
+ * Adds an admin banner.
+ *
+ * @param WPSEO_Admin_Banner $banner The banner to add.
+ */
+ public function add_banner( WPSEO_Admin_Banner $banner ) {
+ $this->banners[] = $banner;
+ }
+
+ /**
+ * Renders the banner.
+ *
+ * @return string
+ */
+ public function render_banner() {
+ if ( ! $this->has_banners() ) {
+ return '';
+ }
+
+ return $this->banner_renderer->render( $this->get_random_banner() );
+ }
+
+ /**
+ * Checks if there are any banners set.
+ *
+ * @return bool
+ */
+ public function has_banners() {
+ return ! empty( $this->banners );
+ }
+
+ /**
+ * Returns a random banner.
+ *
+ * @return null|WPSEO_Admin_Banner
+ */
+ protected function get_random_banner() {
+ return $this->banners[ array_rand( $this->banners, 1 ) ];
+ }
+}
diff --git a/wp/wp-content/plugins/wordpress-seo/admin/banner/class-admin-banner.php b/wp/wp-content/plugins/wordpress-seo/admin/banner/class-admin-banner.php
new file mode 100644
index 00000000..d179c426
--- /dev/null
+++ b/wp/wp-content/plugins/wordpress-seo/admin/banner/class-admin-banner.php
@@ -0,0 +1,87 @@
+url = $url;
+ $this->image = $image;
+ $this->alt = $alt;
+ $this->width = $width;
+ $this->height = $height;
+ }
+
+ /**
+ * Returns the set url.
+ *
+ * @return string
+ */
+ public function get_url() {
+ return $this->url;
+ }
+
+ /**
+ * Returns the image.
+ *
+ * @return string
+ */
+ public function get_image() {
+ return $this->image;
+ }
+
+ /**
+ * Returns the alt-text.
+ *
+ * @return string
+ */
+ public function get_alt() {
+ return $this->alt;
+ }
+
+ /**
+ * Returns the width.
+ *
+ * @return string
+ */
+ public function get_width() {
+ return $this->width;
+ }
+
+ /**
+ * Returns the height.
+ *
+ * @return string
+ */
+ public function get_height() {
+ return $this->height;
+ }
+}
diff --git a/wp/wp-content/plugins/wordpress-seo/admin/class-admin-asset-manager.php b/wp/wp-content/plugins/wordpress-seo/admin/class-admin-asset-manager.php
index 1bafc9b8..cca1b154 100644
--- a/wp/wp-content/plugins/wordpress-seo/admin/class-admin-asset-manager.php
+++ b/wp/wp-content/plugins/wordpress-seo/admin/class-admin-asset-manager.php
@@ -117,7 +117,7 @@ class WPSEO_Admin_Asset_Manager {
private function scripts_to_be_registered() {
$select2_language = 'en';
- $locale = get_locale();
+ $locale = WPSEO_Utils::get_user_locale();
$language = WPSEO_Utils::get_language( $locale );
if ( file_exists( WPSEO_PATH . "js/dist/select2/i18n/{$locale}.js" ) ) {
@@ -130,7 +130,7 @@ class WPSEO_Admin_Asset_Manager {
return array(
array(
'name' => 'admin-script',
- 'src' => 'wp-seo-admin-370',
+ 'src' => 'wp-seo-admin-400',
'deps' => array(
'jquery',
'jquery-ui-core',
@@ -159,12 +159,12 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'admin-global-script',
- 'src' => 'wp-seo-admin-global-350',
+ 'src' => 'wp-seo-admin-global-390',
'deps' => array( 'jquery' ),
),
array(
'name' => 'metabox',
- 'src' => 'wp-seo-metabox-370',
+ 'src' => 'wp-seo-metabox-400',
'deps' => array(
'jquery',
'jquery-ui-core',
@@ -189,7 +189,7 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'post-scraper',
- 'src' => 'wp-seo-post-scraper-370',
+ 'src' => 'wp-seo-post-scraper-400',
'deps' => array(
self::PREFIX . 'replacevar-plugin',
self::PREFIX . 'shortcode-plugin',
@@ -198,14 +198,14 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'term-scraper',
- 'src' => 'wp-seo-term-scraper-370',
+ 'src' => 'wp-seo-term-scraper-400',
'deps' => array(
self::PREFIX . 'replacevar-plugin',
),
),
array(
'name' => 'replacevar-plugin',
- 'src' => 'wp-seo-replacevar-plugin-370',
+ 'src' => 'wp-seo-replacevar-plugin-380',
),
array(
'name' => 'shortcode-plugin',
@@ -213,7 +213,7 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'recalculate',
- 'src' => 'wp-seo-recalculate-370',
+ 'src' => 'wp-seo-recalculate-400',
'deps' => array(
'jquery',
'jquery-ui-core',
@@ -222,7 +222,7 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'primary-category',
- 'src' => 'wp-seo-metabox-category-350',
+ 'src' => 'wp-seo-metabox-category-380',
'deps' => array(
'jquery',
'wp-util',
@@ -249,7 +249,7 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'configuration-wizard',
- 'src' => 'configuration-wizard-371',
+ 'src' => 'configuration-wizard-400',
'deps' => array(
'jquery',
),
@@ -268,18 +268,12 @@ class WPSEO_Admin_Asset_Manager {
return array(
array(
'name' => 'admin-css',
- 'src' => 'yst_plugin_tools-370',
+ 'src' => 'yst_plugin_tools-400',
'deps' => array( self::PREFIX . 'toggle-switch' ),
),
- array(
- 'name' => 'toggle-switch-lib',
- 'src' => 'toggle-switch/toggle-switch',
- 'version' => '4.0.2',
- ),
array(
'name' => 'toggle-switch',
- 'src' => 'toggle-switch-330',
- 'deps' => array( self::PREFIX . 'toggle-switch-lib' ),
+ 'src' => 'toggle-switch-390',
),
array(
'name' => 'dismissible',
@@ -299,7 +293,7 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'metabox-css',
- 'src' => 'metabox-370',
+ 'src' => 'metabox-400',
'deps' => array(
self::PREFIX . 'select2',
),
@@ -310,7 +304,7 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'scoring',
- 'src' => 'yst_seo_score-330',
+ 'src' => 'yst_seo_score-390',
),
array(
'name' => 'snippet',
@@ -345,7 +339,11 @@ class WPSEO_Admin_Asset_Manager {
),
array(
'name' => 'yoast-components',
- 'src' => 'yoast-components-371',
+ 'src' => 'yoast-components-400',
+ ),
+ array(
+ 'name' => 'extensions',
+ 'src' => 'yoast-extensions-390',
),
);
}
diff --git a/wp/wp-content/plugins/wordpress-seo/admin/class-admin.php b/wp/wp-content/plugins/wordpress-seo/admin/class-admin.php
index 12f62579..3a0110b7 100644
--- a/wp/wp-content/plugins/wordpress-seo/admin/class-admin.php
+++ b/wp/wp-content/plugins/wordpress-seo/admin/class-admin.php
@@ -267,6 +267,10 @@ class WPSEO_Admin {
public function enqueue_assets() {
$asset_manager = new WPSEO_Admin_Asset_Manager();
$asset_manager->enqueue_style( 'help-center' );
+
+ if ( 'wpseo_licenses' === filter_input( INPUT_GET, 'page' ) ) {
+ $asset_manager->enqueue_style( 'extensions' );
+ }
}
/**
diff --git a/wp/wp-content/plugins/wordpress-seo/admin/class-asset.php b/wp/wp-content/plugins/wordpress-seo/admin/class-asset.php
index c3ef8fa6..3721a05d 100644
--- a/wp/wp-content/plugins/wordpress-seo/admin/class-asset.php
+++ b/wp/wp-content/plugins/wordpress-seo/admin/class-asset.php
@@ -167,8 +167,7 @@ class WPSEO_Admin_Asset {
return '';
}
- if ( ! $this->get_suffix() ) {
-
+ if ( 'development' !== YOAST_ENVIRONMENT && ! $this->get_suffix() ) {
$plugin_path = plugin_dir_path( $plugin_file );
if ( ! file_exists( $plugin_path . $relative_path ) ) {
diff --git a/wp/wp-content/plugins/wordpress-seo/admin/class-config.php b/wp/wp-content/plugins/wordpress-seo/admin/class-config.php
index 60ab3225..9f3b2f78 100644
--- a/wp/wp-content/plugins/wordpress-seo/admin/class-config.php
+++ b/wp/wp-content/plugins/wordpress-seo/admin/class-config.php
@@ -88,7 +88,7 @@ class WPSEO_Admin_Pages {
$page = filter_input( INPUT_GET, 'page' );
- wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'admin-script', 'wpseoSelect2Locale', WPSEO_Utils::get_language( get_locale() ) );
+ wp_localize_script( WPSEO_Admin_Asset_Manager::PREFIX . 'admin-script', 'wpseoSelect2Locale', WPSEO_Utils::get_language( WPSEO_Utils::get_user_locale() ) );
if ( in_array( $page, array( 'wpseo_social', WPSEO_Admin::PAGE_IDENTIFIER ) ) ) {
wp_enqueue_media();
diff --git a/wp/wp-content/plugins/wordpress-seo/admin/class-help-center.php b/wp/wp-content/plugins/wordpress-seo/admin/class-help-center.php
index bed315b6..828e8e80 100644
--- a/wp/wp-content/plugins/wordpress-seo/admin/class-help-center.php
+++ b/wp/wp-content/plugins/wordpress-seo/admin/class-help-center.php
@@ -63,7 +63,7 @@ class WPSEO_Help_Center {
'
+
'https://yoast.com/hire-us/website-review/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=website-review-banner',
- 'img' => 'banner-website-review.png',
- 'alt' => __( 'Order a Website Review and we will tell you what to improve to attract more visitors!', 'wordpress-seo' ),
- ),
- array(
- 'url' => 'https://yoast.com/hire-us/yoast-seo-configuration/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=configuration-service-banner',
- 'img' => 'banner-configuration-service.png',
- 'alt' => __( 'Let our experts set up your Yoast SEO Premium plugin!', 'wordpress-seo' ),
- ),
- array(
- 'url' => 'https://yoast.com/academy/course/seo-copywriting-training/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=seo-copywriting-training-banner',
- 'img' => 'banner-seo-copywriting-training.png',
- 'alt' => __( 'Take the online SEO Copywriting Training course and learn how to write awesome copy that ranks!', 'wordpress-seo' ),
- ),
- array(
- 'url' => 'https://yoast.com/academy/course/basic-seo-training/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=basic-seo-training-banner',
- 'img' => 'banner-basic-seo-training.png',
- 'alt' => __( 'Take the online Basic SEO Training course and learn the fundamentals of SEO!', 'wordpress-seo' ),
- ),
- array(
- 'url' => 'https://yoast.com/academy/course/yoast-seo-wordpress-training/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=yoast-seo-plugin-training-banner',
- 'img' => 'banner-yoast-seo-for-wordpress-training.png',
- 'alt' => __( 'Take the Yoast SEO for WordPress Training course and become a certified Yoast SEO for WordPress expert!', 'wordpress-seo' ),
- ),
- );
+ $sidebar_renderer = new WPSEO_Admin_Banner_Sidebar_Renderer( new WPSEO_Admin_Banner_Spot_Renderer() );
- $plugin_banners = array(
- array(
- 'url' => 'https://yoast.com/wordpress/plugins/seo-premium/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=premium-seo-banner',
- 'img' => 'banner-premium-seo.png',
- 'alt' => __( 'Buy the Yoast SEO Premium plugin now and get access to extra features and 24/7 support!', 'wordpress-seo' ),
- ),
- );
+ $banner_renderer = new WPSEO_Admin_Banner_Renderer;
+ $banner_renderer->set_base_path( plugins_url( 'images/banner/', WPSEO_FILE ) );
- if ( ! class_exists( 'wpseo_Video_Sitemap' ) ) {
- $plugin_banners[] = array(
- 'url' => 'https://yoast.com/wordpress/plugins/video-seo/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=video-seo-banner',
- 'img' => 'banner-video-seo.png',
- 'alt' => __( 'Buy the Yoast Video SEO plugin now and optimize your videos for video search results and social media!', 'wordpress-seo' ),
- );
- }
+ $sidebar = new WPSEO_Admin_Banner_Sidebar( sprintf( '%1s recommendations', 'Yoast' ), $banner_renderer );
+ $sidebar->initialize( new WPSEO_Features() );
- if ( class_exists( 'Woocommerce' ) && ! class_exists( 'Yoast_WooCommerce_SEO' ) ) {
- $plugin_banners[] = array(
- 'url' => 'https://yoast.com/wordpress/plugins/yoast-woocommerce-seo/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=woocommerce-seo-banner',
- 'img' => 'banner-woocommerce-seo.png',
- 'alt' => __( 'Buy the Yoast WooCommerce SEO plugin now and optimize your shop today to improve your product promotion!', 'wordpress-seo' ),
- );
- }
+ echo $sidebar_renderer->render( $sidebar );
- if ( ! defined( 'WPSEO_LOCAL_VERSION' ) ) {
- $plugin_banners[] = array(
- 'url' => 'https://yoast.com/wordpress/plugins/local-seo/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=local-seo-banner',
- 'img' => 'banner-local-seo.png',
- 'alt' => __( 'Buy the Yoast Local SEO plugin now to improve your site’s Local SEO and ranking in Google Maps!', 'wordpress-seo' ),
- );
- }
-
- if ( ! class_exists( 'WPSEO_News' ) ) {
- $plugin_banners[] = array(
- 'url' => 'https://yoast.com/wordpress/plugins/news-seo/#utm_source=wordpress-seo-config&utm_medium=banner&utm_campaign=news-seo-banner',
- 'img' => 'banner-news-seo.png',
- 'alt' => __( 'Buy the Yoast News SEO plugin now and start optimizing to get your site featured in Google News!', 'wordpress-seo' ),
- );
- }
-
- shuffle( $service_banners );
- shuffle( $plugin_banners );
- ?>
-
-
' . "\n\n";
}
+
+ /**
+ * Returns two random selected service banners.
+ *
+ * @return WPSEO_Admin_Banner_Spot
+ */
+ private function get_service_banners() {
+
+ $service_banner_spot = new WPSEO_Admin_Banner_Spot(
+ __( 'Services', 'wordpress-seo' ),
+ sprintf(
+ /* translators: %1$s expands to a link start tag to the Yoast Services page, %2$s to Yoast, %3$s is the link closing tag. */
+ __( 'Don\'t want to dive into SEO yourself? %1$sLet team %2$s help you!%3$s', 'wordpress-seo' ),
+ '