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:
16
modules/system/controllers/settings/index.php
Normal file
16
modules/system/controllers/settings/index.php
Normal file
@@ -0,0 +1,16 @@
|
||||
<div class="layout">
|
||||
<div class="layout-cell wn-logo-transparent">
|
||||
<script>
|
||||
$(document).ready(function() {
|
||||
|
||||
var $search = $('#settings-search-input'),
|
||||
focusSearch = function() {
|
||||
setTimeout(function() { $search.focus().select() }, 10)
|
||||
}
|
||||
|
||||
$search.on('blur', focusSearch)
|
||||
focusSearch()
|
||||
})
|
||||
</script>
|
||||
</div>
|
||||
</div>
|
||||
24
modules/system/controllers/settings/mysettings.php
Normal file
24
modules/system/controllers/settings/mysettings.php
Normal file
@@ -0,0 +1,24 @@
|
||||
<div class="control-settings">
|
||||
|
||||
<?php foreach ($items as $category => $items): ?>
|
||||
|
||||
<div class="settings-category">
|
||||
<h3><?= e(trans($category)) ?></h3>
|
||||
</div>
|
||||
|
||||
<div class="settings-items row">
|
||||
|
||||
<?php foreach ($items as $item): ?>
|
||||
<div class="settings-item col-xs-12 col-md-6 col-lg-4">
|
||||
<a href="<?= $item->url ?>">
|
||||
<div class="item-icon"><i class="<?= $item->icon ?>"></i></div>
|
||||
<h5><?= e(trans($item->label)) ?></h5>
|
||||
<p><?= e(trans($item->description)) ?></p>
|
||||
</a>
|
||||
</div>
|
||||
<?php endforeach ?>
|
||||
|
||||
</div>
|
||||
|
||||
<?php endforeach ?>
|
||||
</div>
|
||||
48
modules/system/controllers/settings/update.php
Normal file
48
modules/system/controllers/settings/update.php
Normal file
@@ -0,0 +1,48 @@
|
||||
<?php if (!$this->fatalError): ?>
|
||||
|
||||
<?= Form::open(['class' => 'layout']) ?>
|
||||
|
||||
<div class="layout-row">
|
||||
<?= $this->formRender() ?>
|
||||
</div>
|
||||
|
||||
<div class="form-buttons">
|
||||
<div class="loading-indicator-container">
|
||||
<button
|
||||
type="submit"
|
||||
data-request="onSave"
|
||||
data-request-data="redirect:0"
|
||||
data-hotkey="ctrl+s, cmd+s"
|
||||
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
|
||||
class="btn btn-primary">
|
||||
<?= e(trans('backend::lang.form.save')) ?>
|
||||
</button>
|
||||
<button
|
||||
type="button"
|
||||
data-request="onSave"
|
||||
data-request-data="close:1"
|
||||
data-hotkey="ctrl+enter, cmd+enter"
|
||||
data-load-indicator="<?= e(trans('backend::lang.form.saving')) ?>"
|
||||
class="btn btn-default">
|
||||
<?= e(trans('backend::lang.form.save_and_close')) ?>
|
||||
</button>
|
||||
<span class="btn-text">
|
||||
<?= e(trans('backend::lang.form.or')) ?> <a href="<?= Backend::url('system/settings') ?>"><?= e(trans('backend::lang.form.cancel')) ?></a>
|
||||
</span>
|
||||
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-danger pull-right"
|
||||
data-request="onResetDefault"
|
||||
data-load-indicator="<?= e(trans('backend::lang.form.resetting')) ?>"
|
||||
data-request-confirm="<?= e(trans('backend::lang.form.action_confirm')) ?>">
|
||||
<?= e(trans('backend::lang.form.reset_default')) ?>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<?= Form::close() ?>
|
||||
|
||||
<?php else: ?>
|
||||
<p class="flash-message static error"><?= e(trans($this->fatalError)) ?></p>
|
||||
<p><a href="<?= $parentLink ?>" class="btn btn-default"><?= e(trans('system::lang.settings.return')) ?></a></p>
|
||||
<?php endif ?>
|
||||
Reference in New Issue
Block a user