Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php /** @noinspection ALL */ /** * ATUM WooCommerce Inventory Management and Stock T..
Decoded Output download
<?php
/** @noinspection ALL */
/**
* ATUM WooCommerce Inventory Management and Stock Tracking
* @author Be Rebel - https://berebel.io
* @copyright 2024 Stock Management Labs
*/
namespace Atum\Addons;
defined("ABSPATH") || die();
use Atum\Components\AtumAdminNotices;
use Atum\Components\AtumAdminModal;
use Atum\Inc\Helpers;
final class AddonsLoader
{
private $C8vVB = [
"action_logs" => "1.1.5",
"export_pro" => "1.3.4",
"multi_inventory" => "1.5.0",
"product_levels" => "1.6.0",
"purchase_orders" => "0.0.1",
"stock_takes" => "0.0.1",
"pick_pack" => "0.0.1",
"barcodes_pro" => "0.0.1",
"units_of_measure" => "0.0.1",
"cost_price" => "0.0.1",
];
private $N85xT = [
"action_logs" => "1.3.8",
"export_pro" => "1.5.8",
"multi_inventory" => "1.8.7",
"product_levels" => "1.9.3",
"purchase_orders" => "1.1.6",
"stock_takes" => "1.0.0",
"pick_pack" => "1.0.0",
"barcodes_pro" => "0.0.1",
"units_of_measure" => "0.0.1",
"cost_price" => "0.0.1",
];
private static $vKZVW = [];
private static $OhNgU = [];
private $kMES3;
public function __construct()
{
goto Ui77W;
Ui77W:
$this->kMES3 = defined("ATUM_DEBUG") && true === ATUM_DEBUG;
goto SvYr4;
liMzk:
foreach ($Q1ikw as $BSKyz => $ZKCPM) {
goto LIc9i;
ugkV0:
P1upF:
goto t2mf6;
t2mf6:
AUtIr:
goto lIz1G;
VK_Rn:
$this->N85xT[$BSKyz] = $ZKCPM;
goto ugkV0;
LIc9i:
if (
!(
!array_key_exists($BSKyz, $this->N85xT) &&
version_compare($ZKCPM, "0.0", ">")
)
) {
goto P1upF;
}
goto VK_Rn;
lIz1G:
}
goto vgKEk;
qAWQS:
if (empty($Q1ikw)) {
goto M73By;
}
goto liMzk;
v81Mk:
M73By:
goto w3HpP;
UTjep:
$this->check_addons();
goto d0hnc;
w3HpP:
add_action("after_setup_theme", [$this, "load_addons"], 99);
goto UTjep;
SvYr4:
$Q1ikw = (array) apply_filters("atum/addons/loader/extra_addons", []);
goto qAWQS;
vgKEk:
b2orV:
goto v81Mk;
d0hnc:
}
public function load_addons()
{
goto HiR_a;
GEHKR:
$vct5A = [];
goto F4u8s;
OA_Li:
JmZzb:
goto jwgDF;
da0ej:
Addons::set_installed_addons($zvR1k);
goto OA_Li;
NYBeY:
if (empty($zvR1k)) {
goto JUKep;
}
goto GEHKR;
A9ZeL:
Miaa0:
goto D5kWT;
xlKq9:
$BFb03->add_modal(
"trial-expired",
[
"icon" => "warning",
"title" => _n(
"ATUM trial license expired!",
"ATUM trial licenses expired!",
count($vct5A),
ATUM_TEXT_DOMAIN
),
"showCancelButton" => false,
"showConfirmButton" => false,
"customClass" => ["container" => "atum-trial-modal"],
"footer" => sprintf(
__(
'Why are these add-ons expired and blocked? %1$sREAD INFO%2$s',
ATUM_TEXT_DOMAIN
),
' <a href="https://stockmanagementlabs.crunch.help/en/atum-core/atum-trials" target="_blank">',
"</a>"
),
],
Helpers::load_view_to_string("add-ons/expired-trials-modal", [
"expired_trials" => $vct5A,
])
);
goto A9ZeL;
EB0uw:
$BFb03 = AtumAdminModal::get_instance([ATUM_SHORT_NAME . "-addons"]);
goto ETMqK;
vL9e2:
$Wp_aF = Addons::get_addons_paths();
goto J6Qpx;
J6Qpx:
foreach ($zvR1k as $Zam2q => $xVF6_) {
goto ERDEY;
NZIW9:
$vct5A[$Zam2q]["extended"] = $Ho48R[$rmmtX]["extended"] ?? false;
goto NKfLy;
BxnoW:
$l4cl4 = ["key" => $Ho48R[$rmmtX]["key"], "url" => home_url()];
goto BPfBx;
LtGBh:
$this->show_notices(
$xVF6_,
$Fz5Y6 .
" " .
sprintf(
__(
'Click %1$shere%2$s to purchase the full version.',
ATUM_TEXT_DOMAIN
),
'<a href="' .
$xVF6_["addon_url"] .
'" target="_blank">',
"</a>"
)
);
goto KMDkj;
PcLOo:
jLQyL:
goto VPU35;
NJLs5:
ixZAN:
goto zErLQ;
NksJ9:
if (!$uCvA9) {
goto Qpdtz;
}
goto kWlGs;
gl3pZ:
self::$OhNgU[] = $Zam2q;
goto wvWJL;
yUvZm:
Qpdtz:
goto Zq1j5;
ffD4K:
goto ssJ3N;
goto DxPlN;
lecbT:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto D7c93;
b105N:
$this->show_notices($xVF6_, $Fz5Y6);
goto tnK0V;
NxUY5:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto EWkyg;
D7c93:
array_pop(self::$vKZVW);
goto DmM1D;
VPU35:
ssJ3N:
goto RgB2D;
SxN0G:
self::$OhNgU[] = $Zam2q;
goto FVVtz;
SfY9M:
SWmDA:
goto LtGBh;
tnK0V:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto p9gKo;
ERDEY:
$uCvA9 =
str_contains($Zam2q, "_trial") ||
str_contains($xVF6_["basename"], "trial");
goto Bysug;
yFFNV:
self::$OhNgU[] = $Zam2q;
goto BhZb0;
sRdiA:
$Fz5Y6 = sprintf(
__(
'The ATUM %1$s could not be loaded because its license is missing. Please, activate your trial from the %2$sadd-ons%3$s page.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"],
'<a href="' .
add_query_arg(
"page",
"atum-addons",
admin_url("admin.php")
) .
'">',
"</a>"
);
goto dCF0L;
W8szO:
$vct5A[$Zam2q]["key"] = $Ho48R[$rmmtX]["key"];
goto NZIW9;
gvc58:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto yFFNV;
pf2A4:
lmOzy:
goto iH0tJ;
YJSTn:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto gl3pZ;
C8Mcx:
$Fz5Y6 = sprintf(
__(
'Your ATUM %1$s has expired on %2$s, and it has been disabled.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"],
date_i18n(
get_option("date_format"),
strtotime($Ho48R[$rmmtX]["expires"])
)
);
goto VEa_i;
GkcHV:
$Fz5Y6 = sprintf(
__(
"The ATUM %s could not be loaded because the full version is installed. To use the trial, uninstall the full version first.",
ATUM_TEXT_DOMAIN
),
$xVF6_["name"]
);
goto qP3hT;
BhZb0:
Addons::delete_status_transient($rmmtX);
goto ffD4K;
Iy5uA:
$Fz5Y6 = sprintf(
"trial_used" === $Ho48R[$rmmtX]["status"]
? __(
'The ATUM %1$s could not be loaded because it has already been used on another site. Please, %2$supgrade to the full version%3$s.',
ATUM_TEXT_DOMAIN
)
: __(
'The ATUM %1$s could not be loaded because its license is invalid. Please, %2$supgrade to the full version%3$s.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"],
'<a href="' . $O0iuW . '" target="_blank">',
"</a>"
);
goto ayrAA;
jCwb2:
$vct5A[$Zam2q]["expires"] = $Ho48R[$rmmtX]["expires"] ?? "now";
goto W8szO;
NKfLy:
if ("now" === $vct5A[$Zam2q]["expires"]) {
goto lmOzy;
}
goto C8Mcx;
p9gKo:
self::$OhNgU[] = $Zam2q;
goto G0iD4;
KoUKE:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto Xz_h9;
hQB2b:
$Fz5Y6 = sprintf(
__(
"The ATUM %s add-on could not be loaded because is not a known add-on.",
ATUM_TEXT_DOMAIN
),
$xVF6_["name"]
);
goto b105N;
dWrXC:
if (
!in_array($Ho48R[$rmmtX]["status"], [
"trial_used",
"invalid",
"disabled",
"missing",
"key_mismatch",
])
) {
goto qPUEK;
}
goto BxnoW;
wUS8U:
if (
!(
empty($Ho48R[$rmmtX]["expires"]) ||
strtotime($Ho48R[$rmmtX]["expires"]) <= time()
)
) {
goto d0X73;
}
goto C_1n_;
wvWJL:
Addons::delete_status_transient($rmmtX);
goto TZJvE;
kWlGs:
if (
!(
isset($zvR1k[$Sr91A]) ||
(!$this->kMES3 &&
!empty($Wp_aF[$Sr91A]["basename"]) &&
file_exists(
WP_PLUGIN_DIR . "/" . $Wp_aF[$Sr91A]["basename"]
))
)
) {
goto ixZAN;
}
goto GkcHV;
Bysug:
$Sr91A = $uCvA9 ? str_replace("_trial", "", $Zam2q) : $Zam2q;
goto zwaw5;
BoyAQ:
if (
!(
!$Fv7TA &&
!empty($this->C8vVB[$Zam2q]) &&
version_compare(
$this->C8vVB[$Zam2q],
$xVF6_["version"],
"<"
)
)
) {
goto qMYUr;
}
goto lecbT;
Bfrjs:
Addons::delete_status_transient($rmmtX);
goto Z8HPZ;
KMDkj:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto SxN0G;
Z8HPZ:
goto ssJ3N;
goto a5NIO;
BQ7U1:
self::$vKZVW[] = $Zam2q;
goto XPoQG;
qP3hT:
$this->show_notices($xVF6_, $Fz5Y6);
goto YJSTn;
FVVtz:
goto ssJ3N;
goto rBvcN;
ayrAA:
$this->show_notices($xVF6_, $Fz5Y6);
goto gvc58;
G0iD4:
goto ssJ3N;
goto r2Z1z;
DmM1D:
self::$OhNgU[] = $Zam2q;
goto Cl498;
Cl498:
qMYUr:
goto PcLOo;
iH0tJ:
$Fz5Y6 = sprintf(
__(
'Your ATUM %1$s has expired and it has been disabled.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"]
);
goto SfY9M;
bnwwY:
$Fz5Y6 = sprintf(
__(
'The ATUM %1$s add-on requires at least version %2$s to work with the current ATUM version. Please, update it.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"],
$this->N85xT[$Sr91A]
);
goto If1M3;
DxPlN:
qPUEK:
goto wUS8U;
zZ2m1:
goto ssJ3N;
goto ZYrYw;
zErLQ:
if (
!(
empty($Ho48R) ||
empty($Ho48R[$rmmtX]) ||
empty($Ho48R[$rmmtX]["key"])
)
) {
goto Siz5l;
}
goto sRdiA;
Zq1j5:
if (
!(
!empty($xVF6_["bootstrap"]) &&
is_callable($xVF6_["bootstrap"])
)
) {
goto jLQyL;
}
goto BQ7U1;
ZYrYw:
nDKze:
goto NksJ9;
If1M3:
$this->show_notices($xVF6_, $Fz5Y6);
goto KoUKE;
BPfBx:
$O0iuW = add_query_arg(
$l4cl4,
Addons::ADDONS_STORE_URL . "my-upgrades/"
);
goto Iy5uA;
Xz_h9:
self::$OhNgU[] = $Zam2q;
goto zZ2m1;
r2Z1z:
GPUaG:
goto WcCMX;
C_1n_:
$vct5A[$Zam2q] = $xVF6_;
goto jCwb2;
TZJvE:
goto ssJ3N;
goto NJLs5;
rBvcN:
d0X73:
goto yUvZm;
zwaw5:
$rmmtX = strtolower($Wp_aF[$Sr91A]["name"] ?? "");
goto sSk69;
VEa_i:
goto SWmDA;
goto pf2A4;
a5NIO:
Siz5l:
goto dWrXC;
dCF0L:
$this->show_notices($xVF6_, $Fz5Y6);
goto NxUY5;
XPoQG:
$Fv7TA = call_user_func($xVF6_["bootstrap"]);
goto BoyAQ;
EWkyg:
self::$OhNgU[] = $Zam2q;
goto Bfrjs;
WcCMX:
if (
!version_compare($this->N85xT[$Sr91A], $xVF6_["version"], ">")
) {
goto nDKze;
}
goto bnwwY;
sSk69:
if (isset($this->N85xT[$Sr91A])) {
goto GPUaG;
}
goto hQB2b;
RgB2D:
}
goto IzL00;
Gkdpv:
if (empty($vct5A)) {
goto Miaa0;
}
goto vh002;
jwgDF:
JUKep:
goto AsLYq;
vh002:
add_action(
"admin_enqueue_scripts",
function () {
goto QOEYN;
QK3Zq:
wp_localize_script("atum-trials-modal", "atumTrialsModal", [
"cancel" => __("Cancel", ATUM_TEXT_DOMAIN),
"extend" => __("Yes, Extend it!", ATUM_TEXT_DOMAIN),
"nonce" => wp_create_nonce(ATUM_PREFIX . "manage_license"),
"ok" => __("OK", ATUM_TEXT_DOMAIN),
"success" => __("Success!", ATUM_TEXT_DOMAIN),
"trialExtension" => __("Trial extension", ATUM_TEXT_DOMAIN),
"trialWillExtend" => __(
"You are going to extend this trial for 7 days more",
ATUM_TEXT_DOMAIN
),
]);
goto xKDu3;
TMkU0:
wp_register_script(
"atum-trials-modal",
ATUM_URL . "assets/js/build/atum-trials-modal.js",
["jquery", "sweetalert2"],
ATUM_VERSION,
true
);
goto QK3Zq;
QOEYN:
Helpers::register_swal_scripts();
goto TMkU0;
xKDu3:
},
1
);
goto EB0uw;
D5kWT:
if (!(count(self::$OhNgU) > 0)) {
goto JmZzb;
}
goto da0ej;
F4u8s:
$Ho48R = Addons::get_keys();
goto vL9e2;
ETMqK:
$BFb03->set_js_dependencies(["atum-trials-modal"]);
goto xlKq9;
HiR_a:
$zvR1k = Addons::get_installed_addons();
goto NYBeY;
IzL00:
fkdTx:
goto Gkdpv;
AsLYq:
}
public function check_addons()
{
add_filter("atum/queues/recurring_hooks", function ($mrGZG) {
$mrGZG["atum/check_addons"] = [
"time" => "now",
"interval" => DAY_IN_SECONDS,
];
return $mrGZG;
});
add_action("atum/check_addons", function () {
goto M6cpk;
LARdR:
b4fvJ:
goto MI5ET;
fRKV2:
if (!$zZw5j) {
goto b4fvJ;
}
goto y1yvW;
f6i5V:
$zZw5j = false;
goto XC4bq;
C35ik:
if (!(false !== Addons::get_last_api_access("check_addons"))) {
goto ghsy3;
}
goto nN9eY;
XC4bq:
foreach ($mYFF_ as $hEgLq) {
goto ymaFI;
sUveC:
C8nAC:
goto Os1dD;
tqCNS:
VX5yp:
goto RD2x2;
Tj5M9:
$n3PmO = $JykUL;
goto pE82i;
ymaFI:
$fSbLW = strtolower($hEgLq["name"]);
goto F5c6L;
pE82i:
if (!$qn_cr) {
goto C8nAC;
}
goto J2_Ni;
z32WW:
LeYkA:
goto rULO2;
gKS4C:
if (
!(
empty($JykUL["trial"]) &&
isset($qn_cr->WELKJ) &&
true === $qn_cr->WELKJ
)
) {
goto LeYkA;
}
goto IAbDQ;
rVMg1:
$B5Hoc = Addons::check_license($fSbLW, $JykUL["key"]);
goto e52v1;
r3TL9:
vd_D_:
goto sUveC;
tW6iE:
if (!(is_array($WRh3f) && array_key_exists($rmmtX, $WRh3f))) {
goto VX5yp;
}
goto tw_T5;
PdK_3:
$n3PmO["status"] = $qn_cr->hw1Jx;
goto ULIG3;
yekKX:
xMg3e:
goto Y9cmS;
rULO2:
if (
!(
empty($JykUL["extended"]) &&
(!isset($qn_cr->Pq7yv) || true !== $qn_cr->Pq7yv)
)
) {
goto t0dPN;
}
goto ME1Po;
RNM01:
t0dPN:
goto ovZBS;
ovZBS:
if (empty(array_diff_assoc($JykUL, $n3PmO))) {
goto vd_D_;
}
goto RMmX1;
F5c6L:
if (!str_contains($fSbLW, "trial")) {
goto Zx5xE;
}
goto cO2bu;
IAbDQ:
$n3PmO["trial"] = true;
goto z32WW;
tw_T5:
$zZw5j = true;
goto LAGar;
ULIG3:
WCqNu:
goto JWLjy;
I7sj0:
$n3PmO["expires"] = $qn_cr->GWbOW ?? date_i18n("Y-m-d H:i:s");
goto uskqc;
Os1dD:
pN3T3:
goto tqCNS;
uskqc:
iz8h1:
goto gKS4C;
JWLjy:
if (
!(
empty($JykUL["expires"]) ||
$JykUL["expires"] !== $qn_cr->GWbOW
)
) {
goto iz8h1;
}
goto I7sj0;
J2_Ni:
if (!($JykUL["status"] !== $qn_cr->hw1Jx)) {
goto WCqNu;
}
goto PdK_3;
LAGar:
$JykUL = $WRh3f[$rmmtX];
goto rVMg1;
e52v1:
if (
!(
!is_wp_error($B5Hoc) &&
isset($JykUL["status"]) &&
"valid" === $JykUL["status"]
)
) {
goto pN3T3;
}
goto QDHNQ;
RD2x2:
Zx5xE:
goto yekKX;
cO2bu:
$rmmtX = trim(str_replace("trial", "", $fSbLW));
goto tW6iE;
RMmX1:
Addons::update_key($fSbLW, $n3PmO);
goto r3TL9;
ME1Po:
$n3PmO["extended"] = true;
goto RNM01;
QDHNQ:
$qn_cr = json_decode(wp_remote_retrieve_body($B5Hoc));
goto Tj5M9;
Y9cmS:
}
goto sTXrU;
nN9eY:
return;
goto tDMjz;
M6cpk:
$WRh3f = Addons::get_keys();
goto x9d3Y;
y1yvW:
Addons::set_last_api_access("check_addons");
goto LARdR;
sTXrU:
vLpo2:
goto fRKV2;
tDMjz:
ghsy3:
goto f6i5V;
x9d3Y:
$mYFF_ = Addons::get_installed_addons();
goto C35ik;
MI5ET:
});
}
private function show_notices($xVF6_, $Fz5Y6)
{
AtumAdminNotices::add_notice(
$Fz5Y6,
strtolower($xVF6_["name"]),
"error",
false,
true
);
add_action(
"after_plugin_row_" . $xVF6_["basename"],
function ($IaWuR, $ZxwbU) use ($Fz5Y6) {
goto PvTQt;
VfsvY:
?>"] td { box-shadow: none !important; }</style>
<?php
goto RKs_w;
PvTQt:
?>
<tr class="plugin-update-tr active">
<td colspan="4" class="plugin-update colspanchange">
<div class="notice inline notice-error notice-alt">
<p><?php
goto sN5C6;
sN5C6:
echo $Fz5Y6;
goto F9G5B;
qgphf:
?>"] th, tr[data-plugin="<?php
goto rNnIw;
rNnIw:
echo esc_attr($IaWuR);
goto VfsvY;
Y9ZfD:
echo esc_attr($IaWuR);
goto qgphf;
F9G5B:
?></p>
</div>
</td>
</tr>
<style>tr[data-plugin="<?php
goto Y9ZfD;
RKs_w:
},
100,
2
);
}
public static function get_bootstrapped_addons()
{
return self::$vKZVW;
}
public static function get_non_bootstrapped_addons()
{
return self::$OhNgU;
}
public static function check_addon($BSKyz, $fSbLW, $vosUE)
{
goto ZQZz8;
lMFmo:
SWH1n:
goto Td50v;
hamtV:
aNoyD:
goto C_8tw;
j75c0:
return false;
goto Cq9Yj;
rYoHr:
return false;
goto lMFmo;
Td50v:
if (!(stripos($fSbLW, "Trial") === false)) {
goto H2i1Q;
}
goto j75c0;
f1AZf:
if (!(stripos($vosUE, "-trial.php") === false)) {
goto aNoyD;
}
goto woBuT;
C_8tw:
return true;
goto yEIms;
ZQZz8:
if (!(stripos($BSKyz, "_trial") === false)) {
goto SWH1n;
}
goto rYoHr;
woBuT:
return false;
goto hamtV;
Cq9Yj:
H2i1Q:
goto f1AZf;
yEIms:
}
}
?>
Did this file decode correctly?
Original Code
<?php
/** @noinspection ALL */
/**
* ATUM WooCommerce Inventory Management and Stock Tracking
* @author Be Rebel - https://berebel.io
* @copyright 2024 Stock Management Labs
*/
namespace Atum\Addons;
defined("ABSPATH") || die();
use Atum\Components\AtumAdminNotices;
use Atum\Components\AtumAdminModal;
use Atum\Inc\Helpers;
final class AddonsLoader
{
private $C8vVB = [
"action_logs" => "1.1.5",
"export_pro" => "1.3.4",
"multi_inventory" => "1.5.0",
"product_levels" => "1.6.0",
"purchase_orders" => "0.0.1",
"stock_takes" => "0.0.1",
"pick_pack" => "0.0.1",
"barcodes_pro" => "0.0.1",
"units_of_measure" => "0.0.1",
"cost_price" => "0.0.1",
];
private $N85xT = [
"action_logs" => "1.3.8",
"export_pro" => "1.5.8",
"multi_inventory" => "1.8.7",
"product_levels" => "1.9.3",
"purchase_orders" => "1.1.6",
"stock_takes" => "1.0.0",
"pick_pack" => "1.0.0",
"barcodes_pro" => "0.0.1",
"units_of_measure" => "0.0.1",
"cost_price" => "0.0.1",
];
private static $vKZVW = [];
private static $OhNgU = [];
private $kMES3;
public function __construct()
{
goto Ui77W;
Ui77W:
$this->kMES3 = defined("ATUM_DEBUG") && true === ATUM_DEBUG;
goto SvYr4;
liMzk:
foreach ($Q1ikw as $BSKyz => $ZKCPM) {
goto LIc9i;
ugkV0:
P1upF:
goto t2mf6;
t2mf6:
AUtIr:
goto lIz1G;
VK_Rn:
$this->N85xT[$BSKyz] = $ZKCPM;
goto ugkV0;
LIc9i:
if (
!(
!array_key_exists($BSKyz, $this->N85xT) &&
version_compare($ZKCPM, "0.0", ">")
)
) {
goto P1upF;
}
goto VK_Rn;
lIz1G:
}
goto vgKEk;
qAWQS:
if (empty($Q1ikw)) {
goto M73By;
}
goto liMzk;
v81Mk:
M73By:
goto w3HpP;
UTjep:
$this->check_addons();
goto d0hnc;
w3HpP:
add_action("after_setup_theme", [$this, "load_addons"], 99);
goto UTjep;
SvYr4:
$Q1ikw = (array) apply_filters("atum/addons/loader/extra_addons", []);
goto qAWQS;
vgKEk:
b2orV:
goto v81Mk;
d0hnc:
}
public function load_addons()
{
goto HiR_a;
GEHKR:
$vct5A = [];
goto F4u8s;
OA_Li:
JmZzb:
goto jwgDF;
da0ej:
Addons::set_installed_addons($zvR1k);
goto OA_Li;
NYBeY:
if (empty($zvR1k)) {
goto JUKep;
}
goto GEHKR;
A9ZeL:
Miaa0:
goto D5kWT;
xlKq9:
$BFb03->add_modal(
"trial-expired",
[
"icon" => "warning",
"title" => _n(
"ATUM trial license expired!",
"ATUM trial licenses expired!",
count($vct5A),
ATUM_TEXT_DOMAIN
),
"showCancelButton" => false,
"showConfirmButton" => false,
"customClass" => ["container" => "atum-trial-modal"],
"footer" => sprintf(
__(
'Why are these add-ons expired and blocked? %1$sREAD INFO%2$s',
ATUM_TEXT_DOMAIN
),
' <a href="https://stockmanagementlabs.crunch.help/en/atum-core/atum-trials" target="_blank">',
"</a>"
),
],
Helpers::load_view_to_string("add-ons/expired-trials-modal", [
"expired_trials" => $vct5A,
])
);
goto A9ZeL;
EB0uw:
$BFb03 = AtumAdminModal::get_instance([ATUM_SHORT_NAME . "-addons"]);
goto ETMqK;
vL9e2:
$Wp_aF = Addons::get_addons_paths();
goto J6Qpx;
J6Qpx:
foreach ($zvR1k as $Zam2q => $xVF6_) {
goto ERDEY;
NZIW9:
$vct5A[$Zam2q]["extended"] = $Ho48R[$rmmtX]["extended"] ?? false;
goto NKfLy;
BxnoW:
$l4cl4 = ["key" => $Ho48R[$rmmtX]["key"], "url" => home_url()];
goto BPfBx;
LtGBh:
$this->show_notices(
$xVF6_,
$Fz5Y6 .
" " .
sprintf(
__(
'Click %1$shere%2$s to purchase the full version.',
ATUM_TEXT_DOMAIN
),
'<a href="' .
$xVF6_["addon_url"] .
'" target="_blank">',
"</a>"
)
);
goto KMDkj;
PcLOo:
jLQyL:
goto VPU35;
NJLs5:
ixZAN:
goto zErLQ;
NksJ9:
if (!$uCvA9) {
goto Qpdtz;
}
goto kWlGs;
gl3pZ:
self::$OhNgU[] = $Zam2q;
goto wvWJL;
yUvZm:
Qpdtz:
goto Zq1j5;
ffD4K:
goto ssJ3N;
goto DxPlN;
lecbT:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto D7c93;
b105N:
$this->show_notices($xVF6_, $Fz5Y6);
goto tnK0V;
NxUY5:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto EWkyg;
D7c93:
array_pop(self::$vKZVW);
goto DmM1D;
VPU35:
ssJ3N:
goto RgB2D;
SxN0G:
self::$OhNgU[] = $Zam2q;
goto FVVtz;
SfY9M:
SWmDA:
goto LtGBh;
tnK0V:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto p9gKo;
ERDEY:
$uCvA9 =
str_contains($Zam2q, "_trial") ||
str_contains($xVF6_["basename"], "trial");
goto Bysug;
yFFNV:
self::$OhNgU[] = $Zam2q;
goto BhZb0;
sRdiA:
$Fz5Y6 = sprintf(
__(
'The ATUM %1$s could not be loaded because its license is missing. Please, activate your trial from the %2$sadd-ons%3$s page.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"],
'<a href="' .
add_query_arg(
"page",
"atum-addons",
admin_url("admin.php")
) .
'">',
"</a>"
);
goto dCF0L;
W8szO:
$vct5A[$Zam2q]["key"] = $Ho48R[$rmmtX]["key"];
goto NZIW9;
gvc58:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto yFFNV;
pf2A4:
lmOzy:
goto iH0tJ;
YJSTn:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto gl3pZ;
C8Mcx:
$Fz5Y6 = sprintf(
__(
'Your ATUM %1$s has expired on %2$s, and it has been disabled.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"],
date_i18n(
get_option("date_format"),
strtotime($Ho48R[$rmmtX]["expires"])
)
);
goto VEa_i;
GkcHV:
$Fz5Y6 = sprintf(
__(
"The ATUM %s could not be loaded because the full version is installed. To use the trial, uninstall the full version first.",
ATUM_TEXT_DOMAIN
),
$xVF6_["name"]
);
goto qP3hT;
BhZb0:
Addons::delete_status_transient($rmmtX);
goto ffD4K;
Iy5uA:
$Fz5Y6 = sprintf(
"trial_used" === $Ho48R[$rmmtX]["status"]
? __(
'The ATUM %1$s could not be loaded because it has already been used on another site. Please, %2$supgrade to the full version%3$s.',
ATUM_TEXT_DOMAIN
)
: __(
'The ATUM %1$s could not be loaded because its license is invalid. Please, %2$supgrade to the full version%3$s.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"],
'<a href="' . $O0iuW . '" target="_blank">',
"</a>"
);
goto ayrAA;
jCwb2:
$vct5A[$Zam2q]["expires"] = $Ho48R[$rmmtX]["expires"] ?? "now";
goto W8szO;
NKfLy:
if ("now" === $vct5A[$Zam2q]["expires"]) {
goto lmOzy;
}
goto C8Mcx;
p9gKo:
self::$OhNgU[] = $Zam2q;
goto G0iD4;
KoUKE:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto Xz_h9;
hQB2b:
$Fz5Y6 = sprintf(
__(
"The ATUM %s add-on could not be loaded because is not a known add-on.",
ATUM_TEXT_DOMAIN
),
$xVF6_["name"]
);
goto b105N;
dWrXC:
if (
!in_array($Ho48R[$rmmtX]["status"], [
"trial_used",
"invalid",
"disabled",
"missing",
"key_mismatch",
])
) {
goto qPUEK;
}
goto BxnoW;
wUS8U:
if (
!(
empty($Ho48R[$rmmtX]["expires"]) ||
strtotime($Ho48R[$rmmtX]["expires"]) <= time()
)
) {
goto d0X73;
}
goto C_1n_;
wvWJL:
Addons::delete_status_transient($rmmtX);
goto TZJvE;
kWlGs:
if (
!(
isset($zvR1k[$Sr91A]) ||
(!$this->kMES3 &&
!empty($Wp_aF[$Sr91A]["basename"]) &&
file_exists(
WP_PLUGIN_DIR . "/" . $Wp_aF[$Sr91A]["basename"]
))
)
) {
goto ixZAN;
}
goto GkcHV;
Bysug:
$Sr91A = $uCvA9 ? str_replace("_trial", "", $Zam2q) : $Zam2q;
goto zwaw5;
BoyAQ:
if (
!(
!$Fv7TA &&
!empty($this->C8vVB[$Zam2q]) &&
version_compare(
$this->C8vVB[$Zam2q],
$xVF6_["version"],
"<"
)
)
) {
goto qMYUr;
}
goto lecbT;
Bfrjs:
Addons::delete_status_transient($rmmtX);
goto Z8HPZ;
KMDkj:
$zvR1k[$Zam2q]["bootstrap"] = null;
goto SxN0G;
Z8HPZ:
goto ssJ3N;
goto a5NIO;
BQ7U1:
self::$vKZVW[] = $Zam2q;
goto XPoQG;
qP3hT:
$this->show_notices($xVF6_, $Fz5Y6);
goto YJSTn;
FVVtz:
goto ssJ3N;
goto rBvcN;
ayrAA:
$this->show_notices($xVF6_, $Fz5Y6);
goto gvc58;
G0iD4:
goto ssJ3N;
goto r2Z1z;
DmM1D:
self::$OhNgU[] = $Zam2q;
goto Cl498;
Cl498:
qMYUr:
goto PcLOo;
iH0tJ:
$Fz5Y6 = sprintf(
__(
'Your ATUM %1$s has expired and it has been disabled.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"]
);
goto SfY9M;
bnwwY:
$Fz5Y6 = sprintf(
__(
'The ATUM %1$s add-on requires at least version %2$s to work with the current ATUM version. Please, update it.',
ATUM_TEXT_DOMAIN
),
$xVF6_["name"],
$this->N85xT[$Sr91A]
);
goto If1M3;
DxPlN:
qPUEK:
goto wUS8U;
zZ2m1:
goto ssJ3N;
goto ZYrYw;
zErLQ:
if (
!(
empty($Ho48R) ||
empty($Ho48R[$rmmtX]) ||
empty($Ho48R[$rmmtX]["key"])
)
) {
goto Siz5l;
}
goto sRdiA;
Zq1j5:
if (
!(
!empty($xVF6_["bootstrap"]) &&
is_callable($xVF6_["bootstrap"])
)
) {
goto jLQyL;
}
goto BQ7U1;
ZYrYw:
nDKze:
goto NksJ9;
If1M3:
$this->show_notices($xVF6_, $Fz5Y6);
goto KoUKE;
BPfBx:
$O0iuW = add_query_arg(
$l4cl4,
Addons::ADDONS_STORE_URL . "my-upgrades/"
);
goto Iy5uA;
Xz_h9:
self::$OhNgU[] = $Zam2q;
goto zZ2m1;
r2Z1z:
GPUaG:
goto WcCMX;
C_1n_:
$vct5A[$Zam2q] = $xVF6_;
goto jCwb2;
TZJvE:
goto ssJ3N;
goto NJLs5;
rBvcN:
d0X73:
goto yUvZm;
zwaw5:
$rmmtX = strtolower($Wp_aF[$Sr91A]["name"] ?? "");
goto sSk69;
VEa_i:
goto SWmDA;
goto pf2A4;
a5NIO:
Siz5l:
goto dWrXC;
dCF0L:
$this->show_notices($xVF6_, $Fz5Y6);
goto NxUY5;
XPoQG:
$Fv7TA = call_user_func($xVF6_["bootstrap"]);
goto BoyAQ;
EWkyg:
self::$OhNgU[] = $Zam2q;
goto Bfrjs;
WcCMX:
if (
!version_compare($this->N85xT[$Sr91A], $xVF6_["version"], ">")
) {
goto nDKze;
}
goto bnwwY;
sSk69:
if (isset($this->N85xT[$Sr91A])) {
goto GPUaG;
}
goto hQB2b;
RgB2D:
}
goto IzL00;
Gkdpv:
if (empty($vct5A)) {
goto Miaa0;
}
goto vh002;
jwgDF:
JUKep:
goto AsLYq;
vh002:
add_action(
"admin_enqueue_scripts",
function () {
goto QOEYN;
QK3Zq:
wp_localize_script("atum-trials-modal", "atumTrialsModal", [
"cancel" => __("Cancel", ATUM_TEXT_DOMAIN),
"extend" => __("Yes, Extend it!", ATUM_TEXT_DOMAIN),
"nonce" => wp_create_nonce(ATUM_PREFIX . "manage_license"),
"ok" => __("OK", ATUM_TEXT_DOMAIN),
"success" => __("Success!", ATUM_TEXT_DOMAIN),
"trialExtension" => __("Trial extension", ATUM_TEXT_DOMAIN),
"trialWillExtend" => __(
"You are going to extend this trial for 7 days more",
ATUM_TEXT_DOMAIN
),
]);
goto xKDu3;
TMkU0:
wp_register_script(
"atum-trials-modal",
ATUM_URL . "assets/js/build/atum-trials-modal.js",
["jquery", "sweetalert2"],
ATUM_VERSION,
true
);
goto QK3Zq;
QOEYN:
Helpers::register_swal_scripts();
goto TMkU0;
xKDu3:
},
1
);
goto EB0uw;
D5kWT:
if (!(count(self::$OhNgU) > 0)) {
goto JmZzb;
}
goto da0ej;
F4u8s:
$Ho48R = Addons::get_keys();
goto vL9e2;
ETMqK:
$BFb03->set_js_dependencies(["atum-trials-modal"]);
goto xlKq9;
HiR_a:
$zvR1k = Addons::get_installed_addons();
goto NYBeY;
IzL00:
fkdTx:
goto Gkdpv;
AsLYq:
}
public function check_addons()
{
add_filter("atum/queues/recurring_hooks", function ($mrGZG) {
$mrGZG["atum/check_addons"] = [
"time" => "now",
"interval" => DAY_IN_SECONDS,
];
return $mrGZG;
});
add_action("atum/check_addons", function () {
goto M6cpk;
LARdR:
b4fvJ:
goto MI5ET;
fRKV2:
if (!$zZw5j) {
goto b4fvJ;
}
goto y1yvW;
f6i5V:
$zZw5j = false;
goto XC4bq;
C35ik:
if (!(false !== Addons::get_last_api_access("check_addons"))) {
goto ghsy3;
}
goto nN9eY;
XC4bq:
foreach ($mYFF_ as $hEgLq) {
goto ymaFI;
sUveC:
C8nAC:
goto Os1dD;
tqCNS:
VX5yp:
goto RD2x2;
Tj5M9:
$n3PmO = $JykUL;
goto pE82i;
ymaFI:
$fSbLW = strtolower($hEgLq["name"]);
goto F5c6L;
pE82i:
if (!$qn_cr) {
goto C8nAC;
}
goto J2_Ni;
z32WW:
LeYkA:
goto rULO2;
gKS4C:
if (
!(
empty($JykUL["trial"]) &&
isset($qn_cr->WELKJ) &&
true === $qn_cr->WELKJ
)
) {
goto LeYkA;
}
goto IAbDQ;
rVMg1:
$B5Hoc = Addons::check_license($fSbLW, $JykUL["key"]);
goto e52v1;
r3TL9:
vd_D_:
goto sUveC;
tW6iE:
if (!(is_array($WRh3f) && array_key_exists($rmmtX, $WRh3f))) {
goto VX5yp;
}
goto tw_T5;
PdK_3:
$n3PmO["status"] = $qn_cr->hw1Jx;
goto ULIG3;
yekKX:
xMg3e:
goto Y9cmS;
rULO2:
if (
!(
empty($JykUL["extended"]) &&
(!isset($qn_cr->Pq7yv) || true !== $qn_cr->Pq7yv)
)
) {
goto t0dPN;
}
goto ME1Po;
RNM01:
t0dPN:
goto ovZBS;
ovZBS:
if (empty(array_diff_assoc($JykUL, $n3PmO))) {
goto vd_D_;
}
goto RMmX1;
F5c6L:
if (!str_contains($fSbLW, "trial")) {
goto Zx5xE;
}
goto cO2bu;
IAbDQ:
$n3PmO["trial"] = true;
goto z32WW;
tw_T5:
$zZw5j = true;
goto LAGar;
ULIG3:
WCqNu:
goto JWLjy;
I7sj0:
$n3PmO["expires"] = $qn_cr->GWbOW ?? date_i18n("Y-m-d H:i:s");
goto uskqc;
Os1dD:
pN3T3:
goto tqCNS;
uskqc:
iz8h1:
goto gKS4C;
JWLjy:
if (
!(
empty($JykUL["expires"]) ||
$JykUL["expires"] !== $qn_cr->GWbOW
)
) {
goto iz8h1;
}
goto I7sj0;
J2_Ni:
if (!($JykUL["status"] !== $qn_cr->hw1Jx)) {
goto WCqNu;
}
goto PdK_3;
LAGar:
$JykUL = $WRh3f[$rmmtX];
goto rVMg1;
e52v1:
if (
!(
!is_wp_error($B5Hoc) &&
isset($JykUL["status"]) &&
"valid" === $JykUL["status"]
)
) {
goto pN3T3;
}
goto QDHNQ;
RD2x2:
Zx5xE:
goto yekKX;
cO2bu:
$rmmtX = trim(str_replace("trial", "", $fSbLW));
goto tW6iE;
RMmX1:
Addons::update_key($fSbLW, $n3PmO);
goto r3TL9;
ME1Po:
$n3PmO["extended"] = true;
goto RNM01;
QDHNQ:
$qn_cr = json_decode(wp_remote_retrieve_body($B5Hoc));
goto Tj5M9;
Y9cmS:
}
goto sTXrU;
nN9eY:
return;
goto tDMjz;
M6cpk:
$WRh3f = Addons::get_keys();
goto x9d3Y;
y1yvW:
Addons::set_last_api_access("check_addons");
goto LARdR;
sTXrU:
vLpo2:
goto fRKV2;
tDMjz:
ghsy3:
goto f6i5V;
x9d3Y:
$mYFF_ = Addons::get_installed_addons();
goto C35ik;
MI5ET:
});
}
private function show_notices($xVF6_, $Fz5Y6)
{
AtumAdminNotices::add_notice(
$Fz5Y6,
strtolower($xVF6_["name"]),
"error",
false,
true
);
add_action(
"after_plugin_row_" . $xVF6_["basename"],
function ($IaWuR, $ZxwbU) use ($Fz5Y6) {
goto PvTQt;
VfsvY:
?>"] td { box-shadow: none !important; }</style>
<?php
goto RKs_w;
PvTQt:
?>
<tr class="plugin-update-tr active">
<td colspan="4" class="plugin-update colspanchange">
<div class="notice inline notice-error notice-alt">
<p><?php
goto sN5C6;
sN5C6:
echo $Fz5Y6;
goto F9G5B;
qgphf:
?>"] th, tr[data-plugin="<?php
goto rNnIw;
rNnIw:
echo esc_attr($IaWuR);
goto VfsvY;
Y9ZfD:
echo esc_attr($IaWuR);
goto qgphf;
F9G5B:
?></p>
</div>
</td>
</tr>
<style>tr[data-plugin="<?php
goto Y9ZfD;
RKs_w:
},
100,
2
);
}
public static function get_bootstrapped_addons()
{
return self::$vKZVW;
}
public static function get_non_bootstrapped_addons()
{
return self::$OhNgU;
}
public static function check_addon($BSKyz, $fSbLW, $vosUE)
{
goto ZQZz8;
lMFmo:
SWH1n:
goto Td50v;
hamtV:
aNoyD:
goto C_8tw;
j75c0:
return false;
goto Cq9Yj;
rYoHr:
return false;
goto lMFmo;
Td50v:
if (!(stripos($fSbLW, "Trial") === false)) {
goto H2i1Q;
}
goto j75c0;
f1AZf:
if (!(stripos($vosUE, "-trial.php") === false)) {
goto aNoyD;
}
goto woBuT;
C_8tw:
return true;
goto yEIms;
ZQZz8:
if (!(stripos($BSKyz, "_trial") === false)) {
goto SWH1n;
}
goto rYoHr;
woBuT:
return false;
goto hamtV;
Cq9Yj:
H2i1Q:
goto f1AZf;
yEIms:
}
}
Function Calls
None |
Stats
MD5 | efe19c2d58053045a330db17eb18a071 |
Eval Count | 0 |
Decode Time | 91 ms |