*/
public function path($path = ''): string
{
+ $path = trim($path, DIRECTORY_SEPARATOR);
+ $fname = false;
+ if ($path) {
+ $e = explode(DIRECTORY_SEPARATOR, $path);
+ if (stristr($e[count($e) - 1], '.')) {
+ $fname = array_pop($e);
+ $path = implode(DIRECTORY_SEPARATOR, $e);
+ }
+ }
+
$res = rtrim(self::WS_DOCS . $this->id . ($path ? DIRECTORY_SEPARATOR . ltrim($path, DIRECTORY_SEPARATOR) : $path), DIRECTORY_SEPARATOR);
if (!$path) {
$res .= DIRECTORY_SEPARATOR;
}
- return Files::mkdir($res);
+ $res = Files::mkdir($res);
+ if ($fname) {
+ $res .= $fname;
+ }
+ return $res;
}
public function hasFile($page, $format = 'jpg', $resolution = 150, $quality = 85, $withText = true, $withGraphics = true, $version = 'html', $forceCheck = false)
return false;
}
if ($format === 'svg') {
- $reffile = $this->path('/html/').'fp' . $page . '.svg';
+ $reffile = $this->path('/html/') . 'fp' . $page . '.svg';
if (!file_exists($reffile) || filemtime($path) < filemtime($reffile)) {
return false;
}
public function _getHightlightFilePath($page, $mode = 'standard')
{
$dir = $mode !== 'standard' ? $mode . '/' : '';
- return $this->path('texts/' . $dir ). 'p' . $page . '.fby';
+ return $this->path('texts/' . $dir) . 'p' . $page . '.fby';
}
public function _getTextPath($page, $type = self::TEXT_PLAIN, $mode = 'standard', $extractionMethod = 'fluidbook', $ignoreSeparators = '')
$prefix = self::_getTextFilePrefix($extractionMethod);
$dir = $mode !== 'standard' ? $mode . '/' : '';
- return $this->path('texts/' . $dir . $sepFolder ).$prefix . $type . $page . '.txt';
+ return $this->path('texts/' . $dir . $sepFolder) . $prefix . $type . $page . '.txt';
}
public function getPDFSource($type = 'crop'): string
{
- return $this->path().$type . '.pdf';
+ return $this->path() . $type . '.pdf';
}
public function cutDocument($mode)