diff --git a/Admin/Install/Navigation.install.json b/Admin/Install/Navigation.install.json index 4be7261..09981b7 100755 --- a/Admin/Install/Navigation.install.json +++ b/Admin/Install/Navigation.install.json @@ -5,7 +5,7 @@ "type": 2, "subtype": 1, "name": "QA", - "uri": "{/base}/qa/dashboard?{?}", + "uri": "{/base}/qa/dashboard", "target": "self", "icon": null, "order": 50, @@ -19,7 +19,7 @@ "type": 3, "subtype": 1, "name": "QA", - "uri": "{/base}/qa/dashboard?{?}", + "uri": "{/base}/qa/dashboard", "target": "self", "icon": null, "order": 1, @@ -34,7 +34,7 @@ "type": 3, "subtype": 1, "name": "Create", - "uri": "{/base}/qa/question/create?{?}", + "uri": "{/base}/qa/question/create", "target": "self", "icon": null, "order": 5, @@ -49,7 +49,7 @@ "type": 3, "subtype": 1, "name": "Apps", - "uri": "{/base}/qa/app/list?{?}", + "uri": "{/base}/qa/app/list", "target": "self", "icon": null, "order": 20, diff --git a/Admin/Routes/Web/Backend.php b/Admin/Routes/Web/Backend.php index d28993f..29c1d66 100755 --- a/Admin/Routes/Web/Backend.php +++ b/Admin/Routes/Web/Backend.php @@ -54,7 +54,7 @@ return [ ], ], ], - '^/qa/question(\?.*$|$)' => [ + '^/qa/question/view(\?.*$|$)' => [ [ 'dest' => '\Modules\QA\Controller\BackendController:viewQADoc', 'verb' => RouteVerb::GET, diff --git a/Controller/ApiController.php b/Controller/ApiController.php index 70d0685..4dbb763 100755 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -189,17 +189,18 @@ final class ApiController extends Controller $question->tags = $this->app->moduleManager->get('Tag', 'Api')->createTagsFromRequest($request); } - if (!empty($uploadedFiles = $request->files)) { + // @todo implement subfolders + if (!empty($request->files)) { $uploaded = $this->app->moduleManager->get('Media', 'Api')->uploadFiles( - [], - [], - $uploadedFiles, - $request->header->account, - __DIR__ . '/../../../Modules/Media/Files/Modules/QA', - '/Modules/QA', + names: [], + fileNames: [], + files: $request->files, + account: $request->header->account, + basePath: __DIR__ . '/../../../Modules/Media/Files/Modules/QA', + virtualPath: '/Modules/QA', ); - foreach ($uploaded as $media) { + foreach ($uploaded->sources as $media) { $question->files[] = $media; } } @@ -287,14 +288,15 @@ final class ApiController extends Controller $answer->status = QAAnswerStatus::tryFromValue($request->getDataInt('status')) ?? QAAnswerStatus::ACTIVE; $answer->createdBy = new Profile(new NullAccount($request->header->account)); - if (!empty($uploadedFiles = $request->files)) { + // @todo Implement subdirectories + if (!empty($request->files)) { $uploaded = $this->app->moduleManager->get('Media', 'Api')->uploadFiles( - [], - [], - $uploadedFiles, - $request->header->account, - __DIR__ . '/../../../Modules/Media/Files/Modules/QA', - '/Modules/QA', + names: [], + fileNames: [], + files: $request->files, + account: $request->header->account, + basePath: __DIR__ . '/../../../Modules/Media/Files/Modules/QA', + virtualPath: '/Modules/QA', ); foreach ($uploaded as $media) { diff --git a/Theme/Backend/qa-dashboard.tpl.php b/Theme/Backend/qa-dashboard.tpl.php index f154373..40ff023 100755 --- a/Theme/Backend/qa-dashboard.tpl.php +++ b/Theme/Backend/qa-dashboard.tpl.php @@ -14,16 +14,16 @@ declare(strict_types=1); use phpOMS\Uri\UriFactory; -/** @var \Modules\QA\Modles\QAQuestion[] $questions */ +/** @var \Modules\QA\Modules\QAQuestion[] $questions */ $questions = $this->data['questions']; -/** @var \Modules\QA\Modles\QAApp[] $apps */ +/** @var \Modules\QA\Modules\QAApp[] $apps */ $apps = $this->data['apps']; echo $this->data['nav']->render(); ?>
@@ -59,7 +59,7 @@ echo $this->data['nav']->render(); ?> tags as $tag) : if ($tag->id === 0) { continue; } ?> - + = empty($tag->icon) ? '' : '' . $this->printHtml($tag->icon) . ''; ?> = $this->printHtml($tag->getL11n()); ?> diff --git a/Theme/Backend/qa-question.tpl.php b/Theme/Backend/qa-question.tpl.php index 09fa236..2f52c7e 100755 --- a/Theme/Backend/qa-question.tpl.php +++ b/Theme/Backend/qa-question.tpl.php @@ -82,7 +82,7 @@ echo $this->data['nav']->render(); foreach ($question->tags as $tag) : if ($tag->id === 0) { continue; } ?> - + = empty($tag->icon) ? '' : '' . $this->printHtml($tag->icon) . ''; ?> = $this->printHtml($tag->getL11n()); ?>