Files
grzanieplus.pl/plugins/appAdsTrackerPlugin/lib/stDeleteAdsTrackerTask.class.php
2025-03-12 17:06:23 +01:00

89 lines
2.1 KiB
PHP

<?php
class stDeleteAdsTrackerTask extends stTask
{
/**
*
*/
public function getDelateDay()
{
$config = stConfig::getInstance('appAdsTrackerBackend');
$ads_terminate = $config->get('ads_terminate');
//$ads_terminate = 1;
$days = '-'.$ads_terminate.' day';
$delate_date = date("Y-m-d", strtotime($days))." 00:00:00";
return $delate_date;
}
/**
* W tej metodzie zwracamy ile rekordów/danych zamierzamy wykonać
*/
public function count(): int
{
$adsTrackerEntering = 0;
$adsTrackerRemoteAddress = 0;
$adsTrackerDebug = 0;
$delate_date = $this->getDelateDay();
/*// kasowanie wejść na reklamy
$c = new Criteria();
$c->add(AdsTrackerEnteringPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
$adsTrackerEntering = AdsTrackerEnteringPeer::doCount($c);*/
// kasowanie wejść IP
$c = new Criteria();
$c->add(AdsTrackerRemoteAddressPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
$adsTrackerRemoteAddress = AdsTrackerRemoteAddressPeer::doCount($c);
// kasowanie debug
$c = new Criteria();
$c->add(AdsTrackerDebugPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
$adsTrackerDebug = AdsTrackerDebugPeer::doCount($c);
$sum = $adsTrackerEntering + $adsTrackerRemoteAddress + $adsTrackerDebug;
return $sum;
}
/**
* W tej metodzie wykonujemy swoje operacje na danych
*
*/
public function execute(int $offset): int
{
$delate_date = $this->getDelateDay();
/*// kasowanie wejść na reklamy
$c = new Criteria();
$c->add(AdsTrackerEnteringPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
$c->setLimit(1000);
$offset += AdsTrackerEnteringPeer::doDelete($c);*/
// kasowanie wejść IP
$c = new Criteria();
$c->add(AdsTrackerRemoteAddressPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
$c->setLimit(1000);
$offset += AdsTrackerRemoteAddressPeer::doDelete($c);
// kasowanie debug
$c = new Criteria();
$c->add(AdsTrackerDebugPeer::CREATED_AT, $delate_date, Criteria::LESS_EQUAL);
$c->setLimit(1000);
$offset += AdsTrackerDebugPeer::doDelete($c);
return $offset;
}
}