!C99Shell v. 1.0 pre-release build #13!

Software: Apache. PHP/5.5.15 

uname -a: Windows NT SVR-DMZ 6.1 build 7600 (Windows Server 2008 R2 Enterprise Edition) i586 

SYSTEM 

Safe-mode: OFF (not secure)

C:\cumbreclima\wp-content\plugins\revslider\inc_php\framework\   drwxrwxrwx
Free 4.11 GB of 39.52 GB (10.39%)
Detected drives: [ a ] [ c ] [ d ] [ e ] [ f ]
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     cssparser.class.php (6.81 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

    
class UniteCssParserRev{
        
        private 
$cssContent;
        
        public function 
__construct(){
            
        }
        
        
/**
         * 
         * init the parser, set css content
         */
        
public function initContent($cssContent){
            
$this->cssContent $cssContent;
        }        
        
        
        
/**
         * 
         * get array of slide classes, between two sections.
         */
        
public function getArrClasses($startText "",$endText=""){
            
            
$content $this->cssContent;
            
            
//trim from top
            
if(!empty($startText)){
                
$posStart strpos($content$startText);
                if(
$posStart !== false)
                    
$content substr($content$posStart,strlen($content)-$posStart);
            }
            
            
//trim from bottom
            
if(!empty($endText)){
                
$posEnd strpos($content$endText);
                if(
$posEnd !== false)
                    
$content substr($content,0,$posEnd);
            }
            
            
//get styles
            
$lines explode("\n",$content);
            
$arrClasses = array();
            foreach(
$lines as $key=>$line){
                
$line trim($line);
                
                if(
strpos($line"{") === false)
                    continue;

                
//skip unnessasary links
                
if(strpos($line".caption a") !== false)
                    continue;
                    
                if(
strpos($line".tp-caption a") !== false)
                    continue;
                    
                
//get style out of the line
                
$class str_replace("{"""$line);
                
$class trim($class);
                
                
//skip captions like this: .tp-caption.imageclass img
                
if(strpos($class," ") !== false)
                    continue;
                
                
//skip captions like this: .tp-caption.imageclass:hover, :before, :after
                
if(strpos($class,":") !== false)
                    continue;
                
                
$class str_replace(".caption.""."$class);
                
$class str_replace(".tp-caption.""."$class);
                
                
$class str_replace("."""$class);
                
$class trim($class);
                
$arrWords explode(" "$class);
                
$class $arrWords[count($arrWords)-1];
                
$class trim($class);
                
                
$arrClasses[] = $class;    
            }
            
            
sort($arrClasses);
            
            return(
$arrClasses);
        }
        
        public static function 
parseCssToArray($css){
            
            while(
strpos($css'/*') !== false){
                if(
strpos($css'*/') === false) return false;
                
$start strpos($css'/*');
                
$end strpos($css'*/') + 2;
                
$css str_replace(substr($css$start$end $start), ''$css);
            }
            
            
preg_match_all'/(?ims)([a-z0-9\s\.\:#_\-@]+)\{([^\}]*)\}/'$css$arr);

            
$result = array();
            foreach (
$arr[0] as $i => $x){
                
$selector trim($arr[1][$i]);
                if(
strpos($selector'{') !== false || strpos($selector'}') !== false) return false;
                
$rules explode(';'trim($arr[2][$i]));
                
$result[$selector] = array();
                foreach (
$rules as $strRule){
                    if (!empty(
$strRule)){
                        
$rule explode(":"$strRule);
                        if(
strpos($rule[0], '{') !== false || strpos($rule[0], '}') !== false || strpos($rule[1], '{') !== false || strpos($rule[1], '}') !== false) return false;
                        
                        
//put back everything but not $rule[0];
                        
$key trim($rule[0]);
                        unset(
$rule[0]);
                        
$values implode(':'$rule);
                        
                        
$result[$selector][trim($key)] = trim(str_replace("'"'"'$values));
                    }
                }
            }   
            return(
$result);
        }
        
        public static function 
parseDbArrayToCss($cssArray$nl "\n\r"){
            
$css '';
            foreach(
$cssArray as $id => $attr){
                
$styles json_decode(str_replace("'"'"'$attr['params']), true);
                
$css.= $attr['handle']." {".$nl;
                if(
is_array($styles)){
                    foreach(
$styles as $name => $style){
                        
$css.= $name.':'.$style.";".$nl;
                    }
                }
                
$css.= "}".$nl.$nl;
                
                
//add hover
                
$setting json_decode($attr['settings'], true);
                if(@
$setting['hover'] == 'true'){
                    
$hover json_decode(str_replace("'"'"'$attr['hover']), true);
                    if(
is_array($hover)){
                        
$css.= $attr['handle'].":hover {".$nl;
                        foreach(
$hover as $name => $style){
                            
$css.= $name.':'.$style.";".$nl;
                        }
                        
$css.= "}".$nl.$nl;
                    }
                }
            }
            return 
$css;
        }
        
        public static function 
parseArrayToCss($cssArray$nl "\n\r"){
            
$css '';
            foreach(
$cssArray as $id => $attr){
                
$styles = (array)$attr['params'];
                
$css.= $attr['handle']." {".$nl;
                if(
is_array($styles) && !empty($styles)){
                    foreach(
$styles as $name => $style){
                        if(
$name == 'background-color' && strpos($style'rgba') !== false){ //rgb && rgba
                            
$rgb explode(','str_replace('rgba''rgb'$style));
                            unset(
$rgb[count($rgb)-1]);
                            
$rgb implode(','$rgb).')';
                            
$css.= $name.':'.$rgb.";".$nl;
                        }
                        
$css.= $name.':'.$style.";".$nl;
                    }
                }
                
$css.= "}".$nl.$nl;
                
                
//add hover
                
$setting = (array)$attr['settings'];
                if(@
$setting['hover'] == 'true'){
                    
$hover = (array)$attr['hover'];
                    if(
is_array($hover)){
                        
$css.= $attr['handle'].":hover {".$nl;
                        foreach(
$hover as $name => $style){
                            if(
$name == 'background-color' && strpos($style'rgba') !== false){ //rgb && rgba
                                
$rgb explode(','str_replace('rgba''rgb'$style));
                                unset(
$rgb[count($rgb)-1]);
                                
$rgb implode(','$rgb).')';
                                
$css.= $name.':'.$rgb.";".$nl;
                            }
                            
$css.= $name.':'.$style.";".$nl;
                        }
                        
$css.= "}".$nl.$nl;
                    }
                }
            }
            return 
$css;
        }
        
        
        public static function 
parseStaticArrayToCss($cssArray$nl "\n"){
            
$css '';
            foreach(
$cssArray as $class => $styles){
                
$css.= $class." {".$nl;
                if(
is_array($styles) && !empty($styles)){
                    foreach(
$styles as $name => $style){
                        
$css.= $name.':'.$style.";".$nl;
                    }
                }
                
$css.= "}".$nl.$nl;
            }
            return 
$css;
        }
        
        public static function 
parseDbArrayToArray($cssArray$handle false){
            
            if(!
is_array($cssArray) || empty($cssArray)) return false;
            
            foreach(
$cssArray as $key => $css){
                if(
$handle != false){
                    if(
$cssArray[$key]['handle'] == '.tp-caption.'.$handle){
                        
$cssArray[$key]['params'] = json_decode(str_replace("'"'"'$css['params']));
                        
$cssArray[$key]['hover'] = json_decode(str_replace("'"'"'$css['hover']));
                        
$cssArray[$key]['settings'] = json_decode(str_replace("'"'"'$css['settings']));
                        return 
$cssArray[$key];
                    }else{
                        unset(
$cssArray[$key]);
                    }
                }else{
                    
$cssArray[$key]['params'] = json_decode(str_replace("'"'"'$css['params']));
                    
$cssArray[$key]['hover'] = json_decode(str_replace("'"'"'$css['hover']));
                    
$cssArray[$key]['settings'] = json_decode(str_replace("'"'"'$css['settings']));
                }
            }
            
            return 
$cssArray;
        }
        
        public static function 
compress_css($buffer){
            
/* remove comments */
            
$buffer preg_replace("!/\*[^*]*\*+([^/][^*]*\*+)*/!"""$buffer) ;
            
/* remove tabs, spaces, newlines, etc. */
            
$arr = array("\r\n""\r""\n""\t""  ""    ""    ");
            
$rep = array(""""""""" "" "" ");
            
$buffer str_replace($arr$rep$buffer);
            
/* remove whitespaces around {}:, */
            
$buffer preg_replace("/\s*([\{\}:,])\s*/""$1"$buffer);
            
/* remove last ; */
            
$buffer str_replace(';}'"}"$buffer);
            
            return 
$buffer;
        }
        
    }

?>

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

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

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

--[ c99shell v. 1.0 pre-release build #13 powered by Captain Crunch Security Team | http://ccteam.ru | Generation time: 0.0156 ]--