Edit File by line
/home/zeestwma/ceyloniy.../wp-conte.../plugins/wpforms-.../src/Admin/Educatio...
File: StringsTrait.php
<?php
[0] Fix | Delete
[1] Fix | Delete
namespace WPForms\Admin\Education;
[2] Fix | Delete
[3] Fix | Delete
/**
[4] Fix | Delete
* Strings trait.
[5] Fix | Delete
*
[6] Fix | Delete
* @since 1.8.8
[7] Fix | Delete
*/
[8] Fix | Delete
trait StringsTrait {
[9] Fix | Delete
[10] Fix | Delete
/**
[11] Fix | Delete
* Localize common strings.
[12] Fix | Delete
*
[13] Fix | Delete
* @since 1.6.6
[14] Fix | Delete
*
[15] Fix | Delete
* @return array
[16] Fix | Delete
*/
[17] Fix | Delete
protected function get_js_strings(): array {
[18] Fix | Delete
[19] Fix | Delete
$strings = [];
[20] Fix | Delete
$name = '%name%';
[21] Fix | Delete
[22] Fix | Delete
$strings['ok'] = esc_html__( 'Ok', 'wpforms-lite' );
[23] Fix | Delete
$strings['cancel'] = esc_html__( 'Cancel', 'wpforms-lite' );
[24] Fix | Delete
$strings['close'] = esc_html__( 'Close', 'wpforms-lite' );
[25] Fix | Delete
$strings['ajax_url'] = admin_url( 'admin-ajax.php' );
[26] Fix | Delete
$strings['nonce'] = wp_create_nonce( 'wpforms-education' );
[27] Fix | Delete
$strings['activate_prompt'] = '<p>' . esc_html(
[28] Fix | Delete
sprintf( /* translators: %s - addon name. */
[29] Fix | Delete
__( 'The %s is installed but not activated. Would you like to activate it?', 'wpforms-lite' ),
[30] Fix | Delete
$name
[31] Fix | Delete
)
[32] Fix | Delete
) . '</p>';
[33] Fix | Delete
$strings['activate_confirm'] = esc_html__( 'Yes, Activate', 'wpforms-lite' );
[34] Fix | Delete
$strings['addon_activated'] = esc_html__( 'Addon activated', 'wpforms-lite' );
[35] Fix | Delete
$strings['plugin_activated'] = esc_html__( 'Plugin activated', 'wpforms-lite' );
[36] Fix | Delete
$strings['activating'] = esc_html__( 'Activating', 'wpforms-lite' );
[37] Fix | Delete
$strings['install_prompt'] = '<p>' . esc_html(
[38] Fix | Delete
sprintf( /* translators: %s - addon name. */
[39] Fix | Delete
__( 'The %s is not installed. Would you like to install and activate it?', 'wpforms-lite' ),
[40] Fix | Delete
$name
[41] Fix | Delete
)
[42] Fix | Delete
) . '</p>';
[43] Fix | Delete
$strings['install_confirm'] = esc_html__( 'Yes, Install and Activate', 'wpforms-lite' );
[44] Fix | Delete
$strings['installing'] = esc_html__( 'Installing', 'wpforms-lite' );
[45] Fix | Delete
$strings['save_prompt'] = esc_html__( 'Almost done! Would you like to save and refresh the form builder?', 'wpforms-lite' );
[46] Fix | Delete
$strings['save_confirm'] = esc_html__( 'Yes, save and refresh', 'wpforms-lite' );
[47] Fix | Delete
$strings['saving'] = esc_html__( 'Saving ...', 'wpforms-lite' );
[48] Fix | Delete
[49] Fix | Delete
// Check if the user can install addons.
[50] Fix | Delete
// Includes license check.
[51] Fix | Delete
$can_install_addons = wpforms_can_install( 'addon' );
[52] Fix | Delete
[53] Fix | Delete
// Check if the user can install plugins.
[54] Fix | Delete
// Only checks if the user has the capability.
[55] Fix | Delete
// Needed to display the correct message for non-admin users.
[56] Fix | Delete
$can_install_plugins = current_user_can( 'install_plugins' );
[57] Fix | Delete
[58] Fix | Delete
$strings['can_install_addons'] = $can_install_addons && $can_install_plugins;
[59] Fix | Delete
[60] Fix | Delete
if ( ! $can_install_addons ) {
[61] Fix | Delete
$strings['install_prompt'] = '<p>' . esc_html(
[62] Fix | Delete
sprintf( /* translators: %s - addon name. */
[63] Fix | Delete
__( 'The %s is not installed. Please install and activate it to use this feature.', 'wpforms-lite' ),
[64] Fix | Delete
$name
[65] Fix | Delete
)
[66] Fix | Delete
) . '</p>';
[67] Fix | Delete
}
[68] Fix | Delete
[69] Fix | Delete
if ( ! $can_install_plugins ) {
[70] Fix | Delete
/* translators: %s - addon name. */
[71] Fix | Delete
$strings['install_prompt'] = '<p>' . esc_html(
[72] Fix | Delete
sprintf( /* translators: %s - addon name. */
[73] Fix | Delete
__( 'The %s is not installed. Please contact the site administrator.', 'wpforms-lite' ),
[74] Fix | Delete
$name
[75] Fix | Delete
)
[76] Fix | Delete
) . '</p>';
[77] Fix | Delete
}
[78] Fix | Delete
[79] Fix | Delete
// Check if the user can activate plugins.
[80] Fix | Delete
$can_activate_plugins = current_user_can( 'activate_plugins' );
[81] Fix | Delete
$strings['can_activate_addons'] = $can_activate_plugins;
[82] Fix | Delete
[83] Fix | Delete
if ( ! $can_activate_plugins ) {
[84] Fix | Delete
/* translators: %s - addon name. */
[85] Fix | Delete
$strings['activate_prompt'] = '<p>' . esc_html( sprintf( __( 'The %s is not activated. Please contact the site administrator.', 'wpforms-lite' ), $name ) ) . '</p>';
[86] Fix | Delete
}
[87] Fix | Delete
[88] Fix | Delete
$upgrade_utm_medium = wpforms_is_admin_page() ? 'Settings - Integration' : 'Builder - Settings';
[89] Fix | Delete
[90] Fix | Delete
if ( wpforms_is_block_editor() ) {
[91] Fix | Delete
$upgrade_utm_medium = 'gutenberg';
[92] Fix | Delete
}
[93] Fix | Delete
[94] Fix | Delete
$strings['upgrade'] = [
[95] Fix | Delete
'pro' => $this->get_upgrade_strings( 'Pro', $name, $upgrade_utm_medium ),
[96] Fix | Delete
'elite' => $this->get_upgrade_strings( 'Elite', $name, $upgrade_utm_medium ),
[97] Fix | Delete
];
[98] Fix | Delete
[99] Fix | Delete
$strings['upgrade_bonus'] = wpautop(
[100] Fix | Delete
wp_kses(
[101] Fix | Delete
__( '<strong>Bonus:</strong> WPForms Lite users get <span>50% off</span> regular price, automatically applied at checkout.', 'wpforms-lite' ),
[102] Fix | Delete
[
[103] Fix | Delete
'strong' => [],
[104] Fix | Delete
'span' => [],
[105] Fix | Delete
]
[106] Fix | Delete
)
[107] Fix | Delete
);
[108] Fix | Delete
[109] Fix | Delete
$strings['thanks_for_interest'] = esc_html__( 'Thanks for your interest in WPForms Pro!', 'wpforms-lite' );
[110] Fix | Delete
[111] Fix | Delete
/**
[112] Fix | Delete
* Filters the education strings.
[113] Fix | Delete
*
[114] Fix | Delete
* @since 1.6.6
[115] Fix | Delete
*
[116] Fix | Delete
* @param array $strings Education strings.
[117] Fix | Delete
*
[118] Fix | Delete
* @return array
[119] Fix | Delete
*/
[120] Fix | Delete
return (array) apply_filters( 'wpforms_admin_education_strings', $strings );
[121] Fix | Delete
}
[122] Fix | Delete
[123] Fix | Delete
/**
[124] Fix | Delete
* Get upgrade strings.
[125] Fix | Delete
*
[126] Fix | Delete
* @since 1.8.8
[127] Fix | Delete
*
[128] Fix | Delete
* @param string $level Upgrade level.
[129] Fix | Delete
* @param string $name Addon name.
[130] Fix | Delete
* @param string $upgrade_utm_medium UTM medium for the upgrade link.
[131] Fix | Delete
*
[132] Fix | Delete
* @return array
[133] Fix | Delete
* @noinspection HtmlUnknownTarget
[134] Fix | Delete
*/
[135] Fix | Delete
private function get_upgrade_strings( string $level, string $name, string $upgrade_utm_medium ): array {
[136] Fix | Delete
// phpcs:ignore WPForms.Formatting.EmptyLineAfterFunctionDeclaration.AddEmptyLineAfterFunctionDeclaration
[137] Fix | Delete
[138] Fix | Delete
return [
[139] Fix | Delete
'title' => esc_html(
[140] Fix | Delete
sprintf( /* translators: %s - level name, either Pro or Elite. */
[141] Fix | Delete
__( 'is a %s Feature', 'wpforms-lite' ),
[142] Fix | Delete
$level
[143] Fix | Delete
)
[144] Fix | Delete
),
[145] Fix | Delete
'title_plural' => esc_html(
[146] Fix | Delete
sprintf( /* translators: %s - level name, either Pro or Elite. */
[147] Fix | Delete
__( 'are a %s Feature', 'wpforms-lite' ),
[148] Fix | Delete
$level
[149] Fix | Delete
)
[150] Fix | Delete
),
[151] Fix | Delete
'message' => '<p>' . esc_html(
[152] Fix | Delete
sprintf( /* translators: %1$s - addon name, %2$s - level name, either Pro or Elite. */
[153] Fix | Delete
__( 'We\'re sorry, the %1$s is not available on your plan. Please upgrade to the %2$s plan to unlock all these awesome features.', 'wpforms-lite' ),
[154] Fix | Delete
$name,
[155] Fix | Delete
$level
[156] Fix | Delete
)
[157] Fix | Delete
) . '</p>',
[158] Fix | Delete
'message_plural' => '<p>' . esc_html(
[159] Fix | Delete
sprintf( /* translators: %1$s - addon name, %2$s - level name, either Pro or Elite. */
[160] Fix | Delete
__( 'We\'re sorry, %1$s are not available on your plan. Please upgrade to the %2$s plan to unlock all these awesome features.', 'wpforms-lite' ),
[161] Fix | Delete
$name,
[162] Fix | Delete
$level
[163] Fix | Delete
)
[164] Fix | Delete
) . '</p>',
[165] Fix | Delete
'doc' => sprintf(
[166] Fix | Delete
'<a href="%1$s" target="_blank" rel="noopener noreferrer" class="already-purchased">%2$s</a>',
[167] Fix | Delete
esc_url( wpforms_utm_link( 'https://wpforms.com/docs/upgrade-wpforms-lite-paid-license/#installing-wpforms', $upgrade_utm_medium, '%name%' ) ),
[168] Fix | Delete
esc_html__( 'Already purchased?', 'wpforms-lite' )
[169] Fix | Delete
),
[170] Fix | Delete
'button' => esc_html(
[171] Fix | Delete
sprintf( /* translators: %s - level name, either Pro or Elite. */
[172] Fix | Delete
__( 'Upgrade to %s', 'wpforms-lite' ),
[173] Fix | Delete
$level
[174] Fix | Delete
)
[175] Fix | Delete
),
[176] Fix | Delete
'url' => wpforms_admin_upgrade_link( $upgrade_utm_medium ),
[177] Fix | Delete
'url_template' => wpforms_is_admin_page( 'templates' ) ? wpforms_admin_upgrade_link( 'Form Templates Subpage' ) : wpforms_admin_upgrade_link( 'builder-modal-template' ),
[178] Fix | Delete
'url_themes' => wpforms_admin_upgrade_link( 'Builder Themes' ),
[179] Fix | Delete
'modal' => wpforms_get_upgrade_modal_text( strtolower( $level ) ),
[180] Fix | Delete
];
[181] Fix | Delete
}
[182] Fix | Delete
}
[183] Fix | Delete
[184] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function