diff --git a/Admin/Routes/Web/Backend.php b/Admin/Routes/Web/Backend.php index f5f14b2..a558d04 100644 --- a/Admin/Routes/Web/Backend.php +++ b/Admin/Routes/Web/Backend.php @@ -20,6 +20,10 @@ return [ ], ], '^.*/backend/draw/single.*$' => [ + [ + 'dest' => '\Modules\Draw\Controller:setUpDrawEditor', + 'verb' => RouteVerb::GET, + ], [ 'dest' => '\Modules\Draw\Controller:viewDrawSingle', 'verb' => RouteVerb::GET, diff --git a/Controller.php b/Controller.php index 68afb31..336e5a5 100644 --- a/Controller.php +++ b/Controller.php @@ -123,6 +123,7 @@ class Controller extends ModuleAbstract implements WebInterface return $view; } + /** * @param RequestAbstract $request Request * @param ResponseAbstract $response Response @@ -133,12 +134,14 @@ class Controller extends ModuleAbstract implements WebInterface * @since 1.0.0 * @author Dennis Eichhorn */ - public function viewDrawImage(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable + public function viewDrawSingle(RequestAbstract $request, ResponseAbstract $response, $data = null) : \Serializable { $view = new View($this->app, $request, $response); - $view->setTemplate('/Modules/Draw/Theme/Backend/draw-create'); + $view->setTemplate('/Modules/Draw/Theme/Backend/draw-single'); $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1005201001, $request, $response)); + $view->addData('image', DrawImageMapper::get($request->getData('id'))); + return $view; } diff --git a/Models/Editor.js b/Models/Editor.js index 76fa6dc..97074c1 100644 --- a/Models/Editor.js +++ b/Models/Editor.js @@ -40,6 +40,8 @@ { const self = this; + this.initCanvas(); + this.canvasContainer.addEventListener('DOMAttrModified', function(evt) { self.canvasStyle = window.getComputedStyle(self.canvas, null); self.canvasContainerStyle = window.getComputedStyle(self.canvasContainer, null); @@ -100,6 +102,15 @@ }, false); }; + jsOMS.Modules.Draw.Editor.prototype.initCanvas = function() + { + const img = this.editor.getElementsByTagName('img'); + + if(img.length > 0) { + this.canvas.getContext("2d").drawImage(img[0], 0, 0); + } + }; + jsOMS.Modules.Draw.Editor.prototype.draw = function (start, end) { if (this.drawFlag) { diff --git a/Models/NullDrawImage.php b/Models/NullDrawImage.php new file mode 100644 index 0000000..ac424d0 --- /dev/null +++ b/Models/NullDrawImage.php @@ -0,0 +1,31 @@ + + * @author Dennis Eichhorn + * @copyright 2013 Dennis Eichhorn + * @license OMS License 1.0 + * @version 1.0.0 + * @link http://orange-management.com + */ +namespace Modules\Draw\Models; + +/** + * News article class. + * + * @category Module + * @package Framework + * @author OMS Development Team + * @author Dennis Eichhorn + * @license OMS License 1.0 + * @link http://orange-management.com + * @since 1.0.0 + */ +class NullDrawImage extends DrawImage +{ +} diff --git a/Theme/Backend/draw-single.tpl.php b/Theme/Backend/draw-single.tpl.php new file mode 100644 index 0000000..77ba1f1 --- /dev/null +++ b/Theme/Backend/draw-single.tpl.php @@ -0,0 +1,103 @@ + + * @author Dennis Eichhorn + * @copyright Dennis Eichhorn + * @license OMS License 1.0 + * @version 1.0.0 + * @link http://orange-management.com + */ +/** + * @var \phpOMS\Views\View $this + */ + +$image = $this->getData('image'); + +echo $this->getData('nav')->render(); ?> + +
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+
+ +
+ +
+
    +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
  • +
+
+ +
+
+
+
+
+
+
+ +
+
+
+
+
+ + +
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
\ No newline at end of file diff --git a/Theme/backend/draw-list.tpl.php b/Theme/backend/draw-list.tpl.php index bdc6f70..70a33bb 100644 --- a/Theme/backend/draw-list.tpl.php +++ b/Theme/backend/draw-list.tpl.php @@ -42,9 +42,9 @@ echo $this->getData('nav')->render(); ?> $value) : $count++; $url = \phpOMS\Uri\UriFactory::build('/{/lang}/backend/draw/single?id=' . $value->getId()); ?> - getMedia()->getName(); ?> - getMedia()->getCreatedBy(); ?> - getMedia()->getCreatedAt()->format('Y-m-d'); ?> + getMedia()->getName(); ?> + getMedia()->getCreatedBy(); ?> + getMedia()->getCreatedAt()->format('Y-m-d'); ?> getText('Empty', 0, 0); ?>