HEX
Server: Apache
System: Linux webd006.cluster128.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64
User: zwafgyp (177615)
PHP: 7.4.33
Disabled: _dyuweyrj4,_dyuweyrj4r,dl
Upload Files
File: /home/zwafgyp/coolswim/wp-content/plugins/regenerate-thumbnails-advanced/classes/Periods.php
<?php
namespace ReThumbAdvanced;
use \ReThumbAdvanced\ShortPixelLogger\ShortPixelLogger as Log;
use \ReThumbAdvanced\Controllers\AdminController as AdminController;

if (! defined('ABSPATH')) {
    exit; // Exit if accessed directly.
}


class Periods {

    /** PERIOD OPTIONS */
    const PERIOD_ALL = 0;
    const PERIOD_DAY = 1;
    const PERIOD_WEEK = 2;
    const PERIOD_MONTH = 3;
    const PERIOD_3MONTH = 4;
    const PERIOD_6MONTH = 5;
    const PERIOD_YEAR = 6;
    const PERIOD_CUSTOM = 7;


    public static function getAll()
    {
       $periods = array(
          'all' => self::getPeriod(self::PERIOD_ALL),
          'day' => self::getPeriod(self::PERIOD_DAY),
          'week' => self::getPeriod(self::PERIOD_WEEK),
          'month' => self::getPeriod(self::PERIOD_MONTH),
          '3month' => self::getPeriod(self::PERIOD_3MONTH),
          '6month' => self::getPeriod(self::PERIOD_6MONTH),
          'year' => self::getPeriod(self::PERIOD_YEAR),
          'custom' => self::getPeriod(self::PERIOD_CUSTOM),
       );

       return $periods;
    }

    public static function getPeriod($period_int)
    {
        return new Period($period_int);
    }

}

class Period {

    public $period_id;
    public $period_name;

    public $startstamp;
    public $endstamp;


    public function __construct($period_id)
    {
        $this->period_id = intval($period_id);
        $this->set();
    }

    // period comes from form.
    protected function set()
    {
        $now = time();
        $current_stamp = current_time('timestamp');
        $endstamp = -1;


        switch ($this->period_id) {
            case PERIODS::PERIOD_ALL:
              $this->startstamp = 0;
              $this->period_name =  __('All','regenerate-thumbnails-advanced');
            break;
            case PERIODS::PERIOD_DAY:
              $this->startstamp = $now - DAY_IN_SECONDS;
              $this->period_name = __('Past Day','regenerate-thumbnails-advanced');
           break;
            case PERIODS::PERIOD_WEEK:
              $this->startstamp = $now - WEEK_IN_SECONDS;
              $this->period_name = __('Past Week','regenerate-thumbnails-advanced');
              break;
            case PERIODS::PERIOD_MONTH:
              $this->startstamp = $now - MONTH_IN_SECONDS;
              $this->period_name = __('Past Month','regenerate-thumbnails-advanced');
              break;
          case PERIODS::PERIOD_3MONTH:
              $this->startstamp = $now - (3* MONTH_IN_SECONDS);
              $this->period_name = __('Past 3 Months','regenerate-thumbnails-advanced');
          break;
          case PERIODS::PERIOD_6MONTH:
              $this->startstamp = $now - (6* MONTH_IN_SECONDS);
              $this->period_name = __('Past 6 Months','regenerate-thumbnails-advanced');
              break;
          case PERIODS::PERIOD_YEAR:
              $this->startstamp = $now - YEAR_IN_SECONDS;
              $this->period_name = __('Past Year','regenerate-thumbnails-advanced');
          break;
          case PERIODS::PERIOD_CUSTOM:
              $this->period_name = __('Custom Date','regenerate-thumbnails-advanced');

          break;

        }

        if ($endstamp < 0)
        {
           $this->endstamp = $current_stamp;
        }

    }

    public function getQueryDate()
    {
        return array('startstamp' => $this->startstamp, 'endstamp' => $this->endstamp);
    }

    public function isAvailable()
    {
       return false;
    }

    public function isCustom()
    {
       return ($this->period_id === PERIODS::PERIOD_CUSTOM);

    }



}