1
1
mirror of https://github.com/pterodactyl/panel.git synced 2024-11-23 01:22:30 +01:00

Merge pull request #1146 from pterodactyl/feature/windows-pathinfo-support

Add support for Windows, replace all backslashes with forwardslashes
This commit is contained in:
Dane Everitt 2018-05-20 16:24:58 -07:00 committed by GitHub
commit 002efddc96
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 5 deletions

View File

@ -101,7 +101,7 @@ class FileActionsController extends Controller
{
$server = $request->attributes->get('server');
$dirname = pathinfo($file, PATHINFO_DIRNAME);
$dirname = str_replace('\\', '/', pathinfo($file, PATHINFO_DIRNAME));
try {
$content = $this->repository->setServer($server)->setToken($request->attributes->get('server_token'))->getContent($file);
} catch (RequestException $exception) {

View File

@ -18,7 +18,7 @@ class FileRepository extends BaseRepository implements FileRepositoryInterface
*/
public function getFileStat(string $path): stdClass
{
$file = pathinfo($path);
$file = str_replace('\\', '/', pathinfo($path));
$file['dirname'] = in_array($file['dirname'], ['.', './', '/']) ? null : trim($file['dirname'], '/') . '/';
$response = $this->getHttpClient()->request('GET', sprintf(
@ -39,7 +39,7 @@ class FileRepository extends BaseRepository implements FileRepositoryInterface
*/
public function getContent(string $path): string
{
$file = pathinfo($path);
$file = str_replace('\\', '/', pathinfo($path));
$file['dirname'] = in_array($file['dirname'], ['.', './', '/']) ? null : trim($file['dirname'], '/') . '/';
$response = $this->getHttpClient()->request('GET', sprintf(
@ -61,7 +61,7 @@ class FileRepository extends BaseRepository implements FileRepositoryInterface
*/
public function putContent(string $path, string $content): ResponseInterface
{
$file = pathinfo($path);
$file = str_replace('\\', '/', pathinfo($path));
$file['dirname'] = in_array($file['dirname'], ['.', './', '/']) ? null : trim($file['dirname'], '/') . '/';
return $this->getHttpClient()->request('POST', 'server/file/save', [
@ -100,7 +100,7 @@ class FileRepository extends BaseRepository implements FileRepositoryInterface
array_push($files, [
'entry' => $value->name,
'directory' => trim($path, '/'),
'extension' => pathinfo($value->name, PATHINFO_EXTENSION),
'extension' => str_replace('\\', '/', pathinfo($value->name, PATHINFO_EXTENSION)),
'size' => human_readable($value->size),
'date' => strtotime($value->modified),
'mime' => $value->mime,