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:
@@ -0,0 +1,53 @@
|
||||
<div
|
||||
id="<?= $this->getId() ?>"
|
||||
class="
|
||||
field-mediafinder
|
||||
style-file-single
|
||||
<?php if ($value): ?>
|
||||
is-populated
|
||||
<?php endif ?>
|
||||
<?php if ($this->previewMode): ?>
|
||||
is-preview
|
||||
<?php endif ?>
|
||||
"
|
||||
data-control="mediafinder"
|
||||
data-mediafinder-mode="<?= $mode ?? 'all' ?>"
|
||||
<?= $field->getAttributes() ?>
|
||||
>
|
||||
|
||||
<!-- Find Button -->
|
||||
<button type="button" class="btn btn-default find-button">
|
||||
<i class="icon-folder"></i>
|
||||
</button>
|
||||
|
||||
<!-- Existing value -->
|
||||
<div class="find-object">
|
||||
<div class="icon-container">
|
||||
<i class="icon-file"></i>
|
||||
</div>
|
||||
<div class="info">
|
||||
<h4 class="filename">
|
||||
<span data-find-file-name><?= e(ltrim($value, '/')) ?></span>
|
||||
</h4>
|
||||
</div>
|
||||
<div class="meta">
|
||||
<a href="javascript:;" class="find-remove-button">
|
||||
<i class="icon-times"></i>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Empty message -->
|
||||
<div class="find-empty-message">
|
||||
<span class="text-muted"><?= $prompt ?></span>
|
||||
</div>
|
||||
|
||||
<!-- Data locker -->
|
||||
<input
|
||||
type="hidden"
|
||||
name="<?= $field->getName() ?>"
|
||||
id="<?= $field->getId() ?>"
|
||||
value="<?= e($value) ?>"
|
||||
data-find-value
|
||||
/>
|
||||
</div>
|
||||
@@ -0,0 +1,56 @@
|
||||
<div
|
||||
id="<?= $this->getId() ?>"
|
||||
class="
|
||||
field-mediafinder
|
||||
style-image-single
|
||||
is-image
|
||||
<?php if ($value): ?>
|
||||
is-populated
|
||||
<?php endif ?>
|
||||
<?php if ($this->previewMode): ?>
|
||||
is-preview
|
||||
<?php endif ?>
|
||||
"
|
||||
data-control="mediafinder"
|
||||
data-mediafinder-mode="image"
|
||||
data-thumbnail-width="<?= $imageWidth ?: '0' ?>"
|
||||
data-thumbnail-height="<?= $imageHeight ?: '0' ?>"
|
||||
<?= $field->getAttributes() ?>
|
||||
>
|
||||
|
||||
<!-- Find Button -->
|
||||
<a href="javascript:;" class="find-button">
|
||||
<span class="find-button-icon wn-icon-image"></span>
|
||||
</a>
|
||||
|
||||
<!-- Existing value -->
|
||||
<div class="find-object">
|
||||
<div class="icon-container">
|
||||
<img data-find-image src="<?= $imageUrl ?>" alt="" />
|
||||
</div>
|
||||
|
||||
<?php if (!$imageExists && !empty($imageUrl)): ?>
|
||||
<p data-find-error class="help-block">
|
||||
<?= e(trans('backend::lang.mediafinder.no_image')) ?>
|
||||
</p>
|
||||
<?php endif; ?>
|
||||
|
||||
<div class="info">
|
||||
<h4 class="filename">
|
||||
<span data-find-file-name><?= e(ltrim($value, '/')) ?></span>
|
||||
<a href="javascript:;" class="find-remove-button">
|
||||
<i class="icon-times"></i>
|
||||
</a>
|
||||
</h4>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Data locker -->
|
||||
<input
|
||||
type="hidden"
|
||||
name="<?= $field->getName() ?>"
|
||||
id="<?= $field->getId() ?>"
|
||||
value="<?= e($value) ?>"
|
||||
data-find-value
|
||||
/>
|
||||
</div>
|
||||
@@ -0,0 +1,24 @@
|
||||
<?php if ($this->previewMode && !$value): ?>
|
||||
|
||||
<span class="form-control" disabled="disabled"><?= e(trans('backend::lang.form.preview_no_media_message')) ?></span>
|
||||
|
||||
<?php else: ?>
|
||||
|
||||
<?php
|
||||
switch ($mode) {
|
||||
case 'image':
|
||||
echo $this->makePartial('image_single');
|
||||
break;
|
||||
case 'video':
|
||||
case 'audio':
|
||||
case 'document':
|
||||
echo $this->makePartial('file_single', ['mode' => $mode]);
|
||||
break;
|
||||
case 'file':
|
||||
case 'all':
|
||||
default:
|
||||
echo $this->makePartial('file_single', ['mode' => 'all']);
|
||||
}
|
||||
?>
|
||||
|
||||
<?php endif ?>
|
||||
Reference in New Issue
Block a user