From 8f9a2a826045145ba4c6d16f94e09da3260aaf21 Mon Sep 17 00:00:00 2001 From: davide Date: Mon, 27 Jun 2011 12:16:49 +0200 Subject: [PATCH] converting file name in utf8, rplacing umlaut and accents --- nbproject/private/private.properties | 5 +++++ nbproject/project.properties | 7 +++++++ nbproject/project.xml | 9 +++++++++ vendors/uploader.php | 16 +++++++++++++++- 4 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 nbproject/private/private.properties create mode 100644 nbproject/project.properties create mode 100644 nbproject/project.xml diff --git a/nbproject/private/private.properties b/nbproject/private/private.properties new file mode 100644 index 0000000..2d69fd5 --- /dev/null +++ b/nbproject/private/private.properties @@ -0,0 +1,5 @@ +copy.src.files=false +copy.src.target=/home/da/public_html/CakePHP-FileUpload-Plugin +index.file= +run.as=LOCAL +url=http://localhost/CakePHP-FileUpload-Plugin/ diff --git a/nbproject/project.properties b/nbproject/project.properties new file mode 100644 index 0000000..6ffde2f --- /dev/null +++ b/nbproject/project.properties @@ -0,0 +1,7 @@ +include.path=${php.global.include.path} +php.version=PHP_5 +source.encoding=UTF-8 +src.dir=. +tags.asp=false +tags.short=true +web.root=. diff --git a/nbproject/project.xml b/nbproject/project.xml new file mode 100644 index 0000000..243ac48 --- /dev/null +++ b/nbproject/project.xml @@ -0,0 +1,9 @@ + + + org.netbeans.modules.php.project + + + CakePHP-FileUpload-Plugin + + + diff --git a/vendors/uploader.php b/vendors/uploader.php index 39f7205..131adb9 100644 --- a/vendors/uploader.php +++ b/vendors/uploader.php @@ -136,7 +136,8 @@ function processFile($file = null){ //if callback returns false hault the upload if(!$fileName){ return false; - } + } + $fileName = $this->clearUTF($fileName); $target_path = $up_dir . DS . $fileName; $target_path = $this->__handleUnique($target_path); @@ -343,5 +344,18 @@ function _multiArrayKeyExists($needle, $haystack) { return false; } + function clearUTF($s){ + setlocale(LC_ALL, 'en_US.UTF8'); + $r = ''; + $s1 = iconv('UTF-8', 'ASCII//TRANSLIT', $s); + for ($i = 0; $i < strlen($s1); $i++){ + $ch1 = $s1[$i]; + $ch2 = mb_substr($s, $i, 1); + + $r .= $ch1=='?'?$ch2:$ch1; + } + return $r; + } + } ?>