feat: VivesPOS landing on Winter CMS 1.2 — theme + plugin + Dockerfile
Some checks are pending
Module sub-split / Sub-split (push) Waiting to run
Some checks are pending
Module sub-split / Sub-split (push) Waiting to run
- Base: wintercms/winter branch 1.2 (full framework) - Theme vivespos: Canvas 7 + Bootstrap 5 CDN, custom CSS - Layout: deferred GTM/GA4 tracking, JSON-LD SoftwareApplication - Partials: hero (offline-first), features, modes (offline/nube toggle), screenshots, pricing (3 planes), comparison, FAQ, CTA - Plugin VivesPOS.Site with ContactForm - Dockerfile: PHP 8.2 Apache, port 80, healthcheck - Added winter/wn-pages, blog, sitemap, seo plugins - Active theme set to vivespos
This commit is contained in:
74
modules/system/tests/fixtures/plugins/winter/tester/Plugin.php
vendored
Normal file
74
modules/system/tests/fixtures/plugins/winter/tester/Plugin.php
vendored
Normal file
@@ -0,0 +1,74 @@
|
||||
<?php namespace Winter\Tester;
|
||||
|
||||
use System\Classes\PluginBase;
|
||||
|
||||
class Plugin extends PluginBase
|
||||
{
|
||||
public function pluginDetails()
|
||||
{
|
||||
return [
|
||||
'name' => 'Winter Test Plugin',
|
||||
'description' => 'Test plugin used by unit tests.',
|
||||
'author' => 'Alexey Bobkov, Samuel Georges'
|
||||
];
|
||||
}
|
||||
|
||||
public function registerComponents()
|
||||
{
|
||||
return [
|
||||
'Winter\Tester\Components\Archive' => 'testArchive',
|
||||
'Winter\Tester\Components\Post' => 'testPost',
|
||||
'Winter\Tester\Components\MainMenu' => 'testMainMenu',
|
||||
'Winter\Tester\Components\ContentBlock' => 'testContentBlock',
|
||||
'Winter\Tester\Components\Comments' => 'testComments',
|
||||
];
|
||||
}
|
||||
|
||||
public function registerFormWidgets()
|
||||
{
|
||||
return [
|
||||
'Winter\Tester\FormWidgets\Preview' => [
|
||||
'label' => 'Preview',
|
||||
'code' => 'preview'
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
public function registerNavigation()
|
||||
{
|
||||
return [
|
||||
'blog' => [
|
||||
'label' => 'Blog',
|
||||
'url' => 'http://example.com/blog/posts',
|
||||
'icon' => 'icon-pencil',
|
||||
'permissions' => ['winter.blog.*'],
|
||||
'order' => 500,
|
||||
|
||||
'sideMenu' => [
|
||||
'posts' => [
|
||||
'label' => 'Posts',
|
||||
'icon' => 'icon-copy',
|
||||
'url' => 'http://example.com/blog/posts',
|
||||
'permissions' => ['winter.blog.access_posts']
|
||||
],
|
||||
'categories' => [
|
||||
'label' => 'Categories',
|
||||
'icon' => 'icon-list-ul',
|
||||
'url' => 'http://example.com/blog/categories',
|
||||
'permissions' => ['winter.blog.access_categories']
|
||||
],
|
||||
]
|
||||
]
|
||||
];
|
||||
}
|
||||
|
||||
public function registerValidationRules()
|
||||
{
|
||||
return [
|
||||
'uppercase' => function ($attribute, $value, $parameters, $validator) {
|
||||
return strtoupper($value) === $value;
|
||||
},
|
||||
'be_like_bob' => \Winter\Tester\Rules\BeLikeBobRule::class,
|
||||
];
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user