* @since 3.0.0 N°3588 */ class FindStylesheetObject{ //file URIs private $aStylesheetFileURIs; //fill paths private $aStylesheetImportPaths; private $aAllStylesheetFilePaths; private $sLastStyleSheetPath; private $iLastModified; /** * FindStylesheetObject constructor. */ public function __construct() { $this->aStylesheetFileURIs = []; $this->aStylesheetImportPaths = []; $this->aAllStylesheetFilePaths = []; $this->sLastStyleSheetPath = ""; $this->iLastModified = 0; } public function GetLastStylesheetFile(): string { return $this->sLastStyleSheetPath; } public function GetImportPaths(): array { return $this->aStylesheetImportPaths; } /** * @return array : main stylesheets URIs */ public function GetStylesheetFileURIs(): array { return $this->aStylesheetFileURIs; } public function GetLastModified() : int { return $this->iLastModified; } /** * @return array : main stylesheets paths + included files paths */ public function GetAllStylesheetPaths(): array { return $this->aAllStylesheetFilePaths; } /** * @return string : last found stylesheet URI */ public function GetLastStyleSheetPath(): string { return $this->sLastStyleSheetPath; } public function AddStylesheet(string $sStylesheetFileURI, string $sStylesheetFilePath): void { $this->aStylesheetFileURIs[] = $sStylesheetFileURI; $this->aAllStylesheetFilePaths[] = $sStylesheetFilePath; $this->sLastStyleSheetPath = $sStylesheetFilePath; } public function AlreadyFetched(string $sStylesheetFilePath) : bool { return in_array($sStylesheetFilePath, $this->aAllStylesheetFilePaths); } public function AddImport(string $sStylesheetFileURI, string $sStylesheetFilePath): void { $this->aStylesheetImportPaths[$sStylesheetFileURI] = $sStylesheetFilePath; $this->aAllStylesheetFilePaths[] = $sStylesheetFilePath; } public function UpdateLastModified(string $sStylesheetFile): void { $this->iLastModified = max($this->iLastModified, @filemtime($sStylesheetFile)); } public function ResetLastStyleSheet(): void { $this->sLastStyleSheetPath = ""; } }