19 declare(strict_types=1);
23 protected function isDAVableObjTitle(
string $title): bool
25 return !$this->hasTitleForbiddenChars($title) && !$this->isHiddenFile($title);
28 protected function hasTitleForbiddenChars(
string $title): bool
30 foreach (str_split(
'\\<>/:*?"|#') as $forbidden_character) {
31 if (str_contains($title, $forbidden_character)) {
39 protected function isHiddenFile(
string $title): bool
41 $prefix = substr($title, 0, 1);
42 return $prefix ===
'.';
45 protected function hasValidFileExtension(
string $title): bool
static getValidFilename(string $a_filename)