PluginProbe ʕ •ᴥ•ʔ
ECS – Ele Custom Skin for Elementor / trunk
ECS – Ele Custom Skin for Elementor vtrunk
4.3.6 4.3.5 4.3.4 4.3.3 4.3.2 4.3.1 4.3.0 4.2.0 4.1.11 4.1.10 4.1.9 4.1.8 4.1.6 4.1.7 4.1.5 4.1.4 4.1.1 4.1.2 trunk 1.0.0 1.0.1 1.0.9 1.1.3 1.1.4 1.1.5 1.2.0 1.2.1 1.2.4 1.2.5 1.3.10 1.3.11 1.3.3 1.3.4 1.3.6 1.3.7 1.3.9 1.4.0 2.0.2 2.1.0 2.2.0 2.2.1 2.2.2 3.0.0 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 4.1.0
ele-custom-skin / admin / views / license-page.php
ele-custom-skin / admin / views Last commit date
license-page.php 2 months ago modules-page.php 1 month ago
license-page.php
135 lines
1 <?php
2 if ( ! defined( 'ABSPATH' ) ) {
3 exit;
4 }
5
6 $license_key = get_option( 'elecs-license-key', '' );
7 $is_licensed = ! empty( $license_key );
8 $is_pro_active = defined( 'ELECSP_VER' );
9 $has_error = isset( $_GET['msg'] ) && $_GET['msg'] === 'invalid';
10
11 // Mask the license key for display: show first 4 + last 4 chars.
12 $masked_key = '';
13 if ( $is_licensed ) {
14 $len = strlen( $license_key );
15 $masked_key = $len > 8
16 ? substr( $license_key, 0, 4 ) . str_repeat( '', max( 4, $len - 8 ) ) . substr( $license_key, -4 )
17 : str_repeat( '', $len );
18 }
19 ?>
20 <div class="wrap ecs-admin-wrap">
21
22 <div class="ecs-admin-header">
23 <h1><?php esc_html_e( 'ECS — Ele Custom Skin for Elementor', 'ele-custom-skin' ); ?></h1>
24 <span class="ecs-version">v<?php echo esc_html( ECS_VERSION ); ?></span>
25 </div>
26
27 <?php if ( $has_error ) : ?>
28 <div class="notice notice-error is-dismissible">
29 <p><?php esc_html_e( 'License key invalid. Please check the key and try again.', 'ele-custom-skin' ); ?></p>
30 </div>
31 <?php endif; ?>
32
33 <div class="ecs-license-wrap">
34
35 <!-- ── Sidebar nav ────────────────────────────────────── -->
36 <div class="ecs-license-nav">
37 <a href="<?php echo esc_url( admin_url( 'admin.php?page=ecs-modules' ) ); ?>" class="ecs-license-nav__item">
38 <?php esc_html_e( 'Modules', 'ele-custom-skin' ); ?>
39 </a>
40 <a href="<?php echo esc_url( admin_url( 'admin.php?page=ecs-license' ) ); ?>" class="ecs-license-nav__item is-active">
41 <?php esc_html_e( 'License', 'ele-custom-skin' ); ?>
42 </a>
43 </div>
44
45 <!-- ── License card ──────────────────────────────────── -->
46 <div class="ecs-license-card">
47
48 <?php if ( ! $is_pro_active ) : ?>
49
50 <div class="ecs-license-card__icon">🔒</div>
51 <h2 class="ecs-license-card__title"><?php esc_html_e( 'ECS Pro is not active', 'ele-custom-skin' ); ?></h2>
52 <p class="ecs-license-card__desc">
53 <?php esc_html_e( 'Install and activate ECS Pro to unlock the license management.', 'ele-custom-skin' ); ?>
54 </p>
55 <a href="https://dudaster.com/ecs-pro/" target="_blank" class="button button-primary">
56 <?php esc_html_e( 'Get ECS Pro →', 'ele-custom-skin' ); ?>
57 </a>
58
59 <?php elseif ( $is_licensed ) : ?>
60
61 <div class="ecs-license-status ecs-license-status--active">
62 <span class="ecs-license-status__dot"></span>
63 <?php esc_html_e( 'License Active', 'ele-custom-skin' ); ?>
64 </div>
65
66 <h2 class="ecs-license-card__title"><?php esc_html_e( 'ECS Pro Licensed', 'ele-custom-skin' ); ?></h2>
67
68 <div class="ecs-license-key-display">
69 <span class="ecs-license-key-display__label"><?php esc_html_e( 'License Key', 'ele-custom-skin' ); ?></span>
70 <code class="ecs-license-key-display__value"><?php echo esc_html( $masked_key ); ?></code>
71 </div>
72
73 <p class="ecs-license-card__desc">
74 <?php esc_html_e( 'Your license is active. You will receive automatic updates and access to all Pro modules.', 'ele-custom-skin' ); ?>
75 </p>
76
77 <form method="post" action="<?php echo esc_url( admin_url( 'admin-post.php' ) ); ?>">
78 <input type="hidden" name="elecs-license" value="">
79 <?php wp_nonce_field( 'elecs-settings-save', 'elecs-custom-message' ); ?>
80 <button type="submit" class="ecs-license-deactivate-btn">
81 <?php esc_html_e( 'Deactivate License', 'ele-custom-skin' ); ?>
82 </button>
83 </form>
84
85 <?php else : ?>
86
87 <div class="ecs-license-status ecs-license-status--inactive">
88 <span class="ecs-license-status__dot"></span>
89 <?php esc_html_e( 'No License', 'ele-custom-skin' ); ?>
90 </div>
91
92 <h2 class="ecs-license-card__title"><?php esc_html_e( 'Activate Your License', 'ele-custom-skin' ); ?></h2>
93
94 <p class="ecs-license-card__desc">
95 <?php esc_html_e( 'Enter your ECS Pro license key to enable automatic updates and access to all Pro modules.', 'ele-custom-skin' ); ?>
96 </p>
97
98 <form method="post" action="<?php echo esc_url( admin_url( 'admin-post.php' ) ); ?>" class="ecs-license-form">
99 <div class="ecs-license-form__row">
100 <input
101 type="text"
102 name="elecs-license"
103 id="elecs-license"
104 class="ecs-license-form__input"
105 placeholder="<?php esc_attr_e( 'XXXX-XXXX-XXXX-XXXX', 'ele-custom-skin' ); ?>"
106 value=""
107 autocomplete="off"
108 >
109 <?php wp_nonce_field( 'elecs-settings-save', 'elecs-custom-message' ); ?>
110 <button type="submit" class="button button-primary ecs-license-form__btn">
111 <?php esc_html_e( 'Activate License', 'ele-custom-skin' ); ?>
112 </button>
113 </div>
114 <p class="ecs-license-form__hint">
115 <?php
116 printf(
117 wp_kses(
118 /* translators: %s: link to purchase page */
119 __( 'Don\'t have a license yet? <a href="%s" target="_blank">Get ECS Pro →</a>', 'ele-custom-skin' ),
120 [ 'a' => [ 'href' => [], 'target' => [] ] ]
121 ),
122 'https://dudaster.com/ecs-pro/'
123 );
124 ?>
125 </p>
126 </form>
127
128 <?php endif; ?>
129
130 </div><!-- .ecs-license-card -->
131
132 </div><!-- .ecs-license-wrap -->
133
134 </div>
135