Skip to content
This repository has been archived by the owner on Dec 5, 2019. It is now read-only.

Coding style updates #264

Merged
merged 2 commits into from Dec 30, 2015
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
153 changes: 78 additions & 75 deletions lessc.inc.php
@@ -1,20 +1,18 @@
<?php
/**
*
* This file provides the part of lessphp API (https://github.com/leafo/lessphp)
* to be a drop-in replacement for following products:
* - Drupal 7, by the less module v3.0+ (https://drupal.org/project/less)
* - Symfony 2
*
*/

// Register autoloader for non-composer installations
if (!class_exists('Less_Parser')) {
require_once dirname(__FILE__).'/lib/Less/Autoloader.php';
if ( !class_exists( 'Less_Parser' ) ) {
require_once __DIR__ . '/lib/Less/Autoloader.php';
Less_Autoloader::register();
}

class lessc{
class lessc {

static public $VERSION = Less_Version::less_version;

Expand All @@ -24,156 +22,161 @@ class lessc{
protected $registeredVars = array();
private $formatterName;

public function __construct($lessc=null, $sourceName=null) {}
public function __construct( $lessc=null, $sourceName=null ) {}

public function setImportDir($dirs) {
public function setImportDir( $dirs ) {
$this->importDir = (array)$dirs;
}

public function addImportDir($dir){
public function addImportDir( $dir ) {
$this->importDir = (array)$this->importDir;
$this->importDir[] = $dir;
}

public function setFormatter($name)
{
public function setFormatter( $name ) {
$this->formatterName = $name;
}

public function setPreserveComments($preserve) {}
public function registerFunction($name, $func) {
public function setPreserveComments( $preserve ) {}

public function registerFunction( $name, $func ) {
$this->libFunctions[$name] = $func;
}
public function unregisterFunction($name) {
unset($this->libFunctions[$name]);

public function unregisterFunction( $name ) {
unset( $this->libFunctions[$name] );
}

public function setVariables($variables){
foreach( $variables as $name => $value ){
public function setVariables( $variables ){
foreach ( $variables as $name => $value ) {
$this->setVariable( $name, $value );
}
}

public function setVariable($name, $value){
public function setVariable( $name, $value ) {
$this->registeredVars[$name] = $value;
}

public function unsetVariable($name){
public function unsetVariable( $name ) {
unset( $this->registeredVars[$name] );
}

public function setOptions($options){
foreach( $options as $name => $value ){
public function setOptions( $options ) {
foreach ( $options as $name => $value ) {
$this->setOption( $name, $value);
}
}

public function setOption($name, $value){
public function setOption( $name, $value ) {
$this->options[$name] = $value;
}

public function parse($buffer, $presets = array()){
public function parse( $buffer, $presets = array() ) {

$this->setVariables($presets);
$this->setVariables( $presets );

$parser = new Less_Parser($this->getOptions());
$parser->setImportDirs($this->getImportDirs());
foreach ($this->libFunctions as $name => $func) {
$parser->registerFunction($name, $func);
$parser = new Less_Parser( $this->getOptions() );
$parser->setImportDirs( $this->getImportDirs() );
foreach ( $this->libFunctions as $name => $func ) {
$parser->registerFunction( $name, $func );
}
$parser->parse($buffer);
if( count( $this->registeredVars ) ) $parser->ModifyVars( $this->registeredVars );
if ( count( $this->registeredVars ) ) {
$parser->ModifyVars( $this->registeredVars );
}

return $parser->getCss();
}

protected function getOptions(){
$options = array('relativeUrls'=>false);
switch($this->formatterName){
protected function getOptions() {
$options = array( 'relativeUrls'=>false );
switch( $this->formatterName ) {
case 'compressed':
$options['compress'] = true;
break;
}
return $options;
}

protected function getImportDirs(){
protected function getImportDirs() {
$dirs_ = (array)$this->importDir;
$dirs = array();
foreach($dirs_ as $dir) {
foreach ( $dirs_ as $dir ) {
$dirs[$dir] = '';
}
return $dirs;
}

public function compile($string, $name = null){
public function compile( $string, $name = null ) {

$oldImport = $this->importDir;
$this->importDir = (array)$this->importDir;

$this->allParsedFiles = array();

$parser = new Less_Parser($this->getOptions());
$parser->SetImportDirs($this->getImportDirs());
if( count( $this->registeredVars ) ){
$parser = new Less_Parser( $this->getOptions() );
$parser->SetImportDirs( $this->getImportDirs() );
if ( count( $this->registeredVars ) ) {
$parser->ModifyVars( $this->registeredVars );
}
foreach ($this->libFunctions as $name => $func) {
$parser->registerFunction($name, $func);
foreach ( $this->libFunctions as $name => $func ) {
$parser->registerFunction( $name, $func );
}
$parser->parse($string);
$parser->parse( $string );
$out = $parser->getCss();

$parsed = Less_Parser::AllParsedFiles();
foreach( $parsed as $file ){
$this->addParsedFile($file);
foreach ( $parsed as $file ) {
$this->addParsedFile( $file );
}

$this->importDir = $oldImport;

return $out;
}

public function compileFile($fname, $outFname = null) {
if (!is_readable($fname)) {
throw new Exception('load error: failed to find '.$fname);
public function compileFile( $fname, $outFname = null ) {
if ( !is_readable( $fname ) ) {
throw new Exception( 'load error: failed to find '.$fname );
}

$pi = pathinfo($fname);
$pi = pathinfo( $fname );

$oldImport = $this->importDir;

$this->importDir = (array)$this->importDir;
$this->importDir[] = realpath($pi['dirname']).'/';
$this->importDir[] = realpath( $pi['dirname'] ).'/';

$this->allParsedFiles = array();
$this->addParsedFile($fname);
$this->addParsedFile( $fname );

$parser = new Less_Parser($this->getOptions());
$parser->SetImportDirs($this->getImportDirs());
if( count( $this->registeredVars ) ) $parser->ModifyVars( $this->registeredVars );
foreach ($this->libFunctions as $name => $func) {
$parser->registerFunction($name, $func);
$parser = new Less_Parser( $this->getOptions() );
$parser->SetImportDirs( $this->getImportDirs() );
if ( count( $this->registeredVars ) ) {
$parser->ModifyVars( $this->registeredVars );
}
foreach ( $this->libFunctions as $name => $func ) {
$parser->registerFunction( $name, $func );
}
$parser->parseFile($fname);
$parser->parseFile( $fname );
$out = $parser->getCss();

$parsed = Less_Parser::AllParsedFiles();
foreach ($parsed as $file) {
$this->addParsedFile($file);
foreach ( $parsed as $file ) {
$this->addParsedFile( $file );
}

$this->importDir = $oldImport;

if ($outFname !== null) {
return file_put_contents($outFname, $out);
if ( $outFname !== null ) {
return file_put_contents( $outFname, $out );
}

return $out;
}

public function checkedCompile($in, $out) {
if (!is_file($out) || filemtime($in) > filemtime($out)) {
public function checkedCompile( $in, $out ) {
if ( !is_file( $out ) || filemtime( $in ) > filemtime( $out ) ) {
$this->compileFile($in, $out);
return true;
}
Expand Down Expand Up @@ -201,21 +204,21 @@ public function checkedCompile($in, $out) {
* @param bool $force Force rebuild?
* @return array lessphp cache structure
*/
public function cachedCompile($in, $force = false) {
public function cachedCompile( $in, $force = false ) {
// assume no root
$root = null;

if (is_string($in)) {
if ( is_string( $in ) ) {
$root = $in;
} elseif (is_array($in) and isset($in['root'])) {
if ($force or ! isset($in['files'])) {
} elseif ( is_array( $in ) and isset( $in['root'] ) ) {
if ( $force or ! isset( $in['files'] ) ) {
// If we are forcing a recompile or if for some reason the
// structure does not contain any file information we should
// specify the root to trigger a rebuild.
$root = $in['root'];
} elseif (isset($in['files']) and is_array($in['files'])) {
foreach ($in['files'] as $fname => $ftime ) {
if (!file_exists($fname) or filemtime($fname) > $ftime) {
} elseif ( isset( $in['files'] ) and is_array( $in['files'] ) ) {
foreach ( $in['files'] as $fname => $ftime ) {
if ( !file_exists( $fname ) or filemtime( $fname ) > $ftime ) {
// One of the files we knew about previously has changed
// so we should look at our incoming root again.
$root = $in['root'];
Expand All @@ -229,7 +232,7 @@ public function cachedCompile($in, $force = false) {
return null;
}

if ($root !== null) {
if ( $root !== null ) {
// If we have a root value which means we should rebuild.
$out = array();
$out['root'] = $root;
Expand All @@ -244,15 +247,15 @@ public function cachedCompile($in, $force = false) {
}
}

public function ccompile( $in, $out, $less = null) {
if ($less === null) {
public function ccompile( $in, $out, $less = null ) {
if ( $less === null ) {
$less = new self;
}
return $less->checkedCompile($in, $out);
return $less->checkedCompile( $in, $out );
}

public static function cexecute($in, $force = false, $less = null) {
if ($less === null) {
public static function cexecute( $in, $force = false, $less = null ) {
if ( $less === null ) {
$less = new self;
}
return $less->cachedCompile($in, $force);
Expand All @@ -262,7 +265,7 @@ public function allParsedFiles() {
return $this->allParsedFiles;
}

protected function addParsedFile($file) {
$this->allParsedFiles[realpath($file)] = filemtime($file);
protected function addParsedFile( $file ) {
$this->allParsedFiles[realpath( $file )] = filemtime( $file );
}
}