| Server IP : 213.186.33.4 / Your IP : 216.73.216.193 Web Server : Apache System : Linux webm006.cluster103.gra.hosting.ovh.net 5.15.206-ovh-vps-grsec-zfs-classid #1 SMP Fri May 15 02:41:25 UTC 2026 x86_64 User : awebpaca ( 35430) PHP Version : 8.5.0 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/a/w/e/awebpaca/boutiques/lib/Varien/File/ |
Upload File : |
<?php
require_once("Varien/Object.php");
require_once('Varien/Directory/IFactory.php');
class Varien_File_Object extends SplFileObject implements IFactory {
protected $_filename;
protected $_path;
protected $_filter;
protected $_isCorrect=true; # - pass or not filter checking
protected $filtered;
/**
* Constructor
*
* @param string $path - path to directory
* @return none
*/
public function __construct($path)
{
parent::__construct($path);
$this->_path=$path;
$this->_filename=basename($path);
}
/**
* add file name to array
*
* @param array &$files - array of files
* @return none
*/
public function getFilesName(&$files)
{
$this->getFileName(&$files);
}
/**
* add file name to array
*
* @param array &$files - array of files
* @return none
*/
public function getFileName(&$files=null)
{
if($this->_isCorrect){
if($files===null)
return $this->_filename;
$files[] = $this->_filename;
}
}
/**
* add file path to array
*
* @param array &$paths - array of paths
* @return none
*/
public function getFilesPaths(&$paths)
{
if($this->_isCorrect){
$paths[] = (string)$this->_path;
}
}
/**
* add file path to array
*
* @param array &$paths - array of paths
* @return none
*/
public function getFilePath(&$path=null)
{
if($this->_isCorrect){
if($path===null)
return $this->_path;
$paths[] = $this->_path;
}
}
/**
* use filter
*
* @param bool $useFilter - use or not filter
* @return none
*/
public function useFilter($useFilter)
{
if($useFilter){
$this->renderFilter();
} else {
$this->_isCorrect = true;
$this->filtered = false;
}
}
/**
* add file object to array
*
* @param array &$objs - array of gile objects
* @return none
*/
public function getFilesObj(&$objs)
{
if($this->_isCorrect){
$objs[] = $this;
}
}
/**
* nothing
*
* @param array &$dirs - array of dirs
* @return none
*/
public function getDirsName(&$dirs)
{
return Varien_Directory_Collection::getLastDir($this->_path);
}
/**
* nothing
*
* @param array &$dirs - array of dirs
* @return none
*/
public function getDirName()
{
return Varien_Directory_Collection::lastDir($this->_path);
}
/**
* set file filter
*
* @param array $filter - array of filter
* @return none
*/
public function setFilesFilter($filter)
{
$this->addFilter($filter);
}
/**
* set file filter
*
* @param array $filter - array of filter
* @return none
*/
public function addFilter($filter)
{
$this->_filter = $filter;
}
/**
* get extension of file
*
* @return string - extension of file
*/
public function getExtension()
{
return self::getExt($this->_filename);
}
/**
* get extension of file
*
* @param string $fileName - name of file
* @return string - extension of file
*/
static public function getExt($fileName)
{
if($fileName === ''){
$path_parts = pathinfo($this->_filename);
} else {
$path_parts = pathinfo($fileName);
}
if(isset($path_parts["extension"]))
return $path_parts["extension"];
else
return '';
}
/**
* get name of file
*
* @return string - name of file
*/
public function getName()
{
return basename($this->_filename,'.'.$this->getExtension());
}
/**
* render filters
*
* @return none
*/
public function renderFilter()
{
#print_r($this->_filter);
if(isset($this->_filter) && count($this->_filter)>0 && $this->filtered==false){
$this->filtered = true;
if(isset($this->_filter['extension'])){
$filter = $this->_filter['extension'];
if($filter!=null){
if(is_array($filter)){
if(!in_array($this->getExtension(),$filter)){
$this->_isCorrect = false;
}
} else {
if($this->getExtension()!=$filter){
$this->_isCorrect = false;
}
}
}
}
if(isset($this->_filter['name'])){
$filter = $this->_filter['name'];
if($filter!=null){
if(is_array($filter)){
if(!in_array($this->getName(),$filter)){
$this->_isCorrect = false;
}
} else {
if($this->getName()!=$filter){
$this->_isCorrect = false;
}
}
}
}
if(isset($this->_filter['regName'])){
$filter = $this->_filter['regName'];
if($filter!=null){
foreach ($filter as $value) {
if(!preg_match($value,$this->getName())){
$this->_isCorrect = false;
}
}
}
}
}
}
/**
* add to array file name
*
* @param array &$arr -export array
* @return none
*/
public function toArray(&$arr)
{
if($this->_isCorrect){
$arr['files_in_dirs'][] = $this->_filename;
}
}
/**
* add to xml file name
*
* @param array &$xml -export xml
* @param int $recursionLevel - level of recursion
* @param bool $addOpenTag - nothing
* @param string $rootName - nothing
* @return none
*/
public function toXml(&$xml,$recursionLevel=0,$addOpenTag=true,$rootName='Struct')
{
if($this->_isCorrect){
$xml .=str_repeat("\t",$recursionLevel+2).'<fileName>'.$this->_filename.'</fileName>'."\n";
}
}
}
?>