1
0
mirror of https://github.com/typemill/typemill.git synced 2025-08-01 11:50:28 +02:00

Version 1.2.1 Editor Improvement

This commit is contained in:
Sebastian
2018-07-06 10:31:20 +02:00
parent 0df0bd5a8e
commit 1aa20023d0
23 changed files with 254 additions and 380 deletions

View File

@@ -29,7 +29,6 @@ class ContentController extends Controller
public function showContent(Request $request, Response $response, $args)
{
$settings = $this->c->get('settings');
$pathToContent = $settings['rootPath'] . $settings['contentFolder'];
$uri = $request->getUri();
@@ -115,8 +114,6 @@ class ContentController extends Controller
return $this->render($response, 'content/content.twig', array('navigation' => $structure, 'title' => $title, 'content' => $content, 'item' => $item, 'settings' => $settings ));
}
public function updateArticle(Request $request, Response $response, $args)
{
/* Extract the parameters from get-call */
@@ -147,7 +144,7 @@ class ContentController extends Controller
$structure = $this->getFreshStructure($pathToContent, $write, $uri);
if(!$structure)
{
return $response->withJson(['errors' => ['content folder is empty']], 404);
return $response->withJson(['errors' => ['message' => 'content folder is empty']], 404);
}
}
@@ -163,10 +160,10 @@ class ContentController extends Controller
/* search for the url in the structure */
$item = Folder::getItemForUrl($structure, $params['url']);
}
if(!$item)
{
return $response->withJson(['errors' => ['requested page-url not found']], 404);
return $response->withJson(['errors' => ['message' => 'requested page-url not found']], 404);
}
if($item->elementType == 'folder')
@@ -182,14 +179,20 @@ class ContentController extends Controller
$mdFile = $write->getFile($settings['contentFolder'], $path);
if($mdFile)
{
/* merge title with content for complete markdown document */
/* merge title with content forcomplete markdown document */
$updatedContent = '# ' . $params['title'] . "\r\n\r\n" . $params['content'];
/* update the file */
$write->writeFile($settings['contentFolder'], $path, $updatedContent);
return $response->withJson(['success'], 200);
if($write->writeFile($settings['contentFolder'], $path, $updatedContent))
{
return $response->withJson(['success'], 200);
}
else
{
return $response->withJson(['errors' => ['message' => 'Could not write to file. Please check if file is writable']], 404);
}
}
return $response->withJson(['errors' => ['requested markdown-file not found']], 404);
return $response->withJson(['errors' => ['message' => 'requested markdown-file not found']], 404);
}
protected function getFreshStructure($pathToContent, $cache, $uri)

View File

@@ -119,15 +119,17 @@ class PageController extends Controller
}
$contentMD = $this->c->dispatcher->dispatch('onMarkdownLoaded', new OnMarkdownLoaded($contentMD))->getData();
/* initialize parsedown */
$parsedown = new ParsedownExtension();
/* set safe mode to escape javascript and html in markdown */
$parsedown->setSafeMode(true);
/* parse markdown-file to content-array */
$contentArray = $parsedown->text($contentMD);
$contentArray = $this->c->dispatcher->dispatch('onContentArrayLoaded', new OnContentArrayLoaded($contentArray))->getData();
/* get the first image from content array */
$firstImage = $this->getFirstImage($contentArray);

View File

@@ -40,11 +40,11 @@ class SettingsController extends Controller
{
/* make sure only allowed fields are stored */
$newSettings = array(
'title' => $newSettings['title'],
'author' => $newSettings['author'],
'copyright' => $newSettings['copyright'],
'year' => $newSettings['year'],
'statpage' => isset($newSettings['startpage']) ? true : false
'title' => $newSettings['title'],
'author' => $newSettings['author'],
'copyright' => $newSettings['copyright'],
'year' => $newSettings['year'],
'startpage' => isset($newSettings['startpage']) ? true : false
);
$copyright = $this->getCopyright();