} elseif ($r->isFile()) {
        if (uploadAllowed($r->getFilename())) {
            //remove the extension to the name
            /*if (substr_count($name, '.') > 0) {
                  $name = substr($r->getFilename(), 0, strrpos($r->getFilename(), '.'));
              }*/
            echo "Uploading " . $name . " ..... ";
            $fileName = basename($r->getPathname());
            $fileSize = filesize($r->getPathname());
            $fileType = shell_exec('file -bi "' . escapeshellcmd($r->getPathname()) . '"');
            try {
                $itemId = $soap->createDocmanFile($hash, $project_id, $folderhash[$folderpath], $name, '', 'end', 100, 0, array(), array(), $fileSize, $fileName, $fileType, '', 0, $chunkSize);
                if ($itemId) {
                    $offset = 0;
                    while ($chunk = getChunk($r->getPathname(), $offset, $chunkSize)) {
                        $soap->appendDocmanFileChunk($hash, $project_id, $itemId, $chunk, $offset, $chunkSize);
                        $offset++;
                    }
                }
                $uploadedMd5 = $soap->getDocmanFileMD5sum($hash, $project_id, $itemId, 1);
                if ($uploadedMd5 !== md5_file($r->getPathname())) {
                    echo "ERROR: md5 differs" . PHP_EOL;
                } else {
                    echo "OK" . PHP_EOL;
                }
            } catch (Exception $e) {
                echo 'ERROR (' . $e->getMessage() . ')' . PHP_EOL;
            }
        }
    }
}