initial commit
This commit is contained in:
49
public/.htaccess
Normal file
49
public/.htaccess
Normal file
@@ -0,0 +1,49 @@
|
||||
RewriteEngine On
|
||||
|
||||
RewriteCond %{HTTPS} !=on
|
||||
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
|
||||
|
||||
RewriteRule ^\.htaccess$ - [F]
|
||||
# The following rule tells Apache that if the requested filename
|
||||
# exists, simply serve it.
|
||||
RewriteCond %{REQUEST_FILENAME} -s [OR]
|
||||
RewriteCond %{REQUEST_FILENAME} -l [OR]
|
||||
RewriteCond %{REQUEST_FILENAME} -d
|
||||
RewriteRule ^.*$ - [L]
|
||||
# The following rewrites all other queries to index.php. The
|
||||
# condition ensures that if you are using Apache aliases to do
|
||||
# mass virtual hosting or installed the project in a subdirectory,
|
||||
# the base path will be prepended to allow proper resolution of
|
||||
# the index.php file; it will work in non-aliased environments
|
||||
# as well, providing a safe, one-size fits all solution.
|
||||
#RewriteCond %{REQUEST_URI}::$1 ^/((data|cached)/.*)::\2$
|
||||
#RewriteRule ^(.*)$ %{ENV:BASE}/data.php [L]
|
||||
|
||||
RewriteCond %{REQUEST_URI}::$1 ^(/?.*)/((data|cached)/.*)::\2$
|
||||
RewriteRule ^(.*) - [E=BASE:%1]
|
||||
RewriteCond %{REQUEST_URI}::$1 ^(/?.*)/((data|cached)/.*)::\2$
|
||||
RewriteRule ^(.*)$ %{ENV:BASE}/data.php [L]
|
||||
|
||||
RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
|
||||
RewriteRule ^(.*) - [E=BASE:%1]
|
||||
RewriteRule ^(.*)$ %{ENV:BASE}/index.html [L]
|
||||
|
||||
<IfModule mod_mime.c>
|
||||
AddType application/x-javascript .js
|
||||
AddType text/css .css
|
||||
</IfModule>
|
||||
<IfModule mod_deflate.c>
|
||||
SetOutputFilter DEFLATE
|
||||
<IfModule mod_setenvif.c>
|
||||
SetEnvIfNoCase Request_URI \.(?:rar|zip)$ no-gzip dont-vary
|
||||
SetEnvIfNoCase Request_URI \.(?:gif|jpg|png)$ no-gzip dont-vary
|
||||
SetEnvIfNoCase Request_URI \.(?:avi|mov|mp4)$ no-gzip dont-vary
|
||||
SetEnvIfNoCase Request_URI \.mp3$ no-gzip dont-vary
|
||||
BrowserMatch ^Mozilla/4 gzip-only-text/html
|
||||
BrowserMatch ^Mozilla/4\.0[678] no-gzip
|
||||
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
|
||||
</IfModule>
|
||||
<IfModule mod_headers.c>
|
||||
Header append Vary User-Agent env=!dont-vary
|
||||
</IfModule>
|
||||
</IfModule>
|
||||
510
public/core/css/core.css
Normal file
510
public/core/css/core.css
Normal file
@@ -0,0 +1,510 @@
|
||||
/**
|
||||
* Foundation for Sites by ZURB
|
||||
* Version 6.4.3
|
||||
* foundation.zurb.com
|
||||
* Licensed under MIT Open Source
|
||||
*/
|
||||
.top-bar-title {
|
||||
white-space: nowrap; }
|
||||
|
||||
#action-bar .close-listener {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background: transparent;
|
||||
z-index: 9000; }
|
||||
#action-bar #responsive-menu .top-bar-right {
|
||||
position: relative;
|
||||
text-align: right;
|
||||
width: 100%; }
|
||||
#action-bar .top-bar-right {
|
||||
width: auto; }
|
||||
#action-bar .top-bar-right .menu.action-bar a img + span {
|
||||
display: none; }
|
||||
#action-bar .top-bar-right .menu.action-bar .action {
|
||||
position: relative;
|
||||
z-index: 9000; }
|
||||
#action-bar .top-bar-right .menu.action-bar .action.is-dropdown-submenu-parent {
|
||||
z-index: 9001; }
|
||||
#action-bar .top-bar-right .menu.action-bar .action.hidden {
|
||||
display: none; }
|
||||
@media screen and (max-width: 24.9375em) {
|
||||
#action-bar .top-bar-right .menu.action-bar .action.smedium {
|
||||
display: none; } }
|
||||
@media screen and (max-width: 39.9375em) {
|
||||
#action-bar .top-bar-right .menu.action-bar .action li {
|
||||
display: table-cell; }
|
||||
#action-bar .top-bar-right .menu.action-bar .action.medium {
|
||||
display: none; } }
|
||||
@media screen and (max-width: 63.9375em) {
|
||||
#action-bar .top-bar-right .menu.action-bar .action.large {
|
||||
display: none; } }
|
||||
#action-bar .top-bar-right .menu.action-bar .action.never {
|
||||
display: none; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden {
|
||||
display: inline-block;
|
||||
position: absolute;
|
||||
z-index: 9000;
|
||||
border: 1px solid #cacaca;
|
||||
padding: 0.2rem;
|
||||
transform: translateX(-100%);
|
||||
text-align: left; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.hidden {
|
||||
display: none; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.is-dropdown-submenu-parent {
|
||||
z-index: 9001; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.is-dropdown-submenu-parent ul.is-dropdown-submenu {
|
||||
top: auto; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.is-dropdown-submenu-parent ul.is-dropdown-submenu > li.action, #action-bar .top-bar-right .menu.action-bar.hidden .action.is-dropdown-submenu-parent ul.is-dropdown-submenu > .close-listener {
|
||||
z-index: 9001; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.is-dropdown-submenu-parent > a:after {
|
||||
display: block;
|
||||
width: 0;
|
||||
height: 0;
|
||||
border: 6px inset;
|
||||
content: "";
|
||||
border-bottom-width: 0;
|
||||
border-top-style: solid;
|
||||
border-color: #ffffff transparent transparent;
|
||||
right: 5px;
|
||||
left: auto;
|
||||
margin-top: -3px; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action a {
|
||||
white-space: nowrap; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action a img {
|
||||
display: none; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action a img + span {
|
||||
display: inherit; }
|
||||
@media print, screen and (min-width: 40em) {
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.medium {
|
||||
display: none; } }
|
||||
@media print, screen and (min-width: 25em) {
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.smedium {
|
||||
display: none; } }
|
||||
@media print, screen and (min-width: 64em) {
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.large {
|
||||
display: none; } }
|
||||
@media screen and (max-width: 24.9375em) {
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.smedium {
|
||||
display: block; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.smedium.hidden {
|
||||
display: none; } }
|
||||
@media screen and (max-width: 39.9375em) {
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.medium {
|
||||
display: block; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.medium.hidden {
|
||||
display: none; } }
|
||||
@media screen and (max-width: 63.9375em) {
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.large {
|
||||
display: block; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.large.hidden {
|
||||
display: none; } }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.never {
|
||||
display: block; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.never.hidden {
|
||||
display: none; }
|
||||
#action-bar .top-bar-right .menu.action-bar.hidden .action.always {
|
||||
display: none; }
|
||||
#action-bar .top-bar-right .menu .action {
|
||||
z-index: 100; }
|
||||
@media screen and (max-width: 39.9375em) {
|
||||
#action-bar .top-bar-right .menu .action a {
|
||||
width: 100%; } }
|
||||
@media screen and (max-width: 39.9375em) {
|
||||
#action-bar .top-bar-right .menu .action a {
|
||||
padding-left: 0.68rem; } }
|
||||
@media screen and (max-width: 24.9375em) {
|
||||
#action-bar .top-bar-right .menu .action a {
|
||||
padding-left: 0.236rem; } }
|
||||
@media screen and (max-width: 39.9375em) {
|
||||
#action-bar .top-bar-right .menu .action:not(.is-dropdown-submenu-parent) a {
|
||||
padding-right: 0.68rem; } }
|
||||
@media screen and (max-width: 24.9375em) {
|
||||
#action-bar .top-bar-right .menu .action:not(.is-dropdown-submenu-parent) a {
|
||||
padding-right: 0.236rem; } }
|
||||
#action-bar .top-bar-right .menu .action.img a {
|
||||
padding-top: 0; }
|
||||
#action-bar .top-bar-right .menu .action.img a img {
|
||||
vertical-align: inherit;
|
||||
max-height: 1.4rem; }
|
||||
#action-bar .top-bar-right .menu > li > ul.is-dropdown-submenu {
|
||||
min-width: 0; }
|
||||
#action-bar .top-bar-right .menu > li > ul.is-dropdown-submenu .action {
|
||||
display: inherit; }
|
||||
#action-bar .top-bar-right .menu > li.opens-right > ul.is-dropdown-submenu {
|
||||
right: auto;
|
||||
left: auto; }
|
||||
#action-bar .top-bar-right .menu > li.opens-right > ul.is-dropdown-submenu a {
|
||||
text-align: left; }
|
||||
|
||||
.dropdown.menu > li.is-dropdown-submenu-parent > a:after {
|
||||
border-color: #ffffff transparent transparent; }
|
||||
|
||||
form {
|
||||
position: relative; }
|
||||
|
||||
.sending .sending-loader {
|
||||
position: absolute;
|
||||
background-color: rgba(0, 0, 0, 0.06);
|
||||
display: block;
|
||||
pointer-events: all;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
z-index: 10;
|
||||
border-radius: 2px; }
|
||||
.sending .sending-loader .loader {
|
||||
position: absolute; }
|
||||
|
||||
.sending-loader {
|
||||
display: none; }
|
||||
|
||||
label {
|
||||
position: relative; }
|
||||
label [type='text'], label [type='password'], label [type='date'], label [type='datetime'], label [type='datetime-local'], label [type='month'], label [type='week'], label [type='email'], label [type='number'], label [type='search'], label [type='tel'], label [type='time'], label [type='url'], label [type='color'], label textarea, label input[type=text], label input:not([type]) {
|
||||
display: block;
|
||||
width: 100%;
|
||||
height: 2.4375rem;
|
||||
margin: 0 0 1rem;
|
||||
padding: 0.5rem;
|
||||
box-shadow: none !important;
|
||||
font-size: 1rem;
|
||||
font-weight: normal;
|
||||
line-height: 1.5;
|
||||
border: none;
|
||||
border-bottom: solid black;
|
||||
outline: 0;
|
||||
margin-bottom: 15px; }
|
||||
label [type='text']:focus, label [type='password']:focus, label [type='date']:focus, label [type='datetime']:focus, label [type='datetime-local']:focus, label [type='month']:focus, label [type='week']:focus, label [type='email']:focus, label [type='number']:focus, label [type='search']:focus, label [type='tel']:focus, label [type='time']:focus, label [type='url']:focus, label [type='color']:focus, label textarea:focus, label input[type=text]:focus, label input:not([type]):focus {
|
||||
border: none;
|
||||
box-shadow: none !important;
|
||||
border-bottom: solid black; }
|
||||
label [type='text']:focus ~ span, label [type='text'].notEmpty:not(:focus) ~ span, label [type='password']:focus ~ span, label [type='password'].notEmpty:not(:focus) ~ span, label [type='date']:focus ~ span, label [type='date'].notEmpty:not(:focus) ~ span, label [type='datetime']:focus ~ span, label [type='datetime'].notEmpty:not(:focus) ~ span, label [type='datetime-local']:focus ~ span, label [type='datetime-local'].notEmpty:not(:focus) ~ span, label [type='month']:focus ~ span, label [type='month'].notEmpty:not(:focus) ~ span, label [type='week']:focus ~ span, label [type='week'].notEmpty:not(:focus) ~ span, label [type='email']:focus ~ span, label [type='email'].notEmpty:not(:focus) ~ span, label [type='number']:focus ~ span, label [type='number'].notEmpty:not(:focus) ~ span, label [type='search']:focus ~ span, label [type='search'].notEmpty:not(:focus) ~ span, label [type='tel']:focus ~ span, label [type='tel'].notEmpty:not(:focus) ~ span, label [type='time']:focus ~ span, label [type='time'].notEmpty:not(:focus) ~ span, label [type='url']:focus ~ span, label [type='url'].notEmpty:not(:focus) ~ span, label [type='color']:focus ~ span, label [type='color'].notEmpty:not(:focus) ~ span, label textarea:focus ~ span, label textarea.notEmpty:not(:focus) ~ span, label input[type=text]:focus ~ span, label input[type=text].notEmpty:not(:focus) ~ span, label input:not([type]):focus ~ span, label input:not([type]).notEmpty:not(:focus) ~ span {
|
||||
top: -11px;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
font-size: 11px;
|
||||
opacity: 1;
|
||||
color: black; }
|
||||
label [type='text'] ~ span, label [type='password'] ~ span, label [type='date'] ~ span, label [type='datetime'] ~ span, label [type='datetime-local'] ~ span, label [type='month'] ~ span, label [type='week'] ~ span, label [type='email'] ~ span, label [type='number'] ~ span, label [type='search'] ~ span, label [type='tel'] ~ span, label [type='time'] ~ span, label [type='url'] ~ span, label [type='color'] ~ span, label textarea ~ span, label input[type=text] ~ span, label input:not([type]) ~ span {
|
||||
position: absolute;
|
||||
pointer-events: none;
|
||||
left: 10px;
|
||||
bottom: 10px;
|
||||
top: 7px;
|
||||
transition: 0.2s ease all;
|
||||
color: #626262; }
|
||||
|
||||
.listjs {
|
||||
position: relative; }
|
||||
.listjs label {
|
||||
display: inline-block; }
|
||||
.listjs label input {
|
||||
margin-bottom: 0; }
|
||||
.listjs table {
|
||||
border-collapse: collapse; }
|
||||
.listjs table thead tr th, .listjs table tfoot tr th {
|
||||
text-align: left; }
|
||||
.listjs table thead tr th.sort, .listjs table tfoot tr th.sort {
|
||||
cursor: pointer; }
|
||||
.listjs table tbody.list tr:first-child td {
|
||||
border-top: solid 1px #696969; }
|
||||
.listjs table tbody.list tr:last-child td {
|
||||
border-bottom: solid 1px #696969; }
|
||||
.listjs table tbody.list tr td {
|
||||
border-top: solid 1px #c8c8c8;
|
||||
padding: 0.3rem; }
|
||||
.listjs ul.pagination {
|
||||
float: right;
|
||||
display: inline-block;
|
||||
margin: 0; }
|
||||
.listjs ul.pagination li {
|
||||
display: inline-block;
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
text-decoration: underline; }
|
||||
.listjs ul.pagination li.active, .listjs ul.pagination li.disabled {
|
||||
text-decoration: none; }
|
||||
|
||||
/**
|
||||
* Foundation for Sites by ZURB
|
||||
* Version 6.4.3
|
||||
* foundation.zurb.com
|
||||
* Licensed under MIT Open Source
|
||||
*/
|
||||
*, :after, :before {
|
||||
box-sizing: inherit; }
|
||||
|
||||
html {
|
||||
min-height: 100%;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
font-size: 18px;
|
||||
letter-spacing: 1px; }
|
||||
|
||||
.max-height {
|
||||
height: 100%;
|
||||
min-height: 100%; }
|
||||
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
|
||||
font-weight: 400;
|
||||
line-height: 1.5;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
background: #fefefe;
|
||||
color: #0a0a0a; }
|
||||
|
||||
footer {
|
||||
border-top: #d8d8d8 solid 1px;
|
||||
text-align: center; }
|
||||
|
||||
.top-bar .top-bar-title strong {
|
||||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
/*margin-left: 8px;*/ }
|
||||
|
||||
nav.top-bar {
|
||||
color: #FFF;
|
||||
background: red;
|
||||
font-size: 20px;
|
||||
box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 2px 9px 1px rgba(0, 0, 0, 0.12), 0 4px 2px -2px rgba(0, 0, 0, 0.2);
|
||||
padding: 0.6rem;
|
||||
display: block; }
|
||||
|
||||
.top-bar ul {
|
||||
background: red !important; }
|
||||
|
||||
button.button, a.button {
|
||||
border-radius: 2px;
|
||||
background-color: red; }
|
||||
button.button.disabled, button.button.disabled:hover, button.button.disabled:focus, a.button.disabled, a.button.disabled:hover, a.button.disabled:focus {
|
||||
background-color: red; }
|
||||
button.button:focus, button.button:hover, a.button:focus, a.button:hover {
|
||||
background-color: #e00000; }
|
||||
|
||||
.fill-me {
|
||||
display: flex;
|
||||
flex-direction: column; }
|
||||
.fill-me .grow {
|
||||
flex: 1; }
|
||||
|
||||
.flex-center {
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
display: flex;
|
||||
align-items: center; }
|
||||
.flex-center > * {
|
||||
max-height: 100%; }
|
||||
|
||||
.menu a, .dropdown.menu a {
|
||||
padding: 0.4rem 0.5rem; }
|
||||
|
||||
svg path {
|
||||
fill: currentColor; }
|
||||
|
||||
div.mainContainer {
|
||||
position: relative;
|
||||
max-height: 100%;
|
||||
max-width: 100%;
|
||||
overflow: auto;
|
||||
flex: 1;
|
||||
margin: 0.5rem; }
|
||||
div.mainContainer > .row, div.mainContainer #main-content, div.mainContainer #site-content {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0; }
|
||||
|
||||
.inline-block {
|
||||
display: inline-block; }
|
||||
|
||||
.right {
|
||||
float: right; }
|
||||
|
||||
#logo-img {
|
||||
max-height: 2.2rem; }
|
||||
|
||||
a {
|
||||
text-decoration: none;
|
||||
cursor: pointer;
|
||||
color: inherit; }
|
||||
|
||||
a.hidden-link {
|
||||
text-decoration: none;
|
||||
color: inherit; }
|
||||
|
||||
label {
|
||||
cursor: pointer; }
|
||||
|
||||
.align-right {
|
||||
text-align: right; }
|
||||
|
||||
.view-panel {
|
||||
display: none; }
|
||||
|
||||
.loader {
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
position: fixed;
|
||||
-webkit-transform: translate(-50%, -50%);
|
||||
transform: translate(-50%, -50%);
|
||||
text-align: center; }
|
||||
.loader #spinner {
|
||||
box-sizing: border-box;
|
||||
stroke: #b71c1a;
|
||||
stroke-width: 3px;
|
||||
transform-origin: 50%;
|
||||
animation: line 1.6s cubic-bezier(0.4, 0, 0.2, 1) infinite, rotate 1.6s linear infinite; }
|
||||
|
||||
@keyframes rotate {
|
||||
from {
|
||||
transform: rotate(0); }
|
||||
to {
|
||||
transform: rotate(450deg); } }
|
||||
@keyframes line {
|
||||
0% {
|
||||
stroke-dasharray: 2, 85.964;
|
||||
transform: rotate(0); }
|
||||
50% {
|
||||
stroke-dasharray: 65.973, 21.9911;
|
||||
stroke-dashoffset: 0; }
|
||||
100% {
|
||||
stroke-dasharray: 2, 85.964;
|
||||
stroke-dashoffset: -65.973;
|
||||
transform: rotate(90deg); } }
|
||||
#print-content {
|
||||
display: none; }
|
||||
|
||||
.action-button {
|
||||
max-height: 1.7rem;
|
||||
margin-left: 0.4rem;
|
||||
margin-right: 0.4rem; }
|
||||
.action-button:hover {
|
||||
background: #e8e8e8; }
|
||||
|
||||
.vcenter-container {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
display: table; }
|
||||
.vcenter-container .vcenter {
|
||||
vertical-align: middle;
|
||||
display: table-cell;
|
||||
flex-direction: column;
|
||||
justify-content: center; }
|
||||
|
||||
.max-width {
|
||||
width: 100%; }
|
||||
|
||||
input, button {
|
||||
letter-spacing: 1px !important; }
|
||||
|
||||
.no-padding {
|
||||
padding: 0;
|
||||
border: 0; }
|
||||
|
||||
.center {
|
||||
text-align: center; }
|
||||
|
||||
@media print {
|
||||
nav, .mainContainer, footer, #styles {
|
||||
display: none !important; }
|
||||
|
||||
#print-content {
|
||||
display: block !important; } }
|
||||
.overflow-y-auto {
|
||||
overflow-y: auto !important; }
|
||||
|
||||
.row.no-after:after {
|
||||
content: initial; }
|
||||
|
||||
.margin-bottom {
|
||||
margin-bottom: 1rem; }
|
||||
@media print, screen and (min-width: 25em) {
|
||||
.margin-bottom {
|
||||
margin-bottom: 2rem; } }
|
||||
@media print, screen and (min-width: 40em) {
|
||||
.margin-bottom {
|
||||
margin-bottom: 3rem; } }
|
||||
@media print, screen and (min-width: 64em) {
|
||||
.margin-bottom {
|
||||
margin-bottom: 4rem; } }
|
||||
@media screen and (min-width: 75em) {
|
||||
.margin-bottom {
|
||||
margin-bottom: 5rem; } }
|
||||
|
||||
.font-small {
|
||||
font-size: 0.7em; }
|
||||
|
||||
.border-bottom {
|
||||
border-bottom: 1px solid #cacaca; }
|
||||
|
||||
.border-right {
|
||||
border-right: 1px solid #cacaca; }
|
||||
|
||||
.border-left {
|
||||
border-left: 1px solid #cacaca; }
|
||||
|
||||
img.logo {
|
||||
vertical-align: inherit;
|
||||
display: inline-block;
|
||||
height: auto;
|
||||
max-width: 1.1rem;
|
||||
margin-right: 2px; }
|
||||
|
||||
.align-center {
|
||||
text-align: center; }
|
||||
|
||||
hr.separator {
|
||||
margin: 1rem 0; }
|
||||
|
||||
.button-line {
|
||||
display: flex; }
|
||||
.button-line .button {
|
||||
flex: 1;
|
||||
margin-left: 1px;
|
||||
margin-right: 1px;
|
||||
padding: 0.5rem 0.77rem; }
|
||||
|
||||
@media screen and (max-width: 24.9375em) {
|
||||
.small-small {
|
||||
font-size: small; } }
|
||||
|
||||
select {
|
||||
border: 0;
|
||||
padding: 0.3rem 0.3rem; }
|
||||
|
||||
.share-icon {
|
||||
max-width: 1.5rem;
|
||||
margin: 0.1rem; }
|
||||
|
||||
.hidden {
|
||||
display: none; }
|
||||
|
||||
.no-transition {
|
||||
transition: none !important; }
|
||||
|
||||
img.action-image {
|
||||
max-height: 1.4rem;
|
||||
cursor: pointer; }
|
||||
|
||||
img.back-button {
|
||||
max-height: 0.6rem;
|
||||
margin-right: 0.2rem;
|
||||
cursor: pointer;
|
||||
vertical-align: inherit; }
|
||||
|
||||
.no-margin-bottom {
|
||||
margin-bottom: 0; }
|
||||
40
public/core/css/flashMessenger.css
Normal file
40
public/core/css/flashMessenger.css
Normal file
@@ -0,0 +1,40 @@
|
||||
div.flashMessage {
|
||||
font-size: 0.8rem;
|
||||
border-radius: 25px;
|
||||
letter-spacing: 0;
|
||||
z-index: 1001;
|
||||
max-width: 100%;
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.28);
|
||||
border: 1px solid #626262;
|
||||
background-color: #6b6b6b;
|
||||
padding: .3em .6em;
|
||||
text-align: center;
|
||||
color: white; }
|
||||
div.flashMessage:hover {
|
||||
opacity: .4;
|
||||
cursor: pointer; }
|
||||
div.flashMessage:before, div.flashMessage:after {
|
||||
display: block;
|
||||
content: ""; }
|
||||
|
||||
span.flashMessage {
|
||||
float: right;
|
||||
cursor: pointer; }
|
||||
|
||||
div.default {
|
||||
background-color: #1a9cc8; }
|
||||
|
||||
#flashMessageContainer {
|
||||
text-align: center;
|
||||
position: absolute; }
|
||||
|
||||
#flashMessageContainer, #flashMessageContainerAbsoulte {
|
||||
height: 0 !important;
|
||||
width: 100%;
|
||||
overflow: visible !important; }
|
||||
|
||||
#flashMessageContainerAbsoulte {
|
||||
margin: 5px 0;
|
||||
position: relative; }
|
||||
3240
public/core/css/foundation.css
vendored
Normal file
3240
public/core/css/foundation.css
vendored
Normal file
File diff suppressed because it is too large
Load Diff
71
public/core/css/framework.css
Normal file
71
public/core/css/framework.css
Normal file
@@ -0,0 +1,71 @@
|
||||
.background {
|
||||
position: fixed;
|
||||
z-index: 1000000;
|
||||
left: 0;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
overflow: auto;
|
||||
background-color: black;
|
||||
/* Fallback color */
|
||||
background-color: rgba(0, 0, 0, 0.56); }
|
||||
.background .modal {
|
||||
position: relative;
|
||||
top: 50%;
|
||||
margin: auto;
|
||||
width: 80%;
|
||||
background-color: #fefefe;
|
||||
transform: translateY(-50%);
|
||||
padding: 0.5rem;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
max-height: 80%;
|
||||
max-width: 1024px; }
|
||||
@media screen and (max-width: 63.9375em) {
|
||||
.background .modal.small-margin {
|
||||
width: 90%; } }
|
||||
@media screen and (max-width: 24.9375em) {
|
||||
.background .modal.small-margin {
|
||||
width: 95%; } }
|
||||
.background .modal.max-small {
|
||||
max-width: 0px; }
|
||||
.background .modal.max-smedium {
|
||||
max-width: 400px; }
|
||||
.background .modal.max-medium {
|
||||
max-width: 640px; }
|
||||
.background .modal.max-large {
|
||||
max-width: 1024px; }
|
||||
.background .modal.max-xlarge {
|
||||
max-width: 1200px; }
|
||||
.background .modal.max-xxlarge {
|
||||
max-width: 1440px; }
|
||||
.background .modal .title {
|
||||
font-weight: bold;
|
||||
padding-bottom: 0.5rem; }
|
||||
.background .modal .content-container {
|
||||
overflow-y: auto;
|
||||
max-height: 100%; }
|
||||
.background .modal .content-container .loader {
|
||||
position: static;
|
||||
transform: none; }
|
||||
.background .modal .close {
|
||||
text-align: right;
|
||||
color: #aaa;
|
||||
float: right;
|
||||
font-size: 28px;
|
||||
font-weight: bold;
|
||||
line-height: 1; }
|
||||
.background .modal .close:hover, .background .modal .close:focus {
|
||||
color: black;
|
||||
text-decoration: none;
|
||||
cursor: pointer; }
|
||||
.background .modal .modal-button-container {
|
||||
padding-top: 0.5rem; }
|
||||
.background .modal .modal-button-container .button {
|
||||
margin-left: 0.2rem;
|
||||
margin-bottom: 0 !important;
|
||||
padding: 0.6em 0.8em; }
|
||||
@media screen and (max-width: 24.9375em) {
|
||||
.background .modal .modal-button-container .button {
|
||||
margin-left: 0.1rem;
|
||||
padding: 0.3em 0.5em; } }
|
||||
17
public/core/css/settingsSite.css
Normal file
17
public/core/css/settingsSite.css
Normal file
@@ -0,0 +1,17 @@
|
||||
/**
|
||||
* Foundation for Sites by ZURB
|
||||
* Version 6.4.3
|
||||
* foundation.zurb.com
|
||||
* Licensed under MIT Open Source
|
||||
*/
|
||||
.settings-container {
|
||||
border: 1px solid black;
|
||||
border-radius: 2px;
|
||||
padding: 0.3rem; }
|
||||
@media print, screen and (min-width: 40em) {
|
||||
.settings-container #settings-fragments-container {
|
||||
border-left: 1px solid #cacaca; } }
|
||||
.settings-container #settings-fragments-container #settings-fragments > * {
|
||||
display: none; }
|
||||
.settings-container #settings-fragments-container #settings-fragments > *.active {
|
||||
display: block; }
|
||||
97
public/core/css/style.css
Normal file
97
public/core/css/style.css
Normal file
@@ -0,0 +1,97 @@
|
||||
.zf-green {
|
||||
color: #68b604; }
|
||||
|
||||
.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
|
||||
float: left; }
|
||||
|
||||
input[type=checkBox].form-control {
|
||||
height: 24px;
|
||||
height: 1.5rem;
|
||||
width: 100%; }
|
||||
|
||||
[type=submit] {
|
||||
display: block;
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
height: 39px;
|
||||
height: 2.4375rem;
|
||||
padding: 8px;
|
||||
padding: .5rem;
|
||||
border: 1px solid #cacaca;
|
||||
margin: 0 0 16px;
|
||||
margin: 0 0 1rem;
|
||||
font-family: inherit;
|
||||
font-size: 16px;
|
||||
font-size: 1rem;
|
||||
color: #0a0a0a;
|
||||
background-color: #fefefe;
|
||||
box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
|
||||
border-radius: 0;
|
||||
transition: box-shadow .5s, border-color .25s ease-in-out;
|
||||
-webkit-appearance: none;
|
||||
-moz-appearance: none; }
|
||||
|
||||
form ul li {
|
||||
color: red;
|
||||
font-size: 12.8px;
|
||||
font-size: 0.8rem; }
|
||||
|
||||
.button-dropdown:after {
|
||||
border-color: #000 transparent transparent;
|
||||
border-width: .4em;
|
||||
border-style: solid;
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: .4em;
|
||||
display: block;
|
||||
height: 0;
|
||||
width: 0;
|
||||
right: 1em; }
|
||||
|
||||
.button-dropdown {
|
||||
position: relative;
|
||||
display: block;
|
||||
padding-right: 2em; }
|
||||
|
||||
.button-dropdown.open:after {
|
||||
border-color: transparent transparent #000;
|
||||
top: 0; }
|
||||
|
||||
a.ui-datepicker-next, a.ui-datepicker-prev {
|
||||
height: 100% !important; }
|
||||
|
||||
div.container a.navbar-brand > img {
|
||||
display: inline;
|
||||
margin-right: 4px; }
|
||||
|
||||
ul.menu.plain li.active a {
|
||||
background-color: #ededed;
|
||||
color: #000; }
|
||||
|
||||
ul.menu.plain li a {
|
||||
color: #000; }
|
||||
|
||||
ul.menu.plain li a:hover {
|
||||
color: #525252; }
|
||||
|
||||
ul.submenu {
|
||||
border-top: 1px solid #bcbcbc;
|
||||
border-bottom: 1px solid #bcbcbc;
|
||||
margin-left: 10px; }
|
||||
|
||||
a.link:hover {
|
||||
text-decoration: underline; }
|
||||
|
||||
#cookie-compliance {
|
||||
width: 100%;
|
||||
margin: 0 0;
|
||||
padding: 0.3rem 0; }
|
||||
#cookie-compliance #close-cookie-msg {
|
||||
float: right;
|
||||
margin-bottom: 0;
|
||||
margin-right: 3px;
|
||||
padding: 0.4rem 0.8rem; }
|
||||
|
||||
.menu-container .button {
|
||||
text-align: center;
|
||||
width: 100%; }
|
||||
91
public/core/css/theme.css
Normal file
91
public/core/css/theme.css
Normal file
@@ -0,0 +1,91 @@
|
||||
* {
|
||||
transition: .25s ease-out, color .25s ease-out; }
|
||||
|
||||
body #cookie-compliance {
|
||||
background-color: #870015;
|
||||
color: white; }
|
||||
body a.link {
|
||||
color: #ff3d00; }
|
||||
body.blue #cookie-compliance {
|
||||
background-color: #1a3062;
|
||||
color: white; }
|
||||
body.blue a.link {
|
||||
color: #546cfe; }
|
||||
body.blue .loader #spinner {
|
||||
stroke: #673AB7; }
|
||||
body.blue nav.top-bar {
|
||||
color: #FFF;
|
||||
background: #2c58ae; }
|
||||
body.blue .top-bar ul {
|
||||
background: #2c58ae !important; }
|
||||
body.blue .top-bar ul a {
|
||||
color: #FFF; }
|
||||
body.blue button.button, body.blue a.button {
|
||||
background-color: #2c58ae; }
|
||||
body.blue button.button.disabled, body.blue button.button.disabled:hover, body.blue button.button.disabled:focus, body.blue a.button.disabled, body.blue a.button.disabled:hover, body.blue a.button.disabled:focus {
|
||||
background-color: #2c58ae; }
|
||||
body.black #cookie-compliance {
|
||||
background-color: #353535;
|
||||
color: white; }
|
||||
body.black #cookie-compliance a.link {
|
||||
color: white;
|
||||
border-bottom-color: white; }
|
||||
body.black #cookie-compliance a.link:hover {
|
||||
color: #cacaca;
|
||||
border-bottom-color: #cacaca; }
|
||||
body.black a.link {
|
||||
color: #000000;
|
||||
text-decoration: none;
|
||||
border-bottom: 1px solid #000000; }
|
||||
body.black a.link:hover {
|
||||
color: #4e4e4e;
|
||||
border-bottom-color: #4e4e4e; }
|
||||
body.black .loader #spinner {
|
||||
stroke: black; }
|
||||
body.black nav.top-bar {
|
||||
color: #FFF;
|
||||
background: #000000; }
|
||||
body.black .top-bar ul {
|
||||
background: #000000 !important; }
|
||||
body.black .top-bar ul a {
|
||||
color: #FFF; }
|
||||
body.black button.button, body.black a.button {
|
||||
background-color: black; }
|
||||
body.black button.button.disabled, body.black button.button.disabled:hover, body.black button.button.disabled:focus, body.black a.button.disabled, body.black a.button.disabled:hover, body.black a.button.disabled:focus {
|
||||
background-color: black; }
|
||||
body.green #cookie-compliance {
|
||||
background-color: #003613;
|
||||
color: white; }
|
||||
body.green a.link {
|
||||
color: #009829; }
|
||||
body.green .loader #spinner {
|
||||
stroke: green; }
|
||||
body.green nav.top-bar {
|
||||
color: #FFF;
|
||||
background: green; }
|
||||
body.green .top-bar ul {
|
||||
background: green !important; }
|
||||
body.green .top-bar ul a {
|
||||
color: #FFF; }
|
||||
body.green button.button, body.green a.button {
|
||||
background-color: green; }
|
||||
body.green button.button.disabled, body.green button.button.disabled:hover, body.green button.button.disabled:focus, body.green a.button.disabled, body.green a.button.disabled:hover, body.green a.button.disabled:focus {
|
||||
background-color: green; }
|
||||
body.pink #cookie-compliance {
|
||||
background-color: #70374a;
|
||||
color: white; }
|
||||
body.pink a.link {
|
||||
color: #fe64af; }
|
||||
body.pink .loader #spinner {
|
||||
stroke: #ff69b4; }
|
||||
body.pink nav.top-bar {
|
||||
color: #FFF;
|
||||
background: #ff69b4; }
|
||||
body.pink .top-bar ul {
|
||||
background: #ff69b4 !important; }
|
||||
body.pink .top-bar ul a {
|
||||
color: #FFF; }
|
||||
body.pink button.button, body.pink a.button {
|
||||
background-color: #ff69b4; }
|
||||
body.pink button.button.disabled, body.pink button.button.disabled:hover, body.pink button.button.disabled:focus, body.pink a.button.disabled, body.pink a.button.disabled:hover, body.pink a.button.disabled:focus {
|
||||
background-color: #ff69b4; }
|
||||
1
public/core/html/load.html
Normal file
1
public/core/html/load.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class=loader><svg viewBox="0 0 32 32" width=32 height=32><circle r=14 id=spinner cx=16 cy=16 fill=none></circle></svg></div>
|
||||
1
public/core/html/settings.html
Normal file
1
public/core/html/settings.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class="max-height fill-me"><h2 data-translation=settings></h2><div class="settings-container grow"><div class="row max-height"><div class="columns small-12 medium-4"><h3 class=show-for-medium> </h3><ul class="menu vertical plain dropdown" id=settings-fragment-list></ul></div><div class="columns small-12 medium-8 max-height" id=settings-fragments-container><div id=settings-fragments></div></div></div></div></div>
|
||||
1
public/core/html/smartList.html
Normal file
1
public/core/html/smartList.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class=listjs><div class=sending-loader><div class=loader><svg viewBox="0 0 32 32" width=32 height=32><circle r=14 id=spinner cx=16 cy=16 fill=none></circle></svg></div></div><div><label><input class=fuzzy-search> <span data-translation=search></span></label><span class=right><span data-translation=site></span><ul class=pagination></ul></span></div><table class=max-width><thead><tbody class=list><tfoot></table></div>
|
||||
1
public/css/stories.css
Normal file
1
public/css/stories.css
Normal file
@@ -0,0 +1 @@
|
||||
.author{color:#979797}.author:after{content:":";padding-right:2px}.author-image-container,.chat-img-container{width:2.4rem;position:relative}.author-image-container .author-image,.author-image-container .chat-img,.chat-img-container .author-image,.chat-img-container .chat-img{position:absolute;margin:.2em;border-radius:50%;width:1.8em}.chat{border-bottom:1px solid #ececec}.chat.overview{cursor:pointer}.chat .chat-name{font-weight:700}.chat .chat-last-message{color:#555;overflow:hidden;white-space:nowrap}.chat .chat-last-message .isWriting{color:#aa1c1d}.chat .chat-last-message-timestamp{font-size:.8rem}.chat .unread-message-counter{background-color:red;border-radius:50%;color:#fff;font-size:.7rem;border:1px solid #9b0000;width:1.2rem;height:1.2rem;line-height:1.2rem;text-align:center;vertical-align:middle}.chat .unread-message-counter:empty{display:none}#chat-title{border-bottom:none}#chat-title .chat-img{width:1.4em;position:relative}.message{margin-bottom:.1rem}.message.my-message{text-align:right}.message.my-message .author,.message.my-message .author-image-container{display:none}.message.my-message .bubble{background-color:rgba(255,0,0,.5);border-radius:5px 5px 0 5px}.message .author-image{bottom:0}.message .bubble{display:inline-block;padding:.2rem;border:1px solid #646464;border-radius:5px 5px 5px 0;max-width:80%;text-align:left}.message .bubble .author{font-size:.7rem;text-align:left;line-height:.9}.message .bubble .message-text{line-height:1}.message .bubble .time{line-height:.9;font-size:.5rem;text-align:right}#answer{text-align:center;height:100%;min-height:50px}.answer-button-container .answer-button{overflow:hidden;margin:-.1em 0 0;font-size:3rem;line-height:1;padding:0 .1em .1em;text-align:center;vertical-align:middle}#author-list .author-entry{border-bottom:1px solid #ececec}#author-list .author-entry .author-image-container .author-image{position:relative}#author-list .author-entry .user-flag{display:none}#author-list .author-entry.isUser .user-flag{display:inherit}
|
||||
40
public/data.php
Executable file
40
public/data.php
Executable file
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
|
||||
use Zend\Mvc\Application;
|
||||
use Zend\Stdlib\ArrayUtils;
|
||||
|
||||
/**
|
||||
* This makes our life easier when dealing with paths. Everything is relative
|
||||
* to the application root now.
|
||||
*/
|
||||
chdir(dirname(__DIR__));
|
||||
|
||||
// Decline static file requests back to the PHP built-in webserver
|
||||
if (php_sapi_name() === 'cli-server') {
|
||||
$path = realpath(__DIR__ . parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH));
|
||||
if (__FILE__ !== $path && is_file($path)) {
|
||||
return false;
|
||||
}
|
||||
unset($path);
|
||||
}
|
||||
|
||||
// Composer autoloading
|
||||
include __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
if (! class_exists(Application::class)) {
|
||||
throw new RuntimeException(
|
||||
"Unable to load application.\n"
|
||||
. "- Type `composer install` if you are developing locally.\n"
|
||||
. "- Type `vagrant ssh -c 'composer install'` if you are using Vagrant.\n"
|
||||
. "- Type `docker-compose run zf composer install` if you are using Docker.\n"
|
||||
);
|
||||
}
|
||||
|
||||
// Retrieve configuration
|
||||
$appConfig = require __DIR__ . '/../config/application.config.php';
|
||||
if (file_exists(__DIR__ . '/../config/development.config.php')) {
|
||||
$appConfig = ArrayUtils::merge($appConfig, require __DIR__ . '/../config/development.config.php');
|
||||
}
|
||||
|
||||
// Run the application!
|
||||
Application::init($appConfig)->run();
|
||||
1
public/html/application/chat.html
Normal file
1
public/html/application/chat.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class=max-height><span id=chat-title class=chat><span class=chat-img-container><img class=chat-img></span><span class=chat-name></span></span><div id=date-template><div class=date></div></div><div id=message-template class="fill-me vertical message"><div class=author-image-container><img class=author-image></div><div class=grow><div class=bubble><div class=author></div><div class=message-text></div><div class=time></div></div></div></div><div class="fill-me max-height"><div class=grow id=message-container></div><div><div id=send-container class="fill-me vertical"><div class=answer-button-container><button id=previous-button class=answer-button><</button></div><div class=grow id=answer></div><div class=answer-button-container><button id=next-button class=answer-button>></button></div></div></div></div></div>
|
||||
1
public/html/application/clock.html
Normal file
1
public/html/application/clock.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class=row><div class="small-12 smedium-6 columns" data-translation=current-time>Current time:</div><div class="small-12 smedium-6 columns" id=current-time>???</div></div>
|
||||
1
public/html/application/editStory.html
Normal file
1
public/html/application/editStory.html
Normal file
@@ -0,0 +1 @@
|
||||
<div><div id=tabs></div></div>
|
||||
@@ -0,0 +1 @@
|
||||
<div><div id=author-template class="author-entry fill-me vertical"><div class=author-image-container><img class=author-image></div><div class="author-name grow"></div><div class=user-flag>1</div></div><div id=author-list></div></div>
|
||||
@@ -0,0 +1 @@
|
||||
<div>chats</div>
|
||||
1
public/html/application/fragment/settingsFragment.html
Normal file
1
public/html/application/fragment/settingsFragment.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class="max-height fill-me"><div class="row max-width grow flex-center"><div class="columns small-centered small-12 smedium-9 medium-11 large-7"><h3 data-translation=ask-settings></h3><label class=row><span class="columns small-6" data-translation=ignore-card-always></span> <span class="columns small-6"><input type=checkbox class=setting name=ignore-card-always value=true></span></label><h5 data-translation=settings-ignore-buttons-heading></h5><p data-translation=settings-ignore-buttons-explanation><div class=row><div class="columns small-12 smedium-6"><label><input class=setting required name=ignore-button-1-text data-default=ignore-card-1 data-default-translateable=1> <span data-translation=settings-ignore-button-1-text></span></label></div><div class="columns small-12 smedium-6"><label><input type=number class=setting required name=ignore-button-1-time data-default=120> <span data-translation=settings-ignore-button-1-time></span></label></div></div><div class=row><div class="columns small-12 smedium-6"><label><input class=setting required name=ignore-button-2-text data-default=ignore-card-2 data-default-translateable=1> <span data-translation=settings-ignore-button-2-text></span></label></div><div class="columns small-12 smedium-6"><label><input type=number class=setting required name=ignore-button-2-time data-default=1440> <span data-translation=settings-ignore-button-2-time></span></label></div></div><div class=row><div class="columns small-12 smedium-6"><label><input class=setting required name=ignore-button-3-text data-default=ignore-card-3 data-default-translateable=1> <span data-translation=settings-ignore-button-3-text></span></label></div><div class="columns small-12 smedium-6"><label><input type=number class=setting required name=ignore-button-3-time data-default=7200> <span data-translation=settings-ignore-button-3-time></span></label></div></div><div class=row><div class="columns small-12 smedium-6"><label><input class=setting required name=ignore-button-4-text data-default=ignore-card-4 data-default-translateable=1> <span data-translation=settings-ignore-button-4-text></span></label></div><div class="columns small-12 smedium-6"><label><input type=number class=setting required name=ignore-button-4-time data-default=525600> <span data-translation=settings-ignore-button-4-time></span></label></div></div></div></div></div>
|
||||
1
public/html/application/storyOverview.html
Normal file
1
public/html/application/storyOverview.html
Normal file
@@ -0,0 +1 @@
|
||||
<div><div id=chat-template class="chat overview fill-me vertical"><div class=chat-img-container><img class=chat-img></div><div class=grow><div class="fill-me vertical"><div class="chat-name grow"></div><div class=unread-message-counter></div></div><div class="fill-me vertical"><div class="chat-last-message grow"></div><div class=chat-last-message-timestamp></div></div></div></div><div id=chat-container></div></div>
|
||||
1
public/html/authorOverviewFragment.html
Normal file
1
public/html/authorOverviewFragment.html
Normal file
@@ -0,0 +1 @@
|
||||
<div><div id=author-template class="author-entry fill-me vertical"><div class=author-image-container><img class=author-image></div><div class="author-name grow"></div><div class=user-flag>1</div></div><div id=author-list></div></div>
|
||||
1
public/html/chat.html
Normal file
1
public/html/chat.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class=max-height><span id=chat-title class=chat><span class=chat-img-container><img class=chat-img></span><span class=chat-name></span></span><div id=date-template><div class=date></div></div><div id=message-template class="fill-me vertical message"><div class=author-image-container><img class=author-image></div><div class=grow><div class=bubble><div class=author></div><div class=message-text></div><div class=time></div></div></div></div><div class="fill-me max-height"><div class=grow id=message-container></div><div><div id=send-container class="fill-me vertical"><div class=answer-button-container><button id=previous-button class=answer-button><</button></div><div class=grow id=answer></div><div class=answer-button-container><button id=next-button class=answer-button>></button></div></div></div></div></div>
|
||||
1
public/html/chatOverviewFragment.html
Normal file
1
public/html/chatOverviewFragment.html
Normal file
@@ -0,0 +1 @@
|
||||
<div>chats</div>
|
||||
1
public/html/editStory.html
Normal file
1
public/html/editStory.html
Normal file
@@ -0,0 +1 @@
|
||||
<div><div id=tabs></div></div>
|
||||
4
public/img/share.svg
Normal file
4
public/img/share.svg
Normal file
@@ -0,0 +1,4 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48">
|
||||
<path d="M0 0h48v48h-48z" fill="none" />
|
||||
<path fill="white" stroke="white" d="M36 32.17c-1.52 0-2.89.59-3.93 1.54l-14.25-8.31c.11-.45.18-.92.18-1.4s-.07-.95-.18-1.4l14.1-8.23c1.07 1 2.5 1.62 4.08 1.62 3.31 0 6-2.69 6-6s-2.69-6-6-6-6 2.69-6 6c0 .48.07.95.18 1.4l-14.1 8.23c-1.07-1-2.5-1.62-4.08-1.62-3.31 0-6 2.69-6 6s2.69 6 6 6c1.58 0 3.01-.62 4.08-1.62l14.25 8.31c-.1.42-.16.86-.16 1.31 0 3.22 2.61 5.83 5.83 5.83s5.83-2.61 5.83-5.83-2.61-5.83-5.83-5.83z"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 558 B |
66
public/img/sms.svg
Normal file
66
public/img/sms.svg
Normal file
@@ -0,0 +1,66 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="168.21252mm"
|
||||
height="176.34952mm"
|
||||
viewBox="0 0 596.02863 624.86049"
|
||||
id="svg2"
|
||||
version="1.1"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="sms.svg">
|
||||
<defs
|
||||
id="defs4" />
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.35"
|
||||
inkscape:cx="278.72839"
|
||||
inkscape:cy="253.85692"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
showgrid="false"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0"
|
||||
inkscape:window-width="1855"
|
||||
inkscape:window-height="1056"
|
||||
inkscape:window-x="1985"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Ebene 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-96.271606,-161.35864)">
|
||||
<path
|
||||
style="fill:#94c630"
|
||||
d="m 226.78571,717.53552 0,-68.68386 -4.88516,-4.70867 c -6.42608,-6.19391 -9.23116,-6.71523 -36.9412,-6.86548 -24.78746,-0.1344 -32.98397,-1.22152 -43.95079,-5.82929 -15.56012,-6.53766 -29.88171,-19.84926 -37.02898,-34.4176 -8.389993,-17.10139 -7.693873,0.8413 -7.693873,-198.31128 l 0,-177.00001 3.30919,-9.5 c 4.257043,-12.22109 10.306203,-21.86381 18.862433,-30.06785 11.61523,-11.1371 24.97171,-17.63265 40.92353,-19.90201 5.72478,-0.81442 72.02563,-1.03614 240.40485,-0.80395 261.45563,0.36054 235.55345,-0.46199 253,8.03402 7.01459,3.41591 10.16895,5.80822 18.05026,13.68953 7.8784,7.8784 10.27528,11.03826 13.69183,18.05026 8.46606,17.37539 7.75791,-0.69816 7.75791,198.00001 0,198.69816 0.70815,180.62461 -7.75791,198 -3.41655,7.012 -5.81343,10.17186 -13.69183,18.05026 -7.88131,7.88131 -11.03567,10.27362 -18.05026,13.68953 -16.96959,8.26374 -5.62767,7.61008 -142.59678,8.21816 -105.14414,0.46679 -122.36103,0.74554 -124,2.00762 -3.09839,2.3859 -36.06645,33.0732 -145.876,135.78421 -6.61497,6.1873 -12.36472,11.2498 -12.77722,11.25 -0.4125,10e-5 -0.75,-30.9075 -0.75,-68.6836 z"
|
||||
id="path3353"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.9 KiB |
17
public/img/telegram.svg
Normal file
17
public/img/telegram.svg
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 240 240">
|
||||
<defs>
|
||||
<linearGradient id="b" x1="0.6667" y1="0.1667" x2="0.4167" y2="0.75">
|
||||
<stop stop-color="#37aee2" offset="0"/>
|
||||
<stop stop-color="#1e96c8" offset="1"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="w" x1="0.6597" y1="0.4369" x2="0.8512" y2="0.8024">
|
||||
<stop stop-color="#eff7fc" offset="0"/>
|
||||
<stop stop-color="#fff" offset="1"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<circle cx="120" cy="120" r="120" fill="url(#b)"/>
|
||||
<path fill="#c8daea" d="m98 175c-3.8876 0-3.227-1.4679-4.5678-5.1695L82 132.2059 170 80"/>
|
||||
<path fill="#a9c9dd" d="m98 175c3 0 4.3255-1.372 6-3l16-15.558-19.958-12.035"/>
|
||||
<path fill="url(#w)" d="m100.04 144.41 48.36 35.729c5.5185 3.0449 9.5014 1.4684 10.876-5.1235l19.685-92.763c2.0154-8.0802-3.0801-11.745-8.3594-9.3482l-115.59 44.571c-7.8901 3.1647-7.8441 7.5666-1.4382 9.528l29.663 9.2583 68.673-43.325c3.2419-1.9659 6.2173-0.90899 3.7752 1.2584"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 999 B |
BIN
public/img/test.png
Normal file
BIN
public/img/test.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.2 KiB |
65
public/img/whatsapp.svg
Normal file
65
public/img/whatsapp.svg
Normal file
@@ -0,0 +1,65 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 13.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.1"
|
||||
id="Layer_1"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="194.9763"
|
||||
height="194.49712"
|
||||
viewBox="0 0 194.9763 194.49711"
|
||||
enable-background="new 0 0 405.661 316.98"
|
||||
xml:space="preserve"
|
||||
inkscape:version="0.91 r13725"
|
||||
sodipodi:docname="whatsapp.svg"><metadata
|
||||
id="metadata3422"><rdf:RDF><cc:Work
|
||||
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
|
||||
id="defs3420" /><sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1855"
|
||||
inkscape:window-height="1056"
|
||||
id="namedview3418"
|
||||
showgrid="false"
|
||||
inkscape:zoom="2.8992364"
|
||||
inkscape:cx="90.564335"
|
||||
inkscape:cy="48.01468"
|
||||
inkscape:window-x="1985"
|
||||
inkscape:window-y="24"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="Layer_1"
|
||||
fit-margin-top="0"
|
||||
fit-margin-left="0"
|
||||
fit-margin-right="0"
|
||||
fit-margin-bottom="0" /><rect
|
||||
y="-12.951568"
|
||||
width="203.44708"
|
||||
height="209.61963"
|
||||
id="rect3408"
|
||||
x="-3.27195"
|
||||
style="fill:#ffffff" /><g
|
||||
id="g3410"
|
||||
transform="translate(-112.956,-10.627894)"><path
|
||||
d="m 112.956,205.125 c 5.281,-17.05 11.402,-33.26 16.998,-49.994 -37.095,-64.878 8.812,-137.915 70.991,-143.982 58.707,-5.729 106.841,36.439 106.987,93.988 0.153,60.723 -58.74,111.713 -124.985,90.988 -4.997,-1.563 -11.18,-6.657 -16.998,-6.999 -8.131,-0.479 -18.787,5.359 -26.997,7.999 -8.999,2.895 -16.824,5.796 -25.996,8 z m 54.993,-33.996 c 53.495,32.466 117.551,-3.949 122.985,-56.993 4.918,-48.019 -33.424,-90.745 -84.99,-86.989 -58.87,4.287 -94.232,74.559 -57.993,125.984 -3.208,8.791 -6.21,17.788 -8.999,26.997 9.822,-2.844 18.876,-6.455 28.997,-8.999 z"
|
||||
id="path3412"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill-rule:evenodd" /><!--<path--><!--d="m 138.953,180.128 c 2.789,-9.209 5.791,-18.206 8.999,-26.997 -36.24,-51.425 -0.877,-121.697 57.993,-125.984 51.566,-3.756 89.908,38.97 84.99,86.989 -5.434,53.043 -69.49,89.458 -122.985,56.993 -10.122,2.544 -19.176,6.155 -28.997,8.999 z M 165.95,95.139 c 8.578,24.126 44.126,56.803 69.991,57.993 12.26,0.564 26.755,-5.796 25.996,-22.997 -7.382,-5.283 -15.892,-9.438 -24.996,-12.998 -4.358,4.307 -7.783,9.548 -12.999,12.998 -15.685,-6.979 -27.717,-17.61 -34.995,-32.996 14.331,-7.816 5.627,-25.226 0,-36.996 -22.233,-6.699 -28.087,20.681 -22.997,34.996 z"--><!--id="path3414"--><!--inkscape:connector-curvature="0"--><!--style="clip-rule:evenodd;fill:#ffffff;fill-rule:evenodd" />--><path
|
||||
d="m 188.947,60.143 c 5.627,11.77 14.331,29.179 0,36.996 7.278,15.386 19.311,26.017 34.995,32.996 5.216,-3.45 8.641,-8.691 12.999,-12.998 9.104,3.561 17.614,7.715 24.996,12.998 0.759,17.201 -13.736,23.562 -25.996,22.997 -25.865,-1.19 -61.414,-33.867 -69.991,-57.993 -5.09,-14.315 0.764,-41.695 22.997,-34.996 z"
|
||||
id="path3416"
|
||||
inkscape:connector-curvature="0"
|
||||
style="clip-rule:evenodd;fill-rule:evenodd" /></g></svg>
|
||||
|
After Width: | Height: | Size: 3.7 KiB |
252
public/index.html
Executable file
252
public/index.html
Executable file
@@ -0,0 +1,252 @@
|
||||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/html" lang="de">
|
||||
<head>
|
||||
<!-- Global Site Tag (gtag.js) - Google Analytics -->
|
||||
<!--TODO Für Prod einkommentieren-->
|
||||
<!--<script async src="https://www.googletagmanager.com/gtag/js?id=UA-73144353-3"></script>-->
|
||||
<script>
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
|
||||
function gtag() {
|
||||
dataLayer.push(arguments)
|
||||
};
|
||||
gtag('js', new Date());
|
||||
|
||||
</script>
|
||||
|
||||
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||
<meta charset="utf-8">
|
||||
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta class='foundation-mq'>
|
||||
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
|
||||
<link rel="manifest" href="js/manifest.json">
|
||||
|
||||
<meta name="application-name" content="Matrix">
|
||||
<meta name="msapplication-config" content="img/browserconfig.xml">
|
||||
|
||||
<title>Stories</title>
|
||||
|
||||
<!-- Le styles -->
|
||||
<link href="core/css/foundation.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
<link href="core/css/framework.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
<link href="core/css/core.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
<link href="core/css/style.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
<link href="core/css/flashMessenger.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
<link href="core/css/theme.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
<link href="core/css/settingsSite.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
<link href="pwaAssets/css/pwaAssets.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
<link href="css/stories.css" media="screen,print" rel="stylesheet" type="text/css">
|
||||
|
||||
</head>
|
||||
<body class='blue'>
|
||||
|
||||
<div id='print-content'>
|
||||
</div>
|
||||
|
||||
<nav class="top-bar title-bar">
|
||||
<div class="row">
|
||||
<div class="top-bar-title">
|
||||
<strong>
|
||||
<a class="hidden-link" href=".">
|
||||
Stories</a>
|
||||
</strong>
|
||||
</div>
|
||||
<span data-responsive-toggle="responsive-menu" id="responsive-menu-toggle" class="right" data-hide-for="always"
|
||||
style="">
|
||||
<button class="menu-icon" type="button" data-toggle=""></button>
|
||||
</span>
|
||||
<div id="action-bar">
|
||||
<div class="top-bar-right">
|
||||
<ul class="menu dropdown horizontal action-bar" id="action-bar-visible">
|
||||
</ul>
|
||||
</div>
|
||||
<div id="responsive-menu" style="display: none;">
|
||||
<div class='close-listener'></div>
|
||||
<div class="top-bar-right">
|
||||
<ul class="menu vertical action-bar hidden accordion-menu" id="action-bar-hidden"
|
||||
data-responsive-menu="accordion medium-dropdown">
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<div id='cookie-compliance' style="display: none">
|
||||
<div class='row'>
|
||||
<div class='columns small-9 medium-10' data-translation="we-use-cookie-hint"></div>
|
||||
<div class='columns small-3 medium-2'>
|
||||
<button id='close-cookie-msg' data-translation="close" class='button'>Close</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mainContainer">
|
||||
<div class="row">
|
||||
<div class="columns small-12" id="main-content">
|
||||
<div id="site-content" role="main">
|
||||
<div class='loader'>
|
||||
<svg viewBox="0 0 32 32" width="32" height="32">
|
||||
<circle r="14" id="spinner" cx="16" cy="16" fill="none"></circle>
|
||||
</svg>
|
||||
</div>
|
||||
</div>
|
||||
<div id="flashMessageContainerAbsoulte">
|
||||
<div id="flashMessageContainer"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<footer>
|
||||
<!--<a data-site-name='policy' class='deep-link' data-translation="policy-heading">Privacy Policy</a>-->
|
||||
<a href="https://apps.silas.link" target="_blank" data-translation="other-apps">Other Apps</a>
|
||||
</footer>
|
||||
<script>
|
||||
|
||||
var initPromise;
|
||||
try {
|
||||
function init() {
|
||||
console.log("init started");
|
||||
initPromise = new Promise(function (resolve) {
|
||||
if (typeof Map === "undefined") {
|
||||
window.Map = function () {
|
||||
this.get = function (key) {
|
||||
var hash = this.__createHash(key);
|
||||
return this.__map[hash];
|
||||
};
|
||||
|
||||
this.set = function (key, value) {
|
||||
var hash = this.__createHash(key);
|
||||
this.__map[hash] = value;
|
||||
};
|
||||
|
||||
this.has = function (key) {
|
||||
var hash = this.__createHash(key);
|
||||
return this.__map[hash] === undefined;
|
||||
};
|
||||
|
||||
this.__createHash = function (key) {
|
||||
switch (typeof key) {
|
||||
case 'function':
|
||||
return 'function';
|
||||
|
||||
case 'undefined':
|
||||
return 'undefined';
|
||||
|
||||
case 'string':
|
||||
return '"' + key.replace('"', '""') + '"';
|
||||
|
||||
case 'object':
|
||||
if (!key) {
|
||||
return 'null';
|
||||
}
|
||||
|
||||
switch (Object.prototype.toString.apply(key)) {
|
||||
case '[object Array]':
|
||||
var elements = [];
|
||||
for (var i = 0; i < key.length; i++) {
|
||||
elements.push(this.__createHash(key[i]));
|
||||
}
|
||||
return '[' + elements.join(',') + ']';
|
||||
|
||||
case '[object Date]':
|
||||
return '#' + key.getUTCFullYear().toString()
|
||||
+ (key.getUTCMonth() + 1).toString()
|
||||
+ key.getUTCDate().toString()
|
||||
+ key.getUTCHours().toString()
|
||||
+ key.getUTCMinutes().toString()
|
||||
+ key.getUTCSeconds().toString() + '#';
|
||||
|
||||
default:
|
||||
var members = [];
|
||||
for (var m in key) {
|
||||
members.push(m + '=' + this.__createHash(key[m]));
|
||||
}
|
||||
members.sort();
|
||||
return '{' + members.join(',') + '}';
|
||||
}
|
||||
|
||||
default:
|
||||
return key.toString();
|
||||
}
|
||||
};
|
||||
|
||||
this.__map = {};
|
||||
}
|
||||
}
|
||||
resolve();
|
||||
}).then(function () {
|
||||
return new Promise(function (resolve) {
|
||||
if (document.readyState === 'complete') {
|
||||
resolve();
|
||||
}
|
||||
else {
|
||||
window.addEventListener("load", function () {
|
||||
resolve();
|
||||
});
|
||||
}
|
||||
});
|
||||
}).then(function () {
|
||||
if ('serviceWorker' in navigator) {
|
||||
console.log('sw in nav');
|
||||
navigator.serviceWorker.register("service-worker.js").then(function (reg) {
|
||||
if (reg.active) {
|
||||
return;
|
||||
}
|
||||
reg.addEventListener("updatefound", function () {
|
||||
var sw = (reg.installing || reg.waiting);
|
||||
});
|
||||
}).catch(function (err) {
|
||||
console.log("SW-Error: ", err);
|
||||
});
|
||||
}
|
||||
else {
|
||||
console.log('sw not in nav');
|
||||
}
|
||||
|
||||
}).then(function () {
|
||||
var appScript = document.createElement("script");
|
||||
appScript.defer = true;
|
||||
var result = new Promise(function (resolve) {
|
||||
appScript.onreadystatechange = function () {
|
||||
if (appScript.readyState === "loaded" || appScript.readyState === "complete") {
|
||||
appScript.onreadystatechange = null;
|
||||
resolve();
|
||||
}
|
||||
}
|
||||
});
|
||||
appScript.src = "js/app.js";
|
||||
// appScript.src = "js/app.min.js";
|
||||
document.body.appendChild(appScript);
|
||||
return result;
|
||||
}).catch(function (e) {
|
||||
console.log(e);
|
||||
alert("There was an Error:\n" + e + "\nMaybe your Browser is too old.");
|
||||
});
|
||||
}
|
||||
|
||||
if (typeof Promise === 'undefined') {
|
||||
// alert("Your Browser is maybe too old to run this site. Please update your browser!");
|
||||
var promiseScript = document.createElement("script");
|
||||
promiseScript.src = "//cdn.jsdelivr.net/bluebird/3.5.0/bluebird.min.js";
|
||||
promiseScript.onload = function () {
|
||||
init();
|
||||
};
|
||||
document.body.appendChild(promiseScript);
|
||||
}
|
||||
else {
|
||||
init();
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
console.log(e);
|
||||
var error = "There was an Error:\n" + e.message + "\n\nMaybe your Browser is too old.";
|
||||
alert(error);
|
||||
document.body.innerHTML = error;
|
||||
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
2957
public/js/app.js
Normal file
2957
public/js/app.js
Normal file
File diff suppressed because it is too large
Load Diff
1
public/js/lang/de.json
Normal file
1
public/js/lang/de.json
Normal file
File diff suppressed because one or more lines are too long
1
public/js/lang/en.json
Normal file
1
public/js/lang/en.json
Normal file
File diff suppressed because one or more lines are too long
19
public/js/manifest.json
Normal file
19
public/js/manifest.json
Normal file
@@ -0,0 +1,19 @@
|
||||
{
|
||||
"name": "Stories",
|
||||
"short_name":"Stories",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/img/android-chrome-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png"
|
||||
},
|
||||
{
|
||||
"src": "/img/android-chrome-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png"
|
||||
}
|
||||
],
|
||||
"background_color": "#ff0000",
|
||||
"display": "standalone",
|
||||
"start_url":"/"
|
||||
}
|
||||
10
public/pwaAssets/css/pwaAssets.css
Normal file
10
public/pwaAssets/css/pwaAssets.css
Normal file
@@ -0,0 +1,10 @@
|
||||
.tab-header-container .tab-header {
|
||||
display: inline-block;
|
||||
background-color: #eeeeee;
|
||||
border: 1px solid #b0b0b0;
|
||||
border-top-left-radius: 4px;
|
||||
border-top-right-radius: 4px;
|
||||
padding: 0 5px; }
|
||||
.tab-header-container .tab-header.active {
|
||||
border-bottom: 0;
|
||||
background-color: #FFF; }
|
||||
1
public/pwaAssets/html/fragment/tabbedFragment.html
Normal file
1
public/pwaAssets/html/fragment/tabbedFragment.html
Normal file
@@ -0,0 +1 @@
|
||||
<div><div class="tab-header-template tab-header"><div class=tab-name></div></div><div class=tab-header-container></div><div class=tab-container></div></div>
|
||||
1
public/userManagement/html/403.html
Normal file
1
public/userManagement/html/403.html
Normal file
@@ -0,0 +1 @@
|
||||
<div><h2 data-translation=not-allowed-title></h2><p data-translation=not-allowed></div>
|
||||
1
public/userManagement/html/editUserRoles.html
Normal file
1
public/userManagement/html/editUserRoles.html
Normal file
@@ -0,0 +1 @@
|
||||
<div><h3 data-translation=user-roles-heading></h3><h4 id=username class=no-margin-bottom></h4><h5 data-translation=user-roles-list class=no-margin-bottom></h5><div id=userRoles><div data-view=core/html/smartList.html></div></div><h5 data-translation=available-roles-list class=no-margin-bottom></h5><div id=availableRoles><div data-view=core/html/smartList.html></div></div></div>
|
||||
1
public/userManagement/html/forgotPassword.html
Normal file
1
public/userManagement/html/forgotPassword.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class="max-height fill-me"><div class="row grow flex-center"><div class="columns small-centered small-12 smedium-9 medium-6 large-4"><form id=forgot-password-form><div class=sending-loader><div class=loader><svg viewBox="0 0 32 32" width=32 height=32><circle r=14 id=spinner cx=16 cy=16 fill=none></circle></svg></div></div><h3 data-translation=forgot-password-title></h3><p data-translation=forgot-password-text><div class=row><div class="columns small-12"><label for=email><input required type=email id=email name=email class=form-control><span data-translation=forgot-password-email></span></label></div><div class="columns small-12" data-equalizer-watch><input type=submit id=submitButton name=submitButton data-translation data-translation-value=forgot-password-submit></div></div></form></div></div></div>
|
||||
@@ -0,0 +1 @@
|
||||
<div class="max-height fill-me"><div class="row max-width grow flex-center"><div class="columns small-centered small-12 smedium-9 medium-11 large-7"><form id=change-password-form><div class=sending-loader><div class=loader><svg viewBox="0 0 32 32" width=32 height=32><circle r=14 id=spinner cx=16 cy=16 fill=none></circle></svg></div></div><h3 data-translation=change-password-title></h3><p><i data-translation=change-password-new-automated-login></i><div class="columns small-12" data-equalizer-watch><label for=oldPassword><input required type=password id=oldPassword class=form-control name=oldPassword><span data-translation=change-password-old-password></span></label></div><div class="columns small-12" data-equalizer-watch><label for=newPassword1><input required type=password id=newPassword1 class=form-control name=newPassword1><span data-translation=change-password-new-password1></span></label></div><div class="columns small-12" data-equalizer-watch><label for=newPassword2><input required type=password id=newPassword2 class=form-control name=newPassword2><span data-translation=change-password-new-password2></span></label></div><div class="row max-width" data-equalizer><div class="columns small-12" data-equalizer-watch><input type=submit name=submitButton class=form-control data-translation data-translation-value=change-password-submit></div></div></form></div></div></div>
|
||||
1
public/userManagement/html/fragments/userSettings.html
Normal file
1
public/userManagement/html/fragments/userSettings.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class="max-height fill-me"><div class="row max-width grow flex-center"><div class="columns small-centered small-12 smedium-9 medium-11 large-7"><form id=user-settings-form><div class=sending-loader><div class=loader><svg viewBox="0 0 32 32" width=32 height=32><circle r=14 id=spinner cx=16 cy=16 fill=none></circle></svg></div></div><h3 data-translation=user-settings-title></h3><p><i data-translation=change-email-new-automated-login></i><div class=row data-equalizer><div class="columns small-12" data-equalizer-watch><label for=username><input required id=username name=username class=form-control><span data-translation=user-settings-form-username></span></label></div></div><div class=row data-equalizer><div class="columns small-12" data-equalizer-watch><label for=oldEmail><input type=email id=oldEmail name=oldEmail class=form-control readonly=readonly><span data-translation=user-settings-form-old-email></span></label></div><div class="columns small-12" data-equalizer-watch><label for=newEmail><input type=email id=newEmail name=newEmail class=form-control><span data-translation=user-settings-form-new-email></span></label></div></div><div class="row max-width" data-equalizer><div class="columns small-12" data-equalizer-watch><input type=submit name=submitButton class=form-control data-translation data-translation-value=user-settings-form-submit></div></div></form></div></div></div>
|
||||
1
public/userManagement/html/login.html
Normal file
1
public/userManagement/html/login.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class="max-height fill-me"><div class="row grow flex-center"><div class="columns small-centered small-12 smedium-9 medium-6 large-4"><form id=login-form><div class=sending-loader><div class=loader><svg viewBox="0 0 32 32" width=32 height=32><circle r=14 id=spinner cx=16 cy=16 fill=none></circle></svg></div></div><h3 data-translation=login></h3><div class=row><div class="columns small-12"><label for=email><input required type=email id=email name=email class=form-control><span data-translation=login-email></span></label></div><div class="columns small-12" data-equalizer-watch><label for=password><input required type=password id=password class=form-control name=password><span data-translation=login-password></span></label></div><div class="columns small-12" data-equalizer-watch><input type=hidden name=automatedLogin value=0><label for=automatedLogin><span data-translation=login-automated-login></span><input class=form-control value=1 type=checkbox id=automatedLogin name=automatedLogin></label></div><div class="columns small-12" data-equalizer-watch><input type=submit id=submitButton name=submitButton data-translation data-translation-value=login-submit></div></div><a id=forgot-password-link data-translation=forgot-password></a></form></div></div></div>
|
||||
1
public/userManagement/html/registration.html
Normal file
1
public/userManagement/html/registration.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class="max-height fill-me"><div class="row max-width grow flex-center"><div class="columns small-centered small-12 smedium-9 medium-11 large-7"><form id=registration-form><div class=sending-loader><div class=loader><svg viewBox="0 0 32 32" width=32 height=32><circle r=14 id=spinner cx=16 cy=16 fill=none></circle></svg></div></div><h3 data-translation=registration></h3><div class=row data-equalizer><div class="columns small-12 medium-6" data-equalizer-watch><label for=username><input required id=username name=username class=form-control><span data-translation=registration-username></span></label></div><div class="columns small-12 medium-6" data-equalizer-watch><label for=email><input required type=email id=email name=email class=form-control><span data-translation=registration-email></span></label></div></div><div class=row data-equalizer><div class="columns small-12 medium-6" data-equalizer-watch><label for=password1><input required type=password id=password1 name=password1 class=form-control><span data-translation=registration-password1></span></label></div><div class="columns small-12 medium-6" data-equalizer-watch><label for=password2><input required type=password id=password2 name=password2 class=form-control><span data-translation=registration-password2></span></label></div></div><div class="row max-width" data-equalizer><div class="columns small-12" data-equalizer-watch><input type=submit id=submitButton name=submitButton class=form-control data-translation data-translation-value=registration-submit></div></div></form></div></div></div>
|
||||
1
public/userManagement/html/setNewPassword.html
Normal file
1
public/userManagement/html/setNewPassword.html
Normal file
@@ -0,0 +1 @@
|
||||
<div class="max-height fill-me"><div class="row grow flex-center"><div class="columns small-centered small-12 smedium-9 medium-6 large-4"><form id=new-password-form><input type=hidden name=code id=code><div class=sending-loader><div class=loader><svg viewBox="0 0 32 32" width=32 height=32><circle r=14 id=spinner cx=16 cy=16 fill=none></circle></svg></div></div><h3 data-translation=new-password></h3><div class=row><div class="columns small-12"><label for=password1><input required type=password id=password1 class=form-control name=password1><span data-translation=new-password-password1></span></label></div><div class="columns small-12"><label for=password2><input required type=password id=password2 class=form-control name=password2><span data-translation=new-password-password2></span></label></div><div class="columns small-12"><input type=submit id=submitButton name=submitButton data-translation data-translation-value=new-password-submit></div></div></form></div></div></div>
|
||||
2
public/version/1/listjs/list.min.js
vendored
Normal file
2
public/version/1/listjs/list.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user