Fix install

This commit is contained in:
Dennis Eichhorn 2016-10-09 20:07:30 +02:00
parent c1b8b582d4
commit cf1f0b43be
3 changed files with 30 additions and 4 deletions

View File

@ -29,7 +29,7 @@ use phpOMS\DataStorage\Database\Pool;
*/
class Navigation
{
public static function install(Pool $dbPool)
public static function install(string $path, Pool $dbPool)
{
$navData = json_decode(file_get_contents(__DIR__ . '/Navigation.install.json'), true);

View File

@ -37,9 +37,9 @@ class Installer extends InstallerAbstract
/**
* {@inheritdoc}
*/
public static function install(Pool $dbPool, InfoManager $info)
public static function install(string $path, Pool $dbPool, InfoManager $info)
{
parent::install($dbPool, $info);
parent::install($path, $dbPool, $info);
switch ($dbPool->get('core')->getType()) {
case DatabaseType::MYSQL:

View File

@ -15,9 +15,13 @@
*/
namespace Modules\News;
use Model\Message\FormValidation;
use Modules\News\Models\NewsArticle;
use Modules\News\Models\NewsArticleMapper;
use Modules\News\Models\NewsStatus;
use Modules\News\Models\NewsType;
use phpOMS\Account\Account;
use phpOMS\Localization\ISO639Enum;
use phpOMS\Message\RequestAbstract;
use phpOMS\Message\ResponseAbstract;
use phpOMS\Module\ModuleAbstract;
@ -171,6 +175,28 @@ class Controller extends ModuleAbstract implements WebInterface
*/
public function apiNewsCreate(RequestAbstract $request, ResponseAbstract $response, $data = null)
{
$val = [];
if (
($val['title'] = empty($request->getData('title')))
|| ($val['plain'] = empty($request->getData('plain')))
|| ($val['lang'] = (
$request->getData('lang') !== null
&& !ISO639Enum::isValidValue(strtolower($request->getData('lang')))
))
|| ($val['type'] = (
$request->getData('type') === null
|| !NewsType::isValidValue((int) $request->getData('type'))
))
|| ($val['status'] = (
$request->getData('status') === null
|| !NewsStatus::isValidValue((int) $request->getData('status'))
))
) {
$response->set('news_create', new FormValidation($val));
return;
}
$newsArticle = new NewsArticle();
$newsArticle->setCreatedBy($request->getAccount()->getId());
$newsArticle->setCreatedAt(new \DateTime('now'));
@ -178,7 +204,7 @@ class Controller extends ModuleAbstract implements WebInterface
$newsArticle->setTitle($request->getData('title') ?? '');
$newsArticle->setPlain($request->getData('plain') ?? '');
$newsArticle->setContent($request->getData('content') ?? '');
$newsArticle->setLanguage($request->getData('lang') ?? $request->getL11n()->getLanguage());
$newsArticle->setLanguage(strtolower($request->getData('lang') ?? $request->getL11n()->getLanguage()));
$newsArticle->setType((int) ($request->getData('type') ?? 1));
$newsArticle->setStatus((int) ($request->getData('status') ?? 1));
$newsArticle->setFeatured((bool) ($request->getData('featured') ?? true));