Commit Graph

32 Commits

Author SHA1 Message Date
nao-pon f3c1ef2a1d [php:plugins] fix notice error 2016-07-28 17:35:17 +09:00
Peter Dave Hello b380f0b69b optimize png images using zopflipng 2016-07-11 15:05:56 +08:00
nao-pon 1a579a0523 [plugin:Sanitizer] fix correction omission of #1310
ref. commit 0b88031f5fc24fa79b7ddee31f788dc4c1239
2016-07-06 13:57:50 +09:00
nao-pon e88048a205 [php] add PHP error handler and remove @ error-control operator 2016-05-13 17:13:31 +09:00
nao-pon ace042da88 [php:plugin:AutoResize] use elFinderVolumeDriver::imageUtil() 2016-04-30 15:51:02 +09:00
nao-pon 4210b88031 [plugin:Normalizer,Sanitizer] fix #1310 support duplicate check by cmd:ls 2016-04-05 18:32:56 +09:00
nao-pon 6407c4f9a9 [plugin:Normalizer] order change of filter, strtolower moved to end
And use `mb_strtolower` if it exists.

ref. #1307
2016-04-04 21:23:58 +09:00
nao-pon f02e3c4cf5 [php:plugin] Add a new connector plugin "AutoRotate" 2016-04-01 17:24:57 +09:00
nao-pon 54bea258f7 [plugin:AutoResize,Watermark] fix notice error 2016-01-24 00:11:03 +09:00
nao-pon 53abae10c8 [php:plugin:AutoResize] fix #1175 and new option preserveExif
`preserveExif`: Preserve EXIF data (Imagick only). default is `false`
2016-01-04 23:35:00 +09:00
nao-pon 171f5c6eb5 [plugin:Normalizer] add option (array) convmap
example
```php
'plugin' => array(
	'Normalizer' => array(
		'convmap' => array(
			' ' => '_',
			'ä' => 'a',
			'ả' => 'a',
			'ê' => 'e',
			'ề' => 'e',
			'ì' => 'i',
			'ö' => 'o',
			'ơ' => 'o',
			'ư' => 'u'
		)
	)
)
```
2015-12-25 16:07:08 +09:00
nao-pon aa58030bf7 [php] fix #1162 to set false to second param of class_exists() 2015-12-11 21:57:14 +09:00
nao-pon 4d93930f94 [cmd:upload] confirm at uploading of same name file exists
fixes #468
2015-11-30 23:13:19 +09:00
nao-pon 33953b49d3 [plugin:normalizer] optimization of main process 2015-11-21 23:02:31 +09:00
Erwin aad06d0aa9 Uploading NewDir/NewFile.JPG with chrome
Uploading NewDir/NewFile.JPG with chrome (Chrome is possible folder upload)
Both $name and $path will be made lowercase.
2015-11-20 08:35:45 +01:00
Erwin 75e327039f Plugin Normalizer option: make filename lowercase
I prefer making de filename lowercase always. I propose a pull request to have it build in the plugin code in that way, that the user can decide tot turn the option on or off.
Default: off.
2015-11-20 00:46:58 +01:00
nao-pon ceef1b6813 [plugin:Watermark] use elFinder::isAnimationGif() 2015-07-22 17:19:59 +09:00
nao-pon dd31b3d236 [php:plugin:Watermark] It isn't applied to Animation GIF 2015-07-21 22:02:54 +09:00
nao-pon ebe70baac2 named archiving, extract to new folder or cwd
see #1029 Archive name on creation & Extract in other directory
2015-06-12 20:49:10 +09:00
nao-pon 6cb76dbfd2 [php.plugin] add usage comments (AutoResize,Watermark) 2014-11-24 09:33:25 +09:00
nao-pon fd2db95d04 [php:plugin:Sanitizer] fix folder upload 2014-01-19 20:08:13 +09:00
nao-pon e813ac906a [php:plugin:Sanitizer] fix typo (Fatal error) 2014-01-15 23:26:24 +09:00
nao-pon 670f4d217c [php:plugin:Sanitizer] "Null character" is removed by input checking
ref. @8005f9b0 [php:connector] Remove null & stripslashes applies on "magic_quotes_gpc"
2014-01-15 20:35:34 +09:00
nao-pon 058027f032 [php:plugin] add plugin Sanitizer 2014-01-15 15:00:20 +09:00
nao-pon 493b362afb [php:plugin] edit class comment of Normalizer 2014-01-15 14:56:11 +09:00
nao-pon d983672311 [coonector] add new plugin "Normalizer"
elFinder Plugin Normalizer

UTF-8 Normalizer of file-name and file-path etc.
nfc(NFC): Canonical Decomposition followed by Canonical Composition
nfkc(NFKC): Compatibility Decomposition followed by Canonical

This plugin require Class "Normalizer" (PHP 5 >= 5.3.0, PECL intl >= 1.0.0)
or PEAR package "I18N_UnicodeNormalizer"

ex. binding, configure on connector options

```php
$opts = array(
	'bind' => array(
		'mkdir.pre mkfile.pre rename.pre' => 'Plugin.Normalizer.cmdPreprocess',
		'upload.presave' => array(
			'Plugin.Normalizer.onUpLoadPreSave'
		)
	),
	// global configure (optional)
	'plugin' => array(
		'Normalizer' = array(
			'enable' => true,
			'nfc'    => true,
			'nfkc'   => true
		)
	),
	// each volume configure (optional)
	'roots' => array(
		array(
			'driver' => 'LocalFileSystem',
			'path'   => '/path/to/files/',
			'URL'    => 'http://localhost/to/files/'
			'plugin' => array(
				'Normalizer' = array(
					'enable' => true,
					'nfc'    => true,
					'nfkc'   => true
				)
			)
		)
	)
);
```
2013-07-18 22:51:43 +09:00
nao-pon fe5489eec8 [plugin:AutoResize] add new plugin "AutoResize"
# Connector configuration options

```php
$opts = array(
	'roots'	 => array(
		 array(
			'driver' => 'LocalFileSystem',
			'path'	 => '/path/to/files/',
			'URL'	 => 'http://localhost/to/files/',
			'plugin' => array(
				/* optional, this volume values are */
				'AutoResize' => array(
					'enable'		 => true,		// For control by volume driver
					'maxWidth'		 => 1024,		// Path to Water mark image
					'maxHeight'		 => 1024,		// Margin right pixel
					'quality'		 => 95,			// JPEG image save quality
					'targetType'	 => IMG_GIF|IMG_JPG|IMG_PNG|IMG_WBMP
											   // Target image formats ( bit-field )
				),
			),
	),
	'bind'	 => array(
		/* regist action, require */
		'upload.presave' => array(
			'Plugin.AutoResize.onUpLoadPreSave'
		),
	),
	'plugin' => array(
		/* optional, All volume's default values are */
		'AutoResize' => array(
			'enable'		 => true,		// For control by volume driver
			'maxWidth'		 => 1024,		// Path to Water mark image
			'maxHeight'		 => 1024,		// Margin right pixel
			'quality'		 => 95,			// JPEG image save quality
			'targetType'	 => IMG_GIF|IMG_JPG|IMG_PNG|IMG_WBMP
									   // Target image formats ( bit-field )
		),
	),
);
$connector = new elFinderConnector(new xelFinder($opts), true);
$connector->run();
```

# Connector configuration options(enable AutoResize & Watermark with default)

```php
$opts = array(
	'roots'	 => array(
		 array(
			'driver' => 'LocalFileSystem',
			'path'	 => '/path/to/files/',
			'URL'	 => 'http://localhost/to/files/',
	),
	'bind'	 => array(
		/* regist action, require */
		'upload.presave' => array(
			'Plugin.AutoResize.onUpLoadPreSave', // Do 1st
			'Plugin.Watermark.onUpLoadPreSave'   // Do 2nd
		),
	),
);
$connector = new elFinderConnector(new xelFinder($opts), true);
$connector->run();
```
2013-07-15 21:32:27 +09:00
nao-pon 34a97ead72 [plugin:Watermark] support class "Imagick" 2013-07-15 21:21:21 +09:00
nao-pon 3c4cbbee2c [plugin:Watermark] fix volume driver options plugin-Watermark-source 2013-07-14 18:29:41 +09:00
nao-pon afcc1e11b7 [plugin:Watermark] support volume driver option "plugin"
# Connector configuration options

$opts = array(
    'roots'  => array(
         array(
            'driver' => 'LocalFileSystem',
            'path'   => '/path/to/files/',
            'URL'    => 'http://localhost/to/files/',
            'plugin' => array(
                /* optional, this volume values are */
                'Watermark' => array(
                    'enable'         => true,       // For control by volume driver
                    'source'         => 'logo.png', // Path to Water mark image
                    'marginRight'    => 5,          // Margin right pixel
                    'marginBottom'   => 5,          // Margin bottom pixel
                    'quality'        => 90,         // JPEG image save quality
                    'transparency'   => 90, // Water mark image transparency
                                            // ( other than PNG )
                    'targetType'     => IMG_GIF|IMG_JPG|IMG_PNG|IMG_WBMP,
                                        // Target image formats ( bit-field )
                    'targetMinPixel' => 200         // Target image minimum 
                                                    // pixel size
                ),
            ),
    ),
    'bind'   => array(
        /* regist action, require */
        'upload.presave' => 'Plugin.Watermark.onUpLoadPreSave',
    ),
    'plugin' => array(
        /* optional, All volume's default values are */
        'Watermark' => array(
            'enable'         => true,       // For control by volume driver
            'source'         => 'logo.png', // Path to Water mark image
            'marginRight'    => 5,          // Margin right pixel
            'marginBottom'   => 5,          // Margin bottom pixel
            'quality'        => 90,         // JPEG image save quality
            'transparency'   => 90, // Water mark image transparency
                                    // ( other than PNG )
            'targetType'     => IMG_GIF|IMG_JPG|IMG_PNG|IMG_WBMP,
                                // Target image formats ( bit-field )
            'targetMinPixel' => 200         // Target image minimum 
                                            // pixel size
        ),
    ),
);
$connector = new elFinderConnector(new xelFinder($opts), true);
$connector->run();
2013-07-14 16:18:55 +09:00
nao-pon 99b968a0d3 [plugin:Watermark] fix PNG blending 2013-07-14 01:51:12 +09:00
nao-pon 04d55c87a5 add watermark plugin
# Connector configuration options

$opts = array(
	'roots'  => array(...),
	'bind'   => array(
		/* regist action, require */
		'upload.presave' => 'Plugin.Watermark.onUpLoadPreSave',
	),
	'plugin' => array(
		/* optional, default values are */
		'Watermark' => array(
			'source'         => 'logo.png', // Path to Water mark image
			'marginRight'    => 5,          // Margin right pixel
			'marginBottom'   => 5,          // Margin bottom pixel
			'quality'        => 90,         // JPEG image save quality
			'transparency'   => 90, // Water mark image transparency
			                        // ( other than PNG )
			'targetType'     => IMG_GIF|IMG_JPG|IMG_PNG|IMG_WBMP,
			                    // Target image formats ( bit-field )
			'targetMinPixel' => 200         // Target image minimum 
			                                // pixel size
		),
	),
);
$connector = new elFinderConnector(new xelFinder($opts), true);
$connector->run();
2013-07-13 20:32:43 +09:00