PluginProbe
YayMail – WooCommerce Email Customizer / 4.3.3
YayMail – WooCommerce Email Customizer v4.3.3
4.4.4 4.4.3 4.4.2 4.4.1 trunk 1.9.6 2.1.4 2.1.5 3.2.2 3.2.6 3.2.7.1 3.2.8.1 3.2.9 3.3 3.3.1 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.4 3.4.1 3.4.2 3.4.3 All 55 releases
yaymail / src / License / LicenseAPI.php

LicenseAPI.php in YayMail – WooCommerce Email Customizer 4.3.3, at src/License/LicenseAPI.php

119 lines 4.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace YayMail\License;
4
5 defined( 'ABSPATH' ) || exit;
6
7 /**
8 * LicenseAPI
9 *
10 * @package LicenseAPI
11 */
12 class LicenseAPI {
13 public static function activate_license( $item_id, $license_key ) {
14 try {
15 $response = wp_remote_get( YAYCOMMERCE_SELLER_SITE_URL . '?edd_action=activate_license&item_id=' . $item_id . '&license=' . $license_key . '&url=' . home_url() );
16
17 $response = json_decode( $response['body'] );
18
19 if ( $response->success ) {
20 return [
21 'success' => true,
22 'expires' => $response->expires,
23 'license_limit' => $response->license_limit,
24 'payment_id' => $response->payment_id,
25 'customer_name' => $response->customer_name,
26 ];
27 }
28 return [
29 'success' => false,
30 'message' => $response->error,
31 ];
32 } catch ( \Error $error ) {
33 return [
34 'success' => false,
35 'message' => 'server_error',
36 ];
37 }//end try
38 }
39
40 public static function check_license( $item_id, $license_key ) {
41 try {
42 $response = wp_remote_get( YAYCOMMERCE_SELLER_SITE_URL . '?edd_action=check_license&item_id=' . $item_id . '&license=' . $license_key . '&url=' . home_url() );
43
44 $response = json_decode( $response['body'] );
45
46 if ( true === $response->success ) {
47 if ( 'valid' === $response->license || 'expired' === $response->license ) {
48 return [
49 'success' => true,
50 'expires' => $response->expires,
51 'license_limit' => $response->license_limit,
52 'payment_id' => $response->payment_id,
53 'customer_name' => $response->customer_name,
54 ];
55 }
56 }
57 return [
58 'success' => false,
59 ];
60 } catch ( \Error $error ) {
61 return [
62 'success' => false,
63 'is_server_error' => true,
64 ];
65 }//end try
66 }
67
68 public static function get_version( $item_id, $license_key = null ) {
69 try {
70 $api_url = YAYCOMMERCE_SELLER_SITE_URL . '?edd_action=get_version&item_id=' . $item_id;
71 if ( ! empty( $license_key ) ) {
72 $api_url .= '&license=' . $license_key;
73 }
74 $response = wp_remote_get( $api_url );
75 $response = json_decode( $response['body'] );
76 if ( isset( $response->new_version ) ) {
77 return (array) $response;
78 }
79 return false;
80 } catch ( \Error $error ) {
81 return false;
82 }
83 }
84
85 public static function get_error_message( $message ) {
86 $result = '';
87 switch ( $message ) {
88 case 'missing':
89 $result = "License doesn't exist";
90 break;
91 case 'license_not_activable':
92 $result = "Attempting to activate a bundle's parent license";
93 break;
94 case 'disabled':
95 $result = 'License key revoked';
96 break;
97 case 'no_activations_left':
98 $result = 'No activations left';
99 break;
100 case 'expired':
101 $result = 'License has expired';
102 break;
103 case 'key_mismatch':
104 $result = 'License is not valid for this product';
105 break;
106 case 'item_name_mismatch':
107 $result = 'License is not valid for this product';
108 break;
109 case 'server_error':
110 $result = 'Your license could not be activated because of server error.';
111 break;
112 default:
113 $result = 'Your license could not be activated.';
114 break;
115 }//end switch
116 return $result;
117 }
118 }
119