FEATURE: add template into page rendering
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace App\Handlers\Contracts;
|
namespace App\Handlers\Contracts;
|
||||||
|
|
||||||
|
use App\Models\Content;
|
||||||
use App\Models\Module;
|
use App\Models\Module;
|
||||||
|
|
||||||
interface TemplateHandler extends BaseModuleHandler
|
interface TemplateHandler extends BaseModuleHandler
|
||||||
@@ -8,4 +9,6 @@ interface TemplateHandler extends BaseModuleHandler
|
|||||||
public static function uninstall(Module $template);
|
public static function uninstall(Module $template);
|
||||||
|
|
||||||
public static function getPublicTemplatePaths();
|
public static function getPublicTemplatePaths();
|
||||||
|
|
||||||
|
public static function beforeRender(Content $content);
|
||||||
}
|
}
|
||||||
@@ -5,6 +5,8 @@ namespace App\Http\Controllers\Visitor;
|
|||||||
use App\Http\Controllers\Controller;
|
use App\Http\Controllers\Controller;
|
||||||
use App\Http\Requests;
|
use App\Http\Requests;
|
||||||
use App\Models\Content;
|
use App\Models\Content;
|
||||||
|
use App\Models\Module;
|
||||||
|
use App\Models\Template;
|
||||||
use Illuminate\Support\Facades\Auth;
|
use Illuminate\Support\Facades\Auth;
|
||||||
|
|
||||||
class ContentPage extends Controller
|
class ContentPage extends Controller
|
||||||
@@ -53,6 +55,11 @@ class ContentPage extends Controller
|
|||||||
// get handler
|
// get handler
|
||||||
$handler = new $page->module_handler;
|
$handler = new $page->module_handler;
|
||||||
|
|
||||||
|
$template = Module::where('is_template', true)->where('enabled', true)->first();
|
||||||
|
|
||||||
|
// do something template-specific
|
||||||
|
$page = call_user_func([$template->handler, 'beforeRender'], $page);
|
||||||
|
|
||||||
// render page
|
// render page
|
||||||
return $handler->render($page, '');
|
return $handler->render($page, '');
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
namespace Templates\Base\OnePage\Handlers;
|
namespace Templates\Base\OnePage\Handlers;
|
||||||
|
|
||||||
use App\Handlers\Contracts\TemplateHandler;
|
use App\Handlers\Contracts\TemplateHandler;
|
||||||
|
use App\Models\Content;
|
||||||
use App\Models\Module;
|
use App\Models\Module;
|
||||||
use App\Models\User;
|
use App\Models\User;
|
||||||
|
|
||||||
@@ -31,4 +32,9 @@ abstract class OnePage implements TemplateHandler
|
|||||||
public static function uninstall(Module $template)
|
public static function uninstall(Module $template)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function beforeRender(Content $content)
|
||||||
|
{
|
||||||
|
return $content;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace Templates\Jednostrankovka;
|
namespace Templates\Jednostrankovka;
|
||||||
|
|
||||||
|
use App\Models\Content;
|
||||||
use Templates\Base\OnePage\Handlers\OnePage;
|
use Templates\Base\OnePage\Handlers\OnePage;
|
||||||
|
|
||||||
class Handler extends OnePage
|
class Handler extends OnePage
|
||||||
@@ -18,4 +19,11 @@ class Handler extends OnePage
|
|||||||
]
|
]
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function beforeRender(Content $content)
|
||||||
|
{
|
||||||
|
$content->content = str_replace('a', 'AAAA', $content->content);
|
||||||
|
|
||||||
|
return $content;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user