403Webshell
Server IP : 89.108.64.180  /  Your IP : 216.73.217.92
Web Server : Apache/2.4.41 (Ubuntu)
System : Linux 89-108-64-180.cloudvps.regruhosting.ru 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User : www-root ( 1010)
PHP Version : 8.0.30
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /var/www/www-root/data/www/fl-brief.agast.ru/wp-content/plugins/mailpoet/lib/Util/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/www-root/data/www/fl-brief.agast.ru/wp-content/plugins/mailpoet/lib/Util/ProgressBar.php
<?php // phpcs:ignore SlevomatCodingStandard.TypeHints.DeclareStrictTypes.DeclareStrictTypesMissing

namespace MailPoet\Util;

if (!defined('ABSPATH')) exit;


use MailPoet\Config\Env;

if (!class_exists('ProgressBar', false)) {

  /**
   * The Progress Bar class
   *
   */
  class ProgressBar {

    private $totalCount = 0;
    private $currentCount = 0;
    private $filename;
    public $url;

    /**
     * Initialize the class and set its properties.
     *
     */
    public function __construct(
      $progressBarId
    ) {
      $filename = $progressBarId . '-progress.json';
      $this->filename = Env::$tempPath . '/' . $filename;
      $this->url = Env::$tempUrl . '/' . $filename;
      $counters = $this->readProgress();
      if (isset($counters->total)) {
        $this->totalCount = $counters->total;
      }
      if (isset($counters->current)) {
        $this->currentCount = $counters->current;
      }
    }

    /**
     * Get the progress file URL
     *
     * @return string Progress file URL
     */
    public function getUrl() {
      return $this->url;
    }

    /**
     * Read the progress counters
     *
     * @return array|false Array of counters
     */
    private function readProgress() {
      if (!file_exists($this->filename)) {
        return false;
      }
      $jsonContent = file_get_contents($this->filename);
      if (is_string($jsonContent)) {
        return json_decode($jsonContent);
      }
      return false;
    }

    /**
     * Set the total count
     *
     * @param int $count Count
     */
    public function setTotalCount($count) {
      if (($count != $this->totalCount) || ($count == 0)) {
        $this->totalCount = $count;
        $this->currentCount = 0;
        $this->saveProgress();
      }
    }

    /**
     * Increment the current count
     *
     * @param int $count Count
     */
    public function incrementCurrentCount($count) {
      $this->currentCount += $count;
      $this->saveProgress();
    }

    /**
     * Save the progress counters
     *
     */
    private function saveProgress() {
      file_put_contents($this->filename, json_encode([
        'total' => $this->totalCount,
        'current' => $this->currentCount,
      ]));
    }

    /**
     * Delete the progress file
     *
     */
    public function deleteProgressFile() {
      unlink($this->filename);
    }
  }

}

Youez - 2016 - github.com/yon3zu
LinuXploit