mirror of
https://github.com/Karaka-Management/oms-Knowledgebase.git
synced 2026-01-29 09:38:41 +00:00
started with template fixes
This commit is contained in:
parent
1024e70062
commit
1ff035534b
|
|
@ -86,8 +86,7 @@
|
|||
"from": "Knowledgebase",
|
||||
"permission": { "permission": 4, "category": null, "element": null },
|
||||
"parent": 1005901001,
|
||||
"children": [],
|
||||
"status": 3
|
||||
"children": []
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiDocCreate',
|
||||
'verb' => RouteVerb::PUT,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::CREATE,
|
||||
|
|
@ -31,6 +32,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiDocUpdate',
|
||||
'verb' => RouteVerb::SET,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::MODIFY,
|
||||
|
|
@ -40,6 +42,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiDocGet',
|
||||
'verb' => RouteVerb::GET,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::READ,
|
||||
|
|
@ -49,6 +52,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiDocDelete',
|
||||
'verb' => RouteVerb::DELETE,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::DELETE,
|
||||
|
|
@ -61,6 +65,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiCategoryCreate',
|
||||
'verb' => RouteVerb::PUT,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::CREATE,
|
||||
|
|
@ -70,6 +75,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiCategoryUpdate',
|
||||
'verb' => RouteVerb::SET,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::MODIFY,
|
||||
|
|
@ -79,6 +85,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiCategoryGet',
|
||||
'verb' => RouteVerb::GET,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::READ,
|
||||
|
|
@ -88,6 +95,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiCategoryDelete',
|
||||
'verb' => RouteVerb::DELETE,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::DELETE,
|
||||
|
|
@ -100,6 +108,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiAppCreate',
|
||||
'verb' => RouteVerb::PUT,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::CREATE,
|
||||
|
|
@ -109,6 +118,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiAppUpdate',
|
||||
'verb' => RouteVerb::SET,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::MODIFY,
|
||||
|
|
@ -118,6 +128,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiAppGet',
|
||||
'verb' => RouteVerb::GET,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::READ,
|
||||
|
|
@ -127,6 +138,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiAppDelete',
|
||||
'verb' => RouteVerb::DELETE,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::DELETE,
|
||||
|
|
@ -139,6 +151,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiCategoryL11nCreate',
|
||||
'verb' => RouteVerb::PUT,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::READ,
|
||||
|
|
@ -148,6 +161,7 @@ return [
|
|||
[
|
||||
'dest' => '\Modules\Knowledgebase\Controller\ApiController:apiWikiCategoryL11nUpdate',
|
||||
'verb' => RouteVerb::SET,
|
||||
'csrf' => true,
|
||||
'permission' => [
|
||||
'module' => ApiController::NAME,
|
||||
'type' => PermissionType::READ,
|
||||
|
|
|
|||
|
|
@ -127,7 +127,7 @@ return [
|
|||
'permission' => [
|
||||
'module' => BackendController::NAME,
|
||||
'type' => PermissionType::READ,
|
||||
'state' => PermissionCategory::CATEGORY,
|
||||
'state' => PermissionCategory::APP,
|
||||
],
|
||||
],
|
||||
],
|
||||
|
|
@ -138,7 +138,7 @@ return [
|
|||
'permission' => [
|
||||
'module' => BackendController::NAME,
|
||||
'type' => PermissionType::READ,
|
||||
'state' => PermissionCategory::CATEGORY,
|
||||
'state' => PermissionCategory::APP,
|
||||
],
|
||||
],
|
||||
],
|
||||
|
|
@ -149,7 +149,7 @@ return [
|
|||
'permission' => [
|
||||
'module' => BackendController::NAME,
|
||||
'type' => PermissionType::CREATE,
|
||||
'state' => PermissionCategory::CATEGORY,
|
||||
'state' => PermissionCategory::APP,
|
||||
],
|
||||
],
|
||||
],
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ use Modules\Knowledgebase\Models\NullWikiApp;
|
|||
use Modules\Knowledgebase\Models\NullWikiCategory;
|
||||
use Modules\Knowledgebase\Models\NullWikiDoc;
|
||||
use Modules\Knowledgebase\Models\PermissionCategory;
|
||||
use Modules\Knowledgebase\Models\WikiApp;
|
||||
use Modules\Knowledgebase\Models\WikiAppMapper;
|
||||
use Modules\Knowledgebase\Models\WikiCategoryL11nMapper;
|
||||
use Modules\Knowledgebase\Models\WikiCategoryMapper;
|
||||
|
|
@ -260,6 +261,19 @@ final class BackendController extends Controller
|
|||
|
||||
$view->data['l11nValues'] = $l11nValues;
|
||||
|
||||
$view->data['apps'] = WikiAppMapper::getAll()
|
||||
->where('unit', [$this->app->unitId, null])
|
||||
->executeGetArray();
|
||||
|
||||
$appIds = \array_map(function (WikiApp $app) { return $app->id; }, $view->data['apps']);
|
||||
$appIds = \array_unique($appIds);
|
||||
|
||||
$view->data['parents'] = WikiCategoryMapper::getAll()
|
||||
->with('name')
|
||||
->where('app', $appIds)
|
||||
->where('name/language', $request->header->l11n->language)
|
||||
->executeGetArray();
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
|
|
@ -278,11 +292,24 @@ final class BackendController extends Controller
|
|||
public function viewKnowledgebaseCategoryCreate(RequestAbstract $request, ResponseAbstract $response, array $data = []) : RenderableInterface
|
||||
{
|
||||
$view = new View($this->app->l11nManager, $request, $response);
|
||||
$view->setTemplate('/Modules/Knowledgebase/Theme/Backend/wiki-category-create');
|
||||
$view->setTemplate('/Modules/Knowledgebase/Theme/Backend/wiki-category-view');
|
||||
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1005901001, $request, $response);
|
||||
|
||||
$view->data['category'] = new NullWikiCategory();
|
||||
|
||||
$view->data['apps'] = WikiAppMapper::getAll()
|
||||
->where('unit', [$this->app->unitId, null])
|
||||
->executeGetArray();
|
||||
|
||||
$appIds = \array_map(function (WikiApp $app) { return $app->id; }, $view->data['apps']);
|
||||
$appIds = \array_unique($appIds);
|
||||
|
||||
$view->data['parents'] = WikiCategoryMapper::getAll()
|
||||
->with('name')
|
||||
->where('app', $appIds)
|
||||
->where('name/language', $request->header->l11n->language)
|
||||
->executeGetArray();
|
||||
|
||||
return $view;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ final class NullWikiCategory extends WikiCategory
|
|||
public function __construct(int $id = 0)
|
||||
{
|
||||
$this->id = $id;
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -12,16 +12,69 @@
|
|||
*/
|
||||
declare(strict_types=1);
|
||||
|
||||
use phpOMS\Uri\UriFactory;
|
||||
|
||||
/** @var \Modules\Knowledgebase\Models\WikiCategory */
|
||||
$category = $this->data['category'];
|
||||
|
||||
$isNew = $category->id === 0;
|
||||
|
||||
/** @var \phpOMS\Views\View $this */
|
||||
echo $this->data['nav']->render(); ?>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-md-6">
|
||||
<section class="portlet">
|
||||
<form method="<?= $isNew ? 'PUT' : 'POST'; ?>" action="<?= UriFactory::build('{/api}wiki/category?csrf={$CSRF}'); ?>">
|
||||
<div class="portlet-head"><?= $this->getHtml('Category'); ?></div>
|
||||
<div class="portlet-body">
|
||||
<div class="form-group">
|
||||
<label for="iId"><?= $this->getHtml('ID', '0', '0'); ?></label>
|
||||
<input type="text" name="id" id="iId" value="<?= $category->id; ?>" disabled>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="iName"><?= $this->getHtml('Name'); ?></label>
|
||||
<input type="text" name="name" id="iName" value="<?= $this->printHtml($category->getL11n()); ?>"<?= $isNew ? '' : ' disabled'; ?>>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="iApp"><?= $this->getHtml('App'); ?></label>
|
||||
<select name="app" id="iApp">
|
||||
<?php foreach ($this->data['apps'] as $app) : ?>
|
||||
<option value="<?= $app->id; ?>"<?= $app->id === $category->app->id ? ' selected': ''; ?>><?= $this->printHtml($app->name); ?>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="iParent"><?= $this->getHtml('Parent'); ?></label>
|
||||
<select name="parent" id="iParent">
|
||||
<?php foreach ($this->data['parents'] as $parent) : ?>
|
||||
<option value="<?= $parent->id; ?>"<?= $parent->id === $category->parent?->id ? ' selected': ''; ?>><?= $this->printHtml($parent->getL11n()); ?>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="portlet-foot">
|
||||
<?php if ($isNew) : ?>
|
||||
<input id="iCreateSubmit" type="Submit" value="<?= $this->getHtml('Create', '0', '0'); ?>">
|
||||
<?php else : ?>
|
||||
<input id="iSaveSubmit" type="Submit" value="<?= $this->getHtml('Save', '0', '0'); ?>">
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</form>
|
||||
</section>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php if (!$isNew) : ?>
|
||||
<div class="row">
|
||||
<?= $this->data['l11nView']->render(
|
||||
$this->data['l11nValues'],
|
||||
[],
|
||||
'{/api}wiki/category/l11n'
|
||||
'{/api}wiki/category/l11n?csrf={$CSRF}'
|
||||
);
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
Loading…
Reference in New Issue
Block a user