package IIc006e1d88f66a3969ffd0192be9acb1b; use strict 'vars'; use base qw/IIbcd733d17516b3e8d7f1993b7837b343/; use Zen::Config; use II1b7f5cd35f00c93f234e8e1273dbac2a; use II85c65ba7e286d29307cdb0d3ce685d3c; use IIc6aa3e82c386b089a6d7ec2e1ba751e0; use IIb02f8d3064e235967de5c537b3e7ce9b; BEGIN{*IIc006e1d88f66a3969ffd0192be9acb1b::llllIllIllIlIIII=\%{pack('H6','131719')^'VYO'};*IIc006e1d88f66a3969ffd0192be9acb1b::IllllllIlIlIlIII=\&{pack('H24','53395c3f04033d6866374472')^'>X5Q>9NPQU<F'};$IIc006e1d88f66a3969ffd0192be9acb1b::IIIIlllIIIIIIIlI=pack('H18','0b131b6e6172170666')^'CGO>>:XU2';$IIc006e1d88f66a3969ffd0192be9acb1b::llIllIIllllIIlll=pack('H12','057773141b08')^'O>=XRK'};sub cfg   { IIc006e1d88f66a3969ffd0192be9acb1b::llIlIIlIIlIlIlII($IIc6aa3e82c386b089a6d7ec2e1ba751e0::lIIIIlIIlllllllI{$IIb02f8d3064e235967de5c537b3e7ce9b::IIlIlIIIlIIIlIII},341,$IIc6aa3e82c386b089a6d7ec2e1ba751e0::lIIIIlIIlllllllI{$IIc006e1d88f66a3969ffd0192be9acb1b::llIIIIllIllIIlII})->cfg } BEGIN{*IIc006e1d88f66a3969ffd0192be9acb1b::lIlIIllIlIlIIIlI=\%{pack('H6','147164')^'Q?2'};*IIc006e1d88f66a3969ffd0192be9acb1b::llIlIIlIIlIlIlII=\&{pack('H24','213323517a07256f07543579')^'LRJ?@=VW06MM'};$IIc006e1d88f66a3969ffd0192be9acb1b::IIIllllIIIlIlIlI=pack('H18','781a6c1015080e181f')^'0N8@J@AKK';$IIc006e1d88f66a3969ffd0192be9acb1b::llIIIllllIllllll=pack('H12','7a1b1f1d7107')^'0RQQ8D'};sub cache { II1b7f5cd35f00c93f234e8e1273dbac2a::llIlllllIIIllIlI($IIb02f8d3064e235967de5c537b3e7ce9b::IIIlIIlIIllIlIIl{$II85c65ba7e286d29307cdb0d3ce685d3c::lIIIIlIlllIllIlI},341,$IIb02f8d3064e235967de5c537b3e7ce9b::IIIlIIlIIllIlIIl{$IIb02f8d3064e235967de5c537b3e7ce9b::llIIIlIlllIllIII})->cache } BEGIN{*IIc006e1d88f66a3969ffd0192be9acb1b::lIIlllllIIlIlIll=\%{pack('H6','057a60')^'@46'};*IIc006e1d88f66a3969ffd0192be9acb1b::llllIlllIIlIIlll=\&{pack('H24','3e33545e0171417260243166')^'SR=0;K2JWFIR'};$IIc006e1d88f66a3969ffd0192be9acb1b::lIlIIlIIIIIlIlII=pack('H18','76050e106779721003')^'>QZ@81=CW';$IIc006e1d88f66a3969ffd0192be9acb1b::lllllIIIlIIIllll=pack('H12','1a001c1d1c13')^'PIRQUP'};sub cronDeliverables { my $class = shift; my $message; for my $c ($class->listDlvClasses) { for my $o ($c->search(WHERE => 'not expired and to_days(expires) <= to_days(now())')) { my $title = $o->getDlvTitle; $message .= qq(* $title expired for user [$o->{user_id}] (sale [$o->{sale_id}] exp [$o->{expires}])\n); $o->save; } } return $message; } BEGIN{*IIc006e1d88f66a3969ffd0192be9acb1b::lIlllIIlllllllIl=\%{pack('H6','157d07')^'P3Q'};*IIc006e1d88f66a3969ffd0192be9acb1b::IlIllIIlIllllIll=\&{pack('H24','382a3c5f6b063877002d4179')^'UKU1Q<KO7O9M'};$IIc006e1d88f66a3969ffd0192be9acb1b::lllIIllllIIlIIIl=pack('H18','7b6b68666f05741b67')^'3?<60M;H3';$IIc006e1d88f66a3969ffd0192be9acb1b::llIIIIllIllIIlII=pack('H12','1f0c1c1f110b')^'UERSXH'};sub cronMasterMems { my $class = shift; my $message; $class->buildTmpTableForActiveDlv; if (IIc6aa3e82c386b089a6d7ec2e1ba751e0::IlIIlllllIlIlIIl($IIc6aa3e82c386b089a6d7ec2e1ba751e0::lIIIIlIIlllllllI{$IIb02f8d3064e235967de5c537b3e7ce9b::IlIIllIllIIlllIl},1032,$IIc6aa3e82c386b089a6d7ec2e1ba751e0::lIIIIlIIlllllllI{$IIb02f8d3064e235967de5c537b3e7ce9b::llIllIIlllIIIIlI})->hasFeature('productpro')) { my %map = IIb02f8d3064e235967de5c537b3e7ce9b::IIIlIlIlIllIlIlI($IIb02f8d3064e235967de5c537b3e7ce9b::IIIlIIlIIllIlIIl{$IIc6aa3e82c386b089a6d7ec2e1ba751e0::IIIlIIlllIlIIlll},170,$IIb02f8d3064e235967de5c537b3e7ce9b::IIIlIIlIIllIlIIl{$IIc006e1d88f66a3969ffd0192be9acb1b::llIllIIllllIIlll})->getMap(id => 'master_memberships', WHERE => "master_memberships!=''"); while (my ($pid, $mmem) = each %map) { for my $su ($class->search(FETCH => "distinct jin_sale.id,jin_sale.user_id", paid => 1, prod_id => $pid, activeDlv => 1)) { unless (IIc006e1d88f66a3969ffd0192be9acb1b::llllIlllIIlIIlll($IIbcd733d17516b3e8d7f1993b7837b343::lllllIIIIllIlIlI{$IIc006e1d88f66a3969ffd0192be9acb1b::IIIIlllIIIIIIIlI},7,$IIbcd733d17516b3e8d7f1993b7837b343::lllllIIIIllIlIlI{$II85c65ba7e286d29307cdb0d3ce685d3c::IlIlIlIlIIllllII})->search(type => 'membership', obj_id => $mmem, user_id => $su->{user_id}, expired => 0)->[0]) { $class->get($su->{id})->deleteDeliverables; $message .= qq(* dependent deliverables cancelled: sale [$su->{id}] master membership [$mmem]\n); } } } } return $message; } 1; 