Initial commit: WordPress wp-content (themes, plugins, languages)
- Theme: momentry (custom theme with REST API routes) - Plugins: code-snippets (contains all API proxies) - Languages: zh_TW translations - Excludes: cache, backups, uploads, logs
This commit is contained in:
@@ -0,0 +1,130 @@
|
||||
<?php
|
||||
|
||||
namespace WPForms\Lite\Admin\Pages;
|
||||
|
||||
/**
|
||||
* Addons page for Lite.
|
||||
*
|
||||
* @since 1.6.7
|
||||
*/
|
||||
class Addons {
|
||||
|
||||
/**
|
||||
* Page slug.
|
||||
*
|
||||
* @since 1.6.7
|
||||
*
|
||||
* @type string
|
||||
*/
|
||||
const SLUG = 'addons';
|
||||
|
||||
/**
|
||||
* Determine if current class is allowed to load.
|
||||
*
|
||||
* @since 1.6.7
|
||||
*
|
||||
* @return bool
|
||||
*/
|
||||
public function allow_load() {
|
||||
|
||||
return wpforms_is_admin_page( self::SLUG );
|
||||
}
|
||||
|
||||
/**
|
||||
* Init.
|
||||
*
|
||||
* @since 1.6.7
|
||||
*/
|
||||
public function init() {
|
||||
|
||||
if ( ! $this->allow_load() ) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Define hooks.
|
||||
$this->hooks();
|
||||
}
|
||||
|
||||
/**
|
||||
* Hooks.
|
||||
*
|
||||
* @since 1.6.7
|
||||
*/
|
||||
public function hooks() {
|
||||
|
||||
add_action( 'admin_enqueue_scripts', [ $this, 'enqueues' ] );
|
||||
add_action( 'admin_notices', [ $this, 'notices' ] );
|
||||
add_action( 'wpforms_admin_page', [ $this, 'output' ] );
|
||||
}
|
||||
|
||||
/**
|
||||
* Add appropriate scripts to the Addons page.
|
||||
*
|
||||
* @since 1.6.7
|
||||
*/
|
||||
public function enqueues() {
|
||||
|
||||
// JavaScript.
|
||||
wp_enqueue_script(
|
||||
'listjs',
|
||||
WPFORMS_PLUGIN_URL . 'assets/lib/list.min.js',
|
||||
[ 'jquery' ],
|
||||
'1.5.0',
|
||||
false
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Notices.
|
||||
*
|
||||
* @since 1.6.7.1
|
||||
*/
|
||||
public function notices() {
|
||||
|
||||
$notice = sprintf(
|
||||
'<p class="notice-title"><strong>%1$s</strong></p>
|
||||
<p>%2$s</p>
|
||||
<p class="notice-buttons">
|
||||
<a href="%3$s" class="wpforms-btn wpforms-btn-orange wpforms-btn-md" target="_blank" rel="noopener noreferrer">
|
||||
%4$s
|
||||
</a>
|
||||
</p>',
|
||||
esc_html__( 'Upgrade to Unlock WPForms Addons', 'wpforms-lite' ),
|
||||
esc_html__( 'Access powerful marketing and payment integrations, advanced form fields, and more when you purchase our Plus, Pro, or Elite plans.', 'wpforms-lite' ),
|
||||
esc_url( wpforms_admin_upgrade_link( 'addons', 'All Addons' ) ),
|
||||
esc_html__( 'Upgrade Now', 'wpforms-lite' )
|
||||
);
|
||||
|
||||
\WPForms\Admin\Notice::info(
|
||||
$notice,
|
||||
[ 'autop' => false ]
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Render the Addons page.
|
||||
*
|
||||
* @since 1.6.7
|
||||
*/
|
||||
public function output() {
|
||||
|
||||
$addons = wpforms()->obj( 'addons' )->get_all();
|
||||
|
||||
if ( empty( $addons ) ) {
|
||||
return;
|
||||
}
|
||||
|
||||
// WPForms 1.8.7 core includes Custom Captcha.
|
||||
// The Custom Captcha addon will only work on WPForms 1.8.6 and earlier versions.
|
||||
unset( $addons['wpforms-captcha'] );
|
||||
|
||||
echo wpforms_render( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
||||
'admin/addons',
|
||||
[
|
||||
'upgrade_link_base' => wpforms_admin_upgrade_link( 'addons' ),
|
||||
'addons' => $addons,
|
||||
],
|
||||
true
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user