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:
84
modules/system/assets/css/updates/details.css
Normal file
84
modules/system/assets/css/updates/details.css
Normal file
@@ -0,0 +1,84 @@
|
||||
.plugin-details-content {
|
||||
padding: 0 0;
|
||||
}
|
||||
.plugin-details-content > *:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
.plugin-details-content h1 {
|
||||
font-size: 28px;
|
||||
}
|
||||
.plugin-details-content h2 {
|
||||
font-size: 24px;
|
||||
}
|
||||
.plugin-details-content h3 {
|
||||
font-size: 20px;
|
||||
}
|
||||
.plugin-details-content h4 {
|
||||
font-size: 17px;
|
||||
}
|
||||
.plugin-details-content h1,
|
||||
.plugin-details-content h2 {
|
||||
padding-bottom: 10px;
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
.plugin-details-content img {
|
||||
max-width: 100%;
|
||||
}
|
||||
.plugin-details-content ul,
|
||||
.plugin-details-content ol {
|
||||
padding-left: 20px;
|
||||
}
|
||||
.plugin-details-content pre {
|
||||
display: block;
|
||||
border: none;
|
||||
margin: 10px -20px 20px;
|
||||
padding: 10px 10px 10px 20px;
|
||||
font-size: 13px;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
color: #fff;
|
||||
background-color: #333;
|
||||
}
|
||||
.plugin-details-content pre code {
|
||||
padding: 0;
|
||||
font-size: inherit;
|
||||
color: inherit;
|
||||
white-space: pre-wrap;
|
||||
background-color: transparent;
|
||||
border-radius: 0;
|
||||
}
|
||||
.plugin-details-content ul pre,
|
||||
.plugin-details-content ol pre {
|
||||
margin-left: -40px;
|
||||
padding-left: 40px;
|
||||
}
|
||||
.plugin-details-content table th {
|
||||
font-weight: bold;
|
||||
}
|
||||
.plugin-details-content table th,
|
||||
.plugin-details-content table td {
|
||||
padding: 6px 13px;
|
||||
border: 1px solid #ddd;
|
||||
}
|
||||
.plugin-details-content table tr {
|
||||
background-color: #fff;
|
||||
border-top: 1px solid #ccc;
|
||||
}
|
||||
.plugin-details-content table tr:nth-child(2n) {
|
||||
background-color: #f8f8f8;
|
||||
}
|
||||
.plugin-details-content dl dt,
|
||||
.plugin-details-content dl dd {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
.plugin-details-content dl dt {
|
||||
width: 75px;
|
||||
float: left;
|
||||
text-align: right;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.plugin-details-content dl dd {
|
||||
margin-left: 85px;
|
||||
}
|
||||
297
modules/system/assets/css/updates/install.css
Normal file
297
modules/system/assets/css/updates/install.css
Normal file
@@ -0,0 +1,297 @@
|
||||
.product-list-empty {
|
||||
padding: 5px 0;
|
||||
font-size: 16px;
|
||||
color: #999;
|
||||
}
|
||||
.product-list {
|
||||
margin: 0;
|
||||
padding: 10px 0;
|
||||
overflow: hidden;
|
||||
/* clearfix */
|
||||
}
|
||||
.product-list li button {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
width: 20px;
|
||||
height: 20px;
|
||||
opacity: 0;
|
||||
outline: none;
|
||||
}
|
||||
.product-list li button,
|
||||
.product-list li .image,
|
||||
.product-list li .details {
|
||||
-webkit-transition: opacity .2s linear;
|
||||
-moz-transition: opacity .2s linear;
|
||||
transition: opacity .2s linear;
|
||||
}
|
||||
.product-list li:hover button {
|
||||
opacity: .3;
|
||||
}
|
||||
.product-list li:hover button:hover {
|
||||
opacity: .8;
|
||||
}
|
||||
.plugin-list li {
|
||||
list-style: none;
|
||||
position: relative;
|
||||
border-bottom: 1px solid #E6E9E9;
|
||||
margin-bottom: 10px;
|
||||
padding-bottom: 10px;
|
||||
overflow: hidden;
|
||||
}
|
||||
.plugin-list li .image {
|
||||
float: left;
|
||||
margin-right: 15px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
.plugin-list li .image img {
|
||||
width: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
.plugin-list li .details p {
|
||||
padding: 0;
|
||||
margin: 3px 0 0 0;
|
||||
color: #808C8D;
|
||||
}
|
||||
.plugin-list li h4 {
|
||||
padding: 5px 0 0;
|
||||
margin: 0;
|
||||
color: #C03F31;
|
||||
font-weight: 400;
|
||||
}
|
||||
.plugin-list li:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
.theme-list li {
|
||||
float: left;
|
||||
padding: 0;
|
||||
margin: 0 10px 10px 0;
|
||||
list-style: none;
|
||||
border: 1px solid #E6E9E9;
|
||||
background: #fff;
|
||||
position: relative;
|
||||
-webkit-border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
-webkit-transition: border .2s linear;
|
||||
-moz-transition: border .2s linear;
|
||||
transition: border .2s linear;
|
||||
}
|
||||
.theme-list li .image {
|
||||
padding: 5px;
|
||||
}
|
||||
.theme-list li .image img {
|
||||
width: 210px;
|
||||
height: 140px;
|
||||
}
|
||||
.theme-list li .details {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
opacity: 0;
|
||||
padding: 10px;
|
||||
overflow: hidden;
|
||||
}
|
||||
.theme-list li h4 {
|
||||
padding: 15px 0 0;
|
||||
margin: 0;
|
||||
}
|
||||
.theme-list li p {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
color: #999;
|
||||
text-transform: uppercase;
|
||||
font-size: 12px;
|
||||
}
|
||||
.theme-list li:hover {
|
||||
border-color: transparent;
|
||||
}
|
||||
.theme-list li:hover .image {
|
||||
opacity: 0;
|
||||
}
|
||||
.theme-list li:hover .details {
|
||||
opacity: 1;
|
||||
}
|
||||
.suggested-products {
|
||||
padding: 0;
|
||||
}
|
||||
.suggested-products .product {
|
||||
padding: 0;
|
||||
}
|
||||
.suggested-products .image {
|
||||
float: left;
|
||||
position: relative;
|
||||
}
|
||||
.suggested-products .image img {
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-top: 10px;
|
||||
}
|
||||
.suggested-products .details {
|
||||
margin-left: 50px;
|
||||
padding: 10px 0;
|
||||
}
|
||||
.suggested-products .details h5 {
|
||||
margin: 0 0 3px;
|
||||
font-size: 14px;
|
||||
color: #C03F31;
|
||||
font-weight: 400;
|
||||
}
|
||||
.suggested-products .details p {
|
||||
font-size: 12px;
|
||||
}
|
||||
.suggested-products a {
|
||||
color: #777;
|
||||
background: #fff;
|
||||
padding: 5px;
|
||||
text-decoration: none;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
border-bottom: 1px solid #E6E9E9;
|
||||
}
|
||||
.suggested-products a:hover {
|
||||
color: #333;
|
||||
background: #f9f9f9;
|
||||
}
|
||||
.suggested-products a:hover .image:after {
|
||||
content: "+";
|
||||
color: #999;
|
||||
font-size: 32px;
|
||||
display: block;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
text-align: center;
|
||||
line-height: 40px;
|
||||
position: absolute;
|
||||
top: 7px;
|
||||
left: 0;
|
||||
}
|
||||
.suggested-products a:hover .image img {
|
||||
opacity: .5;
|
||||
}
|
||||
.suggested-themes .image img {
|
||||
width: 60px;
|
||||
height: 40px;
|
||||
}
|
||||
.suggested-themes .details {
|
||||
margin-left: 70px;
|
||||
}
|
||||
/*!
|
||||
* Typeahead
|
||||
*/
|
||||
.product-search {
|
||||
position: relative;
|
||||
width: 100%;
|
||||
margin: 0 auto 0 auto;
|
||||
text-align: left;
|
||||
padding-bottom: 15px;
|
||||
}
|
||||
.product-search > i.icon {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
right: 15px;
|
||||
font-size: 24px;
|
||||
margin-top: -20px;
|
||||
color: rgba(0, 0, 0, 0.35);
|
||||
}
|
||||
.product-search > i.icon.loading {
|
||||
display: block;
|
||||
width: 24px;
|
||||
height: 24px;
|
||||
background: url('../../../../system/assets/ui/images/loader-transparent.svg') 50% 50%;
|
||||
background-size: 24px 24px;
|
||||
-webkit-animation: spin 1s linear infinite;
|
||||
animation: spin 1s linear infinite;
|
||||
}
|
||||
.twitter-typeahead {
|
||||
width: 100%;
|
||||
}
|
||||
.typeahead,
|
||||
.tt-hint {
|
||||
width: 100%;
|
||||
height: 46px;
|
||||
padding: 8px 12px;
|
||||
font-size: 24px;
|
||||
line-height: 30px;
|
||||
border: 1px solid #024e6a;
|
||||
-webkit-border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
outline: none;
|
||||
}
|
||||
.typeahead {
|
||||
background-color: #fff;
|
||||
border-color: #e0e0e0;
|
||||
}
|
||||
.tt-input {
|
||||
font-weight: 200;
|
||||
}
|
||||
.tt-input:focus {
|
||||
border-color: #E6E9E9;
|
||||
}
|
||||
.tt-hint {
|
||||
color: #999;
|
||||
font-weight: 200;
|
||||
}
|
||||
.tt-dropdown-menu {
|
||||
width: 100%;
|
||||
margin-top: 0;
|
||||
background-color: #fff;
|
||||
border: 1px solid #ccc;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
-webkit-border-radius: 3px;
|
||||
-moz-border-radius: 3px;
|
||||
border-radius: 3px;
|
||||
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
||||
-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
||||
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
.tt-suggestion {
|
||||
font-size: 14px;
|
||||
line-height: 18px;
|
||||
}
|
||||
.tt-suggestion + .tt-suggestion {
|
||||
font-size: 14px;
|
||||
border-top: 1px solid #ccc;
|
||||
}
|
||||
.tt-suggestions .product-details {
|
||||
padding: 5px;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
}
|
||||
.tt-suggestions .product-image {
|
||||
float: left;
|
||||
margin-right: 10px;
|
||||
}
|
||||
.tt-suggestions .product-image img {
|
||||
height: 45px;
|
||||
width: 45px;
|
||||
}
|
||||
.tt-suggestions .product-name {
|
||||
font-size: 20px;
|
||||
padding-top: 5px;
|
||||
}
|
||||
.tt-suggestion.tt-cursor {
|
||||
cursor: pointer;
|
||||
}
|
||||
.tt-suggestion.tt-cursor .product-details {
|
||||
color: #333;
|
||||
background: #f9f9f9;
|
||||
border-color: #f0f0f0;
|
||||
}
|
||||
.tt-suggestion.tt-cursor .product-details .product-image:after {
|
||||
content: "+";
|
||||
color: #999;
|
||||
font-size: 38px;
|
||||
display: block;
|
||||
width: 45px;
|
||||
height: 45px;
|
||||
text-align: center;
|
||||
line-height: 45px;
|
||||
position: absolute;
|
||||
top: 5px;
|
||||
left: 5px;
|
||||
}
|
||||
.tt-suggestion.tt-cursor .product-details .product-image img {
|
||||
opacity: .5;
|
||||
}
|
||||
116
modules/system/assets/css/updates/updates.css
Normal file
116
modules/system/assets/css/updates/updates.css
Normal file
@@ -0,0 +1,116 @@
|
||||
.important-update-label {
|
||||
margin: 7px 0;
|
||||
}
|
||||
.control-updatelist {
|
||||
border: 1px solid #ccc;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
.control-updatelist .update-item {
|
||||
border-bottom: 1px solid #ccc;
|
||||
}
|
||||
.control-updatelist .update-item .item-header {
|
||||
background-color: #f5f5f5;
|
||||
border-bottom: 1px solid #ccc;
|
||||
padding: 0 10px;
|
||||
}
|
||||
.control-updatelist .update-item .item-header h5 {
|
||||
margin: 0;
|
||||
padding: 15px 0;
|
||||
text-transform: uppercase;
|
||||
font-size: 13px;
|
||||
}
|
||||
.control-updatelist .update-item .item-header h5 i {
|
||||
margin-right: 7px;
|
||||
color: #405261;
|
||||
}
|
||||
.control-updatelist .update-item .item-header h5 small {
|
||||
text-transform: none;
|
||||
float: right;
|
||||
line-height: 13px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
.control-updatelist .update-item .item-header .important-update {
|
||||
padding: 7px 0 0 0;
|
||||
float: right;
|
||||
width: 200px;
|
||||
}
|
||||
.control-updatelist .update-item dl {
|
||||
padding: 10px;
|
||||
margin-bottom: 0;
|
||||
}
|
||||
.control-updatelist .update-item dl:before,
|
||||
.control-updatelist .update-item dl:after {
|
||||
content: " ";
|
||||
display: table;
|
||||
}
|
||||
.control-updatelist .update-item dl:after {
|
||||
clear: both;
|
||||
}
|
||||
.control-updatelist .update-item dl dt,
|
||||
.control-updatelist .update-item dl dd {
|
||||
float: left;
|
||||
padding: 5px 0;
|
||||
line-height: 20px;
|
||||
}
|
||||
.control-updatelist .update-item dl dt.text-muted,
|
||||
.control-updatelist .update-item dl dd.text-muted {
|
||||
color: #999 !important;
|
||||
}
|
||||
.control-updatelist .update-item dl dt {
|
||||
width: 15%;
|
||||
clear: left;
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #2b3e50;
|
||||
}
|
||||
.control-updatelist .update-item dl dd {
|
||||
width: 85%;
|
||||
font-size: 12px;
|
||||
color: #455152;
|
||||
}
|
||||
.control-updatelist .update-item dl .important-update-label {
|
||||
position: relative;
|
||||
top: -1px;
|
||||
background-color: #ab2a1c;
|
||||
color: #fff;
|
||||
display: inline-block;
|
||||
padding: .2em .6em .3em;
|
||||
font-size: 75%;
|
||||
line-height: 1;
|
||||
text-align: center;
|
||||
white-space: nowrap;
|
||||
vertical-align: baseline;
|
||||
-webkit-border-radius: 0.25em;
|
||||
-moz-border-radius: 0.25em;
|
||||
border-radius: 0.25em;
|
||||
}
|
||||
.control-updatelist .update-item:last-child {
|
||||
border-bottom: none;
|
||||
}
|
||||
.control-updatelist .update-item.item-danger .item-header {
|
||||
background-color: #f2dede;
|
||||
}
|
||||
.control-updatelist .update-item.item-danger .item-header h5,
|
||||
.control-updatelist .update-item.item-danger .item-header i,
|
||||
.control-updatelist .update-item.item-danger .item-header {
|
||||
color: #a94442;
|
||||
}
|
||||
.control-updatelist .update-item.item-success .item-header {
|
||||
background-color: #dff0d8;
|
||||
}
|
||||
.control-updatelist .update-item.item-success .item-header h5,
|
||||
.control-updatelist .update-item.item-success .item-header i,
|
||||
.control-updatelist .update-item.item-success .item-header {
|
||||
color: #3c763d;
|
||||
}
|
||||
.control-updatelist .update-item.item-muted {
|
||||
border-bottom: none;
|
||||
}
|
||||
.control-updatelist .update-item.item-muted .item-header h5,
|
||||
.control-updatelist .update-item.item-muted .item-header i,
|
||||
.control-updatelist .update-item.item-muted .item-header {
|
||||
color: rgba(0, 0, 0, 0.35);
|
||||
}
|
||||
.control-updatelist .update-item.item-muted dl {
|
||||
display: none;
|
||||
}
|
||||
Reference in New Issue
Block a user