K2LL33D SHELL

 Apache/2.4.7 (Ubuntu)
 Linux sman1baleendah 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64
 uid=33(www-data) gid=33(www-data) groups=33(www-data)
 safemode : OFF
 MySQL: ON | Perl: ON | cURL: OFF | WGet: ON
  >  / var / www / html / sman1baleendah_sch_id / tiny_mce / plugins / ajaxfilemanager / inc /
server ip : 104.21.89.46

your ip : 172.70.130.229

H O M E


Filename/var/www/html/sman1baleendah_sch_id/tiny_mce/plugins/ajaxfilemanager/inc/class.history.php
Size3.34 kb
Permissionrwxr-xr-x
Ownerroot : root
Create time11-Jun-2025 21:32
Last modified11-Jun-2025 21:32
Last accessed06-Jul-2025 01:16
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?php
/**
* class history
* this class used to keep records of any changed to uploaded images under a session
* @author Logan Cai (cailongqun [at] yahoo [dot] com [dot] cn)
* @link www.phpletter.com
* @since 22/May/2007
*
*/
class History
{
var $history = array(); //keep all changes
var $path = ''; //path to the iamge
var $session = null;
/**
* constructor
*
* @param string $path the path to the image
* @param object $session an instance of session class
*/
function __construct($path, &$session)
{
$this->path = $path;
$this->session = &$session;
if(!isset($_SESSION[$this->path]))
{
$_SESSION[$this->path] = array();
}

}
/**
* constructor
*
* @param string $path the path to the image
* @param object $session an instance of session class
*/
function History($path, &$session)
{
$this->__construct($path, $session);
}

/**
* keep tracks of each changes made to an image
*
* @param string $key
* @param string $info array('name', 'restorable', 'is_original')
*/
function add($info)
{
$_SESSION[$this->path][] = $info;
}
/**
* get the lastest changes for restore
*
* @return array array('name', 'restorable', 'is_original')
*/
function getNumRestorable()
{
$output = 0;
if(isset($_SESSION[$this->path]) && is_array($_SESSION[$this->path]))
{
foreach($_SESSION[$this->path] as $k=>$v)
{
if(!empty($v['restorable']) && empty($v['is_original']))
{
if(file_exists($this->session->getSessionDir() . $v['name']))
{
$output++;
}else
{

}

}
}
}
return $output;
}

/**
* get the path of image which keep the lastest changes
*
* @return return empty array when failed
*/
function getLastestRestorable()
{
if(isset($_SESSION[$this->path]) && is_array($_SESSION[$this->path]) && sizeof($_SESSION[$this->path]))
{
$sessionImages = array_reverse($_SESSION[$this->path], true);
$lastestKey = '';
foreach($sessionImages as $k=>$v)
{
if($v['restorable'] && empty($v['is_original']) && file_exists($this->session->getSessionDir() . $v['name']))
{
return $sessionImages[$k];
}
}

}
return array();

}
/**
* get the original image which is kept in the session folder
*
* @return array
*/
function getOriginalImage()
{
$outputs = array();
if(isset($_SESSION[$this->path]) && is_array($_SESSION[$this->path]))
{
$sessionImages = array_reverse($_SESSION[$this->path], true);
foreach($sessionImages as $k=>$v)
{
if(!empty($v['is_original']))
{
if(file_exists($this->session->getSessionDir() . $v['name']))
{
return array('info'=>$_SESSION[$this->path][$k], 'key'=>$k);
}

}
}
}
return $outputs;

}
/**
* remove the lastest restorable state
*
* @return boolean
*/
function restore()
{
if(isset($_SESSION[$this->path]) && is_array($_SESSION[$this->path]) && sizeof($_SESSION[$this->path]))
{
$sessionImages = array_reverse($_SESSION[$this->path], true);
$lastestKey = '';
foreach($sessionImages as $k=>$v)
{
if($v['restorable'] && empty($v['is_original']))
{
unset($_SESSION[$k]);
return true;
}
}
}
return false;
}



}
?>